:root{--navy:#031d47;--teal:#1a85a0;--ink:#132b48;--muted:#5b6d80;--mint:#a4e0df;--paper:#f4f7f8;--border:#dce5eb;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font:14px/1.6 Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #e9b841;outline-offset:4px}a{color:inherit;text-decoration:none}button{border-radius:8px}h1,h2,h3,p{margin-top:0}h2{font-size:28px;letter-spacing:-.7px;line-height:1.25;margin-bottom:0}h3{font-size:18px;line-height:1.3;margin:0}.wrap{max-width:1200px;padding:0 30px;margin:auto}.skip{position:fixed;top:-100px;left:15px;z-index:50;background:white;color:var(--navy);padding:12px}.skip:focus{top:10px}header{background:white;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.header-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:82px}.brand{display:flex;gap:12px;align-items:center;font-size:9px;letter-spacing:1.8px;line-height:1.4}.brand strong{font-size:17px;display:block;letter-spacing:2.5px}.brand img{width:39px;height:46px;object-fit:contain}nav{display:flex;gap:26px;font-size:12px;font-weight:bold}nav a:hover{color:var(--teal)}.edition{font-size:9px;color:var(--teal);letter-spacing:1.5px;font-weight:bold}.hero{background:var(--navy);color:white;padding:46px 0}.hero-row{display:grid;grid-template-columns:1.6fr 1fr;gap:65px;align-items:center}.eyebrow{font-size:9px;letter-spacing:2px;line-height:1.5;font-weight:bold;margin-bottom:17px}.hero .eyebrow{color:var(--mint)}h1{font-size:clamp(32px,3.6vw,46px);line-height:1.16;letter-spacing:-1.5px;margin:0 0 18px}h1 em{font-style:normal;color:var(--mint)}.hero p:not(.eyebrow){color:#c1cede;font-size:13px;max-width:500px;margin-bottom:0}.next-card{background:#0e3157;border:1px solid #355574;border-radius:12px;padding:23px 25px}.next-card .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:10px}.next-title{font-size:27px;font-weight:bold;line-height:1.25;overflow-wrap:anywhere}.next-card #next-date{font-size:12px;margin-top:8px}.next-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #355574;padding-top:14px;margin-top:16px;font-size:11px;color:#b1c8d8}.next-bottom strong{font-size:14px;color:var(--mint);white-space:nowrap}.schedule-section{padding-top:44px;padding-bottom:55px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.section-top .eyebrow{margin-bottom:9px}.teal{color:var(--teal)}.small-link{font-size:11px;color:var(--teal);font-weight:bold;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.grade-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-bottom:24px}.grade-buttons{display:flex;gap:8px}.grade-buttons button{background:white;border:1px solid var(--border);padding:12px 22px;min-height:46px;color:var(--muted);font-size:12px;font-weight:bold}.grade-buttons button[aria-pressed=true]{background:var(--teal);color:white;border-color:var(--teal)}.saved-hint{font-size:10px;color:var(--muted)}.schedule-grid{display:grid;grid-template-columns:250px 1fr;gap:25px;align-items:start}.filter-panel{border:1px solid var(--border);border-radius:12px;background:white;padding:22px}.filter-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.filter-heading h3{font-size:16px}.filter-heading>span{font-size:10px;color:var(--teal)}.filter-panel>p{font-size:11px;color:var(--muted);margin:10px 0 13px}.filter-actions{display:flex;gap:18px;margin-bottom:14px}.filter-actions button{border:0;padding:5px 0;background:none;font-size:10px;color:var(--teal);text-decoration:underline;text-underline-offset:3px;min-height:32px}fieldset{margin:0;padding:0;border:0}.subject-option{display:flex;align-items:flex-start;gap:9px;font-size:11px;padding:8px 0;cursor:pointer;min-height:34px}.subject-option input{accent-color:var(--teal);flex:none;width:16px;height:16px;margin:1px 0 0}.source-note{border-top:1px solid var(--border);padding-top:16px;margin-top:14px}.source-note strong{font-size:11px}.source-note p{font-size:10px;color:var(--muted);margin:5px 0 0}.schedule-content{min-width:0}.list-toolbar{display:flex;gap:10px;margin-bottom:17px}.search-field{display:flex;gap:10px;align-items:center;background:white;border:1px solid var(--border);padding:0 14px;border-radius:8px;flex:1;min-width:0}.search-field>span:not(.sr-only){font-size:25px;color:var(--teal)}.search-field input{width:100%;min-width:0;border:0;padding:13px 0;background:none;outline-offset:0;font-size:12px;color:var(--ink)}select{background:white;border:1px solid var(--border);color:var(--ink);padding:12px;border-radius:8px;max-width:100%;font-size:11px;min-height:46px}.period-field select{height:49px}.results-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.results-heading p{font-size:11px;color:var(--muted);margin:0}.legend{display:flex;gap:6px}.badge{display:inline-block;font-size:9px;padding:3px 8px;line-height:1.4;border-radius:4px;font-weight:bold;white-space:nowrap}.morning{background:#e1f3f3;color:#136b7a}.afternoon{background:#e4ebf5;color:var(--navy)}.neutral{background:#edf2f6;color:var(--muted)}.notice{display:flex;align-items:center;gap:10px;background:#fff6df;border:1px solid #e9ddb6;border-radius:8px;padding:12px 14px;margin-bottom:16px}.notice>span{border:1px solid #af9657;line-height:16px;font-size:10px;border-radius:50%;width:18px;height:18px;text-align:center;flex:none;color:#74623d}.notice p{font-size:10px;color:#74623d;margin:0}.exam-list{display:flex;flex-direction:column;gap:10px}.exam-row{display:grid;grid-template-columns:90px 1fr;gap:22px;background:white;border:1px solid var(--border);border-radius:10px;padding:18px 22px}.exam-row.past{opacity:.75}.exam-date{border-right:1px solid var(--border);padding-right:12px}.exam-date strong{font-size:18px;line-height:1.3;display:block}.exam-date span{font-size:10px;color:var(--muted);display:block;margin-top:4px}.papers{display:flex;flex-direction:column;justify-content:center;gap:10px}.paper{display:flex;align-items:center;justify-content:space-between;gap:12px}.paper strong{font-size:13px;font-weight:600}.paper .badge{flex:none}.empty-state{padding:35px 25px;border:1px dashed #b7c9d4;background:#fff9;border-radius:10px;text-align:center}.empty-state strong{font-size:16px}.empty-state p{color:var(--muted);font-size:12px;margin:10px 0 0}.download-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.button{display:inline-flex;justify-content:center;align-items:center;gap:14px;padding:12px 17px;border:1px solid transparent;font-size:11px;font-weight:bold;min-height:45px;border-radius:7px}.primary{background:var(--teal);color:white}.primary:hover{background:#146d84}.secondary{background:white;border-color:#bbcdd7;color:var(--ink)}.light{background:#e8f4f0;color:var(--navy)}.button:disabled{opacity:.5;cursor:default}.download-note{font-size:10px;color:var(--muted);margin:12px 0 0;max-width:600px}.study-section{background:#e8eef2;padding:48px 0 54px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.local-tag{font-size:10px;color:var(--muted)}.study-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:24px;align-items:start}.planner-card{background:white;border:1px solid var(--border);border-radius:12px;padding:26px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.card-description{color:var(--muted);font-size:11px;margin:12px 0 19px}#task-title{width:100%;border:1px solid var(--border);border-radius:7px;padding:13px;color:var(--ink);font-size:11px;min-height:46px}.task-fields{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:8px;margin-top:12px}.task-fields label{min-width:0}.task-fields label>span{display:block;font-size:9px;color:var(--muted);margin-bottom:5px}.task-fields select,.task-fields input{width:100%;height:44px;min-height:44px;border:1px solid var(--border);border-radius:7px;font-size:10px;color:var(--ink);padding:8px;background:white}.task-fields .button{padding:11px;font-size:10px;min-height:44px}.progress-label{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted);margin-top:24px}progress{display:block;height:5px;width:100%;margin-top:7px;border:0;border-radius:6px;overflow:hidden;background:#e7eef1}progress::-webkit-progress-bar{background:#e7eef1}progress::-webkit-progress-value{background:var(--teal)}progress::-moz-progress-bar{background:var(--teal)}.task-list{padding:0;list-style:none;margin:17px 0 0}.task-item{display:flex;align-items:flex-start;gap:10px;border-top:1px solid var(--border);padding:14px 0}.task-item input{width:17px;height:17px;margin:3px 0 0;accent-color:var(--teal);flex:none}.task-item label{display:flex;gap:10px;align-items:flex-start;flex:1;cursor:pointer;min-width:0}.task-copy{min-width:0;flex:1}.task-copy strong{font-size:12px;font-weight:normal;display:block;overflow-wrap:anywhere}.task-copy span{font-size:9px;color:var(--muted);display:block;margin-top:4px}.task-item.done .task-copy strong{text-decoration:line-through;color:#8493a1}.delete-task{background:none;border:0;font-size:19px;color:#8294a1;min-width:35px;min-height:35px;padding:0;line-height:1}.delete-task:hover{color:#a13c40}.empty-small{font-size:11px;color:var(--muted);text-align:center;padding:18px 0 0;margin-bottom:0}.focus-card{background:var(--navy);color:white;border-radius:12px;padding:28px;text-align:center}.focus-card .eyebrow{color:var(--mint);font-size:8px;margin-bottom:13px}.focus-card h3{font-size:22px}.focus-card>p:not(.eyebrow){color:#b9cadd;font-size:11px;margin:10px 0}.timer-modes{display:flex;gap:7px;justify-content:center;margin:22px 0 15px}.timer-modes button{background:none;border:1px solid #42617c;color:#bdd4e3;padding:9px 12px;min-height:38px;font-size:10px;border-radius:5px}.timer-modes button[aria-pressed=true]{background:#28556b;border-color:var(--mint);color:white}.timer-display{font-size:66px;line-height:1.2;letter-spacing:-2px;font-variant-numeric:tabular-nums;font-weight:bold;margin:17px 0}.timer-controls{display:flex;gap:17px;align-items:center;justify-content:center;margin-top:22px}.reset-button{border:0;background:none;color:#c7d9e6;text-decoration:underline;text-underline-offset:3px;font-size:11px;padding:12px}.focus-card .timer-note{font-size:9px!important;color:#8fa9bf!important;margin-top:22px!important}.tips-section{padding-top:50px;padding-bottom:55px}.tips-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tips-grid details{background:white;border:1px solid var(--border);border-radius:10px;padding:20px}.tips-grid summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;min-height:40px}.tips-grid summary::-webkit-details-marker{display:none}.tip-number{color:var(--teal);font-size:11px}.tips-grid summary strong{font-size:12px;flex:1}.expand{color:var(--teal);font-size:21px}.tips-grid details[open] .expand{transform:rotate(45deg)}.tips-grid details p{font-size:11px;color:var(--muted);margin:14px 0 0}.encouragement{margin-top:28px;background:#e2eff0;border:1px solid #d0e4e6;border-radius:10px;display:flex;gap:20px;padding:23px 28px;align-items:center}.encouragement>span{color:var(--teal);font-size:36px}.encouragement h3{font-size:16px}.encouragement p{font-size:11px;color:var(--muted);margin:7px 0 0}footer{background:var(--navy);color:#b0c4d8;padding:27px 0}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px}.footer-row strong{color:white;font-size:9px;letter-spacing:2px}.footer-row p{margin:5px 0 0}.footer-row a{color:var(--mint)}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;border:1px solid #719aac;padding:12px 20px;max-width:calc(100% - 32px);border-radius:8px;z-index:30;font-size:12px;opacity:0;pointer-events:none}.toast.visible{opacity:1}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noscript{padding:20px;text-align:center;background:white}.noscript a{text-decoration:underline}[hidden]{display:none!important}
@media(max-width:1000px){.hero-row{gap:35px}.edition{display:none}.schedule-grid{grid-template-columns:210px 1fr;gap:18px}.filter-panel{padding:18px}.study-grid{grid-template-columns:1.2fr 1fr;gap:18px}.planner-card{padding:22px}.task-fields{grid-template-columns:1fr 1fr}.task-fields .button{grid-column:1/-1}.tips-grid{gap:12px}.tips-grid details{padding:16px}.saved-hint{max-width:180px;text-align:right}}
@media(max-width:760px){.wrap{padding:0 20px}html{scroll-padding-top:86px}.header-row{min-height:72px;gap:13px}.brand{font-size:7px;gap:8px;letter-spacing:1px}.brand strong{font-size:13px;letter-spacing:1.5px}.brand img{width:30px;height:38px}nav{gap:13px;font-size:10px}nav a:last-child{display:none}.hero{padding:32px 0}.hero-row{grid-template-columns:1fr;gap:25px}h1{font-size:33px;letter-spacing:-1px}.hero p:not(.eyebrow){font-size:12px}.next-card{padding:20px}.next-title{font-size:24px}.next-card .eyebrow{margin-bottom:8px}.section-top{flex-direction:column;align-items:flex-start;gap:13px;margin-bottom:20px}h2{font-size:24px;letter-spacing:-.5px}.schedule-section{padding-top:32px;padding-bottom:35px}.grade-toolbar{flex-direction:column;align-items:stretch;gap:13px;padding-bottom:20px}.grade-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.grade-buttons button{padding:12px 5px;font-size:11px}.saved-hint{max-width:none;text-align:left;font-size:9px}.schedule-grid{grid-template-columns:1fr;gap:20px}.filter-panel{padding:18px}.filter-panel>p{font-size:10px}.filter-actions{margin-bottom:9px}#subject-options{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.subject-option{font-size:10px;padding:7px 0;min-height:35px}.source-note{display:block;padding-top:12px;margin-top:12px}.source-note p{font-size:9px}.list-toolbar{gap:8px}.search-field{padding:0 10px}.search-field input{font-size:11px}.period-field{max-width:43%}.period-field select{width:100%;font-size:10px;padding:11px 8px}.results-heading{align-items:flex-start}.results-heading p{font-size:10px}.badge{font-size:8px;padding:3px 6px}.legend{gap:4px;flex:none}.notice{padding:10px}.notice p{font-size:9px}.exam-row{padding:16px;grid-template-columns:69px 1fr;gap:15px}.exam-date strong{font-size:16px}.exam-date span{font-size:9px}.paper strong{font-size:12px}.paper{gap:8px}.download-row{flex-direction:column}.download-note{font-size:9px}.study-section{padding:33px 0 37px}.study-grid{grid-template-columns:1fr;gap:20px}.local-tag{font-size:9px}.planner-card{padding:20px}.card-heading h3{font-size:17px}.task-fields{grid-template-columns:1fr 1fr}.task-fields input{min-width:0}.task-fields .button{grid-column:1/-1}.focus-card{padding:25px}.timer-display{font-size:65px}.tips-section{padding-top:34px;padding-bottom:36px}.tips-grid{grid-template-columns:1fr;gap:12px}.tips-grid details{padding:16px 18px}.encouragement{padding:20px;gap:14px}.encouragement h3{font-size:14px}.encouragement p{font-size:10px}.footer-row{flex-direction:column;align-items:flex-start;gap:17px}.small-link{white-space:normal;font-size:10px}}
@media(max-width:360px){.wrap{padding:0 15px}nav{gap:9px;font-size:9px}.brand strong{font-size:12px}h1{font-size:30px}.grade-buttons button{font-size:10px}.exam-row{padding:14px 12px;grid-template-columns:62px 1fr;gap:12px}.paper strong{font-size:11px}.legend{display:none}.next-bottom strong{font-size:12px}.period-field{max-width:42%}.search-field input{font-size:10px}.task-fields select{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{header,.hero,.filter-panel,.list-toolbar,.legend,.notice,.download-row,.download-note,.study-section,.tips-section,footer,.grade-toolbar,.small-link,.toast,.noscript{display:none!important}body{background:white}.wrap{padding:0;max-width:none}.schedule-section{padding:0}.schedule-grid{display:block}.exam-row{break-inside:avoid;box-shadow:none}.exam-row.past{opacity:1}.section-top h2{font-size:21px}.exam-list{gap:6px}.exam-row{padding:9px 12px}.results-heading{margin-bottom:8px}}


.paper-copy{min-width:0}.exam-duration{display:block;font-size:10px;color:var(--muted);margin-top:3px}.grade-buttons button{padding-left:18px;padding-right:18px}
@media(max-width:760px){.grade-buttons button{padding:12px 3px;font-size:10px}.exam-duration{font-size:9px}}

.rules-section{padding-top:40px;padding-bottom:10px}.rules-intro{color:var(--muted);font-size:14px;line-height:1.7;margin-bottom:24px}.rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.rules-grid details{background:white;border:1px solid #d6e4e8;border-radius:12px;padding:20px 24px}.rules-grid summary{display:flex;justify-content:space-between;gap:16px;cursor:pointer;color:var(--navy);font-size:16px;min-height:28px;align-items:center}.rules-grid details[open] summary{margin-bottom:16px}.rules-grid details[open] summary>span{transform:rotate(45deg)}.rules-grid ul,.rules-grid ol{padding-left:21px}.rules-grid li,.rules-grid p{font-size:14px;line-height:1.75}.rules-grid li+li{margin-top:10px}.rules-grid a{color:var(--teal);text-decoration:underline;overflow-wrap:anywhere}.rules-sport{font-size:13px;color:var(--muted);margin:20px 0}.rules-shortcut{margin:0 0 16px}nav{flex-wrap:wrap}@media(max-width:760px){.rules-grid{grid-template-columns:1fr}.rules-section{padding-top:30px}.rules-grid details{padding:18px}.rules-grid summary{font-size:15px}.rules-intro{font-size:13px}nav{gap:8px}.header-row{flex-wrap:wrap;padding-top:10px;padding-bottom:10px}nav a{min-height:30px;display:inline-flex;align-items:center}}@media print{.rules-section,.rules-shortcut{display:none!important}}
