:root{color:#402e27;font-synthesis:none;text-rendering:optimizelegibility;background:#fbf7f3;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #bd7252}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Playfair Display,Georgia,serif;font-weight:500}.loading{color:#75503f;padding:3rem}.app-shell{min-height:100vh;display:flex}.sidebar{z-index:2;background:#fff;border-right:1px solid #efe2da;flex-direction:column;width:230px;padding:30px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-brand{align-items:center;gap:12px;margin-bottom:58px;display:flex}.brand-mark{color:#854a34;white-space:pre;border:1px solid #d8b8a6;border-radius:50%;place-content:center;width:63px;height:63px;font:20px Playfair Display,serif;display:grid}.brand-mark span{color:#bb8064;font-style:italic}.brand-mark.small{width:43px;height:43px;font-size:13px}.sidebar-brand strong{color:#552f24;font:18px Playfair Display,serif;display:block}.sidebar-brand small,.side-label{letter-spacing:1.2px;color:#8a7062;font-size:9px}.side-label{margin-bottom:14px;padding:0 12px}nav{gap:4px;display:grid}.nav-item{color:#76574a;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;padding:12px;font-size:12px;display:flex}.nav-item:hover,.nav-item.active{color:#783c29;background:#f8e9df}.nav-item.active{font-weight:700}.nav-icon{text-align:center;width:19px;font-size:17px}.sidebar-bottom{border-top:1px solid #eee;gap:12px;margin-top:auto;padding:20px 10px 0;display:grid}.role-tag{color:#825845;font-size:10px}.text-button{color:#85402b;text-align:left;background:0 0;border:0;padding:0;font-size:11px;font-weight:700}.main{width:calc(100% - 230px);margin-left:230px}.topbar{letter-spacing:1.4px;color:#856e62;background:#fff;border-bottom:1px solid #f1e7e0;justify-content:space-between;align-items:center;height:65px;padding:0 42px;font-size:9px;font-weight:700;display:flex}.topbar-right{letter-spacing:0;font-size:11px;font-weight:400}.topbar-right span{color:#c69579;margin-left:12px}.content{max-width:1390px;margin:auto;padding:30px 42px}.hero{background:#f3ded0;border-radius:10px;justify-content:space-between;align-items:center;min-height:235px;padding:38px 55px;display:flex;overflow:hidden}.eyebrow{letter-spacing:1.6px;font-weight:700;color:#85503d!important;font-size:9px!important}.hero h1{color:#5c2c20;margin:12px 0;font-size:42px}.hero h1 em{font-weight:400}.hero p:not(.eyebrow){color:#795343;max-width:450px;font-size:12px;line-height:1.8}.hero-button{color:#fff;background:#934622;border:0;border-radius:5px;margin-top:22px;padding:12px 16px;font-size:11px;font-weight:600}.hero-button span,.primary span{margin-left:16px}.hero-date{color:#934622;border:1px solid #cda58f;border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:165px;height:165px;display:flex;position:relative}.hero-date span{letter-spacing:1.3px;font-size:8px}.hero-date strong{font:55px/1.2 Playfair Display,serif}.hero-date i{color:#bb7b5d;font-size:30px;position:absolute;bottom:0;right:-20px}.section-heading{justify-content:space-between;align-items:end;margin:34px 0 16px;display:flex}.section-heading h2{margin-top:7px;font-size:25px}.stats{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.stat{text-align:left;color:inherit;background:#fff;border:1px solid #f1e7e0;border-radius:8px;align-items:center;gap:15px;padding:20px;display:flex}.stat:hover{border-color:#d5b5a4}.stat-icon{color:#9a583f;background:#f9eee8;border-radius:7px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.stat small,.amounts small{letter-spacing:.9px;color:#866f64;font-size:9px;font-weight:700}.stat strong{margin:3px 0;font:25px Playfair Display,serif;display:block}.stat p{color:#866f64;font-size:10px}.stat b{color:#c4957f;margin-left:auto;font-size:13px}.overview-grid{grid-template-columns:1.3fr 1fr;gap:15px;margin-top:22px;display:grid}.panel,.record{background:#fff;border:1px solid #f1e7e0;border-radius:8px;padding:23px}.panel-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.panel-header h3{margin-top:7px;font-size:21px}.preview-row{border-top:1px solid #f5ece6;align-items:center;gap:12px;padding:13px 0;display:flex}.check-circle{color:#bd907a;border:1px solid #d5b5a4;border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.preview-row strong,.detail-row strong{font-size:11px;font-weight:600;display:block}.preview-row small{color:#896f63;margin-top:5px;font-size:10px;display:block}.detail-row{border-top:1px solid #f5ece6;gap:15px;padding:17px 0;display:flex}.detail-row>span{color:#d7b6a4;font:italic 20px Playfair Display,serif}.detail-row small{letter-spacing:1px;color:#896e60;font-size:9px}.detail-row strong{margin-top:5px}.detail-row p{color:#866f64;margin-top:5px;font-size:10px}.little-flower{color:#cfac99;font-size:28px}.page-heading{justify-content:space-between;align-items:end;gap:20px;margin:12px 0 22px;display:flex}.page-heading h1{color:#593225;margin:8px 0;font-size:38px}.page-heading p:not(.eyebrow){color:#795849;font-size:12px;line-height:1.6}.primary{color:#fff;white-space:nowrap;background:#934622;border:0;border-radius:5px;padding:12px 17px;font-size:11px;font-weight:700}.primary:hover,.hero-button:hover{background:#70321f}.privacy-note,.form-hint{color:#745446;background:#faf2ec;border-radius:6px;margin-bottom:17px;padding:12px 15px;font-size:11px;line-height:1.5}.cards{gap:12px;display:grid}.record-top{justify-content:space-between;gap:15px;display:flex}.record-top p{color:#886a5b;margin-top:7px;font-size:11px}.record-actions{align-items:start;gap:12px;display:flex}.record-actions button{color:#934622;background:0 0;border:0;font-size:11px}.record-actions button:last-child{color:#a47972}.meta{color:#80665a;align-items:center;gap:12px;margin-top:10px;font-size:10px;display:flex}.status{color:#81452e;background:#f8e9df;border-radius:4px;padding:4px 7px}.record-notes{color:#785d50;white-space:pre-wrap;margin-top:13px;font-size:12px;line-height:1.6}.link{color:#80402c;margin-top:10px;font-size:11px;display:inline-block}.amounts{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px;display:grid}.amounts strong{margin-top:5px;font-size:14px;display:block}.budget-summary{margin-bottom:12px}.budget-summary .amounts{margin-top:0}.budget-summary p{color:#82675a;margin-top:12px;font-size:10px}.empty{color:#80675b;font-size:12px;line-height:1.6}.error{color:#8e4d44;background:#fff3f0;border:1px solid #eacac4;border-radius:6px;margin-bottom:16px;padding:12px 15px;font-size:12px}footer{text-align:center;color:#a08272;letter-spacing:1.3px;margin:55px 0 10px;font-size:9px}footer span{color:#dabbaa;padding:0 8px}.modal-wrap{z-index:5;background:#4a211930;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #eadbd0;border-radius:10px;width:min(560px,100%);max-height:90vh;padding:26px;overflow:auto;box-shadow:0 16px 70px #4a211929}.modal-head{justify-content:space-between;align-items:start;margin-bottom:23px;display:flex}.modal-head h2{margin-top:6px;font-size:26px}.close{color:#a08679;background:0 0;border:0;font-size:24px}.form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.form-grid label,.login-form label{color:#705044;gap:7px;font-size:11px;font-weight:700;display:grid}.full{grid-column:1/-1}input,textarea,select{color:#4d3028;background:#fff;border:1px solid #ead9cf;border-radius:5px;width:100%;padding:10px;font-size:12px}textarea{resize:vertical}.form-hint{margin:17px 0 0}.modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.secondary{color:#76594a;background:#fff;border:1px solid #ead9cf;border-radius:5px;padding:10px 16px;font-size:11px}.login-page{background:#f6e8df;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{text-align:center;background:#fff;border:1px solid #efdfd5;border-radius:10px;width:100%;max-width:425px;padding:45px 48px;box-shadow:0 12px 45px #9a4e2f14}.login-card .brand-mark{margin:0 auto 25px}.login-card h1{color:#633627;margin-top:12px;font-size:38px}.login-date{color:#995c43;margin-top:6px;font:italic 15px Playfair Display,serif}.divider{background:#f1e7e0;height:1px;margin:27px 0}.muted{color:#7a6155;font-size:12px;line-height:1.8}.login-form{text-align:left;gap:10px;margin-top:25px;display:grid}.login-form button{margin-top:8px}.login-foot{letter-spacing:1.2px;color:#ae9080;margin-top:30px;font-size:8px}.task-table-wrap{background:#fff;border:1px solid #eddfd6;border-radius:8px;overflow-x:auto}.task-table{border-collapse:collapse;table-layout:fixed;text-align:left;width:100%;min-width:810px}.task-table th,.task-table td{vertical-align:middle;border-bottom:1px solid #f1e7e0;padding:5px 8px}.task-table thead th{color:#854a34;letter-spacing:.6px;text-transform:uppercase;background:#faf0e9;padding:10px 8px;font-size:10px}.task-table tbody tr:last-child th,.task-table tbody tr:last-child td{border-bottom:0}.task-table tbody tr:hover{background:#fdf8f4}.task-table tbody th{font-size:12px;font-weight:600}.task-title{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.task-table select,.task-table input{color:#5b3327;background:#fff;border-color:#e5cec1;height:32px;padding:4px 6px;font-size:12px;font-weight:600}.task-actions{white-space:nowrap;align-items:center;gap:8px;display:flex}.task-actions button{color:#85402b;background:0 0;border:0;padding:4px 0;font-size:11px}.task-saving{color:#934622;font-size:10px}.task-filters{flex-wrap:wrap;align-items:end;gap:14px;margin:0 0 14px;display:flex}.task-filters label{color:#705044;gap:5px;font-size:11px;font-weight:700;display:grid}.task-filters select{min-width:155px;height:34px;padding:4px 8px}.task-filters>span{color:#745446;padding-bottom:9px;font-size:11px}.task-filters>button{padding-bottom:9px}.task-table thead th:first-child{width:28%}.task-table thead th:nth-child(2){width:16%}.task-table thead th:nth-child(3){width:12%}.task-table thead th:nth-child(4){width:16%}.task-table thead th:nth-child(5){width:15%}.task-table thead th:last-child{width:13%}.task-empty{padding:16px}.task-table{min-width:1040px}.task-actions button:nth-child(2){color:#85402b}.task-actions button:nth-child(3){color:#a47972}.collaboration-modal{width:min(720px,100%)}.collaboration-modal .chat-panel{border:0;padding:0}.chat-messages{max-height:300px;margin:12px 0;overflow:auto}.chat-message{border-bottom:1px solid #f1e7e0;padding:10px 0;font-size:12px}.chat-message strong{color:#743b29}.chat-message time{color:#82675a;margin-left:12px;font-size:10px}.chat-message p{white-space:pre-wrap;margin-top:5px;line-height:1.5}.chat-form,.attachment-form{gap:10px;margin-top:14px;display:grid}.chat-form label,.attachment-form label,.upload-label{color:#705044;gap:6px;font-size:11px;font-weight:700;display:grid}.chat-form button,.attachment-form button{justify-self:start}.attachment-list{flex-wrap:wrap;gap:12px;display:flex}.attachment{overflow-wrap:anywhere;align-content:start;gap:5px;max-width:180px;font-size:11px;display:grid}.attachment img{object-fit:contain;max-width:160px;max-height:120px}.attachment a{color:#80402c}.upload-label{margin-top:20px}.chat-indicator{color:#99462f;font-size:12px;line-height:1}.cards{gap:6px}.record{padding:12px 15px}.record h3{font-size:16px}.record .meta{margin-top:5px}.record .record-notes{margin-top:8px}.record .amounts{margin-top:10px}.record .link{margin-top:6px}.vendor-tracker{container-type:inline-size}.vendor-tracker-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.vendor-tracker .panel-header{flex-wrap:wrap;gap:12px;margin-bottom:8px}.vendor-tracker .vendor-category-list{grid-template-columns:1fr;column-gap:0}.vendor-tracker .vendor-category-row{border-left:1px solid #eadbd0;gap:7px;padding:5px 8px}.vendor-category-row label{overflow-wrap:anywhere;min-width:0}.category-modal{width:min(400px,100%)}@container (width>=440px){.vendor-tracker .vendor-category-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=660px){.vendor-tracker .vendor-category-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (width>=880px){.vendor-tracker .vendor-category-list{grid-template-columns:repeat(4,minmax(0,1fr))}}.vendor-list{background:#fff;border:1px solid #eddfd6;border-radius:8px}.vendor-row+.vendor-row{border-top:1px solid #f1e7e0}.vendor-row-main{grid-template-columns:minmax(120px,2fr) minmax(100px,1fr) minmax(100px,1fr) minmax(100px,1fr) auto;align-items:center;gap:10px;padding:8px 12px;font-size:11px;display:grid}.vendor-row-main>strong,.vendor-row-main>span{overflow-wrap:anywhere}.vendor-row-main .status{justify-self:start}.vendor-row-main .record-actions{flex-wrap:wrap;align-items:center;gap:8px}.vendor-row-details{border-top:1px solid #f1e7e0;padding:8px 12px 12px}.vendor-row-details .meta:empty{display:none}.vendor-row-details .vendor-contacts{margin-top:10px}@media (width<=1100px){.vendor-row-main{grid-template-columns:repeat(2,minmax(0,1fr))}.vendor-row-main .record-actions{grid-column:1/-1}}@media (width<=520px){.vendor-tracker-actions{justify-content:space-between;width:100%}}.vendor-contacts{flex-wrap:wrap;gap:12px 24px;margin:16px 0 0;display:flex}.vendor-contacts div{min-width:120px}.vendor-contacts dt{color:#705044;font-size:10px;font-weight:700}.vendor-contacts dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:12px}.vendor-tracker{margin-bottom:14px}.vendor-category-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:4px 20px;margin-top:12px;display:grid}.vendor-category-row{border-bottom:1px solid #f1e7e0;align-items:center;gap:10px;padding:8px 0;font-size:11px;display:flex}.vendor-category-row label{flex:1;align-items:center;gap:8px;font-weight:600;display:flex}.vendor-category-row input{accent-color:#934622;width:auto;margin:0}.vendor-category-row span{color:#745446}.vendor-category-form{flex-wrap:wrap;align-items:end;gap:10px;margin-top:16px;display:flex}.vendor-category-form label{color:#705044;gap:5px;font-size:11px;font-weight:700;display:grid}.vendor-financial{border-top:1px solid #f1e7e0;margin-top:16px;padding-top:14px}.vendor-financial-heading{justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.vendor-budget{border-top:1px solid #f1e7e0;margin-top:12px;padding-top:12px}.vendor-budget .amounts{margin:10px 0}.vendor-financial>.empty{margin-top:10px}.task-filters label.exclude-done{align-items:center;gap:7px;min-height:34px;display:flex}.task-filters .exclude-done input{accent-color:#934622;width:auto;margin:0}@media (width<=850px){.sidebar{width:100%;padding:15px;display:block;position:static}.sidebar-brand{margin-bottom:15px}.side-label{display:none}nav{display:flex;overflow-x:auto}.nav-item{white-space:nowrap}.sidebar-bottom{justify-content:space-between;margin-top:10px;padding:10px 0 0;display:flex}.app-shell{display:block}.main{width:100%;margin:0}.topbar{padding:0 20px}.content{padding:20px}.hero{padding:30px}.hero h1{font-size:32px}.hero-date{width:120px;height:120px}.hero-date strong{font-size:40px}.stats,.overview-grid{grid-template-columns:1fr}}@media (width<=520px){.hero-date,.topbar-right{display:none}.page-heading{flex-direction:column;align-items:start}.page-heading h1{font-size:30px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.amounts{grid-template-columns:1fr 1fr}.login-card{padding:35px 25px}}
