@font-face{font-family:Kanji Serif;src:url(/fonts/kanji.woff2)format("woff2");font-weight:500;font-display:swap}:root{--ink:#193c35;--bg:#f5f7f2;--line:#d8e0d7;--card-bg:#f6e55d;--card-ink:#30331d;--card-accent:#e3bb2d}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.7}a{color:inherit;text-decoration:none}:is(button:focus-visible,a:focus-visible){outline-offset:5px;outline:3px solid #467661}h1:focus{outline:none}button{touch-action:manipulation}::selection{color:#193c35;background:#c4ee8c}.app{min-height:100svh}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1440px;margin:auto;padding:32px 6%;display:flex}.brand{letter-spacing:-.8px;align-items:center;gap:12px;font-size:21px;font-weight:800;display:flex}.brand-symbol{grid-template-columns:7px 7px;gap:3px;display:grid;transform:rotate(-6deg)}.brand-symbol i{background:currentColor;height:7px}.header-note{color:#54685c;font-size:14px}.landing{grid-template-columns:1.15fr 1fr;align-items:center;gap:40px 80px;max-width:1250px;margin:auto;padding:68px 55px 24px;display:grid}.eyebrow{letter-spacing:2px;margin:0 0 27px;font-size:12px;font-weight:700}.intro h1{letter-spacing:-6px;margin:0 0 25px;font-size:clamp(64px,7.4vw,104px);font-weight:500;line-height:1.02}.intro h1 span{font-family:Georgia,serif;font-style:italic;font-weight:400}.intro-copy{letter-spacing:-.4px;margin:0 0 32px;font-size:23px;line-height:1.5}.primary{background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:12px;min-height:56px;padding:17px 30px;font-size:16px;font-weight:600;transition:background .2s,transform .2s;display:inline-flex}.primary:hover{background:#2d5448;transform:translateY(-2px)}.start{min-width:240px}.micro{color:#5b6e61;margin-top:17px;font-size:12px}.micro span{padding:0 7px}.hero-art{min-width:0;padding:34px 5px 0;position:relative}.example-tag{letter-spacing:1.8px;text-align:center;margin:0 0 22px;font-size:12px}.example-card{color:#30331d;background:#f1e665;border:1px solid #d4cc68;border-radius:3px;padding:26px 28px 32px;position:relative;transform:rotate(5deg);box-shadow:17px 19px #d8e3d4}.card-top{letter-spacing:1.3px;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;display:flex}.card-top span:last-child{font-weight:400}.hero-kanji{text-align:center;padding:16px 0 12px;font-family:Kanji Serif,serif;font-size:clamp(200px,22vw,290px);font-weight:500;line-height:1.3;display:block}.example-bottom{text-align:center;flex-direction:column;gap:11px;display:flex}.example-bottom strong{letter-spacing:4px;font-size:23px}.example-bottom span{font-size:14px}.example-caption{align-items:center;gap:13px;margin-top:42px;font-size:15px;line-height:1.45;display:flex}.tiny-star{font-size:39px}.example-label{letter-spacing:1px;color:#607263;margin-left:auto;font-size:12px}.landing-foot{border-top:1px solid var(--line);color:#627164;grid-column:1/-1;justify-content:space-between;margin-top:48px;padding-top:22px;font-size:12px;display:flex}.landing-foot span:last-child{letter-spacing:1.3px;font-size:12px}.quiz{grid-template-columns:1fr 1.1fr;gap:85px;max-width:1100px;margin:auto;padding:72px 45px;animation:.35s both enter;display:grid}.progress-label{letter-spacing:1px;justify-content:space-between;gap:10px;font-size:12px;display:flex}.progress{gap:7px;margin:18px 0 42px;display:flex}.progress span{background:#dce3d9;border-radius:5px;flex:1;height:4px}.progress span.filled{background:#2a5948}.question-intro h1{letter-spacing:-1.9px;margin:0 0 20px;font-size:48px;font-weight:500;line-height:1.12}.question-intro p{color:#596e60;font-size:16px}.text-button{color:#476252;text-underline-offset:5px;background:0 0;border:0;padding:10px;font-size:14px;text-decoration:underline}.back{margin-top:24px;padding-left:0}.choices{flex-direction:column;gap:10px;display:flex}.choice{text-align:left;min-height:61px;color:var(--ink);background:#fcfdfb;border:1px solid #d4ded1;border-radius:9px;align-items:center;gap:17px;padding:17px 20px;font-size:16px;line-height:1.35;transition:background .15s,border-color .15s,transform .15s;display:flex}.choice:hover,.choice.selected{background:#e4efdd;border-color:#83a378;transform:translate(2px)}.choice-emoji{text-align:center;flex:0 0 28px;font-size:23px}.choice-ring{border:1px solid #b7c5b1;border-radius:50%;flex:0 0 19px;justify-content:center;align-items:center;height:19px;margin-left:auto;display:flex}.choice.selected .choice-ring{background:var(--ink);border-color:var(--ink);color:#fff}.result{text-align:center;max-width:560px;margin:auto;padding:25px 40px 22px}.result-intro{letter-spacing:.2px;margin:0 0 21px;font-size:16px;font-weight:400}.result-card{color:var(--card-ink);background:var(--card-bg);box-shadow:0 5px 0 color-mix(in srgb,var(--card-bg) 65%,#798070);border-radius:3px;padding:25px 28px 23px;animation:.6s both card-in;overflow:hidden}.reveal-kanji{margin:14px 0 5px;font-family:Kanji Serif,serif;font-size:clamp(170px,23vw,238px);font-weight:500;line-height:1.35;animation:1.1s cubic-bezier(.16,1,.3,1) .1s both reveal}.result-card h2{letter-spacing:3px;margin:0 0 16px;font-size:22px}.today-message{max-width:330px;margin:0 auto;font-size:17px;line-height:1.5}.card-date{letter-spacing:.5px;opacity:.8;margin-top:24px;font-size:12px}.nuance{color:#52695c;max-width:410px;margin:26px auto 22px;font-size:14px;line-height:1.6}.share{width:100%;max-width:360px}.retry{margin:11px auto 0;display:block}.return-message{color:#617566;margin:17px 0 0;font-size:12px;line-height:1.5}.notice{overflow-wrap:anywhere;color:#486252;margin:12px auto 0;font-size:13px;line-height:1.5}.notice:empty{display:none}.share-dialog{width:min(460px,100% - 28px);max-height:90svh;color:var(--ink);background:#f5f7f2;border:1px solid #ccd7ca;border-radius:16px;padding:0;box-shadow:0 20px 100px #0c211f55}.share-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#102d266e}.dialog-inner{padding:22px}.dialog-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.dialog-heading h2{letter-spacing:-.5px;margin:0;font-size:18px}.icon-button{color:inherit;background:0 0;border:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex}.share-preview{border-radius:2px;width:auto;max-width:100%;height:min(44svh,420px);margin:0 auto 22px;display:block}.share-options{flex-direction:column;gap:10px;display:flex}.secondary{min-height:48px;color:var(--ink);background:0 0;border:1px solid #bacbb7;border-radius:8px;justify-content:center;align-items:center;gap:10px;font-size:15px;display:flex}.dialog-inner .notice{text-align:center}.result-app .site-header{padding-top:22px;padding-bottom:22px}@keyframes enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes reveal{0%{opacity:0;filter:blur(5px);transform:translateY(16px)scale(.89)}to{opacity:1;filter:blur();transform:none}}@media (min-width:1400px){.landing{padding-top:80px}.landing-foot{margin-top:55px}}@media (max-width:900px) and (min-width:761px){.landing{gap:45px;padding-left:35px;padding-right:35px}.hero-kanji{font-size:200px}.example-tag{letter-spacing:.5px;font-size:12px}.intro h1{letter-spacing:-3px;font-size:66px}.quiz{gap:40px}.question-intro h1{font-size:40px}}@media (max-width:760px){.site-header{padding:23px 24px}.brand{font-size:20px}.header-note{font-size:12px}.landing{grid-template-columns:1fr;gap:23px;padding:39px 26px 23px}.intro{text-align:center}.eyebrow{letter-spacing:1.5px;margin-bottom:18px;font-size:12px}.intro h1{letter-spacing:-3.7px;margin-bottom:19px;font-size:68px;line-height:1}.intro-copy{margin-bottom:24px;font-size:19px;line-height:1.45}.desktop-break{display:none}.start{min-width:260px}.micro{margin-top:13px;font-size:12px}.hero-art{width:min(290px,85%);margin:0 auto;padding:17px 0 0}.example-tag{letter-spacing:1px;margin-bottom:16px;font-size:12px}.example-card{padding:20px;transform:rotate(4deg);box-shadow:11px 13px #d8e3d4}.hero-kanji{padding:8px 0;font-size:184px;line-height:1.3}.example-bottom strong{font-size:18px}.example-bottom span{font-size:14px}.card-top{letter-spacing:1px;font-size:12px}.example-caption{margin-top:30px;font-size:14px}.tiny-star{font-size:30px}.example-label{font-size:12px}.landing-foot{text-align:center;justify-content:center;margin-top:12px;padding-top:19px;font-size:12px}.landing-foot span:last-child{display:none}.quiz{grid-template-columns:1fr;gap:22px;padding:32px 24px}.progress-label{font-size:12px}.progress{margin:14px 0 25px}.question-intro h1{letter-spacing:-1.3px;max-width:380px;margin-bottom:12px;font-size:35px}.question-intro p{margin:0;font-size:16px}.back{margin:10px 0 -9px}.choices{gap:9px}.choice{gap:13px;min-height:58px;padding:15px 17px;font-size:16px}.choice-emoji{font-size:21px}.final-choices .choice{min-height:61px}.result{max-width:440px;padding:24px 24px 27px}.result-card{padding:22px 23px}.result-intro{margin-bottom:20px;font-size:16px}.reveal-kanji{margin:12px 0 4px;font-size:210px;line-height:1.3}.result-card h2{letter-spacing:2px;font-size:21px}.today-message{font-size:16px}.nuance{margin:24px auto 20px;font-size:14px}.share{max-width:none}.result-app .site-header{padding:20px 24px}.return-message{font-size:12px}.share-dialog .primary{width:100%}}@media (max-width:360px){.header-note{display:none}.intro h1{font-size:57px}.landing{padding-left:20px;padding-right:20px}.reveal-kanji{font-size:175px}.result{padding-left:18px;padding-right:18px}.start{min-width:240px}.question-intro h1{font-size:32px}.micro span{padding:0 3px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
