:root{color:#171114;font-synthesis:none;text-rendering:optimizelegibility;background:#fff9f3;font-family:ui-serif,Songti SC,Noto Serif CJK SC,Georgia,serif}*{box-sizing:border-box}body{background:#fff9f3;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.claim-page{width:min(100%,760px);padding:max(28px, env(safe-area-inset-top)) 18px max(36px, env(safe-area-inset-bottom));margin:0 auto}.brand-header{text-align:center;margin-bottom:24px}.brand-mark{object-fit:contain;mix-blend-mode:multiply;width:70px;height:70px}.brand-name{color:#690122;letter-spacing:.14em;margin:4px 0 6px;font-size:clamp(1.55rem,7vw,2.2rem);font-weight:750}.brand-promise{color:#5e5258;letter-spacing:.14em;justify-content:center;align-items:center;gap:12px;margin:0;font-size:.94rem;display:flex}.brand-promise span{background:#c6a15b;width:34px;height:1px}.claim-card{background:#ffffffe0;border:1px solid #eadfda;border-radius:24px;position:relative;overflow:hidden;box-shadow:0 18px 55px #45272c14}.card-heading{text-align:center;padding:28px 24px 6px;position:relative}.back-button{color:#690122;cursor:pointer;background:#fff;border:1px solid #e4d6d3;border-radius:50%;width:44px;height:44px;position:absolute;top:28px;left:18px}.eyebrow{color:#86736e;letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font:700 .72rem/1.2 ui-sans-serif,system-ui,sans-serif}h1{color:#171114;letter-spacing:.02em;margin:0;font-size:clamp(1.9rem,8vw,2.75rem);line-height:1.18}.intro{color:#5e5258;max-width:540px;margin:14px auto 0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:1rem;line-height:1.65}.step-progress{grid-template-columns:repeat(4,1fr);margin:24px 20px;padding:0;list-style:none;display:grid}.step-progress li{color:#94878a;justify-items:center;gap:8px;font:600 .78rem/1 ui-sans-serif,system-ui,sans-serif;display:grid;position:relative}.step-progress li:after{content:"";border-top:1px dashed #d9cbc6;width:calc(100% - 46px);position:absolute;top:17px;left:calc(50% + 23px)}.step-progress li:last-child:after{display:none}.step-number{color:#74676a;background:#fff;border:1px solid #d7c9c5;border-radius:50%;place-items:center;width:36px;height:36px;font-size:1rem;display:grid}.step-progress .is-reached{color:#690122}.step-progress .is-reached .step-number{color:#fff;background:#690122;border-color:#690122}.claim-form,.success-panel{padding:8px 24px 28px}.claim-form label{margin-bottom:9px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.94rem;font-weight:720;display:block}.claim-form input{color:#171114;background:#fffefa;border:1px solid #d9cbc6;border-radius:12px;outline:none;width:100%;min-height:56px;padding:0 15px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:1.05rem}.claim-form input:focus{border-color:#690122;box-shadow:0 0 0 3px #6901221c}.code-input-row{grid-template-columns:1fr auto;gap:10px;display:grid}.code-input-row input{letter-spacing:.08em;font-size:1.18rem;font-weight:760}.scan-button{color:#690122;cursor:pointer;background:#fffaf7;border:1px solid #d7c4c4;border-radius:12px;min-width:104px;min-height:56px;font:700 .86rem/1.25 ui-sans-serif,system-ui,sans-serif}.scan-button span{font-size:1.3rem;display:block}.field-hint{color:#746a6d;margin:8px 0 0;font:.83rem/1.5 ui-sans-serif,system-ui,sans-serif}.primary-button{color:#fff;cursor:pointer;letter-spacing:.04em;background:#690122;border:1px solid #690122;border-radius:12px;width:100%;min-height:56px;margin-top:22px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:1rem;font-weight:760;box-shadow:0 8px 18px #69012224}.primary-button:hover{background:#54001b}.primary-button:focus-visible,.scan-button:focus-visible,a:focus-visible,.back-button:focus-visible{outline-offset:3px;outline:3px solid #c6a15bbf}.primary-button:disabled{box-shadow:none;cursor:not-allowed;background:#b9acaf;border-color:#b9acaf}.button-link{place-items:center;text-decoration:none;display:grid}.error-banner{color:#6e201b;background:#fff6f3;border:1px solid #d9a6a3;border-left:4px solid #9c342d;border-radius:10px;gap:4px;margin:0 24px 18px;padding:14px 16px;font-family:ui-sans-serif,system-ui,sans-serif;display:grid}.error-banner small{color:#7a696b;overflow-wrap:anywhere}.knowledge-summary{background:#faf7f4;border:1px solid #e8ddd4;border-radius:14px;grid-template-columns:auto 1fr;align-items:start;gap:14px;margin-bottom:18px;padding:16px;display:grid}.summary-mark{color:#fff;background:#690122;border-radius:10px;place-items:center;width:42px;height:42px;font-weight:760;display:grid}.knowledge-summary strong{font-family:ui-sans-serif,system-ui,sans-serif}.knowledge-summary p{color:#5e5258;margin:5px 0 0;font:.86rem/1.5 ui-sans-serif,system-ui,sans-serif}.phone-policy{color:#6b6546;margin:0 0 18px;font:.9rem/1.5 ui-sans-serif,system-ui,sans-serif}.phone-input{background:#fffefa;border:1px solid #d9cbc6;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;display:grid}.phone-input:focus-within{border-color:#690122;box-shadow:0 0 0 3px #6901221c}.phone-input span{color:#5e5258;border-right:1px solid #e5d9d4;padding:0 14px;font-family:ui-sans-serif,system-ui,sans-serif}.phone-input input{border:0;box-shadow:none!important}.otp-input{text-align:center;letter-spacing:.32em;height:70px;font-weight:760;font-size:1.9rem!important}.sandbox-code{color:#4f572f;background:#f4f1df;border-radius:9px;margin:12px 0 0;padding:10px 12px;font:.84rem/1.4 ui-sans-serif,system-ui,sans-serif}.sandbox-code button{color:#690122;cursor:pointer;background:0 0;border:0;font-weight:800}.success-panel{text-align:center}.success-icon{color:#fff;background:#5d7539;border-radius:50%;place-items:center;width:62px;height:62px;margin:2px auto 14px;font:800 2rem/1 ui-sans-serif,system-ui,sans-serif;display:grid}.success-panel h2{margin:0 0 20px;font-size:1.45rem}.success-panel dl{background:#faf7f4;border:1px solid #e8ddd4;border-radius:12px;margin:0;font-family:ui-sans-serif,system-ui,sans-serif}.success-panel dl div{justify-content:space-between;gap:12px;padding:13px 15px;display:flex}.success-panel dl div+div{border-top:1px solid #e8ddd4}.success-panel dt{color:#6f6467}.success-panel dd{text-align:right;margin:0;font-weight:700}.claim-security{color:#646848;text-align:center;background:#fffaf6;border-top:1px solid #eadfda;justify-items:center;gap:10px;padding:18px 20px;font:.84rem/1.4 ui-sans-serif,system-ui,sans-serif;display:grid}.claim-security p{margin:0}.claim-security a,.site-footer a{color:#690122;text-underline-offset:3px;text-decoration-thickness:1px}.site-footer{color:#786d70;text-align:center;padding:30px 0 0;font:.82rem/1.5 ui-sans-serif,system-ui,sans-serif}.site-footer p{letter-spacing:.08em;margin:0 0 8px}.site-footer nav{justify-content:center;gap:12px;display:flex}@media (max-width:520px){.claim-page{padding-inline:12px}.brand-mark{width:58px;height:58px}.claim-card{border-radius:18px}.card-heading,.claim-form,.success-panel{padding-inline:18px}.step-progress{margin-inline:10px}.step-progress li{font-size:.7rem}.step-number{width:32px;height:32px}.step-progress li:after{width:calc(100% - 42px);top:15px;left:calc(50% + 21px)}.code-input-row{grid-template-columns:1fr}.scan-button{min-height:48px}.scan-button span{display:inline}.error-banner{margin-inline:18px}}@media (prefers-reduced-motion:no-preference){.claim-card{animation:.42s ease-out both card-in}@keyframes card-in{0%{opacity:0;transform:translateY(10px)}}}
