.ns{max-width:1100px;color:var(--foreground);margin:auto;padding:24px;font-size:1rem}.ns-header,.ns-heading,.ns-section-title,.ns-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.ns-header a{align-items:center;gap:8px;display:flex}.ns-header span,.ns-eyebrow{letter-spacing:.08em;font-size:.875rem;font-weight:700}.ns-heading{margin:36px 0 24px}.ns h2{font-size:1.5rem}.ns h3{font-size:1.2rem}.ns>:not(.event-topbar){--primary:var(--c)}.ns p{line-height:1.6}.ns-local{color:var(--muted-foreground);margin:-8px 0 8px;font-size:.8125rem;display:block}.ns-stats{flex-wrap:wrap;gap:36px;padding:28px 0;display:flex}.ns-stats strong{font-size:1.8rem;display:block}.ns-division{flex-direction:column;gap:6px;min-width:min(100%,240px);max-width:100%;display:flex}.ns-division select{border:2px solid var(--border);font:inherit;background:var(--background);color:var(--foreground);border-radius:10px;min-width:0;max-width:100%;padding:10px 12px}.ns-section-title{margin:18px 0}.ns-section-title span,.ns-history{color:var(--muted-foreground);font-size:.875rem}.ns-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.ns-card{background:var(--card);border:1px solid var(--border);border-radius:20px;flex-direction:column;align-items:flex-start;padding:24px;display:flex}.ns-number{background:var(--accent);border-radius:10px;padding:6px 10px;font-weight:800}.ns-card h3{margin:18px 0 0}.ns-card p{margin:12px 0}.ns-example{background:var(--secondary);border-radius:10px;width:100%;padding:14px;font-weight:650;line-height:1.6}.ns-card .ns-history{margin-top:auto;padding-top:20px}.ns-area+.ns-area{margin-top:28px}.ns-area-title{margin:0 0 14px;font-size:1.1rem}.ns .ns-try-open{margin-bottom:10px}.ns-card .ns-try{gap:8px;width:100%;margin-bottom:12px}.ns-try>div{gap:8px;width:100%;display:flex}.ns-try input{padding:10px;font-size:1rem}.ns-try output{flex-direction:column;gap:8px;width:100%;line-height:1.5;display:flex}.ns-try-wrong strong{color:var(--destructive)}.ns button:where(:not(.topbar *)){background:var(--primary);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 16px;font-weight:700;display:inline-flex}.ns button.outline:where(:not(.topbar *)){background:var(--card);color:var(--primary);border:1px solid var(--border-strong)}.ns button:disabled:where(:not(.topbar *)){opacity:.5;cursor:default}:is(.ns button:focus-visible:where(:not(.topbar *)),.ns a:focus-visible:where(:not(.topbar *)),.ns input:focus-visible,.ns summary:focus-visible){outline:3px solid var(--club-green);outline-offset:4px}.ns-challenge{background:var(--foreground);color:#fff;border-radius:20px;align-items:center;gap:24px;margin:28px 0;padding:28px;display:flex}.ns-challenge>div{flex:1}.ns-challenge p{color:#f3e9da}.ns-challenge button{background:var(--accent);color:var(--foreground);flex-shrink:0}.ns-work{background:var(--card);border:1px solid var(--border);border-radius:24px;max-width:800px;margin:28px auto;padding:32px}.ns-problem{text-align:center;margin:48px 0;font-size:clamp(2rem,7vw,3.8rem)!important}.ns-problem span{color:var(--muted-foreground)}.ns-problem.is-medium{margin:32px 0;line-height:1.25;font-size:clamp(1.6rem,4.6vw,2.2rem)!important}.ns-problem.is-long{text-align:left;margin:24px 0;line-height:1.35;font-size:clamp(1.25rem,3.2vw,1.55rem)!important}@media (min-width:900px){.ns-work.ns-drill{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:start;column-gap:28px;max-width:1040px;display:grid}.ns-drill>.ns-drill-main{grid-area:1/1}.ns-drill>.ns-actions{grid-area:2/1;justify-content:flex-start}.ns-drill>.ns-feedback{grid-area:1/2/span 2;max-height:calc(100vh - 16px);margin-top:0;position:sticky;top:8px;overflow-y:auto}}@media (max-height:720px){.ns-work.ns-drill{margin:12px auto;padding:20px 24px}.ns-drill .ns-section-title{margin:0 0 8px}.ns-drill .ns-problem,.ns-drill .ns-problem.is-medium,.ns-drill .ns-problem.is-long{margin:12px 0 16px}.ns-drill .ns-feedback{padding:14px 16px}}.ns form{flex-wrap:wrap;gap:12px;display:flex}.ns label{width:100%;font-weight:700}.ns input{border:2px solid var(--border);min-width:0;font:inherit;border-radius:10px;flex:1;width:100%;padding:14px;font-size:1.25rem}.ns-feedback{background:var(--secondary);border-radius:14px;margin-top:24px;padding:20px;display:block}.ns-actions{margin-top:24px}.ns .ns-secondary{background:var(--secondary);color:var(--foreground)}.ns-result{margin:12px 0;font-size:2.5rem;font-weight:800}.ns details{border-top:1px solid var(--border);padding:16px 0}.ns summary{cursor:pointer;font-weight:650;line-height:1.6}.ns-review-heading{margin-top:32px}.ns-footer{color:var(--muted-foreground);margin:36px 0;font-size:.875rem;line-height:1.6}.ns-footer a{text-decoration:underline}.ns a:where(:not(.topbar *)){color:var(--primary)}.ns-rehearsal-card{background:var(--primary)}.ns-rehearsal-card button{background:var(--accent);color:var(--foreground);flex-shrink:0}.ns-past ul{margin:12px 0 0;padding:0;list-style:none}.ns-past li{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.ns-intro ul{gap:8px;margin:16px 0;padding-left:20px;line-height:1.6;display:grid}.ns-notice{border-left:4px solid var(--accent);background:var(--secondary);border-radius:6px;padding:12px 16px}.ns-paper{margin:28px 0}.ns-paper-bar{z-index:5;background:var(--foreground);color:var(--background);border-radius:0 0 14px 14px;flex-wrap:wrap;align-items:center;gap:16px;padding:10px 16px;display:flex;position:sticky;top:0}.ns-paper-bar strong{font-variant-numeric:tabular-nums;font-size:1.4rem}.ns-paper-bar span{flex:1}.ns-paper-bar button{background:var(--accent);color:var(--foreground)}.ns-confirm{z-index:5;background:var(--card);border:2px solid var(--foreground);border-radius:14px;margin-top:12px;padding:16px;position:sticky;top:72px}.ns-confirm .ns-actions{justify-content:flex-end;margin-top:8px}.ns-questions{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:16px 0;padding:0;list-style:none;display:grid}.ns-questions li{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 8.5em;align-items:center;gap:12px;padding:8px 0;display:grid}.ns .ns-questions label{font-variant-numeric:tabular-nums;gap:10px;width:auto;margin:0;font-size:1.1rem;font-weight:600;display:flex}.ns-q-number{min-width:2.2em;color:var(--muted-foreground)}.ns .ns-questions input{flex:none;padding:8px 10px;font-size:1.1rem}.ns-starred label{color:var(--primary)}.ns-star-icon{vertical-align:-2px;display:inline}.ns-filters{border:0;flex-wrap:wrap;gap:8px;margin:24px 0 8px;padding:0;display:flex}.ns-filters button{min-height:40px;padding:8px 12px}.ns-review-correct summary{color:var(--club-green)}.ns-review-wrong summary,.ns-review-skipped summary{color:var(--destructive)}.ns-review-unreached summary{color:var(--muted-foreground)}.ns details .ns-secondary{min-height:40px}@media (max-width:850px){.ns-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ns-challenge{flex-wrap:wrap}.ns-challenge>div{min-width:min(220px,100%)}.ns-challenge button{flex-basis:100%}}@media (max-width:560px){.ns{padding:16px}.ns-grid{grid-template-columns:1fr}.ns-heading>svg{display:none}.ns-work{padding:20px}.ns-challenge{padding:22px}.ns-stats{gap:20px}.ns form button{width:100%}.ns-try>div{flex-direction:column}.ns-section-title{align-items:flex-start}.ns-questions{grid-template-columns:1fr}.ns-questions li{grid-template-columns:minmax(0,1fr) 7em}.ns-paper-bar{gap:8px 12px;padding:8px 12px}.ns-paper-bar span{font-size:.875rem}.ns-paper-bar button{width:auto;min-height:40px}}.ns-next{background:var(--card);border:1px solid var(--border);border-left:6px solid var(--primary);border-radius:20px;flex-direction:column;align-items:flex-start;gap:12px;padding:28px;display:flex}.ns-next h2{margin:0;font-size:1.6rem}.ns-next p{margin:0}.ns-today-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.ns-today-grid .ns-card{gap:8px}.ns-today-grid h3{margin:0}.ns-keys{border:0;flex-wrap:wrap;gap:8px;min-width:0;margin:10px 0 0;padding:0;display:flex}.ns .ns-keys button{width:auto;min-width:48px;min-height:44px;font-size:1.1rem}.ns-shelf{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:12px 0 4px;padding:0;list-style:none;display:grid}.ns-shelf li{border:1px dashed var(--border);color:var(--muted-foreground);border-radius:14px;flex-direction:column;gap:4px;padding:14px;display:flex}.ns-shelf li.is-earned{border-style:solid;border-color:var(--primary);background:var(--secondary);color:var(--foreground)}.ns-shelf span,.ns-shelf small{font-size:.875rem}.ns-report{margin-top:24px}@media (max-width:850px){.ns-today-grid{grid-template-columns:1fr}}@media (max-width:560px){.ns-next{padding:20px}}.ns .ns-read-open{margin-bottom:10px}.ns-lesson{max-width:760px;scroll-margin-top:16px}.ns .ns-lesson-back{gap:8px;margin:8px 0 0}.ns-lesson h2{margin:24px 0 8px;font-size:1.75rem}.ns-lesson h2:focus{outline:none}.ns-lesson h3{margin:28px 0 10px;font-size:1.1rem}.ns-lesson-rule{margin:0;font-size:1.1rem;line-height:1.6}.ns-lesson-facts{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.ns-lesson-facts li{background:var(--secondary);border-radius:10px;padding:8px 10px;font-size:.9rem;font-weight:650;line-height:1.4}.ns-lesson-worked{margin:0;padding:0;list-style:none}.ns-lesson-kind{color:var(--muted-foreground);font-size:.875rem;font-weight:700;display:block}.ns-lesson-worked summary{list-style:none}.ns-lesson-worked summary::-webkit-details-marker{display:none}.ns-lesson-question:before{content:"▸ ";content:"▸ " / "";color:var(--primary)}.ns-lesson-worked details[open] .ns-lesson-question:before{content:"▾ ";content:"▾ " / ""}.ns-lesson-worked details ol{margin:12px 0 0;padding-left:24px;line-height:1.7;list-style:decimal}.ns-lesson-worked details li+li{margin-top:6px}.ns-lesson-mistake{margin:28px 0 0;line-height:1.6}.ns-best{margin:0 0 8px;font-weight:600}.ns-result-next{border:1px solid var(--border);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin:16px 0;padding:16px;display:flex}.ns-result-next p{margin:0}
