*{box-sizing:border-box}:root{color:#172026;--surface:#fff;--surface-muted:#f8fafb;--border:#dde5e8;--border-strong:#cbd7db;--text:#172026;--muted:#607179;--accent:#127a7a;--accent-strong:#0e6666;--danger:#b42330;--focus:#9ce2dc;--shadow-soft:0 10px 28px #11181d12;--shadow-lifted:0 16px 34px #11181d1c;--motion-fast:.14s ease;--motion-standard:.18s ease;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:var(--surface);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed}.app{background:var(--surface-muted);grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#e9f1f2;background:#11181d;flex-direction:column;gap:18px;padding:20px 14px;display:flex}.brand{border-bottom:1px solid #ffffff1a;padding:0 8px 14px}.brand strong{font-size:18px;line-height:1.2;display:block}.brand span{color:#99aeb5;margin-top:4px;font-size:12px;display:block}.nav{gap:4px;display:grid}.nav button{color:#c7d4d8;text-align:left;width:100%;min-height:38px;transition:background var(--motion-standard), color var(--motion-standard), box-shadow var(--motion-standard);background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex;position:relative}.nav button:before{content:"";width:3px;transition:background var(--motion-standard), box-shadow var(--motion-standard);background:0 0;border-radius:999px;align-self:stretch}.nav button.active,.nav button:hover{color:#fff;background:#223037}.nav button.active:before{background:#44d0c8;box-shadow:0 0 14px #44d0c873}.nav button:focus-visible{outline-offset:2px;outline:3px solid #9ce2dcb3}.session{color:#b7c9cf;background:#18242a;border-radius:6px;margin-top:auto;padding:10px;font-size:12px}.version-chip{color:#89a1a8;word-break:break-word;border-top:1px solid #ffffff14;margin-top:10px;padding-top:8px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;line-height:1.35}.main{flex-direction:column;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.topbar h1{margin:0;font-size:20px;line-height:1.2}.topbar p{color:#61727a;margin:3px 0 0;font-size:13px}.profile{color:#43545b;align-items:center;gap:12px;font-size:13px;display:flex}.content{align-content:start;gap:18px;padding:22px 24px 32px;display:grid}.tenant-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.tenant-search{border:1px solid var(--border-strong);color:#52636b;background:var(--surface);min-width:min(360px,100%);min-height:36px;transition:border-color var(--motion-fast), box-shadow var(--motion-fast), background var(--motion-fast);border-radius:6px;flex:320px;align-items:center;gap:8px;padding:0 10px;display:flex}.tenant-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px #9ce2dc40}.tenant-search input{width:100%;min-height:34px;color:var(--text);background:0 0;border:0;outline:0}.tenant-toolbar>select{border:1px solid var(--border-strong);min-height:36px;color:var(--text);background:var(--surface);border-radius:6px;padding:7px 10px}.tenant-table tbody tr{cursor:pointer}.muted{color:var(--muted)}.tenant-detail{padding:12px}.tenant-detail-header{border:1px solid var(--border);background:#fbfcfd;border-radius:6px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.tenant-detail-header strong{font-size:15px;display:block}.tenant-detail-header p{color:var(--muted);margin:6px 0 0}.tenant-detail .table{-webkit-overflow-scrolling:touch;max-width:100%;display:block;overflow-x:auto}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.kpi,.panel,.detail-panel{background:var(--surface);border:1px solid var(--border);transition:border-color var(--motion-standard), box-shadow var(--motion-standard), transform var(--motion-standard);border-radius:6px;box-shadow:0 1px 2px #11181d08}.panel:hover,.detail-panel:hover,.kpi:hover{box-shadow:var(--shadow-soft);border-color:#cbd7db}.kpi{padding:14px}.kpi span{color:#607179;font-size:12px;display:block}.kpi strong{margin-top:8px;font-size:24px;display:block}.grid-2{grid-template-columns:minmax(0,1.5fr) minmax(360px,.85fr);align-items:start;gap:18px;display:grid}.grid-2 .wide{grid-column:1/-1}.panel-header{border-bottom:1px solid #e4ebee;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:12px 14px;display:flex}.panel-header h2,.section-title{margin:0;font-size:15px;line-height:1.2}.table{border-collapse:collapse;width:100%;font-size:13px}.table th,.table td{text-align:left;vertical-align:top;border-bottom:1px solid #edf2f4;padding:10px 12px}.table th{color:#607179;background:#fbfcfd;font-size:12px;font-weight:600}.table tbody tr{transition:background var(--motion-fast), box-shadow var(--motion-fast)}.table tbody tr:hover{background:#f7fbfb;box-shadow:inset 3px 0 #127a7a8c}.table tbody tr.selected-row{box-shadow:inset 3px 0 0 var(--accent);background:#eef9f8}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.badge{color:#18535a;min-height:22px;transition:background var(--motion-fast), color var(--motion-fast), transform var(--motion-fast);background:#dff4f1;border-radius:999px;align-items:center;padding:2px 7px;font-size:12px;display:inline-flex}.badge.warn{color:#7a4a00;background:#fff1cf}.badge.danger{color:#8f1f24;background:#fde2e4}.button{border:1px solid var(--border-strong);background:var(--surface);min-height:34px;color:var(--text);transition:transform var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast);border-radius:6px;align-items:center;gap:7px;padding:7px 11px;text-decoration:none;display:inline-flex;box-shadow:0 1px 1px #11181d08}.button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.button.danger{color:var(--danger);border-color:#d44753}.button:hover:not(:disabled){background:#f7fbfb;border-color:#9fb3ba;transform:translateY(-1px);box-shadow:0 8px 18px #11181d14}.button:active:not(:disabled){transform:translateY(0);box-shadow:0 3px 10px #11181d14}.button.primary:hover:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong);box-shadow:0 10px 22px #127a7a3d}.button.danger:hover:not(:disabled){color:#8f1f24;background:#fff1f2;border-color:#c03643;box-shadow:0 10px 22px #b423301f}.button:disabled{opacity:.58;box-shadow:none}.icon-button{justify-content:center;width:34px;padding:7px}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:1px}.form-grid{gap:10px;padding:14px;display:grid}.modal-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}:is(.modal-form .field:has(textarea),.modal-form .error-box,.modal-form .row-actions){grid-column:1/-1}.form-section-title{color:#52636b;border-top:1px solid #edf2f4;grid-column:1/-1;margin-top:4px;padding-top:10px;font-size:12px;font-weight:700}.form-section-title:first-child{border-top:0;margin-top:0;padding-top:0}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{gap:5px;display:grid}.field label{color:#52636b;font-size:12px;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--border-strong);width:100%;min-height:36px;color:var(--text);background:var(--surface);transition:border-color var(--motion-fast), box-shadow var(--motion-fast), background var(--motion-fast);border-radius:6px;padding:8px 10px}.field select{appearance:none;cursor:pointer;background-color:var(--surface);background-image:linear-gradient(45deg,#0000 50%,#52636b 50%),linear-gradient(135deg,#52636b 50%,#0000 50%),linear-gradient(90deg,#e4ebee,#e4ebee);background-position:calc(100% - 18px),calc(100% - 13px),calc(100% - 32px);background-repeat:no-repeat;background-size:5px 5px,5px 5px,1px 20px;padding-right:36px}.field select:hover{background-image:linear-gradient(45deg, transparent 50%, var(--accent) 50%), linear-gradient(135deg, var(--accent) 50%, transparent 50%), linear-gradient(to right, #cbd7db, #cbd7db)}.field select:focus{background-image:linear-gradient(45deg, transparent 50%, var(--accent) 50%), linear-gradient(135deg, var(--accent) 50%, transparent 50%), linear-gradient(to right, #9ce2dc, #9ce2dc)}.field select:disabled{cursor:not-allowed;color:#7a8b92;background-color:#f4f7f8;background-image:linear-gradient(45deg,#0000 50%,#9aa8ad 50%),linear-gradient(135deg,#9aa8ad 50%,#0000 50%),linear-gradient(90deg,#dce5e8,#dce5e8)}.field select option{color:var(--text);background:var(--surface)}.dropdown-field{position:relative}.dropdown-field>span{color:#52636b;font-size:12px;font-weight:600}.dropdown-trigger{border:1px solid var(--border-strong);width:100%;min-height:36px;color:var(--text);background:var(--surface);text-align:left;transition:transform var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast), box-shadow var(--motion-fast);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex;box-shadow:0 1px 1px #11181d08}.dropdown-trigger:hover{background:#f7fbfb;border-color:#9fb3ba;transform:translateY(-1px);box-shadow:0 8px 18px #11181d14}.dropdown-trigger:focus-visible{outline:3px solid var(--focus);outline-offset:1px;border-color:var(--accent)}.dropdown-trigger svg{color:#52636b;transition:transform var(--motion-fast), color var(--motion-fast);flex:none}.dropdown-trigger[aria-expanded=true]{border-color:var(--accent);box-shadow:0 0 0 4px #9ce2dc40}.dropdown-trigger[aria-expanded=true] svg{color:var(--accent);transform:rotate(180deg)}.dropdown-menu{z-index:20;background:var(--surface);border:1px solid var(--border-strong);max-height:240px;box-shadow:var(--shadow-lifted);border-radius:8px;gap:3px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.dropdown-menu button{min-height:34px;color:var(--text);text-align:left;transition:background var(--motion-fast), color var(--motion-fast), transform var(--motion-fast);background:0 0;border:0;border-radius:6px;padding:8px 10px}.dropdown-menu button:hover,.dropdown-menu button:focus-visible{color:#0e6666;background:#eef9f8;outline:0}.dropdown-menu button.selected{color:#18535a;background:#dff4f1;font-weight:600}.field input:hover,.field select:hover,.field textarea:hover{border-color:#9fb3ba}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px #9ce2dc40}.field input[type=checkbox]{width:16px;min-height:16px;accent-color:var(--accent);padding:0}.field>label:has(input[type=checkbox]){color:#52636b;align-items:center;gap:8px;font-size:13px;font-weight:400;display:flex}.field textarea{resize:vertical;min-height:84px}.field.checkbox{color:#52636b;align-items:center;gap:8px;font-size:13px;display:flex}.field.checkbox input{width:16px;min-height:16px;accent-color:var(--accent)}.secret-box,.error-box{border-radius:6px;margin:0 14px 14px;padding:12px;font-size:13px}.secret-box{background:#fff7df;border:1px solid #f0c66c}.secret-box code{overflow-wrap:anywhere;margin-top:8px;display:block}.error-box{color:#8f1f24;background:#fff1f2;border:1px solid #f3b3b8}.empty{color:#607179;text-align:center;padding:22px}.alert-panel{border:1px solid color-mix(in srgb, var(--danger) 30%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--surface));border-radius:8px;gap:10px;margin-bottom:14px;padding:14px;display:grid}.alert-panel strong{align-items:center;gap:8px;display:inline-flex}.alert-panel p,.alert-panel ul{margin:6px 0 0}.settings-list{gap:12px;display:grid}.settings-target{grid-template-columns:minmax(220px,1fr) 140px;align-items:end;gap:10px;margin-bottom:12px;display:grid}.setting-row{border:1px solid var(--border);background:var(--surface);border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);align-items:start;gap:14px;padding:12px;display:grid}.setting-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.setting-row p{color:var(--muted);margin:6px 0}.setting-row small{color:var(--muted)}.setting-control{gap:8px;display:grid}.empty.inline-empty{text-align:left;background:#f8fafb;border:1px solid #edf2f4;border-radius:6px;padding:10px 12px}.modal-backdrop{z-index:50;background:#11181d6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-panel{border:1px solid var(--border);background:var(--surface);width:min(780px,100%);max-height:min(860px,100vh - 48px);box-shadow:var(--shadow-lifted);border-radius:6px;overflow:auto}.auth-screen{background:var(--surface-muted);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);width:min(520px,100%);box-shadow:var(--shadow-soft);border-radius:8px;padding:22px}.auth-card h1{margin:0;font-size:24px}.auth-card p{color:#607179}@media (width<=980px){.app{grid-template-columns:1fr}.sidebar{z-index:2;position:sticky;top:0}.nav{grid-template-columns:repeat(3,minmax(0,1fr))}.nav button{min-height:42px}.kpis,.grid-2,.form-grid.two,.modal-form{grid-template-columns:1fr}}@media (width<=640px){.sidebar{padding:16px 14px;position:static}.nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.nav button{align-items:center;gap:8px;padding:9px 10px;line-height:1.2}.topbar{align-items:flex-start;gap:10px;height:auto;min-height:64px;padding:12px 14px}.topbar h1{font-size:18px}.profile{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:8px}.topbar .button{white-space:nowrap}.content{padding:18px 14px 28px}.tenant-toolbar{align-items:stretch}.tenant-toolbar>.button,.tenant-toolbar>select{justify-content:center;width:100%}.tenant-detail-header{display:grid}.modal-backdrop{align-items:end;padding:12px}.modal-panel{max-height:calc(100vh - 24px)}.panel,.detail-panel{max-width:100%;overflow:hidden}.table{-webkit-overflow-scrolling:touch;max-width:100%;display:block;overflow-x:auto}.users-table,.users-table tbody,.users-table tr,.users-table td{width:100%;display:block}.users-table{overflow-x:visible}.users-table thead{display:none}.users-table tr{border-bottom:1px solid #edf2f4;padding:12px 14px}.users-table td{border-bottom:0;padding:4px 0}.users-table .row-actions{padding-top:8px}.panel-header{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:no-preference){.panel,.detail-panel,.kpi,.auth-card,.secret-box,.error-box,.empty{animation:.18s ease-out both surface-in}.badge:hover{transform:translateY(-1px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@keyframes surface-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
