:root{--color-brand-spike:#ff3d7f;--color-brand-grafit:#141414;--color-brand-papir:#f2f2f2;--color-neutral-0:#fff;--color-neutral-50:#f7f7f7;--color-neutral-100:#f2f2f2;--color-neutral-150:#ebebeb;--color-neutral-200:#e0e0e0;--color-neutral-300:#ccc;--color-neutral-400:#a3a3a3;--color-neutral-500:#8f8f8f;--color-neutral-600:#6b6b6b;--color-neutral-700:#5c5c5c;--color-neutral-750:#3d3d3d;--color-neutral-800:#333;--color-neutral-850:#262626;--color-neutral-900:#1f1f1f;--color-neutral-925:#171717;--color-neutral-950:#141414;--color-neutral-975:#0e0e0e;--color-neutral-1000:#0a0a0a;--color-spike-100:#ffe3ec;--color-spike-400:#ff5c93;--color-spike-500:#ff3d7f;--color-spike-600:#e6266a;--color-spike-700:#c8145a;--color-spike-950:#3a1222;--font-family-display:Archivo, system-ui, sans-serif;--font-family-ui:Archivo, system-ui, sans-serif;--font-family-mono:"IBM Plex Mono", ui-monospace, monospace;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-display:800;--typography-display:800 56px/60px Archivo, system-ui, sans-serif;--typography-h1:800 32px/38px Archivo, system-ui, sans-serif;--typography-h2:800 22px/28px Archivo, system-ui, sans-serif;--typography-h3:600 16px/22px Archivo, system-ui, sans-serif;--typography-body:400 14px/21px Archivo, system-ui, sans-serif;--typography-small:400 13px/18px Archivo, system-ui, sans-serif;--typography-label:600 11px/14px Archivo, system-ui, sans-serif;--typography-mono:400 12px/16px "IBM Plex Mono", ui-monospace, monospace;--space-0:0px;--space-0-5:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-none:0px;--radius-frame:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-full:999px;--shadow-card:0px 1px 2px 0px #0000000f, 0px 4px 12px 0px #0000000f;--shadow-pop:0px 12px 32px 0px #00000029;--shadow-drag:0px 18px 40px 0px #00000040;--motion-duration-fast:.12s;--motion-duration-base:.2s;--motion-duration-slow:.32s;--motion-easing-standard:cubic-bezier(.2, 0, 0, 1);--motion-easing-stick:cubic-bezier(.34, 1.56, .64, 1);--tape-length:44px;--tape-width:14px;--tape-angle:-42deg;--tape-color:#ff3d7f;--typography-display-tracking:-.035em;--typography-h1-tracking:-.03em;--typography-h2-tracking:-.02em;--typography-h3-tracking:-.01em;--typography-body-tracking:0em;--typography-small-tracking:0em;--typography-label-tracking:.06em;--typography-mono-tracking:0em;--bg-canvas:#f2f2f2;--bg-surface:#fff;--bg-raised:#fff;--bg-sunken:#ebebeb;--bg-hover:#ebebeb;--bg-letterbox:#0a0a0a;--border-subtle:#e0e0e0;--border-default:#ccc;--border-strong:#a3a3a3;--text-primary:#141414;--text-secondary:#5c5c5c;--text-tertiary:#6b6b6b;--text-disabled:#a3a3a3;--accent-default:#ff3d7f;--accent-hover:#e6266a;--accent-pressed:#c8145a;--accent-subtle:#ffe3ec;--accent-text:#c8145a;--accent-on:#141414;--status-success:#187a42;--status-warning:#965800;--status-danger:#c7352a;--focus:#ff3d7f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-canvas:#0e0e0e;--bg-surface:#171717;--bg-raised:#1f1f1f;--bg-sunken:#0a0a0a;--bg-hover:#262626;--bg-letterbox:#0a0a0a;--border-subtle:#262626;--border-default:#333;--border-strong:#5c5c5c;--text-primary:#f2f2f2;--text-secondary:#a3a3a3;--text-tertiary:#8f8f8f;--text-disabled:#3d3d3d;--accent-default:#ff3d7f;--accent-hover:#ff5c93;--accent-pressed:#e6266a;--accent-subtle:#3a1222;--accent-text:#ff5c93;--accent-on:#141414;--status-success:#3ccb7f;--status-warning:#f2a93b;--status-danger:#ff6b5a;--focus:#ff5c93;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-theme=dark]{--bg-canvas:#0e0e0e;--bg-surface:#171717;--bg-raised:#1f1f1f;--bg-sunken:#0a0a0a;--bg-hover:#262626;--bg-letterbox:#0a0a0a;--border-subtle:#262626;--border-default:#333;--border-strong:#5c5c5c;--text-primary:#f2f2f2;--text-secondary:#a3a3a3;--text-tertiary:#8f8f8f;--text-disabled:#3d3d3d;--accent-default:#ff3d7f;--accent-hover:#ff5c93;--accent-pressed:#e6266a;--accent-subtle:#3a1222;--accent-text:#ff5c93;--accent-on:#141414;--status-success:#3ccb7f;--status-warning:#f2a93b;--status-danger:#ff6b5a;--focus:#ff5c93;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}
@font-face{font-family:Archivo;src:url(/fonts/Archivo.ttf)format("truetype");font-weight:100 900;font-stretch:62% 125%;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono.ttf)format("truetype");font-weight:400;font-display:swap}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg-canvas);color:var(--text-primary);font:var(--typography-body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.mono{font:var(--typography-mono)}.label{font:var(--typography-label);letter-spacing:var(--typography-label-tracking);text-transform:uppercase;color:var(--text-tertiary)}.muted{color:var(--text-secondary)}.btn{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface);font-weight:var(--font-weight-semibold);cursor:pointer;white-space:nowrap;transition:background var(--motion-duration-fast) var(--motion-easing-standard);display:inline-flex}.btn:hover{background:var(--bg-hover)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent-default);border-color:var(--accent-default);color:var(--accent-on)}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.small{height:28px;padding:0 var(--space-3);font:var(--typography-small);font-weight:var(--font-weight-semibold)}.chip{border-radius:var(--radius-full);background:var(--bg-sunken);color:var(--text-secondary);font:var(--typography-small);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.dot{background:var(--accent-default);border-radius:50%;width:6px;height:6px;display:inline-block}.beat{color:var(--accent-text)}[data-theme=dark] .beat{color:var(--accent-default)}.tape{z-index:2;width:var(--tape-length);height:var(--tape-width);background:var(--tape-color);transform:rotate(var(--tape-angle));clip-path:polygon(0 0,100% 0,92% 16.6%,100% 33.3%,92% 50%,100% 66.6%,92% 83.3%,100% 100%,0 100%,8% 83.3%,0 66.6%,8% 50%,0 33.3%,8% 16.6%);position:absolute;top:6px;left:-12px}.shell{grid-template-columns:232px 1fr;height:100vh;display:grid}.side{background:var(--bg-surface);border-right:1px solid var(--border-subtle);padding:var(--space-5) var(--space-3);overflow-y:auto}.side .logo{padding:0 var(--space-2) var(--space-6);display:flex}.side .logo img{height:22px}.side .label{margin:var(--space-5) var(--space-3) var(--space-2)}.side .item{padding:7px var(--space-3);border-radius:var(--radius-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium);justify-content:space-between;align-items:center;display:flex}.side .item:hover{background:var(--bg-hover);color:var(--text-primary)}.side .item.on{background:var(--bg-hover);color:var(--text-primary);box-shadow:inset 2px 0 0 var(--accent-default)}.side .item small{font:var(--typography-mono);color:var(--text-tertiary)}.main{flex-direction:column;min-width:0;display:flex;overflow:hidden}.topbar{gap:var(--space-3);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);display:flex}.tabs{gap:var(--space-6);padding:0 var(--space-6);border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);display:flex}.tabs a{padding:var(--space-3) 0;font-weight:var(--font-weight-semibold);color:var(--text-secondary);border-bottom:2px solid #0000}.tabs a.on{color:var(--text-primary);border-color:var(--accent-default)}.content{padding:var(--space-6);flex:1;overflow-y:auto}.addbar{gap:var(--space-3);flex:1;display:flex}.addbar input{height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--bg-sunken);border:1px solid #0000;outline:none;flex:1}.addbar input:focus{border-color:var(--border-strong);background:var(--bg-surface)}.addbar .btn{height:40px}.dropzone{z-index:50;background:color-mix(in srgb, var(--bg-canvas) 85%, transparent);place-items:center;display:grid;position:fixed;inset:0}.dropzone div{padding:var(--space-10) var(--space-16);border:2px dashed var(--accent-default);border-radius:var(--radius-lg);font:var(--typography-h2)}.flash{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-subtle);margin-bottom:var(--space-4)}.refs{gap:var(--space-5);padding-bottom:var(--space-3);grid-auto-columns:220px;grid-auto-flow:column;display:grid;overflow-x:auto}.ref{gap:var(--space-2);flex-direction:column;display:flex;position:relative}.ref .frame{aspect-ratio:16/10;border-radius:var(--radius-frame);background:var(--bg-sunken);overflow:hidden}.ref .frame img{object-fit:cover;width:100%;height:100%;display:block}.ref .title{font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ref .meta{align-items:center;gap:var(--space-2);color:var(--text-secondary);font:var(--typography-small);display:flex}.ref .err{color:var(--status-danger);font:var(--typography-small);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.swatches{gap:3px;display:inline-flex}.swatches i{border-radius:2px;width:10px;height:10px;display:inline-block}.progress{background:var(--bg-sunken);border-radius:2px;height:3px;overflow:hidden}.progress:after{content:"";background:var(--accent-default);width:40%;height:100%;animation:slide 1.4s var(--motion-easing-standard) infinite;display:block}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(260%)}}.empty{text-align:center;max-width:420px;margin:12vh auto}.empty h2{font:var(--typography-h2);letter-spacing:var(--typography-h2-tracking);margin:0 0 var(--space-2)}.sb{background:var(--bg-canvas);min-height:100%;color:var(--text-primary)}.sb-head{align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle);display:flex}.sb-head h1{font:var(--typography-h1);letter-spacing:var(--typography-h1-tracking);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;overflow:hidden}.sb-body{gap:var(--space-6);padding:var(--space-6);grid-template-columns:minmax(0,1fr) 380px;display:grid}.player{top:var(--space-6);align-self:start;gap:var(--space-3);flex-direction:column;display:flex;position:sticky}.player video{border-radius:var(--radius-frame);background:var(--bg-letterbox);width:100%;max-height:62vh}.ruler{border-radius:var(--radius-sm);background:var(--bg-sunken);height:56px;margin-bottom:var(--space-5);cursor:pointer;position:relative;overflow:hidden}.ruler .b{background:var(--border-strong);width:1px;height:10px;position:absolute;bottom:0}.ruler .b.down{height:18px}.ruler .cut{background:var(--text-tertiary);border-radius:1px;width:3px;margin-left:-1px;position:absolute;top:8px;bottom:0}.ruler .cut.on{background:var(--accent-default)}.ruler .head{background:var(--text-primary);pointer-events:none;width:1px;position:absolute;top:0;bottom:0}.ruler .tc{font:var(--typography-mono);color:var(--text-tertiary);position:absolute;top:6px;left:8px}.shots{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.shot{border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;position:relative}.shot.on{border-color:var(--accent-default)}.shot .frame{aspect-ratio:16/9;border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--bg-letterbox);overflow:hidden}.shot .frame img{object-fit:cover;width:100%;height:100%;display:block}.shot .body{padding:var(--space-3);flex-direction:column;gap:3px;display:flex}.shot .row{color:var(--text-tertiary);justify-content:space-between;display:flex}.shot .name{font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shot .spec{font:var(--typography-small);color:var(--text-secondary)}.note{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-subtle)}.inout{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.plan{border-collapse:collapse;background:var(--bg-surface);border-radius:var(--radius-md);width:100%;overflow:hidden}.plan th{text-align:left;padding:var(--space-3);border-bottom:1px solid var(--border-subtle)}.plan td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle);vertical-align:top}.plan td.thumb{width:120px}.plan td.thumb img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-frame);width:112px;display:block}.plan [contenteditable]{border-radius:4px;outline:none;min-width:2ch;margin:-2px -4px;padding:2px 4px;display:inline-block}.plan [contenteditable]:hover{background:var(--bg-hover)}.plan [contenteditable]:focus{background:var(--bg-sunken);box-shadow:inset 0 0 0 1px var(--border-strong)}.plan .title{font-weight:var(--font-weight-semibold)}.login{place-items:center;min-height:100vh;display:grid}.login form{gap:var(--space-3);flex-direction:column;width:360px;display:flex}.login img{height:28px;margin-bottom:var(--space-4);align-self:flex-start}.login input{height:44px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface)}.side .add summary{cursor:pointer;color:var(--text-tertiary);list-style:none}.side .add summary::-webkit-details-marker{display:none}.side .add form{gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3);flex-direction:column;display:flex}.side .add input,.side .add select,.field{height:32px;padding:0 var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-surface)}.topbar form{display:contents}.panel{gap:var(--space-4);flex-direction:column;max-width:720px;display:flex}.panel h2{font:var(--typography-h2);letter-spacing:var(--typography-h2-tracking);margin:0}.panel .row{gap:var(--space-3);align-items:center;display:flex}.panel .row .field{flex:1}.list{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;display:flex}.list>div{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;display:flex}.list>div:last-child{border-bottom:0}.copy{font:var(--typography-mono);word-break:break-all;padding:var(--space-3);background:var(--bg-sunken);border-radius:var(--radius-sm)}.deck{scroll-snap-type:y mandatory;background:var(--bg-canvas);height:100vh;color:var(--text-primary);overflow-y:auto}.slide{scroll-snap-align:start;min-height:100vh;padding:var(--space-12) var(--space-16);gap:var(--space-6);flex-direction:column;display:flex}.slide.cover{justify-content:center;gap:var(--space-4)}.slide.cover h1{font:var(--typography-display);letter-spacing:var(--typography-display-tracking);margin:0}.slide-head{align-items:center;gap:var(--space-3);display:flex}.slide-head h2{font:var(--typography-h1);letter-spacing:var(--typography-h1-tracking);flex:1;margin:0}.contact{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.contact figure{flex-direction:column;gap:4px;margin:0;display:flex}.contact img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-frame);width:100%;display:block}.contact figcaption{color:var(--text-tertiary)}.planlist{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(420px,1fr));display:grid}.planlist article{gap:var(--space-3);grid-template-columns:160px 1fr;align-items:start;display:grid}.planlist img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-frame);width:160px}.planlist p{margin:4px 0 0}@media (max-width:720px){.slide{padding:var(--space-8) var(--space-4)}.slide.cover h1{font-size:36px;line-height:40px}.planlist{grid-template-columns:1fr}.planlist article{grid-template-columns:112px 1fr}.planlist img{width:112px}}.board{margin-top:var(--space-5);gap:var(--space-3);flex-direction:column;display:flex}.board-bar{align-items:center;gap:var(--space-2);display:flex}.board-canvas{border-radius:var(--radius-md);background:var(--bg-sunken);cursor:grab;height:calc(100vh - 360px);min-height:420px;overflow:hidden}.field.area{height:auto;padding:var(--space-2) var(--space-3);resize:vertical;line-height:1.5}.checks{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.checks label{gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;align-items:center;display:flex}.checks img{aspect-ratio:16/9;object-fit:cover;border-radius:2px;width:64px}.profile{padding:var(--space-4);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);gap:var(--space-2);flex-direction:column;display:flex}.profile ul{margin:0;padding-left:18px}.plan td.actions{white-space:nowrap;width:1%}.plan td.actions .btn{padding:0 8px}.plan tr.group td{background:var(--bg-sunken);padding:var(--space-2) var(--space-3)}.sheet{gap:var(--space-6);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-8);flex-direction:column;display:flex}.sheet-head{border-bottom:2px solid var(--text-primary);padding-bottom:var(--space-4);justify-content:space-between;align-items:flex-start;display:flex}.sheet h1{font:var(--typography-h1);letter-spacing:var(--typography-h1-tracking);margin:4px 0}.sheet h2{font:var(--typography-label);letter-spacing:var(--typography-label-tracking);text-transform:uppercase;color:var(--text-tertiary);margin:0 0 var(--space-2)}.sheet-cols{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.sheet-line{border-bottom:1px solid var(--border-subtle);flex-direction:column;padding:6px 0;display:flex}@page{size:A4;margin:12mm}.print{color:#141414;background:#fff;padding:0;font-size:11px}.print h1{letter-spacing:-.03em;margin:2px 0 6px;font:800 24px/28px Archivo,sans-serif}.print .plan{border:0;font-size:10px}.print .plan td,.print .plan th{padding:5px 6px}.print .plan th{letter-spacing:.06em;text-transform:uppercase;color:#6b6b6b;text-align:left;font:600 8px/1 Archivo}.print .plan tr{break-inside:avoid}.print .plan td.thumb img{width:88px}.print .mono{font-size:9px;line-height:12px}.print .sheet{border:0;padding:0}.print-page{break-after:page}.print-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.print-grid figure{break-inside:avoid;margin:0}.print-grid img{aspect-ratio:16/9;object-fit:cover;border-radius:2px;width:100%;display:block}.print-grid figcaption{flex-direction:column;gap:1px;margin-top:3px;font-size:9px;display:flex}@media print{body{background:#fff}.side,.topbar,.tabs,details.note,.board-bar,.shell .plan td.actions,.shell .plan th:last-child{display:none!important}.shell{height:auto;display:block}.content{padding:0;overflow:visible}}.reel{gap:var(--space-2);flex-direction:column;display:flex}.reel video{aspect-ratio:16/9;background:var(--bg-letterbox);border-radius:var(--radius-frame);width:100%}.reel-bar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.reel-steps{gap:2px;width:100%;height:6px;display:flex}.reel-steps i{background:var(--border-default);cursor:pointer;border-radius:2px}.reel-steps i.on{background:var(--accent-default)}.deck-edit{gap:var(--space-4);flex-direction:column;display:flex}.deck-edit .slide{border-radius:var(--radius-md);background:var(--bg-canvas);min-height:0;color:var(--text-primary);padding:var(--space-8)}.slide-edit{gap:var(--space-2);flex-direction:column;max-width:900px;display:flex}.slide-edit input,.slide-edit textarea{border:1px dashed var(--border-default);border-radius:var(--radius-sm);padding:var(--space-2);color:inherit;background:0 0}.slide-edit .slide-title{font:var(--typography-h2)}.slide-edit .slide-title.big{font:var(--typography-display);letter-spacing:var(--typography-display-tracking)}.slide-edit textarea{font:var(--typography-body);resize:vertical;font-size:16px;line-height:1.6}.slide-edit .btn{align-self:flex-start}.slide.text h2,.slide h2{font:var(--typography-h1);letter-spacing:var(--typography-h1-tracking);margin:0}.slide-body{max-width:900px;font-size:20px;line-height:1.6}.print-deck{background:var(--bg-canvas);color:var(--text-primary)}.print-deck .slide{break-after:page;min-height:182mm;padding:10mm}.print-deck .contact{grid-template-columns:repeat(6,1fr)}
