:root{font-family:Aptos,Avenir Next,Segoe UI,sans-serif;color:#193246;--bg-surface: rgba(248, 251, 253, .94);--surface-strong: #ffffff;--surface-soft: #e5eef4;--surface-tint: #edf6fb;--ink: #193246;--ink-soft: #5f7789;--border: rgba(25, 50, 70, .1);--border-strong: rgba(25, 50, 70, .16);--steel-900: #20384c;--steel-800: #2e4a60;--steel-700: #45657a;--steel-500: #6d8ea6;--cyan-500: #28b8f2;--cyan-300: #7fd9ff;--blue-500: #5b8fd8;--blue-400: #81ade7;--accent-gradient: linear-gradient(135deg, #8edcff 0%, #5f9be5 50%, #294b67 100%);background:radial-gradient(circle at top left,rgba(127,217,255,.26),transparent 28%),radial-gradient(circle at top right,rgba(91,143,216,.18),transparent 24%),linear-gradient(180deg,#f7fbfd,#eef5f9 52%,#e6eef4)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}#root{min-height:100vh}.auth-shell,.config-screen,.loading-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(560px,100%);background:var(--bg-surface);border:1px solid var(--border);border-radius:28px;padding:32px;box-shadow:0 28px 72px #19324624;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand-lockup{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:18px;margin-bottom:24px}.brand-lockup.compact{grid-template-columns:1fr;justify-items:start;align-items:start;gap:14px;margin-bottom:0}.brand-logo{width:100%;height:auto;display:block;filter:drop-shadow(0 14px 24px rgba(25,50,70,.16))}.brand-logo-mark{width:172px;max-width:100%;border-radius:0;background:transparent;padding:0}.brand-copy h1,.auth-card h1,.sidebar-title{margin:0;font-size:clamp(1.85rem,3vw,2.45rem);line-height:1.05;letter-spacing:-.03em}.brand-copy p:last-child{margin-bottom:0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:700;color:var(--cyan-500);margin:0 0 8px}.auth-copy,.sidebar-copy,.muted{color:var(--ink-soft)}.auth-form,.entity-form{display:grid;gap:16px}.auth-actions{display:grid;gap:12px}.auth-secondary-actions{display:flex;justify-content:flex-start}.auth-option-list,.mfa-setup-panel{display:grid;gap:12px}.auth-option-button{text-align:left}.mfa-secret-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.mfa-qr-card{justify-self:center;padding:16px;border-radius:18px;background:#fffffff5;border:1px solid var(--border);box-shadow:inset 0 1px #fff9}.mfa-qr-card svg{display:block;width:min(192px,100%);height:auto}.auth-form label,.filter-grid label,.entity-form label{display:grid;gap:8px;font-weight:600}input,select,textarea{width:100%;border:1px solid var(--border-strong);border-radius:14px;padding:12px 14px;background:#fffffff5;color:var(--ink);transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--cyan-500);box-shadow:0 0 0 4px #28b8f229}.app-shell{min-height:100vh;display:grid;grid-template-columns:320px 1fr}.sidebar{padding:28px;background:radial-gradient(circle at top,rgba(127,217,255,.26),transparent 36%),linear-gradient(180deg,#deeaef,#d1dfe7 55%,#c4d4de);color:var(--steel-900);display:grid;grid-template-rows:auto auto 1fr;gap:24px;border-right:1px solid rgba(46,74,96,.14)}.sidebar .eyebrow,.user-card .muted{color:var(--steel-700)}.sidebar-title{font-size:2rem;color:var(--steel-900)}.sidebar-nav{display:grid;gap:10px}.nav-item,.tab,.ghost-button,.primary-button,.danger-button{border:none;border-radius:14px;padding:11px 14px;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.nav-item{text-align:left;background:#ffffff9e;color:var(--steel-900);border:1px solid rgba(46,74,96,.08)}.nav-item:hover,.ghost-button:hover,.primary-button:hover,.danger-button:hover,.tab:hover{transform:translateY(-1px)}.nav-item.active{background:var(--accent-gradient);color:#fff;font-weight:700;box-shadow:0 14px 28px #294b6733}.user-card{align-self:end;display:grid;gap:8px;padding:18px;border-radius:20px;background:#ffffff94;border:1px solid rgba(46,74,96,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.user-card p,.user-card span{margin:0}.signout-button{width:100%;justify-self:stretch;margin-top:6px}.main-shell{padding:24px;display:grid;gap:20px}.topbar{display:flex;justify-content:space-between;align-items:start;gap:16px}.topbar h2{margin:0;font-size:1rem;color:var(--steel-800)}.clients-workspace{display:grid;grid-template-columns:340px 1fr;gap:20px}.panel,.section-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:24px;padding:20px;box-shadow:0 18px 36px #19324614}.list-panel,.detail-panel{min-height:calc(100vh - 110px);overflow:auto}.panel-header,.section-head,.dialog-header,.form-actions,.tab-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:16px 0}.filter-grid.compact{grid-template-columns:1fr}.pagination-toolbar{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.page-size-control{display:grid;gap:8px;font-weight:600}.pager-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.client-list{display:grid;gap:12px}.client-card{width:100%;border:1px solid var(--border);border-radius:18px;padding:16px;text-align:left;background:var(--surface-strong);display:grid;gap:6px;box-shadow:0 12px 28px #1932460d}.client-list-pagination{margin-top:16px;margin-bottom:0}.related-list-pagination{margin-bottom:16px}.client-card.active{border-color:#28b8f257;background:linear-gradient(180deg,#f5fbfffa,#ebf5fbfa);box-shadow:0 16px 32px #1932461a}.tab{background:var(--surface-soft);color:var(--steel-800)}.tab.active{background:linear-gradient(180deg,var(--steel-700) 0%,var(--steel-900) 100%);color:#fff}.detail-grid,.split-grid{display:grid;gap:20px}.detail-grid{grid-template-columns:minmax(0,2fr) minmax(260px,1fr)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.stat-card{border-radius:18px;padding:18px;background:linear-gradient(180deg,#f4fafffa,#eaf2f8fa);border:1px solid rgba(25,50,70,.08);display:grid;gap:6px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{color:var(--ink-soft);font-size:.88rem;font-weight:700}.selected-row{background:#5b8fd81f}.text-cell{min-width:280px}.checkbox-field{display:flex;align-items:center;gap:10px;font-weight:600}.checkbox-field input{width:auto}.field-error{color:#b03a2a}.primary-button{background:var(--accent-gradient);color:#fff;font-weight:700;box-shadow:0 14px 28px #294b6729}.ghost-button{background:var(--surface-soft);color:var(--steel-800)}.danger-button{background:#f9e6e1;color:#9d2f22}.actions-cell{white-space:nowrap;display:flex;gap:8px;justify-content:flex-end}.banner{border-radius:14px;padding:12px 14px;font-weight:600}.banner.error{background:#f9e6e1;color:#9d2f22}.banner.info{background:#e6f5fb;color:#245875}.empty-state{min-height:280px;display:grid;place-items:center;color:var(--ink-soft)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1932468a;display:grid;place-items:center;padding:20px}.dialog-card{width:min(760px,100%);max-height:90vh;overflow:auto;background:var(--surface-strong);border-radius:24px;padding:24px;border:1px solid var(--border);box-shadow:0 24px 48px #19324629}.confirm-dialog{display:grid;gap:18px}.confirm-copy{margin:0;color:var(--ink-soft);line-height:1.6}.toast{position:fixed;right:24px;bottom:24px;background:linear-gradient(180deg,var(--steel-700) 0%,var(--steel-900) 100%);color:#fff;padding:14px 18px;border-radius:14px;box-shadow:0 18px 36px #19324633}.config-pre{padding:14px;border-radius:16px;background:linear-gradient(180deg,var(--steel-900) 0%,#29465a 100%);color:#dff4ff;overflow:auto}@media (max-width: 1200px){.app-shell,.clients-workspace,.detail-grid,.split-grid{grid-template-columns:1fr}.list-panel,.detail-panel{min-height:auto}}@media (max-width: 720px){.sidebar,.main-shell,.panel,.section-card,.auth-card{padding:16px}.topbar,.panel-header,.section-head,.dialog-header,.form-actions{align-items:stretch}.actions-cell{flex-direction:column;align-items:stretch}.brand-lockup,.brand-lockup.compact{grid-template-columns:1fr}.brand-logo-mark{width:min(160px,52vw)}.brand-logo{width:min(120px,40vw)}}
