/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--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;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--leading-relaxed:1.625;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base;@layer legacy{:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;--cloud:var(--background);--white:var(--card);--sky:var(--link);--sky-light:var(--selection);--depth:var(--primary);--ink:var(--foreground);--thunder:var(--muted-foreground);--silver:var(--muted);--line:var(--border);--danger:var(--error);--danger-soft:var(--error-surface);--success:#4ade80;--success-soft:var(--success-surface);--warning:#fbbf24;--warning-soft:var(--warning-surface);--focus:var(--ring);--rail:208px;--top:64px;--motion:.18s}*{box-sizing:border-box}html{background:var(--cloud);scroll-behavior:smooth}body{min-width:320px;min-height:100dvh;color:var(--ink);background:var(--cloud);margin:0}button,input,select{font:inherit}button,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:1}a{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{color:#fff;background:var(--depth)}input,select{caret-color:var(--sky)}*{scrollbar-color:var(--sky) var(--cloud);scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--cloud)}::-webkit-scrollbar-thumb{border:2px solid var(--cloud);background:var(--sky)}.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}.skip-link{z-index:1000;color:#fff;background:var(--depth);padding:12px 16px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}h1,h2,h3,p{margin-top:0}h1,h2,h3,.wordmark strong,.brand-mark{text-transform:uppercase;letter-spacing:.025em;font-family:inherit}h1{margin-bottom:0;font-size:clamp(2.5rem,4vw,4.75rem);line-height:.9}h2{font-size:clamp(1.65rem,2.4vw,2.4rem);line-height:1}h3{font-size:1.35rem}code,.mono,.numeric,time{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.primary-button,.secondary-button,.danger-button,.load-more,.state-panel button,.confirm-strip button{border:1px solid var(--depth);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));border-radius:0;min-height:44px;padding:10px 16px;font-weight:700}.primary-button{color:#fff;background:var(--depth)}.primary-button:hover:not(:disabled){background:var(--sky)}.secondary-button,.state-panel button,.confirm-strip button{color:var(--depth);background:var(--white)}.danger-button{color:#fff;border-color:var(--danger);background:var(--danger)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.load-more:disabled,.confirm-strip button:disabled{color:var(--ink);border-color:var(--line);background:var(--silver)}.text-button{min-width:44px;min-height:44px;color:var(--depth);text-underline-offset:3px;background:0 0;border:0;padding:7px 8px;text-decoration:underline}.login-shell{background:var(--sky);grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);min-height:100dvh;display:grid;overflow:hidden}.login-cut{background:var(--sky);align-items:center;padding:clamp(28px,5vw,72px);display:grid;position:relative}.login-cut form{background:var(--cloud);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));border:1px solid #ffffffb8;width:min(100%,460px);margin-inline:auto;padding:clamp(28px,4vw,52px)}.form-heading{margin-bottom:32px}.form-heading h2{color:var(--depth);margin-bottom:0;font-size:3.1rem}.field{color:var(--depth);gap:8px;margin-top:20px;font-size:.85rem;font-weight:700;display:grid}.password-field{border:1px solid var(--line);background:var(--white);min-height:50px}.field input{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--white);padding:12px 14px}.password-field input{background:0 0;border:0}.field input[aria-invalid=true]{outline:2px solid var(--danger);outline-offset:-2px}.field-error{color:var(--danger);font-size:.78rem;font-weight:600}.password-field{align-items:center;display:flex}.password-field .text-button{flex:none;margin-right:4px}.login-cut .primary-button{width:100%;margin-top:28px}.form-note{color:var(--thunder);margin:18px 0 0;font-size:.76rem;line-height:1.55}.alert{border:1px solid;gap:4px;margin:0 0 20px;padding:13px 15px;font-size:.85rem;display:grid}.alert-error{color:#691c1c;border-color:var(--danger);background:var(--danger-soft)}.alert code{overflow-wrap:anywhere;margin-top:4px;font-size:.7rem}.app-shell{min-height:100dvh;padding:var(--top) 0 0 var(--rail)}.top-bar{z-index:40;grid-template-columns:var(--rail) 1fr auto;height:var(--top);border-bottom:1px solid var(--line);background:#f5f7f9f7;display:grid;position:fixed;inset:0 0 auto}.wordmark{color:#fff;background:var(--depth);align-items:center;gap:9px;padding:0 16px;text-decoration:none;display:flex}.wordmark span{border:1px solid #fff;place-items:center;width:36px;height:36px;font:700 1.1rem ui-sans-serif,sans-serif;display:grid}.wordmark strong{font-size:1rem;line-height:.9}.context-bar{align-items:center;gap:30px;padding:8px 24px;display:flex}.context-bar>div,.context-bar label{gap:3px;display:grid;position:relative}.context-bar span,.operator-block span{color:var(--thunder);letter-spacing:.07em;text-transform:uppercase;font-size:.67rem}.context-bar strong,.context-bar select{color:var(--depth);font-size:.86rem;font-weight:700}.context-bar select{border:1px solid var(--line);background:var(--white);border-radius:0;min-width:200px;min-height:38px;padding:4px 34px 4px 10px}.context-bar .context-error{z-index:20;width:max-content;max-width:min(320px,80vw);color:var(--danger);background:var(--danger-soft);border:1px solid var(--danger);letter-spacing:0;text-transform:none;padding:8px 10px;position:absolute;top:calc(100% + 5px)}.operator-block{border-left:1px solid var(--line);align-items:center;gap:16px;padding:8px 20px;display:flex}.operator-block>div{text-align:right;gap:3px;display:grid}.operator-block strong{font-size:.84rem}.side-rail{z-index:30;inset:var(--top) auto 0 0;width:var(--rail);border-right:1px solid var(--line);background:var(--white);flex-direction:column;justify-content:space-between;padding:18px 10px;display:flex;position:fixed}.side-rail nav{gap:4px;display:grid}.nav-item{min-height:48px;color:var(--thunder);text-align:left;background:0 0;border:1px solid #0000;align-items:center;padding:6px 10px;display:grid}.nav-item strong{font-size:.88rem}.nav-item small{font-size:.62rem}.nav-item.is-active{color:#fff;border-color:var(--depth);background:var(--depth);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%)}.main-surface{min-height:calc(100dvh - var(--top))}.project-index{max-width:1080px;margin:0 auto;padding:48px 32px 72px}.project-index-heading{border-bottom:1px solid var(--line);padding-bottom:24px}.project-index-heading h1{color:var(--depth)}.project-index-heading p{color:var(--thunder);margin:16px 0 0}.project-index-list{margin:0;padding:0;list-style:none}.project-index-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:20px 0;display:flex}.project-index-list li>div{gap:5px;min-width:0;display:grid}.project-index-list strong{overflow-wrap:anywhere;font-size:1.1rem}.project-index-list small{color:var(--thunder)}.project-index-empty{border-bottom:1px solid var(--line);padding:40px 0}.project-index-empty h2{color:var(--depth)}.project-index-empty p{color:var(--thunder)}.project-create{gap:12px;max-width:620px;margin-top:40px;display:grid}.project-create h2{color:var(--depth);margin:0 0 8px}.project-create>div{gap:12px;display:flex}.project-create input{border:1px solid var(--line);background:var(--white);flex:1;min-width:0;min-height:44px;padding:8px 12px}.project-create p{color:var(--danger)}.task-list-panel{background:var(--cloud);clip-path:polygon(0 0,100% 0,calc(100% - 18px) 33%,100% 64%,calc(100% - 12px) 100%,0 100%);min-width:0;padding:clamp(24px,3vw,48px)}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:34px;display:flex}.panel-heading h1{color:var(--depth);letter-spacing:-.035em;transform-origin:0;font-size:clamp(3.4rem,6vw,6rem);display:inline-block;transform:scaleX(.82)}.connection-badge,.status-badge{white-space:nowrap;border:1px solid;align-items:center;gap:7px;min-height:28px;padding:4px 9px;font:700 .7rem ui-monospace,monospace;display:inline-flex}.connection-badge i,.status-badge i{background:currentColor;width:7px;height:7px;transform:rotate(45deg)}.connection-badge.is-live{color:var(--success);background:var(--success-soft)}.connection-badge.is-connecting,.connection-badge.is-reconnecting{color:var(--warning);background:var(--warning-soft)}.connection-badge.is-stale{color:var(--danger);background:var(--danger-soft)}.filter-line{border-block:1px solid var(--line);align-items:center;gap:10px;min-height:58px;padding:8px 12px;display:flex}.filter-line label{color:var(--thunder);font-size:.75rem;font-weight:700}.filter-line select{min-height:40px;color:var(--depth);border:1px solid var(--line);background:var(--white);border-radius:0;padding:6px 32px 6px 10px;font-weight:700}.result-count{color:var(--thunder);margin-left:auto;font:.7rem ui-monospace,monospace}.stream-notice{border:1px solid var(--warning);background:var(--warning-soft);gap:4px;margin-top:14px;padding:11px 14px;font-size:.78rem;display:grid}.stream-notice.is-stale{border-color:var(--danger);background:var(--danger-soft)}.task-table-wrap{border:1px solid var(--line);background:var(--white);margin-top:16px;overflow-x:auto}.task-table{border-collapse:collapse;width:100%;font-size:.82rem}.task-table th{color:var(--thunder);border-bottom:1px solid var(--depth);background:var(--cloud);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:10px 12px;font-size:.67rem}.task-table td{border-bottom:1px solid var(--silver);vertical-align:middle;padding:14px 12px}.task-table tbody tr{transition:background var(--motion) ease}.task-table tbody tr:hover{background:#edf6fb}.task-table tbody tr.is-selected{background:var(--sky-light);outline:1px solid var(--sky);outline-offset:-2px}.task-table td:nth-child(2) strong{color:var(--depth);overflow-wrap:anywhere;display:block}.task-table td:nth-child(2) code{color:var(--thunder);margin-top:4px;font-size:.67rem;display:block}.progress-cell{align-items:center;gap:8px;display:flex}.progress-track{background:var(--silver);width:54px;height:6px}.progress-track i{background:var(--sky);height:100%;display:block}.progress-cell .numeric{width:34px;color:var(--thunder);font-size:.7rem}.row-action svg,.back-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:20px;height:20px}.load-more{color:var(--depth);background:var(--white);margin:18px auto;display:block}.list-end{color:var(--thunder);text-align:center;text-transform:uppercase;margin:18px;font:.67rem ui-monospace,monospace}.detail-placeholder,.task-detail{color:#fff;background:var(--sky);min-width:0}.task-detail{animation:expose-cut var(--motion) ease-out both;padding:26px clamp(24px,3vw,46px) 60px;position:relative;overflow:hidden}.task-detail:before{content:"";z-index:0;pointer-events:none;border:1px solid #ffffff80;border-radius:50%;width:230px;height:230px;position:absolute;top:104px;right:-82px}.task-detail>*{z-index:1;position:relative}@keyframes expose-cut{0%{opacity:.7;transform:translate(18px)}to{opacity:1;transform:translate(0)}}.detail-topline{border-bottom:1px solid #ffffff8c;justify-content:space-between;align-items:center;gap:16px;padding-bottom:22px;display:flex}.back-button{color:#fff;background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:6px 0;font-weight:700;display:inline-flex}.detail-heading{padding:32px 0 24px}.detail-heading h2{overflow-wrap:anywhere;margin-bottom:18px;font-size:clamp(2rem,3vw,3.4rem)}.detail-heading .status-badge{color:var(--depth);background:#fff}.fact-grid{border:1px solid #ffffff8c;grid-template-columns:1fr 1fr;margin:0 0 24px;display:grid}.fact-grid div{border-bottom:1px solid #ffffff59;min-width:0;padding:14px}.fact-grid div:nth-child(2),.fact-grid div:nth-child(4){border-right:1px solid #ffffff59}.fact-grid div:first-child,.fact-grid div:last-child{border-right:0;grid-column:1/-1}.fact-grid dt{opacity:.74;text-transform:uppercase;margin-bottom:6px;font-size:.66rem}.fact-grid dd{overflow-wrap:anywhere;margin:0;font-size:.78rem;font-weight:700}.detail-section{margin-top:18px}.detail-section h3{margin-bottom:8px;font-size:1rem}.detail-section pre{max-height:220px;color:var(--ink);background:var(--cloud);white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #fff9;margin:0;padding:14px;font:.72rem/1.55 ui-monospace,monospace;overflow:auto}.detail-section.is-danger pre{color:#5d1c1c;background:var(--danger-soft)}.action-zone{border-top:1px solid #ffffff8c;margin-top:30px;padding-top:22px}.action-zone h3{margin-bottom:14px}.action-buttons{flex-wrap:wrap;gap:10px;display:flex}.disabled-reason{opacity:.75;margin:8px 0 0;font-size:.75rem}.confirm-strip{color:var(--ink);background:var(--cloud);border:1px solid var(--depth);gap:8px;margin-top:14px;padding:14px;display:grid}.confirm-strip span{font-size:.8rem}.confirm-strip>div{justify-content:flex-end;gap:8px;display:flex}.confirm-strip button{min-height:40px}.state-panel{border:1px solid var(--line);background:var(--white);align-items:center;gap:18px;margin-top:22px;padding:26px;display:flex}.state-panel>div{flex:1;min-width:0}.state-panel h2{margin-bottom:6px;font-size:1.5rem}.state-panel p{color:var(--thunder);margin:0;line-height:1.5}.state-panel code{overflow-wrap:anywhere;margin-top:8px;font-size:.7rem;display:block}.skeleton-list,.detail-skeleton{gap:10px;margin-top:20px;display:grid}.skeleton-list i,.detail-skeleton i{background:var(--silver);height:62px;animation:1.2s ease-in-out infinite alternate pulse;display:block}.detail-skeleton i{background:#ffffff57}.detail-skeleton i:first-child{height:120px}@keyframes pulse{to{opacity:.45}}.boot-screen{min-height:100dvh;color:var(--depth);background:var(--cloud);align-content:center;place-items:center;gap:28px;display:grid}.boot-screen.is-compact{min-height:calc(100dvh - var(--top))}.cloud-core{border:2px solid var(--depth);background:var(--white);border-radius:50%;width:92px;height:48px;animation:1.1s ease-in-out infinite alternate quarry;position:relative}.cloud-core:before,.cloud-core:after{content:"";border:2px solid var(--depth);background:var(--white);border-radius:50%;position:absolute}.cloud-core:before{width:44px;height:44px;top:-24px;left:8px}.cloud-core:after{width:36px;height:36px;top:-16px;right:7px}.boot-screen p{letter-spacing:.1em;font:700 .72rem ui-monospace,monospace}@keyframes quarry{to{transform:translateY(-5px)}}.fatal-state{max-width:700px;margin:0 auto;padding:12vh 32px}.recovery-screen{background:var(--cloud);min-height:100dvh}.fatal-state h1{color:var(--depth);margin-bottom:24px}.fatal-state p{color:var(--thunder);line-height:1.6}.fatal-state code{overflow-wrap:anywhere;margin-bottom:24px;display:block}@media (width<=1024px){:root{--rail:84px}.wordmark{justify-content:center}.wordmark strong{display:none}.nav-item{text-align:center;justify-items:center}.task-list-panel{padding:28px 22px}.context-bar{gap:16px;padding-inline:14px}}@media (width>=901px) and (width<=1150px){.task-table th:nth-child(3),.task-table td:nth-child(3),.task-table th:nth-child(4),.task-table td:nth-child(4){display:none}.task-table td:nth-child(2) strong{overflow-wrap:normal}}@media (width<=900px){:root{--rail:0px;--top:172px}.login-shell{background:var(--cloud);min-height:100dvh;display:block}.login-cut{background:var(--cloud);padding:0 18px 42px}.login-cut form{margin-top:-28px;padding:26px 22px}.top-bar{grid-template-rows:64px 54px;grid-template-columns:64px 1fr;height:118px}.wordmark{grid-row:1;padding:0}.context-bar{grid-area:1/2;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;min-width:0;padding:6px 10px;display:grid}.context-bar label{width:100%}.context-bar select{width:100%;min-width:0;min-height:40px}.operator-block{border-top:1px solid var(--line);border-left:0;grid-area:2/1/auto/-1;justify-content:space-between;padding:5px 12px}.operator-block>div{text-align:left}.side-rail{border-right:0;border-bottom:1px solid var(--line);width:100%;height:54px;padding:4px 8px;display:block;inset:118px 0 auto;overflow:hidden}.side-rail nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.side-rail .nav-item{text-align:center;justify-items:center;min-height:45px;padding:4px 8px}.side-rail .nav-item:disabled{display:none}.app-shell{padding-left:0}.project-index{padding:28px 16px 48px}.task-list-panel{isolation:isolate;min-height:calc(100dvh - var(--top));clip-path:none;padding:22px 14px 40px;position:relative;overflow:hidden}.task-list-panel:before{content:"";z-index:0;background:var(--sky-light);clip-path:polygon(26% 0,100% 12%,82% 100%,0 82%);width:230px;height:180px;position:absolute;top:178px;right:-64px}.task-list-panel:after{content:"";z-index:0;background:var(--line);transform-origin:100%;width:220px;height:1px;position:absolute;top:278px;right:-12px;transform:rotate(-8deg)}.task-list-panel>*{z-index:1;position:relative}.panel-heading{margin-bottom:22px}.panel-heading h1{font-size:3.8rem}.filter-line{flex-wrap:wrap;align-items:flex-start}.result-count{width:100%;margin-left:0}.task-table-wrap{background:0 0;border:0;overflow:visible}.task-table,.task-table tbody{display:block}.task-table thead{display:none}.task-table tr{border:1px solid var(--line);background:var(--white);grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;padding:14px 54px 14px 14px;display:grid;position:relative}.task-table td{border:0;padding:0;display:block}.task-table td:before{content:attr(data-label);color:var(--thunder);text-transform:uppercase;margin-bottom:4px;font-size:.63rem;display:block}.task-table td:nth-child(2){grid-area:1/1/auto/-1}.task-table td:last-child{position:absolute;top:calc(50% - 22px);right:8px}.progress-track{width:44px}.task-detail{min-height:calc(100dvh - var(--top));padding:18px 16px 48px;animation-name:expose-cut-mobile}@keyframes expose-cut-mobile{0%{opacity:.7;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.fact-grid{grid-template-columns:1fr}.fact-grid div{border-right:0!important}.state-panel{align-items:flex-start;padding:20px 16px}}@media (width<=420px){.project-index-list li,.project-create>div{flex-direction:column;align-items:stretch}.panel-heading{display:grid}.connection-badge{justify-self:start}.task-table tr{grid-template-columns:1fr}.task-table td:nth-child(2){grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer components{html{background:var(--background);scroll-padding-top:80px}body{color:var(--foreground);background:var(--background)}::selection{color:var(--foreground);background:var(--selection)}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}button,input,select,textarea{font:inherit}button:not(:disabled){cursor:pointer}h1,h2,h3,.wordmark strong,.brand-mark{text-transform:none;letter-spacing:normal;font-family:inherit}h1{font-size:1.75rem;font-weight:650;line-height:1.3}h2{font-size:1.25rem;font-weight:600;line-height:1.4}h3{font-size:1.125rem;font-weight:600;line-height:1.5}.app-shell{background:var(--background)}.top-bar{z-index:20;grid-template-columns:var(--rail) minmax(0, 1fr) auto;border-color:var(--border);background:var(--background);height:64px}.wordmark{color:var(--foreground);border-right:1px solid var(--border);background:0 0;gap:10px;font-size:.94rem}.wordmark span{border:1px solid var(--border);background:var(--card);border-radius:8px;width:32px;height:32px;font-family:inherit;font-size:.82rem}.wordmark strong{line-height:1.2}.context-bar{gap:16px;min-width:0;padding:7px 24px}.context-bar span,.operator-block span{color:var(--muted-foreground);letter-spacing:normal;text-transform:none;font-size:.75rem}.context-bar select{min-height:44px;color:var(--foreground);border-color:var(--input);background:var(--card);border-radius:8px;font-weight:500}.context-bar .context-error{color:var(--error);background:var(--error-surface);border-color:var(--error);border-radius:8px}.operator-block{border-color:var(--border)}.operator-block strong{color:var(--foreground)}.menu-toggle{display:none}.drawer-close{min-height:44px;color:var(--foreground);border:1px solid var(--input);background:var(--card);border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:8px 12px;display:flex}.side-rail{z-index:15;border-color:var(--border);background:var(--background);overflow-y:auto}.side-rail nav{gap:4px}.nav-group-label{color:var(--muted-foreground);margin:22px 8px 5px;font-size:.75rem;line-height:1.5}.nav-group-label:first-child{margin-top:4px}.nav-item{min-height:44px;color:var(--muted-foreground);border-radius:8px;gap:12px;padding:8px 12px;display:flex}.nav-item:hover:not(:disabled),.nav-item.is-active{color:var(--foreground);background:var(--accent);clip-path:none;border-color:#0000}.nav-item.is-active{color:#bfdbfe;background:var(--selection)}.nav-item strong{font-size:.875rem;font-weight:500}.nav-item svg{flex:none;width:18px;height:18px}.main-surface{min-width:0;color:var(--foreground);background:var(--background)}.primary-button,.secondary-button,.danger-button,.load-more,.state-panel button,.confirm-strip button{clip-path:none;border-radius:8px;min-height:44px}.primary-button{color:var(--primary-foreground);border-color:var(--primary);background:var(--primary)}.primary-button:hover:not(:disabled){background:#1d4ed8}.secondary-button,.state-panel button,.confirm-strip button{color:var(--secondary-foreground);border-color:var(--input);background:var(--secondary)}.secondary-button:hover:not(:disabled),.state-panel button:hover:not(:disabled),.confirm-strip button:hover:not(:disabled){background:var(--accent)}.danger-button{color:var(--destructive-foreground);border-color:var(--destructive);background:var(--destructive)}.text-button{color:var(--link)}.project-index{max-width:1280px;padding:32px 32px 64px}.project-index-heading{border:0;padding-bottom:24px}.project-index-heading h1,.panel-heading h1,.fatal-state h1{color:var(--foreground);font-size:1.75rem;line-height:1.3}.project-index-heading p{margin-top:8px}.project-index-list{border:1px solid var(--border);background:var(--card);border-radius:14px;overflow:hidden}.project-index-list li{border-color:var(--border);background:0 0;min-height:80px}.project-index-list li:last-child{border-bottom:0}.project-index-list strong{color:var(--foreground);font-weight:600}.project-index-list small{color:var(--muted-foreground)}.project-index-empty,.project-create,.fatal-state,.state-panel{color:var(--foreground);border-color:var(--border);background:var(--card);border-radius:14px}.project-create h2,.project-index-empty h2{color:var(--foreground)}.project-create input,.field input,.filter-line select{min-height:44px;color:var(--foreground);border:1px solid var(--input);background:var(--card);border-radius:8px}.project-create input:focus-visible,.field input:focus-visible,.filter-line select:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.alert,.alert-error{border-radius:8px}.alert-error{color:var(--error);border-color:var(--error);background:var(--error-surface)}.login-shell{background:var(--background);grid-template-columns:1fr;place-items:center;padding:48px 16px;display:grid;overflow:visible}.login-landmass{display:none}.login-cut{background:0 0;width:min(100%,440px);padding:0;display:block}.login-cut form{border:1px solid var(--border);background:var(--card);clip-path:none;border-radius:14px;width:100%;padding:32px}.cut-index{display:none}.form-heading{margin-bottom:24px}.form-heading h2{color:var(--foreground);font-size:1.75rem;line-height:1.3}.field{color:var(--foreground);font-size:.875rem;font-weight:500}.field input{color:var(--foreground);background:var(--background)}.password-field{border-color:var(--input);background:var(--background);border-radius:8px}.password-field input{border:0}.field-error{color:var(--error)}.form-note{color:var(--muted-foreground)}.boot-screen{color:var(--foreground);background:var(--background)}.cloud-core{display:none}.boot-screen p{font:inherit;letter-spacing:normal;font-size:.875rem}@media (width<=1023px){html{scroll-padding-top:0}:root{--rail:0px;--top:112px}.app-shell{padding:0}.top-bar{height:var(--top);grid-template-rows:56px 56px;grid-template-columns:auto minmax(0,1fr) auto auto;display:grid;position:relative;inset:auto}.wordmark{border:0;grid-area:1/1;padding:0 16px}.context-bar{border-top:1px solid var(--border);grid-area:2/1/auto/-1;gap:8px;min-width:0;padding:4px 16px;display:flex}.context-bar label{flex:1;min-width:0}.context-bar select{width:100%;min-width:0}.operator-block{border:0;grid-area:1/3;padding:6px 4px}.operator-block>div{display:none}.menu-toggle{min-width:48px;color:var(--foreground);border:0;border-left:1px solid var(--border);background:0 0;grid-area:1/4;place-items:center;display:grid}.side-rail{z-index:30;border-right:1px solid var(--border);visibility:hidden;border-bottom:0;width:min(320px,88vw);height:auto;padding:16px 8px 32px;transition:transform .18s,visibility .18s;display:block;position:fixed;inset:0 auto 0 0;overflow:auto;transform:translate(-105%)}.side-rail.is-open{visibility:visible;transform:translate(0)}.side-rail nav{grid-template-columns:1fr;display:grid}.nav-backdrop{z-index:25;background:#000000a6;border:0;position:fixed;inset:0}.project-index{padding:24px 24px 48px}}@media (width>=1024px){.nav-backdrop{display:none}}@media (width<=767px){.project-index{padding:24px 16px 48px}.project-index-list li{flex-wrap:wrap;gap:12px}.login-cut form{padding:24px}}@media (prefers-reduced-motion:reduce){.side-rail{transition:none}}}@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}.relative{position:relative}.static{position:static}.col-start-2{grid-column-start:2}.mt-3{margin-top:calc(var(--spacing) * 3)}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-11{min-height:calc(var(--spacing) * 11)}.w-fit{width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-items-start{justify-items:start}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.overflow-hidden{overflow:hidden}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:.5rem}.rounded-sm{border-radius:.375rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-transparent{border-color:#0000}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-foreground{color:var(--foreground)}.text-link{color:var(--link)}.text-muted-foreground{color:var(--muted-foreground)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.underline-offset-4{text-underline-offset:4px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.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,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.select-none{-webkit-user-select:none;user-select:none}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-muted:disabled{background-color:var(--muted)}.disabled\:text-muted-foreground:disabled{color:var(--muted-foreground)}.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr}.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:outline-destructive[aria-invalid=true]{outline-color:var(--destructive)}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}@media (width>=40rem){.sm\:grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.sm\:items-end{align-items:flex-end}}@media (width>=48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\]\:text-current>svg{color:currentColor}@media (hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab, var(--secondary) 90%, transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}a.\[a\&\]\:hover\:underline:hover{text-decoration-line:underline}}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0b0b0c;--foreground:#f4f4f5;--card:#151516;--card-foreground:#f4f4f5;--popover:#202022;--popover-foreground:#f4f4f5;--muted:#202022;--muted-foreground:#a1a1aa;--secondary:#202022;--secondary-foreground:#e4e4e7;--accent:#27272a;--accent-foreground:#f4f4f5;--border:#303034;--input:#73737a;--primary:#2563eb;--primary-foreground:#fff;--link:#60a5fa;--ring:#60a5fa;--selection:#17243a;--success:#4ade80;--success-surface:#10291d;--warning:#fbbf24;--warning-surface:#302511;--destructive:#b91c1c;--destructive-foreground:#fff;--error:#f87171;--error-surface:#301719;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@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}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes pulse{50%{opacity:.5}}
