:root{--olive:#2F3D20;--limestone:#F0E6D8;--ivory:#FAF6EE;--ink-dark:#14130A;--clay:#8E5745;--logo-green:#016334;--logo-gold:#CF9F27;--green:var(--logo-green);--green-deep:#014a27;--green-ink:var(--olive);--green-soft:#e4efe5;--green-tint:#f2f5ec;--gold:var(--logo-gold);--gold-soft:#f6ead0;--gold-ink:#6e520f;--paper:var(--limestone);--surface:var(--ivory);--ink:var(--ink-dark);--ink-2:#4b4637;--line:#ddd0bc;--line-strong:#c4b59c;--danger:#a1231b;--danger-soft:#fdecea;--muted:#5b6470;--muted-soft:#eef0f2;--info-soft:#eef4fb;--radius:14px;--radius-sm:10px;--shadow:0 1px 2px rgb(47 61 32/6%),0 4px 14px rgb(47 61 32/6%);--tap:44px;--ease-out:cubic-bezier(.23,1,.32,1);--ease-drawer:cubic-bezier(.32,.72,0,1);--font-display:var(--font-reading),"Times New Roman",serif;--font-text:var(--font-reading),"Times New Roman",serif;--font-body:var(--font-ui);color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-ui),"Segoe UI",Tahoma,system-ui,sans-serif;font-size:16px;line-height:1.7;overflow-x:hidden}a{color:var(--green)}a:hover{color:var(--green-deep)}img{max-width:100%;height:auto}h1,h2,h3{line-height:1.35;margin:0 0 .5em;color:var(--green-ink)}p{margin:0 0 1em}html{font-synthesis:none}.font-display{font-family:var(--font-display)}.font-text{font-family:var(--font-text);font-weight:400}:focus-visible{outline:3px solid var(--olive);outline-offset:2px}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4em;min-height:var(--tap);padding:.5em 1.1em;border-radius:var(--radius-sm);border:1.5px solid transparent;font:inherit;font-weight:700;font-size:1rem;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .16s var(--ease-out);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover:not(:disabled){background:var(--green-deep);color:#fff}.btn-gold{background:var(--gold);color:#1f1600}.btn-gold:hover:not(:disabled){background:#b98a1c;color:#1f1600}.btn-outline{background:var(--surface);color:var(--green);border-color:var(--green)}.btn-outline:hover:not(:disabled){background:var(--green-tint)}.btn-ghost{background:transparent;color:var(--green)}.btn-ghost:hover:not(:disabled){background:var(--green-tint)}.btn-danger{background:var(--surface);color:var(--danger);border-color:#e4b4b0}.btn-danger:hover:not(:disabled){background:var(--danger-soft)}.btn-block{width:100%}.btn-lg{min-height:52px;font-size:1.08rem;padding:.7em 1.3em}.btn-sm{min-height:var(--tap);padding:.35em .8em;font-size:.95rem}.field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.field label,.label{font-weight:700;font-size:.95rem;color:var(--ink)}.input,.select,.textarea{width:100%;min-height:var(--tap);padding:.55em .8em;border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:1rem}.input:focus,.select:focus,.textarea:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 3px rgb(0 98 51/18%)}.input[aria-invalid=true]{border-color:var(--danger);background:#fffafa}.input.ltr{direction:ltr;text-align:right}.textarea{min-height:84px;resize:vertical}.hint{color:var(--ink-2);font-size:.88rem}.field-error{color:var(--danger);font-size:.88rem;font-weight:500}.alert{border-radius:var(--radius-sm);padding:.75rem .9rem;margin:0 0 1rem;font-size:.95rem;border:1px solid}.alert-error{background:var(--danger-soft);border-color:#f0c2bd;color:#6e1610}.alert-info{background:var(--info-soft);border-color:#c9dbef;color:#1d3c5e}.alert-warn{background:var(--gold-soft);border-color:#e8d29a;color:#4d3a08}.alert-ok{background:var(--green-soft);border-color:#b7d8c6;color:var(--green-ink)}.container{width:100%;max-width:1080px;margin:0 auto;padding:0 16px}.narrow{max-width:560px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem}.stack>*+*{margin-top:.75rem}.row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.spacer{flex:1 1}.muted{color:var(--ink-2)}.appbar{background:var(--surface);border-bottom:1px solid var(--line);position:relative;z-index:20}@media (min-height:600px){.appbar{position:-webkit-sticky;position:sticky;top:0}html{scroll-padding-top:72px}}.appbar-home{min-height:var(--tap)}.appbar-home,.icon-btn{display:inline-flex;align-items:center;flex:none}.icon-btn{justify-content:center;width:var(--tap);height:var(--tap);border-radius:var(--radius-sm);border:0;background:transparent;color:var(--green-ink);cursor:pointer}.icon-btn:hover{background:var(--green-tint)}.back-link{display:inline-flex;align-items:center;gap:.25rem;min-height:var(--tap);padding:0 .5rem 0 .25rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--green);font:inherit;font-weight:500;text-decoration:none;cursor:pointer;white-space:nowrap}.back-link:hover{background:var(--green-tint);color:var(--green-deep)}.back-link:disabled{opacity:.6;cursor:not-allowed}@media (max-width:520px){.appbar-user{display:none}}.drawer{margin:0;padding:0;border:0;inset-block:0;inset-inline-start:0;inset-inline-end:auto;width:min(320px,86vw);max-width:none;height:100dvh;max-height:none;background:var(--surface);color:var(--ink);box-shadow:-8px 0 32px rgb(0 40 20/18%)}.drawer::-webkit-backdrop{background:rgb(10 20 15/40%)}.drawer::backdrop{background:rgb(10 20 15/40%)}.drawer[open]{animation:drawer-in .28s var(--ease-drawer)}@keyframes drawer-in{0%{transform:translateX(100%)}to{transform:none}}@keyframes fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.drawer[open]{animation:fade-in .15s ease}}.drawer-panel{display:flex;flex-direction:column;height:100%;padding:.75rem 1rem 1rem}.drawer-head{display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.drawer-user{flex:1 1;display:flex;flex-direction:column;min-width:0}.drawer-user strong{color:var(--green-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-user span{font-size:.88rem;color:var(--ink-2)}.drawer-list{list-style:none;margin:.5rem 0;padding:0;flex:1 1;overflow-y:auto}.drawer-list a{display:flex;align-items:center;min-height:48px;padding:0 .75rem;border-radius:var(--radius-sm);color:var(--ink);text-decoration:none;font-weight:500}.drawer-list a:hover{background:var(--green-tint);color:var(--green-deep)}.drawer-list a[aria-current=page]{background:var(--green-soft);color:var(--green-ink);font-weight:700}.drawer-logout{border-top:1px solid var(--line);padding-top:.75rem}.appbar-inner{display:flex;align-items:center;gap:.6rem;min-height:60px}.appbar-logo{display:block;height:40px;width:auto}.appbar-user{font-size:.9rem;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip{display:inline-flex;align-items:center;gap:.3em;border-radius:999px;padding:.1em .65em;font-size:.85rem;font-weight:700;white-space:nowrap;border:1px solid transparent}.chip-present{background:var(--green-soft);color:var(--green-ink);border-color:#b7d8c6}.chip-absent{background:var(--danger-soft);color:#7c1a14;border-color:#f0c2bd}.chip-unrecorded{background:var(--muted-soft);color:#3c434b;border-color:#d6dade}.chip-cancelled{background:var(--gold-soft);color:#4d3a08;border-color:#e8d29a}.site-footer{margin-top:3rem;padding:1.5rem 0 2rem;border-top:1px solid var(--line);color:var(--ink-2);font-size:.9rem}.circle-switch{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.day-head{margin:.25rem 0 .75rem}.eyebrow{color:var(--gold-ink);font-weight:700;font-size:.92rem;margin:0 0 .1rem}.day-title{font-size:1.6rem;margin:0}.day-dates{margin:0;color:var(--ink-2);font-size:.98rem;align-items:center}.day-dates,.week-strip{display:flex;gap:.35rem}.week-strip{align-items:stretch;margin:0 0 1rem}.week-strip ul{list-style:none;margin:0;padding:0;display:flex;gap:.35rem}.week-strip li,.week-strip ul{flex:1 1;min-width:0}.week-nav{min-width:36px;border-radius:var(--radius-sm);font-size:1.5rem;color:var(--green);border:1px solid var(--line)}.day-chip,.week-nav{display:flex;align-items:center;justify-content:center;min-height:64px;text-decoration:none;background:var(--surface)}.day-chip{flex-direction:column;padding:.3rem .1rem;border-radius:var(--radius-sm);border:1.5px solid var(--line);color:var(--ink);line-height:1.25;position:relative}.day-chip .dc-wd{font-size:.78rem;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.day-chip .dc-n{font-size:1.15rem;font-weight:700}.day-chip .dc-tag{font-size:.68rem;font-weight:700;color:var(--gold-ink)}.day-chip.today{border-color:var(--gold)}.day-chip.sel{background:var(--green);border-color:var(--green);color:#fff}.day-chip.sel .dc-tag,.day-chip.sel .dc-wd{color:#e8f3ed}.day-chip.cancel:not(.sel){background:var(--gold-soft);border-style:dashed}.day-chip.future:not(.sel){opacity:.75}.counts{color:var(--ink-2);font-size:.92rem;margin:0 0 .5rem}.students{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.student{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.8rem .9rem;box-shadow:var(--shadow)}.student.editing{border-color:var(--green);box-shadow:0 0 0 2px rgb(0 98 51/15%),var(--shadow)}.student-name{font-size:1.12rem;margin:0;color:var(--ink)}.student-summary{margin:.2rem 0 0;font-size:.95rem;color:var(--ink-2)}.student-summary.extra{margin-top:.1rem;-webkit-padding-start:.2rem;padding-inline-start:.2rem}.student-summary .rec-line{color:var(--ink)}.student-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.65rem;align-items:center}.att-toggle{display:inline-flex;border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);overflow:hidden}.att-toggle button{min-height:var(--tap);min-width:64px;padding:0 .8rem;border:0;background:var(--surface);font:inherit;font-weight:700;color:var(--ink-2);cursor:pointer;touch-action:manipulation}.att-toggle button+button{-webkit-border-start:1.5px solid var(--line-strong);border-inline-start:1.5px solid var(--line-strong)}.att-toggle button.on.present{background:var(--green);color:#fff}.att-toggle button.on.absent{background:var(--danger);color:#fff}.att-toggle button:disabled{opacity:.6}.add-rec{flex:1 1 auto}.row-msg{margin-top:.5rem;font-size:.92rem;padding:.45rem .65rem;border-radius:8px;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.row-msg.ok{background:var(--green-soft);color:var(--green-ink)}.row-msg.error{background:var(--danger-soft);color:#6e1610}.editor{margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--line)}.editor-title{font-size:1.05rem;margin:0 0 .7rem;color:var(--green-ink)}.editor-back{margin:0 -.25rem .35rem}.editor fieldset{border:0;padding:0;margin:0 0 1rem;min-width:0}.editor legend{padding:0;margin-bottom:.35rem}.segmented{display:flex;border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);overflow:hidden}.segmented button{flex:1 1;min-height:var(--tap);border:0;background:var(--surface);font:inherit;font-weight:700;color:var(--ink-2);cursor:pointer;padding:.3rem .4rem;touch-action:manipulation}.segmented button+button{-webkit-border-start:1.5px solid var(--line-strong);border-inline-start:1.5px solid var(--line-strong)}.segmented button.on{background:var(--green);color:#fff}.segmented.small button{font-size:.9rem;font-weight:500}.segmented.small{margin-top:.5rem}.passage{background:var(--green-tint);border:1px solid #d5e7dd;border-radius:var(--radius-sm);padding:.7rem;margin-bottom:.6rem}.passage-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.3rem}.ayah-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem;margin-top:.6rem}.ayah-row .field{margin-bottom:0}.add-surah{margin-bottom:.2rem}.amounts{display:flex;flex-wrap:wrap;gap:.4rem}.amounts button{min-height:var(--tap);padding:.3rem .85rem;border-radius:999px;border:1.5px solid var(--line-strong);background:var(--surface);font:inherit;font-weight:500;cursor:pointer;color:var(--ink);touch-action:manipulation}.amounts button.on{background:var(--green);border-color:var(--green);color:#fff;font-weight:700}.note-box{margin-top:.4rem}.editor-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:1rem}.editor-actions .btn-primary{flex:1 1 180px}.surah-picker{position:relative}.surah-trigger{display:flex;align-items:center;justify-content:space-between;text-align:start;cursor:pointer;font-weight:700}.surah-trigger.placeholder{color:var(--ink-2);font-weight:400}.surah-popover{background:var(--surface);border:1.5px solid var(--green);border-radius:var(--radius-sm);padding:.4rem}.surah-list{list-style:none;margin:.35rem 0 0;padding:0;max-height:260px;overflow-y:auto;overscroll-behavior:contain}.surah-list button{display:flex;width:100%;align-items:center;gap:.6rem;min-height:var(--tap);padding:.3rem .5rem;border:0;border-radius:8px;background:transparent;font:inherit;cursor:pointer;text-align:start;color:var(--ink)}.surah-list button:focus-visible,.surah-list button:hover{background:var(--green-soft)}.surah-list [aria-selected=true] button{background:var(--green-soft);font-weight:700}.surah-no{min-width:2.2em;color:var(--gold-ink);font-weight:700;font-size:.9rem}.surah-name{flex:1 1}@media (min-width:720px){.day-title{font-size:1.9rem}.student-main{display:flex;align-items:center;gap:1rem}}.child-switch{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin-bottom:1rem}.child-switch [data-pending]{opacity:.85}.route-loading{position:fixed;inset:0 0 auto 0;height:3px;z-index:1000;pointer-events:none;opacity:0}.route-loading.is-active{opacity:1;background:linear-gradient(to left,var(--logo-gold),var(--logo-green));transform-origin:right center}@media (prefers-reduced-motion:no-preference){.route-loading.is-active{animation:route-progress 2.4s cubic-bezier(.1,.7,.3,1) both}}@keyframes route-progress{0%{transform:scaleX(.08)}to{transform:scaleX(.92)}}.child-content{transition:opacity .12s var(--ease-out)}.child-content.is-switching>:not(.switching-note){opacity:.45;pointer-events:none}.switching-note{margin:0 0 .75rem;color:var(--ink-2);font-size:.95rem}.summary-head h1{font-family:var(--font-display);font-weight:700;font-size:2rem;line-height:1.35;margin:0}.summary-card,.summary-head{margin-bottom:.8rem}.card-h{font-size:1.1rem;margin-bottom:.5rem;color:var(--olive)}.big-status .chip{font-size:1.05rem;padding:.3em .9em}.big-status{margin:.2rem 0 .4rem}.older-tag{display:block;font-size:.85rem;color:var(--gold-ink);font-weight:700}.rec-block{-webkit-border-start:3px solid var(--gold);border-inline-start:3px solid var(--gold);padding:.2rem .8rem;margin:.5rem 0}.rec-block p{margin:0}.rec-kind{font-weight:700;color:var(--green-ink)}.rec-passages{font-family:var(--font-text);font-size:1.35rem;line-height:1.8}.rec-amount{color:var(--ink-2);font-size:.95rem}.rec-note{font-family:var(--font-text);color:var(--ink);font-size:1.2rem;line-height:1.8}.history{list-style:none;margin:0;padding:0}.history li{padding:.55rem 0;border-bottom:1px solid var(--line)}.history li:last-child{border-bottom:0}.history-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}.history-date{font-weight:500}.history-rec{margin:.25rem 0 0;font-size:.95rem}.history-note{color:var(--ink-2)}.home{background:var(--paper)}.home ::selection{background:var(--gold-soft);color:var(--olive)}.home-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 1rem;min-height:72px;padding:0 1rem;background:var(--ivory);border-bottom:1px solid var(--line)}.home-logo{display:inline-flex}.home-nav{display:flex;gap:1.1rem}.home-nav a{white-space:nowrap}@media (max-width:480px){.home-nav{gap:.9rem}}.home-nav a{color:var(--olive);text-decoration:none;font-weight:500;font-size:.95rem;min-height:var(--tap);display:inline-flex;align-items:center;text-underline-offset:.35em;text-decoration-thickness:1.5px}.home-nav a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold);color:var(--olive)}.home-hero{display:grid;grid-template-columns:1fr;min-height:auto;background:var(--olive);color:var(--ivory)}.home-hero ::selection{background:var(--gold);color:var(--ink)}.home-hero :focus-visible{outline-color:var(--gold)}.home-text{display:flex;flex-direction:column;padding:0 1rem}.home-copy{padding:2.5rem 0 1.75rem}.home-title{font-family:var(--font-display);font-weight:700;font-size:clamp(2.75rem,12.5vw,3.4rem);line-height:1.25;color:var(--ivory);margin:0 0 1.1rem;text-wrap:balance}.home-lead{font-size:1.3rem;line-height:1.95;color:rgb(250 246 238/90%);max-width:26em;margin:0 0 1.9rem}.home-actions{display:flex;flex-wrap:wrap;gap:.75rem}.home-btn{min-height:54px;padding:.7em 1.6em;font-size:1.08rem;flex:1 1 11rem;border-width:2px}.home-signin{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.home-signin .home-btn{padding-inline:.6em;white-space:nowrap}@media (max-width:339px){.home-signin{grid-template-columns:1fr}}.home-btn-gold{background:var(--gold);border-color:var(--gold);color:var(--ink);box-shadow:0 2px 3px rgb(20 19 10/18%),0 8px 18px rgb(20 19 10/16%)}.home-btn-gold:hover:not(:disabled){background:#dcae3a;border-color:#dcae3a;color:var(--ink)}.home-btn-ivory{background:transparent;border-color:var(--ivory);color:var(--ivory)}.home-btn-ivory:hover:not(:disabled){background:rgb(250 246 238/10%);color:var(--ivory)}.home-art{display:flex;align-items:flex-end;justify-content:center;padding:1.5rem 1rem 0;overflow:hidden}.arch-art{width:min(44vw,200px);height:auto;display:block}.arch-line{stroke:var(--gold);stroke-width:2;stroke-dasharray:1;stroke-dashoffset:0}.arch-line-1{stroke-width:2.4}.arch-line-3{stroke:var(--gold);opacity:.6}.arch-line-4{stroke:var(--gold);opacity:.4}.arch-marks path{fill:var(--gold);opacity:.6}@media (max-width:380px){.home-art{display:none}}@media (prefers-reduced-motion:no-preference){.arch-line{animation:arch-draw 2.4s cubic-bezier(.16,1,.3,1) both}.arch-line-2{animation-delay:.25s}.arch-line-3{animation-delay:.5s}.arch-line-4{animation-delay:.1s}@keyframes arch-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}}.home-section{padding:3rem 1rem;border-top:1px solid var(--line);max-width:1180px;margin:0 auto}.home-section h2{font-family:var(--font-display);font-size:clamp(1.8rem,6vw,2.4rem);color:var(--green-ink)}.home-section h2,.home-section-head{margin:0 0 1.25rem}.home-section-head h2{margin:0 0 .55rem}.section-rule{display:block;width:3.25rem;height:2px;background:var(--gold);transform-origin:right center}.stats-title+.section-rule{margin:.45rem 0 .5rem}.page-head{margin-bottom:1rem}.page-head .page-title{margin-bottom:.45rem}.program-page section>h2+.section-rule{margin:-.25rem 0 .9rem}@media (prefers-reduced-motion:no-preference){html[data-motion] [data-reveal]:not([data-reveal-state]){opacity:0;transform:translateY(10px)}html[data-motion] [data-reveal=card]:not([data-reveal-state]){transform:translateY(14px)}html[data-motion] [data-reveal=fade]:not([data-reveal-state]){transform:none}html[data-motion] [data-reveal=rule]:not([data-reveal-state]){opacity:1;transform:scaleX(0)}[data-reveal][data-reveal-state=shown]{transition:opacity .36s var(--ease-out),transform .36s var(--ease-out);transition-delay:var(--reveal-delay,0s)}[data-reveal=card][data-reveal-state=shown]{transition-duration:.42s}[data-reveal=fade][data-reveal-state=shown]{transition-duration:.6s}[data-reveal=rule][data-reveal-state=shown]{transition-duration:.52s}.motion-cards .card{animation:card-in .22s var(--ease-out) both}.motion-cards .card .card{animation:none}.motion-cards .card:nth-of-type(2){animation-delay:40ms}.motion-cards .card:nth-of-type(3){animation-delay:80ms}.motion-cards .card:nth-of-type(4){animation-delay:.12s}.motion-cards .card:nth-of-type(n+5){animation-delay:.16s}.index-bar span{transform-origin:right center;animation:bar-fill .25s var(--ease-out) .12s both}.daily-review-btn.just-done{animation:tick-pop .22s var(--ease-out)}}@keyframes card-in{0%{opacity:0;transform:translateY(6px)}}@keyframes bar-fill{0%{transform:scaleX(0)}}@keyframes tick-pop{0%{transform:scale(.94)}60%{transform:scale(1.04)}to{transform:scale(1)}}.home-section-body{max-width:40em}.home-section-body>p{font-size:1.25rem;line-height:1.95;color:var(--ink)}.home-section-body .terms dd{font-size:1.15rem}.program-card p{font-size:1.22rem;line-height:1.95}.home-fine,.points,.program-card a{font-family:var(--font-ui)}.stats{background:var(--limestone);color:var(--ink);border-bottom:1px solid var(--line)}.stats-inner{max-width:1180px;margin:0 auto;padding:2rem 1rem 2.25rem}.stats-title{font-family:var(--font-display);font-weight:700;color:var(--olive);font-size:clamp(1.6rem,6vw,2.1rem);margin:0}.stats-semester{margin:.15rem 0 1.25rem;color:var(--ink-2);font-size:.98rem}.stats-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}@media (min-width:720px){.stats-list{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat{position:relative}.stat-btn{width:100%;min-height:96px;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.85rem 1rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--ivory);color:inherit;font:inherit;text-align:start;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.stat-btn:hover{background:#fffdf7;border-color:var(--line-strong)}.stat-btn[aria-expanded=true]{border-color:var(--gold)}.stat-value{font-family:var(--font-ui);font-weight:700;font-size:clamp(1.9rem,8vw,2.4rem);line-height:1.2;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:color .3s ease}.stat-changed .stat-value{color:var(--green)}.stat-label{font-family:var(--font-ui);font-weight:500;font-size:1rem;color:var(--ink-2)}.stat-help{margin:.5rem .25rem 0;font-size:.95rem;line-height:1.7;color:var(--ink-2)}.stats :focus-visible{outline-color:var(--olive)}@media (prefers-reduced-motion:reduce){.stat-btn,.stat-value{transition:none}}@media (min-width:768px){.stats-inner{padding:2.5rem clamp(1.5rem,5vw,4.5rem) 2.75rem}}.terms{margin:1.5rem 0;display:grid;grid-gap:0;gap:0}.terms div{display:grid;grid-template-columns:7.5rem 1fr;grid-gap:1rem;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line);align-items:baseline}.terms div:first-child{border-top:1px solid var(--line)}.terms dt{font-weight:700;color:var(--green);font-size:1.08rem}.terms dd{margin:0;color:var(--ink-2)}.points{list-style:none;margin:1.5rem 0 1.25rem;padding:0}.points li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.points li:first-child{border-top:1px solid var(--line)}.points b{color:var(--gold-ink);white-space:nowrap;font-size:1.05rem}.home-fine{font-size:.95rem;color:var(--ink-2)!important}.home-footer{background:var(--olive);color:rgb(250 246 238/88%);padding:2.25rem 1rem;text-align:center;font-size:.95rem}.home-footer p{margin:0 0 .4rem}.home-footer p:first-child{font-weight:700;color:var(--ivory)}.home-footer :focus-visible{outline-color:var(--gold)}.home-footer a{color:var(--ivory)}@media (min-width:768px){.home-bar{padding:0 clamp(1.5rem,5vw,4.5rem)}.home-hero{grid-template-columns:1.15fr .85fr;min-height:min(78svh,700px)}.home-title{font-size:clamp(3.6rem,5.6vw,5.25rem)}.home-lead{font-size:1.375rem}.home-text{padding:0 clamp(1.5rem,5vw,4.5rem)}.home-copy{flex:1 1;display:flex;flex-direction:column;justify-content:center;padding:2rem 0}.home-actions{max-width:30rem}.home-art{padding:3.5rem 2.5rem 0;align-items:flex-end}.arch-art{width:100%;height:min(62svh,520px);max-width:360px}.home-section{display:grid;grid-template-columns:minmax(12rem,1fr) 2fr;grid-gap:2rem;gap:2rem;padding:4.5rem clamp(1.5rem,5vw,4.5rem)}}@media (min-width:768px) and (max-height:700px){.home-hero{min-height:640px}}@media (orientation:landscape) and (max-height:500px){.home-bar{min-height:56px}.home-copy{padding:.75rem 0 1rem}.home-title{font-size:clamp(2.2rem,14svh,3.4rem);margin-bottom:.5rem}.home-lead{font-size:1.05rem;margin-bottom:1rem;max-width:none}.home-actions:not(.home-signin){flex-wrap:nowrap}.home-signin{gap:.5rem}.home-btn{min-height:48px}}.admin-nav{background:var(--green-tint);border-bottom:1px solid var(--line)}.admin-nav ul{list-style:none;margin:0;padding:.35rem 0;display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none}.admin-nav a{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 .75rem;border-radius:8px;text-decoration:none;font-weight:500;white-space:nowrap}.admin-nav a:hover{background:var(--green-soft)}.admin-main{padding-top:1.25rem;padding-bottom:3rem}.admin-main h1{font-size:1.45rem}.admin-main h2{font-size:1.15rem}.grid-2{display:grid;grid-template-columns:1fr;grid-gap:.9rem;gap:.9rem}.tiles{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.7rem;gap:.7rem;margin-bottom:1rem}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.9rem;text-decoration:none;color:var(--ink)}.tile strong{display:block;font-size:1.6rem;color:var(--green-ink)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}table.data{width:100%;border-collapse:collapse;font-size:.95rem}table.data td,table.data th{padding:.55rem .7rem;text-align:start;border-bottom:1px solid var(--line);vertical-align:top}table.data th{background:var(--green-tint);font-weight:700;white-space:nowrap}table.data tr:last-child td{border-bottom:0}.weekday-picks{display:flex;flex-wrap:wrap;gap:.35rem}.weekday-picks label{display:inline-flex;align-items:center;gap:.3rem;min-height:var(--tap);padding:0 .6rem;border:1.5px solid var(--line-strong);border-radius:999px;background:var(--surface);cursor:pointer;font-weight:500}.weekday-picks input{width:18px;height:18px;accent-color:var(--green)}.inline-form{display:inline}.form-row{display:grid;grid-template-columns:1fr;grid-gap:0 .8rem;gap:0 .8rem}details.card>summary{cursor:pointer;font-weight:700;color:var(--green-ink);min-height:var(--tap);display:flex;align-items:center}.badge{display:inline-block;font-size:.78rem;font-weight:700;padding:.05em .5em;border-radius:6px;background:var(--muted-soft);color:#3c434b}.badge.ok{background:var(--green-soft);color:var(--green-ink)}.badge.warn{background:var(--gold-soft);color:#4d3a08}.badge.off{background:var(--danger-soft);color:#7c1a14}@media (min-width:720px){.grid-2{grid-template-columns:1fr 1fr}.tiles{grid-template-columns:repeat(4,1fr)}.form-row{grid-template-columns:repeat(3,1fr)}}.program-list{display:grid;grid-gap:1rem;gap:1rem}.program-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem}.program-card h3{margin:0 0 .4rem;font-size:1.2rem;color:var(--clay)}.program-card p{margin:0 0 .7rem}.program-card a{display:inline-flex;align-items:center;min-height:var(--tap);font-weight:700}.program-page{padding-bottom:3rem}.program-lead{font-size:1.1rem;line-height:1.9}.check-row{display:inline-flex;align-items:center;gap:.5rem;min-height:var(--tap);font-weight:500;cursor:pointer}.check-row input{width:20px;height:20px;accent-color:var(--green)}.icon{flex:none;display:inline-block;vertical-align:-.2em}.icon-muted{color:var(--gold-ink)}.icon-ok{color:var(--green)}.icon-err{color:var(--danger)}.alert-icon{display:flex;align-items:flex-start;gap:.45rem}.alert-icon .icon{margin-top:.2em}.drawer-list a{gap:.5rem}.admin-nav a{gap:.35rem}.icon-book .book-cover{fill:var(--gold);stroke:var(--gold)}.icon-book .book-line{stroke:var(--green-deep)}.stat-top{display:flex;width:100%;align-items:center;justify-content:space-between;min-height:26px;margin-bottom:.15rem}.stat-icon{display:inline-flex;color:var(--gold-ink)}.stat-info{display:inline-flex;color:var(--ink-2)}.stat-btn[aria-expanded=true] .stat-info{color:var(--olive)}.back-link:active:not(:disabled),.btn:active:not(:disabled),.icon-btn:active,.stat-btn:active{transform:scale(.97)}@media (hover:none){.btn-primary:hover:not(:disabled){background:var(--green)}.back-link:hover,.btn-ghost:hover:not(:disabled),.btn-outline:hover:not(:disabled),.icon-btn:hover{background:transparent}.stat-btn:hover{background:rgb(255 255 255/6%)}}.row-msg.ok{animation:confirm-in .22s var(--ease-out) both}.row-msg.ok .icon-ok{animation:confirm-pop .32s var(--ease-out) both}@keyframes confirm-in{0%{opacity:0;transform:translateY(-3px)}}@keyframes confirm-pop{0%{transform:scale(.6);opacity:0}}@media (prefers-reduced-motion:reduce){.row-msg.ok,.row-msg.ok .icon-ok{animation:fade-in .15s ease both}.back-link:active:not(:disabled),.btn:active:not(:disabled),.icon-btn:active,.stat-btn:active{transform:none}}.public-bar{display:block;min-height:0;padding:0 max(1rem,env(safe-area-inset-right)) 0 max(1rem,env(safe-area-inset-left))}.public-bar-inner{max-width:1080px;margin:0 auto;min-height:64px;display:flex;align-items:center;gap:.35rem}.public-bar .home-logo{flex:none}.public-bar .back-link{min-width:0}@media (max-width:400px){.public-nav{display:none}}.page-title{font-weight:700;font-size:clamp(2.1rem,8vw,3rem);color:var(--green);margin:1.25rem 0 1rem}.program-index .program-card h2{font-size:1.35rem;margin:0 0 .4rem}.program-pdf{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:.75rem 0}.program-pdf .hint{flex-basis:100%;margin:0}.program-download,.program-more{display:inline-flex;align-items:center;min-height:var(--tap);font-weight:700}.schedule{margin-top:2rem}.schedule-table th[scope=row]{white-space:nowrap}.schedule-table .wk{display:block;font-weight:700;font-size:1.15rem;color:var(--green-ink)}.schedule-table .wk-date{display:block;font-weight:400;font-size:.88rem;color:var(--ink-2)}.schedule-table .match{display:block;white-space:nowrap}.schedule-table tr.is-cancelled td{color:var(--ink-2);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}@media (max-width:640px){.schedule-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.schedule-table,.schedule-table tbody,.schedule-table td,.schedule-table th,.schedule-table tr{display:block;width:100%}.schedule-table tr{border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:.6rem;padding:.5rem .75rem;background:var(--surface)}.schedule-table th[scope=row]{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .6rem;border:0;padding:0 0 .35rem}.schedule-table td{display:grid;grid-template-columns:6.5rem 1fr;grid-gap:.5rem;gap:.5rem;border:0;padding:.2rem 0}.schedule-table td:before{content:attr(data-label);font-weight:700;color:var(--gold-ink);font-size:.9rem}}.partners{max-width:760px;margin:0 auto 1.5rem}.partners h2{color:var(--ivory);font-size:1.15rem;margin:0 0 1rem;font-family:var(--font-ui)}.partners-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2rem}.partners-list li{display:flex;flex-direction:column;align-items:center;gap:.5rem}.partner-mark{display:flex;align-items:center;justify-content:center;width:132px;height:96px;border-radius:var(--radius)}.partner-mark img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.partner-maknoon{background:var(--ivory)}.partner-maknoon img{width:128px;height:128px;max-height:none;margin:-16px 0}.partner-name{font-size:.95rem;color:var(--ivory);font-weight:500}.program-card .program-pdf .hint{font-size:.92rem;line-height:1.6}.index-badge{display:inline-flex;align-items:center;gap:.4rem;min-height:32px;padding:.15rem .65rem;border-radius:999px;font-size:.88rem;font-weight:700;text-decoration:none;border:1px solid transparent;line-height:1.4}a.index-badge{min-height:var(--tap)}.index-dot{width:.7rem;height:.7rem;border-radius:50%;flex:none;background:currentColor}.band-dark-green{background:#dcefe4;color:#0b4d2b;border-color:#9fcdb2}.band-light-green{background:#eaf6e3;color:#2f5d12;border-color:#b9dca4}.band-yellow{background:#fbf3d0;color:#6a5100;border-color:#e8d27a}.band-orange{background:#fde9d6;color:#7a3a00;border-color:#f1b57e}.band-red{background:#fbe1df;color:#7d1a12;border-color:#eba59f}.band-gray{background:var(--muted-soft);color:#3f4650;border-color:#d3d8dd}.student-info .index-badge,.summary-head .index-badge{margin-top:.3rem}.index-bar-block{margin-bottom:1.1rem}.index-bar-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4rem}.index-bar-head h3{margin:0;font-size:1.05rem}.index-bar{height:14px;border-radius:999px;background:var(--muted-soft);overflow:hidden;margin:.5rem 0 .3rem;border:0}.index-bar span{display:block;height:100%;border-radius:inherit;background:currentColor}.index-details{width:100%;border-collapse:collapse}.index-details td,.index-details th{text-align:start;padding:.5rem 0;border-bottom:1px solid var(--line)}.index-details td{text-align:end;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.index-note,.index-reco{margin:1rem 0 0;font-size:1.15rem;line-height:1.85}.index-note{color:var(--ink-2)}.blank-days{margin-bottom:1rem}.blank-days summary{cursor:pointer;font-weight:700;min-height:var(--tap);display:flex;align-items:center}.blank-list{list-style:none;margin:0;padding:0}.blank-day{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;padding:.5rem 0;border-top:1px solid var(--line)}.blank-date{font-weight:500}.att-list{list-style:none;margin:0 0 1rem;padding:0}.att-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.35rem 0;border-bottom:1px solid var(--line)}.att-list .select{max-width:9rem}.plain-list{margin:.75rem 0 0;-webkit-padding-start:1.1rem;padding-inline-start:1.1rem}.student-links{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .75rem;margin-top:.3rem}.plan-link{display:inline-flex;align-items:center;min-height:var(--tap);font-weight:700;font-size:.92rem}.plan-page{padding:1rem 16px 3rem}.plan-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.plan-doc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.25rem 1rem}.plan-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:2px solid var(--gold);padding-bottom:.75rem;margin-bottom:1rem}.plan-head h1{margin:0;font-size:2rem;color:var(--green);font-weight:700}.plan-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));grid-gap:.4rem 1.5rem;gap:.4rem 1.5rem;margin:0 0 1rem}.plan-meta div{display:flex;gap:.5rem}.plan-meta dt{font-weight:700;color:var(--gold-ink)}.plan-meta dd{margin:0}.plan-doc h2{margin:1.1rem 0 .4rem;color:var(--green-ink)}.plan-doc h2,.plan-goal,.plan-text{font-size:1.15rem}.plan-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.plan-empty{font-size:1.1rem;color:var(--ink-2);padding:1rem 0}.plan-foot{margin-top:1.25rem;padding-top:.6rem;border-top:1px solid var(--line);font-size:.9rem;color:var(--ink-2)}@media print{@page{size:A4;margin:16mm 14mm}.card,.plan-doc,body,html{background:#fff!important;box-shadow:none!important}.admin-nav,.appbar,.no-print,nextjs-portal{display:none!important}.plan-page{padding:0;max-width:none}.plan-doc{border:0;padding:0}.plan-doc section{page-break-inside:auto;break-inside:auto}.plan-doc h2{page-break-after:avoid;break-after:avoid}.plan-text{orphans:3;widows:3}a{color:inherit;text-decoration:none}}.fee-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.75rem;gap:.75rem}.fee-card{border:1px solid var(--line);border-radius:var(--radius-sm);padding:.75rem .9rem;display:grid;grid-gap:.5rem;gap:.5rem}.fee-card dl{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));grid-gap:.25rem 1rem;gap:.25rem 1rem}.fee-card dl div{display:flex;gap:.4rem}.fee-card dt{font-weight:700;color:var(--gold-ink)}.fee-card dd{margin:0}.fee-paid{background:var(--green-soft);color:var(--green-ink)}.fee-unpaid{background:var(--danger-soft);color:#6e1610}.fee-pending{background:var(--gold-soft);color:var(--gold-ink)}.fee-refunded{background:var(--muted-soft);color:#3f4650}.support-dl{margin:0 0 1rem;display:grid;grid-gap:.4rem;gap:.4rem}.support-dl div{display:flex;flex-wrap:wrap;gap:.5rem}.support-dl dt{font-weight:700;color:var(--gold-ink);min-width:7rem}.support-dl dd{margin:0}.iban{font-family:var(--font-ui);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:1.1rem;-webkit-user-select:all;-moz-user-select:all;user-select:all}.copy-ok{-webkit-margin-start:.75rem;margin-inline-start:.75rem;color:var(--green);font-weight:700}.position-dl{margin:0;display:grid;grid-gap:.1rem;gap:.1rem}.position-dl div{display:grid;grid-template-columns:minmax(9rem,13rem) 1fr;grid-gap:.75rem;gap:.75rem;padding:.45rem 0;border-bottom:1px solid var(--line)}.position-dl div:last-child{border-bottom:0}.position-dl dt{font-weight:700;color:var(--gold-ink);font-size:.95rem}.position-dl dd{margin:0}@media (max-width:480px){.position-dl div{grid-template-columns:1fr;gap:.1rem}}.position-line{display:block;font-size:.88rem;color:var(--ink-2);text-decoration:none;margin-top:.2rem;min-height:24px}.position-line:hover{color:var(--green);text-decoration:underline}.daily-review{border-color:var(--gold-soft)}.daily-review.is-done{border-color:var(--green-soft);background:var(--green-tint)}.daily-review-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.daily-review-title{font-size:1.2rem;margin:0 0 .2rem}.daily-review-btn{min-height:52px;min-width:7.5rem;font-size:1.15rem;font-weight:700}.daily-review-week{margin-top:.9rem}.dr-days{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:.35rem;gap:.35rem;text-align:center}.dr-day{display:flex;flex-direction:column;align-items:center;gap:.15rem;font-size:.78rem;color:var(--ink-2)}.dr-mark{width:30px;height:30px;border-radius:50%;border:2px solid var(--line-strong);display:grid;place-items:center;font-weight:700;color:#fff;background:var(--surface)}.dr-day.done .dr-mark{background:var(--green);border-color:var(--green)}.dr-day.today .dr-mark{box-shadow:0 0 0 3px var(--gold-soft)}.dr-day.future .dr-mark{border-style:dashed;opacity:.55}.dr-count{margin:.5rem 0 0;font-weight:700;color:var(--green-ink)}.review-chip{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 .6rem;border-radius:999px;font-size:.85rem;font-weight:700;text-decoration:none;color:var(--ink-2);background:var(--muted-soft)}.review-chip.done{color:var(--green-ink);background:var(--green-soft)}.dr-history li{font-size:.92rem}.dr-status{font-family:var(--font-ui);font-size:1rem;font-weight:700;color:var(--ink-2)}.dr-status.done{color:var(--green)}.review-tick{min-height:var(--tap);font-size:.85rem}.report-list{display:grid;grid-gap:.5rem;gap:.5rem;margin-top:.75rem}.report-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.75rem 1rem}.progress-cards{margin-top:.75rem}.husun-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));margin:1rem 0}.husun-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;height:100%;box-shadow:var(--shadow)}.husun-cover{aspect-ratio:8/3;background:var(--olive);overflow:hidden}.husun-cover img,.husun-motif{width:100%;height:100%;object-fit:cover;display:block}.husun-card-body{padding:.95rem 1.05rem 1.1rem;display:flex;flex-direction:column;gap:.45rem;flex:1 1}.husun-tags{display:flex;flex-wrap:wrap;gap:.4rem .6rem;align-items:center;margin:0;font-size:.85rem}.husun-kind{font-weight:700;color:var(--clay)}.husun-status{border-radius:999px;padding:.05em .65em;font-weight:700;background:var(--muted-soft);color:#3c434b}.husun-status.s-upcoming{background:var(--gold-soft);color:var(--gold-ink)}.husun-status.s-live{background:var(--green-soft);color:var(--green-ink)}.husun-status.s-completed{background:var(--green-tint);color:var(--olive)}.husun-date{color:var(--ink-2)}.husun-title{margin:0;font-size:1.25rem;color:var(--olive)}.husun-summary{margin:0;color:var(--ink);font-size:1.12rem;line-height:1.85}.husun-winner{margin:0;color:var(--ink-2)}.husun-winner strong{color:var(--olive)}.husun-more{margin-top:auto;font-weight:700;min-height:var(--tap);display:inline-flex;align-items:center}.husun-all{margin-top:.25rem}.husun-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:.25rem 0 .5rem}.husun-empty{padding:1.25rem;border:1px dashed var(--line-strong);text-align:center;color:var(--ink-2)}.husun-empty,.husun-hero{border-radius:var(--radius)}.husun-hero{overflow:hidden;aspect-ratio:8/3;max-height:260px;margin:.5rem 0 1rem;background:var(--olive)}.husun-hero img{width:100%;height:100%;object-fit:cover;display:block}.husun-item section{margin:1.5rem 0}.castle-ranking{list-style:none;margin:.5rem 0;padding:0;display:grid;grid-gap:.5rem;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr))}.castle-ranking li{display:flex;align-items:center;gap:.6rem;padding:.75rem .9rem;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.castle-ranking li.rank-1{border-color:var(--logo-gold);background:var(--gold-soft)}.rank-mark{font-size:1.5rem;min-width:1.6em;text-align:center}.rank-mark,.rank-name{font-weight:700;color:var(--olive)}.rank-name{font-size:1.1rem}.husun-note{background:var(--ivory);-webkit-border-start:3px solid var(--logo-gold);border-inline-start:3px solid var(--logo-gold);padding:.6rem .9rem;border-radius:var(--radius-sm)}.alliance-vs{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:.75rem;gap:.75rem;align-items:stretch}.alliance-side{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.8rem .9rem;display:flex;flex-direction:column;gap:.3rem}.alliance-side.is-winner{border-color:var(--logo-gold);background:var(--gold-soft)}.alliance-x{align-self:center;font-weight:700;color:var(--clay)}@media (max-width:480px){.alliance-vs{grid-template-columns:1fr}.alliance-x{justify-self:center}}.husun-highlights{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:.5rem 0;padding:0}.husun-highlights li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.35rem .9rem;font-weight:700;color:var(--olive)}.husun-rounds{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr))}.husun-round{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem .9rem}.husun-round h3{margin:0 0 .4rem;font-size:1.05rem;color:var(--clay)}.husun-round ol{list-style:none;margin:0;padding:0;display:grid;grid-gap:.25rem;gap:.25rem}.husun-round .place{display:inline-block;min-width:1.6em;font-weight:700;color:var(--gold-ink)}.husun-internal{margin-top:1.5rem}.husun-internal .table-wrap{margin:.75rem 0}.husun-cum{list-style:none;margin:.5rem 0 0;padding:0;display:grid;grid-gap:.4rem;gap:.4rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}.husun-cum li{display:flex;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;background:var(--green-tint);border-radius:var(--radius-sm)}.page-h{font-size:1.45rem;margin:.5rem 0}.form-grid{display:grid;grid-gap:.25rem .9rem;gap:.25rem .9rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));margin-bottom:.75rem}.form-grid .span-2{grid-column:1/-1}.form-grid label,.husun-results label,.husun-sides label{display:flex;flex-direction:column;gap:.3rem;font-weight:700;font-size:.95rem;margin-bottom:.6rem}.form-grid :is(input,select,textarea),.husun-internal+* input,.husun-results :is(input,select),.husun-sides :is(input,select){min-height:var(--tap);padding:.45em .7em;border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:1rem;max-width:100%}.form-grid textarea{min-height:72px;resize:vertical}.husun-sides{border:1px solid var(--line);border-radius:var(--radius-sm);padding:.6rem .8rem;margin:0 0 .9rem}.husun-sides legend{font-weight:700;padding:0 .3rem}.husun-round-edit{border:1px solid var(--line);border-radius:var(--radius-sm);padding:.6rem .8rem;margin:0 0 .9rem}.husun-round-edit legend{font-weight:700;padding:0 .3rem;color:var(--olive)}.husun-round-edit table.data{margin-bottom:.5rem}.husun-pick{display:grid;grid-gap:.25rem .75rem;gap:.25rem .75rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));margin-bottom:.75rem}.husun-pick label{display:flex;gap:.4rem;align-items:center;min-height:var(--tap)}.husun-cover-preview{max-width:100%;max-height:180px;border-radius:var(--radius-sm);display:block;margin-bottom:.6rem}.husun-results fieldset,.husun-sides,form fieldset{min-width:0}.husun-results select{max-width:13rem}.husun-results td input{width:4.5rem}.husun-results .table-wrap{contain:paint}.review-banner{display:flex;flex-wrap:wrap;justify-content:center;gap:.1rem .75rem;padding:.3rem 1rem;background:var(--gold-soft);color:var(--gold-ink);border-bottom:1px solid #e8d29a;font-size:.85rem;line-height:1.5;text-align:center}.review-banner strong{font-weight:700}@media print{.review-banner{display:none}}.missing-list summary{cursor:pointer;min-height:var(--tap);display:inline-flex;align-items:center}.missing-list ul{margin:.4rem 0 0;-webkit-padding-start:1.1rem;padding-inline-start:1.1rem;columns:12rem 2;column-gap:1.25rem}.missing-list li{page-break-inside:avoid;break-inside:avoid}@media (max-width:560px){.review-table thead{display:none}.review-table,.review-table tbody,.review-table td,.review-table tr{display:block;width:100%}.review-table tr{border-bottom:1px solid var(--line);padding:.5rem .25rem}.review-table td{border:0;padding:.2rem .4rem;overflow-wrap:anywhere}.review-table td[data-label]:before{content:attr(data-label) "\00a0: ";font-weight:700;color:var(--gold-ink);font-size:.9rem}.missing-list ul{column-count:1}}.kind-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.4rem;gap:.4rem}.kind-sections button{min-height:var(--tap);border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);font:inherit;font-weight:700;color:var(--ink);cursor:pointer}.kind-sections button.on{border-color:var(--green);background:var(--green-tint);color:var(--green-ink)}.kind-section{border:1px solid var(--line);border-radius:var(--radius-sm);padding:.65rem .75rem;margin-bottom:.8rem;background:var(--surface)}.kind-section-title{margin:0 0 .4rem;font-size:1.05rem;color:var(--olive)}.warn-new{color:var(--danger);font-weight:700;font-size:.92rem;margin:.35rem 0 0}.dr-past-title{font-size:1rem;margin:1rem 0 .25rem}.dr-past{list-style:none;padding:0}.dr-past li{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .75rem;padding:.4rem 0;border-bottom:1px solid var(--border,#e5dccd)}.dr-past li .dr-day{min-width:8.5rem}.dr-past li .btn{-webkit-margin-start:auto;margin-inline-start:auto}.dr-past li.done .dr-day{color:var(--olive,#2F3D20);font-weight:600}.circle-days{margin:0 0 1rem;color:var(--muted,#5b5648)}.supervisor-pick{border-top:1px solid var(--border,#e5dccd)}.danger-zone,.supervisor-pick{margin-top:1.2rem;padding-top:1rem}.danger-zone{border-top:1px dashed #e4b4b0;display:grid;grid-gap:.6rem;gap:.6rem}.account{position:relative;flex:none}.account-btn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--olive,#2f3d20);background:var(--olive,#2F3D20);color:var(--ivory,#FAF6EE);font:700 1rem/1 var(--font-ui,inherit);display:grid;place-items:center;cursor:pointer;transition:transform .12s var(--ease-out,ease-out)}.account-btn:active{transform:scale(.97)}.account-btn:focus-visible{outline:3px solid var(--logo-gold,#CF9F27);outline-offset:2px}.account-menu{position:absolute;inset-inline-end:0;top:calc(100% + .4rem);z-index:40;min-width:13rem;max-width:calc(100vw - 32px);background:var(--surface,#FAF6EE);border:1px solid var(--line,#e5dccd);border-radius:12px;box-shadow:0 10px 30px rgb(20 19 10/.14);padding:.75rem;display:grid;grid-gap:.25rem;gap:.25rem}.account-name{margin:0;font-weight:700;overflow-wrap:anywhere}.account-role{margin:0 0 .4rem;color:var(--ink-2,#5b5648);font-size:.9rem}.account-item{display:flex;align-items:center;min-height:44px;padding:0 .6rem;border-radius:8px;width:100%;background:none;border:0;font:inherit;color:inherit;text-decoration:none;cursor:pointer;text-align:start}.account-item:hover{background:var(--green-tint,#eef2e8)}.account-logout{color:var(--danger,#9b2c22)}.home-bar .account{-webkit-margin-start:auto;margin-inline-start:auto}.home-bar:has(.account) .home-nav{-webkit-margin-start:auto;margin-inline-start:auto}@media (max-width:600px){.home-bar:has(.account){padding-block:.4rem;row-gap:.1rem}.home-bar:has(.account) .home-nav{order:3;flex-basis:100%;-webkit-margin-start:0;margin-inline-start:0}}.supervisor-name{margin:0 0 .25rem;font-weight:700}.supervisor-phone{margin:0 0 .6rem;font-family:var(--font-ui,inherit);color:var(--ink-2,#5b5648);text-align:start;unicode-bidi:plaintext}.stat-gold{grid-column:1/-1}.stat-gold .stat-btn{background:var(--gold);border-color:var(--gold);box-shadow:0 2px 3px rgb(20 19 10/18%),0 8px 18px rgb(20 19 10/16%)}.stat-gold .stat-btn:hover{background:var(--gold);filter:brightness(1.04);border-color:var(--gold)}.stat-gold .stat-btn[aria-expanded=true]{border-color:var(--olive)}.stat-gold .stat-icon,.stat-gold .stat-info,.stat-gold .stat-label,.stat-gold .stat-value{color:var(--ink)}.stat-gold .stat-value{font-size:clamp(2.3rem,10vw,3rem)}.stat-gold .stat-label{font-weight:700;font-size:1.1rem}.stat-gold.stat-changed .stat-value{color:var(--olive)}.stat-gold .stat-help{color:var(--ink-2)}.stat-gold .icon-book .book-cover{fill:var(--ivory);stroke:var(--ink)}.awards-review tr.award-in td{background:var(--gold-soft,#f6ead0)}.awards-review tr.award-next td{background:var(--surface,#faf6ee);color:var(--ink-2,#5b5648)}.winners-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.5rem;gap:.5rem}.winner{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .9rem;padding:.75rem 1rem;border-radius:12px;background:var(--surface,#faf6ee);border:1px solid var(--line,#e5dccd)}.winner.rank-1{border-color:var(--gold,#CF9F27);background:var(--gold-soft,#f6ead0)}.winner-rank{font-family:var(--font-ui);font-weight:700;color:var(--olive,#2F3D20);min-width:5.5rem}.winner-name{font-weight:700;flex:1 1}.winner-points{font-family:var(--font-ui);color:var(--ink-2,#5b5648)}.today-board{margin-bottom:1rem}.today-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));grid-gap:.5rem;gap:.5rem;margin:0 0 .75rem}.today-totals>div{background:var(--paper,#F0E6D8);border-radius:10px;padding:.55rem .7rem}.today-totals dt{font-size:.85rem;color:var(--ink-2,#5b5648)}.today-totals dd{margin:0;font-family:var(--font-ui);font-weight:700;font-size:1.5rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.today-miss,.today-totals>div.warn dd{color:var(--clay,#8E5745);font-weight:700}.today-circles{list-style:none;margin:0;padding:0}.today-circles>li{border-top:1px solid var(--line,#e5dccd);padding:.45rem 0}.today-circles p{margin:0}.today-circles summary{cursor:pointer;min-height:var(--tap,44px);display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.stat-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem;gap:.6rem;margin:0 0 1rem}@media (min-width:720px){.stat-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat-card{display:flex;flex-direction:column;gap:.15rem;padding:.75rem .9rem;border-radius:12px;border:1px solid var(--line,#e5dccd);background:var(--surface,#FAF6EE);color:var(--ink,#14130A);text-decoration:none;min-height:44px}.stat-card:hover{border-color:var(--line-strong,#cbbfa9)}.stat-card-value{font-family:var(--font-ui);font-weight:700;font-size:1.6rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.stat-card-label{font-size:.9rem;color:var(--ink-2,#5b5648)}.stat-card[class*=band-] .stat-card-label{color:inherit}.side-nav{display:none}@media (min-width:900px){body:has(.side-nav){-webkit-padding-start:15rem;padding-inline-start:15rem}.side-nav{display:flex;flex-direction:column;position:fixed;inset-block:0;inset-inline-start:0;width:15rem;z-index:30;background:var(--surface,#FAF6EE);-webkit-border-end:1px solid var(--line,#e5dccd);border-inline-end:1px solid var(--line,#e5dccd);padding:1rem .75rem;overflow-y:auto}.side-nav ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:.15rem;gap:.15rem}.side-nav a{display:flex;align-items:center;min-height:44px;padding:0 .75rem;border-radius:8px;color:var(--ink,#14130A);text-decoration:none}.side-nav a:hover{background:var(--green-tint,#eef2e8)}.side-nav a[aria-current=page]{background:var(--olive,#2F3D20);color:var(--ivory,#FAF6EE);font-weight:700}.side-nav-account{margin-top:auto;border-top:1px solid var(--line,#e5dccd);padding-top:.75rem}.appbar:has(.side-nav) .account,.appbar:has(.side-nav) .appbar-user,.appbar:has(.side-nav) .menu-btn{display:none}}.castle-members{list-style:none;margin:0 0 .9rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.castle-members li{padding:.3rem .7rem;border-radius:999px;background:var(--paper,#F0E6D8);font-size:.95rem}.castle-members li.me{background:var(--olive,#2F3D20);color:var(--ivory,#FAF6EE);font-weight:700}.suggestions{display:grid;grid-gap:.6rem;gap:.6rem;padding:0}.suggestions>li{margin:0}.sg-body{white-space:pre-wrap;margin:.4rem 0;overflow-wrap:anywhere}.sg-reply{margin:0 0 .4rem;padding:.5rem .7rem;border-radius:8px;background:var(--paper,#F0E6D8)}.sg-status{font-weight:700}.sg-status.s-done{color:var(--logo-green,#016334)}.sg-status.s-declined{color:var(--clay,#8E5745)}.league-editor{display:grid;grid-gap:.6rem;gap:.6rem;margin-top:.75rem}.league-event{flex-wrap:wrap;gap:.4rem;margin-bottom:.4rem}.league-event .select{max-width:11rem}.gathering-dates{display:grid;grid-gap:.6rem;gap:.6rem;padding:0}.gathering-dates>li{margin:0}.gathering-request{border-top:1px solid var(--line,#e5dccd);padding-top:.6rem;margin-top:.6rem}.nav-badge{display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;padding:0 .35rem;-webkit-margin-start:.4rem;margin-inline-start:.4rem;border-radius:999px;background:var(--clay,#8E5745);color:var(--ivory,#FAF6EE);font-size:.8rem;font-weight:700}.league-week{margin-bottom:1.2rem}.league-week-h{font-size:1.1rem;margin:.5rem 0}.reset-req{padding:.75rem 0;border-top:1px solid var(--line,rgba(0,0,0,.1))}.reset-req:first-child{border-top:0;padding-top:0}.warn-text{color:var(--clay,#8E5745);font-weight:600}.bell{flex:none}.bell,.bell-btn{position:relative}.bell-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line,#e5dccd);background:var(--surface,#FAF6EE);color:var(--olive,#2F3D20);display:grid;place-items:center;cursor:pointer;transition:transform .12s var(--ease-out,ease-out)}.bell-btn:active{transform:scale(.97)}.bell-btn:focus-visible{outline:3px solid var(--logo-gold,#CF9F27);outline-offset:2px}.bell-count{position:absolute;top:-4px;inset-inline-end:-4px;min-width:1.3rem;height:1.3rem;padding:0 .3rem;border-radius:999px;background:var(--clay,#8E5745);color:var(--ivory,#FAF6EE);font:700 .75rem/1.3rem var(--font-ui,inherit);text-align:center}.bell-menu{position:absolute;inset-inline-end:0;top:calc(100% + .4rem);z-index:40;width:min(22rem,calc(100vw - 32px));max-height:70vh;overflow-y:auto;background:var(--surface,#FAF6EE);border:1px solid var(--line,#e5dccd);border-radius:12px;box-shadow:0 10px 30px rgb(20 19 10/.14);padding:.75rem}@media (max-width:520px){.bell{position:static}.bell-menu{inset-inline:16px;width:auto;top:64px}}.bell-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.bell-list{list-style:none;margin:0;padding:0;display:grid}.bell-list>li{border-top:1px solid var(--line,#e5dccd)}.bell-item{display:grid;grid-gap:.15rem;gap:.15rem;width:100%;padding:.6rem .25rem;background:none;border:0;font:inherit;color:inherit;text-align:start;cursor:pointer;min-height:44px}.bell-item:hover{background:var(--green-tint,#eef2e8)}.bell-title{font-weight:700;display:flex;align-items:center;gap:.35rem;overflow-wrap:anywhere}.bell-list li.read .bell-title{font-weight:500;color:var(--ink-2,#5b5648)}.bell-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--clay,#8E5745);flex:none}.bell-body{font-size:.95rem;overflow-wrap:anywhere}.bell-body,.bell-time{color:var(--ink-2,#5b5648)}.bell-time{font-size:.8rem;font-family:var(--font-ui,inherit)}@font-face{font-family:markazi;src:url(/_next/static/media/48c7217e79d1ad0d-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:markazi;src:url(/_next/static/media/e39deeed38f0240c-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:markazi;src:url(/_next/static/media/bec7b3192e1efeb2-s.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:markazi;src:url(/_next/static/media/abfe4ea890d488b7-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:markazi;src:url(/_next/static/media/a2740ea177da54c6-s.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:markazi Fallback;src:local("Arial");ascent-override:110.90%;descent-override:47.77%;line-gap-override:0.00%;size-adjust:75.64%}.__className_1ca68c{font-family:markazi,markazi Fallback,serif}.__variable_1ca68c{--font-reading:"markazi","markazi Fallback",serif}@font-face{font-family:ui;src:url(/_next/static/media/38ca8bfd780ae6be-s.p.woff2) format("woff2");font-display:swap;font-weight:400}@font-face{font-family:ui;src:url(/_next/static/media/0010010bfd451de0-s.p.woff2) format("woff2");font-display:swap;font-weight:500}@font-face{font-family:ui;src:url(/_next/static/media/3de711fd864e0bd8-s.p.woff2) format("woff2");font-display:swap;font-weight:700}@font-face{font-family:ui;src:url(/_next/static/media/b6806de131f5bf32-s.p.woff2) format("woff2");font-display:swap;font-weight:400}@font-face{font-family:ui;src:url(/_next/static/media/7b6a1bb2d463380b-s.p.woff2) format("woff2");font-display:swap;font-weight:700}@font-face{font-family:ui Fallback;src:local("Arial");ascent-override:107.29%;descent-override:41.04%;line-gap-override:0.00%;size-adjust:101.13%}.__className_8ac3f7{font-family:ui,ui Fallback,Segoe UI,Tahoma,system-ui,sans-serif}.__variable_8ac3f7{--font-ui:"ui","ui Fallback",Segoe UI,Tahoma,system-ui,sans-serif}