*{box-sizing:border-box}body{margin:0;background:#f3f4f6;color:#111827;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}.app{max-width:760px;margin:auto;min-height:100vh;background:#f8fafc;padding-bottom:40px}header{padding:28px 20px 18px;display:flex;justify-content:space-between;align-items:center;background:#111827;color:white}.eyebrow{font-size:11px;letter-spacing:1.5px;opacity:.65}h1{font-size:28px;margin:3px 0 0}h2{font-size:20px;margin:22px 0 12px}.icon-btn{background:#263244;color:#fff;width:42px;height:42px;border-radius:13px;font-size:21px}.tabs{display:flex;background:#111827;padding:0 10px 12px;gap:6px}.tab{flex:1;background:transparent;color:#9ca3af;padding:10px 4px;border-radius:10px;font-size:13px}.tab.active{background:#fff;color:#111827}.view{display:none;padding:20px}.view.active{display:block}.hero-card{background:#fff;border-radius:20px;padding:22px;box-shadow:0 4px 18px #0000000b;display:flex;justify-content:space-between;align-items:end}.hero-card span,.stat span,.money-summary span{display:block;color:#6b7280;font-size:13px}.hero-card strong{display:block;font-size:42px;margin-top:4px}.primary{background:#111827;color:#fff;padding:12px 16px;border-radius:12px;font-weight:700}.primary.small{padding:9px 13px}.primary.full,.secondary.full{width:100%;margin-top:8px}.secondary{background:#fff;border:1px solid #e5e7eb;color:#111827;padding:12px 15px;border-radius:12px;font-weight:600}.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 25px}.stat{background:#fff;border-radius:16px;padding:17px;border:1px solid #eef0f3}.stat b{font-size:25px;display:block;margin-top:5px}.location-grid{display:grid;gap:10px}.loc-card{background:#fff;border-radius:16px;padding:16px;display:flex;justify-content:space-between;align-items:center;border:1px solid #eef0f3}.loc-card b{font-size:16px}.loc-card span{color:#6b7280;font-size:13px}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.section-head{display:flex;justify-content:space-between;align-items:center}.section-head h2{margin-bottom:2px}.section-head p{margin:0;color:#6b7280;font-size:13px}.search{margin:16px 0}.search input,input,select,textarea{width:100%;border:1px solid #dfe3e8;background:#fff;border-radius:11px;padding:12px;outline:none}label{display:block;font-size:13px;font-weight:600;color:#374151;margin:14px 0}label input,label select,label textarea{margin-top:7px;font-weight:400}.list{display:grid;gap:9px}.roku-card{background:#fff;border:1px solid #e8eaee;border-radius:15px;padding:14px}.roku-top{display:flex;justify-content:space-between;gap:10px}.serial-text{font-weight:800;letter-spacing:.3px;word-break:break-all}.muted{font-size:12px;color:#6b7280;margin-top:5px}.badge{font-size:11px;padding:5px 8px;border-radius:99px;background:#eef2ff;white-space:nowrap}.card-actions{display:flex;gap:7px;margin-top:10px}.card-actions button{font-size:12px;padding:8px 10px;border-radius:9px;background:#f3f4f6}.location-list{display:grid;gap:10px;margin-top:16px}.location-row{background:#fff;border-radius:16px;padding:16px;display:flex;justify-content:space-between;align-items:center;border:1px solid #e8eaee}.location-row button{background:#f3f4f6;padding:9px 12px;border-radius:10px}.money-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:15px 0}.money-summary>div{background:#fff;border-radius:14px;padding:13px;border:1px solid #eee}.money-summary b{display:block;margin-top:5px;font-size:18px}.cut{background:#fff;padding:14px;border-radius:15px;border:1px solid #e8eaee}.cut strong{display:block}.cut small{color:#6b7280}.cut .diff{font-weight:800;margin-top:6px}.modal{position:fixed;inset:0;background:#0008;display:none;align-items:end;justify-content:center;z-index:10;padding:10px}.modal.open{display:flex}.modal-box{background:#f8fafc;width:min(100%,600px);max-height:92vh;overflow:auto;border-radius:22px 22px 12px 12px;padding:20px}.modal-box.wide{max-width:700px}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0}.close{background:#e5e7eb;width:34px;height:34px;border-radius:50%;font-size:22px}.input-row{display:flex;gap:8px;margin-top:7px}.input-row input{margin:0}.scan-btn{width:48px;border-radius:11px;background:#111827;color:#fff}.hint{font-size:13px;color:#6b7280}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0}.detail-box{background:#fff;border-radius:13px;padding:13px}.detail-box span{display:block;font-size:11px;color:#6b7280}.detail-box b{display:block;margin-top:4px;font-size:20px}.history{margin-top:15px}.history-item{padding:10px 0;border-bottom:1px solid #e5e7eb;font-size:13px}.danger{color:#b91c1c}.toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%) translateY(20px);background:#111827;color:#fff;padding:11px 16px;border-radius:12px;opacity:0;pointer-events:none;transition:.2s;z-index:30;font-size:13px}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}#reader{width:100%;margin:10px 0 16px}#reader video{border-radius:15px}.empty{background:#fff;border:1px dashed #d1d5db;padding:25px;border-radius:16px;text-align:center;color:#6b7280;font-size:14px}@media(min-width:700px){.modal{align-items:center}.modal-box{border-radius:22px}.stats{grid-template-columns:repeat(4,1fr)}}.row-actions{display:flex;gap:6px}.row-actions button{background:#f3f4f6;padding:8px 10px;border-radius:9px;font-size:12px}.detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.detail-actions .primary{grid-column:1/-1}.visit-info{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.visit-info>div,.visit-result{background:#fff;border:1px solid #e8eaee;border-radius:12px;padding:12px}.visit-info span{display:block;color:#6b7280;font-size:11px}.visit-info b{display:block;margin-top:4px;font-size:18px}.visit-result{display:grid;gap:7px;margin-top:10px;font-size:13px}.scan-result{text-align:center;color:#6b7280;font-size:13px;padding:10px}#reader{width:100%;overflow:hidden;border-radius:14px;background:#000;min-height:230px}#reader video{border-radius:14px!important}.empty{background:#fff;border:1px dashed #d1d5db;padding:20px;border-radius:14px;text-align:center;color:#6b7280}h3{font-size:15px}
