:root{--bg:#f4f1e9;--bg-elev:#eae5d8;--ink:#201d19;--ink-dim:#6b6558;--line:#d8d2c2;--gold:#a97c3d;--jade:#4f7365;--font-display:"Songti TC", "STSong", "Noto Serif TC", serif;--font-body:-apple-system, BlinkMacSystemFont, "PingFang TC", "Helvetica Neue", sans-serif;--shadow-sm:0 1px 3px color-mix(in srgb, var(--ink) 8%, transparent);--shadow-md:0 6px 20px color-mix(in srgb, var(--ink) 10%, transparent)}@media (prefers-color-scheme:dark){:root{--bg:#10121a;--bg-elev:#191c28;--ink:#ece7dc;--ink-dim:#9a9cae;--line:#2a2e40;--gold:#c79a56;--jade:#6e9284;--shadow-sm:0 1px 3px #00000059;--shadow-md:0 8px 24px #0006}}:root[data-theme=dark]{--bg:#10121a;--bg-elev:#191c28;--ink:#ece7dc;--ink-dim:#9a9cae;--line:#2a2e40;--gold:#c79a56;--jade:#6e9284;--shadow-sm:0 1px 3px #00000059;--shadow-md:0 8px 24px #0006}:root[data-theme=light]{--bg:#f4f1e9;--bg-elev:#eae5d8;--ink:#201d19;--ink-dim:#6b6558;--line:#d8d2c2;--gold:#a97c3d;--jade:#4f7365;--shadow-sm:0 1px 3px color-mix(in srgb, var(--ink) 8%, transparent);--shadow-md:0 6px 20px color-mix(in srgb, var(--ink) 10%, transparent)}*{box-sizing:border-box}html{height:100%;font-size:18px}html,body{background:var(--bg);max-width:100vw;color:var(--ink);font-family:var(--font-body);min-height:100%;margin:0;padding:0;overflow-x:hidden}.glow{z-index:0;background:radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--gold) 14%, transparent), transparent 55%), radial-gradient(circle at 75% 75%, color-mix(in srgb, var(--jade) 12%, transparent), transparent 55%);pointer-events:none;animation:26s ease-in-out infinite alternate drift;position:fixed;inset:-20%}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(-2%,2%)scale(1.06)}}@media (prefers-reduced-motion:reduce){.glow{animation:none}}.visit-badge{z-index:2;letter-spacing:.04em;color:var(--ink-dim);background:color-mix(in srgb, var(--bg-elev) 85%, transparent);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:999px;padding:.4rem .9rem;font-size:.85rem;position:fixed;top:1.2rem;right:1.2rem}.stage{z-index:1;justify-content:center;align-items:center;min-height:100vh;padding:10vh 6vw;display:flex;position:relative}.scene{text-align:center;width:100%;max-width:40rem}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);margin:0 0 2rem;font-size:.85rem}h1.title{font-family:var(--font-display);letter-spacing:.02em;text-wrap:balance;margin:0 0 1.8rem;font-size:clamp(2.2rem,5.5vw,3rem);font-weight:500;line-height:1.45}p.lede{color:var(--ink-dim);text-wrap:pretty;max-width:30rem;margin:0 auto 2.6rem;font-size:1.15rem;line-height:1.85}.btn-label{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);margin:0 0 1rem;font-size:1.2rem}.btn{appearance:none;border:1px solid var(--gold);color:var(--ink);font-family:var(--font-body);letter-spacing:.06em;cursor:pointer;background:0 0;border-radius:999px;padding:1rem 2.6rem;font-size:1.05rem;font-weight:500;transition:background .35s,color .35s,transform .2s,box-shadow .35s}.btn:hover{background:var(--gold);color:var(--bg);box-shadow:var(--shadow-md)}.btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn:disabled:hover{color:var(--ink);box-shadow:none;background:0 0}.btn-ghost{border-color:var(--line);color:var(--ink-dim);background:0 0}.btn-ghost:hover{background:var(--bg-elev);color:var(--ink);box-shadow:none}.btn-row{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:.6rem;display:flex}.prompt{font-family:var(--font-display);text-wrap:balance;margin:0 0 2.2rem;font-size:clamp(1.5rem,3.6vw,1.9rem);line-height:1.75}.thought-echo{font-family:var(--font-display);color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:.1rem;display:inline-block}textarea.field,input.field{background:var(--bg-elev);border:1px solid var(--line);width:100%;color:var(--ink);font-family:var(--font-body);border-radius:.9rem;margin:0 0 1.6rem;padding:1rem 1.2rem;font-size:1.1rem;line-height:1.75;transition:box-shadow .25s,border-color .25s}textarea.field{resize:vertical;min-height:6.5rem}textarea.field::placeholder,input.field::placeholder{color:var(--ink-dim)}textarea.field:focus-visible,input.field:focus-visible{border-color:var(--jade);box-shadow:0 0 0 3px color-mix(in srgb, var(--jade) 20%, transparent);outline:none}.yn-row{justify-content:center;gap:1rem;margin-bottom:.8rem;display:flex}.chip{appearance:none;border:1px solid var(--line);background:var(--bg-elev);color:var(--ink);font-family:var(--font-body);cursor:pointer;border-radius:999px;padding:.8rem 2rem;font-size:1.05rem;transition:border-color .25s,transform .15s,box-shadow .25s}.chip:hover{border-color:var(--gold);box-shadow:var(--shadow-sm)}.chip:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.chip:active{transform:scale(.97)}.chip.chosen{border-color:var(--jade);color:var(--jade);box-shadow:var(--shadow-sm)}.reveal{text-align:left;border-top:1px solid var(--line);opacity:0;margin-top:2.2rem;padding-top:1.8rem;animation:.8s forwards rise;transform:translateY(8px)}@keyframes rise{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;animation:none;transform:none}}.reveal p{font-family:var(--font-display);color:var(--ink);margin:0 0 1rem;font-size:1.25rem;line-height:1.95}.reveal p strong{color:var(--gold);font-weight:700}.reveal .tag{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--jade);margin-bottom:1rem;font-size:.78rem;display:block}.reveal .loading{font-family:var(--font-display);color:var(--ink-dim);font-style:italic}.companion-loading{align-items:center;gap:.6rem;display:inline-flex}.companion-loading.compact{gap:.2rem}.companion-figures{gap:.35rem;display:inline-flex}.companion-figures .fig{font-size:1.15rem;animation:1.4s ease-in-out infinite companion-float;display:inline-block}.companion-figures .fig-1{animation-delay:0s}.companion-figures .fig-2{animation-delay:.2s}.companion-figures .fig-3{animation-delay:.4s}@keyframes companion-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.companion-text{display:inline-flex}.companion-text span{animation:1s ease-in-out infinite companion-bounce;display:inline-block}.companion-text span:first-child{animation-delay:0s}.companion-text span:nth-child(2){animation-delay:.15s}.companion-text span:nth-child(3){animation-delay:.3s}@keyframes companion-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.companion-figures .fig,.companion-text span{animation:none}}.turn-card{text-align:center;border:1px solid var(--gold);background:var(--bg-elev);box-shadow:var(--shadow-md);border-radius:1.1rem;margin:0 0 2rem;padding:2.2rem 1.8rem}.turn-card .tag{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;font-size:.78rem;display:block}.turn-input{text-align:center;border:none;border-bottom:1px dashed var(--line);width:100%;color:var(--gold);font-family:var(--font-display);background:0 0;margin-bottom:.5rem;padding:.5rem .2rem;font-size:clamp(1.5rem,3.8vw,1.9rem)}.turn-input:focus-visible{border-bottom-color:var(--gold);outline:none}.turn-hint{color:var(--ink-dim);text-wrap:pretty;margin:0;font-size:.88rem;line-height:1.6}.turn-intro{color:var(--ink-dim);text-wrap:pretty;margin:0;font-size:1.08rem;line-height:1.85}.teach{text-align:left;border:1px solid var(--line);background:var(--bg-elev);box-shadow:var(--shadow-sm);border-radius:1rem;margin:0 0 2rem;padding:1.6rem 1.8rem}.teach-title{font-family:var(--font-display);margin:0;font-size:1.2rem}.teach-body{margin-top:1.2rem}.teach-body h4{font-family:var(--font-display);color:var(--jade);margin:1.4rem 0 .5rem;font-size:1.05rem;font-weight:500}.teach-body h4:first-child{margin-top:0}.teach-body p{color:var(--ink-dim);margin:0 0 .6rem;font-size:.95rem;line-height:1.8}.teach-body input.field{margin-bottom:.8rem;font-size:1rem}.evidence-list{text-align:left;margin-bottom:2rem}.evidence-list p.lead{color:var(--ink-dim);margin:0 0 1.1rem;font-size:.95rem;line-height:1.85}.evidence-row{align-items:center;gap:.8rem;margin-bottom:.8rem;display:flex}.evidence-row .num{font-family:var(--font-display);color:var(--gold);flex-shrink:0;width:1.6rem;font-size:1.1rem}.evidence-row input.field{margin:0}.link-btn{appearance:none;color:var(--ink-dim);font-family:var(--font-body);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;margin:1.3rem auto 0;font-size:.92rem;text-decoration:underline;display:block}.link-btn:hover{color:var(--gold)}.judge-form{text-align:left;margin-bottom:2rem}.judge-item{margin-bottom:1.8rem}.judge-q{font-family:var(--font-display);color:var(--ink);text-wrap:pretty;margin:0 0 .7rem;font-size:1.08rem;line-height:1.75}.judge-stem{font-family:var(--font-display);color:var(--gold);margin-bottom:.5rem;font-size:1.08rem;display:block}.choice-field{border:1px solid var(--line);background:var(--bg-elev);border-radius:.9rem;margin:1.6rem 0;padding:1rem 1.2rem;transition:box-shadow .25s,border-color .25s}.choice-field .judge-q{margin:0 0 .8rem}.choice-field textarea.field-plain{width:100%;color:var(--ink);font-family:var(--font-body);resize:vertical;background:0 0;border:none;min-height:4rem;margin:0;padding:0;font-size:1.1rem;line-height:1.75;display:block}.choice-field textarea.field-plain::placeholder{color:var(--ink-dim)}.choice-field textarea.field-plain:focus-visible{outline:none}.choice-field:focus-within{border-color:var(--jade);box-shadow:0 0 0 3px color-mix(in srgb, var(--jade) 20%, transparent)}textarea.judge-blank{min-height:4.5rem}.pick-list{text-align:left;flex-direction:column;gap:.9rem;margin-bottom:2rem;display:flex}.pick-item{appearance:none;border:1px solid var(--line);background:var(--bg-elev);color:var(--ink);font-family:var(--font-display);text-align:left;cursor:pointer;border-radius:.9rem;padding:1.1rem 1.4rem;font-size:1.1rem;line-height:1.8;transition:border-color .25s,background .25s,box-shadow .25s}.pick-item:hover{border-color:var(--gold);background:color-mix(in srgb, var(--gold) 8%, var(--bg-elev));box-shadow:var(--shadow-sm)}.pick-item:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.promo-footer{z-index:1;text-align:center;border-top:1px solid var(--line);padding:3rem 6vw 3.2rem;position:relative}.promo-header{text-align:left;align-items:center;gap:1.2rem;max-width:32rem;margin:0 auto 1.6rem;display:flex}.promo-logo{object-fit:cover;box-shadow:var(--shadow-sm);border-radius:.7rem;flex-shrink:0}.promo-text{min-width:0}.promo-title{font-family:var(--font-display);color:var(--ink);margin:0 0 .35rem;font-size:1.15rem;font-weight:600;line-height:1.5}.promo-note{color:var(--ink-dim);margin:0;font-size:.92rem;line-height:1.7}.promo-desc{color:var(--ink-dim);margin:0;font-size:.82rem;line-height:1.75}.promo-links{flex-wrap:wrap;justify-content:center;gap:1.3rem;display:flex}.promo-links a{letter-spacing:.04em;color:var(--gold);border-bottom:1px solid #0000;font-size:.88rem;text-decoration:none}.promo-links a:hover{border-bottom-color:var(--gold)}.promo-links a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media (max-width:30rem){.promo-header{text-align:center;flex-direction:column}}.fade-in{animation:.7s both fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.fade-in{animation:none}}.faq-item{background:var(--bg-elev);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:10px;margin-top:.8rem;padding:.9rem 1.1rem}.faq-item summary{cursor:pointer;color:var(--ink);justify-content:space-between;gap:1rem;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"＋";color:var(--gold);flex-shrink:0}.faq-item[open] summary:after{content:"－"}.faq-item .lede{margin-top:.7rem}.purchase-box{background:var(--bg-elev);border:1px solid var(--line);box-shadow:var(--shadow-sm);text-align:left;border-radius:10px;max-width:30rem;margin:1rem auto 0;padding:1rem 1.2rem}.purchase-title{text-align:center;margin:0 0 .7rem;font-weight:600}.purchase-consent{color:var(--ink-dim);align-items:flex-start;gap:.6rem;margin-bottom:.9rem;font-size:.9rem;line-height:1.6;display:flex}.purchase-consent input{flex-shrink:0;margin-top:.3rem}.purchase-consent a{color:var(--gold)}.purchase-box .btn{margin:0 auto;display:block}.info-box{text-align:left;max-width:30rem;color:var(--ink-dim);margin:1rem auto 0;font-size:.88rem;line-height:1.6}.info-box p{margin:.35rem 0}.info-box strong{color:var(--ink)}.info-box a{color:var(--gold)}.info-box .info-title{color:var(--ink);text-align:center;margin-bottom:.6rem;font-weight:600}.notice-overlay{z-index:1000;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.notice-card{background:var(--bg-elev);border:1px solid var(--line);box-shadow:var(--shadow-md);text-align:left;border-radius:14px;width:100%;max-width:62rem;max-height:94vh;padding:1.4rem 1.4rem 1.2rem;overflow-y:auto}.notice-heading{font-family:var(--font-display);text-align:center;margin:0 0 1rem}.notice-item h3{margin:1rem 0 .4rem;font-size:1rem}.notice-item p{color:var(--ink-dim);margin:.4rem 0;font-size:.92rem;line-height:1.7}.notice-more{text-align:center;color:var(--ink-dim);margin:1rem 0 0;font-size:.85rem}.notice-more a{color:var(--gold)}.notice-card .btn{margin:1rem auto 0;display:block}.notice-item ul,.faq-item ul{color:var(--ink-dim);margin:.4rem 0;padding-left:1.2rem;font-size:.92rem;line-height:1.7}.notice-item li,.faq-item li{margin:.25rem 0}.notice-grid{gap:0 2rem;display:grid}@media (min-width:820px){.notice-grid{grid-template-columns:1fr 1fr}.notice-item h3{margin-top:.4rem}.notice-item:first-child{grid-row:span 2}}.tagline{color:var(--gold);letter-spacing:.08em;text-align:center;margin:-.4rem 0 1.4rem;font-size:1.05rem}
