/* Scoped operational controls: fast, searchable and usable at 320px. */
.manifest-native-enhanced { position:absolute!important; width:1px!important; height:1px!important; opacity:0; pointer-events:none; overflow:hidden; }
.manifest-picker { position:relative; min-width:0; width:100%; }
.manifest-picker-input { width:100%; min-width:0; min-height:54px; border:1px solid #63708e; border-radius:14px; background:#080c25; color:#f5f7ff; padding:14px 42px 14px 14px!important; font-size:16px; text-overflow:ellipsis; }
.manifest-picker-input::placeholder { color:#adbad0; }
.manifest-picker-input:focus { outline:2px solid #72cbea; outline-offset:2px; border-color:transparent; }
.manifest-picker-arrow { position:absolute; top:0; right:0; height:54px; width:40px; padding:9px; border:0; background:transparent; color:#91cfdd; cursor:pointer; }
.manifest-picker-arrow svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.manifest-picker-panel { position:absolute; top:calc(100% + 8px); left:0; width:100%; min-width:0; z-index:1100; border:1px solid #7582a6; border-radius:14px; padding:5px; background:#10172f; color:#f5f7ff; box-shadow:0 14px 40px #0008; }
.manifest-picker-panel[hidden] { display:none!important; }
.manifest-picker-panel ul { list-style:none; margin:0; padding:0; max-height:min(270px,35dvh); overflow-y:auto; overscroll-behavior:contain; }
.manifest-picker-panel [role=option] { min-height:48px; padding:12px; border-radius:9px; cursor:pointer; overflow-wrap:anywhere; line-height:1.4; }
.manifest-picker-panel [role=option] strong { display:block; font-size:.91rem; }.manifest-picker-panel [role=option] span { display:block; margin-top:4px; color:#b3c6d8; font-size:.8rem; }
.manifest-picker-panel [role=option]:hover,.manifest-picker-panel [aria-selected=true] { background:#28404c; color:#bdffe0; }
.manifest-picker-panel small { display:block; padding:8px 12px; color:#aebdd3; font-size:.78rem; }
.manifest-picker-input:disabled,.manifest-picker-arrow:disabled { opacity:.55; cursor:default; }
.manifest-toolstrip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin:14px 0 10px; }
.manifest-tool { min-height:76px; min-width:0; padding:10px 5px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; border:1px solid #394965; border-radius:15px; background:linear-gradient(160deg,#1c2941,#10172d); color:#d2e0f2; font:inherit; cursor:pointer; touch-action:manipulation; }
.manifest-tool svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.manifest-tool strong { font-size:.83rem; line-height:1.2; }.manifest-tool small { font-size:.69rem; color:#a6b8cf; }
.manifest-tool[aria-pressed=true] { border-color:#408d77; background:#12392f; color:#a6f5d0; }.manifest-tool[aria-pressed=true] small { color:#a1ccba; }
.manifest-tool.difficult { border-color:#9d7238; background:#33271a; color:#ffe0a1; }.manifest-tool.difficult[aria-pressed=true] { background:#5c3a15; border-color:#ffc269; }
.manifest-tool:disabled { opacity:.5; cursor:default; }.manifest-tool:focus-visible { outline:2px solid #72cbea; outline-offset:2px; }
.manifest-camera-note { margin:8px 0; padding:10px 12px; border-radius:12px; background:#102b2b; color:#bfedd8; font-size:.84rem; line-height:1.5; }
.manifest-camera-note.difficult { background:#33271a; color:#ffdda0; }
.manifest-detail-search { margin:16px 0; padding:14px; background:#0b132a; border:1px solid #384763; border-radius:16px; min-width:0; }
.manifest-detail-search label { display:block; margin-bottom:8px; color:#d2e0f2; font-weight:700; font-size:.91rem; }
.manifest-detail-search>div { display:flex; gap:8px; min-width:0; }.manifest-detail-search input { width:100%; flex:1; min-width:0; min-height:48px; padding:12px; border:1px solid #526682; border-radius:12px; background:#080c23; color:#fff; font-size:16px; }
.manifest-detail-search button { flex:none; padding:10px 12px; }.manifest-detail-search small { display:block; margin-top:9px; color:#a7bad2; line-height:1.5; font-size:.78rem; }
.manifest-loading { height:140px; border:1px solid #35425c; border-radius:20px; background:linear-gradient(110deg,#121a33,#1b2c40,#121a33); background-size:200% 100%; animation:manifest-loading 1.5s ease-in-out infinite; }
@keyframes manifest-loading { to { background-position:-200% 0; } }
@media(min-width:760px) { .manifest-toolstrip { grid-template-columns:repeat(6,minmax(0,1fr)); }.manifest-tool { min-height:80px; } }
@media(prefers-reduced-motion:reduce) { .manifest-loading { animation:none; } }
