:root,[data-brand=tessera]{--space-0-5:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-24:96px;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:16px;--radius-full:9999px;--z-dropdown:1000;--z-sticky:1100;--z-overlay:1300;--z-toast:1400;--duration-instant:80ms;--duration-fast:.14s;--duration-base:.22s;--duration-slow:.36s;--duration-stagger:40ms;--duration-reveal:.9s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-snap:cubic-bezier(.2, 0, 0, 1);--font-display:"Bricolage Grotesque", "Helvetica Neue", Arial, sans-serif;--font-sans:"Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--shell-raised:initial;--label-bg:initial;--label-surface:initial;--label-surface-sunken:initial;--label-line:initial;--label-line-strong:initial;--label-ink:initial;--label-ink-muted:initial;--label-lapis:initial;--label-lapis-hover:initial;--label-lapis-soft:initial;--label-on-lapis:initial;--label-success:initial;--label-success-soft:initial;--label-warning:initial;--label-saffron-soft:initial;--label-danger:initial;--label-danger-soft:initial;--label-on-danger:initial;--label-inverse-accent:initial;--label-focus:initial;--label-link:initial;--key-a:initial;--on-key-a:initial;--key-b:initial;--on-key-b:initial;--key-c:initial;--on-key-c:initial;--key-start:initial;--on-key-start:initial;--clay-purple:initial;--lcd:initial;--lcd-ink:initial;--crt:initial;--crt-ink:initial;--tape:initial;--lcd-green:initial}:root,[data-theme=light],[data-brand=tessera],[data-brand=tessera][data-theme=light]{--bg:#f4f5f9;--surface:#fff;--surface-sunken:#ebedf3;--line:#d8dbe5;--line-strong:#868da3;--ink:#0b0e18;--ink-muted:#4f566b;--lapis:#2633e8;--lapis-hover:#1a25c4;--lapis-soft:#e6e8ff;--lapis-deep:#121a8f;--lapis-glow:#2633e847;--on-lapis:#fff;--on-lapis-deep:#fff;--saffron:#ffb020;--saffron-deep:#e8890c;--tile-ground:#121a8f;--tile-1:#2633e8;--tile-2:#1a25c4;--tile-3:#3a47ff;--tile-4:#e6e8ff;--saffron-soft:#fff3d6;--on-saffron:#0b0e18;--success:#0b7a5c;--success-soft:#ddf5ec;--warning:#8f5200;--danger:#c42617;--danger-soft:#fde6e3;--on-danger:#fff;--inverse-accent:#ffbe45;--focus:var(--lapis);--link:var(--lapis);--overlay:#0b0e188f;--shadow-sm:0 1px 2px #0b0e180f, 0 1px 1px #0b0e180a;--shadow-md:0 4px 12px #0b0e1814, 0 1px 3px #0b0e180f;--shadow-lg:0 16px 40px #0b0e1829, 0 2px 6px #0b0e1814;--shadow-glow:0 6px 20px -6px #2633e88c;--shadow-tile:4px 4px 0 0 #0b0e18;--shadow-tile-lg:8px 8px 0 0 #0b0e18;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0e18;--surface:#141826;--surface-sunken:#070910;--line:#262c3f;--line-strong:#5d6584;--ink:#eef0f7;--ink-muted:#a3a9be;--lapis:#8c96ff;--lapis-hover:#a7aeff;--lapis-soft:#1e2458;--lapis-deep:#3b45d6;--lapis-glow:#8c96ff52;--on-lapis:#0b0e18;--saffron:#ffbe45;--saffron-deep:#e8a12a;--saffron-soft:#3a2a08;--on-saffron:#0b0e18;--success:#4fd1a5;--success-soft:#0d2b22;--warning:#ffbe45;--danger:#ff8073;--danger-soft:#3a1210;--on-danger:#0b0e18;--inverse-accent:#2633e8;--focus:var(--lapis);--link:var(--lapis);--overlay:#000000a8;--shadow-sm:0 1px 2px #00000080;--shadow-md:0 4px 16px #0000008c;--shadow-lg:0 20px 48px #000000b3;--shadow-glow:0 6px 24px -6px #8c96ff80;--shadow-tile:4px 4px 0 0 #8c96ff;--shadow-tile-lg:8px 8px 0 0 #8c96ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-theme=dark]{--bg:#0b0e18;--surface:#141826;--surface-sunken:#070910;--line:#262c3f;--line-strong:#5d6584;--ink:#eef0f7;--ink-muted:#a3a9be;--lapis:#8c96ff;--lapis-hover:#a7aeff;--lapis-soft:#1e2458;--lapis-deep:#3b45d6;--lapis-glow:#8c96ff52;--on-lapis:#0b0e18;--saffron:#ffbe45;--saffron-deep:#e8a12a;--saffron-soft:#3a2a08;--on-saffron:#0b0e18;--success:#4fd1a5;--success-soft:#0d2b22;--warning:#ffbe45;--danger:#ff8073;--danger-soft:#3a1210;--on-danger:#0b0e18;--inverse-accent:#2633e8;--focus:var(--lapis);--link:var(--lapis);--overlay:#000000a8;--shadow-sm:0 1px 2px #00000080;--shadow-md:0 4px 16px #0000008c;--shadow-lg:0 20px 48px #000000b3;--shadow-glow:0 6px 24px -6px #8c96ff80;--shadow-tile:4px 4px 0 0 #8c96ff;--shadow-tile-lg:8px 8px 0 0 #8c96ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.display-2xl{font-family:var(--font-display);letter-spacing:-.035em;font-variation-settings:"opsz" 96;font-size:72px;font-weight:800;line-height:72px}.display-xl{font-family:var(--font-display);letter-spacing:-.03em;font-variation-settings:"opsz" 72;font-size:56px;font-weight:800;line-height:60px}.display-lg{font-family:var(--font-display);letter-spacing:-.025em;font-variation-settings:"opsz" 48;font-size:40px;font-weight:700;line-height:44px}.heading-lg{font-family:var(--font-display);letter-spacing:-.02em;font-variation-settings:"opsz" 32;font-size:28px;font-weight:700;line-height:34px}.heading-md{font-family:var(--font-display);letter-spacing:-.015em;font-variation-settings:"opsz" 24;font-size:22px;font-weight:700;line-height:28px}.heading-sm{font-family:var(--font-display);letter-spacing:-.01em;font-variation-settings:"opsz" 18;font-size:17px;font-weight:650;line-height:24px}.body-lg{font-family:var(--font-sans);font-size:18px;font-weight:400;line-height:28px}.body{font-family:var(--font-sans);font-size:16px;font-weight:400;line-height:24px}.body-sm{font-family:var(--font-sans);font-size:14px;font-weight:400;line-height:20px}.label{font-family:var(--font-sans);font-size:14px;font-weight:600;line-height:20px}.caption{font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:16px}.code{font-family:var(--font-mono);font-size:14px;font-weight:400;line-height:20px}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;font-size:12px;font-weight:500;line-height:16px}:where(body){font-family:var(--font-sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:24px}@keyframes ts-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes ts-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes ts-drop{0%{opacity:0;transform:translateY(-14px)scale(.85)}to{opacity:1;transform:none}}@keyframes ts-fade{0%{opacity:0}to{opacity:1}}@keyframes ts-spin{to{transform:rotate(360deg)}}@keyframes ts-pulse{0%{box-shadow:0 0}70%,to{box-shadow:0 0 0 6px #0000}}@keyframes ts-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes ts-stripes{to{background-position:24px 0}}@keyframes ts-sweep{0%{transform:translate(-120%)skew(-20deg)}to{transform:translate(220%)skew(-20deg)}}.ts-focus:focus-visible,.ts-btn:focus-visible,.ts-tab:focus-visible,.ts-check input:focus-visible+.ts-check-box,.ts-switch input:focus-visible+.ts-switch-track,.ts-radio input:focus-visible+.ts-radio-dot,.ts-card-link:focus-visible{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--focus);outline:none}.ts-btn{isolation:isolate;justify-content:center;align-items:center;gap:var(--space-2);font:600 14px/20px var(--font-sans);letter-spacing:-.005em;height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease-snap), border-color var(--duration-fast), box-shadow var(--duration-base) var(--ease-snap), transform var(--duration-base) var(--ease-spring);border:1px solid #0000;display:inline-flex;position:relative;overflow:hidden}.ts-btn:active:not([disabled]){transition-duration:var(--duration-instant);transform:scale(.96)}.ts-btn[disabled]{opacity:.45;cursor:not-allowed}.ts-btn-sm{height:32px;padding:0 var(--space-3);font-size:13px}.ts-btn-lg{height:52px;padding:0 var(--space-6);border-radius:var(--radius-lg);font-size:16px}.ts-btn-block{width:100%}.ts-btn .ts-icon{transition:transform var(--duration-base) var(--ease-spring)}.ts-icon-end{transition:transform var(--duration-base) var(--ease-spring);display:inline-flex}.ts-btn:hover:not([disabled]) .ts-icon-end{transform:translate(3px)}.ts-btn-primary{background:var(--lapis);color:var(--on-lapis);box-shadow:inset 0 1px 0 #ffffff38, inset 0 -2px 0 #00000024, var(--shadow-glow)}.ts-btn-primary:hover:not([disabled]){background:var(--lapis-hover);box-shadow:inset 0 1px 0 #ffffff38, inset 0 -2px 0 #00000024, 0 10px 28px -8px var(--lapis-glow), var(--shadow-glow);transform:translateY(-1px)}.ts-btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.ts-btn-secondary:hover:not([disabled]){border-color:var(--ink);transform:translateY(-1px)}.ts-btn-ghost{color:var(--ink);background:0 0}.ts-btn-ghost:hover:not([disabled]){background:var(--surface-sunken)}.ts-btn-danger{background:var(--danger);color:var(--on-danger);box-shadow:inset 0 1px #fff3,inset 0 -2px #00000024}.ts-btn-danger:hover:not([disabled]){filter:brightness(1.06);transform:translateY(-1px)}.ts-btn-tile{background:var(--saffron);color:var(--on-saffron);border:1.5px solid var(--ink);box-shadow:var(--shadow-tile)}.ts-btn-tile:hover:not([disabled]){box-shadow:var(--shadow-tile-lg);transform:translate(-3px,-3px)}.ts-btn-tile:active:not([disabled]){box-shadow:0 0 0 0 var(--ink);background:var(--saffron-deep);transform:translate(4px,4px)}.ts-btn-primary:after,.ts-btn-tile:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff59,#0000);width:40%;position:absolute;inset:-2px auto -2px 0;transform:translate(-120%)skew(-20deg)}.ts-btn-primary:hover:not([disabled]):after,.ts-btn-tile:hover:not([disabled]):after{animation:ts-sweep .7s var(--ease-out)}.ts-ripple{border-radius:var(--radius-full);opacity:.22;animation:ts-ripple .6s var(--ease-out) forwards;pointer-events:none;z-index:-1;background:currentColor;position:absolute;transform:scale(0)}@keyframes ts-ripple{to{opacity:0;transform:scale(1)}}.ts-spin{border-radius:var(--radius-full);border:2px solid;border-right-color:#0000;width:16px;height:16px;animation:.7s linear infinite ts-spin}.ts-icon{flex:none;width:16px;height:16px}.ts-field{flex-direction:column;gap:6px;min-width:0;display:flex}.ts-field-label{font:600 14px/20px var(--font-sans);color:var(--ink);transition:color var(--duration-fast)}.ts-field:focus-within .ts-field-label{color:var(--lapis)}.ts-field-hint{font:400 13px/18px var(--font-sans);color:var(--ink-muted)}.ts-field-error{font:500 13px/18px var(--font-sans);color:var(--danger);gap:var(--space-1);animation:ts-rise var(--duration-base) var(--ease-out);align-items:center;display:flex}.ts-control{align-items:center;display:flex;position:relative}.ts-control>.ts-icon{left:var(--space-3);color:var(--ink-muted);pointer-events:none;transition:color var(--duration-fast);position:absolute}.ts-control:focus-within>.ts-icon{color:var(--lapis)}.ts-input{box-sizing:border-box;width:100%;height:44px;padding:0 var(--space-3);font:400 15px/20px var(--font-sans);color:var(--ink);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);transition:border-color var(--duration-fast), box-shadow var(--duration-base) var(--ease-out), background var(--duration-fast)}.ts-control>.ts-icon+.ts-input{padding-left:38px}.ts-input::placeholder{color:var(--ink-muted)}.ts-input:hover{border-color:var(--ink-muted)}.ts-input:focus-visible{border-color:var(--lapis);box-shadow:0 0 0 4px var(--lapis-glow);outline:none}.ts-invalid .ts-input,.ts-invalid .ts-sel-trigger{border-color:var(--danger);animation:ts-shake .36s var(--ease-out)}@keyframes ts-shake{20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}.ts-sel{position:relative}.ts-sel-trigger{box-sizing:border-box;align-items:center;gap:var(--space-2);width:100%;height:44px;padding:0 var(--space-3);font:400 15px/20px var(--font-sans);color:var(--ink);text-align:left;background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--duration-fast), box-shadow var(--duration-base) var(--ease-out), background var(--duration-fast);display:flex}.ts-sel-trigger:hover{border-color:var(--ink-muted)}.ts-sel-trigger:focus-visible,.ts-sel-open .ts-sel-trigger{border-color:var(--lapis);box-shadow:0 0 0 4px var(--lapis-glow);outline:none}.ts-sel-trigger[disabled]{opacity:.45;cursor:not-allowed}.ts-sel-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ts-sel-ph{color:var(--ink-muted)}.ts-sel-chev{color:var(--ink-muted);transition:transform var(--duration-base) var(--ease-spring), color var(--duration-fast)}.ts-sel-open .ts-sel-chev{color:var(--lapis);transform:rotate(180deg)}.ts-sel-list{z-index:var(--z-dropdown);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transform-origin:top;max-height:296px;animation:ts-sel-in var(--duration-base) var(--ease-spring) both;outline:none;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.ts-sel-up{transform-origin:bottom;animation-name:ts-sel-in-up;top:auto;bottom:calc(100% + 6px)}.ts-sel-closing{animation:ts-sel-out .14s var(--ease-in) forwards;pointer-events:none}@keyframes ts-sel-in{0%{opacity:0;transform:translateY(-6px)scale(.96)}to{opacity:1;transform:none}}@keyframes ts-sel-in-up{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:none}}@keyframes ts-sel-out{to{opacity:0;transform:scale(.97)}}.ts-opt{align-items:center;gap:var(--space-3);padding:var(--space-2) 10px;border-radius:var(--radius-md);cursor:pointer;font:500 14px/20px var(--font-sans);color:var(--ink);animation:ts-opt-in var(--duration-slow) var(--ease-out) both;transition:background var(--duration-fast);display:flex}@keyframes ts-opt-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.ts-opt+.ts-opt{margin-top:2px}.ts-opt-active{background:var(--surface-sunken)}.ts-opt-selected{background:var(--lapis-soft);color:var(--lapis)}.ts-opt-selected.ts-opt-active{box-shadow:inset 0 0 0 1.5px var(--lapis)}.ts-opt-disabled{opacity:.45;cursor:not-allowed}.ts-opt-text{flex-direction:column;flex:1;min-width:0;display:flex}.ts-opt-label{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.ts-opt-desc{font:400 12px/16px var(--font-sans);color:var(--ink-muted)}.ts-opt-icon{border-radius:var(--radius-sm);background:var(--surface-sunken);width:30px;height:30px;color:var(--ink);font:800 14px/1 var(--font-display);transition:transform var(--duration-base) var(--ease-spring), background var(--duration-fast), color var(--duration-fast);flex:none;place-items:center;display:grid}.ts-opt-active .ts-opt-icon{transform:rotate(-6deg)scale(1.06)}.ts-opt-selected .ts-opt-icon{background:var(--lapis);color:var(--on-lapis)}.ts-sel-icon{background:var(--lapis);width:24px;height:24px;color:var(--on-lapis);font-size:12px}.ts-opt-check{width:16px;height:16px;color:var(--lapis);flex:none}.ts-opt-check path{stroke-dasharray:22;stroke-dashoffset:22px;transition:stroke-dashoffset var(--duration-base) var(--ease-out)}.ts-opt-selected .ts-opt-check path{stroke-dashoffset:0}.ts-check,.ts-radio,.ts-switch{align-items:center;gap:var(--space-3);font:400 15px/20px var(--font-sans);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;position:relative}.ts-check input,.ts-radio input,.ts-switch input{opacity:0;width:1px;height:1px;margin:0;position:absolute}.ts-check-box{box-sizing:border-box;border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:20px;height:20px;color:var(--on-lapis);transition:background var(--duration-fast), border-color var(--duration-fast), transform var(--duration-base) var(--ease-spring);flex:none;place-items:center;display:grid}.ts-check:hover .ts-check-box{border-color:var(--lapis)}.ts-check:active .ts-check-box{transform:scale(.85)}.ts-check-box svg{width:14px;height:14px}.ts-check-box path{stroke-dasharray:22;stroke-dashoffset:22px;transition:stroke-dashoffset var(--duration-base) var(--ease-out)}.ts-check input:checked+.ts-check-box{background:var(--lapis);border-color:var(--lapis);animation:ts-boing var(--duration-slow) var(--ease-spring)}.ts-check input:checked+.ts-check-box path{stroke-dashoffset:0;transition-delay:60ms}@keyframes ts-boing{0%{transform:scale(.8)}to{transform:scale(1)}}.ts-radio-group{gap:var(--space-3);border:0;flex-direction:column;margin:0;padding:0;display:flex}.ts-radio:has(.ts-radio-desc){align-items:flex-start}.ts-radio:has(.ts-radio-desc) .ts-radio-dot{margin-top:1px}.ts-radio-text{flex-direction:column;gap:2px;display:flex}.ts-radio-desc{color:var(--ink-muted);font-size:13px;line-height:18px}.ts-radio-group legend{font:600 14px/20px var(--font-sans);margin-bottom:var(--space-3);padding:0}.ts-radio-dot{box-sizing:border-box;border:1.5px solid var(--line-strong);border-radius:var(--radius-full);background:var(--surface);width:20px;height:20px;transition:border-color var(--duration-fast);flex:none;place-items:center;display:grid}.ts-radio-dot:after{content:"";border-radius:var(--radius-full);background:var(--lapis);width:10px;height:10px;transition:transform var(--duration-base) var(--ease-spring);transform:scale(0)}.ts-radio:hover .ts-radio-dot,.ts-radio input:checked+.ts-radio-dot{border-color:var(--lapis)}.ts-radio input:checked+.ts-radio-dot:after{transform:scale(1)}.ts-switch-track{border-radius:var(--radius-full);background:var(--line-strong);width:44px;height:26px;transition:background var(--duration-base) var(--ease-out);flex:none;position:relative;box-shadow:inset 0 1px 2px #0000001f}.ts-switch-track:after{content:"";border-radius:var(--radius-full);width:20px;height:20px;transition:transform var(--duration-base) var(--ease-spring), width var(--duration-fast) var(--ease-out);background:#fff;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.ts-switch:active .ts-switch-track:after{width:26px}.ts-switch input:checked+.ts-switch-track{background:var(--lapis)}.ts-switch input:checked+.ts-switch-track:after{transform:translate(18px)}.ts-switch:active input:checked+.ts-switch-track:after{transform:translate(12px)}.ts-check input:disabled~*,.ts-radio input:disabled~*,.ts-switch input:disabled~*{opacity:.45}.ts-badge{font:600 12px/16px var(--font-sans);padding:3px var(--space-2);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--ink);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.ts-badge-brand{background:var(--lapis-soft);color:var(--lapis)}.ts-badge-success{background:var(--success-soft);color:var(--success)}.ts-badge-warning{background:var(--saffron-soft);color:var(--warning)}.ts-badge-danger{background:var(--danger-soft);color:var(--danger)}.ts-badge-accent{background:var(--saffron);color:var(--on-saffron);box-shadow:2px 2px 0 0 var(--ink)}.ts-badge-dot:before{content:"";border-radius:var(--radius-full);background:currentColor;width:6px;height:6px}.ts-badge-live:before{animation:ts-pulse 1.8s var(--ease-out) infinite}.ts-avatar{border-radius:var(--radius-full);background:var(--lapis-soft);color:var(--lapis);font:700 14px/1 var(--font-sans);transition:transform var(--duration-base) var(--ease-spring), margin var(--duration-base) var(--ease-spring);flex:none;place-items:center;display:inline-grid;overflow:hidden}.ts-avatar[data-hue="1"]{background:var(--saffron-soft);color:var(--warning)}.ts-avatar[data-hue="2"]{background:var(--success-soft);color:var(--success)}.ts-avatar[data-hue="3"]{background:var(--lapis-deep);color:var(--on-lapis-deep)}.ts-avatar img{object-fit:cover;width:100%;height:100%}.ts-avatar-group{padding:4px;display:inline-flex}.ts-avatar-group .ts-avatar{box-shadow:0 0 0 2.5px var(--bg)}.ts-avatar-group .ts-avatar+.ts-avatar{margin-left:-10px}.ts-avatar-group:hover .ts-avatar+.ts-avatar{margin-left:4px}.ts-avatar-group .ts-avatar:hover{transform:translateY(-4px)}.ts-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-6);gap:var(--space-3);min-width:0;transition:transform var(--duration-slow) var(--ease-snap), box-shadow var(--duration-slow) var(--ease-snap), border-color var(--duration-fast);flex-direction:column;display:flex;position:relative;overflow:hidden}.ts-card-interactive{cursor:pointer}.ts-card-interactive:hover{box-shadow:var(--shadow-md);border-color:var(--line-strong);transform:translateY(-4px)}.ts-card-raised{box-shadow:var(--shadow-md);border-color:#0000}.ts-card-tile{border:1.5px solid var(--ink);box-shadow:var(--shadow-tile)}.ts-card-tile.ts-card-interactive:hover{box-shadow:var(--shadow-tile-lg);border-color:var(--ink);transform:translate(-4px,-4px)}.ts-card-eyebrow{font:500 12px/16px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.ts-card-title{font:700 22px/28px var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:0}.ts-card-body{font:400 15px/22px var(--font-sans);color:var(--ink-muted)}.ts-card-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.ts-card-motif{padding:var(--space-4);pointer-events:none;grid-template-columns:repeat(3,14px);gap:4px;display:grid;position:absolute;top:0;right:0}.ts-card-motif span{background:var(--lapis-soft);width:14px;height:14px;transition:transform var(--duration-slow) var(--ease-spring), background var(--duration-base);border-radius:3px}.ts-card-motif span:nth-child(3n){background:var(--lapis)}.ts-card-motif span.ts-odd{background:var(--saffron)}.ts-card-interactive:hover .ts-card-motif span{transform:translate(var(--dx,0), var(--dy,0)) rotate(var(--rot,0))}.ts-alert{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--lapis-soft);color:var(--ink);animation:ts-rise var(--duration-slow) var(--ease-out) both;align-items:flex-start;display:flex}.ts-alert>.ts-icon{width:20px;height:20px;color:var(--lapis);animation:ts-pop var(--duration-slow) var(--ease-spring) both;margin-top:1px;animation-delay:.12s}.ts-alert-success{background:var(--success-soft)}.ts-alert-success>.ts-icon{color:var(--success)}.ts-alert-warning{background:var(--saffron-soft)}.ts-alert-warning>.ts-icon{color:var(--warning)}.ts-alert-danger{background:var(--danger-soft)}.ts-alert-danger>.ts-icon{color:var(--danger)}.ts-alert-content{min-width:0;font:400 14px/20px var(--font-sans);flex:1}.ts-alert-title{margin-bottom:2px;font-weight:600;display:block}.ts-close{padding:var(--space-1);color:var(--ink-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--duration-fast), background var(--duration-fast), transform var(--duration-base) var(--ease-spring);background:0 0;border:0;margin:-4px;display:grid}.ts-close:hover{color:var(--ink);background:color-mix(in srgb, currentColor 12%, transparent);transform:rotate(90deg)}.ts-alert .ts-close{color:var(--lapis);opacity:.75}.ts-alert-success .ts-close{color:var(--success)}.ts-alert-warning .ts-close{color:var(--warning)}.ts-alert-danger .ts-close{color:var(--danger)}.ts-alert .ts-close:hover{opacity:1}.ts-tabs{gap:var(--space-4);flex-direction:column;display:flex}.ts-tablist{gap:var(--space-1);border-bottom:1px solid var(--line);scrollbar-width:none;display:flex;position:relative;overflow-x:auto}.ts-tab{font:600 14px/20px var(--font-sans);color:var(--ink-muted);padding:var(--space-2) var(--space-3) var(--space-3);cursor:pointer;border-radius:var(--radius-sm) var(--radius-sm) 0 0;white-space:nowrap;transition:color var(--duration-fast);background:0 0;border:0;position:relative}.ts-tab:hover,.ts-tab[aria-selected=true]{color:var(--ink)}.ts-tab-ink{background:var(--lapis);height:3px;transition:transform var(--duration-base) var(--ease-snap), width var(--duration-base) var(--ease-snap);border-radius:2px 2px 0 0;position:absolute;bottom:-1px;left:0}.ts-tabpanel{font:400 15px/22px var(--font-sans);color:var(--ink-muted);animation:ts-rise var(--duration-base) var(--ease-out)}.ts-table-wrap{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow-x:auto}.ts-table{border-collapse:collapse;width:100%;font:400 14px/20px var(--font-sans);font-variant-numeric:tabular-nums}.ts-table th{text-align:left;font:500 11px/16px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);background:var(--surface-sunken);padding:var(--space-3) var(--space-4)}.ts-table td{padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);color:var(--ink);transition:background var(--duration-fast)}.ts-table tbody tr{animation:ts-rise var(--duration-slow) var(--ease-out) both}.ts-table tbody tr:hover td{background:var(--bg)}.ts-table tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--lapis)}.ts-table .ts-num{text-align:right}.ts-progress{gap:var(--space-2);flex-direction:column;display:flex}.ts-progress-head{font:600 14px/20px var(--font-sans);justify-content:space-between;display:flex}.ts-progress-head span:last-child{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-weight:500}.ts-progress-track{border-radius:var(--radius-sm);background:var(--surface-sunken);height:10px;overflow:hidden}.ts-progress-bar{border-radius:var(--radius-sm);background-color:var(--lapis);height:100%;transition:width var(--duration-reveal) var(--ease-out);background-image:linear-gradient(45deg,#ffffff2e 25%,#0000 25% 50%,#ffffff2e 50% 75%,#0000 75%);background-size:24px 24px;animation:.8s linear infinite ts-stripes}.ts-progress-success .ts-progress-bar{background-color:var(--success);animation:none}.ts-progress-segmented .ts-progress-track{background:0 0;gap:4px;height:12px;display:grid;overflow:visible}.ts-progress-segmented .ts-seg{background:var(--surface-sunken);border-radius:var(--radius-xs);position:relative;overflow:hidden}.ts-progress-segmented .ts-seg:after{content:"";background:var(--lapis);transform-origin:0;transition:transform var(--duration-slow) var(--ease-out);transition-delay:calc(var(--i,0) * 90ms);position:absolute;inset:0;transform:scaleX(0)}.ts-progress-segmented .ts-seg-on:after{transform:scaleX(1)}.ts-progress-segmented .ts-seg-current:after{background:var(--saffron)}.ts-skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--surface-sunken) 0%, var(--surface-sunken) 40%, var(--bg) 50%, var(--surface-sunken) 60%, var(--surface-sunken) 100%);background-size:200% 100%;animation:1.6s linear infinite ts-shimmer;display:block}.ts-overlay{background:var(--overlay);-webkit-backdrop-filter:blur(6px);padding:var(--space-4);z-index:var(--z-overlay);animation:ts-fade var(--duration-slow) var(--ease-out);place-items:center;display:grid;position:fixed;inset:0}.ts-dialog{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:440px;padding:var(--space-6);gap:var(--space-3);box-sizing:border-box;animation:ts-dialog-in var(--duration-slow) var(--ease-spring);outline:none;flex-direction:column;display:flex}@keyframes ts-dialog-in{0%{opacity:0;transform:translateY(16px)scale(.94)}to{opacity:1;transform:none}}.ts-closing.ts-overlay{animation:ts-fade var(--duration-base) var(--ease-in) reverse forwards}.ts-closing .ts-dialog{animation:ts-dialog-out var(--duration-base) var(--ease-in) forwards}@keyframes ts-dialog-out{to{opacity:0;transform:translateY(8px)scale(.97)}}.ts-dialog-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.ts-dialog-title{font:700 22px/28px var(--font-display);letter-spacing:-.02em;margin:0}.ts-dialog-body{font:400 15px/22px var(--font-sans);color:var(--ink-muted)}.ts-dialog-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.ts-toast{gap:var(--space-3);background:var(--ink);color:var(--bg);padding:var(--space-3) var(--space-4) calc(var(--space-3) + 2px);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:380px;font:400 14px/20px var(--font-sans);animation:ts-toast-in var(--duration-slow) var(--ease-spring) both;align-items:flex-start;display:flex;position:relative;overflow:hidden}@keyframes ts-toast-in{0%{opacity:0;transform:translateY(24px)scale(.92)}to{opacity:1;transform:none}}.ts-toast>.ts-icon{width:18px;height:18px;color:var(--inverse-accent);margin-top:1px}.ts-toast-content{flex:1;min-width:0}.ts-toast-title{font-weight:600;display:block}.ts-toast-action{color:var(--inverse-accent);font:600 14px/20px var(--font-sans);cursor:pointer;background:0 0;border:0;padding:0}.ts-toast-action:hover{text-underline-offset:3px;text-decoration:underline}.ts-toast .ts-close{color:inherit;opacity:.7}.ts-toast .ts-close:hover{opacity:1;background:0 0}.ts-toast-timer{background:var(--inverse-accent);transform-origin:0;width:100%;height:2px;animation:linear forwards ts-timer;position:absolute;bottom:0;left:0}@keyframes ts-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.ts-anchor{display:inline-flex}.ts-float{z-index:var(--z-dropdown);animation:ts-float-in var(--duration-base) var(--ease-spring) both;outline:none}.ts-float[data-side=bottom]{transform-origin:0 0;--ts-from:translateY(-6px)}.ts-float[data-side=top]{transform-origin:0 100%;--ts-from:translateY(6px)}.ts-float[data-side=left]{transform-origin:100%;--ts-from:translateX(6px)}.ts-float[data-side=right]{transform-origin:0;--ts-from:translateX(-6px)}.ts-float[data-align=end]{transform-origin:100% 0}.ts-float-closing{animation:ts-float-out .14s var(--ease-in) forwards;pointer-events:none}@keyframes ts-float-in{0%{opacity:0;transform:var(--ts-from,translateY(-6px)) scale(.96)}to{opacity:1;transform:none}}@keyframes ts-float-out{to{opacity:0;transform:scale(.97)}}.ts-popover{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-4);box-sizing:border-box;max-width:min(360px,100vw - 16px);font:400 14px/20px var(--font-sans)}.ts-popover-title{font:700 16px/22px var(--font-display);letter-spacing:-.01em;margin-bottom:var(--space-2)}.ts-tooltip{background:var(--ink);color:var(--bg);font:600 12px/16px var(--font-sans);padding:6px var(--space-2);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;z-index:var(--z-toast);animation-duration:var(--duration-fast)}.ts-tooltip:after{content:"";border:5px solid #0000;position:absolute}.ts-tooltip[data-side=top]:after{border-top-color:var(--ink);margin-left:-5px;top:100%;left:50%}.ts-tooltip[data-side=bottom]:after{border-bottom-color:var(--ink);margin-left:-5px;bottom:100%;left:50%}.ts-tooltip[data-side=left]:after{border-left-color:var(--ink);margin-top:-5px;top:50%;left:100%}.ts-tooltip[data-side=right]:after{border-right-color:var(--ink);margin-top:-5px;top:50%;right:100%}.ts-tooltip[data-side]{transform-origin:50%}.ts-menu{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);min-width:220px;max-width:min(320px,100vw - 16px);box-shadow:var(--shadow-md);box-sizing:border-box;padding:6px}.ts-menu-item{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);font:500 14px/20px var(--font-sans);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;animation:ts-opt-in var(--duration-slow) var(--ease-out) both;transition:background var(--duration-fast), color var(--duration-fast);padding:7px 10px;display:flex}.ts-menu-item .ts-icon{color:var(--ink-muted);transition:transform var(--duration-base) var(--ease-spring), color var(--duration-fast)}.ts-menu-item-active{background:var(--lapis-soft);color:var(--lapis)}.ts-menu-item-active .ts-icon{color:var(--lapis);transform:scale(1.12)rotate(-6deg)}.ts-menu-item-danger,.ts-menu-item-danger .ts-icon{color:var(--danger)}.ts-menu-item-danger.ts-menu-item-active{background:var(--danger-soft);color:var(--danger)}.ts-menu-item-danger.ts-menu-item-active .ts-icon{color:var(--danger)}.ts-menu-item-disabled{opacity:.45;cursor:not-allowed}.ts-menu-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ts-menu-sep{background:var(--line);height:1px;margin:6px 4px}.ts-menu-label{font:500 11px/16px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);padding:8px 10px 4px}.ts-kbd{font:500 11px/16px var(--font-mono);color:var(--ink-muted);background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--radius-sm);text-align:center;border-bottom-width:2px;min-width:12px;padding:0 5px}.ts-menu-item-active .ts-kbd{color:var(--lapis);background:0 0;border-color:currentColor}.ts-combo{position:relative}.ts-combo .ts-input{padding-right:36px}.ts-combo-clear{width:28px;height:28px;color:var(--ink-muted);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--duration-fast), background var(--duration-fast);background:0 0;border:0;place-items:center;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.ts-combo-clear:hover{color:var(--ink);background:var(--surface-sunken)}.ts-combo-empty{padding:var(--space-4) var(--space-3);color:var(--ink-muted);font:400 14px/20px var(--font-sans);text-align:center}.ts-mark{background:var(--saffron-soft);color:inherit;box-shadow:inset 0 -2px 0 var(--saffron);border-radius:2px;padding:0 1px}.ts-accordion{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.ts-acc-item+.ts-acc-item{border-top:1px solid var(--line)}.ts-acc-heading{margin:0}.ts-acc-trigger{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-4) var(--space-5);text-align:left;font:600 15px/22px var(--font-sans);color:var(--ink);cursor:pointer;transition:background var(--duration-fast);background:0 0;border:0;display:flex}.ts-acc-trigger:hover{background:var(--bg)}.ts-acc-trigger:focus-visible{box-shadow:inset 0 0 0 2px var(--focus);outline:none}.ts-acc-trigger[disabled]{opacity:.45;cursor:not-allowed}.ts-acc-sign{border-radius:var(--radius-sm);background:var(--surface-sunken);width:28px;height:28px;color:var(--ink);transition:transform var(--duration-base) var(--ease-spring), background var(--duration-fast), color var(--duration-fast);flex:none;place-items:center;display:grid}.ts-acc-open .ts-acc-sign{background:var(--lapis);color:var(--on-lapis);transform:rotate(135deg)}.ts-acc-panel{transition:grid-template-rows var(--duration-slow) var(--ease-out);grid-template-rows:0fr;display:grid}.ts-acc-panel[data-open=true]{grid-template-rows:1fr}.ts-acc-inner{min-height:0;overflow:hidden}.ts-acc-panel[data-open=false] .ts-acc-inner{visibility:hidden;transition:visibility 0s linear var(--duration-slow)}.ts-acc-body{padding:0 var(--space-5) var(--space-5);font:400 15px/22px var(--font-sans);color:var(--ink-muted)}.ts-crumbs ol{align-items:center;gap:var(--space-1);font:500 14px/20px var(--font-sans);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ts-crumbs li{align-items:center;gap:var(--space-1);min-width:0;display:inline-flex}.ts-crumb{color:var(--ink-muted);border-radius:var(--radius-sm);transition:color var(--duration-fast), background var(--duration-fast);padding:2px 6px;text-decoration:none}.ts-crumb:hover{color:var(--ink);background:var(--surface-sunken)}.ts-crumb:focus-visible{box-shadow:0 0 0 2px var(--focus);outline:none}.ts-crumb-current{color:var(--ink);padding:2px 6px;font-weight:600}.ts-crumb-sep{color:var(--line-strong);width:14px;height:14px}.ts-crumb-more{border-radius:var(--radius-sm);background:var(--surface-sunken);width:28px;height:24px;color:var(--ink-muted);cursor:pointer;border:0;place-items:center;display:grid}.ts-crumb-more:hover{color:var(--ink)}.ts-pages{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.ts-page{min-width:36px;height:36px;padding:0 var(--space-2);border-radius:var(--radius-md);color:var(--ink);font:600 14px/1 var(--font-sans);font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--duration-fast), border-color var(--duration-fast), transform var(--duration-base) var(--ease-spring);background:0 0;border:1px solid #0000;place-items:center;display:inline-grid}.ts-page:hover:not([disabled]):not(.ts-page-current){background:var(--surface-sunken)}.ts-page:active:not([disabled]){transform:scale(.92)}.ts-page[disabled]{opacity:.4;cursor:not-allowed}.ts-page-step{border-color:var(--line);background:var(--surface)}.ts-page-current{background:var(--lapis);color:var(--on-lapis);box-shadow:2px 2px 0 var(--lapis-deep);animation:ts-boing var(--duration-slow) var(--ease-spring)}.ts-page-gap{text-align:center;min-width:24px;color:var(--ink-muted)}.ts-navbar{background:var(--surface);border-bottom:1px solid var(--line)}.ts-navbar-sticky{z-index:var(--z-sticky);position:sticky;top:0}.ts-navbar-row{align-items:center;gap:var(--space-6);height:64px;padding-inline:var(--space-6);display:flex}.ts-navbar-brand{align-items:center;gap:var(--space-2);font:800 19px/1 var(--font-display);letter-spacing:-.02em;flex:none;display:flex}.ts-navbar-brand a{color:inherit;align-items:center;gap:var(--space-2);text-decoration:none;display:inline-flex}.ts-navbar-links{align-items:center;gap:var(--space-1);flex:1;min-width:0;display:flex}.ts-navlink{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--ink-muted);font:600 14px/20px var(--font-sans);white-space:nowrap;transition:color var(--duration-fast), background var(--duration-fast);text-decoration:none;position:relative}.ts-navlink:hover{color:var(--ink);background:var(--surface-sunken)}.ts-navlink:focus-visible{box-shadow:0 0 0 2px var(--focus);outline:none}.ts-navlink[aria-current=page]{color:var(--ink)}.ts-navlink[aria-current=page]:after{content:"";left:var(--space-3);right:var(--space-3);background:var(--lapis);height:3px;animation:ts-ink-in var(--duration-slow) var(--ease-spring);border-radius:2px 2px 0 0;position:absolute;bottom:-13px}@keyframes ts-ink-in{0%{transform:scaleX(0)}to{transform:none}}.ts-navbar-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.ts-navbar-toggle{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;place-items:center;display:none}.ts-navbar-toggle .ts-icon{width:20px;height:20px}.ts-navbar-sheet{display:none}@media (max-width:767px){.ts-navbar-row{padding-inline:var(--space-4);gap:var(--space-3)}.ts-navbar-links{display:none}.ts-navbar-toggle{display:grid}.ts-navbar-has-links .ts-navbar-row .ts-navbar-actions{display:none}.ts-navbar-has-links .ts-navbar-toggle{margin-left:auto}.ts-navbar-sheet:not([hidden]){gap:var(--space-3);padding:var(--space-2) var(--space-4) var(--space-4);border-top:1px solid var(--line);animation:ts-rise var(--duration-slow) var(--ease-out);flex-direction:column;display:flex}.ts-navbar-sheet-links{flex-direction:column;gap:2px;display:flex}.ts-navbar-sheet-actions{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.ts-sheetlink{padding:var(--space-3);border-radius:var(--radius-md);color:var(--ink);font:600 16px/22px var(--font-sans);text-decoration:none}.ts-sheetlink[aria-current=page]{background:var(--lapis-soft);color:var(--lapis)}}.ts-sidebar{background:var(--surface);border-right:1px solid var(--line);box-sizing:border-box;width:260px;height:100%;transition:width var(--duration-slow) var(--ease-out);flex-direction:column;display:flex}.ts-sidebar-head{padding:var(--space-5) var(--space-4) var(--space-3)}.ts-sidebar-body{padding:var(--space-2) var(--space-3) var(--space-4);flex:1;overflow-y:auto}.ts-sidebar-foot{border-top:1px solid var(--line);padding:var(--space-3) var(--space-4)}.ts-side-title{font:500 11px/16px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);padding:var(--space-4) var(--space-3) var(--space-2);white-space:nowrap;overflow:hidden}.ts-side-list,.ts-side-sub{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.ts-side-sub{padding-left:var(--space-6);animation:ts-rise var(--duration-base) var(--ease-out);margin-top:2px;position:relative}.ts-side-sub:before{content:"";background:var(--line);width:1px;position:absolute;top:4px;bottom:4px;left:19px}.ts-side-link{align-items:center;gap:var(--space-3);width:100%;padding:7px var(--space-3);border-radius:var(--radius-md);color:var(--ink-muted);text-align:left;font:500 14px/20px var(--font-sans);cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast);box-sizing:border-box;background:0 0;border:0;text-decoration:none;display:flex}.ts-side-link:hover{background:var(--surface-sunken);color:var(--ink)}.ts-side-link:focus-visible{box-shadow:0 0 0 2px var(--focus);outline:none}.ts-side-link .ts-icon{transition:transform var(--duration-base) var(--ease-spring)}.ts-side-link:hover .ts-icon:first-child{transform:scale(1.1)}.ts-side-link[aria-current=page]{background:var(--lapis-soft);color:var(--lapis);font-weight:600}.ts-side-within{color:var(--ink)}.ts-side-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ts-side-badge{font:600 11px/16px var(--font-sans);border-radius:var(--radius-full);background:var(--surface-sunken);color:var(--ink-muted);padding:1px 6px}.ts-side-link[aria-current=page] .ts-side-badge{background:var(--lapis);color:var(--on-lapis)}.ts-side-chev{transition:transform var(--duration-base) var(--ease-spring)}.ts-side-link[aria-expanded=true] .ts-side-chev{transform:rotate(180deg)}.ts-sidebar-foot{align-items:center;gap:var(--space-2);display:flex}.ts-sidebar-foot-content{flex:1;min-width:0}.ts-sidebar-toggle{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:32px;height:32px;color:var(--ink-muted);cursor:pointer;transition:color var(--duration-fast), background var(--duration-fast), border-color var(--duration-fast);flex:none;place-items:center;margin-left:auto;display:grid}.ts-sidebar-toggle:hover{color:var(--ink);background:var(--surface-sunken);border-color:var(--line-strong)}.ts-sidebar-toggle .ts-icon{width:18px;height:18px;transition:transform var(--duration-base) var(--ease-spring)}.ts-sidebar-toggle:active .ts-icon{transform:scale(.85)}.ts-sidebar-collapsed .ts-sidebar-toggle .ts-icon{transform:scaleX(-1)}.ts-sidebar-collapsed .ts-sidebar-toggle:active .ts-icon{transform:scaleX(-1)scale(.85)}.ts-sidebar-collapsed{width:68px}.ts-sidebar-collapsed .ts-sidebar-head{padding-inline:var(--space-3);justify-content:center;display:flex}.ts-sidebar-collapsed .ts-sidebar-body{padding-inline:var(--space-2)}.ts-sidebar-collapsed .ts-side-label,.ts-sidebar-collapsed .ts-side-badge,.ts-sidebar-collapsed .ts-side-chev,.ts-sidebar-collapsed .ts-side-title,.ts-sidebar-collapsed .ts-side-sub,.ts-sidebar-collapsed .ts-sidebar-foot-content{display:none}.ts-sidebar-collapsed .ts-side-list+.ts-side-list{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line)}.ts-sidebar-collapsed .ts-side-link{justify-content:center;padding:9px 0}.ts-sidebar-collapsed .ts-side-link .ts-icon{width:18px;height:18px}.ts-sidebar-collapsed .ts-side-within{background:var(--lapis-soft);color:var(--lapis)}.ts-sidebar-collapsed .ts-sidebar-foot{justify-content:center;padding-inline:0}.ts-sidebar-collapsed .ts-sidebar-toggle{margin-left:0}.ts-side-anchor,.ts-side-anchor>.ts-anchor{width:100%;display:flex}.ts-sidebar .ts-anchor{display:flex}.ts-sidebar-collapsed .ts-side-list>li>.ts-anchor{width:100%}.ts-side-flyout{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--shadow-md);padding:6px}.ts-side-flyout .ts-side-title{padding:6px 10px}.ts-side-flyout .ts-side-link{animation:ts-opt-in var(--duration-slow) var(--ease-out) both}.ts-cmd-overlay{align-items:start;padding-top:min(18vh,140px)}.ts-cmd{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:560px;box-shadow:var(--shadow-lg);animation:ts-dialog-in var(--duration-slow) var(--ease-spring);flex-direction:column;display:flex;overflow:hidden}.ts-closing .ts-cmd{animation:ts-dialog-out var(--duration-base) var(--ease-in) forwards}.ts-cmd-search{align-items:center;gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid var(--line);display:flex}.ts-cmd-search>.ts-icon{width:20px;height:20px;color:var(--lapis)}.ts-cmd-input{min-width:0;height:56px;color:var(--ink);font:500 17px/24px var(--font-sans);background:0 0;border:0;outline:none;flex:1}.ts-cmd-input::placeholder{color:var(--ink-muted)}.ts-cmd-list{max-height:min(380px,55vh);padding:6px;overflow-y:auto}.ts-cmd-item{animation:none}.ts-cmd-go{opacity:0;transition:opacity var(--duration-fast), transform var(--duration-base) var(--ease-spring);transform:translate(-4px)}.ts-menu-item-active .ts-cmd-go{opacity:1;transform:none}.ts-cmd-empty{padding:var(--space-8) var(--space-4);text-align:center;color:var(--ink-muted);font:400 14px/20px var(--font-sans)}.ts-cmd-foot{gap:var(--space-4);padding:var(--space-2) var(--space-4);border-top:1px solid var(--line);background:var(--bg);font:400 12px/18px var(--font-sans);color:var(--ink-muted);display:flex}.ts-cmd-foot span{align-items:center;gap:4px;display:inline-flex}.ts-cal-pop{padding:var(--space-3)}.ts-cal{gap:var(--space-2);flex-direction:column;width:280px;max-width:100%;display:flex}.ts-cal-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.ts-cal-title{font:700 15px/22px var(--font-display);letter-spacing:-.01em}.ts-cal-nav{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:32px;height:32px;color:var(--ink);cursor:pointer;transition:background var(--duration-fast), transform var(--duration-base) var(--ease-spring);place-items:center;display:grid}.ts-cal-nav:hover:not([disabled]){background:var(--surface-sunken)}.ts-cal-nav:active:not([disabled]){transform:scale(.9)}.ts-cal-nav[disabled]{opacity:.4;cursor:not-allowed}.ts-cal-grid{flex-direction:column;gap:2px;display:flex}.ts-cal-next{animation:ts-cal-in-r var(--duration-slow) var(--ease-out)}.ts-cal-prev{animation:ts-cal-in-l var(--duration-slow) var(--ease-out)}@keyframes ts-cal-in-r{0%{opacity:0;transform:translate(16px)}}@keyframes ts-cal-in-l{0%{opacity:0;transform:translate(-16px)}}.ts-cal-row{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.ts-cal-dow{text-align:center;font:500 11px/24px var(--font-mono);color:var(--ink-muted)}.ts-cal-dow abbr{text-decoration:none}.ts-day{aspect-ratio:1;border-radius:var(--radius-sm);width:100%;color:var(--ink);font:500 14px/1 var(--font-sans);font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast), transform var(--duration-base) var(--ease-spring);background:0 0;border:0;place-items:center;display:grid;position:relative}.ts-day:hover:not([disabled]):not(.ts-day-selected){background:var(--surface-sunken)}.ts-day:focus-visible{box-shadow:0 0 0 2px var(--focus);z-index:1;outline:none}.ts-day-out{color:var(--ink-muted);opacity:.55}.ts-day[disabled]{opacity:.3;cursor:not-allowed;text-decoration:line-through}.ts-day-today:after{content:"";background:var(--saffron);border-radius:1px;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:5px;left:50%}.ts-day-selected{background:var(--lapis);color:var(--on-lapis);box-shadow:2px 2px 0 var(--lapis-deep);animation:ts-boing var(--duration-slow) var(--ease-spring)}.ts-day-selected.ts-day-today:after{background:var(--on-lapis)}.ts-day-marked:before{content:"";border-radius:var(--radius-full);background:var(--lapis);width:6px;height:6px;position:absolute;top:5px;right:5px}.ts-day-selected.ts-day-marked:before{background:var(--on-lapis)}.ts-toaster{right:var(--space-6);bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));z-index:var(--z-toast);align-items:flex-end;gap:var(--space-3);pointer-events:none;flex-direction:column;display:flex;position:fixed}.ts-toaster>*{pointer-events:auto}.ts-toast-leaving{animation:ts-toast-out var(--duration-base) var(--ease-in) forwards}@keyframes ts-toast-out{to{opacity:0;transform:translate(24px)scale(.96)}}@media (max-width:600px){.ts-toaster{left:var(--space-4);right:var(--space-4);align-items:stretch}}.ts-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ts-overlay-inline{position:absolute}.ts-mosaic{gap:var(--ts-gap,6px);padding:var(--ts-gap,6px);background:var(--tile-ground);border-radius:var(--radius-xl);isolation:isolate;display:grid;position:relative;overflow:hidden}.ts-mosaic-tile{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--tile-1);opacity:0;animation:ts-drop var(--duration-slow) var(--ease-spring) forwards;transition:translate var(--duration-base) var(--ease-spring), scale var(--duration-base) var(--ease-spring), background var(--duration-base);translate:var(--tx,0px) var(--ty,0px);scale:var(--s,1)}.ts-mosaic-tile[data-c="1"]{background:var(--tile-2)}.ts-mosaic-tile[data-c="2"]{background:var(--tile-3)}.ts-mosaic-tile[data-c="3"]{background:var(--tile-4)}.ts-mosaic-tile[data-c="4"]{background:var(--saffron);box-shadow:3px 3px 0 0 var(--saffron-deep)}.ts-mosaic-tile.ts-hot{background:var(--saffron)}.ts-mosaic-content{padding:var(--space-8);pointer-events:none;z-index:1;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.ts-mosaic-content>*{pointer-events:auto}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.ts-spin{animation:2s linear infinite ts-spin!important}}.ts-stack{flex-direction:column;min-width:0;display:flex}.ts-inline{min-width:0;display:flex}.ts-grid{min-width:0;display:grid}.ts-container{width:100%;padding-inline:max(var(--space-4), env(safe-area-inset-left,0px)) max(var(--space-4), env(safe-area-inset-right,0px));box-sizing:border-box;margin-inline:auto}@media (min-width:768px){.ts-container{padding-inline:var(--space-6)}}.ts-container-sm{max-width:640px}.ts-container-md{max-width:768px}.ts-container-lg{max-width:1024px}.ts-container-xl{max-width:1200px}.ts-container-full{max-width:none}.ts-divider{border:0;border-top:1px solid var(--line);width:100%;margin:0}.ts-divider-v{border-top:0;border-left:1px solid var(--line);align-self:stretch;width:0;height:auto;min-height:1em}.ts-divider-label{align-items:center;gap:var(--space-3);color:var(--ink-muted);font:500 12px/16px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;display:flex}.ts-divider-label:before,.ts-divider-label:after{content:"";border-top:1px solid var(--line);flex:1}.ts-spinner{vertical-align:middle;flex:none;grid-template-columns:1fr 1fr;gap:12%;display:inline-grid}.ts-spinner i{opacity:.25;animation:ts-spin-tile 1s var(--ease-out) infinite;background:currentColor;border-radius:20%}.ts-spinner i:nth-child(2){animation-delay:.25s}.ts-spinner i:nth-child(4){animation-delay:.5s}.ts-spinner i:nth-child(3){animation-delay:.75s}@keyframes ts-spin-tile{0%,to{opacity:.25;transform:scale(.8)}25%{opacity:1;transform:scale(1)}}.ts-spinner{color:var(--lapis)}.ts-empty{text-align:center;align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;display:flex}.ts-empty-tiles{margin-bottom:var(--space-3);grid-template-columns:repeat(3,14px);gap:4px;display:grid}.ts-empty-tiles span{background:var(--lapis-soft);width:14px;height:14px;animation:ts-drop var(--duration-slow) var(--ease-spring) both;border-radius:3px}.ts-empty-tiles span.ts-dim{background:var(--surface-sunken)}.ts-empty-tiles span.ts-odd{background:var(--saffron);box-shadow:2px 2px 0 var(--saffron-deep);animation-name:ts-odd-drop;transform:translate(3px,-3px)rotate(8deg)}@keyframes ts-odd-drop{0%{opacity:0;transform:translate(-10px,-20px)rotate(-40deg)}to{opacity:1;transform:translate(3px,-3px)rotate(8deg)}}.ts-empty-title{font:700 18px/24px var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:0}.ts-empty-desc{max-width:42ch;font:400 14px/20px var(--font-sans);color:var(--ink-muted);margin:0}.ts-empty-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.ts-textarea{resize:vertical;height:auto;min-height:88px;line-height:22px;font-family:var(--font-sans);padding-block:10px}.ts-textarea-auto{resize:none;overflow:hidden}.ts-count{font:500 12px/16px var(--font-mono);color:var(--ink-muted);font-variant-numeric:tabular-nums;align-self:flex-end}.ts-count-full{color:var(--warning)}.ts-slider-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);width:100%;display:flex}.ts-field-label:has(.ts-slider-head){display:block}.ts-slider-value{font:600 14px/20px var(--font-sans);color:var(--lapis);font-variant-numeric:tabular-nums}.ts-slider{align-items:center;height:28px;display:flex;position:relative}.ts-slider input{appearance:none;cursor:pointer;background:0 0;width:100%;height:28px;margin:0}.ts-slider input:focus{outline:none}.ts-slider input::-webkit-slider-runnable-track{border-radius:var(--radius-sm);background:linear-gradient(to right, var(--lapis) 0 var(--pct), var(--surface-sunken) var(--pct) 100%);height:8px}.ts-slider input::-moz-range-track{border-radius:var(--radius-sm);background:var(--surface-sunken);height:8px}.ts-slider input::-moz-range-progress{border-radius:var(--radius-sm);background:var(--lapis);height:8px}.ts-slider input::-webkit-slider-thumb{-webkit-appearance:none;border-radius:var(--radius-sm);background:var(--surface);border:2px solid var(--lapis);width:22px;height:22px;box-shadow:2px 2px 0 var(--lapis-deep);transition:transform var(--duration-base) var(--ease-spring);margin-top:-7px}.ts-slider input::-moz-range-thumb{border-radius:var(--radius-sm);background:var(--surface);border:2px solid var(--lapis);width:18px;height:18px;box-shadow:2px 2px 0 var(--lapis-deep)}.ts-slider input:hover::-webkit-slider-thumb{transform:scale(1.1)rotate(-6deg)}.ts-slider input:active::-webkit-slider-thumb{background:var(--lapis-soft);transform:scale(.95)}.ts-slider input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--focus)}.ts-slider input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--focus)}.ts-slider-disabled{opacity:.45}.ts-slider-disabled input{cursor:not-allowed}.ts-slider-marks{height:18px;margin:-2px 11px 0;position:relative}.ts-slider-marks span{font:500 11px/16px var(--font-mono);color:var(--ink-muted);white-space:nowrap;position:absolute;transform:translate(-50%)}.ts-slider-marks span.ts-mark-on{color:var(--ink)}.ts-segctl{border-radius:var(--radius-md);background:var(--surface-sunken);isolation:isolate;gap:2px;max-width:100%;padding:3px;display:inline-flex;position:relative}.ts-segctl-block{width:100%;display:flex}.ts-segctl-block .ts-segctl-item{flex:1}.ts-segctl-ink{border-radius:calc(var(--radius-md) - 2px);background:var(--surface);box-shadow:var(--shadow-sm), 0 0 0 1px var(--line);z-index:-1;transition:transform var(--duration-base) var(--ease-spring), width var(--duration-base) var(--ease-spring);position:absolute;top:3px;bottom:3px;left:0}.ts-segctl-item{justify-content:center;align-items:center;gap:var(--space-2);min-width:0;padding:0 var(--space-4);border-radius:calc(var(--radius-md) - 2px);height:34px;font:600 14px/20px var(--font-sans);color:var(--ink-muted);cursor:pointer;white-space:nowrap;transition:color var(--duration-fast);-webkit-user-select:none;user-select:none;display:inline-flex;position:relative}.ts-segctl-sm .ts-segctl-item{height:28px;padding:0 var(--space-3);font-size:13px}.ts-segctl-item input{opacity:0;width:1px;height:1px;margin:0;position:absolute}.ts-segctl-item:hover,.ts-segctl-on{color:var(--ink)}.ts-segctl-disabled{opacity:.45;cursor:not-allowed}.ts-segctl-item:has(input:focus-visible){box-shadow:0 0 0 2px var(--focus)}.ts-number{border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);height:44px;transition:border-color var(--duration-fast), box-shadow var(--duration-base) var(--ease-out);align-items:stretch;display:flex;overflow:hidden}.ts-number:hover{border-color:var(--ink-muted)}.ts-number:focus-within{border-color:var(--lapis);box-shadow:0 0 0 4px var(--lapis-glow)}.ts-invalid .ts-number{border-color:var(--danger)}.ts-number .ts-number-input{box-shadow:none;text-align:center;font-variant-numeric:tabular-nums;border:0;border-radius:0;flex:1;min-width:0;height:100%;animation:none}.ts-number .ts-number-input:focus-visible{box-shadow:none}.ts-number-btn{background:var(--bg);width:40px;color:var(--ink);cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast);border:0;flex:none;place-items:center;display:grid}.ts-number-btn:first-child{border-right:1px solid var(--line)}.ts-number-btn:last-child{border-left:1px solid var(--line)}.ts-number-btn:hover:not([disabled]){background:var(--lapis-soft);color:var(--lapis)}.ts-number-btn:active:not([disabled]) .ts-icon{transform:scale(.8)}.ts-number-btn .ts-icon{transition:transform var(--duration-instant)}.ts-number-btn[disabled]{color:var(--line-strong);cursor:not-allowed}.ts-number-suffix{padding-right:var(--space-3);color:var(--ink-muted);font:500 14px/20px var(--font-sans);align-self:center}.ts-number-disabled{opacity:.45}.ts-tags{box-sizing:border-box;border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);cursor:text;min-height:44px;transition:border-color var(--duration-fast), box-shadow var(--duration-base) var(--ease-out);flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;display:flex}.ts-tags:hover{border-color:var(--ink-muted)}.ts-tags:focus-within{border-color:var(--lapis);box-shadow:0 0 0 4px var(--lapis-glow)}.ts-invalid .ts-tags{border-color:var(--danger)}.ts-tag-list{margin:0;padding:0;list-style:none;display:contents}.ts-tag{border-radius:var(--radius-sm);background:var(--lapis-soft);height:28px;color:var(--lapis);font:600 13px/1 var(--font-sans);animation:ts-pop var(--duration-base) var(--ease-spring);align-items:center;gap:2px;padding:0 2px 0 10px;display:inline-flex}.ts-tag-x{width:22px;height:22px;color:inherit;cursor:pointer;opacity:.7;transition:opacity var(--duration-fast), background var(--duration-fast);background:0 0;border:0;border-radius:3px;place-items:center;display:grid}.ts-tag-x:hover{opacity:1;background:color-mix(in srgb, currentColor 14%, transparent)}.ts-tag-x:focus-visible{box-shadow:0 0 0 2px var(--focus);opacity:1;outline:none}.ts-tag-x .ts-icon{width:13px;height:13px}.ts-tags-input{min-width:120px;height:28px;color:var(--ink);font:400 15px/20px var(--font-sans);background:0 0;border:0;outline:none;flex:1;padding:0 4px}.ts-tags-input::placeholder{color:var(--ink-muted)}.ts-tags-disabled{opacity:.45;cursor:not-allowed}.ts-drop{align-items:center;gap:var(--space-4);padding:var(--space-5);border:1.5px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;transition:border-color var(--duration-fast), background var(--duration-fast), transform var(--duration-slow) var(--ease-snap), box-shadow var(--duration-slow) var(--ease-snap);display:flex}.ts-drop:hover{border-color:var(--lapis);background:var(--bg)}.ts-drop:has(input:focus-visible){box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--focus)}.ts-drop-over{border-style:solid;border-color:var(--ink);background:var(--lapis-soft);box-shadow:var(--shadow-tile);transform:translate(-3px,-3px)}.ts-drop-disabled{opacity:.45;cursor:not-allowed}.ts-drop-icon{flex:none;grid-template-columns:repeat(2,14px);gap:4px;display:grid}.ts-drop-icon i{background:var(--lapis);width:14px;height:14px;transition:transform var(--duration-slow) var(--ease-spring);border-radius:3px}.ts-drop-icon i:nth-child(2){background:var(--saffron);transform:translate(2px,-2px)}.ts-drop:hover .ts-drop-icon i:nth-child(2),.ts-drop-over .ts-drop-icon i:nth-child(2){transform:translate(5px,-6px)rotate(12deg)}.ts-drop-over .ts-drop-icon i:not(:nth-child(2)){transform:scale(.85)}.ts-drop-text{flex-direction:column;gap:2px;min-width:0;display:flex}.ts-drop-text b{font:600 15px/20px var(--font-sans);color:var(--ink)}.ts-drop-text span{font:400 13px/18px var(--font-sans);color:var(--ink-muted)}.ts-files{margin:var(--space-2) 0 0;flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.ts-file{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);font:500 14px/20px var(--font-sans);animation:ts-rise var(--duration-base) var(--ease-out);display:flex}.ts-file>.ts-icon{color:var(--lapis)}.ts-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ts-file-size{color:var(--ink-muted);font:500 12px/16px var(--font-mono);font-variant-numeric:tabular-nums}.ts-drawer-overlay{padding:0;display:flex}.ts-drawer-on-right{justify-content:flex-end}.ts-drawer-on-left{justify-content:flex-start}.ts-drawer-on-bottom{align-items:flex-end}.ts-drawer{background:var(--surface);box-shadow:var(--shadow-lg);box-sizing:border-box;outline:none;flex-direction:column;max-width:100%;display:flex}.ts-drawer-right,.ts-drawer-left{width:420px;height:100%}.ts-drawer-right{border-radius:var(--radius-xl) 0 0 var(--radius-xl);animation:ts-drawer-r var(--duration-slow) var(--ease-out)}.ts-drawer-left{border-radius:0 var(--radius-xl) var(--radius-xl) 0;animation:ts-drawer-l var(--duration-slow) var(--ease-out)}.ts-drawer-bottom{border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;height:60vh;max-height:100%;animation:ts-drawer-b var(--duration-slow) var(--ease-out)}@keyframes ts-drawer-r{0%{transform:translate(100%)}}@keyframes ts-drawer-l{0%{transform:translate(-100%)}}@keyframes ts-drawer-b{0%{transform:translateY(100%)}}.ts-closing .ts-drawer-right{animation:ts-drawer-r var(--duration-base) var(--ease-in) reverse forwards}.ts-closing .ts-drawer-left{animation:ts-drawer-l var(--duration-base) var(--ease-in) reverse forwards}.ts-closing .ts-drawer-bottom{animation:ts-drawer-b var(--duration-base) var(--ease-in) reverse forwards}.ts-drawer-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-6) var(--space-6) var(--space-4);border-bottom:1px solid var(--line);display:flex}.ts-drawer-heading{flex-direction:column;gap:4px;min-width:0;display:flex}.ts-drawer-desc{font:400 14px/20px var(--font-sans);color:var(--ink-muted);margin:0}.ts-drawer-body{padding:var(--space-6);font:400 15px/22px var(--font-sans);color:var(--ink);flex:1;overflow-y:auto}.ts-drawer-foot{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-6) calc(var(--space-4) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--bg);flex-wrap:wrap;display:flex}@media (max-width:600px){.ts-drawer-right,.ts-drawer-left{border-radius:0;width:100%}}.ts-stepper{container-type:inline-size}.ts-stepper ol{margin:0;padding:0;list-style:none;display:flex}.ts-stepper-horizontal ol{gap:var(--space-2)}.ts-stepper-horizontal .ts-step{flex-direction:column;flex:1;min-width:0;display:flex}.ts-stepper-horizontal .ts-step:before{content:"";background:var(--surface-sunken);height:4px;margin-bottom:var(--space-3);transition:background var(--duration-slow);border-radius:2px}.ts-stepper-horizontal .ts-step-complete:before{background:var(--lapis)}.ts-stepper-horizontal .ts-step-current:before{background:linear-gradient(to right, var(--saffron) 50%, var(--surface-sunken) 50%)}.ts-stepper-vertical ol{flex-direction:column}.ts-stepper-vertical .ts-step{padding-bottom:var(--space-5);position:relative}.ts-stepper-vertical .ts-step:not(:last-child):after{content:"";background:var(--line);border-radius:1px;width:2px;position:absolute;top:32px;bottom:4px;left:13px}.ts-stepper-vertical .ts-step-complete:not(:last-child):after{background:var(--lapis)}.ts-step-btn{align-items:flex-start;gap:var(--space-3);text-align:left;color:inherit;font:inherit;border-radius:var(--radius-sm);background:0 0;border:0;min-width:0;padding:0;display:flex}button.ts-step-btn{cursor:pointer}button.ts-step-btn:hover .ts-step-label{text-underline-offset:3px;text-decoration:underline}.ts-step-marker{border-radius:var(--radius-sm);width:28px;height:28px;font:700 13px/1 var(--font-sans);font-variant-numeric:tabular-nums;background:var(--surface);border:1.5px solid var(--line-strong);color:var(--ink-muted);transition:background var(--duration-base), color var(--duration-base), border-color var(--duration-base);flex:none;place-items:center;display:grid}.ts-step-marker svg{width:15px;height:15px}.ts-step-complete .ts-step-marker{background:var(--lapis);border-color:var(--lapis);color:var(--on-lapis);animation:ts-boing var(--duration-slow) var(--ease-spring)}.ts-step-current .ts-step-marker{background:var(--saffron);border-color:var(--ink);color:var(--on-saffron);box-shadow:2px 2px 0 var(--ink);animation:ts-boing var(--duration-slow) var(--ease-spring)}.ts-step-text{flex-direction:column;gap:2px;min-width:0;padding-top:3px;display:flex}.ts-step-label{font:600 14px/20px var(--font-sans);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ts-step-upcoming .ts-step-label{color:var(--ink-muted)}.ts-step-desc{font:400 12px/16px var(--font-sans);color:var(--ink-muted)}@container (max-width:520px){.ts-stepper-horizontal .ts-step-btn{gap:var(--space-2);flex-direction:column}.ts-stepper-horizontal .ts-step-text{padding-top:0}}@media (max-width:600px){.ts-stepper-horizontal .ts-step-text{display:none}.ts-stepper-horizontal .ts-step-current .ts-step-text{display:flex}}.ts-sort{border-radius:var(--radius-sm);color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;transition:color var(--duration-fast), background var(--duration-fast);background:0 0;border:0;align-items:center;gap:4px;margin:-4px -6px;padding:4px 6px;display:inline-flex}.ts-sort:hover{color:var(--ink);background:var(--line)}.ts-sort:focus-visible{box-shadow:0 0 0 2px var(--focus);outline:none}.ts-sort-on{color:var(--lapis)}.ts-sort-icon{width:14px;height:14px}.ts-sort-icon path{opacity:.35;transition:opacity var(--duration-fast)}.ts-sort-icon[data-dir=asc] .ts-sort-up,.ts-sort-icon[data-dir=desc] .ts-sort-down{opacity:1}.ts-num .ts-sort{flex-direction:row-reverse}.ts-table-check{width:44px;padding-right:0!important}.ts-table-check .ts-check{vertical-align:middle}.ts-check input:indeterminate+.ts-check-box{background:var(--lapis);border-color:var(--lapis)}.ts-check input:indeterminate+.ts-check-box path{stroke-dashoffset:0}.ts-table tbody tr.ts-row-selected td,.ts-table tbody tr.ts-row-selected:hover td{background:var(--lapis-soft)}.ts-table-sticky thead th{z-index:1;box-shadow:inset 0 -1px 0 var(--line);position:sticky;top:0}.ts-table-empty td{padding:var(--space-6)!important}
[data-brand=atelier]{--space-0-5:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-24:96px;--radius-xs:0px;--radius-sm:1px;--radius-md:2px;--radius-lg:2px;--radius-xl:4px;--radius-full:9999px;--z-dropdown:1000;--z-sticky:1100;--z-overlay:1300;--z-toast:1400;--duration-instant:80ms;--duration-fast:.14s;--duration-base:.22s;--duration-slow:.36s;--duration-stagger:40ms;--duration-reveal:.9s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-snap:cubic-bezier(.2, 0, 0, 1);--font-display:Fraunces, "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-sans:Manrope, "Helvetica Neue", system-ui, sans-serif;--font-mono:"DM Mono", ui-monospace, "SF Mono", monospace;--shell-raised:initial;--label-bg:initial;--label-surface:initial;--label-surface-sunken:initial;--label-line:initial;--label-line-strong:initial;--label-ink:initial;--label-ink-muted:initial;--label-lapis:initial;--label-lapis-hover:initial;--label-lapis-soft:initial;--label-on-lapis:initial;--label-success:initial;--label-success-soft:initial;--label-warning:initial;--label-saffron-soft:initial;--label-danger:initial;--label-danger-soft:initial;--label-on-danger:initial;--label-inverse-accent:initial;--label-focus:initial;--label-link:initial;--key-a:initial;--on-key-a:initial;--key-b:initial;--on-key-b:initial;--key-c:initial;--on-key-c:initial;--key-start:initial;--on-key-start:initial;--clay-purple:initial;--lcd:initial;--lcd-ink:initial;--crt:initial;--crt-ink:initial;--tape:initial;--lcd-green:initial}[data-brand=atelier],[data-brand=atelier][data-theme=light]{--bg:#f6f2eb;--surface:#fbf9f5;--surface-sunken:#ede7dd;--line:#e2dacd;--line-strong:#8b8172;--ink:#1d1b18;--ink-muted:#5d564c;--lapis:#1d1b18;--lapis-hover:#3a362f;--lapis-soft:#ebe5da;--lapis-deep:#0f0e0c;--lapis-glow:#1d1b181f;--on-lapis:#f6f2eb;--on-lapis-deep:#f6f2eb;--saffron:#9c4a2b;--saffron-deep:#7d3a21;--tile-ground:#ede7dd;--tile-1:#d9cfc0;--tile-2:#c4b7a4;--tile-3:#e6ddd0;--tile-4:#b3a48f;--saffron-soft:#f1e3d9;--on-saffron:#fbf9f5;--success:#3f6b4a;--success-soft:#e3ece4;--warning:#8a5a12;--danger:#a33a2f;--danger-soft:#f6e1dd;--on-danger:#fff;--inverse-accent:#e2b48f;--focus:#9c4a2b;--link:#8a3f22;--overlay:#12110f8c;--shadow-sm:none;--shadow-md:0 12px 32px -12px #1d1b182e;--shadow-lg:0 24px 64px -20px #1d1b1847;--shadow-glow:none;--shadow-tile:none;--shadow-tile-lg:0 18px 40px -18px #1d1b184d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){[data-brand=atelier]:not([data-theme=light]){--bg:#12110f;--surface:#1b1a17;--surface-sunken:#0c0b0a;--line:#2c2a26;--line-strong:#7c7568;--ink:#f2ede4;--ink-muted:#b2aa9d;--lapis:#f2ede4;--lapis-hover:#fff;--lapis-soft:#25231f;--lapis-deep:#d9d2c6;--lapis-glow:#f2ede424;--on-lapis:#12110f;--saffron:#d4906c;--saffron-deep:#b8734f;--saffron-soft:#2e211a;--on-saffron:#12110f;--success:#93c3a0;--success-soft:#1a2a1f;--warning:#e2b56a;--danger:#ef9a8f;--danger-soft:#33201c;--on-danger:#12110f;--inverse-accent:#9c4a2b;--focus:#d4906c;--link:#e0a07e;--overlay:#000000b3;--shadow-sm:none;--shadow-md:0 12px 32px -12px #000000b3;--shadow-lg:0 24px 64px -20px #000c;--shadow-glow:none;--shadow-tile:none;--shadow-tile-lg:0 18px 40px -18px #000c;--on-lapis-deep:#12110f;--tile-ground:#0c0b0a;--tile-1:#2c2a26;--tile-2:#3b3832;--tile-3:#22201c;--tile-4:#4a463e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-brand=atelier][data-theme=dark]{--bg:#12110f;--surface:#1b1a17;--surface-sunken:#0c0b0a;--line:#2c2a26;--line-strong:#7c7568;--ink:#f2ede4;--ink-muted:#b2aa9d;--lapis:#f2ede4;--lapis-hover:#fff;--lapis-soft:#25231f;--lapis-deep:#d9d2c6;--lapis-glow:#f2ede424;--on-lapis:#12110f;--saffron:#d4906c;--saffron-deep:#b8734f;--saffron-soft:#2e211a;--on-saffron:#12110f;--success:#93c3a0;--success-soft:#1a2a1f;--warning:#e2b56a;--danger:#ef9a8f;--danger-soft:#33201c;--on-danger:#12110f;--inverse-accent:#9c4a2b;--focus:#d4906c;--link:#e0a07e;--overlay:#000000b3;--shadow-sm:none;--shadow-md:0 12px 32px -12px #000000b3;--shadow-lg:0 24px 64px -20px #000c;--shadow-glow:none;--shadow-tile:none;--shadow-tile-lg:0 18px 40px -18px #000c;--on-lapis-deep:#12110f;--tile-ground:#0c0b0a;--tile-1:#2c2a26;--tile-2:#3b3832;--tile-3:#22201c;--tile-4:#4a463e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@scope([data-brand=atelier]) to ([data-brand]:not([data-brand=atelier])){:scope{font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;--at-caps:600 12px/16px var(--font-sans);--at-track:.16em}:scope :is(.display-2xl,.display-xl,.display-lg){letter-spacing:-.025em;font-weight:300}:scope .display-2xl{line-height:1.02}:scope :is(.heading-lg,.heading-md,.heading-sm),:scope :is(.ts-card-title,.ts-dialog-title,.ts-popover-title,.ts-empty-title,.ts-cal-title){letter-spacing:-.01em;font-weight:400}:scope .eyebrow{font:var(--at-caps);letter-spacing:var(--at-track);text-transform:uppercase}:scope .ts-card-eyebrow{font:var(--at-caps);letter-spacing:var(--at-track);color:var(--saffron);font-size:11px}:scope .ts-btn{font:var(--at-caps);letter-spacing:var(--at-track);text-transform:uppercase;border-radius:var(--radius-md);transition:background var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out)}:scope .ts-btn-lg{height:54px;padding:0 var(--space-8);font-size:12px}:scope .ts-btn-sm{height:36px;font-size:11px}:scope .ts-btn:active:not([disabled]){opacity:.85;transform:none}:scope :is(.ts-btn-primary,.ts-btn-tile,.ts-btn-danger):after,:scope .ts-ripple{display:none}:scope .ts-btn-primary{box-shadow:none}:scope .ts-btn-primary:hover:not([disabled]){box-shadow:none;transform:none}:scope .ts-btn-secondary{border:1px solid var(--ink);box-shadow:none;background:0 0}:scope .ts-btn-secondary:hover:not([disabled]){background:var(--ink);color:var(--bg);transform:none}:scope .ts-btn-ghost:hover:not([disabled]){text-underline-offset:6px;background:0 0;text-decoration:underline;text-decoration-thickness:1px}:scope .ts-btn-tile{box-shadow:none;border:0}:scope .ts-btn-tile:hover:not([disabled]){box-shadow:none;background:var(--saffron-deep);transform:none}:scope .ts-btn-tile:active:not([disabled]){background:var(--saffron-deep);transform:none}:scope .ts-btn-danger{box-shadow:none}:scope .ts-btn-danger:hover:not([disabled]){transform:none}:scope .ts-navbar{background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);border-bottom-color:var(--line)}:scope .ts-navbar-row{height:76px}:scope .ts-navbar-brand{font:400 22px/1 var(--font-display);letter-spacing:-.01em}:scope .ts-navlink{font:var(--at-caps);letter-spacing:var(--at-track);text-transform:uppercase;color:var(--ink-muted);font-size:11.5px}:scope .ts-navlink:hover{color:var(--ink);background:0 0}:scope .ts-navlink[aria-current=page]:after{left:var(--space-3);right:var(--space-3);background:var(--ink);border-radius:0;height:1px;bottom:-20px}:scope .ts-navbar-toggle{background:0 0;border-color:#0000}:scope .ts-card{box-shadow:none}:scope .ts-card-interactive:hover{box-shadow:none;border-color:var(--ink);transform:none}:scope .ts-card-raised{border-color:var(--line);background:var(--surface)}:scope .ts-card-tile{border:1px solid var(--ink);box-shadow:none}:scope .ts-card-tile.ts-card-interactive:hover{box-shadow:none;transform:none}:scope .ts-card-motif{display:none}:scope .ts-badge{font:var(--at-caps);letter-spacing:var(--at-track);text-transform:uppercase;background:0 0;border:1px solid;border-radius:0;padding:4px 10px;font-size:10.5px}:scope .ts-badge-accent{background:var(--saffron);border-color:var(--saffron);box-shadow:none}:scope .ts-field-label{font:var(--at-caps);letter-spacing:var(--at-track);text-transform:uppercase;color:var(--ink-muted);font-size:11px}:scope :is(.ts-input,.ts-sel-trigger){border:0;border-bottom:1px solid var(--line-strong);background:0 0;border-radius:0;padding-inline:0;font-size:16px}:scope .ts-textarea{padding-block:var(--space-2)}:scope :is(.ts-input,.ts-sel-trigger):hover{border-bottom-color:var(--ink-muted)}:scope :is(.ts-input,.ts-sel-trigger):focus-visible{border-bottom-color:var(--ink);box-shadow:0 1px 0 0 var(--ink)}:scope .ts-accordion{border:0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:0 0;border-radius:0}:scope .ts-acc-trigger{padding:var(--space-6) 0;font:400 21px/28px var(--font-display);letter-spacing:-.01em}:scope .ts-acc-trigger:hover{color:var(--saffron);background:0 0}:scope .ts-acc-sign{background:0 0;border-radius:0}:scope .ts-acc-open .ts-acc-sign{color:var(--ink);background:0 0;transform:rotate(45deg)}:scope .ts-acc-body{padding:0 0 var(--space-6);max-width:62ch;font-size:16px;line-height:26px}:scope .ts-avatar{background:var(--surface-sunken);color:var(--ink);font:400 15px/1 var(--font-display)}:scope :is(.ts-toast,.ts-dialog,.ts-popover,.ts-menu){border-radius:var(--radius-md)}:scope .ts-mosaic,:scope .ts-mosaic-tile{border-radius:0}:scope .ts-mosaic-tile[data-c="4"]{box-shadow:none}}

html{scroll-behavior:smooth;scroll-padding-top:96px}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);margin:0}a{color:inherit}img{display:block}.muted{color:var(--ink-muted)}.eyebrow{margin:0}.lead{color:var(--ink-muted);text-wrap:pretty;margin:0}.link-btn{text-decoration:none}.text-link{text-underline-offset:6px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.text-link:hover{color:var(--saffron)}.section{padding-block:var(--space-16)}@media (min-width:900px){.section{padding-block:var(--space-24)}}.section-rule{border-top:1px solid var(--line)}.section-head{gap:var(--space-3);margin-bottom:var(--space-10);display:grid}.section-head h2,.section-head h1{text-wrap:balance;margin:0}.section-head-row{gap:var(--space-4);margin-bottom:var(--space-10);flex-wrap:wrap;justify-content:space-between;align-items:end;display:flex}.section-head-row .section-head{margin:0}.title-hero{font-size:clamp(44px,7.4vw,104px);line-height:1}.title-xl{font-size:clamp(36px,5vw,64px);line-height:1.05}.frame{background:var(--surface-sunken);position:relative;overflow:hidden}.frame-portrait{aspect-ratio:4/5}.frame-landscape{aspect-ratio:3/2}.frame-square{aspect-ratio:1}.frame-wide{aspect-ratio:16/9}.frame img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.reveal{transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.reveal[data-reveal=waiting]{opacity:0;transform:translateY(28px)}@media (prefers-reduced-motion:reduce){.reveal,.reveal[data-reveal=waiting]{opacity:1;transition:none;transform:none}.frame img{transition:none}}body:after{content:"";z-index:2147483000;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}[data-theme=dark] body:after{opacity:.07}.site-nav{transition:transform .55s cubic-bezier(.2,.7,.1,1)}.site-nav.is-hidden{transform:translateY(-100%)}.brand{font-family:var(--font-display);letter-spacing:-.01em;text-decoration:none}@media (max-width:520px){.header-cta{display:none}}.split{gap:var(--space-10);align-items:center;display:grid}@media (min-width:900px){.split{gap:var(--space-16);grid-template-columns:1.15fr 1fr}.split-flip>:first-child{order:2}}.statement{gap:var(--space-6);display:grid}.statement h2{text-wrap:balance;margin:0}.work-grid{gap:var(--space-10) var(--space-8);display:grid}@media (min-width:900px){.work-grid{grid-template-columns:1fr 1fr}.work-grid-stagger>:nth-child(2n){margin-top:var(--space-24)}}.project{gap:var(--space-4);color:inherit;text-decoration:none;display:grid}.project:hover .frame img{transform:scale(1.04)}.project-meta{gap:var(--space-1);display:grid}.project-meta h3{margin:0}.project:focus-visible{outline:2px solid var(--focus);outline-offset:6px}.services{gap:var(--space-10) var(--space-6);display:grid}@media (min-width:760px){.services{grid-template-columns:repeat(3,1fr)}}.service{gap:var(--space-4);color:inherit;align-content:start;text-decoration:none;display:grid}.service:hover .frame img{transform:scale(1.04)}.service h3,.service p{margin:0}.quote{text-align:center;gap:var(--space-8);justify-items:center;max-width:960px;margin-inline:auto;display:grid}.quote blockquote{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin:0;font-size:clamp(28px,3.6vw,46px);font-weight:300;line-height:1.2}.quote figcaption{gap:var(--space-1);display:grid}.numbers{gap:var(--space-8);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:var(--space-10);display:grid}@media (min-width:760px){.numbers{grid-template-columns:repeat(3,1fr)}}.number strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:56px;font-weight:300;line-height:1;display:block}.number span{margin-top:var(--space-2);display:block}.page-head{padding-block:var(--space-16) var(--space-10);gap:var(--space-4);display:grid}.page-head h1{text-wrap:balance;margin:0}.filters{margin-bottom:var(--space-10);overflow-x:auto}.project-facts{gap:var(--space-6);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:var(--space-6);margin-block:var(--space-10);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.project-facts dt{margin-bottom:var(--space-1)}.project-facts dd{font-family:var(--font-display);margin:0;font-size:20px}.story{gap:var(--space-5);max-width:680px;font-size:18px;line-height:30px;display:grid}.story p{margin:0}.session{gap:var(--space-8);padding-block:var(--space-12);border-top:1px solid var(--line);align-items:center;display:grid}@media (min-width:900px){.session{gap:var(--space-16);grid-template-columns:1fr 1.1fr}.session:nth-child(2n)>:first-child{order:2}}.session-body{gap:var(--space-4);display:grid}.session-body h2{margin:0}.session-price{font-family:var(--font-display);font-size:22px}.session ul{margin:var(--space-2) 0 var(--space-4);gap:var(--space-2);padding:0;list-style:none;display:grid}.session li{padding-left:var(--space-5);position:relative}.session li:before{content:"";background:var(--ink);width:10px;height:1px;position:absolute;top:.7em;left:0}.faq{max-width:860px}.about-body{gap:var(--space-5);font-size:18px;line-height:30px;display:grid}.about-body p{margin:0}.press{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.press li{border-top:1px solid var(--line);padding-top:var(--space-3)}.contact{gap:var(--space-12);display:grid}@media (min-width:900px){.contact{gap:var(--space-16);grid-template-columns:1fr 1.25fr}}.contact-details{gap:var(--space-5);align-content:start;display:grid}.contact-details dl{gap:var(--space-5);margin:0;display:grid}.contact-details dd{margin:var(--space-1) 0 0;font-size:17px}.form-row{gap:var(--space-6);display:grid}@media (min-width:640px){.form-row-2{grid-template-columns:1fr 1fr}}.footer{border-top:1px solid var(--line);padding-block:var(--space-16) var(--space-8)}.footer-cta{gap:var(--space-6);padding-bottom:var(--space-16);margin-bottom:var(--space-12);border-bottom:1px solid var(--line);justify-items:start;display:grid}.footer-cta h2{max-width:14ch;margin:0;font-size:clamp(40px,6vw,80px);line-height:1.02}.footer-grid{gap:var(--space-8);display:grid}@media (min-width:760px){.footer-grid{grid-template-columns:1.6fr repeat(3,1fr)}}.footer-grid .brand{font-size:24px}.footer-grid p{margin:var(--space-3) 0 0;line-height:22px}.footer-head{font:600 11px/16px var(--font-sans);letter-spacing:.16em;text-transform:uppercase;margin:0}.footer ul{margin:var(--space-3) 0 0;gap:var(--space-2);padding:0;list-style:none;display:grid}.footer a:not(.ts-btn){color:var(--ink-muted);text-decoration:none}.footer a:not(.ts-btn):hover{color:var(--ink)}.footer-base{margin-top:var(--space-12);gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.mode-switch{gap:var(--space-3);display:inline-flex}.mode-switch button{color:var(--ink-muted);font:600 11px/16px var(--font-sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:0}.mode-switch button[aria-pressed=true]{color:var(--ink);text-underline-offset:5px;text-decoration:underline}.mode-switch button:focus-visible{outline:2px solid var(--focus);outline-offset:4px}@keyframes rise{to{transform:none}}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}}.page-enter-go{animation:page-in .7s var(--ease-film) both}@keyframes page-in{0%{opacity:0}}.word-rise{text-wrap:balance;margin:0}.wr{vertical-align:top;margin:-.12em -.16em -.28em -.04em;padding:.12em .16em .28em .04em;display:inline-block;overflow:hidden}.wr>span{animation:rise 1.1s var(--ease-film) forwards;display:inline-block;transform:translateY(108%)}.word-rise em{font-style:italic}.rise-late{animation:fade-up 1s var(--ease-film) .45s both}.title-giant{font:300 clamp(56px, 11vw, 176px)/.9 var(--font-display);letter-spacing:-.035em;font-variation-settings:"opsz" 144}.title-giant-sm{font-size:clamp(48px,7vw,112px)}.page-head-xl{padding-block:var(--space-16) var(--space-12);gap:var(--space-6)}@media (min-width:900px){.page-head-xl{padding-top:var(--space-24)}}.reveal.reveal-mask[data-reveal=waiting]{opacity:1;transform:none}.reveal-mask .frame{clip-path:inset(0);transition:clip-path 1.3s cubic-bezier(.76,0,.24,1)}.reveal-mask .frame img{transition:transform 1.8s var(--ease-film)}.reveal-mask[data-reveal=waiting] .frame{clip-path:inset(100% 0 0)}.reveal-mask[data-reveal=waiting] .frame img{transform:scale(1.2)}.parallax img{transform:translate3d(0, calc((var(--p) - .5) * -8%), 0) scale(1.12);will-change:transform}.work-tools{justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-10);flex-wrap:wrap;display:flex}.wi{--x:0px;--y:0px;position:relative}.wi-list{border-top:1px solid var(--line-strong);margin:0;padding:0;list-style:none}.wi-row{gap:var(--space-2) var(--space-6);padding:var(--space-6) 0;border-bottom:1px solid var(--line);color:inherit;transition:color .4s, padding .5s var(--ease-film);grid-template-columns:48px 1fr;align-items:baseline;text-decoration:none;display:grid}@media (min-width:900px){.wi-row{grid-template-columns:64px minmax(0,1.6fr) 1fr 1.2fr 64px}}.wi-title{font:300 clamp(34px, 4.6vw, 72px)/1 var(--font-display);letter-spacing:-.035em;transition:transform .6s var(--ease-film)}.wi-cat,.wi-place,.wi-year{grid-column:2}@media (min-width:900px){.wi-cat,.wi-place,.wi-year{grid-column:auto}.wi-year{text-align:right}}.wi-num{color:var(--saffron)}.wi[data-hovering] .wi-row{color:var(--ink-muted)}.wi[data-hovering] .wi-row:hover,.wi-row:focus-visible{color:var(--ink)}.wi-row:hover .wi-title{transform:translate(16px)}.wi-row:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.wi-preview{aspect-ratio:4/5;pointer-events:none;z-index:2;width:clamp(220px,22vw,320px);transform:translate(calc(var(--x) + 32px), calc(var(--y) - 50%));transition:transform .5s var(--ease-film);position:absolute;top:0;left:0}.wi-shot{clip-path:inset(50%);transition:clip-path .6s cubic-bezier(.76,0,.24,1);position:absolute;inset:0;overflow:hidden}.wi-shot[data-on]{clip-path:inset(0)}@media not ((hover:hover) and (pointer:fine)){.wi-preview{display:none}}.story-cover{height:86svh}.story-cover img{object-position:50% 30%}.project-facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.story{max-width:720px}.story p:first-child:first-letter{float:left;font:300 5.4em/.8 var(--font-display);color:var(--saffron);margin:.06em .12em 0 0}.gallery{margin-block:var(--space-16) var(--space-24)}@media (min-width:760px){.gallery{columns:2;column-gap:var(--space-6)}}.gallery-item{break-inside:avoid;margin-bottom:var(--space-6)}.frame-natural{aspect-ratio:auto}.frame-natural img{display:block}.story-cover-tall{aspect-ratio:4/5;width:min(100%,72svh);margin-inline:auto}.next-story{min-height:80svh;color:var(--photo-ink);isolation:isolate;place-items:center;text-decoration:none;display:grid;position:relative;overflow:hidden}.next-story-photo{z-index:-1;position:absolute;inset:0}.next-story-photo:after{content:"";background:#0c0a0873;transition:background .6s;position:absolute;inset:0}.next-story-photo img{transition:transform 1.6s var(--ease-film)}.next-story:hover .next-story-photo img{transform:scale(1.06)}.next-story:hover .next-story-photo:after{background:#0c0a084d}.next-story-text{justify-items:center;gap:var(--space-4);text-align:center;padding:var(--space-6);display:grid}.next-story-title{font:300 clamp(52px, 9vw, 150px)/.92 var(--font-display);letter-spacing:-.045em}.next-story .eyebrow{color:#fbf9f5d9}.session-jump{gap:var(--space-2) var(--space-8);padding-bottom:var(--space-10);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.session-jump a{font:300 24px/1.2 var(--font-display);text-decoration:none}.session-jump a:hover{color:var(--saffron)}.session{padding-block:var(--space-16)}.session-title{margin:var(--space-2) 0 0;font:300 clamp(48px, 6vw, 96px)/.95 var(--font-display);letter-spacing:-.04em}.session-price{font:italic 300 clamp(26px, 2.6vw, 36px)/1.2 var(--font-display);color:var(--saffron);margin:0}.session-text{max-width:42ch;margin:0;font-size:18px;line-height:28px}.process{gap:var(--space-8);margin:0;padding:0;list-style:none;display:grid}@media (min-width:760px){.process{gap:var(--space-6);grid-template-columns:repeat(4,1fr)}}.process-step{border-top:1px solid var(--ink);padding-top:var(--space-5);gap:var(--space-3);align-content:start;display:grid}.process-step h3,.process-step p{margin:0}.process-num{font:italic 300 44px/1 var(--font-display);color:var(--saffron)}.about-hero .frame{max-height:82svh}.about-columns{gap:var(--space-8);color:var(--ink-muted);font-size:18px;line-height:30px;display:grid}@media (min-width:900px){.about-columns{grid-template-columns:repeat(3,1fr)}}.about-columns p{margin:0}.section-tight-top{padding-top:var(--space-16)}.about-press-label{text-align:center;margin-bottom:var(--space-6)}.next-steps{margin:0 0 var(--space-6);gap:var(--space-6);padding:0;list-style:none;display:grid}.next-steps li{gap:var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--line);grid-template-columns:64px 1fr;align-items:start;display:grid}.next-steps strong{margin-bottom:var(--space-1);font-weight:600;display:block}.contact-form{padding-top:var(--space-2)}@media (prefers-reduced-motion:reduce){.wr>span,.rise-late,.page-enter-go{animation:none;transform:none}.parallax img{transform:none}.reveal-mask .frame,.reveal-mask .frame img,.wi-preview,.wi-shot{transition:none}}
:root{--ease-film:cubic-bezier(.2, .7, .1, 1);--photo-ink:#fbf9f5}.home{--intro:1.35s}html[data-seen] .home{--intro:.12s}.preloader{z-index:2147482000;background:var(--ink);color:var(--bg);pointer-events:none;place-items:center;animation:.95s cubic-bezier(.76,0,.24,1) 1.15s forwards curtain;display:grid;position:fixed;inset:0}.preloader-name{font:300 clamp(36px, 6vw, 84px)/1 var(--font-display);letter-spacing:-.02em;margin:-.1em -.14em -.24em;padding:.1em .14em .24em;display:flex;overflow:hidden}.preloader-name>span{animation:rise .8s var(--ease-film) forwards;display:inline-block;transform:translateY(110%)}.preloader-line{background:var(--saffron);transform-origin:0;width:100%;height:2px;animation:1.15s cubic-bezier(.6,0,.2,1) forwards grow;position:absolute;bottom:0;left:0;transform:scaleX(0)}html[data-seen] .preloader{display:none}@keyframes curtain{to{transform:translateY(-100%)}}@keyframes grow{to{transform:scaleX(1)}}.hero-scene{--q:min(1, calc(var(--p) / .7));height:250svh;margin-top:-77px;position:relative}.hero-stage{height:100svh;position:sticky;top:0;overflow:hidden}.hero-window{--t:57%;--s:31%;--b:9%;clip-path:inset(calc((1 - var(--q)) * var(--t)) calc((1 - var(--q)) * var(--s)) calc((1 - var(--q)) * var(--b)) calc((1 - var(--q)) * var(--s)) round calc((1 - var(--q)) * 6px));will-change:clip-path;position:absolute;inset:0}.hero-window img{transform:scale(calc(1.3 - var(--q) * .3));will-change:transform}.hero-window:after{content:"";opacity:var(--q);background:linear-gradient(#0c0a0840,#0c0a0899);position:absolute;inset:0}@media (max-width:760px){.hero-window{--t:56%;--s:6%;--b:4%}}.hero-copy{padding:calc(77px + clamp(24px, 5vh, 56px)) var(--space-4) 0;text-align:center;justify-items:center;gap:var(--space-4);transform:translateY(calc(var(--q) * -22vh));opacity:calc(1 - var(--q) * 2);display:grid;position:absolute;inset:0 0 auto}.hero-title{font:300 clamp(46px, min(8vw, 13.5svh), 136px)/.9 var(--font-display);letter-spacing:-.045em;font-variation-settings:"opsz" 144;color:var(--ink);margin:0}.hero-title em,.statement-text em,.band-text em,.hero-caption-text em,.hw-head em,.marquee-item{font-style:italic}.hero-line{margin:-.1em -.16em -.26em;padding:.1em .16em .26em;display:block;overflow:hidden}.hero-line>span{animation:rise 1.2s var(--ease-film) forwards;display:inline-block;transform:translateY(105%)}.hero-caption{--c:clamp(0, calc((var(--p) - .6) * 5), 1);box-sizing:border-box;width:min(1200px,100% - 32px);color:var(--photo-ink);gap:var(--space-5);opacity:var(--c);transform:translateY(calc((1 - var(--c)) * 40px));visibility:hidden;margin-inline:auto;display:grid;position:absolute;bottom:clamp(32px,9vh,96px);left:0;right:0}@media (min-width:768px){.hero-caption{padding-inline:var(--space-6)}}.hero-scene[data-step="1"] .hero-caption{visibility:visible}.hero-caption .eyebrow{color:#fbf9f5cc}.hero-caption-text{max-width:18ch;font:300 clamp(36px, 5vw, 76px)/1.02 var(--font-display);letter-spacing:-.03em;margin:0}.hero-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.hero-actions .ts-btn.ts-btn-primary{background:var(--photo-ink);color:#1d1b18;border-color:var(--photo-ink)}.hero-actions .ts-btn.ts-btn-secondary{color:var(--photo-ink);background:0 0;border:1px solid #fbf9f5b3}.hero-actions .ts-btn.ts-btn-secondary:hover{background:var(--photo-ink);color:#1d1b18}.hero-cue{color:var(--ink-muted);opacity:calc(1 - var(--q) * 5);justify-items:center;gap:8px;display:grid;position:absolute;bottom:14px;left:50%;translate:-50%}.hero-cue:after{content:"";transform-origin:top;width:1px;height:28px;animation:cue 2s var(--ease-film) infinite;background:currentColor}@keyframes cue{0%{transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}.statement-scene{height:240svh}.statement-stage{align-items:center;height:100svh;display:grid;position:sticky;top:0}.statement-inner{gap:var(--space-8);justify-items:start;width:min(1120px,100% - 32px);margin-inline:auto;display:grid}.statement-text{font:300 clamp(30px, 4.6vw, 70px)/1.1 var(--font-display);letter-spacing:-.025em;text-wrap:pretty;margin:0}.sw{opacity:clamp(.13, calc(var(--p) * 1.3 * var(--n) - var(--i)), 1)}.statement-text em{color:var(--saffron)}.hw{position:relative}.hw-stage{--cx:0px;--cy:0px;align-content:center;gap:var(--space-10);padding-block:var(--space-16);grid-template-columns:minmax(0,1fr);display:grid;position:relative}.hw[data-pinned] .hw-stage{box-sizing:border-box;height:100svh;padding-block:var(--space-12) var(--space-8);position:sticky;top:0;overflow:hidden}.hw-head{box-sizing:border-box;justify-content:space-between;align-items:end;gap:var(--space-4);flex-wrap:wrap;width:min(1200px,100% - 32px);margin-inline:auto;display:flex}@media (min-width:768px){.hw-head{padding-inline:var(--space-6)}}.hw-head .eyebrow{flex-basis:100%}.hw-head h2{margin:0}.hw-track{--h:min(54svh, 560px);scroll-snap-type:x mandatory;scrollbar-width:none;align-items:flex-start;gap:clamp(20px,3vw,48px);padding-inline:max(16px,50vw - 576px);display:flex;overflow-x:auto}.hw-track::-webkit-scrollbar{display:none}.hw[data-pinned] .hw-track{scroll-snap-type:none;transform:translate3d(calc(var(--p) * var(--dist,0px) * -1), 0, 0);will-change:transform;overflow:visible}.hw-card{width:calc(var(--h) * .8);gap:var(--space-4);color:inherit;scroll-snap-align:start;flex:none;text-decoration:none;display:grid}.hw-card:nth-child(2n){margin-top:6svh}.hw-card-wide{width:calc(var(--h) * 1.3)}.hw-frame{height:var(--h)}.hw-card-wide .hw-frame{height:calc(var(--h) * .86)}.hw-card:hover .frame img{transform:scale(1.05)}.hw-meta{column-gap:var(--space-4);grid-template-columns:auto 1fr;align-items:baseline;display:grid}.hw-meta h3{margin:0}.hw-meta .muted{grid-column:2}.hw-num{color:var(--saffron)}.hw-progress{background:var(--line);width:min(1152px,100% - 32px);height:1px;margin-inline:auto;display:none}.hw[data-pinned] .hw-progress{display:block}.hw-progress span{background:var(--ink);height:100%;transform:scaleX(var(--p));transform-origin:0;display:block}.hw-cursor{display:none}@media (hover:hover) and (pointer:fine){.hw-cursor{z-index:3;background:var(--ink);width:92px;height:92px;color:var(--bg);font:600 11px/1 var(--font-sans);letter-spacing:.16em;text-transform:uppercase;pointer-events:none;transform:translate(calc(var(--cx) - 50%), calc(var(--cy) - 50%)) scale(0);transition:transform .45s var(--ease-film);border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0}.hw-stage:has(.hw-card:hover) .hw-cursor{transform:translate(calc(var(--cx) - 50%), calc(var(--cy) - 50%)) scale(1)}}@media (max-width:760px){.hw-track{--h:52svh}.hw-card:nth-child(2n){margin-top:0}.hw-card-wide{width:min(86vw, calc(var(--h) * 1.3))}.hw-card-wide .hw-frame{aspect-ratio:3/2;height:auto}}.marquee{border-block:1px solid var(--line);padding-block:var(--space-8);overflow:hidden}.marquee-track{width:max-content;animation:48s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-row{display:flex}.marquee-item{white-space:nowrap;font:300 clamp(56px, 9vw, 150px)/1 var(--font-display);letter-spacing:-.035em;align-items:center;gap:.55em;padding-inline:.28em;display:inline-flex}.marquee-item:nth-child(2n){color:#0000;-webkit-text-stroke:1px var(--ink)}.marquee-dot{color:var(--saffron);-webkit-text-stroke:0;font-size:.28em;font-style:normal}@keyframes marquee{to{transform:translate(-50%)}}.ss{padding-block:var(--space-24) var(--space-16)}.ss-head,.ss-grid{box-sizing:border-box;width:min(1200px,100% - 32px);margin-inline:auto}@media (min-width:768px){.ss-head,.ss-grid{padding-inline:var(--space-6)}}.ss-head{gap:var(--space-3);display:grid}.ss-head h2{margin:0}.ss-grid{gap:var(--space-16);grid-template-columns:1fr 1fr;display:grid}.ss-item{justify-content:center;align-items:flex-start;gap:var(--space-4);opacity:.22;min-height:82svh;transition:opacity .7s var(--ease-film);flex-direction:column;display:flex}.ss-item[data-active]{opacity:1}.ss-title{font:300 clamp(52px, 7vw, 112px)/.95 var(--font-display);letter-spacing:-.04em;margin:0}.ss-body{max-width:34ch;margin:0;font-size:18px;line-height:28px}.ss-inline{display:none}.ss-stack{height:76svh;position:sticky;top:12svh;overflow:hidden}.ss-photo{clip-path:inset(100% 0 0);transition:clip-path 1.1s cubic-bezier(.76,0,.24,1);position:absolute;inset:0}.ss-photo img{transition:transform 1.6s var(--ease-film);transform:scale(1.18)}.ss-photo:is([data-state=on],[data-state=past]){clip-path:inset(0)}.ss-photo[data-state=on] img{transform:scale(1)}@media (max-width:899px){.ss-grid{grid-template-columns:1fr;gap:0}.ss-media{display:none}.ss-inline{width:100%;margin-bottom:var(--space-4);display:block}.ss-item{opacity:1;min-height:0;padding-block:var(--space-8)}}.band{height:115svh;color:var(--photo-ink);isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.band-photo{z-index:-1;transform:translate3d(0, calc((var(--p) - .5) * 26%), 0);will-change:transform;position:absolute;inset:-18% 0}.band-photo:after{content:"";background:#0c0a0861;position:absolute;inset:0}.band-text{padding-inline:var(--space-4);text-align:center;max-width:15ch;color:inherit;margin:0;font-size:clamp(42px,6.4vw,104px);line-height:1}@media (prefers-reduced-motion:reduce){.preloader{display:none}.hero-line>span{animation:none;transform:none}.hero-scene{height:auto}.hero-stage{position:relative}.hero-cue:after,.marquee-track{animation:none}.statement-scene{height:auto}.statement-stage{height:auto;padding-block:var(--space-24);position:relative}.ss-photo,.ss-photo img,.ss-item{transition:none}}
