:root{--ion-color-primary:#0054e9;--ion-color-primary-rgb:0, 84, 233;--ion-color-primary-contrast:#fff;--ion-color-primary-contrast-rgb:255, 255, 255;--ion-color-primary-shade:#004acd;--ion-color-primary-tint:#1a65eb;--ion-color-secondary:#0163aa;--ion-color-secondary-rgb:1, 99, 170;--ion-color-secondary-contrast:#fff;--ion-color-secondary-contrast-rgb:255, 255, 255;--ion-color-secondary-shade:#015796;--ion-color-secondary-tint:#1a73b3;--ion-color-tertiary:#6030ff;--ion-color-tertiary-rgb:96, 48, 255;--ion-color-tertiary-contrast:#fff;--ion-color-tertiary-contrast-rgb:255, 255, 255;--ion-color-tertiary-shade:#542ae0;--ion-color-tertiary-tint:#7045ff;--ion-color-success:#2dd55b;--ion-color-success-rgb:45, 213, 91;--ion-color-success-contrast:#000;--ion-color-success-contrast-rgb:0, 0, 0;--ion-color-success-shade:#28bb50;--ion-color-success-tint:#42d96b;--ion-color-warning:#ffc409;--ion-color-warning-rgb:255, 196, 9;--ion-color-warning-contrast:#000;--ion-color-warning-contrast-rgb:0, 0, 0;--ion-color-warning-shade:#e0ac08;--ion-color-warning-tint:#ffca22;--ion-color-danger:#c5000f;--ion-color-danger-rgb:197, 0, 15;--ion-color-danger-contrast:#fff;--ion-color-danger-contrast-rgb:255, 255, 255;--ion-color-danger-shade:#ad000d;--ion-color-danger-tint:#cb1a27;--ion-color-light:#f4f5f8;--ion-color-light-rgb:244, 245, 248;--ion-color-light-contrast:#000;--ion-color-light-contrast-rgb:0, 0, 0;--ion-color-light-shade:#d7d8da;--ion-color-light-tint:#f5f6f9;--ion-color-medium:#636469;--ion-color-medium-rgb:99, 100, 105;--ion-color-medium-contrast:#fff;--ion-color-medium-contrast-rgb:255, 255, 255;--ion-color-medium-shade:#57585c;--ion-color-medium-tint:#737478;--ion-color-dark:#222428;--ion-color-dark-rgb:34, 36, 40;--ion-color-dark-contrast:#fff;--ion-color-dark-contrast-rgb:255, 255, 255;--ion-color-dark-shade:#1e2023;--ion-color-dark-tint:#383a3e}html.ios{--ion-default-font:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font:"Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font:-apple-system-body;--ion-font-family:var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (width>=768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity:.18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity:0;--box-shadow:none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base:var(--ion-color-primary,#0054e9)!important;--ion-color-base-rgb:var(--ion-color-primary-rgb,0, 84, 233)!important;--ion-color-contrast:var(--ion-color-primary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-primary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-primary-shade,#004acd)!important;--ion-color-tint:var(--ion-color-primary-tint,#1a65eb)!important}.ion-color-secondary{--ion-color-base:var(--ion-color-secondary,#0163aa)!important;--ion-color-base-rgb:var(--ion-color-secondary-rgb,1, 99, 170)!important;--ion-color-contrast:var(--ion-color-secondary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-secondary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-secondary-shade,#015796)!important;--ion-color-tint:var(--ion-color-secondary-tint,#1a73b3)!important}.ion-color-tertiary{--ion-color-base:var(--ion-color-tertiary,#6030ff)!important;--ion-color-base-rgb:var(--ion-color-tertiary-rgb,96, 48, 255)!important;--ion-color-contrast:var(--ion-color-tertiary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-tertiary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-tertiary-shade,#542ae0)!important;--ion-color-tint:var(--ion-color-tertiary-tint,#7045ff)!important}.ion-color-success{--ion-color-base:var(--ion-color-success,#2dd55b)!important;--ion-color-base-rgb:var(--ion-color-success-rgb,45, 213, 91)!important;--ion-color-contrast:var(--ion-color-success-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-success-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-success-shade,#28bb50)!important;--ion-color-tint:var(--ion-color-success-tint,#42d96b)!important}.ion-color-warning{--ion-color-base:var(--ion-color-warning,#ffc409)!important;--ion-color-base-rgb:var(--ion-color-warning-rgb,255, 196, 9)!important;--ion-color-contrast:var(--ion-color-warning-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-warning-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-warning-shade,#e0ac08)!important;--ion-color-tint:var(--ion-color-warning-tint,#ffca22)!important}.ion-color-danger{--ion-color-base:var(--ion-color-danger,#c5000f)!important;--ion-color-base-rgb:var(--ion-color-danger-rgb,197, 0, 15)!important;--ion-color-contrast:var(--ion-color-danger-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-danger-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-danger-shade,#ad000d)!important;--ion-color-tint:var(--ion-color-danger-tint,#cb1a27)!important}.ion-color-light{--ion-color-base:var(--ion-color-light,#f4f5f8)!important;--ion-color-base-rgb:var(--ion-color-light-rgb,244, 245, 248)!important;--ion-color-contrast:var(--ion-color-light-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-light-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-light-shade,#d7d8da)!important;--ion-color-tint:var(--ion-color-light-tint,#f5f6f9)!important}.ion-color-medium{--ion-color-base:var(--ion-color-medium,#636469)!important;--ion-color-base-rgb:var(--ion-color-medium-rgb,99, 100, 105)!important;--ion-color-contrast:var(--ion-color-medium-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-medium-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-medium-shade,#57585c)!important;--ion-color-tint:var(--ion-color-medium-tint,#737478)!important}.ion-color-dark{--ion-color-base:var(--ion-color-dark,#222428)!important;--ion-color-base-rgb:var(--ion-color-dark-rgb,34, 36, 40)!important;--ion-color-contrast:var(--ion-color-dark-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-dark-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-dark-shade,#1e2023)!important;--ion-color-tint:var(--ion-color-dark-tint,#383a3e)!important}.ion-page{contain:layout size style;z-index:0;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}ion-modal>.ion-page{contain:layout style;height:100%;position:relative}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding:20px}@supports (padding-top:20px){html{--ion-safe-area-top:var(--ion-statusbar-padding)}}@supports (padding-top:env(safe-area-inset-top)){html{--ion-safe-area-top:var(--safe-area-inset-top,env(safe-area-inset-top));--ion-safe-area-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom));--ion-safe-area-left:var(--safe-area-inset-left,env(safe-area-inset-left));--ion-safe-area-right:var(--safe-area-inset-right,env(safe-area-inset-right))}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translate(0,0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow:hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-right-radius:8px;border-bottom-left-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width:0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:transform .3s cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion:reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width:0px;--inner-border-width:0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width:fit-content;--height:fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){height:0;display:none}b,strong{font-weight:700}img{max-width:100%}hr{box-sizing:content-box;border-width:0;height:1px}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{height:auto;font:inherit;color:inherit;overflow:auto}textarea::placeholder{padding-left:2px}form,input,optgroup,select{font:inherit;color:inherit;margin:0}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{font-family:inherit;font-style:inherit;font-variant:inherit;text-transform:none;cursor:pointer;-webkit-appearance:button;border:0;border-radius:0;padding:0;line-height:1}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner{border:0;padding:0}input::-moz-focus-inner{border:0;padding:0}input[type=number]::-webkit-inner-spin-button{height:auto}input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:#0000;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;width:100%;height:100%}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;position:fixed;overflow:hidden;transform:translateZ(0)}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout:none){html{font:var(--ion-dynamic-font,16px var(--ion-font-family))}}a{color:var(--ion-color-primary,#0054e9);background-color:#0000}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sup{top:-.5em}sub{bottom:-.25em}:root{--ion-color-primary:#f59e0b;--ion-color-primary-rgb:245, 158, 11;--ion-color-primary-contrast:#1a1208;--ion-color-primary-contrast-rgb:26, 18, 8;--ion-color-primary-shade:#d88a08;--ion-color-primary-tint:#f7ad2c;--ion-background-color:#fffaf3;--ion-background-color-rgb:255, 250, 243;--ion-text-color:#1a1208;--ion-text-color-rgb:26, 18, 8;--ion-color-step-50:#f6efe5;--ion-color-step-100:#ede2cf;--ion-color-step-150:#e3d4b8;--ion-color-step-200:#d9c6a1;--ion-color-step-300:#c5a87b;--ion-color-step-400:#b18a56;--ion-color-step-500:#8a6940;--ion-color-step-600:#6e5333;--ion-color-step-700:#533e26;--ion-color-step-800:#38291a;--ion-color-step-850:#2b1f13;--ion-color-step-900:#1a1208;--pw-success:#84cc16;--pw-warning:#fbbf24;--accent-soft:#f59e0b24;--accent-line:#f59e0b59;--pw-danger:#f87171;--pw-info:#38bdf8}.dark,.ion-palette-dark{--ion-background-color:#0e0908;--ion-background-color-rgb:14, 9, 8;--ion-text-color:#f5ede4;--ion-text-color-rgb:245, 237, 228;--ion-color-step-50:#181210;--ion-color-step-100:#1f1714;--ion-color-step-150:#2a201c;--ion-color-step-200:#36291f;--ion-color-step-300:#4a3829;--ion-color-step-400:#604734;--ion-color-step-500:#a89e92;--ion-color-step-600:#beb4a6;--ion-color-step-700:#d2c9bb;--ion-color-step-800:#e0d8c9;--ion-color-step-850:#eae2d4;--ion-color-step-900:#f5ede4}@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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--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);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-snug:1.375;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-foreground:var(--ion-text-color)}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.right-4{right:calc(var(--spacing) * 4)}.left-1\/2{left:50%}.z-50{z-index:50}.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}}.my-3{margin-block:calc(var(--spacing) * 3)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-full{height:100%}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-16{width:calc(var(--spacing) * 16)}.w-\[90vw\]{width:90vw}.w-full{width:100%}.max-w-\[90\%\]{max-width:90%}.max-w-md{max-width:var(--container-md)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.bg-\[var\(--destructive\)\]{background-color:var(--destructive)}.bg-\[var\(--popover\)\]{background-color:var(--popover)}.bg-\[var\(--primary\)\]{background-color:var(--primary)}.bg-\[var\(--secondary\)\]{background-color:var(--secondary)}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab, red, red)){.bg-black\/60{background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.bg-transparent{background-color:#0000}.p-3{padding:calc(var(--spacing) * 3)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--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))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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-\[\.25em\]{--tw-tracking:.25em;letter-spacing:.25em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-\[\#1a1208\]{color:#1a1208}.text-\[var\(--destructive-foreground\)\]{color:var(--destructive-foreground)}.text-\[var\(--muted-foreground\)\]{color:var(--muted-foreground)}.text-\[var\(--primary\)\]{color:var(--primary)}.text-\[var\(--primary-foreground\)\]{color:var(--primary-foreground)}.text-\[var\(--secondary-foreground\)\]{color:var(--secondary-foreground)}.text-foreground{color:var(--color-foreground)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px 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)}.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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-\[var\(--accent\)\]:hover{background-color:var(--accent)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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)}.focus-visible\:ring-\[var\(--ring\)\]:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:opacity-60:active{opacity:.6}.active\:opacity-70:active{opacity:.7}.active\:opacity-100:active{opacity:1}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}@media (width>=40rem){.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}}html,body,:root{-webkit-font-smoothing:antialiased;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace}:root{--ion-font-family:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}textarea,input[type=text],input[type=search],input[type=email]{color:inherit;font:inherit;background-color:#0000;border:0;outline:0}ul,ol{margin:0;padding-left:0;list-style:none}.cm-editor{height:100%;font-size:var(--fs-files-code);flex-direction:column;display:flex!important}.cm-scroller{min-height:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:inherit;flex:1 1 0;align-items:flex-start;line-height:1.5;overflow:auto;display:flex!important}.cm-content{min-width:0;caret-color:var(--ion-color-primary);font-size:inherit;flex:auto;padding:4px 0}.cm-cursor{border-left-color:var(--ion-color-primary)!important}.cm-gutters{-webkit-user-select:none;user-select:none;background-color:var(--ion-background-color);height:100%;color:var(--ion-color-step-300);border-right:1px solid var(--ion-color-step-150);flex:none;display:flex!important}.cm-gutter{flex-direction:column;display:flex}.cm-gutterElement{padding:0 8px}.cm-activeLine{background-color:#f59e0b0d}.cm-activeLineGutter{color:var(--ion-color-primary);background-color:#0000}.cm-line{padding:0 8px}.cm-selectionBackground{background-color:#f59e0b40!important}.cm-line ::selection{background-color:#f59e0b40!important}.cm-content ::selection{background-color:#f59e0b40!important}.cm-content .tok-keyword,.cm-content .tok-controlKeyword,.cm-content .tok-moduleKeyword{color:#f59e0b;font-weight:600}.cm-content .tok-string,.cm-content .tok-string2{color:#bef264}.cm-content .tok-number,.cm-content .tok-bool,.cm-content .tok-null{color:#fbbf24}.cm-content .tok-comment,.cm-content .tok-lineComment,.cm-content .tok-blockComment{color:#8a6940;font-style:italic}.cm-content .tok-typeName,.cm-content .tok-className,.cm-content .tok-namespace{color:#7dd3fc}.cm-content .tok-function{color:#f5ede4;font-weight:500}.cm-content .tok-variableName,.cm-content .tok-propertyName{color:#f5ede4}.cm-content .tok-operator,.cm-content .tok-punctuation{color:#a89e92}.cm-content .tok-tagName{color:#f472b6}.cm-content .tok-attributeName{color:#84cc16}:root{--background:var(--ion-background-color);--foreground:var(--ion-text-color);--card:var(--ion-background-color);--card-foreground:var(--ion-text-color);--popover:var(--ion-color-step-50);--popover-foreground:var(--ion-text-color);--primary:var(--ion-color-primary);--primary-foreground:var(--ion-color-primary-contrast);--secondary:var(--ion-color-step-100);--secondary-foreground:var(--ion-text-color);--muted:var(--ion-color-step-100);--muted-foreground:var(--ion-color-step-500);--accent:var(--ion-color-step-100);--accent-foreground:var(--ion-text-color);--destructive:#eb445a;--destructive-foreground:#fff;--border:var(--ion-color-step-150);--input:var(--ion-color-step-150);--ring:var(--ion-color-primary);--radius:.5rem}@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}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@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-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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}:root{--bg:#0e0908;--bg-deep:#080503;--surface:#15100e;--surface-2:#1c1612;--surface-3:#251c17;--border:#2a201c;--border-soft:#1f1714;--text:#f5ede4;--text-2:#b9ad9e;--text-3:#7c7066;--text-4:#50463e;--accent:#f59e0b;--accent-2:#fbbf24;--accent-soft:#f59e0b24;--accent-line:#f59e0b59;--add:#84cc16;--add-bg:#84cc161f;--del:#f87171;--del-bg:#f871711f;--info:#38bdf8;--warn:#fbbf24;--header-h:44px;--tabbar-h:64px;--inset-top:max(env(safe-area-inset-top,0px), var(--ion-safe-area-top,0px));--inset-bottom:max(env(safe-area-inset-bottom,0px), var(--ion-safe-area-bottom,0px));--keyboard-inset:0px;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ui:-apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,textarea{color:inherit;background:0 0;border:0;outline:0;font-family:inherit}ul{margin:0;padding:0;list-style:none}.pwa-update-chip{right:12px;bottom:calc(var(--tabbar-h) + var(--inset-bottom) + 12px);z-index:240;height:34px;color:var(--accent);border:1px solid var(--accent-line);-webkit-backdrop-filter:blur(14px)saturate(150%);background:#15100ec7;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex;position:fixed;box-shadow:0 10px 24px #0000005c}.pwa-update-chip:disabled{opacity:.75}.pwa-update-chip:active{transform:scale(.97)}.pwa-update-backdrop{z-index:240;padding:16px 12px calc(var(--tabbar-h) + var(--inset-bottom) + 12px);pointer-events:none;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.pwa-update-dialog{border:1px solid var(--accent-line);pointer-events:auto;background:#15100ef5;border-radius:8px;grid-template-columns:38px minmax(0,1fr);gap:12px;width:min(430px,100%);min-height:128px;padding:14px;display:grid;position:relative;box-shadow:0 22px 70px #0000008f}.pwa-update-icon{width:38px;height:38px;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:50%;place-items:center;display:grid}.pwa-update-copy{min-width:0;padding-right:28px}.pwa-update-copy h2{letter-spacing:0;color:var(--text);margin:0 0 5px;font-size:15px;font-weight:800;line-height:1.2}.pwa-update-copy p{color:var(--text-2);margin:0;font-size:12px;line-height:1.45}.pwa-update-close{width:30px;height:30px;color:var(--text-3);border-radius:8px;place-items:center;display:grid;position:absolute;top:8px;right:8px}.pwa-update-close:hover{color:var(--text);background:var(--surface-2)}.pwa-update-actions{grid-column:1/-1;grid-template-columns:minmax(86px,.7fr) minmax(120px,1fr);gap:8px;margin-top:2px;display:grid}.pwa-update-primary,.pwa-update-secondary{border-radius:8px;justify-content:center;align-items:center;gap:7px;height:38px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.pwa-update-primary{color:#1b1205;background:var(--accent)}.pwa-update-secondary{color:var(--text-2);border:1px solid var(--border);background:var(--surface-2)}.pwa-update-primary:disabled,.pwa-update-secondary:disabled{opacity:.7;cursor:wait}.statusbar{height:22px;color:var(--text);letter-spacing:-.01em;flex:none;justify-content:space-between;align-items:center;padding:0 20px;font-size:12px;font-weight:600;display:flex}.statusbar .glyphs{color:var(--text);align-items:center;gap:5px;display:flex}.statusbar .glyphs svg{display:block}.header{height:calc(var(--header-h) + var(--inset-top));padding:var(--inset-top) 12px 0;border-bottom:1px solid var(--border-soft);background:var(--bg);z-index:30;flex:none;align-items:center;gap:10px;display:flex;position:relative}.avatar{background:linear-gradient(135deg, var(--accent), #d97706 60%, #92400e);color:#1a1208;letter-spacing:.02em;border-radius:999px;flex:none;place-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:grid;box-shadow:0 0 0 1px #ffffff0a}.avatar.pending-approval{position:relative}.avatar .avatar-alert{background:var(--del);border:2px solid var(--bg);border-radius:999px;width:9px;height:9px;position:absolute;top:-2px;right:-2px;box-shadow:0 0 0 2px #f8717138}.header .actions{flex:none;align-items:center;gap:4px;display:flex}.header-title{min-width:0;color:var(--text);text-align:center;flex:auto;font-size:14px;font-weight:600}.proj-chip{min-width:0;height:30px;color:var(--text);border-radius:8px;flex:auto;align-items:center;gap:7px;padding:0 8px 0 4px;display:flex}.proj-chip:hover{background:var(--surface-2)}.proj-chip:active{background:var(--surface-3)}.proj-dot{width:22px;height:22px;font-size:11px;font-weight:700;font-family:var(--ui);color:#1a1208;border-radius:6px;flex:none;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #00000026}.proj-dot.big{border-radius:8px;width:32px;height:32px;font-size:14px}.proj-chip .proj-name{letter-spacing:-.005em;color:var(--text);white-space:nowrap;text-overflow:ellipsis;max-width:110px;font-size:13.5px;font-weight:600;overflow:hidden}.proj-chip .proj-branch{color:var(--accent);font-family:var(--mono);background:var(--accent-soft);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;flex:0 auto;align-items:center;gap:3px;max-width:110px;padding:2px 5px;font-size:10.5px;display:inline-flex;overflow:hidden}.proj-chip .proj-dirty{color:var(--warn);margin-left:2px}.proj-chip .proj-chev{color:var(--text-3);flex:none;margin-left:-2px}.sheet.proj-sheet{flex-direction:column;max-height:86%;padding-bottom:8px;display:flex}.proj-sheet-hd{flex:none;padding:4px 18px 12px}.proj-sheet-hd h2{margin:0;padding:0;font-size:17px;font-weight:600}.proj-list{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.proj-row{border-top:1px solid var(--border-soft);text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 18px;display:grid}.proj-row:hover,.proj-row.active{background:var(--surface-2)}.proj-row-body{min-width:0}.proj-row-top{align-items:baseline;gap:8px;margin-bottom:3px;display:flex}.proj-row-name{color:var(--text);font-size:14px;font-weight:600}.proj-active-pill{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:2px 5px;font-size:9.5px;font-weight:700}.proj-row-meta{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:10px;font-size:11px;display:flex}.proj-row-branch{color:var(--text-2);font-family:var(--mono);align-items:center;gap:3px;display:inline-flex}.proj-row-dirty{color:var(--warn);font-family:var(--mono)}.proj-row-running{color:var(--add);font-family:var(--mono);align-items:center;gap:4px;display:inline-flex}.proj-row-running .run-dot{background:var(--add);width:6px;height:6px;box-shadow:0 0 6px var(--add);border-radius:999px;animation:1.6s ease-in-out infinite pulse}.proj-row-alert{color:var(--accent);align-items:center;gap:4px;display:inline-flex}.proj-row-alert .alert-dot{background:var(--accent);border-radius:999px;width:6px;height:6px;animation:1.6s ease-in-out infinite pulse}.proj-row-ts{color:var(--text-4);font-size:11px;font-family:var(--mono);flex:none}.proj-sheet-foot{border-top:1px solid var(--border);flex:none;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px;padding:12px 14px 0;display:grid}.proj-action{background:var(--surface-2);height:42px;color:var(--text);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.proj-action:active{background:var(--surface-3)}.proj-action svg{color:var(--accent)}.proj-action:disabled{opacity:.35}.proj-action.danger,.proj-action.danger svg{color:var(--del)}.proj-action.primary{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-line)}.proj-action.primary svg{color:var(--accent)}.proj-action.primary.filled{background:var(--accent);color:#1a1208;border:0;box-shadow:0 6px 16px #f59e0b4d}.proj-action.primary.filled svg{color:#1a1208}.proj-action.danger.filled{color:var(--del);background:#f871712e;border:1px solid #f8717166}.proj-action.danger.filled svg{color:var(--del)}@keyframes pulse{50%{opacity:.65;transform:scale(1.3)}}.confirm{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:18px 24px 14px;display:flex}.confirm-ic{border-radius:16px;place-items:center;width:56px;height:56px;margin-bottom:6px;display:grid}.confirm-title{color:var(--text);font-size:16px;font-weight:600}.confirm-sub{color:var(--text-3);max-width:280px;font-size:13px;line-height:1.45}.confirm-sub b{color:var(--text);font-weight:600}.confirm-actions{grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:16px;display:grid}.picker{flex-direction:column;flex:auto;min-height:0;display:flex}.picker-hd{flex:none;justify-content:space-between;align-items:center;padding:0 12px 8px;display:flex}.picker-title{font-size:14px;font-weight:600}.picker-back{color:var(--accent);border-radius:6px;align-items:center;gap:2px;padding:4px 6px;font-size:13px;font-weight:500;display:inline-flex}.picker-back:hover{background:var(--surface-2)}.crumbs{scrollbar-width:none;border-bottom:1px solid var(--border-soft);flex:none;align-items:center;gap:4px;padding:6px 14px 10px;display:flex;overflow-x:auto}.crumbs::-webkit-scrollbar{display:none}.crumb{background:var(--surface-2);color:var(--text-2);font-size:12px;font-family:var(--mono);white-space:nowrap;border-radius:7px;flex:none;align-items:center;gap:4px;padding:5px 10px;font-weight:500;display:inline-flex}.crumb.on{background:var(--accent-soft);color:var(--accent)}.crumb:active{background:var(--surface-3)}.crumb-sep{color:var(--text-4);flex:none;place-items:center;display:inline-grid}.picker-body{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:4px 0;overflow-y:auto}.pick-row{border-bottom:1px solid var(--border-soft);text-align:left;grid-template-columns:40px 1fr auto auto;align-items:center;gap:12px;width:100%;padding:12px 16px;display:grid}.pick-row:active{background:var(--surface-2)}.pick-row.up{border-bottom:1px solid var(--border);background:#f59e0b05}.pick-row.file-row{opacity:.55}.pick-ic{background:var(--surface-2);width:32px;height:32px;color:var(--text-2);border-radius:8px;place-items:center;display:grid}.pick-ic.folder{color:var(--accent)}.pick-row.up .pick-ic{background:var(--accent-soft);color:var(--accent)}.pick-name{color:var(--text);font-size:14.5px;font-weight:500}.pick-name.muted{color:var(--text-3);font-family:var(--mono);font-size:12.5px}.pick-count{font-family:var(--mono);color:var(--text-4);background:var(--surface-2);border-radius:4px;padding:1px 6px;font-size:11px}.picker-foot{border-top:1px solid var(--border);flex-direction:column;flex:none;gap:8px;padding:12px 14px 0;display:flex}.picker-selected{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:10px;padding:8px 12px}.picker-selected .ps-lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin-bottom:2px;font-size:10.5px;font-weight:700;display:block}.picker-selected .ps-path{font-family:var(--mono);color:var(--accent);word-break:break-all;font-size:12.5px;display:block}.cop-backdrop{z-index:60;background:#00000073;animation:.18s fadein;position:absolute;inset:0}@keyframes fadein{0%{opacity:0}}.cop{left:8px;right:8px;bottom:calc(var(--tabbar-h) + var(--inset-bottom) + 12px);z-index:61;background:var(--surface);border:1px solid var(--border);max-height:calc(100% - var(--tabbar-h) - var(--inset-bottom) - 48px);transform-origin:bottom;border-radius:14px;padding:4px 6px 12px;animation:.24s cubic-bezier(.2,.7,.2,1) copin;position:fixed;overflow-y:auto;box-shadow:0 -10px 40px #0000008c,0 0 0 1px #0006}.cop-backdrop{position:fixed}@keyframes copin{0%{opacity:0;transform:translateY(16px)}}.cop-hd{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:8px 8px 6px 12px;display:flex}.cop-title{letter-spacing:.01em;color:var(--text);font-size:12px;font-weight:600}.cop-close{width:26px;height:26px;color:var(--text-3);border-radius:6px;place-items:center;display:grid}.cop-close:hover{background:var(--surface-2);color:var(--text)}.cop-section{border-top:1px solid var(--border-soft);padding:10px 8px}.cop-section:nth-child(2){border-top:0}.cop-rows{flex-direction:column;padding:4px 4px 6px;display:flex}.cop-row{text-align:left;border-radius:10px;grid-template-columns:28px 1fr auto auto;align-items:center;gap:10px;padding:12px 10px;display:grid}.cop-row:hover,.cop-row:active{background:var(--surface-2)}.cop-row-fixed{cursor:default}.cop-row-fixed:hover,.cop-row-fixed:active{background:0 0}.cop-row .cr-ic{background:var(--surface-2);width:28px;height:28px;color:var(--accent);border-radius:7px;place-items:center;display:grid}.cop-row:hover .cr-ic{background:var(--surface-3)}.cop-row .cr-lbl{color:var(--text);font-size:14px;font-weight:500}.cop-row .cr-val{color:var(--text-3);align-items:center;gap:4px;font-size:12.5px;display:inline-flex}.cop-row .cr-val.capitalize{text-transform:capitalize}.cop-row .cr-chev{color:var(--text-4)}.cop-row .cr-fixed{color:var(--text-4);font-size:10px}.cop-row .mode-chip{background:var(--surface-2);color:var(--text-2);border-radius:999px;align-items:center;gap:4px;padding:2px 7px;font-size:11.5px;font-weight:500;display:inline-flex}.cop-back{color:var(--accent);border-radius:6px;align-items:center;gap:2px;margin-right:auto;padding:4px 6px;font-size:12.5px;display:inline-flex}.cop-back:hover{background:var(--surface-2)}.cop-subbody{padding:8px 10px 10px}.cop-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);padding:0 4px 8px;font-size:10px;font-weight:700}.cop-models{flex-direction:column;gap:4px;display:flex}.cop-model{text-align:left;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:9px;padding:8px 10px}.cop-model.on{border-color:var(--accent-line);background:linear-gradient(180deg, #f59e0b0f, transparent 70%), var(--surface-2)}.cop-model-top{align-items:baseline;gap:6px;margin-bottom:2px;display:flex}.cop-model-name{color:var(--text);font-size:14px;font-weight:600}.cop-model-ver{font-family:var(--mono);color:var(--text-3);font-size:11px}.cop-model.on .cop-model-ver{color:var(--accent)}.cop-model svg{color:var(--accent);margin-left:auto}.cop-model-desc{color:var(--text-3);font-size:12px}.cop-seg{flex-direction:column;gap:4px;display:flex}.cop-seg-item{background:var(--surface-2);border:1px solid var(--border-soft);text-align:left;border-radius:9px;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.cop-seg-item .ic{background:var(--surface-3);width:26px;height:26px;color:var(--text-3);border-radius:7px;place-items:center;display:grid}.cop-seg-item.on{border-color:var(--accent-line);background:linear-gradient(180deg, #f59e0b0f, transparent 70%), var(--surface-2)}.cop-seg-item.on .ic{background:var(--accent);color:#1a1208}.cop-seg-item .lbl{color:var(--text);font-size:13.5px;font-weight:600}.cop-seg-item .sub{color:var(--text-3);grid-area:2/2;font-size:11.5px}.cop-effort{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.cop-effort-item{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:9px;flex-direction:column;align-items:center;gap:6px;padding:9px 8px;display:flex}.cop-effort-item.on{border-color:var(--accent-line);background:linear-gradient(180deg, #f59e0b14, transparent 70%), var(--surface-2)}.cop-effort-item .bars{align-items:end;gap:3px;height:24px;display:flex}.cop-effort-item .bar{background:var(--surface-3);border-radius:2px;width:4px}.cop-effort-item .bar:first-child{height:6px}.cop-effort-item .bar:nth-child(2){height:10px}.cop-effort-item .bar:nth-child(3){height:15px}.cop-effort-item .bar:nth-child(4){height:20px}.cop-effort-item .bar:nth-child(5){height:24px}.cop-effort-item.on .bar.fill{background:var(--accent)}.cop-effort-item .lbl{text-transform:capitalize;color:var(--text-2);font-size:11px;font-weight:600}.cop-effort-item.on .lbl{color:var(--text)}.cop-hint{color:var(--text-3);margin-top:8px;padding:0 4px;font-size:11.5px}.cop-usage{padding:0 4px}.cop-usage-header{min-height:24px;color:var(--text-3);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11.5px;display:flex}.cop-usage-row{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.cop-usage-row .k{color:var(--text-2);font-size:12px}.cop-usage-row .v{font-family:var(--mono);color:var(--text);font-size:11.5px}.cop-limit-card{background:var(--surface-2);border:1px solid var(--border);border-radius:9px;margin-top:8px;padding:10px}.cop-limit-card:first-of-type{margin-top:0}.cop-limit-title{color:var(--text);font-size:12px;font-weight:650}.cop-limit-stats{font-family:var(--mono);color:var(--text-3);justify-content:space-between;gap:8px;margin-top:7px;font-size:10.5px;display:flex}.cop-usage-refresh{min-height:24px;color:var(--text-2);border-radius:6px;align-items:center;gap:4px;padding:4px 6px;font-size:10.5px;display:inline-flex}.cop-usage-refresh:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.cop-usage-refresh:disabled{opacity:.55}.cop-usage-refresh .spin{animation:1s linear infinite cop-usage-spin}@keyframes cop-usage-spin{to{transform:rotate(360deg)}}.cop-usage-bar{background:var(--surface-3);border-radius:999px;height:6px;overflow:hidden}.cop-usage-bar .fill{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:999px;height:100%}.cop-usage-stats{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px;display:grid}.cop-usage-stats>div{background:var(--surface-2);border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.cop-usage-stats .n{font-family:var(--mono);color:var(--text);font-size:14px;font-weight:700}.cop-usage-stats .l{color:var(--text-3);letter-spacing:.02em;font-size:10.5px}.icon-btn{width:32px;height:32px;color:var(--text-2);border-radius:8px;place-items:center;display:grid}.icon-btn:hover,.icon-btn:active{background:var(--surface-2);color:var(--text)}.icon-btn.has-badge{position:relative}.icon-btn .dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 2px var(--bg);border-radius:999px;position:absolute;top:7px;right:7px}.popover{top:calc(var(--header-h) + 4px);background:var(--surface-2);border:1px solid var(--border);z-index:100;border-radius:12px;width:220px;padding:6px;position:absolute;left:8px;box-shadow:0 18px 40px #00000080}.popover .who{border-bottom:1px solid var(--border-soft);align-items:center;gap:10px;margin-bottom:4px;padding:10px 10px 8px;display:flex}.popover .who .avatar{width:36px;height:36px;font-size:13px}.popover .who .name{font-size:13px;font-weight:600}.popover .who .email{color:var(--text-3);font-size:11px}.popover .item{color:var(--text);text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:13px;display:flex}.popover .item:hover{background:var(--surface-3)}.popover .item .k{color:var(--text-3);font-size:11px;font-family:var(--mono);margin-left:auto}.popover .item.danger{color:var(--del)}.popover .sep{background:var(--border-soft);height:1px;margin:4px 6px}.body{flex-direction:column;flex:auto;min-height:0;display:flex;position:relative;overflow:hidden}.scrim{opacity:0;pointer-events:none;z-index:40;background:#0000008c;transition:opacity .18s;position:absolute;inset:0}.scrim.on{opacity:1;pointer-events:auto}.tabbar{z-index:30;height:calc(var(--tabbar-h) + var(--inset-bottom));padding-bottom:var(--inset-bottom);border-top:1px solid var(--border-soft);-webkit-backdrop-filter:blur(20px)saturate(160%);background:#0e0908eb;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar .tab{color:var(--text-3);letter-spacing:.01em;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding-top:6px;font-size:11px;font-weight:500;display:flex;position:relative}.tabbar .tab svg{display:block}.tabbar .tab.active,.tabbar .tab.active .glyph{color:var(--accent)}.tabbar .tab .glyph{border-radius:999px;place-items:center;width:44px;height:28px;transition:background .15s;display:grid}.tabbar .tab.active .glyph{background:var(--accent-soft)}.tabbar .tab .pip{background:var(--accent);border-radius:999px;width:6px;height:6px;position:absolute;top:8px;right:38%}.chat-keyboard-open .tabbar,.terminal-keyboard-open .tabbar{display:none}.drawer{padding-top:var(--inset-top);padding-bottom:var(--inset-bottom);background:var(--surface);border-right:1px solid var(--border);z-index:50;flex-direction:column;width:86%;max-width:340px;transition:transform .22s cubic-bezier(.2,.7,.2,1);display:flex;position:absolute;top:0;bottom:0}.drawer.left{left:0;transform:translate(-101%)}.drawer.left.on{transform:translate(0)}.drawer.right{border-right:0;border-left:1px solid var(--border);left:auto;right:0;transform:translate(101%)}.drawer.right.on{transform:translate(0)}.drawer-hd{border-bottom:1px solid var(--border-soft);flex:none;align-items:center;gap:8px;padding:10px 12px;display:flex}.drawer-hd .h-title{color:var(--text);letter-spacing:.01em;flex:auto;font-size:12px;font-weight:600}.drawer-hd .h-title .sub{color:var(--text-3);font-size:10px;font-weight:500;font-family:var(--mono);margin-top:2px;display:block}.drawer-body{-webkit-overflow-scrolling:touch;flex:auto;overflow-y:auto}.filter{background:var(--surface-2);border:1px solid var(--border-soft);color:var(--text-2);border-radius:8px;align-items:center;gap:6px;margin:8px 10px;padding:7px 10px;font-size:12px;display:flex}.filter:focus-within{border-color:var(--accent-line)}.filter input{flex:1;font-size:12px}.filter input::placeholder{color:var(--text-3)}.filter .kbd{font-family:var(--mono);background:var(--surface-3);color:var(--text-3);border-radius:4px;padding:1px 5px;font-size:10px}.tree{padding:4px 6px 14px}.tree li{-webkit-user-select:none;user-select:none}.tree .row{font-size:var(--fs-files-tree);color:var(--text);cursor:default;border-radius:6px;align-items:center;gap:7px;padding:7px 8px;line-height:1.2;display:flex}.tree .row:hover{background:var(--surface-2)}.tree .row.active{background:var(--accent-soft);color:var(--accent-2)}.tree .row .chev{width:14px;height:14px;color:var(--text-3);place-items:center;transition:transform .12s;display:inline-grid}.tree .row .chev.open{color:var(--text-2);transform:rotate(90deg)}.tree .row .ico{width:14px;height:14px;color:var(--text-3);place-items:center;display:inline-grid}.tree .row.folder .ico{color:var(--accent)}.tree .row .name{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.tree .row .status{font-family:var(--mono);text-align:center;border-radius:3px;flex:none;width:14px;font-size:10px;font-weight:600}.tree .row .status.M{color:var(--warn)}.tree .row .status.A{color:var(--add)}.tree .row .status.D{color:var(--del)}.tree .indent{flex:none;align-items:stretch;display:inline-flex}.tree .indent .rail{border-left:1px solid var(--border-soft);width:14px;margin-left:6px}.files-pane{flex-direction:column;flex:auto;min-height:0;display:flex}.tabstrip{border-bottom:1px solid var(--border-soft);-webkit-overflow-scrolling:touch;scrollbar-width:none;background:var(--bg);flex:none;align-items:stretch;gap:0;height:38px;display:flex;overflow-x:auto}.tabstrip::-webkit-scrollbar{display:none}.tabstrip .open-drawer{width:38px;color:var(--text-2);border-right:1px solid var(--border-soft);flex:none;place-items:center;display:grid}.tabstrip .open-drawer:active{background:var(--surface-2)}.tabstrip .ftab{border-right:1px solid var(--border-soft);color:var(--text-3);font-size:13px;font-family:var(--mono);white-space:nowrap;flex:none;align-items:center;gap:6px;padding:0 10px 0 12px;display:flex;position:relative}.tabstrip .ftab .filename{letter-spacing:-.01em}.tabstrip .ftab.active{color:var(--text);background:var(--surface)}.tabstrip .ftab.active:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:-1px;left:0;right:0}.tabstrip .ftab .close{width:18px;height:18px;color:var(--text-3);border-radius:4px;place-items:center;display:grid}.tabstrip .ftab .close:hover{background:var(--surface-3);color:var(--text)}.tabstrip .ftab .dot{background:var(--warn);border-radius:999px;width:6px;height:6px}.file-hd{border-bottom:1px solid var(--border-soft);background:var(--surface);color:var(--text-3);font-size:12px;font-family:var(--mono);flex:none;align-items:center;gap:8px;padding:9px 12px;display:flex}.file-hd .path{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.file-hd .seg{background:var(--bg);border:1px solid var(--border-soft);border-radius:7px;flex:none;padding:2px;display:inline-flex}.file-hd .seg button{font-family:var(--ui);color:var(--text-2);letter-spacing:.01em;border-radius:5px;padding:4px 10px;font-size:12px;font-weight:500}.file-hd .seg button.on{background:var(--accent);color:#1a1208;font-weight:600}.file-hd .seg button:disabled{color:var(--text-4)}.file-hd .edit-pill{background:var(--accent-soft);color:var(--accent);font-family:var(--ui);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;align-items:center;gap:4px;padding:2px 7px;font-size:10.5px;font-weight:600;display:inline-flex}.edit-mode-toggle{background:var(--surface-2);border:1px solid var(--border-soft);font-family:var(--ui);letter-spacing:.06em;color:var(--text-3);border-radius:999px;align-items:center;gap:8px;padding:4px 6px 4px 10px;font-size:11px;font-weight:700;display:inline-flex}.edit-mode-toggle.on{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.edit-mode-toggle .emt-label{line-height:1}.edit-mode-toggle .emt-switch{background:var(--surface-3);border-radius:999px;flex:none;width:26px;height:16px;position:relative}.edit-mode-toggle.on .emt-switch{background:var(--accent)}.edit-mode-toggle .emt-knob{background:var(--text);border-radius:999px;width:12px;height:12px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.edit-mode-toggle.on .emt-knob{background:#1a1208;transform:translate(10px)}.code-edit{min-height:100%;font-family:var(--mono);font-size:var(--fs-files-code);grid-template-columns:auto 1fr;line-height:1.55;display:grid}.code-edit-gutter{background:var(--surface);border-right:1px solid var(--border-soft);padding:6px 0 60px}.code-edit-gutter .ln{text-align:right;color:var(--text-4);font-variant-numeric:tabular-nums;padding:0 10px}.code-edit-area{font-family:var(--mono);font-size:inherit;color:var(--text);white-space:pre;overflow-wrap:normal;resize:none;min-height:100%;caret-color:var(--accent);background:0 0;border:0;outline:0;padding:6px 12px 60px 8px;line-height:1.55}.code-edit-area:focus{background:#f59e0b08}.file-body{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:auto}.code{font-family:var(--mono);font-size:var(--fs-files-code);grid-template-columns:auto 1fr;gap:0 8px;padding:6px 0 60px;line-height:1.55;display:grid}.code .ln{text-align:right;color:var(--text-4);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;padding-left:10px}.code .lc{white-space:pre;padding-right:12px}.t-kw{color:#f59e0b}.t-str{color:#a3e635}.t-num{color:#fbbf24}.t-com{color:var(--text-4);font-style:italic}.t-fn{color:#fdba74}.t-typ{color:#fcd34d}.t-pun{color:var(--text-3)}.t-tag{color:#f59e0b}.t-attr{color:#fdba74}.t-prop{color:#fcd34d}.diff{font-family:var(--mono);font-size:var(--fs-files-code);padding:6px 0 60px;line-height:1.55}.diff .diff-nav{z-index:3;background:var(--surface);border-bottom:1px solid var(--border-soft);grid-template-columns:38px 1fr 38px;align-items:center;min-height:42px;margin:-6px 0 6px;display:grid;position:sticky;top:0;box-shadow:0 5px 12px #00000029}.diff .diff-nav button{width:38px;height:38px;color:var(--text-2);place-items:center;display:grid}.diff .diff-nav button:active:not(:disabled){background:var(--surface-2)}.diff .diff-nav button:disabled{color:var(--text-4)}.diff .diff-nav span{text-align:center;color:var(--text-3);letter-spacing:.02em;font-size:11px;font-weight:600}.diff .diff-nav strong{color:var(--accent);font-variant-numeric:tabular-nums}.diff .hunk-hd{background:var(--surface-2);color:var(--text-3);border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);margin:6px 0;padding:4px 12px;font-size:.84em}.diff .row{grid-template-columns:30px 30px 1fr;align-items:stretch;display:grid}.diff .row .ln{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-4);padding:0 6px;font-size:.92em;line-height:1.7}.diff .row .mark{text-align:center;color:var(--text-4);font-weight:700;line-height:1.55}.diff .row .text{white-space:pre;text-overflow:ellipsis;padding-right:12px;overflow:hidden}.diff .diff-change{border-left:4px solid #0000;margin:6px 0;scroll-margin-top:54px;transition:border-color .16s,box-shadow .16s}.diff .diff-change.active{border-left-color:var(--accent);box-shadow:0 0 0 1px #f59e0b73,0 5px 16px #0000002e}.diff .row.add{box-shadow:inset 4px 0 0 var(--add);background:#84cc1638}.diff .row.add .mark,.diff .row.add .ln{color:var(--add)}.diff .row.add .text{color:#ecfccb}.diff .row.del{box-shadow:inset 4px 0 0 var(--del);background:#f8717138}.diff .row.del .mark,.diff .row.del .ln{color:var(--del)}.diff .row.del .text{color:#fee2e2}.empty{color:var(--text-3);text-align:center;flex:auto;place-items:center;padding:30px;font-size:13px;display:grid}.empty .big{background:var(--surface-2);width:56px;height:56px;color:var(--accent);border-radius:14px;place-items:center;margin:0 auto 14px;display:grid}.empty .hint{color:var(--text-4);margin-top:6px;font-size:11px}.empty-cta{background:var(--accent);color:#1a1208;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:600;box-shadow:0 6px 16px #f59e0b4d}.empty-cta:active{opacity:.85}.save-bar{left:0;right:0;bottom:calc(var(--tabbar-h) + var(--inset-bottom));z-index:25;background:var(--surface);border-top:1px solid var(--border-soft);align-items:center;gap:8px;padding:10px 14px;display:flex;position:fixed;box-shadow:0 -6px 18px #00000040}.save-bar-label{color:var(--text-2);flex:1;font-size:12px;font-weight:500}.save-bar-discard{color:var(--text-2);background:var(--surface-2);cursor:pointer;border:0;border-radius:8px;padding:8px 14px;font-size:12px}.save-bar-discard:disabled{opacity:.5;cursor:not-allowed}.save-bar-save{background:var(--accent);color:#1a1208;cursor:pointer;border:0;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;box-shadow:0 4px 12px #f59e0b59}.save-bar-save:active{transform:translateY(1px)}.save-bar-save:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.fab{background:var(--accent);color:#1a1208;z-index:20;border-radius:999px;place-items:center;width:44px;height:44px;display:grid;position:absolute;bottom:16px;left:14px;box-shadow:0 12px 30px #f59e0b4d,0 0 0 1px #0000004d}.fab:active{transform:scale(.96)}.ctx-bar{z-index:25;align-items:center;gap:8px;animation:.18s cubic-bezier(.2,.7,.2,1) ctxin;display:flex;position:absolute;bottom:14px;left:12px;right:12px}@keyframes ctxin{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ctx-bar .ctx-dismiss{background:var(--surface-2);border:1px solid var(--border);width:36px;height:44px;color:var(--text-2);border-radius:12px;flex:none;place-items:center;display:grid;box-shadow:0 8px 20px #0006}.ctx-bar .ctx-dismiss:active{background:var(--surface-3)}.ctx-bar .ctx-pill{background:var(--accent);color:#1a1208;text-align:left;border-radius:12px;flex:1;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;height:44px;padding:0 14px 0 12px;display:grid;box-shadow:0 12px 30px #f59e0b52,0 0 0 1px #0003}.ctx-bar .ctx-pill:active{transform:scale(.99)}.ctx-bar .ctx-pill .ctx-label{letter-spacing:-.005em;white-space:nowrap;font-size:13px;font-weight:600}.ctx-bar .ctx-pill .ctx-path{font-family:var(--mono);color:#1a1208a6;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;overflow:hidden}.files-pane:has(.ctx-bar) .fab{display:none}.term-pane.selecting .term-body{padding-right:60px}.term-body .l.sel{box-shadow:inset 3px 0 0 var(--accent);background:#f59e0b14;border-radius:0 4px 4px 0;margin-left:-6px;padding-left:6px}.term-scrubber{z-index:5;touch-action:none;width:44px;position:absolute;top:15%;bottom:15%;right:8px}.term-scrubber .scrub-track{background:var(--surface-2);pointer-events:none;border-radius:999px;width:4px;position:absolute;top:0;bottom:0;right:18px}.term-scrubber .scrub-tick{background:var(--surface-3);border-radius:999px;width:10px;height:2px;position:absolute;left:-3px}.term-scrubber .scrub-tick.disabled{background:var(--surface-2);opacity:.55}.term-scrubber .scrub-tick-label{font-family:var(--mono);color:var(--text-3);letter-spacing:.02em;font-size:10px;font-weight:600;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.term-scrubber .scrub-tick.disabled .scrub-tick-label{opacity:.5}.term-scrubber .scrub-handle{background:var(--accent);color:#1a1208;width:40px;height:36px;font-family:var(--mono);pointer-events:none;border-radius:12px;place-items:center;font-size:14px;font-weight:700;transition:bottom .12s cubic-bezier(.2,.7,.2,1);display:grid;position:absolute;right:0;transform:translateY(50%);box-shadow:0 8px 18px #f59e0b66,0 0 0 1px #0000004d}.term-scrubber .scrub-handle:before{content:"";background:var(--accent);width:12px;height:2px;position:absolute;top:50%;left:-8px;transform:translateY(-50%)}.term-sel-bar{border-top:1px solid var(--border-soft);background:var(--surface);flex:none;grid-template-columns:44px 1fr auto auto;align-items:center;gap:8px;padding:10px 12px 12px;display:grid}.term-sel-bar .ts-cancel{background:var(--surface-2);width:36px;height:36px;color:var(--text-2);border-radius:10px;place-items:center;display:grid}.term-sel-bar .ts-cancel:active{background:var(--surface-3)}.term-sel-bar .ts-count{align-items:baseline;gap:8px;min-width:0;display:flex}.term-sel-bar .ts-count .ts-n{font-family:var(--mono);color:var(--accent);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1}.term-sel-bar .ts-count .ts-lbl{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.term-sel-bar .ts-copy{background:var(--surface-2);width:36px;height:36px;color:var(--text-2);border-radius:10px;place-items:center;display:grid}.term-sel-bar .ts-copy:disabled{color:var(--text-4)}.term-sel-bar .ts-copy:not(:disabled):active{background:var(--surface-3);transform:scale(.97)}.term-sel-bar .ts-quote{background:var(--accent);color:#1a1208;border-radius:10px;align-items:center;gap:8px;height:36px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex;box-shadow:0 6px 16px #f59e0b4d}.term-sel-bar .ts-quote:disabled{background:var(--surface-3);color:var(--text-4);box-shadow:none}.term-sel-bar .ts-quote:not(:disabled):active{transform:scale(.97)}.term-classic-bar{border-top:1px solid var(--border-soft);background:var(--surface);flex:none;grid-template-columns:44px 1fr;align-items:center;gap:8px;min-height:58px;padding:9px 12px 11px;display:grid}.term-classic-bar .ts-cancel{width:36px;height:36px;color:var(--text-2);background:var(--surface-2);border-radius:10px;place-items:center;display:grid}.term-classic-bar .ts-cancel:active{background:var(--surface-3)}.term-classic-bar b{color:var(--text);font-size:12.5px;display:block}.term-classic-bar span{color:var(--text-3);margin-top:2px;font-size:11px;line-height:1.3;display:block}.term-pane,.term-stage{flex-direction:column;flex:auto;min-height:0;display:flex;position:relative}.term-tabs{border-bottom:1px solid var(--border-soft);background:var(--bg);scrollbar-width:none;flex:none;height:38px;display:flex;overflow-x:auto}.term-tabs::-webkit-scrollbar{display:none}.term-tabs .ttab{font-family:var(--mono);color:var(--text-3);letter-spacing:.01em;border-right:1px solid var(--border-soft);flex:none;align-items:center;gap:6px;padding:0 14px;font-size:12px;display:flex;position:relative}.term-tabs .ttab .dot{background:var(--add);width:6px;height:6px;box-shadow:0 0 6px var(--add);border-radius:999px}.term-tabs .ttab.active{color:var(--text);background:var(--surface)}.term-tabs .ttab.active:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:-1px;left:0;right:0}.term-tabs .new-tab{width:36px;color:var(--text-3);flex:none;place-items:center;display:grid}.term-body{background:radial-gradient(circle at 0 0, #f59e0b0a, transparent 40%), var(--bg);flex:auto;min-height:0;position:relative;overflow:hidden}.term-body .term-host{position:absolute;inset:8px 12px}.term-body .term-xterm-host{position:absolute;inset:0}.term-body .term-host .xterm,.term-body .term-host .xterm-viewport,.term-body .term-host .xterm-screen{width:100%!important;height:100%!important}.term-body .term-host .xterm-accessibility{pointer-events:auto;-webkit-user-select:text;user-select:text}.term-body .term-host .xterm-accessibility-tree ::selection{color:#0000;background:#f59e0b4d}.term-body .term-native-selection{z-index:20;resize:none;width:100%;height:100%;font-family:var(--mono);font-size:var(--fs-terminal);letter-spacing:0;white-space:pre;color:#f5ede405;-webkit-text-fill-color:#f5ede405;caret-color:var(--accent);-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;touch-action:auto;background:0 0;border:0;border-radius:0;margin:0;padding:0;line-height:normal;display:block;position:absolute;inset:0;overflow:hidden}.term-body .term-native-selection::selection{color:#f5ede40a;background:#f59e0b57}.term-pane.classic-selecting .term-host .xterm-accessibility{pointer-events:none}.term-body .term-host .xterm-viewport,.term-body .term-host .xterm-viewport *{scrollbar-width:none!important;-ms-overflow-style:none!important}.term-body .term-host .xterm-viewport::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}.term-body .term-host .xterm-viewport ::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}.term-pane.selecting .term-host .xterm-viewport{pointer-events:none}.term-actions-layer{z-index:75;position:absolute;inset:0}.term-actions-backdrop{-webkit-backdrop-filter:blur(2px);background:#08050394;width:100%;height:100%;position:absolute;inset:0}.term-actions-menu{left:8px;right:8px;bottom:calc(var(--tabbar-h) + var(--inset-bottom) + 10px);border:1px solid var(--border);background:var(--surface);border-radius:16px;max-height:min(72%,520px);animation:.18s cubic-bezier(.2,.7,.2,1) term-menu-in;position:absolute;overflow:hidden;box-shadow:0 18px 48px #0000008f,0 0 0 1px #00000040}@keyframes term-menu-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}.term-actions-head{border-bottom:1px solid var(--border-soft);grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;min-height:58px;padding:10px 10px 8px;display:grid}.term-actions-head h2{color:var(--text);margin:0;font-size:15px;font-weight:700;line-height:1.25}.term-actions-head p{color:var(--text-3);margin:2px 0 0;font-size:11px}.term-actions-icon{width:36px;height:36px;color:var(--text-2);border-radius:10px;place-items:center;display:grid}.term-actions-icon:not(.placeholder):active{background:var(--surface-3)}.term-actions-list{-webkit-overflow-scrolling:touch;max-height:min(56vh,390px);overflow-y:auto}.term-action-row{text-align:left;width:100%;min-height:72px;color:var(--text-3);border-bottom:1px solid var(--border-soft);grid-template-columns:38px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:10px 12px;display:grid}.term-action-row:last-child{border-bottom:0}.term-action-row:active{background:var(--surface-2)}.term-action-row.compact{min-height:58px}.term-action-icon{width:36px;height:36px;color:var(--text-2);background:var(--surface-2);border-radius:10px;place-items:center;display:grid}.term-action-icon.select{color:var(--accent);background:var(--accent-soft)}.term-action-icon.commands{color:var(--info);background:#38bdf81f}.term-action-icon.file{color:var(--add);background:var(--add-bg)}.term-action-copy,.term-target-name{flex-direction:column;gap:3px;min-width:0;display:flex}.term-action-copy b,.term-target-name b{color:var(--text);font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:650;overflow:hidden}.term-action-copy small,.term-target-name small{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.3;overflow:hidden}.term-actions-empty{min-height:108px;color:var(--text-3);text-align:center;justify-content:center;align-items:center;gap:9px;padding:24px 18px;font-size:12px;line-height:1.45;display:flex}.term-actions-empty.error{color:var(--del)}.term-command-confirm{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:22px 16px 16px;display:flex}.term-confirm-icon{color:#1a1208;background:var(--accent);border-radius:13px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 6px 16px #f59e0b47}.term-command-confirm p{color:var(--text-2);margin:0;font-size:13px}.term-command-confirm code{background:var(--bg);border:1px solid var(--border-soft);width:100%;max-height:82px;color:var(--accent-2);font-family:var(--mono);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:9px;padding:9px 10px;font-size:11.5px;line-height:1.45;overflow:auto}.term-confirm-actions{grid-template-columns:1fr 1.35fr;gap:8px;width:100%;display:grid}.term-confirm-actions button{border-radius:10px;min-height:40px;font-size:13px;font-weight:700}.term-confirm-cancel{color:var(--text-2);background:var(--surface-2)}.term-confirm-run{color:#1a1208;background:var(--accent);justify-content:center;align-items:center;gap:7px;display:inline-flex}.term-confirm-actions button:active{transform:scale(.98)}.term-sel-overlay{border-left:3px solid var(--accent);pointer-events:none;z-index:4;background:#f59e0b1f;border-radius:0 4px 4px 0;transition:height 80ms,bottom 80ms;position:absolute;left:12px;right:60px}.term-tabs .ttab .ttab-close{width:16px;height:16px;color:var(--text-3);border-radius:4px;justify-content:center;align-items:center;margin-left:2px;display:inline-flex}.term-tabs .ttab .ttab-close:hover{color:var(--text);background:var(--surface-3)}.term-tabs .ttab .dot.connecting{background:var(--warn);box-shadow:0 0 6px var(--warn)}.term-tabs .ttab .dot.closed{background:var(--del);box-shadow:0 0 6px var(--del)}@keyframes pw-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite pw-spin}.add-workspace{border:1px dashed var(--border-soft);width:100%;color:var(--accent);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin:8px 0 12px;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.add-workspace:hover{background:var(--accent-soft);border-color:var(--accent)}.add-workspace:disabled{opacity:.4;cursor:not-allowed}.proj-row>.proj-row-main{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:12px;min-width:0;padding:0;display:flex}.proj-row-del{width:32px;height:32px;color:var(--text-3);cursor:pointer;z-index:2;background:0 0;border:0;border-radius:8px;flex:0 0 32px;place-items:center;margin-left:4px;display:grid;position:relative}.proj-row-del:hover,.proj-row-del:active{color:var(--del);background:#f871712e}.proj-row-del:focus-visible{outline:2px solid var(--del);outline-offset:1px}.crumb-wrap{align-items:center;display:inline-flex}.picker-empty{text-align:center;color:var(--text-3);padding:24px;font-size:12px}.ws-sheet{background:var(--bg);height:100%;color:var(--text);flex-direction:column;display:flex}.ws-sheet-hd{flex:none;justify-content:space-between;align-items:center;padding:12px 16px 4px;display:flex}.ws-sheet-hd h2{font-size:16px;font-weight:600}.ws-list-ion-content{--background:transparent;--color:var(--text);--padding-top:4px;--padding-bottom:8px;--padding-start:12px;--padding-end:12px;flex:auto;min-height:0}.ws-list{flex-direction:column;gap:4px;display:flex}.ws-row{background:var(--surface);color:inherit;font:inherit;text-align:left;cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.ws-row:hover{background:var(--surface-2)}.ws-row.active{border-color:var(--accent);background:var(--accent-soft)}.ws-row-body{flex:auto;min-width:0}.ws-row-top{align-items:center;gap:8px;display:flex}.ws-row-name{color:var(--text);font-size:14px;font-weight:600}.ws-row-meta{color:var(--text-3);align-items:center;gap:10px;min-width:0;margin-top:2px;font-size:11px;display:flex}.ws-row-meta .proj-row-desc{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chat-rename-input{width:100%;font:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--accent);border-radius:8px;padding:6px 10px;font-size:14px;font-weight:600}.chat-rename-input:focus{outline:none}.ws-sheet .add-workspace{flex:none;margin:8px 12px 16px}@media (width>=768px){ion-modal.ws-switcher-modal{--height:560px;--max-height:80vh;--width:460px;--max-width:92vw;--border-radius:14px}}:root{--fs-files-code:12px;--fs-files-tree:13px;--fs-terminal:13px;--fs-chat-input:14px;--fs-chat-output:14px}.chat-empty{text-align:center;color:var(--text-2);flex-direction:column;align-items:center;gap:6px;padding:48px 20px;font-size:13px;display:flex}.chat-empty .hint{color:var(--text-3);font-size:11px}.chat-empty code{background:var(--surface-2);color:var(--accent);border-radius:4px;padding:1px 5px;font-size:11px}.chat-loading{min-height:220px;color:var(--text-3);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:48px 20px;font-size:12px;display:flex}.chat-loading ion-spinner{width:22px;height:22px;color:var(--accent)}.chat-error{color:var(--del);background:#f871711a;border:1px solid #f871714d;border-radius:8px;margin:8px 12px;padding:8px 12px;font-size:12px}@keyframes pw-blink{50%{opacity:0}}.stream-caret{background:var(--accent);vertical-align:text-bottom;width:6px;height:1em;margin-left:2px;animation:1s step-end infinite pw-blink;display:inline-block}.typing.inline{align-items:center;gap:3px;display:inline-flex}.msg.user .bubble .user-text{white-space:pre-wrap}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 .55em}.md p:last-child{margin-bottom:0}.md strong{color:var(--text);font-weight:700}.md em{font-style:italic}.md a{color:var(--accent);border-bottom:1px dashed var(--accent-line);text-decoration:none}.md h1,.md h2,.md h3,.md h4{color:var(--text);margin:.9em 0 .4em;font-weight:700;line-height:1.25}.md h1{font-size:1.35em}.md h2{font-size:1.2em}.md h3{font-size:1.08em}.md h4{font-size:1em}.md ul,.md ol{margin:.35em 0 .55em;padding-left:1.4em}.md li{margin:.15em 0}.md li>p{margin:0}.md hr{border:0;border-top:1px solid var(--border-soft);margin:1em 0}.md blockquote{border-left:3px solid var(--accent-line);color:var(--text-2);background:var(--surface);border-radius:0 6px 6px 0;margin:.5em 0;padding:4px 12px}.md table{border-collapse:collapse;width:100%;margin:.5em 0;font-size:.94em;display:block;overflow-x:auto}.md th,.md td{border:1px solid var(--border-soft);text-align:left;padding:5px 10px}.md th{background:var(--surface-2);color:var(--text);font-weight:600}.md-inline-code{font-family:var(--mono);background:var(--surface-2);color:var(--accent);word-break:break-word;border-radius:4px;padding:1px 5px;font-size:.9em}.md-pre-wrap{margin:.5em 0;position:relative}.md .md-pre-wrap pre{margin:0}.md-pre-copy{width:26px;height:26px;color:var(--text-3);background:var(--surface-2);border:1px solid var(--border-soft);opacity:.85;border-radius:7px;place-items:center;display:inline-grid;position:absolute;top:6px;right:6px}.md-pre-copy:hover{color:var(--text);background:var(--surface-3);opacity:1}.md-pre-copy:active{transform:scale(.96)}.md-pre-copy,.md-pre-copy *{-webkit-user-select:none;user-select:none}.md pre{background:var(--surface);border:1px solid var(--border-soft);border-radius:8px;margin:.5em 0;padding:10px 12px;font-size:.9em;line-height:1.45;overflow-x:auto}.md pre code{font-family:var(--mono);color:var(--text);background:0 0;padding:0}.md pre code.hljs{background:0 0;padding:0}.md ul li::marker{color:var(--text-3)}.md ol li::marker{color:var(--text-3)}.md li input[type=checkbox]{vertical-align:middle;margin-right:6px}.msg .tools{flex-direction:column;gap:6px;display:flex}.tool-card{border:1px solid var(--border-soft);background:var(--surface);border-radius:8px;font-size:12px;overflow:hidden}.tool-card.running{border-color:var(--warn)}.tool-card.err{border-color:var(--del)}.tool-card-head{text-align:left;cursor:pointer;width:100%;color:var(--text);font:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:7px 10px;display:flex}.tool-card-head:hover{background:var(--surface-2)}.tool-dot{border-radius:999px;flex:none;width:7px;height:7px}.tool-dot.running{background:var(--warn);box-shadow:0 0 6px var(--warn);animation:1.2s ease-in-out infinite pw-blink}.tool-dot.ok{background:var(--add);box-shadow:0 0 6px var(--add)}.tool-dot.err{background:var(--del);box-shadow:0 0 6px var(--del)}.tool-name{font-family:var(--mono);color:var(--accent);flex:none;font-weight:600}.tool-summary{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-family:var(--mono);color:var(--text-2);flex:auto;font-size:11px;overflow:hidden}.tool-state{text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);flex:none;font-size:10px}.tool-card.err .tool-state{color:var(--del)}.tool-chev{color:var(--text-3);transition:transform .12s}.tool-card-body{border-top:1px solid var(--border-soft);background:var(--bg);padding:8px 12px 10px}.tool-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:6px 0 4px;font-size:10px}.tool-section-label:first-child{margin-top:0}.tool-payload{background:var(--surface-2);font-family:var(--mono);color:var(--text);white-space:pre-wrap;word-break:break-word;border-radius:6px;max-height:240px;margin:0;padding:8px 10px;font-size:11px;line-height:1.4;overflow:auto}.perm-bar{border:1px solid var(--accent);background:var(--accent-soft);border-radius:12px;flex-direction:column;flex:none;gap:10px;margin:0 12px;padding:12px 14px;display:flex;box-shadow:0 -4px 16px #f59e0b26}.perm-bar-head{align-items:flex-start;gap:10px;display:flex}.perm-bar-ico{background:var(--accent);color:#1a1208;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.perm-bar-body{flex:auto;min-width:0}.perm-bar-title{color:var(--text);font-size:13px;line-height:1.4}.perm-bar-tool{font-family:var(--mono);color:var(--accent);font-weight:700}.perm-bar-summary{font-family:var(--mono);color:var(--text-2);font-size:12px}.perm-bar-sub{color:var(--text-3);margin-top:4px;font-size:11px}.perm-bar-host{color:var(--text-2)}.perm-bar-actions{justify-content:flex-end;gap:8px;display:flex}.perm-bar-deny,.perm-bar-allow{cursor:pointer;border:0;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;display:inline-flex}.perm-bar-deny{background:var(--surface-2);color:var(--text-2)}.perm-bar-deny:hover{background:var(--surface-3);color:var(--text)}.perm-bar-allow{background:var(--accent);color:#1a1208;box-shadow:0 4px 12px #f59e0b59}.perm-bar-allow:active{transform:translateY(1px)}.pw-switch{background:var(--surface-3);cursor:pointer;border:0;border-radius:999px;flex:none;width:44px;height:26px;padding:0;transition:background .12s;position:relative}.pw-switch.on{background:var(--accent)}.pw-switch-knob{background:#fff;border-radius:999px;width:20px;height:20px;transition:transform .15s cubic-bezier(.4,0,.2,1);position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #00000040}.pw-switch.on .pw-switch-knob{transform:translate(18px)}.perm-modes{flex-direction:column;gap:6px;display:flex}.perm-mode{border:1px solid var(--border-soft);background:var(--surface);text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;border-radius:10px;align-items:flex-start;gap:12px;padding:10px 12px;transition:background .12s,border-color .12s;display:flex}.perm-mode:hover{background:var(--surface-2)}.perm-mode.on{border-color:var(--accent);background:var(--accent-soft)}.perm-mode-ic{background:var(--surface-2);width:24px;height:24px;color:var(--text-2);border-radius:6px;flex:0 0 24px;place-items:center;margin-top:1px;display:grid}.perm-mode.on .perm-mode-ic{background:var(--accent);color:#1a1208}.perm-mode-body{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.perm-mode-label{color:var(--text);font-size:14px;font-weight:600}.perm-mode.on .perm-mode-label{color:var(--accent)}.perm-mode-desc{color:var(--text-3);font-size:12px;line-height:1.4}.perm-mode-check{color:var(--accent);flex:none;margin-top:4px}.claude-auth{background:var(--bg);height:100%;color:var(--text);flex-direction:column;display:flex}.claude-auth-hd{border-bottom:1px solid var(--border-soft);flex:none;align-items:flex-start;gap:12px;padding:14px 16px 12px;display:flex}.claude-auth-hd>div:first-child{flex:auto;min-width:0}.claude-auth-title{font-size:15px;font-weight:600}.claude-auth-sub{color:var(--text-3);margin-top:2px;font-size:12px;line-height:1.4}.claude-auth-success{color:var(--add);background:#84cc161f;border:1px solid #84cc1666;border-radius:8px;flex:none;align-items:center;gap:8px;margin:10px 12px 0;padding:8px 12px;font-size:12px;display:flex}.claude-auth-term{flex:auto;min-height:0;padding:8px 12px 12px;position:relative}.claude-auth-term-host{position:absolute;inset:8px 12px 12px}.claude-auth-term-host .xterm,.claude-auth-term-host .xterm-viewport,.claude-auth-term-host .xterm-screen{width:100%!important;height:100%!important}.chat-onboard{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:48px 24px;display:flex}.chat-onboard-icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);border-radius:14px;place-items:center;display:grid}.chat-onboard-title{color:var(--text);font-size:16px;font-weight:600}.chat-onboard-sub{color:var(--text-3);max-width:320px;font-size:13px;line-height:1.5}.chat-onboard-cta{background:var(--accent);color:#1a1208;cursor:pointer;border:0;border-radius:10px;margin-top:6px;padding:10px 18px;font-size:14px;font-weight:600;box-shadow:0 6px 16px #f59e0b4d}.chat-onboard-cta:hover{filter:brightness(1.05)}.changed-toggle{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-2);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin:4px 12px 8px;padding:6px 10px;font-family:inherit;font-size:12px;display:flex}.changed-toggle:hover{background:var(--surface-2)}.changed-toggle.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.changed-toggle-count{background:var(--surface-3);min-width:18px;height:18px;color:var(--text-2);font-family:var(--mono);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.changed-toggle.on .changed-toggle-count{background:var(--accent);color:#1a1208}.term-body .l{white-space:pre-wrap;word-break:break-all}.term-body .l.cmd{color:var(--text)}.term-body .l.cmd:before{content:"$ ";color:var(--accent)}.term-body .l.cmd.active{padding-top:2px}.term-body .l.out{color:var(--text-2)}.term-body .l.ok{color:var(--add)}.term-body .l.err{color:var(--del)}.term-body .l.mut{color:var(--warn)}.term-body .l.add{color:var(--add)}.term-body .blink{background:var(--accent);vertical-align:text-bottom;width:8px;height:14px;margin-left:2px;animation:1s steps(2,end) infinite blink;display:inline-block}.term-hidden-input{opacity:.01;pointer-events:none;width:1px;height:1px;font-size:16px;position:fixed;bottom:0;left:0}@keyframes blink{50%{opacity:0}}.term-input{border-top:1px solid var(--border-soft);background:var(--surface);font-family:var(--mono);flex:none;align-items:center;gap:10px;padding:10px 12px 12px;font-size:13px;display:flex}.term-input .pr{color:var(--accent);flex:none;font-weight:600}.term-input input{font-family:var(--mono);color:var(--text);flex:1;font-size:13px}.term-input .ctrl{flex:none;align-items:center;gap:4px;display:flex}.term-input .ctrl .key{font-family:var(--mono);color:var(--text-3);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:5px;padding:3px 7px;font-size:10px}.acc-bar{border-top:1px solid var(--border-soft);background:var(--surface);scrollbar-width:none;flex:none;align-items:center;gap:6px;padding:8px 10px 10px;display:flex;overflow-x:auto}.acc-bar::-webkit-scrollbar{display:none}.term-pane.keyboard-open{padding-bottom:0}.term-pane.keyboard-open .term-stage{margin-bottom:40px}.term-pane.keyboard-open .term-body{padding-bottom:12px}.term-pane.keyboard-open .acc-bar{left:0;right:0;bottom:var(--keyboard-inset);z-index:80;gap:4px;padding:4px 8px 5px;position:fixed;box-shadow:0 -10px 24px #00000073}.term-pane.keyboard-open .acc-btn{border-radius:7px;min-width:34px;height:30px;padding:0 9px;font-size:11.5px}.term-pane.keyboard-open .acc-btn.arrow{min-width:30px;padding:0 8px}.acc-btn{background:var(--surface-2);border:1px solid var(--border-soft);min-width:44px;height:36px;color:var(--text);border-radius:8px;flex:none;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:12.5px;font-weight:500;display:inline-flex}.acc-btn:active{background:var(--surface-3);transform:scale(.96)}.acc-btn .mono{font-family:var(--mono);font-size:12px}.acc-btn.arrow{min-width:36px;color:var(--text-2);padding:0 10px}.acc-btn.danger{color:var(--del);border-color:#f8717140}.acc-btn.danger.arming{color:#fecaca;background:#f871712e;border-color:#f8717199;padding:0 14px;animation:.8s ease-in-out infinite armPulse}@keyframes armPulse{50%{background:#f8717147}}.acc-btn.ghost{border:1px dashed var(--border);color:var(--text-3);background:0 0}.acc-spacer{flex:auto;min-width:4px}.settings-actions{gap:8px;padding:8px 16px 4px;display:grid}.chat-pane{flex-direction:column;flex:auto;min-height:0;display:flex}.chat-meta{border-bottom:1px solid var(--border-soft);background:var(--surface);scrollbar-width:none;flex:none;align-items:center;gap:6px;padding:8px 10px;display:flex;overflow-x:auto}.chat-meta::-webkit-scrollbar{display:none}.pill{border:1px solid var(--border);background:var(--bg);color:var(--text-2);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:5px;padding:6px 10px;font-size:12px;display:inline-flex}.pill:hover{border-color:var(--border);background:var(--surface-2)}.pill svg{color:var(--text-3)}.pill.mode-plan{color:var(--info);background:#38bdf814;border-color:#38bdf84d}.pill.mode-plan svg{color:var(--info)}.pill.mode-auto{color:var(--add);background:#84cc1614;border-color:#84cc164d}.pill.mode-auto svg{color:var(--add)}.pill.model{color:var(--text)}.pill.model b{font-weight:600}.pill.model .ver{color:var(--text-3);font-family:var(--mono);font-size:10px}.chat-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:14px;min-height:0;padding:12px 12px 80px;display:flex;overflow-y:auto}.chat-goal-banner{color:#fbbf24;background:#fbbf2417;border:1px solid #fbbf2461;border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.chat-goal-banner.paused{color:var(--text-3);background:#94a3b814;border-color:#94a3b857}.chat-goal-copy{flex:auto;min-width:0}.chat-goal-title{flex-wrap:wrap;align-items:baseline;gap:7px;font-size:12px;font-weight:750;display:flex}.chat-goal-title span{color:var(--text-3);font-size:10px;font-weight:500}.chat-goal-text{color:var(--text-2);white-space:pre-wrap;margin-top:3px;font-size:12px;line-height:1.4}.chat-jump-slot{z-index:6;flex:0 0 0;position:relative}.chat-jump-bottom{border:1px solid var(--accent-line);min-height:36px;color:var(--accent-2);-webkit-backdrop-filter:blur(10px);background:#1c1612f5;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:700;animation:.16s ease-out ctxin;display:inline-flex;position:absolute;bottom:10px;right:12px;box-shadow:0 6px 18px #00000052}.chat-jump-bottom:active{transform:scale(.97)}.msg{flex-direction:column;gap:6px;display:flex}.msg .who-row{text-align:left;border-radius:6px;align-self:flex-start;align-items:center;gap:6px;width:100%;padding:2px 4px;display:inline-flex}.msg.user .who-row{flex-direction:row-reverse;align-self:flex-end}.msg .who-row:hover{background:var(--surface-2)}.msg .who-row:hover .fold-chev{color:var(--text-2)}.msg .who{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);flex:none;font-size:10px;font-weight:600}.msg.user .who{color:var(--accent)}.msg.command .who-row{color:#fbbf24;align-self:flex-start;gap:5px;width:auto}.msg.command .who{color:#fbbf24}.command-icon{flex:none}.command-pill{color:#fcd34d;font-family:var(--mono);text-transform:none;background:#fbbf2414;border:1px solid #fbbf2457;border-radius:999px;padding:1px 5px;font-size:10px;line-height:1.45}.msg .fold-chev{width:14px;height:14px;color:var(--text-4);place-items:center;transition:transform .15s;display:inline-grid}.msg .fold-chev.open{transform:rotate(90deg)}.msg.user .fold-chev.open{transform:rotate(-90deg)}.msg .summary{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;text-transform:none;letter-spacing:0;flex:auto;font-size:13px;font-weight:400;overflow:hidden}.msg.user .summary{text-align:right}.msg.user .bubble{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--text);align-self:flex-end;max-width:86%}.msg.assistant .bubble{color:var(--text);background:0 0;max-width:100%}.msg.command .bubble{max-width:min(100%,640px);color:var(--text-2);background:#fbbf2413;border:1px solid #fbbf2452;align-self:flex-start;padding:9px 12px}.msg .bubble{font-size:var(--fs-chat-output);border-radius:14px;padding:10px 14px;line-height:1.5;position:relative}.goal-command-content{flex-wrap:wrap;align-items:baseline;gap:7px;line-height:1.45;display:flex}.goal-command-content code{color:#fcd34d;font-family:var(--mono);font-size:.92em;font-weight:700}.goal-command-content span{white-space:pre-wrap}.msg.assistant .bubble,.msg.assistant .bubble *{-webkit-user-select:text;user-select:text}.msg.user .bubble,.msg.user .bubble *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.msg-copy{float:right;width:28px;height:28px;color:var(--text-3);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:8px;place-items:center;margin:-4px -6px 6px 8px;display:inline-grid}.msg-copy:hover{color:var(--text);background:var(--surface-3)}.msg-copy:active{transform:scale(.96)}.msg-copy,.msg-copy *{-webkit-user-select:none;user-select:none}.msg .bubble a{color:var(--accent);border-bottom:1px dashed var(--accent-line);text-decoration:none}.msg.user{align-items:flex-end}.msg.user .who{align-self:flex-end}.plan{background:#38bdf80f;border:1px solid #38bdf840;border-radius:12px;padding:10px 12px}.plan .ph{letter-spacing:.08em;text-transform:uppercase;color:var(--info);align-items:center;gap:6px;margin-bottom:6px;font-size:10.5px;font-weight:700;display:flex}.plan ol{color:var(--text);margin:0;padding-left:18px;font-size:14px;line-height:1.5}.plan ol li{margin:3px 0}.plan ol li code{font-family:var(--mono);background:var(--surface-2);color:var(--text);border-radius:4px;padding:1px 5px;font-size:11.5px}.tools{border:1px solid var(--border);background:var(--surface);border-radius:12px;overflow:hidden}.tools .tool{border-top:1px solid var(--border-soft);align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.tools .tool:first-child{border-top:0}.tools .tool .tname{font-family:var(--mono);color:var(--accent);letter-spacing:.01em;flex:none;font-size:12px;font-weight:600}.tools .tool .ttarget{color:var(--text-2);font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:12px;overflow:hidden}.tools .tool .ttarget.link{color:var(--accent-2);text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.tools .tool .tmeta{font-family:var(--mono);color:var(--text-3);flex:none;font-size:10.5px}.tools .tool .tcheck{color:var(--add)}.approval{border:1px solid var(--border);background:var(--surface);border-radius:14px;overflow:hidden}.approval.pending{background:linear-gradient(180deg, #f59e0b0d, transparent 40%), var(--surface);border-color:#f59e0b73;box-shadow:0 0 0 3px #f59e0b0f}.approval.allow,.approval.always{border-color:#84cc1659}.approval.deny{opacity:.85;border-color:#f8717159}.approval .ap-hd{border-bottom:1px solid var(--border-soft);background:#f59e0b0a;align-items:center;gap:8px;padding:9px 12px;display:flex}.approval.deny .ap-hd{background:#f871710a}.approval.allow .ap-hd,.approval.always .ap-hd{background:#84cc160a}.approval .ap-ico{background:var(--accent-soft);width:22px;height:22px;color:var(--accent);border-radius:6px;place-items:center;display:grid}.approval.deny .ap-ico{color:var(--del);background:#f871711f}.approval.allow .ap-ico,.approval.always .ap-ico{color:var(--add);background:#84cc161f}.approval .ap-title{letter-spacing:.02em;color:var(--text);flex:auto;font-size:12px;font-weight:600}.approval .ap-risk{font-family:var(--mono);letter-spacing:.02em;text-transform:uppercase;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:600}.approval .ap-risk.r-low{color:var(--add);background:#84cc161a}.approval .ap-risk.r-medium{color:var(--warn);background:#fbbf241a}.approval .ap-risk.r-high{color:var(--del);background:#f871711a}.approval .ap-body{color:var(--text);flex-direction:column;gap:6px;padding:10px 12px;font-size:13px;display:flex}.approval .ap-line{align-items:baseline;gap:10px;line-height:1.4;display:flex}.approval .ap-k{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);flex:0 0 50px;font-size:10.5px;font-weight:600}.approval .ap-v{color:var(--text);font-size:13px}.approval .ap-v.mono{font-family:var(--mono);color:var(--accent-2);word-break:break-all;font-size:12.5px}.approval .ap-preview{background:var(--bg);border:1px solid var(--border-soft);font-family:var(--mono);color:var(--text-2);white-space:pre-wrap;word-break:break-all;border-radius:8px;margin:4px 0 0;padding:8px 10px;font-size:11.5px;line-height:1.5}.approval .ap-q{color:var(--text);margin-top:4px;font-size:13px}.approval .ap-actions{border-top:1px solid var(--border-soft);grid-template-columns:auto 1fr auto;gap:6px;padding:8px 10px 10px;display:grid}.approval .ap-btn{letter-spacing:.01em;border:1px solid var(--border);background:var(--surface-2);height:36px;color:var(--text);border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.approval .ap-btn.deny{color:var(--del);background:0 0;border-color:#f8717140}.approval .ap-btn.deny:active{background:#f8717114}.approval .ap-btn.always{color:var(--text-2);background:var(--surface-2);font-size:12.5px;font-weight:500}.approval .ap-btn.always:active{background:var(--surface-3)}.approval .ap-btn.allow{background:var(--accent);color:#1a1208;border-color:#0000;box-shadow:0 6px 16px #f59e0b40}.approval .ap-btn.allow:active{transform:scale(.98)}.approval .ap-result{border-top:1px solid var(--border-soft);color:var(--text-2);align-items:center;gap:8px;padding:9px 12px;font-size:12.5px;display:flex}.approval.deny .ap-result{color:var(--del)}.approval.allow .ap-result,.approval.always .ap-result{color:var(--add)}.codeblock{background:var(--surface);border:1px solid var(--border-soft);border-radius:10px;overflow:hidden}.codeblock .hd{font-family:var(--mono);color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--border-soft);background:var(--surface-2);justify-content:space-between;align-items:center;padding:5px 10px;font-size:10px;display:flex}.codeblock pre{font-family:var(--mono);color:var(--text);-webkit-overflow-scrolling:touch;margin:0;padding:8px 12px;font-size:11.5px;line-height:1.55;overflow-x:auto}.chat-input-wrap{background:linear-gradient(to top, var(--bg), #0e0908d9);border-top:1px solid var(--border-soft);flex:none;padding:6px 10px 10px}.chat-runbar{justify-content:flex-end;align-items:center;gap:8px;padding:0 2px 6px;display:flex}.chat-queue-count{color:var(--text-3);font-size:11.5px;font-weight:600}.chat-stop-btn{color:#fca5a5;background:#ef444414;border:1px solid #ef444452;border-radius:8px;align-items:center;gap:6px;min-height:28px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.chat-stop-btn:disabled{opacity:.58}.msg.queued{opacity:.7}.chat-input{border:1px solid var(--border);background:var(--surface);border-radius:18px;align-items:flex-end;gap:8px;padding:6px 10px 6px 14px;display:flex}.chat-input:focus-within{border-color:var(--accent-line)}.chat-input .row{align-items:center;gap:4px;display:flex}.chat-input textarea{resize:none;width:100%;font-size:var(--fs-chat-input);color:var(--text);min-height:24px;max-height:110px;padding:6px 4px 4px;line-height:1.4}.chat-input textarea::placeholder{color:var(--text-3)}.chat-input .row.foot{align-items:center}.chat-input .send{background:var(--accent);color:#1a1208;border-radius:999px;flex:none;place-items:center;width:36px;height:36px;margin-bottom:1px;display:grid}.chat-input .send:disabled{background:var(--surface-3);color:var(--text-4);box-shadow:none}.chat-input .ib{width:30px;height:30px;color:var(--text-3);border-radius:8px;place-items:center;display:grid}.chat-input .ib:hover{background:var(--surface-2);color:var(--text)}.chat-input .attach-strip{flex-wrap:wrap;gap:4px;padding-bottom:4px;display:flex}.chat-input .attach-strip .ach{font-family:var(--mono);color:var(--text-2);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;display:inline-flex}.chat-input .attach-strip .ach button{color:var(--text-3);margin-left:2px}.conv-list{padding:4px 0}.conv-list .conv{border-bottom:1px solid var(--border-soft);text-align:left;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;display:flex}.conv-list .conv:hover{background:var(--surface-2)}.conv-list .conv.active{background:var(--accent-soft)}.conv-list .conv .ci{background:var(--surface-2);width:30px;height:30px;color:var(--text-3);border-radius:8px;flex:none;place-items:center;display:grid}.conv-list .conv.active .ci{background:var(--accent);color:#1a1208}.conv-list .conv .body{flex:auto;min-width:0}.conv-list .conv .t{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.conv-list .conv .p{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.conv-list .conv .ts{color:var(--text-4);flex:none;font-size:10px}.new-conv{border:1px dashed var(--border);color:var(--accent);border-radius:10px;justify-content:center;align-items:center;gap:8px;width:calc(100% - 20px);margin:10px;padding:9px 12px;font-size:12px;font-weight:500;display:flex}.menu{z-index:60;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;min-width:220px;padding:6px;position:absolute;box-shadow:0 18px 40px #00000080}.menu .mi{color:var(--text);text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:12px;display:flex}.menu .mi:hover{background:var(--surface-3)}.menu .mi .mname{flex:none;font-weight:600}.menu .mi .mdesc{color:var(--text-3);font-size:10.5px}.menu .mi .mcheck{color:var(--accent);margin-left:auto}.sheet-backdrop{z-index:200;background:#0000008c;position:absolute;inset:0}.sheet{background:var(--surface);border-top:1px solid var(--border);z-index:201;border-top-left-radius:18px;border-top-right-radius:18px;flex-direction:column;max-height:80%;padding:8px 0 18px;transition:transform .22s cubic-bezier(.2,.7,.2,1);display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.sheet.on{transform:translateY(0)}.sheet .grab{background:var(--surface-3);border-radius:999px;width:36px;height:4px;margin:6px auto 10px}.sheet h2{margin:0;padding:0 18px 8px;font-size:15px;font-weight:600}.sheet .section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);padding:14px 18px 6px;font-size:10.5px;font-weight:700}.sheet .row{border-top:1px solid var(--border-soft);align-items:center;gap:12px;padding:11px 18px;display:flex}.sheet .row .lbl{flex:1;font-size:13px}.sheet .row .val{color:var(--text-3);font-size:12px}.sheet .row .ico{background:var(--surface-2);width:28px;height:28px;color:var(--accent);border-radius:7px;flex:none;place-items:center;display:grid}.sheet .closebar{background:var(--surface-2);text-align:center;color:var(--text);border-radius:10px;margin:12px 18px 0;padding:11px;font-size:13px;font-weight:500}.toggle{background:var(--surface-3);border-radius:999px;flex:none;width:36px;height:22px;transition:background .15s;position:relative}.toggle:after{content:"";background:var(--text);border-radius:999px;width:18px;height:18px;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle.on{background:var(--accent)}.toggle.on:after{background:#1a1208;transform:translate(14px)}.density-cozy .tree .row{padding:6px 8px;font-size:13.5px}.density-comfy .tree .row{padding:8px 10px;font-size:14px}.density-comfy .code,.density-comfy .diff{font-size:var(--fs-files-code)}.density-comfy .term-body{font-size:13px}.density-comfy .msg .bubble{font-size:14.5px}.drawer-right .drawer.tree-drawer{border-right:0;border-left:1px solid var(--border);left:auto;right:0;transform:translate(101%)}.drawer-right .drawer.tree-drawer.on{transform:translate(0)}.drawer-right .fab{left:auto;right:14px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border)}.page{background:var(--bg);flex-direction:column;height:100%;display:flex}.login-screen{padding-top:var(--inset-top);padding-bottom:var(--inset-bottom)}.login-input{background:var(--surface);color:var(--text);border:1px solid var(--border-soft);border-radius:10px;outline:none;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .12s}.login-input:focus{border-color:var(--accent)}.page-body{flex:1;min-height:0;padding:12px;overflow-y:auto}.page-foot-note{text-align:center;color:var(--text-3);margin-top:16px;font-size:11px}.files-pane,.term-pane,.chat-pane{padding-bottom:calc(var(--tabbar-h) + var(--inset-bottom))}.files-pane .ctx-bar{bottom:calc(var(--tabbar-h) + var(--inset-bottom) + 12px)}.files-pane .fab{bottom:calc(var(--tabbar-h) + var(--inset-bottom) + 14px)}.proj-row-desc{color:var(--text-3);font-family:var(--mono);font-size:11px}.chat-input .expand{width:30px;height:30px;color:var(--text-3);border-radius:8px;flex:none;align-self:center;place-items:center;display:grid}.chat-input .expand:hover{background:var(--surface-2);color:var(--text)}.chat-input .expand:active{background:var(--surface-3)}.chat-keyboard-open .chat-pane{padding-bottom:0}.chat-keyboard-open .chat-body{padding-bottom:92px}.chat-keyboard-open .chat-jump-slot{display:none}.chat-keyboard-open .chat-input-wrap{left:0;right:0;bottom:var(--keyboard-inset);z-index:80;padding:6px 10px 8px;position:fixed;box-shadow:0 -10px 24px #00000073}.typing{gap:4px;padding:8px 10px;display:inline-flex}.typing span{background:var(--text-4);border-radius:999px;width:6px;height:6px;animation:1.2s ease-in-out infinite pw-typing}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes pw-typing{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.fullscreen-composer{background:var(--bg);height:100%;color:var(--text);flex-direction:column;display:flex}.fc-hd{border-bottom:1px solid var(--border-soft);flex:none;grid-template-columns:auto 1fr auto;align-items:center;padding:12px 12px 10px;display:grid}.fc-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);text-align:center;grid-area:1/1/auto/-1;font-size:11px;font-weight:600}.fc-unexpand{width:32px;height:32px;color:var(--text-2);z-index:1;border-radius:999px;grid-area:1/1;place-items:center;display:grid}.fc-unexpand:hover{background:var(--surface-2);color:var(--text)}.fc-unexpand:active{background:var(--surface-3)}.fc-close{width:32px;height:32px;color:var(--text-2);border-radius:999px;grid-area:1/3;place-items:center;display:grid}.fc-close:hover{background:var(--surface-2);color:var(--text)}.fc-close:active{background:var(--surface-3)}.fc-textarea{resize:none;min-height:0;color:var(--text);background:0 0;flex:auto;padding:14px 16px 80px;font-size:15px;line-height:1.5}.fc-textarea::placeholder{color:var(--text-3)}.fc-footer{padding:10px 14px calc(14px + var(--inset-bottom));border-top:1px solid var(--border-soft);background:var(--bg);flex:none;justify-content:flex-end;display:flex}.fc-send{background:var(--accent);color:#1a1208;border-radius:999px;align-items:center;gap:8px;padding:12px 22px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 10px 24px #f59e0b66}.fc-send:disabled{background:var(--accent);color:#1a1208;opacity:.35;box-shadow:none}.fc-send:active{transform:scale(.96)}
