:root{--bg: #0e1116;--panel: #161b22;--line: #2a313c;--fg: #e6edf3;--dim: #8b949e;--acc: #f5c542;--rec: #e5534b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.45 system-ui,Segoe UI,sans-serif}#root{display:flex;flex-direction:column;min-height:100vh}header#top{display:flex;gap:10px;align-items:center;padding:10px 16px;background:var(--panel);border-bottom:1px solid var(--line)}header strong{font-size:17px;letter-spacing:.4px;white-space:nowrap;flex:none}header .dim{margin-left:2px}#albumSel{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:14px;max-width:34ch}#albumFilter{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:13px;width:16ch}.spacer{flex:1}button,.btn{background:#21262d;color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:6px 14px;cursor:pointer;font-size:14px}button:hover{background:#2e3440}button.rec{background:var(--rec);border-color:var(--rec);color:#fff}button.tiny{padding:2px 8px;font-size:12px}header a{color:var(--acc);text-decoration:none;border:1px solid var(--line);padding:6px 10px;border-radius:6px}main#stage{flex:1;display:flex;flex-direction:column;align-items:center;padding:18px;min-height:0}.photoWrap{display:flex;align-items:center;gap:12px;max-width:96vw;flex-wrap:wrap}.photoWrap .nav{flex:0 0 auto;align-self:center}.photoWrap .rotbtn{flex:0 0 auto}#photo{flex:1 1 auto;min-width:0;max-width:82vw;max-height:72vh;width:auto;height:auto;object-fit:contain;border-radius:10px;border:1px solid var(--line);background:transparent}.nav{font-size:26px;padding:10px 16px}.nav.rotbtn{font-size:20px}.rotdeg90{transform:rotate(90deg)}.rotdeg180{transform:rotate(180deg)}.rotdeg270{transform:rotate(270deg)}.flipx{transform:scaleX(-1)}.rotdeg90f{transform:rotate(90deg) scaleX(-1)}.rotdeg180f{transform:rotate(180deg) scaleX(-1)}.rotdeg270f{transform:rotate(270deg) scaleX(-1)}.revInfo h3 .flipbtn{margin-left:8px}.fx0-h{transform:scaleX(-1)}.fx0-v{transform:scaleY(-1)}.fx0-hv{transform:scale(-1)}.fx180-h{transform:rotate(180deg) scaleX(-1)}.fx180-v{transform:rotate(180deg) scaleY(-1)}.fx180-hv{transform:rotate(180deg) scale(-1)}.fx90-h{transform:rotate(90deg) scaleX(-1)}.fx90-v{transform:rotate(90deg) scaleY(-1)}.fx90-hv{transform:rotate(90deg) scale(-1)}.fx270-h{transform:rotate(270deg) scaleX(-1)}.fx270-v{transform:rotate(270deg) scaleY(-1)}.fx270-hv{transform:rotate(270deg) scale(-1)}.pholder{vertical-align:middle}img.rotinner{object-fit:contain;transform-origin:center}.meta{margin-top:10px;color:var(--dim);font-size:13.5px;text-align:center}.meta .sep{opacity:.55;padding:0 4px}.meta a{color:var(--acc)}.recdot{color:var(--rec);font-weight:600}footer#hint{padding:8px;text-align:center;font-size:12.5px;border-top:1px solid var(--line);color:var(--dim)}.revGrid{display:grid;grid-template-columns:repeat(auto-fill,148px);gap:10px;justify-content:start;width:100%}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden;cursor:pointer}.card:hover{border-color:var(--acc)}.card img{width:146px;height:100px;object-fit:cover;display:block}.card .cap{font-size:11.5px;color:var(--dim);padding:4px 6px 2px}.card .who{font-size:11px;color:var(--acc);padding:0 6px 6px}#detail{margin-top:18px;width:100%;max-width:900px}.revFlex{display:flex;gap:18px;align-items:flex-start}.revFlex img{width:380px;max-width:44vw;border-radius:8px;border:1px solid var(--line)}.revInfo{flex:1;display:flex;flex-direction:column;gap:6px}.revInfo h3{margin:0 0 2px}.revInfo label{font-size:12px;color:var(--dim);margin-top:4px}.revInfo input,.revInfo textarea{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font:inherit;width:100%}.takes{display:flex;flex-direction:column;gap:4px;margin:6px 0}.take{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px}.trtext{flex-basis:100%;font-size:12.5px;color:var(--dim);white-space:pre-wrap;padding-left:30px}.revFlex>button{align-self:flex-start;margin-top:10px}.lock{margin:12vh auto;text-align:center;max-width:340px;display:flex;flex-direction:column;gap:10px}.lockmark{width:240px;height:240px;align-self:center;border-radius:20px;border:1px solid var(--line);margin-bottom:4px}#brandMark{width:24px;height:24px;border-radius:6px;flex:0 0 auto}.lock input{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:8px 10px}h1{margin:0;font-size:22px}.sub{color:var(--dim);font-size:13px}#toast{position:fixed;left:50%;bottom:46px;transform:translate(-50%) translateY(20px);background:#2b3240;border:1px solid var(--acc);color:var(--fg);padding:8px 16px;border-radius:8px;font-size:13.5px;opacity:0;transition:all .25s;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%)}.adminPanel{background:var(--panel);border-bottom:1px solid var(--line);padding:12px 16px;display:flex;flex-direction:column;gap:8px}.adminCols{display:flex;gap:28px;flex-wrap:wrap}.adminCols>div{display:flex;flex-direction:column;gap:6px;min-width:280px}.adminCols h4{margin:6px 0 0;font-size:13px;letter-spacing:.5px;text-transform:uppercase;color:var(--acc)}.adminCols .row{font-size:13px}.adminCols input,.adminCols select{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font:inherit;max-width:260px}.adminCols .chk{font-size:12.5px;color:var(--dim);display:flex;gap:6px;align-items:center}.photoWrap .nav,.photoWrap .rotbtn{position:relative;z-index:5;pointer-events:auto}#photo{pointer-events:auto}.transcript{color:var(--fg);font-size:13px;margin-top:4px;max-width:82vw;margin-left:auto;margin-right:auto}.whoLine{color:var(--acc);font-size:12.5px;margin-top:2px}.spkLine{color:var(--acc);font-size:12.5px;margin-top:2px;opacity:.9}#miclvl{font-size:12px;color:var(--acc);white-space:nowrap}.tagline{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:8px 0 10px}.taghead{font-size:12px;color:var(--dim);margin-right:2px}.tag{display:inline-flex;align-items:center;gap:4px;border-radius:12px;padding:2px 9px;font-size:12.5px;border:1px solid transparent;max-width:100%}.tag .tsrc{opacity:.65;font-style:italic}.tag .tval{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag .tbtn{border:0;background:transparent;color:inherit;cursor:pointer;font-size:12.5px;padding:0 2px;line-height:1}.tag .tbtn:hover{filter:brightness(1.3)}.tag .tdim{opacity:.7}.tag.yellow{background:#ffc83c29;color:#e8c15a;border-color:#ffc83c73}.tag.green{background:#3cc87826;color:#5fce8f;border-color:#3cc87873}.tag.blue{background:#5a96ff21;color:#7fa8e8;border-color:#5a96ff66}.tag.dimmed{opacity:.55;color:var(--dim);border-style:dashed;border-color:var(--line)}.modalWrap{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:60}.modal{background:var(--bg, #16181d);border:1px solid var(--line);border-radius:10px;padding:14px 16px;min-width:290px;max-width:92vw}.modal .mh{font-weight:600;margin-bottom:8px}.modal label{display:block;font-size:12.5px;color:var(--dim);margin:8px 0}.modal input{width:100%}.modal .mbtns{display:flex;gap:8px;margin-top:10px}.modal .danger{color:#e07070;border-color:#e0707080}.modal .ghost{opacity:.75}.newcol{display:inline-flex;gap:6px;align-items:center}.newcol input{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:4px 8px;font-size:13px;width:170px}.ingest{font-size:12.5px;display:flex;gap:8px;align-items:center}.ingest .tiny{font-size:11px;padding:1px 7px}.facesCols{display:flex;gap:24px;flex-wrap:wrap}.facesCols>div{flex:1 1 340px}.namerow{display:inline-flex;gap:6px;align-items:center}.namerow input{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:6px;padding:3px 8px;font-size:12.5px;width:150px}.outfitbox{margin-top:14px;border-top:1px solid var(--line);padding-top:8px}.outfitbox h4{margin:2px 0 4px}.outfitbox .row{font-size:12.5px;margin:2px 0}.emptycol{margin-top:8vh}.emptycol p{margin:6px 0}button:disabled{opacity:.55;cursor:default}@media(max-width:820px),(pointer:coarse){.photoWrap{gap:14px;padding:0 6px}.nav,.rotbtn{min-width:64px;min-height:64px;font-size:30px;border-radius:50%}#photo{max-width:92vw;max-height:58vh}.meta{font-size:15px;padding:0 10px}.transcript{font-size:14px}header#top{flex-wrap:wrap;padding:10px;row-gap:8px}header#top .dim{display:none}.revGrid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}@media(pointer:coarse)and (max-width:820px){.photoWrap{flex-direction:column-reverse}.photoWrap .nav,.photoWrap .rotbtn{width:30vw;max-width:110px}}.airow{display:flex;gap:8px;align-items:center;margin:4px 0}.airow .tiny.on{outline:2px solid #3b82f6}.vrow{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0 2px}.vrow .vtag{font-size:11px;color:var(--dim, #8b949e);text-transform:uppercase;letter-spacing:.5px}.vbtn{font-size:11px;padding:2px 7px}.vbtn.on{outline:2px solid #3b82f6}.vbtn.held{border-color:#b58900;color:#e3b341}.vbtn.held.on{outline-color:#e3b341}.aibadge{background:#3b82f6;color:#fff;border-radius:6px;padding:1px 8px;font-size:12px;white-space:nowrap}
