@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f2ede4;--grid-dot:#d8cfc1;--surface:#fffcf7;--text:#241f1a;--muted:#8a8076;--border:#e6ddd0;--accent:#d27f1d;--on-accent:#2a1806;--shadow:0 1px 2px #462d1414, 0 4px 14px #462d1414;--shadow-raised:0 2px 6px #462d141a, 0 12px 30px #462d1429;--shadow-lifted:0 6px 12px #462d141f, 0 22px 44px #462d1438;--font-display:"Bricolage Grotesque Variable", system-ui, -apple-system, sans-serif;--radius:12px;--kind-music:#2fb36d;--kind-video:#e2508f;--kind-image:#8f6ff0;--kind-link:#23a69c;--kind-text:#d9a514;--kind-sync:var(--accent);color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-mode=light]){--bg:#131114;--grid-dot:#2d282e;--surface:#221e23;--text:#f4efe8;--muted:#9d948c;--border:#383139;--accent:#f2a541;--on-accent:#2a1806;--shadow:0 1px 2px #00000073, 0 4px 14px #00000052;--shadow-raised:0 2px 6px #00000073, 0 12px 30px #00000080;--shadow-lifted:0 6px 14px #00000080, 0 24px 48px #0009;--kind-video:#f0679f;--kind-image:#a68bf7;--kind-link:#3cc2b7;--kind-text:#f0c43c}}:root[data-mode=dark]{--bg:#131114;--grid-dot:#2d282e;--surface:#221e23;--text:#f4efe8;--muted:#9d948c;--border:#383139;--accent:#f2a541;--on-accent:#2a1806;--shadow:0 1px 2px #00000073, 0 4px 14px #00000052;--shadow-raised:0 2px 6px #00000073, 0 12px 30px #00000080;--shadow-lifted:0 6px 14px #00000080, 0 24px 48px #0009;--kind-video:#f0679f;--kind-image:#a68bf7;--kind-link:#3cc2b7;--kind-text:#f0c43c}:root[data-palette=pastel]{--bg:#f6f3fb;--grid-dot:#dcd4ea;--surface:#fff;--text:#2b2638;--muted:#8e86a0;--border:#e8e1f2;--accent:#ee9a76;--on-accent:#3a1f12;--shadow:0 1px 2px #5a468c12, 0 4px 14px #5a468c14;--shadow-raised:0 2px 6px #5a468c14, 0 12px 30px #5a468c24;--shadow-lifted:0 6px 12px #5a468c1a, 0 22px 44px #5a468c33;--wire:#b6aec8;--wire-active:#5cc492;--sfx:#6bb9ec;--kind-music:#5cc492;--kind-video:#ef8fb7;--kind-image:#a592ee;--kind-link:#62c7bd;--kind-text:#ecc95c;--radius:16px}@media (prefers-color-scheme:dark){:root:not([data-mode=light])[data-palette=pastel]{--bg:#1b1926;--grid-dot:#302c40;--surface:#272436;--text:#f4f0fb;--muted:#a59eba;--border:#3b3651;--accent:#ffb598;--on-accent:#3a1f12;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#6f6886;--wire-active:#8be0b4;--sfx:#8fd0f7;--kind-music:#8be0b4;--kind-video:#f7a9c9;--kind-image:#bfaff7;--kind-link:#8ee0d6;--kind-text:#f6dc8a}}:root[data-mode=dark][data-palette=pastel]{--bg:#1b1926;--grid-dot:#302c40;--surface:#272436;--text:#f4f0fb;--muted:#a59eba;--border:#3b3651;--accent:#ffb598;--on-accent:#3a1f12;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#6f6886;--wire-active:#8be0b4;--sfx:#8fd0f7;--kind-music:#8be0b4;--kind-video:#f7a9c9;--kind-image:#bfaff7;--kind-link:#8ee0d6;--kind-text:#f6dc8a}:root[data-palette=sauge]{--bg:#eef2ea;--grid-dot:#d2dbc9;--surface:#fbfcf8;--text:#1f2a22;--muted:#7b887d;--border:#dbe3d4;--accent:#c47c56;--on-accent:#2a160b;--shadow:0 1px 2px #3c503c12, 0 4px 14px #3c503c14;--shadow-raised:0 2px 6px #3c503c14, 0 12px 30px #3c503c24;--shadow-lifted:0 6px 12px #3c503c1a, 0 22px 44px #3c503c33;--wire:#a9b5aa;--wire-active:#55a675;--sfx:#5a9bcd;--kind-music:#55a675;--kind-video:#d27a8f;--kind-image:#8b84c8;--kind-link:#46a0a0;--kind-text:#cfa63e;--radius:14px}@media (prefers-color-scheme:dark){:root:not([data-mode=light])[data-palette=sauge]{--bg:#151b17;--grid-dot:#25302a;--surface:#1e2621;--text:#edf2ea;--muted:#93a196;--border:#2e3a33;--accent:#e09a72;--on-accent:#2a160b;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#56645b;--wire-active:#7fcc9c;--sfx:#82bce8;--kind-music:#7fcc9c;--kind-video:#eb9aac;--kind-image:#ada7e6;--kind-link:#73c6c4;--kind-text:#e7c66a}}:root[data-mode=dark][data-palette=sauge]{--bg:#151b17;--grid-dot:#25302a;--surface:#1e2621;--text:#edf2ea;--muted:#93a196;--border:#2e3a33;--accent:#e09a72;--on-accent:#2a160b;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#56645b;--wire-active:#7fcc9c;--sfx:#82bce8;--kind-music:#7fcc9c;--kind-video:#eb9aac;--kind-image:#ada7e6;--kind-link:#73c6c4;--kind-text:#e7c66a}:root[data-palette=ocean]{--bg:#ecf3f6;--grid-dot:#cddce4;--surface:#fbfdfe;--text:#1a2a33;--muted:#788b96;--border:#d9e5eb;--accent:#e9826a;--on-accent:#2b1109;--shadow:0 1px 2px #28506e12, 0 4px 14px #28506e14;--shadow-raised:0 2px 6px #28506e14, 0 12px 30px #28506e24;--shadow-lifted:0 6px 12px #28506e1a, 0 22px 44px #28506e33;--wire:#a3b7c2;--wire-active:#3aab8a;--sfx:#4aa0de;--kind-music:#3aab8a;--kind-video:#e3739a;--kind-image:#8987dc;--kind-link:#2a9fa6;--kind-text:#dcb447;--radius:14px}@media (prefers-color-scheme:dark){:root:not([data-mode=light])[data-palette=ocean]{--bg:#0f1a20;--grid-dot:#1e2e37;--surface:#16242c;--text:#e9f3f7;--muted:#8ea4b0;--border:#263f4a;--accent:#ff9d82;--on-accent:#2b1109;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#4a6470;--wire-active:#6fd2b1;--sfx:#7cc0f2;--kind-music:#6fd2b1;--kind-video:#f397b8;--kind-image:#adabf2;--kind-link:#62c9cf;--kind-text:#eccb6c}}:root[data-mode=dark][data-palette=ocean]{--bg:#0f1a20;--grid-dot:#1e2e37;--surface:#16242c;--text:#e9f3f7;--muted:#8ea4b0;--border:#263f4a;--accent:#ff9d82;--on-accent:#2b1109;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#4a6470;--wire-active:#6fd2b1;--sfx:#7cc0f2;--kind-music:#6fd2b1;--kind-video:#f397b8;--kind-image:#adabf2;--kind-link:#62c9cf;--kind-text:#eccb6c}:root[data-palette=sable]{--bg:#f5efe6;--grid-dot:#dfd3c1;--surface:#fffaf3;--text:#2d241c;--muted:#8d7f6e;--border:#eadfce;--accent:#c4694a;--on-accent:#2a1209;--shadow:0 1px 2px #64462812, 0 4px 14px #64462814;--shadow-raised:0 2px 6px #64462814, 0 12px 30px #64462824;--shadow-lifted:0 6px 12px #6446281a, 0 22px 44px #64462833;--wire:#c2b4a2;--wire-active:#6aa577;--sfx:#5898c6;--kind-music:#6aa577;--kind-video:#cf7290;--kind-image:#9883c2;--kind-link:#4c9b95;--kind-text:#d4a643;--radius:12px}@media (prefers-color-scheme:dark){:root:not([data-mode=light])[data-palette=sable]{--bg:#1b1714;--grid-dot:#2e2722;--surface:#251f1b;--text:#f3ebe0;--muted:#a8998a;--border:#3a312a;--accent:#e68c6a;--on-accent:#2a1209;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#5e5248;--wire-active:#8dc89a;--sfx:#80b8e0;--kind-music:#8dc89a;--kind-video:#e895ae;--kind-image:#b6a4dc;--kind-link:#71c0ba;--kind-text:#e6c26a}}:root[data-mode=dark][data-palette=sable]{--bg:#1b1714;--grid-dot:#2e2722;--surface:#251f1b;--text:#f3ebe0;--muted:#a8998a;--border:#3a312a;--accent:#e68c6a;--on-accent:#2a1209;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#5e5248;--wire-active:#8dc89a;--sfx:#80b8e0;--kind-music:#8dc89a;--kind-video:#e895ae;--kind-image:#b6a4dc;--kind-link:#71c0ba;--kind-text:#e6c26a}:root[data-palette=nordique]{--bg:#f2f4f7;--grid-dot:#d8dde5;--surface:#fff;--text:#1d232c;--muted:#7b8493;--border:#e2e6ed;--accent:#6670ee;--on-accent:#fff;--shadow:0 1px 2px #28325012, 0 4px 14px #28325014;--shadow-raised:0 2px 6px #28325014, 0 12px 30px #28325024;--shadow-lifted:0 6px 12px #2832501a, 0 22px 44px #28325033;--wire:#b3bac6;--wire-active:#3daf7d;--sfx:#46a3e3;--kind-music:#3daf7d;--kind-video:#e86c98;--kind-image:#9a7bef;--kind-link:#27a39d;--kind-text:#ddae3a;--radius:10px}@media (prefers-color-scheme:dark){:root:not([data-mode=light])[data-palette=nordique]{--bg:#12151b;--grid-dot:#232833;--surface:#1b1f27;--text:#eef1f6;--muted:#8c95a5;--border:#2b313d;--accent:#8f96ff;--on-accent:#12152b;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#4a5262;--wire-active:#6ed2a3;--sfx:#7cc2f2;--kind-music:#6ed2a3;--kind-video:#f390b4;--kind-image:#b9a3f7;--kind-link:#5ccac3;--kind-text:#ebc865}}:root[data-mode=dark][data-palette=nordique]{--bg:#12151b;--grid-dot:#232833;--surface:#1b1f27;--text:#eef1f6;--muted:#8c95a5;--border:#2b313d;--accent:#8f96ff;--on-accent:#12152b;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d;--shadow-raised:0 2px 6px #0006, 0 12px 30px #00000073;--shadow-lifted:0 6px 14px #00000073, 0 24px 48px #0000008c;--wire:#4a5262;--wire-active:#6ed2a3;--sfx:#7cc2f2;--kind-music:#6ed2a3;--kind-video:#f390b4;--kind-image:#b9a3f7;--kind-link:#5ccac3;--kind-text:#ebc865}:root[data-mode=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);margin:0;overflow:hidden}button{font:inherit;color:inherit}.canvas{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;background-color:var(--bg);background-image:radial-gradient(circle, var(--grid-dot) 1px, transparent 1.2px);position:fixed;inset:0;overflow:hidden}.canvas:active{cursor:grabbing}.canvas-world{transform-origin:0 0;position:absolute;top:0;left:0}.canvas-hint{color:var(--muted);text-align:center;pointer-events:none;margin:0;padding:0 16px;position:absolute;top:50%;left:50%;translate:-50% -50%}.item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--stripe,0 0 transparent), var(--stack,0 0 transparent), var(--elevation,var(--shadow));cursor:default;transition:box-shadow .18s;position:absolute}.item[data-stack="1"]{--stack:5px 5px 0 -1px var(--surface), 5px 5px 0 0 var(--border)}.item[data-stack="2"]{--stack:5px 5px 0 -1px var(--surface), 5px 5px 0 0 var(--border), 10px 10px 0 -1px var(--surface), 10px 10px 0 0 var(--border)}.breath-glow{--glow-color:var(--wire-active);z-index:-1;border-radius:inherit;box-shadow:0 0 34px 8px color-mix(in srgb, var(--glow-color) 75%, transparent);opacity:0;pointer-events:none;will-change:opacity, transform;position:absolute;inset:0}.item.is-sfx .breath-glow{--glow-color:var(--sfx)}.item-audio{--kind:var(--kind-music)}.item-video,.item-embed{--kind:var(--kind-video)}.item-image{--kind:var(--kind-image)}.item-sync,.item-board{--kind:var(--kind-sync)}.item-link{--kind:var(--kind-link)}.item-tasks{--kind:var(--kind-text)}.item-audio,.item-video,.item-embed,.item-sync,.item-board,.item-link,.item-tasks{--stripe:inset 0 3px 0 var(--kind)}.item[data-lifted]{--elevation:var(--shadow-lifted);transition-duration:.12s}@media (prefers-reduced-motion:reduce){.item{transition:none}}.tasks-card{padding:12px 14px 10px}.tasks-header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.tasks-title{min-width:0;font-family:var(--font-display);overflow-wrap:anywhere;font-size:15px;font-weight:700}.tasks-count{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;margin-left:auto;font-size:12px}.tasks-count.is-complete{color:var(--stroke-green);font-weight:600}.tasks-progress{background:color-mix(in srgb, currentColor 10%, transparent);border-radius:2px;height:4px;margin:8px 0 6px;overflow:hidden}.tasks-progress span{background:var(--stroke-green);border-radius:2px;height:100%;transition:width .25s;display:block}.tasks-hint{color:var(--muted);margin:6px 0 2px;font-size:13px}.tasks-list{flex-direction:column;gap:2px;margin:4px 0 0;padding:0;list-style:none;display:flex}.task{align-items:flex-start;gap:8px;padding:3px 0;font-size:14px;line-height:1.35;display:flex}.task input[type=checkbox]{width:16px;height:16px;accent-color:var(--stroke-green);cursor:pointer;flex:none;margin:1px 0 0}.task-text{overflow-wrap:anywhere;min-width:0}.task.is-done .task-text,.task.is-done .task-input{color:var(--muted);text-decoration:line-through}.tasks-editing{flex-direction:column;gap:4px;display:flex}.tasks-title-input,.task-input{min-width:0;color:inherit;font:inherit;background:0 0;border:none;border-radius:3px;flex:1;padding:1px 2px}.tasks-title-input{margin-top:4px;font-weight:600}.tasks-title-input:focus,.task-input:focus{background:color-mix(in srgb, currentColor 6%, transparent);outline:none}.tasks-add{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;align-self:flex-start;margin-top:2px;padding:3px 4px;font-size:13px}.tasks-add:hover{color:var(--text)}.item-column{background:color-mix(in srgb, var(--surface) 70%, var(--bg));border-radius:calc(var(--radius) + 4px)}.column-header{align-items:center;gap:8px;padding:0 14px;display:flex}.column-title{min-width:0;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.column-title-input{border:1px solid var(--accent);background:var(--surface);min-width:0;color:var(--text);font:inherit;border-radius:4px;flex:1;padding:2px 4px;font-weight:600}.column-count{background:color-mix(in srgb, currentColor 8%, transparent);color:var(--muted);border-radius:10px;flex:none;margin-left:auto;padding:1px 7px;font-size:12px}.column-body{margin-bottom:12px}.column-hint{border:1.5px dashed var(--border);height:100%;color:var(--muted);border-radius:8px;place-items:center;margin:0 12px;font-size:13px;display:grid}.item-column.is-drop-target{outline:2px dashed var(--accent);outline-offset:2px}.column-placeholder{z-index:999999;border:2px dashed color-mix(in srgb, var(--accent) 60%, transparent);background:color-mix(in srgb, var(--accent) 8%, transparent);pointer-events:none;border-radius:8px;position:absolute}.item.is-selected{outline:2px solid var(--accent);outline-offset:2px;--elevation:var(--shadow-raised)}.item.is-selected[data-lifted]{--elevation:var(--shadow-lifted)}.item-body{border-radius:inherit;height:100%}.item-handle{z-index:1;touch-action:none;position:absolute}.item-handle:after{content:"";border:2px solid var(--surface);background:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 40%, transparent);position:absolute;top:50%;left:50%;translate:-50% -50%}.item-handle-n,.item-handle-s{cursor:ns-resize;height:16px;left:16px;right:16px}.item-handle-n{top:-8px}.item-handle-s{bottom:-8px}.item-handle-e,.item-handle-w{cursor:ew-resize;width:16px;top:16px;bottom:16px}.item-handle-e{right:-8px}.item-handle-w{left:-8px}.item-handle-n:after,.item-handle-s:after{border-radius:5px;width:28px;height:10px}.item-handle-e:after,.item-handle-w:after{border-radius:5px;width:10px;height:28px}.item-handle-nw,.item-handle-ne,.item-handle-se,.item-handle-sw{z-index:2;width:20px;height:20px}.item-handle-nw:after,.item-handle-ne:after,.item-handle-se:after,.item-handle-sw:after{border-radius:3px;width:12px;height:12px}.item-handle-nw{cursor:nwse-resize;top:-10px;left:-10px}.item-handle-ne{cursor:nesw-resize;top:-10px;right:-10px}.item-handle-se{cursor:nwse-resize;bottom:-10px;right:-10px}.item-handle-sw{cursor:nesw-resize;bottom:-10px;left:-10px}.item.is-sized>.item-body{flex-direction:column;height:100%;display:flex;overflow:hidden}.item.is-sized>.item-body>*{flex-shrink:0}.item.is-sized>.item-body>.note-text,.item.is-sized>.item-body>.note-editing,.item.is-sized>.item-body>.tasks-card,.item.is-sized>.item-body>.tasks-editing,.item.is-sized>.item-body>.link-card,.item.is-sized>.item-body>.board-item{flex:auto;min-height:0;overflow:auto}.item.is-sized>.item-body>.media-image,.item.is-sized>.item-body>.media-video,.item.is-sized>.item-body>.media-placeholder,.item.is-sized>.item-body>.embed-frame{object-fit:contain;flex:1 1 0;height:0;min-height:0;aspect-ratio:auto!important}.item.is-sized>.item-body>.media-image{background:color-mix(in srgb, var(--surface) 60%, var(--bg))}.item.is-sized>.item-body>.audio-player{border-radius:22px;flex:auto;align-items:stretch;min-height:44px}.item.is-sized .audio-player-play,.item.is-sized .audio-player-time{align-self:center}.item.is-sized .audio-player-bar{height:auto}.item.is-sized>.item-body>.sync{flex-direction:column;flex:auto;min-height:0;display:flex}.item.is-sized .sync>*{flex-shrink:0}.item.is-sized .sync>[data-no-drag]:has(>.sync-stage){flex-direction:column;flex:1 1 0;min-height:0;display:flex}.item.is-sized .sync-stage{background:#000;flex:1 1 0;min-height:0}.item.is-sized .sync-video{object-fit:contain;width:100%;height:100%;aspect-ratio:auto!important}.note-text{width:100%;min-height:48px;color:inherit;font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border:0;margin:0;padding:12px 14px;font-size:15px;line-height:1.45;display:block}textarea.note-text{resize:none;-webkit-user-select:text;user-select:text;outline:none;overflow:hidden}.note-text.is-empty{color:var(--muted);font-style:italic}.item-image>.item-body{overflow:hidden}.media-image,.media-video,.media-placeholder{width:100%;height:auto;display:block}.media-image{-webkit-user-drag:none}.media-video{border-radius:0 0 calc(var(--radius) - 1px) calc(var(--radius) - 1px);background:#000}.media-placeholder{background:var(--bg)}.media-caption{cursor:grab;align-items:baseline;gap:8px;padding:8px 12px;font-size:13px;display:flex}.media-kind{color:var(--kind,var(--accent));text-transform:uppercase;letter-spacing:.04em;flex:none;font-size:11px;font-weight:600}.media-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.media-message{color:var(--muted);margin:0;padding:10px 12px;font-size:13px;line-height:1.4}.link-card{cursor:grab;padding:12px 14px}.link-host{color:var(--muted);font-size:12px}.link-title{overflow-wrap:anywhere;margin:2px 0 8px;font-size:15px;font-weight:600}.link-open{color:var(--accent);font-size:13px;text-decoration:none}.link-open:hover{text-decoration:underline}.canvas.is-dropping{outline:3px dashed var(--accent);outline-offset:-8px}.board-header{flex-wrap:wrap;align-items:center;gap:6px;max-width:calc(100% - 32px);display:flex;position:fixed;top:12px;left:16px}.board-back{border:1px solid var(--border);background:var(--surface);cursor:pointer;box-shadow:var(--shadow);border-radius:8px;flex:none;padding:6px 10px;font-size:13px}.board-back:hover{background:var(--bg)}.breadcrumb,.breadcrumb-step{align-items:center;gap:4px;min-width:0;display:flex}.breadcrumb-separator{color:var(--muted);flex:none}.breadcrumb-link{max-width:160px;color:var(--muted);font:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 6px;font-size:14px;overflow:hidden}.breadcrumb-link:hover{background:var(--surface);color:var(--text)}.board-item{align-items:center;gap:12px;padding:14px;display:flex}.board-item-icon{background:color-mix(in srgb, var(--accent) 12%, var(--surface));width:44px;height:44px;color:var(--accent);border-radius:10px;flex:none;place-items:center;display:grid}.board-item-icon svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;width:26px;height:26px}.board-item-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.board-item-title{font-family:var(--font-display);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.board-item-summary{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.board-item-open{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:6px;flex:none;padding:5px 8px;font-size:12px}.board-item-open:hover{background:var(--bg)}.board-title{min-width:0;max-width:420px;color:var(--text);font:inherit;font-family:var(--font-display);letter-spacing:-.01em;text-overflow:ellipsis;background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 8px;font-size:18px;font-weight:700}.board-title:hover{border-color:var(--border)}.board-title:focus{border-color:var(--accent);background:var(--surface);outline:none}.toolbar{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:4px;padding:6px;display:flex;position:fixed;top:64px;left:16px}.tool{--tool-color:var(--accent);width:46px;height:46px;color:var(--tool-color);cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:12px;place-items:center;padding:0;transition:background .15s,transform .15s;display:grid;position:relative}.tool[data-kind=note],.tool[data-kind=tasks]{--tool-color:var(--kind-text)}.tool[data-kind=shape]{--tool-color:var(--kind-image)}.tool[data-kind=column]{--tool-color:var(--muted)}.tool[data-kind=media]{--tool-color:var(--kind-video)}.tool[data-kind=link]{--tool-color:var(--kind-link)}.tool[data-kind=sync],.tool[data-kind=board],.tool[data-kind=arrow]{--tool-color:var(--accent)}.tool svg{background:color-mix(in srgb, var(--tool-color) 16%, transparent);fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round;stroke-linecap:round;border-radius:10px;width:34px;height:34px;padding:5px}.tool:hover{background:color-mix(in srgb, var(--tool-color) 12%, transparent);transform:scale(1.06)}.tool:active{transform:scale(.94)}.tool.is-active svg{background:var(--tool-color);color:var(--on-accent)}.tool span{z-index:5;background:var(--text);color:var(--surface);white-space:nowrap;pointer-events:none;opacity:0;border-radius:8px;padding:5px 10px;font-size:12px;font-weight:600;transition:opacity .12s,translate .12s;position:absolute;top:50%;left:calc(100% + 10px);translate:-4px -50%}.tool:hover span,.tool:focus-visible span{opacity:1;translate:0 -50%}.zoom-controls{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;align-items:center;display:flex;position:fixed;bottom:16px;right:16px;overflow:hidden}.zoom-controls button{cursor:pointer;background:0 0;border:0;min-width:36px;height:36px;padding:0 8px;font-size:18px}.zoom-controls .zoom-value{font-variant-numeric:tabular-nums;min-width:64px;font-size:13px}.zoom-controls button:hover{background:var(--bg)}.dialog-backdrop{z-index:200;background:#00000059;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{background:var(--surface);border:1px solid var(--border);width:min(420px,100%);box-shadow:var(--shadow-raised);border-radius:12px;flex-direction:column;gap:12px;padding:20px;display:flex}.dialog h2{margin:0;font-size:17px}.dialog label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.dialog input{border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;border-radius:6px;padding:8px 10px;font-size:15px}.dialog input:focus{outline:2px solid var(--accent);outline-offset:-1px}.dialog-error{color:#d93025;margin:0;font-size:13px}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.dialog-actions button{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:8px 14px}.dialog-actions .danger{color:#fff;background:#d93025;border-color:#d93025}.dialog-message{color:var(--muted);margin:0;font-size:14px;line-height:1.45}.dialog-actions .primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.board-search{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;box-shadow:var(--shadow);border-radius:8px;flex:none;align-items:center;gap:6px;margin-left:6px;padding:6px 10px;font-size:13px;display:flex}.board-search:hover{background:var(--bg)}.board-search svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:15px;height:15px}.search-backdrop{place-items:start center;padding-top:12vh}.search-dialog{width:min(600px,100%);max-height:72vh;padding:12px}.dialog .search-input{padding:10px 12px;font-size:17px}.search-results{min-height:0;overflow-y:auto}.search-empty{color:var(--muted);margin:8px 4px}.search-group h3{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;margin:10px 4px 4px;font-size:12px;font-weight:600}.search-here{text-transform:none;font-weight:400}.search-group ul{margin:0;padding:0;list-style:none}.search-result{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:baseline;gap:10px;padding:8px 10px;font-size:14px;display:flex}.search-result.is-active{background:color-mix(in srgb, var(--accent) 12%, var(--surface))}.search-kind{width:108px;color:var(--muted);flex:none;font-size:12px}.search-text{overflow-wrap:anywhere;min-width:0}.search-text mark{color:inherit;background:#ffd43b8c;border-radius:3px}@media (width<=520px){.search-result{flex-direction:column;gap:2px}}.item.is-revealed{animation:.8s ease-in-out 3 reveal-pulse}@keyframes reveal-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 0%, transparent), var(--shadow)}50%{box-shadow:0 0 0 10px color-mix(in srgb, var(--accent) 35%, transparent), var(--shadow)}}.toast{background:var(--text);max-width:calc(100% - 32px);color:var(--bg);box-shadow:var(--shadow-raised);border-radius:8px;padding:10px 14px;font-size:14px;position:fixed;bottom:72px;left:50%;translate:-50%}.sync-video{cursor:pointer;background:#000;width:100%;height:auto;display:block}.sync-empty{border:2px dashed var(--border);color:var(--muted);border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin:0 12px;font-size:14px;display:flex}.sync-empty p{margin:0}.sync button{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px}.sync button:disabled{opacity:.4;cursor:default}.sync-empty button{padding:6px 12px}.sync-transport{align-items:center;gap:6px;padding:10px 12px 4px;display:flex}.sync-transport button{min-width:32px;height:32px;padding:0 8px;font-size:16px}.sync-transport .sync-play{border-color:var(--accent);background:var(--accent);min-width:40px;color:var(--on-accent);font-size:14px}.sync-timecode{font-variant-numeric:tabular-nums;margin-left:6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:15px}.sync-duration{color:var(--muted);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.sync-seek{padding:0 12px;position:relative}.sync-seek input{width:100%;accent-color:var(--accent)}.sync-marker{pointer-events:none;background:#e8a33d;border-radius:1px;width:2px;height:8px;margin-left:12px;position:absolute;top:-2px;translate:-1px}.sync-transport .sync-add-marker{white-space:nowrap;margin-left:auto;font-size:12px}.sync-transport .sync-add-marker+.sync-focus{margin-left:0}.sync-marker-tick{border:2px solid var(--surface);cursor:pointer;background:#e8a33d;border-radius:50%;width:10px;min-width:0;height:10px;margin-left:12px;padding:0;position:absolute;top:-7px;translate:-5px}.sync-marker-tick:hover{scale:1.3}.sync-markers{flex-wrap:wrap;gap:4px;margin:4px 0 0;padding:0 12px;list-style:none;display:flex}.sync-marker-chip{border:1px solid var(--border);background:var(--surface);border-radius:6px;align-items:center;max-width:100%;display:flex;overflow:hidden}.sync-marker-chip.is-current{border-color:#e8a33d}.sync-marker-go{min-width:0;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:6px;padding:3px 4px 3px 8px;font-size:12px;display:flex}.sync-marker-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sync-marker-tc{color:var(--muted);flex:none;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px}.sync-marker-chip input{border:1px solid var(--accent);background:var(--bg);width:120px;color:var(--text);font:inherit;border-radius:4px;margin:2px;padding:1px 4px;font-size:12px}.sync-marker-delete{color:var(--muted);cursor:pointer;background:0 0;border:none;flex:none;padding:2px 6px;font-size:14px}.sync-marker-delete:hover{color:var(--text)}.sync-versions.is-video{padding-bottom:0}.sync-versions-label{color:var(--muted);flex:none;font-size:12px}.wire.is-video .wire-line{stroke-dasharray:6 4}.wire.is-video.is-active .wire-line{stroke-dasharray:none;stroke:var(--kind-video)}.port-in.is-video{background:var(--kind-video);top:77px}.sync-versions.is-video .sync-version.is-active{border-color:var(--kind-video);background:var(--kind-video);color:#fff}.sync-versions.is-video .sync-versions-label{color:var(--kind-video);font-weight:600}.sync-versions{align-items:center;gap:6px;padding:6px 12px;display:flex}.sync-version{width:32px;height:32px;font-weight:600}.sync-version.is-active{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.sync-version-name{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.sync-add{flex:none;height:32px;padding:0 10px;font-size:13px}.sync-volumes{gap:16px;padding:4px 12px 12px;display:flex}.sync-volumes label{min-width:0;color:var(--muted);flex:1;align-items:center;gap:8px;font-size:12px;display:flex}.sync-volumes input{min-width:0;accent-color:var(--accent);flex:1}.offscreen-probe{opacity:0;pointer-events:none;width:2px;height:2px;position:fixed;top:-10px;left:-10px}.inspector{background:var(--surface);border:1px solid var(--border);width:min(320px,100% - 32px);box-shadow:var(--shadow-raised);border-radius:12px;font-size:14px;position:fixed;top:16px;bottom:68px;right:16px;overflow-y:auto}.inspector-header{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex;position:sticky;top:0}.inspector-header h2{margin:0;font-size:15px}.inspector-close{cursor:pointer;background:0 0;border:0;border-radius:6px;width:28px;height:28px;font-size:20px;line-height:1}.inspector-close:hover{background:var(--bg)}.inspector-section{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.inspector-section h3{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:12px;font-weight:600}.inspector-hint{color:var(--muted);margin:-4px 0 0;font-size:12px;line-height:1.4}.inspector-file{justify-content:space-between;gap:8px;margin:0;font-size:13px;display:flex}.inspector-file span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.inspector-file span:last-child{color:var(--muted);flex:none}.inspector button{font-size:13px}.inspector-button,.track-nudge button,.track-remove{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:7px 10px}.inspector-button:hover,.track-nudge button:hover{background:var(--bg)}.field{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.field input,.field select,.track-title{border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;border-radius:6px;padding:7px 9px;font-size:14px}.timecode-input{font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,Menlo,monospace!important}.timecode-input.is-invalid{border-color:#d93025!important}.field-error{color:#d93025}.toggle{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.toggle input{width:16px;height:16px;accent-color:var(--accent)}.track-settings{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:10px;padding:12px;display:flex}.track-settings.is-active{border-color:var(--accent)}.track-header{gap:8px;display:flex}.track-label{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;flex:none;width:34px;font-weight:600}.track-settings.is-active .track-label{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.track-title{flex:1;min-width:0}.track-nudge{gap:6px;display:flex}.track-nudge button{flex:1;padding:6px 4px}.track-file{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;overflow:hidden}.track-remove{color:#d93025;border-color:#0000;align-self:flex-start;padding-left:0}:root{--wire:#8a8780;--wire-active:#2fb36d;--sfx:#2fa8e8}.item.is-highlighted{outline:2px solid var(--wire-active);outline-offset:1px}.item.is-highlighted.is-selected{outline-color:var(--wire-active);--elevation:0 0 0 5px color-mix(in srgb, var(--wire-active) 20%, transparent), var(--shadow-raised)}.item.is-highlighted .media-kind{color:var(--wire-active)}.port{z-index:3;border:2px solid var(--surface);background:var(--wire);width:14px;height:14px;box-shadow:0 0 0 1px var(--border);border-radius:50%;position:absolute;top:17px}.port-out{cursor:crosshair;right:0;translate:50% -50%}.port-out.is-left{left:0;right:auto;translate:-50% -50%}.port-out:hover{background:var(--accent);scale:1.25}.port-in{background:var(--wire-active);left:0;translate:-50% -50%}.item.is-highlighted .port{background:var(--wire-active)}.canvas.is-wiring .port-in{scale:1.4}.canvas.is-wiring .item-sync{outline:2px dashed var(--accent);outline-offset:3px}.wires{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.wire-line,.wire-pending{fill:none;stroke:var(--wire);stroke-width:2px;stroke-linecap:round}.wire-hit{fill:none;stroke:#0000;stroke-width:16px;pointer-events:stroke;cursor:pointer}.wire.is-active .wire-line{stroke:var(--wire-active);stroke-width:3px}.wire.is-selected .wire-line{stroke-width:4px;filter:drop-shadow(0 0 4px var(--accent))}.wire-pending{stroke:var(--accent);stroke-dasharray:6 5}.linked-row{border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:6px;display:flex}.linked-row.is-active{border-color:var(--wire-active)}.linked-row.is-active .track-label{border-color:var(--wire-active);background:var(--wire-active);color:#fff}.linked-row .track-label{height:30px}.linked-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.linked-settings{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:5px 9px}.linked-list{flex-direction:column;gap:6px;display:flex}.field-label{color:var(--muted);font-size:12px}.connection-route{flex-wrap:wrap;gap:6px;margin:0;font-weight:600;display:flex}.connection-route span:nth-child(2){color:var(--wire-active)}.sync-version.is-active{border-color:var(--wire-active);background:var(--wire-active)}.wire-flow{fill:none;stroke:#b8f5d0;stroke-width:3px;stroke-linecap:round;stroke-dasharray:2 16;pointer-events:none;animation:.6s linear infinite wire-flow}.wire.is-flowing .wire-line{filter:drop-shadow(0 0 3px #2fb36dcc)}@keyframes wire-flow{to{stroke-dashoffset:-18px}}@media (prefers-reduced-motion:reduce){.wire-flow{stroke-dasharray:none;opacity:.4;animation:none}}.home{background:var(--bg);padding:32px 16px 48px;position:fixed;inset:0;overflow-y:auto}.home-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;max-width:1080px;margin:0 auto 28px;display:flex}.home-brand{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px;font-size:13px;font-weight:600}.home-header h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:34px;font-weight:800}.home-create{background:var(--accent);color:var(--on-accent);cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-weight:600}.home-create:hover{filter:brightness(1.08)}.home-notice{border:1px solid var(--border);background:var(--surface);max-width:1080px;color:var(--muted);border-radius:8px;margin:0 auto 20px;padding:10px 14px}.home-empty{color:var(--muted);flex-direction:column;align-items:center;gap:14px;padding:80px 16px;display:flex}.home-empty p{margin:0}.board-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;max-width:1080px;margin:0 auto;padding:0;list-style:none;display:grid}.board-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.board-card:hover{box-shadow:var(--shadow-raised)}.board-card-open{border:0;border-top:4px solid var(--accent);text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:6px;min-height:120px;padding:16px;display:flex}.board-thumb{background-color:var(--bg);background-image:radial-gradient(circle, var(--grid-dot) 1px, transparent 1.2px);border-bottom:1px solid var(--border);background-size:14px 14px;width:calc(100% + 32px);height:120px;margin:-16px -16px 6px;padding:10px;display:block}.board-thumb.is-empty{color:var(--muted);place-items:center;font-size:12px;display:grid}.board-thumb-item{stroke:var(--border);stroke-width:1px}.board-thumb-wire{fill:none;stroke:var(--wire-active);stroke-width:1.5px;opacity:.7}.board-card:hover .board-thumb{background-color:color-mix(in srgb, var(--accent) 6%, var(--bg))}.board-card-title{font-family:var(--font-display);letter-spacing:-.01em;overflow-wrap:anywhere;font-size:19px;font-weight:700}.board-card-summary{color:var(--muted);font-size:13px;line-height:1.4}.board-card-date{color:var(--muted);margin-top:auto;font-size:12px}.board-card-rename{border:1px solid var(--accent);background:var(--bg);color:var(--text);font:inherit;border-radius:6px;outline:none;margin:16px 16px 0;padding:8px 10px;font-size:16px;font-weight:600}.board-card-rename+.board-card-actions{margin-top:auto}.board-card-actions{border-top:1px solid var(--border);display:flex}.board-card-actions button{color:var(--muted);cursor:pointer;background:0 0;border:0;flex:1;padding:9px 4px;font-size:12px}.board-card-actions button+button{border-left:1px solid var(--border)}.board-card-actions button:hover{background:var(--bg);color:var(--text)}.board-card-actions .danger-text:hover{color:#d93025}.home-actions{flex-wrap:wrap;gap:8px;display:flex}.home-secondary{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;padding:10px 14px;font-weight:600}.home-secondary:hover:not(:disabled){background:var(--bg)}.home-secondary:disabled{opacity:.5;cursor:default}.home-backup{color:var(--muted);margin:6px 0 0;font-size:13px}.home-backup.is-warning{color:#c77800}.restore-list{border:1px solid var(--border);border-radius:8px;max-height:160px;margin:0;padding:8px 12px 8px 28px;font-size:14px;overflow-y:auto}.restore-progress progress{width:100%;accent-color:var(--accent)}.dialog-actions button:disabled{opacity:.5;cursor:default}:root{--fill-yellow:#fff3bf;--fill-orange:#ffe1c4;--fill-red:#ffd6d6;--fill-pink:#fbd9ec;--fill-purple:#e6dcfb;--fill-blue:#d6e6ff;--fill-teal:#cdf0ec;--fill-green:#d7f2d3;--fill-gray:#e7e5e0;--stroke-yellow:#e0b400;--stroke-orange:#e8822a;--stroke-red:#e04848;--stroke-pink:#d9529b;--stroke-purple:#8a63d2;--stroke-blue:#3a78e0;--stroke-teal:#1aa597;--stroke-green:#3fa34d;--stroke-gray:#8a8780}@media (prefers-color-scheme:dark){:root:not([data-mode=light]){--fill-yellow:#4a3f14;--fill-orange:#4d3016;--fill-red:#4d2222;--fill-pink:#4a2239;--fill-purple:#352a50;--fill-blue:#1f3250;--fill-teal:#183f3b;--fill-green:#1f3d22;--fill-gray:#3a3a3d;--stroke-yellow:#f2cc3b;--stroke-orange:#f29b4f;--stroke-red:#f06a6a;--stroke-pink:#ec78b6;--stroke-purple:#a688e8;--stroke-blue:#6c9cf2;--stroke-teal:#45c4b6;--stroke-green:#6cc576;--stroke-gray:#a09d96}}:root[data-mode=dark]{--fill-yellow:#4a3f14;--fill-orange:#4d3016;--fill-red:#4d2222;--fill-pink:#4a2239;--fill-purple:#352a50;--fill-blue:#1f3250;--fill-teal:#183f3b;--fill-green:#1f3d22;--fill-gray:#3a3a3d;--stroke-yellow:#f2cc3b;--stroke-orange:#f29b4f;--stroke-red:#f06a6a;--stroke-pink:#ec78b6;--stroke-purple:#a688e8;--stroke-blue:#6c9cf2;--stroke-teal:#45c4b6;--stroke-green:#6cc576;--stroke-gray:#a09d96}.floating-bar{z-index:40;background:var(--surface);max-width:calc(100vw - 16px);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-raised);white-space:nowrap;cursor:default;border-radius:10px;flex-wrap:wrap;align-items:center;gap:2px;padding:4px;display:flex;position:fixed}.floating-grip{width:18px;height:30px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:6px;padding:0;font-size:14px;line-height:1}.floating-grip:hover{background:var(--bg);color:var(--text)}.floating-grip:active{cursor:grabbing}.floating-bar.opens-down .color-popover,.floating-bar.opens-down .toolbar-menu{top:calc(100% + 8px);bottom:auto}.floating-anchor{display:none}.toolbar-button{min-width:30px;height:30px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:0 8px;font-size:13px;display:inline-flex}.toolbar-button:hover{background:var(--bg)}.toolbar-button.is-active{background:var(--accent);color:var(--on-accent)}.toolbar-button.is-bold{font-weight:700}.toolbar-button.is-italic{font-style:italic}.toolbar-button.is-underline{text-decoration:underline}.toolbar-button.is-strike{text-decoration:line-through}.toolbar-separator{background:var(--border);width:1px;height:20px;margin:0 4px}.toolbar-input{border:1px solid var(--accent);background:var(--bg);width:200px;height:30px;color:var(--text);font:inherit;border-radius:6px;outline:none;padding:0 8px;font-size:13px}.color-picker{position:relative}.swatch{border:1px solid var(--border);border-radius:50%;width:16px;height:16px;display:inline-block}.swatch-stroke{border:3px solid var(--border);background:0 0}.swatch.is-none{background:linear-gradient(135deg,#0000 45%,#d93025 45% 55%,#0000 55%)}.color-popover{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-raised);border-radius:10px;grid-template-columns:repeat(5,30px);gap:4px;padding:8px;display:grid;position:absolute;bottom:calc(100% + 8px);left:0}.swatch-button{cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:30px;height:30px;padding:0;display:grid}.swatch-button:hover{background:var(--bg)}.swatch-button.is-current{box-shadow:inset 0 0 0 2px var(--accent)}.swatch-button .swatch{width:20px;height:20px}.swatch-custom{color:var(--muted);cursor:pointer;grid-column:1/-1;align-items:center;gap:8px;padding:2px 4px;font-size:12px;display:flex}.swatch-custom input{cursor:pointer;background:0 0;border:0;width:28px;height:22px;padding:0}.note-text.rich,.note-text.rich .ProseMirror{white-space:break-spaces}.note-text.rich>:first-child,.note-text.rich>.ProseMirror>:first-child{margin-top:0}.note-text.rich>:last-child,.note-text.rich>.ProseMirror>:last-child{margin-bottom:0}.note-text.rich p{margin:0 0 6px}.note-text.rich h1,.note-text.rich h2,.note-text.rich h3{margin:10px 0 6px;line-height:1.25}.note-text.rich h1{font-size:22px}.note-text.rich h2{font-size:18px}.note-text.rich h3{text-transform:uppercase;letter-spacing:.03em;font-size:15px}.note-text.rich ul,.note-text.rich ol{margin:0 0 6px;padding-left:22px}.note-text.rich li p{margin:0}.note-text.rich blockquote{opacity:.8;border-left:3px solid;margin:0 0 6px;padding-left:10px}.note-text.rich a{color:var(--accent)}.note-text.rich ul[data-type=taskList]{padding-left:2px;list-style:none}.note-text.rich ul[data-type=taskList]>li{align-items:flex-start;gap:8px;display:flex}.note-text.rich ul[data-type=taskList]>li>label{flex:none;margin-top:2px}.note-text.rich ul[data-type=taskList]>li input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.note-text.rich ul[data-type=taskList]>li>div{flex:1;min-width:0}.note-text.rich ul[data-type=taskList]>li[data-checked=true]>div{opacity:.55;text-decoration:line-through}.note-editing .ProseMirror{-webkit-user-select:text;user-select:text;cursor:text;outline:none;min-height:24px}.note-editing .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--muted);pointer-events:none}:root{--ink-gray:#77746d;--ink-red:#c62f2f;--ink-orange:#c2610f;--ink-yellow:#9a7400;--ink-green:#2f8a3c;--ink-teal:#12857a;--ink-blue:#2a62c9;--ink-purple:#7446c4;--ink-pink:#bf3c84}@media (prefers-color-scheme:dark){:root:not([data-mode=light]){--ink-gray:#a8a59e;--ink-red:#ff8a8a;--ink-orange:#ffad66;--ink-yellow:#f5d04f;--ink-green:#7fd88a;--ink-teal:#5fd6c8;--ink-blue:#8fb5ff;--ink-purple:#c2a6ff;--ink-pink:#ff92cf}}:root[data-mode=dark]{--ink-gray:#a8a59e;--ink-red:#ff8a8a;--ink-orange:#ffad66;--ink-yellow:#f5d04f;--ink-green:#7fd88a;--ink-teal:#5fd6c8;--ink-blue:#8fb5ff;--ink-purple:#c2a6ff;--ink-pink:#ff92cf}.note-text.rich mark{color:inherit;border-radius:3px;padding:0 2px}.toolbar-menu{z-index:1;background:var(--surface);border:1px solid var(--border);min-width:150px;box-shadow:var(--shadow-raised);border-radius:10px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 8px);left:0}.menu-item{color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:flex-start;align-items:center;padding:6px 10px;font-size:14px;display:flex}.menu-item:hover{background:var(--bg)}.menu-item.is-current{box-shadow:inset 0 0 0 2px var(--accent)}.menu-item.style-h1{font-size:20px;font-weight:700}.menu-item.style-h2{font-size:17px;font-weight:700}.menu-item.style-h3{letter-spacing:.03em;text-transform:uppercase;font-size:13px;font-weight:700}.menu-swatches,.menu-emojis{grid-template-columns:repeat(5,34px);gap:2px;display:grid}.menu-emojis{grid-template-columns:repeat(10,32px)}.menu-swatches .menu-item,.menu-emojis .menu-item{justify-content:center;height:32px;padding:0;font-size:18px}.swatch-letter{font-size:17px;font-weight:700}.menu-hint{color:var(--muted);margin:6px 4px 0;font-size:11px}.style-trigger{justify-content:space-between;min-width:82px}.text-color-icon{border-bottom:3px solid;padding:0 2px;font-weight:700;line-height:1.1}.highlight-icon{border-radius:4px;padding:0 3px}.item.item-shape{box-shadow:none;background:0 0;border:0}.item.item-shape.is-selected{outline-offset:4px;box-shadow:none;outline-style:dashed}.shape,.shape-bg{position:absolute;inset:0}.shape-bg{border:2px solid;border-radius:3px}.shape-rounded .shape-bg{border-radius:18px}.shape-ellipse .shape-bg{border-radius:50%}svg.shape-bg{border:0;width:100%;height:100%;overflow:visible}.shape-content{text-align:center;justify-content:center;align-items:center;padding:6px 12px;display:flex;position:absolute;inset:0}.shape-ellipse .shape-content{padding:8% 14%}.shape-diamond .shape-content{padding:14% 22%}.shape-content>.note-text,.shape-content>.note-editing{width:100%}.shape .note-text{min-height:0;padding:2px}.shape .note-text.is-empty{display:none}.shape-icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;width:18px;height:18px}.snap-guide{z-index:3000000;pointer-events:none;background:#ff4f8b;position:absolute}.snap-guide.is-vertical{height:200000px;top:-100000px}.snap-guide.is-horizontal{width:200000px;left:-100000px}.gap-mark{z-index:3000000;pointer-events:none;background:#ff4f8b;position:absolute}.gap-label{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;background:#ff4f8b;border-radius:4px;padding:1px 5px;font-size:11px;font-weight:600;position:absolute;top:50%;left:50%}.snap-guide.is-center{background:0 0}.snap-guide.is-vertical.is-center{background-image:linear-gradient(#ff4f8b 60%,#0000 60%);background-size:100% 8px}.snap-guide.is-horizontal.is-center{background-image:linear-gradient(90deg,#ff4f8b 60%,#0000 60%);background-size:8px 100%}.snap-center-mark{z-index:3000001;color:#ff4f8b;pointer-events:none;font-size:22px;line-height:1;position:absolute}:root{--arrow:#77746d}@media (prefers-color-scheme:dark){:root:not([data-mode=light]){--arrow:#a8a59e}}:root[data-mode=dark]{--arrow:#a8a59e}.arrows{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.arrow-line{fill:none;stroke-width:2px;stroke-linecap:round}.arrow-line.is-pending,.arrow-head.is-pending{stroke:var(--accent);fill:var(--accent)}.arrow-line.is-pending{fill:none;stroke-dasharray:6 5}.arrow-hit{fill:none;stroke:#0000;stroke-width:16px;pointer-events:stroke;cursor:pointer}.arrow.is-selected .arrow-line{stroke-width:3px;filter:drop-shadow(0 0 3px var(--accent))}.arrow-label,.arrow-label-input{border:1px solid var(--border);background:var(--surface);color:var(--text);white-space:nowrap;box-shadow:var(--shadow);transform-origin:50%;border-radius:999px;padding:3px 9px;font-size:13px;position:absolute}.arrow-label{cursor:pointer}.arrow-label.is-selected{outline:2px solid var(--accent)}.arrow-label-input{min-width:140px;font:inherit;outline:2px solid var(--accent);font-size:13px}.arrow-endpoint{z-index:3000000;border:2px solid var(--surface);background:var(--accent);cursor:grab;border-radius:50%;width:14px;height:14px;position:absolute}.arrow-toolbar-anchor{z-index:3000001;width:0;height:0;position:absolute}.arrow-handle{z-index:3000000;background:var(--accent);width:20px;height:20px;color:var(--on-accent);cursor:crosshair;box-shadow:var(--shadow);opacity:.85;border-radius:50%;place-items:center;font-size:15px;font-weight:700;line-height:1;display:grid;position:absolute}.arrow-handle:hover{opacity:1}.arrow-handle.is-top{margin-top:-16px}.arrow-handle.is-bottom{margin-top:16px}.arrow-handle.is-left{margin-left:-16px}.arrow-handle.is-right{margin-left:16px}.canvas.is-arrow-tool,.canvas.is-arrow-tool *{cursor:crosshair!important}.tool.is-active{background:color-mix(in srgb, var(--tool-color) 22%, transparent)}@media (width<=600px){.toolbar{border-radius:14px;gap:2px;padding:4px;top:auto;bottom:150px}.tool{width:40px;height:40px}.tool svg{width:30px;height:30px}}@media (hover:none){.tool:hover span{opacity:0}.tool:hover{transform:none}}.arrow-point,.arrow-ghost{z-index:3000000;cursor:grab;touch-action:none;border-radius:50%;position:absolute}.arrow-point{border:2px solid var(--accent);background:var(--surface);width:13px;height:13px}.arrow-point:hover{background:var(--accent)}.arrow-ghost{border:1px dashed var(--accent);background:var(--surface);width:16px;height:16px;color:var(--accent);opacity:.75;place-items:center;font-size:12px;font-weight:700;line-height:1;display:grid}.arrow-ghost:hover{opacity:1}.selection-box{z-index:2999999;border:1px dashed var(--accent);pointer-events:none;border-radius:8px;position:absolute}.marquee{z-index:3000000;border:1px solid var(--accent);pointer-events:none;background:#2f6fed14;position:absolute}.toolbar-count{color:var(--muted);padding:0 6px;font-size:12px}.toolbar-button:disabled{opacity:.35;cursor:default}.toolbar-button:disabled:hover{background:0 0}.history-controls{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;display:flex;position:fixed;bottom:16px;right:226px;overflow:hidden}.history-controls button{cursor:pointer;background:0 0;border:0;width:38px;height:36px;font-size:18px}.history-controls button:hover:not(:disabled){background:var(--bg)}.history-controls button:disabled{opacity:.35;cursor:default}.views-bar{z-index:20;background:var(--surface);border:1px solid var(--border);width:240px;max-height:min(70vh,100vh - 140px);box-shadow:var(--shadow-raised);border-radius:14px;flex-direction:column;display:flex;position:fixed}.views-head{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:8px 8px 8px 10px;display:flex}.views-head:active{cursor:grabbing}.views-grip{color:var(--muted);font-size:14px}.views-title{font-family:var(--font-display);flex:1;font-size:14px;font-weight:700}.views-count{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--text);border-radius:999px;margin-left:4px;padding:1px 7px;font-family:system-ui,-apple-system,sans-serif;font-size:11px;font-weight:600}.views-collapse{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:13px}.views-collapse:hover{background:color-mix(in srgb, var(--text) 7%, transparent);color:var(--text)}.views-list{scrollbar-width:thin;flex-direction:column;flex:1;gap:3px;min-height:0;margin:0;padding:0 6px 6px;list-style:none;display:flex;overflow-y:auto}.view-chip{border:1px solid #0000;border-radius:9px;align-items:center;display:flex;position:relative}.view-chip:hover{background:color-mix(in srgb, var(--text) 5%, transparent)}.view-chip.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.view-chip.is-drop-target{border-style:dashed;border-color:var(--accent)}.view-go{min-width:0;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:7px 8px;font-size:13px;display:flex}.view-number{background:var(--bg);min-width:20px;height:20px;color:var(--muted);text-align:center;border-radius:6px;flex:none;font-size:11px;font-weight:700;line-height:20px}.view-chip.is-active .view-number{background:var(--accent);color:var(--on-accent)}.view-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.view-rename{border:1px solid var(--accent);background:var(--bg);min-width:0;color:var(--text);font:inherit;border-radius:6px;outline:none;flex:1;margin:4px;padding:4px 6px;font-size:13px}.view-actions{padding-right:4px;display:none}.view-chip:hover .view-actions,.view-chip:focus-within .view-actions{display:flex}@media (hover:none){.view-actions{display:flex}}.view-actions button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;font-size:13px}.view-actions button:hover{background:var(--bg);color:var(--text)}.views-empty{color:var(--muted);margin:0 12px 8px;font-size:12px;line-height:1.4}.views-foot{border-top:1px solid var(--border);flex-wrap:wrap;gap:6px;padding:8px;display:flex}.views-add,.views-present{border:1px solid var(--border);height:32px;color:var(--text);white-space:nowrap;cursor:pointer;background:0 0;border-radius:8px;flex:1;padding:0 10px;font-size:13px}.views-present{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:600}.views-present:disabled{opacity:.4;cursor:default}.app.is-presenting .toolbar,.app.is-presenting .board-header,.app.is-presenting .history-controls,.app.is-presenting .zoom-controls,.app.is-presenting .views-bar,.app.is-presenting .inspector,.app.is-presenting .toast{display:none}body:has(.app.is-presenting) .floating-bar{display:none}.presentation-bar{color:#fff;box-shadow:var(--shadow-raised);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:.35;background:#141416c7;border-radius:999px;align-items:center;gap:6px;padding:6px;transition:opacity .2s;display:flex;position:fixed;bottom:20px;left:50%;translate:-50%}.presentation-bar:hover{opacity:1}.presentation-bar button{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:999px;min-width:34px;height:34px;padding:0 10px;font-size:18px}.presentation-bar button:disabled{opacity:.35;cursor:default}.presentation-bar .presentation-exit{font-size:13px}.presentation-title{font-variant-numeric:tabular-nums;padding:0 8px;font-size:13px}.app.is-presenting .arrow-handle,.app.is-presenting .item-handle,.app.is-presenting .selection-box,.app.is-presenting .arrow-endpoint,.app.is-presenting .arrow-point,.app.is-presenting .arrow-ghost{display:none}.app.is-presenting .item.is-selected{outline:none}@media (width<=900px){.toast{bottom:120px}}.item-embed>.item-body{overflow:hidden}.embed-frame{aspect-ratio:16/9;background:#000;position:relative}.embed-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.embed-open{color:var(--accent);margin-left:auto;text-decoration:none}.media-caption-text{color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:8px 12px 10px;font-size:13px;line-height:1.4}.media-caption-input{border:1px solid var(--accent);background:var(--bg);width:calc(100% - 16px);color:var(--text);font:inherit;resize:vertical;border-radius:6px;outline:none;margin:6px 8px 8px;padding:6px 8px;font-size:13px;line-height:1.4;display:block}.sync-focus{margin-left:auto}.sync .sync-expand{z-index:2;color:#fff;letter-spacing:.01em;cursor:pointer;touch-action:manipulation;-webkit-backdrop-filter:blur(6px);background:#0009;border:2px solid #ffffffd9;border-radius:999px;align-items:center;gap:8px;height:44px;padding:0 16px 0 12px;font-size:15px;font-weight:700;transition:transform .15s,background .15s;display:flex;position:absolute;top:10px;right:10px;box-shadow:0 4px 16px #00000059}.sync .sync-expand:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent);transform:scale(1.06)}.sync .sync-expand svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.focus-view{z-index:100;background:#000;place-items:center;animation:.35s ease-out focus-in;display:grid;position:fixed;inset:0}@keyframes focus-in{0%{opacity:0}}.focus-video,.focus-image{max-width:100vw;max-height:100vh;display:block}.focus-video{cursor:pointer}.focus-image{object-fit:contain;width:100vw;height:100vh}.focus-embed{aspect-ratio:16/9;border:0;width:min(100vw,177.778vh)}.focus-message{color:#aaa}.focus-close{z-index:1;color:#fff;cursor:pointer;touch-action:manipulation;opacity:.9;background:#0009;border:2px solid #ffffffd9;border-radius:999px;height:44px;padding:0 18px;font-size:15px;font-weight:700;transition:opacity .2s,background .15s;position:fixed;top:16px;right:16px;box-shadow:0 4px 16px #00000059}.focus-close:hover,.focus-close:focus-visible{opacity:1;background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.embed-suspended{color:#999;place-items:center;margin:0;font-size:13px;display:grid;position:absolute;inset:0}.client-header{pointer-events:none;align-items:baseline;gap:10px;max-width:calc(100% - 40px);display:flex;position:fixed;top:14px;left:20px}.client-mode{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--text);box-shadow:var(--shadow);cursor:pointer;pointer-events:auto;touch-action:manipulation;border-radius:50%;flex:none;align-self:center;place-items:center;font-size:16px;display:grid}.client-mode:hover{border-color:var(--accent)}.client-brand{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:600}.client-header h1{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:20px;font-weight:700;overflow:hidden}.preview-banner{z-index:60;background:color-mix(in srgb, #e8a33d 18%, var(--surface));max-width:calc(100% - 32px);box-shadow:var(--shadow);border:1px solid #e8a33d99;border-radius:999px;align-items:center;gap:10px;padding:6px 6px 6px 14px;font-size:13px;display:flex;position:fixed;top:12px;left:50%;translate:-50%}.preview-banner button{background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border:none;border-radius:999px;flex:none;padding:5px 12px}@media (width<=760px){.client-header{top:60px}.preview-banner span{display:none}}.client-hint,.client-missing{background:var(--surface);box-shadow:var(--shadow);color:var(--muted);white-space:nowrap;border-radius:999px;margin:0;padding:8px 14px;font-size:13px;position:fixed;bottom:20px;left:50%;translate:-50%}.client-missing{top:50%;bottom:auto}.feedback-panel{z-index:50;border:1px solid var(--border);background:var(--surface);width:min(340px,100% - 32px);box-shadow:var(--shadow-raised);border-radius:12px;flex-direction:column;font-size:14px;display:flex;position:fixed;top:64px;bottom:68px;right:16px;overflow:hidden}.feedback-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:8px;padding:14px 14px 10px;display:flex}.feedback-header>div{flex-direction:column;gap:2px;min-width:0;display:flex}.feedback-kind{color:var(--muted);font-size:12px}.feedback-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.feedback-approval{gap:8px;padding:12px 14px 4px;display:flex}.approve{border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;cursor:pointer;border-radius:8px;flex:1;padding:8px 10px;font-weight:600}.approve.is-approved.is-on{border-color:var(--stroke-green);background:var(--stroke-green);color:#fff}.approve.is-changes.is-on{color:#fff;background:#e8822a;border-color:#e8822a}.feedback-approvals{color:var(--muted);margin:4px 0 0;padding:0 14px;font-size:12px;list-style:none}.feedback-approvals .is-approved:before{content:"✓ ";color:var(--stroke-green)}.feedback-approvals .is-changes:before{content:"↺ ";color:#e8822a}.feedback-comments{flex-direction:column;flex:1;gap:10px;min-height:0;margin:0;padding:12px 14px;list-style:none;display:flex;overflow-y:auto}.feedback-empty{color:var(--muted);font-size:13px}.feedback-comment{background:var(--bg);border-radius:8px;padding:8px 10px}.feedback-comment.is-resolved{opacity:.6}.feedback-comment p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0}.feedback-meta{color:var(--muted);align-items:baseline;gap:8px;font-size:12px;display:flex}.feedback-meta strong{color:var(--text)}.feedback-resolved{color:var(--stroke-green);margin-left:auto}.feedback-timecode{color:#e8a33d;cursor:pointer;background:0 0;border:1px solid #e8a33d;border-radius:999px;margin-top:4px;padding:2px 8px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.feedback-form{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:12px 14px 14px;display:flex}.feedback-author{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.feedback-form input:not([type=checkbox]),.feedback-form textarea{border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;resize:vertical;border-radius:8px;padding:8px 10px}.feedback-form input:focus,.feedback-form textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.feedback-actions{align-items:center;gap:8px;display:flex}.feedback-at{color:var(--muted);align-items:center;gap:6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;display:flex}.feedback-actions .primary{background:var(--accent);color:var(--on-accent);font:inherit;cursor:pointer;border:none;border-radius:8px;margin-left:auto;padding:7px 14px;font-weight:600}.feedback-actions .primary:disabled{opacity:.5;cursor:default}.feedback-badges{pointer-events:none;gap:4px;display:flex;position:absolute;top:-10px;right:-10px}.feedback-badge{background:var(--accent);min-width:20px;height:20px;color:var(--on-accent);text-align:center;box-shadow:var(--shadow);border-radius:10px;padding:0 6px;font-size:11px;font-weight:600;line-height:20px}.feedback-badge.is-approved{background:var(--stroke-green)}.feedback-badge.is-changes{background:#e8822a}.media-download{width:22px;height:22px;color:var(--muted);border-radius:6px;flex:none;align-self:center;place-items:center;margin:-4px -4px -4px 0;text-decoration:none;display:grid}.media-download.is-shared{color:var(--accent)}.media-download:hover{background:color-mix(in srgb, var(--text) 10%, transparent);color:var(--text)}.media-download svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.media-caption .media-download{margin-left:auto}.version-menu+.media-download{margin-left:-2px}.item-image .media-download{z-index:2;color:#fff;opacity:0;background:#0000008c;width:28px;height:28px;margin:0;transition:opacity .15s;position:absolute;top:8px;right:8px}.item-image:hover .media-download,.item-image.is-selected .media-download{opacity:1}@media (hover:none){.item-image .media-download{opacity:1}}.feedback-replies{border-left:2px solid var(--border);flex-direction:column;gap:6px;margin:8px 0 0;padding:0 0 0 10px;list-style:none;display:flex}.feedback-reply p{margin-top:2px}.feedback-reply.is-owner strong{color:var(--accent)}.feedback-thread-actions{justify-content:flex-end;gap:4px;margin-top:6px;display:flex}.feedback-thread-actions button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:3px 8px;font-size:12px}.feedback-thread-actions button:hover{border-color:var(--border);color:var(--text)}.feedback-thread-actions .primary{background:var(--accent);color:var(--on-accent)}.feedback-thread-actions .primary:disabled{opacity:.5}.feedback-reply-form{margin-top:8px}.feedback-reply-form textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:6px;padding:6px 8px;font-size:13px}.feedback-delete{color:var(--muted);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0 4px;font-size:14px}.feedback-resolved+.feedback-delete{margin-left:0}.feedback-delete:hover{color:var(--text)}.owner-feedback{top:64px}.owner-feedback-group{flex-direction:column;gap:6px;display:flex}.owner-feedback-item{color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;gap:1px;padding:4px 6px;display:flex}.owner-feedback-item:hover{background:var(--bg)}.owner-feedback-threads{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.board-search-count{background:var(--accent);min-width:18px;color:var(--on-accent);text-align:center;border-radius:9px;padding:0 5px;font-size:11px;font-weight:600;line-height:18px}.share-dialog{width:min(560px,100%);max-height:calc(100vh - 32px);overflow-y:auto}.share-form{flex-direction:column;gap:12px;display:flex}.share-password,.share-expiry{gap:6px;display:flex}.share-password input,.share-expiry input{flex:1;min-width:0}.share-password button{flex:none;padding:0 10px;font-size:13px}.share-expiry select{border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;border-radius:6px;padding:8px 10px;font-size:15px}.dialog label.share-check{color:var(--text);flex-direction:row;align-items:flex-start;gap:8px;font-size:14px}.share-check input{margin-top:2px}.share-list h3{margin:4px 0 8px;font-size:14px}.share-list ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.share-row{border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:10px 12px}.share-row.is-revoked,.share-row.is-expired{opacity:.75}.share-row-head{align-items:center;gap:8px;display:flex}.share-status{border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.share-status.is-active{background:color-mix(in srgb, var(--stroke-green) 20%, transparent);color:var(--stroke-green)}.share-status.is-expired{color:#e8822a;background:#e8822a33}.share-status.is-revoked{background:color-mix(in srgb, var(--muted) 20%, transparent);color:var(--muted)}.share-details{color:var(--muted);margin:4px 0 8px;font-size:12px}.share-actions{flex-wrap:wrap;gap:6px;display:flex}.share-actions button{white-space:nowrap;padding:4px 9px;font-size:12px}.share-actions button.is-on{border-color:var(--text)}.share-actions .share-delete{color:#d93025;margin-left:auto}.share-visits{color:var(--text);margin:-4px 0 8px;font-size:12px}.share-activity{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-direction:column;gap:10px;margin:0 0 10px;padding:10px 12px;font-size:12px;display:flex;container:activity/inline-size}.share-activity h4{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:600}.share-activity ul,.share-activity ol{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.share-activity-none{color:var(--muted)}.share-activity .share-activity-summary,.share-activity-visits ul{grid-template-columns:minmax(0,1fr) 48px auto;align-items:center;gap:4px 10px;display:grid}@container activity (width<=380px){.share-activity .share-activity-summary,.share-activity-visits ul{grid-template-columns:minmax(0,1fr) auto}.share-activity-bar{display:none}}.share-activity-row{white-space:nowrap;display:contents}.share-activity-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.share-activity-bar{background:color-mix(in srgb, var(--muted) 25%, transparent);border-radius:2px;height:4px;position:relative;overflow:hidden}.share-activity-bar span{background:var(--stroke-green);border-radius:2px;position:absolute;inset:0 auto 0 0}.share-activity-stats{white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums}.share-activity-visits{gap:10px!important}.share-activity-visit{white-space:nowrap;text-overflow:ellipsis;margin:0 0 2px;overflow:hidden}.share-activity-visits ul{border-left:2px solid var(--border);padding-left:10px}.share-activity-visits ul .share-activity-name{font-weight:500}.share-activity-none{margin:0}.share-activity-empty{color:var(--muted);margin:0 0 8px;font-size:12px}.share-note{color:var(--text);background:#e8a33d24;border-radius:8px;margin:0;padding:8px 10px;font-size:12px}.share-gate{background:var(--bg);place-items:center;min-height:100vh;padding:16px;display:grid}.share-gate .dialog{box-shadow:var(--shadow-raised)}.share-gate .client-brand{margin:0}.sync-indicator{z-index:300;border:1px solid var(--border);background:var(--surface);max-width:calc(100% - 32px);box-shadow:var(--shadow-raised);border-radius:999px;align-items:center;gap:10px;padding:8px 14px;font-size:13px;display:flex;position:fixed;bottom:120px;left:50%;translate:-50%}.sync-indicator.is-warning{border-color:#e8822a}.sync-indicator button{color:#fff;font:inherit;cursor:pointer;background:#e8822a;border:none;border-radius:999px;flex:none;padding:4px 10px}.sync-indicator button.is-quiet{background:var(--bg);color:var(--text)}.transfers-panel{z-index:310;border:1px solid var(--border);background:var(--surface);width:min(380px,100% - 32px);box-shadow:var(--shadow-raised);border-radius:12px;flex-direction:column;font-size:14px;display:flex;position:fixed;top:64px;bottom:68px;right:16px;overflow:hidden}.transfers-section{border-bottom:1px solid var(--border);padding:12px 14px}.transfers-section h3{color:var(--muted);text-transform:uppercase;align-items:center;gap:8px;margin:0 0 6px;font-size:12px;font-weight:600;display:flex}.transfers-count{background:var(--accent);color:var(--on-accent);text-transform:none;border-radius:999px;padding:1px 7px}.transfers-status{margin:0;font-size:13px}.transfers-status.is-ok{color:var(--stroke-green)}.transfers-files{flex:1;min-height:0;overflow-y:auto}.transfers-files ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.transfer{background:var(--bg);border-radius:8px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.transfer-head{align-items:baseline;gap:8px;display:flex}.transfer-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.transfer-phase{color:var(--muted);flex:none;font-size:12px}.transfer.is-sending .transfer-phase,.transfer.is-checking .transfer-phase{color:var(--accent)}.transfer.is-done .transfer-phase{color:var(--stroke-green)}.transfer.is-error .transfer-phase,.transfer.is-error .transfer-details{color:#e8822a}.transfer-board,.transfer-details{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.transfer-bar{background:color-mix(in srgb, currentColor 10%, transparent);border-radius:3px;height:6px;overflow:hidden}.transfer-bar span{background:var(--accent);border-radius:3px;height:100%;transition:width .25s linear;display:block}.transfer.is-checking .transfer-bar span{background:var(--stroke-green)}.transfer-retry{align-self:flex-start;padding:3px 10px;font-size:12px}.transfers-note{color:var(--muted);margin:0;padding:10px 14px 14px;font-size:12px}.storage-status{background:var(--bg);border-radius:6px;align-items:center;gap:8px;margin:6px 0;padding:6px 8px;font-size:12px;display:flex}.storage-status span{flex:1}.storage-status.is-ok span{color:var(--stroke-green)}.storage-status.is-warn span{color:#e8822a}.storage-status button{flex:none;padding:2px 8px;font-size:12px}.share-actions button,.share-password button,.transfer-retry,.storage-status button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:6px}.share-actions button:hover:not(:disabled),.share-password button:hover,.transfer-retry:hover,.storage-status button:hover{background:var(--bg)}.share-actions button:disabled{opacity:.45;cursor:default}.share-actions .share-delete{color:#e5484d}.audio-player{background:color-mix(in srgb, var(--text) 6%, var(--surface));-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:10px;margin:0 8px 10px;padding:6px 10px 6px 6px;display:flex}.audio-player-play{background:var(--kind,var(--accent));width:32px;height:32px;color:var(--on-accent);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.audio-player-play svg{fill:currentColor;width:16px;height:16px}.audio-player-play:disabled{cursor:default;opacity:.5}.audio-player.is-following .audio-player-play{background:var(--wire-active);opacity:1}.audio-player-bar{cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent;flex:1;min-width:40px;height:28px;position:relative}.audio-player-bar:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.audio-player-track{background:color-mix(in srgb, var(--text) 14%, transparent);border-radius:2px;height:4px;position:absolute;top:50%;left:0;right:0;overflow:hidden;translate:0 -50%}.audio-player-buffered,.audio-player-fill{position:absolute;inset:0 auto 0 0}.audio-player-buffered{background:color-mix(in srgb, var(--text) 12%, transparent)}.audio-player-fill{background:var(--kind,var(--accent))}.audio-player.is-following .audio-player-fill{background:var(--wire-active)}.audio-player-thumb{background:var(--kind,var(--accent));width:12px;height:12px;box-shadow:0 0 0 2px var(--surface);opacity:0;border-radius:50%;transition:opacity .15s;position:absolute;top:50%;translate:-50% -50%}.audio-player-bar:hover .audio-player-thumb,.audio-player-bar:focus-visible .audio-player-thumb{opacity:1}@media (hover:none){.audio-player-thumb{opacity:1}}.audio-player-time{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.audio-player.is-failed .audio-player-time{color:#e8822a}.transfers-storage{flex-direction:column;gap:6px;display:flex}.storage-bar span{background:var(--stroke-green)}.storage-pending-intro{color:var(--muted)}.storage-pending{flex-direction:column;gap:6px;max-height:180px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.storage-pending li{background:var(--bg);border-radius:6px;flex-direction:column;gap:2px;padding:6px 8px;display:flex}.client-feedback-button{bottom:max(20px, env(safe-area-inset-bottom));z-index:55;background:var(--accent);box-shadow:var(--shadow-raised);color:var(--on-accent);font:inherit;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:15px;font-weight:600;display:flex;position:fixed;left:50%;translate:-50%}.client-feedback-button .board-search-count{color:var(--accent);background:#fff}@media (width<=760px){.client-view .feedback-panel{width:auto;inset:8px}.client-view .zoom-controls{bottom:76px}}.server-button{align-items:center;gap:6px;display:inline-flex}.server-dot{border-radius:50%;flex:none;width:9px;height:9px}.server-dot.is-ok{background:var(--stroke-green)}.server-dot.is-busy{background:var(--accent);animation:1.2s ease-in-out infinite server-pulse}.server-dot.is-warning{background:#e8822a}@keyframes server-pulse{50%{opacity:.35}}.share-subject{margin:2px 0 0;font-size:13px}.share-filter{background:var(--bg);border-radius:8px;align-self:flex-start;gap:4px;padding:3px;display:flex}.share-filter button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 12px;font-size:13px}.share-filter button.is-on{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.wire-end{fill:var(--wire);stroke:var(--surface);stroke-width:1.5px;pointer-events:none}.wire.is-active .wire-end{fill:var(--wire-active)}.sync-stage{position:relative}.sync .sync-big-play{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);-webkit-tap-highlight-color:transparent;background:#00000073;border:none;border-radius:50%;place-items:center;width:72px;height:72px;padding:0;transition:scale .15s,background .15s;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 4px 18px #00000059}.sync-big-play svg{fill:currentColor;width:34px;height:34px;margin-left:4px}.sync .sync-big-play:hover{background:color-mix(in srgb, var(--accent) 80%, transparent);scale:1.06}.sync-big-play.is-preparing{cursor:default}.sync-big-play.is-preparing svg{fill:none;width:auto;height:auto;margin:0;position:absolute;inset:6px;rotate:-90deg}.sync-big-play .ring-track{stroke:#ffffff40;stroke-width:3px}.sync-big-play .ring-fill{stroke:#fff;stroke-width:3px;stroke-linecap:round;transition:stroke-dasharray .25s linear}.sync-big-play.is-preparing span{font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.item-sync .sync-big-play{aspect-ratio:1;width:clamp(44px,14%,80px);height:auto}.sync-big-play,.sync-play,.sync-video,.audio-player-play{touch-action:manipulation}.port-in.is-sfx{background:var(--sfx);top:47px}.canvas.is-wiring .port-in.is-sfx{scale:1.35}.wire.is-sfx.is-active .wire-line{stroke:var(--sfx)}.wire.is-sfx .wire-flow{stroke:#bfe6fb}.item.is-highlighted.is-sfx{outline-color:var(--sfx)}.item.is-highlighted.is-sfx.is-selected{--elevation:0 0 0 5px color-mix(in srgb, var(--sfx) 25%, transparent), var(--shadow-raised)}.item.is-highlighted.is-sfx .media-kind,.item.is-highlighted.is-sfx .port{color:var(--sfx)}.item.is-highlighted.is-sfx .port,.item.is-sfx .audio-player.is-following .audio-player-play,.item.is-sfx .audio-player.is-following .audio-player-fill{background:var(--sfx)}.sync-versions.is-sfx{padding-top:0}.sync-versions.is-sfx .sync-version.is-active{border-color:var(--sfx);background:var(--sfx);color:#fff}.sync-versions.is-sfx .sync-versions-label{color:var(--sfx);font-weight:600}.sync-sfx-mode{background:var(--bg);border-radius:6px;flex:none;gap:2px;padding:2px;display:inline-flex}.sync .sync-sfx-mode button{border:none;height:26px;padding:0 8px;font-size:12px}.sync .sync-sfx-mode button.is-on{background:var(--surface);color:var(--sfx);box-shadow:var(--shadow)}.sync-volumes label.is-image input{accent-color:var(--kind-video)}.sync-volumes label.is-music input{accent-color:var(--kind-music)}.sync-volumes label.is-sfx input{accent-color:var(--sfx)}.linked-row.is-sfx.is-active{border-color:var(--sfx)}.linked-row.is-sfx.is-active .track-label{border-color:var(--sfx);background:var(--sfx)}.role-switch{background:var(--bg);border-radius:8px;gap:2px;margin:8px 0 12px;padding:3px;display:flex}.role-switch button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:6px;font-size:13px}.role-switch button.is-on{background:var(--surface);color:var(--wire-active);box-shadow:var(--shadow);font-weight:600}.role-switch button.is-on.is-sfx{color:var(--sfx)}.waveform{width:100%;height:100%;display:block}.waveform-rest{fill:color-mix(in srgb, var(--text) 28%, transparent)}.waveform-played{fill:var(--kind,var(--accent))}.audio-player-wave{width:100%;height:calc(100% - 6px);position:absolute;inset:3px 0}.audio-player.is-following .waveform-played{fill:var(--wire-active)}.item.is-sfx .audio-player.is-following .waveform-played{fill:var(--sfx)}.sync-seek{padding-bottom:18px}.sync-wave{pointer-events:none;max-width:calc(100% - 12px);height:16px;position:absolute;bottom:0;overflow:hidden}.sync-wave .waveform-played{fill:var(--wire-active)}.loudness-badge{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:11px}.level-match{background:var(--bg);border-radius:8px;flex-direction:column;gap:6px;margin:8px 0;padding:8px 10px;font-size:12px;display:flex}.level-match button{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:6px;align-self:flex-start;padding:4px 10px}.listening-info{color:var(--muted);margin:6px 0;font-size:12px}.listening-info p{margin:4px 0}.listening-info .is-warning{color:#e8822a}.inline-link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.version-menu{flex:none;align-self:center;margin:-4px 0 -4px auto;display:flex;position:relative}.item .version-badge{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 14%, transparent);height:22px;color:var(--accent);font:inherit;cursor:pointer;border-radius:999px;align-items:center;padding:0 8px;font-size:11px;font-weight:700;display:flex}.item .version-badge.is-old{border-color:color-mix(in srgb, var(--kind-image) 60%, transparent);background:color-mix(in srgb, var(--kind-image) 18%, transparent);color:var(--kind-image)}.version-list{z-index:30;border:1px solid var(--border);background:var(--surface);width:max-content;min-width:240px;max-width:340px;max-height:300px;box-shadow:var(--shadow-raised);border-radius:8px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);right:0;overflow:auto}.version-list li{border-radius:6px;align-items:center;gap:4px;display:flex}.version-list li.is-current{background:color-mix(in srgb, var(--accent) 12%, transparent)}.item .version-pick{min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;grid-template-columns:auto 1fr;column-gap:8px;padding:6px 8px;font-size:12px;display:grid}.version-pick:hover{background:color-mix(in srgb, var(--text) 6%, transparent);border-radius:6px}.version-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.version-note{color:var(--muted);grid-column:2;font-size:11px}.item .version-restore{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:6px;flex:none;margin-right:4px;padding:3px 8px;font-size:11px}.version-restore:hover{border-color:var(--accent);color:var(--accent)}.item-audio.is-drop-target,.item-video.is-drop-target{outline:2px dashed var(--accent);outline-offset:3px}.item-audio.is-drop-target:after,.item-video.is-drop-target:after{content:"Lâcher : nouvelle version";border-radius:inherit;background:color-mix(in srgb, var(--accent) 78%, transparent);color:#fff;pointer-events:none;place-items:center;font-weight:600;display:grid;position:absolute;inset:0}.item.is-sized:has(.version-list)>.item-body{overflow:visible}.palette-switch{position:relative}.palette-trigger{align-items:center;gap:8px;display:flex}.palette-dots{display:flex}.palette-dots span{border:2px solid var(--surface);border-radius:50%;width:12px;height:12px;margin-left:-3px}.palette-dots span:first-child{margin-left:0}.palette-backdrop{z-index:49;position:fixed;inset:0}.palette-menu{z-index:50;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-raised);border-radius:14px;gap:10px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);left:0}.palette-grid{grid-template-columns:repeat(2,200px);gap:8px;display:grid}@media (width<=520px){.palette-menu{position:fixed;top:60px;left:16px;right:16px}.palette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.palette-shares{border-top:1px solid var(--border);gap:8px;padding-top:10px;display:grid}.palette-shares-label{font-family:var(--font-display);gap:2px;font-size:14px;font-weight:700;display:grid}.palette-shares-label small{color:var(--muted);font-family:system-ui,-apple-system,sans-serif;font-size:12px;font-weight:400}.palette-shares-choices{flex-wrap:wrap;gap:6px;max-width:410px;display:flex}.palette-shares-choices button{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:flex}.palette-shares-choices button.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, transparent);font-weight:600}.palette-modes{background:color-mix(in srgb, var(--text) 6%, transparent);border-radius:10px;padding:3px;display:flex}.palette-modes button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;padding:7px 10px;font-size:13px}.palette-modes button.is-active{background:var(--surface);box-shadow:var(--shadow);color:var(--text);font-weight:600}.palette-option{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:2px solid #0000;border-radius:10px;gap:2px;padding:8px;display:grid}.palette-option:hover{background:color-mix(in srgb, var(--text) 5%, transparent)}.palette-option.is-active{border-color:var(--accent)}.palette-preview{border:1px solid #00000014;border-radius:8px;align-items:flex-end;gap:5px;height:46px;margin-bottom:4px;padding:8px;display:flex}.palette-preview span{border-radius:4px;flex:1;height:14px}.palette-preview span:first-child{height:24px}.palette-name{font-family:var(--font-display);font-size:15px;font-weight:700}.palette-hint{color:var(--muted);font-size:12px}:root:not([data-palette=studio]) .board-card:nth-child(5n+1) .board-card-open{border-top-color:var(--accent)}:root:not([data-palette=studio]) .board-card:nth-child(5n+2) .board-card-open{border-top-color:var(--kind-image)}:root:not([data-palette=studio]) .board-card:nth-child(5n+3) .board-card-open{border-top-color:var(--kind-music)}:root:not([data-palette=studio]) .board-card:nth-child(5n+4) .board-card-open{border-top-color:var(--kind-video)}:root:not([data-palette=studio]) .board-card:nth-child(5n+5) .board-card-open{border-top-color:var(--kind-text)}.context-backdrop{z-index:60;position:fixed;inset:0}.context-menu{z-index:61;border:1px solid var(--border);background:var(--surface);min-width:220px;box-shadow:var(--shadow-lifted);transform-origin:0 0;border-radius:14px;flex-direction:column;padding:6px;animation:.14s ease-out context-in;display:flex;position:fixed}@keyframes context-in{0%{opacity:0;scale:.94}}.context-item{min-height:38px;color:var(--text);text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:0 12px 0 8px;font-size:14px;display:flex}.context-item:hover,.context-item:focus-visible{background:color-mix(in srgb, var(--accent) 16%, transparent)}.context-item.is-danger{color:#d9534f}.context-item.is-danger:hover{background:#d9534f24}.context-icon{width:22px;color:var(--muted);place-items:center;font-size:15px;display:grid}.context-item.is-danger .context-icon{color:inherit}.context-separator{background:var(--border);height:1px;margin:4px 6px}.item{-webkit-touch-callout:none}.app.client-view.is-presenting .client-header,.app.client-view.is-presenting .preview-banner,.app.client-view.is-presenting .client-feedback-button,.app.client-view.is-presenting .client-hint,.app.client-view.is-presenting .feedback-panel{display:none}.device-toggle{gap:6px;display:inline-flex}.device-check{cursor:pointer;-webkit-user-select:none;user-select:none}.device-check input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;margin:0}.device-frames{z-index:30;pointer-events:none;position:fixed;inset:0}.device-frame{outline:3px solid var(--device-color);outline-offset:0;box-shadow:0 0 0 9px color-mix(in srgb, var(--device-color) 22%, transparent);position:absolute;top:50%;left:50%;translate:-50% -50%}.device-frame.is-iphone{--device-color:var(--accent)}.device-frame.is-ipad{--device-color:var(--kind-image)}.device-legend{gap:8px;display:flex;position:fixed;top:62px;left:50%;translate:-50%}.device-key{border:2px solid var(--device-color);background:var(--surface);box-shadow:var(--shadow);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:flex}.device-key small{color:var(--muted);font-weight:500}.device-key.is-iphone{--device-color:var(--accent)}.device-key.is-ipad{--device-color:var(--kind-image)}.views-fit{color:var(--muted);white-space:nowrap;cursor:pointer;flex:1 0 100%;align-items:center;gap:6px;padding:0 8px;font-size:12px;display:flex}.views-fit input{accent-color:var(--accent);margin:0}.item-slot{--kind:var(--accent);border:2px dashed color-mix(in srgb, var(--kind) 60%, var(--border));background:color-mix(in srgb, var(--kind) 7%, var(--surface));--elevation:0 0 transparent}.item-slot:has(.is-audio){--kind:var(--kind-music)}.item-slot:has(.is-video){--kind:var(--kind-video)}.item-slot:has(.is-image){--kind:var(--kind-image)}.slot-card{height:100%;min-height:90px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px;display:flex}.slot-icon{background:color-mix(in srgb, var(--kind) 18%, transparent);width:36px;height:36px;color:var(--kind);border-radius:50%;place-items:center;font-size:18px;display:grid}.slot-label{color:var(--text);font-family:var(--font-display);font-size:14px;font-weight:700}.slot-hint{font-size:12px}.item .slot-choose{border:1px solid color-mix(in srgb, var(--kind) 50%, var(--border));background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.item .slot-choose:hover{border-color:var(--kind)}.tool[data-kind=template]{--tool-color:var(--kind-link)}.template-picker{z-index:50;border:1px solid var(--border);background:var(--surface);width:min(340px,100vw - 100px);max-height:calc(100vh - 160px);box-shadow:var(--shadow-lifted);border-radius:14px;padding:12px;position:fixed;top:64px;left:84px;overflow:auto}.template-picker h3{font-family:var(--font-display);margin:2px 4px 10px;font-size:16px}.template-picker ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.template-picker li{align-items:stretch;gap:4px;display:flex}.template-insert{border:1px solid var(--border);background:color-mix(in srgb, var(--kind-link) 6%, var(--surface));min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;flex:1;gap:2px;padding:9px 12px;display:grid}.template-insert:hover{border-color:var(--kind-link)}.template-insert span{color:var(--muted);font-size:12px}.template-delete{width:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;font-size:18px}.template-delete:hover{color:#d9534f;background:#d9534f24}.template-empty{color:var(--muted);margin:0 4px 4px;font-size:13px;line-height:1.45}@media (width<=600px){.template-picker{top:auto;bottom:150px;left:64px}}.version-tools{flex:none;gap:2px;margin-right:4px;display:flex}.item .version-tool{width:26px;height:26px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;font-size:13px;display:grid}.item .version-tool:hover:not(:disabled){background:color-mix(in srgb, var(--text) 8%, transparent);color:var(--text)}.item .version-tool:disabled{opacity:.3;cursor:default}.item .version-tool.is-danger:hover{color:#d9534f;background:#d9534f24}.version-list{min-width:300px}.share-editor{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-direction:column;gap:10px;margin:10px 0 4px;padding:12px;display:flex}.share-editor fieldset{border:0;flex-direction:column;gap:6px;margin:0;padding:0;display:flex}.share-editor legend{color:var(--muted);margin-bottom:4px;font-size:13px}.dialog .share-editor .share-editor-choice{color:var(--text);flex-flow:wrap;align-items:center;gap:8px;font-size:14px}.share-editor-choice input[type=radio],.share-editor-choice input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);margin:0;padding:0}.share-editor-choice input[type=date]{padding:4px 8px;font-size:14px}.share-editor-choice input[type=date]:disabled{opacity:.45}.share-editor-actions{gap:8px;display:flex}.share-editor-actions button{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:7px 14px;font-size:14px}.share-editor-actions .primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:600}.share-error{color:#d93025;margin:0;font-size:13px}.share-editor-note{color:var(--muted);margin:0;font-size:12px}
