.repayment-reserve{margin:18px 0;padding:16px;border:1px solid #66867e;border-radius:12px;background:#1d2c2b}
.repayment-reserve>span{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:1rem;color:#e4eee9}
.repayment-reserve strong{font-size:1.4rem;font-variant-numeric:tabular-nums}
.repayment-reserve p{font-size:.9375rem;line-height:1.8;margin:10px 0 4px;color:#d6e4df}
.repayment-reserve small{font-size:.875rem;line-height:1.8;color:#b8cec6}
.repayment-form-card .input-label small{display:block;font-size:.875rem;margin-top:5px;font-weight:400}
.repayment-form-card .amount-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.repayment-form-card .amount-shortcuts button{font-size:.875rem;min-height:44px;white-space:normal;line-height:1.55;padding:10px 8px}
.repayment-form-card .amount-shortcuts .repayment-recommended{border-color:#88b1a4;color:#d0eddf}
.repayment-preview{margin:20px 0 8px;display:grid;gap:12px}
.repayment-preview>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;font-size:.9375rem}
.repayment-preview dd{margin:0;font-weight:700;font-size:1.1rem;font-variant-numeric:tabular-nums}
.repayment-feedback{font-size:.9375rem;line-height:1.8;margin:10px 0 18px}
.payday-banner{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin:12px 0 20px;padding:15px 18px;border:1px solid #b79560;border-radius:12px;background:#332a20;color:#f4e3c5}
.payday-banner strong{font-size:1rem}.payday-banner span{font-size:.9375rem;line-height:1.7}
.payday-scene{width:100%;height:auto;margin:0 0 16px;display:block;border-radius:12px;object-fit:contain}
.payday-ledger{display:grid;gap:12px;padding:16px 0;margin:12px 0;border-block:1px solid #574a51}
.payday-ledger>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;font-size:1rem;line-height:1.6}
.payday-ledger dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
.payday-ledger .payday-borrowed{color:#f0c49b}
.payday-copy{font-size:1rem;line-height:1.9}.payday-note{font-size:.875rem;line-height:1.8;color:#c6b8c2}
.images-pending{position:relative;min-height:260px;overflow:hidden!important}
.images-pending>:not(.image-gate-status){pointer-events:none!important}
.images-omitted img{visibility:hidden}
.image-gate-status{position:absolute;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;background:#1b1722;color:#f3e9ee;min-height:240px}
.image-gate-status p{font-size:1rem;line-height:1.8;margin:0}.image-gate-status small{font-size:.875rem;line-height:1.8;color:#cabfc9}.image-gate-status .button{max-width:100%;white-space:normal;min-height:44px}
#narrative-stage.images-pending{position:fixed;inset:0}
.image-gate-spinner{width:30px;height:30px;border:2px solid #685764;border-top-color:#e9c6d3;border-radius:50%;animation:image-wait 1s linear infinite}
@keyframes image-wait{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.image-gate-spinner{animation:none}}
@media(max-width:360px){.repayment-reserve{padding:12px}.repayment-preview>div{font-size:.875rem}.repayment-form-card .amount-shortcuts{grid-template-columns:1fr}.payday-ledger>div{font-size:.9375rem}}
