@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#263e36;background:#fafbf8;font-synthesis:none;font-weight:400;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a,button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bf873d;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:44px;line-height:1.16;letter-spacing:-1.7px;font-weight:600}h2{font-size:22px;letter-spacing:-.6px}h3{font-size:15px}p{line-height:1.65}button svg{flex-shrink:0}.app{display:flex;min-height:100vh}.sidebar{width:235px;background:#f1f4ee;border-right:1px solid #e1e6dc;padding:37px 22px 22px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{text-decoration:none;display:flex;align-items:center;font-size:31px;font-weight:800;letter-spacing:-1.7px;gap:10px}.brand>span:first-child{background:#234d3f;color:#fff;width:38px;height:42px;border-radius:10px;display:grid;place-items:center}.brand-dot{color:#b98a44;margin-left:-11px}.workspace-label{font-size:8px;letter-spacing:1.8px;color:#7a877a;margin:20px 0 46px}.nav{display:flex;gap:12px;align-items:center;background:none;border:0;width:100%;padding:13px 12px;margin:5px 0;text-align:left;font-size:13px;border-radius:7px;color:#667367}.nav.active{background:#dfe8da;color:#254835;font-weight:700}.nav:hover{background:#e5ebdf}.nav-count{margin-left:auto;font-size:10px;background:#d6ab6b;border-radius:4px;padding:2px 5px}.sidebar-bottom{margin-top:auto}.library-note{border-top:1px solid #dce3d6;padding:23px 10px 5px;font-size:11px;font-weight:600}.library-note p{font-weight:400;color:#7c887a;margin:11px 0 22px;font-size:11px}.live-dot{display:inline-block;width:6px;height:6px;background:#729562;border-radius:100%;margin-right:6px}.staff-button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:13px;background:#fafbf8;border:1px solid #dbe3d5;border-radius:6px;font-size:12px}main{margin-left:235px;min-width:0;flex:1}.topbar{height:76px;border-bottom:1px solid #e8ebe3;display:flex;justify-content:space-between;align-items:center;padding:0 42px;font-size:11px;color:#8a9287}.topbar strong{font-weight:500;color:#445645;margin-left:7px}.demo-pill{font-size:9px;letter-spacing:1px;border:1px solid #e0e5d9;border-radius:20px;padding:7px 12px;color:#6f8068}.content{max-width:1440px;margin:auto;padding:32px 42px}.hero{background:#eaf0df;min-height:295px;border-radius:12px;padding:36px;display:flex;justify-content:space-between;overflow:hidden;position:relative}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:700;color:#748564;margin-bottom:17px}.hero h1{margin-bottom:15px}.hero p{color:#74816b;font-size:12px}.hero-link{background:none;border:0;padding:7px 0;display:flex;gap:15px;align-items:center;font-size:11px;font-weight:700}.book-art{position:relative;width:330px;min-width:280px;align-self:stretch}.art-orbit{position:absolute;width:245px;height:245px;border-radius:50%;background:#dce5cb;right:5px;top:-4px}.art-book{position:absolute;width:120px;height:175px;padding:26px 15px;font-family:Georgia,serif;font-size:20px;line-height:1.2;box-shadow:8px 12px 12px #31452625;border-radius:2px 5px 5px 2px;border-left:6px solid #ffffff22}.art-book span{display:block;font:5px sans-serif;letter-spacing:1px;margin-top:33px}.book-one{background:#214b3f;color:#eee8c9;top:7px;left:35px;transform:rotate(-13deg);z-index:1}.book-two{background:#bd7956;color:#fff0d3;top:45px;right:22px;transform:rotate(12deg)}.art-caption{position:absolute;bottom:0;right:15px;font-size:9px;color:#82906f}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:26px 0 32px}.stat{display:flex;gap:12px;align-items:center}.stat-icon{height:41px;width:41px;border:1px solid #e1e6da;border-radius:9px;display:grid;place-items:center;color:#69845e;background:#f5f7f0}.stat strong{display:block;font-size:22px;line-height:1.3;font-weight:500}.stat div>span{display:block;font-size:10px;color:#86907e}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:4px 0 22px}.section-heading h2{margin-bottom:7px}.section-heading p{font-size:11px;color:#8b9383;margin:0}.muted{color:#82907e;font-size:12px}.filters{display:flex;gap:12px;margin-bottom:24px}input,select{border:1px solid #dfe5d8;background:#fff;border-radius:6px;padding:11px;color:#42513e;min-width:0}select{font-size:11px}.search{display:flex;align-items:center;gap:9px;border:1px solid #dfe5d8;background:#fff;border-radius:6px;flex:1;padding:0 12px;color:#8a9883}.search input{width:100%;border:0;background:none;padding:12px 0;font-size:11px;outline-offset:0}.search button,.message button{background:none;border:0;display:flex;padding:0}.book-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.book-card{text-align:left;background:#fff;border:1px solid #e2e7da;border-radius:9px;padding:12px;transition:transform .15s,box-shadow .15s;min-width:0}.book-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #243f3710}.cover{height:190px;position:relative;border-radius:5px;overflow:hidden;padding:19px 19px 15px;border-left:7px solid #ffffff25;display:flex;flex-direction:column;color:#faf6e7}.sage{background:#567061}.clay{background:#b57557}.blue{background:#4a6876}.cover-category{text-transform:uppercase;font-size:7px;letter-spacing:1.4px;opacity:.75}.cover-title{font:21px/1.25 Georgia,serif;position:relative;z-index:1;margin-top:20px;max-width:95%}.cover-author{margin-top:auto;font-size:8px;opacity:.85}.cover-lines{position:absolute;right:-30px;bottom:15px;width:115px;height:115px;border:1px solid #ffffff20;border-radius:50%;box-shadow:0 0 0 10px #ffffff0a,0 0 0 20px #ffffff0a,0 0 0 30px #ffffff0a}.book-info{padding-top:14px}.badge{display:inline-flex;gap:5px;align-items:center;font-size:8px;border-radius:4px;padding:4px 6px;background:#edf3e8;color:#577547}.badge i{width:4px;height:4px;background:currentColor;border-radius:50%}.badge.borrowed{background:#f5ede0;color:#a48444}.badge.awaiting_shelving{background:#eaf0f5;color:#55748c}.badge.overdue{background:#f8e4df;color:#a34635}.book-info h3{margin:10px 0 5px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.book-info p{color:#899281;font-size:10px;margin:0 0 13px}.book-location{display:flex;align-items:center;gap:5px;border-top:1px solid #eef0e9;padding-top:11px;font-size:9px;color:#65825a}.book-location>span{display:flex;gap:4px;margin-left:auto;color:#9aa18f;font-size:8px}footer{display:flex;justify-content:space-between;border-top:1px solid #e6eade;margin-top:42px;padding:22px 0;font-size:10px;color:#798673}footer .muted{font-size:10px;margin-left:10px}.page-heading{margin:14px 0 30px}.page-heading p{color:#7b8973}.page-heading h1{font-size:36px}.panel,.floor-panel{background:#fff;border:1px solid #e1e7d9;border-radius:10px;padding:26px;margin-bottom:22px}.shelf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.shelf{border:1px solid #dbe3d2;border-radius:6px;background:#f5f8f0;padding:15px}.shelf>button{display:flex;flex-direction:column;gap:12px;background:none;border:0;text-align:left;width:100%}.shelf span{font-size:11px;color:#7a8970;line-height:1.5}.shelf a{display:inline-block;font-size:10px;margin:15px 6px 0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-size:10px;letter-spacing:.6px;color:#829175;font-weight:500}td,th{padding:16px 10px;border-bottom:1px solid #e8edde}td small{display:block;color:#8d967f;margin-top:7px}.row-actions{display:flex;align-items:center;gap:8px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:6px;padding:11px 17px;border:1px solid #d6e0cc;font-size:12px}.primary{background:#244c3e;color:#fff;border-color:#244c3e}.secondary{background:#f6f9f1}.text-button{border:0;background:none;color:#4e7446;font-size:11px;padding:9px 0}.message{background:#edf2e4;border:1px solid #d6e1c8;border-radius:7px;padding:14px 18px;margin-bottom:20px;display:flex;justify-content:space-between;gap:15px;font-size:12px}.message.error{background:#fbece7;border-color:#ebcec3;color:#923f2d}.message.success{color:#3c6b3c}.inline-error{color:#993f2a;font-size:12px}.empty{text-align:center;padding:55px 20px;color:#849176}.filter-chip{display:flex;gap:9px;align-items:center;background:#e6eddc;border:0;border-radius:20px;padding:7px 13px;margin-bottom:18px;font-size:11px}.scan-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}.scan-form{display:flex;flex-direction:column;gap:13px}.scan-form .primary{margin-top:15px}label:not(.search){display:flex;flex-direction:column;gap:8px;font-size:12px;margin:12px 0}.scan-feedback{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#839473}.scan-feedback h2{margin-top:25px;color:#345b42}.scan-feedback p{max-width:310px}.scan-feedback strong{font-size:26px;color:#345b42}.result-icon.misplaced{color:#bd7942}.camera{max-width:500px;margin:auto}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#19342980;z-index:10;display:flex;align-items:center;justify-content:center;padding:25px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:#fbfcf8;border:1px solid #d9e2cd;border-radius:14px;padding:35px;position:relative;width:470px;max-width:100%;max-height:90vh;overflow:auto;box-shadow:0 25px 100px #102b3655}.modal h2{font-size:27px;margin-bottom:12px}.modal p{color:#849276;font-size:12px}.close{position:absolute;right:15px;top:15px;border:0;background:none;color:#87927c}.modal form{border-top:1px solid #dfe6d6;padding-top:18px;margin-top:20px}.modal .primary{width:100%;margin-top:13px}.location-detail{display:flex;gap:16px;background:#edf2e4;border-radius:7px;padding:18px;margin:20px 0}.location-detail p{margin:8px 0 0}.location-detail strong{font-size:20px}@media(min-width:1500px){.cover{height:230px}.cover-title{font-size:26px}}@media(max-width:1150px){.sidebar{width:205px;padding:30px 15px}main{margin-left:205px}.content{padding:25px}.topbar{padding:0 25px}.book-grid{grid-template-columns:repeat(3,1fr)}.hero{padding:30px}.hero h1{font-size:36px}.book-art{min-width:230px;width:240px}.book-one{left:5px}.book-two{right:0}.stats{gap:10px}.stat-icon{display:none}.shelf-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.sidebar{position:static;width:100%;padding:15px 20px;display:block;border-bottom:1px solid #dce4d3}.app{display:block}.brand{font-size:25px}.brand>span:first-child{width:31px;height:33px}.workspace-label,.library-note{display:none}.sidebar nav{display:flex;overflow:auto;gap:7px;margin-top:14px}.nav{width:auto;white-space:nowrap;font-size:11px;padding:10px}.sidebar-bottom{position:absolute;top:14px;right:20px}.staff-button{padding:8px;font-size:10px;gap:9px}.sidebar-bottom .nav{max-width:190px;overflow:hidden}main{margin-left:0}.topbar{height:53px;padding:0 20px}.content{padding:20px}.hero{min-height:250px;padding:27px}.hero h1{font-size:32px}.book-art{min-width:180px;width:190px;transform:scale(.8);transform-origin:right center}.stats{grid-template-columns:repeat(4,1fr)}.stat strong{font-size:22px}.stat div>span{font-size:9px}.filters{flex-wrap:wrap;gap:8px}.search{flex-basis:100%}.filters select{flex:1}.scan-layout{grid-template-columns:1fr}.page-heading h1{font-size:30px}.shelf-grid{grid-template-columns:repeat(2,1fr)}footer{gap:20px}footer .muted{display:none}}@media(max-width:520px){.hero{padding:24px}.hero h1{font-size:31px}.hero p{max-width:200px}.book-art{display:none}.hero{min-height:260px}.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.book-card{padding:9px}.cover{height:180px;padding:15px 11px}.cover-title{font-size:19px}.cover-category{font-size:6px}.book-location>span{font-size:0}.stat div>span{max-width:60px;line-height:1.4}.section-heading h2{font-size:19px}.section-heading p{font-size:10px}.book-info h3{font-size:11px}.panel,.floor-panel{padding:18px}.modal{padding:27px}.shelf-grid{gap:9px}.shelf{padding:10px}.shelf strong{font-size:12px}.shelf span{font-size:10px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.art-book{font-size:17px}.art-caption{display:none}
