:root{color-scheme:dark;--line:#ffffff25;--text:#edf3fa;--muted:#a4b3c8;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif}
.panel .starControls h3{display:flex;justify-content:space-between;align-items:center}.starControls output{font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted)}
.starControls input[type=range]{display:block;width:100%;margin:0;min-height:28px;accent-color:#c3def5}.rangeEnds{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}
.galaxyControl{position:relative;display:flex;align-items:center;gap:10px;min-height:48px;margin-top:14px;font-size:12px;cursor:pointer}.galaxyControl>span:first-child{flex:1}#galaxyValue{font-size:10px;color:var(--muted)}
#galaxy{position:absolute;right:0;width:40px;height:26px;opacity:0;margin:0;cursor:pointer}.switchTrack{width:40px;height:24px;border:1px solid #ffffff50;border-radius:15px;background:#182332;pointer-events:none}.switchTrack:after{content:"";display:block;width:16px;height:16px;margin:3px;border-radius:50%;background:#a4b3c8}#galaxy:checked+.switchTrack{background:#607e9a;border-color:#bdd8ef}#galaxy:checked+.switchTrack:after{transform:translateX(16px);background:#f1f7ff}#galaxy:focus-visible+.switchTrack{outline:2px solid #d1e8ff;outline-offset:4px}
.paletteChoices{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.paletteChoices button{min-height:51px;background:linear-gradient(var(--top),var(--bottom));font-size:11px;text-shadow:0 1px 4px #000;border:1px solid #ffffff26}.paletteChoices button[aria-pressed=true]{border:2px solid #e0eaff;box-shadow:0 0 0 2px #a6bfdf24}.colorControls{display:flex;gap:12px;margin-top:13px}.colorControls label{display:flex;flex:1;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted)}.colorControls input{width:42px;height:30px;border:1px solid #ffffff40;border-radius:5px;background:transparent;padding:2px;cursor:pointer}#paletteName{float:right;font-size:10px;font-weight:400;color:var(--muted)}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;overflow:hidden;background:#030916;color:var(--text)}button,select,input{font:inherit}button,select{color:inherit;border:1px solid var(--line);background:#ffffff06;border-radius:8px}button{cursor:pointer}button:hover{background:#ffffff14}button:focus-visible,select:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid #d1e8ff;outline-offset:4px}button:disabled{opacity:.45;cursor:wait}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}button svg{pointer-events:none}
#skySurface,#stage{position:fixed;inset:0}#gl{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#gl:active{cursor:grabbing}#cropGuide{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #ffffff70;pointer-events:none}#cropGuide span{position:absolute;top:8px;left:10px;font-size:10px;letter-spacing:.12em;color:#fff9;text-shadow:0 1px 5px #000}
.skyHeader{position:fixed;top:0;left:0;right:0;padding:calc(22px + env(safe-area-inset-top)) 28px 22px;display:flex;align-items:center;justify-content:space-between;pointer-events:none;background:linear-gradient(#02091455,transparent)}.brand{display:flex;gap:16px;align-items:center}.brand h1{font-size:15px;font-weight:400;letter-spacing:.18em;margin:0;text-shadow:0 1px 8px #000}.brand small{display:block;font-size:7px;letter-spacing:.27em;margin-top:6px;color:#ffffffa0}.iconButton{display:flex;align-items:center;justify-content:center;gap:10px;color:white;min-width:44px;min-height:44px;border:0;background:transparent;pointer-events:auto;text-shadow:0 1px 5px #000}.iconButton svg{filter:drop-shadow(0 1px 5px #0008)}.albumButton span{font-size:11px}.albumButton b{font-weight:400;margin-left:6px;color:#fff9;font-variant-numeric:tabular-nums}
.captureDock{position:fixed;left:50%;bottom:calc(28px + env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;align-items:center;gap:30px;padding:12px 26px 8px;border:1px solid #ffffff1a;border-radius:26px;background:#07101b78;box-shadow:0 8px 30px #0002}.dockButton,.shutter{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:8px;background:none;border:0;color:white;padding:4px;min-width:62px;min-height:65px;font-size:10px;white-space:nowrap}.dockButton svg{width:25px;height:25px}.shutter{gap:7px}.shutterRing{width:54px;height:54px;border:1.5px solid white;border-radius:50%;display:grid;place-items:center}.shutterRing>span{width:42px;height:42px;border-radius:50%;background:#f3f7ff}.shutter:active .shutterRing>span{transform:scale(.9)}.gestureHint{position:fixed;bottom:20px;left:24px;font-size:9px;color:#ffffff80;pointer-events:none}.toast{position:fixed;bottom:150px;left:50%;transform:translateX(-50%);margin:0;max-width:min(85vw,650px);width:max-content;background:#08111eaa;border:1px solid #ffffff15;border-radius:20px;padding:9px 15px;font-size:11px;line-height:1.6;text-align:center;pointer-events:none}.toast:empty{display:none}
#panelBackdrop{position:fixed;inset:0;background:#02060d45;z-index:10}.panel{position:fixed;z-index:11;left:0;top:0;bottom:0;width:min(350px,100vw);overflow:auto;overscroll-behavior:contain;padding:30px 26px max(30px,env(safe-area-inset-bottom));background:#0b1424f5;border-right:1px solid #ffffff20;box-shadow:15px 0 80px #0003}.panelHeading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.eyebrow{font-size:8px;letter-spacing:.2em;color:var(--muted);margin:0 0 8px}.panel h2{font-size:21px;letter-spacing:.1em;font-weight:400;margin:0}.closeButton{font-size:28px;width:44px;height:44px;border:0}.panel section{margin:0 0 25px}.panel h3,.composition label{font-size:12px;font-weight:500;margin:0 0 11px;display:block;letter-spacing:.07em}.choices{display:flex;gap:4px;padding:4px;border:1px solid #ffffff10;border-radius:10px;background:#0002}.choices button{flex:1;padding:10px 4px;font-size:11px;border-color:transparent;white-space:nowrap}.choices button[aria-pressed=true]{background:#293c52;border-color:#ffffff45}.hint{font-size:10px;line-height:1.9;color:var(--muted);margin:10px 0 0}.composition{display:grid;grid-template-columns:1fr auto;gap:5px 12px;align-items:center}.composition label{grid-column:1/-1;margin-bottom:6px}.composition input{width:100%;accent-color:#c3def5}.composition button{padding:7px;font-size:10px}.wideButton{width:100%;padding:12px;font-size:12px}.photoOptions{margin-top:28px!important;padding-top:22px;border-top:1px solid var(--line)}select{width:100%;padding:11px;background:#0b1424;font-size:12px}.sceneLabel{font-size:9px;color:#76869e;margin-top:25px;line-height:1.7}
.albumPanel{left:auto;right:0;width:min(650px,100vw);border-left:1px solid var(--line);border-right:0}.albumNotice{margin-bottom:20px}.albumGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photoCard{border:1px solid #ffffff20;padding:0;overflow:hidden;text-align:left;background:#030916}.photoCard img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.photoCard span{display:block;padding:10px;font-size:10px;color:#c4d3e4;line-height:1.8}.photoCard small{display:block;color:#e0c29e;font-size:9px}#albumMessage{font-size:12px;line-height:1.8;color:var(--muted)}#photoImage{display:block;width:100%;max-height:60svh;object-fit:contain;background:#020611;margin:15px 0;border-radius:4px}#photoInfo{font-size:11px;line-height:1.8;color:var(--muted)}.photoActions{display:flex;gap:10px;flex-wrap:wrap}.photoActions button{padding:12px 16px;font-size:12px;flex:1}.primary{background:#d5e7f9;color:#102038}.primary:hover{background:white}.textButton{padding:10px 0;background:none;border:0;font-size:11px}.danger{color:#dfb3b8}#deleteConfirm{font-size:11px;line-height:1.8;border:1px solid #c3747f55;border-radius:8px;padding:12px}#deleteConfirm button{padding:8px 15px;margin-right:10px}#loading{position:fixed;inset:0;display:grid;place-items:center;background:#08111f;z-index:5;font-size:13px}#error{position:fixed;z-index:30;bottom:20px;left:20px;right:20px;padding:18px;background:#402835;border:1px solid #a76f81;border-radius:8px;font-size:12px}
@media(max-width:600px){.skyHeader{padding:calc(12px + env(safe-area-inset-top)) 12px 16px}.brand{gap:7px}.brand h1{font-size:12px}.brand small{font-size:6px}.albumButton{gap:5px}.albumButton span{font-size:10px}.captureDock{bottom:calc(18px + env(safe-area-inset-bottom));padding:10px 20px 8px;gap:20px}.gestureHint{display:none}.toast{bottom:145px;font-size:10px}.panel{padding:24px 20px}.albumGrid{gap:10px}}
@media(max-height:480px){.captureDock{bottom:12px;gap:20px;padding:7px 16px}.dockButton,.shutter{min-height:45px;gap:3px;font-size:9px}.shutterRing{width:40px;height:40px}.shutterRing>span{width:30px;height:30px}.toast{bottom:100px}.gestureHint{display:none}}

/* Album management: capacity, select-to-delete, delete all, and the full-album prompt */
.albumTools{display:grid;gap:8px;margin-bottom:12px}
.albumCapacity{margin:0;font-size:12px;color:var(--muted)}.albumCapacity.full{color:#e0c29e}
.albumToolButtons{display:flex;gap:18px}
.albumPicking{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px}
.albumPicking .danger{padding:8px 14px;border:1px solid #c3747f88;border-radius:8px;background:#c3747f22}
.albumPicking .danger:disabled{opacity:.45}
.bulkConfirm{font-size:11px;line-height:1.8;border:1px solid #c3747f55;border-radius:8px;padding:12px}
.bulkConfirm p{margin:0 0 8px}.bulkConfirm button{padding:8px 15px;margin-right:10px}
.albumGrid.picking .photoCard{position:relative}
.albumGrid.picking .photoCard::after{content:'';position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:50%;border:2px solid #fff;background:#0008}
.albumGrid.picking .photoCard[aria-pressed="true"]{outline:2px solid #8fb6ff;outline-offset:-2px}
.albumGrid.picking .photoCard[aria-pressed="true"]::after{background:#5b8cff;box-shadow:inset 0 0 0 4px #5b8cff,inset 0 0 0 6px #fff}
.albumPrompt{position:fixed;z-index:6;left:50%;bottom:150px;transform:translateX(-50%);width:min(92vw,520px);padding:16px 18px;border:1px solid #ffffff26;border-radius:16px;background:#0b1424f5;box-shadow:0 12px 40px #0008;font-size:12px;line-height:1.8}
.albumPrompt p{margin:0 0 12px}
.albumPromptActions{display:flex;flex-wrap:wrap;gap:8px}
.albumPromptActions button{padding:9px 14px;font-size:12px;border-radius:8px}
@media(max-width:600px){.albumPrompt{bottom:140px}.albumPromptActions button{flex:1 1 100%}}
.skyTypes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.skyTypeCard{position:relative;display:block;padding:0;overflow:hidden;aspect-ratio:16/10;border:1px solid #ffffff26;background:linear-gradient(#0a142b,#1d2f48);text-align:left}.skyTypeCard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.skyTypeCard span{position:absolute;left:0;right:0;top:0;padding:7px 9px 16px;font-size:11px;letter-spacing:.05em;background:linear-gradient(#000b,#0000);text-shadow:0 1px 3px #000}.skyTypeCard[aria-pressed=true]{border:2px solid #e0eaff;box-shadow:0 0 0 2px #a6bfdf24}.skyTypeCard:hover{filter:brightness(1.12)}#skyTypeNote{color:var(--text)}
