@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;600&display=swap');
@font-face{font-family:Lexend;src:url('/fonts/LexendDeca-Regular.ttf')}@font-face{font-family:Lexend;src:url('/fonts/LexendDeca-SemiBold.ttf');font-weight:600}@font-face{font-family:Lexend;src:url('/fonts/LexendDeca-Bold.ttf');font-weight:700 900}
:root{--ink:#0f172a;--muted:#64748b;--blue:#2563eb;--navy:#060b19;--line:#e2e8f0;--shadow:0 10px 30px -10px #0f172a14,0 4px 12px -2px #0f172a08}*{box-sizing:border-box}body{margin:0;background:#f4f6fb;color:var(--ink);font:12px 'Plus Jakarta Sans',Lexend,sans-serif}h1,h2,h3,.brand,.metric-value{font-family:Lexend,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:10px 14px;background:linear-gradient(110deg,#2563eb,#4f46e5);color:white;font-weight:700;font-size:11px;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 10px #2563eb18}button:hover,.btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #2563eb30}.secondary{background:white;border-color:var(--line);color:#475569;box-shadow:none}.danger{background:#e11d48}.icon{width:16px;height:16px;flex-shrink:0;vertical-align:middle}.icon-button{width:34px;height:34px;padding:8px;background:transparent;color:inherit;box-shadow:none}.shell{display:flex;height:100dvh;overflow:hidden}.sidebar{width:256px;flex-shrink:0;display:flex;flex-direction:column;background:linear-gradient(#090f22,#080e1f,#050814);color:#cbd5e1;border-right:1px solid #152243;box-shadow:10px 0 30px #0f172a10;z-index:50}.sidebar-brand{height:64px;display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #152243;background:#060b19e6}.brand-icon{position:relative;flex-shrink:0}.brand-icon img{width:40px;height:40px;border-radius:12px;box-shadow:0 0 0 2px #3b82f666,0 4px 12px #2563eb40;display:block}.brand-icon:after{content:'';position:absolute;width:9px;height:9px;right:-3px;bottom:-2px;background:#10b981;border:2px solid #060b19;border-radius:50%}.brand{font-size:14px;font-weight:800;color:white;letter-spacing:1.2px}.tag{font-size:9px;font-weight:700;letter-spacing:1.4px;color:#60a5fa;margin-top:5px}.sidebar-nav{flex:1;overflow:auto;padding:18px 14px}.nav-group{margin-bottom:23px}.nav-label{font-family:Lexend;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.4px;color:#94a3b8;margin:0 12px 9px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:12px;font-size:11px;font-weight:600;transition:.2s}.nav-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;color:#60a5fa}.sidebar nav a:hover{background:#131d38;transform:translateX(3px)}.sidebar nav a.active{background:linear-gradient(100deg,#2563eb,#4f46e5);color:white;box-shadow:0 5px 15px #2563eb44;border:1px solid #60a5fa40}.sidebar nav a.active .nav-icon{background:#ffffff30;color:white}.sidebar nav a.active:after{content:'';margin-left:auto;width:6px;height:6px;background:white;border-radius:50%}.profile-footer{padding:12px;border-top:1px solid #152243;background:#060b19f2}.profile-card{display:flex;align-items:center;gap:10px;padding:9px;border-radius:16px;background:#ffffff08;border:1px solid #ffffff19}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(45deg,#1d4ed8,#4f46e5);color:white;font-weight:800;flex-shrink:0}.avatar.warm{background:linear-gradient(45deg,#f59e0b,#f97316,#f43f5e);width:40px;height:40px}.profile-copy{min-width:0;flex:1}.profile-copy b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.profile-copy small{display:block;color:#94a3b8;font-size:9px;text-transform:uppercase;letter-spacing:1px;margin-top:4px}.workspace{flex:1;min-width:0;display:flex;flex-direction:column}.top{height:56px;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:0 20px;background:#ffffffed;backdrop-filter:blur(14px);border-bottom:1px solid #e2e8f0cc;gap:10px}.breadcrumbs,.top-right{display:flex;align-items:center;gap:10px}.breadcrumbs{font-size:11px;color:#64748b}.breadcrumbs b{color:#1e293b}.top-right{font-size:11px}.live{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;border-radius:30px;font-size:10px;font-weight:600}.dot{width:7px;height:7px;background:#10b981;border-radius:50%;display:inline-block}.clock{display:flex;align-items:center;gap:7px;padding:6px 10px;border-radius:10px;background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;font-family:'JetBrains Mono',monospace;font-size:10px}.top-user{display:flex;align-items:center;gap:9px;border-left:1px solid #e2e8f0;padding-left:12px}.top-user small{display:block;font-size:9px;color:#94a3b8;margin-top:3px}.main{padding:14px;overflow-y:auto;flex:1}.muted{color:var(--muted)}.small{font-size:11px}.eyebrow{text-transform:uppercase;letter-spacing:1.4px;font-size:10px;font-weight:800;color:#64748b}h1{font-size:23px;letter-spacing:-.6px;margin:8px 0 10px}h2{font-size:14px;margin:0 0 15px}h3{font-size:12px;margin:0}.heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.hero-banner{position:relative;overflow:hidden;background:linear-gradient(115deg,#060b19,#0e254e,#163e7e);border-radius:16px;padding:24px;color:white;box-shadow:var(--shadow);border:1px solid #ffffff18;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:20px}.hero-banner:after{content:'';position:absolute;right:-60px;top:-130px;width:350px;height:350px;background:#2563eb20;filter:blur(35px);border-radius:50%;pointer-events:none}.hero-banner h1{font-size:25px;letter-spacing:-.8px;margin:12px 0 8px}.hero-banner p{font-size:12px;color:#cbd5e1;line-height:1.8;max-width:680px;margin:0}.hero-banner .live{background:#10b98120;color:#6ee7b7;border-color:#10b98140;font-size:9px}.hero-meta{display:flex;align-items:center;gap:10px;color:#bfdbfe;font-size:10px}.hero-actions{display:flex;flex-wrap:wrap;gap:9px;z-index:1}.hero-actions .secondary{color:white;background:#ffffff13;border-color:#ffffff30}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.card,.panel{background:white;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:var(--shadow)}.card{position:relative;overflow:hidden;padding:16px;transition:transform .28s,box-shadow .28s}.card:hover{transform:translateY(-3px);box-shadow:0 16px 32px -8px #0f172a1a}.card:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent),var(--end))}.card.blue{--accent:#3b82f6;--end:#22d3ee;--tint:#eff6ff}.card.emerald{--accent:#10b981;--end:#2dd4bf;--tint:#ecfdf5}.card.amber{--accent:#f59e0b;--end:#fb923c;--tint:#fffbeb}.card.rose{--accent:#f43f5e;--end:#ef4444;--tint:#fff1f2}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.metric-top>span{font-family:Lexend;font-size:10px;text-transform:uppercase;color:#94a3b8;font-weight:700;letter-spacing:1px}.metric-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--tint);color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 10%,transparent)}.metric-icon .icon{width:20px;height:20px}.metric-value{display:block;font-size:28px;font-weight:800;letter-spacing:-1px;margin:12px 0 8px;overflow-wrap:anywhere}.metric-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f1f5f9;padding-top:10px;font-size:10px;color:#64748b}.metric-foot .badge{background:var(--tint);color:var(--accent)}.panel{padding:18px;margin-bottom:16px}.panel-head{display:flex;align-items:center;gap:9px;margin:-18px -18px 18px;padding:14px 18px;border-bottom:1px solid #f1f5f9;background:linear-gradient(90deg,#f8fafc,white);border-radius:16px 16px 0 0}.panel-head h2{margin:0;font-size:11px;letter-spacing:1px;text-transform:uppercase}.panel-head .icon{color:#2563eb}.panel-head a{margin-left:auto;color:#2563eb;font-size:11px;font-weight:700}.split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px}.operations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.operation{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #e2e8f0;background:white;border-radius:14px;box-shadow:var(--shadow)}.operation .nav-icon{width:36px;height:36px;background:#eff6ff;color:#2563eb}.operation b{display:block;font-size:11px;margin-bottom:5px}.operation small{color:#64748b;font-size:10px}.operation>.icon{margin-left:auto;color:#94a3b8}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#64748b;background:#f8fafc;font-family:Lexend}th,td{padding:12px;border-bottom:1px solid #f1f5f9}td{font-size:11px}tbody tr:hover{background:#eff6ff55}td b{font-weight:700}.badge{display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:700;padding:4px 8px;border-radius:30px;background:#eff6ff;color:#2563eb;text-transform:uppercase;white-space:nowrap;border:1px solid currentColor}.badge.valid{background:#ecfdf5;color:#15803d;border-color:#bbf7d0}.badge.expired{background:#fffbeb;color:#b45309;border-color:#fde68a}.badge.cancelled{background:#fff1f2;color:#be123c;border-color:#fecdd3}input,select{padding:11px 12px;border:1px solid #cbd5e1;border-radius:8px;width:100%;background:white;font:inherit;color:var(--ink);min-height:39px}input:focus,select:focus{outline:2px solid #2563eb40;border-color:#2563eb}label{display:block;font-size:11px;font-weight:700;margin-bottom:7px;color:#475569}.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{margin-bottom:17px}.full{grid-column:1/-1}.error,.success{padding:13px 16px;border-radius:12px;margin-bottom:16px;line-height:1.7}.error{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.search{display:flex;gap:9px;max-width:440px;margin-bottom:16px}.scroll{overflow:auto}.pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:linear-gradient(110deg,#f7f4ff,white,#effdff);margin:14px -18px -18px;border-top:1px solid #eef0f7;border-radius:0 0 16px 16px}.page-link{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border:1px solid #e6e5f7;border-radius:10px;background:white;color:#555173;font-size:10px;font-weight:700}.page-link.selected{color:white;background:linear-gradient(135deg,#8b2dff,#6540ef 55%,#2fc5df);border:0}.page-link.disabled{color:#b5b1c9}.pages{display:flex;gap:6px}.mobile-toggle,.mobile-close,.backdrop{display:none}.empty{text-align:center;padding:35px;color:#94a3b8}.empty .icon{width:30px;height:30px;margin-bottom:10px}.empty h2{font-size:13px;color:#64748b}.empty p{font-size:11px}.auth-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:28px 18px;background:radial-gradient(ellipse at 5% 0%,#2563eb24,transparent 50%),radial-gradient(ellipse at 95% 100%,#4f46e530,transparent 50%),linear-gradient(135deg,#040813,#070d1e,#0e1a38);color:#f1f5f9}.auth-wrap{width:100%;max-width:448px}.auth-brand{text-align:center;margin-bottom:25px}.auth-brand .brand-icon{display:inline-block;margin-bottom:10px}.auth-brand img{width:80px;height:80px;border-radius:16px;box-shadow:0 0 0 4px #ffffff26,0 15px 35px #2563eb50}.auth-brand h1{font-size:24px;letter-spacing:1px;color:white}.auth-subtitle{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border-radius:30px;background:#ffffff12;border:1px solid #ffffff19;font-size:10px;font-weight:600;color:#93c5fd}.auth-card{background:#0c142bd9;backdrop-filter:blur(24px);border:1px solid #ffffff26;box-shadow:0 20px 60px #0009;border-radius:24px;padding:28px}.auth-card label{color:#cbd5e1;text-transform:uppercase;letter-spacing:.7px;font-size:10px}.input-icon{position:relative}.input-icon>.icon{position:absolute;left:13px;top:13px;color:#94a3b8;width:14px;height:14px}.input-icon input{padding:13px 38px;color:white;border-color:#334155cc;border-radius:12px;background:#080e1fe6;font-size:12px}.input-icon button{position:absolute;right:3px;top:4px}.auth-card .btn{width:100%;text-transform:uppercase;letter-spacing:1px;padding:13px;font-size:11px;border-radius:12px}.auth-note{display:flex;align-items:center;gap:6px;font-size:10px;color:#94a3b8;margin:18px 0}.auth-footer{text-align:center;color:#64748b;font-size:10px;line-height:1.9;margin-top:22px}.welcome-brand{max-width:850px;text-align:center}.welcome-brand h1{font-size:42px;margin:20px 0}.welcome-brand p{color:#94a3b8;line-height:1.9;max-width:600px;margin:15px auto}.letters{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;margin:35px 0}.letters b{display:block;font-size:24px;color:#60a5fa;margin-bottom:7px}.letters span{font-size:11px;color:#cbd5e1}.receipt{max-width:600px;margin:28px auto;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.receipt header{text-align:center;padding:26px;background:linear-gradient(120deg,#060b19,#0e254e);color:white}.receipt header .brand{font-size:26px}.receipt header h2{margin:15px 0 0;color:#93c5fd;font-size:12px;letter-spacing:2px;text-transform:uppercase}.receipt dl{padding:0 24px}.receipt dl div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #f1f5f9}dt{color:#64748b;font-size:11px}dd{margin:0;text-align:right;font-size:12px;font-weight:600;overflow-wrap:anywhere}.receipt .status{text-align:center;padding:18px;font-size:14px;font-weight:700;background:#ecfdf5;color:#15803d}.receipt .status.expired{background:#fffbeb;color:#b45309}.receipt .status.cancelled{background:#fff1f2;color:#be123c}.receipt footer{text-align:center;padding:22px;font-size:10px;color:#64748b;line-height:1.8}.qr{width:150px;display:block;margin:20px auto}.print-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin:22px auto;padding:0 15px}.print-actions input{max-width:300px}.section-title{border-bottom:1px solid #e2e8f0;padding-bottom:12px;margin-bottom:18px;display:flex;gap:8px;align-items:center}.section-title .icon{color:#2563eb}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:9px}.sidebar ::-webkit-scrollbar-thumb{background:#1e293b}
@media(min-width:1500px){.hero-banner{padding:28px}.main{padding:18px}}@media(max-width:1100px){.clock{display:none}.hero-banner{align-items:flex-start;flex-direction:column}.metric-value{font-size:24px}}@media(max-width:850px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.operations{gap:10px}.operation{padding:12px}}@media(max-width:767px){.sidebar{position:fixed;inset:0 auto 0 0;transform:translateX(-100%);transition:transform .25s}.sidebar.open{transform:translateX(0)}.mobile-toggle,.mobile-close{display:inline-flex}.mobile-close{margin-left:auto}.backdrop.open{display:block;position:fixed;inset:0;background:#02061799;backdrop-filter:blur(3px);z-index:40}.top{padding:0 12px}.top-right .live,.top-user>span{display:none}.main{padding:12px}.hero-banner{padding:20px}.hero-banner h1{font-size:22px}.operations{grid-template-columns:1fr}.operation{padding:13px}.heading h1{font-size:20px}.pagination{gap:10px;flex-wrap:wrap}}@media(max-width:420px){.fields{grid-template-columns:1fr}.cards{gap:10px}.card{padding:12px}.metric-top>span{font-size:9px}.metric-icon{width:30px;height:30px}.metric-value{font-size:21px}.metric-foot{font-size:9px;gap:5px}.auth-card{padding:22px}.welcome-brand h1{font-size:32px}.receipt{margin:16px 10px}.receipt dl{padding:0 16px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media print{@page{size:80mm 200mm;margin:3mm}body{background:white;font:10px Arial,sans-serif}.print-actions,.sidebar,.top{display:none!important}.receipt{width:72mm;max-width:100%;margin:0;border:0;border-radius:0;box-shadow:none}.receipt header{background:white;color:black;padding:8px}.receipt header .brand{color:black;font-size:20px}.receipt header h2{color:black;font-size:11px}.receipt dl{padding:0}.receipt dl div{padding:7px 0}.receipt .status{font-size:12px;padding:8px;background:white!important;color:black!important}.receipt footer{padding:8px}.qr{width:32mm}.main{padding:0}.receipt dd{font-size:10px}.receipt dt{font-size:9px}}
.rate-dialog{width:min(480px,calc(100% - 28px));padding:24px;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 24px 80px #02061740;color:#0f172a}.rate-dialog::backdrop{background:#02061788;backdrop-filter:blur(3px)}.rate-dialog h2{margin-bottom:20px}.rate-dialog p{line-height:1.7}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
/* Receipt creation workspace */
.receipt-heading{margin-bottom:22px}.receipt-heading p{margin-bottom:0}.receipt-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,1fr);gap:20px;align-items:start;max-width:1560px}.receipt-workspace form{min-width:0}.entry-section{padding:22px;margin-bottom:16px}.entry-section-heading{display:flex;align-items:center;gap:12px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid #f1f5f9}.section-number{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eff6ff;color:#2563eb;font-family:Lexend;font-size:12px;font-weight:700;flex-shrink:0}.entry-section-heading h2{font-size:13px;margin:0 0 5px}.entry-section-heading p{font-size:10px;color:#94a3b8;margin:0;line-height:1.6}.entry-section-heading>.icon{margin-left:auto;color:#94a3b8;width:20px;height:20px}.entry-section .fields{gap:20px}.entry-section input,.entry-section select{height:44px;font-size:12px;background:#fcfdff;border-color:#dce3ef;border-radius:9px}.entry-section input:focus,.entry-section select:focus{background:white;border-color:#2563eb}.required-mark{color:#3b82f6;margin-left:3px}.optional-mark{color:#94a3b8;font-size:9px;font-weight:500;margin-left:5px}.uppercase-input{text-transform:uppercase}.uppercase-input::placeholder{text-transform:none}.field-hint{display:block;color:#94a3b8;font-size:9px;margin-top:7px;line-height:1.5}.field-error{display:block;color:#be123c;font-size:10px;margin-top:7px}.unit-input{position:relative}.unit-input input{padding-right:77px}.unit-input>span{position:absolute;right:12px;top:16px;font-size:9px;letter-spacing:.7px;color:#94a3b8;font-weight:700;pointer-events:none}.matched-rate{display:flex;align-items:center;gap:8px;padding:12px;margin-top:19px;background:#f8fafc;border:1px dashed #dbe3ef;border-radius:9px;color:#64748b;font-size:10px;line-height:1.6}.matched-rate.rate-matched{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.matched-rate.rate-missing{background:#fffbeb;color:#b45309;border-color:#fde68a}.validity-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:0;margin:0;padding:0}.validity-option{position:relative;margin:0;cursor:pointer}.validity-option>input{position:absolute;opacity:0;width:1px;height:1px}.validity-card{display:flex;align-items:center;gap:10px;padding:16px 14px;border:1px solid #dce3ef;border-radius:12px;background:#fcfdff;transition:background .2s,border-color .2s}.validity-icon{width:33px;height:33px;display:grid;place-items:center;background:#f1f5f9;color:#64748b;border-radius:10px}.validity-card b{display:block;font-family:Lexend;font-size:13px;color:#334155}.validity-card small{display:block;font-size:9px;font-weight:400;margin-top:5px;color:#94a3b8}.radio-indicator{width:16px;height:16px;border:1.5px solid #cbd5e1;border-radius:50%;margin-left:auto;flex-shrink:0}.validity-option>input:checked+.validity-card{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 1px #3b82f61a}.validity-option>input:checked+.validity-card .validity-icon{background:#dbeafe;color:#2563eb}.validity-option>input:checked+.validity-card .radio-indicator{border:5px solid #2563eb;background:white}.validity-option>input:focus-visible+.validity-card{outline:2px solid #2563eb;outline-offset:3px}.validity-note{display:flex;align-items:center;gap:7px;color:#64748b;font-size:10px;margin-top:15px}.validity-note .icon{width:14px;color:#94a3b8}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.receipt-summary-column{min-width:0}.draft-tag,.rate-count{margin-left:auto;color:#94a3b8;font-size:9px;letter-spacing:.5px}.draft-tag{padding:4px 7px;background:#f1f5f9;border-radius:5px;font-weight:700}.amount-preview{background:radial-gradient(circle at 95% 5%,#2563eb66,transparent 65%),linear-gradient(120deg,#071126,#163469);padding:20px;border-radius:12px;color:white}.amount-caption{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.3px;color:#bfdbfe;font-weight:700}.amount-caption .icon{width:20px;height:20px;color:#93c5fd}.amount-preview strong{display:block;font-family:Lexend;font-size:34px;letter-spacing:-1px;font-weight:700;margin:12px 0 7px;overflow-wrap:anywhere}.amount-preview>span{font-size:9px;color:#94aeca}.summary-details{margin:14px 0}.summary-details>div{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #f1f5f9}.summary-details dt{font-size:10px;flex-shrink:0}.summary-details dd{font-size:11px;font-weight:600;max-width:65%;overflow-wrap:anywhere}.issue-includes{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;color:#64748b;font-size:9px;padding:5px 0 18px}.issue-includes>span{display:flex;align-items:center;gap:5px}.issue-includes .icon{width:13px;height:13px;color:#3b82f6}.issue-button{width:100%;padding:13px 14px;border-radius:10px;font-size:12px;box-shadow:0 5px 14px #2563eb30}.summary-footnote{text-align:center;color:#94a3b8;font-size:9px;line-height:1.7;margin:12px 7px 0}.rate-reference-panel .panel-head{margin-bottom:0}.rate-reference-scroll{max-height:248px;overflow:auto;margin:0 -6px}.rate-reference-scroll th{position:sticky;top:0;z-index:1;font-size:8px;padding:10px 12px}.rate-reference-scroll td{font-size:10px;padding:10px 12px}.rate-reference-scroll th:last-child,.rate-reference-scroll td:last-child{text-align:right}.rate-reference-scroll .selected-rate{background:#eff6ff;color:#1d4ed8;font-weight:700;box-shadow:inset 3px 0 #2563eb}.rate-reference-note{font-size:9px;color:#94a3b8;margin:12px 0 0;line-height:1.6}.review-mark{display:grid;place-items:center;width:42px;height:42px;background:#eff6ff;color:#2563eb;border-radius:13px;margin-bottom:15px}.review-mark .icon{width:22px;height:22px}.receipt-review{width:min(510px,calc(100% - 28px))}.receipt-review h2{margin-bottom:7px;font-size:19px}.review-total{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px;background:#eff6ff;border-radius:10px;color:#1d4ed8}.review-total strong{font-family:Lexend;font-size:20px;overflow-wrap:anywhere}.receipt-workspace button:disabled{opacity:.55;cursor:not-allowed;transform:none}.receipt-review button:disabled{opacity:.6;cursor:wait}@media(max-width:1050px){.receipt-workspace{grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);gap:14px}.entry-section{padding:17px}.entry-section .fields{grid-template-columns:1fr;gap:16px}.validity-card{padding:12px 9px;gap:7px}.validity-icon{display:none}}@media(max-width:800px){.receipt-workspace{grid-template-columns:1fr}.entry-section .fields{grid-template-columns:1fr 1fr}.validity-icon{display:grid}.receipt-summary-column{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.receipt-summary-column>.panel{min-width:0}.receipt-heading{align-items:flex-start}}@media(max-width:570px){.receipt-summary-column{display:block}.entry-section .fields{grid-template-columns:1fr}.receipt-heading{flex-direction:column;gap:12px}.receipt-heading h1{font-size:22px}.entry-section-heading p{font-size:10px}.entry-section-heading>.icon{display:none}.validity-card{padding:13px 10px}.validity-card b{font-size:12px}.validity-icon{width:26px;height:29px}.validity-card small{font-size:8px}.receipt-review .dialog-actions{flex-wrap:wrap}.rate-reference-scroll{max-height:230px}}
/* Compact staff directory, following the AR Auto-Mobile staff layout. */
.staff-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;box-shadow:0 1px 3px #0f172a08}.staff-title{display:flex;align-items:center;gap:10px}.staff-title h1{font-size:16px;margin:0}.staff-count{padding:3px 8px;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;border-radius:20px;font-size:10px;font-weight:700;white-space:nowrap}.staff-toolbar p{font-size:11px;color:var(--muted);margin:5px 0 0}.staff-tools{display:flex;gap:10px;align-items:center}.staff-tools>button{white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;padding:9px 13px;background:#2563eb;border-radius:8px}.staff-search{position:relative;width:240px}.staff-search>.icon{position:absolute;left:10px;top:10px;width:14px;height:14px;color:#94a3b8}.staff-search input{padding:9px 10px 9px 32px;font-size:11px;background:#f8fafc;border-color:var(--line);border-radius:8px}.staff-roster{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0f172a08}.staff-roster th{font-size:9px;color:#94a3b8;padding:11px 16px}.staff-roster td{padding:12px 16px;font-size:11px}.staff-roster tbody tr:hover{background:#f8fafc}.staff-person{display:flex;align-items:center;gap:10px}.staff-person b{font-size:12px;white-space:nowrap}.staff-person small{display:block;font-family:monospace;font-size:10px;color:#94a3b8;margin-top:4px}.staff-avatar{width:30px;height:30px;display:grid;place-items:center;flex-shrink:0;border-radius:8px;background:linear-gradient(45deg,#9333ea,#4f46e5);color:#fff;font-size:10px;font-weight:800}.staff-phone{display:flex;align-items:center;gap:6px;font-family:monospace;color:#64748b}.staff-phone .icon{width:12px;height:12px;color:#94a3b8}.staff-role{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid #e2e8f0;background:#f1f5f9;border-radius:5px;font-size:9px;font-weight:800;text-transform:uppercase;color:#475569}.staff-role .icon{width:11px;height:11px}.staff-admin{color:#7e22ce;border-color:#e9d5ff;background:#faf5ff}.staff-status{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid #a7f3d0;background:#ecfdf5;color:#047857;border-radius:20px;font-size:10px;font-weight:700}.staff-status i{width:5px;height:5px;background:currentColor;border-radius:50%}.staff-disabled{background:#fff1f2;color:#be123c;border-color:#fecdd3}.staff-date{color:#94a3b8;white-space:nowrap}.staff-actions{text-align:right;white-space:nowrap}.staff-actions button{padding:6px 9px;font-size:10px;border-radius:7px}.staff-protected{display:inline-flex;gap:5px;align-items:center;color:#94a3b8;font-size:10px}.staff-protected .icon{width:13px}.staff-footer{padding:12px 16px;font-size:10px;color:#64748b;background:#fafbfe;border-top:1px solid #f1f5f9}.staff-dialog{padding:0;width:min(450px,calc(100% - 28px));overflow:auto}.staff-modal-head{display:flex;align-items:center;gap:10px;padding:15px;background:linear-gradient(110deg,#0b132b,#1c2541);color:#fff}.staff-modal-head h2{font-size:14px;margin:0 0 4px;color:white}.staff-modal-head p{font-size:10px;color:#cbd5e1;margin:0;overflow-wrap:anywhere}.staff-modal-head>.icon-button{margin-left:auto;background:#ffffff12;color:#cbd5e1;flex-shrink:0}.staff-modal-icon{width:33px;height:33px;display:grid;place-items:center;background:#2563eb;border-radius:9px;flex-shrink:0}.staff-modal-body{padding:18px}.staff-modal-body label{font-size:10px;text-transform:uppercase;letter-spacing:.4px}.staff-modal-body input,.staff-modal-body select{background:#f8fafc;font-size:12px;border-color:#e2e8f0}.staff-modal-body .dialog-actions{border-top:1px solid #f1f5f9;padding-top:15px}.staff-access-note{display:flex;gap:8px;align-items:center;color:#64748b;background:#f8fafc;padding:10px;border-radius:8px;font-size:10px;line-height:1.6}.staff-access-note .icon{color:#2563eb}@media(max-width:1100px){.staff-toolbar{align-items:flex-start;flex-direction:column}.staff-tools{width:100%}.staff-search{flex:1}}@media(max-width:540px){.staff-tools{flex-wrap:wrap}.staff-search{flex-basis:100%;width:100%}.staff-title h1{font-size:14px}.staff-roster table{min-width:760px}}
.staff-row-actions{display:flex;justify-content:flex-end;align-items:center;gap:7px}.staff-row-actions form{margin:0}.staff-row-actions .danger{background:#fff1f2;color:#be123c;border-color:#fecdd3;box-shadow:none}
/* Consistent edge-to-edge column spacing across admin lists. */
.spaced-list{table-layout:fixed;width:100%}.spaced-list th,.spaced-list td{padding:14px 18px;vertical-align:middle;text-align:center;overflow-wrap:anywhere}.spaced-list th:first-child,.spaced-list td:first-child{text-align:left}.spaced-list th:last-child,.spaced-list td:last-child{text-align:right}.spaced-list td[colspan]{text-align:center}.spaced-list .list-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap}.spaced-list .list-row-actions form{margin:0}.spaced-list button,.spaced-list .btn{white-space:nowrap}.spaced-list.rates-list{min-width:620px}.spaced-list.materials-list{min-width:660px}.spaced-list.materials-list th:first-child{width:40%}.spaced-list.materials-list th:nth-child(2){width:20%}.spaced-list.materials-list th:last-child{width:40%}.spaced-list.receipt-list{min-width:1000px}.spaced-list.receipt-list th:first-child{width:24%}.spaced-list.users-list{min-width:1100px}.spaced-list.users-list th:first-child{width:23%}.spaced-list.users-list th:last-child{width:27%}.spaced-list .staff-phone{justify-content:center}.spaced-list .staff-person b{white-space:normal}.spaced-list .staff-row-actions{flex-wrap:wrap;gap:8px}
/* Compact admin density; thermal print dimensions remain independent. */
@media screen{
.main{padding:12px}.main h1{font-size:20px;margin:5px 0 6px}.main .heading{gap:10px;margin-bottom:12px}.main .heading p{margin:5px 0 0;font-size:11px}.main .panel{padding:12px;margin-bottom:12px;border-radius:12px}.main .section-title{font-size:13px;padding-bottom:9px;margin:0 0 10px}.main .panel-head{margin:-12px -12px 10px;padding:10px 12px;border-radius:12px 12px 0 0}.main .panel-head h2{font-size:11px}.main .spaced-list th{padding:9px 12px}.main .spaced-list td{padding:7px 12px}.main button,.main .btn{padding:7px 11px;border-radius:8px;min-height:30px}.main .spaced-list button,.main .spaced-list .btn{padding:5px 9px;min-height:29px;font-size:10px}.main .list-row-actions,.main .staff-row-actions{gap:6px}.main .badge{padding:3px 7px}.main input,.main select{padding:8px 10px;min-height:35px}.main .field{margin-bottom:12px}.main .fields{gap:12px}.main .pagination{padding:9px 12px;margin:10px -12px -12px;border-radius:0 0 12px 12px}.main .empty{padding:28px 12px}.main .hero-banner{padding:16px;border-radius:12px;margin-bottom:12px;gap:12px}.main .hero-banner h1{font-size:21px;margin:8px 0 6px}.main .hero-banner p{font-size:11px;line-height:1.6}.main .cards{gap:12px;margin-bottom:12px}.main .card{padding:14px;border-radius:12px}.main .metric-icon{width:32px;height:32px;border-radius:9px}.main .metric-icon .icon{width:17px;height:17px}.main .metric-value{font-size:25px;margin:8px 0}.main .metric-foot{padding-top:7px}.main .operations{gap:12px;margin-bottom:12px}.main .operation{padding:12px;border-radius:10px}.main .staff-toolbar{padding:10px 12px;margin-bottom:10px;gap:10px}.main .staff-title h1{font-size:15px;margin:0}.main .staff-footer{padding:9px 12px}.main .staff-person{gap:8px}.main .staff-avatar{width:28px;height:28px}.main .staff-person small{margin-top:2px}.main .rate-dialog{padding:18px;border-radius:12px}.main .rate-dialog h2{margin-bottom:12px}.main .dialog-actions{gap:8px;margin-top:14px}.main .staff-dialog{padding:0}.main .staff-modal-head{padding:12px}.main .staff-modal-head h2{margin:0 0 3px}.main .staff-modal-body{padding:14px}.main .staff-modal-body .dialog-actions{padding-top:12px}.main .staff-access-note{padding:8px}.main .receipt-heading{margin-bottom:12px}.main .receipt-workspace{gap:14px}.main .entry-section-heading{gap:9px;padding-bottom:12px;margin-bottom:12px}.main .entry-section-heading h2{font-size:12px;margin-bottom:3px}.main .section-number{width:28px;height:28px;border-radius:8px}.main .entry-section .fields{gap:12px}.main .entry-section input,.main .entry-section select{height:36px}.main .field-hint{margin-top:4px}.main .unit-input input{padding-right:77px}.main .unit-input>span{top:12px}.main .matched-rate{padding:8px 10px;margin-top:10px}.main .validity-card{padding:11px 12px;border-radius:9px}.main .validity-card b{font-size:12px}.main .validity-note{margin-top:10px}.main .amount-preview{padding:14px;border-radius:10px}.main .amount-preview strong{font-size:29px;margin:8px 0 5px}.main .summary-details{margin:10px 0}.main .summary-details>div{padding:8px 0}.main .issue-includes{padding:3px 0 12px}.main .issue-button{padding:10px 12px;min-height:36px}.main .summary-footnote{margin-top:8px}.main .rate-reference-panel .panel-head{margin-bottom:0}.main .rate-reference-scroll td{padding:8px 10px}.main .rate-reference-note{margin-top:8px}.main .review-total{padding:12px}.main .review-mark{width:34px;height:34px;margin-bottom:10px}
}
@media screen and (pointer:coarse){.main button,.main .btn,.main .spaced-list button,.main .spaced-list .btn{min-height:40px}.main input,.main select,.main .entry-section input,.main .entry-section select{min-height:40px}.main .spaced-list td{padding-top:8px;padding-bottom:8px}}
.receipt-items{padding:12px 18px;border-top:1px dashed #cbd5e1}.receipt-items h2{font-size:12px;margin:0 0 8px}.receipt-items>div{display:flex;justify-content:space-between;gap:10px;font-size:11px;padding:7px 0;border-bottom:1px solid #eef2f7}.receipt-items b{overflow-wrap:anywhere}.receipt-items span{white-space:nowrap}
.material-dialog{padding:0!important;overflow:hidden;background:#f4f7fc}.material-picker-head{display:flex;align-items:center;justify-content:space-between;padding:18px;background:linear-gradient(115deg,#081329,#173d7a);color:white}.material-picker-head h2{margin:0!important;font-size:17px}.material-picker-head p{margin:4px 0 0;font-size:10px;color:#bfdbfe}.material-picker-head .icon-button{color:white;background:#ffffff15}.material-picker-body{padding:14px}.material-picker-body>input{background:white}.material-picker-body #material-options{max-height:340px;overflow:auto;margin-top:12px;display:grid;gap:7px}.material-option{width:100%;justify-content:flex-start;background:white;color:#334155;border:1px solid #e5ebf5;box-shadow:none;padding:14px!important}.material-option.chosen{background:#eaf1ff;color:#1d4ed8;border-color:#8ab4ff}.material-option.chosen:after{content:'✓';margin-left:auto;color:#2563eb}.material-option:disabled{opacity:.4;cursor:not-allowed}.product-row{background:#f8faff;border:1px solid #e3eafa;border-radius:12px;padding:12px;margin-bottom:10px}.product-row>b{font-size:9px;letter-spacing:1px;color:#2563eb}.product-fields{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(110px,1fr) auto;gap:10px;align-items:end;margin-top:9px}.product-select{width:100%;justify-content:space-between!important;min-height:36px;overflow-wrap:anywhere;text-align:left}.product-fields label{font-size:10px}.remove-product{color:#be123c;min-height:36px}.add-product{color:#1d4ed8!important;background:#eff6ff!important;border-color:#bfdbfe!important}@media(max-width:600px){.product-fields{grid-template-columns:1fr}.remove-product{justify-self:end}}

/* Keep receipt actions together with room for all three controls. */
.spaced-list.receipt-list th:last-child{width:200px}.spaced-list.receipt-list .list-row-actions>*{flex-shrink:0}

.main .receipt-pagination{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px;margin:12px 0 0;min-height:70px;border:1px solid #fff;border-radius:16px;background:linear-gradient(100deg,#f7f5ff 0%,#fff 51%,#effeff 100%);box-shadow:0 3px 7px #30315c06;flex-wrap:wrap}
.receipt-pagination>.small{font-size:11px;font-weight:600;color:#78708f;white-space:nowrap}.receipt-pagination>.small b{color:#211a39}
.receipt-pagination .pages{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;max-width:100%;overflow-x:auto;padding:0 0 3px}
.receipt-pagination .page-link{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #e7e3ff;border-radius:13px;background:#fff;color:#5e547d;font-size:11px;font-weight:700;box-shadow:0 2px 3px #211a3910}
.receipt-pagination .page-link.selected{background:linear-gradient(135deg,#8a20ff 0%,#7032f5 53%,#10c5d8 100%);border-color:transparent;color:#fff;box-shadow:0 5px 10px #7731f52b}
.receipt-pagination .page-arrow{font-size:25px;font-weight:400;color:#77698d}.receipt-pagination .page-link.disabled{color:#bab3cd;box-shadow:none;border-color:#ece9f4;background:#ffffffb3}
.receipt-pagination .page-ellipsis{display:grid;place-items:center;flex:0 0 44px;color:#978aac;font-weight:700}.receipt-pagination a:hover{border-color:#b1a0ef;background:#faf8ff}.receipt-pagination a:focus-visible{outline:2px solid #7731f5;outline-offset:1px}

.receipt-pagination .page-arrow{line-height:1}.receipt-pagination .page-arrow svg{display:block;width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
