.payment-page{min-width:0;--bill-width:200px}
.payment-page [hidden]{display:none!important}
.payment-layout .workspace{width:100%;max-width:none;margin:0}
.payment-layout .guide{gap:16px}
.payment-layout .guide-portrait{width:100%;height:290px;object-fit:contain}
.payment-layout .guide-bubble{width:100%;margin:0;padding:18px 14px;border:1.5px solid #82b6ff;border-radius:22px;background:white;text-align:center;font-size:22px;line-height:1.35;font-weight:900}
.payment-layout .topic-picker{padding:12px;min-height:62px;font-size:18px;font-weight:850;text-decoration:none;color:var(--blue);background:#e5f2ff;border-color:var(--blue)}
.payment-layout .topic-art{width:52px;height:44px;object-fit:contain;flex-shrink:0}
.payment-page .lesson-heading{margin-bottom:18px;gap:14px}
.payment-page h1{font-size:clamp(28px,2.6vw,40px)}
.payment-page #intro{font-size:21px;margin:8px 0 0}
.payment-page .mode-tabs{min-width:270px;max-width:330px;flex-shrink:0}
.payment-page .mode-tabs button{flex:1;min-width:0;border:0;background:transparent;color:var(--blue);font-size:16px;font-weight:900;white-space:nowrap;padding:8px 12px;border-radius:999px;min-height:46px}
.payment-page .mode-tabs #learn-mode{flex:1.5}
.payment-page .mode-tabs button[aria-pressed=true]{background:var(--blue);color:white}
.payment-panel{padding:20px;border:1.5px solid var(--line);border-radius:20px;background:white}
.payment-panel h2{font-size:23px;font-weight:900;margin:0 0 8px}
.item-summary{display:grid;grid-template-columns:110px minmax(0,1fr) minmax(0,1fr) minmax(140px,1.25fr);gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px}
.asking-price{min-width:0}
.goods-picker{grid-column:1/-1;display:flex;flex-direction:column;gap:4px;width:min(100%,360px);font-size:16px;font-weight:850}
.goods-picker select{width:100%;min-width:0;min-height:48px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#f7fbff;color:var(--navy);font:inherit}
@media(max-width:640px){.goods-picker{width:100%}}
.item-summary>img{width:110px;height:128px;object-fit:contain}
.asking-price>span,.ready-amount>span{font-size:20px;display:block}
.asking-price>strong,.ready-amount>strong{font-size:clamp(34px,3.5vw,52px);font-weight:950;line-height:1.2;display:block;white-space:nowrap}
.ready-amount{padding-left:20px;border-left:1px solid var(--line)}
#amount-feedback{font-size:clamp(21px,2vw,29px);font-weight:900;line-height:1.3;color:var(--blue);margin:0}
#amount-feedback.matched{color:#087b64}
#instruction{font-size:18px;line-height:1.5;margin:14px 0}
.payment-tray{border:1.5px solid var(--line);border-radius:16px;padding:14px;min-height:160px;background:#fcfeff}
.selected-money{display:flex;flex-wrap:wrap;align-items:start;gap:12px;min-height:98px}
.money-group{flex:1 1 calc(var(--bill-width) + 16px);min-width:0}
.money-group h3{font-size:18px;margin:0 0 8px}
.money-pictures{display:flex;align-items:start;gap:10px;flex-wrap:wrap}
.money-piece{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:calc(var(--bill-width) + 16px);min-height:104px;padding:5px 6px;border:1.5px solid transparent;border-radius:10px;background:transparent;font-size:18px;font-weight:850}
.money-piece>img{width:var(--bill-width);height:auto;object-fit:contain}
.money-piece.coin{width:80px}
.money-piece.coin>img{width:62px;height:64px}
button.money-piece{border-color:var(--line);background:white}
button.money-piece:hover{border-color:var(--blue);background:#eaf5ff;filter:none}
.money-piece.ghost{border:1.5px dashed #a7c9ed;background:#f4faff;opacity:.55}
.money-piece.ghost>img{opacity:.65}
.tray-empty{margin:24px 0;color:#496183;font-size:18px;flex:1;text-align:center}
.small-label{font-size:14px;color:#496183;line-height:1.4}
.wallet-area{margin:18px 0}
.wallet-money{display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(var(--bill-width) + 16px),1fr));gap:10px}
.wallet-source{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:#f3faff;min-height:132px;padding:10px 6px;color:var(--navy)}
.wallet-source>img{width:var(--bill-width);height:auto;object-fit:contain}
.wallet-source.coin>img{width:65px;height:66px}
.wallet-source>strong{font-size:21px;font-weight:900}
.wallet-source>span{font-size:15px;color:#496183}
.wallet-source:hover{border-color:var(--blue);background:#eaf5ff;filter:none}
.payment-page button:disabled{opacity:.5;cursor:default}
.payment-page button:disabled:hover{filter:none;background:inherit}
.payment-page .pay-action{width:100%;display:block;background:var(--blue);border-color:var(--blue);color:white;min-height:52px;font-size:24px;font-weight:900;padding:10px;margin-top:18px}
.payment-page .pay-action:disabled{background:#7daff6;border-color:#7daff6;opacity:1}
.previous-payment{border:1px solid #8ec7bb;background:#eefaf6;border-radius:14px;padding:12px 14px;margin:12px 0}
.previous-payment h2{font-size:19px}
.previous-payment .money-piece{min-height:68px;font-size:16px}
.previous-payment .money-piece.coin{width:58px}
.previous-payment .money-piece.coin>img{width:40px;height:40px}
#previous-note{font-size:14px;margin:6px 0 0;color:#087b64}
.demonstration{border:1.5px solid #a97715;border-radius:14px;padding:12px 14px;margin-top:16px;background:#fff9e9}
.demonstration h2{font-size:18px}
.demonstration p{font-size:17px;margin:8px 0 0}
.demonstration .money-piece{min-height:82px}
.money-recommendation{display:flex;align-items:center;gap:10px;flex:1 1 100%;min-width:0}
.money-operation{font-size:36px;font-weight:900;color:var(--navy);flex-shrink:0}
.money-recommendation>.money-pictures{flex:1;min-width:0}
.round-note{padding:12px;background:#edf9f5;border-radius:12px;font-size:18px;color:#087b64;line-height:1.5;margin:14px 0 0}
.payment-layout .lesson-footer{margin-top:18px}
.payment-layout .action-rail{padding:24px 18px}
.payment-layout .action-rail button{font-size:23px;padding:24px 0;gap:8px}
.payment-layout .action-rail button>span{width:82px;height:82px;color:var(--blue)}
.payment-layout .action-rail svg{width:40px;height:40px}
.payment-layout .action-rail small{font-size:14px;font-weight:600;line-height:1.4}
.payment-setup{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:12px 18px;border:1.5px solid var(--line);border-radius:16px;background:white;margin:0 0 16px;padding:16px 20px}
.payment-setup h2{grid-column:1/-1;margin:0;font-size:23px;font-weight:900}
.payment-page .payment-setup label{margin:0;font-size:17px}
.payment-page .payment-setup .payment-set-row{display:flex;flex-direction:column;align-items:stretch;gap:6px}
.payment-page .payment-set-row select{flex:1;min-width:0;max-width:none;margin:0}
.payment-page .payment-setup .payment-profile-row{display:flex;flex-direction:column;align-items:stretch;gap:6px}
.payment-page .payment-profile-row select{width:100%;max-width:none;min-height:48px;margin:0}
.payment-setup select{width:100%;min-height:48px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#f7fbff;color:var(--navy);font:inherit}
.payment-setup p{grid-column:1/-1;font-size:14px;margin:0;color:#496183;line-height:1.4}
@media(max-width:640px){.payment-setup{grid-template-columns:minmax(0,1fr);padding:14px;gap:12px}.payment-setup h2{font-size:21px}}
@media(max-width:1199px){.payment-page .lesson-heading{flex-wrap:wrap}.item-summary{grid-template-columns:80px 1fr 1fr;gap:14px}.item-summary>img{width:80px;height:100px}.item-summary #amount-feedback{grid-column:2/4}.asking-price>strong,.ready-amount>strong{font-size:36px}.payment-layout .guide-portrait{height:230px}.payment-layout .guide-bubble{font-size:19px;padding:14px 10px}.payment-panel{padding:16px}.payment-panel h2{font-size:21px}.payment-layout .action-rail button{font-size:20px}.payment-layout .action-rail button>span{width:64px;height:64px}}
@media(max-width:900px){.payment-layout .guide-portrait{height:205px}.payment-layout .action-rail{gap:4px;padding:12px 8px}.payment-layout .action-rail button{padding:6px;flex-direction:column;font-size:16px}.payment-layout .action-rail button>span{width:44px;height:44px}.payment-layout .action-rail svg{width:25px;height:25px}.payment-layout .action-rail small{font-size:11px}.payment-layout .topic-picker{font-size:15px}.selected-money{gap:10px}.money-pictures{gap:7px}}
@media(max-width:640px){html:has(>body.payment-page){scroll-padding-bottom:125px}.payment-layout{padding-bottom:125px}.payment-layout .guide{flex-wrap:nowrap}.payment-layout .guide-bubble{flex:1;width:auto;margin:0;min-height:0;font-size:17px;padding:10px}.payment-layout .guide-portrait{height:88px;width:65px}.payment-layout .topic-picker{display:none}.payment-page .lesson-heading>div{width:100%}.payment-page .mode-tabs{width:100%;max-width:none;min-width:0}.payment-page #intro{font-size:18px}.payment-panel{padding:12px;border-radius:16px}.item-summary{grid-template-columns:65px minmax(0,1fr) minmax(0,1fr);gap:10px}.item-summary>img{width:65px;height:95px}.asking-price h2{font-size:18px}.asking-price>span,.ready-amount>span{font-size:16px}.asking-price>strong,.ready-amount>strong{font-size:30px}.ready-amount{padding-left:10px}.item-summary #amount-feedback{font-size:21px}#instruction{font-size:16px}.payment-tray{padding:10px;min-height:145px}.payment-panel h2{font-size:20px}.money-group{flex:1 1 100%}.payment-page{--bill-width:clamp(98px,calc((100vw - 116px)/2),160px)}.money-piece{min-height:96px;font-size:17px}.money-piece.coin{width:70px}.money-piece.coin>img{width:54px;height:58px}.wallet-money{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.wallet-source{min-height:128px}.wallet-source.coin>img{height:62px}.wallet-source>strong{font-size:19px}.wallet-source>span{font-size:14px}.payment-layout .action-rail button{flex:1;padding:4px;font-size:14px}.payment-layout .action-rail button>span{width:40px;height:40px}.payment-layout .action-rail small{font-size:10px}.payment-page .pay-action{font-size:22px}.previous-payment{padding:10px}}
@media(prefers-reduced-motion:no-preference){.payment-page:not(.reduce-motion) .money-piece.new-piece{animation:money-arrive .25s ease-out}}
@keyframes money-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){.payment-page .site-header{flex-wrap:nowrap;gap:8px;padding:4px 12px}.payment-page .brand>img{width:78px}.item-summary{position:sticky;top:0;z-index:2;background:white;padding-top:8px;grid-template-columns:50px minmax(0,1fr) minmax(0,1fr);gap:8px}.item-summary>img{width:50px}.asking-price>strong,.ready-amount>strong{font-size:clamp(20px,6vw,24px);white-space:nowrap}.payment-page .wallet-area{scroll-margin-top:165px}.money-piece,.wallet-source{scroll-margin-top:300px}}
@media(max-width:640px) and (max-height:600px){.item-summary{position:static}.money-piece,.wallet-source{scroll-margin-top:12px}}
@media(max-width:640px){.payment-layout .guide{flex-wrap:wrap}.payment-layout .activity-link{display:flex;flex:0 0 100%;min-height:52px;font-size:16px}}
