:root{--pencil: #1b222b;--graphite: #23303f;--eraser: #56606c;--ruling: #d9dde2;--stroke: #9aa3ad;--sheet: #ffffff;--tray: #f6f4ee;--redpen: #c22a22;--hilite: #fff3a6;--hilite-full: #ffe766;--colw: 44rem;--beat: clamp(2.75rem, 6vw, 4rem);font-size:100%}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--sheet);color:var(--pencil);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:1.125rem;line-height:1.6;display:flex;flex-direction:column;min-height:100vh}body>main{flex:1 0 auto;width:100%}[hidden]{display:none!important}a{color:var(--graphite);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{color:var(--redpen)}:focus-visible{outline:3px solid var(--graphite);outline-offset:2px;border-radius:4px}button{font:inherit;color:inherit}.l-top{border-bottom:1px solid var(--ruling);background:var(--sheet)}.l-top__in{max-width:var(--colw);margin:0 auto;padding:.7rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.75rem}.u-brand{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--pencil)}.u-brand:hover{color:var(--pencil)}.u-brand__lockup{display:block;height:40px;width:auto}.u-toplink{font-size:.95rem;white-space:nowrap}.u-toplink__short{display:none}@media(max-width:420px){.u-toplink__long{display:none}.u-toplink__short{display:inline}.u-brand__lockup{height:34px}}.l-main{display:block}.c-head,.c-grader{max-width:var(--colw);margin:0 auto;padding:0 1.25rem}.c-head{padding-top:clamp(1.75rem,5vw,3rem)}.l-main>.c-head,.l-main>.c-grader{position:relative}.l-main>.c-head:before{content:"";position:absolute;inset:0 calc(50% - 50vw);z-index:-1;background:var(--tray)}.l-main>.c-grader:before{content:"";position:absolute;inset:0 calc(50% - 50vw);z-index:-1;background:var(--tray)}.l-main{isolation:isolate;overflow-x:clip}h1{font-size:clamp(1.6rem,1.1rem + 2.2vw,2.35rem);line-height:1.18;font-weight:700;letter-spacing:-.015em;margin:0 0 .5rem;text-wrap:balance}.c-head__sub{margin:0;color:var(--eraser);font-size:1.05rem;text-wrap:balance}.c-grader{padding-top:1.5rem;padding-bottom:2.25rem}.c-grader__fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem}.c-field__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:3.25rem;margin-bottom:.35rem}.c-field__head label{font-weight:600;font-size:1.05rem}.c-field__mode{font-size:.9rem;text-align:right}.c-step{display:grid;grid-template-columns:3rem minmax(0,1fr) 3rem;gap:.4rem}.c-step__btn{height:3.25rem;border:1.5px solid var(--stroke);border-radius:10px;background:var(--sheet);cursor:pointer;font-size:1.5rem;line-height:1;display:grid;place-items:center;touch-action:manipulation}.c-step__btn:hover{border-color:var(--graphite);background:#fbfbfa}.c-step__btn:active{background:var(--hilite)}.c-step__in{width:100%;height:3.25rem;border:1.5px solid var(--stroke);border-radius:10px;background:var(--sheet);font:inherit;font-size:1.5rem;font-weight:600;text-align:center;color:var(--pencil);padding:0 .5rem;-moz-appearance:textfield;appearance:textfield}.c-step__in::-webkit-outer-spin-button,.c-step__in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.c-step__in::placeholder{color:#8a929c;font-weight:400}.c-step__in:focus{border-color:var(--graphite);outline:none;box-shadow:0 0 0 3px #23303f40}.is-bad,.c-step__in.is-bad{border-color:var(--redpen)!important;box-shadow:0 0 0 2px #c22a2233}.c-grader__reset{margin:.5rem 0 0;text-align:right}.u-quiet{background:none;border:0;padding:.35rem .1rem;cursor:pointer;color:var(--graphite);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;font-size:.95rem;min-height:2.75rem}.u-quiet:hover{color:var(--redpen)}.c-seg{display:inline-flex;align-items:center;border:1.5px solid var(--stroke);border-radius:999px;padding:2px;background:var(--sheet)}.c-seg__opt{border:0;background:none;border-radius:999px;padding:.4rem .95rem;cursor:pointer;font-size:.95rem;min-height:2.75rem}.c-seg__opt[aria-checked=true]{background:var(--graphite);color:#fff}.c-seg__opt[aria-checked=false]:hover{background:var(--tray)}.c-answer{display:flex;flex-direction:column;min-height:8.5rem;margin-top:.75rem;padding:1rem 0 .5rem;border-top:1px solid var(--ruling);border-radius:0}.c-answer__hint{display:block;margin:auto 0;color:var(--eraser);font-size:1.25rem}.c-answer__main{display:flex;align-items:baseline;gap:.6em;font-size:3rem;line-height:1.1;font-weight:700;letter-spacing:-.02em}.c-answer__letter{color:var(--redpen)}.c-answer__frac{display:block;color:var(--eraser);font-size:1rem;margin-top:.3rem}.c-answer__miss{display:block;font-size:1.05rem;font-weight:500;margin-top:.2rem;text-wrap:pretty}.c-answer.is-new .c-answer__main{animation:c-mark .7s ease-out}@keyframes c-mark{0%{background:var(--hilite-full)}to{background:transparent}}@media(prefers-reduced-motion:reduce){.c-answer.is-new .c-answer__main{animation:none}}.c-scale{margin-top:.75rem;padding-top:.9rem;border-top:1px solid var(--ruling)}.c-scale__line{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 1.25rem}.c-scale__sum{flex:1 1 24rem}.c-scale__open{flex:none}.c-scale__row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin-bottom:.9rem}.c-scale__label{font-weight:600;font-size:1rem}.c-scale__sum{margin:0;font-size:.95rem;color:var(--eraser)}.c-cuts{margin-top:.9rem}.c-cuts__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.6rem}.c-cut{display:flex;flex-direction:column;gap:.15rem}.c-cut label{font-size:.85rem;color:var(--eraser)}.c-cut input{width:100%;height:2.75rem;border:1.5px solid var(--stroke);border-radius:8px;font:inherit;font-size:1rem;text-align:center;background:var(--sheet)}.c-cut input:focus{border-color:var(--graphite);outline:none;box-shadow:0 0 0 3px #23303f40}.c-cuts__note{margin:.6rem 0 0;font-size:.95rem;color:var(--eraser)}.c-cuts__err{margin:.3rem 0 0;color:var(--redpen);font-size:.95rem;font-weight:600}.c-chart,.c-text{max-width:var(--colw);margin:var(--beat) auto 0;padding:0 1.25rem}.c-chart__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.75rem}h2{font-size:1.5rem;line-height:1.25;font-weight:650;letter-spacing:-.01em;margin:0}.c-text h2{margin-bottom:.9rem}h3{font-size:1.15rem;line-height:1.35;font-weight:600;margin:1.6rem 0 .4rem}.c-chart__acts{display:flex;gap:.5rem}.c-act{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;border:1.5px solid var(--graphite);border-radius:8px;background:var(--sheet);color:var(--graphite);cursor:pointer;font-size:.95rem;font-weight:500;text-decoration:none}.c-act:hover,.c-act--go{background:var(--graphite);color:#fff}.c-chart__link{width:100%;margin-bottom:.75rem;height:2.75rem;padding:0 .75rem;border:1.5px solid var(--stroke);border-radius:8px;font:inherit;font-size:.95rem}.c-chart__wrap{overflow-x:auto}.c-chart__wrap.is-long{max-height:60vh;overflow-y:auto;border:1px solid var(--ruling);border-radius:8px}.c-table{width:100%;border-collapse:collapse;font-size:1rem}.c-table caption{caption-side:top;text-align:left;color:var(--eraser);font-size:.95rem;padding-bottom:.5rem}.c-table th{text-align:right;font-weight:600;font-size:.95rem;padding:.55rem .75rem;border-bottom:2px solid var(--graphite);background:var(--sheet)}.c-table td{text-align:right;padding:.45rem .75rem;border-bottom:1px solid var(--ruling)}.c-table th:first-child,.c-table td:first-child{text-align:left}.c-table--cuts{width:auto;min-width:14rem;margin-bottom:1.25rem}.c-table--chart thead th{position:sticky;top:0;z-index:1}.c-table--chart td:last-child{font-weight:600}.c-table--chart tr[aria-current=true] td{background:var(--hilite);font-weight:700}.u-scroll{overflow-x:auto}.c-text p{margin:0 0 .9rem;max-width:62ch}.c-text__src{font-size:.95rem;color:var(--eraser)}.c-steps{margin:0;padding:0;list-style:none;counter-reset:s;display:grid;gap:1rem}.c-steps li{counter-increment:s;position:relative;padding-left:2.75rem;max-width:62ch}.c-steps li:before{content:counter(s);position:absolute;left:0;top:0;width:1.9rem;height:1.9rem;border-radius:50%;border:1.5px solid var(--graphite);display:grid;place-items:center;font-size:.95rem;font-weight:600;line-height:1}.c-scales{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem;align-items:start}.c-faq h3:first-of-type{margin-top:.5rem}.l-main--plain{max-width:var(--colw);margin:0 auto;padding:clamp(1.75rem,5vw,3rem) 1.25rem 0}.c-plain h2{font-size:1.25rem;margin:2rem 0 .4rem}.c-plain p{margin:0 0 .9rem;max-width:62ch}.c-plain .u-scroll{margin:.5rem 0 1rem}.l-foot{margin-top:calc(var(--beat) * 1.25);border-top:1px solid var(--ruling);background:var(--tray);font-size:.875rem}.l-foot__in{max-width:var(--colw);margin:0 auto;padding:2rem 1.25rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem 3rem}.l-foot__about{max-width:24rem}.l-foot__about p{margin:.6rem 0 0;color:var(--eraser)}.u-brand--foot{font-size:.95rem;font-weight:600}.u-brand__mark{display:block;width:28px;height:28px}.l-foot__links ul{list-style:none;margin:0;padding:0;columns:2;column-gap:2.5rem}.l-foot__links li{padding:.35rem 0;break-inside:avoid}.l-foot__links a{text-decoration:none}.l-foot__links a:hover{text-decoration:underline}.l-foot__legal{background:var(--graphite);color:#e9ecef}.l-foot__legal p{max-width:var(--colw);margin:0 auto;padding:.75rem 1.25rem;font-size:.8125rem}@media(max-width:640px){.c-grader__fields{grid-template-columns:1fr;gap:1.25rem}.c-answer{min-height:7.5rem}.c-answer__main{font-size:2.5rem}.c-cuts__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.c-scales{grid-template-columns:1fr}.c-table th,.c-table td{padding-left:.5rem;padding-right:.5rem}.u-brand__lockup{height:34px}}@media print{.l-top,.l-foot,.c-head__sub,.c-grader__fields,.c-grader__reset,.c-answer,.c-scale__open,.c-field__mode,.c-cuts,.c-chart__acts,.c-chart__link,.c-text{display:none!important}body{font-size:11pt}.l-main>.c-head:before,.l-main>.c-grader:before{display:none}.c-head,.c-grader,.c-chart{padding:0;margin:0;max-width:none}h1{font-size:16pt;margin-bottom:4pt}.c-grader{padding:0 0 6pt}.c-scale{border:0;margin:0;padding:0}.c-scale__sum{color:#000;font-size:10pt}.c-chart{margin-top:6pt}.c-chart__head h2{font-size:13pt}.c-chart__wrap.is-long{max-height:none;overflow:visible;border:0}.c-table td,.c-table th{padding:2pt 6pt;font-size:10pt}.c-table--chart tr[aria-current=true] td{background:none}}
