:root{--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:72px;--space-3xl:96px;color:#102a43;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,a{font:inherit}.skip-link{z-index:2;left:var(--space-md);top:var(--space-sm);color:#102a43;padding:var(--space-xs) var(--space-sm);background:#fff;border:2px solid #2f80ed;border-radius:6px;font-weight:700;position:fixed;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{color:#e8f1fb;padding:var(--space-lg) var(--space-md);gap:var(--space-xl);background:#102a43;flex-direction:column;display:flex}.brand{gap:var(--space-sm);align-items:center;font-size:14px;line-height:1.05;display:flex}.brand-mark{color:#fff;background:#2f80ed;border-radius:9px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.brand strong{font-size:17px}nav{gap:var(--space-xs);display:grid}nav a,.nav-placeholder{align-items:center;gap:var(--space-sm);padding:var(--space-sm);color:#c8d7e8;border-radius:8px;text-decoration:none;display:flex}nav a.active,nav a:hover{color:#fff;background:#1d4269}.nav-placeholder{color:#8ea7be}.phase-note{padding:var(--space-md);border:1px solid #315b83;border-radius:10px;margin-top:auto}.phase-note span,.eyebrow{color:#2f80ed;letter-spacing:.08em;font-size:12px;font-weight:750}.phase-note p{margin:var(--space-xs) 0 0;font-size:13px}main{min-width:0}header{height:72px;padding:0 var(--space-xl);justify-content:flex-end;gap:var(--space-md);background:#fff;border-bottom:1px solid #dce3eb;align-items:center;display:flex}.language{color:#26435f;align-items:center;gap:var(--space-xs);padding:var(--space-xs);cursor:pointer;background:#fff;border:1px solid #dce3eb;border-radius:8px;display:inline-flex}.content{max-width:1050px;padding:var(--space-2xl) clamp(var(--space-lg), 7vw, var(--space-3xl))}.content h1{margin:var(--space-sm) 0;color:#102a43;font-size:clamp(32px,4vw,48px);line-height:1.07}.content h1:focus{outline-offset:var(--space-2xs);outline:3px solid #2f80ed}.lead{color:#53697f;max-width:680px;font-size:18px;line-height:1.55}.cards{gap:var(--space-md);margin-top:var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cards article,.boundary{padding:var(--space-lg);background:#fff;border:1px solid #dce3eb;border-radius:13px;box-shadow:0 5px 18px #1837550d}.cards h2{margin:0 0 var(--space-sm);font-size:18px}.cards p,.boundary p{color:#53697f;margin:0;line-height:1.55}.public-page{min-height:70vh}.public-route{min-height:100vh;position:relative}.public-language{top:var(--space-lg);right:var(--space-lg);z-index:1;position:absolute}.tenant-cards{gap:var(--space-md);margin:var(--space-xl) 0 0;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.tenant-cards button{width:100%;padding:var(--space-lg);color:#102a43;text-align:left;cursor:pointer;background:#fff;border:1px solid #dce3eb;border-radius:13px;box-shadow:0 5px 18px #1837550d}.tenant-cards button:hover,.tenant-cards button:focus-visible{border-color:#2f80ed;outline:3px solid #2f80ed33}.tenant-cards strong,.tenant-cards span{display:block}.tenant-cards strong{font-size:18px}.tenant-cards span{margin-top:var(--space-xs);color:#53697f}.content>h2{margin:var(--space-xl) 0 0}.content>h2+.lead{margin:var(--space-xs) 0 0}.content>h2+.lead+.object-list-switch{margin-top:var(--space-md)}.object-list-switch{margin:var(--space-lg) 0 0;padding:var(--space-2xs);background:#eef3f8;border:1px solid #aebdca;border-radius:10px;display:inline-flex}.object-list-switch button{padding:var(--space-xs) var(--space-md);color:#26435f;cursor:pointer;background:0 0;border:0;border-radius:7px;font-weight:700}.object-list-switch button[aria-pressed=true]{color:#102a43;background:#fff;box-shadow:0 1px 4px #18375526}.object-create-toggle{margin:var(--space-md) 0 var(--space-lg);padding:var(--space-sm) var(--space-md);color:#fff;cursor:pointer;background:#2f80ed;border:0;border-radius:8px;font-weight:700;display:block}.object-form{align-items:end;gap:var(--space-sm);margin:var(--space-xs) 0 var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.object-form label{gap:var(--space-xs);font-weight:700;display:grid}.object-form input,.object-form select{min-width:0;padding:var(--space-sm);border:1px solid #aebdca;border-radius:8px}.object-form button{padding:var(--space-sm) var(--space-md);color:#fff;cursor:pointer;background:#2f80ed;border:0;border-radius:8px;font-weight:700}.object-form button:disabled{opacity:.65;cursor:wait}.object-form-actions{gap:var(--space-sm);display:flex}.object-form-actions button:last-child{background:#53697f}.object-list{gap:var(--space-sm);margin:var(--space-lg) 0 0;padding:0;list-style:none;display:grid}.object-list li{padding:var(--space-md) var(--space-lg);background:#fff;border:1px solid #dce3eb;border-radius:11px}.object-list strong,.object-list span{display:block}.object-list span{margin-top:var(--space-xs);color:#53697f;font-size:14px}.object-list button{margin-top:var(--space-md);padding:var(--space-xs) var(--space-sm);color:#26435f;cursor:pointer;background:#fff;border:1px solid #aebdca;border-radius:8px;font-weight:700}.object-list button:disabled{opacity:.65;cursor:wait}.sign-in-page{min-height:100vh;padding:var(--space-lg);color:#e8f1fb;background:#0b1b2b;place-items:center;display:grid}.sign-in-card{width:min(100%,420px);padding:var(--space-xl);background:#102a43;border-radius:18px;box-shadow:0 22px 60px #00000061}.sign-in-card h1,.sign-in-card h2{margin:0 0 var(--space-lg);color:#e8f1fb;text-align:center}.sign-in-brand{text-align:center}.sign-in-brand img{width:min(220px,72%);max-height:96px;margin:0 auto var(--space-md);display:block}.sign-in-brand h1{margin-bottom:var(--space-sm);font-size:28px}.sign-in-card label{color:#c8d7e8;font-weight:700}.sign-in-card input{width:100%;margin-top:var(--space-xs);padding:var(--space-sm);color:#e8f1fb;background:#0b1b2b;border:1px solid #6f879e;border-radius:8px}.sign-in-card input:focus-visible{outline-offset:var(--space-2xs);outline:3px solid #2f80ed}.sign-in-card button{width:100%;padding:var(--space-sm) var(--space-md);color:#fff;cursor:pointer;background:#2f80ed;border:0;border-radius:8px;font-weight:750}.sign-in-card button:disabled{opacity:.7;cursor:wait}.sign-in-card [role=alert]{color:#ffd4d4}.sign-in-card [role=status]{color:#e8f1fb}.auth-link{margin:var(--space-md) 0 0;text-align:center}.auth-link a{color:#9dccff}@media (width<=760px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}header{padding:0 var(--space-md)}.content{padding-top:var(--space-xl)}.cards,.tenant-cards{grid-template-columns:1fr}}
