:root{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;color:#213b35;background:#f7f8f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{height:100px;max-width:1160px;padding:0 38px;margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;font-weight:750;font-size:23px;letter-spacing:-.7px}.logo{display:grid;place-items:center;background:#246b56;color:white;width:34px;height:36px;border-radius:10px;font-size:24px}.brand-sub{font-size:9px;letter-spacing:1.8px;font-weight:500;margin-left:12px;color:#7d8c85}.header-note{font-size:12px;color:#79837e}main{max-width:700px;padding:32px 24px 50px;margin:auto}.intro{text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#587a6b;font-size:10px;font-weight:650;letter-spacing:2px}.eyebrow i{height:6px;width:6px;background:#599b71;border-radius:50%}h1{font-size:45px;line-height:1.55;letter-spacing:1px;margin:22px 0 18px;font-weight:700}h1 span{color:#337458}.intro p{font-size:14px;line-height:1.95;color:#738078;margin:0}.card{background:#fff;border:1px solid #e2e8e1;border-radius:22px;margin-top:34px;padding:30px 32px 20px;box-shadow:0 12px 35px #294e3410}.card-heading{display:flex;align-items:center;gap:13px}.step{display:grid;place-items:center;background:#edf3ec;border-radius:10px;font-size:13px;color:#648773;height:40px;width:40px}h2{font-size:17px;margin:0 0 5px}.card-heading p{font-size:11px;color:#7a867e;margin:0}.format{font-size:10px;letter-spacing:1px;margin-left:auto;border:1px solid #dde5de;border-radius:5px;padding:5px;color:#688074}form{margin-top:26px}label{font-size:12px;font-weight:600}.input-wrap{display:flex;align-items:center;margin-top:10px;border:1px solid #ccd7ce;border-radius:10px;background:#fbfcf9;padding:0 15px;gap:10px}.input-wrap:focus-within{outline:3px solid #cee5d5;border-color:#4e856b}.input-wrap span{color:#799084}input{width:100%;min-width:0;font:inherit;font-size:14px;padding:18px 0;border:0;outline:0;background:none;color:#234536}input::placeholder{color:#a1aaa3}.hint{font-size:11px;line-height:1.8;color:#7e8981;margin:10px 0 18px}button,.save{border:0;background:#28664d;color:#fff;font:inherit;font-weight:600;font-size:14px;width:100%;padding:17px 20px;border-radius:10px;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:16px;text-decoration:none}button:hover,.save:hover{background:#1d503a}button:disabled{cursor:wait;opacity:.7}button:focus-visible,.save:focus-visible{outline:3px solid #9cc6aa;outline-offset:3px}.card-footer{display:flex;justify-content:space-between;border-top:1px solid #edf0ea;margin-top:23px;padding-top:17px;font-size:10px;color:#889187}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center;margin:31px 0}.steps article>span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eaf0e7;color:#719079;font-size:10px}.steps h3{font-size:12px;margin:10px 0 6px}.steps p{font-size:11px;line-height:1.85;color:#838c82;margin:0}aside{border-top:1px solid #e2e7de;padding-top:23px;font-size:10px;text-align:center;color:#8c9388;line-height:1.9}footer{max-width:1084px;border-top:1px solid #e2e7de;margin:0 auto;padding:23px 15px 30px;display:flex;justify-content:space-between;font-size:10px;color:#959b90}#result{padding:15px;margin-top:20px;background:#eff5ef;border-radius:10px;font-size:13px;line-height:1.8}#result.error{background:#fff1ed;color:#9a4130}video{display:block;width:100%;max-height:300px;background:#183027;border-radius:10px;margin:16px 0}#result.busy:before{content:'';display:inline-block;width:12px;height:12px;border:2px solid #bad6c2;border-top-color:#28664d;border-radius:50%;margin-right:10px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[hidden]{display:none!important}@media(max-width:600px){header{height:76px;padding:0 22px}.brand-sub,.header-note{display:none}main{padding:25px 18px 32px}h1{font-size:34px}.card{padding:24px 20px 18px}.card-heading p{font-size:10px}.format{display:none}.steps{gap:8px}.card-footer{font-size:9px}footer{margin:0 20px}.intro p{font-size:13px}}@media(prefers-reduced-motion:reduce){#result.busy:before{animation:none}}
