:root{--pine:#183d35;--pine2:#285246;--sage:#e9f0e9;--gold:#c99c55;--ink:#24342c;--muted:#77847d;--line:#e5eae5;--canvas:#f6f8f5;--white:#fff;--red:#a85249}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:14px/1.5 Inter,system-ui,-apple-system,"Segoe UI",sans-serif}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.app{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{background:var(--pine);color:#eaf0eb;position:sticky;top:0;height:100vh;padding:22px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:5px 8px 27px}.brand-icon{width:37px;height:37px;border:1px solid #ffffff48;border-radius:12px;display:grid;place-items:center;color:#ead3a4;font-size:18px}.brand b{display:block;font:17px Georgia,serif}.brand small{display:block;color:#aebfb5;font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin-top:3px}.nav-title{font-size:10px;color:#91a99b;letter-spacing:.13em;padding:8px 11px}.nav-link{padding:10px 12px;border-radius:9px;color:#c8d4cc;display:flex;gap:12px;align-items:center;font-size:13px}.nav-link span{width:18px;color:#d2bc91;font-size:16px;text-align:center}.nav-link:hover,.nav-link.active{background:#ffffff16;color:white}.nav-link.active{box-shadow:inset 3px 0 var(--gold)}.side-bottom{margin-top:auto}.side-note{background:#ffffff0d;border:1px solid #ffffff20;border-radius:10px;padding:12px;color:#bdcbc2;font-size:11px;margin:14px 3px}.side-user{border-top:1px solid #ffffff20;padding:16px 5px 8px;display:flex;align-items:center;gap:9px}.side-user i,.avatar{font-style:normal;width:32px;height:32px;border-radius:50%;background:#dfebdf;color:var(--pine);font-weight:700;display:grid;place-items:center}.side-user b{display:block;font-size:11px}.side-user small{display:block;font-size:10px;color:#acbcb2}.logout{border:0;background:none;color:#c2cdc5;padding:8px 6px;font-size:11px}.main{min-width:0}.topbar{height:65px;background:#ffffffed;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:3}.topbar b{font-size:12px}.muted{color:var(--muted)}.top-user{font-size:11px;color:#748178}.content{max-width:1450px;margin:auto;padding:28px 30px 55px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.page-heading h1{font:30px/1.15 Georgia,serif;color:#214238;margin:0}.page-heading p{margin:6px 0 0;font-size:12px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.14em;color:#829187;margin:0 0 7px}.panel{background:white;border:1px solid var(--line);border-radius:13px;padding:19px;margin:0 0 16px;box-shadow:0 4px 16px #183d3505}.panel h2{font:18px Georgia,serif;color:#29463a;margin:0 0 14px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.panel-title h2{margin:0}.panel-title small,.panel small{color:#87938b;font-size:10px}.panel-title a{font-size:11px;color:#52745d;font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}.stats.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stats .panel{margin:0;padding:17px}.stats .panel small{display:block;font-weight:600}.stats .panel strong{display:block;font:25px Georgia,serif;color:var(--pine);margin:12px 0 3px}.stats .panel strong.small-strong{font:18px Georgia,serif}.stats .panel span{font-size:10px;color:#89948d}.stats .panel.accent{background:#fbf8f0}.stats .panel.accent strong{color:#805f2d}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-col .panel{margin:0}.list-row{display:flex;align-items:center;gap:10px;padding:11px 1px;border-top:1px solid #edf0ed}.list-icon{width:32px;height:32px;border-radius:10px;background:var(--sage);display:grid;place-items:center;color:#4d755a;font-style:normal}.list-row b{display:block;font-size:11px}.list-row small{display:block;color:#89948d;font-size:10px;margin-top:2px}.list-row>div{min-width:0;flex:1}.badge{display:inline-flex;align-items:center;border-radius:18px;background:#f5efe2;color:#846c3d;padding:4px 8px;font-size:10px;white-space:nowrap}.badge.green{background:#edf4ed;color:#50795a}.badge.gray{background:#f0f1ef;color:#7d8781}.amount{color:#405c49;font-weight:650;white-space:nowrap}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:650px}th{text-align:left;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#87928b;padding:10px;border-bottom:1px solid var(--line)}td{font-size:11px;padding:12px 10px;border-bottom:1px solid #eff1ef;vertical-align:middle}td b{font-size:11px}td small{display:block;color:#919c95;font-size:10px;margin-top:3px}tr:last-child td{border-bottom:0}.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--line);border-radius:8px;background:white;color:#43564b;padding:9px 13px;font-size:11px;font-weight:650;cursor:pointer}.button:hover{box-shadow:0 5px 14px #183d3510}.button.primary{background:var(--pine);border-color:var(--pine);color:white}.button.small{padding:6px 9px;font-size:10px}.button.full{width:100%;padding:12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid label,.date-filter label,.form-stack label{display:grid;gap:5px;font-size:10px;font-weight:650;color:#65736a}.form-grid input,.form-grid select,.form-grid textarea,.date-filter input,.form-stack input{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:white;color:#26372e;outline:none;font-size:12px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.form-stack input:focus{border-color:#75947d;box-shadow:0 0 0 3px #54785d15}.form-grid textarea{min-height:64px;resize:vertical}.wide{grid-column:1/-1}.form-submit{align-self:end}.account-box{background:#f6f8f5;border-radius:8px;padding:10px}.account-box b{font-size:11px}.account-box small{display:block;margin-top:3px}.searchbox{max-width:230px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;font-size:11px}.date-filter{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.date-filter label{min-width:170px}.alert{padding:11px 13px;border-radius:9px;margin:0 0 15px;font-size:11px}.alert.success{background:#edf5ef;color:#446b4d}.alert.error{background:#fbefed;color:#9d4e44}.empty{padding:25px;text-align:center;color:#87938b;font-size:11px}.login-body{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#e9efe8,#f7f8f5 55%,#eee8da)}.login-card{width:min(420px,100%);background:white;padding:30px;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 60px #183d3511}.login-brand{display:flex;gap:11px;align-items:center;margin-bottom:30px}.login-brand b{display:block;font:18px Georgia,serif;color:var(--pine)}.login-brand small{display:block;color:#87938b;font-size:10px;margin-top:3px}.login-card h1{font:27px Georgia,serif;color:var(--pine);margin:0}.login-card>.muted{font-size:12px;margin:7px 0 20px}.form-stack{display:grid;gap:13px}.login-help{border-top:1px solid var(--line);margin-top:20px;padding-top:14px;color:#849087;font-size:10px}.login-card .eyebrow{margin-bottom:8px}
@media(max-width:950px){.app{grid-template-columns:210px 1fr}.content{padding:23px 18px}.stats{grid-template-columns:repeat(2,1fr)}.form-grid.compact{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.app{display:block;padding-bottom:62px}.sidebar{position:static;height:auto;padding:12px 14px}.brand{padding:0}.brand-icon{width:32px;height:32px}.brand b{font-size:15px}.nav-title,.side-bottom{display:none}.sidebar .nav-link{display:inline-flex;padding:7px 9px;font-size:10px;margin-top:10px}.sidebar{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.topbar{height:52px;padding:0 15px}.top-user{display:none}.content{padding:19px 13px 32px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:26px}.page-heading>.button{width:100%}.stats,.stats.three{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.stats .panel{padding:13px}.stats .panel strong{font-size:21px}.two-col{grid-template-columns:1fr}.panel{padding:15px}.panel h2{font-size:16px}.form-grid,.form-grid.compact{grid-template-columns:1fr}.wide{grid-column:auto}.form-submit .button{width:100%}.date-filter>*{width:100%}.date-filter label{min-width:0}.panel-title{align-items:flex-start;flex-direction:column}.searchbox{max-width:none;width:100%}table{min-width:600px}.login-card{padding:24px}}
@media print{.sidebar,.topbar,.button,form{display:none!important}.app{display:block}.content{padding:0}.panel{box-shadow:none;break-inside:avoid}}
.inline-form{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.inline-form .button{padding:5px 7px}
