:root{color-scheme:light;--ink:#142a43;--muted:#65758a;--teal:#087f83;--line:#dbe3eb;--paper:#fff;--bg:#f3f6f9}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Malgun Gothic",sans-serif;font-size:16px;line-height:1.55}header{background:var(--ink);color:white;padding:18px max(20px,calc((100% - 940px)/2));display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{font-size:27px;font-weight:850;letter-spacing:-1px}.brand span{font-size:11px;font-weight:600;letter-spacing:1.8px;margin-left:9px}.readonly{font-size:12px;background:#ffffff18;border:1px solid #ffffff35;border-radius:20px;padding:5px 11px}main{max-width:940px;margin:auto;padding:25px 18px 45px}h1{font-size:25px;letter-spacing:-.7px;margin:0 0 14px}h2{font-size:20px;margin:0 0 12px}h3{font-size:16px;margin:18px 0 8px}p{margin:8px 0 14px}button,input,select,textarea{font:inherit}button{background:white;border:1px solid var(--line);border-radius:10px;padding:11px 17px;color:var(--ink);cursor:pointer;min-height:44px;font-weight:650}button:hover{border-color:#087f83}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--teal);color:#fff;border-color:var(--teal)}button.small{padding:8px 12px;font-size:14px}button.danger{color:#b12835}input,select,textarea{min-width:0;max-width:100%;display:block;width:100%;min-height:46px;padding:10px 11px;border:1px solid #cbd6e0;border-radius:8px;color:var(--ink);background:#fff}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #8ad8d9;outline-offset:2px}label{min-width:0;display:block;font-size:13px;font-weight:650;color:#506078;margin-bottom:10px}label input,label select,label textarea{margin-top:5px;font-size:16px;font-weight:400}textarea{resize:vertical;min-height:95px;word-break:break-all}a{color:#086d8a;overflow-wrap:anywhere}.panel{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:18px;margin-bottom:18px}.intro{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.intro h1{margin:0}.eyebrow{font-size:12px;color:var(--teal);font-weight:750;margin:0 0 3px}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:20px 0 12px;padding:5px;background:#e5ebf1;border-radius:13px}.tabs button{padding:11px 3px;font-size:14px;white-space:nowrap;border:0;background:transparent}.tabs .active{background:#fff;color:var(--teal);box-shadow:0 2px 6px #12294110}.filtergrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions>button{flex:1}.muted{color:var(--muted);font-size:13px}.notice{background:#fff6df;border:1px solid #ecd7a3;border-radius:10px;padding:12px;font-size:14px}.error{color:#a32732}.notice.error{background:#fff0f1;border-color:#edbfc4}.install{margin-top:18px;font-size:13px;color:var(--muted)}.install summary{cursor:pointer;color:#276a78;font-weight:650}.install p{margin-top:10px}.resultbar{display:flex;justify-content:space-between;align-items:center;margin:21px 1px 10px;gap:10px}.resultbar span{font-size:11px;color:var(--muted);text-align:right}.cards{display:grid;gap:11px}.card{width:100%;text-align:left;border-radius:13px;padding:16px;background:#fff}.cardtop{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:12px;font-weight:500;color:var(--muted)}.cardtitle{display:block;font-size:17px;font-weight:750;margin-bottom:6px;overflow-wrap:anywhere}.cardinfo{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:450;color:var(--muted)}.cardqty{color:var(--teal);font-size:19px;font-weight:800;white-space:nowrap}.badge{display:inline-block;background:#e5f3f2;color:#116f70;border-radius:5px;padding:2px 7px;font-size:11px}.empty{text-align:center;padding:45px 15px;border:1px dashed #c4d0dc;border-radius:13px;color:var(--muted)}.pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin:24px 0}.pagination span{font-size:13px;color:var(--muted)}footer{text-align:center;padding:12px 16px 25px;color:var(--muted);font-size:11px}dialog{width:min(620px,calc(100% - 24px));max-height:88dvh;border:0;border-radius:18px;padding:22px;color:var(--ink);overflow-y:auto;box-shadow:0 20px 70px #142a4340}dialog::backdrop{background:#15283f70}.dialoghead{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:-22px;background:#fff;padding:5px 0 12px}.dialoghead h2{margin:0}.detailgrid{margin:0}.detailrow{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;border-top:1px solid #e8edf2;padding:11px 0}.detailrow dt{color:var(--muted);font-size:13px}.detailrow dd{margin:0;font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere}.photo{display:block;max-width:100%;height:auto;border-radius:10px;margin-top:12px}.itemrow{padding:12px;background:#f0f6f7;border-radius:9px;margin:7px 0;overflow-wrap:anywhere}.adminmain{max-width:850px}.step{display:inline-grid;place-items:center;width:27px;height:27px;margin-right:8px;border-radius:50%;background:#e5f3f2;color:var(--teal);font-size:15px}.status{padding:14px 18px;background:#e5f3f2;border:1px solid #b9dbd8;border-radius:13px;margin:20px 0;white-space:pre-wrap}.status.wait{background:#fff6df;border-color:#ecd7a3}.adminsplit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.qrcode{max-width:250px;margin:16px auto}.qrcode svg{width:100%;height:auto;display:block;background:#fff}.device{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line);padding:12px 0}.device small{display:block;color:var(--muted)}.steps{padding-left:22px}.steps li{padding:4px 0}[hidden]{display:none!important}@media(min-width:720px){.filters .filtergrid{grid-template-columns:repeat(4,minmax(0,1fr))}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.filters .actions{max-width:270px;margin-left:auto}.intro{margin-top:8px}}@media(max-width:480px){.adminsplit{grid-template-columns:1fr}main{padding:20px 14px 32px}header{padding:14px 18px}h1{font-size:22px}.panel{padding:15px}.detailrow{grid-template-columns:83px minmax(0,1fr)}dialog{padding:17px}.dialoghead{top:-17px}.brand span{font-size:10px;letter-spacing:1px}.intro .small{padding:8px;font-size:12px}}

.cardqty.negative{color:#b12835}
