@import "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,400;0,14..32,500;0,14..32,600;1,14..32,400&family=Space+Grotesk:wght@500;600;700&display=swap";.app-shell{flex-direction:column;width:100%;min-height:100vh;display:flex;overflow-x:clip}.site-nav{z-index:40;background:#fff;border-bottom:1px solid #0000000f;position:sticky;top:0}.site-nav__inner{flex-wrap:nowrap;align-items:center;column-gap:1rem;width:min(1280px,100%);min-height:60px;margin:0 auto;padding:0 clamp(1rem,3vw,2rem);display:flex}.site-brand{flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.site-brand__logo{flex-shrink:0;width:auto;height:clamp(30px,7vw,44px);display:block}.site-brand__name{letter-spacing:-.03em;color:#161f3a;white-space:nowrap;margin-left:.35rem;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,Arial,sans-serif;font-size:clamp(1.2rem,4vw,1.6rem);font-weight:800;line-height:1}.site-brand__real{color:#2563eb}.topnav{flex-shrink:0;align-items:center;gap:.125rem;display:flex}.topnav a{color:#475569;border-radius:.5rem;padding:.35rem .7rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .15s,background .15s}.topnav a:hover{color:#161f3a;background:#0000000a}.topnav a.router-link-active{color:#2563eb;background:#2563eb1a}.site-nav__end{flex-shrink:0;align-items:center;gap:.75rem;margin-left:auto;display:flex}.nav-btn{white-space:nowrap;padding:.4rem .9rem;font-size:.85rem;text-decoration:none}.session-chip{color:#475569;align-items:center;gap:.4rem;max-width:260px;font-size:.8125rem;display:flex;overflow:hidden}.session-role{color:#2563eb;letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:700}.session-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.session-sep{color:#cbd5e1;flex-shrink:0}.error-banner{background:var(--error-soft);border-bottom:1px solid var(--error);color:var(--error);padding:.65rem 1.25rem;font-size:.875rem}.content{flex:1;align-content:start;gap:1rem;width:min(1280px,100%);margin:0 auto;padding:1.5rem 1.25rem 3rem;display:grid}@media (width>=768px){.error-banner{padding:.6rem 2rem}.content{padding:2rem 2rem 4rem}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f7fb;--surface:#fff;--surface-muted:#f1f5fc;--surface-strong:#fff;--text:#111827;--text-soft:#6b7280;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:#2563eb14;--accent-text:#fff;--error:#dc2626;--error-soft:#dc262614;--focus:#2563eb;--border:#00000014;--border-strong:#00000029;--shadow:0 1px 2px #0000000f, 0 4px 16px #0000000d;--shadow-lg:0 2px 8px #0000000f, 0 20px 60px #0000001a;--radius-panel:.875rem;--radius-control:.5rem;--radius-pill:999px}:root[data-theme=warm]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#faf6f0;--surface:#fffef9;--surface-muted:#f7f2e6;--surface-strong:#fff;--text:#1c1209;--text-soft:#786550;--accent:#c2410c;--accent-hover:#9a3412;--accent-soft:#c2410c14;--accent-text:#fff;--error:#b91c1c;--error-soft:#b91c1c14;--focus:#c2410c;--border:#1c120917;--border-strong:#1c12092e;--shadow:0 1px 2px #0000000d, 0 4px 16px #0000000a;--shadow-lg:0 2px 8px #0000000d, 0 20px 60px #00000014}:root[data-theme=forest]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f0f9f4;--surface:#f9fefb;--surface-muted:#e8f7ee;--surface-strong:#fff;--text:#0f2d1c;--text-soft:#4d7060;--accent:#047857;--accent-hover:#065f46;--accent-soft:#04785714;--accent-text:#fff;--error:#b91c1c;--error-soft:#b91c1c14;--focus:#047857;--border:#0f2d1c17;--border-strong:#0f2d1c2e;--shadow:0 1px 2px #0000000d, 0 4px 16px #0000000a;--shadow-lg:0 2px 8px #0000000d, 0 20px 60px #00000014}:root[data-theme=rose]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fdf4f6;--surface:#fff9fb;--surface-muted:#fce8ef;--surface-strong:#fff;--text:#1c0a10;--text-soft:#8b5a6d;--accent:#db2777;--accent-hover:#be185d;--accent-soft:#db277714;--accent-text:#fff;--error:#b91c1c;--error-soft:#b91c1c14;--focus:#db2777;--border:#1c0a1017;--border-strong:#1c0a102e;--shadow:0 1px 2px #0000000d, 0 4px 16px #0000000a;--shadow-lg:0 2px 8px #0000000d, 0 20px 60px #00000014}:root[data-theme=midnight]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070d1a;--surface:#0d1728;--surface-muted:#131f38;--surface-strong:#111c33;--text:#e2e8f8;--text-soft:#7b93b8;--accent:#60a5fa;--accent-hover:#3b82f6;--accent-soft:#60a5fa1f;--accent-text:#070d1a;--error:#f87171;--error-soft:#f871711f;--focus:#60a5fa;--border:#e2e8f814;--border-strong:#e2e8f829;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--shadow-lg:0 2px 8px #0000004d, 0 20px 60px #00000073}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c0f14;--surface:#141923;--surface-muted:#1c2232;--surface-strong:#18202e;--text:#f0ede8;--text-soft:#9aa3b2;--accent:#a78bfa;--accent-hover:#8b5cf6;--accent-soft:#a78bfa1f;--accent-text:#0c0f14;--error:#f87171;--error-soft:#f871711f;--focus:#a78bfa;--border:#f0ede812;--border-strong:#f0ede826;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--shadow-lg:0 2px 8px #0000004d, 0 20px 60px #00000073}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;width:100%;overflow-x:hidden}body{background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;margin:0;font-family:Inter,Segoe UI,system-ui,sans-serif;line-height:1.6;position:relative;overflow-x:hidden}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}h1,h2,h3,h4{font-family:Space Grotesk,Segoe UI,system-ui,sans-serif;line-height:1.2}button{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:var(--radius-control);cursor:pointer;box-shadow:var(--shadow);white-space:nowrap;justify-content:center;align-items:center;gap:.375rem;padding:.5rem .9rem;font-family:inherit;font-size:.875rem;font-weight:500;line-height:1;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}button:hover:not(:disabled){border-color:var(--accent);background:var(--surface-muted)}button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.nav-btn{white-space:nowrap;cursor:pointer;box-shadow:none;border:1px solid #0000;border-radius:.6rem;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem 1.1rem;font-family:inherit;font-size:.9rem;font-weight:700;line-height:1;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.nav-btn--primary,.nav-btn--primary:hover:not(:disabled){color:#fff}.nav-btn--primary{background:#2563eb;border-color:#2563eb}.nav-btn--primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.nav-btn--ghost{color:#161f3a;background:#fff;border-color:#cbd5e1}.nav-btn--ghost:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}@media (width<=480px){.nav-btn{padding:.45rem .85rem;font-size:.85rem}}input,textarea,select{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface);width:100%;color:var(--text);padding:.575rem .8rem;font-family:inherit;font-size:.875rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}textarea{resize:vertical;min-height:5rem}input[type=datetime-local]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}.field-shell{gap:.3rem;display:grid}.field-shell__label{color:var(--text-soft);font-size:.8125rem;font-weight:500}.stack{gap:.75rem;display:grid}.helper{color:var(--text-soft);margin:0;font-size:.875rem;line-height:1.65}.state-note{border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 var(--radius-control) var(--radius-control) 0;margin:0;padding:.6rem .85rem;font-size:.875rem;line-height:1.55}.error-note{border-left-color:var(--error);background:var(--error-soft)}.list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.list li{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-muted);padding:.65rem .85rem;font-size:.875rem}.portal-grid,.admin-grid,.marketing-grid{gap:1rem;display:grid}.form-grid{gap:.8rem;display:grid}.form-actions,.button-row,.actions,.modal-footer{flex-wrap:wrap;gap:.5rem;display:flex}.status-groups{gap:1.25rem;display:grid}.status-group{gap:.75rem;display:grid}.status-group__header{align-items:center;gap:.65rem;display:flex}.status-group__count{color:var(--text-soft);font-size:.8125rem}.record-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.85rem;display:grid}.record-card{border-radius:var(--radius-panel);border:1px solid var(--border);background:var(--surface);min-height:15rem;box-shadow:var(--shadow);align-content:start;gap:.8rem;padding:1.1rem;display:grid}.record-card--tall{min-height:21rem}.record-card__top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.record-card__top>:first-child{flex:auto;min-width:0}.record-card__eyebrow{color:var(--text-soft);letter-spacing:.09rem;text-transform:uppercase;margin:0 0 .2rem;font-size:.7rem}.record-card__address{border-radius:var(--radius-control);background:var(--surface-muted);gap:.15rem;padding:.7rem .85rem;font-size:.875rem;display:grid}.record-card__address p,.record-card__meta{margin:0}.record-card__meta{color:var(--text-soft);flex-wrap:wrap;gap:.5rem;font-size:.8125rem;display:flex}.action-form{border-radius:var(--radius-control);background:var(--surface-muted);border:1px solid var(--border);gap:.75rem;padding:.85rem;display:grid}.audit-table-wrap{border-radius:var(--radius-control);border:1px solid var(--border);overflow-x:auto}.audit-table{border-collapse:collapse;width:100%;font-size:.85rem}.audit-table th{background:var(--surface-muted);text-align:left;color:var(--text-soft);text-transform:uppercase;letter-spacing:.06rem;border-bottom:1px solid var(--border);padding:.6rem .85rem;font-size:.72rem;font-weight:600}.audit-table td{border-bottom:1px solid var(--border);color:var(--text);padding:.6rem .85rem}.audit-table tbody tr:last-child td{border-bottom:none}.audit-table tbody tr:hover td{background:var(--surface-muted)}
