#merchant-app{max-width:560px;min-height:100dvh;margin:auto;container-type:inline-size;background:#f0eaff url('../assets/templates/galaxy-background-v2.webp') center top/100% auto;color:#191052;padding-bottom:20px}.merchant-hero{position:relative;min-height:48cqw;background:linear-gradient(90deg,#25126635,transparent),var(--merchant-hero) center/cover;color:#fff;padding:5cqw 5cqw 8cqw;overflow:hidden}.merchant-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;position:relative;z-index:1}.merchant-top button{color:white;border:1px solid #ffffff55;background:#2a196750;border-radius:99px;padding:5px 9px;font-size:10px}.merchant-hero h1{margin:7cqw 0 1.5cqw;font-size:7.6cqw;line-height:1.15;font-style:italic;letter-spacing:-1px;text-shadow:0 2px 6px #502a83;max-width:72%}.merchant-hero p{font-size:2.7cqw;margin:0;max-width:62%;line-height:1.7}.merchant-body{position:relative;padding:0 13px;margin-top:-12px}.merchant-store{padding:13px 14px;display:flex;align-items:center;gap:9px}.merchant-store .tile-icon{width:38px;height:38px;margin:0;flex-shrink:0}.merchant-store div:nth-child(2){min-width:0;flex:1}.merchant-store label{font-size:9px;color:#8c7aab;display:block}.merchant-store select{border:0;background:transparent;color:#211451;font-weight:800;width:100%;padding:5px 0;font-size:14px}.merchant-store .staff-badge{font-size:10px;border-radius:7px;background:#ecddff;color:#7a3bc4;padding:5px 8px;white-space:nowrap}.merchant-tabs{display:flex;gap:5px;padding:4px;background:#ded1fbba;border:1px solid #fff;border-radius:15px;margin:0 0 13px}.merchant-tabs button{flex:1;min-width:0;border:0;background:transparent;border-radius:11px;padding:11px 0;color:#665195;font-size:12px}.merchant-tabs .selected{background:linear-gradient(120deg,#7660ff,#b24ded);color:white;box-shadow:0 3px 8px #7655b43b}.merchant-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:13px}.metric{border:1px solid white;border-radius:15px;background:#f9f6fff0;padding:13px 3px;text-align:center;font-size:10px;color:#6e5e90;box-shadow:0 3px 12px #7754bf20}.metric b{display:block;font-size:25px;color:#6541d4;margin-bottom:4px}.metric.green b{color:#08a892}.metric.pink b{color:#d74d9d}.metric.orange b{color:#d29122}.merchant-section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.merchant-section-title h2{margin:0;font-size:16px}.merchant-section-title h2:before{display:none}.merchant-section-title small{font-size:9px;color:#9382ae}.merchant-alert{border:1px solid #ffc5dc;border-radius:13px;background:linear-gradient(110deg,#fff0f4,#fff8ee);padding:10px 12px;font-size:11px;line-height:1.7;display:flex;gap:9px;align-items:center;margin-bottom:12px}.merchant-alert strong{display:block;color:#b65574}.merchant-alert button{margin-left:auto;white-space:nowrap}.room-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.operation-room{position:relative;border:1px solid white;border-radius:17px;background:#f9f7ff;overflow:hidden;box-shadow:0 2px 9px #9265bd17}.operation-room>button{border:0;background:transparent;padding:0;width:100%;text-align:left;display:block}.operation-room .room-photo{height:28cqw;max-height:160px;position:relative}.room-photo img{width:100%;height:100%;object-fit:cover}.room-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#21124dcb)}.room-photo>span{position:absolute;top:8px;right:7px;z-index:1}.room-photo b{position:absolute;bottom:8px;left:10px;color:white;font-size:12px;z-index:1}.room-copy{padding:10px;font-size:10px;color:#837299;line-height:1.7}.room-copy strong{font-size:13px;color:#28155a;display:block}.room-copy .room-action{display:block;color:#7944d2;font-size:11px;border-top:1px solid #ece3f6;margin-top:8px;padding-top:7px;font-weight:650}.state-pill{font-size:9px;padding:4px 7px;border-radius:99px;background:#e7fff6;color:#008a74;white-space:nowrap}.state-pill.using{background:#fff0fb;color:#c42d94}.state-pill.ready{background:#e5f1ff;color:#3463d5}.state-pill.cleaning{background:#fff3d5;color:#a96f00}.state-pill.offline,.state-pill.failed,.state-pill.timeout{background:#ffebf2;color:#b43563}.state-pill.pending{background:#fff3db;color:#99671a}.state-pill.success{background:#d9fff1;color:#087b68}.merchant-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.merchant-quick button{border:1px solid #e1d4f7;border-radius:14px;background:#faf7ff;padding:13px 3px;font-size:11px;color:#493679}.merchant-quick .tile-icon{width:36px;height:36px;border-radius:11px}.merchant-order{padding:12px 0;border-bottom:1px solid #e9e0f3}.merchant-order:last-child{border:0;padding-bottom:0}.merchant-order h3{font-size:14px;margin:0}.merchant-order p{font-size:11px;color:#8b78a3;margin:4px 0}.merchant-order .soft{padding:7px 11px;font-size:11px}.device-line{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid #e9e0f3;font-size:12px;gap:8px}.device-line:last-child{border:0}.device-line small{display:block;color:#9786aa;font-size:9px;margin-top:4px}.operation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.operation-grid .soft{padding:12px 3px;flex-direction:column;font-size:11px;border-radius:14px;gap:7px}.merchant-timeline{border-left:1px solid #dcccf1;padding-left:16px;margin:12px 0 0 6px}.merchant-timeline>div{position:relative;padding:0 0 17px;font-size:12px;line-height:1.6}.merchant-timeline>div:before{content:'';position:absolute;left:-21px;top:4px;width:9px;height:9px;border-radius:50%;background:#9a58e9;border:2px solid #eee2ff}.merchant-timeline small{display:block;color:#9582aa;font-size:10px}.merchant-filter{display:flex;gap:6px;overflow:auto;margin-bottom:12px;scrollbar-width:none}.merchant-filter button{border:1px solid #e9dcff;border-radius:99px;padding:7px 10px;background:#fff;color:#7d68a0;white-space:nowrap;font-size:10px}.merchant-filter button.selected{background:#8650dc;color:white}.merchant-log{padding:12px 0;border-bottom:1px solid #e9e0f3}.merchant-log p{font-size:11px;color:#8e78a4;margin:5px 0}.merchant-log small{font-size:9px;color:#a18cae}.receipt-symbol{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#e4fff3;color:#0b9a77;font-size:30px;margin:15px auto}.receipt-symbol.failed{background:#fff0f4;color:#c44c7d}.access-denied{padding:70px 24px;text-align:center;color:#fff;min-height:100vh;background:linear-gradient(160deg,#221151,#6842ac)}.access-denied img{width:140px}.access-denied p{font-size:13px;line-height:1.8;color:#ddd0f3}.access-denied .neon{margin-top:25px}.merchant-caption{font-size:9px;line-height:1.7;color:#eedfff;text-align:center;margin:16px}.merchant-footer{display:block;width:100%;border:1px solid #ffffff77;border-radius:13px;background:#f5efffee;color:#7a4eb0;padding:12px;font-size:12px}.permission-note{font-size:11px;color:#9178aa;line-height:1.8;background:#f3edfb;border-radius:12px;padding:10px}.pending-payment{border:1px solid #d6b3ff;background:#f6edff;padding:12px;border-radius:14px;margin-top:12px}.pending-payment h3{font-size:13px;margin:0}.merchant-body .panel h2{font-size:15px}.merchant-body .panel h2:before{font-size:21px}.merchant-search{margin-bottom:10px}.merchant-modal-actions{display:flex;gap:9px;margin-top:16px}.merchant-modal-actions button{flex:1}#merchant-modal .form-label{margin-top:12px}#merchant-modal{max-height:85dvh;overflow:auto}#merchant-modal .neon{width:100%;margin-top:13px}.merchant-order-search{font-size:12px}.embedded #merchant-app{max-width:none}
.finance-dates{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;align-items:end}.finance-dates label{min-width:0;font-size:10px;color:#8c74a2}.finance-dates input{display:block;margin-top:5px;padding:9px 5px;font-size:11px;max-width:100%}.finance-dates button{padding:10px 9px;font-size:11px}.finance-total{padding:20px 18px;border:1.5px solid white;border-radius:22px;margin-bottom:13px;color:white;background:radial-gradient(ellipse at right top,#eb8ed5aa,transparent 60%),linear-gradient(115deg,#3e9df5,#7851ed 55%,#bd5de0);box-shadow:0 0 14px #bd8ff780,inset 0 1px 12px #ffffff44}.finance-total>.row{font-size:13px}.finance-total small{font-size:10px;color:#eee7ff}.finance-total>strong{display:block;font-size:37px;letter-spacing:-1px;margin:13px 0 8px}.finance-total>p{font-size:10px;color:#eee4ff}.finance-total-bottom{border-top:1px solid #ffffff40;display:flex;justify-content:space-between;padding-top:12px;margin-top:16px;font-size:11px}.finance-total-bottom b{display:block;font-size:17px;margin-top:6px}.finance-channels>div{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #eadff8;font-size:12px}.finance-channels strong{margin-left:auto;white-space:nowrap;font-size:15px}.finance-channels small{display:block;font-size:9px;color:#9c86af;margin-top:5px}.finance-dot{height:9px;width:9px;border-radius:50%;background:#18be9b;flex-shrink:0}.finance-dot.balance{background:#8455ee}.finance-dot.voucher{background:#e06abe}.finance-chart{display:flex;gap:9px;overflow:auto;padding:9px 0 3px}.finance-day{flex:1;min-width:42px;text-align:center;color:#9c85ad;font-size:9px}.finance-day small{font-size:8px;white-space:nowrap;color:#75608f}.finance-bar-track{height:85px;display:flex;align-items:end;justify-content:center;padding:7px 0}.finance-bar-track i{display:block;width:22px;background:linear-gradient(#d891f5,#7b5af0);border-radius:6px 6px 2px 2px}.finance-recharge{display:grid;grid-template-columns:1fr 1fr;gap:10px}.finance-recharge>div{border-radius:14px;background:#f0e9ff;padding:14px 10px}.finance-recharge>div:last-child{background:#ffecf8}.finance-recharge span{font-size:11px;color:#876999;display:block}.finance-recharge strong{font-size:23px;color:#7444c4;display:block;margin-top:8px}.finance-record{display:flex;justify-content:space-between;gap:8px;padding:13px 0;border-bottom:1px solid #ece3f6;font-size:12px}.finance-record small{display:block;font-size:9px;color:#9c89b0;margin-top:5px}.finance-record>b{color:#7752c7;white-space:nowrap;font-size:14px}.finance-record>b.refund{color:#d76a9d}.merchant-quick{grid-template-columns:repeat(auto-fit,minmax(85px,1fr))}

/* 商家专属蓝紫星河主题；与顾客端素材独立。 */
#merchant-app{--merchant-blue:#5269ac;--merchant-lavender:#c7d2ef;background-color:var(--merchant-lavender);background-image:var(--merchant-background);background-position:center 44cqw;background-size:100% auto;background-repeat:no-repeat;color:#263761}
.merchant-hero{background:var(--merchant-hero) center/cover;min-height:46cqw}
.merchant-hero:after{content:'';position:absolute;left:0;right:0;bottom:0;height:22px;background:linear-gradient(transparent,var(--merchant-blue));pointer-events:none}
.merchant-hero h1{text-shadow:0 2px 8px #263c7880}.merchant-hero p{color:#f0f5ff;text-shadow:0 1px 4px #273e72}.merchant-top button{background:#30457555;border-color:#d1e3ff66}
.merchant-body .panel{background:linear-gradient(125deg,#fbfdfff7,#eef3fff5 55%,#f5f4fff5);border-color:#f7fbff;box-shadow:0 0 0 1px #b4c8eb80,0 4px 16px #344d7a16,inset 0 1px 12px #fff7}
.merchant-store .staff-badge{background:#e2eafa;color:#4f659f}.merchant-store select{color:#2a3c67}.merchant-tabs{background:#e3ebf7db;border-color:#f3f7ff}.merchant-tabs button{color:#657ca7}.merchant-tabs .selected{background:linear-gradient(115deg,#557ec8,#7771c5);box-shadow:0 3px 8px #425d9b26}
.merchant-body .tile-icon{background:linear-gradient(140deg,#7bb5e9,#627ecc,#9895db);box-shadow:inset 0 1px 6px #fff8,0 3px 8px #6177ad33}.merchant-body .soft{border-color:#bdcbe7;background:linear-gradient(#fff,#eef3ff);color:#546da6}.merchant-body .soft.danger{color:#b34272;border-color:#e5b5c8}.merchant-body .neon{background:linear-gradient(115deg,#62b7da,#647fd0 50%,#a29bdf);box-shadow:0 0 0 1px #afc5ef,0 4px 12px #6582b536,inset 0 0 8px #fff8}.merchant-body .panel h2:before{color:#78ace3;text-shadow:1px 1px #a397d6}
.metric{background:#f5f8fff5;box-shadow:0 3px 12px #42628c12;color:#7486a2}.metric b{color:#617cb9}.metric.green b{color:#209e97}.metric.pink b{color:#7f73bd}.metric.orange b{color:#bc9448}
.operation-room{background:#f8faff;box-shadow:0 2px 9px #637fab14}.room-copy strong{color:#2d4067}.room-copy .room-action{color:#5d78b2;border-color:#e0e8f5}.merchant-quick button{background:#f3f7ff;border-color:#d4dfef;color:#526c9b}.merchant-filter button{border-color:#d5dfef;color:#6d82a4}.merchant-filter button.selected{background:#6b7fbd;color:#fff}.merchant-footer{background:#eef3fff2;border-color:#fff;color:#6077a7}.merchant-caption{color:#52678e}
.finance-total{background:radial-gradient(ellipse at right top,#b8b7ec66,transparent 65%),linear-gradient(115deg,#527fc2,#6876bd 58%,#8c87ca);box-shadow:0 4px 18px #46629a26,inset 0 1px 12px #ffffff44}.finance-bar-track i{background:linear-gradient(#a2b3e1,#637dbf)}.finance-recharge>div{background:#e8effb}.finance-recharge>div:last-child{background:#eeedfa}.finance-recharge strong{color:#637bb6}.finance-record>b{color:#607ab4}.finance-record>b.refund{color:#c66a90}

/* 商家顶图同样铺至屏幕顶部，操作区域保留安全距离。 */
.embedded .merchant-hero{padding-top:calc(35px + 5cqw)}
