@import "https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Space+Grotesk:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--font-weight-semibold:600;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}:root{--lcd:oklch(91.7% .08 205.041);--lcd-secondary:oklch(95.3% .051 180.801);--lcd-foreground:oklch(21.03% .0059 285.89);--brand:oklch(66.78% .2232 36.66);--brand-foreground:oklch(15% .03 36.66);--accent:oklch(27% .006 255);--accent-foreground:oklch(98.5% .002 255);--background:oklch(92.5% .004 255);--border:oklch(82% .006 255);--danger:oklch(60% .22 25);--danger-foreground:oklch(99.11% 0 0);--default:oklch(91% .005 255);--default-foreground:oklch(20% .006 255);--field-background:oklch(98.5% .002 255);--field-border:oklch(82% .006 255);--field-border-width:1px;--field-foreground:oklch(20% .006 255);--field-placeholder:oklch(43% .008 255);--focus:var(--brand);--foreground:oklch(20% .006 255);--muted:oklch(43% .008 255);--overlay:oklch(99% .002 255);--overlay-foreground:oklch(20% .006 255);--segment:oklch(93% .004 255);--segment-foreground:oklch(20% .006 255);--separator:oklch(85% .006 255);--success:oklch(78% .2 145);--success-foreground:oklch(18% .045 145);--surface:oklch(99% .002 255);--surface-foreground:oklch(20% .006 255);--surface-secondary:oklch(96.5% .003 255);--surface-secondary-foreground:oklch(20% .006 255);--surface-tertiary:oklch(90% .005 255);--surface-tertiary-foreground:oklch(20% .006 255);--warning:oklch(84% .17 78);--warning-foreground:oklch(21% .045 78);--accent-soft-foreground:oklch(24% .006 255)}@media (prefers-color-scheme:dark){:root{--lcd:oklch(91.7% .08 205.041);--lcd-secondary:oklch(95.3% .051 180.801);--lcd-foreground:oklch(21.03% .0059 285.89);--brand:oklch(66.78% .2232 36.66);--brand-foreground:oklch(15% .03 36.66);--accent:oklch(98.48% 0 0);--accent-foreground:oklch(15% 0 0);--background:oklch(12% 0 0);--border:oklch(28% 0 0);--danger:oklch(69% .23 25);--danger-foreground:oklch(99.11% 0 0);--default:oklch(27.4% 0 0);--default-foreground:oklch(99.11% 0 0);--field-background:oklch(21.03% 0 0);--field-border:transparent;--field-border-width:0px;--field-foreground:oklch(99.11% 0 0);--field-placeholder:oklch(70.5% 0 0);--focus:oklch(98.48% 0 0);--foreground:oklch(99.11% 0 0);--muted:oklch(70.5% 0 0);--overlay:oklch(21.03% 0 0);--overlay-foreground:oklch(99.11% 0 0);--segment:oklch(39.64% 0 0);--segment-foreground:oklch(99.11% 0 0);--separator:oklch(25% 0 0);--success:oklch(79% .2 145);--success-foreground:oklch(16% .04 145);--surface:oklch(21.03% 0 0);--surface-foreground:oklch(99.11% 0 0);--surface-secondary:oklch(25.7% 0 0);--surface-secondary-foreground:oklch(99.11% 0 0);--surface-tertiary:oklch(27.21% 0 0);--surface-tertiary-foreground:oklch(99.11% 0 0);--warning:oklch(85% .17 78);--warning-foreground:oklch(19% .04 78);--accent-soft-foreground:oklch(98.48% 0 0)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.order-1{order:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-4{margin-top:calc(var(--spacing) * 4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-24{width:calc(var(--spacing) * 24);height:calc(var(--spacing) * 24)}.h-full{height:100%}.min-h-0{min-height:0}.min-h-40{min-height:calc(var(--spacing) * 40)}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-\[1120px\]{max-width:1120px}.min-w-0{min-width:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.grid-cols-\[minmax\(280px\,0\.8fr\)_minmax\(480px\,1\.2fr\)\]{grid-template-columns:minmax(280px,.8fr) minmax(480px,1.2fr)}.flex-col{flex-direction:column}.place-items-center{place-items:center}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.self-start{align-self:flex-start}.rounded{border-radius:.25rem}.rounded-full{border-radius:2147483647px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--separator\)\]{border-color:var(--separator)}.bg-\[var\(--surface-secondary\)\]{background-color:var(--surface-secondary)}.bg-transparent{background-color:#0000}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.font-mono{font-family:var(--font-mono)}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.text-\[var\(--danger\)\]{color:var(--danger)}.text-\[var\(--foreground\)\]{color:var(--foreground)}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[inset_1px_1px_0_rgba\(255\,255\,255\,0\.1\)\,inset_-1px_-1px_0_rgba\(0\,0\,0\,0\.65\)\,0_6px_16px_rgba\(0\,0\,0\,0\.35\)\]{--tw-shadow:inset 1px 1px 0 var(--tw-shadow-color,#ffffff1a), inset -1px -1px 0 var(--tw-shadow-color,#000000a6), 0 6px 16px var(--tw-shadow-color,#00000059);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-55:disabled{opacity:.55}@media not all and (width>=900px){.max-\[900px\]\:order-1{order:1}.max-\[900px\]\:order-2{order:2}.max-\[900px\]\:mt-4{margin-top:calc(var(--spacing) * 4)}}@media not all and (width>=800px){.max-\[800px\]\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}}@media (width>=801px){.min-\[801px\]\:col-start-1{grid-column-start:1}.min-\[801px\]\:col-start-2{grid-column-start:2}.min-\[801px\]\:row-start-1{grid-row-start:1}.min-\[801px\]\:h-full{height:100%}}@media (width>=901px){.min-\[901px\]\:order-1{order:1}.min-\[901px\]\:order-2{order:2}}@media (width>=40rem){.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:py-6{padding-block:calc(var(--spacing) * 6)}}}:root{--font-display:"Instrument Serif", Georgia, serif;--font-sans:"Space Grotesk", ui-sans-serif, system-ui, sans-serif;--font-mono:"Space Mono", ui-monospace, monospace;font-family:var(--font-sans);color:oklch(99.11% 0 0);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;--brand:oklch(66.78% .2232 36.66);--brand-strong:oklch(72% .19 36.66);--brand-foreground:oklch(15% .03 36.66);--background:oklch(12% 0 0);--border:oklch(28% 0 0);--danger:oklch(69% .23 25);--danger-foreground:oklch(99.11% 0 0);--foreground:oklch(99.11% 0 0);--muted:oklch(70.5% 0 0);--surface:oklch(21.03% 0 0);--surface-secondary:oklch(25.7% 0 0);--green:var(--brand);--green-dark:var(--brand-strong);--ink-muted:var(--muted);--panel:var(--surface);background:oklch(12% 0 0)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--foreground);background:var(--background);margin:0}button,input,select{font:inherit}h1,h2{font-family:var(--font-display);font-weight:400}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.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}.loading-card{background:var(--panel);min-height:65vh;color:var(--ink-muted);border-radius:28px;place-items:center;display:grid}.eyebrow{color:var(--green-dark);text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:750;font-family:var(--font-mono);margin:0}.brand-mark{color:var(--foreground);align-items:center;gap:13px;display:inline-flex}.brand-logo-frame{background:0 0;flex:none;width:58px;height:58px;overflow:visible}.brand-logo-frame img{width:100%;height:100%;display:block}.brand-name{letter-spacing:-.035em;line-height:.95;display:grid}.brand-name strong{font-size:22px;font-weight:850}.brand-name span{color:var(--brand-strong);letter-spacing:.12em;text-transform:uppercase;font-size:13px;font-weight:800;font-family:var(--font-mono);margin-top:5px}.brand-mark.is-compact{gap:9px}.brand-mark.is-compact .brand-logo-frame{width:38px;height:38px}.brand-mark.is-compact .brand-name strong{font-size:16px}.brand-mark.is-compact .brand-name span{margin-top:3px;font-size:9px}.upload-shell{border:1px solid var(--border);background:var(--surface);border-radius:24px;grid-template-columns:.92fr 1.08fr;min-height:min(650px,100vh - 48px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 64px #00000052}.upload-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(32px,5vw,64px);display:flex}.upload-copy h1{letter-spacing:-.04em;max-width:470px;margin:32px 0 24px;font-size:clamp(40px,5vw,64px);line-height:1}.upload-copy .eyebrow{margin-top:32px}.upload-description{max-width:440px;color:var(--muted);margin:0 0 32px;font-size:16px;line-height:1.5}.primary-button{border:1px solid var(--border);min-height:48px;color:var(--brand);background:var(--surface-secondary);cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;gap:12px;padding:0 24px;font-weight:700;text-decoration:none;transition:transform .15s,background .15s;display:inline-flex;box-shadow:inset 1px 1px #ffffff1f,inset -1px -1px #000000b3,0 6px 14px #00000047}.primary-button:hover{background:var(--surface-tertiary);transform:translateY(-1px)}.primary-button:active{transform:translateY(1px);box-shadow:inset 0 1px 2px #0000008c}.primary-button:disabled,button:disabled{cursor:not-allowed;opacity:.55;transform:none}.sample-button{min-height:44px;color:var(--brand);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;margin-top:12px;padding:8px 0;font-weight:700;text-decoration:underline}.privacy-note{max-width:455px;color:var(--muted);font:12px/1.6 var(--font-mono);margin:24px 0 0}.drop-zone{border:1px dashed var(--border);color:var(--foreground);background:var(--background);cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:16px;margin:12px;transition:border-color .15s,transform .15s;display:flex;position:relative}.drop-zone:before,.drop-zone:after{content:"";pointer-events:none;background:linear-gradient(var(--brand), var(--brand)) left top / 16px 2px no-repeat, linear-gradient(var(--brand), var(--brand)) left top / 2px 16px no-repeat, linear-gradient(var(--brand), var(--brand)) right top / 16px 2px no-repeat, linear-gradient(var(--brand), var(--brand)) right top / 2px 16px no-repeat, linear-gradient(var(--brand), var(--brand)) left bottom / 16px 2px no-repeat, linear-gradient(var(--brand), var(--brand)) left bottom / 2px 16px no-repeat, linear-gradient(var(--brand), var(--brand)) right bottom / 16px 2px no-repeat, linear-gradient(var(--brand), var(--brand)) right bottom / 2px 16px no-repeat;position:absolute;inset:24px}.drop-zone:after{display:none}.drop-zone:hover,.drop-zone.is-dragging{border-color:var(--brand);transform:scale(.997)}.drop-zone strong{font-size:20px}.drop-zone>span:last-child{color:var(--muted);font:12px/1.4 var(--font-mono)}.drop-icon{width:32px;height:32px;color:var(--brand)}.error-banner{border:1px solid var(--danger);color:var(--danger-foreground);background:var(--surface);border-radius:12px;grid-column:1/-1;margin-top:12px;padding:12px 16px}.track-picker{z-index:2;border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:24px;position:absolute;inset:16px;overflow:auto;box-shadow:0 16px 48px #0006}.track-picker h2{margin-top:0}.track-picker>div{gap:12px;display:grid}.track-picker button{border:1px solid var(--border);min-height:48px;color:var(--foreground);background:var(--surface-secondary);cursor:pointer;border-radius:12px;justify-content:space-between;padding:12px 16px;display:flex}.site-footer{color:var(--muted);font:10px/1.4 var(--font-mono);letter-spacing:.08em;justify-content:space-between;align-items:center;gap:16px;padding:24px 4px 4px;display:flex}.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover{color:var(--brand);text-underline-offset:4px;text-decoration:underline}.preview-shell{padding-bottom:32px}.preview-header{border-bottom:1px solid var(--separator);justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px;padding:4px 4px 16px;display:flex}.preview-identity{align-items:center;gap:24px;min-width:0;display:flex}.preview-identity>span{background:var(--separator);flex:none;width:1px;height:40px}.preview-header h1{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.03em;min-width:0;margin:0;font-size:clamp(28px,4vw,40px);line-height:1.1;overflow:hidden}.header-actions{align-items:end;gap:16px;display:flex}.new-route-button{border:1px solid var(--brand);min-height:44px;color:var(--brand);background:var(--background);font:700 12px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.diagnostic-banner{border:1px solid var(--border);background:var(--surface);border-radius:12px;align-items:center;gap:12px;margin-bottom:12px;padding:12px 16px;font-size:12px;display:flex}.diagnostic-banner span{color:var(--muted)}.preview-workspace{min-width:0}.preview-workspace.is-portrait{grid-template-columns:minmax(420px,1fr) minmax(420px,1fr);align-items:stretch;gap:24px;display:grid}.composition{border:1px solid var(--border);background:var(--surface);border-radius:24px;width:100%;position:relative;overflow:hidden;box-shadow:0 16px 48px #00000047}.preview-workspace.is-portrait .composition{justify-self:center;max-width:560px}.map-surface{background:var(--background);position:absolute;inset:0 0 auto}.map-surface .maplibregl-canvas{outline:none}.overlay-surface{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.playback-card,.setup-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:16px}.playback-card h2,.setup-card h2{font:600 12px/1.4 var(--font-mono);text-transform:uppercase;letter-spacing:.12em;margin:0}.playback-card h2{border-bottom:1px solid var(--separator);padding-bottom:12px}.playback-row{align-items:end;gap:12px;padding-top:16px;display:flex}.round-button,.icon-button{border:1px solid var(--border);color:var(--foreground);background:var(--surface-secondary);cursor:pointer;border-radius:9999px;flex:none;place-items:center;display:grid;box-shadow:inset 1px 1px #ffffff1a,inset -1px -1px #000000a6,0 4px 10px #00000040}.round-button{width:48px;height:48px}.icon-button{width:44px;height:44px}.round-button:active,.icon-button:active{transform:translateY(1px);box-shadow:inset 0 1px 2px #0000008c}.timeline-stack{flex:1;gap:8px;min-width:120px;display:grid}.timeline-stack output{color:var(--foreground);font:12px/1.4 var(--font-mono);font-variant-numeric:tabular-nums}.timeline-label{align-items:center;min-height:20px;display:flex}input[type=range]{width:100%;height:3px;accent-color:var(--brand);cursor:pointer}.panel-heading{border-bottom:1px solid var(--separator);justify-content:space-between;align-items:center;gap:16px;padding-bottom:12px;display:flex}.panel-heading>span{color:var(--muted);font:10px/1.4 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;display:flex}.panel-heading i{background:var(--brand);border-radius:9999px;width:8px;height:8px}.setup-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-top:16px;display:grid}.segment-field{border:0;min-width:0;margin:0;padding:0}.segment-field legend{color:var(--muted);font:10px/1.4 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.segment-group{border:1px solid var(--border);background:var(--background);border-radius:12px;min-height:44px;padding:3px;display:flex}.segment-option{min-width:0;color:var(--muted);font:600 11px/1 var(--font-mono);cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 10px;display:flex;position:relative}.segment-option input{opacity:0;width:1px;height:1px;position:absolute}.segment-option.is-selected{color:var(--foreground);background:var(--surface-secondary);box-shadow:inset 1px 1px #ffffff1a,inset -1px -1px #000000a6,0 2px 5px #00000047}.segment-option.is-disabled{cursor:not-allowed;opacity:.38}.segment-option:has(input:focus-visible){outline:3px solid var(--brand);outline-offset:3px}.segment-option.is-compact{padding-inline:8px}.header-actions .segment-field{min-width:176px}.header-actions .segment-group{min-height:44px}.header-actions .segment-option{font-size:10px}.export-progress{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px 16px}.export-progress>div{background:var(--separator);border-radius:9999px;height:3px;overflow:hidden}.export-progress>div span{background:var(--brand);height:100%;transition:width .1s linear;display:block}.export-progress p{color:var(--muted);margin:8px 0 0;font-size:12px}.route-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 0;display:grid}.route-stats>div{border:1px solid var(--border);background:var(--surface);border-radius:16px;min-width:0;padding:16px}.route-stats dt{color:var(--muted);font:10px/1.4 var(--font-mono);text-transform:uppercase;letter-spacing:.06em}.route-stats dd{overflow-wrap:anywhere;color:var(--foreground);font:700 20px/1.2 var(--font-mono);margin:8px 0 0}.preview-workspace.is-portrait .route-stats{flex:1;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.preview-workspace.is-landscape .route-stats{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.preview-workspace.is-landscape .route-stats>div,.preview-workspace.is-portrait .route-stats>div{flex-direction:column;justify-content:center;display:flex}.preview-workspace.is-portrait .setup-grid{grid-template-columns:1fr}.video-result{border:1px solid var(--border);background:var(--surface);border-radius:16px;margin-top:24px;padding:24px}.video-result h2{margin:8px 0 16px}.video-result video{background:var(--background);object-fit:contain;border-radius:12px;width:100%;max-height:72vh;display:block}.video-result .primary-button{margin-top:16px}@media (width<=900px){.preview-workspace.is-portrait{display:block}.preview-workspace.is-portrait .composition{max-width:480px;margin-inline:auto}.preview-workspace.is-portrait .studio-panel{margin-top:16px}.preview-workspace.is-portrait .setup-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=800px){.upload-shell{grid-template-columns:1fr;min-height:auto}.upload-copy{padding:32px 24px 24px}.upload-copy h1{margin:24px 0 16px;font-size:40px}.drop-zone{min-height:300px}.preview-header{flex-direction:column;align-items:flex-start}.header-actions{justify-content:space-between;width:100%}.preview-identity{gap:16px}}@media (width<=520px){.preview-identity>span{display:none}.preview-identity{flex-direction:column;align-items:flex-start;gap:12px}.preview-header h1{white-space:normal;font-size:28px}.header-actions{flex-direction:column;align-items:stretch}.header-actions .segment-field{min-width:0}.new-route-button{justify-content:center}.diagnostic-banner{flex-direction:column;align-items:flex-start}.composition{border-radius:16px}.playback-row{flex-wrap:wrap}.timeline-stack{flex-basis:100%;order:3}.playback-row .segment-field{flex:1}.setup-grid,.preview-workspace.is-portrait .setup-grid{grid-template-columns:1fr}.site-footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
