:root{--ink:#243c35;--muted:#6a716b;--paper:#faf7f2;--line:#dedfd5;--gold:#b58447;--white:#fff;--red:#a13636}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}h1,h2,h3,p{margin:0}h1{font:normal clamp(28px,4vw,42px)/1.2 Georgia,serif;letter-spacing:-1px}h2{font:normal 27px Georgia,serif}h3{font-size:17px}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{border:1px solid var(--ink);border-radius:7px;background:var(--ink);color:white;padding:10px 16px;cursor:pointer;font-weight:600}button:hover{filter:brightness(1.13)}button:disabled{opacity:.5;cursor:wait}.secondary{color:var(--ink);background:transparent;border-color:var(--line)}.danger{color:var(--red);border-color:#e4baba;background:#fff8f8}.small{padding:6px 11px;font-size:13px}.link{border:0;background:none;color:var(--ink);padding:3px;text-decoration:underline}input,select,textarea{display:block;width:100%;border:1px solid #c5ccc3;border-radius:6px;background:white;padding:11px;color:var(--ink);min-width:0}textarea{min-height:76px}label{display:block;font-size:13px;font-weight:600;margin:12px 0 5px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #ceb38b;outline-offset:2px}small,.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:700;color:var(--gold)}.shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{background:var(--ink);color:white;padding:32px 22px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{border-bottom:1px solid #50615a;padding-bottom:27px;margin-bottom:25px}.brand strong{display:block;font:28px/1.05 Georgia,serif}.brand small{font-size:10px;letter-spacing:1.5px;color:#d4d8cc;display:block;margin-top:11px}.sidebar nav{display:grid;gap:6px}.nav{background:transparent;color:#cbd4cb;border:0;text-align:left;padding:13px}.nav.active{background:#3c554a;color:white}.user{margin-top:auto;padding-top:26px;font-size:13px}.user small{display:block;color:#bdc8bc;margin:4px 0 14px}.user button{color:white;border-color:#65756b}.main{padding:35px 42px;max-width:1500px;width:100%;margin:0 auto}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;font-size:12px;color:var(--muted);gap:12px}.title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.title p{margin-top:8px;color:var(--muted)}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:28px}.stat{padding:22px;background:white;border:1px solid var(--line);border-radius:9px}.stat strong{font:36px Georgia,serif;display:block;margin-top:12px}.stat small{text-transform:uppercase;font-size:10px;letter-spacing:1px}.panel{background:white;border:1px solid var(--line);border-radius:9px;padding:23px;margin-bottom:22px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:19px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tile{background:white;border:1px solid var(--line);border-radius:9px;padding:20px}.tile .eyebrow{margin-bottom:10px}.tile h3{margin-bottom:4px}.tile .actions{margin-top:18px}.numbers{display:flex;gap:20px;margin:18px 0}.numbers strong{font-size:22px}.numbers span{font-size:11px;color:var(--muted);display:block}.badge{display:inline-block;padding:4px 9px;border-radius:4px;background:#eaf0e8;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge.warn{background:#fff1d8;color:#80580a}.badge.bad{background:#f8e5e2;color:#9a3633}.row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.searchbar{display:flex;gap:12px;margin-bottom:22px}.searchbar input{flex:1}.searchbar select{width:180px}.empty{text-align:center;padding:46px 20px;color:var(--muted)}.empty h3{color:var(--ink);margin-bottom:10px}.empty button{margin-top:18px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th,td{padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.auth{max-width:480px;margin:7vh auto;padding:32px;background:white;border:1px solid var(--line);border-radius:12px}.auth h1{margin:12px 0}.auth p{color:var(--muted);margin-bottom:22px}.auth button[type=submit]{width:100%;margin-top:22px}.error{color:var(--red);font-size:14px;padding-top:12px}.notice{padding:14px 18px;background:#fff1d8;border:1px solid #e9d6b1;border-radius:7px;margin-bottom:22px}.loading{padding:80px;text-align:center}dialog{border:1px solid var(--line);border-radius:12px;width:min(640px,94vw);max-height:90vh;color:var(--ink);padding:27px;background:var(--paper)}dialog::backdrop{background:#14261fb3}.dialog-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.full{grid-column:1/-1}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:25px}.line-input{width:85px}.barcode{font-family:monospace;letter-spacing:1px;font-size:12px}.rental-line{padding:15px;border:1px solid var(--line);border-radius:7px;margin-top:12px}.rental-line p{margin:5px 0 12px}.check{display:flex;align-items:center;gap:10px}.check input{width:auto}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:8px;padding:12px 22px;z-index:100;max-width:90vw;box-shadow:0 5px 25px #0003}.mobile-brand{display:none}#print-area{display:none}.scanner{max-width:500px;margin:auto}.label-card{border:1px dashed #777;padding:16px;text-align:center;break-inside:avoid;width:3.5in;min-height:1.8in;color:#000;background:white}.label-card strong{font-size:17px;display:block}.label-card svg{width:100%;height:62px}.label-card small{color:#111;display:block}.print-sheet{display:flex;flex-wrap:wrap;gap:.2in}.footnote{font-size:12px;color:var(--muted);margin-top:20px}.progress{height:5px;background:#e8eae4;border-radius:4px;margin:13px 0}.progress div{height:100%;background:#9eb39a;border-radius:4px}details{padding:12px 0}summary{cursor:pointer;font-weight:600}.danger-text{color:var(--red)}
@media(max-width:1100px){.main{padding:26px}.grid3{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.shell{grid-template-columns:200px 1fr}.sidebar{padding:25px 14px}}
@media(max-width:740px){.shell{display:block}.sidebar{height:auto;position:static;padding:16px}.brand{padding:0;margin:0 0 16px;border:0}.brand strong{font-size:23px}.brand small{margin-top:5px;font-size:9px}.sidebar nav{display:flex;overflow:auto;gap:4px}.nav{white-space:nowrap;padding:9px 13px;font-size:13px}.user{padding-top:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.user small{margin:0}.user button{padding:4px 9px;font-size:12px}.main{padding:22px 16px}.topbar{margin-bottom:22px}.title{align-items:flex-start;flex-direction:column;gap:16px}.stats{gap:10px;margin-bottom:20px}.stat{padding:15px}.stat strong{font-size:30px}.grid2,.grid3{grid-template-columns:1fr}.panel{padding:17px}.searchbar{flex-wrap:wrap}.searchbar select{width:130px}.searchbar input{min-width:180px}.auth{margin:25px 15px;padding:25px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.row{align-items:flex-start}.row .actions{justify-content:flex-end}.topbar>span:first-child{display:none}dialog{padding:20px}.rental-line .form-grid{grid-template-columns:1fr 1fr}}
@media print{body>*{display:none!important}#print-area{display:block!important}body{background:white}.print-sheet{gap:.15in}.label-card{border:1px dashed #aaa}button{display:none!important}@page{margin:.35in}}
