:root{--bg:#f3f4f2;--bg2:#e9ebe6;--ink:#16181d;--ink2:#3d424b;--muted:#5b606a;--line:#d9dbd6;--accent:#2f4bc9;--accent2:#1d33a0;--ok:#1f7a4d;--r:16px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font:15px/1.5 Outfit,system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent)}a:hover{color:var(--accent2)}h1,h2,h3{letter-spacing:-.02em;margin:0;line-height:1.1}h1{font-size:32px;font-weight:800}h2{font-size:22px;font-weight:700}h3{font-size:16px;font-weight:700}p{margin:0}.mono{color:var(--muted);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12.5px}button,input,select,textarea{font:inherit;color:inherit}.btn{cursor:pointer;background:var(--ink);color:var(--bg);border:0;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-weight:600;text-decoration:none;transition:transform .12s;display:inline-flex}.btn:hover{color:#fff;background:#000}.btn:active{transform:translateY(1px)scale(.98)}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent2)}.btn.ghost{color:var(--ink);background:#fff;border:1px solid #c9ccc5}.btn.ghost:hover{color:var(--ink);background:#f8f8f6}.btn.small{padding:7px 12px;font-size:13px}.btn:disabled{opacity:.5;cursor:default}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink2);font-size:13px;font-weight:600}.field input,.field select,.field textarea{background:#fff;border:1px solid #c9ccc5;border-radius:10px;width:100%;padding:10px 12px}.field textarea{resize:vertical;min-height:96px}.card{background:#fff;border:1px solid #e2e4df;border-radius:20px;flex-direction:column;gap:14px;padding:22px;display:flex}.card.dark{background:var(--ink);color:var(--bg);border-color:var(--ink)}.card.dark .field label{color:#d9dbd6}.card.dark .field input{color:#f3f4f2;background:#23262c;border-color:#3a3e46}.pill{white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.pill.received{color:#3d424b;background:#eceee9}.pill.in_production{color:#1d33a0;background:#e6ebff}.pill.delivered{color:#f3f4f2;background:#16181d}.pill.declined{color:#8a1f1f;background:#fde8e8}.pill.prospect{color:#3d424b;background:#eceee9}.pill.spec_sent{color:#1d33a0;background:#e6ebff}.pill.replied{color:#8a5a00;background:#fff1d6}.pill.paid{color:#1f7a4d;background:#dff5e8}.nav{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:24px;height:64px;padding:0 40px;display:flex}.nav .brand{color:var(--ink);align-items:center;gap:12px;font-weight:700;text-decoration:none;display:flex}.nav .brand .sep{color:#c9ccc5}.nav .right{color:var(--muted);align-items:center;gap:18px;font-size:14px;display:flex}.nav .right a{color:var(--muted);text-decoration:none}.main{flex-wrap:wrap;align-items:flex-start;gap:36px;padding:36px 40px 56px;display:flex}.col{flex-direction:column;flex:999 560px;gap:24px;min-width:0;display:flex}.rail{flex-direction:column;flex:320px;gap:20px;min-width:0;max-width:420px;display:flex}.head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip{cursor:pointer;background:#fff;border:1px solid #c9ccc5;border-radius:999px;padding:7px 13px;font-size:13.5px;font-weight:500}.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chips .sep{background:var(--line);width:1px;height:20px;margin:0 4px}.tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.tile{background:#fff;border:1px solid #e2e4df;border-radius:16px;flex-direction:column;gap:8px;padding:8px;display:flex}.tile .thumb{aspect-ratio:9/16;background:#e4e6e1;border-radius:10px;position:relative;overflow:hidden}.tile .thumb img,.tile .thumb video{object-fit:cover;width:100%;height:100%;display:block}.tile .meta{justify-content:space-between;align-items:center;gap:6px;padding:0 2px;display:flex}.tile .meta strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.tile .dl{gap:6px;display:flex}.tile .dl a{color:var(--ink);border:1px solid #c9ccc5;border-radius:999px;padding:3px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;text-decoration:none}.tile .dl a:hover{background:var(--ink);color:var(--bg)}.list{border-top:1px solid #e2e4df;flex-direction:column;display:flex}.list .row{border-bottom:1px solid #e2e4df;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.list .row .t{flex-direction:column;gap:2px;min-width:0;display:flex}.list .row .t strong{font-size:14px}pre.readme{white-space:pre-wrap;color:var(--ink2);background:#fff;border:1px solid #e2e4df;border-radius:16px;max-height:420px;margin:0;padding:18px;font-family:IBM Plex Mono,monospace;font-size:12.5px;line-height:1.55;overflow:auto}.table{background:#fff;border:1px solid #e2e4df;border-radius:20px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:900px;font-size:14px}th{text-align:left;color:var(--muted);border-bottom:1px solid #e2e4df;padding:12px 16px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:500}td{vertical-align:middle;border-bottom:1px solid #eef0eb;padding:12px 16px}.stats{flex-wrap:wrap;gap:14px;display:flex}.stat{background:#fff;border:1px solid #e2e4df;border-radius:16px;flex-direction:column;flex:150px;gap:2px;padding:16px 18px;display:flex}.stat strong{letter-spacing:-.03em;font-size:30px;font-weight:800}.note{color:var(--muted);font-size:13px}.ok{color:var(--ok);font-size:14px}.err{color:#8a1f1f;font-size:14px}.login{justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.login .card{gap:18px;width:100%;max-width:420px}.linkbox{word-break:break-all;background:#f8f8f6;border:1px solid #e2e4df;border-radius:10px;padding:10px;font-family:IBM Plex Mono,monospace;font-size:12px}.empty{text-align:center;color:var(--ink2);background:#fff;border:1px dashed #c9ccc5;border-radius:20px;padding:40px}.tile .thumb{cursor:pointer;border:0;width:100%;padding:0;display:block}.tile .thumb:disabled{cursor:default}.tile .thumb .play{color:#fff;opacity:.9;background:#16181db8;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;margin:-20px 0 0 -20px;transition:transform .15s;display:flex;position:absolute;top:50%;left:50%}.tile .thumb:hover .play{background:var(--accent);transform:scale(1.08)}dialog.player{background:0 0;border:0;width:min(94vw,520px);max-width:none;padding:0}dialog.player::backdrop{background:#16181dc7}.player-box{background:#fff;border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.player-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.player-box video{background:#000;width:100%;max-height:78vh;display:block}.script-group{flex-direction:column;gap:6px;display:flex}.script-group h3{color:var(--muted);margin-top:6px;font-size:13px;font-weight:600}.line{border-radius:10px;grid-template-columns:110px 1fr;align-items:start;gap:10px;padding:6px 8px;display:grid}.line p{font-size:15.5px;line-height:1.45}.line .mono em{color:#9a9ea6;font-style:normal}.line.editing textarea{font:inherit;resize:vertical;background:#fff;border:1px solid #c9ccc5;border-radius:10px;width:100%;padding:8px 10px;font-size:15px}.line.dirty{background:#eef1ff}.line.dirty textarea{border-color:var(--accent)}.script-foot{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:12px;display:flex}.drop{background:#fafaf8;border:1.5px dashed #c9ccc5;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;padding:18px;display:flex}.drop.over{border-color:var(--accent);background:#eef1ff}.picked{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.picked li{align-items:center;gap:10px;font-size:14px;display:flex}.picked li span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.picked .x{cursor:pointer;background:#eceee9;border:0;border-radius:999px;width:24px;height:24px;line-height:1}.card.dark input::placeholder{color:#8d929b}.threads{flex-direction:column;gap:10px;display:flex}.thread{background:#fff;border:1px solid #e2e4df;border-radius:14px;overflow:hidden}.thread.open{border-color:#c9ccc5}.thread-head{cursor:pointer;text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.thread-head:hover{background:#f8f8f6}.thread-head .t{flex-direction:column;gap:2px;min-width:0;display:flex}.thread-head strong{font-size:14px}.thread-body{border-top:1px solid #eef0eb;flex-direction:column;gap:10px;padding:4px 14px 14px;display:flex}.msg{background:#f3f4f2;border-radius:12px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.msg.admin{background:#e9edff}.msg p{white-space:pre-wrap;font-size:14px}.reply{flex-direction:column;gap:8px;padding-top:4px;display:flex}.reply textarea{font:inherit;resize:vertical;border:1px solid #c9ccc5;border-radius:10px;padding:8px 10px}.edits{flex-direction:column;gap:8px;display:flex}.edit{border:1px dashed #c9ccc5;border-radius:10px;grid-template-columns:84px 1fr;gap:4px 10px;padding:8px 10px;font-size:13.5px;display:grid}.edit .was{color:#8a1f1f;grid-column:2;text-decoration:line-through}.edit .now{color:var(--ok);grid-column:2}.shots{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;display:grid}.shot{color:var(--ink);flex-direction:column;gap:6px;text-decoration:none;display:flex}.shot img,.shot>span.mono{aspect-ratio:1;object-fit:cover;background:#e4e6e1;border-radius:12px;justify-content:center;align-items:center;width:100%;display:flex}.shot .name{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.adminbar{flex-direction:column;gap:14px;padding:24px 40px 0;display:flex}.adminbar-row{flex-wrap:wrap;gap:14px;display:flex}.adminbar .stat{flex:150px}.nav .right .email{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}@media (max-width:760px){.nav{flex-wrap:wrap;height:auto;min-height:56px;padding:8px 16px}.nav .right{gap:10px}.nav .right .email{display:none}.main{gap:24px;padding:24px 16px 48px}.rail{max-width:none}.adminbar{padding:16px 16px 0}.line{grid-template-columns:1fr;gap:2px}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.head{flex-direction:column;align-items:flex-start}}
