:root[data-theme="light"]{--bg:#e4e7f5;--panel:#f3f5fe;--ink:#292b31;--muted:#595d6c;--faint:#75798c;--line:#cfd3e5;--line-strong:#b2b6ca;--accent:#796cbf;--accent-text:#5d5294;--accent-solid:#5d5294;--on-accent:#ffffff;--tag-bg:#cfd3e5;--tag-ink:#292b31;--tag-accent-bg:#e7e5fe;--tag-accent-ink:#423a6a;--ok:#2f7d5f;--ok-bg:#e2efe9;--ng:#a8324a;--ng-bg:#f6e4e8;--band:#f3f5fe;--shadow-sm:0 0 0 1px #cfd3e5;--shadow-md:0 0 0 1px #cfd3e5,0 6px 18px rgba(41,43,49,.10);--scrim-a:rgba(243,245,254,.58);--scrim-b:rgba(243,245,254,.88);--grid-line:rgba(41,43,49,.08);--glow-b:#b5abfc;--art-blend:normal;--art-opacity:.9}:root{--radius:8px;--radius-lg:14px;--font:"Noto Sans JP","Hiragino Kaku Gothic ProN",system-ui,sans-serif}:root,:root[data-theme="dark"]{--bg:#161826;--panel:#232532;--ink:#e9e9ed;--muted:#b2b6ca;--faint:#9397ab;--line:#3f424d;--line-strong:#595d6c;--accent:#9184d9;--accent-text:#d2cefd;--accent-solid:#9184d9;--on-accent:#161826;--tag-bg:#3f424d;--tag-ink:#f3f5fe;--tag-accent-bg:#423a6a;--tag-accent-ink:#f5f4ff;--ok:#6fd3a3;--ok-bg:#17302a;--ng:#f08a9b;--ng-bg:#33202a;--band:transparent;--shadow-sm:0 0 0 1px #3f424d;--shadow-md:0 0 0 1px #595d6c,0 6px 18px rgba(0,0,0,.55);--scrim-a:rgba(22,24,38,.42);--scrim-b:rgba(22,24,38,.86);--grid-line:rgba(233,233,237,.06);--glow-b:#353b80;--art-blend:lighten;--art-opacity:.85}*{box-sizing:border-box}[hidden]{display:none!important}html{font-size:16px}html[data-fs="xsmall"]{font-size:12px}html[data-fs="small"]{font-size:14px}html[data-fs="large"]{font-size:18px}html[data-fs="xlarge"]{font-size:20px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);line-height:1.75;font-size:1rem}.wrap{max-width:820px;margin:0 auto;padding:20px 16px 72px}header.site .wrap,footer.site .wrap{max-width:1120px}a{color:var(--accent)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--accent) 30%,transparent)}header.site{border-bottom:1px solid var(--line);background:var(--bg)}header.site .wrap{padding:18px 24px;display:flex;gap:24px;align-items:center;flex-wrap:wrap}.brand{display:inline-flex;align-items:center;gap:2px;text-decoration:none;color:var(--ink);font-size:1.125rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap;flex:none}.lockup{display:flex;align-items:center;gap:11px;min-width:0;margin-right:auto}.examtag{position:relative;padding-left:12px;color:var(--ink);font-size:1.0625rem;font-weight:700;letter-spacing:-.01em;line-height:1.2;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.examtag::before{content:"";position:absolute;left:0;top:50%;width:1px;height:19px;margin-top:-9px;background:var(--line)}.examtag:hover{color:var(--accent)}.brand em{font-style:normal;color:var(--accent)}.logo{display:block;height:30px;width:auto}.navlinks{display:flex;gap:20px;font-size:0.8125rem}.navlinks a{color:var(--muted);text-decoration:none;white-space:nowrap}.navlinks a:hover{color:var(--accent)}.prefs{display:flex;gap:8px;align-items:center}.theme{font:inherit;font-size:0.75rem;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:6px 8px;cursor:pointer}.themebtn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;color:var(--muted);background:none;border:1px solid var(--line);border-radius:var(--radius);cursor:pointer}.themebtn:hover{color:var(--accent);background:color-mix(in srgb,var(--ink) 7%,transparent)}.themebtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.only-light{display:none}.only-dark{display:block}:root[data-theme="light"] .only-light{display:block}:root[data-theme="light"] .only-dark{display:none}.crumb{font-size:0.8125rem;color:var(--muted);margin-bottom:14px}.crumb a{color:var(--muted)}h1,h2,h3{font-weight:700;letter-spacing:-.02em;line-height:1.25}h1{font-size:2rem;font-weight:700;margin:0 0 8px;text-wrap:balance}h2{font-size:1.375rem;margin:30px 0 10px}h3{font-size:1.0625rem;margin:22px 0 8px}.lede{color:var(--muted);font-size:0.9375rem;margin:0 0 22px;text-wrap:pretty}.card{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:18px;margin-bottom:12px}.grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.tile{display:flex;flex-direction:column;background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:14px 16px;color:inherit}.tile .t{font-weight:700;font-size:1.0625rem;letter-spacing:-.01em;color:inherit;text-decoration:none;display:block}.tile .t:hover{text-decoration:underline}.tile .m{color:var(--faint);font-size:0.8125rem;margin-top:4px}.tile .track{display:flex;height:5px;margin-top:7px;border-radius:3px;overflow:hidden;background:color-mix(in srgb,var(--ink) 12%,var(--panel))}.tile .track i{display:block;height:100%}.tile .track .ok{background:var(--ok)}.tile .track .ng{background:var(--ng)}.tile .go{margin-top:11px;padding-top:11px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:7px;font-size:0.8125rem;color:var(--muted)}.tile .go label{display:flex;gap:6px;align-items:center;cursor:pointer}.tile .go select{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:3px 6px;cursor:pointer;margin-left:auto}.tile .btn.start{margin:3px 0 0;min-width:0;width:100%;padding:9px 12px;font-size:0.875rem}.qlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.qlist li{border-bottom:1px solid var(--line)}.qlist a{display:flex;gap:12px;align-items:baseline;padding:9px 4px;text-decoration:none;color:inherit;font-size:0.875rem;border-radius:6px}.qlist a:hover{background:color-mix(in srgb,var(--ink) 5%,var(--bg))}.qlist .n{color:var(--muted);font-size:0.8125rem;white-space:nowrap;flex:0 0 auto;min-width:7em}.qlist .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:560px){.qlist a{display:block;padding:10px 4px}.qlist .n{display:block;margin-bottom:2px}.qlist .t{display:block}}.book{display:block;background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:14px 16px;text-decoration:none;color:inherit;border:1px solid var(--line)}.book:hover{background:color-mix(in srgb,var(--ink) 4%,var(--panel))}.book .t{font-weight:700;font-size:1rem;letter-spacing:-.01em}.book .t::after{content:" ↗";color:var(--faint);font-size:0.8125rem}.book .m{color:var(--faint);font-size:0.8125rem;margin-top:4px}.affiliate{font-size:0.75rem;color:var(--faint);margin:10px 0 0}.badge{display:inline-block;font-size:0.75rem;font-weight:700;letter-spacing:.04em;color:var(--tag-accent-ink);background:var(--tag-accent-bg);border-radius:6px;padding:2px 9px;margin-left:6px}.src{font-size:0.75rem;color:var(--faint);margin-top:14px;padding-top:10px;border-top:1px solid var(--line)}.src a{color:inherit;text-decoration:none}.src a:hover .src-go,.src a:focus-visible .src-go{text-decoration:underline}.src .src-go{margin-left:6px;white-space:nowrap;color:var(--accent-text)}.src .src-go::after{content:" ↗"}footer.site{border-top:1px solid var(--line);margin-top:40px;background:var(--band)}footer.site .wrap{padding:26px 24px;font-size:0.75rem;color:var(--faint)}footer.site nav{margin-bottom:10px;display:flex;gap:20px;flex-wrap:wrap}footer.site nav a{color:var(--muted);text-decoration:none}footer.site nav a:hover{color:var(--accent)}footer.site p{margin:0;line-height:1.7}.prose h2{font-size:1.125rem;margin:26px 0 8px}.prose p{margin:0 0 12px;font-size:0.9375rem}.prose table.info{width:100%;border-collapse:collapse;font-size:0.9375rem;margin:0 0 12px}.prose table.info th,.prose table.info td{text-align:left;vertical-align:top;padding:8px 10px;border-bottom:1px solid var(--line);font-weight:400}.prose table.info th{width:9em;color:var(--muted);white-space:nowrap}.bar{display:flex;align-items:center;gap:10px;font-size:0.8125rem;color:var(--muted);margin-bottom:8px}.bar .pos{font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink)}.bar .track{flex:1;height:10px;background:var(--line);border-radius:999px;overflow:hidden}.bar .fill{display:block;height:100%;background:var(--accent);width:0;border-radius:999px;transition:width .25s ease}.bar .rate{font-variant-numeric:tabular-nums}.score{display:flex;gap:14px;flex-wrap:wrap;font-size:0.8125rem;color:var(--muted);margin:0 0 14px}.score b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.score .rate.pass{color:var(--ok)}.score .rate.fail{color:var(--ng)}.stem{font-size:1.0625rem;margin:0 0 16px;text-wrap:pretty}.stem .ln{display:block;white-space:pre-wrap}.stem .ln.item{padding-left:1.6em;text-indent:-1.6em}.stem .ln.gap{height:0.55em}.figs a.figlink{display:inline-block;max-width:100%;cursor:zoom-in}.figs.under{margin:6px 0 0 2.2em}.choices li:has(.figs.under) .strike-btn{top:24px}.figs img{max-width:100%;border:1px solid var(--line);border-radius:6px;background:#fff;margin-bottom:10px}.choices{list-style:none;padding:0;margin:0}.choices li{margin-bottom:8px;position:relative}.choice{width:100%;text-align:left;display:flex;gap:10px;align-items:flex-start;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 42px 12px 14px;font:inherit;color:inherit;cursor:pointer}.choice:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.choice:disabled{cursor:default}.choice .n{flex:0 0 auto;font-variant-numeric:tabular-nums;color:var(--faint)}.choice .n + span{white-space:pre-line}.choice.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.choice.correct{border-color:var(--ok);background:var(--ok-bg)}.choice.wrong{border-color:var(--ng);background:var(--ng-bg)}.strike-btn{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--faint);font:inherit;font-size:0.9375rem;line-height:1;cursor:pointer;opacity:.4;transition:opacity .12s,background .12s,color .12s}.choices li:hover .strike-btn,.strike-btn:focus-visible{opacity:1}.strike-btn:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.choices li.struck .choice{opacity:.45}.choices li.struck .choice .n,.choices li.struck .choice span + span{text-decoration:line-through;text-decoration-thickness:1px}.choices li.struck .strike-btn{opacity:1;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.strike-note{font-size:0.8125rem;color:var(--faint);margin:10px 0 0}.hint{font-size:0.8125rem;color:var(--faint);margin:12px 0 0}.skip{display:block;text-align:center;margin:14px auto 0;color:var(--muted);background:none;border:0;font:inherit;font-size:0.875rem;text-decoration:underline;cursor:pointer}.skip:hover{color:var(--ink)}dialog.modal{border:0;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:var(--panel);color:var(--ink);padding:22px 24px;max-width:420px;width:calc(100% - 32px);font:inherit}dialog.modal::backdrop{background:rgba(22,24,38,.5)}dialog.modal h2{margin:0 0 10px;font-size:1.125rem}dialog.modal p{margin:0 0 18px;font-size:0.875rem;color:var(--muted)}dialog.modal .actions{margin:0;justify-content:flex-end}.choice.figure{align-items:center}.choice.bare{justify-content:center;min-height:44px}.choice.bare .n{margin:0;font-size:1rem}.figs img.cblock{background:#fff;border-radius:6px;padding:6px}.choice.figure img{max-width:100%;height:auto;background:#fff;border-radius:6px;padding:4px}@media (max-width:600px){.choice.figure img{width:100%}}.pass-line{margin-top:10px;font-size:0.875rem;white-space:pre-line;line-height:1.75}.pass-line b{font-weight:700}.ledebar{display:flex;align-items:baseline;justify-content:space-between;gap:10px 20px;flex-wrap:wrap;margin-bottom:22px}.ledebar .lede{margin-bottom:0}.clock{display:inline-flex;align-items:center;gap:6px;font-size:1.1875rem;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.clock svg{width:1em;height:1em;flex:0 0 auto;opacity:.8}.clock b{font-weight:inherit}.donut{display:flex;justify-content:center;margin:4px 0 10px}.donut svg{display:block;width:190px;height:190px}.donut .rail{stroke:var(--line-strong);fill:none}.donut .val{fill:none;stroke-linecap:round;transition:stroke-dashoffset .6s ease}.donut .val.pass{stroke:var(--ok)}.donut .val.fail{stroke:var(--ng)}.donut .val.plain{stroke:var(--accent)}.donut .line{stroke:var(--ink);stroke-width:2}.donut .cap{fill:var(--faint);font-size:11px}.donut .num{fill:var(--ink);font-size:44px;font-weight:700;font-variant-numeric:tabular-nums}.donut .unit{fill:var(--muted);font-size:15px}@media (prefers-reduced-motion:reduce){.donut .val{transition:none}}.timing{margin:6px 0 0;font-size:0.875rem;color:var(--muted);font-variant-numeric:tabular-nums}.pass-line.ok{color:var(--ok)}.pass-line.ng{color:var(--ng)}.pass-line.none{color:var(--faint)}.breakdown{margin-top:14px;font-size:0.875rem;width:100%;border-collapse:collapse}.breakdown th,.breakdown td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);font-weight:400}.breakdown th{color:var(--faint);font-size:0.8125rem}.breakdown td.num{text-align:right;font-variant-numeric:tabular-nums}.breakdown tr.below td{color:var(--ng)}.verdict{margin:34px 0 0;padding:16px 18px;border-radius:var(--radius);scroll-margin-top:12px;border:2px solid var(--line);background:var(--panel);scroll-margin-top:64px}.verdict.ok{border-color:var(--ok);background:var(--ok-bg)}.verdict.ng{border-color:var(--ng);background:var(--ng-bg)}.verdict .head{font-weight:700;margin-bottom:8px}.verdict.ok .head{color:var(--ok)}.verdict.ng .head{color:var(--ng)}.verdict .why{white-space:pre-wrap}.verdict details.more{margin-top:10px}.verdict details.more>summary{cursor:pointer;font-weight:700;font-size:0.9375rem;color:var(--accent);list-style:none;padding:6px 0}.verdict details.more>summary::-webkit-details-marker{display:none}.verdict details.more>summary::after{content:" ▾"}.verdict details.more[open]>summary::after{content:" ▴"}.verdict details.more>summary .open-label{display:none}.verdict details.more[open]>summary .shut-label{display:none}.verdict details.more[open]>summary .open-label{display:inline}.verdict details.more .why.rest{margin-top:4px}.verdict .pending{color:var(--muted);font-size:0.875rem;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--accent-solid);color:var(--on-accent);border:1px solid var(--accent-solid);border-radius:var(--radius);padding:11px 22px;font:inherit;font-weight:700;line-height:1.3;cursor:pointer;text-decoration:none;white-space:nowrap}.btn:hover{background:color-mix(in srgb,var(--ink) 14%,var(--accent-solid));border-color:color-mix(in srgb,var(--ink) 14%,var(--accent-solid))}.btn:active{background:color-mix(in srgb,var(--ink) 24%,var(--accent-solid));border-color:color-mix(in srgb,var(--ink) 24%,var(--accent-solid))}.btn:disabled{opacity:.45;cursor:default}.btn:disabled:hover{background:var(--accent-solid);border-color:var(--accent-solid)}.btn.ghost{background:transparent;color:var(--muted);border-color:var(--line-strong)}.btn.ghost:hover{background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--ink);border-color:var(--line-strong)}.btn.wide{min-width:260px;max-width:100%;padding:15px 30px;font-size:1rem}.btn.start{display:flex;margin:6px auto 0;min-width:260px;padding:15px 30px;font-size:1rem}.actions{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}#quiz .actions{justify-content:center}.opts{display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-size:0.875rem;color:var(--muted);margin-bottom:16px}.opts label{display:flex;gap:6px;align-items:center;cursor:pointer}.opts-note{font-size:0.75rem;color:var(--faint);margin:0 0 14px;line-height:1.7}.opts select{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:4px 8px;cursor:pointer}.notice{font-size:0.8125rem;line-height:1.8;color:var(--muted);background:var(--panel);border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;padding:12px 16px;margin:0 0 22px;text-wrap:pretty}.about{margin:0 0 26px}.about p{margin:0 0 12px;font-size:0.875rem;line-height:1.9;color:var(--muted);text-wrap:pretty}.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:16px 0 0;font-size:0.84375rem;line-height:1.8}.facts dt{color:var(--faint);white-space:nowrap}.facts dd{margin:0;color:var(--muted)}.facts-table{width:100%;border-collapse:collapse;margin:0 0 26px;font-size:0.875rem}.facts-table th,.facts-table td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line)}.facts-table thead th{color:var(--faint);font-weight:400;font-size:0.8125rem}.facts-table tfoot th{color:var(--muted);font-weight:400}.facts-table .num{text-align:right;white-space:nowrap}.facts-table a{color:var(--ink)}@media(max-width:560px){.facts{grid-template-columns:1fr;gap:2px}.facts dt{margin-top:8px}}.report{text-align:center;margin:16px 0 0;font-size:0.8125rem}.report a{color:var(--muted)}.report a:hover{color:var(--accent)}.back-result{margin:0 0 16px}.actions + .back-result{margin:30px 0 0}.contact{display:flex;flex-direction:column;gap:18px;padding:22px}.contact .field{display:flex;flex-direction:column;gap:6px}.contact fieldset.field{border:0;margin:0;padding:0;gap:10px}.contact legend{padding:0;font-size:0.8125rem;color:var(--muted);margin-bottom:4px}.contact .radio{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:0.9375rem;color:var(--ink)}.contact .radio input{width:auto;accent-color:var(--accent);margin:0;padding:0;border:0;background:none}.contact label{font-size:0.8125rem;color:var(--muted)}.contact select,.contact input,.contact textarea{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius);padding:10px 12px;width:100%}.contact textarea{resize:vertical;line-height:1.8}.contact select:focus-visible,.contact input:focus-visible,.contact textarea:focus-visible{border-color:var(--accent);outline-offset:0}.contact .hint{margin:0;font-size:0.75rem;color:var(--faint)}.contact .qid{margin:0;font-size:0.875rem;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.contact .qid code{font-size:0.8125rem;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:3px 8px}.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact .actions{margin:0;justify-content:center}.result{margin:0;padding:12px 14px;border-radius:var(--radius);font-size:0.875rem;text-align:center}.result.ok{color:var(--ok);background:var(--ok-bg)}.result.ng{color:var(--ng);background:var(--ng-bg)}.warn{color:var(--ng);box-shadow:0 0 0 1px var(--ng);margin:0 0 16px}.ad{margin:40px 0 16px;padding-top:14px;border-top:1px solid var(--line)}.ad-label{display:block;font-size:0.6875rem;color:var(--faint);margin-bottom:6px;letter-spacing:.04em}.ad + .actions{margin-top:26px}.result .big{font-size:2.125rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.review{margin-top:18px}.review a{display:flex;gap:8px;align-items:baseline;text-align:left;padding:8px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;font-size:0.875rem}.review .mk{font-weight:700;flex:none}.review .mk.ok{color:var(--ok)}.review .mk.ng{color:var(--ng)}.wrap.home{max-width:1120px;padding:0 0 0}.home section{padding-left:48px;padding-right:48px}.hero{position:relative;padding-top:96px;padding-bottom:84px}.hero-art,.hero-scrim,.hero-grid,.hero-fx{position:absolute;inset:0;pointer-events:none;overflow:hidden}.hero-art > div{position:absolute;inset:-6%;animation:kn-kenburns 26s ease-in-out infinite alternate;will-change:transform}.hero-art img{width:100%;height:100%;object-fit:cover;opacity:var(--art-opacity);mix-blend-mode:var(--art-blend);background-color:transparent}:root[data-theme="light"] .hero-art img{visibility:hidden}:root[data-theme="light"] .hero-art > div{background-image:url(/hero-light.webp);background-size:cover;background-position:center;opacity:var(--art-opacity);mix-blend-mode:var(--art-blend)}.hero-scrim{background:radial-gradient(75% 95% at 50% 45%,var(--scrim-a),var(--scrim-b) 100%)}.hero-grid > div{position:absolute;inset:-20% -10%;animation:kn-grid 9s linear infinite;background-image:repeating-linear-gradient(to right,var(--grid-line) 0 1px,transparent 1px 64px),repeating-linear-gradient(to bottom,var(--grid-line) 0 1px,transparent 1px 64px);-webkit-mask-image:radial-gradient(65% 85% at 50% 45%,#000,transparent 78%);mask-image:radial-gradient(65% 85% at 50% 45%,#000,transparent 78%)}.glow-a,.glow-b{position:absolute;border-radius:50%}.glow-a{left:-8%;top:-30%;width:62%;height:150%;filter:blur(60px);background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 34%,transparent),transparent 72%);animation:kn-glow-a 16s ease-in-out infinite;will-change:transform}.glow-b{right:-6%;bottom:-40%;width:48%;height:140%;filter:blur(70px);background:radial-gradient(closest-side,var(--glow-b),transparent 70%);animation:kn-glow-b 21s ease-in-out infinite;will-change:transform}.scan{position:absolute;left:0;right:0;top:-60px;height:1px;opacity:.5;background:linear-gradient(to right,transparent,var(--accent),transparent);animation:kn-scan 11s linear infinite}@keyframes kn-kenburns{0%{transform:scale(1.06) translate3d(0,0,0)}100%{transform:scale(1.16) translate3d(-2%,-1.5%,0)}}@keyframes kn-grid{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-64px,0)}}@keyframes kn-glow-a{0%{transform:translate3d(0,0,0) scale(1);opacity:.75}50%{transform:translate3d(14%,8%,0) scale(1.18);opacity:1}100%{transform:translate3d(0,0,0) scale(1);opacity:.75}}@keyframes kn-glow-b{0%{transform:translate3d(0,0,0) scale(1.1);opacity:.5}50%{transform:translate3d(-12%,-10%,0) scale(.92);opacity:.85}100%{transform:translate3d(0,0,0) scale(1.1);opacity:.5}}@keyframes kn-scan{0%{transform:translateY(0)}100%{transform:translateY(320px)}}@media (prefers-reduced-motion:reduce){.hero-art > div,.hero-grid > div,.glow-a,.glow-b,.scan{animation:none}.scan{display:none}}.hero-inner{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:26px;max-width:780px;margin:0 auto}.kicker{display:flex;align-items:center;gap:10px;font-size:0.6875rem;letter-spacing:.16em;color:var(--accent-text)}.kicker i{display:block;width:28px;height:2px;background:var(--accent);flex:none}.hero h1{font-size:clamp(2.125rem,1.1rem + 3.4vw,4.125rem);line-height:1.12;letter-spacing:-.022em;font-weight:900;margin:0}.hero h1 em{font-style:normal;color:var(--accent-text)}.hero-lede{margin:0;font-size:1.0625rem;line-height:1.85;color:var(--muted);max-width:560px;text-wrap:pretty}.searchbox{display:flex;flex-direction:column;gap:14px;width:min(620px,100%);position:relative}.search-row{display:flex;gap:10px}.search-field{flex:1;display:flex;align-items:center;gap:10px;height:52px;padding:0 14px;background:color-mix(in srgb,var(--panel) 88%,transparent);border:1px solid var(--line-strong);border-radius:var(--radius);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.search-field svg{flex:none;fill:var(--faint)}.search-field input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:0.9375rem;color:var(--ink);caret-color:var(--accent)}.search-field input::placeholder{color:var(--faint)}.search-field input:focus{outline:none}.search-field:focus-within{border-color:var(--accent)}.search-row .btn{height:52px;padding-inline:26px;font-size:0.9375rem}.suggest{position:absolute;left:0;right:0;top:58px;z-index:20;margin:0;padding:6px;list-style:none;text-align:left;background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow-md);max-height:320px;overflow-y:auto}.suggest li a{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;border-radius:6px;text-decoration:none;color:var(--ink);font-size:0.875rem}.suggest li a:hover,.suggest li a:focus-visible,.suggest li.on a{background:color-mix(in srgb,var(--accent) 12%,transparent)}.suggest .n{color:var(--faint);font-size:0.75rem;font-variant-numeric:tabular-nums;white-space:nowrap}.suggest .none{padding:9px 12px;color:var(--faint);font-size:0.875rem}.chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.tag{display:inline-flex;align-items:center;font-size:0.75rem;padding:6px 12px;border-radius:6px;text-decoration:none;white-space:nowrap;background:var(--tag-bg);color:var(--tag-ink)}.tag:hover{background:color-mix(in srgb,var(--accent) 16%,var(--tag-bg))}.tag.outline{background:transparent;border:1px solid var(--accent);color:var(--accent)}.tag.outline:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.tag.accent{background:var(--tag-accent-bg);color:var(--tag-accent-ink)}main.wrap{position:relative;isolation:isolate}.genre-art{position:absolute;top:10px;right:24px;width:132px;height:132px;z-index:-1;pointer-events:none;color:var(--accent);opacity:.16}.genre-art svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.statband{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--band);padding:0}.statband div{padding:26px 28px;display:flex;border-left:1px solid var(--line)}.statband div:first-child{border-left:0;padding-left:48px}.stat{display:flex;align-items:center;gap:15px;min-width:0;text-decoration:none;color:inherit}.stat-ic{width:30px;height:30px;flex:none;color:var(--accent);fill:currentColor}.stat-txt{display:flex;flex-direction:column;gap:4px;min-width:0}.statband a:hover b{color:var(--accent)}.statband a:hover span{color:var(--muted)}.statband b{font-size:2.125rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1;white-space:nowrap}.statband b i{font-style:normal;font-size:1.125rem;color:var(--muted)}.statband span{font-size:0.75rem;color:var(--faint)}section.why{padding-top:64px;padding-bottom:64px;display:flex;flex-direction:column;gap:28px}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.sec-head h2{margin:0;font-size:1.875rem}.sec-head .note{font-size:0.75rem;color:var(--faint)}.cards3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cards3 .card{margin:0;display:flex;flex-direction:column;gap:10px;padding:22px}.card-kicker{font-size:0.625rem;letter-spacing:.1em;color:var(--accent-text);font-variant-numeric:tabular-nums}.card-title{font-size:1.125rem;font-weight:700;line-height:1.35;letter-spacing:-.015em;text-wrap:balance}.card-body{margin:0;font-size:0.84375rem;line-height:1.8;color:var(--muted)}.cats{padding-top:8px;padding-bottom:56px;display:flex;flex-direction:column;gap:20px}.cat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cat{display:flex;flex-direction:column;gap:6px;padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:inherit}.cat:hover{border-color:var(--accent)}.cat-ic{width:30px;height:30px;fill:none;stroke:var(--accent);stroke-width:9;stroke-linecap:round;stroke-linejoin:round;margin-bottom:2px}.cat-t{font-size:1rem;font-weight:700;line-height:1.35}.cat-m{font-size:0.75rem;color:var(--faint);font-variant-numeric:tabular-nums}.exams{padding-top:8px;padding-bottom:64px;display:flex;flex-direction:column;gap:20px}.exams .head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.exams .head h2{margin:0;font-size:1.875rem}.exams p.note{margin:0;font-size:0.875rem;color:var(--muted);max-width:640px;text-wrap:pretty}.table{width:100%;border-collapse:collapse;font-size:0.875rem}.table th{text-align:left;font-size:0.6875rem;letter-spacing:.08em;color:var(--faint);padding:6px;font-weight:400}.table td{padding:0;border:0}.table td a{display:block;padding:11px 6px;text-decoration:none;color:inherit}.table thead tr{background:linear-gradient(to right,transparent,var(--line) 48px,var(--line) calc(100% - 48px),transparent) no-repeat bottom / 100% 1px}.table tbody tr{background:linear-gradient(to right,transparent,var(--line) 48px,var(--line) calc(100% - 48px),transparent) no-repeat bottom / 100% 1px}.table tbody tr:hover{background:linear-gradient(color-mix(in srgb,var(--ink) 4%,transparent),color-mix(in srgb,var(--ink) 4%,transparent)) no-repeat 0 0 / 100% 100%,linear-gradient(to right,transparent,var(--line) 48px,var(--line) calc(100% - 48px),transparent) no-repeat bottom / 100% 1px}.table .yr{color:var(--faint)}.table .qn{text-align:right;font-variant-numeric:tabular-nums}.table .name{font-size:0.9375rem}.exams .btn{align-self:flex-start}.statcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:26px 0 8px}.statcard{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);padding:20px 22px}.sc-head{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:0.8125rem;font-weight:700;letter-spacing:.02em}.sc-ic{flex:none;color:var(--accent)}.sc-main{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin-top:12px}.sc-main b{font-size:1.875rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.sc-main span{color:var(--muted);font-size:0.8125rem}.sc-main span b{font-size:0.8125rem;font-weight:700;color:var(--ink)}.sc-sub{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:0.8125rem}.sc-sub b{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}.reclist{display:grid;gap:10px;margin-top:18px}.rec{display:flex;align-items:center;gap:18px;padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel)}.mini-donut{flex:none}.rec-body{min-width:0;flex:1}.rec .t{display:block;font-weight:700;font-size:1rem;color:inherit;text-decoration:none;letter-spacing:-.01em}.rec .t:hover{color:var(--accent)}.rec-nums{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:7px;font-size:0.8125rem;color:var(--muted)}.rec-nums b{font-variant-numeric:tabular-nums;font-weight:700;margin-right:4px}.rec-nums .n-ok b{color:var(--ok)}.rec-nums .n-ng b{color:var(--ng)}.rec-nums .n-rest b{color:var(--faint)}.rec-total{margin-top:5px;color:var(--faint);font-size:0.75rem;font-variant-numeric:tabular-nums}.rec-wipe{flex:none;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid transparent;border-radius:var(--radius);background:none;color:var(--faint);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.rec-wipe:hover,.rec-wipe:focus-visible{color:var(--ng);background:var(--ng-bg);border-color:var(--ng)}.actions.wipe{margin-top:34px;justify-content:flex-end}.btn.danger{color:var(--ng);border-color:var(--ng)}.btn.danger:hover{background:var(--ng-bg);color:var(--ng);border-color:var(--ng)}.modal .btn.danger{background:var(--ng);color:var(--panel);border-color:var(--ng)}.modal .btn.danger:hover{background:color-mix(in srgb,var(--ink) 14%,var(--ng));color:var(--panel)}@media(max-width:1199px){.cards3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:899px){.statcards{grid-template-columns:1fr}.rec{gap:10px;padding:14px 12px 14px 16px}}@media(max-width:767px){.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cat{padding:16px}.cat-t{font-size:0.9375rem}.cats{padding-bottom:40px}}@media(max-width:1023px){.home section{padding-left:28px;padding-right:28px}.statband div:first-child{padding-left:28px}.statband{grid-template-columns:repeat(2,1fr)}.statband div:nth-child(3){border-left:0;padding-left:28px}.statband div:nth-child(-n+2){border-bottom:1px solid var(--line)}.cards3{grid-template-columns:repeat(2,minmax(0,1fr))}.table .yr{display:none}}@media(max-width:1023px){.genre-art{width:96px;height:96px;right:16px;opacity:.12}}@media(max-width:767px){.genre-art{display:none}header.site .wrap{padding:14px 20px;gap:14px}.examtag{font-size:0.9375rem;padding-left:10px}.lockup{gap:9px}.navlinks{order:3;width:100%;gap:16px}.home section{padding-left:20px;padding-right:20px}.hero{padding-top:56px;padding-bottom:48px}.search-row{flex-direction:column}.search-row .btn{width:100%}.suggest{top:114px}.chips{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;margin-inline:-20px;padding-inline:20px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.statband div{padding:20px}.statband div:first-child,.statband div:nth-child(3){padding-left:20px}.statband b{font-size:1.75rem}.stat{gap:11px}.stat-ic{width:24px;height:24px}.cards3{grid-template-columns:1fr}.sec-head h2,.exams .head h2{font-size:1.5rem}section.why{padding-top:44px;padding-bottom:44px}.table th:first-child,.table .qn{font-size:0.75rem}.table td a{padding:13px 6px}.stem{font-size:1rem}.wrap{padding:16px 12px 64px}}