.landing-page{--landing-black:#111;--landing-paper:#f4f1e8;--landing-white:#fff;--landing-yellow:#f5d547;--landing-muted:#696969;--landing-light:#f8f8f8;background:var(--landing-paper);width:100%;min-height:100vh;color:var(--landing-black);margin:0;padding:0;overflow:hidden}.landing-page a{color:inherit}.landing-eyebrow{letter-spacing:.12em;align-items:center;gap:8px;font-size:11px;font-weight:950;display:inline-flex}.eyebrow-dot{border:2px solid var(--landing-black);background:var(--landing-yellow);flex:none;width:8px;height:8px}.landing-nav{border-bottom:3px solid var(--landing-black);justify-content:space-between;align-items:center;width:min(1380px,100% - 48px);margin:0 auto;padding:28px 0;display:flex}.landing-logo{color:var(--landing-black);letter-spacing:-.06em;font-size:30px;font-weight:950;text-decoration:none}.landing-logo span{color:var(--landing-yellow)}.landing-nav-actions{align-items:center;gap:24px;display:flex}.landing-login{color:var(--landing-black);font-size:14px;font-weight:800;text-decoration:none}.landing-login:hover{text-decoration:underline}.landing-nav-cta{border:3px solid var(--landing-black);background:var(--landing-yellow);color:var(--landing-black);box-shadow:4px 4px 0 var(--landing-black);justify-content:center;align-items:center;padding:12px 17px;font-size:13px;font-weight:900;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.landing-nav-cta:hover{box-shadow:1px 1px 0 var(--landing-black);transform:translate(3px,3px)}.landing-hero{grid-template-columns:.9fr 1.1fr;align-items:center;gap:70px;width:min(1380px,100% - 48px);min-height:760px;margin:0 auto;padding:90px 0 100px;display:grid}.hero-copy{min-width:0}.hero-copy h1{max-width:720px;font-family:var(--font-heading);letter-spacing:-.05em;margin:22px 0 28px;font-size:clamp(56px,6vw,94px);font-weight:950;line-height:1.2}.hero-copy h1 span{background:var(--landing-yellow);box-shadow:7px 7px 0 var(--landing-black);padding:0 8px;display:inline}.hero-description{color:#333;max-width:600px;margin:0;font-size:18px;line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:34px;display:flex}.hero-primary,.hero-secondary{border:3px solid var(--landing-black);justify-content:center;align-items:center;min-height:52px;padding:13px 19px;font-size:14px;font-weight:900;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.hero-primary{background:var(--landing-black);color:#fff;box-shadow:6px 6px 0 var(--landing-yellow);gap:12px}.hero-secondary{color:var(--landing-black);background:0 0}.hero-primary:hover,.hero-secondary:hover{transform:translate(3px,3px)}.hero-primary:hover{box-shadow:3px 3px 0 var(--landing-yellow)}.hero-note{color:var(--landing-muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:52px;font-size:12px;font-weight:800;display:flex}.hero-note span{border:2px solid var(--landing-black);background:var(--landing-yellow);flex:none;width:8px;height:8px}.hero-product{min-width:0;position:relative}.product-window{border:4px solid var(--landing-black);background:var(--landing-white);box-shadow:13px 13px 0 var(--landing-black);position:relative;overflow:visible;transform:rotate(1.1deg)}.window-topbar{border-bottom:3px solid var(--landing-black);background:var(--landing-white);grid-template-columns:1fr auto 1fr;align-items:center;height:42px;padding:0 14px;display:grid}.window-dots{gap:5px;display:flex}.window-dots span{border:2px solid var(--landing-black);background:var(--landing-yellow);border-radius:50%;width:8px;height:8px}.window-title{letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:900}.window-menu{justify-self:end;font-size:11px;font-weight:950}.mock-dashboard{grid-template-columns:155px 1fr;min-height:520px;display:grid}.mock-sidebar{border-right:3px solid var(--landing-black);background:var(--landing-light);padding:20px 14px}.mock-brand{letter-spacing:-.08em;margin-bottom:42px;font-size:24px;font-weight:950}.mock-nav{align-items:center;gap:8px;margin-bottom:10px;padding:9px 10px;font-size:10px;font-weight:800;display:flex}.mock-nav span{justify-content:center;width:13px;font-size:11px;display:inline-flex}.mock-nav.active{border:2px solid var(--landing-black);background:var(--landing-yellow)}.mock-main{background:var(--landing-white);min-width:0;padding:28px}.mock-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;display:flex}.mock-eyebrow{letter-spacing:.1em;margin-bottom:7px;font-size:8px;font-weight:950;display:block}.mock-heading h3{letter-spacing:-.05em;margin:0 0 5px;font-size:25px;font-weight:950}.mock-heading p{color:var(--landing-muted);margin:0;font-size:10px}.mock-avatar{border:3px solid var(--landing-black);background:var(--landing-yellow);flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:950;display:flex}.mock-next{border:3px solid var(--landing-black);background:var(--landing-yellow);box-shadow:5px 5px 0 var(--landing-black);justify-content:space-between;align-items:center;gap:20px;padding:17px;display:flex}.mock-label{letter-spacing:.1em;margin-bottom:8px;font-size:9px;font-weight:950;display:block}.mock-next h4{margin:0 0 6px;font-size:15px;font-weight:950}.mock-next p{margin:0;font-size:10px;font-weight:700}.mock-date{text-align:right;flex:none}.mock-date strong{font-size:17px;font-weight:950;display:block}.mock-date span{font-size:9px;font-weight:800}.mock-stats{border:3px solid var(--landing-black);grid-template-columns:repeat(4,1fr);margin-top:24px;display:grid}.mock-stats>div{border-right:2px solid var(--landing-black);min-width:0;padding:15px 10px}.mock-stats>div:last-child{border-right:0}.mock-stats span{color:var(--landing-muted);margin-bottom:4px;font-size:8px;font-weight:800;display:block}.mock-stats strong{font-size:22px;font-weight:950;display:block}.mock-bottom{grid-template-columns:1fr 1fr;gap:14px;margin-top:24px;display:grid}.mock-course-card,.mock-deadline-card{border:2px solid var(--landing-black);background:var(--landing-light);min-width:0;padding:14px}.mock-card-heading{letter-spacing:.08em;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:8px;font-weight:950;display:flex}.mock-deadline-card>.mock-card-heading{display:block}.mock-course-row{border-top:1px solid #ccc;grid-template-columns:28px 1fr;gap:9px;padding:10px 0;display:grid}.mock-course-row:first-of-type{border-top:0}.course-number{font-size:8px;font-weight:950}.mock-course-row strong{margin-bottom:4px;font-size:9px;font-weight:950;display:block}.mock-course-row span{color:var(--landing-muted);font-size:8px}.mini-deadline{border-top:1px solid #ccc;grid-template-columns:36px 1fr;gap:10px;padding:10px 0;display:grid}.mini-deadline:first-of-type{border-top:0}.mini-date{border:2px solid var(--landing-black);background:var(--landing-white);flex-direction:column;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.mini-date.yellow{background:var(--landing-yellow)}.mini-date strong{font-size:12px;font-weight:950;line-height:1}.mini-date span{margin-top:2px;font-size:6px;font-weight:950}.mini-deadline>div:last-child{min-width:0}.mini-deadline>div:last-child strong{margin-bottom:4px;font-size:9px;font-weight:950;display:block}.mini-deadline>div:last-child span{color:var(--landing-muted);font-size:8px}.floating-card{z-index:3;border:3px solid var(--landing-black);background:var(--landing-white);box-shadow:6px 6px 0 var(--landing-black);flex-direction:column;gap:3px;padding:12px 14px;font-size:10px;font-weight:950;display:flex;position:absolute}.floating-card span{letter-spacing:.08em;font-size:8px}.floating-card strong{font-size:11px}.floating-card small{font-size:8px;font-weight:700}.floating-card-one{top:12%;right:-35px;transform:rotate(4deg)}.floating-card-two{background:var(--landing-yellow);bottom:9%;left:-35px;transform:rotate(-4deg)}.landing-marquee{border-top:4px solid var(--landing-black);border-bottom:4px solid var(--landing-black);background:var(--landing-yellow);overflow:hidden}.landing-marquee>div{align-items:center;gap:38px;width:max-content;padding:15px 0;animation:11s linear infinite marquee;display:flex}.landing-marquee span{white-space:nowrap;letter-spacing:.05em;font-size:14px;font-weight:950}.landing-marquee i{font-size:16px;font-style:normal;font-weight:950}@keyframes marquee{0%{transform:translate(5%)}to{transform:translate(10%)}}.landing-problem{grid-template-columns:1fr 1fr;gap:100px;width:min(1200px,100% - 48px);margin:0 auto;padding:145px 0;display:grid}.problem-intro{min-width:0}.problem-intro h2{font-family:var(--font-heading);letter-spacing:-.065em;margin:22px 0 0;font-size:clamp(44px,5vw,72px);font-weight:950}.problem-intro h2 span{background:var(--landing-yellow);box-shadow:5px 5px 0 var(--landing-black);padding:0 6px;display:inline}.problem-content{align-self:end;min-width:0}.problem-content p{color:#333;margin:0 0 24px;font-size:19px;line-height:1.65}.problem-content p:last-of-type{margin-bottom:28px}.text-arrow{border-bottom:2px solid var(--landing-black);align-items:center;gap:8px;font-size:13px;font-weight:950;text-decoration:none;display:inline-flex}.text-arrow span{font-size:15px}.landing-features{border-top:4px solid var(--landing-black);background:var(--landing-black);color:var(--landing-white);padding:110px 24px}.feature-header{width:min(1200px,100%);margin:0 auto 50px}.feature-header .landing-eyebrow{color:var(--landing-yellow)}.feature-header h2{max-width:800px;font-family:var(--font-heading);letter-spacing:-.065em;margin:17px 0 0;font-size:clamp(43px,5vw,68px);font-weight:950;line-height:.95}.feature-grid{grid-template-columns:repeat(3,1fr);gap:18px;width:min(1200px,100%);margin:0 auto;display:grid}.feature-card{border:3px solid var(--landing-white);background:#171717;flex-direction:column;min-height:580px;padding:25px;display:flex}.feature-card-yellow{background:var(--landing-yellow);color:var(--landing-black);border-color:var(--landing-black)}.feature-number{font-size:12px;font-weight:950}.feature-card:not(.feature-card-yellow) .feature-number{color:var(--landing-yellow)}.feature-icon{border:3px solid var(--landing-black);background:var(--landing-yellow);width:54px;height:54px;color:var(--landing-black);justify-content:center;align-items:center;margin:70px 0 25px;font-size:20px;font-weight:950;display:flex}.feature-card h3{font-family:var(--font-heading);letter-spacing:-.045em;margin:0 0 15px;font-size:28px;font-weight:950;line-height:1}.feature-card p{color:#c8c8c8;max-width:330px;margin:0;font-size:15px;line-height:1.65}.feature-card-yellow p{color:#222}.feature-demo{margin-top:auto;padding-top:30px}.courses-demo{flex-direction:column;gap:8px;display:flex}.courses-demo>div{border:2px solid var(--landing-black);background:var(--landing-white);justify-content:space-between;align-items:center;padding:11px 12px;display:flex}.courses-demo strong,.courses-demo span{font-size:9px;font-weight:900}.deadlines-demo{flex-direction:column;display:flex}.deadline-line{border-top:1px solid #444;grid-template-columns:45px 1fr auto;align-items:center;gap:8px;min-width:0;padding:11px 0;display:grid}.deadline-line:first-child{border-top:0}.deadline-tag{color:#999;font-size:7px;font-weight:950}.deadline-tag.urgent{color:var(--landing-yellow)}.deadline-line strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:9px;font-weight:900;overflow:hidden}.deadline-line small{color:#999;font-size:8px}.overview-demo{grid-template-columns:1fr 1fr;align-items:end;gap:16px;display:grid}.overview-big{border:2px solid var(--landing-black);background:var(--landing-yellow);color:var(--landing-black);padding:14px}.overview-big span{margin-bottom:8px;font-size:7px;font-weight:950;display:block}.overview-big strong{font-size:48px;font-weight:950;line-height:.9}.overview-bars{align-items:flex-end;gap:7px;height:105px;display:flex}.overview-bars span{border:2px solid var(--landing-white);background:var(--landing-yellow);flex:1}.overview-bars span:first-child{height:35%}.overview-bars span:nth-child(2){height:55%}.overview-bars span:nth-child(3){height:70%}.overview-bars span:nth-child(4){height:90%}.landing-final{border-bottom:4px solid var(--landing-black);background:var(--landing-yellow);padding:130px 24px}.final-grid{grid-template-columns:1fr .65fr;align-items:end;gap:100px;width:min(1200px,100%);margin:0 auto;display:grid}.final-grid h2{max-width:850px;font-family:var(--font-heading);letter-spacing:-.08em;margin:20px 0 0;font-size:clamp(58px,7vw,100px);font-weight:950;line-height:.85}.final-right p{margin:0 0 28px;font-size:17px;line-height:1.65}.final-button{color:var(--landing-white);border:3px solid var(--landing-black);background:var(--landing-black);box-shadow:6px 6px 0 var(--landing-white);justify-content:center;align-items:center;gap:12px;padding:15px 20px;font-size:13px;font-weight:950;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.final-button:hover{box-shadow:3px 3px 0 var(--landing-white);transform:translate(3px,3px)}.final-login{margin-top:20px;font-size:11px;font-weight:800;display:block}.final-login a{font-weight:950}.landing-footer{justify-content:space-between;align-items:center;gap:20px;width:min(1200px,100% - 48px);margin:0 auto;padding:27px 0;font-size:11px;font-weight:800;display:flex}.landing-footer span:nth-child(2){color:var(--landing-muted)}@media (width<=1150px){.landing-hero{grid-template-columns:1fr;gap:75px;padding-top:80px}.hero-copy{max-width:850px}.hero-product{width:min(800px,100%);margin:0 auto}.floating-card-one{right:-15px}.floating-card-two{left:-15px}}@media (width<=900px){.landing-nav{width:calc(100% - 40px)}.landing-hero{width:calc(100% - 40px);padding-top:70px;padding-bottom:90px}.landing-problem{grid-template-columns:1fr;gap:45px;width:calc(100% - 40px);padding:105px 0}.problem-content{align-self:auto}.feature-grid{grid-template-columns:1fr}.feature-card{min-height:auto}.feature-icon{margin-top:45px}.final-grid{grid-template-columns:1fr;gap:50px}.final-right{max-width:600px}}@media (width<=700px){.landing-page{width:100%}.landing-nav{width:calc(100% - 40px);padding:20px 0}.landing-logo{font-size:25px}.landing-nav-actions{gap:12px}.landing-login{font-size:12px}.landing-nav-cta{box-shadow:3px 3px 0 var(--landing-black);padding:9px 12px;font-size:12px}.landing-hero{width:calc(100% - 40px);min-height:auto;padding:70px 0 82px;display:block}.hero-copy{width:100%}.hero-copy h1{letter-spacing:-.055em;max-width:100%;margin:24px 0 30px;font-size:clamp(48px,13vw,68px);line-height:1}.hero-copy h1 span{box-shadow:4px 4px 0 var(--landing-black);padding:0 5px}.hero-description{max-width:100%;font-size:16px;line-height:1.7}.hero-actions{flex-direction:column;align-items:flex-start;gap:14px;margin-top:38px}.hero-primary,.hero-secondary{width:fit-content;max-width:100%}.hero-note{margin-top:42px;line-height:1.7}.hero-product{display:none}.landing-problem{width:calc(100% - 40px);padding:88px 0}.problem-intro h2{letter-spacing:-.05em;margin-top:24px;font-size:clamp(42px,12vw,54px);line-height:.98}.problem-content p{font-size:16px;line-height:1.7}.landing-features{padding:82px 20px}.feature-header{margin-bottom:38px}.feature-header h2{letter-spacing:-.05em;font-size:clamp(42px,12vw,54px);line-height:.98}.feature-card{padding:20px}.feature-icon{margin-top:45px}.feature-card h3{font-size:25px}.feature-demo{padding-top:28px}.landing-final{padding:88px 20px}.final-grid{gap:48px}.final-grid h2{letter-spacing:-.055em;font-size:clamp(50px,14vw,64px);line-height:.92}.final-right p{font-size:16px;line-height:1.7}.landing-footer{flex-direction:column;align-items:flex-start;gap:10px;width:calc(100% - 40px);padding:24px 0;line-height:1.5}}@media (width<=420px){.landing-nav{width:calc(100% - 32px)}.landing-nav-actions{gap:8px}.landing-login{display:none}.landing-nav-cta{padding:9px 11px}.landing-hero{width:calc(100% - 32px);padding-top:60px;padding-bottom:70px}.hero-copy h1{font-size:clamp(45px,13vw,54px)}.hero-description{font-size:15px}.landing-problem{width:calc(100% - 32px);padding:76px 0}.problem-intro h2{font-size:clamp(40px,12vw,50px)}.landing-features{padding:74px 16px}.feature-header h2{font-size:clamp(40px,12vw,50px)}.landing-final{padding:76px 16px}.final-grid h2{font-size:clamp(48px,14vw,58px)}.landing-footer{width:calc(100% - 32px)}}@media (prefers-reduced-motion:reduce){.landing-marquee>div{animation:none}.landing-nav-cta,.hero-primary,.hero-secondary,.final-button{transition:none}}.hero-copy .hero-actions .hero-primary,.landing-final .final-grid .final-right .final-button{color:#fff}.navbar{background:var(--card);border:var(--border-thick);box-sizing:border-box;justify-content:space-between;align-items:center;gap:24px;width:100%;min-height:72px;padding:14px 28px;display:flex}.navbar-left{align-items:center;gap:20px;min-width:0;display:flex}.logo{font-family:var(--font-heading);letter-spacing:-.04em;color:var(--text-primary);cursor:pointer;background:0 0;border:none;margin:0;padding:0;font-size:2rem;font-weight:800}.semester{border:3px solid var(--border);border-radius:var(--radius);background:var(--accent);color:var(--text-primary);white-space:nowrap;align-items:center;padding:6px 12px;font-size:.9rem;font-weight:700;display:flex}.navbar-right{justify-content:flex-end;align-items:center;gap:16px;display:flex}.user-section{align-items:center;gap:14px;display:flex}.user-name{color:var(--text-primary);white-space:nowrap;font-weight:700}.logout-button{background:var(--text-primary);color:#fff;border:3px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition);padding:9px 16px;font-weight:700}.logout-button:hover{background:var(--accent);color:var(--text-primary);transform:translate(-2px,-2px);box-shadow:4px 4px #0000001a}.logo:focus-visible,.logout-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media (width<=900px){.navbar{gap:12px;padding:12px 16px}.navbar-left{gap:12px}.logo{font-size:1.6rem}.semester{padding:5px 8px;font-size:.78rem}.user-name{display:none}.logout-button{padding:8px 12px}.navbar{min-height:64px}.semester{display:none}}.navbar{border-bottom:3px solid #111;justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:0 4px;display:flex}.navbar-brand,.navbar-actions{align-items:center;gap:12px;display:flex}.logo{font-size:28px;font-weight:900}.academic-period{background:#f5d547;border:2px solid #111;padding:5px 9px;font-size:12px;font-weight:900}.navbar-user{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:800;overflow:hidden}.navbar-logout{font:inherit;cursor:pointer;background:#fff;border:3px solid #111;padding:9px 13px;font-weight:800}.navbar-logout:hover{color:#fff;background:#111}@media (width<=900px){.navbar{align-items:flex-start;padding:12px 0}.navbar-brand{flex-direction:column;align-items:flex-start;gap:6px}.navbar-actions{flex-direction:column;align-items:flex-end;gap:7px}.navbar-user{max-width:120px}}.sidebar{background:var(--card);border:var(--border-thick);box-shadow:var(--shadow-heavy);border-radius:var(--radius);width:25%;padding:20px 12px;display:block}.sidebar-mobile-trigger{background:var(--card);border:var(--border-thick);box-shadow:var(--shadow-heavy);border-radius:var(--radius);cursor:pointer;transition:var(--transition);align-items:center;gap:10px;width:100%;padding:12px 20px;font-size:1.1rem;font-weight:600;display:none}.sidebar-mobile-trigger:hover{background:var(--accent)}.sidebar-mobile-trigger span{font-size:1.8rem;line-height:1}.sidebar-list{flex-direction:column;gap:8px;list-style:none;display:flex}.sidebar-list li{border-radius:var(--radius);transition:var(--transition);cursor:pointer;border:3px solid #0000;align-items:center;gap:14px;padding:12px 16px;font-size:1.05rem;font-weight:600;display:flex}.sidebar-list li:hover{background:var(--bg);border-color:var(--border)}.sidebar-list .active{background:var(--accent);border-color:var(--border);box-shadow:4px 4px #0000001a}.sidebar-list .icon{text-align:center;width:2rem;font-size:1.5rem}.active-link li{background:var(--accent)!important;border-color:var(--border)!important;box-shadow:4px 4px #0000001a!important}a{color:inherit;text-decoration:none;display:block}@media (width<=767px){.sidebar{display:none}.sidebar.sidebar-mobile-open{flex-direction:column;margin-top:8px;display:flex}.sidebar-mobile-trigger{display:flex}}@media (width>=768px){.sidebar{height:fit-content;display:block;position:sticky;top:20px}.sidebar-mobile-trigger{display:none}}.sidebar{flex:0 0 230px;width:230px;padding:18px 0}.sidebar nav{flex-direction:column;gap:8px;display:flex}.sidebar a{color:#111;border:3px solid #0000;padding:13px 15px;font-weight:900;text-decoration:none;display:block}.sidebar a:hover{background:#fff;border-color:#111}.sidebar a.active{background:#f5d547;border-color:#111}@media (width<=900px){.sidebar{flex:none;width:100%;padding:10px 0}.sidebar nav{flex-flow:wrap}.sidebar a{text-align:center;flex:130px}}.app{background:var(--bg);width:100%;max-width:1440px;min-height:100vh;margin:0 auto;padding:0 16px}.dashboard-layout{flex-direction:row;align-items:flex-start;gap:8px;margin-top:20px;display:flex}.main-content{flex-direction:column;flex:1;gap:32px;min-width:0;display:flex}.calendar-section{margin-top:16px}.calendar-section-title{font-family:var(--font-heading);letter-spacing:-.02em;border-bottom:4px solid var(--border);margin-bottom:20px;padding-bottom:8px;font-size:2rem;font-weight:700}@media (width<=767px){.dashboard-layout{flex-direction:column}.dashboard-layout>:first-child{flex:none;width:100%;min-width:100%}.page-header h1{font-size:2rem}.calendar-section-title{font-size:1.5rem}}@media (width>=768px) and (width<=1199px){.dashboard-layout{flex-direction:column}.dashboard-layout>:first-child{flex:none;width:100%;min-width:100%}}.dashboard-intro{margin-bottom:26px}.dashboard-intro h1{margin:6px 0;font-size:40px;font-weight:900}.dashboard-intro p{color:#555;margin:0;font-size:16px}.next-deadline{background:#fff;border:3px solid #111;padding:22px;box-shadow:7px 7px #111}.next-deadline-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.next-deadline-header h2{margin:6px 0 0;font-size:27px;font-weight:900}.next-deadline-body{border-top:3px solid #111;justify-content:space-between;align-items:flex-end;gap:20px;margin-top:24px;padding-top:18px;display:flex}.next-deadline-body>div:first-child{flex-direction:column;gap:5px;display:flex}.next-deadline-body>div:first-child span,.next-deadline-body>div:first-child strong{text-transform:capitalize}.next-deadline-right{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.deadline-urgency{text-transform:uppercase;border:2px solid #111;padding:7px 10px;font-size:11px;font-weight:900;display:inline-block}.caught-up{border-top:3px solid #111;justify-content:space-between;align-items:center;gap:15px;margin-top:20px;padding-top:18px;display:flex}.caught-up p{margin:0;font-weight:700}.dashboard-stats{grid-template-columns:repeat(4,1fr);gap:15px;margin-top:24px;display:grid}.dashboard-stat{background:#fff;border:3px solid #111;padding:18px}.dashboard-stat span{text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:900;display:block}.dashboard-stat strong{font-size:30px;font-weight:900}.dashboard-empty{border:3px dashed #111;padding:30px;font-weight:800}@media (width<=900px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.dashboard-intro h1{font-size:32px}.next-deadline-header,.next-deadline-body,.caught-up{flex-direction:column;align-items:flex-start}.next-deadline-right{align-items:flex-start}.dashboard-stats{grid-template-columns:1fr 1fr}}.settings-container{background:var(--card);border:var(--border-thick);box-shadow:var(--shadow-heavy);border-radius:var(--radius);overflow:hidden}.settings-tabs{border-bottom:4px solid var(--border);background:var(--bg);display:flex;overflow-x:auto}.settings-tab{cursor:pointer;transition:var(--transition);color:var(--text-secondary);white-space:nowrap;background:0 0;border:none;border-bottom:4px solid #0000;margin-bottom:-4px;padding:16px 24px;font-size:1rem;font-weight:700}.settings-tab:hover{background:var(--accent);color:var(--text-primary)}.settings-tab.active{background:var(--card);color:var(--text-primary);border-bottom-color:var(--border)}.settings-content{padding:32px}.settings-section{max-width:600px}.settings-section h2{font-family:var(--font-heading);margin-bottom:24px;font-size:1.5rem;font-weight:700}.settings-input{border:3px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;transition:var(--transition);font-size:1rem;font-family:var(--font-body);padding:12px 16px}.settings-input:focus{box-shadow:0 0 0 2px var(--accent);background:#fff;outline:none}.settings-input.disabled{opacity:.6;cursor:not-allowed}.settings-select{border:3px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;font-size:1rem;font-family:var(--font-body);padding:12px 16px}.settings-toggle{border-bottom:3px solid var(--bg);justify-content:space-between;align-items:center;padding:16px 0;display:flex}.toggle-info{flex:1}.toggle-label{font-size:1.05rem;font-weight:700;display:block}.toggle-description{color:var(--text-secondary);font-size:.9rem}.toggle-switch{flex-shrink:0;width:50px;height:28px;margin-left:16px;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background:var(--bg);border:3px solid var(--border);transition:var(--transition);border-radius:20px;position:absolute;inset:0}.toggle-slider:before{content:"";background:var(--text-secondary);width:16px;height:16px;transition:var(--transition);border-radius:50%;position:absolute;bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{background:var(--text-primary);transform:translate(22px)}.toggle-slider.disabled{opacity:.5;cursor:not-allowed}.settings-divider{border-top:4px solid var(--border);margin:32px 0}.settings-danger{border-radius:var(--radius);background:#fff5f5;border:4px solid #ff6b6b;padding:20px 24px}.settings-danger h3{color:#ff6b6b;margin-bottom:8px;font-size:1.1rem}.settings-danger p{color:var(--text-secondary);margin-bottom:16px}.danger-btn{color:#fff;border:4px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition);background:#ff6b6b;padding:10px 24px;font-weight:700}.danger-btn:hover{background:#ff4757;transform:scale(1.05)}.settings-actions{border-top:4px solid var(--bg);gap:16px;margin-top:32px;padding-top:24px;display:flex}.save-btn{background:var(--text-primary);color:#fff;border:4px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition);padding:14px 32px;font-size:1rem;font-weight:700}.save-btn:hover{background:var(--accent);color:var(--text-primary);transform:translate(-2px,-2px);box-shadow:4px 4px #0000001a}.reset-btn{background:var(--bg);border:4px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition);padding:14px 32px;font-size:1rem;font-weight:700}.reset-btn:hover{background:var(--accent);transform:translate(-2px,-2px)}@media (width<=767px){.settings-content{padding:20px}.settings-tabs{overflow-x:auto}.settings-tab{padding:12px 16px;font-size:.9rem}.form-row{grid-template-columns:1fr}.settings-actions{flex-direction:column}.save-btn,.reset-btn{text-align:center;width:100%}.settings-toggle{flex-direction:column;align-items:flex-start;gap:12px}.toggle-switch{margin-left:0}}.settings-main{max-width:950px}.settings-card{background:#fff;border:3px solid #111;padding:24px;box-shadow:7px 7px #111}.settings-section{border-bottom:3px solid #111;padding:22px 0}.settings-section:first-child{padding-top:0}.settings-section:last-of-type{border-bottom:0}.settings-section h2{margin:0 0 18px;font-size:21px;font-weight:900}.settings-section label{flex-direction:column;gap:7px;margin-bottom:16px;font-size:14px;font-weight:800;display:flex}.settings-section input,.settings-section select{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:3px solid #111;padding:12px}.settings-section input:focus,.settings-section select:focus{outline:none;box-shadow:4px 4px #111}.settings-save-row{justify-content:flex-end;padding-top:22px;display:flex}.save-message{background:#7ee787;border:3px solid #111;margin-bottom:18px;padding:12px;font-weight:800}.button-danger{font:inherit;cursor:pointer;background:#ff6b6b;border:3px solid #111;padding:11px 15px;font-weight:900}.button-danger:hover{transform:translate(-2px,-2px);box-shadow:4px 4px #111}.modal-backdrop{z-index:1000;background:#0009;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-panel{background:#fff;border:4px solid #111;width:min(620px,100%);max-height:90vh;overflow-y:auto;box-shadow:10px 10px #111}.modal-header{border-bottom:4px solid #111;justify-content:space-between;gap:20px;padding:22px;display:flex}.modal-kicker{letter-spacing:.14em;margin-bottom:5px;font-size:11px;font-weight:900;display:block}.modal-header h2{margin:0;font-size:28px;font-weight:900}.modal-close{cursor:pointer;background:#fff;border:3px solid #111;width:42px;height:42px;font-size:28px;font-weight:900}.modal-form{padding:22px}.modal-form label{flex-direction:column;gap:7px;margin-bottom:16px;font-size:14px;font-weight:800;display:flex}.modal-form input,.modal-form select,.modal-form textarea{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:3px solid #111;padding:12px 13px}.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{outline:none;box-shadow:4px 4px #111}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-error{background:#ff6b6b;border:3px solid #111;margin-bottom:16px;padding:12px;font-weight:800}.modal-actions{border-top:3px solid #111;justify-content:space-between;gap:14px;margin-top:22px;padding-top:18px;display:flex}.modal-actions-right{gap:10px;display:flex}.modal-actions button{font:inherit;cursor:pointer;border:3px solid #111;padding:11px 16px;font-weight:800}.button-primary{background:#f5d547}.button-secondary{background:#fff}.button-danger{background:#ff6b6b}.modal-actions button:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:4px 4px #111}.modal-actions button:disabled{opacity:.55;cursor:not-allowed}@media (width<=600px){.form-grid{grid-template-columns:1fr;gap:0}.modal-actions{flex-direction:column}.modal-actions-right{width:100%}.modal-actions-right button{flex:1}}.main-content{flex-direction:column;gap:32px;width:100%;min-width:0;display:flex}.page-header h1{font-family:var(--font-heading);letter-spacing:-.02em;font-size:2.6rem;font-weight:700;line-height:1.1}.page-header p{color:var(--text-secondary);margin-top:4px;font-size:1.1rem;font-weight:500}.course-card{background:var(--card);border:var(--border-thick);box-shadow:var(--shadow-heavy);border-radius:var(--radius);transition:var(--transition);flex-direction:column;gap:8px;padding:24px 22px;display:flex}.course-card:hover{transform:translate(-3px,-3px);box-shadow:10px 10px #0000001a}.course-card h3{font-family:var(--font-heading);letter-spacing:-.01em;font-size:1.8rem;font-weight:700}.course-card .instructor{color:var(--text-secondary);border-bottom:3px solid var(--border);margin-bottom:6px;padding-bottom:8px;font-weight:500}.course-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;font-weight:500;display:flex}.assignments-badge{background:var(--bg);border:3px solid var(--border);border-radius:var(--radius);padding:4px 12px;font-size:.9rem}.progress-wrap{background:var(--bg);border:3px solid var(--border);border-radius:var(--radius);height:12px;margin:8px 0 6px}.progress-fill{background:var(--accent);border-right:3px solid var(--border);height:100%}.exam-date{color:var(--text-secondary);font-size:.95rem;font-weight:500}.card-btn{background:var(--text-primary);color:#fff;border:4px solid var(--border);text-align:center;border-radius:var(--radius);transition:var(--transition);cursor:pointer;letter-spacing:-.01em;margin-top:12px;padding:14px 16px;font-size:1rem;font-weight:700;box-shadow:4px 4px #0000001a}.card-btn:hover{background:var(--accent);color:var(--text-primary);transform:translate(-2px,-2px);box-shadow:6px 6px #0000001a}@media (width>=768px){.course-grid{grid-template-columns:1fr 1fr}}@media (width>=1200px){.course-grid{grid-template-columns:1fr 1fr 1fr}}.course-grid-container{width:100%;min-height:200px}.error-message{border-radius:var(--radius);text-align:center;background:#fff5f5;border:4px solid #ff6b6b;padding:24px}.error-message h3{color:#ff6b6b;margin-bottom:8px}.error-message p{color:var(--text-secondary);margin-bottom:16px}.retry-btn{background:var(--text-primary);color:#fff;border:3px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition);padding:8px 24px;font-weight:600}.retry-btn:hover{background:var(--accent);color:var(--text-primary)}.empty-state{background:var(--card);border:var(--border-thick);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow-heavy);padding:40px}.empty-state h3{font-family:var(--font-heading);margin-bottom:8px;font-size:1.5rem}.empty-state p{color:var(--text-secondary)}.course-actions{gap:12px;margin-top:12px;display:flex}.course-actions .card-btn{flex:1;margin-top:0}.edit-btn{background:var(--text-primary)}.delete-btn{background:#ff6b6b}.delete-btn:hover{color:#fff;background:#f44}.add-course-btn{background:var(--accent);color:var(--text-primary);border:4px solid var(--border);border-radius:var(--radius);cursor:pointer;box-shadow:5px 5px 0 var(--border);transition:var(--transition);white-space:nowrap;padding:12px 20px;font-size:1rem;font-weight:800}.add-course-btn:hover{box-shadow:7px 7px 0 var(--border);transform:translate(-2px,-2px)}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.course-form-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.course-form{background:var(--card);border:var(--border-thick);border-radius:var(--radius);width:min(520px,100%);max-height:90vh;box-shadow:12px 12px 0 var(--border);padding:28px;overflow-y:auto}.form-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.form-header h2{font-family:var(--font-heading);font-size:2rem}.close-btn{border:3px solid var(--border);background:var(--bg);cursor:pointer;border-radius:var(--radius);width:42px;height:42px;font-size:1.8rem;font-weight:800}.course-form form{flex-direction:column;gap:18px;display:flex}.course-form label{flex-direction:column;gap:7px;font-weight:700;display:flex}.course-form input{box-sizing:border-box;border:3px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--text-primary);padding:12px;font-family:inherit;font-size:1rem}.course-form input:focus{outline:3px solid var(--accent);outline-offset:1px}.form-actions{gap:12px;margin-top:8px;display:flex}.form-actions button{border:3px solid var(--border);border-radius:var(--radius);cursor:pointer;flex:1;padding:13px;font-size:1rem;font-weight:800}.cancel-btn{background:var(--bg);color:var(--text-primary)}.save-btn{background:var(--accent);color:var(--text-primary)}@media (width<=767px){.page-header{flex-direction:column}.add-course-btn{width:100%}.course-form{padding:20px}.course-actions,.form-actions{flex-direction:column}}.page-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;display:flex}.page-heading h1{margin:0;font-size:42px;font-weight:900}.page-heading p{color:#555;margin:8px 0 0}.eyebrow,.small-label{letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:900}.primary-action,.secondary-action{font:inherit;cursor:pointer;border:3px solid #111;padding:12px 17px;font-weight:900}.primary-action{background:#f5d547}.secondary-action{background:#fff}.primary-action:hover,.secondary-action:hover{transform:translate(-2px,-2px);box-shadow:4px 4px #111}.course-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.course-card{background:#fff;border:3px solid #111;min-width:0;padding:20px;box-shadow:6px 6px #111}.course-card-top{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.course-card h2{margin:7px 0 4px;font-size:23px;font-weight:900}.course-card p{color:#555;margin:0}.course-code{letter-spacing:.08em;font-size:11px;font-weight:900}.credits-badge{white-space:nowrap;background:#f1f1f1;border:2px solid #111;padding:5px 8px;font-size:12px;font-weight:900}.course-card-footer{border-top:2px solid #111;justify-content:space-between;align-items:center;gap:15px;margin-top:25px;padding-top:15px;display:flex}.course-card-footer strong{margin-top:4px;display:block}.page-error,.page-empty{background:#fff;border:3px solid #111;padding:30px}.page-error{background:#ff6b6b;justify-content:space-between;gap:15px;font-weight:800;display:flex}.page-error button{cursor:pointer;background:#fff;border:2px solid #111;padding:8px 12px;font-weight:800}.page-empty{text-align:center}.page-empty h2{margin:0 0 8px;font-size:25px}.page-empty p{color:#555;margin-bottom:18px}@media (width<=1000px){.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.page-main{padding:20px}.page-heading{flex-direction:column}.primary-action{width:100%}.course-grid{grid-template-columns:1fr}}.deadline-modal-overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.deadline-modal{background:#fff;border:4px solid #000;width:min(620px,100%);max-height:90vh;overflow-y:auto;box-shadow:12px 12px #000}.deadline-modal-header{border-bottom:4px solid #000;justify-content:space-between;align-items:flex-start;padding:24px;display:flex}.deadline-modal-eyebrow{letter-spacing:.12em;margin:0 0 6px;font-size:12px;font-weight:800}.deadline-modal-header h2{margin:0;font-size:28px;font-weight:900}.deadline-modal-close{cursor:pointer;background:#fff;border:3px solid #000;width:42px;height:42px;font-size:28px;font-weight:900}.deadline-modal-close:hover{color:#fff;background:#000}.deadline-form{padding:24px}.deadline-form-error{background:#ff6b6b;border:3px solid #000;margin-bottom:18px;padding:12px 14px;font-weight:800}.deadline-form-group{flex-direction:column;gap:7px;margin-bottom:18px;display:flex}.deadline-form-group label{font-size:14px;font-weight:800}.deadline-form-group label span{font-weight:500}.deadline-form-group input,.deadline-form-group select,.deadline-form-group textarea{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:3px solid #000;outline:none;padding:12px 14px;font-size:15px}.deadline-form-group input:focus,.deadline-form-group select:focus,.deadline-form-group textarea:focus{box-shadow:4px 4px #000}.deadline-form-group textarea{resize:vertical;min-height:100px}.deadline-form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.deadline-form-loading{border:3px solid #000;margin:0;padding:12px 14px;font-weight:700}.deadline-modal-actions{border-top:3px solid #000;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:20px;display:flex}.deadline-modal-actions-right{gap:10px;display:flex}.deadline-modal-actions button{min-height:44px;font:inherit;cursor:pointer;border:3px solid #000;padding:10px 18px;font-weight:800}.deadline-cancel-button{background:#fff}.deadline-cancel-button:hover{background:#eee}.deadline-save-button{background:#f5d547}.deadline-save-button:hover{transform:translate(-2px,-2px);box-shadow:4px 4px #000}.deadline-delete-button{background:#ff6b6b}.deadline-delete-button:hover{transform:translate(-2px,-2px);box-shadow:4px 4px #000}.deadline-modal-actions button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}@media (width<=600px){.deadline-modal-overlay{padding:12px}.deadline-modal{box-shadow:6px 6px #000}.deadline-modal-header,.deadline-form{padding:18px}.deadline-form-row{grid-template-columns:1fr;gap:0}.deadline-modal-actions{flex-direction:column;align-items:stretch}.deadline-modal-actions-right{width:100%}.deadline-modal-actions-right button{flex:1}}.completed-banner{background:#7ee787;border:3px solid #111;padding:11px 13px;font-weight:800}.modal-left-actions{gap:10px;display:flex}@media (width<=650px){.modal-left-actions{flex-direction:column}}.deadlines-layout{min-height:calc(100vh - 70px);display:flex}.deadlines-main{flex:1;min-width:0;padding:36px}.deadlines-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px;display:flex}.deadlines-eyebrow{letter-spacing:.14em;margin:0 0 6px;font-size:11px;font-weight:900}.deadlines-header h1{margin:0;font-size:42px;font-weight:900}.deadlines-subtitle{max-width:650px;margin:10px 0 0;font-size:16px;line-height:1.5}.deadlines-add-button{font:inherit;cursor:pointer;background:#f5d547;border:3px solid #000;flex-shrink:0;padding:13px 20px;font-weight:900}.deadlines-add-button:hover{transform:translate(-2px,-2px);box-shadow:5px 5px #000}.deadlines-error{background:#ff6b6b;border:3px solid #000;margin-bottom:24px;padding:14px 16px;font-weight:800}.deadline-date-group{width:100%}.deadline-date-heading{border-bottom:3px solid #000;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;padding-bottom:10px;display:flex}.deadline-date-heading h2{margin:0;font-size:24px;font-weight:900}.deadline-date-heading span{font-size:13px;font-weight:800}.deadline-date-list{flex-direction:column;gap:14px;display:flex}.deadlines-empty-state{text-align:center;border:3px dashed #000;padding:60px 24px}.deadlines-empty-state h2{margin:0 0 10px;font-size:26px;font-weight:900}.deadlines-empty-state p{margin:0 0 20px}.deadlines-empty-button{font:inherit;cursor:pointer;background:#f5d547;border:3px solid #000;padding:12px 18px;font-weight:900}.deadlines-empty-button:hover{transform:translate(-2px,-2px);box-shadow:4px 4px #000}@media (width<=800px){.deadlines-main{padding:24px}.deadlines-header{flex-direction:column}.deadlines-add-button{width:100%}}@media (width<=600px){.deadlines-main{padding:18px}.deadlines-header h1{font-size:34px}.deadline-date-heading{flex-direction:column;align-items:flex-start;gap:4px}}.page-main{flex:1;min-width:0;padding:34px}.deadline-groups{flex-direction:column;gap:30px;display:flex}.deadline-group-header{border-bottom:3px solid #111;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;padding-bottom:9px;display:flex}.deadline-group-header h2{margin:0;font-size:24px;font-weight:900}.deadline-group-header span{font-size:12px;font-weight:800}.deadline-group-list{flex-direction:column;gap:14px;display:flex}.deadline-card{background:#fff;border:3px solid #111;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:18px;display:grid;box-shadow:5px 5px #111}.deadline-card.is-completed{opacity:.72}.deadline-content{min-width:0}.deadline-top-line{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.deadline-course{text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:900}.deadline-urgency{text-transform:uppercase;border:2px solid #111;flex-shrink:0;padding:6px 9px;font-size:11px;font-weight:900;display:inline-block}.deadline-urgency.safe{background:#7ee787}.deadline-urgency.soon{background:#f5d547}.deadline-urgency.urgent{background:#ff6b6b}.deadline-card h3{margin:8px 0;font-size:21px;font-weight:900}.deadline-meta{flex-wrap:wrap;gap:8px;display:flex}.deadline-meta span{text-transform:uppercase;border:2px solid #111;padding:4px 7px;font-size:11px;font-weight:800}.deadline-due{margin:12px 0 0;font-size:14px}.deadline-description{color:#444;border-top:2px solid #111;grid-column:1/-1;margin:0;padding-top:14px}.deadline-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:8px;display:flex}@media (width<=750px){.page-main{padding:20px}.deadline-card{grid-template-columns:1fr}.deadline-actions{justify-content:flex-start}}@media (width<=520px){.deadline-top-line{flex-direction:column}.deadline-actions{grid-template-columns:1fr;display:grid}.deadline-actions button{width:100%}}.auth-page{background:#f4f1e8;place-items:center;min-height:100vh;padding:20px;display:grid}.auth-panel{background:#fff;border:4px solid #111;width:min(480px,100%);padding:28px;box-shadow:10px 10px #111}.auth-logo{margin-bottom:20px;font-size:26px;font-weight:900;display:inline-block}.auth-panel h1{margin:0 0 8px;font-size:36px;font-weight:900}.auth-panel>p{color:#555;margin:0 0 22px}.auth-panel form label{flex-direction:column;gap:7px;margin-bottom:15px;font-size:14px;font-weight:800;display:flex}.auth-panel input{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:3px solid #111;padding:13px}.auth-panel input:focus{outline:none;box-shadow:4px 4px #111}.auth-submit{width:100%;font:inherit;cursor:pointer;background:#f5d547;border:3px solid #111;margin-top:6px;padding:13px;font-weight:900}.auth-submit:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:5px 5px #111}.auth-submit:disabled{opacity:.55;cursor:not-allowed}.auth-error{background:#ff6b6b;border:3px solid #111;margin-bottom:16px;padding:12px;font-weight:800}.auth-footer{margin-top:18px!important}.auth-footer a{color:#111;font-weight:900}.not-found-container{justify-content:center;align-items:center;min-height:calc(100vh - 100px);padding:40px 20px;display:flex}.not-found-content{text-align:center;width:100%;max-width:600px}.not-found-code{font-family:var(--font-heading);color:var(--accent);text-shadow:8px 8px 0 var(--border);margin-bottom:16px;font-size:8rem;font-weight:700;line-height:1}.not-found-content h1{font-family:var(--font-heading);margin-bottom:12px;font-size:2.5rem;font-weight:700}.not-found-content p{color:var(--text-secondary);margin-bottom:32px;font-size:1.1rem}.not-found-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:40px;display:flex}.not-found-btn{border:4px solid var(--border);border-radius:var(--radius);transition:var(--transition);cursor:pointer;padding:14px 32px;font-size:1rem;font-weight:700;text-decoration:none;display:inline-block}.not-found-btn.primary{background:var(--text-primary);color:#fff;box-shadow:4px 4px #0000001a}.not-found-btn.primary:hover{background:var(--accent);color:var(--text-primary);transform:translate(-2px,-2px);box-shadow:6px 6px #0000001a}.not-found-btn.secondary{background:var(--bg);color:var(--text-primary)}.not-found-btn.secondary:hover{background:var(--accent);transform:translate(-2px,-2px);box-shadow:4px 4px #0000001a}.not-found-suggestions p{color:var(--text-primary);margin-bottom:12px;font-weight:600}.suggestion-links{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.suggestion-links a{background:var(--card);border:3px solid var(--border);border-radius:var(--radius);color:var(--text-primary);transition:var(--transition);padding:8px 20px;font-weight:600;text-decoration:none}.suggestion-links a:hover{background:var(--accent);transform:translateY(-2px);box-shadow:4px 4px #0000001a}@media (width<=767px){.not-found-code{text-shadow:4px 4px 0 var(--border);font-size:5rem}.not-found-content h1{font-size:2rem}.not-found-actions{flex-direction:column;align-items:center}.not-found-btn{text-align:center;width:100%;max-width:280px}.suggestion-links{gap:8px}.suggestion-links a{padding:6px 14px;font-size:.9rem}}*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f4f4f4;--card:#fff;--text-primary:#111;--text-secondary:#555;--border:#111;--accent:#ffd43b;--font-body:"Inter", "IBM Plex Sans", sans-serif;--font-heading:"Space Grotesk", "Inter", sans-serif;--shadow-heavy:8px 8px 0 #00000026;--border-thick:4px solid var(--border);--radius:4px;--transition:.18s ease-in-out}html{font-synthesis:none;text-rendering:optimizelegibility;background:#f4f1e8;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-height:100vh;font-family:var(--font-body);color:var(--text-primary);background:#f4f1e8;margin:0;padding:0}#root{min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}.app-shell{width:min(1440px,100%);min-height:100vh;margin:0 auto;padding:0 18px}.page-layout{align-items:flex-start;gap:25px;min-height:calc(100vh - 68px);display:flex}.route-loading{place-items:center;min-height:100vh;font-weight:900;display:grid}.eyebrow{letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:900}@media (width<=900px){.page-layout{flex-direction:column}.page-main{width:100%}}
