@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";:root{--primary: #0e6b52;--primary-soft: #d9f1e4;--primary-surface: #edf4ef;--secondary: #1565c0;--secondary-soft: #d5e8ff;--accent: #2a7de1;--accent-soft: #e0eeff;--ink: #173b31;--muted: #5d746b;--muted-strong: #4d665c;--app-background: #edf4f0;--app-background-alt: #dfeee7;--login-gradient-start: #edf6ef;--login-gradient-mid: #d9edf8;--login-gradient-end: #eaf7f0;--surface: rgba(255, 255, 255, .78);--surface-strong: rgba(255, 255, 255, .94);--surface-soft: rgba(244, 251, 247, .94);--surface-muted: rgba(235, 245, 239, .98);--surface-border: rgba(198, 219, 209, .82);--surface-border-strong: rgba(185, 209, 198, .92);--surface-border-soft: rgba(208, 228, 218, .9);--surface-glass-border: rgba(255, 255, 255, .92);--shadow-color: rgba(11, 33, 26, .12);--shadow-strong: rgba(11, 33, 26, .16);--shadow-modal: rgba(11, 33, 26, .24);--notice-border: #b7d4fb;--notice-error-background: #fff0f0;--notice-error-border: #efb3b3;--input-background: rgba(255, 255, 255, .72);--pill-muted-background: #eef2f0;--pill-muted-ink: #60776e;--overlay-backdrop: rgba(14, 32, 25, .45);--sidebar-background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(238, 247, 242, .94));--topbar-background: rgba(255, 255, 255, .58);--button-secondary-background: rgba(255, 255, 255, .62);--button-secondary-hover: rgba(255, 255, 255, .82);--card-highlight: linear-gradient(135deg, rgba(60, 139, 103, .18), rgba(21, 101, 192, .08));--hero-glow: radial-gradient(circle at 20% 20%, rgba(59, 142, 105, .2), transparent 35%);--hero-glow-alt: radial-gradient(circle at 80% 12%, rgba(21, 101, 192, .14), transparent 28%);--radius-lg: 24px;--radius-md: 18px;--radius-sm: 14px;color:var(--ink);background:var(--app-background);font-family:Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}[data-theme=dark]{--primary: #3cbc90;--primary-soft: rgba(60, 188, 144, .18);--primary-surface: rgba(60, 188, 144, .12);--secondary: #7eb6ff;--secondary-soft: rgba(126, 182, 255, .18);--accent: #8bbdff;--accent-soft: rgba(139, 189, 255, .16);--ink: #ecf6f1;--muted: #9cb5ab;--muted-strong: #bfd2ca;--app-background: #091410;--app-background-alt: #10201a;--login-gradient-start: #08120f;--login-gradient-mid: #102421;--login-gradient-end: #143126;--surface: rgba(14, 27, 23, .76);--surface-strong: rgba(18, 35, 29, .94);--surface-soft: rgba(14, 27, 23, .96);--surface-muted: rgba(22, 42, 35, .98);--surface-border: rgba(39, 73, 62, .82);--surface-border-strong: rgba(47, 88, 74, .92);--surface-border-soft: rgba(32, 61, 52, .94);--surface-glass-border: rgba(68, 103, 90, .45);--shadow-color: rgba(2, 9, 7, .42);--shadow-strong: rgba(2, 9, 7, .5);--shadow-modal: rgba(0, 0, 0, .42);--notice-border: rgba(126, 182, 255, .32);--notice-error-background: rgba(123, 31, 31, .2);--notice-error-border: rgba(255, 138, 138, .32);--input-background: rgba(8, 18, 15, .78);--pill-muted-background: #1b322a;--pill-muted-ink: #aac2b9;--overlay-backdrop: rgba(1, 6, 4, .68);--sidebar-background: linear-gradient(180deg, rgba(11, 21, 18, .98), rgba(16, 31, 26, .98));--topbar-background: rgba(10, 19, 16, .52);--button-secondary-background: rgba(18, 35, 29, .68);--button-secondary-hover: rgba(24, 48, 39, .92);--card-highlight: linear-gradient(135deg, rgba(60, 188, 144, .18), rgba(126, 182, 255, .1));--hero-glow: radial-gradient(circle at 20% 20%, rgba(60, 188, 144, .16), transparent 35%);--hero-glow-alt: radial-gradient(circle at 80% 12%, rgba(126, 182, 255, .16), transparent 28%)}*{box-sizing:border-box}body{background:var(--app-background);color:var(--ink);margin:0}button,input,select,textarea{font:inherit}button{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:0;border-radius:999px;box-shadow:inset 0 0 0 1px var(--surface-border-soft);padding:10px 14px;background:var(--button-secondary-background);color:var(--ink);cursor:pointer;font-weight:700;letter-spacing:.01em;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}button:hover:not(:disabled){background:var(--button-secondary-hover);box-shadow:0 14px 28px var(--shadow-color),inset 0 0 0 1px var(--surface-border);transform:translateY(-1px)}button:disabled{cursor:wait;opacity:.7}.primary{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 76%,white));box-shadow:0 16px 28px color-mix(in srgb,var(--primary) 24%,transparent);color:#fff}.login-page{align-items:center;background:linear-gradient(135deg,var(--login-gradient-start),var(--login-gradient-mid),var(--login-gradient-end));display:flex;min-height:100vh;justify-content:center;overflow:hidden;padding:24px;position:relative}.login-page:before,.login-page:after,.app-shell:before,.app-shell:after{content:"";pointer-events:none;position:absolute}.login-page:before,.app-shell:before{background:var(--hero-glow);top:0;right:0;bottom:0;left:0}.login-page:after,.app-shell:after{background:var(--hero-glow-alt);top:0;right:0;bottom:0;left:0}.login-card,.panel,.metric-card{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:var(--surface);border:1px solid var(--surface-glass-border);border-radius:var(--radius-lg);box-shadow:0 20px 60px var(--shadow-color);position:relative}.login-card:before,.panel:before,.metric-card:before,.user-card:before,.cluster-card:before,.insight-card:before{background:var(--card-highlight);border-radius:inherit;content:"";top:0;right:0;bottom:0;left:0;opacity:.65;pointer-events:none;position:absolute}.login-card{display:grid;gap:16px;max-width:420px;padding:32px;width:100%}.login-brand{display:grid;gap:12px;justify-items:center;text-align:center}.brand{align-items:center;display:flex;gap:12px;margin:28px 22px 22px;position:relative;z-index:1}.brand span,.sidebar-footer span,.list-item span,.topbar p,.metric-card span{color:var(--muted);display:block;font-size:13px}.brand-logo,.login-logo{display:block;object-fit:contain}.brand-logo{height:52px;width:52px}.login-logo{height:96px;justify-self:center;width:96px}.brand-mark{align-items:center;background:var(--primary);border-radius:8px;color:#fff;display:inline-flex;font-weight:900;height:44px;justify-content:center;width:44px}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--app-background-alt) 60%,transparent)),var(--app-background);min-height:100vh;position:relative}.sidebar{background:var(--sidebar-background);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);border-right:1px solid var(--surface-border);display:flex;flex-direction:column;position:relative;z-index:1}nav{display:grid;gap:10px;padding:0 18px}nav button{background:transparent;border-radius:16px;box-shadow:none;font-weight:800;padding:14px 16px;text-align:left}nav button.active{background:linear-gradient(135deg,var(--primary-soft),color-mix(in srgb,var(--secondary-soft) 55%,transparent));box-shadow:0 14px 24px var(--shadow-color)}.sidebar-footer{border-top:1px solid var(--surface-border);margin-top:auto;padding:22px 18px 24px;position:relative;z-index:1}main{min-width:0;padding-bottom:24px;position:relative;z-index:1}.topbar{align-items:center;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:var(--topbar-background);border-bottom:1px solid var(--surface-border-soft);display:flex;justify-content:space-between;margin:0 24px;padding:24px 8px 18px;position:sticky;top:0;z-index:10}h1,h2,h3,p{margin:0}h1,h2,h3,strong{letter-spacing:-.02em}h1{font-size:clamp(1.8rem,2vw,2.4rem)}.notice{background:var(--accent-soft);border:1px solid var(--notice-border);border-radius:var(--radius-md);box-shadow:0 18px 34px var(--shadow-color);margin:16px 32px;padding:12px 14px}.notice.error{background:var(--notice-error-background);border-color:var(--notice-error-border)}.grid{display:grid;gap:16px}.metrics{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));padding:24px 32px}.dashboard-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 32px 24px}.dashboard-grid .panel{margin:0}.wide-panel{grid-column:1 / -1}.metric-card{overflow:hidden;padding:18px}.metric-card strong{display:block;font-size:38px;margin-top:8px}.panel{margin:24px 32px;overflow:hidden;padding:22px}.module-page{padding:0 32px 32px}.module-page .panel{margin:0}.panel h2{margin-bottom:16px}.panel-tools{margin-bottom:14px}.panel-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:18px;position:relative;z-index:1}.panel-header.compact{margin-bottom:12px}.panel-subtext{color:var(--muted);line-height:1.5;margin-top:6px;max-width:720px}.filters-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:18px;position:relative;z-index:1}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--surface-border-soft);padding:12px;text-align:left;vertical-align:top}th{color:var(--muted-strong);font-size:12px;text-transform:uppercase}input,select,textarea{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:var(--input-background);border:1px solid var(--surface-border-strong);border-radius:8px;color:var(--ink);outline:none;padding:11px 12px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;width:100%}input:focus,select:focus,textarea:focus{background:color-mix(in srgb,var(--input-background) 76%,white);border-color:color-mix(in srgb,var(--primary) 65%,var(--surface-border-strong));box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 18%,transparent)}label{color:var(--muted-strong);display:grid;font-size:13px;gap:6px}.editor-shell{display:grid;gap:18px;max-width:1100px}.editor-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:1 / -1}.split{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(320px,400px) minmax(0,1fr)}.form-panel{display:grid;gap:14px}.two-cols{display:grid;gap:12px;grid-template-columns:1fr 1fr}.checks,.actions{display:flex;flex-wrap:wrap;gap:8px}.checks label,.inline-check,.member-box label{align-items:center;display:flex;gap:8px}.checks input,.inline-check input,.member-box input{width:auto}.list-panel{display:grid;gap:12px}.card-list,.user-card-list{display:grid;gap:14px;position:relative;z-index:1}.list-item{align-items:start;background:color-mix(in srgb,var(--surface-soft) 88%,transparent);border:1px solid var(--surface-border-soft);border-radius:var(--radius-sm);display:flex;gap:16px;justify-content:space-between;padding:14px}.user-card,.cluster-card{align-items:start;background:color-mix(in srgb,var(--surface-soft) 90%,transparent);border:1px solid var(--surface-border-strong);border-radius:var(--radius-lg);display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(180px,220px);overflow:hidden;padding:18px;position:relative;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.user-card:hover,.cluster-card:hover,.insight-card:hover,.metric-card:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--surface-border-strong));box-shadow:0 24px 48px var(--shadow-strong);transform:translateY(-3px)}.user-card-main,.cluster-card-main{display:grid;gap:14px;position:relative;z-index:1}.user-card-header,.cluster-card-header{align-items:start;display:flex;gap:12px;justify-content:space-between}.user-card-header strong,.cluster-card-header strong{display:block;font-size:20px;margin-bottom:10px}.user-badges{display:flex;flex-wrap:wrap;gap:8px}.pill{background:color-mix(in srgb,var(--primary-surface) 78%,transparent);border:1px solid color-mix(in srgb,var(--primary) 12%,var(--surface-border));border-radius:999px;color:var(--ink);display:inline-flex;font-size:12px;font-weight:700;padding:6px 10px}.pill-success{background:var(--primary-soft);color:var(--primary)}.pill-warning{background:var(--accent-soft);color:var(--accent)}.pill-muted{background:var(--pill-muted-background);color:var(--pill-muted-ink)}.user-meta-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.meta-label{color:var(--muted);display:block;font-size:12px;margin-bottom:4px;text-transform:uppercase}.user-card-actions{align-items:stretch;display:grid;gap:10px}.user-card-actions button,.action-menu summary{min-height:42px;width:100%}.action-menu{position:relative}.action-menu summary{align-items:center;background:var(--button-secondary-background);border-radius:999px;color:var(--ink);cursor:pointer;display:flex;font-weight:700;justify-content:center;list-style:none;padding:10px 14px}.action-menu summary::-webkit-details-marker{display:none}.action-menu[open] .action-menu-panel{display:grid}.action-menu-panel{background:var(--surface-strong);border:1px solid var(--surface-border-strong);border-radius:var(--radius-md);box-shadow:0 18px 40px var(--shadow-strong);display:none;gap:8px;margin-top:8px;padding:10px}.action-menu-panel button{text-align:left}.member-box{border-top:1px solid var(--surface-border);display:grid;gap:14px;margin-top:10px;padding-top:16px}.member-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.member-pill{align-items:center;background:var(--surface-muted);border:1px solid var(--surface-border-strong);border-radius:var(--radius-sm);display:flex;gap:10px;min-height:48px;padding:10px 12px}.pagination-bar{align-items:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--surface-border-soft);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:18px;padding:12px 14px}.pagination-summary{display:grid;gap:4px}.pagination-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.pagination-size{align-items:center;display:flex;gap:8px}.pagination-size select{min-width:76px;width:auto}.pagination-page{color:var(--muted);font-size:13px;font-weight:700}.cluster-description{color:var(--ink);line-height:1.5}.locality-chip-row{display:flex;flex-wrap:wrap;gap:8px}.report-stack{display:grid;gap:16px;padding:24px 32px}.report-stack .panel{margin:0}.report-header{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.report-filters{display:grid;gap:18px}.report-filter-header{align-items:start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.report-filter-header p{color:var(--muted);margin-top:4px}.report-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.report-header .metric-card{box-shadow:none}.bar-list,.compact-list{display:grid;gap:12px}.bar-row{display:grid;gap:8px}.bar-row>div:first-child{align-items:center;display:flex;justify-content:space-between}.bar-row span,.compact-list span,.insight-card span,.empty-text{color:var(--muted);font-size:13px}.bar-track{background:var(--surface-border-soft);border-radius:999px;height:10px;overflow:hidden}.bar-track span{background:var(--secondary);display:block;height:100%}.compact-list article{background:color-mix(in srgb,var(--surface-soft) 92%,transparent);border:1px solid var(--surface-border-soft);border-radius:var(--radius-sm);display:grid;gap:4px;padding:12px}.insight-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));padding:24px 32px}.insight-card{background:var(--surface-strong);border:1px solid var(--surface-border);border-radius:var(--radius-lg);display:grid;gap:10px;overflow:hidden;padding:18px;position:relative;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.insight-card strong{color:var(--primary);font-size:30px}.insight-card p{color:var(--ink);line-height:1.45}.modal-backdrop{align-items:center;background:var(--overlay-backdrop);display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:24px;position:fixed;z-index:50}.modal-card{background:var(--surface-strong);border:1px solid var(--surface-border-strong);border-radius:calc(var(--radius-lg) + 2px);box-shadow:0 18px 40px var(--shadow-modal);max-width:720px;padding:22px;width:min(100%,720px)}.modal-header,.modal-actions{align-items:center;display:flex;gap:12px;justify-content:space-between}.modal-actions{justify-content:flex-end;margin-top:18px}.qr-modal-body{align-items:center;display:grid;gap:24px;grid-template-columns:minmax(220px,240px) minmax(0,1fr);margin-top:18px}.qr-panel{align-items:center;background:var(--surface-soft);border:1px solid var(--surface-border-soft);border-radius:var(--radius-md);display:flex;justify-content:center;padding:20px}.qr-meta{display:grid;gap:10px}.qr-meta strong{font-size:24px}.qr-meta span,.qr-meta code{color:var(--muted-strong)}.topbar-actions{display:flex;flex-wrap:wrap;gap:10px}.topbar-actions button{min-width:124px}input::placeholder,textarea::placeholder{color:var(--muted)}@media(max-width:900px){.app-shell,.split{grid-template-columns:1fr}.sidebar{border-bottom:1px solid var(--surface-border);border-right:0}nav{grid-template-columns:repeat(3,1fr)}.topbar,.panel,.module-page,.metrics,.dashboard-grid,.report-stack,.insight-grid{margin-left:16px;margin-right:16px;padding-left:16px;padding-right:16px}.topbar{margin-left:16px;margin-right:16px}.dashboard-grid,.qr-modal-body,.user-card,.cluster-card,.editor-grid{grid-template-columns:1fr}.span-2{grid-column:auto}}
