:root{--primary:#4f46e5;--primary-dark:#3730a3;--primary-soft:#eef2ff;--secondary:#818cf8;--accent:#ea580c;--accent-soft:#fff7ed;--success:#15803d;--success-soft:#f0fdf4;--warning:#b45309;--warning-soft:#fffbeb;--danger:#dc2626;--surface:#fff;--surface-soft:#f8fafc;--background:#f5f6fb;--foreground:#1e1b4b;--text:#25243d;--muted:#69677d;--border:#e5e7f0;--ring:rgba(79,70,229,.22);--shadow-sm:0 1px 2px rgba(30,27,75,.04);--shadow-md:0 10px 30px rgba(30,27,75,.07);--shadow-lg:0 22px 50px rgba(30,27,75,.12);--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--sidebar-width:260px}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body,html{background:var(--background)}body{margin:0;overflow-x:hidden;color:var(--text);font-family:Vazirmatn,IRANSans,Tahoma,Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}[role=button],a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{border:0}a,button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65;transform:none!important;box-shadow:none}:focus-visible{outline:3px solid var(--ring);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;top:10px;right:10px;padding:9px 14px;color:#fff;background:var(--foreground);border-radius:10px;transform:translateY(-150%);transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}.icon{width:22px;height:22px;flex:0 0 auto}.brand{display:inline-flex;align-items:center;gap:11px;font-weight:900;color:var(--foreground);letter-spacing:-.04em}.brand-mark{display:grid;width:42px;height:42px;place-items:center;color:#fff;background:linear-gradient(145deg,#6366f1,#4338ca);border-radius:14px;box-shadow:0 9px 20px rgba(79,70,229,.25)}.brand-mark svg{width:25px;height:25px}.brand-copy{display:grid;line-height:1.1}.brand-copy strong{font-size:1.3rem}.brand-copy small{margin-top:4px;color:var(--muted);font-size:.68rem;font-weight:500;letter-spacing:0}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:9px;padding:0 20px;border-radius:13px;font-weight:800;cursor:pointer;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.button:hover{transform:translateY(-1px)}.button-primary{color:#fff;background:var(--primary);box-shadow:0 8px 20px rgba(79,70,229,.2)}.button-primary:hover{background:var(--primary-dark);box-shadow:0 11px 25px rgba(79,70,229,.27)}.button-accent{color:#fff;background:var(--accent);box-shadow:0 8px 20px rgba(234,88,12,.2)}.button-outline{color:var(--primary);background:#fff;border:1px solid #c7d2fe}.button-ghost{color:var(--muted);background:transparent}.button-small{min-height:40px;padding-inline:14px;font-size:.88rem}.icon-button{position:relative;display:grid;width:46px;height:46px;place-items:center;color:var(--muted);background:#fff;border:1px solid var(--border);border-radius:14px;cursor:pointer;transition:color .18s ease,border-color .18s ease,background .18s ease}.icon-button:hover{color:var(--primary);border-color:#c7d2fe;background:var(--primary-soft)}.notification-dot{position:absolute;top:8px;right:9px;width:7px;height:7px;background:var(--accent);border:2px solid #fff;border-radius:999px}.landing{min-height:100dvh;overflow-x:clip;background:radial-gradient(circle at 12% 8%,rgba(129,140,248,.22),transparent 31%),radial-gradient(circle at 88% 90%,rgba(249,115,22,.12),transparent 30%),#fafaff}.landing-nav{display:flex;width:min(1180px,calc(100% - 40px));min-height:88px;align-items:center;justify-content:space-between;margin:auto}.landing-nav-actions{gap:10px}.hero,.landing-nav-actions{display:flex;align-items:center}.hero{width:min(1180px,calc(100% - 40px));min-height:clamp(560px,calc(100dvh - 88px),720px);margin:auto;padding:60px 0 90px}.hero-copy{width:min(100%,760px);margin-left:auto}.eyebrow{display:inline-flex;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;padding:5px 9px;color:var(--primary-dark);background:var(--primary-soft);border:1px solid #d8ddff;border-radius:999px;font-size:.75rem;font-weight:800;line-height:1.5}.eyebrow-dot{width:6px;height:6px;background:#22c55e;border-radius:50%;box-shadow:0 0 0 3px rgba(34,197,94,.13)}.hero h1{max-width:650px;margin:22px 0 18px;color:var(--foreground);font-size:clamp(2.55rem,5.5vw,5.2rem);line-height:1.12;letter-spacing:-.055em}.hero h1 span{position:relative;color:var(--primary);white-space:nowrap}.hero h1 span:after{position:absolute;right:2%;bottom:-8px;width:96%;height:11px;content:"";background:url("data:image/svg+xml,%3Csvg width='300' height='12' viewBox='0 0 300 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8C70 2 230 2 297 8' stroke='%23F97316' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") 50%/100% 100% no-repeat}.hero-description{max-width:610px;margin:0;color:#5c5a70;font-size:1.08rem;line-height:2}.hero-actions{gap:12px}.hero-actions,.hero-trust{display:flex;flex-wrap:wrap;margin-top:30px}.hero-trust{gap:22px;color:var(--muted);font-size:.84rem}.hero-trust span{display:inline-flex;align-items:center;gap:7px}.hero-trust svg{width:18px;height:18px;color:var(--success)}.preview-wrap{position:relative;min-height:600px}.preview-orb{position:absolute;inset:6% 8% 8% 6%;background:linear-gradient(145deg,#e0e7ff,#f5f3ff 54%,#ffedd5);border-radius:47% 53% 47% 53%/60% 38% 62% 40%;animation:rise-in .6s both}.preview-window{position:absolute;inset:9% 5% 7% 3%;padding:18px;background:hsla(0,0%,100%,.92);border:1px solid hsla(0,0%,100%,.9);border-radius:28px;box-shadow:0 34px 80px rgba(55,48,163,.18);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transform:rotate(-1.5deg)}.preview-topbar{display:flex;align-items:center;justify-content:space-between;padding:6px 3px 20px}.preview-welcome{color:var(--muted);font-size:.78rem}.preview-welcome strong{display:block;color:var(--foreground);font-size:1.1rem}.avatar{place-items:center;color:var(--primary-dark);background:#ddd6fe;border:3px solid #fff;border-radius:14px;font-size:.82rem;font-weight:900;box-shadow:var(--shadow-sm)}.avatar,.user-avatar{display:grid;width:44px;height:44px}.user-avatar{place-items:center;overflow:hidden;color:#5b57a9;background:#efeffb;border:0;border-radius:50%;box-shadow:none}.user-avatar svg{width:52%;height:52%}.user-avatar img{width:100%;height:100%;object-fit:cover}.preview-feature{position:relative;min-height:205px;padding:25px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#4f46e5,#6d5ce8);border-radius:22px}.preview-feature:after{position:absolute;top:-55px;left:-40px;width:190px;height:190px;content:"";border:35px solid hsla(0,0%,100%,.08);border-radius:50%}.preview-feature small{color:#dbeafe}.preview-feature h3{margin:7px 0 4px;font-size:1.35rem}.preview-progress{width:64%;height:7px;margin-top:23px;overflow:hidden;background:hsla(0,0%,100%,.17);border-radius:999px}.preview-progress:after{display:block;width:68%;height:100%;content:"";background:#fb923c;border-radius:inherit}.preview-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;margin-top:12px}.preview-card{padding:16px;background:#f8fafc;border:1px solid #eef0f5;border-radius:18px}.preview-card-icon{display:grid;width:36px;height:36px;place-items:center;color:var(--primary);background:#e0e7ff;border-radius:12px}.preview-card-icon svg{width:19px;height:19px}.preview-card strong{display:block;margin-top:14px;color:var(--foreground);font-size:.88rem}.preview-card span{color:var(--muted);font-size:.72rem}.floating-note{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:11px 15px;background:#fff;border:1px solid #eef0f7;border-radius:15px;box-shadow:var(--shadow-lg);font-size:.78rem;font-weight:800}.floating-note svg{width:20px;height:20px}.floating-note.first{top:3%;right:-2%;color:var(--success)}.floating-note.second{bottom:4%;left:-4%;color:var(--accent)}.role-showcases{width:min(1180px,calc(100% - 40px));margin:auto;padding:35px 0 max(90px,env(safe-area-inset-bottom))}.showcases-heading{width:min(100%,720px);margin:0 auto 45px;text-align:center}.showcase-role,.showcases-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--primary-dark);font-size:.76rem;font-weight:900}.showcases-kicker{padding:5px 10px;background:var(--primary-soft);border:1px solid #d8ddff;border-radius:999px}.showcases-heading h2{margin:12px 0 10px;color:var(--foreground);font-size:clamp(2rem,4.2vw,3.35rem);line-height:1.25;letter-spacing:-.045em}.showcases-heading p{margin:0;color:var(--muted);font-size:.98rem;line-height:2}.landing-showcase{display:grid;min-height:680px;grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);align-items:center;grid-gap:clamp(28px,5vw,72px);gap:clamp(28px,5vw,72px);padding:clamp(26px,4vw,50px);margin-bottom:48px;background:hsla(0,0%,100%,.72);border:1px solid rgba(199,210,254,.74);border-radius:34px;box-shadow:0 28px 75px rgba(55,48,163,.1);scroll-margin-top:24px}.student-showcase{background:radial-gradient(circle at 12% 18%,rgba(129,140,248,.14),transparent 31%),hsla(0,0%,100%,.76)}.advisor-showcase{background:radial-gradient(circle at 88% 75%,rgba(249,115,22,.1),transparent 29%),hsla(0,0%,100%,.76)}.advisor-showcase .showcase-copy{order:2}.advisor-preview-window{order:1}.showcase-copy{position:relative;z-index:2}.showcase-role{color:var(--primary)}.showcase-role svg{width:19px;height:19px}.showcase-copy h3{margin:12px 0 14px;color:var(--foreground);font-size:clamp(1.75rem,3.2vw,2.75rem);line-height:1.4;letter-spacing:-.035em}.showcase-copy>p{margin:0;color:var(--muted);line-height:2}.showcase-features{display:grid;grid-gap:11px;gap:11px;padding:0;margin:24px 0 0;list-style:none}.showcase-features li{display:flex;align-items:center;gap:9px;color:#48465d;font-size:.84rem;font-weight:700}.showcase-features svg{width:18px;height:18px;flex:0 0 auto;color:var(--success)}.showcase-entry{display:grid;justify-items:start;grid-gap:10px;gap:10px;margin-top:28px}.showcase-entry>span{color:var(--muted);font-size:.7rem;line-height:1.8}.showcase-entry>span a{color:var(--primary);font-weight:900}.student-showcase .preview-wrap{min-width:0;min-height:600px}.advisor-preview-window{min-width:0;padding:clamp(16px,2.5vw,24px);background:hsla(0,0%,100%,.94);border:1px solid hsla(0,0%,100%,.9);border-radius:28px;box-shadow:0 30px 75px rgba(55,48,163,.16);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.advisor-preview-topbar{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:14px;padding:0 4px 16px;color:var(--foreground);font-size:.83rem;font-weight:900}.advisor-preview-topbar>span:first-child{display:inline-flex;align-items:center;gap:8px}.advisor-preview-topbar svg{width:20px;height:20px;color:var(--primary)}.advisor-preview-status{display:inline-flex;align-items:center;gap:6px;color:var(--success);font-size:.68rem}.advisor-preview-status>span{width:7px;height:7px;background:#22c55e;border-radius:50%;box-shadow:0 0 0 3px rgba(34,197,94,.13)}.advisor-preview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.advisor-preview-stats>div{min-width:0;padding:13px;background:var(--surface-soft);border:1px solid #eef0f5;border-radius:17px}.advisor-preview-stat-icon{display:grid;width:32px;height:32px;place-items:center;color:var(--primary);background:#e0e7ff;border-radius:10px}.advisor-preview-stat-icon.green{color:var(--success);background:var(--success-soft)}.advisor-preview-stat-icon.orange{color:var(--accent);background:var(--accent-soft)}.advisor-preview-stat-icon svg{width:17px;height:17px}.advisor-preview-stats strong,.advisor-preview-stats>div>span:last-child{display:block}.advisor-preview-stats strong{margin-top:9px;color:var(--foreground);font-size:1.28rem}.advisor-preview-stats>div>span:last-child{color:var(--muted);font-size:.64rem}.advisor-preview-content{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(150px,.75fr);grid-gap:10px;gap:10px;margin-top:10px}.advisor-preview-chart,.advisor-preview-students{min-width:0;padding:15px;background:#fff;border:1px solid #eef0f5;border-radius:18px}.advisor-preview-chart>header,.advisor-preview-students>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:var(--foreground);font-size:.73rem}.advisor-preview-chart>header span,.advisor-preview-students>header span{color:var(--muted);font-size:.62rem;font-weight:500}.advisor-preview-student{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:8px 10px;gap:8px 10px;padding:9px 0;border-top:1px solid #f0f1f6}.advisor-preview-student .avatar{width:34px;height:34px;border-width:2px;border-radius:10px;font-size:.68rem}.advisor-preview-student-copy{min-width:0}.advisor-preview-student-copy span,.advisor-preview-student-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advisor-preview-student-copy strong{color:var(--foreground);font-size:.71rem}.advisor-preview-student-copy span{color:var(--muted);font-size:.59rem}.advisor-preview-progress{grid-column:2;height:5px;overflow:hidden;background:#eceef8;border-radius:999px}.advisor-preview-progress>span{display:block;height:100%;background:var(--primary);border-radius:inherit}.advisor-preview-progress.warning>span{background:var(--accent)}.advisor-preview-bars{display:grid;height:174px;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;grid-gap:4px;gap:4px;padding-top:8px}.advisor-preview-bars>span{display:grid;height:100%;grid-template-rows:1fr auto;align-items:end;justify-items:center;grid-gap:5px;gap:5px}.advisor-preview-bars>span>span{width:min(70%,14px);min-height:10px;background:linear-gradient(to top,var(--primary),#a5b4fc);border-radius:6px 6px 2px 2px}.advisor-preview-bars small{color:var(--muted);font-size:.55rem}.landing-faq{display:grid;width:min(1180px,calc(100% - 40px));grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);align-items:start;grid-gap:clamp(36px,6vw,88px);gap:clamp(36px,6vw,88px);margin:auto;padding:58px 0 110px}.landing-faq-copy{position:-webkit-sticky;position:sticky;top:28px}.landing-faq-copy h2{margin:14px 0 12px;color:var(--foreground);font-size:clamp(2rem,4vw,3.2rem);line-height:1.35;letter-spacing:-.045em}.landing-faq-copy p{margin:0;color:var(--muted);line-height:2}.landing-faq-copy .button{margin-top:28px}.faq-list{display:grid;min-width:0;grid-gap:12px;gap:12px}.faq-item{min-width:0;overflow:hidden;background:hsla(0,0%,100%,.9);border:1px solid var(--border);border-radius:19px;box-shadow:0 10px 28px rgba(30,27,75,.045);scroll-margin-top:24px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.faq-item:hover,.faq-item[open]{border-color:#c7d2fe;box-shadow:0 15px 34px rgba(55,48,163,.075)}.faq-item[open]{background:#fff}.faq-item summary{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;color:var(--foreground);font-size:.94rem;font-weight:900;line-height:1.8;list-style:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.faq-item summary::-webkit-details-marker{display:none}.faq-toggle{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:11px;transition:color .18s ease,background .18s ease,transform .18s ease}.faq-toggle svg{width:18px;height:18px}.faq-item[open] .faq-toggle{color:#fff;background:var(--primary);transform:rotate(180deg)}.faq-answer{padding:0 20px 20px}.faq-answer p{padding-top:15px;margin:0;color:#5c5a70;border-top:1px solid #eef0f5;font-size:.86rem;line-height:2}.info-page{min-height:auto;padding-bottom:90px}.faq-page{width:100%;min-width:0}.faq-page-public{width:min(920px,calc(100% - 40px));margin:0 auto}.faq-page-header{display:flex;width:100%;align-items:flex-end;justify-content:space-between;gap:24px;padding:26px 0 22px;text-align:right}.faq-page-header h1{margin:10px 0 5px;color:var(--foreground);font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.4;letter-spacing:-.035em}.faq-page-header p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.9}.faq-page-header .showcases-kicker{margin-inline:0}.faq-public-back{flex:0 0 auto}.faq-public-back svg{width:18px;height:18px}.faq-page-content{width:100%;margin:0}.site-footer{color:#f8fafc;background:radial-gradient(circle at 10% 20%,rgba(99,102,241,.25),transparent 28%),#1e1b4b}.site-footer-inner{display:grid;width:min(1180px,calc(100% - 40px));grid-template-columns:minmax(0,1.1fr) minmax(0,1.25fr) minmax(230px,.8fr);grid-gap:clamp(36px,6vw,80px);gap:clamp(36px,6vw,80px);margin:auto;padding:68px 0 54px}.site-footer .brand{color:#fff}.site-footer .brand-copy small{color:#c7d2fe}.footer-contact p,.footer-intro p{color:#c8c7dc;font-size:.83rem;line-height:2}.footer-intro p{max-width:360px;margin:20px 0 0}.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:34px;gap:34px}.footer-link-group{display:grid;align-content:start}.footer-contact>strong,.footer-link-group strong{margin-bottom:14px;color:#fff;font-size:.88rem}.footer-link-group a{display:inline-flex;min-height:44px;align-items:center;width:-moz-fit-content;width:fit-content;color:#c8c7dc;font-size:.78rem;transition:color .18s ease}.footer-link-group a:hover{color:#fff}.footer-contact{display:flex;min-width:0;flex-direction:column;align-items:flex-start}.footer-contact p{margin:0 0 15px}.footer-contact-link{display:inline-flex;min-height:44px;align-items:center;padding:0 14px;color:var(--foreground);background:#fff;border-radius:12px;font-size:.76rem;font-weight:900;transition:color .18s ease,background .18s ease}.footer-contact-link:hover{color:var(--primary-dark);background:var(--primary-soft)}.footer-contact>span{margin-top:13px;color:#a9a7c4;font-size:.67rem;line-height:1.8}.site-footer-bottom{display:flex;width:min(1180px,calc(100% - 40px));min-height:72px;align-items:center;justify-content:space-between;gap:22px;padding:14px 0 max(14px,env(safe-area-inset-bottom));margin:auto;color:#a9a7c4;border-top:1px solid rgba(199,210,254,.16);font-size:.68rem}.auth-page{display:grid;min-height:100dvh;grid-template-columns:minmax(440px,.83fr) 1.17fr;background:#fbfbfe}.auth-panel{position:relative;display:flex;flex-direction:column;padding:42px clamp(28px,5vw,80px)}.auth-card{width:min(100%,460px);margin:auto}.auth-back{position:absolute;top:34px;left:clamp(28px,5vw,80px);display:grid;width:44px;height:44px;place-items:center;color:var(--muted);background:#fff;border:1px solid var(--border);border-radius:13px;transition:color .18s ease,border-color .18s ease,background .18s ease}.auth-back:hover{color:var(--primary);background:var(--primary-soft);border-color:#c7d2fe}.auth-back svg{width:20px;height:20px}.auth-card h1{margin:36px 0 8px;color:var(--foreground);font-size:clamp(1.9rem,3vw,2.6rem);letter-spacing:-.04em}.auth-card>p{margin:0 0 25px;color:var(--muted)}.role-switch{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:5px;gap:5px;padding:5px;margin-bottom:24px;background:#f0f1f7;border-radius:14px}.role-option{min-height:44px;color:var(--muted);background:transparent;border-radius:11px;font-weight:800;cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease}.role-option.active{color:var(--primary-dark);background:#fff;box-shadow:var(--shadow-sm)}.field{display:grid;grid-gap:8px;gap:8px;margin-top:18px}.field-row{display:flex;align-items:center;justify-content:space-between}.field label{color:#363449;font-size:.9rem;font-weight:800}.field-hint{color:var(--muted);font-size:.78rem;font-weight:700}.input-wrap{position:relative}.input-leading-icon{position:absolute;top:50%;right:15px;width:20px;height:20px;color:#9694a5;transform:translateY(-50%)}.input{width:100%;min-height:52px;padding:0 47px 0 15px;color:var(--text);background:#fff;border:1px solid #dcdeea;border-radius:13px;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.password-toggle{position:absolute;top:4px;right:4px;display:grid;width:44px;height:44px;place-items:center;color:#77758a;background:transparent;border-radius:10px;transition:color .18s ease,background .18s ease}.password-toggle:hover{color:var(--primary);background:var(--primary-soft)}.password-toggle svg{width:21px;height:21px}.auth-submit{width:100%;margin-top:26px}.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0 14px;color:var(--muted);font-size:.72rem}.auth-divider:after,.auth-divider:before{height:1px;flex:1 1;content:"";background:var(--border)}.social-auth-button{width:100%;min-height:48px;color:#4c4a5c;background:#fff;border:1px solid #dcdeea;border-radius:13px;font-weight:800}.social-auth-status{display:block;margin-top:7px;font-size:.67rem}.auth-switch,.social-auth-status{color:var(--muted);text-align:center}.auth-switch{margin:19px 0 0;font-size:.82rem}.auth-switch a{display:inline-flex;min-height:44px;align-items:center;color:var(--primary);font-weight:900}.demo-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;margin-top:17px;color:#5b566b;background:#f7f7fc;border:1px dashed #d5d6e4;border-radius:12px;font-size:.77rem}.demo-note svg{width:19px;height:19px;flex:0 0 auto;color:var(--primary)}.auth-visual{position:relative;display:grid;min-height:100dvh;place-items:center;padding:60px;overflow:hidden;color:#fff;background:linear-gradient(145deg,#4338ca,#5b52df 55%,#7168e9)}.auth-visual:after,.auth-visual:before{position:absolute;content:"";border:1px solid hsla(0,0%,100%,.12);border-radius:50%}.auth-visual:before{width:580px;height:580px;top:-180px;right:-130px;box-shadow:0 0 0 70px hsla(0,0%,100%,.025),0 0 0 140px hsla(0,0%,100%,.02)}.auth-visual:after{width:380px;height:380px;bottom:-190px;left:-80px;box-shadow:0 0 0 70px hsla(0,0%,100%,.025)}.auth-quote{position:relative;z-index:1;width:min(100%,560px)}.quote-icon{display:grid;width:58px;height:58px;place-items:center;color:#312e81;background:#fbbf24;border-radius:18px;box-shadow:0 14px 30px rgba(30,27,75,.2)}.quote-icon svg{width:31px;height:31px}.auth-quote h2{margin:30px 0 18px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.35;letter-spacing:-.04em}.auth-quote p{max-width:500px;color:#e0e7ff;line-height:2}.quote-person{display:flex;align-items:center;gap:12px;margin-top:30px}.quote-person .avatar{color:#fff;background:hsla(0,0%,100%,.16);border-color:hsla(0,0%,100%,.3)}.quote-person span,.quote-person strong{display:block}.quote-person span{color:#c7d2fe;font-size:.8rem}.app-shell{min-height:100dvh;max-width:100vw;overflow-x:clip}.sidebar{position:fixed;z-index:40;top:0;right:0;display:flex;width:var(--sidebar-width);height:100dvh;flex-direction:column;padding:25px 18px 18px;background:#fff;border-left:1px solid var(--border)}.sidebar .brand{padding-inline:10px}.sidebar-section-label{padding:0 13px;margin:34px 0 8px;color:#aaa8b7;font-size:.7rem;font-weight:800}.sidebar-nav{display:grid;grid-gap:4px;gap:4px}.nav-link{position:relative;display:flex;min-height:48px;align-items:center;gap:12px;padding:0 13px;color:#666478;border-radius:13px;font-size:.9rem;font-weight:700;cursor:pointer;transition:color .18s ease,background .18s ease}.nav-link:hover{color:var(--primary);background:#f6f5ff}.nav-link.active{color:#fff;background:var(--primary);font-weight:900;box-shadow:0 8px 18px rgba(79,70,229,.22)}.nav-link.active:before{content:none}.nav-badge{display:grid;min-width:22px;height:22px;place-items:center;padding:0 6px;margin-right:auto;color:#fff;background:var(--accent);border-radius:99px;font-size:.68rem}.sidebar-spacer{flex:1 1}.sidebar-tip{position:relative;padding:18px;margin:18px 0;overflow:hidden;color:#fff;background:linear-gradient(145deg,#4f46e5,#6d61eb);border-radius:18px}.sidebar-tip:after{position:absolute;bottom:-35px;left:-30px;width:110px;height:110px;content:"";border:22px solid hsla(0,0%,100%,.07);border-radius:50%}.sidebar-tip svg{width:26px;height:26px;color:#fde68a}.sidebar-tip strong{display:block;margin-top:10px;font-size:.85rem}.sidebar-tip p{margin:4px 0 0;color:#e0e7ff;font-size:.7rem;line-height:1.8}.sidebar-user{display:flex;align-items:center;gap:10px;padding-top:15px;border-top:1px solid var(--border)}.sidebar-user-copy{min-width:0;flex:1 1}.sidebar-user span,.sidebar-user strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user strong{color:#363449;font-size:.8rem}.sidebar-user span{color:var(--muted);font-size:.68rem}.sidebar-user .icon-button{width:42px;height:42px;border:0}.sidebar-user .sidebar-user-avatar{border:0;border-radius:50%;box-shadow:none}.app-main{width:auto;min-width:0;min-height:100dvh;max-width:100vw;margin-right:var(--sidebar-width);overflow-x:clip}.app-header{position:-webkit-sticky;position:sticky;z-index:30;top:0;display:flex;min-height:78px;align-items:center;justify-content:space-between;padding:12px clamp(18px,2vw,28px);background:rgba(245,246,251,.89);border-bottom:1px solid rgba(229,231,240,.8);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-title span,.header-title strong{display:block}.header-title strong{color:var(--foreground);font-size:1.15rem;letter-spacing:-.02em}.header-title span{color:var(--muted);font-size:.72rem}.header-actions{display:flex;align-items:center;gap:9px}.header-profile{display:inline-flex;min-height:48px;align-items:center;gap:10px;padding:4px 5px 4px 10px;border-radius:15px;transition:background .18s ease}.header-profile:focus-visible,.header-profile:hover{background:#fff}.header-profile-avatar{width:40px;height:40px;flex:0 0 40px;border:0;border-radius:50%;box-shadow:none}.header-profile-copy{display:grid;min-width:0;line-height:1.45}.header-profile-copy strong{max-width:150px;overflow:hidden;color:var(--foreground);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.header-profile-copy span{color:var(--muted);font-size:.64rem}.header-back-button{width:46px;height:46px;flex:0 0 46px;color:var(--primary);background:#fff}.faq-public-back svg,.header-back-button .icon{transform:scaleX(-1)}.header-tools{position:relative;display:flex;align-items:center;gap:9px}.header-tools .icon-button.active{color:var(--primary);background:var(--primary-soft);border-color:#c7d2fe}.header-tools-backdrop{position:fixed;z-index:44;inset:0;background:rgba(30,27,75,.38);cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.header-panel{position:fixed;z-index:45;top:88px;left:clamp(20px,3vw,42px);width:min(460px,calc(100vw - 28px));overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:0 24px 70px rgba(30,27,75,.2);animation:rise-in .18s both}.header-panel-heading{display:flex;min-height:78px;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px;border-bottom:1px solid var(--border)}.header-panel-heading span,.header-panel-heading strong{display:block}.header-panel-heading strong{color:var(--foreground);font-size:.95rem}.header-panel-heading span{margin-top:2px;color:var(--muted);font-size:.7rem}.header-panel-heading .panel-close{width:42px;height:42px;flex:0 0 auto}.global-search-field{position:relative;display:block;margin:14px 16px 8px}.global-search-field>svg{position:absolute;top:50%;right:14px;width:20px;height:20px;color:var(--muted);transform:translateY(-50%);pointer-events:none}.global-search-field input{width:100%;min-height:48px;padding:0 44px 0 14px;color:var(--foreground);background:#fafafe;border:1px solid var(--border);border-radius:14px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.global-search-field input:focus{background:#fff;border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.header-result-list{display:grid;max-height:min(58vh,520px);grid-gap:4px;gap:4px;padding:8px;overflow-y:auto}.header-result{display:grid;min-height:62px;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;grid-gap:10px;gap:10px;padding:8px;color:var(--foreground);border-radius:13px;cursor:pointer;transition:color .18s ease,background .18s ease}.header-result:focus-visible,.header-result:hover{color:var(--primary-dark);background:var(--primary-soft)}.header-result-icon{display:grid;width:42px;height:42px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:13px}.header-result-arrow,.header-result-icon svg{width:20px;height:20px}.header-result>span:nth-child(2){min-width:0}.header-result small,.header-result strong,.header-result time{display:block}.header-result strong{overflow:hidden;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.header-result small{display:-webkit-box;margin-top:2px;overflow:hidden;color:var(--muted);font-size:.67rem;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:2}.header-result time{margin-top:3px;color:#9896a6;font-size:.62rem}.notification-result{grid-template-columns:42px minmax(0,1fr)}.notification-result.unread{background:#f5f3ff;box-shadow:inset -3px 0 0 var(--primary)}.header-result .notification-new{display:inline-flex;min-height:20px;align-items:center;padding:0 7px;margin-right:7px;color:var(--primary);background:#fff;border-radius:999px;font-size:.58rem;vertical-align:middle}.header-panel-state{min-height:110px;display:grid;place-items:center;padding:20px;color:var(--muted);text-align:center;font-size:.75rem;line-height:1.9}.header-panel-state.error{color:var(--danger)}.in-app-notification{position:fixed;z-index:60;top:86px;right:22px;display:grid;width:min(390px,calc(100vw - 28px));min-height:76px;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;grid-gap:10px;gap:10px;padding:10px;color:var(--foreground);background:#fff;border:1px solid #dcd8ff;border-radius:17px;box-shadow:0 18px 45px rgba(39,34,92,.2);animation:rise-in .22s both}.in-app-notification-icon{display:grid;width:44px;height:44px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:13px}.in-app-notification button svg,.in-app-notification-icon svg{width:20px;height:20px}.in-app-notification a{display:grid;min-width:0;min-height:48px;align-content:center;cursor:pointer}.in-app-notification a span,.in-app-notification a strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.in-app-notification a strong{font-size:.8rem}.in-app-notification a span{margin-top:3px;color:var(--muted);font-size:.72rem}.in-app-notification button{display:grid;width:44px;height:44px;padding:0;place-items:center;color:var(--muted);background:transparent;border:0;border-radius:12px;cursor:pointer;transition:color .18s ease,background .18s ease}.in-app-notification button:focus-visible,.in-app-notification button:hover{color:var(--primary);background:var(--primary-soft)}.pwa-status-banner{position:fixed;z-index:70;right:20px;bottom:max(20px,env(safe-area-inset-bottom));display:grid;width:min(460px,calc(100vw - 28px));min-height:72px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;padding:10px 12px;color:var(--foreground);background:#fff;border:1px solid #dcd8ff;border-radius:17px;box-shadow:0 18px 45px rgba(39,34,92,.2);animation:rise-in .22s both}.pwa-status-banner>svg{width:22px;height:22px;justify-self:center;color:var(--primary)}.pwa-status-banner>span{min-width:0}.pwa-status-banner small,.pwa-status-banner strong{display:block}.pwa-status-banner strong{font-size:.75rem}.pwa-status-banner small{margin-top:2px;color:var(--muted);font-size:.62rem;line-height:1.75}.pwa-status-banner>button:not(.pwa-banner-close){min-height:44px;padding:0 13px;color:#fff;background:var(--primary);border:0;border-radius:11px;font-size:.66rem;font-weight:800;white-space:nowrap;cursor:pointer}.pwa-status-banner.install{grid-template-columns:42px minmax(0,1fr) auto 44px}.pwa-banner-close{display:grid;width:44px;height:44px;padding:0;place-items:center;color:var(--muted);background:transparent;border:0;border-radius:11px;cursor:pointer}.pwa-banner-close:focus-visible,.pwa-banner-close:hover{color:var(--primary);background:var(--primary-soft)}.pwa-banner-close svg{width:18px;height:18px}.pwa-status-banner.offline{border-color:#fed7aa}.pwa-status-banner.offline>svg{color:#a44b0d}.bottom-nav,.mobile-brand,.mobile-menu-button,.sidebar-scrim{display:none}.app-content{width:100%;min-width:0;margin:0;padding:24px clamp(18px,2vw,28px) 50px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.page-heading h1{margin:0;color:var(--foreground);font-size:clamp(1.45rem,2.3vw,2rem);letter-spacing:-.035em}.page-heading p{margin:4px 0 0;color:var(--muted);font-size:.86rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px}.dashboard-summary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.advisor-dashboard-heading{align-items:center;margin-bottom:16px}.advisor-overview{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.advisor-overview-item{display:flex;min-width:166px;min-height:58px;align-items:center;gap:10px;padding:8px 10px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm)}.advisor-overview-icon{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:11px}.advisor-overview-item.green .advisor-overview-icon{color:var(--success);background:var(--success-soft)}.advisor-overview-icon svg{width:20px;height:20px}.advisor-overview-item>span:last-child{display:grid;line-height:1.35}.advisor-overview-item strong{color:var(--foreground);font-size:1.1rem}.advisor-overview-item small{color:var(--muted);font-size:.66rem}.advisor-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;grid-gap:16px;gap:16px}.advisor-students-panel{grid-column:span 8}.advisor-activities-panel{grid-column:span 4}.stat-card{position:relative;display:flex;min-width:0;align-items:center;gap:15px;padding:20px;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);animation:rise-in .42s both;transition:border-color .2s ease,box-shadow .2s ease}.stat-card:nth-child(2){animation-delay:45ms}.stat-card:nth-child(3){animation-delay:90ms}.stat-card:nth-child(4){animation-delay:135ms}.stat-card:hover{border-color:#d7daf0;box-shadow:var(--shadow-md)}.stat-icon{display:grid;width:50px;height:50px;flex:0 0 auto;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:15px}.stat-icon.orange{color:var(--accent);background:var(--accent-soft)}.stat-icon.green{color:var(--success);background:var(--success-soft)}.stat-icon.amber{color:var(--warning);background:var(--warning-soft)}.stat-icon svg{width:24px;height:24px}.stat-copy{min-width:0}.stat-copy small,.stat-copy span,.stat-copy strong{display:block}.stat-copy span{color:var(--muted);font-size:.76rem}.stat-copy strong{margin-top:2px;color:var(--foreground);font-size:1.55rem;line-height:1.25}.stat-copy small{margin-top:4px;color:var(--success);font-size:.68rem;font-weight:700}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.8fr);margin-top:18px}.dashboard-grid,.stack{display:grid;grid-gap:18px;gap:18px}.stack{align-content:start}.panel{min-width:0;padding:22px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.panel-heading h2{margin:0;color:var(--foreground);font-size:1rem}.panel-heading p{margin:3px 0 0;color:var(--muted);font-size:.72rem}.text-link{display:inline-flex;min-height:40px;align-items:center;gap:6px;color:var(--primary);font-size:.75rem;font-weight:800;cursor:pointer}.text-link svg{width:16px;height:16px}.student-list{display:grid;grid-gap:4px;gap:4px}.student-list-head,.student-row{grid-template-columns:minmax(175px,1.35fr) minmax(108px,.75fr) minmax(135px,1fr) minmax(105px,.72fr);column-gap:16px}.student-list-head{display:grid;align-items:center;padding:0 10px 8px;color:var(--muted);border-bottom:1px solid var(--border);font-size:.64rem;font-weight:700}.student-row{display:grid;min-height:67px;align-items:center;padding:8px 10px;border-radius:13px;cursor:pointer;transition:background .18s ease}.student-row:hover{background:#f8f8fc}.student-person{display:flex;min-width:0;align-items:center;gap:11px}.student-avatar-circle{width:46px;height:46px;flex:0 0 46px;border:0;border-radius:50%;box-shadow:none}.student-avatar-circle.avatar-tone-0{color:#1d4ed8;background:#dbeafe}.student-avatar-circle.avatar-tone-1{color:#6d28d9;background:#ede9fe}.student-avatar-circle.avatar-tone-2{color:#047857;background:#d1fae5}.student-avatar-circle.avatar-tone-3{color:#c2410c;background:#ffedd5}.student-avatar-circle.avatar-tone-4{color:#be185d;background:#fce7f3}.student-avatar-circle.avatar-tone-5{color:#0f766e;background:#ccfbf1}.metric-cell span,.metric-cell strong,.student-name,.student-name span{display:block}.student-name{min-width:0;color:#343246;font-size:.82rem;font-weight:800}.metric-cell span,.student-name span{color:var(--muted);font-size:.68rem;font-weight:500}.metric-cell strong{color:#454358;font-size:.77rem}.metric-cell{display:grid;min-width:0;align-content:center}.progress-line{width:100%;height:6px;margin-top:6px;overflow:hidden;background:#ececf3;border-radius:999px}.progress-line span{display:block;height:100%;background:linear-gradient(90deg,#6366f1,#818cf8);border-radius:inherit}.status-pill{display:inline-flex;min-height:28px;align-items:center;gap:6px;padding:0 9px;color:var(--success);background:var(--success-soft);border-radius:999px;font-size:.65rem;font-weight:800;justify-self:start;white-space:nowrap}.status-pill:before{width:6px;height:6px;content:"";background:currentColor;border-radius:50%}.status-pill.warning{color:var(--warning);background:var(--warning-soft)}.status-pill.neutral{color:#666478;background:#f1f2f6}.status-pill.primary{color:var(--primary);background:var(--primary-soft)}.activity-list{display:grid;grid-gap:2px;gap:2px}.activity-item{position:relative;display:flex;gap:12px;padding:9px 0 17px}.activity-icon{z-index:1;display:grid;width:35px;height:35px;flex:0 0 auto;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:11px}.activity-icon svg{width:17px;height:17px}.activity-icon-green{color:#15803d;background:#ecfdf3}.activity-icon-orange{color:#c2410c;background:#fff7ed}.activity-icon-blue{color:#2563eb;background:#eff6ff}.activity-icon-violet{color:#6d28d9;background:#f5f3ff}.activity-icon-neutral{color:#52525b;background:#f4f4f5}.activity-view-all{padding:0;border:0;background:transparent}.activity-copy span,.activity-copy strong,.activity-copy time{display:block}.activity-copy strong{color:#413f52;font-size:.77rem}.activity-copy span{color:var(--muted);font-size:.69rem}.activity-copy time{margin-top:2px;color:#aaa8b7;font-size:.63rem}.chart-heading{align-items:flex-start}.chart-range-control{display:grid;flex:0 0 auto;grid-gap:5px;gap:5px;color:var(--muted);font-size:.64rem;font-weight:700}.chart-range-control select{min-width:114px;min-height:38px;padding:0 11px 0 30px;color:#454358;background:#f8f8fc;border:1px solid var(--border);border-radius:10px;outline:none;font:inherit;font-size:.72rem;font-weight:800;cursor:pointer}.chart-range-control select:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px rgba(79,70,229,.12)}.study-chart-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#d7d6e2 transparent}.week-chart{display:flex;min-height:175px;align-items:flex-end;justify-content:space-between;gap:8px;padding:8px 3px 0;direction:ltr}.week-chart.range-7{min-width:100%}.week-chart.range-14{min-width:650px}.week-chart.range-30{min-width:1320px}.study-chart-scroll[aria-busy=true] .week-chart{opacity:.55}.chart-column{position:relative;display:grid;min-width:34px;flex:1 1;justify-items:center;grid-gap:8px;gap:8px;padding:0;color:var(--muted);background:transparent;border:0;font-family:inherit;font-size:.65rem;cursor:pointer}.chart-bar-wrap{position:relative;display:flex;width:100%;height:125px;align-items:flex-end;justify-content:center;background:linear-gradient(0deg,#f3f4f8 1px,transparent 0) 0 0/100% 31px}.chart-tooltip{position:absolute;z-index:3;top:3px;left:50%;display:grid;width:max-content;max-width:112px;grid-gap:1px;gap:1px;padding:4px 7px;color:#fff;background:#29263f;border-radius:6px;direction:rtl;font-size:.56rem;line-height:1.35;text-align:center;box-shadow:0 5px 14px rgba(33,30,66,.2);pointer-events:none;transform:translateX(-50%)}.chart-tooltip span,.chart-tooltip strong{white-space:nowrap}.chart-tooltip.edge-start{right:auto;left:0;transform:none}.chart-tooltip.edge-end{right:0;left:auto;transform:none}.chart-bar{width:min(70%,28px);min-height:8px;background:linear-gradient(0deg,#4f46e5,#a5b4fc);border-radius:7px 7px 3px 3px;transition:filter .18s ease,transform .18s ease}.chart-column.active .chart-bar,.chart-column:focus-visible .chart-bar,.chart-column:hover .chart-bar{filter:saturate(1.18);transform:translateY(-2px)}.chart-column:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:8px}.chart-label{direction:rtl}.chart-help{margin:10px 0 0;color:var(--muted);font-size:.62rem;text-align:center}.student-hero{position:relative;min-height:0;padding:clamp(25px,4vw,42px);overflow:hidden;color:#fff;background:linear-gradient(125deg,#4338ca,#6155e5 62%,#766bed);border-radius:var(--radius-lg);box-shadow:0 18px 45px rgba(67,56,202,.18)}.student-hero-main{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:30px;gap:30px}.student-hero:after,.student-hero:before{position:absolute;content:"";border:25px solid hsla(0,0%,100%,.06);border-radius:50%}.student-hero:before{top:-90px;left:-45px;width:230px;height:230px}.student-hero:after{right:43%;bottom:-130px;width:190px;height:190px}.student-hero-copy{z-index:1}.student-hero-copy span{color:#ddd6fe;font-size:.82rem}.student-hero-copy h1{margin:7px 0 12px;font-size:clamp(1.7rem,4vw,2.8rem);letter-spacing:-.04em}.student-hero-copy p{max-width:560px;margin:0;color:#e0e7ff;font-size:.88rem}.hero-plan-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px}.hero-plan-meta span{display:inline-flex;align-items:center;gap:7px;color:#fff;font-size:.78rem;font-weight:800}.hero-plan-meta svg{width:18px;height:18px;color:#fbbf24}.progress-ring{position:relative;z-index:1;display:grid;width:145px;height:145px;place-items:center;background:conic-gradient(#fb923c 0 var(--student-progress,0),hsla(0,0%,100%,.16) var(--student-progress,0) 100%);border-radius:50%}.progress-ring:before{position:absolute;width:112px;height:112px;content:"";background:#574bcf;border-radius:50%}.progress-ring-copy{z-index:1;text-align:center}.progress-ring-copy span,.progress-ring-copy strong{display:block}.progress-ring-copy strong{font-size:1.65rem}.progress-ring-copy span{max-width:82px;color:#ddd6fe;font-size:.72rem;line-height:1.55}.student-hero-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:28px;padding-top:18px;border-top:1px solid hsla(0,0%,100%,.16)}.student-hero-stat{display:flex;min-width:0;min-height:66px;align-items:center;gap:10px;padding:10px 12px;background:hsla(0,0%,100%,.09);border:1px solid hsla(0,0%,100%,.12);border-radius:13px}.student-hero-stat>svg{width:20px;height:20px;flex:0 0 auto;color:#fdba74}.student-hero-stat small,.student-hero-stat span,.student-hero-stat strong{display:block;min-width:0}.student-hero-stat small{overflow:hidden;color:#dcd9ff;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.student-hero-stat strong{margin-top:2px;color:#fff;font-size:.94rem}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-top:18px}.quick-action{display:flex;min-height:105px;align-items:center;gap:14px;padding:17px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}.quick-action:hover{border-color:#c7d2fe;box-shadow:var(--shadow-md)}.quick-action:focus-visible{outline:3px solid var(--ring);outline-offset:2px;border-color:var(--primary)}.quick-action:active{background:#f8f8ff}.quick-action-summary{cursor:default}.quick-action-summary:hover{border-color:var(--border);box-shadow:none}.quick-action-summary:active{background:#fff}.quick-action-icon{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:15px}.quick-action:nth-child(2) .quick-action-icon{color:var(--accent);background:var(--accent-soft)}.quick-action:nth-child(3) .quick-action-icon{color:var(--success);background:var(--success-soft)}.quick-action:nth-child(4) .quick-action-icon{color:#7c3aed;background:#f5f3ff}.quick-action span,.quick-action strong{display:block}.quick-action strong{color:#3c3a4e;font-size:.82rem}.quick-action span{color:var(--muted);font-size:.67rem}.assignment-list{display:grid;grid-gap:10px;gap:10px}.student-plan-section{margin-top:18px}.assignment-item{display:flex;align-items:center;gap:13px;padding:12px;background:#fafafe;border:1px solid #f0f0f5;border-radius:14px}.assignment-check{display:grid;width:39px;height:39px;flex:0 0 auto;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:12px}.assignment-check svg{width:19px;height:19px}.assignment-copy{min-width:0;flex:1 1}.assignment-copy span,.assignment-copy strong{display:block}.assignment-copy strong{overflow:hidden;color:#3d3b4e;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.assignment-copy span{color:var(--muted);font-size:.67rem}.section-toolbar{display:flex;align-items:flex-end;gap:10px;margin-bottom:18px}.search-box{position:relative;max-width:430px;flex:1 1}.search-box svg{position:absolute;top:50%;right:14px;width:19px;height:19px;color:#9c9aaa;transform:translateY(-50%)}.search-box input{width:100%;min-height:46px;padding:0 43px 0 14px;color:var(--text);background:#fff;border:1px solid var(--border);border-radius:13px;outline:none}.search-box input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.filter-control{display:grid;min-width:150px;grid-gap:4px;gap:4px}.filter-control>span:not(.sr-only){padding-inline:3px;color:var(--muted);font-size:.62rem;font-weight:700}.filter-control input,.filter-control select{width:100%;min-height:48px;padding:0 12px;color:var(--foreground);background:#fff;border:1px solid var(--border);border-radius:13px;outline:none;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}.filter-control input:focus,.filter-control select:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.date-filter{min-width:145px}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.content-card{display:block;position:relative;min-height:210px;padding:20px;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}.student-exams-heading{align-items:flex-end}.student-exams-heading .button svg{width:18px;height:18px}.student-exams-layout{display:grid;grid-gap:18px;gap:18px}.student-exam-section{padding:18px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);scroll-margin-top:92px}.student-exam-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}.student-exam-section-heading h2{margin:0 0 3px;color:var(--foreground);font-size:1rem}.student-exam-section-heading p{margin:0;color:var(--muted);font-size:.7rem;line-height:1.85}.student-exam-section-heading>span{flex:0 0 auto;padding:6px 10px;color:var(--primary);background:var(--primary-soft);border-radius:999px;font-size:.62rem;font-weight:800}.student-exam-list{display:grid;grid-gap:8px;gap:8px}.student-exam-row{min-width:0;padding:11px 12px;background:#fafafe;border:1px solid #ececf4;border-radius:14px}.student-exam-history-row{padding:0;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease}.student-exam-history-row:hover,.student-exam-history-row[open]{border-color:#c7d2fe;box-shadow:var(--shadow-sm)}.student-exam-history-row>summary,.student-exam-row:not(details){display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;grid-gap:11px;gap:11px}.student-exam-history-row>summary{grid-template-columns:40px minmax(0,1fr) auto 18px;min-height:70px;padding:10px 12px;list-style:none;cursor:pointer;touch-action:manipulation}.student-exam-history-row>summary::-webkit-details-marker{display:none}.student-exam-history-row>summary:focus-visible{outline:3px solid var(--ring);outline-offset:-3px}.student-exam-icon{display:grid;width:40px;height:40px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:12px}.student-exam-icon.history{color:#168451;background:#e9f9f0}.student-exam-icon svg{width:20px;height:20px}.student-exam-copy{min-width:0}.student-exam-copy strong,.student-exam-copy>span{display:block}.student-exam-copy strong{overflow:hidden;color:var(--foreground);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.student-exam-copy>span{margin-top:3px;color:var(--muted);font-size:.62rem;line-height:1.8}.student-exam-status{min-width:82px;padding:6px 9px;text-align:center;border-radius:999px;font-size:.6rem;font-weight:800;white-space:nowrap}.student-exam-status.upcoming{color:var(--primary);background:var(--primary-soft)}.student-exam-status.completed{color:#147a4b;background:#e9f9f0}.student-exam-chevron{width:17px;height:17px;color:#9693a4;transition:transform .18s ease}.student-exam-history-row[open] .student-exam-chevron{transform:rotate(-90deg)}.student-exam-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:7px;gap:7px;padding:0 12px 12px 63px}.student-exam-result>div{min-width:0;padding:9px 10px;background:#fff;border:1px solid #eeeef5;border-radius:11px}.student-exam-result span,.student-exam-result strong{display:block}.student-exam-result span{color:var(--muted);font-size:.55rem}.student-exam-result strong{margin-top:3px;overflow:hidden;color:var(--foreground);font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.student-exam-empty{display:flex;align-items:center;gap:11px;min-height:70px;padding:11px 13px;color:var(--muted);background:#fafafe;border:1px dashed #dcddea;border-radius:14px}.student-exam-empty>svg{width:21px;height:21px;flex:0 0 auto;color:var(--primary)}.student-exam-empty span,.student-exam-empty strong{display:block}.student-exam-empty strong{color:var(--foreground);font-size:.72rem}.student-exam-empty span{margin-top:2px;font-size:.62rem;line-height:1.8}.student-reports-heading{align-items:flex-end}.student-reports-heading .button svg{width:18px;height:18px}.student-report-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.student-report-row{display:grid;min-width:0;grid-template-columns:42px minmax(0,1fr);align-items:start;grid-gap:11px;gap:11px;padding:13px;background:#fff;border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow-sm)}.student-report-row-icon{display:grid;width:42px;height:42px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:12px}.student-report-row-icon svg{width:20px;height:20px}.student-report-row-copy{min-width:0}.student-report-row h2{margin:0;overflow:hidden;color:var(--foreground);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.student-report-row p{display:-webkit-box;margin:4px 0 0;overflow:hidden;color:var(--muted);font-size:.62rem;line-height:1.8;-webkit-box-orient:vertical;-webkit-line-clamp:1}.student-report-row-copy>div{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:8px;color:#777486;font-size:.58rem}.student-report-row-copy>div span,.student-report-row-copy>div time{display:inline-flex;align-items:center;gap:4px}.student-report-row-copy>div svg{width:14px;height:14px;color:var(--primary)}.student-report-empty{min-height:88px;background:#fff}.library-heading{align-items:center}.library-add-button{min-width:172px;min-height:54px;flex:0 0 auto;gap:10px;padding-inline:18px;white-space:nowrap;font-size:.78rem}.library-add-button svg{width:32px;height:32px}.library-tools{position:relative;z-index:4;margin-bottom:16px}.library-search-row{display:flex;align-items:center;gap:10px}.library-search{max-width:560px;min-width:0;flex:0 1 560px;min-height:46px}.library-filter-details{position:relative;flex:0 0 auto}.library-filter-trigger{min-width:112px;min-height:46px;justify-content:center;cursor:pointer}.library-filter-details.open>.library-filter-trigger{color:var(--primary);border-color:#a5b4fc;background:var(--primary-soft)}.library-filter-count{display:grid;min-width:22px;height:22px;place-items:center;padding-inline:5px;color:#fff;background:var(--primary);border-radius:999px;font-size:.62rem}.library-filter-panel{position:absolute;z-index:20;inset-block-start:calc(100% + 8px);inset-inline-start:0;inset-inline-end:auto;display:grid;width:min(720px,calc(100vw - 40px));grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;padding:16px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.library-filter-panel label{display:grid;grid-gap:5px;gap:5px}.library-filter-panel label>span{color:var(--muted);font-size:.68rem;font-weight:700}.library-filter-panel select{width:100%;min-height:44px;padding-inline:11px;color:var(--foreground);background:#fbfbfe;border:1px solid var(--border);border-radius:11px;outline:none;cursor:pointer}.library-filter-panel select:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.library-filter-actions{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;min-height:36px;padding-top:4px;color:var(--muted);font-size:.68rem}.library-active-filters button,.library-filter-actions button{min-height:44px;padding-inline:10px;color:var(--primary);background:transparent;border:0;border-radius:9px;font:inherit;font-weight:800;cursor:pointer}.library-active-filters button:hover,.library-filter-actions button:hover{background:var(--primary-soft)}.library-active-filters button:focus-visible,.library-filter-actions button:focus-visible,.library-filter-trigger:focus-visible{outline:3px solid var(--ring);outline-offset:2px}.library-filter-actions button:disabled{opacity:.45;cursor:not-allowed}.library-active-filters{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding-inline:4px;color:var(--muted);font-size:.68rem}.library-content-types{display:flex;max-width:100%;align-items:center;gap:8px;margin-top:10px;padding:2px 0 5px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#c8c6db transparent}.library-content-types button{display:inline-flex;min-width:max-content;min-height:44px;flex:0 0 auto;align-items:center;justify-content:center;gap:7px;padding:8px 14px;color:#57546b;background:#fff;border:1px solid #d7d6e2;border-radius:999px;font:inherit;font-size:.7rem;font-weight:800;cursor:pointer;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.library-content-types button:hover{color:#3730a3;background:#f8f7ff;border-color:#a5b4fc}.library-content-types button.active{color:#3730a3;background:#eeedff;border-color:#8f8be0;box-shadow:inset 0 0 0 1px rgba(79,70,229,.08)}.library-content-types button:focus-visible{outline:3px solid var(--ring);outline-offset:2px}.library-content-types svg{width:20px;height:20px;flex:0 0 auto}.library-file-list{--library-grid:52px minmax(220px,1.5fr) minmax(150px,1fr) 110px;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm)}.library-file-list.advisor{--library-grid:52px minmax(220px,1.5fr) minmax(150px,1fr) 110px 148px}.library-file-list-head,.library-file-row{display:grid;grid-template-columns:var(--library-grid);align-items:center;grid-gap:12px;gap:12px}.library-file-list-head{min-height:48px;padding:0 16px;color:#656176;background:#f8f8fc;border-bottom:1px solid var(--border);font-size:.65rem;font-weight:850}.library-file-rows{margin:0;padding:0;list-style:none}.library-file-row{min-height:76px;padding:11px 16px;border-bottom:1px solid #ecebf3;transition:background .18s ease}.library-file-row:last-child{border-bottom:0}.library-file-row:hover{background:#fbfbff}.library-file-icon{display:grid;width:44px;height:44px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:13px}.library-file-icon svg{width:22px;height:22px}.library-file-icon.type-audio{color:#047857;background:#ecfdf5}.library-file-icon.type-video{color:#c2410c;background:#fff7ed}.library-file-icon.type-external_link{color:#0369a1;background:#f0f9ff}.library-file-name,.library-file-subject{display:grid;min-width:0;grid-gap:3px;gap:3px}.library-file-name strong,.library-file-subject strong{overflow:hidden;color:var(--foreground);font-size:.76rem;line-height:1.6;text-overflow:ellipsis;white-space:nowrap}.library-file-name span,.library-file-subject span{overflow:hidden;color:var(--muted);font-size:.6rem;text-overflow:ellipsis;white-space:nowrap}.library-file-details{display:contents}.library-file-size{color:#3f3b4f;font-size:.68rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.library-file-size.unknown{color:#858293}.library-file-actions{display:flex;align-items:center;justify-content:flex-start;gap:6px;direction:rtl}.library-action-feedback button,.library-file-actions button,.library-modal-close{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;padding:0;color:#4f46e5;background:transparent;border:1px solid #d8d6e6;border-radius:12px;cursor:pointer;transition:color .18s ease,background .18s ease,border-color .18s ease}.library-action-feedback button:hover,.library-file-actions button:hover,.library-modal-close:hover{background:#f2f1ff;border-color:#a5b4fc}.library-file-actions button.send{color:#047857}.library-file-actions button.send:hover{background:#ecfdf5;border-color:#86efac}.library-file-actions button.delete{color:#b42318}.library-file-actions button.delete:hover{background:#fff1f0;border-color:#fca5a5}.library-action-feedback button svg,.library-file-actions svg,.library-modal-close svg{width:19px;height:19px}.library-action-feedback button:focus-visible,.library-file-actions button:focus-visible,.library-modal-close:focus-visible{outline:3px solid var(--ring);outline-offset:2px}.library-action-feedback{display:flex;min-height:48px;align-items:center;gap:9px;margin-bottom:14px;padding:8px 12px;color:#166534;background:#ecfdf3;border:1px solid #86efac;border-radius:13px;font-size:.72rem;font-weight:800}.library-action-feedback>svg{width:20px;height:20px}.library-action-feedback button{width:36px;height:36px;min-width:36px;-webkit-margin-start:auto;margin-inline-start:auto;color:#166534;border:0}.library-action-modal{width:min(620px,100%)}.library-modal-close{color:#5d596b}.library-share-hint{display:block;margin-top:8px;color:var(--muted);font-size:.64rem;line-height:1.9}.library-delete-confirmation>p{margin:0 0 14px;color:var(--foreground);font-size:.82rem;line-height:1.9}.library-empty-state{min-height:300px}.library-create-form{max-width:760px}.library-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0 14px;gap:0 14px}.library-create-form .button{margin-top:8px}.planner-heading{align-items:flex-end}.planner-date{display:inline-block;margin-bottom:5px;color:var(--primary);font-size:.7rem;font-weight:800}.planner-day-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:16px}.planner-day-summary>div{display:grid;min-height:76px;align-content:center;grid-gap:3px;gap:3px;padding:12px 15px;background:#fff;border:1px solid var(--border);border-radius:15px}.planner-day-summary strong{color:var(--foreground);font-size:1rem}.planner-day-summary span{color:var(--muted);font-size:.64rem}.planner-feedback{margin-bottom:12px;padding:10px 13px;color:#3730a3;background:#eef2ff;border:1px solid #c7d2fe;border-radius:12px;font-size:.72rem}.planner-section{margin-bottom:16px;padding:17px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg)}.planner-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:13px}.planner-section>header h2{margin:0;color:var(--foreground);font-size:1rem}.planner-section>header p{margin:3px 0 0;color:var(--muted);font-size:.68rem}.planner-section>header>span{flex:0 0 auto;padding:6px 9px;color:var(--primary);background:var(--primary-soft);border-radius:999px;font-size:.62rem;font-weight:800}.planner-activities{display:grid;grid-gap:9px;gap:9px}.planner-activity{overflow:hidden;background:#fcfcff;border:1px solid var(--border);border-radius:15px;transition:border-color .18s ease,box-shadow .18s ease}.planner-activity.expanded{border-color:#a5b4fc;box-shadow:var(--shadow-sm)}.planner-activity.running{border-color:#818cf8;background:#f7f7ff}.planner-activity.completed{background:#fbfefc}.planner-activity-summary{display:grid;width:100%;min-height:82px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;grid-gap:11px;gap:11px;padding:11px 12px;color:inherit;text-align:right;background:transparent;border:0;cursor:pointer}.planner-activity-summary:hover{background:rgba(79,70,229,.035)}.planner-activity-summary:focus-visible{outline:3px solid var(--ring);outline-offset:-3px}.planner-activity-icon{display:grid;width:42px;height:42px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:12px}.planner-activity-icon svg{width:21px;height:21px}.planner-activity.running .planner-activity-icon{color:#047857;background:#ecfdf5}.planner-activity.completed .planner-activity-icon{color:#15803d;background:#f0fdf4}.planner-activity-copy{display:grid;min-width:0;grid-gap:2px;gap:2px}.planner-activity-copy strong{overflow:hidden;color:var(--foreground);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.planner-activity-copy>span{overflow:hidden;color:var(--muted);font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.planner-activity-copy .planner-activity-time{color:#777587;font-size:.6rem}.planner-status{min-width:82px;padding:6px 8px;color:#57546b;text-align:center;background:#f0f0f5;border-radius:999px;font-size:.58rem;font-weight:800}.planner-status.active{color:#047857;background:#ecfdf5}.planner-status.done{color:#15803d;background:#f0fdf4}.planner-activity-detail{display:grid;grid-gap:12px;gap:12px;padding:0 65px 14px 12px}.planner-detail-action{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:12px;border-top:1px solid var(--border)}.planner-detail-action p{max-width:620px;margin:0;color:var(--muted);font-size:.68rem;line-height:1.8}.planner-detail-action .button{flex:0 0 auto}.planner-live-timer{display:grid;justify-items:start;grid-gap:2px;gap:2px;padding:13px 14px;color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:13px}.planner-live-timer small,.planner-live-timer span{font-size:.62rem}.planner-live-timer strong{color:#064e3b;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.55rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.04em}.planner-stop-button{justify-self:start;color:#fff;background:#b91c1c}.planner-stop-button:hover{background:#991b1b}.planner-completed-note,.planner-upcoming-note{display:flex;min-height:46px;align-items:center;gap:8px;padding:10px 12px;color:#166534;background:#f0fdf4;border-radius:11px;font-size:.68rem}.planner-upcoming-note{color:#57546b;background:#f4f4f8}.planner-completed-note svg,.planner-upcoming-note svg{width:18px;height:18px}.planner-upcoming-section{background:hsla(0,0%,100%,.72)}.planner-empty-day{display:grid;min-height:150px;place-items:center;align-content:center;grid-gap:6px;gap:6px;padding:20px;color:var(--muted);text-align:center;background:#fafaff;border:1px dashed var(--border);border-radius:14px}.planner-empty-day svg{width:30px;height:30px;color:#16a34a}.planner-empty-day strong{color:var(--foreground);font-size:.8rem}.planner-empty-day span{font-size:.66rem}.timed-report-form{max-width:800px}.timed-report-summary{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;margin-bottom:20px;padding:13px;color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:14px}.timed-report-icon{display:grid;width:46px;height:46px;place-items:center;background:#fff;border-radius:13px}.timed-report-icon svg{width:23px;height:23px}.timed-report-summary>div{display:grid;grid-gap:2px;gap:2px}.timed-report-summary>div small,.timed-report-summary>div span{font-size:.62rem}.timed-report-summary>div strong{color:#064e3b;font-size:.9rem}.timed-report-helper{display:flex;align-items:center;gap:7px;margin:0 0 15px;color:#166534;font-size:.68rem}.timed-report-helper svg{width:18px;height:18px}.timed-report-form input[readonly]{color:#57546b;background:#f5f5f8}.student-profile-heading{align-items:flex-end}.student-profile-heading .text-link{margin-bottom:6px}.student-profile-hero{display:flex;align-items:center;gap:16px;margin-bottom:18px}.student-profile-avatar{width:66px;height:66px;flex:0 0 auto;color:#1d4ed8;background:#dbeafe;font-size:1.05rem}.student-profile-identity{min-width:0}.student-profile-title{display:flex;align-items:center;gap:10px}.student-profile-title h2{margin:0;color:var(--foreground);font-size:1.2rem}.student-profile-identity p,.student-profile-identity>span{display:block;margin:4px 0 0;color:var(--muted);font-size:.74rem}.student-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.student-assignment-form{display:grid;grid-gap:14px;gap:14px;padding:16px;margin-bottom:16px;background:var(--surface-soft);border:1px solid var(--border);border-radius:16px}.student-assignment-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.student-assignment-form-heading h3{margin:0;color:var(--foreground);font-size:.92rem}.student-assignment-form-heading p{margin:3px 0 0;color:var(--muted);font-size:.68rem}.student-assignment-form-heading .icon-button{width:44px;height:44px;flex:0 0 auto}.student-assignment-form .field{margin:0}.student-assignment-form .button{justify-self:start}.profile-record-list{display:grid;grid-gap:6px;gap:6px}.profile-record{display:flex;min-width:0;align-items:center;gap:11px;padding:10px 8px;border-radius:13px;transition:background .18s ease}.profile-record:hover{background:#f8f8fc}.profile-record-copy{min-width:0;flex:1 1}.profile-record-copy span,.profile-record-copy strong,.profile-record-copy time{display:block}.profile-record-copy strong{overflow:hidden;color:#3d3b4e;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.profile-record-copy span,.profile-record-copy time{color:var(--muted);font-size:.66rem;line-height:1.7}.profile-record-copy time{margin-top:2px;color:#9a98a8}.data-state.compact{min-height:90px}.students-table-panel{width:100%;min-width:0;max-width:100%;padding:0;overflow:hidden}.students-table-toolbar{align-items:flex-end;padding:20px;margin:0;border-bottom:1px solid var(--border)}.table-filters{position:relative;display:flex;min-width:0;align-items:flex-end;gap:10px}.filter-select{position:relative;min-width:145px}.filter-select-label{display:block;margin-bottom:4px;color:var(--muted);font-size:.62rem;font-weight:700}.filter-select-trigger{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:0 13px;color:var(--foreground);background:#fff;border:1px solid var(--border);border-radius:13px;font-size:.73rem;font-weight:700;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.filter-select-trigger:hover{background:#fafaff;border-color:#c7c4ff}.filter-select-trigger:focus-visible,.filter-select.open .filter-select-trigger{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.filter-select-chevron{width:8px;height:8px;flex:0 0 8px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}.filter-select.open .filter-select-chevron{transform:rotate(225deg) translate(-1px,-1px)}.filter-select-menu{position:absolute;z-index:25;top:calc(100% + 7px);right:0;display:grid;width:max(100%,190px);max-height:240px;grid-gap:3px;gap:3px;padding:6px;overflow-y:auto;background:#fff;border:1px solid #d8d7eb;border-radius:14px;box-shadow:0 18px 42px rgba(30,27,75,.16);animation:rise-in .16s both}.filter-select-menu button{display:flex;width:100%;min-height:42px;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;color:#454358;background:transparent;border-radius:9px;font-size:.72rem;text-align:right;cursor:pointer;transition:color .16s ease,background .16s ease}.filter-select-menu button:focus-visible,.filter-select-menu button:hover{color:var(--primary-dark);background:#f3f2ff}.filter-select-menu button.selected{color:var(--primary-dark);background:#e8e7ff;font-weight:900}.filter-select-menu button svg{width:17px;height:17px;color:var(--primary)}.table-search{display:flex;min-width:250px;min-height:48px;align-items:center;gap:8px;padding-inline:13px;background:#fff;border:1px solid var(--border);border-radius:13px}.table-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.table-search svg{width:19px;height:19px;flex:0 0 auto;color:var(--muted)}.table-search input{width:100%;min-width:0;padding:0;color:var(--foreground);background:transparent;border:0;outline:0}.compact-filter{min-width:132px}.compact-filter select{min-height:48px}.data-table-scroll{width:100%;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;contain:inline-size paint;isolation:isolate}.data-table-scroll:focus-visible{outline:3px solid var(--ring);outline-offset:-3px}.students-data-table{width:100%;min-width:850px;border-collapse:collapse;color:var(--foreground);font-size:.72rem}.students-data-table td,.students-data-table th{padding:14px 13px;text-align:right;vertical-align:middle;border-bottom:1px solid #eeeef5}.students-data-table thead th{color:var(--muted);background:#fafafd;font-size:.64rem;font-weight:800;white-space:nowrap}.students-data-table tbody tr{transition:background .16s ease}.students-data-table tbody tr:hover>td,.students-data-table tbody tr:hover>th{background:#fafaff}.students-data-table tbody tr:last-child td,.students-data-table tbody tr:last-child th{border-bottom:0}.student-table-person span,.students-data-table td span,.students-data-table td strong{display:block}.student-table-person span,.students-data-table td>span{margin-top:3px;color:var(--muted);font-size:.62rem}.student-table-person{min-width:215px}.student-table-profile{display:flex;min-height:44px;align-items:center;gap:10px;color:var(--foreground);font-size:.76rem}.student-table-profile .student-table-avatar{width:38px;height:38px;flex:0 0 38px;margin:0;border:0;border-radius:50%}.student-table-status{text-align:center!important}.student-table-status .status-pill{justify-content:center}.student-table-identity{display:grid!important;min-width:0;margin:0!important;color:inherit!important}.student-table-identity strong{overflow:hidden;color:inherit;text-overflow:ellipsis;white-space:nowrap}.student-table-identity span{margin-top:2px;color:var(--muted);font-size:.61rem;font-weight:500}.table-percent{display:inline-flex!important;width:116px;align-items:center;gap:8px;margin:0!important}.table-percent-value{min-width:30px;margin:0!important;color:var(--foreground)!important;font-weight:800;text-align:center}.table-percent-track{width:78px;height:5px;margin:0!important;overflow:hidden;background:#e9e9f3;border-radius:999px}.table-percent-track>span{display:block;height:100%;margin:0!important;background:var(--primary);border-radius:inherit}.students-data-table .status-pill{min-width:72px;min-height:30px;justify-content:center;margin:0;color:#fff;background:#15803d;font-size:.65rem;text-align:center}.students-data-table .status-pill.neutral{color:#fff;background:#52525b}.table-row-action{display:inline-flex;min-height:36px;align-items:center;gap:5px;padding:6px 9px;color:var(--primary);background:transparent;border:0;border-radius:9px;font:inherit;font-weight:800;white-space:nowrap;cursor:pointer}.table-row-action:hover{background:var(--primary-soft)}.table-row-action svg{width:15px;height:15px}.error-state{color:#b42318}.organization-feedback{margin:-10px 0 18px}.form-feedback-error{color:#b42318;background:#fff1f2;border-color:#fecdd3}.organization-page-heading{align-items:end}.organization-table-panel{padding:0;overflow:hidden}.organization-list-heading{padding:19px 22px;margin:0;border-bottom:1px solid var(--border)}.organization-table{min-width:0}.organization-school-row,.organization-table-head{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(105px,.55fr) minmax(125px,.65fr) minmax(190px,.8fr);align-items:center;grid-gap:16px;gap:16px}.organization-table-head{min-height:48px;padding:10px 22px;color:var(--muted);background:#f8f8fc;font-size:.7rem;font-weight:800}.organization-school-group,.organization-table-head{border-bottom:1px solid var(--border)}.organization-school-group:last-child{border-bottom:0}.organization-school-row{min-height:78px;padding:13px 22px;transition:background .16s ease}.organization-school-group.expanded .organization-school-row,.organization-school-row:hover{background:#fbfbfe}.organization-class-name small,.organization-class-name strong,.organization-school-name small,.organization-school-name strong,.organization-school-row>span:not(.organization-school-name):not(.organization-actions) small,.organization-school-row>span:not(.organization-school-name):not(.organization-actions) strong{display:block}.organization-school-name{display:flex;min-width:0;align-items:center;gap:12px}.organization-building-icon{display:inline-flex;width:42px;height:42px;flex:0 0 42px;align-items:center;justify-content:center;color:var(--primary);background:var(--primary-soft);border-radius:13px}.organization-building-icon svg{width:21px;height:21px}.organization-class-name strong,.organization-school-name strong{color:var(--foreground);font-size:.79rem}.organization-class-name small,.organization-school-row small{margin-top:2px;color:var(--muted);font-size:.65rem}.organization-school-row>span:not(.organization-school-name):not(.organization-actions) strong{color:var(--foreground);font-size:.85rem}.organization-actions,.organization-class-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.organization-icon-button{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;color:#55536a;background:#fff;border:1px solid var(--border);border-radius:11px;transition:color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease}.organization-icon-button:hover{color:var(--primary);background:var(--primary-soft);border-color:#c7d2fe;transform:translateY(-1px)}.organization-icon-button.destructive:hover{color:#b42318;background:#fff1f2;border-color:#fecdd3}.organization-icon-button svg{width:18px;height:18px}.organization-icon-button.disclosure svg{transition:transform .18s ease}.organization-icon-button.disclosure.open svg{transform:rotate(180deg)}.organization-class-list{padding:5px 78px 14px 22px;background:#fafafe;border-top:1px solid #eeeef5}.organization-class-row{display:grid;grid-template-columns:16px minmax(200px,1fr) minmax(110px,.45fr) auto;min-height:62px;align-items:center;grid-gap:12px;gap:12px;border-bottom:1px dashed #ddddea}.organization-class-row:last-child{border-bottom:0}.organization-class-branch{width:10px;height:10px;background:#c7d2fe;border-radius:50%}.organization-class-students{color:var(--muted);font-size:.69rem}.organization-view-link{display:inline-flex;min-height:38px;align-items:center;gap:6px;padding:6px 10px;color:var(--primary);background:var(--primary-soft);border-radius:11px;font-size:.7rem;font-weight:850}.organization-view-link svg{width:17px;height:17px}.organization-empty-classes{padding:15px 0;color:var(--muted);font-size:.7rem}.modal-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:20px;background:rgba(30,27,75,.45);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.organization-modal{width:min(520px,100%);max-height:calc(100dvh - 40px);padding:22px;overflow-y:auto;background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:0 28px 80px rgba(30,27,75,.25);animation:rise-in .18s both}.organization-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.confirmation-modal h2,.organization-modal-heading h2{margin:0;color:var(--foreground);font-size:1.05rem}.confirmation-modal p,.organization-modal-heading p{margin:4px 0 0;color:var(--muted);font-size:.72rem;line-height:1.9}.organization-modal .field{margin-bottom:14px}.organization-inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.organization-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:8px}.button-danger{color:#fff;background:var(--danger);box-shadow:0 9px 22px rgba(220,38,38,.2)}.button-danger:hover{background:#b91c1c}.confirmation-modal{text-align:center}.confirmation-modal .organization-modal-actions{justify-content:center;margin-top:17px}.confirmation-icon{display:inline-flex;width:54px;height:54px;align-items:center;justify-content:center;margin-bottom:14px;color:#b42318;background:#fff1f2;border-radius:17px}.confirmation-icon svg{width:25px;height:25px}.page-eyebrow{display:block;margin-bottom:3px;color:var(--primary);font-size:.68rem;font-weight:850}.class-students-heading{margin-bottom:12px}.student-profile-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.student-placement-panel{margin-bottom:18px}.panel-heading-icon{width:24px;height:24px;color:var(--primary)}.student-placement-form{display:grid;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto;align-items:end;grid-gap:12px;gap:12px}.student-placement-form .field{margin:0}.planner-record-wrap{border-bottom:1px solid #eeeef5}.planner-record-wrap:last-child{border-bottom:0}.planner-record-actions{display:grid;justify-items:end;grid-gap:4px;gap:4px}.assignment-edit-form{margin:0 8px 14px}.form-actions{display:flex;flex-wrap:wrap;gap:8px}.messages-page-heading,.messages-summary{align-items:center}.messages-summary{display:inline-flex;min-height:44px;gap:8px;padding:9px 13px;color:var(--primary);background:var(--primary-soft);border-radius:12px;font-size:.7rem;font-weight:800}.messages-summary svg{width:19px;height:19px}.conversation-list-panel{padding:0;overflow:hidden}.conversation-toolbar{display:grid;grid-template-columns:minmax(150px,auto) minmax(220px,1fr) auto auto auto;align-items:end;grid-gap:10px;padding:18px 20px;border-bottom:1px solid var(--border)}.conversation-toolbar h2,.conversation-toolbar p{margin:0}.conversation-toolbar h2{color:var(--foreground);font-size:.92rem}.conversation-toolbar p{margin-top:3px;color:var(--muted);font-size:.63rem}.conversation-search{display:flex;min-height:46px;align-items:center;gap:8px;padding-inline:12px;background:#fff;border:1px solid var(--border);border-radius:12px}.conversation-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.conversation-search svg{width:18px;height:18px;flex:0 0 auto;color:var(--muted)}.conversation-search input{width:100%;min-width:0;padding:0;background:transparent;border:0;outline:0}.compact-message-filter{display:grid;grid-gap:3px;gap:3px}.compact-message-filter>span,.message-date-filter label>span{color:var(--muted);font-size:.58rem;font-weight:800}.compact-message-filter select,.message-date-filter summary{min-height:46px;padding:0 11px;color:var(--foreground);background:#fff;border:1px solid var(--border);border-radius:12px;outline:0;cursor:pointer}.compact-message-filter select:focus,.message-date-filter summary:focus-visible{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.message-date-filter{position:relative}.message-date-filter summary{display:flex;align-items:center;gap:7px;font-size:.65rem;font-weight:800;list-style:none}.message-date-filter summary::-webkit-details-marker{display:none}.message-date-filter summary svg{width:17px;height:17px}.message-date-filter>div{position:absolute;top:calc(100% + 7px);left:0;z-index:20;display:grid;width:245px;grid-gap:10px;gap:10px;padding:13px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md)}.message-date-filter label{display:grid;grid-gap:4px;gap:4px}.message-date-filter input{min-height:42px;padding-inline:9px;border:1px solid var(--border);border-radius:10px}.conversation-rows{display:grid}.conversation-row{display:grid;min-height:92px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:13px;gap:13px;padding:13px 20px;color:inherit;background:#fff;border-bottom:1px solid #ececf4;cursor:pointer;transition:background .18s ease}.conversation-row:last-child{border-bottom:0}.conversation-row:focus-visible,.conversation-row:hover{background:#f8f8ff}.conversation-row:focus-visible{outline:3px solid var(--ring);outline-offset:-3px}.conversation-row.unread{background:#f7f7ff}.conversation-row.unread:hover{background:#f1f1ff}.conversation-avatar{width:48px;height:48px;flex:0 0 auto;color:var(--primary);background:var(--primary-soft);font-size:.76rem}.conversation-context,.conversation-preview,.conversation-row-copy,.conversation-row-heading{min-width:0}.conversation-row-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.conversation-row-heading strong{overflow:hidden;color:var(--foreground);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.conversation-row.unread .conversation-row-heading strong{color:var(--primary)}.conversation-row-heading time{flex:0 0 auto;color:#8d8a9d;font-size:.6rem}.conversation-context,.conversation-preview{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-context{margin-top:2px;color:#8d8a9d;font-size:.59rem}.conversation-preview{margin-top:5px;color:var(--muted);font-size:.68rem}.conversation-row.unread .conversation-preview{color:#4b4860;font-weight:700}.conversation-row-meta{display:grid;min-width:34px;justify-items:center}.conversation-row-meta svg{width:18px;height:18px;color:#9a98a8}.unread-count{display:grid;min-width:26px;height:26px;padding-inline:7px;place-items:center;color:#fff;background:var(--primary);border-radius:999px;font-size:.62rem;font-weight:900}.conversation-shell{display:grid;height:max(610px,calc(100dvh - 150px));max-height:820px;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.conversation-header{display:flex;min-height:76px;align-items:center;gap:11px;padding:12px 16px;background:#fff;border-bottom:1px solid var(--border)}.conversation-header .icon-button{flex:0 0 auto}.conversation-person{min-width:0;flex:1 1}.conversation-person h1,.conversation-person span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-person h1{margin:0;color:var(--foreground);font-size:.82rem}.conversation-person span{margin-top:2px;color:var(--muted);font-size:.62rem}.message-thread{overflow-y:auto;overscroll-behavior:contain;padding:20px clamp(14px,3vw,34px);background:radial-gradient(circle at 15% 15%,rgba(79,70,229,.045),transparent 24%),radial-gradient(circle at 85% 80%,rgba(234,88,12,.035),transparent 22%),#f7f7fb;scroll-behavior:smooth}.message-day-separator{display:flex;justify-content:center;margin:9px 0 16px}.message-day-separator span{padding:5px 10px;color:#777489;background:hsla(0,0%,100%,.88);border:1px solid #e8e8f0;border-radius:999px;font-size:.58rem;font-weight:700}.message-bubble-row{display:flex;margin-bottom:8px}.message-bubble-row.mine{justify-content:flex-start}.message-bubble-row.theirs{justify-content:flex-end}.message-bubble{max-width:min(72%,620px);padding:10px 13px 7px;border-radius:16px;box-shadow:0 2px 8px rgba(30,27,75,.05)}.message-bubble-row.mine .message-bubble{color:#fff;background:var(--primary);border-bottom-right-radius:5px}.message-bubble-row.theirs .message-bubble{color:var(--foreground);background:#fff;border:1px solid #e7e7ef;border-bottom-left-radius:5px}.message-bubble p{margin:0;font-size:.74rem;line-height:1.9;overflow-wrap:anywhere;white-space:pre-wrap}.message-bubble>span{display:flex;min-height:18px;align-items:center;justify-content:flex-end;gap:5px;margin-top:3px;color:inherit;font-size:.54rem;opacity:.74}.empty-conversation{display:grid;max-width:390px;min-height:100%;align-content:center;justify-items:center;grid-gap:7px;gap:7px;margin:auto;color:var(--muted);text-align:center}.empty-conversation strong{color:var(--foreground);font-size:.86rem}.empty-conversation p{margin:0;font-size:.67rem;line-height:1.8}.message-composer{grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:8px 10px;gap:8px 10px;padding:12px 14px;background:#fff;border-top:1px solid var(--border)}.message-composer textarea{width:100%;min-height:50px;max-height:150px;resize:vertical;padding:12px 13px;color:var(--foreground);background:#fafafd;border:1px solid var(--border);border-radius:14px;outline:0;line-height:1.7}.message-composer textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.message-send-button{min-width:100px;min-height:50px}.message-send-button svg{width:18px;height:18px}.composer-hint{grid-column:1;color:#9693a4;font-size:.56rem}.composer-error{grid-column:1/-1;margin:0}.settings-group,.settings-groups,.settings-page{width:100%;min-width:0}.settings-page-heading{align-items:center}.settings-groups{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:18px;gap:18px}.settings-group{overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.settings-group-heading{display:grid;min-height:78px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:13px;gap:13px;padding:15px 18px;background:#fafafd;border-bottom:1px solid var(--border)}.settings-group-heading h2,.settings-group-heading p{margin:0}.settings-group-heading h2{color:var(--foreground);font-size:.91rem}.settings-group-heading p{margin-top:4px;color:var(--muted);font-size:.64rem}.settings-group-icon,.settings-row-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:13px}.settings-group-icon svg,.settings-row-icon svg{width:20px;height:20px}.settings-role-badge{padding:6px 11px;color:#3730a3;background:#e0e7ff;border-radius:999px;font-size:.62rem;font-weight:900}.settings-account-form{padding:20px}.settings-avatar-row{display:flex;align-items:center;gap:16px;margin-bottom:22px;padding:14px;background:#fafafe;border:1px solid #ebebf4;border-radius:16px}.settings-avatar-preview{width:72px;height:72px;flex:0 0 72px;color:#4f46e5;background:#e9e8ff}.settings-avatar-copy{display:grid;min-width:0;grid-gap:4px;gap:4px}.settings-avatar-copy>strong{color:var(--foreground);font-size:.82rem}.settings-avatar-copy>span{color:var(--muted);font-size:.7rem;line-height:1.65}.settings-avatar-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}.settings-avatar-upload{position:relative;min-height:44px;cursor:pointer}.settings-avatar-upload input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.settings-avatar-error{margin:4px 0 0;font-size:.68rem}.settings-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.settings-field-full{grid-column:1/-1}.settings-field{display:grid;grid-gap:8px;gap:8px;color:var(--foreground);font-size:.67rem;font-weight:800}.settings-field input{width:100%;min-height:48px;padding:10px 13px;color:var(--foreground);background:#fbfbfd;border:1px solid #dfe1ea;border-radius:12px;font:inherit;font-size:.76rem;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.settings-field input:focus{background:#fff;border-color:var(--primary);outline:none;box-shadow:0 0 0 3px var(--ring)}.settings-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.settings-form-note{margin:0;color:var(--muted);font-size:.63rem;line-height:1.8}.settings-save-button{min-width:176px}.settings-save-button svg{width:18px;height:18px}.settings-save-button:disabled{opacity:.65;cursor:wait}.settings-feedback{margin:13px 0 0}.form-success{color:#166534;font-size:.7rem;font-weight:800}.settings-help-list,.settings-preferences{display:grid}.settings-switch-row{position:relative;display:grid;min-height:78px;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:18px;gap:18px;padding:14px 18px;border-bottom:1px solid #ececf3;cursor:pointer;transition:background .18s ease}.settings-switch-row:last-child{border-bottom:0}.settings-switch-row:hover{background:#fafaff}.settings-info-row small,.settings-info-row strong,.settings-switch-row small,.settings-switch-row strong{display:block}.settings-info-row strong,.settings-switch-row strong{color:var(--foreground);font-size:.76rem}.settings-info-row small,.settings-switch-row small{margin-top:4px;color:var(--muted);font-size:.62rem;line-height:1.8}.settings-switch-row input{position:absolute;opacity:0;pointer-events:none}.settings-switch{position:relative;width:48px;height:28px;background:#d7d8e2;border-radius:999px;transition:background .18s ease}.settings-switch span{position:absolute;top:4px;right:4px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 2px 6px rgba(30,27,75,.18);transition:transform .18s ease}.settings-switch-row input:checked+.settings-switch{background:var(--primary)}.settings-switch-row input:checked+.settings-switch span{transform:translateX(-20px)}.settings-switch-row input:focus-visible+.settings-switch{outline:3px solid var(--ring);outline-offset:3px}.settings-info-row,.settings-link-row{display:grid;min-height:76px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;padding:11px 18px;color:inherit;border-bottom:1px solid #ececf3}.settings-link-row{cursor:pointer;transition:background .18s ease}.settings-link-row:last-child{border-bottom:0}.settings-link-row:focus-visible,.settings-link-row:hover{background:#f8f8ff}.settings-link-row:focus-visible{outline:3px solid var(--ring);outline-offset:-3px}.settings-row-copy{min-width:0}.settings-row-copy span,.settings-row-copy strong{display:block}.settings-row-copy strong{color:var(--foreground);font-size:.76rem}.settings-row-copy span{margin-top:4px;color:var(--muted);font-size:.62rem}.settings-row-chevron{width:18px;height:18px;color:var(--primary)}.content-card:hover{border-color:#c7d2fe;box-shadow:var(--shadow-md)}.content-card-icon{display:grid;width:48px;height:48px;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:15px}.content-card-icon svg{width:24px;height:24px}.content-card h3{margin:20px 0 7px;color:var(--foreground);font-size:.95rem}.content-card p{display:-webkit-box;margin:0;overflow:hidden;color:var(--muted);font-size:.74rem;-webkit-box-orient:vertical;-webkit-line-clamp:2}.content-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:18px;color:#9492a3;font-size:.67rem}.empty-state{display:grid;min-height:420px;place-items:center;padding:40px 20px;text-align:center;background:#fff;border:1px dashed #d8d9e5;border-radius:var(--radius-lg)}.empty-state-icon{display:grid;width:80px;height:80px;place-items:center;margin:auto;color:var(--primary);background:var(--primary-soft);border-radius:25px}.empty-state-icon svg{width:36px;height:36px}.empty-state h2{margin:20px 0 7px;color:var(--foreground);font-size:1.15rem}.empty-state p{max-width:480px;margin:0 auto 22px;color:var(--muted);font-size:.83rem}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1180px){.content-grid,.quick-actions,.stats-grid{grid-template-columns:repeat(2,1fr)}.advisor-activities-panel,.advisor-students-panel{grid-column:1/-1}.advisor-activities-panel .activity-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}}@media (max-width:960px){:root{--sidebar-width:0px}.sidebar{width:min(86vw,290px);visibility:hidden;opacity:0;pointer-events:none;transform:none;transition:opacity .2s ease,visibility .2s ease}.sidebar.open{visibility:visible;opacity:1;pointer-events:auto}.sidebar-scrim{position:fixed;z-index:35;inset:0;display:block;visibility:hidden;background:rgba(24,22,48,.46);opacity:0;cursor:pointer;transition:opacity .22s ease,visibility .22s ease}.sidebar-scrim.open{visibility:visible;opacity:1}.app-main{margin-right:0}.mobile-menu-button{display:grid}.mobile-brand{display:inline-flex}.header-title{display:none}.app-header{min-height:70px}.dashboard-grid{grid-template-columns:1fr}.hero{padding-top:55px}.hero-copy{width:100%;margin-left:0;text-align:center}.hero-actions,.hero-trust{margin-right:auto;margin-left:auto;justify-content:center}.hero .eyebrow{display:flex;margin-right:0;margin-left:auto;justify-content:flex-start}.hero-description{margin-inline:auto}.landing-showcase{min-height:0;grid-template-columns:1fr;gap:20px}.landing-faq{grid-template-columns:1fr;gap:32px}.landing-faq-copy{position:static;width:min(100%,700px)}.site-footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}.footer-contact{grid-column:1/-1;max-width:520px}.advisor-preview-window,.advisor-showcase .showcase-copy{order:0}.showcase-copy{max-width:700px}.preview-wrap,.student-showcase .preview-wrap{width:min(100%,650px);min-height:0;margin:auto}.preview-wrap{padding:48px 0 36px}.preview-orb{inset:2% 0 3%}.preview-window{position:relative;z-index:1;inset:auto;transform:none}.floating-note.first{top:12px;right:-1%}.floating-note.second{bottom:18px;left:-1%}.auth-page{grid-template-columns:1fr}.auth-visual{display:none}}@media (max-width:700px){.landing-nav{width:min(100% - 28px,1180px);min-height:76px}.landing-nav .button-ghost{display:none}.landing-nav .button{min-height:42px;padding-inline:14px;font-size:.8rem}.brand-copy small{display:none}.hero{width:min(100% - 28px,1180px);min-height:auto;padding-top:45px;padding-bottom:max(32px,env(safe-area-inset-bottom))}.hero h1{font-size:clamp(2.3rem,13vw,3.9rem)}.hero-description{font-size:.95rem}.hero-actions,.hero-actions .button{width:100%}.role-showcases{width:min(100% - 28px,1180px);padding-top:26px;padding-bottom:max(50px,env(safe-area-inset-bottom))}.showcases-heading{margin-bottom:28px}.showcases-heading h2{font-size:clamp(1.75rem,9vw,2.35rem)}.showcases-heading p{font-size:.88rem}.landing-showcase{padding:20px 16px;margin-bottom:28px;border-radius:25px}.showcase-copy h3{font-size:clamp(1.5rem,8vw,2rem)}.showcase-copy>p{font-size:.88rem}.showcase-features{margin-top:19px}.showcase-features li{align-items:flex-start;font-size:.78rem}.showcase-entry{justify-items:stretch;margin-top:23px}.showcase-entry .button{width:100%}.showcase-entry>span{text-align:center}.student-showcase .preview-wrap{padding:42px 0 30px}.advisor-preview-window{padding:14px;border-radius:22px}.advisor-preview-stats{gap:7px}.advisor-preview-stats>div{padding:10px 8px;border-radius:14px}.advisor-preview-content{grid-template-columns:1fr;gap:7px}.advisor-preview-chart{display:none}.landing-faq{width:min(100% - 28px,1180px);padding:42px 0 70px}.landing-faq-copy h2{font-size:clamp(1.75rem,9vw,2.35rem)}.landing-faq-copy p{font-size:.88rem}.landing-faq-copy .button{width:100%}.faq-item summary{min-height:68px;gap:12px;padding:14px;font-size:.86rem}.faq-toggle{width:34px;height:34px}.faq-answer{padding:0 14px 16px}.faq-answer p{font-size:.8rem}.info-page{padding-bottom:70px}.faq-page-hero{width:min(100% - 28px,850px);padding:58px 0 54px}.faq-page-hero h1{font-size:clamp(2.25rem,12vw,3.3rem)}.faq-page-hero p{font-size:.9rem}.faq-page-hero .button{width:100%}.faq-page-content{width:min(100% - 28px,900px)}.site-footer-bottom,.site-footer-inner{width:min(100% - 28px,1180px)}.site-footer-inner{grid-template-columns:1fr;gap:34px;padding:48px 0 36px}.footer-links{gap:20px}.footer-contact{grid-column:auto}.site-footer-bottom{min-height:0;flex-direction:column;align-items:flex-start;gap:7px;padding-top:20px;padding-bottom:max(22px,env(safe-area-inset-bottom))}.app-content{padding:20px 14px 104px}.app-header{padding:10px 14px}.header-panel,.in-app-notification{top:78px;right:14px;left:14px;width:auto}.header-profile-copy{display:none}.pwa-status-banner{right:14px;bottom:calc(max(10px, env(safe-area-inset-bottom)) + 78px);width:calc(100vw - 28px)}.bottom-nav{position:fixed;z-index:32;right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;display:grid;min-height:70px;grid-template-columns:repeat(5,1fr);padding:7px 6px;background:hsla(0,0%,100%,.94);border:1px solid var(--border);border-radius:20px;box-shadow:0 17px 40px rgba(30,27,75,.16);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom-nav-link{display:grid;min-width:0;min-height:54px;place-items:center;align-content:center;grid-gap:3px;gap:3px;color:#898797;border-radius:14px;font-size:.58rem;font-weight:800;cursor:pointer;transition:color .18s ease,background .18s ease}.bottom-nav-link svg{width:21px;height:21px}.bottom-nav-link.active{color:var(--primary);background:var(--primary-soft)}.advisor-bottom-nav,.student-bottom-nav{grid-template-columns:repeat(4,1fr)}.page-heading{align-items:flex-start}.page-heading .button{min-height:42px;padding-inline:13px;font-size:.72rem}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{display:block;padding:15px}.stat-icon{width:42px;height:42px;margin-bottom:12px}.stat-copy strong{font-size:1.3rem}.stat-copy small{display:none}.panel{padding:17px}.advisor-dashboard-heading{display:grid;grid-gap:14px;gap:14px}.advisor-overview{width:100%;justify-content:stretch}.advisor-overview-item{min-width:0;flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 4px)}.student-list-head{display:none}.student-row{grid-template-columns:1fr auto}.student-row .metric-cell{display:none}.advisor-activities-panel .activity-list{grid-template-columns:1fr}.student-hero{padding:22px 16px;text-align:center}.student-hero-main{grid-template-columns:1fr;gap:22px}.student-hero-copy p{margin-inline:auto}.hero-plan-meta{justify-content:center}.progress-ring{width:125px;height:125px;margin:auto}.progress-ring:before{width:97px;height:97px}.student-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.student-hero-stat{min-height:60px;padding:9px;text-align:right}.student-plan-section .panel-heading{align-items:flex-start}.student-plan-section .assignment-item{display:grid;grid-template-columns:39px minmax(0,1fr);align-items:start}.student-plan-section .status-pill{grid-column:2;justify-self:start}.quick-actions{gap:10px}.quick-action{display:grid;min-height:110px;justify-items:center;grid-gap:7px;gap:7px;padding:12px;text-align:center}.content-grid,.student-profile-grid{grid-template-columns:1fr}.student-profile-heading,.student-profile-hero{align-items:flex-start}.student-profile-title{align-items:flex-start;flex-direction:column;gap:5px}.profile-record{align-items:flex-start}.section-toolbar{flex-wrap:wrap}.search-box{min-width:100%}.library-search{min-width:0}.library-filter-panel,.library-list{grid-template-columns:1fr}.library-filter-panel{width:min(420px,calc(100vw - 28px));padding:14px}.library-filter-actions{grid-column:auto}.library-form-grid{grid-template-columns:1fr}.planner-day-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.planner-day-summary>div{min-height:70px;padding:9px}.planner-activity-summary{grid-template-columns:40px minmax(0,1fr);align-items:start}.planner-activity-icon{width:40px;height:40px}.planner-status{grid-column:2;justify-self:start;min-width:0;margin-top:4px}.planner-activity-detail{padding:0 63px 13px 11px}.planner-detail-action{display:grid}.planner-detail-action .button,.planner-stop-button{width:100%}.student-exams-heading{align-items:flex-start}.student-exams-heading .button{min-height:46px}.student-reports-heading{align-items:flex-start}.student-reports-heading .button{min-height:46px}.student-report-list{grid-template-columns:1fr}.student-exam-section{padding:13px}.student-exam-section-heading{gap:10px}.student-exam-section-heading p{max-width:240px}.student-exam-result{padding-inline:63px 11px}.timed-report-summary{grid-template-columns:42px minmax(0,1fr);align-items:start}.timed-report-summary .status-pill{grid-column:2;justify-self:start}.filter-control{min-width:0;flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 5px)}.auth-panel{padding:24px 20px}.auth-back{top:20px;left:20px}.auth-card h1{margin-top:28px}}@media (max-width:420px){.advisor-overview{display:grid;grid-template-columns:1fr}.advisor-overview-item{width:100%}.pwa-status-banner{grid-template-columns:36px minmax(0,1fr) auto;gap:7px;padding:9px}.pwa-status-banner.install{grid-template-columns:36px minmax(0,1fr) auto 38px}.pwa-status-banner small{display:none}.pwa-banner-close{width:38px;height:44px}.student-exam-section-heading{display:grid}.student-exam-section-heading>span{justify-self:start}.student-exam-history-row>summary,.student-exam-row:not(details){grid-template-columns:38px minmax(0,1fr)}.student-exam-status{grid-column:2;justify-self:start;min-width:0}.student-exam-chevron{display:none}.student-exam-result{padding:0 61px 11px 11px}.student-exam-result,.student-profile-stats{grid-template-columns:1fr}.student-profile-heading{display:grid}.student-profile-heading .button{width:100%}.filter-control{flex-basis:100%}.student-assignment-form .button{width:100%}}@media (min-width:421px) and (max-width:900px){.students-table-toolbar{align-items:stretch;flex-direction:column}.table-filters{flex-wrap:wrap}.table-search{min-width:100%}.student-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.students-table-heading{display:grid}.students-table-heading .button{width:100%}.students-table-toolbar{align-items:stretch;flex-direction:column}.table-filters{width:100%}.compact-filter,.filter-select{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 5px);min-width:0}.table-filters{flex-wrap:wrap}.table-search{min-width:100%;flex:1 1 100%}.students-data-table{min-width:780px}.class-students-table{min-width:700px}.student-table-person{position:-webkit-sticky;position:sticky;right:0;z-index:2;box-shadow:-8px 0 14px rgba(30,27,75,.05)}.students-data-table thead th:first-child{position:-webkit-sticky;position:sticky;right:0;z-index:3}.organization-inline-fields,.student-placement-form{grid-template-columns:1fr}.class-detail-heading,.organization-page-heading{display:grid}.class-detail-heading .button,.organization-page-heading .button{width:100%}.organization-table-head{display:none}.organization-school-row{grid-template-columns:minmax(0,1fr) minmax(74px,auto);gap:11px;padding:15px}.organization-school-name{grid-column:1/-1}.organization-actions{grid-column:1/-1;justify-content:flex-start;padding-top:4px}.organization-class-list{padding:5px 15px 14px}.organization-class-row{grid-template-columns:12px minmax(0,1fr) auto;padding:10px 0}.organization-class-students{grid-column:2}.organization-class-actions{grid-column:3;grid-row:1/span 2}.organization-view-link{width:38px;padding:0;justify-content:center;font-size:0}.organization-modal{padding:18px;border-radius:19px}.organization-modal-actions .button{flex:1 1}.student-placement-form .button{width:100%}.planner-record-actions{justify-items:start}.messages-page-heading{display:grid}.messages-summary{justify-self:start}.conversation-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;padding:14px}.conversation-search,.conversation-toolbar>div:first-child,.message-date-filter{grid-column:1/-1}.message-date-filter summary{justify-content:center}.message-date-filter>div{position:static;width:100%;margin-top:7px;box-shadow:none}.conversation-row{min-height:86px;gap:10px;padding:11px 13px}.conversation-avatar{width:44px;height:44px}.conversation-context{display:none}.conversation-shell{height:max(540px,calc(100dvh - 180px));margin-bottom:82px;border-radius:18px}.conversation-header{min-height:68px;padding:9px 10px}.conversation-profile-link{min-height:42px;padding-inline:10px;font-size:.6rem}.message-thread{padding:16px 10px}.message-bubble{max-width:86%}.message-composer{grid-template-columns:minmax(0,1fr) auto;padding:9px}.message-send-button{width:50px;min-width:50px;padding:0}.composer-hint,.message-send-button span{display:none}.settings-groups{grid-template-columns:1fr;gap:12px}.settings-group-wide{grid-column:auto}.settings-link-row,.settings-row summary{min-height:70px;gap:9px;padding:9px 11px}.settings-row-status{max-width:82px;overflow:hidden;text-overflow:ellipsis}.settings-row-details{padding:12px 60px 14px 12px}.settings-definition-list{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html[data-reduce-motion=true] *,html[data-reduce-motion=true] :after,html[data-reduce-motion=true] :before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);grid-gap:clamp(38px,5vw,76px);gap:clamp(38px,5vw,76px)}.hero-copy{width:auto;margin-left:0}.hero-advisor-visual{position:relative;min-width:0;padding:32px 0 38px}.hero-advisor-visual:before{position:absolute;inset:2% -5% 0 2%;content:"";background:radial-gradient(circle at 80% 22%,rgba(129,140,248,.38),transparent 35%),radial-gradient(circle at 18% 82%,rgba(249,115,22,.18),transparent 34%),linear-gradient(145deg,#eef2ff,#fff7ed);border-radius:42% 58% 47% 53%/54% 40% 60% 46%}.hero-dashboard-window{position:relative;z-index:1;width:112%;overflow:hidden;background:#fff;border:1px solid rgba(199,210,254,.9);border-radius:22px;box-shadow:0 34px 85px rgba(55,48,163,.2);transform:perspective(1200px) rotateY(4deg) rotate(-.6deg);transform-origin:right center}.preview-desktop-bar{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:16px;padding:0 15px;color:#5c5a70;background:#f7f8fc;border-bottom:1px solid #eceef6;font-size:.7rem;font-weight:800}.preview-desktop-dots{display:flex;gap:5px;direction:ltr}.preview-desktop-dots i{width:7px;height:7px;background:#c7d2fe;border-radius:50%}.preview-desktop-dots i:first-child{background:#fb923c}.preview-desktop-dots i:nth-child(2){background:#facc15}.preview-desktop-dots i:last-child{background:#4ade80}.hero-dashboard-body,.preview-desktop-body{display:grid;min-width:0;grid-template-columns:62px minmax(0,1fr);direction:rtl}.hero-dashboard-sidebar,.preview-desktop-sidebar{display:flex;min-height:100%;align-items:center;flex-direction:column;gap:10px;padding:14px 9px;background:#fafaff;border-left:1px solid #eef0f6}.hero-dashboard-sidebar>span,.preview-desktop-sidebar>span{display:grid;width:38px;height:38px;place-items:center;color:#8a879c;border-radius:11px}.hero-dashboard-sidebar>span.active,.preview-desktop-sidebar>span.active{color:#fff;background:var(--primary)}.hero-dashboard-sidebar svg,.preview-desktop-sidebar svg{width:18px;height:18px}.hero-mini-brand{margin-bottom:8px;color:#fff!important;background:linear-gradient(145deg,#6366f1,#4338ca);box-shadow:0 8px 18px rgba(79,70,229,.22)}.hero-dashboard-content{min-width:0;padding:18px;background:#f6f7fc}.hero-dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.hero-dashboard-heading small,.hero-dashboard-heading strong,.hero-dashboard-heading>span:first-child{display:block}.hero-dashboard-heading strong{color:var(--foreground);font-size:.94rem}.hero-dashboard-heading small{margin-top:2px;color:var(--muted);font-size:.58rem}.hero-dashboard-avatar{display:grid!important;width:38px;height:38px;flex:0 0 auto;place-items:center;color:var(--primary-dark);background:#ddd6fe;border-radius:50%;font-size:.64rem;font-weight:900}.hero-dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:14px}.hero-dashboard-stats>span{display:grid;min-width:0;grid-template-columns:28px 1fr;grid-gap:2px 8px;gap:2px 8px;padding:10px;background:#fff;border:1px solid #eceef6;border-radius:13px}.hero-dashboard-stats svg{width:17px;height:17px;grid-row:1/3;align-self:center;color:var(--primary)}.hero-dashboard-stats strong{color:var(--foreground);font-size:.9rem;line-height:1}.hero-dashboard-stats small{overflow:hidden;color:var(--muted);font-size:.52rem;text-overflow:ellipsis;white-space:nowrap}.hero-dashboard-panel{padding:13px;margin-top:9px;background:#fff;border:1px solid #eceef6;border-radius:14px}.hero-dashboard-panel header{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;color:var(--foreground);font-size:.65rem}.hero-dashboard-panel header small{color:var(--muted);font-size:.52rem}.hero-dashboard-row{display:grid;grid-template-columns:minmax(110px,.9fr) minmax(90px,1fr) 34px;align-items:center;grid-gap:9px;gap:9px;padding:8px 0;border-top:1px solid #f0f1f6}.hero-dashboard-student{display:flex;min-width:0;align-items:center;gap:7px}.hero-dashboard-student i{display:grid;width:28px;height:28px;flex:0 0 auto;place-items:center;color:var(--primary-dark);background:#e0e7ff;border-radius:50%;font-size:.52rem;font-style:normal}.hero-dashboard-student strong{overflow:hidden;color:var(--foreground);font-size:.59rem;text-overflow:ellipsis;white-space:nowrap}.hero-dashboard-progress{height:5px;overflow:hidden;background:#eceef8;border-radius:999px}.hero-dashboard-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),#818cf8);border-radius:inherit}.hero-dashboard-row b{color:var(--primary-dark);font-size:.56rem;text-align:left}.landing-showcase{min-height:600px;gap:clamp(32px,5vw,70px);padding:52px 0;margin-bottom:24px;border:0;border-radius:0;box-shadow:none}.advisor-showcase,.landing-showcase,.student-showcase{background:transparent}.showcase-copy{max-width:430px}.showcase-copy h3{font-size:clamp(1.75rem,2.65vw,2.35rem)}.student-showcase .showcase-copy h3{white-space:nowrap}.showcase-entry .button{width:min(100%,330px);min-height:54px}.showcase-entry>span{font-size:.84rem}.student-showcase .preview-wrap{width:108%;min-height:520px}.student-showcase .preview-orb{inset:3% -3% 2% 3%}.student-showcase .preview-window{inset:4% -2% 3% 1%;padding:0;overflow:hidden;border:1px solid rgba(199,210,254,.88);border-radius:22px;transform:rotate(-.5deg)}.preview-desktop-main{min-width:0;padding:16px;background:#f8f9fd}.preview-desktop-main .preview-topbar{padding-top:0}.preview-desktop-main .preview-feature{min-height:172px}.preview-desktop-main .preview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.preview-desktop-main .preview-card{min-width:0;padding:11px;border-radius:13px}.preview-desktop-main .preview-card span,.preview-desktop-main .preview-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advisor-preview-window{width:108%;padding:0;overflow:hidden;border:1px solid rgba(199,210,254,.88);border-radius:22px}.advisor-desktop-body .preview-desktop-main{padding:14px}.landing-faq{display:block;padding-top:72px}.landing-faq-copy{position:static;width:min(100%,760px);margin:0 auto 36px;text-align:center}.landing-faq-copy h2{font-size:clamp(2rem,3.5vw,3rem)}.landing-faq-copy .button{width:-moz-fit-content;width:fit-content;margin-top:20px;color:var(--primary)}.landing-faq-link:hover{background:var(--primary-soft)}.landing-faq .faq-list{width:min(100%,980px);margin:0 auto}.landing-faq .faq-item summary{padding-inline:24px}.register-role-intro{max-width:430px;color:#555268!important;line-height:1.9}.advisor-terms{display:grid;grid-gap:8px;gap:8px;padding:12px 14px;margin-top:18px;background:#f8f9ff;border:1px solid #dfe3ff;border-radius:13px}.advisor-terms-check{display:flex;align-items:flex-start;gap:9px;color:#49465b;font-size:.78rem;font-weight:700;cursor:pointer}.advisor-terms-check input{width:19px;height:19px;flex:0 0 auto;margin-top:2px;accent-color:var(--primary)}.auth-terms-link{width:-moz-fit-content;width:fit-content;min-height:36px;padding:0 4px;color:var(--primary-dark);background:transparent;font-size:.78rem;font-weight:900}.auth-terms-link:hover{color:var(--primary)}.auth-terms-modal{text-align:right}.auth-terms-close{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;color:var(--muted);background:var(--surface-soft);border-radius:12px}.auth-terms-close svg{width:20px;height:20px}.auth-terms-content{display:grid;grid-gap:10px;gap:10px}.auth-terms-content p{padding:11px 13px;margin:0;color:#555268;background:#f8f9fc;border-radius:11px;font-size:.82rem;line-height:1.9}@media (max-width:1100px){.hero{grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);gap:28px}.advisor-preview-window,.hero-dashboard-window,.student-showcase .preview-wrap{width:100%}}@media (max-width:960px){.hero{grid-template-columns:1fr;gap:20px}.hero-advisor-visual{width:min(100%,720px);margin:0 auto}.hero-dashboard-window{transform:none}.showcase-copy{max-width:640px}.student-showcase .showcase-copy h3{white-space:normal}.advisor-preview-window,.student-showcase .preview-wrap{width:min(100%,760px)}}@media (max-width:700px){.hero-advisor-visual{padding:20px 0 14px}.hero-advisor-visual:before{inset:0 -8px}.hero-dashboard-window{width:108%;margin-right:-4%}.hero-dashboard-body,.preview-desktop-body{grid-template-columns:48px minmax(0,1fr)}.hero-dashboard-sidebar,.preview-desktop-sidebar{gap:7px;padding:10px 5px}.hero-dashboard-sidebar>span,.preview-desktop-sidebar>span{width:34px;height:34px}.hero-dashboard-content{padding:11px}.hero-dashboard-stats>span:nth-child(3){display:none}.hero-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-dashboard-row{grid-template-columns:minmax(88px,1fr) minmax(60px,.8fr) 30px}.landing-showcase{padding:34px 0;margin-bottom:10px}.showcase-copy h3{font-size:clamp(1.45rem,7.6vw,1.9rem)}.showcase-entry .button{width:100%}.showcase-entry>span{font-size:.79rem}.student-showcase .preview-wrap{padding:24px 0 20px}.student-showcase .preview-window{inset:auto;transform:none}.student-showcase .preview-orb{inset:0 -7px}.floating-note{display:none}.preview-desktop-main{padding:10px}.preview-desktop-main .preview-feature{min-height:150px;padding:18px}.preview-desktop-main .preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.advisor-preview-window{padding:0}.advisor-desktop-body .preview-desktop-main{padding:10px}.advisor-preview-content{grid-template-columns:1fr}.advisor-preview-chart{display:none}.landing-faq{padding-top:54px}.landing-faq-copy{margin-bottom:26px}.landing-faq-copy .button{width:-moz-fit-content;width:fit-content}.landing-faq .faq-item summary{padding-inline:15px}.auth-terms-modal{padding:18px}}@media (max-width:640px){.faq-page-public{width:min(100% - 28px,920px)}.faq-page-panel .faq-page-content{width:100%}.faq-page-header{align-items:flex-start;padding:18px 0}.faq-page-header p{font-size:.7rem}.faq-public-back{min-height:42px;padding-inline:12px}.settings-account-form{padding:14px}.settings-avatar-row{align-items:flex-start;gap:12px;padding:12px}.settings-avatar-preview{width:60px;height:60px;flex-basis:60px}.settings-field-grid{grid-template-columns:1fr;gap:13px}.settings-field-full{grid-column:auto}.settings-form-footer{align-items:stretch;flex-direction:column}.settings-save-button{width:100%}.settings-group-heading,.settings-info-row,.settings-link-row,.settings-switch-row{padding-inline:12px}.settings-group-heading p{line-height:1.7}}.form-error{margin:-4px 0 14px;color:#b42318;font-size:.78rem;line-height:1.8}.auth-loading{min-height:100vh;display:grid;place-items:center;color:var(--muted);background:var(--background);font-size:.9rem}.data-state{min-height:140px;display:grid;place-items:center;color:var(--muted);text-align:center}.plain-input{padding-inline:15px}.textarea-input{min-height:130px;resize:vertical;padding-block:12px}.form-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.form-feedback{margin:8px 0 0;color:var(--primary);font-size:.82rem}@media (max-width:640px){.form-grid-two{grid-template-columns:1fr}}.student-profile-heading{align-items:center}.student-profile-back{min-height:42px;gap:7px;color:var(--primary);background:transparent;border-color:#c9c7e8}.student-profile-back:hover{color:#3730a3;background:#f7f7ff;border-color:#8f8be0}.student-profile-back svg{width:18px;height:18px;transform:rotate(180deg)}.student-profile-hero{min-height:128px;padding:22px 24px}.student-profile-avatar{width:72px;height:72px;border:0;border-radius:50%;color:#3730a3;background:linear-gradient(145deg,#e0e7ff,#c7d2fe);box-shadow:none}.student-profile-identity h2{margin:0;color:var(--foreground);font-size:1.18rem}.student-profile-hero-actions{display:flex;flex:0 0 auto;align-items:center;gap:9px;-webkit-margin-start:auto;margin-inline-start:auto}.student-profile-edit-button,.student-profile-status{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:8px 13px;border-radius:12px;font:inherit;font-size:.74rem;font-weight:850}.student-profile-status i{width:8px;height:8px;border-radius:50%;background:currentColor}.student-profile-status.active{color:#166534;background:#dcfce7;border:1px solid #86efac}.student-profile-status.inactive{color:#57546b;background:#eeeef4;border:1px solid #d5d4df}.student-profile-edit-button{color:#3730a3;background:transparent;border:1px solid #c9c7e8;cursor:pointer;transition:background .18s ease,border-color .18s ease}.student-profile-edit-button:hover{background:#f2f1ff;border-color:#8f8be0}.student-profile-back:focus-visible,.student-profile-edit-button:focus-visible{outline:3px solid rgba(79,70,229,.22);outline-offset:2px}.student-profile-edit-button svg{width:18px;height:18px}.student-profile-stats{margin-bottom:18px}.student-study-panel{margin-bottom:18px;padding:22px 24px 18px}.student-study-panel .week-chart{min-height:210px}.student-study-panel .chart-bar-wrap{height:150px}.weekly-planner-panel{width:100%;padding:0;overflow:hidden}.weekly-planner-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 16px}.weekly-planner-heading h2{margin:0;color:var(--foreground);font-size:1rem}.weekly-planner-heading p{margin:5px 0 0;color:var(--muted);font-size:.72rem}.week-navigation,.weekly-planner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.week-navigation .icon-button{width:42px;height:42px}.week-navigation .next-week svg{transform:rotate(180deg)}.weekly-planner-meta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:12px 24px;color:var(--muted);background:#fafafe;border-block:1px solid var(--border);font-size:.68rem}.weekly-planner-meta strong{-webkit-margin-end:auto;margin-inline-end:auto;color:#454358;font-size:.72rem}.weekly-planner-meta span{display:inline-flex;align-items:center;gap:5px}.planner-legend{width:9px;height:9px;border-radius:3px}.planner-legend.pending{background:#6366f1}.planner-legend.completed{background:#16a34a}.planner-legend.late{background:#dc6b1f}.planner-feedback{margin:12px 24px 0}.weekly-calendar-scroll{max-width:100%;overflow:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#c8c6db transparent}.weekly-calendar-scroll:focus-visible{outline:3px solid rgba(79,70,229,.2);outline-offset:-3px}.weekly-calendar{display:grid;min-width:1080px;grid-template-columns:76px repeat(7,minmax(140px,1fr));background:#fff}.weekly-calendar-row{display:contents}.weekly-calendar-corner,.weekly-day-heading,.weekly-time-label{position:-webkit-sticky;position:sticky;z-index:3;background:#f8f8fc}.weekly-calendar-corner{inset-block-start:0;inset-inline-start:0;z-index:5;display:grid;place-items:center;color:var(--muted);border-inline-end:1px solid var(--border);-webkit-border-after:1px solid var(--border);border-block-end:1px solid var(--border);font-size:.68rem}.weekly-calendar-corner,.weekly-day-heading{min-height:72px;-webkit-border-end:1px solid var(--border)}.weekly-day-heading{inset-block-start:0;display:grid;place-content:center;grid-gap:4px;gap:4px;color:#454358;border-inline-end:1px solid var(--border);-webkit-border-after:1px solid var(--border);border-block-end:1px solid var(--border);text-align:center}.weekly-day-heading strong{font-size:.76rem}.weekly-day-heading span{color:var(--muted);font-size:.64rem}.weekly-day-heading.today{color:#3730a3;background:#eeedff;box-shadow:inset 0 -3px #4f46e5}.weekly-time-label{inset-inline-start:0;z-index:2;display:grid;place-items:start center;padding-top:10px;color:#737083;direction:ltr;font-size:.64rem}.weekly-calendar-cell,.weekly-time-label{min-height:82px;-webkit-border-end:1px solid var(--border);border-inline-end:1px solid var(--border);-webkit-border-after:1px solid var(--border);border-block-end:1px solid var(--border)}.weekly-calendar-cell{position:relative;display:flex;min-width:0;flex-direction:column;gap:5px;padding:6px;background:#fff}.weekly-calendar-cell:hover{background:#fafaff}.weekly-calendar-cell.past{background:#fbfbfd}.planner-slot-add{position:absolute;inset:4px;display:grid;color:transparent;background:transparent;border:1px dashed transparent;border-radius:10px;cursor:pointer;place-items:center;transition:color .16s ease,background .16s ease,border-color .16s ease}.planner-slot-add svg{width:17px;height:17px}.planner-slot-add:focus-visible,.weekly-calendar-cell:hover .planner-slot-add:not(:disabled){color:#4f46e5;background:rgba(79,70,229,.05);border-color:#c7c5ef}.planner-slot-add:disabled{cursor:default}.planner-event{position:relative;z-index:1;display:grid;width:100%;min-height:48px;grid-gap:2px;gap:2px;padding:7px 8px;color:#3730a3;background:#eeedff;border:1px solid #cbc9f5;-webkit-border-start:4px solid #6366f1;border-inline-start:4px solid #6366f1;border-radius:9px;font:inherit;text-align:start;cursor:pointer}.planner-event span,.planner-event strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-event strong{font-size:.65rem}.planner-event span{opacity:.8;font-size:.56rem}.planner-event.status-reviewed,.planner-event.status-submitted{color:#166534;background:#eafaf0;border-color:#a7e7bd;border-inline-start-color:#16a34a}.planner-event.status-late{color:#9a3412;background:#fff3e8;border-color:#fdc99f;border-inline-start-color:#dc6b1f}.planner-event:focus-visible,.planner-event:hover{filter:saturate(1.08);box-shadow:0 5px 14px rgba(49,46,129,.1);outline:2px solid rgba(79,70,229,.22);outline-offset:1px}.planner-quick-entry{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 32px 32px;grid-gap:3px;gap:3px;padding:4px;background:#fff;border:1px solid #8f8be0;border-radius:10px;box-shadow:0 8px 20px rgba(49,46,129,.12)}.planner-quick-entry input{min-width:0;padding:6px;color:var(--foreground);background:transparent;border:0;outline:0;font:inherit;font-size:.62rem}.planner-quick-entry button{display:grid;min-width:32px;min-height:32px;color:#3730a3;background:#eeedff;border:0;border-radius:7px;cursor:pointer;place-items:center}.planner-quick-entry button:last-child{color:#6b687b;background:#f2f2f6}.planner-quick-entry svg{width:15px;height:15px}.planner-workflow-note{display:flex;align-items:center;gap:8px;margin:0;padding:14px 24px 18px;color:#57546b;background:#fafafe;font-size:.68rem}.planner-workflow-note svg{width:18px;height:18px;color:var(--primary)}.student-profile-modal{width:min(590px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow-y:auto}.student-profile-modal .student-assignment-form{padding:0;margin:0;background:transparent;border:0}.student-profile-edit-form{grid-template-columns:1fr 1fr}.student-profile-edit-form .form-actions,.student-profile-edit-form .form-feedback{grid-column:1/-1}.optional-label{color:var(--muted);font-weight:500}.form-feedback.error{color:#b42318}@media (max-width:980px){.student-profile-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.student-profile-hero,.weekly-planner-heading{align-items:flex-start}.weekly-planner-heading{flex-direction:column}}@media (max-width:720px){.student-profile-heading{display:flex;align-items:flex-start}.student-profile-back{-webkit-margin-start:auto;margin-inline-start:auto}.student-profile-hero{display:grid;grid-template-columns:58px minmax(0,1fr);padding:18px}.student-profile-avatar{width:58px;height:58px}.student-profile-hero-actions{grid-column:1/-1;width:100%;margin:5px 0 0}.student-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.student-study-panel{padding:18px 16px 14px}.chart-heading{gap:12px}.weekly-planner-heading{padding:18px 16px 14px}.weekly-planner-actions{width:100%;justify-content:space-between}.planner-workflow-note,.weekly-planner-meta{padding-inline:16px}.weekly-calendar{min-width:980px;grid-template-columns:68px repeat(7,minmax(128px,1fr))}.student-profile-edit-form{grid-template-columns:1fr}.student-profile-edit-form .form-actions,.student-profile-edit-form .form-feedback{grid-column:auto}.planner-quick-entry input,.student-profile-modal input,.student-profile-modal select,.student-profile-modal textarea{font-size:16px}}@media (max-width:460px){.student-profile-heading h1{font-size:1.12rem}.student-profile-heading p{display:none}.student-profile-back{min-height:40px;padding-inline:12px}.student-profile-hero-actions{display:grid;grid-template-columns:auto minmax(0,1fr)}.student-profile-edit-button span{display:inline}.student-profile-stats{grid-template-columns:1fr 1fr;gap:10px}.weekly-planner-actions{align-items:stretch;flex-direction:column}.week-navigation{justify-content:space-between}.weekly-planner-meta strong{width:100%;margin:0}}.library-search input{font:inherit;font-size:.78rem}@media (max-width:700px){.page-heading .library-add-button{min-width:164px;min-height:54px;padding-inline:16px;font-size:.78rem}.library-search-row{gap:8px}.library-filter-trigger{min-width:104px;padding-inline:11px}.library-search input{font-size:16px}.library-file-list-head{display:none}.library-file-list.advisor .library-file-row,.library-file-row{grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"icon name actions" "icon details actions";gap:4px 10px;padding:12px}.library-file-list.student .library-file-row{grid-template-columns:48px minmax(0,1fr);grid-template-areas:"icon name" "icon details"}.library-file-icon{grid-area:icon;align-self:start}.library-file-name{grid-area:name}.library-file-details{display:flex;grid-area:details;min-width:0;flex-wrap:wrap;align-items:center;gap:4px 12px}.library-file-subject{display:flex;min-width:0;align-items:center;gap:5px}.library-file-size,.library-file-subject span,.library-file-subject strong{font-size:.59rem}.library-file-size:before,.library-file-subject span:before{-webkit-margin-end:5px;margin-inline-end:5px;color:#aaa7b6;content:"·"}.library-file-actions{grid-area:actions;align-self:center;gap:4px}.library-file-actions button{width:44px;height:44px}.library-action-modal{padding:18px;border-radius:18px}}@media (max-width:430px){.library-file-list.advisor .library-file-row,.library-file-row{grid-template-columns:44px minmax(0,1fr);grid-template-areas:"icon name" "icon details" "actions actions"}.library-file-actions{justify-content:flex-end;padding-top:6px}}.conversation-list-panel{overflow:visible}.conversation-toolbar{position:relative;display:flex;min-height:78px;align-items:center;gap:10px;padding:15px 18px}.conversation-search{width:min(430px,52vw);min-height:44px;order:0}.message-filter-wrap{position:relative;order:1}.message-filter-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:0 13px;color:#4d4960;background:#fff;border:1px solid var(--border);border-radius:12px;font:inherit;font-size:.68rem;font-weight:800;cursor:pointer}.message-filter-button.active,.message-filter-button:hover{color:var(--primary);background:var(--primary-soft);border-color:#c9c5fb}.composer-icon-button:focus-visible,.composer-send-button:focus-visible,.conversation-header-icon:focus-visible,.message-filter-button:focus-visible{outline:3px solid var(--ring);outline-offset:2px}.message-filter-button svg{width:18px;height:18px}.message-filter-button b{display:grid;min-width:22px;height:22px;padding-inline:5px;place-items:center;color:#fff;background:var(--primary);border-radius:999px;font-size:.58rem}.conversation-result-count{-webkit-margin-start:auto;margin-inline-start:auto;color:var(--muted);font-size:.62rem;font-weight:750;order:2}.message-filter-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:80;display:grid;width:min(620px,calc(100vw - 56px));grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;padding:18px;background:#fff;border:1px solid #dedde9;border-radius:20px;box-shadow:0 22px 60px rgba(30,27,75,.18)}.apply-message-filters,.calendar-section,.message-filter-popover-heading{grid-column:1/-1}.message-filter-popover-heading{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:12px}.message-filter-popover-heading strong{color:var(--foreground);font-size:.82rem}.clear-message-filters{padding:4px 0;color:#c2413b;background:transparent;border:0;font:inherit;font-size:.62rem;font-weight:850;cursor:pointer}.message-filter-section{min-width:0;margin:0;padding:12px;border:1px solid #e8e7f0;border-radius:14px}.message-filter-section legend{padding-inline:6px;color:#39364d;font-size:.64rem;font-weight:850}.message-filter-section legend small{-webkit-margin-start:4px;margin-inline-start:4px;color:#9895a6;font-size:.54rem;font-weight:650}.filter-choice-row{display:flex;flex-wrap:wrap;gap:7px}.filter-choice-row label{position:relative;cursor:pointer}.filter-choice-row input{position:absolute;inline-size:1px;block-size:1px;opacity:0}.filter-choice-row span{display:inline-flex;min-height:34px;align-items:center;justify-content:center;padding:5px 10px;color:#625f72;background:#f7f7fa;border:1px solid transparent;border-radius:999px;font-size:.59rem;font-weight:750}.filter-choice-row input:checked+span{color:var(--primary);background:var(--primary-soft);border-color:#c8c4fa}.filter-choice-row input:focus-visible+span{outline:3px solid var(--ring)}.filter-choice-row.compact span{min-height:31px;padding-inline:8px}.message-calendar{display:grid;grid-gap:8px;gap:8px}.message-calendar-heading{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;text-align:center}.message-calendar-heading strong{color:var(--foreground);font-size:.68rem}.message-calendar-days button,.message-calendar-heading button{display:grid;place-items:center;color:#625f72;background:transparent;border:0;border-radius:9px;cursor:pointer}.message-calendar-heading button{width:36px;height:36px}.message-calendar-heading button:last-child svg{transform:rotate(180deg)}.message-calendar-heading svg{width:17px;height:17px}.message-calendar-days,.message-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:3px;gap:3px}.message-calendar-weekdays span{color:#9996a7;font-size:.54rem;font-weight:800;text-align:center}.message-calendar-days button{min-height:32px;font:inherit;font-size:.57rem}.message-calendar-days button:hover{background:#f0effb}.message-calendar-days button.outside{color:#c3c1cc}.message-calendar-days button.in-range{color:#4338ca;background:#eeedff;border-radius:4px}.message-calendar-days button.selected{color:#fff;background:var(--primary);border-radius:9px}.calendar-selection-summary{min-height:22px;margin:2px 0 0;color:var(--muted);font-size:.56rem;text-align:center}.apply-message-filters{min-height:44px}.conversation-row{min-height:100px;padding-block:15px}.conversation-avatar-image{display:block;width:48px;height:48px;flex:0 0 auto;object-fit:cover;background:#ecebfa;border:0;border-radius:50%}.conversation-avatar-image.large{width:56px;height:56px}.conversation-row-heading strong{font-size:.85rem}.conversation-context{margin-top:4px;font-size:.62rem}.conversation-preview{margin-top:24px;font-size:.7rem}.conversation-shell{height:max(630px,calc(100dvh - 126px))}.conversation-header{min-height:86px;gap:13px;padding:12px 18px}.conversation-header-actions{display:flex;flex:0 0 auto;align-items:center;gap:2px}.conversation-header-icon{display:grid;width:42px;height:42px;place-items:center;color:#5e5b6d;background:transparent;border:0;border-radius:12px;cursor:pointer}.conversation-header-icon:hover{color:var(--primary);background:var(--primary-soft)}.conversation-header-icon svg{width:21px;height:21px}.conversation-header-icon.back svg{transform:rotate(180deg)}.conversation-person h1{font-size:.96rem}.conversation-person span{margin-top:5px;font-size:.68rem}.thread-search{display:flex;width:min(290px,27vw);min-height:42px;align-items:center;gap:7px;padding-inline:10px;background:#f8f8fb;border:1px solid var(--border);border-radius:12px}.thread-search button svg,.thread-search>svg{width:17px;height:17px}.thread-search input{width:100%;min-width:0;padding:0;background:transparent;border:0;outline:0;font-size:.64rem}.thread-search button{display:grid;width:28px;height:28px;place-items:center;color:var(--muted);background:transparent;border:0;cursor:pointer}.message-delivery-meta svg{width:15px;height:15px}.message-delivery-meta .read-receipt{color:#9ee7ff;opacity:1}.message-file{display:grid;min-width:230px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:9px;gap:9px;margin-top:8px;padding:9px;color:inherit;background:hsla(0,0%,100%,.14);border:1px solid hsla(0,0%,100%,.24);border-radius:12px}.message-bubble-row.theirs .message-file{background:#f7f7fb;border-color:#e6e5ee}.message-file>span:first-child{display:grid;width:38px;height:38px;place-items:center;background:hsla(0,0%,100%,.18);border-radius:10px}.message-file svg{width:19px;height:19px}.message-file small,.message-file strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-file strong{font-size:.62rem}.message-file small{margin-top:2px;font-size:.52rem;opacity:.7}.message-audio{width:min(310px,100%);height:42px;margin-top:7px}.message-composer{position:relative;display:grid;grid-template-columns:1fr;grid-gap:7px;gap:7px;padding:10px 14px 8px}.telegram-composer-box{position:relative;display:flex;min-height:54px;align-items:flex-end;gap:2px;padding:5px 6px;background:#f7f7fa;border:1px solid var(--border);border-radius:18px}.telegram-composer-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.telegram-composer-box textarea{min-height:42px;max-height:130px;flex:1 1;resize:none;padding:10px 8px;background:transparent;border:0;border-radius:0;box-shadow:none}.telegram-composer-box textarea:focus{border:0;box-shadow:none}.composer-icon-button,.composer-send-button{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;color:#777486;background:transparent;border:0;border-radius:50%;cursor:pointer}.composer-icon-button:hover{color:var(--primary);background:#ecebfb}.composer-icon-button svg,.composer-send-button svg{width:20px;height:20px}.composer-send-button{color:#fff;background:var(--primary)}.composer-send-button:disabled{color:#aaa8b7;background:#e6e5eb;cursor:not-allowed}.record-button.recording{color:#fff;background:#dc4c4c;animation:recording-pulse 1.3s ease-in-out infinite}@keyframes recording-pulse{50%{box-shadow:0 0 0 7px rgba(220,76,76,.14)}}.emoji-picker-wrap{position:relative;flex:0 0 auto}.emoji-picker{position:absolute;bottom:calc(100% + 10px);right:-46px;z-index:30;display:grid;width:220px;grid-template-columns:repeat(5,1fr);grid-gap:4px;gap:4px;padding:9px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md)}.emoji-picker button{display:grid;width:36px;height:36px;place-items:center;background:transparent;border:0;border-radius:8px;font-size:1rem;cursor:pointer}.emoji-picker button:hover{background:var(--primary-soft)}.pending-attachment{display:grid;width:-moz-fit-content;width:fit-content;max-width:100%;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;padding:7px 9px;background:#f1f0ff;border:1px solid #d8d5ff;border-radius:12px}.pending-attachment>span:first-child{display:grid;width:34px;height:34px;place-items:center;color:var(--primary);background:#fff;border-radius:9px}.pending-attachment svg{width:17px;height:17px}.pending-attachment small,.pending-attachment strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-attachment strong{color:var(--foreground);font-size:.6rem}.pending-attachment small{color:var(--muted);font-size:.52rem}.pending-attachment button{display:grid;width:30px;height:30px;place-items:center;color:#7c788b;background:transparent;border:0;cursor:pointer}.message-composer .composer-error,.message-composer .composer-hint{grid-column:auto}@media (max-width:760px){.conversation-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:12px}.conversation-search{width:100%;grid-column:1}.message-filter-wrap{grid-column:2}.conversation-result-count{grid-column:1/-1;-webkit-margin-start:0;margin-inline-start:0}.message-filter-popover{position:fixed;inset:auto 12px 92px;width:auto;max-height:calc(100dvh - 120px);grid-template-columns:1fr;overflow-y:auto;padding:14px;border-radius:18px}.apply-message-filters,.calendar-section,.message-filter-popover-heading{grid-column:auto}.filter-choice-row span,.filter-choice-row.compact span,.message-calendar-days button,.message-calendar-heading button{min-height:44px}.message-calendar-heading button{width:44px;height:44px}.conversation-search input,.telegram-composer-box textarea,.thread-search input{font-size:16px}.conversation-row{min-height:96px}.conversation-preview{margin-top:16px}.conversation-shell{height:calc(100dvh - 112px);min-height:560px;margin-bottom:76px}.conversation-header{min-height:76px;gap:8px;padding:9px}.conversation-header-actions{gap:0}.conversation-header-icon{width:36px;height:40px}.conversation-avatar-image.large{width:46px;height:46px}.conversation-person h1{font-size:.82rem}.conversation-person span{font-size:.58rem}.thread-search{position:absolute;top:calc(100% + 7px);right:10px;z-index:25;width:calc(100% - 20px);background:#fff;box-shadow:var(--shadow-md)}.conversation-profile-link{display:none}.message-file{min-width:190px}.message-composer{padding:8px}.telegram-composer-box{gap:0;padding:4px}.composer-icon-button,.composer-send-button{width:38px;height:40px}.composer-hint{display:none}}@media (max-width:430px){.message-filter-button{width:46px;padding:0}.message-filter-button>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.message-filter-button b{position:absolute;top:-5px;left:-5px}.conversation-avatar-image{width:44px;height:44px}.conversation-context{display:none}.conversation-row-heading strong{font-size:.76rem}.conversation-preview{font-size:.63rem}.message-bubble{max-width:90%}}