.lab-hero{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:4rem;padding:5rem 0 3rem}.lab-hero h1{font-size:clamp(2.5rem,5vw,5rem);line-height:1.16;letter-spacing:-.045em}.lab-hero em{color:#9b4933}.lab-hero p{max-width:44rem}.lab-orbit{position:relative;aspect-ratio:1;border:1px solid #9baca1;border-radius:50%;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 38px,#a8b5a72b 39px 40px);display:grid;place-content:center;color:#173e35}.lab-orbit strong{text-align:center;font-family:serif;font-size:4rem;font-weight:400}.lab-orbit small{font:10px system-ui;letter-spacing:.14em}.lab-orbit>span{position:absolute;background:#f6f2e9;padding:.5rem;font:11px system-ui;letter-spacing:.13em}.lab-orbit>span:nth-of-type(1){top:12%;left:18%}.lab-orbit>span:nth-of-type(2){right:0;top:52%}.lab-orbit>span:nth-of-type(3){bottom:6%;left:20%}.lab-sun{position:absolute;width:45px;height:45px;border-radius:50%;background:#b96241;top:12%;right:15%;box-shadow:0 0 0 12px #b9624112}.lab-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.3rem 0;border-top:1px solid #bac7ba}.lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0 5rem}.lab-card{min-width:0;background:#fffdf7;border:1px solid #c4cdbf;border-radius:12px;padding:2rem}.lab-card h2{font-size:clamp(1.65rem,2.7vw,2.35rem);line-height:1.2;margin:.8rem 0}.lab-number{font:11px system-ui;letter-spacing:.12em;color:#496252}.lab-card form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.lab-card label{font-size:.87rem;font-weight:600;display:grid;gap:.45rem;align-content:start;min-width:0}.lab-card input,.lab-card select{box-sizing:border-box;width:100%;max-width:100%;min-width:0;background:#faf8ef;border:1px solid #99aa9b;border-radius:5px;padding:.8rem;color:#183f35;font:inherit;min-height:46px}.lab-card form .button{grid-column:1/-1;justify-self:start;white-space:normal}.lab-result:empty{display:none}.lab-result{border-left:3px solid #9b4933;padding:1rem;background:#f2ecdb;line-height:1.7}.lab-card details{border-top:1px solid #dddace;padding-top:1rem;margin-top:1rem}.lab-card summary{cursor:pointer;min-height:32px}.lab-guide{padding-top:1.3rem;font-size:.9rem}.lab-guide a{text-underline-offset:5px}.lab-switches{display:flex;gap:.5rem;flex-wrap:wrap;margin:1.5rem 0}.lab-switches button{border:1px solid #496252;background:transparent;border-radius:30px;padding:.75rem 1rem;cursor:pointer;color:#193b33;font:inherit;min-height:44px}.lab-switches button[aria-pressed=true]{background:#193b33;color:#fff}.thread-map{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:.9rem}.thread-map li{padding:1rem;border:1px solid #c4cdbf;border-radius:8px;background:#f8f5eb;transition:background .35s,transform .35s}.thread-map li span{display:block;color:#7e7261;font-size:.75rem}.thread-map li a{display:block;color:#193b33;font-size:.9rem;text-decoration:none;margin-top:.5rem}.thread-map li.active{background:#dae5d3;border-color:#315b41;transform:translateY(-4px)}.thread-map li.active a{font-weight:700;text-decoration:underline;text-underline-offset:4px}.dominoes{display:flex;gap:.5rem;margin-top:1rem}.dominoes span{display:grid;place-content:center;width:38px;height:56px;border:1px solid #7e927e;border-radius:4px;background:#e1e9d8;transform-origin:bottom right;transition:transform .45s,background .45s;font-size:12px}.dominoes.changed span:last-child{transform:rotate(32deg);background:#e8bba2}.pace-bands{display:grid;gap:.4rem;margin-top:1rem}.pace-bands span{height:8px;background:#5f7e65;width:40%;transition:width .4s;border-radius:5px}.pace-bands span:last-child{background:#b96241;width:80%}.phrase-card{padding:1.5rem;border:1px solid #b96241;border-radius:8px;background:#fff5e4;margin-top:1rem;animation:unfold .4s ease-out}.phrase-card p[lang=ja]{font-size:1.35rem;color:#193b33}.journey-promo{padding:2.5rem;margin:3rem 0;background:#e6eddf;border:1px solid #bbcbb3;border-radius:12px}.journey-promo h2{font-size:2.3rem;line-height:1.2}.lab-card :focus-visible,.lab-toolbar :focus-visible{outline:3px solid #ad4827;outline-offset:4px}@keyframes unfold{from{opacity:.6;transform:perspective(600px) rotateX(-12deg)}to{opacity:1;transform:none}}.effects-off *{animation:none!important;transition:none!important}.effects-off .thread-map li.active,.effects-off .dominoes.changed span:last-child{transform:none}@media(prefers-reduced-motion:reduce){.thread-map li,.dominoes span,.pace-bands span,.phrase-card{animation:none;transition:none}.thread-map li.active,.dominoes.changed span:last-child{transform:none}}@media(max-width:850px){.lab-hero{grid-template-columns:1fr;gap:2rem;padding-top:2rem}.lab-orbit{max-width:300px;width:100%;justify-self:center}.thread-map{grid-template-columns:repeat(2,1fr)}.lab-grid{grid-template-columns:1fr}.lab-card{padding:1.2rem}}@media(max-width:400px){.lab-card form{grid-template-columns:1fr}.lab-toolbar{align-items:start;flex-direction:column}.thread-map{grid-template-columns:1fr}.lab-hero h1{font-size:2.45rem}}@media print{.lab-orbit,.lab-toolbar,.lab-card form,.lab-switches{display:none!important}.lab-grid{display:block}.lab-card{break-inside:avoid;margin:1rem 0}.lab-card details{display:block}.lab-hero{display:block}}
