:root{color-scheme:dark;font-family:PP Pangram Sans,Hanken Grotesk,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #0d0d0c;--panel: #151514;--panel2: #1c1c1a;--border: #2a2a27;--text: #f4f1ec;--dim: #918b82;--warm: #ddd3c8;--red: #fa0000;--green: #4ca36a;--amber: #d9a13d;--wavebase: #3a3934;--placeholder: #4a4741;--mono: "Spline Sans Mono", "SF Mono", ui-monospace, monospace;--spring: cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:var(--bg);color:var(--text)}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}:focus-visible{outline:2px solid var(--warm);outline-offset:2px}.mono{font-family:var(--mono)}.micro{color:var(--dim);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.brand-lockup{display:inline-flex;align-items:baseline;gap:12px;min-width:max-content}.brand-link{border:0;background:transparent;padding:0;color:inherit}.brand-link:hover .brand-word{color:#ff2a2a}.brand-word{color:var(--red);font-size:20px;font-weight:800;letter-spacing:-.04em;line-height:1;text-transform:lowercase}.brand-sub{color:var(--warm);font-size:13px}.button,.icon-button{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;gap:8px;justify-content:center;transition:transform .24s var(--spring),background .16s,border-color .16s}.button{min-height:42px;padding:10px 20px;color:var(--text);background:transparent;font-size:14px;font-weight:700}.button svg{width:17px;height:17px}.button:active,.icon-button:active{transform:scale(.97)}.button.primary{background:var(--red);color:#fff}.button.primary:disabled{border-color:#fa000038;background:#321010;color:#ffffffb8;opacity:1}.button.primary:hover{background:#d50000}.button.secondary{border-color:var(--border);color:var(--text)}.button.secondary:hover,.button.ghost:hover,.icon-button:hover{background:var(--panel2);border-color:var(--dim)}.icon-button.danger:hover{border-color:#fa000085;background:#fa00001a;color:var(--red)}.compact-icon{width:30px;height:30px}.button.ghost{color:var(--dim)}.button.compact{min-height:34px;padding:7px 13px}.icon-button{flex:none;width:36px;height:36px;color:var(--dim);background:transparent}.icon-button svg{width:17px;height:17px}.status-badge{align-items:center;border:1px solid var(--border);border-radius:999px;color:var(--dim);display:inline-flex;gap:7px;justify-content:center;max-width:max-content;padding:4px 10px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.status-badge.green{color:var(--green);border-color:#4ca36a59}.status-badge.amber{color:var(--amber);border-color:#d9a13d59}.status-badge.red{color:var(--red);border-color:#fa000059}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.login-screen,.center-state{display:grid;min-height:100vh;place-items:center;padding:32px}.login-card{width:min(390px,100%);padding:40px 32px;border:1px solid var(--border);border-radius:20px;background:var(--panel);text-align:center}.login-card .brand-lockup{justify-content:center;margin-bottom:6px}.login-button{width:100%;margin-top:30px}.login-note{margin:18px 0 0;color:var(--dim);font-size:12px}.admin-page{min-height:100vh;background:var(--bg)}.admin-topbar,.client-topbar{display:flex;align-items:center;gap:20px;min-height:70px;padding:16px 28px;border-bottom:1px solid var(--border)}.staff-chip{margin-left:auto;padding:7px 13px;border:1px solid var(--border);border-radius:999px;color:var(--warm);font-size:13px}.admin-nav{display:flex;align-items:center;gap:8px;margin-left:auto}.admin-nav+.staff-chip{margin-left:0}.admin-container{width:min(1220px,100%);margin:0 auto;padding:32px 28px 80px}.admin-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.admin-title-row h1{max-width:650px;margin:4px 0 0;font-size:clamp(1.9rem,3.4vw,2.7rem);line-height:1.02;letter-spacing:-.01em}.admin-toolbar{margin-bottom:12px}.search-field{display:flex;align-items:center;gap:10px;width:min(520px,100%);padding:10px 17px;border:1px solid var(--border);border-radius:999px;color:var(--dim)}.search-field svg{width:17px;height:17px}.search-field input{width:100%;border:none;outline:none;background:transparent;color:var(--text)}.filters{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}.filters button{border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--dim);padding:7px 15px;font-size:13px}.filters button.on{color:var(--red);border-color:#fa000073}.filters button:focus-visible{outline-color:#fa0000a8;outline-offset:3px}.quick-upload-container{width:min(1040px,100%);margin:0 auto;padding:46px 28px 88px}.quick-upload-heading{margin-bottom:26px}.quick-upload-heading h1{max-width:740px;margin:5px 0 0;font-size:clamp(2rem,4.2vw,4rem);line-height:.98;letter-spacing:-.01em}.quick-upload-drop{display:grid;min-height:390px;place-items:center;align-content:center;gap:12px;padding:42px;border:1.5px dashed var(--border);border-radius:18px;background:#1515146b;color:var(--dim);text-align:center;transition:background .16s,border-color .16s,color .16s}.quick-upload-drop.dragging,.quick-upload-drop:hover{border-color:var(--warm);background:#1c1c1ac7;color:var(--warm)}.quick-upload-drop>svg{width:34px;height:34px}.quick-upload-drop strong{color:var(--text);font-size:clamp(1.35rem,3vw,2rem)}.quick-upload-drop p{max-width:430px;margin:0;line-height:1.5}.quick-upload-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:10px}.quick-upload-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.quick-upload-summary button{display:grid;gap:7px;min-height:92px;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:transparent;color:var(--text);text-align:left}.quick-upload-summary button:hover{border-color:var(--dim);background:var(--panel)}.quick-upload-summary strong{font-family:var(--mono);font-size:28px}.delivery-table,.file-list{overflow:hidden;border:1px solid var(--border);border-radius:16px}.delivery-table.empty-table{background:#15151485}.delivery-row{display:grid;grid-template-columns:minmax(220px,2.2fr) 130px 92px 70px 100px 130px 94px;gap:14px;align-items:center;padding:14px 18px;border-top:1px solid var(--border)}.archive-row{grid-template-columns:minmax(220px,2.1fr) 110px 128px 70px 100px 92px 132px}.delivery-row:first-child{border-top:none}.delivery-row:not(.table-head):hover,.file-row:hover{background:var(--panel)}.table-head,.file-list-head{background:var(--panel);color:var(--dim);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.delivery-title-cell{min-width:0;border:0;background:transparent;color:var(--text);text-align:left}.delivery-title-cell strong,.delivery-title-cell span,.delivery-title-cell small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delivery-title-cell span,.delivery-title-cell small{color:var(--dim)}.row-actions,.editor-actions,.drop-actions,.client-top-actions{display:flex;align-items:center;gap:8px}.row-actions{justify-content:flex-end}.empty-state{margin:0;padding:44px;color:var(--dim);text-align:center}.product-empty-state{display:grid;justify-items:center;gap:12px;padding:52px 24px;text-align:center}.product-empty-state h2{margin:0;color:var(--text);font-size:clamp(1.45rem,4vw,2rem)}.product-empty-state p:not(.micro){max-width:430px;margin:0;color:var(--dim);line-height:1.55}.product-empty-state .button{margin-top:6px}.compact-empty{padding-block:42px}.editor-actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;width:min(1220px,100%);margin:0 auto;padding:30px 28px 88px}.title-editor,.message-editor{display:block;margin-bottom:20px}.title-editor input,.message-editor textarea,.slug-box input,.side-row input{border:1px solid var(--border);background:var(--panel);color:var(--text)}.title-editor input{width:100%;margin-top:8px;border-width:0 0 1px;border-radius:0;background:transparent;padding:6px 0;font-size:clamp(1.65rem,3.6vw,2.55rem);font-weight:800;line-height:1.04;letter-spacing:-.01em;outline:none}.message-editor textarea{width:100%;min-height:88px;margin-top:8px;padding:14px 16px;border-radius:16px;resize:vertical}.dropzone{display:grid;gap:8px;place-items:center;margin-bottom:20px;padding:38px;border:1.5px dashed var(--border);border-radius:20px;color:var(--dim);text-align:center}.dropzone.dragging,.dropzone:hover{border-color:var(--warm);background:var(--panel);color:var(--warm)}.dropzone.compact{grid-template-columns:auto 1fr auto;place-items:center start;text-align:left;padding:18px 20px}.dropzone svg{width:24px;height:24px}.dropzone p{margin:0}.upload-note,.upload-error{margin:8px 0 0;font-size:12px}.upload-note{color:var(--warm)}.upload-error{color:var(--red)}.dropzone.compact p{display:none}.file-list.empty{padding:28px;color:var(--dim);text-align:center}.file-list-head{display:flex;align-items:center;justify-content:space-between;padding:13px 18px}.folder-row{display:flex;align-items:center;gap:10px;width:100%;padding:12px 18px;border:0;border-top:1px solid var(--border);background:var(--panel);color:var(--text);text-align:left}.folder-row svg{width:17px;height:17px}.folder-row.closed .folder-chev{transform:rotate(-90deg)}.folder-count{margin-left:auto;color:var(--dim);font-size:11px}.file-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto 38px;gap:12px;align-items:center;padding:12px 18px;border-top:1px solid var(--border)}.file-row.selected{background:var(--panel2)}.file-kind{display:grid;width:36px;height:36px;place-items:center;border-radius:999px;background:var(--panel2);color:var(--warm)}.file-kind svg{width:17px;height:17px}.file-name{overflow-wrap:anywhere;font-size:13px}.file-row.selected .file-name{color:var(--warm)}.file-sub{display:flex;flex-wrap:wrap;gap:12px;margin-top:3px;color:var(--dim);font-size:11px}.side-panel{position:sticky;top:88px;align-self:start;padding:20px;border:1px solid var(--border);border-radius:16px;background:#1515148c}.side-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--border);color:var(--dim);font-size:13px}.side-row.stacked{display:block}.side-row-label,.link-name-row{display:flex;align-items:center}.side-row-label{justify-content:space-between;gap:10px}.link-name-row{gap:8px}.side-row input{border-radius:999px;padding:8px 12px;color-scheme:dark}.slug-box{display:flex;flex:1;align-items:center;gap:2px;margin-top:8px;padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:var(--panel2);color:var(--dim);font-size:12px}.slug-box input{flex:1;min-width:48px;border:0;outline:0;background:transparent;color:var(--text);font-family:var(--mono);font-size:12px}.overall-progress{padding-top:18px}.progress-track,.scrub{overflow:hidden;height:4px;border-radius:999px;background:#050505}.progress-track{margin:10px 0}.progress-track span,.scrub span{display:block;height:100%;border-radius:inherit;background:var(--warm)}.overall-progress p{margin:0;color:var(--dim);font-size:12px}.team-admin{max-width:1120px}.team-title-actions{display:flex;align-items:center;gap:10px}.team-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:20px;align-items:start;margin-bottom:20px}.team-panel{border:1px solid var(--border);border-radius:16px;background:#1515149e}.invite-form{display:grid;gap:14px;padding:18px}.team-panel-title{display:flex;align-items:center;gap:10px;padding:17px 18px;border-bottom:1px solid var(--border)}.team-panel-title svg{width:18px;height:18px;color:var(--warm)}.team-panel-title h2{margin:0;font-size:15px}.invite-form .team-panel-title{margin:-18px -18px 2px}.invite-form label{display:grid;gap:6px;color:var(--dim);font-size:12px}.invite-form input,.invite-form select{width:100%;min-height:42px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);padding:10px 12px}.team-notice{margin:0;color:var(--warm);font-size:12px}.team-list{display:grid}.team-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border-top:1px solid var(--border)}.team-row:first-child{border-top:none}.team-row>div{display:grid;min-width:0;gap:3px}.team-row strong,.team-row span,.team-row small{overflow-wrap:anywhere}.team-row span,.team-row small{color:var(--dim)}.team-row small{font-size:11px}.security-box{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.security-title,.password-control-head,.password-control-label,.password-setter{display:flex;align-items:center}.security-title{gap:8px;color:var(--text);font-size:13px;font-weight:700}.security-title small{display:block;margin-top:3px;color:var(--dim);font-size:11px;font-weight:500;line-height:1.35}.security-title svg,.password-control-label svg{width:16px;height:16px}.password-control{margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--dim);font-size:13px}.password-control.enabled{border-color:#4ca36a70;background:#4ca36a14}.password-control-head{justify-content:space-between;gap:12px}.password-control-label{gap:8px;color:var(--text);font-weight:700}.password-status{flex:none;border:1px solid var(--border);border-radius:999px;padding:3px 8px;color:var(--dim);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.password-control.enabled .password-status{border-color:#4ca36a73;color:var(--green)}.password-control p{margin:9px 0 0;line-height:1.45}.password-setter{gap:8px;margin-top:12px}.password-setter input{min-width:0;flex:1;min-height:38px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);padding:8px 12px}.security-error{margin:8px 0 0;color:var(--red);font-size:12px}.password-hint{display:block;margin-top:8px;color:var(--dim);font-size:11px;line-height:1.45}.remove-password{width:100%;margin-top:10px;border-color:#fa000033;color:var(--warm)}.public-url{display:block;width:100%;margin-top:16px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--panel);color:var(--warm);overflow-wrap:anywhere;font-size:11px;text-align:left}.client-page{min-height:100vh}.client-topbar{flex-wrap:wrap}.client-topbar .shared{color:var(--dim);font-size:13px}.client-top-actions{margin-left:auto}.expiry{color:var(--dim);font-size:13px}.client-main,.client-footer{width:min(980px,100%);margin:0 auto;padding:34px 28px}.client-main h1{max-width:780px;margin:8px 0 0;overflow-wrap:anywhere;font-size:clamp(1.9rem,5vw,3.6rem);line-height:1;letter-spacing:-.01em}.client-meta{display:flex;flex-wrap:wrap;gap:16px;margin-top:14px;color:var(--dim)}.protected-meta{display:inline-flex;align-items:center;gap:6px;color:var(--warm)}.protected-meta svg{width:14px;height:14px}.client-message{max-width:62ch;margin:18px 0 0;color:var(--warm);font-size:17px;font-weight:300}.player{overflow:hidden;margin-top:30px;border:1px solid var(--border);border-radius:16px;background:var(--panel)}.player-state{display:grid;min-height:270px;place-items:center;padding:42px;color:var(--dim);text-align:center}.player-state svg{width:28px;height:28px}.player-state h2{margin:12px 0 0;color:var(--text);font-size:20px}.player-state p{margin:4px 0 18px}.pulse-dot{width:10px;height:10px;border-radius:50%;background:var(--amber);animation:pulse 1.4s ease-in-out infinite}.video-stage{position:relative;display:grid;aspect-ratio:16 / 9;min-height:260px;place-items:center;background:linear-gradient(90deg,transparent 0 48%,rgba(221,211,200,.08) 48% 52%,transparent 52%),#080807}.video-stage.media-ready{display:block}.video-stage video{display:block;width:100%;height:100%;min-height:inherit;background:#080807;object-fit:contain}.video-poster{position:absolute;right:22px;bottom:20px;left:22px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--dim)}.video-poster strong{overflow:hidden;color:var(--warm);font-family:var(--mono);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.video-play,.play-button{display:grid;place-items:center;border:0;border-radius:50%;background:var(--red);color:#fff}.video-play{width:76px;height:76px}.video-play svg,.play-button svg{width:22px;height:22px;fill:currentColor}.audio-stage{display:grid;gap:18px;padding:32px}.native-audio{width:100%;color-scheme:dark}.player-file{color:var(--dim);overflow-wrap:anywhere;font-size:13px}.play-button{width:44px;height:44px}.play-button.large{width:58px;height:58px}.waveform{display:flex;align-items:center;gap:1px;height:132px;overflow:hidden}.waveform i{flex:1;min-width:1px;min-height:4px;border-radius:2px;background:var(--wavebase)}.waveform i.played{background:var(--warm)}.waveform i.head{background:var(--red)}.player-controls{display:flex;align-items:center;gap:14px;padding:14px 20px;border-top:1px solid var(--border)}.scrub{flex:1}.time{color:var(--dim);font-size:12px}.control-icon{width:18px;height:18px;color:var(--dim)}.download-current{display:none;width:100%;margin-top:14px}.client-footer{display:flex;justify-content:space-between;gap:18px;color:var(--dim);font-size:13px}.client-footer a,.center-state a{color:var(--warm)}.center-state{text-align:center}.center-state h1{margin:26px 0 8px;font-size:clamp(1.6rem,4vw,2.4rem)}.center-state p{margin:0 0 18px;color:var(--dim)}.password-gate{align-content:center;gap:14px}.password-gate>svg{width:32px;height:32px;color:var(--warm)}.password-gate form{display:grid;gap:14px;width:min(360px,100%)}.password-gate label{display:grid;gap:8px;text-align:left}.password-gate input{min-height:46px;border:1px solid var(--border);border-radius:12px;padding:10px 52px 10px 14px;background:var(--panel);color:var(--text)}.password-input-shell{position:relative;display:block}.password-input-shell input{width:100%}.password-input-shell .icon-button{position:absolute;top:5px;right:6px;width:36px;height:36px}.gate-error{margin:0;color:var(--red);font-size:13px}.toast{position:fixed;bottom:24px;left:24px;z-index:40;padding:12px 22px;border:1px solid var(--border);border-radius:999px;background:var(--panel2);animation:toast-in .28s var(--spring)}@keyframes toast-in{0%{opacity:0;transform:translateY(20px)}}@keyframes pulse{0%,to{opacity:.35}50%{opacity:1}}@media(max-width:900px){.delivery-row{grid-template-columns:1fr}.table-head{display:none}.editor-grid{grid-template-columns:1fr}.side-panel{position:static}.admin-title-row{align-items:flex-start;flex-direction:column}.team-grid,.quick-upload-summary{grid-template-columns:1fr}}@media(max-width:660px){.admin-topbar,.client-topbar{align-items:flex-start;flex-direction:column;gap:12px;padding:14px 18px}.client-top-actions,.editor-actions,.team-title-actions,.staff-chip{margin-left:0}.client-top-actions,.editor-actions,.team-title-actions{align-items:stretch;flex-direction:column;width:100%}.client-top-actions .button,.editor-actions .button,.team-title-actions .button{flex:1}.admin-nav{margin-left:0}.staff-chip{max-width:100%;overflow-wrap:anywhere}.team-row{align-items:stretch;flex-direction:column}.team-row .button{width:100%}.admin-container,.editor-grid,.quick-upload-container,.client-main,.client-footer{padding-right:18px;padding-left:18px}.admin-container{padding-top:24px}.admin-title-row h1{font-size:clamp(1.65rem,9vw,2.15rem)}.title-editor input{font-size:clamp(1.5rem,8vw,2rem)}.client-main{padding-top:26px}.client-main h1{font-size:clamp(1.75rem,10vw,2.45rem)}.client-message{font-size:15px}.dropzone,.quick-upload-drop,.dropzone.compact{grid-template-columns:1fr;justify-items:center;padding:24px 18px;text-align:center}.drop-actions,.quick-upload-actions,.password-setter{align-items:stretch;flex-direction:column;width:100%}.quick-upload-actions .button,.password-setter .button{width:100%}.download-current{display:inline-flex}.file-row{grid-template-columns:38px minmax(0,1fr) 38px}.file-row .status-badge{grid-column:2 / -1}.dropzone.compact{grid-template-columns:1fr;text-align:center;place-items:center}.audio-stage{gap:14px;padding:22px}.waveform{height:118px}.waveform i{min-width:1px}.player-controls{align-items:stretch;flex-direction:column}.client-footer{flex-direction:column}}@media(max-width:520px){.file-row{grid-template-columns:34px minmax(0,1fr) 36px;gap:10px;padding:12px}.file-kind{width:34px;height:34px}.file-row .status-badge{grid-column:2 / 4;justify-self:start}.file-row .icon-button{grid-column:3;grid-row:1}.file-sub{gap:8px}.folder-row{flex-wrap:wrap;padding:12px}.folder-count{width:100%;margin-left:0}}
