.secondary-page{--secondary-ink:#19394c;--secondary-green:#174b6a;--secondary-muted:#354954;color:var(--secondary-ink);font-family:var(--font-body),"Noto Sans JP",sans-serif;font-size:18px;font-weight:500;line-height:1.8}.secondary-icon{width:22px;height:22px;flex:none}.secondary-page .secondary-back{display:inline-flex;align-items:center;gap:10px;min-height:48px;color:var(--secondary-muted);font-size:16px;font-weight:600;text-decoration:none}.secondary-page .secondary-back:hover{color:var(--secondary-green)}.secondary-page .secondary-eyebrow{display:block;color:#604010;font-size:16px;font-weight:700;letter-spacing:.02em}.secondary-page a:focus-visible,.secondary-page button:focus-visible,.secondary-page input:focus-visible{outline:3px solid #b47717;outline-offset:4px}.secondary-page button:disabled{cursor:wait}.account-page.gate{width:100%;max-width:600px;margin:0 auto;padding:32px 24px 64px}.account-intro{margin:24px 0 28px}.account-intro-top{display:flex;align-items:center;justify-content:space-between;min-height:56px}.account-compass{width:70px;height:70px;margin:-7px 5px -7px 14px;object-fit:contain;filter:drop-shadow(0 3px 4px #98652224)}.account-page .account-intro h1{margin:12px 0 16px;color:var(--secondary-ink);font-family:var(--font-display),serif;font-size:clamp(30px,5vw,38px);font-weight:700;line-height:1.5;letter-spacing:-.045em;white-space:pre-line}.account-page .gate-lead{color:var(--secondary-muted);font-size:18px;line-height:1.8;text-wrap:pretty;margin:0}.account-page .account-card{margin:0;padding:28px;border:1px solid #d8c398;border-radius:16px;background:#fffdf6;box-shadow:0 5px 0 #ead9b7,0 16px 34px #8c6a2108}.account-page .auth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:4px;gap:4px;margin:0 0 26px;padding:4px;background:#eee4d0;border:0;border-radius:8px}.account-page .auth-tab{min-height:56px;padding:10px;border:0;border-radius:5px;background:transparent;color:var(--secondary-muted);font-size:18px;font-weight:600;line-height:1.7}.account-page .auth-tab.active{color:#fff5dd;background:var(--secondary-green);box-shadow:0 2px 0 #c69a4d}.account-page .auth-form{gap:10px}.account-page .auth-label{margin-top:10px;color:var(--secondary-ink);font-size:18px;font-weight:600}.account-page .code-input{width:100%;max-width:none;min-width:0;min-height:58px;padding:13px 15px;border:1px solid #9f8b66;border-radius:7px;background:#fffefa;color:var(--secondary-ink);font-family:inherit;font-size:18px;line-height:1.7;letter-spacing:0;box-shadow:none}.account-page .code-input::placeholder{color:#40515d}.account-page .password-field{display:grid;grid-gap:8px;gap:8px;min-width:0}.account-page .password-toggle{justify-self:start;min-height:48px;max-width:100%;padding:8px 12px;border:1px solid #9f8b66;border-radius:8px;background:transparent;color:#214f68;font-size:16px;font-weight:700;line-height:1.7;text-align:left}.account-page .password-toggle:hover{background:#f7edd7}.account-page .auth-submit{display:flex;align-items:center;align-self:stretch;justify-content:space-between;width:100%;gap:12px;min-height:58px;margin:16px 0 0;padding:13px 18px;border:0;border-radius:8px;background:var(--secondary-green);color:#fff;font-size:18px;font-weight:700;line-height:1.7;box-shadow:inset 0 1px 0 #ffffff24,0 3px 0 #bc9249}.account-page .auth-submit:hover:not(:disabled){background:#185774}.account-page .auth-submit:disabled{background:#d4dcd9;color:#34464f;box-shadow:none}.account-page .account-error{margin:8px 0 0;padding:12px 14px;border:1px solid #ebcfc8;border-radius:10px;background:#fff6f3;color:#873121;font-size:18px;line-height:1.8}.account-page .gate-hint{margin:20px 0 0}.account-note,.account-page .gate-hint{color:var(--secondary-muted);font-size:18px;line-height:1.8}.account-note{margin:24px 8px 0;text-align:left;text-wrap:pretty}.account-note a{color:var(--secondary-green);text-underline-offset:3px}.account-note a,.instructor-guide .instructor-steps a,.instructor-guide .note-small a{display:inline-block;max-width:100%;min-height:48px;padding:8px 2px;font-weight:600;text-underline-offset:4px}.instructor-guide.legal{max-width:960px;margin:0 auto;padding:28px 32px 72px;color:var(--secondary-ink);font-size:18px;line-height:1.8}.instructor-guide .legal-back{margin:0 0 30px}.instructor-guide-hero{padding:24px 42px 0;border:1px solid #d7b97c;border-radius:16px;background:radial-gradient(ellipse at 80% 0,#f5d99455,transparent 70%),#fcf2dc;box-shadow:inset 0 0 0 5px #fff9ed,inset 0 0 0 6px #e8d4a4}.instructor-hero-top{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:62px}.instructor-hero-top img{flex:none;width:100px;height:76px;object-fit:contain;filter:drop-shadow(0 4px 5px #98652218)}.instructor-guide .instructor-audience{margin:0;color:#604010;font-size:18px;font-weight:600}.instructor-guide h1{margin:0 0 20px;color:var(--secondary-green);font-family:var(--font-display),serif;font-size:clamp(27px,4.3vw,44px);font-weight:700;letter-spacing:-.045em;line-height:1.55;text-wrap:balance}.instructor-guide .legal-lead{max-width:700px;margin:0;color:var(--secondary-muted);font-size:18px;line-height:1.8}.instructor-heading-phrase{display:inline-block;max-width:100%;overflow-wrap:anywhere}.instructor-guide-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:26px 0 32px}.instructor-guide .instructor-cta{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:56px;max-width:100%;padding:12px 22px;border:1px solid var(--secondary-green);border-radius:8px;background:var(--secondary-green);color:#fff5df;font-size:18px;font-weight:700;line-height:1.7;text-decoration:none;box-shadow:inset 0 1px 0 #ffffff24,0 3px 0 #bc9249}.instructor-guide .instructor-cta:hover{background:#185774}.instructor-guide .secondary-text-link{display:inline-flex;align-items:center;gap:12px;min-height:48px;color:var(--secondary-green);font-size:18px;font-weight:700;text-decoration:none}.instructor-guide .instructor-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:23px 0;border-top:1px solid #ddc99f;grid-gap:20px;gap:20px}.instructor-guide .instructor-highlights dt{margin:0 0 4px;color:#484333;font-size:18px;font-weight:600}.instructor-guide .instructor-highlights dd{margin:0;color:var(--secondary-green);font-size:20px;font-weight:700;line-height:1.6}.instructor-highlights dd span{margin-left:3px;font-size:18px}.instructor-guide-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,130px),1fr));grid-gap:8px 16px;gap:8px 16px;padding:16px 4px;border-bottom:1px solid #e4d5b6}.instructor-guide .instructor-guide-nav a{display:inline-flex;align-items:center;min-height:48px;color:var(--secondary-muted);font-size:18px;font-weight:600;text-decoration:none}.instructor-guide .instructor-guide-nav a:hover{color:var(--secondary-green)}.instructor-guide h2{margin:52px 0 20px;padding:0;border:0;color:var(--secondary-ink);font-family:inherit;font-size:28px;font-weight:700;letter-spacing:-.025em;scroll-margin-top:24px;line-height:1.6}.instructor-guide dd,.instructor-guide li,.instructor-guide p{overflow-wrap:anywhere}.instructor-guide>ul:not(.instructor-benefits){padding-left:22px}.instructor-guide>ul:not(.instructor-benefits) li{margin:0 0 14px;padding-left:4px}.instructor-guide .instructor-note{margin:30px 0 0;padding:24px 28px;border:1px solid #e2d4b8;border-radius:12px;background:#fffdf6}.instructor-guide .instructor-note h2{margin:0 0 10px;font-size:24px}.instructor-guide .instructor-note p{margin:0;color:var(--secondary-muted);font-size:18px}.instructor-guide .instructor-note .instructor-sign{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 16px;margin-top:14px;color:#594c32;font-size:18px}.instructor-sign span{display:inline-block}.instructor-guide .instructor-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin:0;padding:0;list-style:none}.instructor-guide .instructor-benefits li{margin:0;padding:24px;border:1px solid #e2d4b8;border-radius:12px;background:#fffdf6;font-size:18px;line-height:1.8}.instructor-guide .instructor-steps{margin:0;padding-left:28px}.instructor-guide .instructor-steps li{margin-bottom:24px;padding-left:12px}.instructor-guide .instructor-steps li::marker{color:#604010;font-size:20px;font-weight:700}.instructor-guide .instructor-steps strong{display:block;margin-bottom:5px;color:var(--secondary-green);font-size:20px}.instructor-guide .instructor-pricing-details{padding:8px 28px;border:1px solid #e2d4b8;border-radius:12px;background:#fffdf6}.instructor-guide .instructor-pricing-details dt{margin:24px 0 8px;color:var(--secondary-green);font-size:20px;font-weight:700}.instructor-guide .instructor-pricing-details dd{margin:0;padding-bottom:24px;border-bottom:1px solid #ede3cf;color:var(--secondary-muted);font-size:18px}.instructor-guide .instructor-pricing-details dd:last-child{border-bottom:0}.instructor-guide .instructor-guide-start{margin-top:48px;padding:30px;border:1px solid #d7b97c;border-radius:12px;background:#fcf0d6}.instructor-guide .instructor-guide-start h2{margin-top:0}.instructor-guide .instructor-guide-start .note-small{margin-bottom:0;color:var(--secondary-muted);font-size:18px}.instructor-guide .legal-date{margin-top:24px;color:var(--secondary-muted);font-size:18px}@media (max-width:760px){.instructor-guide .instructor-benefits,.instructor-guide .instructor-highlights{grid-template-columns:1fr;gap:18px}}@media (max-width:600px){.account-page.gate{padding:18px 20px 44px}.account-intro{margin-top:14px}.account-page .account-card{padding:18px;border-radius:14px}.instructor-guide.legal{padding:18px 20px 44px}.instructor-guide .legal-back{margin-bottom:18px}.instructor-guide-hero{padding:18px 18px 0;border-radius:14px}.instructor-guide h1{font-size:clamp(28px,6vw,36px)}.instructor-hero-top img{width:80px;height:64px}.instructor-guide .instructor-highlights{gap:18px;padding:18px 0}.instructor-guide-actions{align-items:stretch;flex-direction:column;gap:16px}.instructor-guide .instructor-cta{padding:12px 16px}.instructor-guide .secondary-text-link{justify-content:center}.instructor-guide-nav{gap:8px 16px;padding:10px 0}.instructor-guide h2{margin-top:38px;font-size:24px}.instructor-guide .instructor-benefits{grid-template-columns:1fr;gap:18px}.instructor-guide .instructor-benefits li,.instructor-guide .instructor-guide-start,.instructor-guide .instructor-note{padding:18px}.instructor-guide .instructor-pricing-details{padding:0 18px}}