html[dir=ltr],[data-sonner-toaster][dir=ltr]{--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}html[dir=rtl],[data-sonner-toaster][dir=rtl]{--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999;transition:transform .4s ease}@media(hover:none)and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translate(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-y-position=top]{top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px #0006}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:#00000014}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:#ffffff4d}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]:before{content:"";position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]:before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]:before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]:before{content:"";position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]:after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y: translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y: translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]:before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px));transition:none}[data-sonner-toast][data-swiped=true]{-webkit-user-select:none;user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media(max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 87%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 93%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 84%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg: #000;--normal-bg-hover: hsl(0, 0%, 12%);--normal-border: hsl(0, 0%, 20%);--normal-border-hover: hsl(0, 0%, 25%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 43%, 17%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 9%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media(prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}:root{color-scheme:dark;--font-base: 11px;--font-ui: 1rem;--font-control: .9rem;--font-label: .82rem;--font-heading: .84rem;--font-status: .88rem;--font-toolbar: 10.5px;--ae-bg: #1c1c1c;--ae-bg-2: #232323;--ae-bg-3: #2c2c2c;--ae-bg-4: #353535;--ae-bg-5: #404040;--ae-rule: #0e0e0e;--ae-rule-soft: #2a2a2a;--ae-rule-hi: #565656;--ae-ink: #d6d6d6;--ae-ink-2: #9a9a9a;--ae-ink-3: #6b6b6b;--ae-ink-disabled: #4a4a4a;--ae-blue: #2680eb;--ae-blue-2: #1473e6;--ae-blue-soft: rgba(38, 128, 235, .18);--ae-yellow: #e2b203;--ae-green: #2cba6d;--ae-red: #e34850;--rule-size: 1px;--accent-rule-size: 2px;--mono: "Roboto Mono", ui-monospace, "Cascadia Mono", Consolas, Menlo, monospace;--sans: var(--mono)}*{box-sizing:border-box}html{font-size:var(--font-base)}html,body,#root{height:100%}html,body{margin:0;overflow:hidden;background:var(--ae-bg);color:var(--ae-ink);font:var(--font-ui)/1.4 var(--sans);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}::-webkit-scrollbar{width:12px;height:12px;background:var(--ae-bg)}::-webkit-scrollbar-thumb{background:#3a3a3a;border:2px solid var(--ae-bg)}button{font-family:inherit;font-size:var(--font-control);line-height:1.35;color-scheme:dark}input,select,textarea{font-family:var(--sans);font-size:var(--font-control);font-weight:400;letter-spacing:0;line-height:1.35;text-transform:none;color-scheme:dark}button{height:22px;min-width:0;padding:0 9px;border:var(--rule-size) solid var(--ae-rule);border-radius:0;background:var(--ae-bg-3);color:var(--ae-ink-2);display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;cursor:pointer}button svg,h2 svg,.submenu-item svg{width:14px;height:14px;flex:0 0 auto}button:hover{background:var(--ae-bg-4);color:var(--ae-ink);border-color:var(--ae-rule-hi)}button.active,button.primary{background:var(--ae-blue);border-color:var(--ae-blue);color:#fff;font-weight:600}button:disabled{color:var(--ae-ink-disabled);cursor:not-allowed}input:disabled,textarea:disabled,select:disabled{color:var(--ae-ink-3);cursor:not-allowed;opacity:.72}input,textarea,select{width:100%;min-height:22px;border:var(--rule-size) solid var(--ae-rule);border-radius:0;background:var(--ae-bg);color:var(--ae-ink);padding:3px 7px;outline:none;-webkit-user-select:text;user-select:text}textarea{min-height:52px;resize:vertical;line-height:1.35}textarea.auto-height-field{height:auto;overflow:hidden;resize:none}input:focus,textarea:focus,select:focus{border-color:var(--ae-blue)}label{display:grid;gap:3px;color:var(--ae-ink-3);font-family:var(--mono);font-size:var(--font-label);font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1,h2,h3,p{margin:0}small{color:var(--ae-ink-3)}.login-shell{height:100vh;display:grid;place-items:center;padding:18px;background:linear-gradient(180deg,rgba(38,128,235,.08),transparent 35%),var(--ae-bg)}.login-panel{width:360px;max-width:calc(100vw - 32px);padding:0;display:grid;gap:0;border:var(--rule-size) solid var(--ae-rule);background:var(--ae-bg-2);box-shadow:0 24px 70px #00000080}.login-brand{min-height:74px;padding:16px;display:flex;align-items:center;gap:12px;border-bottom:var(--rule-size) solid var(--ae-rule);background:var(--ae-bg-3)}.login-brand img{width:24px;height:24px;object-fit:contain}.login-brand h1{color:var(--ae-ink);font-size:14px;line-height:1.1;letter-spacing:.08em;text-transform:uppercase}.login-brand p{margin-top:4px;color:var(--ae-ink-3);font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.login-fields{display:grid;gap:10px;padding:14px 16px 10px}.login-panel label{gap:5px}.login-panel input{height:28px;background:var(--ae-bg);border-color:var(--ae-rule)}.login-panel input:focus{border-color:var(--ae-blue);background:#171717}.login-submit{height:28px;margin:4px 16px 16px;color:#fff}.login-submit:not(:disabled):hover{color:#fff}.login-secondary{height:28px;margin:-8px 16px 16px}.error{margin:0 16px 10px;color:var(--ae-red);border:var(--rule-size) solid rgba(227,72,80,.35);background:#e348501a;padding:7px 8px;font-family:var(--mono)}.app-shell{height:100vh;min-height:0;display:grid;grid-template-rows:40px minmax(0,1fr) 22px;background:var(--ae-bg)}.topbar{grid-row:1;height:40px;display:flex;border-bottom:var(--rule-size) solid var(--ae-rule);background:var(--ae-bg-2);position:relative;overflow:visible}.topbar:after{content:"";position:absolute;z-index:30;left:0;right:0;bottom:calc(var(--rule-size) * -1);height:var(--accent-rule-size);background:linear-gradient(90deg,transparent 0%,var(--ae-blue) 38%,#66b2ff 50%,var(--ae-blue) 62%,transparent 100%);opacity:0;transform:translate(-100%)}.app-shell.is-loading .topbar:after{opacity:1;animation:topbar-loading 1.15s ease-in-out infinite}.menu-bar{min-width:0;width:100%;display:flex;align-items:stretch}.toolbar-logo{height:40px;width:42px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;padding:10px 12px}.toolbar-logo img{display:block;max-width:100%;max-height:16px;object-fit:contain}.menu-item{position:relative;height:40px;display:flex;align-items:center;padding:0 10px;color:var(--ae-ink-2);font-size:var(--font-toolbar);line-height:1}.menu-item:hover{background:var(--ae-bg-3);color:var(--ae-ink)}.menu-popover{position:absolute;z-index:20;top:40px;left:0;min-width:170px;display:none;padding:4px;border:none;background:var(--ae-bg-3);box-shadow:0 12px 24px #00000073}.menu-item:hover .menu-popover{display:grid;gap:2px}.menu-popover button{justify-content:flex-start;width:100%;border:none;background:transparent;font-size:var(--font-toolbar);line-height:1}.menu-popover button:hover{background:var(--ae-blue);color:#fff}.submenu-item{position:relative;min-height:22px}.submenu-item>span{height:22px;padding:0 9px;display:flex;align-items:center;color:var(--ae-ink-2);font-size:var(--font-toolbar);line-height:1;white-space:nowrap}.submenu-item:hover>span{background:var(--ae-blue);color:#fff}.submenu-item.disabled{pointer-events:none}.submenu-item.disabled>span{color:var(--ae-ink-disabled)}.submenu-item.disabled:hover>span{background:transparent;color:var(--ae-ink-disabled)}.submenu-popover{position:absolute;top:-4px;left:calc(100% + 4px);min-width:120px;display:none;padding:4px;border:none;background:var(--ae-bg-3);box-shadow:0 12px 24px #00000073}.submenu-item:hover .submenu-popover{display:grid;gap:2px}.menu-separator{height:var(--rule-size);margin:3px 4px;background:var(--ae-rule)}.tab-strip{margin-left:auto;display:flex;align-items:stretch}.tab-strip button{height:40px;padding:0 18px;border:none;border-bottom:var(--accent-rule-size) solid transparent;background:transparent;font-size:var(--font-toolbar);line-height:1}.tab-strip button.active{background:var(--ae-bg);border-bottom-color:var(--ae-blue);color:var(--ae-ink)}.workspace{grid-row:2;height:100%;min-height:0;display:grid;grid-template-columns:var(--scene-sidebar-width, 288px) 7px minmax(520px,1fr);gap:0;overflow:hidden;background:var(--ae-rule)}.workspace.with-screenplay{grid-template-columns:var(--scene-sidebar-width, 288px) 7px minmax(420px,1fr) 7px var(--screenplay-width, 33vw)}.workspace.scene-sidebar-collapsed{grid-template-columns:minmax(520px,1fr)}.workspace.scene-sidebar-collapsed.with-screenplay{grid-template-columns:minmax(420px,1fr) 7px var(--screenplay-width, 33vw)}.main-column{min-width:0;min-height:0;display:grid;grid-template-rows:min-content minmax(0,1fr);gap:0;overflow:hidden;background:var(--ae-rule)}.scene-resizer,.screenplay-resizer{min-width:7px;cursor:col-resize;background:var(--ae-bg-2);position:relative}.scene-resizer:after,.screenplay-resizer:after{content:"";position:absolute;inset:0 3px;background:var(--ae-rule-hi);opacity:.24}.scene-resizer:hover:after,.is-resizing-scene-sidebar .scene-resizer:after,.screenplay-resizer:hover:after,.is-resizing-screenplay .screenplay-resizer:after{opacity:.7}.is-resizing-scene-sidebar,.is-resizing-screenplay{cursor:col-resize;-webkit-user-select:none;user-select:none}.is-resizing-scene-sidebar iframe,.is-resizing-screenplay iframe{pointer-events:none}.scene-list,.editor-panel,.shot-table-panel,.dialogue-panel,.screenplay-panel,.tracker,.admin-panel,.assets-panel,.io-panel,.empty-panel{min-width:0;background:var(--ae-bg-2);color:var(--ae-ink)}.workspace>.scene-list,.workspace>.main-column,.workspace>.scene-resizer,.workspace>.screenplay-resizer{border-right:var(--rule-size) solid var(--ae-rule)}.workspace>:last-child{border-right:none}.scene-list{min-height:0;display:grid;grid-template-rows:36px minmax(0,1fr) auto;overflow:hidden}.scene-list-scroll{min-height:0;overflow:auto}.scene-list-foot{border-top:var(--rule-size) solid var(--ae-rule);background:var(--ae-bg-2)}.shot-table-panel{min-height:0;display:grid;grid-template-rows:28px minmax(0,1fr);overflow:auto}.list-head,.panel-head,.screenplay-head{height:28px;min-height:28px;padding:0 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:var(--rule-size) solid var(--ae-rule);background:var(--ae-bg-3)}.list-head,.screenplay-head{height:36px;min-height:36px;padding:6px 10px}.list-head h2,.panel-head h2,.screenplay-head h2{display:inline-flex;align-items:center;gap:6px;color:var(--ae-ink-2);font-family:var(--mono);font-size:var(--font-heading);letter-spacing:.08em;text-transform:uppercase}.list-head h2,.screenplay-head h2{gap:6px;font-size:var(--font-heading)}.list-head h2 svg,.screenplay-head h2 svg{width:14px;height:14px}.list-head .icon-button,.screenplay-head .icon-button{width:24px;height:24px}.panel-head span{color:var(--ae-ink-3);font-family:var(--mono)}.scene-list .act-h{padding:5px 12px 3px;color:var(--ae-ink-3);font-size:9px;text-transform:uppercase;letter-spacing:.12em;background:var(--ae-bg);border-bottom:var(--rule-size) solid var(--ae-rule)}.scene-row{width:100%;height:26px;min-height:26px;padding:0 10px;display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px;text-align:left;border:none;border-bottom:var(--rule-size) solid var(--ae-rule-soft);background:var(--ae-bg-2);appearance:none;cursor:pointer;font-size:11px}.scene-row:hover{background:var(--ae-bg-3)}.scene-row.active{background:var(--ae-blue-soft);color:var(--ae-ink);border-bottom-color:transparent;box-shadow:none}.scene-row .scene-drag-handle{cursor:grab}.scene-row.dragging{opacity:.45;cursor:grabbing}.scene-row.dragging .scene-drag-handle{cursor:grabbing}.scene-row.drop-target{box-shadow:inset 0 2px 0 var(--ae-blue)}.scene-row .id,td:first-child{color:var(--ae-ink);font-family:var(--mono);font-weight:700;font-size:10.5px}.scene-row .nm{color:var(--ae-ink-2);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-create-wrap{padding:8px}.scene-create-row{width:100%;height:24px;justify-content:center;color:var(--ae-ink);border-color:var(--ae-rule-soft);background:var(--ae-bg-3);font-size:10px}.scene-create-row:hover{color:var(--ae-ink);border-color:var(--ae-rule-hi);background:var(--ae-bg-4)}.form-grid{padding:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 8px}.form-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid.scene-hero-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.scene-banner .form-grid{padding:0 8px 6px}.editor-panel>label,.dialogue-panel>.empty-inline{margin:8px}.scene-banner{padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;border-bottom:var(--rule-size) solid var(--ae-rule)}.scene-banner-text{position:relative;width:100%;min-width:0;display:flex;flex-direction:column;gap:8px;padding-right:0}.scene-banner .sb-header{display:flex;flex-direction:column;gap:3px}.scene-banner .sb-title-line{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:6px;padding-right:30px}.scene-banner input.sb-id{width:calc(var(--input-ch, 5ch) + 10px);min-width:calc(4ch + 10px);min-height:16px;padding:2px 4px;border-color:transparent;background:transparent;font-family:var(--mono);font-size:18px;font-weight:700;color:var(--ae-ink);line-height:1.2}.scene-banner input.sb-slug{width:100%;min-width:0;min-height:20px;padding:2px 4px;border-color:transparent;background:transparent;color:var(--ae-ink-2);font-family:var(--mono);font-size:18px;text-transform:uppercase;letter-spacing:.05em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}.scene-banner input.sb-id:focus,.scene-banner input.sb-slug:focus{border-color:var(--ae-blue);background:var(--ae-bg)}.scene-meta-panel input,.scene-meta-panel select,.scene-meta-panel textarea{border-color:transparent;background:transparent}.scene-meta-panel .scene-hero-grid select{font-size:11px;background:var(--ae-bg);border-color:var(--ae-rule-soft)}.scene-meta-panel .scene-hero-grid label{font-size:9px}.scene-meta-panel input:focus,.scene-meta-panel select:focus,.scene-meta-panel textarea:focus{border-color:var(--ae-blue);background:var(--ae-bg)}.scene-collapse-toggle{position:absolute;top:0;right:0;width:22px;height:22px;padding:0}.scene-banner.collapsed{min-height:30px;padding:5px 10px;gap:0;align-content:center}.scene-banner.collapsed .scene-banner-text{min-height:20px;justify-content:center;gap:0}.scene-banner.collapsed .sb-header{min-width:0}.scene-banner.collapsed .sb-title-line{min-width:0;gap:6px}.scene-banner.collapsed input.sb-id{font-size:18px;line-height:1.2}.scene-banner.collapsed input.sb-slug{font-size:18px}.scene-banner .sb-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-family:var(--mono);font-size:10.5px;color:var(--ae-ink-2)}.scene-banner .sb-meta-item strong{color:var(--ae-ink)}.scene-banner .sb-meta-sep{color:var(--ae-ink-disabled)}.scene-banner textarea.sb-summary{display:block;width:100%;max-width:none;color:var(--ae-ink-2);font-size:11px;line-height:1.5;min-height:44px;max-height:none;padding:6px 8px;border-color:transparent;background:transparent;font-family:var(--mono);resize:none}.scene-banner textarea.sb-summary:not(:focus){border-color:transparent;background:transparent}.scene-banner textarea.sb-summary:focus{padding:6px 8px;border-color:var(--ae-blue);background:var(--ae-bg)}.scene-meta-panel textarea{min-height:44px;max-height:8.5rem;overflow:auto}.scene-meta-panel textarea.sb-summary{max-height:none;overflow:hidden}table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:var(--font-ui)}thead th,th{position:sticky;top:0;z-index:3;height:26px;padding:5px 8px;background:var(--ae-bg-3);color:var(--ae-ink-2);border-bottom:var(--rule-size) solid var(--ae-rule);border-right:var(--rule-size) solid var(--ae-rule);font-family:var(--mono);font-size:var(--font-heading);letter-spacing:.08em;text-align:left;text-transform:uppercase}td{height:30px;padding:4px 6px;border-bottom:var(--rule-size) solid var(--ae-rule-soft);border-right:var(--rule-size) solid var(--ae-rule-soft);color:var(--ae-ink-2);vertical-align:top}tbody tr{background:var(--ae-bg-2)}tbody tr:hover{background:var(--ae-bg-3)}tbody tr.focused{background:var(--ae-blue-soft)}tbody tr[draggable=true]{cursor:grab}tbody tr.dragging{opacity:.45;cursor:grabbing}tbody tr.drop-target{box-shadow:inset 0 2px 0 var(--ae-blue)}tbody tr.drop-target td{background:#2680eb14}table.shotlist{table-layout:auto;width:100%;min-width:0;font-family:var(--mono);font-size:11px}table.shotlist th,table.shotlist td{width:auto}table.shotlist th:nth-child(1),table.shotlist th:nth-child(4),table.shotlist th:nth-child(5),table.shotlist th:nth-child(7),table.shotlist th:nth-child(8),table.shotlist th:nth-child(9),table.shotlist td.shot-id,table.shotlist td.shot-env-cell,table.shotlist td:nth-child(5),table.shotlist td:nth-child(7),table.shotlist td:nth-child(8),table.shotlist td.lock-cell{width:1%;white-space:nowrap}table.shotlist th:nth-child(6),table.shotlist td.dur{width:64px;min-width:64px;white-space:nowrap}table.shotlist th:nth-child(2),table.shotlist td.beat{width:34%;min-width:220px}table.shotlist th:nth-child(3),table.shotlist td.direction{width:30%;min-width:200px}table.shotlist .shot-id{color:var(--ae-blue);font-family:var(--mono);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}table.shotlist td.shot-id{padding-left:8px;padding-right:8px}table.shotlist textarea,table.shotlist input,table.shotlist select{min-height:22px;padding:2px 5px;border-color:transparent;background:transparent;font-family:var(--mono);font-size:10.5px;color:var(--ae-ink-2)}table.shotlist select{width:auto;max-width:min(180px,24vw);min-width:54px;overflow:visible;text-overflow:clip}table.shotlist textarea{min-height:32px;color:var(--ae-ink);line-height:1.45}table.shotlist .direction textarea{color:var(--ae-ink-2)}table.shotlist textarea:focus,table.shotlist input:focus,table.shotlist select:focus{background:var(--ae-bg);border-color:var(--ae-blue)}table.shotlist textarea:disabled,table.shotlist input:disabled,table.shotlist select:disabled{background:transparent;border-color:transparent}table.shotlist .dur input{width:56px;font-family:var(--mono);text-align:right}table.shotlist .num{text-align:right;font-family:var(--mono);color:var(--ae-ink)}table.shotlist .shot-env-cell select{max-width:150px;font-family:var(--sans);text-transform:none}table.shotlist .lock-cell{padding:4px 7px;text-align:center}.lock-button{width:22px;height:22px;padding:0;border-color:transparent;background:transparent;color:var(--ae-ink-3)}.lock-button:hover{background:var(--ae-bg-4);color:var(--ae-ink)}.lock-button.locked{color:var(--ae-blue)}.dialogue-edit-row{display:grid;grid-template-columns:84px minmax(160px,1fr) 104px 118px;gap:5px;padding:5px 8px;border-bottom:var(--rule-size) solid var(--ae-rule-soft)}.screenplay-panel{min-height:0;display:flex;flex-direction:column;overflow:hidden}.screenplay-head-actions{display:inline-flex;align-items:center;gap:3px}.screenplay-controls{height:36px;display:flex;gap:6px;align-items:center;padding:0 10px;border-top:var(--rule-size) solid var(--ae-rule);background:var(--ae-bg-3)}.screenplay-controls button{height:24px;padding:0 10px;font-size:11px}.screenplay-controls .page-input{width:50px;height:24px;padding:3px 6px;text-align:center;font-family:var(--mono);border-color:var(--ae-rule-hi)}.screenplay-controls .page-of{color:var(--ae-ink-2);font-family:var(--mono);font-size:11px}.screenplay-controls .zoom{margin-left:auto;display:flex;gap:4px}.screenplay-body{flex:1;min-height:0;overflow:auto;padding:10px;background:#2a2a2a;display:flex;align-items:center;justify-content:center}.screenplay-body canvas{max-width:100%;height:auto;display:block;background:#fff;box-shadow:0 4px 20px #0006}.screenplay-body .pdf-loading,.screenplay-body .pdf-err{color:var(--ae-ink-3);font-style:italic;padding:30px 14px;text-align:center}.screenplay-body .pdf-err{color:var(--ae-red)}.tracker,.admin-panel,.assets-panel,.io-panel{grid-row:2;min-height:0;overflow:auto}.asset-browser{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--rule-size);background:var(--ae-rule)}.asset-column{min-height:calc(100vh - 80px);background:var(--ae-bg-2)}.asset-column-head{height:26px;padding:0 9px;display:flex;align-items:center;justify-content:space-between;border-bottom:var(--rule-size) solid var(--ae-rule);background:var(--ae-bg-3)}.asset-column-head h3{color:var(--ae-ink-2);font-family:var(--mono);font-size:var(--font-heading);letter-spacing:.08em;text-transform:uppercase}.asset-column-head span{color:var(--ae-ink-3);font-family:var(--mono);font-size:10px}.asset-row{display:grid;gap:4px;padding:8px 10px;border-bottom:var(--rule-size) solid var(--ae-rule-soft);background:var(--ae-bg-2)}.asset-row:hover{background:var(--ae-bg-3)}.asset-row-top{display:flex;align-items:center;gap:8px}.asset-row-top strong{min-width:0;color:var(--ae-ink);font-family:var(--mono);font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-row-top span{margin-left:auto;color:var(--ae-ink-3);font-family:var(--mono);font-size:10px;white-space:nowrap}.asset-row p{color:var(--ae-ink-2);font-size:11px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-row small{font-family:var(--mono);font-size:10px}.import-textarea{display:block;width:calc(100% - 16px);min-height:300px;margin:8px;font-family:var(--mono)}.io-panel>.primary,.ok-message{margin:0 8px 8px}.ok-message{padding:7px 8px;color:var(--ae-green);font-family:var(--mono);border:var(--rule-size) solid rgba(44,186,109,.35);background:#2cba6d14}.admin-cards{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:var(--rule-size);background:var(--ae-rule)}.admin-cards>div{min-height:92px;padding:12px;display:grid;gap:4px;align-content:center;background:var(--ae-bg-2)}.admin-cards strong{color:var(--ae-ink);font-family:var(--mono);font-size:1.35rem}.settings-list{display:grid;gap:0}.settings-modal{width:min(620px,100%);max-height:min(680px,calc(100vh - 44px));overflow:auto;border:var(--rule-size) solid var(--ae-rule);box-shadow:0 24px 60px #00000085}.settings-row{display:grid;grid-template-columns:minmax(220px,420px) max-content;gap:8px;align-items:end;padding:8px 10px;border-bottom:var(--rule-size) solid var(--ae-rule-soft)}.settings-subhead{margin-top:10px;border-top:var(--rule-size) solid var(--ae-rule)}.danger-text{color:#ff8b91}.admin-modal{width:min(980px,100%)}.admin-create-row,.admin-user-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) 110px 118px minmax(130px,1fr) max-content max-content;gap:8px;align-items:end;padding:8px 10px;border-bottom:var(--rule-size) solid var(--ae-rule-soft)}.admin-create-row{grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) 110px minmax(130px,1fr) max-content;border-bottom-color:var(--ae-rule);background:var(--ae-bg-2)}.admin-users input,.admin-users select,.admin-create-row input,.admin-create-row select{min-width:0}.admin-user-status{color:var(--ae-ink-3);font-family:var(--mono);font-size:10px;align-self:center;white-space:nowrap}.empty-panel{min-height:120px;padding:24px;color:var(--ae-ink-3);font-style:italic;text-align:center}.empty-panel:empty{min-height:0;padding:0;border:0}.skeleton-panel{padding:16px;display:grid;gap:10px}.skeleton-row{height:26px;padding:0 12px;display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:10px;border-bottom:var(--rule-size) solid var(--ae-rule-soft)}.skeleton-row span,.skeleton-title,.skeleton-line,.skeleton-field,.skeleton-textarea,.skeleton-shot-row .skeleton-line{display:block;min-height:10px;background:linear-gradient(90deg,var(--ae-bg-3) 0%,var(--ae-bg-4) 45%,var(--ae-bg-3) 90%);background-size:220% 100%;animation:skeleton-shimmer 1.25s ease-in-out infinite}.skeleton-row span:first-child{width:44px}.skeleton-title{width:120px;height:18px}.skeleton-line{width:58%;height:12px}.skeleton-line.wide{width:82%}.skeleton-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:6px}.skeleton-field{height:38px}.scene-hero-skeleton,.scene-hero-skeleton .scene-banner-text{gap:12px}.scene-hero-skeleton .skeleton-title-line{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:6px;padding-right:30px}.scene-hero-skeleton .skeleton-title.code{width:calc(5ch + 10px);height:26px}.scene-hero-skeleton .skeleton-title.slug{width:min(46ch,72%);height:26px;opacity:.72}.skeleton-textarea{width:100%;border:var(--rule-size) solid transparent}.skeleton-textarea.summary{height:88px}.scene-hero-skeleton .skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.skeleton-shot-row td{padding:10px 12px}.skeleton-shot-row .skeleton-line{height:14px}.modal-backdrop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:22px;background:#00000094}.shot-detail-modal{width:min(940px,100%);max-height:min(720px,calc(100vh - 44px));display:grid;grid-auto-rows:min-content;overflow:auto;border:var(--rule-size) solid var(--ae-rule);box-shadow:0 24px 60px #00000085}.shot-detail-modal>label{margin:8px}.shot-detail-dialogue{margin:8px;padding:10px;display:grid;gap:8px;border:var(--rule-size) solid var(--ae-rule);background:var(--ae-bg)}.shot-detail-dialogue .sec-label{font-family:var(--mono);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ae-blue)}.context-menu{position:fixed;z-index:60;min-width:150px;padding:4px;border:var(--rule-size) solid var(--ae-rule-hi);background:var(--ae-bg-3);box-shadow:0 14px 32px #0000007a}.context-menu-label{padding:5px 7px 6px;color:var(--ae-ink-3);font-family:var(--mono);font-size:9.5px;border-bottom:var(--rule-size) solid var(--ae-rule)}.context-menu button{width:100%;justify-content:flex-start;border:none;background:transparent;font-size:10.5px}.context-menu button.danger{color:#ff8b91}.context-menu button.danger:hover{background:#e3485029;color:#ffd7d9}.detail-dialogue-line{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;padding:8px 0;border-top:var(--rule-size) solid var(--ae-rule-soft)}.detail-dialogue-line .ch{margin-bottom:4px;font-family:var(--mono);font-size:10px;font-weight:700;color:var(--ae-ink)}.icon-button{width:24px;height:24px;display:inline-grid;place-items:center;padding:0}.status-bar{grid-row:3;height:22px;display:flex;align-items:center;gap:14px;padding:0 10px;border-top:var(--rule-size) solid var(--ae-rule);background:linear-gradient(180deg,#1d1d1d,#161616);color:var(--ae-ink-3);font-family:var(--mono);font-size:9.5px}.status-bar span:first-child{color:var(--ae-blue);text-transform:uppercase}.status-project{margin-left:auto;color:var(--ae-ink);font-family:var(--mono);font-size:9.5px;opacity:.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ae-toast{border:var(--rule-size) solid var(--ae-rule-hi)!important;border-radius:0!important;background:linear-gradient(180deg,#262626,#1f1f1f)!important;color:var(--ae-ink)!important;box-shadow:0 18px 42px #0000007a!important;font-family:var(--sans)!important}.ae-toast-title{color:var(--ae-ink)!important;font-family:var(--mono)!important;font-size:10.5px!important;font-weight:700!important;letter-spacing:.04em!important}.ae-toast-description{color:var(--ae-ink-2)!important;font-size:10.5px!important;line-height:1.35!important}.ae-toast-close{border:var(--rule-size) solid var(--ae-rule-hi)!important;border-radius:0!important;background:var(--ae-bg-3)!important;color:var(--ae-ink-2)!important}@keyframes skeleton-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes topbar-loading{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(max-width:1180px){.workspace{grid-template-columns:var(--scene-sidebar-width, 240px) 7px minmax(0,1fr)}.workspace.with-screenplay{grid-template-columns:var(--scene-sidebar-width, 240px) 7px minmax(0,1fr) 7px var(--screenplay-width, 33vw)}.workspace.scene-sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.workspace.scene-sidebar-collapsed.with-screenplay{grid-template-columns:minmax(0,1fr) 7px var(--screenplay-width, 33vw)}}@media(max-width:760px){html,body{overflow:auto}.app-shell{height:auto;min-height:100vh;grid-template-rows:auto auto 22px}.topbar{height:auto;grid-template-columns:1fr}.menu-bar{flex-wrap:wrap}.workspace,.workspace.with-screenplay{grid-template-columns:1fr}.scene-resizer,.screenplay-resizer{display:none}.form-grid.compact,.asset-browser,.dialogue-edit-row{grid-template-columns:1fr}.modal-backdrop{align-items:start;padding:10px}.shot-detail-modal{max-height:calc(100vh - 20px)}}
