:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#192b3e;background:#f4f7fa;font-size:16px}*{box-sizing:border-box}body{margin:0}header{background:#14263d;color:#fff}.wrap{width:min(1100px,calc(100% - 32px));margin:auto}.header{display:flex;align-items:center;justify-content:space-between;min-height:65px;gap:12px}.brand{font-weight:800;font-size:1.2rem;letter-spacing:.1px}.user{display:flex;align-items:center;gap:10px;font-size:.85rem;min-width:0}.user span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}main{padding-top:28px;padding-bottom:80px}h1{font-size:1.65rem;margin:0 0 6px}h2{font-size:1.15rem;margin:0 0 14px}p{line-height:1.5}.muted{color:#637183;margin-top:2px}.fine{font-size:.84rem}.break{overflow-wrap:anywhere}.toolbar,.filters,.buttons{display:flex;justify-content:space-between;align-items:center;gap:12px}.toolbar{margin-bottom:22px}.filters{margin:0 0 22px}.grow{flex:1}button,.upload{font:inherit;cursor:pointer;padding:10px 14px;border-radius:9px;border:1px solid #c8d3df;background:white;color:#193045;font-weight:600}button:hover,.upload:hover{background:#ecf3f9}.primary{background:#2364ad;color:white;border-color:#2364ad}.primary:hover{background:#174f8f}.small{font-size:.8rem;padding:6px 9px}.link{border:0;background:transparent;padding:3px 0;margin-bottom:24px;color:#2364ad}.danger{color:#a32027;border-color:#dca2a5;margin-top:20px}.panel,.binCard{background:#fff;border:1px solid #e0e7ee;border-radius:15px;padding:20px;box-shadow:0 3px 12px #0d29420b}.hero{margin:8vh auto;max-width:590px;padding:35px}.hero h1{font-size:2rem}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:14px}.binCard{text-align:left;cursor:pointer;display:block;min-height:130px}.binCard:hover{border-color:#73a8de;transform:translateY(-1px)}.binCard h3{margin:0 0 12px;font-size:1.07rem}.binCard p{margin:5px 0;color:#627183;font-size:.9rem}.chip{font-size:.73rem;background:#edf3f9;border-radius:30px;padding:4px 8px;display:inline-block;margin-bottom:12px}.detailGrid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.addItem{display:flex;gap:7px}.addItem input:first-child{flex:1;min-width:0}.addItem input[type=number]{width:70px}.items{list-style:none;padding:0;margin:18px 0}.items li{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #edf0f4;padding:10px 0}.items li span{overflow-wrap:anywhere}.itemActions{display:flex;align-items:center;gap:8px;flex-shrink:0}.itemActions button{padding:5px 8px;font-size:.8rem}.photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.photo{min-width:0}.photo img{width:100%;height:145px;object-fit:cover;border-radius:9px;background:#eaeff4}.photo button{font-size:.8rem;padding:5px 7px;margin-top:4px}.upload{display:inline-block}.upload input{display:none}.qr{display:flex;justify-content:center;margin:16px auto}.qr canvas{max-width:100%}hr{border:0;border-top:1px solid #e1e8f0;margin:22px 0}.notice{background:#fff6db;border:1px solid #efd384;border-radius:10px;padding:12px 15px;margin:0 0 20px}input,textarea,select{font:inherit;width:100%;padding:11px;border-radius:9px;border:1px solid #c8d3df;background:white;color:#192b3e}select{width:auto;max-width:36%}dialog{border:1px solid #d4e0ec;border-radius:14px;padding:26px;width:min(440px,calc(100% - 30px));box-shadow:0 20px 60px #001a3559}dialog::backdrop{background:#13284088}dialog label{display:block;font-size:.85rem;font-weight:600;margin:15px 0}dialog input,dialog textarea{margin-top:6px}dialog .buttons{justify-content:flex-end}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:650px){.wrap{width:min(100% - 24px,1100px)}.detailGrid{grid-template-columns:1fr}.toolbar{align-items:flex-start}.toolbar h1{font-size:1.35rem}.toolbar .buttons{flex-wrap:wrap;justify-content:flex-end}.filters{align-items:stretch}.filters select{max-width:38%;font-size:.85rem}.panel{padding:15px}.addItem{flex-wrap:wrap}.addItem input:first-child{flex-basis:100%}.cards{grid-template-columns:1fr}.user span{max-width:110px}}
@media print{header,#app,#back,.toolbar .buttons,#itemForm,.items,#photosInput,.upload,#photos,.notice,hr{display:none!important}body{background:white}#detail{display:block!important}.detailGrid{display:block}#detail .panel:first-child{display:none}#detail .panel{border:0;box-shadow:none}#qr canvas{width:190px!important;height:190px!important}main{padding:0}#qrLink{font-size:10px}}
