@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#182923;background:#f4f7f5;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{width:250px;background:#10231d;color:#dce8e2;position:fixed;inset:0 auto 0 0;padding:27px 17px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 34px}.brand strong{display:block;font:800 20px Manrope,sans-serif;letter-spacing:-.6px;color:#fff}.brand small{display:block;color:#8da79a;font-size:11px;margin-top:2px}.brand-mark{width:39px;height:39px;border-radius:12px;background:#c4f06d;color:#14251d;display:grid;place-items:center}.nav-label,.eyebrow{font-size:10px;letter-spacing:1.3px;font-weight:700;color:#829b8e}.nav-label{padding:0 12px 11px}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#b9cbc1;display:flex;align-items:center;gap:12px;padding:12px;border-radius:9px;text-align:left;font-size:13px;font-weight:600;width:100%}.nav-item:hover,.nav-item.active{background:#203b30;color:#d5f59a}.nav-item.active{box-shadow:inset 3px 0 #c4f06d}.nav-item em{font-style:normal;margin-left:auto;background:#8c442b;color:#fff;border-radius:20px;padding:2px 7px;font-size:10px}.sidebar-bottom{margin-top:auto}.privacy-note{border:1px solid #294238;border-radius:10px;padding:12px;display:flex;gap:10px;align-items:center;color:#c5e79a;font-size:11px;line-height:1.5;margin:0 2px 15px}.logout{color:#8ea69a}.main{margin-left:250px;min-height:100vh}.topbar{height:106px;background:#fff;border-bottom:1px solid #e8eeea;padding:23px 42px;display:flex;align-items:center;justify-content:space-between}.topbar h1{font:800 25px Manrope,sans-serif;margin:5px 0 0;letter-spacing:-.8px}.topbar .eyebrow{color:#93a39a}.user-chip{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600;color:#53645b}.avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#e6f2d6;color:#355329;font-weight:700}.content{padding:34px 42px 55px;max-width:1400px;margin:auto}.welcome-row,.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.welcome-row h2,.section-heading h2{font:800 21px Manrope,sans-serif;margin:0 0 5px;letter-spacing:-.5px}.welcome-row p,.section-heading p{color:#84938b;margin:0;font-size:13px}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#18382a;color:#fff;border:0;border-radius:8px;padding:11px 15px;font-weight:700;font-size:12px;box-shadow:0 2px 4px #18382a14}.primary-btn:hover{background:#28533d}.primary-btn:disabled{opacity:.6;cursor:wait}.primary-btn.full{width:100%;padding:13px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.stat-card{background:#fff;border:1px solid #e8eeea;border-radius:12px;padding:18px;display:flex;align-items:center;gap:13px}.stat-icon{width:39px;height:39px;border-radius:10px;display:grid;place-items:center}.stat-icon.green{background:#edf7e2;color:#638a37}.stat-icon.orange{background:#fff1e8;color:#bd7043}.stat-icon.blue{background:#e9f2fb;color:#5884b3}.stat-icon.purple{background:#f1edfa;color:#826bb0}.stat-card strong{display:block;font:800 23px Manrope}.stat-card span{display:block;color:#84938b;font-size:11px;margin-top:2px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.panel{background:#fff;border:1px solid #e8eeea;border-radius:12px;padding:20px;min-height:230px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.panel-head h3{font:700 14px Manrope;margin:0 0 4px}.panel-head p{font-size:11px;color:#96a29b;margin:0}.link-btn{border:0;background:none;color:#567b3c;font-size:11px;font-weight:700}.mini-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #f0f3f1}.mini-main{flex:1;min-width:0}.mini-main b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-main small{display:block;color:#96a29b;font-size:10px;margin-top:4px}.status-dot{width:9px;height:9px;border-radius:50%;background:#d99a48;flex:0 0 auto}.status-dot.done{background:#78a85b}.pill{display:inline-flex;background:#f0f3f1;color:#75847b;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:700;white-space:nowrap}.pill.high{background:#fff0eb;color:#c36c4d}.issue-mini{color:#ca8552}.toolbar{display:flex;justify-content:space-between;align-items:center;margin:18px 0 13px}.searchbox{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e4ebe6;border-radius:8px;padding:0 11px;width:min(350px,100%);color:#92a097}.searchbox input{border:0;outline:0;padding:10px 0;width:100%;font-size:12px}.muted{color:#94a199}.small{font-size:11px}.record-list{display:grid;gap:10px}.record-card{background:#fff;border:1px solid #e8eeea;border-radius:11px;padding:15px 16px;display:flex;gap:13px;align-items:center}.record-leading{width:35px;height:35px;border-radius:9px;background:#f0f6e9;color:#73964e;display:grid;place-items:center;flex:0 0 auto}.record-leading.warning{background:#fff3e9;color:#c17b4b}.record-leading.blue{background:#edf4fb;color:#628bb2}.record-body{flex:1;min-width:0}.record-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.record-title h3{font:700 13px Manrope;margin:0}.record-body>p{font-size:11px;color:#87958d;margin:6px 0}.record-meta{display:flex;align-items:center;gap:10px;color:#89978f;font-size:10px;margin-top:7px}.record-meta span{display:inline-flex;align-items:center;gap:4px}.visibility{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:#63874b;background:#f0f6e9;border-radius:20px;padding:4px 7px}.visibility.private{color:#6e67a5;background:#f1effa}.record-actions{display:flex;align-items:center;gap:7px}.record-actions select,.modal-form select{border:1px solid #e2e9e4;background:#fff;border-radius:7px;padding:8px;font-size:10px;color:#53645b}.icon-btn{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:8px;background:#f3f6f4;color:#728178}.icon-btn:hover{background:#e8efea}.icon-btn.danger{color:#b97969;background:transparent}.machine-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.machine-card{background:#fff;border:1px solid #e8eeea;border-radius:11px;padding:18px}.machine-icon{width:36px;height:36px;background:#edf5e6;color:#6d9147;border-radius:9px;display:grid;place-items:center}.machine-card h3{font:700 14px Manrope;margin:13px 0 4px}.machine-card p{font-size:11px;color:#8a9890;margin:0}.machine-card .desc{margin-top:9px;line-height:1.5}.text-danger{display:inline-flex;align-items:center;gap:5px;border:0;background:none;color:#b87969;font-size:10px;margin-top:16px;padding:0}.empty{padding:28px 12px;text-align:center;color:#98a49d;font-size:11px}.empty-icon{width:36px;height:36px;border-radius:50%;background:#f1f5f2;color:#94a69a;display:grid;place-items:center;margin:0 auto 8px}.notice{margin:15px 42px 0;background:#edf6e7;color:#486c37;border:1px solid #dcebd1;border-radius:8px;padding:10px 13px;font-size:12px;display:flex;justify-content:space-between}.notice button{border:0;background:none;color:inherit}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1b14a8;z-index:30;display:grid;place-items:center;padding:18px}.modal{width:min(540px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:15px;box-shadow:0 18px 60px #0003}.modal-head{padding:22px 24px 15px;display:flex;justify-content:space-between;border-bottom:1px solid #edf1ee}.modal-head h2{font:800 19px Manrope;margin:5px 0 0}.modal-form{padding:20px 24px 24px;display:grid;gap:14px}.modal-form label,.auth-form label{display:grid;gap:6px;color:#53645b;font-size:11px;font-weight:700}.modal-form input,.modal-form textarea,.modal-form select,.auth-form input{width:100%;border:1px solid #dfe7e1;border-radius:8px;padding:10px 11px;outline:none;background:#fff;color:#24372e;font-size:12px}.modal-form input:focus,.modal-form textarea:focus,.auth-form input:focus{border-color:#83a866;box-shadow:0 0 0 3px #83a8661c}.modal-form textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice-row{display:flex;gap:8px}.choice{display:flex;align-items:center;gap:7px;border:1px solid #e0e8e2;background:#fff;color:#66756c;padding:10px 12px;border-radius:8px;font-size:11px;font-weight:700}.choice.selected{border-color:#85a965;background:#f3f8ee;color:#4f7137}.field-hint{font-size:10px;color:#93a097;margin:-8px 0 0}.upload-field span{display:flex;align-items:center;gap:7px}.upload-field input{font-size:11px}.upload-field small{color:#65864d}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:7px}.secondary-btn{border:1px solid #e0e8e2;background:#fff;color:#63736a;border-radius:8px;padding:10px 14px;font-size:11px;font-weight:700}.auth-wrap{min-height:100vh;background:radial-gradient(ellipse at 15% 10%,#e4efd9 0,transparent 42%),#f4f7f5;display:grid;place-items:center;padding:24px}.auth-card{width:min(420px,100%);background:#fff;border:1px solid #e6ede8;border-radius:17px;padding:32px;box-shadow:0 16px 50px #1b392414}.brand.centered{justify-content:center;padding:0 0 28px}.auth-heading{text-align:center;margin-bottom:23px}.auth-heading h1,.auth-card>h1{font:800 23px Manrope;margin:8px 0}.auth-heading p,.auth-card>p{font-size:12px;color:#8b9991;line-height:1.6}.auth-form{display:grid;gap:14px}.auth-form input{padding:12px}.auth-switch{text-align:center;margin:20px 0 17px;color:#89978f;font-size:11px}.auth-switch button{border:0;background:none;color:#567b3c;font-weight:700}.auth-foot{display:flex;justify-content:center;align-items:center;gap:6px;border-top:1px solid #eff2f0;padding-top:16px;color:#9aa69f;font-size:10px}.error-box{background:#fff1ed;color:#b55f4c;border-radius:8px;padding:10px;font-size:11px;line-height:1.5}.setup-steps{background:#f4f7f5;border-radius:10px;padding:10px 14px;margin-top:16px}.setup-steps p{font-size:12px;color:#65756b;line-height:1.6}.setup-steps code,.auth-card code{background:#edf1ee;padding:2px 4px;border-radius:4px}.loading{min-height:100vh;display:grid;place-content:center;justify-items:center;color:#84938b;font-size:12px}.loading .brand-mark{margin:auto}.mobile-menu{display:none}@media(max-width:1000px){.stats-grid,.machine-grid{grid-template-columns:repeat(2,1fr)}.content{padding:28px 25px}.topbar{padding:20px 25px}}@media(max-width:700px){.sidebar{transform:translate(-100%);transition:transform .2s ease;box-shadow:12px 0 30px #0002}.sidebar.open{transform:translate(0)}.main{margin-left:0}.topbar{height:85px;padding:15px 17px;gap:10px}.topbar h1{font-size:21px}.mobile-menu{display:grid;flex:0 0 auto}.top-actions{margin-left:auto}.user-chip span:not(.avatar),.user-chip svg{display:none}.content{padding:24px 16px 40px}.welcome-row,.section-heading{align-items:flex-start;flex-direction:column}.welcome-row .primary-btn,.section-heading .primary-btn{width:100%}.stats-grid{gap:9px}.stat-card{padding:13px;gap:9px}.stat-icon{width:33px;height:33px}.stat-card strong{font-size:20px}.stat-card span{font-size:10px}.dashboard-grid,.machine-grid{grid-template-columns:1fr}.record-card{align-items:flex-start;padding:13px 11px;gap:9px}.record-actions{flex-direction:column;align-items:stretch}.record-actions select{max-width:105px}.record-actions .icon-btn{align-self:flex-end}.record-title h3{font-size:12px}.notice{margin:12px 16px 0}.modal-form{padding:17px}.modal-head{padding:18px 17px 13px}.auth-card{padding:25px 21px}.form-grid{grid-template-columns:1fr}.toolbar{gap:10px}.searchbox{width:100%}}
