:root{color-scheme:light dark;--bg:light-dark(#f4f7fc,#151b27);--panel:light-dark(#fff,#202939);--text:light-dark(#15233c,#eef3ff);--muted:light-dark(#63738e,#acb9ce);--border:light-dark(#e5ebf4,#354157);--blue:light-dark(#1266ed,#80b4ff);--soft:light-dark(#eaf2ff,#283c5b);--danger:light-dark(#9e2525,#ffb2b2)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;min-height:44px;color:var(--text)}button:disabled{opacity:.65;cursor:wait}.phone{max-width:460px;min-height:100dvh;margin:auto;background:var(--bg)}.test-banner{padding:5px 16px;font-size:11px;text-align:center;background:var(--soft);color:var(--blue)}header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;background:var(--panel);gap:12px}.brand{display:block;font-size:21px;letter-spacing:1px}.header-actions{display:flex;gap:8px;flex-shrink:0}.header-actions button{background:none;border:0;color:var(--muted);padding:5px;font-size:12px}main{padding:22px 20px 12px;min-height:540px}h1{font-size:23px;margin:0 0 5px}h2{font-size:15px;margin:0 0 10px}p{margin:0}.muted{color:var(--muted)}.small{font-size:12px}.hero{margin:20px 0 14px;padding:22px;border-radius:20px;background:linear-gradient(120deg,#0957cf,#3388ff);color:#fff}.hero .muted{color:#e0edff}.big{font-size:36px;line-height:1.3;font-weight:600;letter-spacing:-1px;margin:6px 0;font-variant-numeric:tabular-nums}.card{background:var(--panel);border-radius:16px;padding:17px;margin:13px 0;overflow-wrap:anywhere}.split,.line{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.line{margin:9px 0}.line:last-child{margin-bottom:0}.money{font-variant-numeric:tabular-nums;white-space:nowrap}.badge{background:var(--soft);color:var(--blue);padding:3px 8px;font-size:11px;border-radius:6px;white-space:nowrap}.action{width:100%;padding:9px 13px;background:var(--soft);color:var(--blue);border:0;border-radius:10px;margin-top:12px}.primary{background:var(--blue);color:light-dark(#fff,#10213c)}.link{border:0;background:none;color:var(--blue);font-size:12px;text-align:left;padding:0}.note{font-size:12px;color:var(--muted);margin-top:13px}details{border-top:1px solid var(--border);margin-top:12px;padding-top:9px}summary{color:var(--blue);font-size:12px;min-height:36px;cursor:pointer}.tabs{display:flex;gap:7px;margin:16px 0;flex-wrap:wrap}.tabs button{background:var(--panel);color:var(--muted);border:0;border-radius:9px;padding:7px 12px;font-size:12px}.tabs [aria-pressed="true"]{background:var(--soft);color:var(--blue)}label{display:block;margin:13px 0 5px;font-size:13px}input,textarea,select{width:100%;padding:11px;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:9px;font-size:16px}textarea{min-height:100px;resize:vertical}nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:9px 8px 16px;background:var(--panel);border-top:1px solid var(--border)}nav button{border:0;background:none;color:var(--muted);font-size:13px}nav [aria-current="page"]{color:var(--blue);font-weight:600}#error{margin:14px 20px 0;padding:10px 12px;background:var(--panel);border:1px solid var(--danger);color:var(--danger);border-radius:9px}hr{border:0;border-top:1px solid var(--border);margin:14px 0}dialog{width:calc(100% - 28px);max-width:420px;border:1px solid var(--border);border-radius:22px;background:var(--panel);color:var(--text);padding:22px}dialog::backdrop{background:#0008}.receipt-actions{display:flex;gap:10px;margin-top:20px}.receipt-actions button{flex:1;border:1px solid var(--border);background:var(--soft);border-radius:9px}.receipt-top{padding:18px;border-radius:14px;background:var(--soft);margin-bottom:16px}.receipt-message{text-align:center;margin-top:20px;font-size:12px;color:var(--muted)}[hidden]{display:none!important}.print-note{font-size:11px;color:var(--muted)}.filter-search{margin-bottom:15px}.empty{padding:24px 0;color:var(--muted);text-align:center}
@media(min-width:600px){body{padding:24px}.phone{border:1px solid var(--border);border-radius:24px;overflow:hidden;min-height:0}}@media(max-width:340px){main{padding:18px 15px}header{padding:16px 15px}.big{font-size:32px}}
@media print{body{padding:0;background:#fff}.phone,.receipt-actions{display:none!important}dialog[open]{position:static;max-width:none;width:100%;border:0;box-shadow:none;background:#fff;color:#111}dialog::backdrop{display:none}}
#error.success{border-color:var(--blue);color:var(--blue)}
