:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}.app-shell{--header-height:64px;--left-drawer-width:320px;--right-panel-width:390px;--surface:#f7f8fa;--surface-strong:#fff;--surface-soft:#eef1f4;--border:#d7dce3;--text:#1c2633;--text-muted:#5d6978;--text-soft:#7f8a99;--accent:#0f766e;--accent-soft:#d8f3ef;--danger:#b42318;--shadow:0 18px 45px #0f172a29;background:var(--surface);color:var(--text);height:100vh;overflow:hidden}.app-shell[data-theme=dark]{--surface:#111417;--surface-strong:#191e23;--surface-soft:#232a31;--border:#303942;--text:#f3f6f8;--text-muted:#b6c0ca;--text-soft:#82909d;--accent:#5eead4;--accent-soft:#143f3d;--danger:#fda29b;--shadow:0 18px 45px #0000005c}.topbar{background:var(--surface-strong);border-bottom:1px solid var(--border);height:var(--header-height);grid-template-columns:44px auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 12px;display:grid}.brand{color:var(--text);align-items:center;gap:9px;min-width:0;text-decoration:none;display:inline-flex}.brand-mark{object-fit:contain;border-radius:6px;width:30px;height:30px}.brand-name{white-space:nowrap;font-size:16px;font-weight:700}.topbar-status,.topbar-actions{align-items:center;gap:8px;min-width:0;display:flex}.topbar-status{overflow:hidden}.topbar-actions{justify-content:flex-end}.status-pill{background:var(--surface-soft);border:1px solid var(--border);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;line-height:1;overflow:hidden}.icon-button,.context-toggle{color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.icon-button:hover,.context-toggle:hover{background:var(--surface-soft);border-color:var(--border)}.user-chip{background:var(--surface-soft);border:1px solid var(--border);color:var(--text);border-radius:6px;align-items:center;gap:8px;min-width:0;max-width:220px;height:38px;padding:0 10px;text-decoration:none;display:inline-flex}.user-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shell-body{height:calc(100vh - var(--header-height));grid-template-columns:minmax(0,1fr);min-height:0;display:grid;position:relative}.workspace{min-height:0;overflow:hidden}.workspace-grid{height:100%;min-height:0;display:grid}.workspace-primary{grid-template-rows:auto minmax(0,1fr);min-height:0;padding:18px;display:grid}.workspace-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:14px;padding:0 0 14px;display:flex}.eyebrow{color:var(--accent);text-transform:uppercase;font-size:12px;font-weight:700}.workspace-heading h1{margin:0;font-size:28px;line-height:1.1}.workspace-scroll,.context-scroll,.nav-scroll{min-height:0;overflow:auto}.workspace-scroll{grid-auto-rows:min-content;gap:12px;padding:14px 0;display:grid}.tracking-workspace-scroll{grid-template-rows:auto minmax(0,1fr);height:100%;overflow:hidden}.panel-section{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;padding:14px}.panel-section h2{margin:0 0 8px;font-size:15px}.panel-section.warning{border-color:color-mix(in srgb, var(--danger) 45%, var(--border))}.panel-section p{color:var(--text-muted);margin:0}.admin-workspace-scroll{grid-template-rows:auto minmax(0,1fr);height:100%;overflow:hidden}.admin-page-summary{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.admin-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:0;padding-right:4px;display:grid;overflow:auto}.admin-tabbed-workspace{grid-template-rows:auto minmax(0,1fr);gap:10px;height:100%;min-height:0;display:grid;overflow:hidden}.admin-section-tabs{min-height:48px;overflow-x:auto}.admin-tab-panel{height:100%;min-height:0;display:grid;overflow:hidden}.admin-section{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.admin-section.metric_summary,.admin-section.navigation_cards,.admin-section.audit_table,.admin-section.account_table,.admin-section.menu_visibility_table{grid-column:1/-1}.admin-section-body{gap:12px;height:100%;min-height:0;padding:12px;display:grid;overflow:auto}.admin-section-body.tree-detail-body{grid-template-rows:auto minmax(0,1fr);height:100%;overflow:hidden}.admin-section-summary{background:var(--surface);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.admin-section-summary p{color:var(--text-muted);margin:0;font-size:13px}.admin-record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.metric_summary .admin-record-grid,.navigation_cards .admin-record-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.account_table .admin-record-grid,.audit_table .admin-record-grid,.menu_visibility_table .admin-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-record-card h3 a{color:var(--text);text-decoration:none}.admin-record-card h3 a:hover{color:var(--accent)}.admin-field-grid{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:10px;display:grid}.admin-field{gap:4px;min-width:0;display:grid}.admin-field span{color:var(--text-soft);text-transform:uppercase;font-size:11px}.admin-field strong,.admin-field a,.admin-field code{color:var(--text);overflow-wrap:anywhere;min-width:0;font-size:12px}.admin-field a{color:var(--accent);text-decoration:none}.admin-field code{background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;padding:5px 6px}.admin-action-panel{border-top:1px solid var(--border);gap:8px;padding-top:10px;display:grid}.admin-action-row{grid-template-columns:minmax(0,1fr) auto minmax(70px,auto);align-items:end;gap:8px;display:grid}.admin-action-row label{gap:4px;min-width:0;display:grid}.admin-action-row label span{color:var(--text-soft);text-transform:uppercase;font-size:11px;font-weight:700}.admin-action-row select{background:var(--surface-soft);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:6px;min-width:0;height:34px;padding:0 8px}.admin-action-row button{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--text);cursor:pointer;font:inherit;white-space:nowrap;border-radius:6px;height:34px;padding:0 10px;font-size:12px;font-weight:700}.admin-action-row button:disabled{cursor:wait;opacity:.68}.admin-action-message{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;line-height:34px;overflow:hidden}.admin-action-message.error{color:var(--danger)}.admin-tree-detail{grid-template-columns:minmax(240px,.85fr) minmax(0,1.35fr);gap:10px;height:100%;min-height:0;display:grid;overflow:hidden}.admin-tree-pane,.admin-detail-pane{height:100%;min-height:0;overflow:auto}.admin-tree-pane{background:var(--surface);border:1px solid var(--border);border-radius:8px;align-content:start;gap:4px;padding:8px;display:grid}.admin-tree-node{gap:4px;min-width:0;display:grid}.admin-tree-button{color:var(--text);cursor:pointer;margin-left:calc(var(--depth) * 16px);text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 8px;min-width:0;min-height:50px;padding:8px;display:grid}.admin-tree-button:hover,.admin-tree-button.selected{background:var(--surface-strong);border-color:color-mix(in srgb, var(--accent) 38%, var(--border))}.admin-tree-title,.admin-tree-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.admin-tree-title{font-size:13px;font-weight:700}.admin-tree-meta{color:var(--text-muted);font-size:11px}.admin-tree-children{gap:4px;display:grid}.account_table .admin-tree-button{min-height:36px;padding:6px 8px}.account_table .admin-tree-meta{display:none}.admin-detail-pane .admin-record-card{height:fit-content}.tracking-layout{gap:12px;min-height:0;display:grid}.tracking-layout.two-column{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.tracking-layout.three-column{grid-template-columns:repeat(3,minmax(0,1fr))}.planning-workspace{grid-template-columns:minmax(260px,.34fr) minmax(0,1fr);gap:12px;min-height:0;display:grid}.tracking-section{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;grid-template-rows:auto minmax(0,1fr);min-height:240px;display:grid}.tracking-section.tree-section,.tracking-section.detail-section,.tracking-section.tabbed-section{min-height:0}.tracking-section.detail-section{grid-template-rows:auto minmax(0,1fr)}.tracking-section.nested-section{min-height:0}.section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:46px;padding:0 12px;display:flex}.section-heading h2{margin:0;font-size:15px}.section-heading span{color:var(--text-soft);font-size:12px}.tracking-list{grid-auto-rows:min-content;gap:10px;min-height:0;padding:12px;display:grid;overflow:auto}.tracking-detail-scroll,.tree-scroll,.tab-panel{min-height:0;overflow:auto}.tab-panel{display:grid}.tracking-detail-scroll{grid-auto-rows:min-content;gap:12px;padding:12px;display:grid}.planning-detail-scroll{grid-template-rows:auto minmax(0,1fr);overflow:hidden}.detail-columns{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:12px;min-height:0;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:0;display:grid}.detail-summary{background:var(--surface-soft)}.planning-tabbed-section{min-height:0}.planning-tab-panel{min-height:0;padding:12px;overflow:auto}.planning-tab-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.planning-tab-grid>.empty-state{grid-column:1/-1}.tree-scroll{padding:8px}.tree-node{gap:4px;display:grid}.tree-children{border-left:1px solid var(--border);gap:4px;margin-left:12px;padding-left:10px;display:grid}.tree-node-button{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center start;gap:4px;width:100%;min-height:42px;padding:7px 9px;display:grid}.tree-node-button:hover,.tree-node-button.active{background:var(--surface-soft);border-color:var(--border)}.tree-node-button.active{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.tree-node-button span{font-size:14px;font-weight:700}.tree-node-button small{color:var(--text-soft);text-transform:uppercase;font-size:11px}.tracking-tabs{border-bottom:1px solid var(--border);align-items:center;gap:6px;min-height:50px;padding:7px 8px;display:flex;overflow-x:auto}.tracking-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex:none;align-items:center;gap:8px;height:34px;padding:0 10px;display:inline-flex}.tracking-tab:hover,.tracking-tab.active{background:var(--surface-soft);border-color:var(--border);color:var(--text)}.tracking-tab.active{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.tracking-tab span{font-size:13px;font-weight:700}.tracking-tab strong{color:var(--text-soft);font-size:12px}.empty-state{border:1px dashed var(--border);color:var(--text-muted);border-radius:8px;align-items:center;min-height:74px;padding:12px;font-size:13px;display:flex}.trace-link-line{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.trace-link-line span,.trace-link-line strong{overflow-wrap:anywhere;font-size:12px}.trace-link-line strong{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 50%, var(--border));color:var(--accent);text-transform:uppercase;border-radius:999px;padding:4px 7px}.tracking-item{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:10px;padding:12px;display:grid}.tracking-item.compact{gap:8px}.tracking-item-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.tracking-item h3{margin:0 0 5px;font-size:15px;line-height:1.25}.tracking-item p{color:var(--text-muted);margin:0;font-size:13px;line-height:1.45}.badge-row,.tracking-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.status-badge{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 50%, var(--border));color:var(--accent);text-transform:uppercase;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:700;line-height:1}.status-badge.muted{background:var(--surface-soft);border-color:var(--border);color:var(--text-soft)}.tracking-meta{color:var(--text-soft);font-size:12px}.tracking-meta span{overflow-wrap:anywhere}.evidence-list{border-top:1px solid var(--border);gap:7px;padding-top:10px;display:grid}.evidence-row{grid-template-columns:88px minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:8px;display:grid}.evidence-row span{color:var(--text-soft);text-transform:uppercase;font-size:11px}.evidence-row strong,.evidence-row a,.evidence-row code{color:var(--text);overflow-wrap:anywhere;min-width:0;font-size:12px}.evidence-row a{color:var(--accent);text-decoration:none}.evidence-row code{background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;padding:5px 6px}.path-chip{background:var(--surface-soft);border:1px solid var(--border);color:var(--text);overflow-wrap:anywhere;border-radius:6px;padding:6px 7px;font-size:12px}.compact-list{gap:8px}.chat-browser{grid-template-columns:minmax(260px,.34fr) minmax(320px,.42fr) minmax(0,1fr);gap:12px;min-height:0;padding:12px;display:grid}.chat-summary-section,.chat-request-section,.chat-message-section{min-height:0}.chat-request-list,.chat-message-scroll{min-height:0;padding:12px;overflow:auto}.chat-request-list{grid-auto-rows:min-content;gap:8px;display:grid}.chat-request-button{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;border-radius:8px;gap:7px;width:100%;min-height:82px;padding:10px;display:grid}.chat-request-button:hover,.chat-request-button.active{background:var(--surface-soft);border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.chat-request-button span{font-size:13px;font-weight:700;line-height:1.35}.chat-request-button small{color:var(--text-soft);font-size:11px}.chat-message-scroll{grid-auto-rows:min-content;gap:10px;display:grid}.chat-message-row{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:9px;padding:10px;display:grid}.chat-message-row.user{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.chat-message-row.tool{background:var(--surface-soft)}.chat-message-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.chat-message-header>span{color:var(--text-soft);font-size:12px}.chat-message-row pre{color:var(--text);white-space:pre-wrap;word-break:break-word;max-height:360px;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.45;overflow:auto}.left-drawer{background:var(--surface-strong);border-right:1px solid var(--border);box-shadow:var(--shadow);max-width:calc(100vw - 32px);height:100%;width:var(--left-drawer-width);z-index:30;grid-template-rows:auto minmax(0,1fr);transition:transform .16s;display:grid;position:absolute;top:0;left:0;transform:translate(-105%)}.left-drawer.open{transform:translate(0)}.drawer-header,.context-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:54px;padding:0 12px;display:flex}.drawer-title,.context-header span{font-weight:700}.drawer-backdrop,.context-backdrop{z-index:20;background:#00000057;border:0;position:absolute;inset:0}.nav-scroll{padding:8px}.nav-message{color:var(--text-muted);padding:10px;font-size:14px}.nav-message.error{color:var(--danger)}.menu-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.menu-link{color:var(--text);min-height:36px;padding:6px 8px 6px calc(8px + (var(--depth) * 18px));border-radius:6px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;text-decoration:none;display:grid}.menu-link:hover{background:var(--surface-soft)}.menu-link.muted{color:var(--text-muted)}.menu-status{color:var(--text-soft);font-size:11px}.right-panel{background:var(--surface-strong);border-left:1px solid var(--border);box-shadow:var(--shadow);max-width:calc(100vw - 32px);height:100%;width:var(--right-panel-width);z-index:30;grid-template-rows:auto minmax(0,1fr);transition:transform .16s;display:grid;position:absolute;top:0;right:0;transform:translate(105%)}.right-panel.open{transform:translate(0)}.context-scroll{grid-auto-rows:min-content;gap:10px;padding:12px;display:grid}.context-row{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;gap:4px;padding:10px;display:grid}.context-row span{color:var(--text-soft);font-size:12px}.context-row strong{overflow-wrap:anywhere;font-size:14px}.landing-view{background:linear-gradient(90deg, #04090fd1, #04090f8f 38%, #04090f1f), var(--landing-background) center / cover no-repeat;align-items:center;height:100%;padding:34px;display:grid;overflow:hidden}.landing-copy{color:#fff;gap:14px;max-width:610px;display:grid}.landing-copy img{object-fit:contain;background:#ffffffeb;border-radius:8px;width:58px;height:58px;padding:5px}.landing-copy h1{max-width:13ch;margin:0;font-size:42px;line-height:1.05}.landing-copy p{color:#ffffffdb;max-width:54ch;margin:0;font-size:17px;line-height:1.45}.landing-action{color:#062621;justify-self:start;text-decoration:none}.login-view{place-items:start center;height:100%;padding:42px 18px;display:grid;overflow:auto}.login-panel{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;gap:18px;width:100%;max-width:420px;padding:18px;display:grid}.login-panel h1{margin:4px 0 0;font-size:28px;line-height:1.1}.login-form{gap:12px;display:grid}.login-form label{color:var(--text-muted);gap:6px;font-size:13px;display:grid}.login-form input{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;height:38px;padding:0 10px}.primary-action,.secondary-action{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;height:40px;padding:0 12px;display:inline-flex}.primary-action{background:var(--accent);border:1px solid var(--accent);color:var(--surface-strong)}.secondary-action{background:var(--surface-soft);border:1px solid var(--border);color:var(--text)}.primary-action:disabled,.secondary-action:disabled,.login-form input:disabled{cursor:not-allowed;opacity:.65}.form-error{color:var(--danger);margin:0;font-size:13px}@media (width>=1800px){.shell-body{grid-template-columns:minmax(0, 1fr) var(--right-panel-width)}.right-panel{box-shadow:none;grid-column:2;position:static;transform:none}.right-panel .context-header .icon-button,.context-toggle,.context-backdrop{display:none}}@media (width<=900px){.topbar{grid-template-columns:44px auto minmax(0,1fr) auto}.status-pill:nth-child(2){display:none}.user-chip{max-width:140px}.tracking-layout.two-column,.tracking-layout.three-column,.admin-page-summary,.admin-section-grid,.admin-tree-detail,.admin-record-grid,.admin-field-grid,.admin-section-summary,.planning-workspace,.detail-columns,.detail-grid,.planning-tab-grid,.trace-link-line,.tracking-item-header,.evidence-row{grid-template-columns:minmax(0,1fr)}.landing-view{align-items:end;padding:18px}.landing-copy h1{max-width:14ch;font-size:30px}}
