.lp-root{background:var(--background);min-height:100dvh;color:var(--foreground);--lp-line:color-mix(in srgb, var(--foreground) 12%, transparent);--lp-soft:color-mix(in srgb, var(--primary) 8%, var(--card))}.lp-root a{text-decoration:none}.lp-root button{font:inherit}.lp-root h1:focus{outline:none}.lp-root svg{flex-shrink:0}.lp-header{z-index:40;background:color-mix(in srgb, var(--background) 88%, transparent);border-bottom:1px solid var(--lp-line);position:sticky;top:0}.lp-header-inner{align-items:center;gap:32px;max-width:1280px;margin:auto;padding:18px 32px;display:flex}.lp-brand{color:var(--foreground);letter-spacing:-1.6px;align-items:center;gap:10px;font-size:29px;font-weight:760;display:flex}.lp-brand .brand-rabbit{width:30px;height:36px;color:var(--primary)}.lp-nav{align-items:center;gap:5px;margin:auto;display:flex}.lp-nav a,.lp-nav button{color:var(--muted);background:0 0;border:0;border-radius:12px;align-items:center;gap:7px;padding:10px 13px;font-size:13px;font-weight:550;transition:color .2s,background .2s;display:flex}.lp-nav [aria-current]{color:var(--primary);background:var(--accent)}.lp-nav a:hover{color:var(--foreground);background:var(--secondary)}.lp-controls{align-items:center;gap:5px;display:flex}.lp-controls select{max-width:112px;color:var(--foreground);cursor:pointer;background:0 0;border:none;padding:10px 2px;font-size:12px}.lp-controls select option{background:var(--card);color:var(--foreground)}.lp-controls button{color:var(--muted);background:0 0;border:0;border-radius:10px;place-items:center;width:35px;height:38px;display:grid}.lp-controls button:hover{background:var(--secondary);color:var(--primary)}.lp-main{max-width:1184px;margin:auto;padding:0 32px}.lp-preview{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;padding:22px 0 4px;font-size:11px;display:flex}.lp-preview>span,.lp-preview a{align-items:center;gap:7px;display:flex}.lp-preview a{color:var(--muted)}.lp-preview i{background:var(--primary);border-radius:50%;width:5px;height:5px}.lp-welcome{justify-content:space-between;align-items:center;gap:24px;padding:28px 0 30px;display:flex}.lp-eyebrow{letter-spacing:1.7px;text-transform:uppercase;color:var(--primary);margin:0 0 16px;font-size:10px;font-weight:650}.lp-welcome h1{letter-spacing:-2.1px;white-space:pre-line;margin:0 0 19px;font-size:clamp(38px,4.1vw,57px);font-weight:620;line-height:1.13}.lp-intro{color:var(--muted);max-width:560px;margin:0;font-size:15px;line-height:1.7}.lp-mascot{flex-shrink:0;place-items:center;width:280px;height:185px;display:grid;position:relative}.lp-mascot-orbit{background:radial-gradient(circle, color-mix(in srgb, var(--primary) 15%, transparent), transparent 70%);border:1px solid color-mix(in srgb, var(--primary) 13%, transparent);border-radius:50%;width:180px;height:180px;position:absolute}.lp-mascot-orbit:after{content:"";border:1px solid color-mix(in srgb, var(--primary) 8%, transparent);border-radius:50%;position:absolute;inset:20px}.lp-mascot .mascot-companion.mascot-embedded{z-index:1;--mascot-size:172px;max-width:none;display:block;position:relative;inset:auto;transform:none}.lp-mascot .mascot-pet,.lp-mascot .mascot-frames{width:172px;height:172px}.lp-main .continue-study{background:var(--lp-soft);border:1px solid var(--lp-line);box-shadow:none;border-radius:16px;margin:0 0 30px;padding:18px 22px}.lp-section-title{justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 22px;display:flex}.lp-section-title h2{letter-spacing:-.5px;margin:0;font-size:21px;font-weight:620}.lp-section-title p{color:var(--muted);margin:0;font-size:12px}.lp-book-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.lp-book{isolation:isolate;text-align:left;background:var(--card);border:1px solid var(--lp-line);color:var(--foreground);min-width:0;animation:.55s both lp-arrive;animation-delay:var(--arrival);border-radius:25px;flex-direction:column;padding:24px 26px 20px;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .25s,box-shadow .35s;display:flex;position:relative;overflow:hidden}.lp-book.is-ready{background:linear-gradient(155deg, var(--lp-soft), var(--card) 75%);border-color:color-mix(in srgb, var(--primary) 36%, var(--lp-line))}.lp-book:hover{border-color:var(--primary);transform:translateY(-7px);box-shadow:0 20px 40px #00000012}.lp-book:active{transform:translateY(-2px)scale(.99)}.lp-book-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.lp-stage{color:var(--muted);font:500 11px ui-monospace,monospace}.lp-status{color:var(--muted);align-items:center;gap:6px;font-size:10px;display:flex}.is-ready .lp-status{color:var(--primary)}.lp-status i{background:currentColor;border-radius:50%;width:5px;height:5px}.lp-book-art{width:146px;height:118px;color:var(--primary);align-self:center;place-items:center;margin:8px 0;display:grid;position:relative}.lp-ring{border:1px solid color-mix(in srgb, var(--primary) 24%, transparent);border-radius:50%;transition:transform .7s cubic-bezier(.2,.8,.2,1);position:absolute}.r1{width:108px;height:108px}.r2{width:80px;height:80px}.lp-glyph{font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:55px;line-height:1;transition:transform .5s}.lp-dot{background:var(--primary);border-radius:50%;width:7px;height:7px;position:absolute;top:24px;right:28px}.art-1 .r1{border-radius:28px;transform:rotate(20deg)}.art-1 .r2{border-radius:24px;transform:rotate(-12deg)}.art-2 .r1{border-radius:50% 50% 8px 8px;width:100px;height:104px}.art-2 .r2{border-radius:50% 50% 4px 4px;width:70px;height:75px}.lp-book:hover .r1{transform:rotate(35deg)scale(1.05)}.lp-book:hover .r2{transform:rotate(-20deg)}.lp-book:hover .lp-glyph{transform:translateY(-3px)}.lp-level{color:var(--muted);margin:0 0 5px;font-size:11px}.lp-book h3{letter-spacing:-1.6px;margin:0 0 12px;font-size:39px;font-weight:660;line-height:1.2}.lp-book h3 span{color:var(--primary);font-weight:450}.lp-description{color:var(--muted);min-height:44px;margin:0 0 25px;font-size:13px;line-height:1.65}.lp-book-action{border-top:1px solid var(--lp-line);justify-content:space-between;align-items:center;gap:14px;margin-top:auto;padding-top:17px;font-size:12px;font-weight:560;display:flex}.lp-arrow{background:var(--secondary);border-radius:50%;place-items:center;width:34px;height:34px;transition:background .2s,color .2s,transform .3s;display:grid}.is-ready .lp-arrow,.lp-book:hover .lp-arrow{background:var(--primary);color:var(--on-primary)}.lp-book:hover .lp-arrow{transform:rotate(45deg)}.lp-footer{border-top:1px solid var(--lp-line);color:var(--muted);justify-content:space-between;align-items:center;gap:24px;margin:40px 0 0;padding:25px 0 30px;font-size:11px;display:flex}.lp-footer a{color:var(--muted);flex-shrink:0;align-items:center;gap:6px;display:flex}.lp-scene{animation:.4s both lp-arrive}.lp-back{color:var(--muted);background:0 0;border:0;align-items:center;gap:9px;margin:30px 0 18px;padding:0;display:flex;font-size:12px!important}.lp-back:hover{color:var(--primary)}.lp-book-heading{border-bottom:1px solid var(--lp-line);justify-content:space-between;align-items:center;gap:24px;padding-bottom:35px;display:flex}.lp-book-heading h1{letter-spacing:-2px;margin:0 0 12px;font-size:64px;font-weight:600;line-height:1.1}.lp-book-heading h1 span{color:var(--primary)}.lp-heading-glyph{color:color-mix(in srgb, var(--primary) 45%, transparent);padding-right:30px;font-family:serif;font-size:100px}.lp-book-content{grid-template-columns:minmax(0,1fr) 265px;align-items:start;gap:36px;margin-top:28px;display:grid}.lp-list-label{color:var(--muted);margin:0 0 16px;font-size:11px}.lp-unit-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lp-unit{background:var(--card);border:1px solid var(--lp-line);min-width:0;min-height:112px;color:var(--foreground);border-radius:16px;align-items:center;gap:14px;padding:20px 16px;transition:transform .25s,border-color .25s;display:flex}.lp-unit:hover{border-color:var(--primary);transform:translateY(-3px)}.lp-unit>.unit-title,.lp-unit>div{flex:1;min-width:0}.lp-unit-number{color:var(--primary);font-variant-numeric:tabular-nums;font-size:13px}.lp-unit h2{margin:0;font-size:19px;line-height:1.7}.lp-unit .unit-title-translation{color:var(--muted);font-weight:400;line-height:1.5;font-size:11px!important}.lp-unit>svg:last-child{color:var(--muted);margin-left:auto}.lp-supplement{grid-column:1/-1}.lp-supplement .lp-list-label{margin:0}.lp-exam{background:var(--lp-soft);border:1px solid var(--lp-line);color:var(--primary);border-radius:21px;padding:26px;position:sticky;top:105px}.lp-exam>.lp-eyebrow{margin:18px 0 10px}.lp-exam h2{color:var(--foreground);margin:0 0 8px;font-size:24px}.lp-exam h3{color:var(--foreground);margin:0 0 14px;font-size:14px;font-weight:500}.lp-exam>p:not(.lp-eyebrow){color:var(--muted);font-size:13px}.lp-exam a,.lp-primary{background:var(--primary);color:var(--on-primary);border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;padding:12px 16px;font-size:12px;display:flex}.lp-pending{background:var(--card);border:1px solid var(--lp-line);border-radius:24px;align-items:flex-start;gap:28px;max-width:780px;margin:35px 0 70px;padding:38px;display:flex}.lp-pending-icon{background:var(--accent);color:var(--primary);border-radius:18px;padding:18px;display:flex}.lp-pending h2{letter-spacing:-.6px;margin:0 0 15px;font-size:28px;line-height:1.3}.lp-pending p:not(.lp-eyebrow){color:var(--muted);max-width:520px;font-size:14px}.lp-primary{width:fit-content}@keyframes lp-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (min-width:900px){.lp-nav svg{display:none}}@media (max-width:1050px){.lp-header-inner{gap:18px;padding-inline:24px}.lp-nav a,.lp-nav button{padding:9px;font-size:12px}.lp-nav svg{display:none}.lp-main{padding-inline:24px}.lp-controls{gap:0}.lp-book{padding:22px}.lp-book-content{grid-template-columns:1fr 240px;gap:22px}}@media (max-width:760px){.lp-header-inner{justify-content:space-between;padding:12px 20px}.lp-brand{font-size:26px}.lp-brand .brand-rabbit{width:25px;height:31px}.lp-nav{z-index:45;border:1px solid var(--lp-line);background:color-mix(in srgb, var(--card) 95%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:22px;justify-content:space-around;padding:7px 5px;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 4px 30px #00000020}.lp-nav svg{display:block}.lp-nav a,.lp-nav button{border-radius:14px;flex-direction:column;gap:3px;max-width:23%;padding:7px 9px;font-size:9px}.lp-main{padding:0 20px 82px}.lp-preview{padding-top:15px;font-size:10px}.lp-welcome{gap:4px;min-height:225px;padding:30px 0 35px;position:relative}.lp-welcome>div:first-child{z-index:2;max-width:72%;position:relative}.lp-welcome h1{letter-spacing:-1.5px;font-size:37px;line-height:1.15}.lp-eyebrow{letter-spacing:1.2px;font-size:9px}.lp-intro{max-width:245px;font-size:12px}.lp-mascot{width:120px;height:140px;position:absolute;top:58px;right:-5px}.lp-mascot-orbit{width:120px;height:120px}.lp-mascot .mascot-companion.mascot-embedded{--mascot-size:100px}.lp-mascot .mascot-pet,.lp-mascot .mascot-frames{width:100px;height:100px}.lp-section-title{margin-bottom:18px;display:block}.lp-section-title h2{margin-bottom:5px;font-size:20px}.lp-section-title p{font-size:11px}.lp-book-grid{grid-template-columns:1fr;gap:14px}.lp-book{border-radius:21px;min-height:240px;padding:20px 22px}.lp-book-top{margin-bottom:22px}.lp-book-art{transform-origin:100%;opacity:.75;z-index:-1;margin:0;position:absolute;top:46px;right:12px;transform:scale(.8)}.lp-book .lp-level,.lp-book .lp-description{max-width:65%}.lp-book h3{font-size:36px}.lp-description{min-height:0;margin-bottom:22px;font-size:12px}.lp-book-action{padding-top:12px;font-size:12px}.lp-book:hover{transform:translateY(-3px)}.lp-footer{align-items:flex-start;gap:20px;margin-top:28px;padding-top:20px;font-size:10px}.lp-footer>span{max-width:210px}.lp-book-heading h1{font-size:48px}.lp-heading-glyph{padding-right:10px;font-size:76px}.lp-book-content,.lp-unit-grid{grid-template-columns:1fr}.lp-unit{min-height:94px;padding:17px}.lp-unit h2{font-size:21px}.lp-exam{position:static}.lp-pending{flex-direction:column;gap:20px;padding:25px}.lp-pending h2{font-size:25px}.lp-back{margin-top:25px}.lp-main .continue-study{padding:16px;font-size:12px}}@media (max-width:360px){.lp-controls select{max-width:88px}.lp-controls button{width:29px}.lp-header-inner,.lp-main{padding-inline:16px}.lp-welcome h1{font-size:32px}.lp-mascot{transform-origin:100%;right:-8px;transform:scale(.8)}.lp-nav a,.lp-nav button{padding-inline:6px}.lp-book{padding:20px}.lp-preview{font-size:9px}.lp-book .lp-description{max-width:62%}.lp-welcome>div:first-child{max-width:74%}}@media (prefers-reduced-motion:reduce){.lp-root *,.lp-root :before,.lp-root :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.lp-unit .unit-title-japanese{text-wrap:balance;font-size:19px;line-height:1.7}@media (max-width:760px){.lp-unit .unit-title-japanese{font-size:21px}}.lp-mascot{overflow:clip}.nij-library-block{margin-bottom:34px}.nij-library-review{color:var(--primary);align-items:center;gap:10px;margin-top:12px;padding:10px 4px;font-size:.86rem;text-decoration:none;display:inline-flex}.nij-library-review:hover{text-decoration:underline}.nij-library-unit .nij-unit-label{color:var(--primary);letter-spacing:.02em;margin-bottom:12px;font-size:.76rem;font-weight:650;display:block}.nij-library-parts{border-top:1px solid var(--border);margin-top:14px;padding-top:10px}.nij-library-parts p{color:var(--muted);flex-direction:column;gap:3px;margin:8px 0;font-size:.78rem;line-height:1.6;display:flex}.nij-library-parts strong{color:var(--primary);font-size:.7rem;font-weight:600}.lp-book-content.is-full{grid-template-columns:minmax(0,1fr)}
