.ovl{position:fixed;inset:0;background:#1114178c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:ovlIn .18s ease-out}.ovl .detail{background:#fff;border:1px solid var(--line,#E8E5DE);border-radius:16px;box-shadow:0 24px 64px #11141747;width:100%;animation:cardIn .22s cubic-bezier(.2,.9,.3,1.15)}@keyframes ovlIn{0%{opacity:0}to{opacity:1}}@keyframes cardIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.ovl,.ovl .detail{animation:none}}body.ovl-open{overflow:hidden}.flow-head{padding:48px 0 8px;text-align:center}.flow-head h1{font-size:clamp(28px,3.4vw,42px)}.flow-head p{color:var(--slate);margin-top:10px}.stepper{display:flex;justify-content:center;margin:38px auto 44px;max-width:720px;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em}.stp{flex:1;display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;color:var(--faint)}.stp i{width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--line-strong);box-sizing:border-box;display:block;z-index:1}.stp:after{content:"";position:absolute;top:8px;left:calc(50% + 14px);right:calc(-50% + 14px);height:2px;background:var(--line-strong)}.stp:last-child:after{display:none}.stp.done{color:var(--ink)}.stp.done i{background:var(--gold);border-color:var(--gold)}.stp.done:after{background:var(--gold)}.stp.now{color:var(--ink);font-weight:600}.stp.now i{border-color:var(--gold);border-width:5px}@media(max-width:560px){.stepper{font-size:10px}.stp{gap:9px}}.flow-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;padding-bottom:96px;align-items:start}@media(max-width:900px){.flow-grid{grid-template-columns:1fr}}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px;box-shadow:var(--shadow)}.panel h3{font-size:18px;margin-bottom:18px}.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}@media(max-width:640px){.grid3{grid-template-columns:1fr}}.seg{display:flex;gap:10px;margin:2px 0 4px}.seg button{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 14px;background:#fff;border:2px solid var(--line-strong);border-radius:12px;font-family:var(--body);font-size:16px;font-weight:700;color:var(--slate);cursor:pointer;transition:.15s}.seg button:hover{border-color:var(--gold)}.seg button.on{background:var(--gold-soft);border-color:var(--gold);color:var(--ink);box-shadow:0 6px 18px #a9822f2e}.seg .seg-ic{font-size:22px;line-height:1;color:var(--gold-strong)}.seg .seg-tx{display:flex;flex-direction:column;align-items:flex-start;text-align:left;line-height:1.2}.seg .seg-tx small{font-weight:500;font-size:12px;color:var(--faint);margin-top:3px}.seg button.on .seg-tx small{color:var(--gold-strong)}@media(max-width:560px){.seg{flex-direction:column}.seg button{justify-content:flex-start}}.suggest{position:absolute;top:calc(100% - 14px);left:0;right:0;z-index:60;background:#fff;border:2px solid var(--gold);border-radius:12px;max-height:300px;overflow:auto;display:none;box-shadow:0 24px 60px #11141738}.suggest.open{display:block}.suggest button{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;padding:13px 16px;background:none;border:0;border-bottom:1px solid var(--line);font-family:var(--body);font-size:14.5px;font-weight:500;cursor:pointer}.suggest button:last-child{border-bottom:0}.suggest button:hover{background:var(--gold-soft)}.suggest small{font-family:var(--mono);font-size:11.5px;color:var(--faint);white-space:nowrap}.hint{font-family:var(--mono);font-size:12px;color:var(--gold-strong);margin-top:8px;min-height:16px}.vopt{display:grid;grid-template-columns:110px 1fr auto;gap:16px;align-items:center;border:1.5px solid var(--line);border-radius:10px;padding:14px;margin-bottom:12px;cursor:pointer;transition:.15s}.vopt:hover{border-color:var(--line-strong)}.vopt.sel{border-color:var(--gold);background:var(--gold-soft)}.vimg{font-family:var(--mono);font-size:9.5px;color:var(--faint);letter-spacing:.08em;text-align:center}.vopt .vimg{aspect-ratio:auto!important;overflow:visible!important;height:auto}.vpic{display:flex;flex-direction:column;width:100%;padding:0;border:0;background:none;cursor:zoom-in;font:inherit;color:inherit}.vpic-im{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;border-radius:6px;overflow:hidden;background:linear-gradient(150deg,#eeece6,#f7f6f2)}.vpic-im img{width:100%;height:100%;object-fit:cover;display:block}.vpic-cta{margin-top:7px;display:flex;align-items:center;justify-content:center;gap:5px;border:1.5px solid var(--gold);color:var(--gold-strong);border-radius:8px;padding:8px 6px;font-family:var(--font,inherit);font-size:11px;font-weight:700;letter-spacing:.02em;background:#fff;transition:.15s;min-height:32px;white-space:normal;line-height:1.25;text-align:center}.vpic:hover .vpic-cta,.vpic:focus-visible .vpic-cta{background:var(--gold);color:#fff}@media(min-width:641px){.vpic-cta{display:block;text-align:center}}@media(max-width:640px){.vopt{grid-template-columns:1fr;gap:10px}.vpic-cta{font-size:12.5px;padding:10px 8px;min-height:42px}.vp{text-align:left;display:flex;align-items:baseline;gap:10px}.vp small{display:inline}}.vopt h4{font-size:15.5px;font-weight:600}.vopt .cap{font-size:12.5px;color:var(--slate)}.vopt .cap.alt{font-family:var(--mono);font-size:11px;color:var(--gold-strong);margin-top:4px}.vp{font-family:var(--mono);font-size:17px;color:var(--gold-strong);font-weight:500;text-align:right}.vp small{display:block;font-size:10px;color:var(--faint);letter-spacing:.04em}.tag-free{font-family:var(--mono);font-size:10px;letter-spacing:.1em;background:var(--gold-soft);color:var(--gold-strong);border-radius:4px;padding:3px 8px;vertical-align:middle}.ex-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:640px){.ex-grid{grid-template-columns:1fr}}.ex{display:flex;align-items:center;gap:10px;border:1.5px solid var(--line);border-radius:8px;padding:11px 14px;font-size:14px}.ex span{flex:1;font-weight:500}.ex .exp{display:block;font-weight:400;font-family:var(--mono);font-size:11px;color:var(--gold-strong);margin-top:2px}.ex.qty.on{border-color:var(--gold);background:var(--gold-soft)}.stepq{display:flex;align-items:center;gap:12px}.stepq button{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--line-strong);background:#fff;font-size:16px;cursor:pointer;line-height:1}.stepq button:hover{border-color:var(--gold);color:var(--gold-strong)}.stepq .q-v{font-family:var(--mono);min-width:16px;text-align:center}.ex input[type=checkbox]{accent-color:var(--gold)}.acc-hint{background:var(--gold-soft);border:1px solid var(--gold);border-radius:8px;padding:11px 15px;font-size:13.5px;margin-bottom:18px}.nav-row{display:flex;justify-content:space-between;margin-top:24px;gap:12px;flex-wrap:wrap}.sum .row{display:flex;justify-content:space-between;align-items:baseline;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px;gap:16px}.sum .row span{color:var(--slate);flex:none;font-weight:400}.sum .row b{font-weight:600;text-align:right;overflow-wrap:anywhere}.sum .row.tot{border-bottom:0;padding-top:16px;font-size:16px}.sum .row.tot b{font-family:var(--mono);color:var(--gold-strong);font-size:22px}.cur-note{font-family:var(--mono);font-size:19px;font-weight:700;color:var(--ink);text-align:right;margin-top:6px}.cur-note small{font-size:12px;font-weight:400;color:var(--slate);margin-left:6px}.pay-note{margin-top:16px;font-size:12.5px;color:var(--slate);background:var(--bg-soft);border-radius:8px;padding:10px 14px;text-align:center}#live-sum{position:sticky;top:98px}@media(max-width:900px){#live-sum{position:static}}.final .row{display:flex;justify-content:space-between;align-items:baseline;padding:11px 0;border-bottom:1px solid var(--line);font-size:14.5px;gap:16px}.final .row span{color:var(--slate);flex:none;font-weight:400}.final .row b{font-weight:600;text-align:right;overflow-wrap:anywhere}.final .row.exrow span,.sum .row.exrow span{font-size:13.5px}.row.exrow.pad2 span{padding-left:14px}.row.exhead{border-bottom:0;padding-bottom:2px}.row.exhead span{color:var(--ink);font-weight:600;font-size:13px;letter-spacing:.02em}.final .row.tot{border-bottom:0;padding-top:16px;font-size:16px}.final .row.tot b{font-family:var(--mono);color:var(--gold-strong);font-size:22px}.err{background:#fceeea;border:1px solid #E8B3A3;color:#8c3a22;border-radius:8px;padding:12px 16px;font-size:14px;margin-top:16px}textarea.box{resize:vertical;font-family:var(--body)}
