@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";:root{color:#15372d;font-synthesis:none;background:#edf5f1;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}button{cursor:pointer}h1,h2,p{margin-top:0}h1,h2{font-family:Libre Caslon Display,serif;font-weight:400}.admin-shell{min-height:100vh;display:flex}.sidebar{color:#fff;z-index:20;background:#0b3b2d;flex-direction:column;width:270px;padding:22px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #ffffff20;align-items:center;gap:12px;padding:0 8px 20px;display:flex}.brand img{object-fit:contain;background:#fff;border-radius:14px;width:56px;height:56px;padding:4px}.brand strong{letter-spacing:2px;font-size:22px;display:block}.brand small{color:#b7d4c9}.sidebar nav{scrollbar-width:thin;padding:15px 0;overflow:auto}.sidebar nav a{color:#cce0d8;border-radius:10px;align-items:center;gap:12px;padding:11px 13px;font-weight:600;text-decoration:none;display:flex}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#ffffff18}.sidebar nav i{text-align:center;color:#90d9ba;width:24px;font-style:normal}.nav-break{border-top:1px solid #ffffff12;margin-top:12px;padding-top:12px}.logout{color:#fff;background:0 0;border:1px solid #fff3;border-radius:10px;margin-top:auto;padding:11px}.admin-main{background:linear-gradient(#ffffffb8,#edf7f4e8),url(/clouds.png) 50%/cover fixed;flex-direction:column;width:calc(100% - 270px);min-width:0;min-height:100vh;margin-left:270px;display:flex}.topbar{z-index:10;background:#fffe;border-bottom:1px solid #cfddd7;align-items:center;gap:14px;height:74px;padding:0 28px;display:flex;position:sticky;top:0}.topbar small{color:#788b84;letter-spacing:1.5px;display:block}.topbar strong{font-size:18px}.admin-user{align-items:center;gap:10px;margin-left:auto;display:flex}.admin-user b{color:#fff;background:#17664d;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.menu-button{background:0 0;border:0;font-size:24px;display:none}.page-area{flex:1;padding:34px}.page{max-width:1500px;margin:auto}.page-heading{justify-content:space-between;align-items:flex-end;margin-bottom:25px;display:flex}.page-heading small,.panel-title small{letter-spacing:2px;color:#278363;font-weight:700}.page-heading h1{color:#103e30;margin:6px 0 5px;font-size:48px}.page-heading p{color:#6a7d76;margin:0;font-size:17px}.readonly{color:#28644f;background:#e0eee8;border:1px solid #c6dcd2;border-radius:20px;padding:8px 12px;font-size:13px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px;display:grid}.metric-grid article{color:#fff;background:linear-gradient(135deg,#164c3b,#29946b);border-radius:18px;padding:24px;box-shadow:0 14px 35px #174b3620}.metric-grid small{text-transform:uppercase;letter-spacing:1px;color:#cee5dc;display:block}.metric-grid strong{font-family:Libre Caslon Display;font-size:38px}.panel{background:#ffffffec;border:1px solid #d2dfd9;border-radius:20px;margin-bottom:22px;padding:26px;box-shadow:0 15px 40px #214c3a12}.panel.narrow{max-width:1000px}.panel-title h2{margin:4px 0 14px;font-size:30px}.mini-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.mini-grid div{background:#eef6f2;border-radius:12px;justify-content:space-between;padding:15px;display:flex}.mini-grid b{font-size:21px}.table-tools{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.table-tools input,.lookup input{background:#fbfdfc;border:1px solid #cbdad3;border-radius:10px;width:min(460px,100%);padding:11px 13px}.table-tools span{color:#71847c}.table-wrap{border:1px solid #d7e2dd;border-radius:12px;max-height:460px;overflow:auto}.table-wrap table{border-collapse:collapse;white-space:nowrap;width:100%}.table-wrap th{color:#5f786e;text-transform:uppercase;letter-spacing:1px;background:#e9f2ee;font-size:12px;position:sticky;top:0}.table-wrap th,.table-wrap td{text-align:left;border-bottom:1px solid #e1e9e5;padding:12px 14px}.table-wrap tr:hover td{background:#f7fbf9}.empty{text-align:center;color:#7d8d87;padding:30px}.loader{color:#557268;justify-content:center;align-items:center;gap:12px;min-height:180px;display:flex}.spinner{border:3px solid #c6ddd4;border-top-color:#1b7456;border-radius:50%;width:30px;height:30px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.message{border-radius:10px;margin:12px 0;padding:12px 15px}.message.error{color:#a9362d;background:#fff0ed}.message.info{color:#275c49;background:#e7f2ed}.lookup{align-items:end;gap:12px;display:flex}.lookup label{flex:1;gap:7px;font-weight:600;display:grid}.lookup button,.login-card button{color:#fff;background:#176b50;border:0;border-radius:10px;padding:12px 25px;font-weight:700}.member-card{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;display:grid}.member-card div{background:#f0f6f3;border-radius:12px;gap:4px;padding:14px;display:grid}.member-card small{color:#71837c}.login-page{background:linear-gradient(125deg,#083c2eee,#1a7053cc),url(/clouds.png) 50%/cover;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border-radius:28px;grid-template-columns:1.05fr .95fr;width:min(1000px,100%);display:grid;overflow:hidden;box-shadow:0 30px 80px #05251c55}.login-identity{color:#fff;background:linear-gradient(150deg,#103d30,#257d5d);padding:55px}.login-identity img{object-fit:contain;background:#fff;border-radius:22px;width:105px;height:105px;padding:7px}.login-identity span{letter-spacing:3px;margin-top:30px;font-size:12px;display:block}.login-identity h1{margin:10px 0;font-size:52px}.login-identity p{color:#d3e7df;line-height:1.7}.login-card form{flex-direction:column;justify-content:center;padding:55px;display:flex}.login-card form>small{letter-spacing:2px;color:#278363;font-weight:700}.login-card h2{margin:8px 0;font-size:38px}.login-card form>p{color:#75867f}.login-card label{gap:7px;margin:10px 0;font-weight:600;display:grid}.login-card input{border:1px solid #ccd9d3;border-radius:9px;padding:13px}.login-card button{margin-top:15px;padding:14px}footer{color:#71827b;background:#fff;border-top:1px solid #d3dfda;height:50px;padding:15px 34px;font-size:13px}footer span{float:right}.scrim{display:none}@media (width<=1050px){.sidebar{transition:all .25s;transform:translate(-100%)}.sidebar.open{transform:none}.admin-main{width:100%;margin-left:0}.menu-button{display:block}.scrim{z-index:15;background:#0005;border:0;display:block;position:fixed;inset:0}.metric-grid{grid-template-columns:repeat(2,1fr)}}.product-form{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.product-form label{color:#526961;gap:7px;font-weight:600;display:grid}.product-form input,.product-form select,.product-form textarea{color:#173a2f;background:#fbfdfc;border:1px solid #cadbd3;border-radius:9px;width:100%;padding:11px}.product-form textarea{resize:vertical;min-height:90px}.product-form .wide,.image-field{grid-column:span 2}.image-field img{object-fit:contain;background:#fff;border:1px solid #d3e0da;border-radius:12px;width:130px;height:130px}.form-actions{grid-column:span 2;justify-content:flex-end;align-items:center;gap:12px;display:flex}.form-actions button{color:#fff;background:#176b50;border:0;border-radius:10px;padding:13px 28px;font-weight:700}.form-actions button:disabled{opacity:.55;cursor:not-allowed}@media (width<=1100px){.product-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.page-area{padding:20px 14px}.topbar{padding:0 14px}.admin-user span{display:none}.page-heading{align-items:start;gap:10px}.page-heading h1{font-size:36px}.readonly{display:none}.metric-grid,.mini-grid,.member-card,.product-form{grid-template-columns:1fr}.panel{padding:16px}.lookup{flex-direction:column;align-items:stretch}.login-card{grid-template-columns:1fr}.login-identity{display:none}.login-card form{padding:36px 25px}.table-tools{flex-direction:column;align-items:stretch}.table-tools input{width:100%}.product-form .wide,.image-field,.form-actions{grid-column:span 1}.form-actions{flex-direction:column;align-items:stretch}footer span{display:none}}.compact-page{padding-top:0}.panel-title{justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;display:flex}.panel-title h2{margin-bottom:4px}.panel-title p{color:#72827c;margin:0}.primary-action,.master-form .modal-actions button:last-child{color:#fff;white-space:nowrap;background:#176b50;border:0;border-radius:10px;padding:11px 18px;font-weight:700}.table-edit{color:#165840;background:#e8f3ee;border:1px solid #99bbae;border-radius:7px;padding:6px 13px;font-weight:700}.table-edit:hover{color:#fff;background:#176b50}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:100;background:#09271e99;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border-radius:20px;width:min(570px,100%);max-height:90vh;padding:25px;overflow:auto;box-shadow:0 30px 80px #041c1455}.modal-head{border-bottom:1px solid #dbe5e0;justify-content:space-between;align-items:start;margin-bottom:18px;padding-bottom:14px;display:flex}.modal-head small{letter-spacing:2px;color:#278363;font-weight:700}.modal-head h2{margin:5px 0 0;font-size:32px}.modal-head>button{color:#1d4d3c;background:#edf5f1;border:0;border-radius:50%;width:36px;height:36px;font-size:24px}.master-form{gap:15px;display:grid}.master-form label{color:#526961;gap:7px;font-weight:600;display:grid}.master-form input,.master-form select,.master-form textarea{color:#173a2f;background:#fbfdfc;border:1px solid #cadbd3;border-radius:9px;width:100%;padding:11px}.master-form textarea{resize:vertical;min-height:80px}.tax-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.secondary-action{color:#315c4d;background:#fff;border:1px solid #c9d8d1;border-radius:10px;padding:11px 18px;font-weight:700}@media (width<=700px){.panel-title{flex-direction:column;align-items:flex-start}.primary-action{width:100%}.tax-grid{grid-template-columns:1fr}.modal-card{padding:18px}}.product-thumb{background:#fff;border:1px solid #d0ded8;border-radius:9px;width:58px;height:58px;display:block;overflow:hidden}.product-thumb img{object-fit:contain;width:100%;height:100%;padding:3px;transition:transform .2s;display:block}.product-thumb:hover img{transform:scale(1.08)}.operation-form{background:#f7fbf9;border:1px solid #d4e2dc;border-radius:15px;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px;padding:20px;display:grid}.operation-form label,.date-actions label{color:#526961;gap:6px;font-weight:600;display:grid}.operation-form input,.operation-form select,.date-actions input{color:#173a2f;background:#fff;border:1px solid #c8dad2;border-radius:9px;width:100%;padding:11px}.operation-form .wide{grid-column:span 2}.operation-form>button,.date-actions button,.consistency-actions button{color:#fff;background:#176b50;border:0;border-radius:9px;align-self:end;padding:12px 18px;font-weight:700}.date-actions{grid-template-columns:repeat(3,minmax(160px,1fr)) repeat(3,auto);align-items:end;gap:12px;margin:18px 0;display:grid}.warning-action{background:#9a5b20!important}.consistency-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.record-link{color:#176b50;font-weight:700}.operation-form input[readonly]{color:#60756d;background:#edf4f1}.action-feedback{z-index:1000;border:1px solid;grid-template-columns:1fr auto;align-items:center;gap:3px 14px;width:min(420px,100vw - 32px);display:grid;position:fixed;top:90px;right:24px;box-shadow:0 16px 45px #173b2f35}.action-feedback strong{grid-column:1;font-size:14px}.action-feedback span{grid-column:1;line-height:1.4}.action-feedback button{color:inherit;background:0 0;border:0;grid-area:1/2/3;align-self:start;padding:0 2px;font-size:24px;line-height:1}.action-feedback.error{background:#fff3f0}.action-feedback.info{background:#e8f6ef}@media (width<=900px){.operation-form,.date-actions{grid-template-columns:1fr 1fr}.operation-form .wide{grid-column:span 2}}@media (width<=600px){.operation-form,.date-actions{grid-template-columns:1fr}.operation-form .wide{grid-column:span 1}}.date-actions select{color:#173a2f;background:#fff;border:1px solid #c8dad2;border-radius:9px;width:100%;padding:11px}
