/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-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{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--radius-sm:.25rem;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\!visible{visibility:visible!important}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.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-filter{-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,)}}:root{--bg:#f8fafc;--surface:#fff;--surface-2:#f1f5f9;--surface-3:#e9eef4;--border:#e2e8f0;--border-strong:#cbd5e1;--divider:#eef2f6;--text:#1e293b;--text-dim:#64748b;--text-faint:#94a3b8;--accent:#2563eb;--accent-strong:#1d4ed8;--accent-soft:#2563eb1a;--accent-line:#2563eb47;--color-accent:var(--accent);--cta:#f97316;--cta-strong:#ea6a0c;--cta-soft:#f973161f;--ok:#16a34a;--ok-soft:#16a34a1a;--ok-line:#16a34a4d;--ok-ink:#15803d;--busy:#d97706;--busy-soft:#d977061f;--busy-line:#d9770652;--busy-ink:#b45309;--danger:#dc2626;--danger-soft:#dc26261a;--danger-line:#dc26264d;--danger-ink:#b91c1c;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--shadow-1:0 1px 2px #0f172a0f;--shadow-2:0 1px 2px #0f172a0f,0 6px 20px #0f172a14;--shadow-3:0 2px 4px #0f172a0f,0 14px 34px -8px #0f172a29;--shadow-4:0 4px 8px #0f172a14,0 28px 64px -18px #0f172a3d;--ring:0 0 0 2px var(--surface),0 0 0 4px var(--accent);--font-ui:"Fira Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-mono:"Fira Code",ui-monospace,"SF Mono",Menlo,monospace;--dur-fast:.15s;--dur:.19s;--dur-slow:.22s;--ease:cubic-bezier(.16,1,.3,1);--ws-bar-h:64px;--ws-console-w:600px}*{box-sizing:border-box}body,html{background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;font-size:15px;line-height:1.5}body{background-color:var(--bg);background-image:radial-gradient(1100px 560px at 82% -12%,#2563eb0f,#0000 62%),radial-gradient(820px 460px at 4% -4%,#2563eb0a,#0000 58%),linear-gradient(#0f172a06 1px,#0000 0),linear-gradient(90deg,#0f172a06 1px,#0000 0);background-position:0 0,0 0,-1px -1px,-1px -1px;background-size:auto,auto,64px 64px,64px 64px;min-height:100vh}::selection{background:var(--accent-soft);color:var(--text)}a{color:inherit}.brand-sub,.chip,.conn-pill,.control-state .k,.dc-model,.role-tag,.stat .num,.tool-output,.ws-id .sub{font-feature-settings:"tnum" 1}.btn{justify-content:center;align-items:center;gap:var(--sp-2);border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);min-height:40px;color:var(--text);font:inherit;letter-spacing:.005em;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-1);transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur-fast) var(--ease),color var(--dur) var(--ease);padding:0 16px;font-size:14px;font-weight:500;line-height:1;display:inline-flex}.btn:hover{background:var(--surface-2);border-color:var(--border-strong);box-shadow:var(--shadow-2)}.btn:active{background:var(--surface-3);box-shadow:var(--shadow-1);transform:translateY(1px)}.btn:focus-visible{box-shadow:var(--ring);outline:none}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn:disabled:hover{background:var(--surface);border-color:var(--border-strong);box-shadow:none}.btn-accent{background:linear-gradient(180deg,var(--accent) 0,var(--accent-strong) 100%);color:#fff;box-shadow:var(--shadow-2),inset 0 1px 0 #ffffff38;border-color:#0000;font-weight:600}.btn-accent:hover{box-shadow:var(--shadow-3),inset 0 1px 0 #ffffff38;background:linear-gradient(#3b82f6,#2563eb);border-color:#0000}.btn-accent:active{background:linear-gradient(180deg,var(--accent-strong) 0,#1e40af 100%)}.btn-accent:disabled:hover{background:linear-gradient(180deg,var(--accent) 0,var(--accent-strong) 100%);box-shadow:none}.btn-danger{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger-ink);font-weight:600}.btn-danger:hover{border-color:var(--danger);color:var(--danger-ink);box-shadow:var(--shadow-2);background:#dc262629}.btn-danger:active{background:#dc262633}.btn-danger:disabled:hover{background:var(--danger-soft);border-color:var(--danger-line);box-shadow:none}.btn-ghost{color:var(--text-dim);box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2);border-color:var(--border);color:var(--text);box-shadow:none}.btn-ghost:active{background:var(--surface-3)}.btn-ghost:disabled:hover{background:0 0;border-color:#0000}.btn-sm{min-height:34px;padding:0 11px;font-size:13px}.btn-sm,.icon-btn{border-radius:var(--radius-sm)}.icon-btn{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text-dim);cursor:pointer;box-shadow:var(--shadow-1);transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur-fast) var(--ease);flex:none;place-items:center;font-size:17px;line-height:1;display:grid}.icon-btn:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--text);box-shadow:var(--shadow-2)}.icon-btn:active{transform:translateY(1px)}.icon-btn:focus-visible{box-shadow:var(--ring);outline:none}.app-shell{max-width:1360px;margin:0 auto;padding:22px 24px 96px}.topbar{justify-content:space-between;gap:var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);-webkit-backdrop-filter:saturate(120%)blur(14px);backdrop-filter:saturate(120%)blur(14px);z-index:20;background:#ffffffd1;padding:12px 14px 12px 18px;position:sticky;top:14px}.brand,.topbar{align-items:center;display:flex}.brand{gap:var(--sp-3)}.brand-mark{border-radius:var(--radius);background:linear-gradient(150deg,var(--accent) 0,var(--accent-strong) 100%);color:#fff;width:38px;height:38px;box-shadow:var(--shadow-2),inset 0 1px 0 #ffffff4d;flex:none;place-items:center;display:grid}.brand-mark-glyph{width:24px;height:auto;display:block}.brand-name{letter-spacing:-.015em;color:var(--text);font-size:16px;font-weight:700;line-height:1.1}.brand-sub{color:var(--text-faint);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;margin-top:3px;font-size:10px;font-weight:500}.status-row{align-items:center;gap:var(--sp-3);flex-wrap:wrap;justify-content:flex-end;display:flex}.conn-pill{font-family:var(--font-mono);color:var(--text-dim);gap:7px;padding:7px 13px;font-size:12px;font-weight:500;display:inline-flex}.conn-pill,.user-chip{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-1);align-items:center}.user-chip{gap:10px;padding:5px 6px 5px 12px;display:flex}.user-chip .avatar{background:var(--accent-soft);width:30px;height:30px;color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-line);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.role-tag{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint);font-size:10px;font-weight:500}.stats{grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0 26px;display:grid}.stat{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);padding:16px 18px;position:relative;overflow:hidden}.stat:before{content:"";background:var(--border-strong);border-radius:3px;width:3px;position:absolute;top:14px;bottom:14px;left:0}.stat .num{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--text);font-size:30px;font-weight:600;line-height:1}.stat .lbl{color:var(--text-faint);letter-spacing:.1em;text-transform:uppercase;margin-top:8px;font-size:11px;font-weight:500}.stat.accent{border-color:var(--ok-line);background:linear-gradient(180deg,var(--ok-soft),var(--surface) 70%)}.stat.accent:before{background:var(--ok)}.stat.accent .num{color:var(--ok-ink)}.section-title{align-items:baseline;gap:10px;margin:6px 2px 16px;display:flex}.section-title h2{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin:0;font-size:13px;font-weight:600}.section-title span{color:var(--text-faint);font-family:var(--font-mono);font-size:12px}.farm-header{justify-content:space-between;gap:12px;margin:2px 2px 12px}.farm-header,.farm-id{align-items:center;display:flex}.farm-id{gap:8px}.farm-id h3{color:var(--text);margin:0;font-size:14px;font-weight:650}.farm-dot{background:oklch(62% .2 145);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px oklch(62% .2 145/.18)}.farm-count{color:var(--text-faint);font-family:var(--font-mono);font-size:12px}.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.device-card{text-align:left;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;font:inherit;color:inherit;box-shadow:var(--shadow-1);transition:transform var(--dur-slow) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur-slow) var(--ease),background var(--dur) var(--ease);padding:16px 16px 18px;display:block;position:relative;overflow:hidden}.device-card:before{content:"";background:var(--border-strong);height:3px;position:absolute;top:0;left:0;right:0}.device-card:after{content:"";background:radial-gradient(440px 150px at 50% -40%,var(--accent-soft),transparent 70%);opacity:0;transition:opacity var(--dur-slow) var(--ease);pointer-events:none;position:absolute;inset:0}.device-card.online:before{background:var(--ok)}.device-card.busy:before{background:var(--busy)}.device-card.offline:before{background:var(--text-faint)}.device-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-3);transform:translateY(-3px)}.device-card:hover:after{opacity:1}.device-card:focus-visible{box-shadow:var(--ring),var(--shadow-3);outline:none}.device-card.busy{border-color:var(--busy-line)}.device-card.offline{opacity:.6;cursor:not-allowed;background:var(--surface-2);box-shadow:none}.device-card.offline:hover{border-color:var(--border);box-shadow:none;transform:none}.device-card.offline:hover:after{opacity:0}.dc-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.dc-name{letter-spacing:-.01em;color:var(--text);font-size:15px;font-weight:600}.dc-model{color:var(--text-dim);font-family:var(--font-mono);margin-top:3px;font-size:12px}.dc-meta{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.chip{font-family:var(--font-mono);color:var(--text-dim);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);letter-spacing:.01em;padding:3px 8px;font-size:11px}.dc-lock{border-top:1px solid var(--divider);color:var(--busy-ink);align-items:center;gap:7px;margin-top:14px;padding-top:12px;font-size:12px;font-weight:600;display:flex}.status-dot{border-radius:50%;flex:none;width:9px;height:9px}.status-dot.online{background:var(--ok);box-shadow:0 0 0 4px var(--ok-soft)}.status-dot.offline{background:var(--text-faint);box-shadow:0 0 0 4px #94a3b829}.status-dot.busy{background:var(--busy);box-shadow:0 0 0 4px var(--busy-soft)}.workspace{z-index:60;background:var(--bg);animation:fade var(--dur) var(--ease);background-image:radial-gradient(1000px 520px at 78% -10%,#2563eb0d,#0000 60%),linear-gradient(#0f172a06 1px,#0000 0),linear-gradient(90deg,#0f172a06 1px,#0000 0);background-position:0 0,-1px -1px,-1px -1px;background-size:auto,64px 64px,64px 64px;flex-direction:column;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.ws-bar{height:var(--ws-bar-h);align-items:center;gap:var(--sp-3);border-bottom:1px solid var(--border);-webkit-backdrop-filter:saturate(120%)blur(14px);backdrop-filter:saturate(120%)blur(14px);box-shadow:var(--shadow-1);z-index:2;background:#ffffffdb;flex:none;padding:0 18px;display:flex}.ws-id{flex-direction:column;justify-content:center;min-width:0;margin-right:auto;display:flex}.ws-id h3{letter-spacing:-.01em;color:var(--text);margin:0;font-size:16px;font-weight:600;line-height:1.15}.ws-id .sub,.ws-id h3{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ws-id .sub{color:var(--text-faint);font-family:var(--font-mono);margin-top:2px;font-size:11.5px}.ws-body{grid-template-columns:minmax(0,1fr) var(--ws-console-w);flex:1;height:100%;min-height:0;display:grid}.ws-stage{justify-content:center;align-items:center;min-width:0;padding:28px;display:flex;position:relative;overflow:hidden}.ws-stage:before{content:"";pointer-events:none;background:radial-gradient(680px 520px at 50% 42%,#2563eb0d,#0000 70%);position:absolute;inset:0}.ws-body--full{grid-template-columns:1fr}.ws-body--full .ws-stage{place-items:stretch stretch;padding:10px}.phone{background:linear-gradient(155deg,#fff,#eef2f7 52%,#e2e8f0);border-radius:42px;padding:10px;position:relative;box-shadow:0 2px 6px #0f172a14,0 30px 70px -24px #0f172a52,inset 0 0 0 1px #ffffffe6,inset 0 0 0 2px #cbd5e18c}.phone:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(150deg,#ffffff8c,#0000 26%);border-radius:42px;position:absolute;inset:0}.phone-screen{z-index:1;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;outline-offset:2px;transition:box-shadow var(--dur) var(--ease),filter var(--dur) var(--ease);background:#0b0f14;border-radius:32px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0f172a1f}.phone-screen.locked{cursor:not-allowed}.phone-screen.locked:after{content:"";pointer-events:none;z-index:2;background:#f8fafc52;position:absolute;inset:0}.phone-screen:focus-visible{outline:2px solid var(--accent)}.phone-screen img,.screen-canvas{object-fit:cover;-webkit-user-drag:none;width:100%;height:100%;image-rendering:-webkit-optimize-contrast;background:#0b0f14;display:block}.tap-ripple{pointer-events:none;z-index:3;width:46px;height:46px;animation:tap-ripple .45s var(--ease) forwards;background:#2563eb2e;border:2px solid #2563ebf2;border-radius:50%;margin:-23px 0 0 -23px;position:absolute}@keyframes tap-ripple{0%{opacity:.95;transform:scale(.25)}to{opacity:0;transform:scale(1.5)}}.press-hold{--press-hold-wait:.14s;border:2px solid var(--accent);background:var(--accent-soft);pointer-events:none;z-index:3;opacity:0;border-radius:50%;width:52px;height:52px;margin:-26px 0 0 -26px;position:absolute}.press-hold.arming{will-change:transform,opacity;animation:press-arming calc(var(--press-hold-ms,.35s) - var(--press-hold-wait)) var(--ease) var(--press-hold-wait) forwards}.press-hold.held{will-change:transform,opacity;opacity:.95;animation:press-held 1.2s ease-in-out infinite;box-shadow:0 0 0 1px #ffffff80}@keyframes press-arming{0%{opacity:0;transform:scale(1.55)}35%{opacity:.5}to{opacity:.95;transform:scale(1)}}@keyframes press-arming-still{to{opacity:.45}}@keyframes press-held{0%,to{opacity:.95;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.phone-screen:not(.locked){cursor:none}.local-cursor{pointer-events:none;z-index:3;opacity:0;will-change:transform,opacity;width:18px;height:18px;transition:opacity var(--dur) var(--ease);background:#2563eb40;border:2px solid #2563ebf2;border-radius:50%;margin:-9px 0 0 -9px;position:absolute;top:0;left:0;box-shadow:0 0 0 1px #ffffff8c,0 1px 6px #02061766}.screen-empty{color:#9aa6b6;font-family:var(--font-mono);letter-spacing:.02em;z-index:1;background:#0b0f14;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:12.5px;display:flex;position:absolute;inset:0}.spinner{border:2px solid #94a3b84d;border-top:2px solid var(--accent);border-radius:50%;width:26px;height:26px;margin-bottom:12px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.ws-console{border-left:1px solid var(--border);background:var(--surface);box-shadow:-1px 0 0 var(--divider),var(--shadow-2);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex-direction:column;gap:14px;padding:18px;display:flex;overflow-y:auto}.ws-console::-webkit-scrollbar{width:10px}.ws-console::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill);border:3px solid var(--surface)}.ws-console::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.control-state{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim);flex:none;padding:8px 14px 8px 16px;font-size:13px;font-weight:600;position:relative;overflow:hidden}.control-state:before{content:"";background:var(--text-faint);width:3px;position:absolute;top:0;bottom:0;left:0}.control-state .k{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);margin-bottom:2px;font-size:9.5px;font-weight:500;display:block}.control-state.you{border-color:var(--ok-line);background:var(--ok-soft);color:var(--ok-ink)}.control-state.you:before{background:var(--ok)}.control-state.you .k{color:var(--ok-ink)}.control-state.busy{border-color:var(--busy-line);background:var(--busy-soft);color:var(--busy-ink)}.control-state.busy:before{background:var(--busy)}.control-state.busy .k{color:var(--busy-ink)}.field{flex-direction:column;gap:6px;display:flex}.field .field-label,.field label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:500}.input,.text-row input,.tool-body input:not([type]),.tool-body input[type=text]{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);width:100%;min-height:40px;color:var(--text);font:inherit;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease);padding:9px 12px;font-size:14px;box-shadow:inset 0 1px 2px #0f172a0a}.input::placeholder,.text-row input::placeholder,.tool-body input::placeholder{color:var(--text-faint)}.input:hover,.text-row input:hover,.tool-body input:hover{border-color:var(--text-faint)}.input:focus,.input:focus-visible,.text-row input:focus,.text-row input:focus-visible,.tool-body input:focus,.tool-body input:focus-visible{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.text-row{gap:8px;display:flex}.text-row input{flex:1;min-width:0}.key-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.key-row.pair{grid-template-columns:repeat(2,1fr)}.control-console{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-1);flex-direction:column;gap:9px;padding:14px;display:flex}.console-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin:0;font-size:10.5px;font-weight:500}.console-group{border-top:1px solid var(--divider);flex-direction:column;gap:8px;margin-top:3px;padding-top:11px;display:flex}.control-console .console-wide{justify-content:center;width:100%}.control-console .hint{margin:2px 0 0}.control-console .tool-output{margin-top:2px}.tools{border-top:1px solid var(--divider);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));align-items:start;gap:8px;margin-top:6px;padding-top:14px;display:grid}.tool-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-1);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);overflow:hidden}.tool-section[open]{border-color:var(--border-strong);box-shadow:var(--shadow-2)}.tool-section>summary{cursor:pointer;color:var(--text-dim);-webkit-user-select:none;user-select:none;transition:background var(--dur) var(--ease),color var(--dur) var(--ease);align-items:center;gap:8px;padding:11px 13px;font-size:13px;font-weight:600;list-style:none;display:flex}.tool-section>summary::-webkit-details-marker{display:none}.tool-section>summary:after{content:"›";color:var(--text-faint);transition:transform var(--dur) var(--ease),color var(--dur) var(--ease);margin-left:auto;font-size:16px;font-weight:700;transform:rotate(90deg)}.tool-section:not([open])>summary:after{transform:rotate(0)}.tool-section>summary:hover{background:var(--surface-2);color:var(--text)}.tool-section>summary:hover:after{color:var(--text-dim)}.tool-section>summary:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.tool-section[open]>summary{border-bottom:1px solid var(--divider);background:var(--surface-2);color:var(--text)}.tool-section>summary .tool-title{flex:1}.tool-section>summary .drag-handle{cursor:grab;color:var(--text-faint);transition:color var(--dur) var(--ease),background var(--dur) var(--ease);border-radius:5px;padding:2px 3px;font-size:13px;line-height:1}.tool-section>summary .drag-handle:hover{color:var(--text-dim);background:var(--surface-3)}.tool-section>summary .drag-handle:active{cursor:grabbing}.tool-section.drag-over{border-color:var(--accent);box-shadow:0 -3px 0 -1px var(--accent),var(--shadow-2)}.reset-order{opacity:.65;grid-column:1/-1;margin-top:2px}.reset-order:hover{opacity:1}.tool-body{background:var(--surface);flex-direction:column;gap:11px;padding:13px;display:flex}.tool-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-size:10.5px;font-weight:500}.seg{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);grid-template-columns:repeat(3,1fr);gap:0;padding:3px;display:grid}.seg-btn{color:var(--text-dim);font:inherit;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);background:0 0;border:none;border-radius:4px;padding:8px 6px;font-size:12.5px;font-weight:500}.seg-btn:hover{color:var(--text)}.seg-btn:focus-visible{box-shadow:var(--ring);outline:none}.seg-btn.on{background:var(--surface);color:var(--accent-strong);box-shadow:var(--shadow-1),inset 0 0 0 1px var(--accent-line);font-weight:600}.slider-row{flex-direction:column;gap:7px;display:flex}.slider-row input[type=range]{appearance:none;border-radius:var(--radius-pill);background:var(--surface-3);cursor:pointer;outline-offset:4px;width:100%;height:6px}.slider-row input[type=range]:focus-visible{outline:2px solid var(--accent)}.slider-row input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:3px solid var(--surface);width:18px;height:18px;box-shadow:0 0 0 1px var(--accent-line),var(--shadow-1);cursor:pointer;transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur) var(--ease);border-radius:50%}.slider-row input[type=range]::-webkit-slider-thumb:hover{box-shadow:0 0 0 4px var(--accent-soft),var(--shadow-1);transform:scale(1.12)}.slider-row input[type=range]::-moz-range-thumb{background:var(--accent);border:3px solid var(--surface);width:18px;height:18px;box-shadow:0 0 0 1px var(--accent-line),var(--shadow-1);cursor:pointer;border-radius:50%}.slider-row input[type=range]::-moz-range-track{border-radius:var(--radius-pill);background:var(--surface-3);height:6px}.switch-row{color:var(--text);justify-content:space-between;align-items:center;gap:10px;padding:3px 0;font-size:13px;font-weight:500;display:flex}.switch-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex:none}.switch-row input[type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.onoff{flex:none;gap:6px;display:flex}.tool-output{font-family:var(--font-mono);color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-sm);word-break:break-word;grid-column:1/-1;max-height:150px;padding:10px 12px 10px 14px;font-size:12px;line-height:1.55;overflow-y:auto;box-shadow:inset 0 1px 2px #0f172a0d}.tool-output:before{content:"› ";color:var(--accent);font-weight:600}.hint{color:var(--text-dim);font-size:12px;line-height:1.55}.login{place-items:center;min-height:100vh;padding:24px;display:grid;position:relative;overflow:hidden}.login:before{content:"";filter:blur(22px);pointer-events:none;background:radial-gradient(circle,#2563eb1f,#0000 62%);border-radius:50%;width:760px;height:760px;position:absolute}.login-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(420px,100%);box-shadow:var(--shadow-4);padding:32px 30px;position:relative}.login-card .brand{margin-bottom:26px}.login-card h1{letter-spacing:-.02em;color:var(--text);margin:0 0 6px;font-size:24px;font-weight:700}.login-card p.lead{color:var(--text-dim);margin:0 0 24px;font-size:14px}.login-form{flex-direction:column;gap:16px;display:flex}.role-tabs{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.role-tab{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-2);min-height:40px;color:var(--text-dim);cursor:pointer;font:inherit;text-align:center;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);padding:10px 8px;font-size:13px;font-weight:500}.role-tab:hover{border-color:var(--text-faint);color:var(--text);background:var(--surface)}.role-tab:focus-visible{box-shadow:var(--ring);outline:none}.role-tab.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-line);font-weight:600}.mode-note{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-faint);text-align:center;margin-top:20px;font-size:11px}.login-hero{background:radial-gradient(90% 75% at 78% 18%,#57d2f48c,#57d2f400 62%),radial-gradient(85% 80% at 72% 100%,#1b6aa799,#1b6aa700 66%),radial-gradient(75% 65% at 12% 8%,#fff,#fff0 70%),linear-gradient(165deg,#f6f9fc,#dcf0fa 48%,#c3dcef);min-height:100dvh}.login-hero:before{content:none}.login-hero-canvas{z-index:0}.login-hero-canvas,.login-hero-scrim{pointer-events:none;position:absolute;inset:0}.login-hero-scrim{z-index:1;background:radial-gradient(46% 44%,#ffffff80,#fff0 72%)}.login-hero .login-card{z-index:2;border-color:#d8dee7}@media (max-width:420px){.login{padding:16px}.login-card{padding:26px 20px}.login-hero-scrim{background:radial-gradient(72% 42%,#ffffff8c,#fff0 74%)}}.toast{z-index:90;border-radius:var(--radius);background:var(--surface);border:1px solid var(--danger-line);border-left:3px solid var(--danger);color:var(--danger-ink);box-shadow:var(--shadow-3);animation:toast-in var(--dur-slow) var(--ease);align-items:center;gap:8px;padding:12px 18px;font-size:13.5px;font-weight:600;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}}.center-splash{min-height:100vh;color:var(--text-faint);font-family:var(--font-mono);letter-spacing:.04em;place-items:center;font-size:13px;display:grid}@media (max-width:1440px){:root{--ws-console-w:560px}}@media (max-width:1024px){:root{--ws-console-w:440px}.stats{grid-template-columns:repeat(2,1fr)}.ws-stage{padding:20px}}@media (max-width:820px){.ws-body{flex-direction:column;display:flex;overflow:hidden}.ws-stage{flex:auto;min-height:42vh;padding:12px}.ws-console{border-left:none;border-top:1px solid var(--border);min-height:0;max-height:54vh;box-shadow:0 -1px 0 var(--divider);flex:0 auto;overflow-y:auto}.ws-bar{height:auto;min-height:var(--ws-bar-h);flex-wrap:wrap;gap:8px;padding:8px 12px}.ws-stage .phone{box-sizing:border-box;justify-content:center;align-items:center;height:100%;max-height:100%;padding:6px;display:flex}.ws-stage .phone-screen{border-radius:26px;width:auto!important;max-width:100%!important;height:100%!important}}@media (max-width:560px){.app-shell{padding:16px 14px calc(72px + env(safe-area-inset-bottom,0px))}.topbar{flex-wrap:wrap;gap:10px;padding:10px 12px;top:8px}.brand{flex:auto;min-width:0}.status-row{flex-wrap:wrap;justify-content:space-between;width:100%}.stats{grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0 20px}.stat{padding:14px}.stat .num{font-size:26px}.grid{grid-template-columns:1fr}.farm-header{flex-wrap:wrap}.ws-bar{gap:8px;padding:8px 12px}.ws-id h3{font-size:15px}.control-state{padding:6px 10px 6px 12px;font-size:12px}.ws-console{padding:14px 14px calc(14px + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.device-card:hover{transform:none}.press-hold.arming{opacity:0;animation-name:press-arming-still;animation-fill-mode:forwards;transform:scale(1.2)}.press-hold.held{opacity:.95;animation-name:none;transform:scale(1)}}.audio-control{align-items:center;gap:var(--sp-2);flex:0 auto;min-width:0;max-width:100%;display:flex}.audio-state{flex:0 auto;min-width:0;max-width:320px}.audio-state-text{display:block}.audio-state-text,.farm-audio{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.farm-audio{max-width:min(320px,100%);color:var(--ok-ink);border-color:var(--ok-line);background:var(--ok-soft);display:inline-block}.farm-id:has(.farm-audio){flex-wrap:wrap;min-width:0}.dc-signals{align-items:center;gap:var(--sp-2);flex:none;display:flex}.dc-audio{font-size:14px;line-height:1}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:820px){.audio-state-text{white-space:normal}}@media (max-width:560px){.audio-control{flex:100%}.audio-state{flex:auto;max-width:none}}.audio-notice{border:1px solid var(--busy-line);border-radius:var(--radius);background:var(--busy-soft);min-width:0;max-width:240px;color:var(--busy-ink);flex:0 auto;padding:4px 10px;font-size:12px;font-weight:600;line-height:1.3;overflow:hidden}.audio-notice:empty{clip:rect(0,0,0,0);border:0;width:1px;height:1px;padding:0;position:absolute}@media (max-width:560px){.audio-control:has(.audio-notice:not(:empty)){flex-wrap:wrap}.audio-notice{flex-basis:100%;order:1;max-width:none}}.device-actions{flex:none;position:relative}.device-actions-trigger{width:auto;padding:.35rem .7rem;font-weight:600}.device-actions-menu{z-index:70;width:min(360px,100vw - 24px);max-height:min(70vh,560px);padding:var(--sp-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-4);position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.device-actions-group+.device-actions-group{margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--divider)}.device-actions-group-title{margin:0 0 var(--sp-1);padding:0 var(--sp-2);color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.device-action{gap:var(--sp-2);width:100%;padding:var(--sp-2);border-radius:var(--radius);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;display:flex}.device-action:hover{background:var(--surface-2);border-color:var(--border)}.device-action:focus-visible{box-shadow:var(--ring);outline:none}.device-action.danger .device-action-label{color:var(--danger-ink)}.device-action.danger:hover{background:var(--danger-soft);border-color:var(--danger-line)}.device-action.is-blocked{cursor:not-allowed;opacity:.62}.device-action.is-blocked:hover{background:0 0;border-color:#0000}.device-action.is-blocked .device-action-reason{color:var(--busy-ink);font-weight:600}.device-action-icon{flex:none;width:1.4em;font-size:15px;line-height:1.35}.device-action-text{min-width:0}.device-action-label{font-weight:600;line-height:1.3;display:block}.device-action-reason{color:var(--text-dim);margin-top:2px;font-size:12px;line-height:1.35;display:block}.device-actions-output{z-index:65;align-items:flex-start;gap:6px;width:min(360px,100vw - 24px);margin:0;display:flex;position:absolute;top:calc(100% + 8px);right:0}.device-actions-output-text{flex:auto;min-width:0}.device-actions-output-close{flex:none;width:24px;height:24px;padding:0;font-size:12px}.tool-output.failed{border-color:var(--danger-line);background:var(--danger-soft);color:var(--danger-ink)}.farm-header{flex-wrap:wrap}.farm-header .farm-id{margin-right:auto}.farm-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.farm-output{margin:var(--sp-2) 0 0;flex:100%;order:1}.farm-panel{margin-top:var(--sp-3);padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);flex:100%;order:1}.farm-panel-head{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);display:flex}.farm-panel-head h4{flex:auto;min-width:0;margin:0;font-size:14px;font-weight:600}.farm-panel-close{width:32px;height:32px;padding:0}.farm-rows{margin:0;padding:0;list-style:none}.farm-rows-nested{margin:var(--sp-2) 0 0 var(--sp-4)}.farm-row{align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;border-top:1px solid var(--divider);flex-wrap:wrap;display:flex}.farm-row:first-child{border-top:none}.farm-row-block{display:block}.farm-row-main{flex:auto;min-width:0;font-weight:600}.farm-row-meta{color:var(--text-dim);font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:12px}.farm-row summary,.farm-row-actions{gap:var(--sp-2);display:flex}.farm-row summary{align-items:center;cursor:pointer;flex-wrap:wrap}.farm-row summary:focus-visible{box-shadow:var(--ring);border-radius:var(--radius-sm);outline:none}.vx-modal{z-index:100;padding:var(--sp-4);padding-top:calc(var(--sp-4) + env(safe-area-inset-top,0px));padding-bottom:calc(var(--sp-4) + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade var(--dur) var(--ease);background:#0f172a61;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.vx-modal-card{width:min(460px,100%);max-height:100%;padding:var(--sp-5);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-4);overflow-y:auto}.vx-modal-card.danger{border-top-color:var(--danger)}.vx-modal-title{margin:0 0 var(--sp-2);letter-spacing:-.01em;font-size:17px;font-weight:600}.vx-modal-detail{margin:0 0 var(--sp-4);color:var(--text-dim);font-size:13.5px;line-height:1.5}.vx-modal-error{margin:0 0 var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--danger-line);border-radius:var(--radius);background:var(--danger-soft);color:var(--danger-ink);font-size:13px;font-weight:600}.vx-modal-actions{justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-4);flex-wrap:wrap;display:flex}.vx-modal select.input{width:100%}.maint-body{min-height:0;padding:var(--sp-5);padding-bottom:calc(var(--sp-8) + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto}.maint-warning{max-width:78ch;margin:0 0 var(--sp-5);padding:var(--sp-3) var(--sp-4);border:1px solid var(--danger-line);border-radius:var(--radius-lg);background:var(--danger-soft);color:var(--danger-ink);font-size:13.5px;line-height:1.55}.maint-farm{max-width:78ch;margin-bottom:var(--sp-5);padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1)}.maint-farm-head{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);flex-wrap:wrap;display:flex}.maint-farm-head h4{margin:0;font-size:16px;font-weight:600}.maint-block{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) 0;border-top:1px solid var(--divider);flex-wrap:wrap;display:flex}.maint-block-text{flex:260px;min-width:0}.maint-block-text p{margin:var(--sp-1) 0 0}.maint-blocked{color:var(--busy-ink);font-weight:600}@media (max-width:560px){.device-actions{flex:100%}.device-actions-trigger{justify-content:center;width:100%}.device-actions-menu,.device-actions-output{top:auto;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));width:auto;max-height:62vh;position:fixed}.maint-body{padding:var(--sp-3)}}.farm-recovery{white-space:nowrap;text-overflow:ellipsis;max-width:min(320px,100%);display:inline-block;overflow:hidden}.farm-recovery.warn{color:var(--busy-ink);border-color:var(--busy-line);background:var(--busy-soft)}.farm-recovery.danger{color:var(--danger-ink);border-color:var(--danger-line);background:var(--danger-soft)}.farm-recovery.off{color:var(--text-faint)}.dc-recovery{border-top:1px solid var(--divider);text-align:left;margin-top:14px;padding-top:12px;font-size:12px;font-weight:600}.dc-recovery.warn{color:var(--busy-ink)}.dc-recovery.danger{color:var(--danger-ink)}.farm-id:has(.farm-recovery){flex-wrap:wrap;min-width:0}.automation-tools{grid-template-columns:1fr}.automation-count,.tool-section.automation[open]{border-color:var(--accent-line)}.automation-count{color:var(--accent);background:var(--accent-soft)}.automation-warning{border:1px solid var(--busy-line);border-radius:var(--radius);background:var(--busy-soft);color:var(--busy-ink);margin:0;padding:10px 12px;font-size:12px;line-height:1.55}.automation-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.automation-row{border-radius:var(--radius-sm);transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease);border:1px solid #0000;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:7px 8px;display:flex}.automation-row:hover{background:var(--surface-2)}.automation-row.on{border-color:var(--accent-line);background:var(--accent-soft)}.automation-name{cursor:pointer;flex:130px;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:600;display:flex}.automation-name>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.automation-name.blocked{cursor:not-allowed;color:var(--text-faint)}.automation-live{font-family:var(--font-mono);color:var(--ok-ink);flex:100%;font-size:11px}.automation-live em{color:var(--text-faint);font-style:normal}.automation-live.stopped{color:var(--busy-ink)}.automation-live.idle{color:var(--text-faint)}.automation-actions{flex-wrap:wrap;gap:8px;display:flex}.automation-actions .btn{flex:auto;justify-content:center}.farm-automation{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.farm-id:has(.farm-automation){flex-wrap:wrap;min-width:0}.dc-automation{border-top:1px solid var(--divider);text-align:left;color:var(--accent);margin-top:14px;padding-top:12px;font-size:12px;font-weight:600}.dc-automation.stopped{color:var(--busy-ink)}.incident-trigger{border-radius:var(--radius-pill);border-color:var(--border);color:var(--text-dim);font-weight:500}.incident-trigger:hover{background:var(--cta-soft);color:var(--cta-strong);border-color:#f9731661}.incident-trigger:active{background:#f9731633}.incident-card{border-top-color:var(--cta);width:min(540px,100%)}.incident-head{margin-bottom:var(--sp-4)}.incident-progress{margin:0 0 var(--sp-1);color:var(--text-faint);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;font-size:10px;font-weight:500}.incident-head .vx-modal-title{margin-bottom:0;font-size:20px}.incident-picked{margin:var(--sp-3) 0 0;flex-wrap:wrap;gap:6px;display:flex}.incident-step{gap:var(--sp-3);flex-direction:column;display:flex}.incident-search{margin-bottom:var(--sp-1)}.incident-list{gap:var(--sp-3);max-height:min(46vh,340px);margin:0 -4px;padding:2px 4px;overflow-y:auto}.incident-group,.incident-list{flex-direction:column;display:flex}.incident-group{gap:4px}.incident-group-title{z-index:1;background:var(--surface);color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;margin:0;padding:6px 2px 4px;font-size:11px;font-weight:600;position:sticky;top:0}.incident-choice{border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);border:1px solid var(--border);border-left:3px solid #0000;flex-direction:column;gap:2px;padding:9px 12px;display:flex}.incident-choice:hover{border-color:var(--border-strong);border-left-color:var(--cta);background:var(--surface-2);box-shadow:var(--shadow-1)}.incident-choice:focus-visible{box-shadow:var(--ring);outline:none}.incident-choice.is-picked{border-color:var(--accent-line);border-left-color:var(--accent);background:var(--accent-soft)}.incident-choice-label{font-size:14px;font-weight:600;line-height:1.3}.incident-choice-detail{color:var(--text-dim);font-family:var(--font-mono);font-size:11px;line-height:1.4}.incident-problems{gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.incident-problem{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:56px;color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-1);transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur-fast) var(--ease);align-items:center;gap:10px;padding:10px 12px;display:flex}.incident-problem:hover{border-color:var(--border-strong);background:var(--surface-2);box-shadow:var(--shadow-2);transform:translateY(-1px)}.incident-problem:active{background:var(--surface-3);transform:translateY(0)}.incident-problem:focus-visible{box-shadow:var(--ring);outline:none}.incident-problem.is-picked{border-color:var(--accent-line);background:var(--accent-soft)}.incident-problem-emoji{flex:none;font-size:22px;line-height:1}.incident-problem-label{font-size:13.5px;font-weight:600;line-height:1.35}.incident-comment{min-height:96px;font-family:var(--font-ui);resize:vertical;padding:10px 12px;line-height:1.5}.incident-count{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.incident-empty{padding:var(--sp-3);color:var(--text-dim);margin:0;font-size:13px;line-height:1.55}.incident-empty,.incident-result{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.incident-result{padding:var(--sp-3) var(--sp-4)}.incident-result.ok{border-color:var(--ok-line);background:var(--ok-soft)}.incident-result.warn{border-color:var(--busy-line);background:var(--busy-soft)}.incident-result.danger{border-color:var(--danger-line);background:var(--danger-soft)}.incident-result-head{margin:0 0 var(--sp-2);font-size:14px;font-weight:700}.incident-result.ok .incident-result-head{color:var(--ok-ink)}.incident-result.warn .incident-result-head{color:var(--busy-ink)}.incident-result.danger .incident-result-head{color:var(--danger-ink)}.incident-result-message{margin:0;font-size:13.5px;line-height:1.55}.incident-result-meta{margin:var(--sp-2) 0 0;color:var(--text-dim);font-family:var(--font-mono);overflow-wrap:anywhere;font-size:11px}.incident-back{margin-right:auto}@media (max-width:560px){.status-row .docs-trigger,.status-row .incident-trigger{flex:auto;justify-content:center}.incident-problems{grid-template-columns:1fr}.incident-list{max-height:42vh}}.login-sep{align-items:center;gap:var(--sp-3);color:var(--text-faint);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:600;display:flex}.login-sep:after,.login-sep:before{content:"";background:var(--divider);flex:1;height:1px}.setup-account{margin:0 0 var(--sp-4);padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-dim);overflow-wrap:anywhere;font-size:13px}.setup-account strong{color:var(--text);font-family:var(--font-mono);font-weight:600}.setup-exit{width:100%;margin-top:var(--sp-4);color:var(--text-faint);justify-content:center}.access-card{width:min(560px,100%)}.access-form{gap:var(--sp-4);flex-direction:column;display:flex}.access-roles-group{border:0;min-width:0;margin:0;padding:0}.access-role-label{color:var(--text-dim);letter-spacing:.02em;margin-bottom:7px;padding:0;font-size:12px;font-weight:600;display:block}.access-roles{gap:var(--sp-2);grid-template-columns:repeat(2,1fr);display:grid}.access-role{border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-1);transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);border:1px solid var(--border);border-left:3px solid #0000;flex-direction:column;gap:4px;padding:11px 13px;display:flex;position:relative}.access-role:hover:not(:has(.access-role-input:disabled)){border-color:var(--border-strong);border-left-color:var(--accent);background:var(--surface-2);box-shadow:var(--shadow-2)}.access-role-input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.access-role:has(.access-role-input:focus-visible){box-shadow:var(--ring)}.access-role.is-picked{border-color:var(--accent-line);border-left-color:var(--accent);background:var(--accent-soft)}.access-role:has(.access-role-input:disabled){opacity:.55;cursor:not-allowed}.access-role-name{font-size:14px;font-weight:600;line-height:1.3}.access-role-detail{color:var(--text-dim);font-size:12px;line-height:1.45}.access-result{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);flex-direction:column;display:flex}.access-result.ok{border-color:var(--ok-line);background:var(--ok-soft)}.access-result.warn{border-color:var(--busy-line);background:var(--busy-soft)}.access-result-head{margin:0;font-size:15px;font-weight:700}.access-result.ok .access-result-head{color:var(--ok-ink)}.access-result.warn .access-result-head{color:var(--busy-ink)}.access-result-message{margin:0;font-size:13.5px;line-height:1.55}.access-repaired{flex-wrap:wrap;gap:6px;margin:0;display:flex}.access-warning{padding:var(--sp-2) var(--sp-3);border:1px solid var(--danger-line);border-radius:var(--radius-sm);background:var(--surface);color:var(--danger-ink);margin:0;font-size:13px;font-weight:600;line-height:1.5}.access-result.warn .access-warning{border-color:var(--border);color:var(--text-dim);font-weight:500}.access-steps{color:var(--text-dim);flex-direction:column;gap:7px;margin:0;padding-left:1.25rem;font-size:13px;line-height:1.5;display:flex}.access-steps strong{color:var(--text);overflow-wrap:anywhere}.copy-field{padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-1);flex-direction:column;gap:5px;display:flex}.copy-field-head{justify-content:space-between;align-items:center;gap:var(--sp-2);display:flex}.copy-field-label{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.copy-field-value{border-radius:var(--radius-sm);background:var(--surface-2);max-height:168px;color:var(--text);font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;padding:9px 11px;font-size:13px;line-height:1.6;display:block;overflow-y:auto}.copy-field-state.is-failed{color:var(--danger-ink)}.copy-field-state:empty{display:none}@media (max-width:560px){.access-roles{grid-template-columns:1fr}.user-chip{justify-content:flex-end;row-gap:8px}.copy-field-head,.user-chip{flex-wrap:wrap}}.access-result-head:focus{outline:none}.access-list-card{gap:var(--sp-3);flex-direction:column;width:min(720px,100%);display:flex}.access-list-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);display:flex}.access-list-head-text{min-width:0}.access-list-head .vx-modal-title{margin-bottom:var(--sp-1)}.access-list-head .vx-modal-detail{margin-bottom:0}.access-list-head .vx-modal-title:focus{outline:none}.access-list-card .vx-modal-actions{margin-top:var(--sp-1)}.access-list-warn{padding:var(--sp-2) var(--sp-3);border:1px solid var(--busy-line);border-left:3px solid var(--busy);border-radius:var(--radius-sm);background:var(--busy-soft);color:var(--busy-ink);margin:0;font-size:13px;line-height:1.5}.access-list-warn.is-stale{border-color:var(--danger-line);border-left-color:var(--danger);background:var(--danger-soft);color:var(--danger-ink);font-weight:600}.access-list-warn.is-lonely{border-color:var(--border-strong);border-left-color:var(--accent);background:var(--surface-2);color:var(--text-dim)}.access-list-empty{padding:var(--sp-5) 0;text-align:center;margin:0}.access-people{gap:var(--sp-2);flex-direction:column;max-height:min(52vh,460px);margin:0 -4px;padding:2px 4px;list-style:none;display:flex;overflow-y:auto}.access-person{align-items:start;gap:7px var(--sp-3);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-1);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);border:1px solid var(--border);border-left:3px solid #0000;grid-template-columns:minmax(0,1fr) auto;padding:11px 13px;display:grid}.access-person:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2)}.access-person.is-admin{border-left-color:var(--accent)}.access-person.is-suspended{border-left-color:var(--busy);background:var(--surface-2)}.access-person.is-you{border-color:var(--accent-line);background:var(--accent-soft)}.access-person-id{grid-column:1;min-width:0}.access-person-name{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:7px;margin:0;font-size:14.5px;font-weight:600;line-height:1.3;display:flex}.access-person-you{border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;font-size:10px;font-weight:600}.access-person-mail{color:var(--text-dim);font-family:var(--font-mono);overflow-wrap:anywhere;margin:2px 0 0;font-size:12px;line-height:1.45}.access-person-act{grid-area:1/2;justify-self:end}.access-person-revoke[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.access-person-revoke[aria-disabled=true]:hover{background:var(--surface);border-color:var(--border-strong);box-shadow:none;color:inherit}.access-person-revoke:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--danger-line);background:var(--danger-soft);color:var(--danger-ink)}.access-person-revoke:active:not(:disabled):not([aria-disabled=true]){background:var(--danger);border-color:var(--danger);color:#fff}.access-person-tags{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px;display:flex}.access-person-role.is-admin{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.access-person-live{border-color:var(--ok-line);background:var(--ok-soft);color:var(--ok-ink);align-items:center;gap:6px;font-weight:600;display:inline-flex}.access-person-note{color:var(--text-dim);grid-column:1/-1;margin:0;font-size:12.5px;line-height:1.5}.access-person-note.is-suspended{color:var(--busy-ink)}.access-person-note.is-reason{border-top:1px dashed var(--border);color:var(--text-dim);padding-top:6px;font-style:italic}.access-receipt{gap:var(--sp-2);padding:var(--sp-4);border:1px solid var(--ok-line);border-radius:var(--radius);background:var(--ok-soft);flex-direction:column;display:flex}.access-receipt.is-partial{border-color:var(--danger-line);border-left:3px solid var(--danger);background:var(--danger-soft)}.access-receipt-head{color:var(--ok-ink);margin:0;font-size:15px;font-weight:700}.access-receipt.is-partial .access-receipt-head{color:var(--danger-ink)}.access-receipt-head:focus{outline:none}.access-receipt-message{margin:0;font-size:13.5px;line-height:1.55}.access-receipt-pending{padding:var(--sp-2) var(--sp-3);border:1px solid var(--danger-line);color:var(--danger-ink);font-size:13px;line-height:1.5}.access-receipt-parts,.access-receipt-pending{border-radius:var(--radius-sm);background:var(--surface);margin:0}.access-receipt-parts{gap:var(--sp-2);padding:var(--sp-3);display:grid}.access-receipt-parts dt{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:600}.access-receipt-parts dd{margin:2px 0 0;font-size:13px;line-height:1.5}.access-receipt-parts dd.is-bad{color:var(--danger-ink);font-weight:600}.access-receipt-actions{justify-content:flex-end;display:flex}.revoke-who{margin:0 0 var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-left:3px solid var(--danger);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);overflow-wrap:anywhere;font-size:13px}.revoke-head{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:600}.revoke-points{margin:0 0 var(--sp-3);flex-direction:column;gap:5px;padding-left:1.15rem;font-size:13px;line-height:1.5;display:flex}.revoke-points strong{color:var(--text)}.revoke-warn{margin:0 0 var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--danger-line);border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger-ink);font-size:13px;font-weight:500;line-height:1.5}.revoke-back{color:var(--text-faint);margin:0;font-size:12.5px;line-height:1.5}.revoked-screen{min-height:100vh;padding:var(--sp-6) var(--sp-4);background:var(--bg);place-items:center;display:grid}.revoked-card{width:min(460px,100%);padding:var(--sp-6);border:1px solid var(--border);border-top:3px solid var(--danger);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-3);text-align:center}.revoked-mark{margin:0 0 var(--sp-3);font-size:34px;line-height:1}.revoked-title{margin:0 0 var(--sp-3);letter-spacing:-.01em;font-size:21px;font-weight:700}.revoked-text{margin:0 0 var(--sp-3);color:var(--text-dim);font-size:13.5px;line-height:1.6}.revoked-card .btn{margin-top:var(--sp-2)}@media (max-width:560px){.access-list-head{flex-wrap:wrap}.access-person{grid-template-columns:minmax(0,1fr)}.access-person-act{order:2;grid-area:auto/1;justify-self:stretch}.access-person-revoke{justify-content:center;width:100%}}.docs-trigger{border-radius:var(--radius-pill);border-color:var(--border);color:var(--text-dim);font-weight:500}.docs-trigger:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong)}.docs-trigger:active{background:#2563eb2e}.docs-modal{flex-direction:column;width:min(940px,100%);overflow:hidden}.docs-head,.docs-modal{gap:var(--sp-3);display:flex}.docs-head{justify-content:space-between;align-items:flex-start}.docs-head-text{min-width:0}.docs-head .vx-modal-title{margin-bottom:var(--sp-1)}.docs-head .vx-modal-detail{margin-bottom:0}.docs-head .vx-modal-title:focus{outline:none}.docs-body{gap:var(--sp-3);flex-direction:column;flex:auto;min-height:0;margin:0 -4px;padding:2px 4px;display:flex;overflow-y:auto}.docs-warn{padding:var(--sp-2) var(--sp-3);border:1px solid var(--busy-line);border-left:3px solid var(--busy);border-radius:var(--radius-sm);background:var(--busy-soft);color:var(--busy-ink);margin:0;font-size:13px;line-height:1.5}.docs-warn.is-stale{border-color:var(--danger-line);border-left-color:var(--danger);background:var(--danger-soft);color:var(--danger-ink);font-weight:600}.docs-warn.is-lonely{border-color:var(--border-strong);border-left-color:var(--accent);background:var(--surface-2);color:var(--text-dim)}.docs-notice{padding:var(--sp-2) var(--sp-3);border:1px solid var(--ok-line);border-left:3px solid var(--ok);border-radius:var(--radius-sm);background:var(--ok-soft);color:var(--ok-ink);overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:500;line-height:1.5}.docs-upload{gap:var(--sp-2);padding:var(--sp-4);border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);flex-direction:column;display:flex}.docs-upload-head{margin:0;font-size:13px;font-weight:700}.docs-upload .field,.docs-upload-lead{margin:0}.docs-upload-actions{justify-content:flex-end;align-items:center;gap:var(--sp-2);margin-top:var(--sp-1);flex-wrap:wrap;display:flex}.docs-upload-picked{overflow-wrap:anywhere;min-width:0;margin-right:auto}.docs-file-input{width:100%;font:inherit;color:var(--text-dim);font-size:13px}.docs-file-input::file-selector-button{margin-right:var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:34px;color:var(--text);font:inherit;cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease);padding:0 14px;font-size:13px;font-weight:600}.docs-file-input::file-selector-button:hover{border-color:var(--accent-line);background:var(--surface-2)}.docs-file-input:focus-visible{outline:none}.docs-file-input:focus-visible::file-selector-button{box-shadow:var(--ring)}.docs-progress-row{flex-direction:column;gap:6px;display:flex}.docs-progress{border-radius:var(--radius-pill);background:var(--surface-3);height:8px;overflow:hidden}.docs-progress-fill{border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-strong));transform-origin:0;width:100%;height:100%;transition:transform var(--dur) var(--ease);display:block}.docs-progress.is-unknown .docs-progress-fill{animation:docs-progress-sweep 1.2s var(--ease) infinite}@keyframes docs-progress-sweep{0%{transform:scaleX(.3)translate(-100%)}to{transform:scaleX(.3)translate(433%)}}.docs-progress-text{font-variant-numeric:tabular-nums;margin:0}.docs-list{gap:var(--sp-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.docs-rest-title{margin:var(--sp-1) 0 0;color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.docs-card{gap:var(--sp-2);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-1);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);border:1px solid var(--border);border-left:3px solid #0000;flex-direction:column;padding:12px 14px;display:flex}.docs-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2)}.docs-card.is-main{padding:var(--sp-4);border-color:var(--accent-line);border-left-color:var(--accent);background:linear-gradient(180deg,var(--accent-soft),#fff0 62%),var(--surface);box-shadow:var(--shadow-2)}.docs-card.is-main:hover{box-shadow:var(--shadow-3)}.docs-card-head{align-items:flex-start;gap:var(--sp-3);display:flex}.docs-card-icon{border-radius:var(--radius);background:var(--surface-2);width:38px;height:38px;box-shadow:inset 0 0 0 1px var(--border);flex:none;place-items:center;font-size:18px;line-height:1;display:grid}.docs-card.is-main .docs-card-icon{background:var(--surface);width:46px;height:46px;box-shadow:inset 0 0 0 1px var(--accent-line),var(--shadow-1);font-size:22px}.docs-card-text{flex:auto;min-width:0}.docs-card-flag{margin:0 0 5px}.docs-chip-main{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.docs-card-title{overflow-wrap:anywhere;margin:0;font-size:14.5px;font-weight:600;line-height:1.3}.docs-card.is-main .docs-card-title{letter-spacing:-.015em;font-size:19px;font-weight:700}.docs-card-meta{color:var(--text-dim);font-family:var(--font-mono);margin:3px 0 0;font-size:11px;line-height:1.45}.docs-card-file{color:var(--text-faint);font-family:var(--font-mono);overflow-wrap:anywhere;margin:4px 0 0;font-size:10.5px;line-height:1.4}.docs-open{flex:none;align-self:center}.docs-card-actions{gap:var(--sp-1);padding-top:var(--sp-2);border-top:1px solid var(--divider);flex-wrap:wrap;display:flex}.btn.docs-act-danger{color:var(--danger-ink)}.btn.docs-act-danger:hover:not(:disabled){border-color:var(--danger-line);background:var(--danger-soft);color:var(--danger-ink)}.docs-rename{flex-direction:column;gap:6px;display:flex}.docs-rename .field-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:500}.docs-rename-actions{justify-content:flex-end;gap:var(--sp-2);flex-wrap:wrap;display:flex}.docs-empty{padding:var(--sp-5) 0;text-align:center;margin:0}.docs-empty-block{padding:var(--sp-6) var(--sp-4);border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);text-align:center}.docs-empty-mark{margin:0 0 var(--sp-2);font-size:30px;line-height:1}.docs-empty-title{margin:0 0 6px;font-size:15px;font-weight:700}.docs-empty-block .hint{max-width:48ch;margin:0 auto}.docs-delete-who{margin:0 0 var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-left:3px solid var(--danger);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:6px;font-size:13.5px;display:flex}.docs-delete-file{width:100%;color:var(--text-faint);font-family:var(--font-mono);font-size:11px}.docs-delete-points{margin:0 0 var(--sp-3);flex-direction:column;gap:5px;padding-left:1.15rem;font-size:13px;line-height:1.5;display:flex}.docs-delete-points strong{color:var(--text)}.docs-delete-back{color:var(--text-faint);margin:0;font-size:12.5px;line-height:1.5}@media (prefers-reduced-motion:reduce){.docs-progress.is-unknown .docs-progress-fill{animation-name:none}}@media (max-width:560px){.docs-modal{padding:var(--sp-4)}.docs-card-head,.docs-head{flex-wrap:wrap}.docs-open{flex:100%;align-self:stretch}.docs-card-actions .btn{flex:auto}}.docs-upload-bar{align-items:center;gap:var(--sp-2) var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);flex-wrap:wrap;display:flex}.docs-upload-bar .hint{flex:200px;min-width:0}.docs-modal .vx-modal-actions{margin-top:0}.docs-card-error{margin:0}.docs-card-blocked{padding:var(--sp-2) var(--sp-3);border:1px solid var(--busy-line);border-left:3px solid var(--busy);border-radius:var(--radius-sm);background:var(--busy-soft);color:var(--busy-ink);margin:0;font-size:12.5px;line-height:1.45}.docs-modal a.btn{text-decoration:none}.docs-open[aria-disabled=true]{opacity:.5;cursor:progress;box-shadow:none}.docs-open[aria-disabled=true]:hover{box-shadow:none}.docs-open[aria-disabled=true]:active{transform:none}.docs-guide{gap:var(--sp-3);padding:var(--sp-5);border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:radial-gradient(120% 150% at 0 0,var(--accent-soft),#fff0 58%),var(--surface);box-shadow:var(--shadow-2);flex-direction:column;display:flex}.docs-guide-head{align-items:flex-start;gap:var(--sp-4);display:flex}.docs-guide-icon{border-radius:var(--radius);background:linear-gradient(180deg,var(--accent) 0,var(--accent-strong) 100%);width:52px;height:52px;box-shadow:var(--shadow-2),inset 0 1px 0 #ffffff38;flex:none;place-items:center;font-size:26px;line-height:1;display:grid}.docs-guide-text{flex:auto;min-width:0}.docs-guide-flag{margin:0 0 6px}.docs-chip-guide{border-color:var(--accent-line);background:var(--surface);color:var(--accent-strong);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.docs-guide-title{letter-spacing:-.02em;margin:0;font-size:21px;font-weight:700;line-height:1.2}.docs-guide-lead{max-width:62ch;color:var(--text-dim);margin:6px 0 0;font-size:13.5px;line-height:1.55}.docs-guide-open{flex:none;align-self:center}.docs-guide-jump{padding-top:var(--sp-3);border-top:1px solid var(--accent-line);flex-wrap:wrap;gap:6px;display:flex}.docs-guide-step{background:var(--surface);transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease);font-family:inherit;font-size:12px;font-weight:500;text-decoration:none}.docs-guide-step:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong)}.docs-guide-step:focus-visible{box-shadow:var(--ring);outline:none}@media (max-width:560px){.docs-guide{padding:var(--sp-4)}.docs-guide-head{gap:var(--sp-3);flex-wrap:wrap}.docs-guide-icon{width:42px;height:42px;font-size:22px}.docs-guide-title{font-size:18px}.docs-guide-open{flex:100%;align-self:stretch}}@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-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}