@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.grid{display:grid}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#173128;--muted:#6d7f77;--line:#dfe9e4;--soft:#f3f8f5;--green:#176b4d;--green-dark:#0e5038;--green-pale:#e7f5ed;--white:#fff;--danger:#b74242}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--soft);color:var(--ink);margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:18px}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px;outline:3px solid #176b4d2e}.boot{min-height:100dvh;color:var(--muted);justify-content:center;align-items:center;gap:14px;display:flex}.brand-mark{color:#fff;letter-spacing:-.04em;background:linear-gradient(145deg,#1c7a58,#0d4f37);border-radius:12px;place-items:center;width:40px;height:40px;font-weight:800;display:grid;box-shadow:0 8px 18px #0e503833}.auth-shell{background:#fff;grid-template-columns:minmax(320px,.82fr) minmax(420px,1.18fr);min-height:100dvh;display:grid}.auth-brand{color:#fff;background:linear-gradient(145deg,#0d4e37 0%,#176b4d 58%,#2c8d68 100%);flex-direction:column;justify-content:center;padding:clamp(44px,8vw,112px);display:flex;position:relative;overflow:hidden}.auth-brand:after{content:"";border:70px solid #ffffff12;border-radius:50%;width:430px;height:430px;position:absolute;bottom:-170px;right:-120px}.auth-brand .brand-mark{width:54px;height:54px;color:var(--green);box-shadow:none;background:#fff}.auth-brand>span{letter-spacing:-.06em;margin-top:20px;font-size:clamp(36px,5vw,60px);font-weight:780}.auth-brand>p{color:#ffffffc7;max-width:540px;margin:18px 0 38px;font-size:20px;line-height:1.6}.auth-points{flex-direction:column;gap:12px;display:flex}.auth-points span:before{content:"✓";color:#a9e7ca;margin-right:10px}.auth-card{border:1px solid var(--line);border-radius:24px;width:min(480px,100% - 48px);margin:auto;padding:42px;box-shadow:0 22px 70px #14392c17}.auth-card h1{letter-spacing:-.035em;margin:10px 0 8px;font-size:32px}.auth-card p{color:var(--muted);margin:0 0 28px;line-height:1.55}.auth-card form,.record-form{flex-direction:column;gap:18px;display:flex}.auth-card label,.record-form label{color:#3d5148;flex-direction:column;gap:8px;font-size:15px;font-weight:650;display:flex}.auth-card input,.record-form input,.record-form select,.record-form textarea,.table-toolbar input,.table-toolbar select,.material-picker select,.material-picker input{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #ceddd5;border-radius:10px;padding:10px 12px;transition:border .15s,box-shadow .15s}.auth-card input:focus,.record-form input:focus,.record-form select:focus,.record-form textarea:focus{border-color:#4b9b7d;outline:none;box-shadow:0 0 0 3px #176b4d17}.auth-card small{color:#87958f;margin-top:22px;line-height:1.5;display:block}.eyebrow{color:var(--green);letter-spacing:.14em;font-size:12px;font-weight:800}.primary-button,.secondary-button,.export-button,.filter-button{cursor:pointer;white-space:nowrap;border:0;border-radius:10px;min-height:40px;padding:0 16px;font-size:15px;font-weight:700}.primary-button{color:#fff;background:var(--green);box-shadow:0 6px 15px #176b4d29}.primary-button:hover{background:var(--green-dark)}.primary-button:disabled{cursor:wait;opacity:.6}.secondary-button{background:#fff;border:1px solid #cbdad3}.secondary-button:hover,.export-button:hover,.filter-button:hover{background:#f7fbf9;border-color:#9bbcad}.wide{width:100%}.form-error,.page-error{color:#a33131;background:#fff3f3;border:1px solid #f1c4c4;border-radius:10px;padding:11px 14px;font-size:15px}.app-shell{min-height:100dvh}.sidebar{z-index:30;scrollbar-width:thin;scrollbar-color:#bed1c8 transparent;background:#fbfdfc;border-right:1px solid #dce7e1;flex-direction:column;width:258px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand-row{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfdfcf5;border-bottom:1px solid #e8efeb;align-items:center;gap:12px;min-height:78px;padding:15px 18px;display:flex;position:sticky;top:0}.brand-row strong{letter-spacing:-.03em;font-size:21px;font-weight:850;display:block}.brand-row span{color:#8a9891;letter-spacing:.04em;text-transform:uppercase;margin-top:2px;font-size:12px;display:block}.mobile-close{background:0 0;border:0;margin-left:auto;font-size:26px;display:none}.sidebar nav{padding:12px 10px 92px}.nav-group{margin-top:18px}.nav-heading{color:#7d8f86;letter-spacing:.12em;text-transform:uppercase;padding:0 10px 8px;font-size:12px;font-weight:850}.nav-item{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;grid-template-columns:28px 1fr;align-items:center;gap:10px;width:100%;min-height:44px;margin:2px 0;padding:5px 9px;display:grid}.nav-item i{color:#52766a;background:#fff;border:1px solid #dae6e0;border-radius:8px;place-items:center;width:26px;height:26px;font-family:Segoe UI Symbol,Arial,sans-serif;font-size:16px;font-style:normal;font-weight:700;line-height:1;display:grid}.nav-item span{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:850;overflow:hidden}.nav-item:hover{background:#eff6f2}.nav-item.active{color:var(--green-dark);background:var(--green-pale);font-weight:750}.nav-item.active i{border-color:var(--green);color:#fff;background:var(--green)}.sidebar-user{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfdfcf7;border-top:1px solid #e1eae5;align-items:center;gap:10px;width:257px;padding:14px 16px;display:flex;position:fixed;bottom:0;left:0}.sidebar-user strong,.sidebar-user span{text-overflow:ellipsis;white-space:nowrap;max-width:160px;display:block;overflow:hidden}.sidebar-user strong{font-size:15px;font-weight:850}.sidebar-user span{color:var(--muted);margin-top:3px;font-size:13px;font-weight:650}.avatar{width:34px;height:34px;color:var(--green-dark);background:#dff1e7;border-radius:10px;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.avatar.small{width:32px;height:32px}.avatar.large{border-radius:18px;width:68px;height:68px;font-size:22px}.main-panel{min-height:100dvh;margin-left:258px}.topbar{z-index:20;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffffeb;border-bottom:1px solid #dfe8e3;justify-content:space-between;align-items:center;height:66px;padding:0 28px;display:flex;position:sticky;top:0}.menu-button{background:0 0;border:0;font-size:22px;display:none}.tenant-pill{color:#52675e;align-items:center;gap:8px;font-size:14px;font-weight:650;display:flex}.tenant-pill>span{background:#20a46e;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e5f7ee}.top-actions{align-items:center;gap:8px;display:flex}.icon-button,.logout-button{cursor:pointer;background:#fff;border:1px solid #d9e4de;border-radius:9px;height:36px;padding:0 12px;font-size:13px}.icon-button{color:#f19b34;width:36px;padding:0}.profile-button{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;padding:3px 9px 3px 4px;display:flex}.profile-button>span{font-size:13px;font-weight:700}.profile-button small{color:#8a9891;margin-top:2px;font-size:11px;font-weight:500;display:block}.content{max-width:1500px;margin:0 auto;padding:30px;position:relative}.page-heading{justify-content:space-between;align-items:flex-end;gap:22px;margin:0 0 24px;display:flex}.page-heading h1{letter-spacing:-.045em;margin:7px 0 5px;font-size:clamp(27px,3vw,36px)}.page-heading p{color:var(--muted);margin:0;font-size:15px}.toast{z-index:60;color:var(--green-dark);background:#effaf4;border:1px solid #afd7c3;border-radius:11px;padding:12px 16px;font-size:15px;font-weight:700;position:fixed;top:82px;right:26px;box-shadow:0 10px 28px #10473224}.page-error{justify-content:space-between;margin-bottom:18px;display:flex}.page-error button{cursor:pointer;background:0 0;border:0}.metric-grid{grid-template-columns:repeat(5,minmax(145px,1fr));gap:13px;display:grid}.metric-card{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:16px;min-height:142px;padding:18px;position:relative;overflow:hidden;box-shadow:0 4px 16px #143a2c09}.metric-card:after{content:"";opacity:.07;background:currentColor;border-radius:50%;width:74px;height:74px;position:absolute;top:-22px;right:-22px}.metric-card>span{color:var(--muted);font-size:13px;font-weight:700;display:block}.metric-card strong{color:var(--ink);letter-spacing:-.04em;margin:13px 0 18px;font-size:32px;display:block}.metric-card small{color:currentColor;font-size:12px;font-weight:700}.metric-card.green{color:#198257}.metric-card.red{color:#c94b4b}.metric-card.blue{color:#3f79b2}.metric-card.amber{color:#c07a20}.metric-card.purple{color:#7855ad}.dashboard-grid{grid-template-columns:1.65fr .75fr;gap:16px;margin-top:18px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:0 4px 18px #143a2c09}.panel-head{border-bottom:1px solid #e7eee9;justify-content:space-between;align-items:flex-start;padding:20px 22px;display:flex}.panel-head h2{margin:0 0 4px;font-size:17px}.panel-head p{color:var(--muted);margin:0;font-size:13px}.text-button{color:var(--green);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:750}.empty-state{text-align:center;align-content:center;place-items:center;min-height:240px;padding:40px;display:grid}.empty-icon{width:42px;height:42px;color:var(--green);background:#f0f8f4;border:1px dashed #aec8bb;border-radius:13px;place-items:center;font-size:24px;display:grid}.empty-state h3{margin:13px 0 4px;font-size:15px}.empty-state p{color:var(--muted);margin:0;font-size:13px}.timeline{padding:12px 22px 20px}.timeline>div{border-bottom:1px solid #edf2ef;grid-template-columns:12px 1fr auto;align-items:center;gap:12px;padding:13px 0;display:grid}.timeline i{background:var(--green);border-radius:50%;width:8px;height:8px}.timeline span{font-size:14px;font-weight:700}.timeline small{color:var(--muted);margin-top:3px;font-size:12px;font-weight:500;display:block}.timeline time{color:var(--muted);font-size:12px}.financial-card{padding-bottom:18px}.financial-card>strong{color:var(--green);letter-spacing:-.04em;padding:22px;font-size:30px;display:block}.financial-line{border-top:1px solid #edf2ef;justify-content:space-between;margin:0 22px;padding:12px 0;font-size:13px;display:flex}.financial-card .secondary-button{width:calc(100% - 44px);margin:17px 22px 0}.table-panel{overflow:hidden}.table-toolbar{border-bottom:1px solid #e4ece8;align-items:center;gap:8px;padding:13px;display:flex}.search-box{width:min(330px,33vw);position:relative}.search-box span{color:#8b9b94;position:absolute;top:10px;left:12px}.search-box input{padding-left:34px}.table-toolbar input,.table-toolbar select{border-radius:9px;min-height:38px;font-size:13px}.table-toolbar select{width:160px}.filter-button,.export-button{background:#fff;border:1px solid #d4e0da;min-height:38px;font-size:12px}.toolbar-spacer{flex:1}.table-wrap{overflow-x:auto}.loading-row{color:var(--muted);text-align:center;padding:70px}table{border-collapse:collapse;width:100%}th{color:#86958e;letter-spacing:.08em;text-align:left;text-transform:uppercase;background:#f8fbf9;padding:11px 16px;font-size:11px;font-weight:800}td{vertical-align:middle;border-top:1px solid #e9efec;padding:14px 16px;font-size:13px}tbody tr:hover{background:#fbfdfc}td strong,td small{max-width:320px;display:block}td small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11.5px;overflow:hidden}code{color:#45645a;font-family:Cascadia Code,Consolas,monospace;font-size:11.5px}.status{color:#23694f;white-space:nowrap;background:#e9f6ef;border-radius:99px;align-items:center;min-height:25px;padding:0 9px;font-size:11px;font-weight:750;display:inline-flex}.status.muted{color:#7d8b85;background:#f0f3f1}.row-actions{justify-content:flex-end;gap:5px;display:flex}.row-actions button{cursor:pointer;background:#fff;border:1px solid #d7e2dc;border-radius:7px;padding:6px 8px;font-size:11px;font-weight:700}.row-actions .danger{color:var(--danger)}.table-footer{color:#8d9b94;background:#fbfdfc;border-top:1px solid #e3ebe7;justify-content:space-between;padding:11px 16px;font-size:11px;display:flex}.calendar-heading-actions{align-items:center;gap:8px;display:flex}.calendar-heading-actions .export-button{cursor:pointer;border-radius:9px;padding:0 13px}.calendar-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.calendar-panel{overflow:hidden}.calendar-toolbar{border-bottom:1px solid #e3ece7;justify-content:space-between;align-items:center;gap:18px;min-height:76px;padding:15px 18px;display:flex}.month-nav{align-items:center;gap:14px;display:flex}.month-nav strong{letter-spacing:-.025em;text-align:center;text-transform:capitalize;min-width:170px;font-size:19px}.month-nav button,.today-button{cursor:pointer;background:#fff;border:1px solid #d7e3dd;border-radius:9px;height:36px;padding:0 12px}.month-nav button{width:36px;padding:0;font-size:24px}.month-nav button:hover,.today-button:hover{color:var(--green);background:#f4faf7;border-color:#86b7a1}.date-jump{align-items:center;gap:8px;display:flex}.date-jump label{color:var(--muted);align-items:center;gap:8px;font-size:11px;font-weight:750;display:flex}.date-jump input{height:36px;color:var(--ink);background:#fff;border:1px solid #d7e3dd;border-radius:9px;padding:0 9px;font-size:12px}.calendar-filters{background:#fbfdfc;border-bottom:1px solid #e4ece8;align-items:center;gap:8px;padding:10px 14px;display:flex}.calendar-filters .search-box{width:min(330px,48%)}.calendar-filters input,.calendar-filters select{background:#fff;border:1px solid #d8e3dd;border-radius:8px;min-height:36px;font-size:12px}.calendar-filters input{width:100%;padding:8px 10px 8px 34px}.calendar-filters select{width:160px;padding:0 9px}.calendar-weekdays{background:#f8fbf9;border-bottom:1px solid #e6ede9;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{color:#788b82;letter-spacing:.06em;text-align:center;text-transform:uppercase;padding:10px 6px;font-size:11px;font-weight:800}.calendar-grid{background:#e6eee9;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid}.calendar-day{cursor:pointer;background:#fff;min-width:0;min-height:105px;padding:7px;transition:background .15s,box-shadow .15s;position:relative;overflow:hidden}.calendar-day:hover{z-index:1;background:#f8fcfa;box-shadow:inset 0 0 0 1px #afd4c2}.calendar-day.outside{color:#a6b2ac;background:#fafcfb}.calendar-day.selected{z-index:2;background:#eef8f3;box-shadow:inset 0 0 0 2px #23835f}.calendar-day-top{justify-content:space-between;align-items:center;display:flex}.day-number,.day-add{cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.day-number{width:26px;height:26px;color:inherit;background:0 0;font-size:12px;font-weight:800}.calendar-day.today .day-number{color:#fff;background:var(--green)}.day-add{width:24px;height:24px;color:var(--green);opacity:0;background:#e8f5ee;font-size:17px;transition:opacity .15s}.calendar-day:hover .day-add,.calendar-day.selected .day-add{opacity:1}.day-events{flex-direction:column;gap:3px;min-width:0;margin-top:4px;display:flex}.calendar-event{cursor:pointer;text-align:left;text-overflow:ellipsis;white-space:nowrap;border:0;border-left:3px solid;border-radius:5px;width:100%;min-width:0;padding:4px 6px;font-size:10px;font-weight:700;display:block;overflow:hidden}.calendar-event span{opacity:.78;margin-right:4px}.calendar-event.green{color:#177250;background:#e7f6ee}.calendar-event.red{color:#b74343;background:#fbeaea}.calendar-event.blue{color:#326da5;background:#eaf2fa}.calendar-event.amber{color:#a76b1d;background:#fcf2df}.day-events small{color:var(--muted);padding-left:5px;font-size:9.5px}.calendar-legend{min-height:50px;color:var(--muted);border-top:1px solid #e6eee9;align-items:center;gap:14px;padding:10px 18px;font-size:10.5px;display:flex}.calendar-legend span{align-items:center;gap:5px;display:flex}.calendar-legend i{border-radius:50%;width:7px;height:7px}.calendar-legend i.green{background:#2c9a70}.calendar-legend i.red{background:#d25858}.calendar-legend i.blue{background:#4b86bd}.calendar-legend i.amber{background:#d69a42}.calendar-legend small{margin-left:auto;font-size:10px}.agenda-panel{position:sticky;top:88px;overflow:hidden}.agenda-panel>header{background:linear-gradient(145deg,#f3faf6,#fff);border-bottom:1px solid #e5ede9;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px;display:flex}.agenda-panel h2{text-transform:capitalize;margin:7px 0 4px;font-size:19px;line-height:1.25}.agenda-panel header p{color:var(--muted);margin:0;font-size:11.5px}.agenda-add{color:#fff;background:var(--green);cursor:pointer;border:0;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:24px;display:grid;box-shadow:0 7px 16px #176b4d33}.agenda-list{max-height:calc(100dvh - 230px);padding:11px;overflow-y:auto}.agenda-item{background:#fff;border:1px solid #e2ebe6;border-radius:11px;margin-bottom:9px;padding:13px 12px 12px 15px;position:relative;overflow:hidden}.agenda-item:before{content:"";width:4px;position:absolute;inset:0 auto 0 0}.agenda-item.green:before{background:#2c9a70}.agenda-item.red:before{background:#d25858}.agenda-item.blue:before{background:#4b86bd}.agenda-item.amber:before{background:#d69a42}.agenda-time{justify-content:space-between;align-items:center;gap:8px;display:flex}.agenda-time strong{color:var(--green-dark);font-size:13px}.agenda-time span{color:var(--muted);font-size:10px;font-weight:700}.agenda-content h3{margin:9px 0 6px;font-size:14px}.agenda-content p{color:var(--muted);margin:3px 0;font-size:11px;line-height:1.45}.agenda-content p b{color:#435b50}.agenda-content .status{margin-top:8px}.agenda-actions{border-top:1px solid #edf2ef;justify-content:flex-end;gap:5px;margin-top:10px;padding-top:9px;display:flex}.agenda-actions button{cursor:pointer;background:#fff;border:1px solid #d8e3dd;border-radius:6px;padding:5px 7px;font-size:10px;font-weight:750}.agenda-actions .danger{color:var(--danger)}.agenda-empty{text-align:center;align-content:center;place-items:center;min-height:300px;padding:28px 18px;display:grid}.agenda-empty>div{width:42px;height:42px;color:var(--green);background:#eaf6ef;border-radius:13px;place-items:center;font-size:23px;display:grid}.agenda-empty h3{margin:13px 0 5px;font-size:15px}.agenda-empty p{max-width:220px;color:var(--muted);margin:0 0 15px;font-size:11.5px;line-height:1.5}.audit-list{overflow:hidden}.audit-list article{border-bottom:1px solid #e8efeb;grid-template-columns:12px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:16px 20px;display:grid}.audit-dot{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #e7f5ed}.audit-list p{color:var(--muted);margin:4px 0 0;font-size:12px}.audit-list time{color:var(--muted);font-size:12px}.settings-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.settings-card{gap:18px;padding:24px;display:flex}.settings-icon{width:44px;height:44px;color:var(--green);background:var(--green-pale);border-radius:12px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.settings-card h2,.profile-summary h2{margin:2px 0 7px;font-size:17px}.settings-card p{max-width:540px;color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.55}.profile-summary{grid-column:1/-1;align-items:center;gap:18px;padding:24px;display:flex}.profile-summary p{color:var(--muted);margin:0 0 6px;font-size:13px}.profile-summary span,.profile-summary small{font-size:12px;display:block}.profile-summary small{color:var(--green);margin-top:5px}.backup-settings-card>div{flex:1;min-width:0}.backup-actions{flex-wrap:wrap;gap:9px;display:flex}.backup-actions .secondary-button{flex:160px;min-width:160px}.backup-settings-card small{color:var(--muted);margin-top:12px;font-size:12px;display:block}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a231a75;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;width:min(760px,100%);max-height:calc(100dvh - 48px);overflow-y:auto;box-shadow:0 30px 90px #051f154d}.modal>header{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-bottom:1px solid #e4ece8;justify-content:space-between;align-items:center;padding:19px 22px;display:flex;position:sticky;top:0}.modal h2{letter-spacing:-.03em;margin:5px 0 0;font-size:22px}.modal>header button{cursor:pointer;background:#fff;border:1px solid #dce5e0;border-radius:9px;width:34px;height:34px;font-size:22px}.record-form{padding:22px}.form-grid{grid-template-columns:repeat(2,1fr);gap:17px;display:grid}.record-form textarea{resize:vertical}.full-field{grid-column:1/-1}.check-field{border:1px solid #dce6e1;border-radius:10px;align-items:center;min-height:64px;padding:12px;flex-direction:row!important;display:flex!important}.check-field input{width:18px!important;min-height:18px!important}.check-field span strong,.check-field span small{display:block}.check-field span small{color:var(--muted);margin-top:3px;font-weight:400}.signature-wrap{position:relative}.signature-wrap canvas{touch-action:none;background:#fbfdfc;border:1px dashed #a9c3b6;border-radius:10px;width:100%;height:150px;display:block}.signature-wrap .text-button{background:#fff;border-radius:7px;padding:6px 9px;position:absolute;bottom:8px;right:10px}.file-drop{text-align:center;background:#f7fbf9;border:1px dashed #a8c5b7;border-radius:12px;align-items:center;padding:20px;position:relative}.file-drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.file-drop strong,.file-drop span,.file-drop em{display:block}.file-drop span{color:var(--muted);font-size:12px;font-weight:400}.file-drop em{color:var(--green);font-size:12px}.modal-actions{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-top:1px solid #e4ece8;justify-content:flex-end;gap:8px;margin:0 -22px -22px;padding:14px 22px;display:flex;position:sticky;bottom:-22px}.material-picker{background:#fff;border:1px solid #dbe7e1;border-radius:14px;padding:0;overflow:hidden}.material-picker-head{background:#f8fbf9;border-bottom:1px dashed #cdded5;grid-template-columns:1fr minmax(200px,280px);align-items:end;gap:18px;padding:16px;display:grid}.material-picker-head strong,.material-picker-head span{display:block}.material-picker-head span{color:var(--muted);margin-top:4px;font-size:11px}.receipt{padding:12px 16px 16px}.receipt-columns,.material-line{grid-template-columns:minmax(130px,1fr) 110px 72px 110px 28px;align-items:center;gap:9px;display:grid}.receipt-columns{color:#84948d;letter-spacing:.07em;text-transform:uppercase;padding:4px 10px 8px;font-size:10px;font-weight:800}.material-line{background:#fff;border:1px solid #e6eeea;border-radius:9px;margin-top:5px;padding:9px 10px}.material-line b{color:var(--green-dark);text-align:right}.material-line input{text-align:center;min-height:34px}.material-line button{cursor:pointer;background:0 0;border:0;font-size:20px}.receipt-totals{border-top:1px dashed #bdd2c7;width:min(360px,100%);margin:14px 0 0 auto;padding-top:10px}.receipt-totals>div{justify-content:space-between;padding:5px 2px;display:flex}.receipt-totals span,.receipt-totals strong{font-size:12.5px}.receipt-totals span{color:var(--muted)}.receipt-totals .grand-total{color:#fff;background:var(--green);border-radius:9px;margin-top:5px;padding:11px 12px}.receipt-totals .grand-total span,.receipt-totals .grand-total strong{color:#fff;font-size:15px}.sidebar{width:300px}.sidebar-user{width:299px}.main-panel{margin-left:300px}.brand-row strong{font-size:22px}.brand-row span{font-size:14px}.nav-heading{font-size:13px}.nav-item{min-height:48px}.nav-item span{font-size:18px;font-weight:850}.sidebar-user strong{font-size:16px}.sidebar-user span{font-size:14px}.topbar{height:72px}.tenant-pill{font-size:16px}.icon-button,.logout-button{font-size:15px}.profile-button>span{font-size:16px}.profile-button small,.eyebrow{font-size:13px}.page-heading h1{font-size:clamp(32px,3vw,40px)}.page-heading p{font-size:18px}.primary-button,.secondary-button,.export-button,.filter-button{font-size:16px}.metric-card>span{font-size:17px}.metric-card strong{font-size:44px}.metric-card small{font-size:14px}.panel-head h2{font-size:24px}.panel-head p{font-size:16px}.text-button{font-size:15px}.empty-state h3{font-size:20px}.empty-state p,.timeline span{font-size:17px}.timeline small,.timeline time{font-size:14px}.financial-card>strong{font-size:36px}.financial-line,.table-toolbar input,.table-toolbar select{font-size:16px}.filter-button,.export-button{font-size:15px}th{font-size:14px}td{font-size:16px}td strong{font-size:17px}td small,code,.status,.row-actions button,.table-footer{font-size:14px}.month-nav strong{font-size:21px}.date-jump label,.date-jump input,.calendar-filters input,.calendar-filters select{font-size:14px}.calendar-weekdays span{font-size:13px}.day-number{font-size:14px}.calendar-event,.day-events small,.calendar-legend,.calendar-legend small{font-size:11px}.agenda-panel h2{font-size:22px}.agenda-panel header p,.agenda-time strong{font-size:15px}.agenda-time span{font-size:13px}.agenda-content h3{font-size:18px}.agenda-content p{font-size:14px}.agenda-actions button{font-size:13px}.agenda-empty h3{font-size:19px}.agenda-empty p{font-size:15px}.audit-list strong{font-size:17px}.audit-list p,.audit-list time,.settings-icon{font-size:14px}.settings-card h2,.profile-summary h2{font-size:22px}.settings-card p,.profile-summary p{font-size:17px}.profile-summary span,.profile-summary small{font-size:15px}.modal h2{font-size:25px}.record-form label>span{font-size:16px}.file-drop span,.file-drop em{font-size:14px}.material-picker-head strong{font-size:17px}.material-picker-head span{font-size:14px}.receipt-columns{font-size:13px}.material-line strong,.material-line span,.material-line b,.receipt-totals span,.receipt-totals strong{font-size:15px}.receipt-totals .grand-total span,.receipt-totals .grand-total strong{font-size:18px}.auth-brand>span{font-size:clamp(40px,5vw,62px)}.auth-brand>p,.auth-points{font-size:20px}.auth-card h1{font-size:34px}.auth-card p{font-size:18px}.auth-card label,.record-form label,.auth-card input,.record-form input,.record-form select,.record-form textarea{font-size:16px}.auth-card small{font-size:14px}.sidebar-backdrop{display:none}@media (max-width:1180px){.metric-grid{grid-template-columns:repeat(3,1fr)}.table-toolbar{flex-wrap:wrap}.toolbar-spacer{display:none}.search-box{width:100%}.table-toolbar select{flex:1;width:auto}.calendar-layout{grid-template-columns:1fr}.agenda-panel{position:static}.agenda-list{max-height:none}.agenda-empty{min-height:220px}}@media (max-width:850px){.sidebar{transition:transform .2s;transform:translate(-100%);box-shadow:18px 0 45px #0a2c1f33}.sidebar.open{transform:translate(0)}.mobile-close{display:block}.sidebar-backdrop{z-index:25;background:#091f176b;border:0;display:block;position:fixed;inset:0}.main-panel{margin-left:0}.menu-button{display:block}.topbar{padding:0 16px}.content{padding:22px 16px}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.profile-summary{grid-column:auto}.profile-button>span,.tenant-pill{display:none}}@media (max-width:620px){.auth-shell{grid-template-columns:1fr}.auth-brand{min-height:280px;padding:38px 24px}.auth-brand>span{font-size:40px}.auth-brand>p{margin:12px 0 22px;font-size:16px}.auth-points{font-size:14px}.auth-card{z-index:2;width:calc(100% - 28px);margin:-26px auto 26px;padding:26px 20px}.auth-card h1{font-size:26px}.page-heading{flex-direction:column;align-items:flex-start}.page-heading .primary-button{width:100%}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric-card{min-height:125px;padding:14px}.metric-card strong{font-size:27px}.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.modal-backdrop{place-items:end center;padding:0}.modal{border-radius:18px 18px 0 0;max-height:94dvh}.table-toolbar .export-button{flex:1}.table-footer span:last-child{display:none}.logout-button{padding:0 8px}.top-actions{gap:4px}.material-picker-head{grid-template-columns:1fr}.receipt-columns{display:none}.material-line{grid-template-columns:1fr 84px 28px}.material-line>span{grid-column:1}.material-line>input{grid-area:1/2/span 2}.material-line>b{text-align:left;grid-column:1}.material-line>button{grid-area:1/3/span 2}.calendar-heading-actions{flex-wrap:wrap;width:100%}.calendar-heading-actions .export-button{flex:1}.calendar-heading-actions .primary-button{flex-basis:100%}.calendar-toolbar{flex-direction:column;align-items:stretch;gap:10px}.month-nav{justify-content:space-between}.month-nav strong{min-width:0;font-size:17px}.date-jump{justify-content:space-between}.date-jump label span{display:none}.calendar-filters{flex-direction:column;align-items:stretch}.calendar-filters .search-box,.calendar-filters select{width:100%}.calendar-weekdays span{padding:8px 2px;font-size:10px}.calendar-day{min-height:69px;padding:4px}.day-number{width:23px;height:23px;font-size:11px}.day-add{opacity:1;width:20px;height:20px;font-size:15px}.day-events{gap:3px;margin-top:2px}.calendar-event{border:0;border-radius:99px;height:5px;padding:0;font-size:0}.calendar-event span,.day-events small{display:none}.calendar-legend{flex-wrap:wrap;gap:8px 12px}.calendar-legend small{display:none}.agenda-panel>header{padding:17px}.agenda-list{padding:9px}}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-width:0;overflow-x:hidden}.main-panel,.content,.panel,.table-panel,.calendar-panel,.settings-card>div{min-width:0}img,canvas{max-width:100%}@media (max-width:1024px){.sidebar{width:min(300px,88vw);transition:transform .2s;transform:translate(-105%);box-shadow:18px 0 45px #0a2c1f33}.sidebar.open{transform:translate(0)}.sidebar-user{width:100%;padding-bottom:max(14px, env(safe-area-inset-bottom));margin-top:auto;position:sticky;bottom:0}.sidebar nav{padding-bottom:18px}.mobile-close,.menu-button{cursor:pointer;place-items:center;min-width:44px;min-height:44px;display:grid}.sidebar-backdrop{z-index:25;background:#091f176b;border:0;display:block;position:fixed;inset:0}.main-panel{margin-left:0}.topbar{min-height:calc(64px + env(safe-area-inset-top));height:auto;padding:env(safe-area-inset-top) 16px 0}.content{padding:22px 16px max(26px, env(safe-area-inset-bottom))}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.settings-grid,.calendar-layout{grid-template-columns:1fr}.profile-summary{grid-column:auto}.agenda-panel{position:static}.agenda-list{max-height:none}.profile-button>span,.tenant-pill{display:none}.icon-button,.logout-button,.profile-button{min-height:44px}}@media (max-width:720px){.content{padding:18px 12px max(24px, env(safe-area-inset-bottom))}.page-heading{flex-direction:column;align-items:stretch;gap:15px;margin-bottom:18px}.page-heading h1{overflow-wrap:anywhere;font-size:clamp(29px,9vw,36px);line-height:1.08}.page-heading p{font-size:16px;line-height:1.45}.page-heading .primary-button,.calendar-heading-actions{width:100%}.calendar-heading-actions{flex-wrap:wrap;align-items:stretch}.calendar-heading-actions .export-button{flex:120px}.calendar-heading-actions .primary-button{flex:1 0 100%}.primary-button,.secondary-button,.export-button,.filter-button{white-space:normal;min-height:44px;padding:9px 13px;line-height:1.2}.metric-grid{gap:9px}.metric-card{min-height:120px;padding:14px}.metric-card>span{font-size:15px;line-height:1.25}.metric-card strong{margin:9px 0 12px;font-size:30px}.metric-card small{font-size:13px}.panel{border-radius:13px}.panel-head{gap:12px;padding:17px 16px}.panel-head h2{font-size:21px}.panel-head p{font-size:15px}.timeline{padding:8px 16px 16px}.timeline>div{grid-template-columns:10px minmax(0,1fr);gap:9px}.timeline time{grid-column:2}.table-toolbar{align-items:stretch;padding:10px}.table-toolbar .search-box,.table-toolbar select{flex:1 0 100%;width:100%}.table-toolbar .export-button{flex:92px}.table-toolbar input,.table-toolbar select,.calendar-filters input,.calendar-filters select,.date-jump input{min-height:44px;font-size:16px}.table-wrap{overflow:visible}.table-wrap table,.table-wrap tbody,.table-wrap tr,.table-wrap td{width:100%;display:block}.table-wrap thead{display:none}.table-wrap tbody{gap:10px;padding:10px;display:grid}.table-wrap tr{background:#fff;border:1px solid #dfe9e4;border-radius:12px;padding:12px;overflow:hidden;box-shadow:0 3px 12px #143a2c09}.table-wrap td{overflow-wrap:anywhere;border:0;padding:5px 0;font-size:15px}.table-wrap td:first-child{padding-top:0;font-size:17px}.table-wrap td:last-child{border-top:1px solid #e7eee9;margin-top:7px;padding-top:10px}.table-wrap td strong,.table-wrap td small{white-space:normal;max-width:none}.row-actions{flex-wrap:wrap;justify-content:stretch}.row-actions button{flex:82px;min-height:44px;padding:8px 10px;font-size:14px}.table-footer{gap:10px;padding:11px 13px;font-size:13px}.table-footer span:last-child{display:none}.audit-list article{grid-template-columns:12px minmax(0,1fr);gap:10px;padding:15px}.audit-list time,.audit-list article>button{grid-column:2;justify-self:start}.audit-list article>button{min-height:44px}.settings-card,.profile-summary{padding:18px}.backup-actions{flex-direction:column;align-items:stretch}.backup-actions .secondary-button{flex:none;width:100%;min-width:0}.modal-backdrop{padding:env(safe-area-inset-top) 0 0;place-items:end center}.modal{width:100%;max-height:calc(100dvh - env(safe-area-inset-top));border-radius:18px 18px 0 0}.modal>header{padding:16px}.modal>header button{flex:none;width:44px;height:44px}.record-form{padding:16px}.form-grid{grid-template-columns:1fr;gap:14px}.full-field{grid-column:auto}.record-form input,.record-form select,.record-form textarea{min-width:0;min-height:46px;font-size:16px}.modal-actions{padding:12px 16px max(12px, env(safe-area-inset-bottom));margin:0 -16px -16px;bottom:-16px}.modal-actions button{flex:1}.material-picker-head{grid-template-columns:1fr}.receipt{padding:10px}.receipt-columns{display:none}.material-line{grid-template-columns:minmax(0,1fr) 78px 38px;gap:7px;padding:10px}.material-line>span{grid-column:1}.material-line>input{grid-area:1/2/span 2}.material-line>b{text-align:left;grid-column:1}.material-line>button{grid-area:1/3/span 2;min-height:44px}.calendar-toolbar{flex-direction:column;align-items:stretch;gap:10px;padding:13px}.month-nav,.date-jump{justify-content:space-between}.month-nav strong{min-width:0;font-size:18px}.month-nav button,.today-button{min-width:44px;height:44px}.date-jump label{flex:1}.date-jump label span{display:none}.date-jump input{flex:1}.calendar-filters{flex-direction:column;align-items:stretch}.calendar-filters .search-box,.calendar-filters select{width:100%}.calendar-weekdays span{letter-spacing:0;padding:8px 1px;font-size:10px}.calendar-day{min-height:70px;padding:4px}.day-number{width:25px;height:25px;font-size:12px}.day-add{opacity:1;width:24px;height:24px}.calendar-event{border:0;border-radius:99px;height:6px;padding:0;font-size:0}.calendar-event span,.day-events small{display:none}.calendar-legend{flex-wrap:wrap;gap:8px 12px;padding:10px 12px}.calendar-legend small{display:none}.agenda-actions{flex-wrap:wrap}.agenda-actions button{flex:1;min-height:44px;font-size:13px}.toast{top:calc(72px + env(safe-area-inset-top));text-align:center;left:12px;right:12px}}@media (max-width:420px){.topbar{padding-left:9px;padding-right:9px}.top-actions{gap:2px}.icon-button{display:none}.logout-button{padding:0 9px}.metric-card{min-height:112px;padding:12px}.metric-card>span{font-size:14px}.metric-card strong{font-size:27px}.settings-card{flex-direction:column;align-items:flex-start;gap:12px}.profile-summary{align-items:flex-start}.calendar-heading-actions .export-button{flex-basis:calc(50% - 4px)}.modal-actions{flex-direction:column-reverse}}@media (hover:none),(pointer:coarse){.day-add{opacity:1}.nav-item,.row-actions button,.agenda-actions button{touch-action:manipulation}}@media print{.sidebar,.topbar,.page-heading button,.table-toolbar,.row-actions,.toast,.page-error,.day-add,.agenda-add,.agenda-actions{display:none!important}.main-panel{margin:0}.content{max-width:none;padding:0}.panel{box-shadow:none;border:0}.table-wrap{overflow:visible}body{background:#fff}th,td{padding:8px}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
