/* Unified illustrations scale as a whole; no independently positioned vehicles. */
#app .mission-card{display:flex;flex-direction:column;min-width:0}
#app .mission-card .art[data-scene]{display:block;height:auto;min-height:0;position:relative;padding:0;background:none;overflow:hidden}
.mission-scene-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.mission-number{z-index:1;pointer-events:none}
.topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:18px}
.topbar .brand{flex:none;display:flex;align-items:center;gap:9px;white-space:nowrap;padding:0}
.topbar .brand-mark{display:block;width:52px;height:52px;background:transparent;border-radius:0;box-shadow:none;flex:none}
.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}
.topbar .home-navigation{display:flex;align-items:center;flex:0 1 auto;flex-wrap:nowrap;gap:8px;min-width:0}
.topbar .parent-button{white-space:nowrap;flex:none}
.release-stamp{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:nowrap;white-space:nowrap;margin-top:14px}
.release-stamp strong,.release-stamp span{display:inline;margin:0}
.dialog-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap;margin-left:auto}
.dialog-header-actions button{white-space:nowrap;min-height:44px;padding:10px 15px;box-shadow:none}
.points-dialog>header,.parent-confirm-header,dialog>.close-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;position:sticky;top:-28px;background:#fffef8;z-index:3;padding:12px 0;border-bottom:1px solid #d8e5d9}
.points-dialog>header h2,.parent-confirm-header h2{margin:0;font-size:1.35rem}
.parent-confirm-dialog{max-width:480px}
.parent-confirm-dialog form{display:grid;gap:16px}
.parent-confirm-dialog label{display:block;font-weight:700}
.parent-confirm-dialog input{display:block;width:100%;box-sizing:border-box;min-height:48px;padding:11px;margin-top:7px;border:2px solid #b6cfc0;border-radius:11px;background:#fff;font:inherit}
.parent-confirm-message{min-height:1.5em;font-weight:700}
.parent-award-summary{padding:14px;border-radius:14px;background:#edf5e8;font-weight:800}
@media(max-width:1000px) and (min-width:601px){.mission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .mission-grid{grid-template-columns:1fr;gap:18px}
 .topbar{padding:14px 12px;gap:8px}
 .topbar .brand{font-size:16px;gap:5px}
 .topbar .brand-mark{width:38px;height:38px}
 .topbar .brand small{font-size:8px;letter-spacing:.08em}
 .topbar .home-navigation{gap:4px}
 .topbar .parent-button{font-size:13px;min-height:44px;padding:7px 8px;border-radius:11px}
 .mission-content{padding:17px}
 .mission-content h2{font-size:1.25rem}
 .mission-content p{font-size:.92rem}
 .release-stamp{font-size:11px;gap:6px}
 .points-dialog>header,.parent-confirm-header,dialog>.close-row{top:-22px}
 .dialog-header-actions{gap:6px}
 .dialog-header-actions button{font-size:13px;padding:9px 12px}
}
@media(max-width:380px){
 .topbar{padding:12px 8px;gap:5px}
 .topbar .brand{font-size:14px;gap:4px}
 .topbar .brand-mark{width:30px;height:34px}
 .topbar .brand small{font-size:7px}
 .topbar .home-navigation{gap:3px}
 .topbar .parent-button{font-size:11.5px;padding:7px 5px}
}
