:root{color-scheme:light;--red:#d0021b;--red-dark:#a8001a;--red-light:#fff0f2;--navy:#1a1a1a;--white:#fff;--gray-100:#f4f4f4;--gray-200:#e8e8e8;--gray-400:#aaa;--gray-600:#666;--text:#1a1a1a;--radius:6px;--shadow:0 2px 16px rgba(0,0,0,.07);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:after,:before{box-sizing:border-box}body,html{margin:0;min-width:320px;min-height:100vh}body,html{background:var(--gray-100)}body{background-image:radial-gradient(ellipse at 30% 20%,rgba(200,180,240,.25) 0,transparent 55%),radial-gradient(ellipse at 75% 40%,rgba(160,180,255,.2) 0,transparent 55%);background-attachment:fixed;color:var(--text);padding:0 env(safe-area-inset-right,0) calc(60px + env(safe-area-inset-bottom, 0)) env(safe-area-inset-left,0)}main{min-height:100vh}a{color:var(--red)}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.65}.header{background:var(--white);padding:calc(18px + env(safe-area-inset-top, 0)) 24px 16px;text-align:center;border-bottom:1px solid var(--gray-200)}.header-logos{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.logo-torico{height:28px;width:auto}.logo-eth{height:22px;width:auto}.header-sub{margin-top:2px;font-size:11px;color:var(--gray-600);letter-spacing:.08em}.container{max-width:480px;margin:0 auto;padding:24px 16px 0}.screen{display:none}.screen.active{display:block}.screen.active.fadeUp{animation:fadeUp .3s ease}.card{margin-bottom:16px;border:1px solid var(--gray-200);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow);padding:28px 24px}.badge{display:inline-block;margin-bottom:14px;border-radius:2px;background:var(--red-light);color:var(--red);padding:3px 10px;font-size:11px;font-weight:700;letter-spacing:.06em}.badge.dark{background:var(--navy);color:var(--white)}.intro-title{margin:0 0 16px;font-size:22px;font-weight:700;color:var(--text);line-height:1.4;letter-spacing:.02em}.intro-subtitle{margin-bottom:12px;font-size:17px;font-weight:700;color:var(--navy);line-height:1.5}.intro-body{margin:0 0 20px;font-size:13px;color:var(--gray-600);line-height:1.9}.intro-divider{height:1px;background:var(--gray-200);margin-bottom:24px}.q{margin-bottom:28px}.q:last-child{margin-bottom:0}fieldset.q{min-inline-size:0;border:0;padding:0}legend{padding:0}.q-label{margin-bottom:4px;font-size:14px;font-weight:700;color:var(--text);line-height:1.6}.q-value{font-size:13px;color:var(--text);line-height:1.8}.q-note{margin-bottom:12px;font-size:11px;color:var(--gray-600);line-height:1.6}.q-note.req{display:flex;align-items:flex-start;gap:8px}.req-marker{color:var(--red);font-size:11px;font-weight:700;letter-spacing:.06em;flex-shrink:0}.options{display:flex;flex-direction:column;gap:8px}.opt{display:flex;min-height:44px;align-items:flex-start;gap:10px;cursor:pointer;border:1.5px solid var(--gray-200);border-radius:8px;padding:12px 14px;transition:border-color .15s,background .15s}.opt.selected,.opt:hover{border-color:var(--red);background:var(--red-light)}.opt:has(input:focus-visible),.privacy-check:has(input:focus-visible){outline:3px solid rgba(208,2,27,.14);outline-offset:2px;border-color:var(--red)}.opt input[type=checkbox],.opt input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;margin-top:1px;height:18px;width:18px;flex-shrink:0;border:2px solid var(--gray-400);transition:border-color .15s,background .15s}.opt input[type=radio]{border-radius:50%}.opt input[type=checkbox]{border-radius:4px}.opt input[type=checkbox]:checked,.opt input[type=radio]:checked{border-color:var(--red);background:var(--red)}.opt input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;height:6px;width:6px;border-radius:50%;background:var(--white);transform:translate(-50%,-50%)}.opt input[type=checkbox]:checked:after{content:"\2713";position:absolute;top:50%;left:50%;color:var(--white);font-size:11px;font-weight:700;transform:translate(-50%,-50%)}.opt-text{padding-top:1px;font-size:13px;line-height:1.5}.input,.opt-text{color:var(--text)}.input{width:100%;min-height:44px;border:1.5px solid var(--gray-200);border-radius:8px;background:var(--white);padding:12px 14px;font-size:14px;outline:none;transition:border-color .15s}.input:focus,.input:focus-visible{border-color:var(--red)}.input[aria-invalid=true]{border-color:var(--red);box-shadow:0 0 0 3px rgba(208,2,27,.12)}.input::placeholder{color:var(--gray-400)}.input-stack{display:flex;flex-direction:column;gap:8px}.notice{margin-bottom:16px;border-left:3px solid var(--red);border-radius:4px;background:var(--red-light);padding:12px 14px;font-size:12px;color:var(--red-dark);line-height:1.7}.notice.notice-error{margin-top:12px}.field-error{margin-top:8px;font-size:12px;color:var(--red-dark);line-height:1.6}.submit-error{margin-bottom:16px}.btn{width:100%;min-height:44px;margin-top:8px;border:none;border-radius:10px;padding:16px;font-size:15px;font-weight:700;transition:opacity .15s,transform .1s}.btn:active{transform:scale(.98)}.btn:focus-visible{outline:3px solid rgba(208,2,27,.14);outline-offset:2px}.btn-primary{background:var(--red);color:var(--white);letter-spacing:.05em}.btn-primary:hover{opacity:.9}.btn-back{background:var(--gray-200);color:var(--gray-600)}.actions{display:flex;flex-direction:column;gap:8px}.actions .btn{margin-top:0}.complete-wrap{text-align:center;padding:40px 24px}.complete-icon{display:flex;height:72px;width:72px;align-items:center;justify-content:center;margin:0 auto 20px;border-radius:50%;background:var(--red);color:var(--white);font-size:32px}.complete-title{margin:0 0 10px;font-size:20px;font-weight:700;color:var(--navy)}.complete-desc{font-size:13px;color:var(--gray-600);line-height:1.8}.privacy-check{display:flex;min-height:44px;align-items:flex-start;gap:10px;cursor:pointer;border:1.5px solid var(--gray-200);border-radius:8px;background:var(--gray-100);padding:14px 16px}.privacy-check input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;margin-top:1px;height:18px;width:18px;flex-shrink:0;border:2px solid var(--gray-400);border-radius:4px;transition:border-color .15s,background .15s}.privacy-check input[type=checkbox]:checked{border-color:var(--red);background:var(--red)}.privacy-check input[type=checkbox]:checked:after{content:"\2713";position:absolute;top:50%;left:50%;color:var(--white);font-size:11px;font-weight:700;transform:translate(-50%,-50%)}.privacy-check span{font-size:13px;color:var(--text);line-height:1.6}.privacy-box{border:1px solid var(--gray-200);border-radius:8px;background:var(--gray-100);padding:16px}.privacy-box-title{margin-bottom:8px;font-size:13px;font-weight:700;color:var(--navy)}.privacy-box-text{font-size:12px;color:var(--gray-600);line-height:1.8}.privacy-box-text a{color:var(--red);text-decoration:underline}.footer{margin:20px 0 0;padding:0 24px;text-align:center;font-size:11px;color:var(--gray-600);line-height:1.7}.spinner{height:28px;width:28px;margin:0 auto 12px;border:3px solid var(--gray-200);border-top-color:var(--red);border-radius:50%;animation:spin .8s linear infinite}.centered{text-align:center}.muted{color:var(--gray-600)}.detail-list{display:grid;grid-gap:14px;gap:14px;margin:0}.detail-list div{display:grid;grid-template-columns:112px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start}.detail-list dt{color:var(--gray-600);font-weight:700}.detail-list dd{margin:0;color:var(--text)}.debug{margin:24px 0 0;border:1px solid var(--gray-200);border-radius:8px;background:hsla(0,0%,100%,.82);padding:16px}.debug summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--gray-600)}.debug[open] summary{margin-bottom:12px}.break-all{word-break:break-all}.sr-only{position:absolute;height:1px;width:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;-webkit-clip-path:inset(50%);clip-path:inset(50%)}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:0s!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:0s!important}.screen.active.fadeUp,.spinner{animation:none!important}}