/* V9 — five distinct materials, quiet reading surfaces. No remote fonts/assets. */
:root{--accent:#edbb6d;--accent2:#ffde9a;--hero1:#48301a;--hero2:#694022;--hero3:#17100d}
body[data-theme=bernstein]{--accent:#efba64;--accent2:#ffdfa4;--hero1:#633917;--hero2:#3d2113;--hero3:#17110c;--bg:#17110c;--panel:#241a12;--line:#eab26735}
body[data-theme=blackgold]{--accent:#d9b665;--accent2:#ffdf85;--hero1:#2a2618;--hero2:#181613;--hero3:#070809;--bg:#090a0c;--panel:#151514;--line:#b7975038}
body[data-theme=ink]{--accent:#c6ff3f;--accent2:#f1f1e9;--hero1:#252624;--hero2:#111411;--hero3:#070a08;--bg:#111310;--panel:#181d18;--line:#d0f0ce30}
body[data-theme=wood]{--accent:#b4dc97;--accent2:#ead2a3;--hero1:#503c28;--hero2:#273d29;--hero3:#161e15;--bg:#201c15;--panel:#262c20;--line:#bbdb9c38}
body[data-theme=ember]{--accent:#ff9860;--accent2:#fc4b85;--hero1:#873617;--hero2:#611d4c;--hero3:#1e0f18;--bg:#1c121c;--panel:#301d2a;--line:#ffb76840}
body{background:var(--bg);color:#edf0eb}.screen,.viewer{background-color:var(--bg)}
.vault-screen,.stage{background:radial-gradient(ellipse at 8% 8%,var(--hero1),transparent 60%),radial-gradient(ellipse at 93% 80%,var(--hero2),transparent 65%),var(--hero3)}
.deck-panel,.cards-panel,.panel-head{background:color-mix(in srgb,var(--panel) 94%,transparent)}
body[data-theme=ink] .vault-screen,body[data-theme=ink] .stage{background-image:url('doodles.svg'),radial-gradient(ellipse at 0 0,#242c20,#080b08);background-size:440px,auto}
body[data-theme=ink] .album-toolbar,body[data-theme=ink] .deck-panel{background-image:url('doodles.svg');background-size:480px}
body[data-theme=wood] .vault-screen,body[data-theme=wood] .stage{background-image:linear-gradient(var(--wood-shade,#0000),var(--wood-shade,#0000)),url('woodgrain.svg'),radial-gradient(ellipse at 0 0,#21342266,transparent 50%),repeating-linear-gradient(90deg,#100d0a 0 6px,#3b2a20 6px 24px,#50382a 25px 27px,#251a14 28px 31px);background-size:auto,124px 480px,auto,auto}body[data-theme=wood] .stage{--wood-shade:#000b}
body[data-theme=wood] .vault-header{background:linear-gradient(100deg,#162718eb,#263120c9)}
body[data-theme=wood] .brand-star{color:#a8d98b;transform:rotate(-20deg);border-radius:80% 0 80% 0;background:#56884a;padding:2px 8px;box-shadow:-20px 25px 0 -5px #365c32,20px 35px 0 -5px #66834d}
body[data-theme=blackgold] .foil{background:linear-gradient(135deg,#0c0d0d,#242016 42%,#bb975e66 49%,#111211 56%,#221d12);border-color:#d9b66588}
body[data-theme=ember] .vault-screen{background:radial-gradient(circle at 80% 10%,#ffe09a 0,#ff783b 12%,#e8425d66 24%,transparent 48%),radial-gradient(circle at 10% 85%,#a4238d,transparent 60%),#170e20}
.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-choice{display:block;min-height:95px}.theme-choice i{display:block;width:100%;margin-bottom:8px}.theme-bernstein i{background:linear-gradient(130deg,#48270e,#ffcf6f,#8e501a)}.theme-blackgold i{background:linear-gradient(125deg,#080808 40%,#efce76 45%,#332b15 55%,#080808 70%)}.theme-ink i{background:repeating-linear-gradient(40deg,#0b0d0c 0 10px,#e8e8df 10px 12px,#0b0d0c 12px 22px,#c6ff3f 22px 25px)}.theme-wood i{background:repeating-linear-gradient(90deg,#251a10 0 4px,#493125 4px 15px,#365e2d 15px 19px)}.theme-ember i{background:radial-gradient(circle at 65% 30%,#fff0a7,#ff843e 25%,#cf256a 55%,#25102c)}
.language-control{display:flex;gap:8px;align-items:center;font-size:12px}.language-control select{padding:7px}.vault-footer{display:none!important}.vault-content{padding-bottom:125px!important}.vault-content>.v9-quick{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);z-index:15;width:min(690px,calc(100vw - 36px));margin:0;box-shadow:0 12px 50px #0008}
.v9-quick{display:flex!important;align-items:center;gap:6px;padding:8px!important;border:1px solid #c3dcd335;border-radius:22px;background:color-mix(in srgb,var(--panel) 94%,#fff);min-width:0}.v9-quick textarea{resize:none;border:0;background:transparent;box-shadow:none;color:#f1f1ea;min-height:36px;max-height:120px;padding:9px 12px;width:100%;font-size:14px;outline:none}.quick-send{width:38px;height:38px;border-radius:13px;border:1px solid var(--accent);color:var(--accent);background:#0002;flex-shrink:0}.quick-send svg{width:22px;height:22px}.quick-text-button{align-self:stretch;flex:0 0 72px;border:0;border-right:1px solid #de9b7966;border-radius:14px 0 0 14px;background:transparent;color:#edb28d;font-weight:800;font-size:19px}.quick-text-button span{display:block;font-size:10px;margin-top:5px}
.add-card-grid{display:flex!important;align-items:stretch;flex:1;min-width:0}.add-card-grid>.add-card{width:115px;min-width:90px}.add-card-grid>.v9-quick{flex:1;max-width:none;margin:0;background:#33231f;border-color:#cd96665e;border-radius:16px}.album-toolbar{align-items:stretch}.video-add{border-color:#77a8dd77!important;color:#99c7f2!important}.video-preview-icon{font-size:64px;color:var(--accent)}
.layout-choices .btn{min-height:92px;font-size:17px;font-weight:800}.layout-choices small{font-size:12px;font-weight:400;color:var(--accent)}.pin-btn svg,.matrix-help kbd svg{width:22px;height:22px;vertical-align:middle}.pin-btn{min-width:30px}.matrix-help kbd{display:inline-flex;align-items:center;min-height:26px}.lock-tools{flex-wrap:wrap;max-width:95%}.lock-tools .lock-btn{font-size:11px}
.ocr-text{width:100%;min-height:280px;max-height:55vh;resize:vertical;background:#11191f;color:#eef4f5;border:1px solid var(--accent);padding:14px;border-radius:12px;line-height:1.5}.attach-targets{display:grid;gap:8px;max-height:55vh;overflow:auto}
.video-card{height:100%;width:100%;display:flex;flex-direction:column;background:#090c10;overflow:hidden;padding-top:35px}.video-image-area{position:relative;min-height:70px;flex:1;overflow:hidden}.video-image-area video{width:100%;height:100%;object-fit:contain;display:block}.video-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px;background:#151c23}.video-tools label{font-size:11px;display:flex;gap:4px;align-items:center}.video-tools .btn,.video-tools select{font-size:10px;padding:6px}.crop-layer{position:absolute;overflow:hidden;pointer-events:none}.crop-frame{position:absolute;pointer-events:auto;border:2px solid #f4dc91;box-shadow:0 0 0 2000px #0005;touch-action:none;cursor:move}.crop-resize{position:absolute;right:-4px;bottom:-4px;width:17px;height:17px;border-radius:4px;border:2px solid #fff;background:#ce9c49;cursor:nwse-resize;touch-action:none}
.snapshot-markers{position:relative;height:54px;margin:0 12px 7px;border-top:2px solid var(--accent)}.snapshot-marker{position:absolute;left:clamp(0px,var(--at),calc(100% - 38px));top:0;display:flex;flex-direction:column;align-items:center;min-width:38px;padding:3px 4px;border:0;border-top:5px solid var(--accent);background:#17222b;color:#eef2f4;font-size:9px;z-index:1}.snapshot-marker:hover{z-index:5;background:#334854}.snapshot-marker small{color:var(--accent)}
.snapshot-badge{position:absolute;top:9px;right:9px;z-index:7;border:1px solid var(--accent);border-radius:20px;background:linear-gradient(130deg,var(--accent),var(--hero2));color:#fff;padding:7px 10px;font-size:11px}.current-cell:has(.snapshot-badge)>.matrix-number{top:auto;bottom:8px;opacity:.7;font-size:9px;min-width:30px;height:25px}.current-cell:has(.snapshot-badge)>.matrix-number:before{content:'Deck';font-size:7px}
.attached-note-zone{position:absolute;bottom:76px;left:18px;right:18px;height:var(--note-height,30%);z-index:12;border-top:1px solid var(--accent);background:#0f171ce8;border-radius:15px 15px 0 0;display:flex;flex-direction:column}.notes-divider{height:12px;flex-shrink:0;cursor:ns-resize;touch-action:none}.notes-divider:after{content:'';display:block;width:65px;height:3px;background:var(--accent);border-radius:3px;margin:4px auto}.attached-notes{display:flex;gap:12px;overflow-x:auto;height:100%;padding:0 10px 10px;scroll-snap-type:x proximity}.attached-note{display:flex;flex-direction:column;min-width:260px;flex:1 0 300px;max-width:650px;background:#202b31;border:1px solid #8fb3a244;border-radius:12px;overflow:hidden;scroll-snap-align:start}.attached-note header{display:flex;gap:6px;align-items:center;padding:7px 10px;background:#30403977}.note-source-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.attached-note button{border:0;color:var(--accent);background:transparent;font-size:12px}.attached-note textarea{flex:1;min-height:45px;resize:none;background:transparent;color:#f2f2e9;border:0;padding:10px;font:14px/1.5 system-ui}.attached-note footer{display:flex;justify-content:space-between;font-size:10px;color:#b5d4bb;padding:4px 10px}.has-attached-notes .matrix-heading{top:5px}.has-attached-notes .matrix-window{top:28px}.has-attached-notes .context-overlay{z-index:18}.has-attached-notes .down-arrow{bottom:calc(var(--note-height) + 100px)!important}.has-attached-notes .matrix-help{bottom:calc(var(--note-height) + 100px)}
@media(max-width:800px){.add-card-grid{flex-wrap:wrap}.add-card-grid>.v9-quick{order:3;flex-basis:100%;min-height:75px}.add-card-grid>.add-card{flex:1;min-height:75px}.language-control{font-size:10px}.theme-grid{grid-template-columns:1fr 1fr}.attached-note-zone{left:5px;right:5px}.attached-note{min-width:230px}.lock-tools{gap:3px}.lock-tools .lock-btn{padding:4px;font-size:9px}.layout-choices{grid-template-columns:1fr!important}.layout-choices .btn{min-height:64px}.video-tools .btn{font-size:9px}.snapshot-markers{height:46px}}

/* Every saved moment remains reachable, even when several share a timestamp. */
.snapshot-markers{display:flex;gap:6px;overflow-x:auto;align-items:flex-start;flex-shrink:0}.snapshot-marker{position:relative;left:auto;flex:0 0 auto;min-width:44px}.notes-divider:focus-visible{outline:2px solid var(--accent)}

.attach-targets{contain:content;max-height:48vh;overflow:auto;overscroll-behavior:contain}.attach-paging{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:12px}.attach-paging button{background:var(--panel);color:var(--accent);border:1px solid var(--line);border-radius:8px;padding:8px 16px}.attach-paging button:disabled{opacity:.3}

/* Target selection does not blur/repaint the entire image/video Matrix. */
.modal-backdrop.attach-picker{backdrop-filter:none;-webkit-backdrop-filter:none;background:#080b10ed}.attach-picker .settings-dialog{box-shadow:0 12px 32px #0008}.attach-picker .attach-targets{contain:strict;height:48vh}.attach-picker .btn{transition:none;filter:none;backdrop-filter:none}
