:root{color-scheme:dark;--bg:#06152c;--line:#243b55;--muted:#96acc3;--orange:#ff9b36;--cyan:#40d9f3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bg);color:#f6f8fc;font:15px/1.65 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;border:0}button:hover{filter:brightness(1.15)}button:focus-visible,a:focus-visible,input:focus,select:focus{outline:2px solid var(--cyan);outline-offset:4px}.designs{background:#030e1e;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:12px 4%;gap:15px;font-size:11px;color:var(--muted)}.designs>div{background:#102640;padding:4px;border-radius:9px;display:flex;gap:4px}.designs button{background:none;color:var(--muted);padding:7px 17px;border-radius:6px;font-size:12px}.designs button.active{background:#254765;color:white}#app{overflow:hidden;position:relative;background:radial-gradient(ellipse at 7% 17%,#0d477366,transparent 35%)}#app:before{content:'';position:absolute;width:600px;height:700px;border:1px solid #2ed4ef24;border-radius:100px;top:30px;right:-590px;transform:rotate(35deg);box-shadow:35px 0 0 #06152c,36px 0 0 #2ed4ef22,75px 0 0 #06152c,76px 0 0 #2ed4ef18;pointer-events:none}header,main,footer{max-width:1280px;margin:auto;padding-inline:40px;position:relative}header{display:flex;align-items:center;gap:45px;height:100px;border-bottom:1px solid #ffffff0d}.brand{display:flex;align-items:center;gap:12px;font-size:27px;font-weight:750}.brand small{font-size:11px;font-weight:400;color:var(--muted)}.logo{direction:ltr;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#143959;border-radius:12px;font-size:35px;line-height:1}.logo span{color:var(--orange);font-size:22px;margin-top:13px}nav{display:flex;gap:30px;margin-left:auto;color:var(--muted);font-size:13px}nav a:first-child{color:white}.primary{display:inline-flex;justify-content:center;align-items:center;background:var(--orange);color:#1b2030;border-radius:9px;padding:12px 22px;font-weight:750}.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:35px;padding:40px 0 35px;min-height:490px}.eyebrow{font-size:11px;color:var(--cyan);font-weight:550}h1{font-size:70px;line-height:1.12;letter-spacing:-3px;margin:20px 0}h1 em{color:var(--orange);font-style:normal}.copy>p{font-size:17px;color:var(--muted);line-height:1.9}.actions{display:flex;gap:25px;align-items:center;margin-top:28px}.actions a{font-size:12px;color:#c0cddd}.people{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);margin-top:24px}.people b{display:grid;place-items:center;border-radius:50%;width:26px;height:26px;background:#244869;color:#a5e5f4;border:2px solid var(--bg)}.people b:nth-child(2){background:#65452f;color:#ffd2a0;margin-right:-18px}.visual{position:relative;isolation:isolate}.visual:before,.visual:after{content:'';position:absolute;width:85%;height:85%;border:1px solid #40d9f327;border-radius:50%;top:8%;left:8%;z-index:-1}.visual:after{width:98%;height:98%;top:1%;left:1%;border-style:dashed;border-color:#40d9f314}.visual img{display:block;width:100%;max-width:465px;margin:auto;mix-blend-mode:screen;mask-image:radial-gradient(ellipse 50% 49% at center,#000 77%,transparent 100%)}.bubble{position:absolute;bottom:6%;left:0;background:#0b2445ee;border:1px solid #35536d;border-radius:12px;display:flex;align-items:center;gap:12px;padding:11px 18px;box-shadow:0 15px 30px #0003;font-size:12px}.bubble>b{border-radius:50%;width:28px;height:28px;background:#ff9b361c;color:var(--orange);text-align:center;line-height:28px}.bubble small{display:block;color:var(--muted);font-size:10px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:15px 0 34px}.stats article{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line);background:#0b203cb8;border-radius:13px;padding:18px 20px;gap:2px}.stats span{font-size:12px;color:#c0cfdf}.stats strong{font-size:34px;grid-column:2;grid-row:1/3;line-height:1.2}.stats small{font-size:10px;color:#728ba8}.stats .urgent{border-color:#ff9b3655;background:#ff9b3609}.urgent strong{color:var(--orange)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:22px;align-items:start}.panel{background:#0b203cbf;border:1px solid var(--line);border-radius:16px;overflow:hidden}.sectionhead{padding:23px;display:flex;align-items:center;justify-content:space-between;gap:12px}h2{font-size:25px;letter-spacing:-.5px}h2 small{font-size:12px;color:var(--muted);font-weight:400}h3{font-size:18px}.sectionhead .eyebrow{font-size:10px}.quiet{border:1px solid #ff9b3655;background:#ff9b360c;color:var(--orange);padding:7px 11px;border-radius:7px;font-size:11px;white-space:nowrap}.filters{padding:0 23px 17px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.filters button{background:none;color:var(--muted);border-radius:6px;padding:5px 15px;font-size:11px}.filters button.active{background:#263e59;color:white}.filters small{font-size:10px;color:#829ab4}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:right;white-space:nowrap;font-size:11px}th{font-weight:450;font-size:10px;color:#8fa5be;background:#081a30;padding:13px 12px}td{padding:18px 12px;border-bottom:1px solid #293e5555}td:first-child,th:first-child{padding-right:23px}td:first-child{font-weight:550}tr.urgent{background:#ff9b360a}tr.urgent td:first-child{border-right:3px solid var(--orange);padding-right:20px}.badge{font-size:10px;display:inline-block;padding:4px 8px;border-radius:5px;background:#243f5866;color:#bccde0;border:1px solid #3a536a55}.badge.soon{color:#ffb664;background:#ff9b3618;border-color:#ff9b3644}.badge.done{color:#8ae4c9;background:#25d9b011;border-color:#25d9b033}.owner{padding:2px 8px;border-radius:5px;background:#273e59;color:#d2dfec}.status{border:1px solid #39536f;background:none;color:#b1c2d4;border-radius:6px;font-size:11px;padding:4px 8px}.status.yes{color:var(--orange);background:#ff9b3610;border-color:#ff9b3644}.delete{font-size:18px;background:none;color:#819ab5;padding:3px 6px}.legend{font-size:10px;color:#8ba0b7;padding:14px 23px}.note{background:linear-gradient(150deg,#143f5f,#0b203b)}.note img{width:100%;height:190px;object-fit:cover;object-position:50% 35%;display:block;mix-blend-mode:screen;mask-image:linear-gradient(#000 65%,transparent)}.note>div{padding:0 22px 24px;margin-top:-8px;position:relative}.note h3{margin:8px 0}.note p{font-size:12px;color:#adc2d8}.note a{display:inline-block;color:var(--orange);font-size:11px;margin-top:18px}#exams{margin-top:24px}.empty{text-align:center;padding:15px 25px 32px}.empty>b{display:grid;place-items:center;width:44px;height:44px;margin:0 auto 12px;border:1px solid #365470;border-radius:11px;color:var(--orange);font-size:24px}.empty h3{font-size:16px}.empty p{font-size:12px;color:var(--muted);margin:6px 0 15px}.examrow{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);padding:18px 24px}.examrow strong{margin-left:auto}.examrow span{font-size:12px;color:var(--muted)}#features{padding:50px 0 25px}.intro{text-align:center}.intro h2{margin:7px 0}.intro p{font-size:12px;color:var(--muted)}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:30px}.features article{border-top:1px solid var(--line);padding:20px 7px}.features b{display:grid;place-items:center;background:#ff9b3615;color:var(--orange);width:28px;height:28px;border-radius:7px;margin-bottom:12px}.features h3{font-size:15px}.features p{font-size:12px;color:var(--muted);margin:7px 0}.features small{font-size:10px;color:#7c95af}.storage{font-size:11px;color:#7c96b1;text-align:center;padding:12px 0 28px}footer{border-top:1px solid var(--line);padding-block:25px;display:flex;align-items:center;gap:25px;font-size:11px;color:var(--muted)}footer .brand{font-size:22px;color:white}footer button{background:none;color:var(--muted);margin-right:auto;font-size:11px}dialog{width:min(94%,460px);background:#0d2540;color:white;border:1px solid #3b5874;border-radius:18px;padding:25px;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#010b1bcc;backdrop-filter:blur(5px)}dialog .sectionhead{padding:0 0 15px}#close{font-size:28px;color:var(--muted);background:none}label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#c4d4e5;margin:13px 0}input,select{background:#07182e;color:white;border:1px solid #3c5570;border-radius:8px;padding:10px;width:100%;min-width:0}.formrow{display:flex;gap:15px}.formrow label{flex:1;min-width:0}form p{color:var(--muted);font-size:11px;margin:5px 0 20px}form>.primary{width:100%}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:90%;background:#173f5e;border:1px solid #4e7290;color:white;border-radius:10px;padding:12px 22px;opacity:0;pointer-events:none;z-index:10;font-size:13px}#toast.show{opacity:1}#cards{display:none}[hidden]{display:none!important}
[data-theme="focus"] .hero{grid-template-columns:1fr 240px;min-height:230px;padding-block:25px}[data-theme="focus"] h1{font-size:42px;margin:10px 0;letter-spacing:-1.5px}[data-theme="focus"] h1 br{display:none}[data-theme="focus"] .copy>p{font-size:14px}[data-theme="focus"] .actions,[data-theme="focus"] .people,[data-theme="focus"] .bubble,[data-theme="focus"] .visual:before,[data-theme="focus"] .visual:after{display:none}[data-theme="focus"] .visual img{max-width:220px}[data-theme="focus"] header{height:85px}[data-theme="focus"] .panel{border-radius:6px;background:#081c32}[data-theme="focus"] .stats article{border-radius:5px;border-top:2px solid #258eaa}[data-theme="focus"] .stats .urgent{border-top-color:var(--orange)}[data-theme="focus"] .intro{text-align:right}
[data-theme="cards"] .hero{border:1px solid #355574;border-radius:25px;padding:30px;margin:25px 0;background:linear-gradient(120deg,#0b4166aa,#0c213b);min-height:420px}[data-theme="cards"] h1{font-size:57px}[data-theme="cards"] .visual img{max-width:350px}[data-theme="cards"] .people{display:none}[data-theme="cards"] .stats article{background:none;border:0;border-right:1px solid var(--line);border-radius:0}[data-theme="cards"] .workspace{grid-template-columns:1fr}[data-theme="cards"] .note{display:flex;align-items:center;grid-row:1}[data-theme="cards"] .note img{width:100px;height:110px;mask-image:linear-gradient(to left,#000 65%,transparent)}[data-theme="cards"] .note>div{margin:0;padding:14px 20px}[data-theme="cards"] .note h3{margin:3px 0}[data-theme="cards"] .note a{display:none}[data-theme="cards"] .tablewrap,[data-theme="cards"] .legend{display:none}[data-theme="cards"] #cards{display:grid;grid-template-columns:repeat(3,1fr);padding:20px;gap:15px}.taskcard{border:1px solid #36536d;border-radius:12px;background:#102c47;padding:18px}.taskcard.urgent{border-color:#ff9b3660;background:#ff9b360a}.taskcard>small{color:var(--cyan);font-size:11px}.taskcard h3{margin:7px 0 15px;font-size:17px}.taskcard p{font-size:11px;color:var(--muted);margin:12px 0}.cardbottom{display:flex;justify-content:space-between;align-items:center;font-size:11px}
@media(max-width:1000px){header{gap:25px}nav{gap:15px}.workspace{grid-template-columns:1fr}.note{display:none}h1{font-size:53px}.hero{gap:15px}.stats article{padding:15px}.stats small{display:none}.actions{gap:15px}.actions a{font-size:11px}.features{gap:16px}.designs>span{display:none}[data-theme="cards"] h1{font-size:45px}}
@media(max-width:680px){header,main,footer{padding-inline:18px}.designs{padding:8px 10px;justify-content:center}.designs small{display:none}.designs button{padding:7px 9px;font-size:10px}header{height:78px;gap:10px}header .primary{margin-right:auto;font-size:11px;padding:10px 12px}.brand{font-size:20px;gap:8px}.brand small{font-size:9px}.logo{width:30px;height:30px;font-size:26px}nav{display:none}.hero{grid-template-columns:1fr;text-align:center;padding:30px 0 20px;gap:10px}h1{font-size:52px;letter-spacing:-2px;margin:15px 0}.copy>p{font-size:14px}.actions{justify-content:center;margin-top:20px}.actions .primary{font-size:12px;padding:12px 15px}.people{justify-content:center;margin-top:18px}.visual{width:100%;max-width:320px;margin:10px auto}.visual img{max-width:300px}.bubble{bottom:0;left:0;font-size:10px;padding:8px 12px}.stats{grid-template-columns:repeat(2,1fr);margin:15px 0 20px;gap:10px}.stats article{padding:14px;min-height:73px}.stats span{font-size:11px}.stats strong{font-size:28px}.sectionhead{padding:18px 16px}h2{font-size:22px}.sectionhead .quiet{font-size:10px;padding:6px 8px}.filters{padding-inline:16px}.filters button{padding:5px 12px}.filters small{font-size:9px}.legend{padding-inline:16px}.features{grid-template-columns:1fr 1fr;gap:15px}.features h3{font-size:13px}.features p{font-size:11px}.features small{font-size:9px}.intro p{font-size:11px}.storage{font-size:10px}footer{flex-wrap:wrap;gap:12px}footer button{width:100%;text-align:right}.examrow{gap:10px;flex-wrap:wrap;padding:16px}.examrow strong{font-size:13px}.examrow span{font-size:11px}[data-theme="focus"] .hero{grid-template-columns:1fr 100px;text-align:right;min-height:0;padding-block:25px}[data-theme="focus"] h1{font-size:30px;letter-spacing:-1px}[data-theme="focus"] h1 br{display:block}[data-theme="focus"] .copy>p{font-size:11px}[data-theme="focus"] .visual img{max-width:none;width:120px}[data-theme="focus"] .eyebrow{font-size:9px}[data-theme="cards"] .hero{grid-template-columns:1fr;padding:25px 15px;margin:20px 0}[data-theme="cards"] h1{font-size:46px}[data-theme="cards"] .visual img{max-width:260px}[data-theme="cards"] #cards{grid-template-columns:1fr;padding:15px}[data-theme="cards"] .note img{width:80px;height:105px}[data-theme="cards"] .note>div{padding:12px}[data-theme="cards"] .note h3{font-size:15px}[data-theme="cards"] .note p{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Option 3: brighter blue study space. */
:root{--bg:#17385e;--line:#45668a;--muted:#c0d1e3;--cyan:#8de9ff;--orange:#ffac4a}body{background:#17385e}#app[data-theme="cards"]{background:radial-gradient(ellipse at 10% 12%,#2b6595aa,transparent 45%),linear-gradient(160deg,#1c426e,#153457)}#app:before{border-color:#57dffc33;box-shadow:35px 0 0 #1b416c,36px 0 0 #57dffc33,75px 0 0 #1b416c,76px 0 0 #57dffc22}header{height:90px;border-bottom-color:#739ac033}.logo{background:#2d5c84}nav{color:#c6d7e9}.semesterbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0 3px}.semesterbar h2{font-size:23px;margin-top:5px}.semestercontrols{display:flex;gap:12px}.semestercontrols label{margin:0;font-size:10px;color:#bed2e7}.semestercontrols select{min-width:130px;background:#244c75;border-color:#547b9e;font-size:13px;padding:8px 13px;border-radius:9px}.panel{background:#23476ecf;border-color:#52739477}[data-theme="cards"] .hero{background:linear-gradient(110deg,#356f9d88,#244f7c);border-color:#698ead66}[data-theme="cards"] .hero h1{font-size:54px}.copy>p{color:#d3e0ee}.actions a{color:#e0ebf5}.bubble{background:#2c577eea;border-color:#7196b6}.bubble small{color:#d1e1ee}.stats span{color:#dae6f3}.stats small{color:#acc5de}.stats .urgent{background:#ffb14310}.filters button{color:#ccdceb}.filters button.active{background:#496e93}.filters small{color:#c3d5e8}[data-theme="cards"] .taskcard{background:#2d567d;border-color:#7191ae66}[data-theme="cards"] .taskcard.urgent{background:#2d567d;border-color:#ffb35c99;box-shadow:inset 4px 0 0 var(--orange)}.taskcard p{color:#d4e1ed}.taskcard>small{color:#a5edff}.badge{color:#d5e4f2;background:#14345477;border-color:#7293b266}.badge.soon{color:#ffd29a;background:#683f1f88;border-color:#ffbc6d88}.badge.done{color:#c2f8e8;background:#1c665344;border-color:#72c3a866}.status{color:#e6edf5;border-color:#8da8c377;background:#15385844}.status.yes{color:#ffcf91;background:#57401b66;border-color:#ffb45e99}.delete{color:#c6daeb}.quiet{background:#533c2633;border-color:#ffb66288;color:#ffd098}[data-theme="cards"] .note{background:linear-gradient(100deg,#356486,#244e78)}.note p{color:#d0e1ee}.note .eyebrow{color:#a7edff}.note a{color:#ffcd88}.empty p,.features p,.intro p{color:#c8daec}.features small{color:#b2cbe3}.features b{background:#ffb35422}.storage{color:#b7cee2}footer{border-color:#6d8fb044;color:#c4d9eb}footer button{color:#c1d7ec}.download{display:inline-block;color:#b1eaff;background:none;border:0;font-size:11px;padding:10px 0 0;text-decoration:underline;text-underline-offset:3px}.calendar-label{display:inline-block;margin-top:7px;color:#c2e6ff;font-size:11px}.formsemester{border:1px solid #577b9d66;background:#2c5075;border-radius:8px;padding:9px;color:#d1eaff}dialog{background:#23466c;border-color:#6c8eae}dialog label{color:#e1ecf7}dialog input,dialog select{background:#15375c;border-color:#6689aa}form p{color:#c1d4e7}.examrow span{color:#d2e1ef}.tablewrap th{background:#1e4268;color:#cee0ef}.owner{background:#3b6286;color:#edf5fc}#toast{background:#315f86}.legend{color:#c7daeb}
@media(max-width:680px){.semesterbar{align-items:flex-start;flex-direction:column;gap:15px;padding-top:20px}.semesterbar h2{font-size:21px}.semestercontrols{width:100%}.semestercontrols label{flex:1}.semestercontrols select{min-width:0}[data-theme="cards"] .hero h1{font-size:45px}.examrow .download{padding:0}.features{gap:13px}}
/* Crisp, unblended profile image in Remi's note. */
[data-theme="cards"] .note img{width:120px;height:120px;flex:0 0 120px;object-fit:contain;object-position:center;mix-blend-mode:normal;mask-image:none;-webkit-mask-image:none;filter:none;opacity:1;border-radius:12px;margin:12px;display:block}
@media(max-width:680px){[data-theme="cards"] .note img{width:96px;height:96px;flex-basis:96px;margin:10px}}
.calendar-page{display:none;margin:25px 0 40px}.calendar-view main>:not(.semesterbar):not(.calendar-page){display:none!important}.calendar-view .calendar-page{display:block}.calendar-view .calendar-mobile{color:#ffe0b6;border-color:#ffc078}.calendar-mobile{border:1px solid #6e94b2;border-radius:8px;padding:9px 15px;font-size:13px;color:#d0efff;margin-right:auto}.calendar-subtitle{color:#c6d9eb;font-size:12px;margin-top:5px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 24px 22px}.month-navigation{display:flex;align-items:center;gap:12px}.month-navigation h3{min-width:145px;text-align:center;font-size:21px}.month-navigation .quiet{padding:6px 12px}.calendar-key{display:flex;gap:15px;font-size:11px}.lecture-key{color:#92e8ff}.task-key{color:#ffc98a}.exam-key{color:#dec3ff}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekdays{background:#16385b;color:#d3e4f3;text-align:center;font-size:12px;border-block:1px solid #698bab55}.weekdays span{padding:12px 4px}.calendar-day,.calendar-blank{min-height:135px;border:0;border-left:1px solid #6686a455;border-bottom:1px solid #6686a455;background:#23476b;text-align:right;vertical-align:top;padding:9px;color:white;min-width:0}.calendar-day{display:flex;flex-direction:column;gap:10px;align-items:stretch}.calendar-day:hover{background:#315e88;filter:none}.calendar-day.is-today{background:#365a78;box-shadow:inset 0 0 0 2px #ffc078}.day-number{width:27px;height:27px;display:grid;place-items:center;font-size:13px}.is-today .day-number{background:#ffac4a;color:#192737;border-radius:50%;font-weight:750}.calendar-blank{background:#16355466}.day-chips{display:flex;flex-direction:column;gap:5px;min-width:0}.event-chip{background:#20577a;color:#c1f4ff;border-right:3px solid #64dcff;display:block;font-size:10px;line-height:1.65;padding:4px 6px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.event-chip.task{background:#69543e;color:#ffe0b8;border-color:#ffac4a}.event-chip.exam{background:#51466e;color:#edddff;border-color:#c6a0ff}.event-chip.submitted{opacity:.65}.more-events{color:#cee0ef;font-size:10px;padding:0 4px}.calendar-help{color:#bbd1e5;font-size:11px;padding:15px 24px}.day-close{background:none;color:#d3e6f8;font-size:28px}.day-event{display:flex;gap:15px;align-items:center;padding:15px 0;border-top:1px solid #6d8aa455}.day-event-time{color:#9ce8ff;font-size:16px}.day-event-time small{display:block;font-size:10px}.day-event.task .day-event-time{color:#ffce8b}.day-event.exam .day-event-time{color:#ddc2ff}.day-event-copy{flex:1;min-width:0}.day-event-copy strong{font-size:14px;overflow-wrap:anywhere}.day-event-copy p{font-size:11px;color:#c7daeb;margin-top:3px}.day-event-copy .badge{margin-top:5px}.day-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.day-empty{font-size:13px;color:#c8daeb;padding:15px 0}.nav-active{color:#ffce8d!important}#dayDialog{width:min(95%,620px)}
@media(max-width:900px){.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-key{justify-content:center}.month-navigation{justify-content:center}.calendar-day,.calendar-blank{min-height:115px}.event-chip{font-size:9px;padding:3px}}
@media(max-width:680px){.calendar-mobile{position:absolute;top:22px;left:0;padding:6px 10px;font-size:11px}.semesterbar{position:relative}.semesterbar h2{font-size:20px}.calendar-page>.sectionhead{align-items:flex-start}.calendar-page .primary{font-size:10px;padding:9px;white-space:nowrap}.calendar-subtitle{font-size:10px;max-width:210px}.calendar-toolbar{padding:6px 10px 16px;gap:13px}.month-navigation{gap:7px}.month-navigation h3{font-size:18px;min-width:120px}.month-navigation .quiet{font-size:11px;padding:6px 10px}.calendar-key{font-size:10px;gap:13px}.weekdays{font-size:9px}.weekdays span{padding:10px 0}.calendar-day,.calendar-blank{min-height:98px;padding:4px 2px;gap:5px}.day-number{width:22px;height:22px;font-size:11px}.event-chip{font-size:8px;padding:2px;border-right-width:2px}.event-chip bdi{display:none}.day-chips{gap:3px}.more-events{font-size:8px;padding:0}.calendar-help{padding:12px;font-size:10px}}
.semester-page{display:none;margin:25px 0 40px}.semester-view main>:not(.semesterbar):not(.semester-page){display:none!important}.semester-view .semester-page{display:block}.page-shortcuts{display:flex;gap:8px;margin-right:auto}.page-shortcuts a{font-size:12px;color:#d7efff;border:1px solid #7396b3;border-radius:8px;padding:8px 12px}.page-shortcuts a:hover{background:#37658d}.course-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:10px 24px 24px}.course-card{border:1px solid #7092b166;border-radius:13px;background:#2b537b;padding:22px;min-width:0}.course-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#ffb24a22;color:#ffd096;font-size:24px;margin-bottom:15px}.course-card h3{font-size:19px;overflow-wrap:anywhere}.course-card p{font-size:12px;color:#bfd7eb;margin:10px 0 20px}.course-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.course-actions .textbutton{background:none;font-size:11px;color:#c9e4f7}.course-actions .delete{margin-right:auto}.course-empty{grid-column:1/-1;padding:30px 20px}#courseDialog{width:min(94%,460px)}#courseSemester{border:1px solid #6489a655;background:#2c5379;border-radius:8px;padding:9px;color:#d0e9fc;font-size:12px}
@media(max-width:1050px){header{gap:20px}nav{gap:17px;font-size:12px}.brand{font-size:23px}.course-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.page-shortcuts{position:static;order:3;width:100%;margin:0;gap:10px}.page-shortcuts a{flex:1;text-align:center;font-size:11px;padding:7px}.semestercontrols{order:2}.course-list{grid-template-columns:1fr;padding:5px 16px 16px;gap:12px}.course-card{padding:19px}.semester-page>.sectionhead{align-items:flex-start}.semester-page .primary{font-size:11px;padding:10px 12px;white-space:nowrap}.semester-page .calendar-subtitle{max-width:210px}}
.semester-dates{margin:0 24px 24px;padding:20px;background:#173b6155;border:1px solid #7598b45c;border-radius:12px;display:flex;align-items:end;gap:16px;flex-wrap:wrap}.semester-dates>div{flex:1;min-width:200px}.semester-dates h3{font-size:16px}.semester-dates p{font-size:11px;color:#bfd6eb;margin:5px 0}.semester-dates label{margin:0;width:165px;font-size:11px}.semester-dates input{background:#173b61;border-color:#698ba8}.semester-dates>.quiet{padding:11px 15px}.semester-dates .dates-status{flex-basis:100%;font-size:11px;margin:0;color:#b9e8fb}.course-schedule{border:1px solid #6a8dab66;border-radius:10px;padding:12px;margin:20px 0}.course-schedule legend{font-size:13px;color:#e2eef8;padding:0 6px}.course-schedule>p{font-size:11px;margin:0 0 8px}.schedule-row{display:grid;grid-template-columns:100px 1fr 1fr;align-items:center;gap:12px;border-top:1px solid #6887a433;padding:6px 0}.schedule-row:first-child{border:0}.schedule-row label{font-size:10px;gap:3px;margin:0}.schedule-row .schedule-day{display:flex;flex-direction:row;align-items:center;gap:10px;font-size:12px}.schedule-row input[type=checkbox],.calendar-opt input{width:17px;height:17px;accent-color:#ffb253;flex-shrink:0}.schedule-row input[type=time]{padding:7px 5px;font-size:13px;min-width:0}.schedule-row input:disabled{opacity:.35}.calendar-opt{display:flex;flex-direction:row;gap:10px;align-items:center;font-size:13px;font-weight:650}.schedule-summary{font-size:11px;color:#cde1f0;margin:-5px 0 20px;border-top:1px solid #8da8bf44;padding-top:10px}.schedule-summary>div{display:flex;justify-content:space-between;gap:10px;padding:3px 0}.schedule-summary small{display:block;color:#a9d1eb;font-size:10px;margin-top:5px}.schedule-summary .schedule-warning{color:#ffd5a0}.schedule-summary .download{font-size:10px}#courseDialog{width:min(95%,570px);max-height:90vh;overflow-y:auto}#courseCalendarHint{font-size:11px;color:#f3d2a6}#courseScheduleHint{font-size:11px;color:#b4ddf3}
@media(max-width:680px){.semester-dates{margin:0 16px 18px;padding:15px;gap:12px}.semester-dates>div{flex-basis:100%}.semester-dates label{width:calc(50% - 6px)}.semester-dates>.quiet{width:100%}.schedule-row{grid-template-columns:75px 1fr 1fr;gap:8px}.schedule-row .schedule-day{font-size:11px;gap:5px}.schedule-row input[type=time]{font-size:12px;padding:7px 3px}.course-schedule{padding:10px}#courseDialog{padding:18px}}
.semester-intro{display:grid;grid-template-columns:1fr minmax(220px,370px);align-items:center;gap:30px;padding:0 35px 18px;margin:0 10px 10px}.semester-intro h3{font-size:36px;line-height:1.22;letter-spacing:-.7px;margin:12px 0}.semester-intro p{font-size:14px;color:#cbddec;line-height:1.8}.semester-intro img{display:block;width:100%;height:auto;max-height:340px;object-fit:contain;object-position:center;background:transparent;mix-blend-mode:normal;mask-image:none;-webkit-mask-image:none;filter:none;opacity:1}
@media(max-width:680px){.semester-intro{grid-template-columns:1fr;padding:4px 18px 22px;margin:0;gap:12px;text-align:center}.semester-intro h3{font-size:28px;margin:9px 0}.semester-intro h3 br{display:none}.semester-intro p{font-size:12px}.semester-intro img{max-width:300px;max-height:300px;margin:auto}}
#exams.exams-page{display:none;margin:25px 0 40px}.exams-view main>:not(.semesterbar):not(.exams-page){display:none!important}.exams-view #exams.exams-page{display:block}.exams-page .examrow{padding-block:22px}.exams-intro{padding-bottom:20px}.exams-page>.sectionhead .quiet{padding:10px 16px;font-size:12px}
@media(max-width:680px){.exams-page>.sectionhead{align-items:flex-start}.exams-page>.sectionhead .quiet{font-size:11px;padding:8px 10px}.exams-page .examrow{padding-block:18px}}

.visual img,.note img,.semester-intro img,.exams-page img,.calendar-intro img{mix-blend-mode:normal;mask-image:none;-webkit-mask-image:none;filter:none;opacity:1}

.visual .bubble{display:none}

.sd-view{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.sd-summary{font-size:15px;font-weight:600}.field-error{color:#ffb4a2;background:#ff7a5c1f;border:1px solid #ff7a5c66;border-radius:10px;padding:10px 14px;font-size:14px}

@media (max-width:680px){header{height:auto;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;row-gap:12px}header nav{display:flex!important;order:3;width:100%;margin:0;gap:8px;overflow-x:auto;font-size:13px;padding-bottom:2px;-webkit-overflow-scrolling:touch}header nav a{white-space:nowrap;padding:8px 14px;border:1px solid #ffffff26;border-radius:999px;flex:0 0 auto}header nav a.nav-active,header nav a[aria-current]{background:#ff9b36;color:#1b2030;border-color:#ff9b36}}

.navbtn{background:none;border:0;color:inherit;font:inherit;padding:0;cursor:pointer;border-bottom:2px solid transparent}.navbtn:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}@media (max-width:680px){header nav .navbtn{padding:8px 14px;border:1px solid #ffffff26;border-radius:999px;flex:0 0 auto;white-space:nowrap}header nav .navbtn.nav-active{background:#ff9b36;color:#1b2030;border-color:#ff9b36}}
/* Responsive layout: phone navigation, bounded content and touch-friendly forms. */
@media(max-width:1024px){header{height:auto;min-height:82px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px;gap:16px}header nav{display:flex!important;order:3;flex-basis:100%;width:100%;margin:0;gap:10px;justify-content:center;min-width:0}header>.primary{margin-right:auto}header nav .navbtn,header nav a{min-height:40px;padding:8px 12px;white-space:nowrap}main,main>section,.workspace,.panel,.sectionhead>div,.copy,.visual,.semestercontrols{min-width:0}}
@media(max-width:680px){
html,body{max-width:100%;overflow-x:clip}header,main,footer{width:100%;padding-inline:16px}header{gap:12px;padding-block:12px}.brand{font-size:22px}.brand small{display:none}header>.primary{font-size:12px;min-height:42px;padding:9px 13px}header nav{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;overflow:visible;padding:0;flex-basis:100%}header nav .navbtn{display:flex;align-items:center;justify-content:center;white-space:normal;line-height:1.35;min-height:44px;width:100%;font-size:11px;padding:7px 3px;border-radius:10px;min-width:0}header nav>a[href="#features"]{display:none}
.semesterbar{padding-top:20px;gap:13px}.semesterbar h2{font-size:22px}.semesterbar .eyebrow{font-size:10px}.semestercontrols{width:100%;gap:10px}.semestercontrols label{flex:1;min-width:0}.semestercontrols select{width:100%;min-width:0;min-height:44px;font-size:14px}
[data-theme="cards"] .hero{margin:20px 0;padding:24px 16px 18px;gap:10px;border-radius:18px;min-height:0}[data-theme="cards"] .hero h1{font-size:42px;line-height:1.15;letter-spacing:-1.5px}.copy>p{font-size:13px;line-height:1.8}.hero .eyebrow{font-size:10px}.actions{flex-direction:column;gap:12px;margin-top:20px}.actions .primary{width:100%;min-height:44px;font-size:13px}.actions>.navbtn{font-size:12px;min-height:36px}.visual{max-width:260px;margin:0 auto}.visual img,[data-theme="cards"] .visual img{width:100%;max-width:250px;height:240px;object-fit:contain}.visual .bubble{display:none!important}.visual:before,.visual:after{display:none}
.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-block:20px}[data-theme="cards"] .stats article{border:1px solid #7ca0bd55;background:#244c7255;border-radius:12px;padding:14px;min-height:80px;gap:4px}.stats span{font-size:11px;overflow-wrap:anywhere}.stats strong{font-size:27px}.workspace{gap:16px}[data-theme="cards"] .note img{width:84px;height:84px;flex-basis:84px;margin:10px}[data-theme="cards"] .note>div{padding:12px 10px}.note .eyebrow{font-size:10px}[data-theme="cards"] .note h3{font-size:15px}[data-theme="cards"] .note p{font-size:11px;line-height:1.6}
.sectionhead{padding:18px 15px;gap:10px;align-items:center;flex-wrap:wrap}.sectionhead>div{flex:1;min-width:160px}.sectionhead h2{font-size:22px}.sectionhead .quiet,.sectionhead .primary{font-size:11px;min-height:40px;padding:8px 11px}.filters{padding:0 15px 14px;gap:10px;flex-wrap:wrap}.filters>div{display:flex;gap:4px}.filters button{min-height:38px;padding:6px 16px}.filters small{font-size:10px}[data-theme="cards"] #cards{grid-template-columns:minmax(0,1fr);padding:14px;gap:12px}[data-theme="cards"] .taskcard{padding:16px;min-width:0;border-radius:11px}.taskcard>small{font-size:11px}.taskcard h3{font-size:18px;margin:5px 0 12px;overflow-wrap:anywhere}.taskcard p{font-size:12px;margin:10px 0;line-height:1.8}.calendar-label{font-size:11px}.cardbottom{gap:12px;font-size:12px}.status{min-width:44px;min-height:36px;font-size:12px}.delete{min-width:36px;min-height:36px}.download{min-height:38px;display:inline-flex;align-items:center;font-size:11px;padding:6px 0 0}.taskcard .badge{font-size:11px}.featuregrid,.features{min-width:0}.features article{min-width:0}.features h3{overflow-wrap:anywhere}
.semester-intro{padding:0 16px 18px;gap:12px}.semester-intro h3{font-size:27px}.semester-intro img{width:100%;max-width:260px;max-height:250px;object-fit:contain}.semester-intro p{font-size:12px}.semester-page,.calendar-page,#exams.exams-page{margin-top:20px;border-radius:14px}.calendar-page>.sectionhead .primary{font-size:11px}.calendar-subtitle{max-width:none;font-size:11px;line-height:1.7}.semester-dates{margin-inline:14px;padding:14px}.semester-dates .sd-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;min-width:0}.semester-dates .sd-edit label{width:auto;min-width:0}.semester-dates .sd-edit button{grid-column:1/-1;min-height:42px}.sd-view{width:100%;min-width:0;align-items:flex-start;gap:12px}.semester-dates .sd-summary{font-size:13px;line-height:1.8;overflow-wrap:anywhere}.sd-view button{min-height:42px}.course-list{padding-inline:14px;grid-template-columns:minmax(0,1fr)}.course-card{min-width:0;padding:17px}.course-card h3{font-size:19px}.course-actions{gap:8px}.course-actions .quiet{min-height:40px}.course-actions .textbutton{min-height:40px}.schedule-summary{font-size:12px}
.calendar-toolbar{padding:0 10px 16px;gap:12px}.month-navigation{display:grid;grid-template-columns:40px minmax(0,1fr) 40px auto;width:100%;gap:6px;align-items:center}.month-navigation h3{font-size:18px;min-width:0;margin:0}.month-navigation .quiet{min-width:38px;min-height:40px;padding:6px 9px}.calendar-key{font-size:10px;gap:12px;flex-wrap:wrap;justify-content:center}.weekdays{font-size:10px}.weekdays span{padding:10px 0}.calendar-grid,.weekdays{width:100%;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day,.calendar-blank{min-width:0;min-height:92px;padding:5px 2px;gap:5px}.day-number{width:23px;height:23px;font-size:12px}.day-chips{width:100%;min-width:0;gap:3px}.event-chip{font-size:9px;line-height:1.5;padding:3px 2px;border-right-width:2px;max-width:100%}.event-chip bdi{display:none}.more-events{font-size:9px}.calendar-help{font-size:10px;padding:12px 14px}.examrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:18px 15px!important}.examrow strong{grid-column:1/-1;font-size:15px;overflow-wrap:anywhere;margin:0}.examrow span{font-size:12px}.examrow .download{padding:0}.examrow .delete{justify-self:end}
dialog,#courseDialog,#dayDialog{width:calc(100% - 24px);max-width:570px;max-height:calc(100dvh - 32px);padding:18px;margin:auto;border-radius:14px;overflow-y:auto;overscroll-behavior:contain}dialog .sectionhead{padding:0 0 12px}dialog .sectionhead>h2{font-size:23px}dialog input,dialog select{font-size:16px;min-height:44px;max-width:100%}dialog label{font-size:12px;min-width:0}dialog .formrow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.formrow label{min-width:0;margin:8px 0}.course-schedule{min-inline-size:0;padding:10px}.schedule-row{grid-template-columns:70px minmax(0,1fr) minmax(0,1fr);gap:8px}.schedule-row input[type=time]{min-width:0;font-size:14px;width:100%;padding:8px 2px}.schedule-row input[type=checkbox],.calendar-opt input{min-height:20px;width:20px;height:20px}.day-event{gap:10px;flex-wrap:wrap}.day-event-time{font-size:14px}.day-event-copy{min-width:120px}.day-actions .quiet{min-height:42px}.calendar-opt{min-height:44px}.day-event .status{min-height:40px}footer{gap:12px;padding-block:20px}footer>span{font-size:10px;min-width:0}.storage{line-height:1.8;padding-inline:5px}
}
@media(max-width:360px){header,main,footer{padding-inline:12px}header nav .navbtn{font-size:10px}.semesterbar h2{font-size:20px}[data-theme="cards"] .hero h1{font-size:36px}.sectionhead>div{min-width:140px}.calendar-key{gap:8px;font-size:9px}.month-navigation h3{font-size:16px}.calendar-day,.calendar-blank{min-height:85px}.event-chip{font-size:8px}.schedule-row{grid-template-columns:58px minmax(0,1fr) minmax(0,1fr);gap:5px}}
@media(max-width:680px){.semester-intro h3 br{display:block}.calendar-intro{grid-template-columns:minmax(0,1fr) 130px;gap:8px;align-items:center;text-align:right;padding-block:4px 16px}.calendar-intro h3{font-size:23px;line-height:1.25}.calendar-intro .eyebrow{font-size:9px}.calendar-intro p{font-size:11px;line-height:1.7}.calendar-intro img{width:130px;max-width:100%;height:160px;max-height:160px;margin:0}.calendar-intro h3 br{display:block}}
@media(max-width:360px){.calendar-intro{grid-template-columns:minmax(0,1fr) 110px}.calendar-intro h3{font-size:21px}.calendar-intro img{width:110px;height:145px}.calendar-intro p{font-size:10px}}
