:root{color:#142238;background:#edf4fb;font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,#e4effb 0,#f5f8fc 360px)}button,input,select{font:inherit}button{cursor:pointer}.app-shell{width:min(100%,920px);margin:0 auto;padding:18px 14px 110px}.hero{display:flex;align-items:center;gap:14px;padding:18px 4px 26px;color:#fff}.hero-mark{display:grid;flex:0 0 auto;width:48px;height:48px;place-items:center;border:1px solid rgba(255,255,255,.6);border-radius:15px;background:#ffffff24;font-weight:800;font-size:25px}h1,h2,h3,p{margin:0}h1{font-size:clamp(23px,6vw,31px);letter-spacing:.03em}h2{font-size:18px}h3{font-size:17px}.hero p:not(.eyebrow){margin-top:6px;font-size:13px;color:#ffffffd9;line-height:1.55}.eyebrow{color:#56708f;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.eyebrow.light{color:#dcecff}.card,.deposit-card,.result-card,.physical-card,.summary-card{border:1px solid #dce6f1;border-radius:18px;background:#fff;box-shadow:0 5px 20px #21456c0f}.card{padding:18px}.section-title,.deposit-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.section-title h2{margin-top:3px}.rule-version,.count-badge{padding:5px 8px;border-radius:8px;background:#edf4fb;color:#315d91;font-size:12px;white-space:nowrap}.period-card{margin-top:-3px}.period-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.activity-period{margin:11px 0 -3px;color:#2e6093;font-size:12px;line-height:1.55}.claim-status{display:flex;flex-wrap:wrap;gap:10px 18px;margin:15px 0 0;padding:12px;border:1px solid #d4e0ed;border-radius:11px}.claim-status legend{padding:0 4px;color:#385a7f;font-size:13px;font-weight:700}.claim-status label{display:flex;align-items:center;gap:6px;color:#364f6b;font-size:13px}.claim-status input{width:auto;min-height:auto;margin:0}.claimed-alert{margin:12px 0 0;padding:10px 12px;border-radius:9px;background:#fff0f0;color:#a33333;font-size:13px;font-weight:700;line-height:1.5}label{display:grid;gap:6px;color:#496079;font-size:13px;font-weight:600}input,select{width:100%;min-height:45px;border:1px solid #cbd8e6;border-radius:10px;padding:9px 11px;color:#172741;background:#fff;outline:none}input:focus,select:focus{border-color:#1763b2;box-shadow:0 0 0 3px #1763b221}.funds-section,.results-section{margin-top:27px}.section-hint{margin:9px 0 14px;color:#718197;font-size:13px;line-height:1.55}.empty-state{display:grid;gap:7px;padding:24px 18px;border:1px dashed #a9bfd6;border-radius:16px;color:#58708b;background:#ffffffa3;text-align:center}.empty-state strong{color:#294d75}.deposit-list{display:grid;gap:14px}.deposit-card{padding:16px}.card-actions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.text-button{min-height:32px;border:0;background:transparent;color:#1763b2;font-size:12px}.text-button.danger{color:#a43b3b}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:15px}.span-two{grid-column:span 2}.form-error{margin-top:10px;color:#b3261e;font-size:13px}.detail-strip{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:13px;padding:10px;border-radius:10px;background:#f3f7fb;color:#5c6d81;font-size:12px}.detail-strip strong{color:#1c3f68}.eligibility{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.eligibility span{padding:4px 7px;border-radius:7px;background:#f0f2f5;color:#69798d;font-size:11px}.eligibility .yes{background:#e2f0e7;color:#287248}.prefix-panel{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:13px;overflow:hidden;border:1px solid #d8e4ef;border-radius:12px;background:#d8e4ef}.prefix-panel>div{display:grid;gap:3px;min-height:58px;padding:9px;background:#fff}.prefix-panel small{color:#718197;font-size:11px}.prefix-panel strong{color:#1b416d;font-size:13px}.prefix-panel .accent{color:#b75d14}.prefix-panel .prefix-delta{grid-template-columns:1fr 1fr;column-gap:3px}.prefix-panel .tier-entry{grid-column:span 2;background:#f7fbff}.type-note{margin-top:10px;color:#738196;font-size:12px}.primary-button,.actions button:not(.danger-outline){min-height:46px;border:1px solid #0d57a2;border-radius:11px;padding:10px 14px;background:#0e5dac;color:#fff;font-weight:700}.primary-button:hover{background:#084c91}.add-button{width:100%;margin-top:15px}.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.result-card{min-height:188px;padding:16px;border-top-width:4px}.result-card p,.summary-card p{color:#63758b;font-size:12px}.result-card>strong{display:block;margin:7px 0 12px;color:#133e70;font-size:21px;letter-spacing:-.04em}.overview{border-top-color:#1a68b9}.special-two{border-top-color:#b98033}.special-three{border-top-color:#4c8e79}.result-list{display:grid;gap:8px;color:#63758b;font-size:12px}.result-list span{display:flex;justify-content:space-between;gap:7px}.result-list b{color:#27476e;font-weight:700;text-align:right}.physical-card{margin-top:12px;padding:17px}.voucher-recommendation{margin-top:12px;padding:17px;border:1px solid #d2e0ef;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#edf5ff);box-shadow:0 5px 20px #21456c0f}.voucher-recommendation>.section-title>strong{color:#a25716;font-size:24px;white-space:nowrap}.voucher-recommendation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:15px;overflow:hidden;border:1px solid #d4e2ef;border-radius:12px;background:#d4e2ef}.voucher-recommendation-grid>div{display:grid;gap:4px;min-height:66px;padding:11px;background:#fff}.voucher-recommendation-grid small{color:#708196;font-size:11px}.voucher-recommendation-grid strong{color:#234a78;font-size:14px}.voucher-recommendation-grid .actual-voucher{background:#fff6e9}.voucher-recommendation-grid .actual-voucher strong{color:#a25716;font-size:18px}.forecast-card{margin-top:12px;padding:0;overflow:hidden}.forecast-card summary{display:flex;align-items:center;justify-content:space-between;padding:14px 16px}.forecast-card summary span{color:#718196;font-size:11px;font-weight:400}.forecast-highlights{display:flex;flex-wrap:wrap;gap:7px;padding:0 16px 12px}.forecast-highlights span{padding:5px 7px;border-radius:7px;background:#edf4fb;color:#38618d;font-size:11px}.forecast-list{display:grid;gap:1px;border-top:1px solid #dbe6f0;background:#dbe6f0}.forecast-row{display:grid;grid-template-columns:1.05fr 1.5fr 1.5fr 1fr;align-items:stretch;background:#fff}.forecast-row>div{display:grid;align-content:center;gap:3px;min-height:70px;padding:10px;border-right:1px solid #dbe6f0}.forecast-row>div:last-child{border-right:0}.forecast-row small{color:#718196;font-size:11px}.forecast-row strong{color:#264b76;font-size:13px}.forecast-row .forecast-total{color:#a25716;font-size:16px}.forecast-row.recommended{background:#fff7eb}.physical-card h2 em{margin-left:5px;color:#af631e;font-style:normal}.gift-list{display:grid;gap:8px}.gift-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:11px;border:1px solid #d8e2ed;border-radius:11px;background:#fbfcfe}.gift-option.selected{border-color:#73a3d5;background:#f2f8ff}.gift-option div{display:grid;gap:3px}.gift-option div:last-child{text-align:right}.gift-option strong{color:#244b78;font-size:13px}.gift-option small{color:#748397;font-size:11px}.gift-rank{padding:4px 6px;border-radius:6px;background:#e9f2fc;color:#2863a2;font-size:10px;font-weight:700}.empty-gift{padding:14px;border-radius:10px;background:#f4f6f8;color:#6e7f90;font-size:13px;text-align:center}.summary-card{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:12px;overflow:hidden;background:#dce6f1}.summary-card>div{display:grid;gap:5px;padding:14px;background:#fff}.summary-card strong{color:#153e6c;font-size:16px}.summary-card .summary-total{background:#edf6ff}.summary-card .summary-total strong{color:#9a5314;font-size:22px}.summary-card small{color:#68809a;font-size:11px}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:22px}.actions button{min-height:44px;border:1px solid #c9d8e7;border-radius:10px;padding:8px;background:#fff;color:#315576;font-size:13px;font-weight:600}.actions button:first-child{grid-column:span 2}.actions .danger-outline{color:#9c3d3d;border-color:#e2b8b8}.help-area{display:grid;gap:8px;margin-top:17px}details{border:1px solid #dce6f1;border-radius:11px;padding:12px 14px;background:#fff;color:#586b80;font-size:13px;line-height:1.65}summary{color:#284f7d;font-weight:700;cursor:pointer}details p{margin-top:9px}footer{margin:19px 3px 0;color:#718095;font-size:11px;line-height:1.65}.sticky-total{position:fixed;right:0;bottom:0;left:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:12px max(16px,calc((100vw - 920px)/2 + 14px));border-top:1px solid #b8cee4;background:#f7fbfff5;box-shadow:0 -5px 16px #193a5f1a;color:#34597e;font-size:13px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sticky-total strong{color:#9b5313;font-size:20px}.notice,.update-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px;padding:10px 12px;border-radius:10px;background:#e7f4eb;color:#287447;font-size:13px}.notice button,.update-banner button{border:0;background:transparent;color:inherit;font-weight:700}.update-banner{background:#fff2dc;color:#8b571c}@media (max-width: 690px){.results-grid{grid-template-columns:1fr}.result-card{min-height:0}.summary-card,.voucher-recommendation-grid,.forecast-row{grid-template-columns:1fr 1fr}.forecast-row>div:nth-child(2){border-right:0}.forecast-row>div:nth-child(-n+2){border-bottom:1px solid #dbe6f0}}@media (min-width: 691px){.app-shell{padding-top:34px}.hero{padding-left:12px;padding-right:12px}.deposit-card{padding:19px}}@media (max-width: 390px){.app-shell{padding-right:10px;padding-left:10px}.hero{gap:10px}.hero-mark{width:42px;height:42px}.prefix-panel{grid-template-columns:1fr}.prefix-panel .tier-entry{grid-column:auto}.summary-card{grid-template-columns:1fr 1fr}.voucher-recommendation-grid,.forecast-row{grid-template-columns:1fr}.forecast-row>div{min-height:auto;border-right:0;border-bottom:1px solid #dbe6f0}.forecast-row>div:last-child{border-bottom:0}.actions{grid-template-columns:1fr 1fr}.actions button:first-child{grid-column:span 2}}
