/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.table-row-group{display:table-row-group}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--paper:#fbfaf7;--grid:#e2eae3;--grid-strong:#cdd9cf;--ink:#1c1c1a;--ink-soft:#4a4a46;--ink-faint:#6b6b63;--line:#e6e2d8;--rule:#7f9285;--shu:#d6402f;--shu-ink:#a8291b;--shu-wash:#fbede9;--maru:#2f7a5a;--maru-wash:#e9f2ec;--accent:#d6402f;--accent-wash:#fbede9;--kw-ink:#a8291b;--grid-size:40px;--bd:2px;--drop:5px;--r:4px;--sans:"Noto Sans JP", system-ui, -apple-system, "Hiragino Sans", "Yu Gothic UI", sans-serif;--mono:"Space Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--stage-w:1280px;--stage-h:720px;--fs:1}.book-b2{--grid:#e0e7f1;--grid-strong:#c5d2e3;--rule:#7e90a8;--accent:#2a5fa5;--accent-wash:#e9f0fa;--kw-ink:#2a5fa5;--line:#e1e4eb}.book-base{--accent:#1c1c1a;--accent-wash:#eeece6;--kw-ink:#1c1c1a}html,body{height:100%;margin:0;padding:0}body{font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.5}.paper-grid{background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:var(--grid-size) var(--grid-size)}ruby{ruby-align:center}rt{color:var(--ink-soft);letter-spacing:0;-webkit-user-select:none;user-select:none;font-size:.5em;font-weight:400}.nofuri rt{display:none}.jp{color:var(--ink);font-size:1.06em}.kw{font-family:var(--sans);background:var(--accent-wash);color:var(--kw-ink,var(--accent));white-space:nowrap;box-shadow:inset 0 -2px 0 0 var(--kw-ink,var(--accent));border-radius:3px;padding:.05em .32em;font-weight:500}.deck{background:#17171a;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.stage{width:var(--stage-w);height:var(--stage-h);transform-origin:50%;transform:scale(var(--scale,1));flex:none;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000073}.slide{flex-direction:column;padding:46px 60px 58px;display:none;position:absolute;inset:0}.slide.on{animation:.22s both slide-in;display:flex}@keyframes slide-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.slide.on{animation:none}}.slide[data-density=s]{--fs:1.34}.slide[data-density=a]{--fs:1.16}.slide[data-density=b]{--fs:1}.slide[data-density=c]{--fs:.9}.slide[data-density=d]{--fs:.8}.slide rt{font-size:max(.68em,13px)}.slide.clipped .slide-body:after{content:"⚠ this slide is clipped — split it";font-family:var(--mono);color:#fff;background:var(--shu);border-radius:3px;padding:3px 9px;font-size:13px;font-weight:700;position:absolute;bottom:44px;right:60px}.slide-head{flex:none;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.step{font-family:var(--mono);color:#fff;background:var(--accent);border-radius:3px;flex:none;place-items:center;width:44px;height:44px;font-size:20px;font-weight:700;display:grid;transform:rotate(-2deg)}.step.ghost{background:var(--paper);color:var(--ink-faint);border:var(--bd) solid var(--grid-strong);transform:none}.slide-head hgroup{min-width:0}.slide-title{font-size:calc(34px * var(--fs));letter-spacing:.1px;margin:0;font-weight:700;line-height:1.5}.slide-gloss{font-size:calc(19px * var(--fs));color:var(--ink-soft);margin:5px 0 0;font-weight:400}.cont-flag{font-family:var(--mono);color:var(--ink-soft);border:1.5px solid var(--rule);vertical-align:4px;letter-spacing:.5px;white-space:nowrap;border-radius:3px;margin-left:12px;padding:2px 8px;font-size:15px;font-weight:700}.slide-body{gap:calc(16px * var(--fs));min-height:0;font-size:calc(22px * var(--fs));color:var(--ink-soft);flex-direction:column;flex:auto;line-height:1.9;display:flex;overflow:hidden}.slide-body>*{flex:none}.slide-foot{font-family:var(--mono);color:var(--ink-soft);letter-spacing:.4px;flex:none;align-items:center;gap:12px;font-size:15px;display:flex;position:absolute;bottom:20px;left:60px;right:60px}.slide-foot .brand-mark{color:var(--kw-ink,var(--accent));font-weight:700}.slide-foot .sep{color:var(--rule)}.slide-foot .count{margin-left:auto;font-weight:700}.divider .slide-foot{color:#fbfaf7bf}.divider .slide-foot .brand-mark{color:#fbfaf7e6}.divider .slide-foot .sep{color:#fbfaf766}.rail{background:var(--grid-strong);z-index:5;height:5px;position:absolute;bottom:0;left:0;right:0}.rail i{background:var(--accent);width:0;height:100%;transition:width .28s;display:block}.card{border:var(--bd) solid var(--ink);background:var(--paper);border-radius:var(--r);box-shadow:var(--drop) var(--drop) 0 var(--grid-strong)}.b-lines p,.b-note p,.b-warn p,.b-conv p{margin:0}.b-lines p+p,.b-note p+p,.b-warn p+p,.b-conv p+p{margin-top:.36em}.b-lines{color:var(--ink-soft)}.b-lines .jp{color:var(--ink)}.b-note{color:var(--ink-faint);border-left:3px solid var(--grid-strong);padding-left:14px;font-size:.92em}.b-note b{color:var(--ink-soft)}.b-warn:before,.b-conv:before{font-family:var(--mono);letter-spacing:1.2px;margin-bottom:3px;font-size:.62em;font-weight:700;display:block}.b-warn{border-left:4px solid var(--shu);background:var(--shu-wash);padding:calc(13px * var(--fs)) calc(18px * var(--fs));border-radius:0 var(--r) var(--r) 0;color:var(--ink-soft);font-size:.94em}.b-warn:before{content:"⚠ 注意 · CAUTION";color:var(--shu-ink)}.b-warn b{color:var(--shu-ink)}.b-conv{border-left:4px solid var(--accent);background:var(--accent-wash);padding:calc(13px * var(--fs)) calc(18px * var(--fs));border-radius:0 var(--r) var(--r) 0;color:var(--ink);font-size:1.02em}.b-conv:before{content:"会話 · CONVERSATION";color:var(--kw-ink,var(--accent))}.b-vocab{gap:calc(8px * var(--fs));flex-wrap:wrap;display:flex}.b-vocab>span{border:1.5px solid var(--rule);padding:calc(6px * var(--fs)) calc(12px * var(--fs));color:var(--ink);min-width:calc(120px * var(--fs));background:#fff;border-radius:3px;flex-direction:column;display:flex}.b-vocab .vj{font-size:calc(21px * var(--fs));line-height:1.75}.b-vocab .ven{font-size:calc(17px * var(--fs));color:var(--ink-soft);font-weight:400;line-height:1.35}.tbl{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.b-table{border-collapse:collapse;width:100%;font-size:calc(20px * var(--fs));border:1.5px solid var(--rule);background:#fff;line-height:1.9}.b-table th,.b-table td{border:1px solid var(--rule);padding:calc(8px * var(--fs)) calc(11px * var(--fs));text-align:left;color:var(--ink-soft);vertical-align:middle}.b-table th{background:var(--accent-wash);color:var(--ink);font-weight:700;font-family:var(--mono);letter-spacing:.4px;text-transform:uppercase;white-space:nowrap;font-size:.82em}.b-table td.jp{color:var(--ink);font-size:calc(21px * var(--fs))}.b-table.tight th,.b-table.tight td{padding:calc(6px * var(--fs)) calc(9px * var(--fs));font-size:.94em}.b-table tbody tr:nth-child(2n){background:var(--grid)}@supports (color:color-mix(in lab,red,red)){.b-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--grid) 26%,#fff)}}.cover{justify-content:center}.cover-stamp{font-family:var(--mono);color:#fff;background:var(--accent);letter-spacing:.5px;border-radius:3px;padding:4px 12px;font-size:17px;font-weight:700;display:inline-block;transform:rotate(-2deg)}.cover-eyebrow{align-items:center;gap:14px;margin-bottom:26px;display:flex}.cover-eyebrow .book{font-family:var(--mono);letter-spacing:1.4px;color:var(--ink-faint);font-size:13px;font-weight:700}.cover-n{font-family:var(--mono);letter-spacing:3px;color:var(--kw-ink,var(--accent));text-transform:uppercase;margin-bottom:10px;font-size:16px;font-weight:700}.cover h1{letter-spacing:-.2px;max-width:20ch;margin:0 0 18px;font-size:52px;font-weight:700;line-height:1.45}.cover .cover-sub{font-family:var(--mono);color:var(--ink-soft);border-top:1.5px solid var(--line);max-width:60ch;padding-top:14px;font-size:16px}.cover-lead{color:var(--ink-soft);max-width:68ch;margin-top:20px;font-size:20px;line-height:1.75}.cover-lead .b-note{border:0;padding:0;font-size:1em}.cover-stats{gap:10px;display:flex;position:absolute;bottom:58px;right:60px}.stat{border:var(--bd) solid var(--ink);border-radius:var(--r);background:var(--paper);box-shadow:var(--drop) var(--drop) 0 var(--grid-strong);text-align:center;min-width:92px;padding:10px 16px}.stat b{font-family:var(--mono);color:var(--accent);font-size:30px;line-height:1;display:block}.stat span{font-family:var(--mono);letter-spacing:1px;color:var(--ink-faint);text-transform:uppercase;font-size:12px}.point-list{gap:calc(10px * var(--fs));counter-reset:pt;margin:0;padding:0;list-style:none;display:grid}.point-list li{font-size:calc(24px * var(--fs));color:var(--ink);border-bottom:1.5px dotted var(--rule);padding-bottom:calc(9px * var(--fs));align-items:baseline;gap:14px;line-height:1.75;display:flex}.point-list li .pn{font-family:var(--mono);color:var(--kw-ink,var(--accent));flex:none;min-width:2.2em;font-size:.72em;font-weight:700}.point-list li .pg{color:var(--ink-soft);text-align:right;flex:none;max-width:42%;margin-left:auto;font-size:.8em}.divider{text-align:center;background:var(--ink);color:var(--paper);justify-content:center;align-items:center}.divider .d-eyebrow{font-family:var(--mono);letter-spacing:4px;color:var(--paper);opacity:.72;margin-bottom:18px;font-size:16px}.divider h2{color:#fff;margin:0 0 16px;font-size:62px;font-weight:700}.divider p{color:var(--paper);opacity:.72;max-width:46ch;margin:0;font-size:20px}.divider .maru-batsu{letter-spacing:22px;margin-top:30px;padding-left:22px;font-size:40px}.divider .maru-batsu .o{color:#6fcfa1}.divider .maru-batsu .x{color:#ff7a68}.close h2{margin:0 0 6px;font-size:44px;font-weight:700}.check-head{flex:none;align-items:center;gap:14px;margin-bottom:16px;display:flex}.q-tag{font-family:var(--mono);color:#fff;background:var(--accent);letter-spacing:.6px;border-radius:3px;flex:none;padding:4px 10px;font-size:13px;font-weight:700}.q-meta{font-family:var(--mono);color:var(--ink-soft);letter-spacing:.3px;font-size:15px}.q-meta .g{background:var(--ink);color:var(--paper);border-radius:2px;margin-right:9px;padding:2px 9px;display:inline-block}.q-lead{font-size:calc(27px * var(--fs));color:var(--ink);margin:0;font-weight:500;line-height:1.85}.q-lead b{color:var(--kw-ink,var(--accent))}.headword{flex-wrap:wrap;gap:6px;display:flex}.sq{width:calc(62px * var(--fs));height:calc(62px * var(--fs));border:1.5px solid var(--rule);font-size:calc(34px * var(--fs));color:var(--ink);background:#fff;border-radius:2px;flex:none;place-items:center;display:grid;position:relative}.sq:after{content:"";background:var(--grid);opacity:.6;width:1px;position:absolute;top:0;bottom:0;left:50%}.sq.wide{width:auto;min-width:calc(62px * var(--fs));padding:0 calc(10px * var(--fs))}.sq.wide:after{display:none}.sq.wide rt{font-size:max(.5em,15px)}.hw-en{margin:calc(-2px * var(--fs)) 0 0;font-size:calc(18px * var(--fs));color:var(--ink-soft);line-height:1.5}.choices{gap:calc(9px * var(--fs));display:grid}.choice{text-align:left;font-family:inherit;font-size:calc(25px * var(--fs));color:var(--ink);padding:calc(12px * var(--fs)) calc(18px * var(--fs));border:1.5px solid var(--rule);background:#fff;border-radius:3px;align-items:center;gap:14px;line-height:1.6;transition:border-color .12s,background .12s;display:flex}.choice .lab{font-family:var(--mono);color:var(--ink-faint);flex:none;width:1.4em;font-size:.62em;font-weight:700}.choice .mark{flex:none;margin-left:auto;font-size:1.1em;font-weight:700;line-height:1}.slide.fitting .choice,.slide.fitting .choice .mark,.slide.fitting .q-note{transition:none!important;animation:none!important}.revealed .choice.correct .mark:after{content:"○"}.revealed .choice.correct{border-color:var(--maru);background:var(--maru-wash);border-width:3px}.revealed .choice.correct .lab,.revealed .choice.correct .mark{color:var(--maru)}.revealed .choice:not(.correct){background:var(--grid)}@supports (color:color-mix(in lab,red,red)){.revealed .choice:not(.correct){background:color-mix(in srgb,var(--grid) 34%,#fff)}}.revealed .choice:not(.correct){border-style:dashed}.revealed .choice:not(.correct) .jp{color:var(--ink-soft)}.q-note{margin-top:calc(14px * var(--fs));padding:calc(12px * var(--fs)) calc(16px * var(--fs));border-radius:0 var(--r) var(--r) 0;border-left:4px solid var(--maru);background:var(--maru-wash);font-size:calc(20px * var(--fs));color:var(--ink-soft);line-height:1.7;display:none}.revealed .q-note{animation:.18s both slide-in;display:block}.q-note .verdict{font-family:var(--mono);letter-spacing:1px;color:var(--maru);text-transform:uppercase;margin-bottom:2px;font-size:.72em;font-weight:700;display:block}.reveal-hint{margin-top:calc(14px * var(--fs));font-family:var(--mono);font-size:calc(17px * var(--fs));color:var(--ink-faint);letter-spacing:.4px;align-items:baseline;gap:10px;display:flex}.reveal-hint .jp{font-family:var(--sans);color:var(--ink-soft);font-size:1.15em}.revealed .reveal-hint{display:none}kbd{font-family:var(--mono);border:1.5px solid var(--rule);color:var(--ink-soft);background:#fff;border-bottom-width:2.5px;border-radius:3px;padding:1px 6px;font-size:.92em}.controls{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c1c1ae6;border:1px solid #ffffff1f;border-radius:6px;gap:6px;padding:7px;transition:opacity .3s;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.deck.idle .controls{opacity:0;pointer-events:none}.ctrl{font-family:var(--mono);letter-spacing:.5px;color:#e8e6df;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:4px;padding:7px 11px;font-size:12px;font-weight:700}.ctrl:hover{background:#ffffff21}.ctrl[aria-pressed=false]{color:#8f8d86}.ctrl[data-act=black][aria-pressed=true]{background:var(--shu);color:#fff}.ctrl.wide{min-width:74px}.ctrl-sep{background:#ffffff24;width:1px;margin:4px 3px}.ctrl-status{font-family:var(--mono);color:#f0eee7;white-space:nowrap;align-items:baseline;gap:4px;padding:4px 10px 4px 6px;font-size:17px;font-weight:700;display:flex}.ctrl-status b{font-size:21px}.ctrl-status em{letter-spacing:1px;text-transform:uppercase;color:#a8a69e;margin-left:6px;font-size:11px;font-style:normal}.ctrl-clock{font-family:var(--mono);color:#a8a69e;white-space:nowrap;align-self:center;font-size:14px}.resume-toast{z-index:45;font-family:var(--mono);color:#17171a;letter-spacing:.4px;opacity:0;pointer-events:none;background:#f0eee7;border-radius:5px;padding:8px 14px;font-size:14px;transition:opacity .3s;position:fixed;bottom:74px;left:50%;transform:translate(-50%)}.resume-toast.on{opacity:1}.overview{z-index:60;background:#17171a;padding:26px 30px 40px;display:none;position:fixed;inset:0;overflow-y:auto}.overview.on{display:block}.ov-head{color:#e8e6df;font-family:var(--mono);letter-spacing:1px;align-items:baseline;gap:14px;margin-bottom:18px;font-size:13px;display:flex}.ov-head b{color:#fff;font-size:16px}.ov-head .hint{color:#b3b1a8;margin-left:auto}.ov-grid{grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:12px;display:grid}.ov-item{text-align:left;color:#e8e6df;cursor:pointer;background:#262626;border:1.5px solid #ffffff29;border-radius:4px;flex-direction:column;gap:6px;min-height:90px;padding:11px 13px;transition:border-color .12s,background .12s;display:flex}.ov-item:hover,.ov-item.sel{background:#303030;border-color:#ffffff80}.ov-item.over{border-color:var(--shu);box-shadow:inset 3px 0 0 var(--shu)}.ov-item.over .k:after{content:"⚠ clipped";color:#ff9d8f;margin-left:auto}.ov-item.cur{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ov-item.cur{background:color-mix(in srgb,var(--accent) 22%,#262626)}}.ov-item .k{font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;color:#b3b1a8;gap:8px;font-size:11px;display:flex}.ov-item.cur .k{color:#fff}.ov-item .t{color:#f0eee7;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.ov-item .t rt{display:none}.ov-foot{font-family:var(--mono);letter-spacing:.6px;border-top:1px solid #ffffff24;justify-content:center;align-items:center;gap:22px;margin-top:26px;padding-top:18px;font-size:12px;display:flex}.ov-foot a{color:#b3b1a8;text-decoration:none}.ov-foot a:hover{color:#fff}.blackout{z-index:70;background:#111110;place-items:end center;padding-bottom:8vh;display:none;position:fixed;inset:0}.blackout.on{display:grid}.bo-label{font-family:var(--mono);letter-spacing:2px;color:#55554f;text-transform:uppercase;font-size:15px}.site{min-height:100%;padding-bottom:70px}.site-head{border-bottom:var(--bd) solid var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20;background:#fbfaf7f0;position:sticky;top:0}.wrap{max-width:1180px;margin:0 auto;padding:0 26px}.brand{flex-wrap:wrap;align-items:baseline;gap:14px;padding-block:18px;display:flex}.brand .stamp{font-family:var(--mono);color:#fff;background:var(--accent);letter-spacing:.5px;border-radius:3px;padding:3px 11px;font-size:15px;font-weight:700;transform:rotate(-2deg)}.brand h1{letter-spacing:.2px;margin:0;font-size:20px;font-weight:700}.brand .sub{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.5px;margin-left:auto;font-size:12px}.lede{max-width:62ch;padding:34px 0 8px}.lede h2{margin:0 0 10px;font-size:30px;font-weight:700}.lede p{color:var(--ink-soft);margin:0 0 8px;font-size:16px;line-height:1.8}.keynote{color:var(--ink-soft);margin:16px 0 0;font-size:14px;line-height:1.7}.keyhint{font-family:var(--mono);color:var(--ink-soft);flex-wrap:wrap;gap:10px 14px;margin:8px 0 4px;font-size:13px;display:flex}.seclabel{font-family:var(--mono);color:var(--ink-faint);letter-spacing:1.4px;text-transform:uppercase;align-items:center;gap:12px;margin:38px 0 12px;font-size:12px;font-weight:700;display:flex}.seclabel:after{content:"";background:var(--line);flex:1;height:1.5px}.deck-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:14px;display:grid}.deck-card{border:var(--bd) solid var(--ink);background:var(--paper);border-radius:var(--r);box-shadow:var(--drop) var(--drop) 0 var(--grid-strong);color:inherit;flex-direction:column;gap:9px;padding:15px 17px 16px;text-decoration:none;transition:transform .11s,box-shadow .11s;display:flex}.deck-links{border-top:1.5px solid var(--line);font-family:var(--mono);gap:14px;margin-top:2px;padding-top:10px;font-size:12px;font-weight:700;display:flex}.deck-links a{color:var(--kw-ink,var(--accent));text-decoration:none}.deck-links a:hover{text-decoration:underline}.deck-card:hover{box-shadow:calc(var(--drop) + 2px) calc(var(--drop) + 2px) 0 var(--accent);transform:translate(-2px,-2px)}.deck-card .num{font-family:var(--mono);letter-spacing:1.2px;color:var(--kw-ink,var(--accent));text-transform:uppercase;font-size:12px;font-weight:700}.deck-card .t{color:var(--ink);font-size:17px;font-weight:700;line-height:1.95}.deck-card .facts{border-top:1.5px solid var(--line);font-family:var(--mono);color:var(--ink-faint);letter-spacing:.4px;gap:12px;margin-top:auto;padding-top:9px;font-size:11px;display:flex}.site-foot{text-align:center;font-family:var(--mono);color:var(--ink-faint);margin-top:52px;font-size:12px}.bk-page{min-height:100%;padding-bottom:70px}.bk-nav{font-family:var(--mono);letter-spacing:.4px;flex-wrap:wrap;align-items:center;gap:18px;padding-bottom:14px;font-size:12px;display:flex}.bk-nav a{color:var(--ink-faint);text-decoration:none}.bk-nav a:hover{color:var(--ink)}.bk-nav .bk-toggle{color:var(--accent);border:1.5px solid var(--accent);border-radius:3px;margin-left:auto;padding:5px 10px;font-weight:700}.bk-nav .bk-toggle:hover{background:var(--accent);color:#fff}.bk-nav .bk-print{color:var(--ink-soft);border-color:var(--ink-soft)}.bk-nav .bk-toggle~.bk-toggle{margin-left:0}.bk-nav .bk-print:hover{background:var(--ink);border-color:var(--ink);color:#fff}.bk-furibtn{font-family:var(--mono);border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);cursor:pointer;letter-spacing:.3px;border-radius:3px;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:700}.bk-furibtn[aria-pressed=false]{color:var(--ink-faint);border-color:var(--grid-strong)}.bk-main{max-width:760px;padding-top:22px}.bk-subtitle{color:var(--ink-soft);margin:-8px 0 20px;font-size:15px}.bk-ref{margin-bottom:24px}.bk-ref>summary{cursor:pointer;align-items:center;gap:10px;padding:15px 18px;font-size:15px;font-weight:700;list-style:none;display:flex}.bk-ref>summary::-webkit-details-marker{display:none}.bk-ref>summary .eb{font-family:var(--mono);color:var(--accent);letter-spacing:.5px;font-size:11px;font-weight:700}.bk-ref>summary .chev{font-family:var(--mono);margin-left:auto;transition:transform .2s}.bk-ref[open]>summary .chev{transform:rotate(90deg)}.bk-ref-body{color:var(--ink-soft);padding:0 18px 18px;font-size:15px;line-height:1.95}.bk-ref-body h4{color:var(--ink);margin:20px 0 8px;font-size:15px;font-weight:700}.bk-ref-body h5{font-family:var(--mono);letter-spacing:.5px;color:var(--ink-faint);text-transform:uppercase;margin:16px 0 5px;font-size:11px;font-weight:700}.bk-ref-body>.b-lines,.bk-ref-body>.b-note,.bk-ref-body>.b-warn,.bk-ref-body>.b-conv,.bk-ref-body>.b-vocab,.bk-ref-body>.tbl{margin-bottom:10px}.bk-ref-body .b-table{font-size:13px}.bk-deep{border-left:3px solid var(--accent)}.bk-deep>summary .eb{font-family:var(--sans);font-size:12px}.bk-deep .bk-ref-body{line-height:2.05}.bk-deep .bk-ref-body>h4:first-child{margin-top:4px}.bk-deep .bk-ref-body h4{border-top:1px solid var(--grid);margin-top:28px;padding-top:14px}.bk-deep .bk-ref-body>h4:first-child{border-top:0;padding-top:0}.bk-drillhead{font-family:var(--mono);color:var(--ink-faint);align-items:center;gap:10px;margin:30px 0 14px;font-size:13px;font-weight:700;display:flex}.bk-drillhead .eb{color:var(--accent)}.bk-drill{flex-direction:column;gap:16px;display:flex}.bk-q{padding:18px 18px 20px}.bk-qmeta{align-items:center;gap:10px;margin-bottom:12px;font-size:12px;display:flex}.bk-q .q-lead{margin:0 0 12px;font-size:14px;line-height:1.8}.bk-q .headword{margin-bottom:14px}.bk-q .sq{width:40px;height:40px;font-size:22px}.bk-q .choices{gap:8px}.bk-choice{cursor:pointer;width:100%;padding:11px 14px;font-size:16px}.bk-choice:not([disabled]):hover{border-color:var(--ink)}.bk-choice:active:not([disabled]){transform:scale(.99)}.bk-choice[disabled]{cursor:default}.bk-choice.correct{border-color:var(--maru);background:var(--maru-wash)}.bk-choice.correct .lab,.bk-choice.correct .mark{color:var(--maru)}.bk-choice.correct .mark:after{content:"○"}.bk-choice.wrong{border-color:var(--shu);background:var(--shu-wash)}.bk-choice.wrong .lab,.bk-choice.wrong .mark{color:var(--shu)}.bk-choice.wrong .mark:after{content:"✕"}.bk-q.answered .bk-choice:disabled:not(.correct):not(.wrong){opacity:.45}.bk-feedback.show{display:block}.bk-q.revealed-no .bk-feedback{border-left-color:var(--shu);background:var(--shu-wash)}.bk-q.revealed-no .bk-feedback .verdict{color:var(--shu)}.bk-feedback{font-size:13px;line-height:1.8}.bk-feedback.tryagain .q-why{display:none}.bk-q.retry .bk-feedback{border-left-color:var(--rule);background:#f4f1e8}.bk-q.retry .bk-feedback .verdict{color:var(--ink-soft)}.gw{cursor:pointer;border-bottom:1.5px dotted var(--ink-faint);transition:background-color .1s}.slide .gw{cursor:inherit;border-bottom:0}.gw:hover,.gw:focus-visible{background:var(--accent-wash);border-color:var(--accent)}.headword.gw-hw{cursor:pointer;border-bottom:1.5px dotted var(--ink-faint);border-radius:3px;padding-bottom:2px;transition:background-color .1s}.headword.gw-hw:hover,.headword.gw-hw:focus-visible{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.headword.gw-hw:hover,.headword.gw-hw:focus-visible{background:color-mix(in srgb,var(--accent) 10%,transparent)}}.gloss-pop{z-index:200;background:var(--ink);max-width:min(280px,100vw - 16px);color:var(--paper);border-radius:var(--r);pointer-events:none;padding:10px 14px;font-size:14px;line-height:1.6;animation:.12s both gloss-in;position:fixed;box-shadow:0 10px 30px #00000059}@keyframes gloss-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.gw-word{margin-bottom:2px;font-size:17px;font-weight:700;display:block}.gw-reading{font-family:var(--mono);color:#ffffff8c;margin-bottom:4px;font-size:11px;display:block}.gw-en{color:#ffffffe6;display:block}.gw-missing{color:#ffffff80;font-style:italic}@media(max-width:768px){.wrap{padding:0 16px}.site-head{position:static}.brand{align-items:center;gap:8px 10px;padding-block:13px}.brand h1{flex:100%;order:3;font-size:16px;line-height:1.7}.brand .sub{flex:100%;order:4;margin-left:0;font-size:11px}.brand .stamp{font-size:13px}.lede{padding:24px 0 4px}.lede h2{font-size:23px;line-height:1.4}.lede p{font-size:15px;line-height:1.75}.keyhint{display:none}.seclabel{margin:28px 0 10px}.deck-grid{grid-template-columns:1fr}.deck-card{padding:13px 15px 14px}.deck-card .t{font-size:16px;line-height:1.8}.deck-links a{padding:4px 0;display:block}.site-foot{margin-top:36px}.bk-furibtn{padding:6px 11px;font-size:11px}.bk-nav{gap:14px;padding-bottom:12px}.bk-nav a{padding:3px 0}.bk-main{max-width:none;padding-top:16px}.bk-subtitle{font-size:14px}.bk-ref>summary{padding:13px 14px;font-size:14px}.bk-ref-body{padding:0 14px 16px;font-size:15px;line-height:1.9}.bk-ref-body .b-table{font-size:14px}.tbl .b-table{width:max-content;min-width:100%;max-width:640px}.b-vocab span{font-size:15px}.bk-q{padding:14px 14px 16px}.bk-q .q-lead{font-size:15px}.bk-q .headword{gap:4px}.bk-q .sq{width:36px;height:36px;font-size:20px}.bk-q .sq.wide{width:auto;min-width:36px;padding:0 7px}.bk-choice{gap:10px;min-height:46px;padding:12px 13px;font-size:15px}.bk-feedback{font-size:14px}.gloss-pop{max-width:calc(100vw - 24px);padding:11px 15px;font-size:15px}.controls{flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 16px);bottom:10px}.overview{padding:18px 16px 30px}.ov-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media print{.deck{background:#fff;display:block;position:static}.controls,.overview{display:none!important}.stage{box-shadow:none;width:100%;height:auto;overflow:visible;transform:none!important}.slide{page-break-after:always;border-bottom:1px solid var(--line);height:720px;position:relative;inset:auto;display:flex!important}.q-note,.revealed .q-note{display:block}}.mode-grid{grid-template-columns:1fr 1fr;gap:18px;margin-bottom:34px;display:grid}.mode-card{background:var(--paper);border:var(--bd) solid var(--ink);border-radius:var(--r);box-shadow:var(--drop) var(--drop) 0 var(--grid-strong);color:var(--ink);flex-direction:column;gap:8px;padding:22px 22px 20px;text-decoration:none;transition:transform .12s,box-shadow .12s;display:flex}.mode-card:hover{box-shadow:calc(var(--drop) + 2px) calc(var(--drop) + 2px) 0 var(--grid-strong);transform:translate(-2px,-2px)}.mode-card .eb{font-family:var(--mono);letter-spacing:.6px;color:var(--accent);font-size:11px;font-weight:700}.mode-card h3{margin:0;font-size:24px;font-weight:700}.mode-card p{color:var(--ink-soft);margin:0;font-size:14px;line-height:1.75}.mode-card .mode-go{font-family:var(--mono);color:var(--accent);margin-top:auto;padding-top:12px;font-size:12px;font-weight:700;display:block}.mode-slides{--accent:#2a5fa5;--accent-wash:#e9f0fa}.trk{margin-bottom:30px}.trk>summary{cursor:pointer;align-items:center;gap:10px;padding:15px 18px;list-style:none;display:flex}.trk>summary::-webkit-details-marker{display:none}.trk>summary .eb{font-family:var(--mono);letter-spacing:.5px;color:var(--accent);font-size:11px;font-weight:700}.trk-title{font-size:15px;font-weight:700}.trk>summary .chev{font-family:var(--mono);margin-left:auto;transition:transform .2s}.trk[open]>summary .chev{transform:rotate(90deg)}.trk-body{padding:0 18px 18px}.trk-lede{color:var(--ink-soft);margin:0 0 16px;font-size:14px}.trk-group{font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;color:var(--ink-faint);margin:16px 0 8px;font-size:11px;font-weight:700}.trk-chips{flex-wrap:wrap;gap:7px;display:flex}.trk-chip,.bk-chip,.ts-chip{font-family:var(--mono);color:var(--ink-soft);background:var(--paper);border:1.5px solid var(--grid-strong);text-align:center;cursor:pointer;border-radius:3px;min-width:40px;padding:7px 10px;font-size:12px;font-weight:700;text-decoration:none;transition:border-color .1s,background-color .1s,color .1s}.trk-chip:hover,.bk-chip:hover,.ts-chip:not([disabled]):hover{border-color:var(--ink);color:var(--ink)}.trk-chip.done,.bk-chip.done{border-color:var(--maru);background:var(--maru-wash);color:var(--maru)}.trk-chip.done:after,.bk-chip.done:after{content:"○";margin-left:4px;font-size:10px}.trk-count{font-family:var(--mono);color:var(--ink-faint);margin:22px 0 6px;font-size:12px}.rail.trk-rail,.rail.ts-rail{border-radius:3px;height:6px;position:static;overflow:hidden}.rail.trk-rail i{background:var(--maru)}.trk-test{font-family:var(--mono);color:var(--accent);margin-top:18px;font-size:12px;font-weight:700;text-decoration:none;display:inline-block}.trk-test:hover{text-decoration:underline}.trk-where{color:var(--ink-faint);max-width:62ch;margin:14px 0 0;font-size:13px;line-height:1.7}.trk-chip.shaky,.bk-chip.shaky{border-color:var(--rule);color:var(--ink-soft);background:#f4f1e8}.trk-chip.shaky:after,.bk-chip.shaky:after{content:"△";margin-left:4px;font-size:10px}.lede-plain,.lede-warn{color:var(--ink-soft);max-width:68ch;margin:12px 0 0;font-size:14px;line-height:1.8}.lede-warn{border-left:3px solid var(--accent);padding-left:13px}.lede-plain b,.lede-warn b{color:var(--ink)}.lede-warn a{color:var(--accent);font-weight:700}.lsearch{margin:22px 0 26px;position:relative}.lsearch-lab{font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;color:var(--ink-faint);margin-bottom:7px;font-size:11px;font-weight:700;display:block}.lsearch input{width:100%;color:var(--ink);background:var(--paper);border:var(--bd) solid var(--ink);border-radius:var(--r);padding:11px 13px;font-family:inherit;font-size:15px}.lsearch input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.lsearch-out{border:1.5px solid var(--line);border-radius:var(--r);background:var(--paper);max-height:320px;margin-top:8px;overflow-y:auto}.lsearch-hit{border-bottom:1px solid var(--line);color:var(--ink);align-items:baseline;gap:10px;padding:9px 12px;font-size:14px;text-decoration:none;display:flex}.lsearch-hit:last-child{border-bottom:0}.lsearch-hit:hover{background:var(--accent-wash)}.lsearch-hit .l{font-family:var(--mono);color:var(--accent);flex:none;min-width:34px;font-size:11px;font-weight:700}.lsearch-none{color:var(--ink-faint);margin:0;padding:11px 12px;font-size:14px}.lsearch-none a{color:var(--accent)}.mode-need{font-family:var(--mono);color:var(--ink-faint);border-top:1px dotted var(--grid-strong);margin-top:4px;padding-top:9px;font-size:11px;line-height:1.6;display:block}.kana{margin-bottom:30px}.kana>summary{cursor:pointer;align-items:center;gap:10px;padding:15px 18px;list-style:none;display:flex}.kana>summary::-webkit-details-marker{display:none}.kana>summary .eb{font-family:var(--mono);letter-spacing:.5px;color:var(--accent);font-size:11px;font-weight:700}.kana>summary .chev{font-family:var(--mono);margin-left:auto;transition:transform .2s}.kana[open]>summary .chev{transform:rotate(90deg)}.kana-body{padding:0 18px 20px}.kana-lede{color:var(--ink-soft);max-width:68ch;margin:0 0 18px;font-size:14px;line-height:1.8}.kana-chart{margin-bottom:26px}.kana-chart h4{margin:0 0 4px;font-size:15px;font-weight:700}.kana-blurb{color:var(--ink-faint);max-width:66ch;margin:0 0 10px;font-size:13px;line-height:1.7}.kana-scroll{overflow-x:auto}.kana-scroll table{border-collapse:collapse;width:max-content;min-width:100%}.kana-scroll th{font-family:var(--mono);text-transform:uppercase;color:var(--ink-faint);text-align:left;border-bottom:1.5px solid var(--grid-strong);padding:5px 8px;font-size:11px;font-weight:700}.kana-scroll tbody th{border-bottom:1px solid var(--line);text-align:center}.kana-scroll td{border-bottom:1px solid var(--line);text-align:center;min-width:62px;padding:6px 8px}.kana-h,.kana-k{font-size:19px;line-height:1.3}.kana-k{color:var(--ink-soft);margin-left:5px}.kana-r{font-family:var(--mono);color:var(--ink-faint);margin-top:1px;font-size:11px;display:block}.kana-gap{background:repeating-linear-gradient(135deg,transparent 0 5px,var(--line) 5px 6px)}.kana-rules,.term-list{margin:0;font-size:14px;line-height:1.75}.kana-rules dt,.term-list dt{margin-top:12px;font-weight:700}.term-list dt i{font-family:var(--mono);color:var(--ink-faint);margin-left:8px;font-size:11px;font-style:normal;font-weight:400}.kana-rules dd,.term-list dd{color:var(--ink-soft);max-width:70ch;margin:2px 0 0}.kana-foot{color:var(--ink-faint);margin:0;font-size:13px}.kana-foot a{color:var(--accent)}.bk-switch{padding-bottom:14px}.bk-tabs{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px;display:grid}.bk-tab{font-family:var(--mono);letter-spacing:.5px;text-align:center;color:var(--ink);background:var(--paper);border:var(--bd) solid var(--ink);border-radius:var(--r);cursor:pointer;padding:12px 10px;font-size:13px;font-weight:700;text-decoration:none}.bk-tab:hover{background:var(--accent-wash)}.bk-tab[aria-pressed=true]{background:var(--ink);color:var(--paper)}.bk-tab-test{color:var(--shu);border-color:var(--shu)}.bk-tab-test:hover{background:var(--shu-wash)}.bk-tab-test[aria-current=page]{background:var(--shu);color:#fff}.bk-chips{scrollbar-width:thin;gap:7px;padding-bottom:4px;display:flex;overflow-x:auto}.bk-chip{flex:none}.bk-chip[aria-current=page]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.bk-chip[aria-current=page].done:after{content:"○"}.bk-done{border:var(--bd) dashed var(--grid-strong);border-radius:var(--r);cursor:pointer;font-family:var(--mono);letter-spacing:.5px;color:var(--ink-faint);-webkit-user-select:none;user-select:none;align-items:center;gap:12px;margin-top:34px;padding:16px 18px;font-size:13px;font-weight:700;display:flex}.bk-done:hover{border-color:var(--ink-faint)}.bk-done input{opacity:0;pointer-events:none;position:absolute}.bk-done .box{border:2px solid var(--grid-strong);border-radius:3px;flex:none;place-items:center;width:20px;height:20px;font-size:13px;line-height:1;display:grid}.bk-done.on{border-style:solid;border-color:var(--maru);background:var(--maru-wash);color:var(--maru)}.bk-done.on .box{border-color:var(--maru);color:var(--maru)}.bk-done.on .box:after{content:"○"}.bk-marks{margin-top:34px}.bk-marks .bk-done{margin-top:0}.bk-marks .bk-shaky{margin-top:10px}.bk-shaky.on{border-color:var(--rule);color:var(--ink-soft);background:#f4f1e8}.bk-shaky.on .box{border-color:var(--rule);color:var(--ink-soft)}.bk-shaky.on .box:after{content:"△"}.bk-marknote{color:var(--ink-faint);max-width:64ch;margin:12px 0 0;font-size:13px;line-height:1.7}.bk-marknote a{color:var(--accent)}.bk-redirect{color:var(--ink-soft);background:var(--accent-wash);border:1.5px solid var(--accent);border-radius:var(--r);margin:0 0 14px;padding:10px 13px;font-size:13px;line-height:1.7}.bk-est{font-family:var(--mono);color:var(--ink-faint);flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 16px;font-size:12px;display:flex}.bk-est .eb{letter-spacing:.12em;background:var(--grid-strong);color:var(--ink);border-radius:3px;padding:2px 6px;font-size:10px}.bk-est i{opacity:.8;font-size:11px;font-style:normal}.bk-taphint{color:var(--ink-faint);margin:0 0 10px;font-size:13px}.bk-nonotes{color:var(--ink-faint);border:var(--bd) dashed var(--grid-strong);border-radius:var(--r);flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 16px;padding:12px 14px;font-size:13px;line-height:1.75;display:flex}.bk-nonotes .eb{font-family:var(--mono);letter-spacing:.12em;background:var(--grid-strong);color:var(--ink);border-radius:3px;padding:2px 6px;font-size:10px}.bk-nonotes b{color:var(--ink-soft)}.bk-reset{font-family:var(--mono);color:var(--ink-faint);background:var(--paper);border:1.5px solid var(--grid-strong);border-radius:var(--r);cursor:pointer;margin:14px auto 0;padding:9px 14px;font-size:12px;font-weight:700;display:block}.bk-reset:hover{border-color:var(--ink);color:var(--ink)}.bk-stepnav{font-family:var(--mono);justify-content:space-between;align-items:center;gap:14px;margin-top:22px;font-size:12px;display:flex}.bk-stepnav a{color:var(--ink-faint);text-decoration:none}.bk-stepnav a:hover{color:var(--ink)}.bk-stepnav .bk-testlink{color:var(--shu);font-weight:700}.ts-setup{padding:20px 20px 22px}.ts-lede{margin:0 0 16px;font-size:15px}.ts-presets{flex-wrap:wrap;gap:8px;margin-bottom:6px;display:flex}.ts-preset{font-family:var(--mono);background:var(--paper);color:var(--ink);border:1.5px solid var(--ink);cursor:pointer;border-radius:3px;padding:8px 12px;font-size:12px;font-weight:700}.ts-preset:hover{background:var(--ink);color:var(--paper)}.ts-grouplabel{font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;color:var(--ink-faint);margin:18px 0 8px;font-size:11px;font-weight:700}.ts-chips{flex-wrap:wrap;gap:7px;display:flex}.ts-chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.ts-chip[disabled]{opacity:.35;cursor:default}.ts-status{font-family:var(--mono);color:var(--ink-faint);margin:20px 0 12px;font-size:12px}.ts-start,.ts-again{width:100%;font-family:var(--mono);letter-spacing:.5px;border:var(--bd) solid var(--ink);border-radius:var(--r);background:var(--shu);color:#fff;cursor:pointer;padding:15px;font-size:14px;font-weight:700;display:block}.ts-start:hover:not([disabled]){filter:brightness(1.08)}.ts-start[disabled]{background:var(--grid-strong);border-color:var(--grid-strong);color:var(--paper);cursor:default}.ts-again{background:var(--paper);color:var(--ink)}.ts-again:hover{background:var(--accent-wash)}.ts-runbar{font-family:var(--mono);color:var(--ink-faint);align-items:center;gap:14px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.ts-runbar .ts-score{color:var(--ink);margin-left:auto}.ts-quit{font-family:var(--mono);background:var(--paper);color:var(--ink-faint);border:1.5px solid var(--grid-strong);cursor:pointer;border-radius:3px;padding:5px 10px;font-size:11px;font-weight:700}.ts-quit:hover{color:var(--ink);border-color:var(--ink)}.ts-q{margin-top:14px}.ts-from{font-family:var(--mono);color:var(--ink-faint);margin-left:auto;font-size:11px}.ts-next{width:100%;font-family:var(--mono);background:var(--ink);color:var(--paper);border:var(--bd) solid var(--ink);border-radius:var(--r);cursor:pointer;margin-top:16px;padding:12px;font-size:13px;font-weight:700;display:block}.ts-results{padding:22px 20px}.ts-scorehead{align-items:baseline;gap:14px;margin-bottom:18px;display:flex}.ts-pct{font-family:var(--mono);font-size:40px;font-weight:700;line-height:1}.ts-pct.good{color:var(--maru)}.ts-pct.low{color:var(--shu)}.ts-resmeta{font-family:var(--mono);color:var(--ink-faint);font-size:12px}.ts-bybook{flex-wrap:wrap;gap:8px;display:flex}.ts-bar{font-family:var(--mono);border:1.5px solid var(--grid-strong);color:var(--ink-soft);border-radius:3px;align-items:center;gap:8px;padding:7px 10px;font-size:12px;text-decoration:none;display:flex}.ts-bar:hover{border-color:var(--ink)}.ts-bar .v{font-weight:700}.ts-bar.full{border-color:var(--maru);color:var(--maru);background:var(--maru-wash)}.ts-bar.none{border-color:var(--shu);color:var(--shu);background:var(--shu-wash)}.ts-missed{margin-top:6px}.ts-miss{border-top:1px solid var(--line);flex-direction:column;gap:4px;padding:12px 0;font-size:14px;display:flex}.ts-miss .ts-from{margin-left:0}.ts-miss .jp{color:var(--maru);font-weight:700}.ts-misslead{color:var(--ink-soft);font-size:13px;line-height:1.7}.ts-perfect{color:var(--maru);margin:14px 0 0;font-size:15px}.ts-resactions{flex-direction:column;gap:10px;margin-top:22px;display:flex}.ts-miss{color:inherit;text-decoration:none}.ts-miss:hover{background:var(--accent-wash)}.ts-missnote{color:var(--ink-faint);border-left:2px solid var(--grid-strong);padding-left:9px;font-size:13px;line-height:1.7}.ts-admin{border-top:1px solid var(--line);margin-top:20px;padding-top:14px}.ts-admin>summary{cursor:pointer;font-family:var(--mono);color:var(--ink-faint);font-size:12px;font-weight:700}.ts-admin-body{color:var(--ink-soft);padding-top:12px;font-size:13px;line-height:1.75}.ts-admin-body p{max-width:64ch;margin:0 0 12px}.ts-adminfield{margin-bottom:10px;display:block}.ts-adminfield span{font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;color:var(--ink-faint);margin-bottom:4px;font-size:11px;font-weight:700;display:block}.ts-adminfield input{width:100%;max-width:320px;font-family:var(--mono);color:var(--ink);background:var(--paper);border:1.5px solid var(--grid-strong);border-radius:3px;padding:8px 10px;font-size:13px}.ts-btnrow{flex-wrap:wrap;gap:8px;margin:4px 0 10px;display:flex}.ts-admin-note{font-family:var(--mono);color:var(--ink-faint);word-break:break-all;margin:0 0 12px;font-size:11px}.ts-warn{color:var(--shu-ink);background:var(--shu-wash);border-left:3px solid var(--shu);max-width:64ch;margin:0;padding:10px 12px;font-size:13px;line-height:1.7}.ts-export{width:100%;min-height:160px;font-family:var(--mono);color:var(--ink);background:var(--paper);border:1.5px solid var(--grid-strong);border-radius:var(--r);margin-top:14px;padding:10px 12px;font-size:12px;line-height:1.6}@media(max-width:768px){.mode-grid{grid-template-columns:1fr}.bk-tabs{grid-template-columns:repeat(2,1fr)}.bk-tab{padding:11px 8px;font-size:12px}.trk-chip,.bk-chip,.ts-chip{min-width:44px;min-height:38px}.ts-setup,.ts-results{padding:16px 14px 18px}.ts-pct{font-size:34px}}.fm-main{max-width:720px}.fm-card{gap:14px;margin-bottom:12px;padding:22px 20px 18px;display:grid}.fm-meta{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);justify-content:space-between;gap:12px;font-size:11px;display:flex}.fm-kind{color:var(--accent);font-weight:700}.fm-word{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.fm-word b{font-size:40px;font-weight:700;line-height:1.1}.fm-word span{color:var(--ink-faint);font-size:15px}.fm-target{border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);align-items:baseline;gap:10px;padding:10px 0;display:flex}.fm-target .eb{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-faint);font-size:10px}.fm-target b{color:var(--accent);font-size:20px}.fm-input{gap:8px;display:flex}.fm-input input{min-width:0;font-family:var(--sans);border:var(--bd) solid var(--ink);border-radius:var(--r);background:var(--paper);color:var(--ink);flex:1;padding:12px 14px;font-size:22px}.fm-input input:focus{box-shadow:var(--drop) var(--drop) 0 var(--accent-wash);outline:none}.fm-input input:disabled{color:var(--ink-soft);background:#f2f0ea}.fm-btn{font-family:var(--mono);letter-spacing:.06em;border:var(--bd) solid var(--ink);border-radius:var(--r);background:var(--ink);color:var(--paper);cursor:pointer;box-shadow:3px 3px 0 var(--accent);padding:12px 18px;font-size:13px;font-weight:700}.fm-btn:active{box-shadow:1px 1px 0 var(--accent);transform:translate(2px,2px)}.fm-result{flex-wrap:wrap;align-items:baseline;gap:14px;min-height:30px;display:flex}.fm-verdict{font-family:var(--mono);color:var(--ink-faint);font-size:13px;font-weight:700}.fm-verdict.ok{color:var(--maru)}.fm-verdict.no{color:var(--shu)}.fm-answer b{font-size:22px}.fm-answer span{color:var(--ink-faint);margin-left:8px;font-size:13px}.fm-skip{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;justify-self:start;padding:0;font-size:11px;text-decoration:underline}.fm-scorebar{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);gap:18px;margin:0 0 18px 2px;font-size:11px;display:flex}.fm-scorebar b{color:var(--ink);margin-left:6px}.fm-opts{margin-bottom:12px}.fm-group{margin-bottom:14px}.fm-hint{color:var(--ink-faint);margin:6px 0 0;font-size:12px}.fm-stats{gap:6px;display:grid}.fm-stat{border:1px solid var(--line);border-radius:var(--r);background:#fff;grid-template-columns:1fr auto auto;align-items:baseline;gap:10px;padding:6px 10px;font-size:13px;display:grid}.fm-stat b{font-family:var(--mono)}.fm-stat i{font-style:normal;font-family:var(--mono);color:var(--ink-faint);font-size:11px}.fm-stat.good b{color:var(--maru)}.fm-stat.low b{color:var(--shu)}.fm-empty{color:var(--ink-faint);margin:0;font-size:13px}.fm-reset{font-family:var(--mono);color:var(--ink-faint);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:0;font-size:11px;text-decoration:underline}@media(max-width:768px){.fm-card{padding:16px 14px 14px}.fm-word b{font-size:32px}.fm-input{flex-direction:column}.fm-input input{font-size:20px}.fm-btn{width:100%;padding:14px}}.bk-trainer{color:var(--ink);border:var(--bd) solid var(--ink);border-radius:var(--r);background:var(--accent-wash);box-shadow:var(--drop) var(--drop) 0 var(--ink);flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:16px;padding:12px 14px;text-decoration:none;display:flex}.bk-trainer .eb{font-family:var(--mono);letter-spacing:.12em;background:var(--ink);color:var(--paper);border-radius:3px;padding:2px 6px;font-size:10px}.bk-trainer b{font-size:15px}.bk-trainer span:not(.eb):not(.bk-trainer-need){color:var(--ink-soft);font-size:12px}.bk-trainer-need{font-family:var(--mono);color:var(--ink-faint);flex:1 0 100%;font-size:11px}.bk-trainer:hover{box-shadow:4px 4px 0 var(--ink);transform:translate(1px,1px)}body.tr-body-lock{overscroll-behavior-y:none}.tr{--accent:#2a5fa5;--accent-wash:#e9f0fa;background:var(--paper);flex-direction:column;height:100dvh;display:flex}.tr-head{border-bottom:var(--bd) solid var(--ink);background:var(--paper);padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));justify-content:space-between;align-items:center;gap:12px;display:flex}.tr-brand{color:var(--ink);align-items:center;gap:8px;text-decoration:none;display:flex}.tr-brand .stamp{background:var(--accent);color:var(--paper);border:var(--bd) solid var(--ink);border-radius:3px;padding:1px 6px;font-size:13px;font-weight:700}.tr-brand b{letter-spacing:.02em;font-size:16px}.tr-nav{align-items:center;gap:8px;display:flex}.tr-nav a{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--line);font-size:11px;text-decoration:none}.tr-nav a:hover{color:var(--accent)}.tr-icon{font-family:var(--sans);border:var(--bd) solid var(--ink);border-radius:var(--r);background:var(--paper);color:var(--ink);cursor:pointer;padding:7px 9px;font-size:14px;line-height:1}.tr-icon:active{transform:translate(1px,1px)}.tr-icon[aria-pressed=true]{background:var(--accent);color:var(--paper)}.tr-nokey{border:var(--bd) dashed var(--accent);border-radius:var(--r);background:var(--accent-wash);margin:12px 14px 0;padding:12px 14px;font-size:13px}.tr-nokey p{margin:0 0 8px}.tr-nokey p b{color:var(--ink)}.tr-nokey-links{flex-wrap:wrap;gap:6px 16px;display:flex}.tr-nokey-links a{font-family:var(--mono);color:var(--accent);font-size:12px;font-weight:700}.tr-icon i{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);font-size:10px;font-style:normal}.tr-icon[aria-pressed=true] i{color:inherit}.tr-feed{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:12px;padding:14px 14px 6px;display:flex;overflow-y:auto}.tr-empty{color:var(--ink-soft);margin:auto 0;font-size:14px}.tr-empty p{margin:0 0 8px}.tr-empty-h{color:var(--ink);font-size:17px;font-weight:700}.tr-empty-progress{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-faint);font-size:11px}.tr-suggest{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.tr-chip{border:1px solid var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:999px;padding:7px 10px;font-size:12px}.tr-chip:hover{background:var(--accent-wash)}.tr-msg{max-width:100%}.tr-user{background:var(--ink);max-width:88%;color:var(--paper);border-radius:12px 12px 3px;align-self:flex-end;padding:9px 12px}.tr-user p{white-space:pre-wrap;margin:0;font-size:15px}.tr-shot{border-radius:8px;max-width:180px;margin-bottom:6px;display:block}.tr-bot{border:var(--bd) solid var(--ink);box-shadow:var(--drop) var(--drop) 0 var(--accent-wash);background:#fff;border-radius:3px 12px 12px;align-self:stretch;padding:12px 13px 10px}.tr-body h3,.tr-body h4,.tr-body h5{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:14px 0 6px;font-size:10px}.tr-body>:first-child{margin-top:0}.tr-body p{margin:0 0 8px;font-size:14px;line-height:1.6}.tr-body ul,.tr-body ol{margin:0 0 8px;padding-left:20px;list-style:outside}.tr-body ol{list-style:decimal}.tr-body li::marker{color:var(--ink-faint)}.tr-body li{margin-bottom:4px;font-size:14px;line-height:1.6}.tr-body code{background:var(--accent-wash);font-family:var(--sans);border-radius:3px;padding:.05em .3em}.tr-body .tbl{margin:0 0 10px}.tr-body table{font-size:13px}.tr-wait{font-family:var(--mono);color:var(--ink-faint);font-size:12px}.tr-error{color:var(--shu);font-size:13px}.cb{border:var(--bd) solid var(--ink);border-radius:var(--r);background:var(--paper);margin:0 0 10px;padding:12px 58px 12px 12px;position:relative}.cb pre{font-family:var(--sans);white-space:pre-wrap;word-break:break-word;margin:0;font-size:19px;line-height:1.7}.cb.jp pre{font-size:21px}.cb-copy{font-family:var(--mono);letter-spacing:.04em;border:1px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer;border-radius:3px;padding:4px 7px;font-size:10px;position:absolute;top:8px;right:8px}.tr-foot{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding-top:8px;display:flex}.tr-fbtn{font-family:var(--mono);letter-spacing:.04em;border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:#fff;border-radius:3px;padding:5px 9px;font-size:11px}.tr-fbtn:hover{background:var(--accent-wash)}.tr-danger{color:var(--shu);border-color:var(--shu)}.tr-chips{flex-wrap:wrap;gap:4px;display:inline-flex}.lref{font-family:var(--mono);letter-spacing:.04em;border:1px solid var(--accent);background:var(--accent-wash);color:var(--accent);cursor:pointer;vertical-align:1px;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700}.lref:hover{background:var(--accent);color:var(--paper)}.tr-composer{border-top:var(--bd) solid var(--ink);background:var(--paper);padding:8px 12px calc(8px + env(safe-area-inset-bottom))}.tr-controls{align-items:center;gap:8px;margin-bottom:6px;display:flex}.tr-mode{font-family:var(--mono);letter-spacing:.1em;background:var(--ink);color:var(--paper);border-radius:3px;padding:3px 7px;font-size:10px}.tr-mode[data-mode=ask]{background:var(--maru)}.tr-mode[data-mode=image]{background:var(--accent)}.tr-toggle{font-family:var(--mono);letter-spacing:.06em;border:1px solid var(--ink);cursor:pointer;background:#fff;border-radius:999px;padding:4px 8px;font-size:10px}.tr-toggle[aria-pressed=true]{background:var(--maru);color:#fff;border-color:var(--maru)}.tr-stop{font-family:var(--mono);border:1px solid var(--shu);color:var(--shu);cursor:pointer;background:#fff;border-radius:3px;margin-left:auto;padding:4px 8px;font-size:10px}.tr-row{align-items:flex-end;gap:6px;display:flex}.tr-row textarea{resize:none;min-width:0;font-family:var(--sans);border:var(--bd) solid var(--ink);border-radius:var(--r);color:var(--ink);background:#fff;flex:1;max-height:180px;padding:10px 12px;font-size:16px;line-height:1.45}.tr-row textarea:focus{box-shadow:3px 3px 0 var(--accent-wash);outline:none}.tr-send{border:var(--bd) solid var(--ink);border-radius:var(--r);background:var(--accent);color:#fff;cursor:pointer;padding:10px 16px;font-size:20px;line-height:1}.tr-send:disabled{opacity:.45;cursor:default}.tr-attach{align-items:center;gap:8px;margin-bottom:6px;display:flex}.tr-attach img{border:1px solid var(--ink);border-radius:4px;height:54px}.tr-drop{font-family:var(--mono);color:var(--shu);cursor:pointer;background:0 0;border:none;font-size:10px;text-decoration:underline}.tr-sheet{z-index:60;background:#1c1c1a73;align-items:flex-end;display:none;position:fixed;inset:0}.tr-sheet.on{display:flex}.tr-sheet-inner{background:var(--paper);border-top:var(--bd) solid var(--ink);width:100%;max-height:86dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:12px 12px 0 0;flex-direction:column;display:flex}.tr-sheet-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.tr-sheet-head b{font-size:15px}.tr-sheet-body{padding:12px 14px 20px;overflow-y:auto}.tr-ex{color:var(--ink);border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-bottom:6px;padding:9px 11px;text-decoration:none;display:block}.tr-ex:hover{border-color:var(--accent);background:var(--accent-wash)}.tr-ex .jp{font-size:17px;display:block}.tr-ex-en{color:var(--ink-faint);margin-top:2px;font-size:12px;display:block}.tr-sheet-go{font-family:var(--mono);color:var(--accent);margin-top:8px;font-size:11px;display:inline-block}.tr-search{border:var(--bd) solid var(--ink);border-radius:var(--r);background:#fff;width:100%;margin-bottom:10px;padding:9px 11px;font-size:15px}.tr-hist{border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-bottom:8px;padding:10px 11px}.tr-hist-head{align-items:center;gap:6px;margin-bottom:6px;display:flex}.tr-hist-mode,.tr-hist-date{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);font-size:10px}.tr-hist-head .tr-fbtn:first-of-type{margin-left:auto}.tr-hist-in{color:var(--ink-soft);margin:0 0 6px;font-size:13px}.tr-hist-out{border-top:1px dashed var(--line);padding-top:6px;font-size:13px}.tr-hist-out .cb pre{font-size:17px}.tr-field{margin-bottom:16px;display:block}.tr-field>span{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:5px;font-size:10px;display:block}.tr-field input[type=password],.tr-field input[type=text],.tr-field select{width:100%;font-family:var(--sans);border:var(--bd) solid var(--ink);border-radius:var(--r);color:var(--ink);background:#fff;padding:9px 11px;font-size:15px}.tr-field small{color:var(--ink-faint);margin-top:5px;font-size:11px;line-height:1.5;display:block}.tr-btnrow{flex-wrap:wrap;gap:8px;display:flex}.tr-filebtn{cursor:pointer;display:inline-block}.tr-check{color:var(--ink-soft);margin-top:8px;font-size:12px;display:block}.tr-note{color:var(--maru);min-height:16px;font-size:12px}.tr-note.warn{color:var(--shu)}.tr-empty-note{color:var(--ink-faint);font-size:13px}@media(min-width:780px){.tr-feed,.tr-composer>*{width:100%;max-width:760px;margin-left:auto;margin-right:auto}.tr-sheet{justify-content:center;align-items:center}.tr-sheet-inner{border:var(--bd) solid var(--ink);border-radius:var(--r);max-width:620px;max-height:80dvh}}.mode-translate{border-color:var(--ink);background:linear-gradient(#e9f0fa,#fff 60%);margin-bottom:14px;display:block}.mode-translate .eb{color:#2a5fa5}.mode-forms{background:linear-gradient(#eeece6,#fff 60%)}.bk-quick{gap:8px;margin:0 0 12px;display:none}.bk-quick a{text-align:center;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border:var(--bd) solid var(--ink);border-radius:var(--r);background:#fff;flex:1;padding:9px 6px;font-size:11px;text-decoration:none}.bk-quick a.on{background:var(--accent);color:var(--paper)}.deck-wide,.mode-wide{display:none}@media(max-width:768px){.mode-slides{opacity:.75}.mode-slides .mode-go{color:var(--ink-faint)}.mode-wide{display:block}.deck-wide{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);margin-left:6px;font-size:10px;font-style:normal;display:inline}.pres-link{opacity:.75}.slides-only{display:none!important}.bk-quick{display:flex}.mode-grid{gap:10px}}.bk-found{border-radius:3px;animation:2.4s ease-out bk-flash}@keyframes bk-flash{0%,40%{background:#fdf3c4;box-shadow:0 0 0 4px #fdf3c4}to{box-shadow:none;background:0 0}}.tr-hist-shot{border:1px solid var(--line);border-radius:4px;max-width:120px;margin-bottom:6px;display:block}.pr-page{--pr-fs:10.5pt;--pr-ruby:6pt;--pr-rule:#6f7d72;--pr-pw:210mm;--pr-ph:297mm;--pr-mx:12mm;--pr-my:14mm;min-height:100%;color:var(--ink);background:#eeede8;padding-bottom:60px}.pr-page.pr-compact{--pr-fs:9pt;--pr-ruby:5.5pt}.pr-page.pr-paper-letter{--pr-pw:215.9mm;--pr-ph:279.4mm}.pr-bar{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:var(--bd) solid var(--ink);background:#fbfaf7f5;position:sticky;top:0}.pr-bar-in{max-width:1180px;font-family:var(--mono);flex-wrap:wrap;align-items:center;gap:12px 18px;margin:0 auto;padding:12px 26px;font-size:12px;display:flex}.pr-back{color:var(--ink-faint);letter-spacing:.4px;text-decoration:none}.pr-back:hover{color:var(--ink)}.pr-field{align-items:center;gap:7px;display:flex}.pr-field>span{letter-spacing:.6px;text-transform:uppercase;color:var(--ink-faint);font-size:11px}.pr-field select{font-family:var(--mono);color:var(--ink);background:var(--paper);border:1.5px solid var(--ink);cursor:pointer;border-radius:3px;padding:4px 8px;font-size:12px}.pr-checks{flex-wrap:wrap;gap:6px 14px;display:flex}.pr-checks label{color:var(--ink-soft);cursor:pointer;align-items:center;gap:6px;display:flex}.pr-checks input{width:14px;height:14px;accent-color:var(--accent);cursor:pointer}.pr-checks label:has(input:disabled){opacity:.4;cursor:default}.pr-checks input:disabled{cursor:default}.pr-go{font-family:var(--mono);letter-spacing:.5px;color:#fff;background:var(--accent);border:var(--bd) solid var(--ink);border-radius:var(--r);cursor:pointer;box-shadow:3px 3px 0 var(--ink);margin-left:auto;padding:8px 16px;font-size:12px;font-weight:700}.pr-go:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.pr-hint{max-width:1180px;color:var(--ink-faint);margin:0 auto;padding:0 26px 12px;font-size:12px;line-height:1.6}.pr-count{font-family:var(--mono);letter-spacing:.3px;color:var(--ink);font-size:11.5px;display:block}.pr-count.warn{color:var(--shu)}.pr-hint-sub{display:block}.pr-stage{width:calc(var(--pr-pw) * var(--pr-zoom,1));height:var(--pr-stage-h,auto);margin:26px auto}.pr-sheet{box-sizing:border-box;width:var(--pr-pw);transform:scale(var(--pr-zoom,1));transform-origin:0 0;min-height:var(--pr-flow-h,var(--pr-ph));padding:var(--pr-my) var(--pr-mx);box-shadow:0 0 0 1px var(--grid-strong),0 2px 18px #1c1c1a21;font-size:var(--pr-fs);background:#fff;line-height:1.75;position:relative}.pr-rule{border-top:1.5px dashed var(--accent);pointer-events:none;z-index:1;height:0;position:absolute;left:0;right:0}.pr-rule:after{content:"page " attr(data-page);font-family:var(--mono);letter-spacing:.7px;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);background:#fff;border-radius:2px;padding:1px 5px;font-size:9px;font-weight:700;position:absolute;bottom:3px;right:0}.pr-probe{visibility:hidden;pointer-events:none;column-fill:auto;column-gap:0;position:absolute;top:0;left:-40000px}.pr-probe .pr-sheet{width:100%;min-height:0;box-shadow:none;margin:0;padding:0;transform:none}.pr-probe .pr-rule{display:none}.pr-probe .pr-key,.pr-probe .pr-filler{break-before:column}.pr-ans-keyonly .pr-probe .pr-key{break-before:auto}.pr-head{border-bottom:var(--bd) solid var(--ink);margin-bottom:16px;padding-bottom:10px}.pr-headline{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.pr-stamp{font-family:var(--mono);color:var(--ink);border:1.2px solid var(--accent);background:0 0;border-radius:3px;padding:1px 7px;font-size:.82em;font-weight:700}.pr-head h1{margin:0;font-size:1.7em;font-weight:700;line-height:1.35}.pr-headmeta{font-family:var(--mono);letter-spacing:.4px;color:var(--ink-soft);justify-content:space-between;gap:12px;margin-top:6px;font-size:.76em;display:flex}.pr-subtitle{color:var(--ink-soft);margin:8px 0 0;font-size:.96em}.pr-names{font-family:var(--mono);color:var(--ink-soft);gap:26px;margin-top:12px;font-size:.78em;display:none}.pr-names-on .pr-names{display:flex}.pr-names span{flex:1;align-items:baseline;gap:8px;display:flex}.pr-names i{border-bottom:1px solid var(--pr-rule);flex:1;height:1.1em}.pr-sec{margin-top:20px}.pr-h2{border-bottom:1.5px solid var(--ink);break-after:avoid;align-items:center;gap:9px;margin:0 0 10px;padding-bottom:5px;font-size:1em;font-weight:700;display:flex}.pr-eb{font-family:var(--mono);letter-spacing:.5px;color:var(--accent);font-size:.78em}.pr-body>*{margin-bottom:8px}.pr-body h3{break-after:avoid;margin:14px 0 6px;font-size:1.03em;font-weight:700}.pr-body h4{font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;color:var(--ink-soft);break-after:avoid;margin:12px 0 4px;font-size:.74em;font-weight:700}.pr-sheet rt,.pr-sheet .sq.wide rt{font-size:max(var(--pr-ruby),.5em);color:var(--ink-soft)}.pr-sheet .tbl{overflow:visible}.pr-sheet .tbl,.pr-sheet .b-table{break-inside:avoid}.pr-sheet .b-table{font-size:.92em;line-height:1.55}.pr-sheet .b-table th,.pr-sheet .b-table td{padding:4px 7px}.pr-sheet .b-table th{white-space:normal}.pr-sheet .b-table td.jp{font-size:1.02em}.pr-sheet .b-vocab{gap:5px}.pr-sheet .b-vocab span{border-color:var(--pr-rule);padding:2px 8px;font-size:1.05em;line-height:1.7}.pr-sheet .b-warn,.pr-sheet .b-conv{border-radius:0;padding:7px 11px 7px 13px;font-size:.96em}.pr-sheet .b-warn{border:1.2px solid var(--ink);border-left:5px solid var(--ink);background:var(--shu-wash)}.pr-sheet .b-conv{border:0;border-left:4px double var(--ink);background:0 0}.pr-sheet .b-warn:before,.pr-sheet .b-conv:before{font-family:var(--mono);letter-spacing:.9px;color:var(--ink);margin-bottom:3px;font-size:.7em;font-weight:700;display:block}.pr-sheet .b-warn:before{content:"注意 · WATCH OUT"}.pr-sheet .b-conv:before{content:"会話 · CONVERSATION"}.pr-sheet .b-note{padding-left:10px}.pr-drill{gap:11px;margin:0;padding:0;list-style:none;display:grid}.pr-q{border:1.2px solid var(--pr-rule);border-radius:var(--r);break-inside:avoid;padding:10px 12px 12px}.pr-qhead{font-family:var(--mono);color:var(--ink-soft);align-items:center;gap:9px;margin-bottom:6px;font-size:.74em;display:flex}.pr-qn{letter-spacing:.5px;color:var(--ink);border:1.2px solid var(--accent);background:0 0;border-radius:2px;padding:1px 6px;font-size:1.15em;font-weight:700}.pr-lead{margin:0 0 8px;font-size:1.05em;line-height:1.7}.pr-hw{gap:4px;margin-bottom:8px}.pr-sheet .pr-hw .sq{border-color:var(--pr-rule);width:26px;height:26px;font-size:15px}.pr-sheet .pr-hw .sq.wide{width:auto;min-width:26px;padding:0 5px}.pr-choices{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:5px 10px;margin:0;padding:0;list-style:none;display:grid}.pr-choice{border:1.2px solid var(--pr-rule);break-inside:avoid;border-radius:3px;align-items:center;gap:8px;padding:5px 9px;font-size:1.02em;display:flex}.pr-lab{width:1.5em;height:1.5em;font-family:var(--mono);color:var(--ink);border:1.2px solid var(--pr-rule);border-radius:50%;flex:none;place-items:center;font-size:.74em;font-weight:700;display:grid}.pr-write{margin-top:8px;display:none}.pr-qform-write .pr-write{display:block}.pr-qform-write .pr-choices,.pr-qform-write .pr-pick .pr-write{display:none}.pr-qform-write .pr-pick .pr-choices{display:block}.pr-sheet .pr-wsq{gap:4px}.pr-sheet .pr-wsq .sq{border-color:var(--pr-rule);background:0 0;width:30px;height:30px}.pr-wline{gap:30px;padding:10px 0 4px;display:grid}.pr-wline i{border-bottom:1px solid var(--pr-rule);height:0;display:block}.pr-ansjp,.pr-keyjp{display:none}.pr-qform-write .pr-ansjp{margin-right:8px;font-weight:700;display:inline}.pr-qform-write .pr-keyjp{flex:none;font-weight:700;display:inline}.pr-tick{border:1.2px solid var(--pr-rule);width:1em;height:1em;color:var(--maru);border-radius:2px;flex:none;place-items:center;margin-left:auto;font-weight:700;line-height:1;display:grid}.pr-ans-inline .pr-choice.ok .pr-tick{border-color:var(--maru)}.pr-answer{border-left:3px solid var(--maru);background:var(--maru-wash);color:var(--ink-soft);border-radius:0 3px 3px 0;margin-top:8px;padding:6px 10px;font-size:.92em;display:none}.pr-answer b{font-family:var(--mono);color:var(--maru);margin-right:8px}.pr-ans-inline .pr-answer{display:block}.pr-ans-inline .pr-choice.ok{border-color:var(--maru);background:var(--maru-wash)}.pr-ans-inline .pr-choice.ok .pr-tick:after{content:"○"}.pr-key{break-before:page}.pr-filler{break-before:page;height:calc(var(--pr-ph) - 2 * var(--pr-my) - 2mm);text-align:center;font-family:var(--mono);color:var(--ink-soft);place-content:center;justify-items:center;gap:5px;font-size:.8em;display:grid}.pr-filler p{max-width:95mm;margin:0;line-height:1.8}.pr-keylist{gap:5px;margin:0;padding:0;list-style:none;display:grid}.pr-keylist li{border-bottom:1px dotted var(--pr-rule);break-inside:avoid;align-items:baseline;gap:9px;padding-bottom:4px;display:flex}.pr-keyn{width:2.6em;font-family:var(--mono);color:var(--ink-soft);flex:none;font-size:.78em}.pr-keya{width:1.4em;font-family:var(--mono);color:var(--maru);flex:none;font-weight:700}.pr-keynote{color:var(--ink-soft);font-size:.92em}.pr-foot{border-top:1.5px solid var(--ink);font-family:var(--mono);color:var(--ink-soft);justify-content:space-between;gap:12px;margin-top:20px;padding-top:8px;font-size:.72em;display:flex}.pr-off{opacity:.45;cursor:not-allowed}.pr-hide-ref .pr-sec-ref,.pr-hide-deep .pr-sec-deep,.pr-hide-drill .pr-sec-drill,.pr-hide-drill:not(.pr-ans-keyonly) .pr-key,.pr-ans-inline .pr-key,.pr-ans-none .pr-key,.pr-ans-inline .pr-filler,.pr-ans-none .pr-filler,.pr-ans-keyonly .pr-filler,.pr-ans-keyonly .pr-sec-ref,.pr-ans-keyonly .pr-sec-deep,.pr-ans-keyonly .pr-sec-drill,.pr-ans-keyonly .pr-names{display:none}.pr-ans-keyonly .pr-key{break-before:auto;margin-top:0}@media(max-width:720px){.pr-bar-in,.pr-hint{padding-left:14px;padding-right:14px}.pr-go{width:100%;margin-left:0}.pr-stage{margin:14px auto}}@media print{.pr-page,body:has(.pr-page){background:#fff}.pr-page{padding:0}.pr-bar,.gloss-pop,.pr-rule,.pr-probe{display:none}.pr-stage{width:auto;height:auto;margin:0}.pr-sheet{width:auto;max-width:none;min-height:0;box-shadow:none;border:0;margin:0;padding:0;transform:none}.pr-sheet .gw,.pr-sheet .headword.gw-hw{cursor:auto;border-bottom-color:#0000}.pr-sheet .b-table thead{display:table-row-group}.pr-answer,.pr-choice.ok,.pr-sheet .b-warn,.pr-sheet .b-table th,.pr-sheet .b-vocab span{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
