:root{color:#111114;font-synthesis:none;--red:#ff2d2d;--mint:#00c896;--muted:#686870;--line:#e4e4e8;--gray:#f6f6f8;background:#fff;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #007e62}button{touch-action:manipulation}h1,h2,p{margin:0}h1{letter-spacing:-.04em;font-size:28px;line-height:1.38}h2{letter-spacing:-.025em;font-size:18px;line-height:1.5}p{line-height:1.7}main:focus{outline:none}.app{flex-direction:column;max-width:474px;min-height:100dvh;margin:auto;padding:12px 22px 22px;display:flex}.environment{color:#85400c;letter-spacing:.02em;background:#fff4eb;border:1px solid #f5d1b4;border-radius:6px;flex-wrap:wrap;justify-content:space-between;gap:5px 12px;padding:8px 10px;font-size:10px;font-weight:700;display:flex}.environment span{font-weight:500}.progress{height:42px;color:var(--muted);align-items:center;gap:12px;font-size:11px;display:flex}.progress>div{background:var(--line);border-radius:3px;flex:1;height:3px;overflow:hidden}.progress i{background:var(--red);height:100%;transition:width .2s;display:block}main{flex-direction:column;flex:1;display:flex}.page-body{flex:1;padding:20px 0}.page-footer{padding-top:12px}.page-body>h1+.muted{margin-top:14px}.page-body>.muted{margin-bottom:26px}.small{color:var(--muted);font-size:12px;line-height:1.7}.lock-note{color:var(--red);font-weight:700}.muted{color:var(--muted);font-size:16px;line-height:1.7}.center{text-align:center}.button{border:1.5px solid #0000;border-radius:10px;width:100%;min-height:50px;margin-top:10px;padding:15px 16px;font-size:16px;font-weight:700;line-height:1.4;transition:opacity .15s,transform .15s;display:block}.button:active{transform:scale(.99)}.button.primary{color:#fff;background:#111114}.button.mint{background:var(--mint);color:#04342c}.button.secondary{border-color:var(--line);color:#111114;background:#fff}.button.text{color:var(--muted);background:0 0;font-size:14px;font-weight:500}.button small{margin-bottom:3px;font-size:12px;font-weight:500;display:block}.landing{text-align:center;padding:16px 0 10px}.landing .logo{width:190px;height:auto;margin:6px auto 40px;display:block}.landing h1{font-size:36px;line-height:1.32}.chips{justify-content:center;gap:6px;margin-top:20px;display:flex}.chips span,.pill{border:1px solid var(--line);color:var(--muted);border-radius:99px;padding:5px 10px;font-size:12px}.landing-wave{justify-content:center;align-items:center;gap:6px;height:130px;margin-top:20px;display:flex}.landing-wave i{background:var(--red);border-radius:9px;width:7px;display:block}.landing-wave i:nth-child(3n){background:var(--mint)}.app-foot{color:var(--muted);text-align:center;padding-top:24px;font-size:11px;line-height:1.8}.score-card .rank{color:var(--muted);margin-top:10px;font-size:12px;line-height:1.5}.level{max-width:320px;margin:12px auto 0}.level-head{color:var(--muted);justify-content:space-between;font-size:13px;font-weight:600;display:flex}.level-num{font-variant-numeric:tabular-nums}.level-track{background:#e8e8ee;border-radius:99px;height:8px;margin-top:6px;overflow:hidden}.level-track i{background:var(--mint);height:100%;transition:width 80ms linear;display:block}.legal{color:var(--muted);text-align:center;margin:12px 0 0;font-size:12px}.legal a{color:var(--red)}.consent{border-bottom:1px solid var(--line);cursor:pointer;align-items:flex-start;gap:12px;padding:18px 0;font-size:15px;font-weight:600;line-height:1.6;display:flex}.consent input{appearance:auto;accent-color:var(--red);flex:none;width:22px;height:22px;margin:2px 0 0}.consent small{color:var(--muted);margin-top:6px;font-size:12px;font-weight:400;display:block}.demo-note{color:#365b4d;background:#f5faf8;border:1px solid #cde4dc;border-radius:9px;margin:18px 0;padding:13px 15px;font-size:12px;line-height:1.8}.field{margin:22px 0 16px;font-size:13px;font-weight:600;display:block}.field input{border:1.5px solid var(--line);color:#111114;background:#fff;border-radius:10px;width:100%;min-height:54px;margin-top:9px;padding:16px 14px;font-size:16px;display:block}.field input:focus{outline-offset:1px;outline:2px solid #111114}.choices{flex-wrap:wrap;gap:9px;margin-top:22px;display:flex}.choice{border:1.5px solid var(--line);min-height:61px;color:var(--muted);background:#fff;border-radius:10px;flex:calc(50% - 9px);padding:16px 10px;font-size:16px;font-weight:600}.choice.selected{color:#fff;background:#111114;border-color:#111114}.microphone-icon{text-align:center;background:var(--gray);border-radius:50%;place-items:center;width:180px;height:180px;margin:30px auto;font-size:75px;display:grid}.eyebrow{letter-spacing:.06em;color:var(--red);margin:0 0 24px;font-size:12px;font-weight:700}.mission-prompt{text-align:center;white-space:pre-line;margin-bottom:12px;font-size:24px;line-height:1.5}.mission-prompt.hold{font-size:44px}.record-orb{place-items:center;width:210px;height:210px;margin:28px auto;display:grid;position:relative}.record-orb svg{position:absolute;inset:0;transform:rotate(-90deg)}.record-orb circle{fill:none;stroke:var(--line);stroke-width:7px}.record-orb .elapsed{stroke:var(--mint);transition:stroke-dashoffset .1s}.record-orb>div{background:var(--gray);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;width:150px;height:150px;display:flex}.record-orb strong{font-variant-numeric:tabular-nums;font-size:52px;line-height:1.2}.record-orb small{color:var(--muted);font-size:12px}.record-orb.active>div{background:#eafaf5}.distance{text-align:center;background:#fff2f2;border:1px solid #ffcaca;border-radius:10px;padding:12px;font-size:14px}.distance b{color:#d62020}.record-preview{background:var(--gray);border-radius:10px;padding:14px;font-size:13px}.record-preview .pill{margin:5px 0 9px;font-size:10px;display:inline-block}audio{width:100%;height:42px;margin:10px 0}.error{color:#b81e22;text-align:center;margin:16px 0;font-size:14px}.panel{border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:20px}.panel p{margin-top:8px;font-size:14px}.panel h1{font-size:21px}details{border:1px solid var(--line);border-radius:10px;margin-top:16px;padding:16px}summary{cursor:pointer;font-size:14px;font-weight:600;line-height:1.5}details>p{color:var(--muted);margin-top:15px;font-size:13px}.loading-orb{color:var(--mint);background:#effaf6;border-radius:50%;place-items:center;width:180px;height:180px;margin:50px auto;font-size:85px;display:grid}.working{animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.4;transform:scale(.95)}}.result-tabs{border-bottom:1px solid var(--line);gap:3px;margin:20px 0;display:flex}.result-tabs button{color:var(--muted);background:#fff;border:0;border-bottom:3px solid #0000;flex:1;padding:12px 3px;font-size:13px}.result-tabs button[aria-current]{border-color:var(--red);color:#c82020;font-weight:700}.character-card{text-align:center;border:1px solid var(--line);border-radius:12px;padding:22px 18px}.small-logo{width:125px;height:auto}.character-art{background:var(--red);border-radius:48% 48% 42% 42%;place-items:center;width:115px;height:125px;margin:30px auto 20px;display:grid;transform:rotate(-8deg);box-shadow:12px -8px 0 -4px #00c89633}.character-art span{color:#fff;font-size:70px;transform:rotate(8deg)}.character-card h1{margin-top:8px;font-size:28px}.tagline{color:#c82020;margin:12px 0 18px;font-size:14px}.score-card{border:1px solid var(--red);border-radius:12px;padding:20px 12px}.score-card>p:first-child{color:var(--muted);font-size:12px}.score-card strong{color:var(--red);font-variant-numeric:tabular-nums;font-size:76px;line-height:1.3}.score-card>span{color:var(--muted);font-size:14px}.score-card .description{text-align:left;color:var(--muted);margin:8px 0 18px;font-size:14px}.type-code{color:var(--red);letter-spacing:.08em;font-family:monospace}table{border-collapse:collapse;width:100%;margin-top:18px;font-size:14px}th,td{border-bottom:1px solid var(--line);padding:12px 3px}thead{color:var(--muted);font-size:12px}th{text-align:left;font-weight:500}td,thead th:not(:first-child){text-align:right}.total{color:#c82020;font-weight:700}.axis{margin-top:25px}.axis>b{font-size:14px}.axis-labels{color:var(--muted);justify-content:space-between;margin:10px 0;font-size:12px;display:flex}.axis-scale{gap:4px;display:flex}.axis-scale i{background:var(--line);flex:1;height:8px}.axis-scale .on{background:var(--red)}.report>h1{margin-bottom:8px}.report details{padding:17px 14px}.report details .character-card{border:0;padding:20px 0}.report summary{font-size:16px}.skill{border-bottom:1px solid var(--line);padding:20px 0}.skill p{margin-top:10px;font-size:14px}.practice{background:var(--gray);border-radius:8px;padding:12px}.share-actions{margin-top:20px}@media (width>=720px){body{background:#f6f6f8}.app{background:#fff;padding-left:28px;padding-right:28px;box-shadow:0 0 0 1px #e4e4e8}}@media (width<=360px){.app{padding-left:16px;padding-right:16px}.landing h1{font-size:32px}.environment{font-size:9px}.mission-prompt{font-size:21px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media print{body{background:#fff}.app{max-width:none;box-shadow:none}.environment,.progress,.app-foot,.page-footer,.button,.share-actions{display:none!important}.report details{break-inside:avoid;border:0}.report details::details-content{content-visibility:visible!important;display:block!important}.report details>*,.demo-note{display:block!important}.page-body{padding:0}}
