:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1c281b;background:#f5f7f3;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;background:#f5f7f3;color:#1c281b}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{display:flex;min-height:100vh;background:#f5f7f3}.sidebar{width:246px;flex:0 0 246px;background:#fff;border-right:1px solid #e3e9df;padding:18px 14px;display:flex;flex-direction:column;gap:16px;position:sticky;top:0;height:100vh;z-index:20}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:6px 8px 18px;border-bottom:1px solid #edf1ea}.sidebar-brand-mark{width:46px;height:34px;display:grid;place-items:center;overflow:hidden;flex:0 0 46px}.sidebar-brand-mark img{max-width:46px;max-height:34px;display:block;object-fit:contain}.sidebar-brand-fallback{font-weight:900;letter-spacing:-1px;font-family:Georgia,serif;color:#2f6b24;font-size:18px}.sidebar-brand-text{display:flex;flex-direction:column;gap:3px;min-width:0}.sidebar-brand-text strong{font-size:12px;letter-spacing:.14em;color:#243421}.sidebar-brand-text span{font-size:11px;color:#879283;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav{display:flex;flex-direction:column;gap:5px;overflow:auto}.nav-section-title{font-size:10px;letter-spacing:.12em;color:#98a393;font-weight:800;margin:11px 9px 3px}.nav-item{width:100%;display:flex;align-items:center;gap:11px;border:0;background:transparent;color:#495347;text-align:left;padding:11px;border-radius:10px;font-size:13px;transition:.15s ease;position:relative}.nav-item:hover{background:#f4f7f2;color:#244b1d}.nav-item.active{background:#eef5eb;color:#2f6b24;font-weight:700}.nav-icon{width:18px;display:grid;place-items:center;color:#7d8978;font-size:14px}.nav-item.active .nav-icon{color:#2f6b24}.nav-item-muted{color:#84907f}.nav-badge{margin-left:auto;background:#eef5eb;color:#2f6b24;font-size:9px;padding:3px 6px;border-radius:999px;font-weight:800}.sidebar-user-card{margin-top:auto;display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #e8eee4;border-radius:12px;background:#f9fbf8}.sidebar-user-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.sidebar-user-text strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-text small{font-size:10px;color:#82907c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-shell{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:68px;display:flex;justify-content:space-between;align-items:center;background:#fffffff5;border-bottom:1px solid #e6ebe3;padding:0 28px;position:sticky;top:0;z-index:15;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-left,.topbar-right{display:flex;align-items:center;gap:14px}.mobile-menu-button{display:none;color:#6e7b6b}.brand-context{display:flex;align-items:center;gap:12px}.brand-context-logo{display:flex;align-items:center;gap:8px;color:#2f6b24;font-weight:800;font-family:Georgia,serif}.brand-context-logo img{width:60px;height:30px;object-fit:contain;display:block}.brand-context-logo span{display:none}.brand-context-divider{width:1px;height:28px;background:#e0e6de}.brand-context-name{display:flex;flex-direction:column;gap:1px}.brand-context-name strong{font-size:13px;color:#263224}.brand-context-name span{font-size:10px;color:#879283}.topbar-scope{font-size:11px;color:#6b7768;background:#f4f7f2;border:1px solid #e1e9dd;padding:7px 10px;border-radius:999px}.online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4f972f;margin-right:6px;box-shadow:0 0 0 3px #edf6e9}.notification-button,.chevron-button,.icon-button,.ghost-button{border:0;background:transparent;color:#63705e;width:34px;height:34px;border-radius:9px;display:grid;place-items:center}.notification-button:hover,.chevron-button:hover,.icon-button:hover,.ghost-button:hover{background:#f0f4ee}.notification-button{position:relative;font-size:18px}.notification-dot{position:absolute;top:4px;right:4px;background:#d84d3e;color:#fff;font-size:8px;min-width:15px;height:15px;border-radius:999px;display:grid;place-items:center;font-weight:800}.topbar-user{display:flex;align-items:center;gap:8px}.topbar-user>div:last-child{display:flex;flex-direction:column;gap:1px;min-width:110px}.topbar-user strong{font-size:12px}.topbar-user span{font-size:10px;color:#879283}.avatar{width:32px;height:32px;border-radius:50%;background:#dfead8;color:#2f6b24;font-size:12px;font-weight:800;display:grid;place-items:center;border:1px solid #d2e0cb}.avatar-small{width:32px;height:32px}.content-area{padding:28px 30px 40px;max-width:1600px;width:100%;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}.eyebrow{font-size:9px;font-weight:800;letter-spacing:.16em;color:#6e8267;margin-bottom:5px}.page-heading h1,.panel h2{margin:0;color:#182318}.page-heading h1{font-size:28px;letter-spacing:-.02em}.page-heading p{margin:7px 0 0;color:#7b8778;font-size:13px}.page-actions{display:flex;align-items:center;gap:8px}.status-soft{background:#f1f7ef!important;border-color:#dcead5!important;color:#3b6d2f!important}.status{border:1px solid;border-radius:999px;padding:7px 11px;font-size:11px}.ghost-button{border:1px solid #e1e7de;background:#fff}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid #e3e9df;border-radius:14px;padding:14px 16px;margin-bottom:18px;box-shadow:0 8px 25px #374e2d0a}.filter-title{display:flex;align-items:center;gap:10px;min-width:180px}.filter-icon{width:32px;height:32px;border-radius:9px;background:#eef5eb;color:#2f6b24;display:grid;place-items:center}.filter-title strong{display:block;font-size:12px}.filter-title small{display:block;color:#8b9688;font-size:10px;margin-top:2px}.filter-controls{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;justify-content:flex-end;flex:1}.filter-controls label{min-width:150px;display:flex;flex-direction:column;gap:5px}.filter-controls label span{font-size:10px;color:#778474;font-weight:700}.filter-controls select{width:100%;background:#fbfcfa;border:1px solid #dde5d9;color:#30402e;border-radius:9px;padding:9px 10px;outline:none}.filter-controls select:focus{border-color:#77a16d;box-shadow:0 0 0 3px #49813a14}.filter-reset{height:37px;padding:0 11px;border:1px solid #e0e7dd;background:#fff;color:#64715f;border-radius:9px;font-size:11px}.filter-reset:hover{background:#f6f8f4}.alert-panel{padding:12px 15px;margin-bottom:16px}.alert-panel>div{display:flex;gap:10px;align-items:flex-start}.alert-icon{width:24px;height:24px;border-radius:50%;background:#fff1d9;color:#aa6a00;display:grid;place-items:center;font-weight:800;flex:0 0 24px}.alert-panel strong{font-size:12px}.alert-panel p{margin:4px 0 0;color:#7a8377;font-size:12px}.dashboard-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.card{background:#fff;border:1px solid #e3e9df;border-radius:14px;padding:18px;box-shadow:0 8px 25px #374e2d0a;position:relative;overflow:hidden}.card:after{content:"";position:absolute;right:-15px;top:-25px;width:85px;height:85px;border-radius:50%;background:#f1f7ef}.card strong{display:block;font-size:30px;line-height:1;color:#1f351d;position:relative;z-index:1}.card span{color:#7e8a7c;font-size:11px;margin-top:8px;display:block;position:relative;z-index:1}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(310px,.9fr);gap:18px;margin-bottom:18px}.dashboard-bottom-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px}.panel{background:#fff;border:1px solid #e3e9df;border-radius:14px;padding:18px;box-shadow:0 8px 25px #374e2d0a}.panel h2{font-size:16px;letter-spacing:-.01em}.panel-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}.panel-title-row.compact{margin-bottom:14px}.panel-title-row p{margin:4px 0 0;color:#889386;font-size:11px}.modern-actions{display:flex;align-items:center;gap:6px}.modern-actions button{border:1px solid #dfe6db;background:#fff;color:#52614f;padding:8px 10px;border-radius:9px;font-size:11px}.modern-actions button:hover{background:#f6f8f4}.modern-actions .primary{border-color:#2f6b24!important;color:#fff!important;background:#2f6b24!important}.soft-badge,.date-chip{background:#f4f7f2;border:1px solid #e1e9dd;border-radius:999px;padding:6px 9px;color:#6f7d6b;font-size:10px;font-weight:700}.schedule-panel .tablewrap{border:1px solid #edf1ea;border-radius:11px;overflow:auto}.schedule-table{width:100%;border-collapse:separate;border-spacing:0;font-size:11px;background:#fff}.schedule-table th,.schedule-table td{padding:10px 8px;border-bottom:1px solid #eef2ec;text-align:center;white-space:nowrap}.schedule-table th{font-size:9px;color:#869283;text-transform:uppercase;background:#fafcf9;position:sticky;top:0;z-index:1}.schedule-table th:first-child,.schedule-table td:first-child{text-align:left;position:sticky;left:0;background:#fff;z-index:2}.schedule-table th:first-child{background:#fafcf9}.employee-col{min-width:185px}.schedule-table tbody tr:hover td{background:#fbfdf9}.schedule-table .weekend-cell{background:#fafbf8}.schedule-table .weekend-cell:first-child{background:#fff}.schedule-table td{cursor:pointer}.schedule-table td:hover{background:#f3f8ef}.schedule-table small{display:block;margin-top:3px;color:#93a08e;font-size:9px}.empty-cell{font-size:16px;color:#bdc6b9}.pill{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:4px 6px;border-radius:999px;font-size:9px;font-weight:800;border:1px solid transparent}.schedule-vp,.chip-vp{background:#eaf4e6;color:#2f6b24;border-color:#d6e8d0}.schedule-ct,.chip-ct{background:#edf4fb;color:#2f67a4;border-color:#d9e7f4}.schedule-wfh,.chip-wfh{background:#f3eefb;color:#6b4aad;border-color:#e8ddf7}.schedule-off,.chip-off{background:#eff1ef;color:#667064;border-color:#e1e4e0}.chip-ot{background:#fff4df;color:#9a6400;border-color:#f4e2ba}.loading-state,.empty-state{padding:32px 14px;text-align:center;color:#879283;font-size:12px}.status-overview{display:grid;grid-template-columns:135px 1fr;gap:16px;align-items:center}.donut-ring{width:132px;height:132px;border-radius:50%;background:conic-gradient(#5d9d4b 0 61%,#5a8fba 61% 76%,#8d70c4 76% 87%,#c9cec7 87% 100%);display:grid;place-items:center}.donut-ring>div{width:90px;height:90px;border-radius:50%;background:#fff;display:grid;place-items:center;align-content:center}.donut-ring strong{font-size:24px}.donut-ring span{font-size:9px;color:#8a9587}.status-list{display:flex;flex-direction:column;gap:9px}.status-row{display:flex;align-items:center;gap:8px}.status-row>div{flex:1;display:flex;flex-direction:column;gap:1px}.status-row strong{font-size:10px}.status-row small{font-size:9px;color:#8c978a}.status-row>b{font-size:10px;color:#657360}.status-swatch{width:8px;height:8px;border-radius:3px}.swatch-vp{background:#5d9d4b}.swatch-ct{background:#5a8fba}.swatch-wfh{background:#8d70c4}.swatch-off{background:#c9cec7}.status-footnote{border-top:1px solid #eef2ec;margin-top:15px;padding-top:10px;color:#899486;font-size:9px;line-height:1.5}.today-list{display:flex;flex-direction:column}.today-row{display:grid;grid-template-columns:76px 44px minmax(0,1fr) 16px;align-items:center;gap:10px;border:0;border-top:1px solid #eef2ec;background:#fff;padding:11px 4px;text-align:left}.today-row:first-child{border-top:0}.today-row:hover{background:#fafcf9}.today-time{font-size:10px;font-weight:800;color:#3a4937}.today-time span{color:#8c978a;font-weight:600;margin-left:2px}.status-chip{display:inline-flex;width:max-content;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800}.today-content{min-width:0;display:flex;flex-direction:column;gap:2px}.today-content strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-content span{font-size:9px;color:#899486;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-arrow{color:#9ca69a;font-size:18px}.organization-panel .tree{max-height:220px;overflow:auto;padding-right:4px}.tree{line-height:1.9;font-size:11px;color:#52604f}.indent{margin-left:16px;border-left:1px solid #e2e9df;padding-left:12px}.tree small{color:#8d998a}.org-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;border-top:1px solid #edf1ea;margin-top:14px;padding-top:14px}.org-summary div{background:#f8faf7;border-radius:9px;padding:9px;text-align:center}.org-summary span{display:block;font-size:16px;font-weight:800;color:#355b2d}.org-summary small{font-size:8px;color:#8a9587}.week-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.week-title{margin-top:5px;font-weight:600;opacity:.8}.week-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.week-actions button,.modal-footer button,.confirm-actions button{border:1px solid #d9e2d5;background:#fff;border-radius:8px;padding:9px 12px;cursor:pointer}.week-actions button:hover,.modal-footer button:hover,.confirm-actions button:hover{background:#f6f8f4}.rule-alert{margin-top:18px;border-radius:10px;padding:14px 16px;border:1px solid #e0d08a;background:#fff8de}.rule-alert.danger{border-color:#e7a1a1;background:#ffeaea}.rule-alert-item{display:flex;flex-direction:column;gap:3px;margin-top:10px}.rule-alert-item small{opacity:.75}.exception-box{margin-top:12px;padding:14px 16px;border:1px solid #e4b84d;background:#fffaf0;border-radius:10px}.exception-box-title{font-weight:700;margin-bottom:7px}.exception-box textarea{width:100%;box-sizing:border-box;min-height:86px;padding:10px 11px;border:1px solid #d6dbe3;border-radius:8px;font:inherit;resize:vertical}.exception-box textarea:focus{outline:none;border-color:#6b8e60;box-shadow:0 0 0 3px #49813a1f}.exception-check{display:flex;align-items:flex-start;gap:9px;margin-top:10px;font-size:13px;line-height:1.45;cursor:pointer}.exception-check input{margin-top:3px}.required-star{color:#b42318;margin-left:3px}.field-help{font-size:11px;color:#667085;line-height:1.4}.logged-user-banner{grid-column:span 1;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:12px 14px;border:1px solid #dce2ea;border-radius:10px;background:#f8fafc}.logged-user-label{font-size:11px;color:#667085;text-transform:uppercase;letter-spacing:.04em}.logged-user-banner small{font-size:12px;color:#667085}.activity-type-picker{margin:0 0 12px}.activity-type-picker-label{font-weight:600;font-size:13px;margin-bottom:7px}.activity-type-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.activity-type-option{border:1px solid #d6dbe3;background:#fff;border-radius:9px;padding:9px 7px;display:flex;flex-direction:column;gap:2px;align-items:center;cursor:pointer;transition:.15s}.activity-type-option strong{font-size:13px}.activity-type-option span{font-size:10px;color:#667085}.activity-type-option:hover{border-color:#9fbe95;background:#f8fbf7}.activity-type-option.selected{border-color:#5f8f53;background:#eff6ec;box-shadow:0 0 0 2px #49813a14}.activity-type-note{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:9px 11px;background:#f8fafc;border:1px dashed #d6dbe3;border-radius:8px;min-height:40px}.activity-type-note span{font-weight:600;font-size:12px}.activity-type-note small{font-size:11px;color:#667085;line-height:1.4}@media(max-width:900px){.activity-type-options{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.activity-type-options{grid-template-columns:repeat(2,minmax(0,1fr))}.logged-user-banner{grid-column:auto}}.time-slots-box{grid-column:1 / -1;border:1px solid #dce2ea;border-radius:10px;padding:14px;background:#fbfcfe}.time-slots-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.time-slots-title{font-weight:700}.time-slot-row{display:grid;grid-template-columns:1fr auto 1fr auto;gap:8px;align-items:end;padding:10px 0;border-top:1px dashed #e3e7ee}.time-slot-row:first-of-type{border-top:0;padding-top:0}.time-slot-label{font-size:12px;font-weight:600;color:#667085;margin-bottom:5px}.time-slot-field{display:flex;flex-direction:column;gap:4px}.slot-separator{padding-bottom:10px;color:#98a2b3;font-weight:700}.add-slot-btn{border:1px dashed #9bb0c9;background:#f8fbff;color:#2f6b24;border-radius:8px;padding:8px 11px;font-weight:600;cursor:pointer}.add-slot-btn:hover{background:#eef5eb}.remove-slot-btn{border:1px solid #e0c4c2;background:#fff;color:#b42318;border-radius:8px;padding:9px 10px;cursor:pointer}.time-slots-summary{margin-top:10px;font-size:12px;color:#667085}.form-error-note{margin-top:6px;color:#b42318;font-size:12px}.activity-list{grid-column:1 / -1;display:flex;flex-direction:column;gap:12px}.activity-list-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.activity-list-title{font-weight:700}.activity-list-subtitle{font-size:12px;color:#667085;margin-top:3px}.activity-card{border:1px solid #dce2ea;border-radius:12px;padding:14px;background:#fff}.activity-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.activity-number{font-weight:700}.activity-remove{border:1px solid #e0c4c2;background:#fff;color:#b42318;border-radius:8px;padding:6px 9px;cursor:pointer}.activity-grid{display:grid;grid-template-columns:180px 1fr 1fr;gap:10px}.activity-content{margin-top:10px}.activity-inline{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.add-activity-btn{border:1px dashed #6b9660;background:#f7fbf4;color:#2f6b24;border-radius:8px;padding:9px 12px;font-weight:700;cursor:pointer}.activity-type-badge{font-size:11px;padding:4px 7px;border-radius:999px;background:#eff6ec;color:#2f6b24;font-weight:700}.activity-warning{margin-top:8px;font-size:12px;color:#b54708}@media(max-width:720px){.activity-grid,.activity-inline{grid-template-columns:1fr}}@media(max-width:720px){.time-slot-row{grid-template-columns:1fr 1fr auto}.slot-separator{display:none}.time-slot-row .time-slot-field:first-child{grid-column:1}.time-slot-row .time-slot-field:nth-child(3){grid-column:2}.time-slot-row .remove-slot-btn{grid-column:3;grid-row:1}}.rule-summary{display:flex;flex-direction:column;gap:10px}.rule-summary>div{display:flex;align-items:center;gap:8px}.rule-summary small{opacity:.7;line-height:1.5}.dot{width:10px;height:10px;border-radius:50%;display:inline-block;border:1px solid rgba(0,0,0,.12)}.dot.normal{background:#dcefdc}.dot.warning{background:#ffe3a0}.dot.danger{background:#ffc0c0}.modal-backdrop{position:fixed;inset:0;background:#18261766;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.modal-card{background:#fff;width:min(860px,100%);max-height:92vh;overflow:auto;border-radius:14px;box-shadow:0 18px 60px #0003;padding:20px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.modal-header h2{margin:0 0 4px}.modal-header button{border:0;background:transparent;font-size:22px;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field.wide{grid-column:1 / -1}.form-field input,.form-field select,.form-field textarea{width:100%;box-sizing:border-box;padding:10px 11px;border:1px solid #d6dbe3;border-radius:8px;font:inherit;background:#fff}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#77a16d;box-shadow:0 0 0 3px #49813a1f}.form-field span{font-weight:600;font-size:13px}.modal-footer{display:flex;align-items:center;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid #edf0f4}.modal-footer .spacer{flex:1}.primary{background:#2f6b24!important;color:#fff!important;border-color:#2f6b24!important}.danger-btn{background:#fff!important;color:#b3261e!important;border-color:#e4b4b0!important}.confirm-overlay{position:fixed;inset:0;background:#18261747;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1100}.confirm-card{background:#fff;max-width:460px;width:100%;border-radius:12px;padding:22px;box-shadow:0 16px 50px #0003}.confirm-card h3{margin-top:0}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}@media(max-width:1100px){.dashboard-main-grid,.dashboard-bottom-grid{grid-template-columns:1fr}.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.filter-bar{flex-direction:column;align-items:stretch}.filter-controls{justify-content:flex-start}}@media(max-width:900px){.sidebar{width:210px;flex-basis:210px}.topbar{padding:0 18px}.content-area{padding:22px 18px 32px}.topbar-scope,.brand-context-name{display:none}}@media(max-width:700px){.sidebar{display:none}.mobile-menu-button{display:block}.dashboard-kpis{grid-template-columns:1fr 1fr}.page-heading{flex-direction:column}.page-actions{width:100%;justify-content:flex-end}.filter-controls{display:grid;grid-template-columns:1fr 1fr}.filter-controls label{min-width:0}.filter-reset{width:100%}.status-overview{grid-template-columns:1fr}.donut-ring{margin:0 auto}}@media(max-width:520px){.content-area{padding:18px 12px 28px}.topbar{padding:0 12px}.topbar-user>div:last-child{display:none}.dashboard-kpis{grid-template-columns:1fr 1fr;gap:9px}.card{padding:14px}.card strong{font-size:24px}.filter-controls{grid-template-columns:1fr}.today-row{grid-template-columns:65px 38px minmax(0,1fr) 12px}.schedule-table th,.schedule-table td{padding:8px 6px}.employee-col{min-width:150px}}.login-screen{position:relative;min-height:100vh;width:100%;overflow:hidden;background:#193215 url(/assets/mesa-wallpaper.jpg) center center/cover no-repeat;display:flex;align-items:center;justify-content:center;padding:32px 22px}.login-screen-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#091b0680,#12310c57 42%,#0819068f);-webkit-backdrop-filter:saturate(.95);backdrop-filter:saturate(.95)}.login-screen-content{position:relative;z-index:1;width:min(470px,100%);display:flex;flex-direction:column;align-items:center}.login-brand-lockup{text-align:center;color:#fff;margin-bottom:22px;filter:drop-shadow(0 6px 22px rgba(0,0,0,.16))}.login-brand-image{width:220px;height:auto;margin:0 auto 11px;display:block;object-fit:contain;filter:none;background:#fffffff5;border-radius:10px;padding:8px 12px;box-shadow:0 10px 28px #00000026}.login-kicker{font-size:14px;letter-spacing:.22em;font-weight:800}.login-tagline{margin-top:6px;font-size:12px;color:#ffffffdb}.login-screen .login-card{width:100%;background:#fffffff7;border:1px solid rgba(255,255,255,.7);border-radius:20px;padding:30px 32px 27px;box-shadow:0 28px 80px #06180647;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.login-title{text-align:center;font-size:26px;font-weight:850;color:#1b2a18;letter-spacing:-.02em}.login-subtitle{text-align:center;color:#778173;font-size:12px;margin:8px 0 23px}.login-screen .form-field{gap:7px;margin-top:12px}.login-screen .form-field>span{font-size:11px;font-weight:700;color:#5f6a5d}.login-screen .input-with-icon input{height:44px;border-radius:10px;border:1px solid #dbe3d7;padding-left:36px;padding-right:66px;background:#fff;color:#1f2a1c}.login-screen .input-with-icon input:focus{border-color:#2f6b24;box-shadow:0 0 0 3px #2f6b241a}.login-screen .field-icon-button{top:4px;right:4px;height:36px;background:#f3f7f0;color:#46623e;border-radius:8px;font-size:10px}.login-screen .login-options{margin-top:12px}.login-screen .login-submit{height:46px;border-radius:10px;margin-top:18px;background:#2f6b24;box-shadow:0 8px 18px #2f6b242e}.login-screen .login-submit:hover{filter:brightness(1.03);transform:translateY(-1px)}.login-screen .login-security-note{margin-top:15px;padding-top:13px;border-top:1px solid #edf1ea}.login-screen .login-footer{position:static;margin-top:18px;color:#ffffffc2;font-size:10px;text-align:center}.login-screen .inline-message.danger{margin-top:13px}@media(max-width:600px){.login-screen{padding:24px 14px}.login-brand-image{width:185px}.login-kicker{font-size:12px}.login-screen .login-card{padding:25px 21px 23px}.login-title{font-size:23px}}.login-secondary-button{width:100%;margin-top:10px;padding:10px 12px;border:1px solid #d7dfd1;background:#fff;color:#2f6b24;border-radius:10px;font-weight:700;cursor:pointer}.login-secondary-button:hover{background:#f3f8f1}.inline-message.success{margin-top:12px;padding:10px 12px;border-radius:10px;background:#edf7ea;border:1px solid #cce3c5;color:#2f6b24;font-size:13px;line-height:1.45}.password-policy-hint{margin-top:7px;font-size:11px;line-height:1.45;color:#667085}.brand-logo{display:block;max-width:100%;height:auto;object-fit:contain}.brand-logo-compact{max-height:42px;width:auto}.brand-logo-fallback{font-weight:900;letter-spacing:-.03em;color:#fff;font-size:34px}.brand-logo-fallback span{font-weight:500}:root{--mesa-green:#2f6b24;--mesa-green-dark:#214d1a;--mesa-green-soft:#edf6e9;--mesa-ink:#172015;--mesa-muted:#73806f;--mesa-line:#dfe7dc}html,body,#root{min-height:100%}.login-screen{position:relative;min-height:100vh;width:100%;overflow:auto;padding:28px 20px 24px;background-color:#13280f;background-image:url(/assets/mesa-wallpaper.jpg);background-position:center;background-size:cover;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center}.login-screen-overlay{position:absolute;inset:0;background:radial-gradient(circle at 50% 26%,rgba(73,115,51,.18),transparent 36%),linear-gradient(180deg,#07180575,#12350c57 45%,#06160594);-webkit-backdrop-filter:blur(1.5px) saturate(.96);backdrop-filter:blur(1.5px) saturate(.96)}.login-screen-content{position:relative;z-index:2;width:min(500px,100%);display:flex;flex-direction:column;align-items:center}.login-brand-lockup{width:100%;text-align:center;color:#fff;margin-bottom:18px;filter:drop-shadow(0 8px 24px rgba(0,0,0,.24))}.login-brand-image{width:168px!important;height:auto!important;max-height:62px!important;object-fit:contain!important;display:block;margin:0 auto 12px!important;padding:8px 12px!important;border-radius:12px!important;background:#fffffff5!important;border:1px solid rgba(255,255,255,.76)!important;box-shadow:0 10px 30px #0000002e!important}.login-kicker{margin:0;font-size:13px;line-height:1.25;letter-spacing:.24em;font-weight:800;color:#fff}.login-tagline{margin-top:7px!important;font-size:13px!important;color:#ffffffdb!important;letter-spacing:.01em}.login-screen .login-card{width:100%;max-width:500px;padding:34px 36px 26px!important;margin:0!important;background:#fffffffb!important;border:1px solid rgba(255,255,255,.86)!important;border-radius:22px!important;box-shadow:0 30px 80px #0312034d,0 8px 30px #05140524!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.login-title{text-align:center;margin:0!important;color:var(--mesa-ink)!important;font-size:28px!important;line-height:1.2!important;font-weight:800!important;letter-spacing:-.03em!important}.login-subtitle{text-align:center;margin:8px 0 26px!important;color:#7d8879!important;font-size:13px!important;line-height:1.45}.login-screen .form-field{margin-top:16px!important;gap:7px!important}.login-screen .form-field>span{font-size:12px!important;line-height:1.3;color:#4e5d4b!important;font-weight:700!important}.login-screen .input-with-icon{position:relative;display:flex;align-items:center}.login-screen .input-with-icon>span{position:absolute;left:15px;top:50%;transform:translateY(-50%);z-index:2;width:20px;text-align:center;color:#72816e;font-size:16px;line-height:1;pointer-events:none}.login-screen .input-with-icon input{width:100%!important;height:50px!important;padding:0 50px 0 43px!important;border:1px solid #d8e1d4!important;border-radius:12px!important;outline:none!important;background:#fff!important;color:#1e2a1c!important;font-size:14px!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.login-screen .input-with-icon input::placeholder{color:#a4aea0}.login-screen .input-with-icon input:hover{border-color:#c3d2bf!important}.login-screen .input-with-icon input:focus{border-color:var(--mesa-green)!important;box-shadow:0 0 0 4px #2f6b241a!important;background:#fff!important}.login-screen .field-icon-button{position:absolute!important;right:7px!important;top:7px!important;width:42px!important;height:36px!important;padding:0!important;border:0!important;border-radius:9px!important;background:#f2f6f0!important;color:#557052!important;font-size:11px!important;font-weight:700!important;cursor:pointer;z-index:3}.login-screen .field-icon-button:hover{background:#e8f0e5!important;color:#31592b!important}.login-screen .login-options{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin-top:14px!important}.login-screen .login-options>label{display:flex!important;align-items:center!important;gap:8px!important;color:#5d6959!important;font-size:12px!important;cursor:pointer}.login-screen .login-options input[type=checkbox]{width:16px!important;height:16px!important;accent-color:var(--mesa-green);margin:0!important}.login-screen .login-options button{appearance:none!important;border:0!important;background:transparent!important;color:var(--mesa-green)!important;padding:0!important;margin:0!important;font:inherit!important;font-size:12px!important;font-weight:700!important;cursor:pointer}.login-screen .login-options button:hover{color:var(--mesa-green-dark)!important;text-decoration:underline}.login-screen .login-submit{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;width:100%!important;height:50px!important;margin-top:20px!important;padding:0 18px!important;border:0!important;border-radius:12px!important;background:linear-gradient(180deg,#3a7a2e,#2f6b24)!important;color:#fff!important;font-size:14px!important;font-weight:800!important;letter-spacing:.01em;box-shadow:0 10px 20px #2f6b242e!important;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.login-screen .login-submit:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 14px 24px #2f6b2438!important}.login-screen .login-submit:active:not(:disabled){transform:translateY(0)}.login-screen .login-submit:disabled{cursor:not-allowed;opacity:.58;box-shadow:none!important}.login-screen .inline-message{border-radius:12px!important;font-size:12px!important;line-height:1.45}.login-screen .inline-message.danger{margin-top:14px;padding:11px 12px;background:#fff2f0;color:#9f2f23;border:1px solid #f0c9c4}.login-screen .inline-message.success{background:#eff8ec;color:#2f6b24;border:1px solid #cfe5c8}.login-screen .login-security-note{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:18px!important;padding-top:15px!important;border-top:1px solid #edf1ea!important;color:#7c8779!important;font-size:11px!important;line-height:1.5;text-align:center}.login-screen .login-footer{position:static!important;margin-top:16px!important;color:#ffffffc2!important;font-size:10px!important;text-align:center;letter-spacing:.01em}.login-screen .login-secondary-button{width:100%!important;height:46px!important;margin-top:10px!important;padding:0 14px!important;border:1px solid #dbe5d7!important;border-radius:11px!important;background:#fff!important;color:var(--mesa-green)!important;font-size:13px!important;font-weight:700!important;cursor:pointer;transition:background .16s ease,border-color .16s ease}.login-screen .login-secondary-button:hover{background:#f5f9f3!important;border-color:#bfd3ba!important}@media(max-width:700px){.login-screen{padding:20px 14px 18px}.login-screen-content{width:min(460px,100%)}.login-brand-image{width:150px!important;max-height:58px!important}.login-kicker{font-size:11px;letter-spacing:.2em}.login-tagline{font-size:12px!important}.login-screen .login-card{padding:28px 22px 23px!important;border-radius:18px!important}.login-title{font-size:24px!important}}@media(max-width:480px){.login-screen .login-options{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}.login-screen .login-options button{align-self:flex-end}.login-screen .login-card{padding:25px 18px 21px!important}}
