:root{color-scheme:light;--ink:#263f36;--muted:#6d7f76;--green:#39735a;--line:#dfe7df;--soft:#f0f5ee;--paper:#fff;--danger:#9e483d}*{box-sizing:border-box}body{margin:0;background:#f9faf7;color:var(--ink);font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;font-size:14px;line-height:1.9}button,input,select,textarea{font:inherit}button,a,label,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b38632;outline-offset:3px}h1,h2,h3,p{margin-top:0}h2{font-size:18px;font-weight:600}h3{font-size:16px}button{border:0;border-radius:9px;padding:11px 20px}a{color:inherit}main{max-width:1120px;margin:auto;padding:32px 40px 0}.header{height:88px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1040px)/2));gap:16px}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap;text-decoration:none;font-size:25px;font-weight:700;letter-spacing:3px}.brand-icon{display:grid;place-items:center;width:36px;height:38px;background:#e9f1e7;border-radius:13px;font-size:35px;color:var(--green)}.brand-caption{font-size:10px;font-weight:400;letter-spacing:1px;margin-left:10px;color:var(--muted)}.local-badge{font-size:11px;color:var(--green);white-space:nowrap;background:var(--soft);border-radius:25px;padding:5px 12px}.topline{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:var(--green)}.intro{display:flex;align-items:center;justify-content:space-between;padding:28px 0 26px;gap:24px}h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:42px;line-height:1.6;font-weight:500;letter-spacing:5px;margin-bottom:16px}.intro p{color:var(--muted);font-size:14px;margin-bottom:0}.morning-art{width:295px;height:225px;border-radius:150px 150px 18px 18px;background:#edf2e7;position:relative;overflow:hidden;flex-shrink:0}.sun{position:absolute;width:70px;height:70px;border-radius:50%;background:#e4d9ab;top:33px;left:110px}.hill{position:absolute;width:330px;height:180px;border-radius:50%;background:#cadbc5;bottom:-65px;left:-100px;transform:rotate(18deg)}.hill-two{left:100px;bottom:-48px;background:#b0c6ac;transform:rotate(-27deg)}.art-wave{position:absolute;left:65px;top:95px;color:#3b7151;letter-spacing:6px;font-size:29px}.morning-art span{position:absolute;bottom:18px;left:0;width:100%;text-align:center;font-size:10px;letter-spacing:2px;color:#34583d}.notice{background:#f0f4ec;border:1px solid #e4eada;padding:11px 18px;border-radius:9px;font-size:12px;color:#5b6a53}.notice strong{font-weight:500}.tabs{display:flex;border-bottom:1px solid var(--line);gap:28px;margin:28px 0}.tabs button{background:none;border-radius:0;padding:12px 3px;color:var(--muted);border-bottom:3px solid transparent}.tabs button.active{color:var(--green);border-color:var(--green);font-weight:700}.tabs span{background:#eaf0e7;border-radius:12px;padding:1px 7px;font-size:10px}.record-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:24px}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:26px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-title h2{margin:0}.step{font-family:Georgia,serif;color:#89a381;font-size:15px;margin-right:12px}.muted{color:var(--muted)}.small{font-size:11px;line-height:1.9}.recorder{text-align:center}.recorder .section-title{margin-bottom:24px}.section-title>.muted{font-size:11px}.prompt{color:var(--muted);font-size:12px;margin-bottom:4px}.phrase{font-family:'Yu Mincho',serif;font-size:25px;letter-spacing:2px;margin-bottom:15px}.voice-orb{width:106px;height:106px;margin:0 auto 20px;background:#edf4e9;border:7px solid #f7faf4;border-radius:50%;display:grid;place-items:center}.voice-orb svg{width:64px;height:64px;fill:none;stroke:#4e7b53;stroke-width:3;stroke-linecap:round}.voice-orb.recording{animation:pulse 1s infinite}.voice-orb.recording svg{stroke:#af483b}@keyframes pulse{50%{box-shadow:0 0 0 12px #f3ded877}}#recordStatus{font-size:11px;color:var(--muted);min-height:22px}.timer{font-size:24px;letter-spacing:2px;margin:12px 0}.timer>span+span{font-size:12px;color:var(--muted);letter-spacing:0}.primary{background:var(--green);color:#fff;box-shadow:0 4px 8px #305e4012}.record-actions .primary{width:min(280px,100%)}.secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.danger{background:#fff3ef;border:1px solid #e8d1c8;color:var(--danger)}.text-button{background:none;color:var(--green);padding:2px 4px;font-size:12px;text-decoration:underline;text-underline-offset:3px}.file-row{margin-top:15px;display:flex;justify-content:center;gap:15px;align-items:center;font-size:11px;color:var(--muted)}.file-label{cursor:pointer;text-decoration:underline;text-underline-offset:4px;color:var(--green);position:relative}.file-label input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.file-label:focus-within{outline:3px solid #b38632;outline-offset:4px}.recorder>.small{margin-top:10px;margin-bottom:0}.side-stack{display:flex;flex-direction:column;gap:18px}.baseline-card{background:#f3f6ef}.baseline-card h2{margin:12px 0}.baseline-card>p{font-size:12px;color:var(--muted)}.progress-heading{display:flex;align-items:center;justify-content:space-between;margin:20px 0 10px}.progress-heading strong{font-size:32px;color:var(--green);font-weight:500}.progress-heading small{font-size:13px;color:var(--muted)}.progress-heading>span{font-size:10px;color:var(--green);background:#e5edde;border-radius:6px;padding:2px 8px}progress{width:100%;height:7px;border:0;border-radius:6px;overflow:hidden;accent-color:#6d9064}progress::-webkit-progress-bar{background:#dfe8d8}progress::-webkit-progress-value{background:#6d9064}#baseDetail{margin:9px 0}.baseline-card>.small{font-size:10px}.privacy-card{display:flex;gap:16px;padding:14px 20px}.privacy-card>span{font-size:28px;color:var(--green)}.privacy-card h3{font-size:13px;margin-bottom:5px}.privacy-card p{font-size:11px;color:var(--muted);margin:0}.result{margin-top:24px}.tag{background:var(--soft);font-size:11px;padding:3px 8px;border-radius:5px}.result>h3{margin-top:20px;font-size:22px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.metric{border:1px solid var(--line);border-radius:10px;padding:14px}.metric h4{margin:0 0 10px;font-size:12px;font-weight:500}.metric strong{font-size:23px;font-weight:500}.metric small{font-size:11px}.metric p{margin:5px 0 0;font-size:11px;color:var(--muted)}form{margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}label{display:block;font-size:12px}select,textarea{display:block;width:100%;color:var(--ink);border:1px solid #ccd9cd;background:#fff;border-radius:8px;padding:10px;margin-top:6px;max-width:100%}textarea{resize:vertical}.memo-label>span{float:right}.checkbox{display:flex;align-items:flex-start;gap:8px;margin-top:16px}.checkbox input{width:17px;height:17px;accent-color:var(--green)}.data-actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.chart-card{margin-top:18px}.chart-card .section-title label{min-width:190px}.chart-card select{padding:5px}#chart svg{display:block;width:100%;height:auto;margin-top:14px;overflow:visible}.chart-empty{text-align:center;padding:45px 10px;color:var(--muted)}.history-item{margin-bottom:15px}.history-item h3{margin:0}.history-item .metrics{margin:15px 0}.history-item .metric{background:#fafbf8}.history-item p{overflow-wrap:anywhere}.history-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px}.history-bottom label{display:flex;gap:7px;align-items:center}.guide h3{margin-top:28px}.guide li{margin:12px 0}.guide p,.guide li{font-size:13px}.guide ul{padding-left:22px}footer{display:flex;justify-content:space-between;gap:15px;margin-top:40px;padding:22px 0;border-top:1px solid var(--line);color:var(--muted);font-size:10px}footer>span:first-child{font-size:17px;letter-spacing:2px;color:var(--green)}dialog{border:1px solid var(--line);border-radius:16px;max-width:540px;width:calc(100% - 32px);padding:30px;color:var(--ink);line-height:1.9}dialog::backdrop{background:#203c3277;backdrop-filter:blur(3px)}dialog h2{font-size:23px}dialog p{font-size:13px}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px;flex-wrap:wrap}#alert{padding:16px;background:#fff0e7;border:1px solid #e7cfb2;border-radius:10px;color:#8b4830;font-size:13px}[hidden]{display:none!important}
@media(max-width:760px){main{padding:24px 20px 0}.header{padding:15px 20px;height:74px}.brand{font-size:22px}.brand-caption{display:none}.local-badge{font-size:9px;padding:4px 7px}.intro{padding-top:22px}.morning-art{width:190px;height:190px}.sun{left:70px}.art-wave{left:20px}.intro h1{font-size:32px;letter-spacing:2px}.intro p{font-size:11px}.record-grid{grid-template-columns:1fr}.side-stack{display:grid;grid-template-columns:1.2fr 1fr;gap:12px}.privacy-card{padding:16px 5px}.baseline-card{padding:20px}.metrics{grid-template-columns:repeat(2,1fr)}.tabs{gap:12px}.tabs button{font-size:11px}.section-title{flex-wrap:wrap}.chart-card .section-title label{width:100%;min-width:0}footer{flex-wrap:wrap}.card{padding:22px}}
@media(max-width:470px){.morning-art{display:none}.intro{padding:22px 0}.intro h1{font-size:35px}.intro p{font-size:12px}.side-stack{display:flex}.privacy-card{padding:10px 20px}.form-grid{grid-template-columns:1fr;gap:12px}.section-title h2{font-size:16px}.tabs{gap:12px;margin:22px 0}.tabs button{padding:10px 0;font-size:10px}.topline{font-size:10px}.eyebrow{font-size:8px;letter-spacing:1px}.notice{font-size:10px;padding:10px 12px}.metric{padding:11px}.history-bottom{align-items:flex-start}.data-actions button{font-size:11px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important}}
@media(max-width:470px){.phrase{font-size:clamp(17px,5.2vw,21px);letter-spacing:0}}
.art-wave{display:flex;align-items:center;justify-content:center;gap:8px;width:166px;height:56px}.art-wave i{display:block;width:5px;height:18px;background:#4f7952;border-radius:6px}.art-wave i:nth-child(2),.art-wave i:nth-child(6){height:30px}.art-wave i:nth-child(3),.art-wave i:nth-child(5){height:44px}.art-wave i:nth-child(4){height:56px}
