.mode-switch { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:0 0 12px; }
.camera-start-overlay .start-mode-switch { width:min(100%,420px); margin:5px 0 0; }
.camera-start-overlay .start-mode-switch .mode-button { min-height:58px; padding:10px 13px; background:#06182ed9; backdrop-filter:blur(10px); }
.mode-button { display:flex; flex-direction:column; gap:3px; text-align:left; border:1px solid #ffffff1c; border-radius:16px; padding:12px 14px; background:#07172ae6; color:#8fa6bc; }
.mode-button b { font-size:15px; color:#dce9f5; }
.mode-button span { font-size:10px; }
.mode-button.active { border-color:#22d5fa88; background:linear-gradient(135deg,#12395e,#0a2441); box-shadow:0 0 24px #13cff31a; }
.mode-button.active b { color:#fff; }
.large-pick-button { position:absolute; z-index:5; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:min(72%,320px); min-height:170px; border:1px dashed #4bdcf7aa; border-radius:24px; background:#07192ee8; color:#fff; flex-direction:column; align-items:center; justify-content:center; gap:7px; box-shadow:0 20px 60px #0008; }
.large-pick-button:not([hidden]) { display:flex; }
.large-pick-button span { font-size:42px; color:var(--cyan); }
.large-pick-button b { font-size:18px; }
.large-pick-button small { color:#8fa6bc; }
.mode-edit .empty-state { display:none; }
.mode-edit .capture-bar .secondary, .mode-edit #switchButton { display:none; }
.mode-edit .capture-bar { gap:0; }
.shutter { position:relative; }
.mode-edit .shutter:after { content:'作成'; position:absolute; font-size:10px; font-weight:900; color:#001628; inset:50% auto auto 50%; transform:translate(-50%,-50%); }
.selected-file-bar { display:flex; align-items:center; gap:10px; padding:0 16px 14px; color:#afc4d7; font-size:12px; }
.selected-file-bar span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; }
.selected-file-bar button { border:0; background:transparent; color:var(--cyan); font-weight:900; }
.exif-panel { margin-top:14px; border:1px solid #ffffff17; border-radius:14px; background:#04111f; padding:12px; }
.exif-panel>div { display:flex; justify-content:space-between; gap:10px; font-size:11px; color:#8fa5ba; }
.exif-panel b { color:#dff8ff; text-align:right; }
.exif-panel button { width:100%; margin-top:10px; }
.exif-panel p { margin:8px 2px 0; color:#7890a7; font-size:10px; line-height:1.5; }
.weather-loaded { color:#37dca1 !important; }
