:root{--bg:#f6f7fb;--surface:#fff;--surface-2:#f9fafc;--text:#171a24;--muted:#6e7484;--border:#e7e9f0;--primary:#5b5bd6;--primary-2:#7357e8;--primary-soft:#eeeeff;--success:#15835d;--success-soft:#e9f8f1;--warning:#a86b08;--warning-soft:#fff6df;--danger:#c33c4a;--danger-soft:#fff0f1;--shadow:0 10px 30px rgba(23,26,36,.06);--radius:18px;--sidebar:248px}
html[data-theme="dark"]{--bg:#0f1117;--surface:#171a22;--surface-2:#1c202a;--text:#f4f5f8;--muted:#9aa1b2;--border:#292e3a;--primary:#8585ff;--primary-2:#9b7cff;--primary-soft:#25254b;--success:#50c798;--success-soft:#183229;--warning:#e5ad4e;--warning-soft:#332918;--danger:#ef7581;--danger-soft:#3b2025;--shadow:0 14px 34px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}.muted{color:var(--muted)}.w-full{width:100%}.span-2{grid-column:span 2}.positive{color:var(--success)!important}.negative{color:var(--danger)!important}.eyebrow{display:block;color:var(--primary);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:800;letter-spacing:-.03em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 8px 18px rgba(91,91,214,.24)}
.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;padding:10px 14px;font-weight:700;cursor:pointer;transition:.18s ease;background:transparent}.btn svg,.icon-btn svg,.nav-link svg{width:18px;height:18px}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:wait;transform:none}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:0 8px 18px rgba(91,91,214,.18)}.btn-ghost{border-color:var(--border);background:var(--surface);color:var(--text)}.btn-light{background:#fff;color:#23243a}.btn-lg{padding:13px 18px;border-radius:13px}.btn-sm{padding:7px 10px;font-size:12px}.icon-btn{width:38px;height:38px;border:1px solid var(--border);background:var(--surface);border-radius:11px;display:grid;place-items:center;cursor:pointer}.icon-btn:hover{background:var(--surface-2)}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.card-head h2{font-size:18px;margin:0;letter-spacing:-.025em}.card-head a{color:var(--primary);font-weight:700;font-size:12px}.pill{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;text-transform:capitalize}.pill.success{color:var(--success);background:var(--success-soft)}.pill.warning{color:var(--warning);background:var(--warning-soft)}.pill.danger{color:var(--danger);background:var(--danger-soft)}.pill.neutral{color:var(--muted);background:var(--surface-2);border:1px solid var(--border)}.progress{height:7px;border-radius:999px;background:var(--surface-2);overflow:hidden;border:1px solid var(--border)}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-2));border-radius:inherit}
.public-body{background:var(--surface)}.public-nav{max-width:1180px;margin:auto;height:76px;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.public-nav nav{display:flex;align-items:center;gap:26px}.public-nav nav>a:not(.btn){font-weight:600;color:var(--muted)}.landing{overflow:hidden}.hero{max-width:1180px;margin:0 auto;padding:88px 24px 74px;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.badge{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;color:var(--primary);font-weight:700;background:var(--primary-soft);font-size:12px}.badge svg{width:14px}.hero h1{font-size:55px;line-height:1.04;letter-spacing:-.055em;margin:20px 0}.hero h1 span{color:var(--primary)}.hero-copy>p{font-size:18px;line-height:1.65;color:var(--muted);max-width:650px}.hero-actions,.hero-proof{display:flex;gap:12px;align-items:center;margin-top:28px}.hero-proof{gap:22px;color:var(--muted);font-size:12px}.hero-proof span{display:flex;align-items:center;gap:6px}.hero-proof svg{width:15px;color:var(--success)}.hero-demo{padding:24px;min-height:440px;transform:rotate(1deg);box-shadow:0 40px 80px rgba(40,42,75,.15)}.demo-top{display:flex;justify-content:space-between;font-weight:800}.status-dot{font-size:11px;padding:6px 9px;background:var(--success-soft);color:var(--success);border-radius:999px}.demo-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}.demo-metrics>div{padding:16px;border-radius:14px;background:var(--surface-2);border:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.demo-metrics small,.demo-metrics span{color:var(--muted);font-size:10px}.demo-metrics strong{font-size:24px}.demo-chart{height:150px;display:flex;align-items:flex-end;gap:9px;padding:20px 8px;border-bottom:1px solid var(--border)}.demo-chart span{flex:1;background:linear-gradient(180deg,var(--primary),var(--primary-2));border-radius:7px 7px 2px 2px;opacity:.85}.demo-task{display:flex;align-items:center;gap:12px;margin-top:22px;padding:15px;border-radius:14px;background:var(--surface-2)}.demo-task>div{flex:1;display:flex;flex-direction:column}.demo-task span{font-size:11px;color:var(--muted)}.logos{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:24px;text-align:center;color:var(--muted)}.logos>span{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.logos>div{display:flex;justify-content:center;flex-wrap:wrap;gap:34px;margin-top:16px;color:var(--text)}.section{max-width:1180px;margin:auto;padding:90px 24px}.section-head{max-width:680px;margin-bottom:42px}.section-head h2{font-size:38px;line-height:1.12;letter-spacing:-.04em;margin:8px 0 14px}.section-head p{color:var(--muted);font-size:16px;line-height:1.6}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature-card{padding:24px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.feature-icon{width:42px;height:42px;border-radius:12px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}.feature-icon svg{width:20px}.feature-card h3{margin:18px 0 8px;font-size:16px}.feature-card p{margin:0;color:var(--muted);line-height:1.55}.workflow{background:var(--surface-2);max-width:none;padding-left:max(24px,calc((100vw - 1132px)/2));padding-right:max(24px,calc((100vw - 1132px)/2))}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.step{padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:16px;display:flex;flex-direction:column;gap:20px}.step span{width:28px;height:28px;border-radius:9px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-weight:800}.cta-band{max-width:1132px;margin:80px auto;padding:44px;border-radius:24px;background:linear-gradient(135deg,#383879,#7053d3);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-band h2{font-size:34px;letter-spacing:-.04em;margin:5px 0}.cta-band p{opacity:.8;max-width:650px}.cta-band .eyebrow{color:#c7c8ff}.footer{max-width:1180px;margin:auto;padding:30px 24px 46px;border-top:1px solid var(--border);display:flex;justify-content:space-between;color:var(--muted);font-size:12px}
.auth-shell,.onboarding-shell{min-height:100vh;display:grid;place-items:center;padding:80px 20px;position:relative;background:radial-gradient(circle at top left,var(--primary-soft),transparent 35%),var(--bg)}.auth-brand,.onboarding-shell>.brand{position:absolute;top:28px;left:32px}.auth-card,.onboarding-card{width:min(460px,100%);padding:34px;background:var(--surface);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}.auth-wide .auth-card{width:min(620px,100%)}.auth-card h1,.onboarding-card h1{margin:5px 0 8px;font-size:28px;letter-spacing:-.04em}.auth-card>div>p,.onboarding-card>p{color:var(--muted);margin:0 0 25px;line-height:1.55}.form-stack{display:flex;flex-direction:column;gap:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-stack label,.form-grid label,.onboarding-form label{font-size:12px;font-weight:700;color:var(--text);display:flex;flex-direction:column;gap:7px}input,select,textarea{width:100%;border:1px solid var(--border);background:var(--surface-2);color:var(--text);padding:11px 12px;border-radius:10px;outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}textarea{resize:vertical}.form-row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.check{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;color:var(--muted)!important}.check input{width:auto}.form-row a,.auth-switch a{color:var(--primary);font-weight:700}.auth-switch{text-align:center;color:var(--muted);margin:22px 0 0}.demo-login{margin-top:20px;padding:12px;border-radius:12px;background:var(--surface-2);border:1px dashed var(--border);display:flex;justify-content:space-between;gap:10px;font-size:11px}.demo-login span{color:var(--muted)}.alert{padding:12px 14px;border-radius:11px;margin:18px 0}.alert.danger{background:var(--danger-soft);color:var(--danger)}.onboarding-card{width:min(820px,100%)}.onboarding-form section{padding:22px 0;border-top:1px solid var(--border)}.onboarding-form h2{font-size:16px}.progress-dots{display:flex;gap:6px;margin-bottom:20px}.progress-dots span{height:4px;flex:1;background:var(--border);border-radius:10px}.progress-dots span.active{background:var(--primary)}.availability-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.availability-grid label{padding:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px}.availability-grid input{padding:8px}.availability-grid small{color:var(--muted)}.chip-wrap{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);display:flex;align-items:center;gap:6px;font-size:11px}.chip svg{width:13px}
.app-body{min-height:100vh}.app-shell{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--surface);border-right:1px solid var(--border);padding:20px 14px;display:flex;flex-direction:column;z-index:40}.brand-row{display:flex;align-items:center;justify-content:space-between;padding:0 8px 16px}.sidebar-close,.mobile-menu{display:none}.side-nav{display:flex;flex-direction:column;gap:3px;overflow:auto;padding-right:2px}.nav-link{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:10px;color:var(--muted);font-weight:600;font-size:12px}.nav-link:hover{background:var(--surface-2);color:var(--text)}.nav-link.active{background:var(--primary-soft);color:var(--primary)}.sidebar-foot{margin-top:auto;border-top:1px solid var(--border);padding-top:12px}.user-mini{display:flex;align-items:center;gap:10px;padding:9px}.user-mini>div:last-child{min-width:0;display:flex;flex-direction:column}.user-mini strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-mini span{font-size:9px;color:var(--muted)}.avatar{width:34px;height:34px;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-weight:800}.main-wrap{grid-column:2;min-width:0}.topbar{height:78px;position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:0 30px;display:flex;align-items:center;justify-content:space-between}.topbar-left{display:flex;align-items:center;gap:14px}.topbar h1{margin:0;font-size:20px;letter-spacing:-.03em}.topbar p{margin:3px 0 0;color:var(--muted);font-size:11px}.top-actions{display:flex;align-items:center;gap:8px}.content{padding:28px 30px 60px;max-width:1520px;margin:0 auto}.metric-grid{display:grid;gap:14px;margin-bottom:18px}.metric-grid.four{grid-template-columns:repeat(4,1fr)}.metric-grid.three{grid-template-columns:repeat(3,1fr)}.metric-card{padding:19px;background:var(--surface);border:1px solid var(--border);border-radius:16px}.metric-head{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;font-weight:700}.metric-head svg{width:17px}.metric-card>strong{display:block;font-size:27px;margin:12px 0 1px;letter-spacing:-.04em}.metric-card>p{margin:0 0 15px;color:var(--muted);font-size:10px}.metric-card>small{display:block;color:var(--muted);font-size:10px;margin-top:9px}.metric-note{font-size:10px;margin-top:18px;display:flex;align-items:center;gap:5px}.metric-note svg{width:13px}.dashboard-grid{display:grid;grid-template-columns:1.45fr .85fr;gap:16px}.dashboard-grid>.card{padding:22px}.chart-card{min-height:350px}.chart-box{height:270px;position:relative}.execution-card{min-height:350px}.score-ring{--score:0;width:68px;height:68px;border-radius:50%;display:grid;place-items:center;font-size:19px;font-weight:800;background:conic-gradient(var(--primary) calc(var(--score)*1%),var(--border) 0);position:relative}.score-ring:before{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--surface)}.score-ring{isolation:isolate}.score-ring{color:var(--text)}.score-ring::after{content:attr(style);display:none}.score-ring{z-index:1}.score-ring{font-variant-numeric:tabular-nums}.score-ring>*{z-index:2}.score-ring{box-shadow:inset 0 0 0 6px var(--surface)}.score-list{display:flex;flex-direction:column;gap:16px;margin-top:25px}.score-list>div{display:grid;grid-template-columns:100px 1fr 32px;gap:10px;align-items:center;font-size:11px}.score-list strong{text-align:right}.command-card{grid-row:span 1}.command-list{display:flex;flex-direction:column}.command-list>div{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--border)}.command-list>div:first-child{border-top:0}.command-icon{width:34px;height:34px;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}.command-icon svg{width:16px}.command-list>div>div{display:flex;flex-direction:column;gap:2px}.command-list small,.command-list span{color:var(--muted);font-size:10px}.review-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.review-stats>div{padding:16px;border:1px solid var(--border);background:var(--surface-2);border-radius:13px;display:flex;flex-direction:column;gap:5px}.review-stats strong{font-size:22px}.review-stats span{font-size:10px;color:var(--muted)}
.today-hero{padding:22px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.today-hero h2{font-size:27px;margin:4px 0}.today-hero p{margin:0;color:var(--muted)}.load-status{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:var(--success-soft);color:var(--success)}.load-status.over{background:var(--danger-soft);color:var(--danger)}.load-status svg{width:20px}.load-status div{display:flex;flex-direction:column}.load-status span{font-size:10px;opacity:.75}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stack{display:flex;flex-direction:column;gap:16px}.two-col>.card,.stack>.card{padding:22px}.task-list{display:flex;flex-direction:column}.task-item{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--border)}.task-item:first-child{border-top:0}.task-item.completed{opacity:.58}.task-check{border:0;background:transparent;color:var(--primary);padding:0;cursor:pointer}.task-check svg{width:21px}.task-main{flex:1}.task-main>div{display:flex;align-items:center;gap:7px}.task-main p{margin:4px 0;color:var(--muted);font-size:11px}.task-main small{color:var(--muted);font-size:10px}.task-actions{display:flex;gap:5px}.simple-list>div{padding:12px 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.simple-list>div:first-child{border:0}.simple-list span{display:flex;flex-direction:column}.simple-list small{color:var(--muted);font-size:10px}.timer-display{font-size:43px;letter-spacing:-.04em;font-weight:800;text-align:center;padding:28px 0;font-variant-numeric:tabular-nums}.timer-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.empty{padding:38px 20px;text-align:center;color:var(--muted)}.empty.compact{padding:10px}.empty svg{width:32px;color:var(--primary);margin-bottom:8px}.empty h3{color:var(--text);margin:5px}.empty p{margin:5px auto;max-width:480px;font-size:11px;line-height:1.5}
.week-board{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day-column{min-height:300px;border:1px solid var(--border);background:var(--surface-2);border-radius:14px;padding:10px;display:flex;flex-direction:column}.day-column.today{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.day-head{display:flex;flex-direction:column;gap:2px;padding:4px}.day-head strong{font-size:12px}.day-head span,.day-head small{font-size:9px;color:var(--muted)}.day-items{display:flex;flex-direction:column;gap:6px;margin:12px 0}.plan-chip{padding:9px;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:grid;grid-template-columns:1fr auto;gap:3px}.plan-chip strong{font-size:10px}.plan-chip span,.plan-chip small{font-size:8px;color:var(--muted)}.plan-chip small{grid-column:1/-1}.add-plan{margin-top:auto;border:1px dashed var(--border);background:transparent;border-radius:9px;padding:7px;color:var(--muted);font-size:9px;cursor:pointer}.add-plan svg{width:12px;vertical-align:middle}.planning-bottom{margin-top:16px}.rule-list{display:flex;flex-direction:column;gap:4px}.rule-list>div{display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--border)}.rule-list>div:first-child{border:0}.rule-list svg{width:18px;color:var(--primary)}.rule-list span{display:flex;flex-direction:column;gap:3px}.rule-list small{color:var(--muted);font-size:10px}.info-box{display:flex;gap:10px;padding:13px;margin-top:18px;background:var(--primary-soft);color:var(--primary);border-radius:12px}.info-box svg{width:18px;flex:none}.info-box p{margin:0;font-size:10px;line-height:1.45}.review-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.mini-stat{padding:17px;border:1px solid var(--border);border-radius:14px;background:var(--surface);display:flex;flex-direction:column}.mini-stat strong{font-size:24px}.mini-stat span{font-size:10px;color:var(--muted)}.mini-stat.danger strong{color:var(--danger)}.mini-stat.warning strong{color:var(--warning)}.review-list{display:flex;flex-direction:column}.review-row{display:flex;align-items:center;gap:13px;padding:12px 0;border-top:1px solid var(--border)}.review-row:first-child{border:0}.date-badge{width:43px;height:46px;border-radius:11px;background:var(--surface-2);border:1px solid var(--border);display:grid;place-items:center;align-content:center}.date-badge.late{background:var(--danger-soft);color:var(--danger)}.date-badge strong{font-size:16px}.date-badge span{font-size:8px}.review-main{flex:1;display:flex;flex-direction:column;gap:3px}.review-main span{font-size:10px;color:var(--muted)}.review-actions{display:flex;gap:5px;align-items:center}
.filter-bar{display:flex;gap:7px;margin-bottom:14px}.pill-btn{border:1px solid var(--border);background:var(--surface);color:var(--muted);padding:7px 11px;border-radius:999px;font-size:10px;font-weight:700;cursor:pointer}.pill-btn.active{background:var(--primary-soft);color:var(--primary);border-color:transparent}.matrix-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.matrix-cell{padding:17px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2);display:flex;flex-direction:column;gap:5px}.matrix-cell span{font-size:11px;font-weight:800}.matrix-cell p{margin:0;color:var(--muted);font-size:10px}.matrix-cell.good span{color:var(--success)}.matrix-cell.warning span{color:var(--warning)}.matrix-cell.info span{color:var(--primary)}.matrix-cell.danger span{color:var(--danger)}.subject-performance{margin-top:22px;display:flex;flex-direction:column;gap:10px}.subject-performance>div{display:grid;grid-template-columns:115px 1fr 38px 80px;gap:10px;align-items:center;font-size:10px}.subject-performance small{color:var(--muted)}.topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.topic-card{padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2);display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.topic-card>div{display:flex;flex-direction:column}.topic-card>div span,.topic-card small{font-size:9px;color:var(--muted)}.topic-card b{font-size:18px}.subject-cards,.platform-grid,.integration-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.subject-card,.platform-card,.integration-card{padding:20px}.subject-card-top{display:flex;justify-content:space-between;align-items:center}.subject-icon,.platform-logo{width:40px;height:40px;border-radius:12px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}.subject-card h2,.platform-card h2{font-size:17px}.subject-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.platform-card .subject-metrics{grid-template-columns:repeat(3,1fr)}.subject-metrics>div{display:flex;flex-direction:column;padding:10px;background:var(--surface-2);border-radius:10px}.subject-metrics strong{font-size:13px}.subject-metrics span{font-size:8px;color:var(--muted)}.subject-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:14px;margin-top:14px;color:var(--muted);font-size:9px}.subject-foot a{color:var(--primary);font-weight:700;display:flex;gap:4px}.subject-foot svg{width:12px}.platform-card{display:flex;flex-direction:column;gap:8px}.integration-grid{margin:0 0 16px}.integration-card{display:flex;align-items:center;gap:13px}.integration-card>div:nth-child(2){flex:1}.integration-card h2{margin:0 0 4px}.integration-card p{margin:0;color:var(--muted);font-size:10px}.narrow-card{max-width:640px;padding:22px}.table-card{padding:20px;margin-top:16px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--border);font-size:10px}th{color:var(--muted);background:var(--surface-2);font-size:9px;text-transform:uppercase;letter-spacing:.06em}tbody tr:last-child td{border-bottom:0}.essay-bars{display:flex;flex-direction:column;gap:13px}.essay-bars>div{display:grid;grid-template-columns:40px 1fr 50px;gap:9px;align-items:center;font-size:10px}.pending-list{display:flex;flex-direction:column}.pending-row{display:grid;grid-template-columns:4px 1fr auto auto;gap:12px;align-items:center;padding:13px 0;border-top:1px solid var(--border)}.pending-row:first-child{border:0}.pending-row>div{display:flex;flex-direction:column}.pending-row>div span{font-size:10px;color:var(--muted)}.priority-line{width:4px;height:38px;border-radius:99px;background:var(--border)}.priority-line.high{background:var(--danger)}.priority-line.medium{background:var(--warning)}.priority-line.low{background:var(--success)}
.calendar-head{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:20px}.calendar-head h2{min-width:220px;text-align:center}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--border);border-radius:14px;overflow:hidden}.weekday{padding:10px;text-align:center;background:var(--surface-2);color:var(--muted);font-size:9px;font-weight:800}.day-cell{min-height:115px;padding:9px;border-top:1px solid var(--border);border-right:1px solid var(--border)}.day-cell:nth-child(7n){border-right:0}.day-cell>strong{font-size:10px}.day-cell.current-day{background:var(--primary-soft)}.empty-day{background:var(--surface-2)}.calendar-events{display:flex;flex-direction:column;gap:4px;margin-top:8px}.event-dot{font-size:8px;padding:4px 6px;border-radius:6px;background:var(--surface-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-dot.study{border-left:3px solid var(--primary)}.event-dot.review{border-left:3px solid var(--warning)}.theme-choice{display:flex;gap:8px}.notification-list{padding:20px}.notification-row{display:flex;gap:12px;padding:15px 0;border-top:1px solid var(--border)}.notification-row:first-child{border-top:0}.notification-row.read{opacity:.6}.notification-icon{width:36px;height:36px;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}.notification-row>div{display:flex;flex-direction:column;gap:4px}.notification-row p{margin:0;color:var(--muted);font-size:11px}.notification-row small{color:var(--muted);font-size:9px}
.modal{position:fixed;inset:0;background:rgba(8,10,16,.45);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;z-index:100;transition:.18s}.modal.open{opacity:1;pointer-events:auto}.modal-card{width:min(620px,100%);background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:22px;box-shadow:0 30px 80px rgba(0,0,0,.28);transform:translateY(8px);transition:.18s}.modal.open .modal-card{transform:none}.modal-sm{max-width:480px}.modal-head{display:flex;justify-content:space-between;gap:15px}.modal-head h2{font-size:18px;margin:0}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.quick-grid a{padding:14px;border:1px solid var(--border);border-radius:12px;display:flex;align-items:center;gap:9px;background:var(--surface-2);font-weight:700;font-size:11px}.quick-grid a:hover{border-color:var(--primary);color:var(--primary)}.quick-grid svg{width:17px}.toast-wrap{position:fixed;right:18px;bottom:18px;z-index:200;display:flex;flex-direction:column;gap:8px}.toast{padding:11px 14px;border-radius:11px;background:#18211d;color:#e9fff4;box-shadow:0 16px 35px rgba(0,0,0,.22);font-size:11px;transform:translateY(10px);opacity:0;transition:.2s}.toast.error{background:#3c1e22;color:#ffeef0}.toast.show{transform:none;opacity:1}.sidebar-backdrop{display:none}
@media(max-width:1100px){.metric-grid.four{grid-template-columns:repeat(2,1fr)}.week-board{overflow:auto;grid-template-columns:repeat(7,150px)}.subject-cards,.platform-grid,.integration-grid{grid-template-columns:repeat(2,1fr)}.topic-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;padding-top:55px}.hero-copy{text-align:center}.hero-copy>p{margin:auto}.hero-actions,.hero-proof{justify-content:center}.hero-demo{max-width:650px;margin:auto;width:100%;transform:none}.feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){:root{--sidebar:260px}.app-shell{display:block}.sidebar{transform:translateX(-105%);transition:.22s;box-shadow:20px 0 60px rgba(0,0,0,.15)}.sidebar-open .sidebar{transform:none}.sidebar-close,.mobile-menu{display:grid}.sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:35;opacity:0;pointer-events:none}.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}.main-wrap{width:100%}.topbar{padding:0 16px;height:68px}.topbar p{display:none}.top-actions .btn span{display:none}.content{padding:18px 14px 50px}.dashboard-grid,.two-col{grid-template-columns:1fr}.metric-grid.four,.metric-grid.three{grid-template-columns:1fr 1fr}.review-summary{grid-template-columns:1fr 1fr}.availability-grid{grid-template-columns:repeat(4,1fr)}.public-nav nav>a:not(.btn){display:none}.public-nav{height:68px}.hero{padding:52px 20px}.hero h1{font-size:40px}.feature-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.cta-band{margin:45px 16px;padding:30px;flex-direction:column;align-items:flex-start}.section{padding:60px 20px}.section-head h2{font-size:31px}.month-grid{overflow:auto;grid-template-columns:repeat(7,125px)}.subject-cards,.platform-grid,.integration-grid{grid-template-columns:1fr}.footer{margin:0 16px;flex-direction:column;gap:8px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.quick-grid{grid-template-columns:1fr}.subject-performance>div{grid-template-columns:90px 1fr 35px}.subject-performance small{display:none}}
@media(max-width:520px){.metric-grid.four,.metric-grid.three{grid-template-columns:1fr}.review-summary{grid-template-columns:1fr 1fr}.today-hero{align-items:flex-start;flex-direction:column;gap:16px}.load-status{width:100%}.timer-actions{grid-template-columns:1fr}.hero h1{font-size:34px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.hero-proof{flex-direction:column;gap:8px}.demo-metrics{grid-template-columns:1fr}.hero-demo{min-height:auto}.logos>div{gap:16px}.steps{grid-template-columns:1fr}.availability-grid{grid-template-columns:repeat(2,1fr)}.matrix-grid,.topic-grid{grid-template-columns:1fr}.auth-card,.onboarding-card{padding:24px}.auth-brand,.onboarding-shell>.brand{left:20px}.top-actions>.icon-btn:nth-of-type(2){display:none}.review-row{align-items:flex-start}.review-actions{flex-direction:column}.pending-row{grid-template-columns:4px 1fr auto}.pending-row .btn{grid-column:2/4}.subject-metrics{grid-template-columns:1fr 1fr}}
.inline-actions{display:flex;align-items:center;gap:7px}.text-btn{border:0;background:transparent;color:var(--primary);font-size:9px;font-weight:700;padding:0;cursor:pointer}.danger-text{color:var(--danger)}.danger-button{border-color:color-mix(in srgb,var(--danger) 30%,var(--border));color:var(--danger)}.platform-card-head{display:flex;align-items:center;justify-content:space-between}.platform-card-head .icon-btn{width:32px;height:32px}.platform-card-head .icon-btn svg{width:14px}.platform-subjects{min-height:32px;font-size:10px;line-height:1.5}
.global-search{width:260px;height:38px;border:1px solid var(--border);background:var(--surface);border-radius:11px;display:flex;align-items:center;padding:0 10px;margin-right:10px}.global-search svg{width:15px;color:var(--muted)}.global-search input{border:0;background:transparent;padding:8px;box-shadow:none}.search-page{display:flex;gap:8px;align-items:center;padding:20px}.search-page>svg{width:20px;color:var(--muted)}.search-results{padding:0 20px 20px}.search-results>div{display:flex;align-items:center;gap:12px;border-top:1px solid var(--border);padding:13px 0}.search-results>div>div{display:flex;flex-direction:column;gap:3px}.search-results span{font-size:9px;color:var(--muted)}.heatmap{display:grid;grid-template-columns:repeat(18,1fr);gap:5px}.heat{aspect-ratio:1;border-radius:3px;background:var(--surface-2);border:1px solid var(--border)}.heat.level-1{background:color-mix(in srgb,var(--primary) 25%,var(--surface))}.heat.level-2{background:color-mix(in srgb,var(--primary) 45%,var(--surface))}.heat.level-3{background:color-mix(in srgb,var(--primary) 68%,var(--surface))}.heat.level-4{background:var(--primary)}
@media(max-width:1000px){.global-search{display:none}}@media(max-width:520px){.heatmap{grid-template-columns:repeat(15,1fr)}}
.plan-chip{position:relative}.plan-remove{position:absolute;right:5px;bottom:5px;border:0;background:transparent;color:var(--muted);padding:1px;cursor:pointer}.plan-remove svg{width:11px}.availability-save{grid-column:span 7}.task-actions{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:800px){.availability-save{grid-column:span 4}}@media(max-width:520px){.availability-save{grid-column:span 2}.task-actions{max-width:86px}}
.notification-button{position:relative}.notification-count{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;border-radius:999px;padding:0 4px;background:var(--danger);color:#fff;font-size:8px;font-weight:800;display:grid;place-items:center}.notification-head{padding:20px 20px 0}

/* =========================================================
   NEXO FOCUS · PREMIUM UI V2
   Microinterações, primeiro acesso guiado e modo foco.
   ========================================================= */
:root{
  --premium-shadow:0 18px 50px rgba(32,34,74,.075),0 2px 10px rgba(32,34,74,.035);
  --premium-shadow-hover:0 26px 70px rgba(34,35,82,.11),0 4px 16px rgba(34,35,82,.05);
  --glow:rgba(91,91,214,.17);
}
html[data-theme="dark"]{--premium-shadow:0 20px 55px rgba(0,0,0,.3);--premium-shadow-hover:0 28px 76px rgba(0,0,0,.38);--glow:rgba(133,133,255,.18)}
::selection{background:color-mix(in srgb,var(--primary) 24%,transparent);color:var(--text)}
body{letter-spacing:-.008em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.app-body{background:
 radial-gradient(circle at 76% -10%,color-mix(in srgb,var(--primary) 8%,transparent),transparent 32%),
 radial-gradient(circle at 15% 110%,color-mix(in srgb,var(--primary-2) 6%,transparent),transparent 28%),var(--bg)}
.app-body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(color-mix(in srgb,var(--border) 28%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--border) 22%,transparent) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.15),transparent 55%);opacity:.28}
.brand-mark{position:relative;overflow:hidden;border-radius:11px;box-shadow:0 10px 26px color-mix(in srgb,var(--primary) 30%,transparent),inset 0 1px 0 rgba(255,255,255,.3)}
.brand-mark::after{content:"";position:absolute;inset:-40%;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.42) 50%,transparent 62%);transform:translateX(-80%) rotate(12deg);animation:brandSheen 7s ease-in-out infinite}
.brand-mark>span{position:relative;z-index:1}.brand em{font-style:normal;font-size:7px;letter-spacing:.13em;padding:3px 5px;border-radius:5px;background:var(--primary-soft);color:var(--primary);margin-left:-4px;align-self:center}
@keyframes brandSheen{0%,72%{transform:translateX(-90%) rotate(12deg)}88%,100%{transform:translateX(90%) rotate(12deg)}}
.btn{position:relative;overflow:hidden;isolation:isolate}.btn-primary{box-shadow:0 10px 26px color-mix(in srgb,var(--primary) 24%,transparent),inset 0 1px 0 rgba(255,255,255,.2)}.btn-primary::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.18) 50%,transparent 65%);transform:translateX(-120%);transition:transform .55s ease;z-index:-1}.btn-primary:hover::after{transform:translateX(120%)}.btn-primary:hover{box-shadow:0 14px 34px color-mix(in srgb,var(--primary) 30%,transparent)}
.icon-btn{transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.icon-btn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 25%,var(--border));box-shadow:0 8px 20px rgba(30,31,68,.07)}.icon-btn:active{transform:scale(.95)}
.card{box-shadow:var(--premium-shadow);border-color:color-mix(in srgb,var(--border) 86%,transparent);transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease,border-color .22s ease}.card:hover{border-color:color-mix(in srgb,var(--primary) 15%,var(--border));box-shadow:var(--premium-shadow-hover)}
.metric-card{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--surface) 40%,color-mix(in srgb,var(--primary-soft) 24%,var(--surface)) 120%)}.metric-card::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--primary),var(--primary-2),transparent);opacity:0;transform:scaleX(.6);transition:.25s}.metric-card:hover::before{opacity:.75;transform:scaleX(1)}.metric-head>svg{width:34px!important;height:34px!important;padding:8px;border-radius:10px;background:var(--primary-soft);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 12%,var(--border))}.metric-card>strong{letter-spacing:-.055em}
.progress span{transition:width .8s cubic-bezier(.2,.8,.2,1)}

/* Premium shell */
.sidebar{background:color-mix(in srgb,var(--surface) 93%,transparent);backdrop-filter:blur(20px) saturate(130%);box-shadow:10px 0 40px rgba(31,34,63,.025);border-right-color:color-mix(in srgb,var(--border) 82%,transparent)}
.brand-row{padding-bottom:14px}.nav-section-label{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);padding:4px 13px 8px;opacity:.75}.side-nav{gap:2px}.nav-link{position:relative;border-radius:12px;min-height:43px;gap:9px;padding:6px 9px;color:color-mix(in srgb,var(--text) 62%,var(--muted));font-weight:600;transition:background .18s ease,color .18s ease,transform .18s ease}.nav-link:hover{background:color-mix(in srgb,var(--primary-soft) 44%,transparent);color:var(--text);transform:translateX(2px)}.nav-link.active{background:linear-gradient(90deg,color-mix(in srgb,var(--primary-soft) 88%,var(--surface)),color-mix(in srgb,var(--primary-soft) 48%,var(--surface)));color:var(--primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 10%,transparent)}.nav-icon{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto;transition:.18s}.nav-icon svg{width:15px!important;height:15px!important;stroke-width:1.9}.nav-link:hover .nav-icon{background:var(--surface);box-shadow:0 4px 12px rgba(34,35,70,.07)}.nav-link.active .nav-icon{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:0 7px 17px color-mix(in srgb,var(--primary) 24%,transparent)}.nav-active-dot{position:absolute;right:9px;width:5px;height:5px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 10%,transparent)}.logout-link{margin-top:4px}.sidebar-foot{gap:6px}.user-mini{position:relative;border:1px solid var(--border);border-radius:13px;padding:8px;transition:.18s;background:color-mix(in srgb,var(--surface-2) 70%,transparent)}.user-mini:hover{border-color:color-mix(in srgb,var(--primary) 20%,var(--border));background:var(--surface-2)}.user-mini>svg{margin-left:auto;width:13px;color:var(--muted)}.avatar{background:linear-gradient(135deg,var(--primary-soft),color-mix(in srgb,var(--primary) 18%,var(--surface)));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 13%,var(--border))}
.topbar{background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(18px) saturate(140%);border-bottom-color:color-mix(in srgb,var(--border) 82%,transparent);box-shadow:0 1px 0 rgba(255,255,255,.2)}.topbar-kicker{display:block;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.15em;color:var(--primary);margin-bottom:1px}.topbar h1{letter-spacing:-.035em}.premium-action{background:color-mix(in srgb,var(--surface) 88%,transparent)}.register-button{border-radius:12px;padding-inline:16px}.global-search{height:40px;border-radius:12px;background:color-mix(in srgb,var(--surface) 84%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.22);transition:width .24s ease,border-color .18s,box-shadow .18s}.global-search:focus-within{width:300px;border-color:color-mix(in srgb,var(--primary) 38%,var(--border));box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 7%,transparent)}.global-search kbd{font-size:8px;color:var(--muted);border:1px solid var(--border);background:var(--surface-2);padding:3px 5px;border-radius:5px;white-space:nowrap}.content{position:relative}
.quick-grid{gap:10px}.quick-grid a{min-height:68px;align-items:center;border-radius:14px;transition:.2s;background:linear-gradient(145deg,var(--surface-2),var(--surface))}.quick-grid a:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(34,35,73,.08)}.quick-grid a>span:last-child{display:flex;flex-direction:column;gap:2px}.quick-grid a small{font-size:8px;color:var(--muted);font-weight:500}.quick-icon{width:35px;height:35px;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;flex:0 0 auto}.quick-icon svg{width:16px}.modal-card{border-radius:22px;box-shadow:0 35px 100px rgba(12,15,33,.32)}

/* Reveal and feedback */
.reveal-ready{opacity:0;transform:translateY(10px)}.reveal-ready.reveal-in{opacity:1;transform:none;transition:opacity .48s ease var(--reveal-delay,0ms),transform .48s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms)}
.page-enter{animation:pageEnter .34s ease both}@keyframes pageEnter{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:none}}
.button-spinner{width:13px;height:13px;border:2px solid rgba(255,255,255,.32);border-top-color:currentColor;border-radius:50%;display:inline-block;animation:spin .65s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn-ghost .button-spinner{border-color:color-mix(in srgb,currentColor 20%,transparent);border-top-color:currentColor}.form-success{animation:formSuccess .55s ease}@keyframes formSuccess{50%{filter:drop-shadow(0 0 12px color-mix(in srgb,var(--success) 20%,transparent))}}
.toast-wrap{right:22px;bottom:22px;gap:10px}.toast{position:relative;min-width:250px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;padding:12px 14px 14px;border-radius:14px;background:color-mix(in srgb,#15251f 96%,transparent);backdrop-filter:blur(14px);box-shadow:0 20px 50px rgba(0,0,0,.25);overflow:hidden}.toast-icon{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:rgba(255,255,255,.1)}.toast-icon svg{width:14px}.toast-progress{position:absolute;left:0;bottom:0;height:2px;background:#6de1ad;animation:toastProgress 3.2s linear forwards}.toast.error .toast-progress{background:#ff9aa4}@keyframes toastProgress{from{width:100%}to{width:0}}

/* Timer / Focus mode */
.premium-timer{overflow:hidden;position:relative;background:linear-gradient(160deg,var(--surface) 20%,color-mix(in srgb,var(--primary-soft) 35%,var(--surface)) 125%)}.premium-timer::after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-100px;top:-105px;background:var(--primary);filter:blur(65px);opacity:.07;pointer-events:none}.timer-status{display:inline-flex;align-items:center;gap:6px;font-size:9px;font-weight:800;color:var(--muted);padding:6px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2)}.timer-status>span{width:6px;height:6px;border-radius:50%;background:var(--muted)}.timer-status.is-running,.timer-status.running{color:var(--success);background:var(--success-soft);border-color:color-mix(in srgb,var(--success) 20%,var(--border))}.timer-status.running>span{background:var(--success);box-shadow:0 0 0 5px color-mix(in srgb,var(--success) 12%,transparent);animation:statusPulse 1.6s ease-in-out infinite}.timer-status.finished{color:var(--success);background:var(--success-soft)}.timer-status.finished>span{background:var(--success)}@keyframes statusPulse{50%{box-shadow:0 0 0 9px transparent}}
.timer-stage{height:190px;position:relative;display:grid;place-items:center;align-content:center;isolation:isolate}.timer-display{position:relative;z-index:3;font-size:42px!important;font-weight:800!important;letter-spacing:-.055em!important;font-variant-numeric:tabular-nums}.timer-stage>small{position:relative;z-index:3;margin-top:10px;color:var(--muted);font-size:9px;max-width:250px;text-align:center}.timer-aura{position:absolute;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 13%,transparent),transparent 68%);opacity:.4;transition:.3s}.timer-orbit{position:absolute;width:154px;height:154px;border-radius:50%;border:1px solid color-mix(in srgb,var(--primary) 15%,var(--border));transition:.3s}.timer-orbit span{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--primary);box-shadow:0 0 14px var(--primary);opacity:.35}.timer-orbit span:nth-child(1){left:50%;top:-3px}.timer-orbit span:nth-child(2){right:9px;bottom:30px}.timer-orbit span:nth-child(3){left:12px;bottom:24px}.premium-timer.is-running .timer-orbit{border-style:dashed;animation:orbitSpin 9s linear infinite}.premium-timer.is-running .timer-aura{opacity:1;animation:auraPulse 2.4s ease-in-out infinite}.premium-timer.is-running .timer-display{color:var(--primary)}.premium-timer.is-paused .timer-orbit{animation:pausedBreath 2.8s ease-in-out infinite}.premium-timer.is-finished{animation:timerSuccess .7s ease}.premium-timer.is-finished .timer-orbit{border-color:var(--success);box-shadow:0 0 0 12px color-mix(in srgb,var(--success) 5%,transparent)}@keyframes orbitSpin{to{transform:rotate(360deg)}}@keyframes auraPulse{50%{transform:scale(1.12);opacity:.65}}@keyframes pausedBreath{50%{transform:scale(.97);opacity:.6}}@keyframes timerSuccess{50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--success) 12%,transparent),var(--premium-shadow-hover)}}.timer-actions{gap:8px}.timer-start{flex:1}.timer-finish:not(:disabled){border-color:color-mix(in srgb,var(--success) 28%,var(--border));color:var(--success)}.timer-footnote{display:flex;gap:7px;align-items:center;padding-top:13px;margin-top:4px;border-top:1px solid var(--border);font-size:8px;color:var(--muted)}.timer-footnote svg{width:13px;color:var(--success)}

/* Focus completion celebration */
.study-celebration{position:fixed;inset:0;z-index:400;display:grid;place-items:center;pointer-events:none;opacity:0;transition:opacity .25s ease}.study-celebration.open{opacity:1;pointer-events:auto}.celebration-backdrop{position:absolute;inset:0;background:rgba(9,11,22,.56);backdrop-filter:blur(14px) saturate(110%)}.celebration-card{position:relative;z-index:2;width:min(470px,calc(100% - 34px));background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--primary-soft) 35%,var(--surface)));border:1px solid color-mix(in srgb,var(--primary) 15%,var(--border));border-radius:28px;padding:38px;text-align:center;box-shadow:0 45px 120px rgba(5,7,18,.4);transform:translateY(18px) scale(.96);transition:transform .38s cubic-bezier(.16,1,.3,1)}.study-celebration.open .celebration-card{transform:none}.celebration-icon{width:64px;height:64px;border-radius:20px;margin:0 auto 20px;display:grid;place-items:center;background:linear-gradient(135deg,var(--success),#28aa78);color:#fff;box-shadow:0 18px 40px color-mix(in srgb,var(--success) 28%,transparent);animation:celebrationPop .62s cubic-bezier(.2,1.5,.3,1)}.celebration-icon svg{width:30px;height:30px;stroke-width:2.4}.celebration-card h2{font-size:27px;letter-spacing:-.045em;margin:7px 0 9px}.celebration-card>p{color:var(--muted);line-height:1.6;margin:0 auto 18px;max-width:360px}.celebration-streak{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);font-size:9px;color:var(--muted);margin-bottom:20px}.celebration-streak svg{width:14px;color:var(--primary)}.celebration-particles,.welcome-glow{position:absolute;inset:50% auto auto 50%;width:1px;height:1px;z-index:1;pointer-events:none}.celebration-particles i,.welcome-glow i{position:absolute;width:var(--size);height:var(--size);border-radius:2px;background:var(--primary);opacity:0;animation:particleBurst 1s cubic-bezier(.1,.8,.2,1) var(--delay) forwards}.celebration-particles i:nth-child(3n),.welcome-glow i:nth-child(3n){background:var(--success);border-radius:50%}.celebration-particles i:nth-child(4n),.welcome-glow i:nth-child(4n){background:#f4b740}@keyframes particleBurst{0%{opacity:0;transform:translate(0,0) scale(.2) rotate(0)}18%{opacity:1}100%{opacity:0;transform:translate(var(--tx),var(--ty)) scale(1) rotate(var(--r))}}@keyframes celebrationPop{0%{transform:scale(.6) rotate(-8deg);opacity:0}70%{transform:scale(1.08) rotate(2deg)}100%{transform:none;opacity:1}}

/* Welcome after first setup */
.welcome-launch{display:none}.welcome-overlay{position:fixed;inset:0;z-index:390;display:grid;place-items:center;opacity:0;pointer-events:none;transition:.3s}.welcome-overlay.open{opacity:1;pointer-events:auto}.welcome-overlay-backdrop{position:absolute;inset:0;background:rgba(8,10,22,.54);backdrop-filter:blur(13px)}.welcome-card-premium{position:relative;width:min(610px,calc(100% - 34px));padding:40px;border-radius:30px;background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--primary-soft) 42%,var(--surface)));border:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));box-shadow:0 45px 130px rgba(6,8,20,.42);text-align:center;transform:translateY(16px) scale(.965);transition:.42s cubic-bezier(.16,1,.3,1);overflow:hidden}.welcome-overlay.open .welcome-card-premium{transform:none}.welcome-card-premium::before{content:"";position:absolute;inset:-60% 20% auto;height:260px;background:radial-gradient(circle,var(--glow),transparent 64%);pointer-events:none}.welcome-check{position:relative;width:62px;height:62px;border-radius:20px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;display:grid;place-items:center;margin:0 auto 20px;box-shadow:0 18px 40px color-mix(in srgb,var(--primary) 28%,transparent)}.welcome-check svg{width:27px}.welcome-card-premium h2{position:relative;font-size:29px;letter-spacing:-.05em;margin:7px 0 10px}.welcome-card-premium>p{position:relative;color:var(--muted);line-height:1.65;max-width:470px;margin:0 auto 24px}.welcome-next{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:24px}.welcome-next>div{text-align:left;padding:13px;border-radius:14px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 76%,transparent);display:flex;gap:9px}.welcome-next svg{width:17px;color:var(--primary);flex:0 0 auto}.welcome-next span{display:flex;flex-direction:column;font-size:8px;color:var(--muted);line-height:1.35}.welcome-next strong{font-size:10px;color:var(--text);margin-bottom:2px}

/* First access wizard */
.setup-shell{min-height:100vh;display:grid;grid-template-columns:330px 1fr;background:var(--bg);overflow:hidden}.setup-aside{position:fixed;inset:0 auto 0 0;width:330px;padding:30px 30px 24px;background:linear-gradient(165deg,#191934 0%,#272653 52%,#332870 100%);color:#fff;display:flex;flex-direction:column;overflow:hidden}.setup-aside::before,.setup-aside::after{content:"";position:absolute;border-radius:50%;filter:blur(8px);pointer-events:none}.setup-aside::before{width:300px;height:300px;right:-170px;top:10%;background:radial-gradient(circle,rgba(134,117,255,.35),transparent 67%)}.setup-aside::after{width:260px;height:260px;left:-140px;bottom:-90px;background:radial-gradient(circle,rgba(92,205,183,.15),transparent 68%)}.setup-brand{position:relative;z-index:1;color:#fff}.setup-brand .brand-mark{box-shadow:0 12px 30px rgba(0,0,0,.2)}.setup-aside-copy{position:relative;z-index:1;margin:52px 0 30px}.setup-mini-badge{display:inline-flex;align-items:center;gap:7px;font-size:9px;font-weight:700;color:#d7d5ff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);padding:7px 9px;border-radius:999px}.setup-mini-badge svg{width:13px}.setup-aside-copy h2{font-size:29px;line-height:1.08;letter-spacing:-.05em;margin:14px 0 12px}.setup-aside-copy p{font-size:11px;line-height:1.65;color:rgba(255,255,255,.65);max-width:250px}.setup-progress-list{position:relative;z-index:1;display:flex;flex-direction:column;gap:3px}.setup-progress-item{display:grid;grid-template-columns:37px 1fr;gap:11px;align-items:center;padding:8px 9px;border-radius:12px;color:rgba(255,255,255,.43);transition:.28s}.setup-progress-item>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}.setup-progress-item svg{width:15px}.setup-progress-item>div{display:flex;flex-direction:column;gap:1px}.setup-progress-item strong{font-size:10px}.setup-progress-item small{font-size:8px;color:inherit}.setup-progress-item.active{background:rgba(255,255,255,.08);color:#fff}.setup-progress-item.active>span{background:#fff;color:#5b52cb;border-color:#fff;box-shadow:0 7px 20px rgba(0,0,0,.18)}.setup-progress-item.done{color:rgba(255,255,255,.72)}.setup-progress-item.done>span{color:#79e0ba;border-color:rgba(121,224,186,.22);background:rgba(121,224,186,.08)}.setup-secure{position:relative;z-index:1;margin-top:auto;display:flex;gap:8px;align-items:flex-start;font-size:8px;line-height:1.5;color:rgba(255,255,255,.45)}.setup-secure svg{width:14px;color:#79e0ba;flex:0 0 auto}.setup-main{grid-column:2;min-height:100vh;padding:46px clamp(28px,5vw,80px) 40px;display:grid;place-items:center}.setup-card{width:min(910px,100%);background:var(--surface);border:1px solid var(--border);border-radius:26px;box-shadow:0 30px 85px rgba(27,28,65,.09);overflow:hidden}.setup-progress-bar{height:3px;background:var(--surface-2)}.setup-progress-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-2));transition:width .38s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 16px var(--glow)}.premium-onboarding-form{padding:34px 40px 26px}.wizard-step{display:none;animation:wizardIn .34s cubic-bezier(.2,.8,.2,1)}.wizard-step.active{display:block}@keyframes wizardIn{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}.step-heading{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:flex-start;margin-bottom:28px}.step-icon{width:49px;height:49px;border-radius:15px;background:linear-gradient(145deg,var(--primary-soft),color-mix(in srgb,var(--primary) 13%,var(--surface)));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 13%,var(--border));display:grid;place-items:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}.step-icon svg{width:22px}.step-heading h1{font-size:28px;letter-spacing:-.05em;margin:3px 0 8px}.step-heading p{font-size:11px;color:var(--muted);line-height:1.6;margin:0;max-width:650px}.setup-form-grid{gap:17px}.setup-form-grid label{font-size:10px}.setup-form-grid input{height:44px;border-radius:12px;background:var(--surface)}.select-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.select-card{position:relative;display:grid!important;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:12px!important;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);cursor:pointer;transition:.18s;min-height:66px}.select-card:hover{border-color:color-mix(in srgb,var(--primary) 24%,var(--border));transform:translateY(-1px)}.select-card>input{position:absolute;opacity:0;pointer-events:none}.select-card-icon{width:36px;height:36px;border-radius:11px;background:var(--surface);color:var(--muted);display:grid;place-items:center;border:1px solid var(--border)}.select-card-icon svg{width:16px}.select-card>span:nth-of-type(2){display:flex;flex-direction:column;gap:2px}.select-card strong{font-size:10px}.select-card small{font-size:8px;color:var(--muted);font-weight:500}.select-check{width:15px;color:var(--primary);opacity:0;transform:scale(.5);transition:.18s}.select-card:has(input:checked){border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary-soft) 64%,var(--surface));box-shadow:0 7px 20px color-mix(in srgb,var(--primary) 7%,transparent)}.select-card:has(input:checked) .select-card-icon{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;border-color:transparent}.select-card:has(input:checked) .select-check{opacity:1;transform:scale(1)}.premium-field{display:flex!important;flex-direction:column;gap:7px;margin-top:16px;font-size:10px!important}.premium-field>div{position:relative}.premium-field>div>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:15px;color:var(--muted)}.premium-field input{padding-left:37px;height:44px;background:var(--surface)}
.availability-premium-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.availability-premium-card{position:relative;padding:14px!important;border:1px solid var(--border);border-radius:15px;background:linear-gradient(145deg,var(--surface-2),var(--surface));display:flex!important;flex-direction:column!important;gap:7px!important}.availability-premium-card strong{font-size:10px}.availability-premium-card>small{font-size:8px;color:var(--muted);font-weight:500}.day-badge{position:absolute;right:10px;top:10px;font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--primary);background:var(--primary-soft);padding:4px 6px;border-radius:6px}.hours-control{display:grid;grid-template-columns:30px 1fr 30px;gap:5px;align-items:center}.hours-control input{text-align:center;font-size:17px;font-weight:800;padding:8px 3px;background:var(--surface);font-variant-numeric:tabular-nums}.hours-control button{height:31px;border:1px solid var(--border);border-radius:9px;background:var(--surface);cursor:pointer;color:var(--primary);font-weight:800;transition:.16s}.hours-control button:hover{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 22%,var(--border))}.capacity-summary{margin-top:14px;padding:12px 14px;border-radius:13px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:space-between}.capacity-summary>span{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:700}.capacity-summary svg{width:15px}.capacity-summary strong{font-size:17px;letter-spacing:-.04em}
.skeleton-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 14px;border:1px solid var(--border);background:var(--surface-2);border-radius:14px;margin-bottom:14px}.skeleton-toolbar>div{display:flex;align-items:center;gap:9px}.skeleton-toolbar>div>svg{width:18px;color:var(--primary)}.skeleton-toolbar>div>span{display:flex;flex-direction:column}.skeleton-toolbar strong{font-size:9px}.skeleton-toolbar small{font-size:8px;color:var(--muted);margin-top:2px}.skeleton-builder{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-height:470px;overflow:auto;padding:1px 4px 2px 1px}.skeleton-day{border:1px solid var(--border);border-radius:15px;background:var(--surface);padding:12px;transition:.2s}.skeleton-day.over-capacity{border-color:color-mix(in srgb,var(--danger) 40%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 6%,transparent)}.skeleton-day>header{display:flex;align-items:center;justify-content:space-between;padding-bottom:9px;border-bottom:1px solid var(--border)}.skeleton-day>header>div:first-child{display:flex;align-items:center;gap:8px}.skeleton-day>header>div:first-child>span{width:29px;height:29px;border-radius:9px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-size:7px;font-weight:800;text-transform:uppercase}.skeleton-day header strong{font-size:10px}.day-capacity{text-align:right;display:flex;flex-direction:column}.day-capacity>span{font-size:10px;font-weight:800}.day-capacity small{font-size:7px;color:var(--muted)}.skeleton-blocks{display:flex;flex-direction:column;gap:6px;padding-top:8px}.skeleton-block{display:grid;grid-template-columns:18px minmax(100px,1fr) 75px 72px 27px;gap:5px;align-items:center;padding:6px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border);animation:blockIn .2s ease}.skeleton-block.removing{opacity:0;transform:scale(.96);transition:.16s}@keyframes blockIn{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.drag-handle{color:var(--muted);display:grid;place-items:center}.drag-handle svg{width:12px}.skeleton-block select,.skeleton-block input{height:31px;padding:5px 7px;font-size:8px;background:var(--surface);border-radius:8px}.block-duration{position:relative}.block-duration input{padding-right:24px}.block-duration span{position:absolute;right:7px;top:50%;transform:translateY(-50%);font-size:7px;color:var(--muted)}.remove-block{width:27px;height:27px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;display:grid;place-items:center}.remove-block:hover{background:var(--danger-soft);color:var(--danger)}.remove-block svg{width:12px}.add-skeleton-block{width:100%;border:1px dashed var(--border);background:transparent;color:var(--muted);border-radius:9px;padding:7px;margin-top:7px;font-size:8px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:.16s}.add-skeleton-block:hover{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:var(--primary-soft)}.add-skeleton-block svg{width:11px}.skeleton-legend{font-size:8px;color:var(--muted);margin-top:10px}.skeleton-legend span{display:flex;gap:7px;align-items:center}.skeleton-legend svg{width:13px;color:var(--primary)}
.finish-setup{text-align:center;padding:8px 10px}.finish-orbit{position:relative;width:90px;height:90px;margin:0 auto 18px;border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:50%;animation:finishOrbit 8s linear infinite}.finish-orbit>span{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 14px var(--primary)}.finish-orbit>span:first-child{left:50%;top:-4px}.finish-orbit>span:nth-child(2){right:3px;bottom:19px;background:var(--success)}.finish-orbit>div{position:absolute;inset:16px;border-radius:22px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;display:grid;place-items:center;box-shadow:0 16px 35px var(--glow)}.finish-orbit svg{width:26px}@keyframes finishOrbit{to{transform:rotate(360deg)}}.finish-setup h1{font-size:29px;letter-spacing:-.05em;margin:6px 0 9px}.finish-setup>p{max-width:590px;margin:0 auto;color:var(--muted);font-size:11px;line-height:1.6}.setup-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:24px auto 18px;max-width:590px}.setup-summary-grid>div{padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2);display:flex;flex-direction:column;gap:5px}.setup-summary-grid span{display:flex;justify-content:center;align-items:center;gap:5px;font-size:8px;color:var(--muted)}.setup-summary-grid svg{width:12px;color:var(--primary)}.setup-summary-grid strong{font-size:18px}.next-flow{display:flex;align-items:center;justify-content:center;gap:8px;margin:18px 0 4px}.next-flow>div{display:flex;align-items:center;gap:7px;text-align:left}.next-flow>div>span{width:26px;height:26px;border-radius:8px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-size:8px;font-weight:800}.next-flow p{display:flex;flex-direction:column;font-size:7px;color:var(--muted);margin:0}.next-flow strong{font-size:8px;color:var(--text)}.next-flow>svg{width:13px;color:var(--muted)}
.wizard-actions{display:flex;align-items:center;gap:10px;padding-top:24px;margin-top:28px;border-top:1px solid var(--border)}.wizard-actions #wizardNext,.wizard-actions #wizardFinish{margin-left:auto}.wizard-step-count{position:absolute;left:50%;transform:translateX(-50%);font-size:8px;color:var(--muted)}.setup-mobile-brand{display:none}.setup-error{display:flex;align-items:center;gap:8px;margin:0 40px 0}.setup-error svg{width:15px;flex:0 0 auto}.setup-again-card{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--primary-soft) 45%,var(--surface)))}.premium-badge{display:inline-flex;align-items:center;gap:5px;font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--primary);background:var(--primary-soft);padding:5px 7px;border-radius:7px}.premium-badge svg{width:11px}

@media(max-width:980px){.setup-shell{grid-template-columns:270px 1fr}.setup-aside{width:270px;padding:26px 22px}.setup-main{padding:36px 24px}.select-card-grid{grid-template-columns:repeat(2,1fr)}.skeleton-builder{grid-template-columns:1fr}.availability-premium-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.nav-section-label{display:none}.topbar-kicker{display:none}.brand em{display:none}.premium-onboarding-form{padding:28px}.setup-shell{display:block;min-height:100vh}.setup-aside{display:none}.setup-main{display:block;padding:20px 14px 30px}.setup-mobile-brand{display:flex;align-items:center;justify-content:space-between;margin:0 4px 16px}.setup-mobile-brand>span{font-size:9px;color:var(--muted);font-weight:700}.setup-card{border-radius:20px}.step-heading{grid-template-columns:42px 1fr;gap:12px}.step-icon{width:41px;height:41px;border-radius:12px}.step-heading h1{font-size:24px}.welcome-next{grid-template-columns:1fr}.celebration-card,.welcome-card-premium{padding:30px 22px}.global-search kbd{display:none}}
@media(max-width:560px){.premium-onboarding-form{padding:24px 18px 20px}.select-card-grid,.availability-premium-grid,.setup-summary-grid{grid-template-columns:1fr}.setup-form-grid{grid-template-columns:1fr}.step-heading{display:block}.step-icon{margin-bottom:12px}.step-heading h1{font-size:23px}.skeleton-toolbar{align-items:flex-start;flex-direction:column}.skeleton-toolbar .btn{width:100%}.skeleton-block{grid-template-columns:18px 1fr 68px 27px}.block-priority{grid-column:2/4}.wizard-actions{position:relative}.wizard-step-count{display:none}.wizard-actions .btn{padding-inline:11px}.next-flow{align-items:stretch;flex-direction:column}.next-flow>svg{transform:rotate(90deg);margin:auto}.timer-display{font-size:37px!important}.study-celebration .celebration-card h2{font-size:24px}.welcome-card-premium h2{font-size:25px}}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal-ready{opacity:1;transform:none}.brand-mark::after{display:none}}

/* Icon language shared across the product */
.rule-list>div>svg,.info-box>svg{width:34px!important;height:34px!important;padding:8px;border-radius:10px;background:var(--primary-soft);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 10%,var(--border));flex:0 0 auto}.command-icon,.subject-icon,.platform-logo,.notification-icon{background:linear-gradient(145deg,var(--primary-soft),color-mix(in srgb,var(--primary) 11%,var(--surface)));border:1px solid color-mix(in srgb,var(--primary) 11%,var(--border));box-shadow:inset 0 1px 0 rgba(255,255,255,.3)}.command-icon svg,.subject-icon svg,.platform-logo svg,.notification-icon svg{stroke-width:1.9}.empty>svg{width:46px!important;height:46px!important;padding:12px;border-radius:15px;background:var(--primary-soft);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 10%,var(--border));margin-bottom:8px}.timer-status.paused{color:var(--warning);background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 20%,var(--border))}.timer-status.paused>span{background:var(--warning)}

/* Landing and authentication polish */
.public-nav{position:relative;z-index:20}.public-nav::after{content:"";position:absolute;left:24px;right:24px;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent)}.hero{position:relative}.hero::before{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-210px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 14%,transparent),transparent 66%);pointer-events:none}.hero-copy{position:relative;z-index:1}.hero h1 span{background:linear-gradient(105deg,var(--primary),var(--primary-2));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-demo{position:relative;overflow:hidden;background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--primary-soft) 30%,var(--surface)));border-color:color-mix(in srgb,var(--primary) 13%,var(--border));animation:demoFloat 6s ease-in-out infinite}.hero-demo::before{content:"";position:absolute;inset:-70% 30% auto;height:280px;background:radial-gradient(circle,var(--glow),transparent 65%);pointer-events:none}@keyframes demoFloat{50%{transform:rotate(1deg) translateY(-7px)}}.feature-card{position:relative;overflow:hidden;transition:.22s;box-shadow:0 10px 30px rgba(30,32,68,.035)}.feature-card::after{content:"";position:absolute;left:22px;right:22px;top:0;height:2px;border-radius:99px;background:linear-gradient(90deg,transparent,var(--primary),transparent);opacity:0;transform:scaleX(.5);transition:.22s}.feature-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 18%,var(--border));box-shadow:0 20px 50px rgba(31,33,75,.08)}.feature-card:hover::after{opacity:.65;transform:scaleX(1)}.feature-icon{box-shadow:inset 0 1px 0 rgba(255,255,255,.35);border:1px solid color-mix(in srgb,var(--primary) 10%,var(--border))}.auth-card{box-shadow:0 30px 90px rgba(29,31,72,.1);border-color:color-mix(in srgb,var(--primary) 10%,var(--border));background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--primary-soft) 16%,var(--surface)))}.auth-shell::before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;right:-120px;bottom:-170px;background:radial-gradient(circle,color-mix(in srgb,var(--primary-2) 10%,transparent),transparent 68%);pointer-events:none}
@media(max-width:1100px){.hero-demo{animation:none}}
