:root{--ink:#1e2936;--muted:#75808c;--line:#e9edf0;--paper:#f7f8f6;--green:#35765f;--green-dark:#28634d;--green-soft:#eaf3ed;--nav:#182c27;--white:#fff;--red:#c8514b;--shadow:0 10px 30px rgba(32,55,47,.055);font-family:'DM Sans',Arial,sans-serif;color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);font-size:17px;line-height:1.55}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
.app-page{min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:254px;background:var(--nav);color:#eaf0ec;padding:25px 17px 16px;display:flex;flex-direction:column;z-index:5}
.brand{display:flex;align-items:center;gap:11px;color:#f5f8f5;font-family:Manrope,Arial,sans-serif;font-size:20px;font-weight:800;letter-spacing:-.6px}
.brand small{display:block;color:#a6bbb1;font:600 11px 'DM Sans',Arial,sans-serif;letter-spacing:1.6px;margin-top:1px}
.brand-mark{width:37px;height:37px;display:grid;place-items:center;border-radius:12px;background:#d3e2d6;color:#245640;font:800 24px Manrope,Arial,sans-serif}
.workspace-label{margin:47px 11px 12px;color:#849a8e;font-size:13px;font-weight:700;letter-spacing:1.4px}
.side-nav{display:grid;gap:5px}
.side-nav a{height:43px;display:flex;align-items:center;gap:12px;padding:0 11px;border-radius:8px;color:#adbbb4;font-size:16px;font-weight:500;transition:.18s}
.side-nav a:hover,.side-nav a.active{background:#294239;color:#fff}
.side-nav a.active{box-shadow:inset 3px 0 #91c6a9}
.nav-icon{width:19px;text-align:center;font-size:21px;color:#93ac9e}
.nav-count{margin-left:auto;background:#355648;color:#d4e4da;padding:1px 7px;border-radius:20px;font-size:13px}
.alert-count{background:#a44d44;color:white}
.sidebar-bottom{margin-top:auto}
.sidebar-help{padding:16px 14px 14px;border:1px solid #385347;background:#223a31;border-radius:10px;color:#e3ebe5}
.help-icon{color:#c3dfcb;font-size:21px}
.sidebar-help strong{display:block;margin:7px 0 4px;font-size:15px}
.sidebar-help p{margin:0;color:#a9bcb0;font-size:14px;line-height:1.5}
.sidebar-help a{display:block;margin-top:11px;color:#c5e0cd;font-size:14px;font-weight:700}
.sidebar-help a span{float:right}
.user-card{display:flex;align-items:center;gap:10px;padding:16px 4px 0;margin-top:15px;border-top:1px solid #33473e}
.avatar,.top-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#d2e0d5;color:#2c654e;font-size:16px;font-weight:700}
.user-meta{min-width:0;display:grid;line-height:1.35}
.user-meta strong{font-size:15px;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-meta small{color:#96aaa0;font-size:13px}
.logout-link{margin-left:auto;color:#a4b8ac;font-size:20px}
.main-content{min-height:100vh;margin-left:254px}
.topbar{height:67px;padding:0 40px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between}
.breadcrumb{color:#89938e;font-size:15px}.breadcrumb span{margin:0 9px;color:#c0c6c2}.breadcrumb strong{color:#38453f;font-weight:600}
.topbar-right{display:flex;align-items:center;gap:17px}.today-label{color:#78837d;font-size:14px}.top-avatar{width:31px;height:31px;background:#edf3ee}
.content-wrap{max-width:1440px;margin:0 auto;padding:33px 40px 24px}
.page-heading{margin:0 0 25px}.page-heading h1{margin:3px 0 6px;font:700 32px/1.3 Manrope,Arial,sans-serif;letter-spacing:-1.1px;color:#23352d}
.page-heading .muted{margin:0}
.eyebrow{margin:0;color:#7b9283;font-size:12px;font-weight:700;letter-spacing:1.45px}
.muted{color:var(--muted);font-size:15px}
.heading-row{display:flex;align-items:center;justify-content:space-between;gap:18px}
.wave{display:inline-block;font:21px Arial;color:#c3a15a;vertical-align:middle}
.button{min-height:39px;border:1px solid transparent;border-radius:7px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-size:15px;font-weight:700;transition:background .16s,transform .16s}
.button:hover{transform:translateY(-1px)}
.button-primary{background:var(--green);color:white;box-shadow:0 4px 10px #35765f20}
.button-primary:hover{background:var(--green-dark)}
.button-outline{background:#fff;border-color:#dbe4dd;color:#3b7057}
.button-wide{width:100%}
.button-small{min-height:29px;padding:0 10px;font-size:13px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}
.stat-card,.panel{background:#fff;border:1px solid #edf0ed;border-radius:10px;box-shadow:var(--shadow)}
.stat-card{padding:17px 19px 16px;min-height:129px}
.stat-top{display:flex;align-items:center;justify-content:space-between;color:#69756f;font-size:14px;font-weight:600}
.stat-card>strong{display:block;margin:8px 0 1px;color:#293d33;font:700 29px Manrope,Arial,sans-serif;letter-spacing:-1px}
.stat-card>small{color:#9aa39d;font-size:13px}
.stat-icon,.quick-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;font-size:19px}
.icon-lilac{background:#f0edfa;color:#8571bb}.icon-green{background:#e8f3eb;color:#4e8d66}.icon-blue{background:#eaf2f8;color:#5a8bb2}.icon-orange{background:#fbf0e5;color:#c88a4e}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.9fr);gap:17px}
.panel{overflow:hidden}
.reminders-panel,.quick-panel{padding:20px}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.panel-heading h2,.table-toolbar h2,.form-panel h2,.import-panel h2,.import-guide h2{margin:3px 0 0;font:700 20px Manrope,Arial,sans-serif;letter-spacing:-.4px;color:#293b32}
.text-link{color:#3f7a5e;font-size:14px;font-weight:700;white-space:nowrap}
.text-link span{margin-left:3px}
.reminder-list{margin-top:15px}
.reminder-item{display:flex;align-items:center;gap:11px;padding:12px 0;border-top:1px solid #f0f2f0}
.reminder-date{flex:none;width:39px;height:43px;border:1px solid #e8eee8;background:#f6faf6;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#3a7757}
.reminder-date strong{font:700 19px/1 Manrope,Arial,sans-serif}.reminder-date small{font-size:12px;text-transform:uppercase;margin-top:3px}
.date-late{border-color:#f1ddda;background:#fcf1ef;color:#bb554b}
.reminder-info{min-width:0;flex:1;display:grid}
.reminder-info strong{font-size:15px;color:#3b4941}
.reminder-info span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#929b95;font-size:13px}
.reminder-time{flex:none;text-align:right;font-size:13px;color:#65736b}
.reminder-time small{display:block;margin-top:3px;color:#a0a9a3;font-size:12px}
.icon-button{width:26px;height:26px;border:1px solid #e0e9e1;border-radius:50%;background:#fff;color:#508164;cursor:pointer}
.icon-button:hover{background:#edf5ee}
.status-pill{display:inline-block;border-radius:20px;padding:3px 8px;font-size:12px;font-weight:700;line-height:1.4}
.status-overdue{background:#fff0ee;color:#bd5147}.status-upcoming{background:#edf5ef;color:#447957}.status-completed{background:#f0f2f0;color:#7f8982}.status-available{background:#eaf4ed;color:#3f8057}.status-reserved{background:#fff3e5;color:#a86a29}.status-sold{background:#eeeefa;color:#6964a0}
.status-followup-pending{background:#f1f3f1;color:#66736a}.status-followup-contacted{background:#eaf2f8;color:#4f7897}.status-followup-interested{background:#edf5ef;color:#447957}.status-followup-site_visit{background:#f0edfa;color:#7566a7}.status-followup-negotiation{background:#fff3e5;color:#a86a29}.status-followup-completed{background:#eaf4ed;color:#3f8057}.status-followup-not_interested{background:#fff0ee;color:#bd5147}
.overdue-label{color:#bd5147}
.followup-update{position:relative;min-width:80px}
.followup-update summary{color:#3f7a5e;font-size:14px;font-weight:700;cursor:pointer;list-style:none}
.followup-update summary::-webkit-details-marker{display:none}
.followup-update summary:after{content:'⌄';display:inline-block;margin-left:5px;transition:transform .15s ease}
.followup-update[open] summary:after{transform:rotate(180deg)}
.followup-edit-form{position:static;width:340px;max-width:calc(100vw - 64px);min-height:300px;margin-top:10px;padding:17px;display:grid;align-content:start;gap:12px;background:#fff;border:1px solid #e5ebe5;border-radius:9px;box-shadow:0 8px 22px #23392d12;white-space:normal}
.followup-edit-form label{gap:5px;font-size:13px}
.followup-edit-form label>input,.followup-edit-form label>select{min-height:42px;padding:8px 10px;font-size:13px}
.followup-edit-form textarea{min-height:76px;padding:8px 10px;font-size:13px;resize:vertical}
.edit-hint{padding-top:9px;border-top:1px solid #eef0ed;color:#829187;font-size:12px}
.followup-edit-form .button{min-height:40px;justify-self:stretch}
.report-actions{display:flex;align-items:center;gap:9px}
.report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}
.report-summary-card{min-width:0;padding:14px 16px}
.report-summary-card span,.purchase-facts span{display:block;color:#87938b;font-size:12px}
.report-summary-card strong{display:block;margin-top:5px;color:#35473b;font-size:15px;overflow-wrap:anywhere}
.customer-notes{padding:16px 19px;margin-bottom:17px}
.customer-notes>strong,.purchase-detail>strong{color:#43554a;font-size:14px}
.customer-notes p,.purchase-detail p{margin:4px 0 0;color:#758078;font-size:13px;line-height:1.6}
.report-section{margin:17px 0}
.report-section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.report-section-heading h2{margin:3px 0 0;color:#293b32;font:700 20px Manrope,Arial,sans-serif}
.report-empty{padding:23px;margin-top:11px}
.report-empty strong{color:#46564c;font-size:15px}
.report-empty p{max-width:560px;margin:5px 0 13px;color:#87918b;font-size:13px}
.purchase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.purchase-card{padding:17px}
.purchase-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #edf0ed}
.purchase-card-heading h3{margin:3px 0 0;color:#33453a;font:700 17px Manrope,Arial,sans-serif;overflow-wrap:anywhere}
.purchase-date{flex:none;padding:4px 8px;border-radius:20px;background:#edf5ef;color:#477555;font-size:11px}
.purchase-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 10px;padding:14px 0}
.purchase-facts strong{display:block;margin-top:3px;color:#43564a;font-size:13px;overflow-wrap:anywhere}
.purchase-detail{padding-top:10px;margin-top:8px;border-top:1px solid #edf0ed}
.report-form{scroll-margin-top:20px}
.customer-report-link:hover .customer-name{color:#347653;text-decoration:underline}
.report-heading{margin-bottom:19px}
@media(max-width:850px){.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-grid{grid-template-columns:1fr}}
@media(max-width:560px){.report-actions{align-items:flex-end;flex-direction:column}.report-summary-card{padding:11px}.report-summary-card strong{font-size:13px}.purchase-card{padding:13px}.purchase-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.report-section-heading{align-items:flex-start}.report-section-heading h2{font-size:17px}}
@media print{body,.app-page{background:#fff}.sidebar,.topbar,.app-footer,.no-print{display:none!important}.main-content{margin:0}.content-wrap{max-width:none;padding:0}.report-heading{margin:0 0 14px}.report-summary-card,.panel,.purchase-card{box-shadow:none;border-color:#ddd;break-inside:avoid}.report-section-heading .button{display:none}.table-scroll{overflow:visible}table{white-space:normal}th,td{padding:7px!important;font-size:10px!important}.purchase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.quick-panel .panel-heading{margin-bottom:13px}
.quick-action{display:flex;align-items:center;gap:11px;padding:11px 0;border-top:1px solid #f0f2f0}
.quick-action>span:nth-child(2){min-width:0;display:grid;flex:1}
.quick-action strong{font-size:14px;color:#3c4942}
.quick-action small{color:#979f9a;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick-action>b{color:#9ba79f;font-size:17px;font-weight:400}
.quick-icon{width:34px;height:34px;font-size:18px}
.bottom-note{display:flex;align-items:center;gap:13px;padding:15px 19px;margin-top:17px;background:#f2f6f1;border-color:#e7eee6;box-shadow:none}
.note-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e3eee2;color:#598164}
.bottom-note strong{color:#45674f;font-size:14px}.bottom-note p{margin:2px 0 0;color:#829187;font-size:13px}
.bottom-note .text-link{margin-left:auto}
.empty-state{text-align:center;padding:35px 20px;color:#87918b}
.empty-icon{display:block;color:#91ac98;font-size:29px;margin-bottom:8px}
.empty-state strong{display:block;color:#46564c;font-size:15px}
.empty-state p{max-width:290px;margin:5px auto 10px;font-size:14px}
.notice{position:relative;padding:11px 39px 11px 14px;border:1px solid;border-radius:7px;margin:0 0 16px;font-size:15px}
.notice.success{background:#edf6ef;border-color:#d8e9dc;color:#3e704e}
.notice.error{background:#fff2ef;border-color:#f1d9d4;color:#a64d43}
.notice a{text-decoration:underline;font-weight:700}
.notice-close{position:absolute;right:11px;top:50%;transform:translateY(-50%);border:0;background:none;color:inherit;font-size:21px;cursor:pointer}
.table-panel{margin-bottom:18px}
.table-toolbar{padding:17px 19px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.table-toolbar h2{margin:0 0 3px;font-size:18px}
.table-toolbar .muted{font-size:13px}
.toolbar-dot{padding:0 5px;color:#c3c9c4}
.search-form{display:flex;width:min(270px,48%);height:34px;border:1px solid #e7ebe7;border-radius:6px;overflow:hidden}
.search-form input{min-width:0;flex:1;border:0;outline:0;padding:0 10px;color:#37463d;font-size:13px}
.search-form button{width:36px;border:0;background:#f5f8f5;color:#62796b;font-size:21px;cursor:pointer}
.table-scroll{overflow:auto}
table{width:100%;border-collapse:collapse;white-space:nowrap}
thead{background:#f8faf8}
th{height:35px;padding:0 14px;text-align:left;color:#89958d;font-size:12px;font-weight:700;letter-spacing:.7px}
td{height:57px;padding:9px 14px;border-top:1px solid #f0f2f0;color:#59665e;font-size:14px}
td:first-child,th:first-child{padding-left:19px}
td:last-child,th:last-child{padding-right:19px}
.customer-name{color:#384a3e;font-weight:600}
.cell-sub{display:block;margin-top:2px;color:#9aa39d;font-size:12px}
.plot-chip{padding:4px 7px;border-radius:5px;background:#eef5ef;color:#457657;font-size:13px;font-weight:700}
.table-empty{text-align:center;padding:24px;color:#8a958e;font-size:14px}
.form-panel{padding:20px;margin-top:17px;scroll-margin-top:20px}
.form-panel>.panel-heading{margin-bottom:18px}
.form-panel h2{font-size:19px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 17px}
label{display:grid;gap:6px;color:#56645b;font-size:13px;font-weight:600}
label em,.form-actions em{color:#bc6358;font-style:normal}
input,textarea,select{width:100%;border:1px solid #e1e7e2;border-radius:6px;background:#fff;color:#33433a;outline:none}
label>input,label>textarea,label>select{min-height:37px;padding:8px 10px;font-size:14px;font-weight:400}
label>textarea{resize:vertical}
input:focus,textarea:focus,select:focus{border-color:#85ad91;box-shadow:0 0 0 3px #79a9871c}
label>small{color:#99a29c;font-size:12px;font-weight:400}
.field-full{grid-column:1/-1}
.form-divider{display:flex;align-items:center;gap:10px;padding-top:5px;border-top:1px solid #eef0ed;color:#73847a;font-size:12px;font-weight:700;letter-spacing:.9px}
.form-divider small{color:#a1aaa4;font-size:12px;font-weight:400;letter-spacing:0}
.form-actions{display:flex;align-items:center;gap:12px;margin-top:2px}
.form-actions .muted{font-size:13px}
.inventory-summary{display:flex;gap:20px;align-items:center;margin:-7px 0 17px}
.summary-chip{display:flex;align-items:center;gap:7px;color:#768279;font-size:13px}
.summary-chip strong{margin-left:1px;color:#394a40}
.dot{width:7px;height:7px;border-radius:50%;display:inline-block}
.dot-available{background:#65a575}.dot-reserved{background:#d59a50}.dot-sold{background:#8682bc}.dot-overdue{background:#d66b5e}
.plot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.plot-card{padding:0;background:#fff;border:1px solid #edf0ed;border-radius:9px;box-shadow:var(--shadow);overflow:hidden}
.plot-photo,.plot-photo-placeholder{display:block;width:100%;height:174px;object-fit:cover;background:#edf3ed}
.plot-photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#729078}
.plot-photo-placeholder span{font-size:35px}
.plot-photo-placeholder small{font-size:10px;font-weight:700;letter-spacing:1.2px}
.plot-card-content{padding:15px 16px}
.plot-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}
.property-type-label{color:#65776b;font-size:12px;font-weight:700}
.plot-card-icon{width:30px;height:30px;border-radius:8px;background:#edf4ee;color:#4c805d;display:grid;place-items:center}
.plot-card .eyebrow{font-size:11px}
.plot-card h2{margin:3px 0 9px;font:700 19px Manrope,Arial,sans-serif;color:#314137}
.plot-address{margin:-3px 0 10px;color:#7e8b81;font-size:12px;line-height:1.5}
.plot-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px 0;border-top:1px solid #f0f2f0}
.plot-facts span{display:block;color:#929d94;font-size:11px}
.plot-facts strong{display:block;margin-top:2px;color:#4c5f51;font-size:13px;overflow-wrap:anywhere}
.plot-amenities{padding:9px 0;border-top:1px solid #f0f2f0}
.plot-amenities strong{color:#65776b;font-size:12px}
.plot-amenities p{margin:3px 0 0;color:#7e8b81;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.plot-details{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid #f0f2f0;border-bottom:1px solid #f0f2f0;color:#8a958d;font-size:13px}
.plot-details strong{color:#53695a;font-weight:700}
.assigned-customer{display:flex;align-items:center;gap:8px;margin-top:11px;min-height:30px}
.avatar-small{width:27px;height:27px;font-size:13px}
.assigned-customer>span:last-child{display:grid;line-height:1.3}
.assigned-customer small{color:#9aa49c;font-size:11px;letter-spacing:.6px}
.assigned-customer strong{color:#59675d;font-size:13px}
.unassigned{color:#a0a9a2;font-size:13px}
.plot-status-form{margin-top:11px;padding-top:10px;border-top:1px solid #f0f2f0}
.plot-edit{display:block;margin-top:11px;padding-top:10px;border-top:1px solid #f0f2f0}
.plot-edit summary{list-style:none;cursor:pointer}
.plot-edit summary::-webkit-details-marker{display:none}
.plot-edit-form{display:grid;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid #f0f2f0}
.checkbox-row{display:flex;align-items:center;gap:8px;color:#5d6f65;font-size:13px;font-weight:600}
.checkbox-row input{width:auto;min-height:14px}
.plot-grid .empty-state{grid-column:1/-1}
.legend{font-size:13px;color:#86918a}.legend .dot{margin-right:5px}
.import-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(350px,1.1fr);gap:17px;align-items:start}
.import-panel,.import-guide{padding:24px}
.import-panel{text-align:center}
.upload-mark{width:48px;height:48px;margin:2px auto 14px;border-radius:14px;background:#edf5ef;color:#4f8a63;display:grid;place-items:center;font-size:27px}
.import-panel h2{font-size:20px}
.import-panel>.muted{max-width:280px;margin:7px auto 17px}
.upload-form{display:grid;gap:11px}
.file-drop{min-height:106px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #cbd9ce;border-radius:8px;background:#fafcf9;color:#52675a;cursor:pointer}
.file-drop:hover{background:#f4f8f3;border-color:#94b29a}
.file-icon{font-size:23px;color:#6b9673}
.file-drop strong{font-size:14px}
.file-drop small{color:#9ba59d;font-size:12px;font-weight:400}
.file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.download-link{display:inline-block;margin-top:13px;color:#508061;font-size:13px;font-weight:700}
.import-guide h2{margin:3px 0 16px;font-size:20px}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:15px}
.steps li{display:flex;align-items:flex-start;gap:11px}
.steps li>span{flex:none;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#edf4ee;color:#4e7e5c;font-size:13px;font-weight:700}
.steps strong{font-size:14px;color:#48584d}
.steps p{margin:2px 0 0;color:#87928a;font-size:13px}
code{padding:1px 4px;border-radius:3px;background:#f1f3f0;color:#53705b;font-size:12px}
.column-list{margin-top:17px;padding:12px 13px;border-radius:7px;background:#f6f8f5}
.column-list strong{color:#637267;font-size:13px}
.column-list p{margin:5px 0 0;color:#849087;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.import-results{display:flex;gap:13px;margin:0 0 16px}
.result-count,.result-issues{padding:12px 15px;border:1px solid #dfeadf;border-radius:8px;background:#f2f8f1;color:#477151}
.result-count{display:grid;align-content:center;min-width:140px}
.result-count strong{font:700 25px Manrope,Arial,sans-serif}
.result-count span{font-size:13px}
.result-issues{flex:1;background:#fff7f1;border-color:#f1dfd1;color:#9c6545}
.result-issues strong{font-size:14px}
.result-issues ul{margin:7px 0 0;padding-left:17px;font-size:13px}
.result-issues small{display:block;margin-top:5px;font-size:12px}
.app-footer{display:flex;justify-content:space-between;margin-top:23px;color:#9ca59e;font-size:12px}
.footer-dot{margin:0 4px;color:#c4cac5}
.menu-toggle{display:none;border:0;background:transparent;color:#486256;font-size:23px}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(ellipse at 15% 15%,#edf4ed,transparent 45%),#f7f8f6}
.auth-card{width:min(100%,405px);padding:34px;background:#fff;border:1px solid #e9eee9;border-radius:13px;box-shadow:0 18px 55px #23392d12}
.brand-dark{color:#273b30}
.brand-dark small{color:#86978b}
.auth-card>.eyebrow{margin-top:34px}
.auth-card h1{margin:5px 0 7px;font:700 28px Manrope,Arial,sans-serif;letter-spacing:-.8px;color:#2b3c32}
.auth-card>.muted{margin:0 0 21px}
.stack-form{display:grid;gap:14px;margin-top:20px}
.stack-form label{font-size:14px}
.stack-form label>input{min-height:41px;font-size:15px}
.auth-foot{margin:21px 0 0;text-align:center;color:#8e9991;font-size:13px}
.auth-foot a{color:#397151;font-weight:700}
.auth-card .notice{font-size:13px}
@media(max-width:1100px){.content-wrap{padding:28px 25px}.topbar{padding:0 25px}.sidebar{width:224px}.main-content{margin-left:224px}.stat-grid{gap:10px}.stat-card{padding:14px}.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(250px,.9fr)}}
@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:transform .2s ease;width:254px;box-shadow:12px 0 30px #152b2120}.sidebar.open{transform:translateX(0)}.main-content{margin-left:0}.topbar{height:59px;padding:0 20px}.menu-toggle{display:block}.breadcrumb{margin-right:auto;margin-left:12px}.content-wrap{padding:25px 20px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.plot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.content-wrap{padding:20px 14px}.topbar{padding:0 14px}.today-label{display:none}.page-heading h1{font-size:28px}.heading-row{align-items:flex-start}.heading-row>.button{flex:none;margin-top:9px;padding:0 10px;font-size:13px}.heading-row .muted{max-width:300px}.stat-grid{gap:9px}.stat-card{min-height:115px;padding:12px}.stat-card>strong{font-size:26px}.stat-card>small{font-size:12px}.stat-top{font-size:13px}.stat-icon{width:27px;height:27px}.reminders-panel,.quick-panel{padding:15px}.reminder-item{gap:7px}.reminder-date{width:34px}.reminder-info span{max-width:125px}.reminder-time small{max-width:86px;overflow:hidden;text-overflow:ellipsis}.bottom-note{align-items:flex-start;flex-wrap:wrap;padding:13px}.bottom-note .text-link{margin-left:43px}.form-grid{grid-template-columns:1fr;gap:12px}.field-full{grid-column:auto}.form-divider{flex-wrap:wrap}.inventory-summary{gap:12px;flex-wrap:wrap}.plot-grid{grid-template-columns:1fr}.import-layout{grid-template-columns:1fr}.import-guide,.import-panel{padding:19px}.import-results{flex-direction:column}.result-count{min-width:0}.table-toolbar{align-items:flex-start;flex-direction:column}.search-form{width:100%}.table-panel{margin-left:-2px;margin-right:-2px}.app-footer{margin-top:18px}.auth-card{padding:26px 21px}}
