:root{--bg:#090d14;--panel:#181e2bd1;--panel-strong:#1b2332;--panel-soft:#ffffff0e;--border:#ffffff1a;--border-strong:#ffffff2e;--text:#dbe3f3;--muted:#8d98ac;--heading:#fbfdff;--accent:#7c5cff;--blue:#46a6ff;--green:#3ecf8e;--danger:#ff526b;--radius:24px;--shadow:0 24px 70px #00000057;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 8% -10%,#7c5cff59,#0000 30rem),radial-gradient(circle at 90% 0,#29b8ff3d,#0000 28rem),linear-gradient(135deg,#090d14 0%,#131927 100%);min-width:320px;min-height:100vh;margin:0}button,textarea{font:inherit}button{color:inherit;cursor:pointer;border:0}p,h1,h2,h3{margin:0}.app-shell{grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);background:#0b0f17cc;height:100vh;position:sticky;top:0}.brand{border-bottom:1px solid var(--border);width:100%;height:76px;color:var(--heading);text-align:left;background:0 0;align-items:center;gap:12px;padding:0 18px;font-size:17px;font-weight:800;display:flex}.brand strong{color:#9e8cff}.brand-mark{background:linear-gradient(135deg,#7c5cff,#29b8ff);border-radius:16px;place-items:center;width:42px;height:42px;font-size:13px;font-weight:950;display:grid;box-shadow:0 16px 38px #4675ff61}.navigation{gap:9px;padding:18px 12px;display:grid}.nav-item{color:#aeb8ca;text-align:left;background:0 0;border:1px solid #0000;border-radius:17px;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 14px;font-weight:760;transition:transform .18s,border-color .18s,background .18s,color .18s;display:flex}.nav-item:hover,.nav-item.active{border-color:var(--border);color:var(--heading);background:linear-gradient(135deg,#7c5cff33,#29b8ff14);transform:translate(2px)}.dashboard{min-width:0}.topbar{z-index:20;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#0c111ac2;justify-content:space-between;align-items:center;gap:18px;min-height:76px;padding:14px 22px;display:flex;position:sticky;top:0}.topbar h1{color:var(--heading);letter-spacing:-.025em;font-size:clamp(11px,1.2vw,14px);font-weight:800;line-height:1.15}.topbar-actions{align-items:center;gap:12px;display:flex}.avatar{border:2px solid var(--border-strong);color:#21152d;background:linear-gradient(135deg,#ffd7b9,#8c6bff);border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-weight:950;display:grid}.content{width:100%;padding:18px}.page-stack{gap:18px;display:grid}.eyebrow{color:#9f91ff;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:950}.hero-panel,.ai-hero,.section-title,.panel,.logout-card,.mode-card,.user-row{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.hero-panel,.ai-hero,.section-title{border-radius:var(--radius);justify-content:space-between;align-items:center;gap:14px;padding:clamp(12px,2vw,18px);display:flex}.hero-panel{background:linear-gradient(135deg, #7c5cff42, #29b8ff17), var(--panel)}.hero-panel h2,.ai-hero h2,.section-title h2,.logout-card h2{color:var(--heading);letter-spacing:-.03em;margin-top:3px;font-size:clamp(11px,1.2vw,14px);font-weight:800;line-height:1.15}.hero-panel p:not(.eyebrow),.ai-hero p:not(.eyebrow),.section-title p:not(.eyebrow),.logout-card p:not(.eyebrow){max-width:650px;color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.primary-action,.ghost-button,.danger-button,.mode-card button,.row-actions button{border-radius:15px;justify-content:center;align-items:center;gap:8px;font-weight:850;display:inline-flex}.primary-action{color:#fff;background:linear-gradient(135deg,#7c5cff,#29b8ff);min-width:max-content;padding:13px 18px;box-shadow:0 18px 36px #427bff59}.ghost-button{border:1px solid var(--border);background:var(--panel-soft);padding:11px 14px}.danger-button{color:#fff;background:linear-gradient(135deg,#ff526b,#ff8d6b);padding:12px 16px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.metric-card{min-height:178px;box-shadow:var(--shadow);border:1px solid #ffffff26;border-radius:22px;padding:20px;position:relative;overflow:hidden}.metric-card.purple{background:linear-gradient(135deg,#7058e8,#7d62ff)}.metric-card.blue{background:linear-gradient(135deg,#31b7ee,#327fe8)}.metric-card.amber{background:linear-gradient(135deg,#ffc247,#f39b16)}.metric-card.red{background:linear-gradient(135deg,#ff6177,#db354d)}.metric-card:after{content:"";background:radial-gradient(#ffffff42,#0000 70%);height:95%;position:absolute;inset:auto -16% -48%}.metric-top{z-index:2;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:relative}.metric-value{color:#fff;letter-spacing:-.04em;font-size:28px;font-weight:950}.metric-card h2{color:#ffffffe6;margin-top:2px;font-size:11px;font-weight:800}.positive,.negative{color:#fff;background:#ffffff2e;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900}.metric-chart{z-index:2;height:78px;position:absolute;bottom:0;left:0;right:0}.dashboard-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,.7fr);gap:18px;display:grid}.panel{border-radius:var(--radius);min-width:0;padding:22px}.panel-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.panel-header.compact{margin-bottom:4px}.panel-header h2{color:var(--heading);letter-spacing:-.02em;font-size:12px;font-weight:800}.panel-header p{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.4}.segmented-control{border:1px solid var(--border-strong);background:#ffffff0a;border-radius:13px;display:flex;overflow:hidden}.segmented-control button{color:var(--muted);background:0 0;padding:9px 13px}.segmented-control .selected{color:var(--heading);background:#ffffff2e}.chart-large{width:100%;height:360px}.donut-chart{height:260px}.legend-list{color:var(--muted);gap:10px;display:grid}.legend-list span{align-items:center;gap:9px;display:flex}.legend-list i{border-radius:50%;width:10px;height:10px}.traffic-legend{color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:13px;display:flex}.traffic-legend span{align-items:center;gap:8px;display:inline-flex}.traffic-legend i{border-radius:50%;width:10px;height:10px}.users-list{gap:10px;display:grid}.users-toolbar{gap:16px;display:grid}.users-toolbar-heading{color:var(--muted);align-items:center;gap:12px;display:flex}.users-toolbar-heading h3{color:var(--heading);font-size:12px;font-weight:800}.users-toolbar-heading p{color:var(--muted);margin-top:4px;font-size:13px}.users-filters-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.filter-field{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;gap:6px;font-size:12px;font-weight:700;display:grid}.filter-field input,.filter-field select{border:1px solid var(--border);width:100%;min-height:42px;color:var(--text);background:#ffffff0a;border-radius:14px;padding:0 12px}.filter-field input:focus,.filter-field select:focus{border-color:#7c5cff73;outline:2px solid #7c5cff59}.user-row{background:var(--panel);border:1px solid var(--border);border-radius:20px;grid-template-columns:52px 56px minmax(210px,1.35fr) minmax(160px,1fr) 120px 120px 52px;align-items:center;gap:14px;padding:14px 16px;display:grid}.user-row-flag,.user-row-avatar,.user-row-actions{justify-content:center;place-self:center;align-items:center;display:flex}.user-row-university,.user-row-date{flex-direction:column;justify-content:center;align-self:center;min-height:44px;display:flex}.user-row.inactive{opacity:.72}.user-row-head{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:1px dashed #ffffff14;padding-top:8px;padding-bottom:8px;font-size:10px;font-weight:800}.user-row-head>div{text-align:center;justify-content:center;align-items:center;display:flex}.user-row-head>div:nth-child(3){text-align:left;justify-content:flex-start}.user-row-identity strong,.user-row-university>span,.user-row-date>span{color:var(--heading);display:block}.user-row small{color:var(--muted);margin-top:4px;display:block}.user-row-flag .user-flag,.user-row-avatar .user-avatar-shell,.user-row-avatar .user-avatar-fallback{justify-content:center;align-items:center;display:flex}.user-row-flag{width:52px;min-height:44px}.user-row-avatar{width:56px;min-height:44px}.user-row-actions{width:52px;min-height:44px}.user-flag{background:#ffffff14;border-radius:14px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;line-height:1;display:flex}.user-flag-emoji{text-align:center;width:100%;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:22px;line-height:44px;display:block}.user-avatar-shell{background:#ffffff0a;border-radius:14px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.user-avatar-image{object-fit:cover;width:100%;height:100%;display:block}.user-avatar-fallback{width:100%;height:100%;color:var(--heading);text-align:center;background:linear-gradient(135deg,#7c5cff73,#29b8ff59);justify-content:center;align-items:center;padding:0;font-size:13px;font-weight:900;line-height:1;display:flex}.user-row-identity{flex-direction:column;justify-content:center;align-self:center;min-width:0;min-height:44px;display:flex}.status-badge{border-radius:999px;margin-top:6px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.status-badge.inactive{color:#ff8ea0;background:#ff526b29}.user-row-menu{position:relative}.icon-button{border:1px solid var(--border);background:var(--panel-soft);border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.icon-button:disabled{opacity:.45;cursor:not-allowed}.user-row-menu-panel{z-index:20;border:1px solid var(--border-strong);min-width:170px;box-shadow:var(--shadow);background:#0f141ffa;border-radius:14px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.menu-item{width:100%;color:var(--text);text-align:left;background:0 0;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.menu-item:hover{background:#ffffff0f}.menu-item.danger{color:#ff8ea0}.users-empty{text-align:center;color:var(--muted);padding:28px}.users-pagination{color:var(--muted);justify-content:center;align-items:center;gap:14px;display:flex}.section-copy{color:var(--muted);margin-top:4px;font-size:12px}@media (width<=1180px){.users-filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.user-row,.user-row-head{grid-template-columns:48px 52px minmax(180px,1.2fr) minmax(140px,1fr) 110px 110px 48px}}@media (width<=860px){.users-filters-grid{grid-template-columns:1fr}.user-row-head{display:none}.user-row{grid-template-columns:48px 52px 1fr 40px;grid-template-areas:"flag avatar identity actions""flag avatar university actions""flag avatar created actions""flag avatar last actions";row-gap:8px}.user-row-flag{grid-area:flag;place-self:center;width:48px}.user-row-avatar{grid-area:avatar;place-self:center;width:52px}.user-row-identity{grid-area:identity}.user-row-university{grid-area:university}.user-row-date:first-of-type{grid-area:created}.user-row-date:nth-of-type(2){grid-area:last}.user-row-actions{grid-area:actions}}.ai-hero{background:linear-gradient(135deg, #29b8ff2e, #7c5cff33), var(--panel);justify-content:flex-start}.robot-orbit{border:1px solid var(--border-strong);background:radial-gradient(circle,#7c5cff57,#29b8ff14);border-radius:50%;flex:none;place-items:center;width:118px;height:118px;display:grid;position:relative}.robot-orbit:before{content:"";border:1px dashed #ffffff38;border-radius:50%;animation:8s linear infinite spin;position:absolute;inset:10px}.robot-head{background:linear-gradient(135deg,#ecf7ff,#a8b9ff);border-radius:18px;justify-content:center;align-items:center;gap:12px;width:62px;height:48px;animation:2.8s ease-in-out infinite float;display:flex;position:relative}.robot-head:before{content:"";background:#dfe7ff;width:2px;height:15px;position:absolute;top:-17px}.robot-head span{background:#1a2550;border-radius:50%;width:9px;height:9px}.ai-grid{grid-template-columns:minmax(0,1.5fr) minmax(240px,.75fr) minmax(240px,.75fr);gap:18px;display:grid}.prompt-panel{min-height:360px}textarea{resize:vertical;border:1px solid var(--border);width:100%;min-height:230px;color:var(--heading);background:#070b1294;border-radius:18px;outline:none;padding:18px;line-height:1.6}textarea:focus{border-color:#7c5cffb3;box-shadow:0 0 0 4px #7c5cff21}.mode-card{border-radius:var(--radius);flex-direction:column;justify-content:space-between;align-items:flex-start;gap:18px;min-height:260px;padding:22px;display:flex}.mode-card svg{color:#8dd8ff}.mode-card h3{color:var(--heading);letter-spacing:-.03em;font-size:23px}.mode-card p{color:var(--muted);line-height:1.55}.mode-card button{color:#c3bbff;background:#7c5cff2e;padding:11px 14px}.mode-card.selectable.active{border-color:#7c5cffa6;box-shadow:0 0 0 1px #7c5cff59}.mode-card.selectable{cursor:pointer}.prompt-edit-hint{color:#9f91ff;margin-top:6px;font-size:12px;font-weight:700}textarea:disabled{opacity:.55;cursor:not-allowed}.login-shell{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{border:1px solid var(--border);background:var(--panel);width:min(480px,100%);box-shadow:var(--shadow);border-radius:30px;padding:32px}.login-brand{align-items:center;gap:14px;margin-bottom:16px;display:flex}.login-brand h1{color:var(--heading);letter-spacing:-.04em;font-size:30px}.login-copy{color:var(--muted);margin-bottom:22px;line-height:1.6}.login-form{gap:14px;display:grid}.login-form label{gap:8px;display:grid}.login-form label span{color:var(--muted);font-size:13px;font-weight:700}.login-form input{border:1px solid var(--border);color:var(--text);background:#ffffff0a;border-radius:16px;padding:14px 16px}.login-form input:focus{border-color:#7c5cffb3;outline:none}.login-error{color:var(--danger);font-size:14px}.primary-button{color:#fff;background:linear-gradient(135deg,#7c5cff,#29b8ff);border-radius:16px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 18px;font-weight:850;display:inline-flex}.primary-button:disabled{opacity:.7;cursor:not-allowed}.status-line{color:var(--muted);margin-bottom:10px;font-size:13px}.status-line.success{color:var(--green)}.status-line.muted{margin-top:10px}.logout-card{text-align:center;border-radius:30px;justify-items:center;width:min(540px,100%);margin:8vh auto 0;padding:38px 24px;display:grid}.logout-icon{color:#ff8a9a;background:#ff526b26;border-radius:26px;place-items:center;width:82px;height:82px;margin-bottom:18px;display:grid}.logout-actions{gap:12px;margin-top:24px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (width<=1180px){.app-shell{grid-template-columns:92px minmax(0,1fr)}.brand{justify-content:center;padding:0}.brand span:last-child,.nav-item span{display:none}.nav-item{justify-content:center;padding:0}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.ai-grid{grid-template-columns:1fr}.user-row{grid-template-columns:1fr 1fr}.row-actions{justify-content:flex-start}}@media (width<=760px){.app-shell{display:block}.sidebar{z-index:30;border-right:0;border-bottom:1px solid var(--border);height:auto;position:sticky;top:0}.brand{display:none}.navigation{scrollbar-width:none;gap:8px;padding:10px;display:flex;overflow-x:auto}.navigation::-webkit-scrollbar{display:none}.nav-item{min-width:max-content;padding:0 14px}.nav-item span{display:inline}.topbar{align-items:flex-start;padding:16px;position:static}.topbar-actions{gap:8px}.ghost-button{padding:10px}.ghost-button:not(.panel-header .ghost-button){font-size:0}.content{padding:12px}.hero-panel,.ai-hero,.section-title,.panel-header{flex-direction:column;align-items:flex-start}.primary-action{width:100%}.metric-grid,.user-row{grid-template-columns:1fr}.chart-large{height:300px}.robot-orbit{width:96px;height:96px}.logout-actions{flex-direction:column;width:100%}.logout-actions button{width:100%}}
