:root{color:#172033;background:#eef5ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at top left,rgba(42,178,143,.16),transparent 34rem),radial-gradient(circle at top right,rgba(42,98,224,.18),transparent 32rem),#eef5ff}button,input,select{font:inherit}button{cursor:pointer}.login-shell{display:grid;min-height:100vh;place-items:center;padding:24px}.login-card{width:min(500px,100%);padding:32px;border:1px solid rgba(76,107,149,.2);border-radius:28px;background:radial-gradient(circle at top right,rgba(65,115,220,.12),transparent 19rem),#fffffff0;box-shadow:0 26px 80px #1f385f1f}.login-brand{display:flex;gap:13px;align-items:center;margin-bottom:24px}.login-brand .brand-mark{width:44px;height:44px;flex:0 0 44px;border-radius:15px}.login-brand-subtitle{margin:3px 0 0;color:#667590;font-size:12px;font-weight:800}.login-card h1{max-width:410px;margin:0 0 12px;color:#172033;font-size:clamp(20px,2vw,22px);line-height:1.08;letter-spacing:-.035em}.login-card .login-intro{max-width:420px;font-size:15px;line-height:1.55}.login-form{display:grid;gap:14px;margin-top:22px}.login-form label{display:grid;gap:8px;color:#40506b;font-size:13px;font-weight:900}.login-form input{min-height:46px;padding:0 14px;border:1px solid #cbd9ed;border-radius:14px;background:#fff;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.login-form input:focus{border-color:#2f66dc;box-shadow:0 0 0 4px #2f66dc1f}.login-form button,.session-action{border:0;border-radius:999px;color:#fff;background:linear-gradient(135deg,#2f66dc,#188c7a);font-weight:900}.login-form button{min-height:46px;padding:0 18px;transition:filter .16s ease,transform .16s ease}.login-form button:not(:disabled):hover{filter:brightness(1.04);transform:translateY(-1px)}.login-form button:disabled{cursor:wait;opacity:.7}.login-error{margin:0;padding:10px 12px;border:1px solid #ffcabf;border-radius:14px;color:#9f2f17;background:#fff7f5;font-weight:800}.login-security-note{display:flex;gap:9px;align-items:flex-start;margin:20px 0 0;color:#667590;font-size:12px;font-weight:750;line-height:1.45}.login-security-note span{color:#188c7a;font-size:10px;line-height:1.75}.auth-checking-card{align-items:center;min-height:280px;text-align:center}.auth-checking-card .login-brand{align-self:stretch;text-align:left}.auth-checking-indicator{animation:auth-checking-spin .8s linear infinite;border:3px solid rgba(38,99,213,.18);border-radius:50%;border-top-color:#2663d5;height:32px;margin-top:28px;width:32px}@keyframes auth-checking-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.auth-checking-indicator{animation:none}}.console-shell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;width:min(1440px,calc(100vw - 40px));margin:30px auto}.console-shell,.sidebar,.main-card,.topbar,.toolbar,.content-grid,.metrics,.panel,.metric-card,.table-wrap,.trend-list,.trend-row,.depth-row,.health-list,.comparison-row{min-width:0}.sidebar,.main-card,.panel,.metric-card,.state-card,.project-card,.session-card,.capability-row,.expandable-item{border:1px solid rgba(76,107,149,.2);background:#ffffffe0;box-shadow:0 24px 70px #1f385f14}.sidebar{position:sticky;top:30px;align-self:start;min-height:calc(100vh - 60px);padding:22px;border-radius:28px}.brand{display:flex;gap:14px;align-items:center;padding-bottom:20px;border-bottom:1px solid #d8e3f3}.brand-mark{display:grid;width:46px;height:46px;place-items:center;border-radius:16px;color:#fff;font-weight:900;background:linear-gradient(135deg,#2f66dc,#188c7a)}.brand-title,.brand-subtitle,.kicker,.intro,.panel p,.section-header p,.sidebar-card p,.state-card p{margin:0}.brand-title{font-size:16px;font-weight:900;overflow-wrap:anywhere}.brand-subtitle{color:#5d6d86;font-size:12px;font-weight:800}.nav{display:grid;gap:10px;margin-top:22px}.nav-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:13px 14px;border:0;border-radius:14px;color:#40506b;background:transparent;font-weight:700;text-align:left}.nav-item.active,.nav-item:hover{color:#0f4aa8;background:#e8f0ff;font-weight:750}.sidebar-card{margin-top:18px;padding:14px;border-radius:18px;background:#f5f8ff}.sidebar-card strong{display:block;margin-top:4px;color:#172033}.session-action{margin-top:12px;padding:8px 12px;font-size:12px}.sidebar-card.muted{overflow-wrap:anywhere;color:#667590;font-size:12px}.eyebrow,.kicker,.metric-card span{color:#5d6d86;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.main-card{overflow:hidden;border-radius:30px}.topbar{display:grid;grid-template-columns:1fr auto;gap:24px;padding:32px;background:radial-gradient(circle at top right,rgba(65,115,220,.13),transparent 24rem),#ffffffb8}.topbar h1{margin:8px 0 10px;font-size:clamp(24px,2.5vw,30px);line-height:.96;letter-spacing:-.055em}.intro{max-width:780px;color:#52647f;font-size:17px;font-weight:650}.health-pill,.status-ok,.status-warning{display:inline-flex;align-items:center;gap:8px;height:fit-content;padding:10px 14px;border-radius:999px;color:#086554;background:#dcf7ee;font-weight:900;white-space:nowrap}.health-pill.warning,.status-warning{color:#9a5600;background:#fff2d6}.dot{width:10px;height:10px;border-radius:999px;background:#1a9b82;box-shadow:0 0 0 5px #1a9b821f}.toolbar{display:grid;grid-template-columns:220px 190px minmax(240px,320px) 1fr;gap:12px;padding:18px 32px;border-top:1px solid #d8e3f3;border-bottom:1px solid #d8e3f3;background:#ffffff94}.toolbar select,.toolbar input{width:100%;min-height:44px;padding:0 14px;border:1px solid #cbd9ed;border-radius:14px;color:#172033;background:#fff}.toolbar:not(.custom-period) input[type=search]{grid-column:3 / -1}.date-range-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.date-range-controls label{display:grid;gap:4px;color:#60708b;font-size:11px;font-weight:900;text-transform:uppercase}.date-range-controls input{min-height:28px}.content-grid,.section-stack{padding:28px}.content-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr);gap:18px}.metrics{display:grid;grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card{padding:20px;border-radius:20px}.metric-card strong{display:block;margin:8px 0;color:#121a2b;font-size:34px;line-height:1;letter-spacing:-.04em}.metric-card p{color:#667590;font-size:13px;font-weight:750}.panel{padding:22px;border-radius:24px}.panel.wide{grid-column:span 1}.panel-heading{margin-bottom:18px}.panel h2,.section-header h2,.state-card h2{margin:0;color:#172033;font-size:22px;letter-spacing:-.035em}.panel p,.section-header p{color:#52647f;font-weight:650;overflow-wrap:anywhere}.trend-list{display:grid;gap:12px}.trend-row,.depth-row{display:grid;grid-template-columns:84px 1fr 42px;gap:12px;align-items:center;color:#40506b;font-weight:850}.depth-list,.attention-list{display:grid;gap:12px}.depth-row{grid-template-columns:120px 1fr 42px}.trend-bar{overflow:hidden;min-width:0;height:12px;border-radius:999px;background:#e7edf7}.trend-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2f66dc,#1a9b82)}.health-list{display:grid;gap:12px;padding:0;margin:0;list-style:none}.health-list li{position:relative;padding-left:18px;color:#33435c;font-weight:750}.health-list li:before{position:absolute;top:.65em;left:0;width:7px;height:7px;border-radius:999px;background:#1a9b82;content:""}.table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.compact-table table{min-width:440px}table{width:100%;min-width:600px;border-collapse:collapse;font-size:14px}th,td{padding:12px 10px;border-bottom:1px solid #d8e3f3;text-align:left;vertical-align:top;overflow-wrap:anywhere}th{color:#667590;font-size:12px;letter-spacing:.08em;text-transform:uppercase}td{color:#24324a;font-weight:700}.section-stack{display:grid;gap:18px}.section-header{display:grid;max-width:760px;gap:6px}.project-grid,.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.project-card{display:grid;gap:12px;padding:18px;border-radius:20px}.project-card h3,.session-card h3{margin:0;color:#172033;font-size:17px}.project-card p,.session-card p{margin:0;color:#5d6d86;font-weight:650}.project-card dl{display:grid;gap:8px;margin:0}.project-card dt{color:#667590;font-size:12px;font-weight:900;text-transform:uppercase}.project-card dd{margin:0;color:#24324a;font-weight:750}.pagination{display:flex;gap:12px;align-items:center;justify-content:flex-end}.pagination button{padding:10px 14px;border:1px solid #cbd9ed;border-radius:999px;color:#0f4aa8;background:#fff;font-weight:900}.pagination button:disabled{cursor:not-allowed;opacity:.45}.session-list{display:grid;gap:12px}.session-card{display:flex;justify-content:space-between;gap:16px;padding:16px;border-radius:18px}.session-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.session-tags span,.safe-notes span{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border-radius:999px;color:#0f4aa8;background:#eaf2ff;font-size:12px;font-weight:900;line-height:1.25;text-align:center}.operation-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,#2f66dc,#188c7a);font-weight:900}.safe-notes{display:flex;flex-wrap:wrap;gap:8px}.analytics-v2-grid .technical-notes,.comparison-panel{grid-column:1 / -1}.comparison-stack{display:grid;gap:14px}.comparison-list{display:grid;gap:10px}.comparison-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(260px,2fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid #dbe6f7;border-radius:14px;background:#f8fbff}.comparison-row.positive{border-color:#b9dfd7;background:#f3fbf9}.comparison-row.negative{border-color:#f1d49a;background:#fff9ed}.comparison-row>div:first-child{display:grid;gap:2px}.comparison-row span{color:#5d6d86;font-size:12px;font-weight:900;text-transform:uppercase}.comparison-row strong{color:#172033;font-size:22px;line-height:1.1}.comparison-row dl{display:grid;grid-template-columns:repeat(3,minmax(88px,1fr));gap:10px;margin:0}.comparison-row dt{color:#667590;font-size:11px;font-weight:900;text-transform:uppercase}.comparison-row dd{margin:1px 0 0;color:#24324a;font-weight:850}.comparison-direction{display:inline-flex;min-width:78px;justify-content:center;padding:7px 10px;border-radius:999px;color:#0f4aa8;background:#eaf2ff;font-size:12px;font-weight:900}.comparison-direction.up{color:#147a6d;background:#dff6f0}.comparison-direction.down,.comparison-direction.negative{color:#9a5600;background:#fff2d6}.comparison-direction.context{color:#0f4aa8;background:#eaf2ff}.comparison-direction.neutral{color:#53627d;background:#edf2fa}.comparison-notes{display:grid;gap:8px;margin:0;padding:0 0 0 18px;color:#5d6d86;font-weight:750}.attention-item{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:start;padding:14px;border:1px solid #dbe6f7;border-radius:16px;background:#f8fbff}.attention-item.warning{border-color:#f1d49a;background:#fff9ed}.attention-item.critical{border-color:#f1b6bd;background:#fff5f6}.attention-item strong{color:#172033}.attention-item p,.empty-copy{margin:4px 0 0;color:#5d6d86;font-weight:700}.attention-item span{display:inline-flex;min-width:48px;justify-content:center;padding:7px 10px;border-radius:999px;color:#0f4aa8;background:#eaf2ff;font-size:12px;font-weight:900}.capability-list,.expandable-list{display:grid;gap:12px}.capability-row,.expandable-item{display:grid;border:1px solid #dbe6f7;border-radius:14px;background:#fff;overflow:hidden}.capability-row summary,.expandable-item summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px 16px;color:#172033;cursor:pointer;font-weight:900;list-style:none}.capability-row summary::-webkit-details-marker,.expandable-item summary::-webkit-details-marker{display:none}.capability-row summary:after,.expandable-item summary:after{content:"+";color:#0f4aa8;font-size:18px;font-weight:900}.capability-row[open] summary:after,.expandable-item[open] summary:after{content:"-"}.capability-row span,.operation-icon{width:fit-content;padding:5px 8px;border-radius:999px;color:#0f4aa8;background:#eaf2ff;font-size:11px;font-weight:900;text-transform:uppercase}.operation-icon{display:inline-grid;min-width:25px;place-items:center;text-transform:none}.capability-row.blocked span{color:#9a5600;background:#fff2d6}.capability-row strong,.expandable-item strong{color:#172033}.expandable-body{display:grid;gap:8px;padding:0 16px 16px}.expandable-body p,.expandable-body small{margin:0;color:#5d6d86;font-weight:700}.expandable-body small{color:#7c6270}.readonly-notice{margin:0;padding:10px 13px;border:1px solid #d8e4f5;border-radius:12px;color:#53627d;background:#f7faff;font-size:13px;font-weight:800}.admin-toolbar,.admin-actions,.project-access-row{display:flex;gap:12px;align-items:center;justify-content:space-between}.admin-toolbar span,.admin-actions span,.admin-detail p,.project-access-row small{color:#667590;font-size:13px;font-weight:700}.admin-toolbar button,.admin-form button,.admin-actions button,.admin-profile-form button,.activation-form button{padding:10px 14px;border:0;border-radius:12px;color:#fff;background:#245ed0;font-weight:850}.admin-profile-form,.activation-form,.delete-invite-form{display:grid;gap:12px;padding:14px;border:1px solid #d8e4f5;border-radius:16px;background:#f8fbff}.admin-profile-form button,.activation-form button,.delete-invite-form button{justify-self:start}.admin-profile-form button:disabled,.activation-form button:disabled,.delete-invite-form button:disabled{cursor:not-allowed;opacity:.5}.activation-form strong{color:#24324a}.activation-form p,.delete-invite-form p{margin:0}.activation-buttons,.invited-actions{display:flex;gap:10px;flex-wrap:wrap}.activation-form button.secondary,.delete-invite-form button.secondary{color:#245ed0;background:#eaf2ff}.delete-invite-form{border-color:#f1c3c8;background:#fff8f8}.delete-invite-form button.danger,.admin-actions button.danger{background:#b83c49}.admin-form{display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:10px;padding:16px;border:1px solid #d8e4f5;border-radius:18px;background:#f8fbff}.admin-form input,.admin-form select,.admin-detail input,.admin-detail select,.project-access-row select{min-height:42px;padding:0 12px;border:1px solid #cbd9ed;border-radius:12px;background:#fff}.admin-message{margin:0;padding:11px 14px;border-radius:12px;font-weight:800}.admin-message.success{color:#17664f;background:#eaf8f2}.admin-message.error{color:#9c2f3c;background:#fff0f1}.admin-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.6fr);gap:16px}.admin-user-list,.admin-detail{display:grid;align-content:start;gap:10px;padding:14px;border:1px solid #dbe6f7;border-radius:20px;background:#fff}.admin-user-row{display:grid;gap:3px;padding:12px;border:1px solid transparent;border-radius:13px;color:#24324a;background:#f6f9fe;text-align:left}.admin-user-row.active{border-color:#8cb0ec;background:#eaf2ff}.admin-user-row span,.admin-user-row small{color:#667590;overflow-wrap:anywhere}.admin-detail label{display:grid;gap:6px;color:#40506b;font-size:13px;font-weight:850}.admin-detail h3,.admin-detail h4{margin:0}.admin-detail p{margin:4px 0 0}.project-access-row{padding:10px 0;border-top:1px solid #edf2fa}.project-access-row span{display:grid}.technical-notes{display:grid;gap:10px;padding:14px 16px;border:1px solid #dbe6f7;border-radius:16px;background:#f7faff}.technical-notes>strong{color:#53627d;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.state-card{margin:28px;padding:24px;border-radius:22px}.state-card.error{border-color:#ffcabf;background:#fff7f5}@media(max-width:1120px){.console-shell{grid-template-columns:1fr}.sidebar{position:static;min-height:0}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid,.metrics,.project-grid,.access-grid,.admin-form{grid-template-columns:1fr 1fr}}@media(max-width:760px){.console-shell{width:min(100vw - 16px,100%);gap:14px;margin:8px auto}.sidebar{padding:20px;border-radius:24px}.topbar,.content-grid,.metrics,.project-grid,.access-grid{grid-template-columns:1fr}.toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar:not(.custom-period) input[type=search]{grid-column:1 / -1}.admin-layout,.admin-form{grid-template-columns:1fr}.admin-toolbar,.project-access-row{align-items:stretch;flex-direction:column}.topbar,.toolbar,.content-grid,.section-stack{padding:20px}.topbar{gap:18px}.topbar h1{font-size:24px;line-height:1.08;letter-spacing:0}.intro,.panel p,.section-header p{font-size:15px;line-height:1.45}.health-pill{width:100%;justify-content:flex-start;white-space:normal}.session-card{flex-direction:column}.attention-item,.comparison-row,.depth-row,.comparison-row dl{grid-template-columns:1fr}.comparison-direction{justify-self:start}.session-tags{justify-content:flex-start}table,.compact-table table{min-width:0;table-layout:fixed}th,td{padding:10px 8px;font-size:12px;line-height:1.35}}@media(max-width:420px){body{background:#eef5ff}.console-shell{width:100%;margin:0}.sidebar,.main-card{border-right:0;border-left:0;border-radius:0}.sidebar{padding:18px}.brand{gap:12px}.brand-mark{width:44px;height:44px;flex:0 0 44px}.nav{grid-template-columns:1fr}.nav-item{min-height:44px;padding:11px 12px}.topbar,.toolbar,.content-grid,.section-stack{padding:16px}.toolbar{grid-template-columns:1fr;gap:10px}.date-range-controls{grid-template-columns:1fr}.metric-card,.panel{padding:18px;border-radius:18px}.metric-card strong{font-size:32px;letter-spacing:0}.panel h2,.section-header h2,.state-card h2{font-size:21px;line-height:1.14;letter-spacing:0}.trend-row{grid-template-columns:76px minmax(0,1fr);gap:10px}.trend-row strong{grid-column:1 / -1;justify-self:start}.health-list li{overflow-wrap:anywhere}.comparison-row{gap:12px;padding:13px}.comparison-row strong{font-size:24px}.comparison-row dl{gap:8px}.comparison-notes{padding-left:16px;overflow-wrap:anywhere}}@media(max-width:360px){.topbar,.toolbar,.content-grid,.section-stack{padding:14px}.metric-card,.panel{padding:16px}.brand-title{font-size:15px}.brand-subtitle{font-size:11px}.topbar h1{font-size:22px}}
