:root{--ink: #1c1a16;--ink-soft: #34312c;--paper: #f5f1ea;--canvas: #ece8e1;--white: #fff;--blue: #2740a4;--blue-hover: #1f3489;--line: rgba(28, 26, 22, .12);--muted: rgba(28, 26, 22, .56);--danger: #a33427;--success: #2d6b53;--radius: 3px;--shadow: 0 18px 48px rgba(28, 26, 22, .12);font-family:Instrument Sans,Helvetica Neue,Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--paper);font-size:15px}button,input,textarea,select{font:inherit}.project-access-list{display:grid;gap:8px;max-height:280px;overflow:auto;margin:12px 0}.table-actions{display:flex;gap:8px;justify-content:flex-end}.link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.status-pill,.field-chips span{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:#2740a40d;color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.04em}.detail-card{padding:0;overflow:hidden}.tabs{display:flex;gap:2px;padding:0 24px;border-bottom:1px solid var(--line)}.tabs button{border:0;border-bottom:2px solid transparent;padding:18px 3px 15px;margin-right:24px;color:var(--muted);background:transparent;font-size:13px;font-weight:700}.tabs button.active{color:var(--ink);border-bottom-color:var(--blue)}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:12px 24px 28px}.detail-grid>div{min-height:94px;padding:20px 18px 18px 0;border-bottom:1px solid var(--line)}.detail-grid dt{margin-bottom:8px;color:var(--muted);font-size:12px}.detail-grid dd{margin:0;font-size:15px;line-height:1.5}.back-link{display:inline-block;margin-bottom:20px;color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-bottom:1px solid var(--line)}.section-toolbar p{margin:0}.history-list{margin:0;padding:8px 24px 24px 54px;list-style:none}.history-event{position:relative;padding:20px 0 22px 20px;border-left:1px solid var(--line)}.history-marker{position:absolute;top:25px;left:-5px;width:9px;height:9px;border:2px solid var(--white);border-radius:50%;background:var(--blue);box-shadow:0 0 0 1px var(--blue)}.history-event-head{display:flex;justify-content:space-between;gap:20px}.history-event-head time{color:var(--muted);font-size:12px;white-space:nowrap}.history-event p{margin:8px 0;color:var(--muted);font-size:13px}.field-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.history-changes{display:grid;gap:8px;margin-top:12px}.history-change{display:grid;grid-template-columns:minmax(130px,.35fr) minmax(0,1fr);align-items:start;gap:14px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#f5f1ea80}.history-change>strong{font-size:12px}.history-values{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}.history-value{overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:12px;line-height:1.45}.old-value{color:var(--muted);text-decoration:line-through}.new-value{color:var(--ink);font-weight:600}.history-arrow,.history-protected{color:var(--muted);font-size:12px}.list-filters{display:grid;grid-template-columns:minmax(260px,1fr) minmax(170px,220px) auto;gap:10px;align-items:end;margin-bottom:14px}.list-filters:has(select+select){grid-template-columns:minmax(260px,1fr) minmax(160px,210px) minmax(150px,190px) auto}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px;padding:12px 18px;border-top:1px solid var(--line);background:#f5f1ea6b}.pagination-summary,.pagination-actions span,.page-size span{color:var(--muted);font-size:12px}.page-size{display:flex;grid-template-columns:none;align-items:center;gap:9px;margin-left:auto}.page-size select{width:82px;min-height:38px;padding-top:8px;padding-bottom:8px}.pagination-actions{display:flex;align-items:center;gap:10px}@media(max-width:900px){.list-filters,.list-filters:has(select+select){grid-template-columns:1fr}.pagination-bar{align-items:stretch;flex-direction:column}.page-size{margin-left:0}.pagination-actions{justify-content:space-between}}.impersonation-banner{position:fixed;z-index:20;inset:0 0 auto 0;min-height:58px;padding:10px 24px;display:flex;align-items:center;justify-content:center;gap:18px;color:#fff;background:#8a3d16}.impersonation-banner[hidden]{display:none}.impersonation-banner+.topbar{transition:margin-top .2s ease}.impersonation-banner:not([hidden])+.topbar{margin-top:58px}button{cursor:pointer}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{display:block;margin-bottom:9px;color:#1c1a1675;font-family:ui-monospace,SFMono-Regular,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.eyebrow.light{color:#f5f1ea66}.muted{color:var(--muted);line-height:1.55}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,1.15fr) minmax(440px,.85fr)}.login-brand{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:32px 38px;color:var(--paper);background:var(--ink)}.login-brand:after{content:"";position:absolute;right:-16%;bottom:-28%;width:70%;aspect-ratio:1;border:1px solid rgba(245,241,234,.12);border-radius:50%;box-shadow:0 0 0 70px #f5f1ea06,0 0 0 140px #f5f1ea05}.brand-mark{position:relative;z-index:1;font-size:14px;font-weight:700;letter-spacing:.18em}.brand-copy{position:relative;z-index:1;max-width:590px}.brand-copy h1{max-width:620px;margin:0 0 28px;font-size:clamp(48px,6.2vw,90px);font-weight:400;line-height:.95;letter-spacing:-.055em}.brand-copy p{max-width:400px;color:#f5f1ea8c;font-size:15px;line-height:1.6}.brand-footer{position:relative;z-index:1;font-family:ui-monospace,SFMono-Regular,monospace;font-size:11px;letter-spacing:.12em;color:#f5f1ea47}.login-panel{display:grid;place-items:center;padding:44px;background:var(--paper)}.login-form{width:min(390px,100%);display:grid;gap:21px}.login-form h2,.dialog h2{margin:0;font-size:30px;font-weight:500;letter-spacing:-.035em}.login-form p{margin:8px 0 0}label{display:grid;gap:8px;color:#1c1a169e;font-size:13px;font-weight:600;letter-spacing:.025em}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:var(--radius);outline:none;background:#ffffffb8;color:var(--ink);font-size:14px;padding:13px 14px;transition:border-color .15s,box-shadow .15s,background .15s}input:focus,textarea:focus,select:focus{border-color:var(--blue);background:var(--white);box-shadow:0 0 0 3px #2740a41a}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,rgba(28,26,22,.62) 50%),linear-gradient(135deg,rgba(28,26,22,.62) 50%,transparent 50%),linear-gradient(to right,var(--line),var(--line));background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%,calc(100% - 38px) 50%;background-size:5px 5px,5px 5px,1px 22px;background-repeat:no-repeat}select:hover{border-color:#1c1a1647;background-color:var(--white)}select:disabled{cursor:not-allowed;opacity:.58}textarea{resize:vertical}.form-error{margin:0!important;padding:11px 12px;color:var(--danger);background:#a3342712;border-left:2px solid var(--danger);font-size:13px}.security-note{text-align:center;color:#1c1a1661!important;font-size:12px}.button{min-height:39px;border:1px solid transparent;border-radius:var(--radius);padding:10px 16px;font-size:13px;font-weight:600;letter-spacing:.025em;transition:background .15s,border-color .15s,transform .1s}.button:active{transform:translateY(1px)}.button:disabled{cursor:wait;opacity:.58}.button.primary{color:#fff;background:var(--blue)}.button.primary:hover{background:var(--blue-hover)}.button.secondary{border-color:var(--line);background:#fff;color:var(--ink)}.button.secondary:hover{border-color:#1c1a1652}.button.ghost-dark{color:#f5f1eab3;border-color:#f5f1ea29;background:transparent}.button.wide{width:100%}.app-shell{min-height:100vh;display:grid;grid-template-columns:210px minmax(0,1fr);grid-template-rows:65px minmax(0,1fr);background:var(--canvas)}.topbar{grid-column:1 / -1;display:grid;grid-template-columns:210px minmax(0,1fr) auto;align-items:center;min-height:65px;color:var(--paper);background:var(--ink);border-bottom:1px solid rgba(245,241,234,.08)}.topbar-brand{height:100%;display:flex;align-items:center;padding:0 24px;border-right:1px solid rgba(245,241,234,.1);font-size:14px;font-weight:700;letter-spacing:.16em}.topbar-brand span{margin-left:7px;color:#f5f1ea59;font-weight:400}.topbar-context{padding:0 24px}.topbar-context .eyebrow{margin-bottom:3px;font-size:10px}.topbar-context strong{font-size:14px;font-weight:500}.topbar-actions{display:flex;align-items:center;gap:10px;padding-right:18px}.user-chip{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--blue);font-size:12px;font-weight:700}.user-copy{display:grid;gap:2px;min-width:120px}.user-copy strong{font-size:12px}.user-copy span{color:#f5f1ea61;font-family:ui-monospace,monospace;font-size:10px}.sidebar{display:flex;flex-direction:column;justify-content:space-between;padding:22px 14px 18px;background:#fff;border-right:1px solid var(--line)}.sidebar nav{display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;border:0;border-radius:var(--radius);padding:12px 11px;color:#1c1a1694;background:transparent;text-align:left;font-size:13px;text-decoration:none}.nav-item.router-link-active{color:#fff;background:var(--blue)}.nav-item.router-link-active span{color:#ffffff8c}.nav-item[aria-disabled=true]{pointer-events:none;opacity:.45}.nav-item span{font-family:ui-monospace,monospace;color:#1c1a164d;font-size:10px}.nav-item:hover{background:#1c1a160a}.nav-item.active{color:#fff;background:var(--blue)}.nav-item.active span{color:#ffffff8c}.sidebar-status{display:flex;align-items:center;gap:8px;padding:10px;color:#1c1a166b;font-family:ui-monospace,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.sidebar-status i{width:6px;height:6px;border-radius:50%;background:#3d946e;box-shadow:0 0 0 3px #3d946e21}.workspace{min-width:0;overflow:auto;padding:34px 38px 50px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}.page-heading h1{margin:0;font-size:36px;font-weight:450;line-height:1;letter-spacing:-.045em}.page-heading p{margin:10px 0 0}.heading-actions{display:flex;align-items:end;gap:10px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:18px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--line)}.metrics article{min-height:125px;display:grid;align-content:center;padding:19px 22px;background:#ffffffbf}.metrics span{color:var(--muted);font-size:12px}.metrics strong{margin:6px 0 2px;font-family:ui-monospace,monospace;font-size:27px;font-weight:400}.metrics small{color:#1c1a165c;font-size:11px}.content-card{overflow:hidden;background:#ffffffde;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 6px 26px #1c1a1609}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 16px;border-bottom:1px solid var(--line)}.search-field{width:min(290px,100%)}.search-field input{padding-block:9px;background:var(--paper)}.filter-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.filter-pills button{border:1px solid var(--line);border-radius:20px;padding:6px 10px;background:#fff;color:var(--muted);font-size:12px}.filter-pills button.active{color:#fff;border-color:var(--ink);background:var(--ink)}.config-list{display:grid}.config-row{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(160px,.8fr) 90px 180px;align-items:center;gap:18px;min-height:94px;padding:17px 20px;border-bottom:1px solid rgba(28,26,22,.08)}.row-actions{display:flex;justify-content:flex-end;gap:7px}.config-row:last-child{border-bottom:0}.config-row:hover{background:#f5f1ea8a}.config-name strong{display:block;margin-bottom:5px;font-size:14px;font-weight:600}.config-name p{max-width:620px;margin:0;color:var(--muted);font-size:12px;line-height:1.45}.config-key{margin-top:7px;color:#1c1a164d;font-family:ui-monospace,monospace;font-size:10px}.config-value{display:grid;gap:5px}.config-value span{color:#1c1a1666;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.config-value strong{overflow:hidden;text-overflow:ellipsis;font-family:ui-monospace,monospace;font-size:13px;white-space:nowrap}.badge{display:inline-flex;width:fit-content;padding:5px 8px;border-radius:20px;background:#1c1a160f;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.badge.override{color:var(--blue);background:#2740a417}.empty-state{padding:60px 20px;color:var(--muted);text-align:center}.loading-row{height:94px;background:linear-gradient(90deg,transparent,rgba(28,26,22,.035),transparent);background-size:200% 100%;animation:loading 1.1s infinite;border-bottom:1px solid var(--line)}@keyframes loading{to{background-position:-200% 0}}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:14px 17px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}th{color:#1c1a1661;background:var(--paper);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}td{font-size:13px}td code{color:var(--blue);font-family:ui-monospace,monospace}.dialog{width:min(530px,calc(100% - 28px));border:1px solid var(--line);border-radius:var(--radius);padding:0;color:var(--ink);background:var(--paper);box-shadow:var(--shadow)}.dialog::backdrop{background:#1c1a168c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog form{display:grid;gap:19px;padding:25px}.dialog-heading{display:flex;align-items:start;justify-content:space-between;gap:20px}.icon-button{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font-size:19px}.scope-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--radius);padding:3px;background:#fff}.scope-switch button{border:0;border-radius:2px;padding:9px;color:var(--muted);background:transparent;font-size:12px}.scope-switch button.active{color:#fff;background:var(--ink)}.toggle-field{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border:1px solid var(--line);background:#fff}.toggle-field input{width:18px;height:18px;accent-color:var(--blue)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:5px}.toast{position:fixed;right:24px;bottom:24px;z-index:20;max-width:360px;border-radius:var(--radius);padding:13px 16px;color:#fff;background:var(--ink);box-shadow:var(--shadow);font-size:13px}.toast.error{background:var(--danger)}.boot-screen{min-height:100vh;display:grid;place-content:center;gap:10px;color:var(--muted);text-align:center}@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-brand{min-height:300px}.brand-copy h1{font-size:50px}.app-shell{grid-template-columns:68px minmax(0,1fr)}.topbar{grid-template-columns:68px minmax(0,1fr) auto}.topbar-brand{padding:0 15px;font-size:10px}.topbar-brand span,.nav-item:not(.active):after,.nav-item{font-size:0}.nav-item{justify-content:center}.nav-item span{font-size:9px}.user-copy{display:none}.config-row{grid-template-columns:minmax(200px,1fr) 130px 180px}.config-row .badge{display:none}}@media(max-width:650px){.login-panel{padding:32px 22px}.login-brand{padding:25px}.app-shell{display:block}.topbar{position:sticky;top:0;z-index:3;display:flex}.topbar-brand{width:70px}.topbar-context{flex:1}.sidebar{position:fixed;z-index:4;right:16px;bottom:16px;left:16px;display:block;padding:5px;border:1px solid var(--line);border-radius:5px;box-shadow:var(--shadow)}.sidebar nav{grid-template-columns:1fr 1fr}.sidebar-status{display:none}.nav-item{font-size:10px}.workspace{padding:25px 16px 95px}.page-heading{align-items:start;flex-direction:column}.heading-actions{width:100%}.metrics{grid-template-columns:1fr}.metrics article{min-height:92px}.toolbar{align-items:stretch;flex-direction:column}.filter-pills{justify-content:flex-start}.config-row{grid-template-columns:1fr auto}.config-value{grid-column:1}.config-row>.row-actions{grid-column:2;grid-row:1 / 3;align-items:flex-end;flex-direction:column}.history-change,.history-values{grid-template-columns:1fr}.history-arrow{transform:rotate(90deg)}}.tab-count{margin-left:5px;border-radius:20px;padding:2px 6px;color:var(--blue);background:#2740a414;font-size:10px}.hierarchy-section,.plans-admin-section{padding-bottom:24px}.section-toolbar h2,.subsection-title h2{margin:0 0 5px;font-size:17px}.admin-floor-list{display:grid;padding:0 24px 24px}.admin-floor-row{min-height:78px;display:grid;grid-template-columns:48px minmax(180px,1fr) minmax(130px,.5fr) auto;align-items:center;gap:16px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.admin-floor-row:hover{background:#2740a409}.admin-floor-row .floor-order{color:#1c1a1652;font-family:monospace}.admin-floor-row>div{display:grid;gap:4px}.admin-floor-row>div span,.admin-floor-row>span:nth-child(3){color:var(--muted);font-size:12px}.admin-floor-row b{color:var(--blue);font-size:12px}.status-pill.danger{color:var(--danger);background:#a3342712}.plan-summary{display:flex;align-items:center;justify-content:space-between;margin:24px;padding:18px;border-left:3px solid var(--blue);background:#2740a40b}.plan-summary.error{border-left-color:var(--danger);background:#a334270e}.plan-summary>div{display:grid;gap:5px}.plan-summary strong{font-size:18px}.plan-summary p{margin:2px 0 0;color:var(--danger);font-size:13px}.plan-summary>span{color:var(--muted);font-size:11px}.admin-file-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 24px 26px}.admin-file-card{min-height:170px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);padding:20px;background:#f5f1ea61}.admin-file-card>span{color:var(--blue);font-family:monospace;font-size:10px;letter-spacing:.08em}.admin-file-card h2{margin:18px 0 5px;font-size:17px}.admin-file-card p{flex:1;margin:0;color:var(--muted);font-size:12px}.admin-file-card button{margin-top:15px}.subsection-title{padding:22px 24px 8px;border-top:1px solid var(--line)}.subsection-title p{margin:0}@media(max-width:760px){.admin-floor-row{grid-template-columns:36px 1fr auto}.admin-floor-row>span:nth-child(3){display:none}.admin-file-grid{grid-template-columns:1fr}.plan-summary{align-items:flex-start;flex-direction:column;gap:12px}}
