/* Mission Popup styles (v2.12.4) */
.gpmp { position: fixed; inset: 0; display:flex; align-items:center; justify-content:center; z-index: 99998; }
.gpmp.is-hidden { display:none; }
.gpmp-overlay { position:absolute; inset:0; background: rgba(0,0,0,0.6); }
.gpmp-dialog { position:relative; background:#ffffff; border-radius:18px; box-shadow:0 20px 60px rgba(0,0,0,.35); padding:16px; width:min(980px, 92vw); }
.gpmp-close { position:absolute; right:12px; top:10px; border:0; background:#eee; width:36px; height:36px; border-radius:50%; font-size:20px; cursor:pointer; }
.gpmp-grid { display:grid; grid-template-columns: 320px 1fr; gap:16px; }
@media (max-width: 800px){ .gpmp-grid { grid-template-columns: 1fr; } }

/* Left column */
.gpmp-header { background:#e4d6b7; color:#333; font-weight:800; letter-spacing:.08em; text-transform:uppercase; text-align:left; border-radius:10px; padding:10px 14px; margin-bottom:10px; }
.gpmp-image { display:flex; align-items:center; justify-content:center; background: radial-gradient(ellipse at center, rgba(255,255,255,.9), rgba(230,230,230,.6)); border-radius:12px; padding:14px; min-height:150px; }
.gpmp-image img { max-width: 100%; height:auto; display:block; filter: drop-shadow(0 6px 20px rgba(0,0,0,.25)); }
.gpmp-image.spin img { animation: gpmp-spin 20s linear infinite; transform-origin:center center; }
@keyframes gpmp-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
.gpmp-left-label { margin-top:10px; font-weight:700; color:#444; }
.gpmp-objective { margin-top:6px; font-weight:800; font-size:1.05rem; color:#2b2b2b; }

/* Right column */
.gpmp-right { border-radius:14px; background: linear-gradient(180deg, rgba(255,255,255,0.9), rgba(245,245,245,0.9)); padding:16px; }
.gpmp-letter p { margin: 0 0 10px; line-height:1.5; color:#333; }
.gpmp-letter p strong { font-weight:800; }

/* Wrapper modes */
.gpmp-wrapper.is-inline .gpmp { position:relative; display:block; inset:auto; }
.gpmp-open { padding:10px 14px; border-radius:10px; background:#2e67f8; color:#fff; border:0; cursor:pointer; font-weight:600; }
.gpmp-open-image { background:transparent; border:0; padding:0; cursor:pointer; }
.gpmp-trigger{display:inline-block;cursor:pointer;line-height:0;}

/* RTL support */
.gpmp-wrapper.is-rtl .gpmp-dialog { direction: rtl; }
.gpmp-wrapper.is-rtl .gpmp-grid { grid-template-columns: 1fr 320px; }
.gpmp-wrapper.is-rtl .gpmp-left { order: 2; text-align: right; }
.gpmp-wrapper.is-rtl .gpmp-right { order: 1; text-align: right; }
.gpmp-wrapper.is-rtl .gpmp-close { right: auto; left: 12px; }
.gpmp-wrapper.is-rtl .gpmp-header { text-align: right; }
.gpmp-wrapper.is-rtl .gpmp-left-label { text-align: right; }

/* NG-styled action buttons */
.gpmp-actions { margin-top: 14px; display:flex; gap:10px; flex-wrap: wrap; }
.ng-btn { font-weight:800; letter-spacing:.02em; border-radius:10px; padding:10px 14px; border:2px solid transparent; cursor:pointer; transition:transform .06s ease, box-shadow .12s ease; }
.ng-btn:active { transform: translateY(1px); }

.ng-btn-accept { background:#ffd200; color:#111; border-color:#ffd200; text-transform:uppercase; }
.ng-btn-accept:hover { box-shadow: 0 6px 18px rgba(255,210,0,.35); }

.ng-btn-progress { background:#111; color:#ffd200; border-color:#ffd200; text-transform:uppercase; }
.ng-btn-progress:hover { box-shadow: 0 6px 18px rgba(17,17,17,.35); }

.ng-btn-done { background:#2e7d32; color:#fff; border-color:#2e7d32; text-transform:uppercase; }
.ng-btn-done:hover { box-shadow: 0 6px 18px rgba(46,125,50,.35); }

.gpmp-wrapper.is-rtl .gpmp-actions { justify-content: flex-end; }
