:root{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:#292329;background:#fbf4f5;line-height:1.7;font-synthesis:none;--accent:#991c32;--border:#decbd0}*{box-sizing:border-box}body{margin:0}main{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 18px}.screen{width:100%;max-width:430px}.start{text-align:center}.start-logo{width:260px;max-width:85%;height:auto;object-fit:contain;margin-bottom:20px}.organization{font-size:12px;font-weight:700;color:#73646a;margin:0}h1{font-size:24px;margin:2px 0 16px;line-height:1.5;font-weight:800}.welcome{font-size:15px;line-height:1.8;color:#685960;margin:0 0 24px}.small,.privacy{font-size:12px;color:#685960;line-height:1.8}.small{margin:17px 0}.privacy{font-size:11px;margin-top:28px}.primary,.secondary{display:block;width:100%;padding:16px 12px;background:var(--accent);color:white;border:2px solid var(--accent);border-radius:12px;font:inherit;font-size:16px;font-weight:800;cursor:pointer;line-height:1.5;text-align:center;text-decoration:none;box-shadow:0 8px 24px #991c321c}.secondary{background:#fff;color:#292329;border-color:var(--border);box-shadow:0 2px 10px #991c320a}.primary:disabled{opacity:.45;cursor:not-allowed}body:has(#questions:not([hidden])) main{align-items:flex-start;padding-bottom:115px}.question-brand{display:flex;align-items:center;gap:15px;margin-bottom:25px}.question-brand img{width:100px;height:auto}.question-brand span{display:block;font-size:10px;letter-spacing:.05em;color:#73646a}.question-brand strong{font-size:13px;display:block}.progress-label{display:flex;justify-content:space-between;font-size:13px;color:#73646a;margin-bottom:8px}.track{height:5px;background:#e9dce0;border-radius:99px;margin-bottom:24px}#bar{height:100%;background:var(--accent);border-radius:99px}h2{font-size:24px;font-weight:800;line-height:1.5;white-space:pre-line;text-align:center;margin:0 0 17px}#question-hint{text-align:center;margin:0 0 16px}#options{display:flex;flex-direction:column;gap:11px}.option{width:100%;padding:14px 12px;background:#fff;border:2px solid var(--border);border-radius:12px;font:inherit;font-size:15px;font-weight:700;color:#292329;cursor:pointer;box-shadow:0 2px 10px #991c320a;min-height:53px}.option[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 8px 24px #991c3230}.navigation{position:fixed;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));transform:translateX(-50%);width:calc(100% - 36px);max-width:430px;display:flex;gap:10px;padding-top:10px;background:#fbf4f5f2;border-top:1px solid var(--border);backdrop-filter:blur(10px)}.navigation .secondary{flex:1}.navigation .primary{flex:1.5}textarea{width:100%;border:1px solid #b89fa8;border-radius:12px;padding:14px;font:inherit;font-size:16px;resize:vertical;background:#fff;color:#292329;line-height:1.8}label{font-size:13px}#free-label{display:block;margin-bottom:8px}.result-logo{display:block;width:165px;height:auto;margin:5px auto 24px}.success{width:49px;height:49px;border-radius:50%;background:#e8f3ed;color:#2a6b57;display:grid;place-items:center;font-size:28px;margin:0 auto 15px}#result{text-align:center}#result h2{font-size:23px}#result>label[for=draft]{display:block;text-align:left;margin:22px 0 8px;font-weight:700}#draft{text-align:left}.notice{padding:14px;background:#eaf4ed;border:1px solid #bad3c2;border-radius:12px;color:#365e43;text-align:left;font-size:13px}.confirm{display:flex;text-align:left;gap:9px;align-items:flex-start;margin:20px 0}input{accent-color:var(--accent);margin-top:5px;width:17px;height:17px;flex-shrink:0}.text-button{border:0;background:none;font:inherit;font-size:13px;color:#685960;text-decoration:underline;cursor:pointer;margin-top:20px;padding:8px}#copy-status{font-size:13px;color:#365e43}button:hover:not(:disabled),a:hover{filter:brightness(.96)}:focus-visible{outline:3px solid #a56c12;outline-offset:3px}[hidden]{display:none!important}@media(prefers-reduced-motion:no-preference){.screen{animation:appear .25s ease}#bar{transition:width .2s}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}@media(max-width:360px){h2{font-size:22px}.primary{font-size:15px}}

.customize{text-align:left;background:white;border:1px solid var(--border);border-radius:12px;padding:16px;margin:20px 0}.customize summary{cursor:pointer;font-weight:700}.customize select{width:100%;padding:10px;font:inherit;border:1px solid var(--border);border-radius:8px;margin:8px 0}.customize label[for=tone]{display:block;margin-top:15px}.include-option{display:flex;align-items:flex-start;gap:8px;margin:10px 0}
