:root{color:var(--color-text);background:var(--color-bg);--color-bg:#f6f7f9;--color-surface:#fff;--color-border:#d8dee6;--color-text:#1f2933;--color-muted:#667085;--color-primary:#0b2a3d;--color-primary-hover:#123a52;--color-accent:#2563eb;--color-danger:#b42318;--color-success:#027a48;--radius-card:12px;--shadow-card:0 1px 2px #1018280f,0 1px 3px #10182814;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--color-bg);margin:0}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}.app-shell{min-height:100vh}.app-header{background:var(--color-primary);color:#fff;justify-content:space-between;align-items:center;gap:1.25rem;padding:1rem 2rem;display:flex;box-shadow:0 1px 3px #10182829}.app-header a{color:#e6f0f7}.app-brand,.app-nav,.user-menu,.current-user,.actions,.client-context-meta,.page-actions,.inline-link{align-items:center;gap:.65rem;display:flex}.app-brand strong{font-size:1.05rem;display:block}.app-brand span{color:#b9c8d3;font-size:.84rem;display:block}.app-nav{flex:1}.app-nav a{border-radius:8px;align-items:center;gap:.4rem;padding:.45rem .65rem;display:flex}.app-nav a:hover{background:#ffffff1a;text-decoration:none}.container{max-width:1220px;margin:0 auto;padding:2rem}.app-main{flex-direction:column;gap:1.25rem;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.25rem;display:flex}.page-header h1{letter-spacing:-.02em;margin:0;font-size:2rem}.page-header p,.muted{color:var(--color-muted)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);margin:0 0 .35rem;font-size:.75rem;font-weight:700}.card,.content-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);margin-bottom:1rem;padding:1.2rem}.card h2,.card h3{margin-top:0}.card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.grid,.dashboard-grid,.module-grid{gap:1rem;display:grid}.grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.module-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.module-icon{width:2.5rem;height:2.5rem;color:var(--color-accent);background:#eef4ff;border-radius:10px;justify-content:center;align-items:center;margin-bottom:.8rem;display:flex}.is-future{opacity:.82}.section-card-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.summary-list,.meta-grid{gap:.75rem;margin:1rem 0;display:grid}.summary-list div,.meta-grid div{gap:.15rem;display:grid}.summary-list dt,.meta-grid dt{text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-size:.78rem;font-weight:700}.summary-list dd,.meta-grid dd{margin:0}.meta-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.client-context-header{border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);background:#fff;padding:1rem 1.2rem}.client-context-main{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.client-context-main h2{margin:.1rem 0}.breadcrumbs{color:var(--color-muted);flex-wrap:wrap;gap:.45rem;margin-bottom:.75rem;font-size:.9rem;display:flex}.breadcrumb-separator{color:#98a2b3;margin-left:.45rem}.status-badge{color:#344054;background:#eef2f6;border:1px solid #0000;border-radius:999px;align-items:center;padding:.25rem .65rem;font-size:.82rem;font-weight:700;display:inline-flex}.status-active,.status-approved,.status-fixed,.status-manual{color:#027a48;background:#ecfdf3;border-color:#abefc6}.status-paused,.status-in_progress,.status-needs_review,.status-needs_update,.status-open,.status-system{color:#b54708;background:#fffaeb;border-color:#fedf89}.status-archived,.status-disabled,.status-deferred,.status-not_started{color:#475467;background:#f2f4f7;border-color:#d0d5dd}.button,button{cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:.45rem;padding:.62rem .9rem;font-weight:700;line-height:1.1;text-decoration:none;display:inline-flex}.button:hover,button:hover{text-decoration:none}.button-primary,button{background:var(--color-primary);color:#fff}.button-primary:hover,button:hover{background:var(--color-primary-hover)}.button-secondary,.secondary{color:#344054;background:#eef2f6}.button-ghost{color:var(--color-primary);border:1px solid var(--color-border);background:#fff}.button-danger,.danger{color:var(--color-danger);background:#fee4e2}button[disabled],.danger[disabled]{opacity:.55;cursor:not-allowed}label{margin:.85rem 0 .35rem;font-weight:700;display:block}input,select,textarea{border:1px solid var(--color-border);width:100%;color:var(--color-text);background:#fff;border-radius:9px;padding:.7rem .8rem}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #2563eb38}textarea{resize:vertical;min-height:9rem}.wide-field{grid-column:1/-1}.errors,.success{border-radius:10px;margin:.8rem 0;padding:1rem}.errors{color:var(--color-danger);background:#fef3f2;border:1px solid #fecdca}.success{color:var(--color-success);background:#ecfdf3;border:1px solid #abefc6}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.94rem}th,td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:.85rem}th{text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);background:#f8fafc;font-size:.78rem}.empty-state{text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-card);background:#fbfcfd;padding:2rem}.section-list{align-self:start;position:sticky;top:1rem}.section-list a{color:var(--color-primary);align-items:center;gap:.4rem;padding:.4rem 0;display:flex}.section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.export-preview{border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff;max-height:32rem;margin-top:1rem;padding:1rem;overflow:auto}.export-preview table{font-size:.9rem}.login-page{background:linear-gradient(135deg,#0b2a3d 0%,#123a52 45%,#f6f7f9 45%);place-items:center;min-height:100vh;padding:2rem;display:grid}.login-card{border:1px solid var(--color-border);background:#fff;border-radius:18px;width:min(440px,100%);padding:2rem;box-shadow:0 20px 40px #1018282e}.login-mark{width:3rem;height:3rem;color:var(--color-accent);background:#eef4ff;border-radius:14px;place-items:center;display:grid}.login-card h1{margin:.9rem 0 .35rem}.current-user span{color:#b9c8d3}.link{color:var(--color-accent);background:0 0;border:0;padding:0;text-decoration:underline}@media (width<=760px){.app-header,.page-header,.client-context-main{flex-direction:column;align-items:flex-start}.container{padding:1rem}.actions{flex-wrap:wrap}}.code-preview{color:#e6edf3;white-space:pre-wrap;background:#0b1220;border-radius:12px;max-height:32rem;padding:1rem;font-size:.88rem;line-height:1.5;overflow:auto}.error-message{color:var(--color-danger);background:#fef3f2;border:1px solid #fecdca;border-radius:10px;padding:1rem}.status-ready{color:#027a48;background:#ecfdf3;border-color:#abefc6}.status-ready_with_warnings{color:#b54708;background:#fffaeb;border-color:#fedf89}.status-not_ready{color:#b42318;background:#fef3f2;border-color:#fecdca}
