@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,600&display=swap";.demo{display:none!important}.app-shell nav button{width:100%;padding:12px 14px;background:transparent;color:#9eb5b0;justify-content:flex-start;gap:13px;font-size:.87rem;text-align:left}.app-shell nav button svg{width:19px}.app-shell nav button.active{background:#ffffff12;color:#fff;border-left:3px solid #d49463}.app-shell nav button span{margin-left:auto;background:#b86638;color:#fff;border-radius:15px;padding:2px 7px}.page-panel{margin-top:38px;min-height:300px}.page-copy{padding:25px;color:#667671}.data-table{padding:8px 26px 26px}.data-table>div{display:grid;grid-template-columns:1.1fr 1.5fr 1fr auto;gap:18px;align-items:center;padding:16px 8px;border-bottom:1px solid #e8e5de;font-size:.83rem}.data-table span{color:#75817d}.role-pill{text-transform:uppercase;font-size:.68rem!important;font-weight:700;background:#e4eee9;color:#2d705d!important;padding:6px 9px}.loading>div{text-align:center;display:grid;gap:12px}.loading p{color:#eab7a7;max-width:520px}.loading button{margin:auto}.cancel-request{grid-column:2/5;justify-self:end;background:transparent;color:#a65345;padding:4px 0;font-size:.72rem;text-decoration:underline}.status.cancellation_pending{background:#f1e4ef;color:#75466f}.calendar-actions{display:flex;gap:5px}.calendar-actions button{padding:7px 10px;background:#e8ebe7;color:#40534d}.calendar-actions svg{width:17px}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.weekdays b{padding:12px;text-align:center;color:#74817d;font-size:.72rem;text-transform:uppercase}.calendar-day{min-height:118px;border-top:1px solid #e3e1da;border-right:1px solid #e3e1da;padding:8px;font-size:.78rem}.calendar-day.muted{background:#f7f6f1;color:#afb5b2}.calendar-event{margin-top:6px;padding:6px 7px;background:#dcebe5;color:#245a50;font-weight:700;border-left:3px solid #337466}.calendar-event small{display:block;font-weight:400;font-size:.65rem}.calendar-panel{overflow:hidden}@media(max-width:800px){.calendar-day{min-height:80px;padding:4px}.calendar-event{font-size:.65rem;padding:4px}.calendar-event small{display:none}}.admin-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(480px,1.2fr);gap:22px;margin-top:38px}.admin-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:24px}.admin-form label{display:grid;gap:6px;font-size:.75rem;font-weight:700;color:#40524d}.admin-form input,.admin-form select{padding:11px;border:1px solid #d3d8d3;background:#fcfcf9}.admin-form .wide{grid-column:1/-1}.policy-list{padding:10px 26px;margin:0}.policy-list div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #e8e5de}.policy-list dt{color:#71807c}.policy-list dd{font-weight:700;margin:0}@media(max-width:1000px){.admin-grid{grid-template-columns:1fr}}:root{font-family:DM Sans,sans-serif;color:#173333;background:#f4f1e9}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}.brand{font-weight:800;letter-spacing:.13em;display:flex;align-items:center;gap:10px}.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.17em;color:#b16d3d}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.login-brand{padding:55px 8vw;background:#173b3b;color:#f8f5ed;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-brand:after{content:"";position:absolute;width:430px;height:430px;border:1px solid #ffffff20;border-radius:50%;right:-180px;bottom:30px;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff05}.login-brand h1{font-size:clamp(3rem,6vw,5.5rem);line-height:.98;margin:18px 0 22px;letter-spacing:-.05em}.login-brand h1 em{font-family:Playfair Display,serif;color:#dba775}.login-brand p{color:#c8d4d0;max-width:430px;font-size:1.1rem}.login-brand small{color:#8fa6a1}.login-panel{display:grid;place-items:center;padding:40px}.login-card{width:min(430px,100%);background:#fff;padding:45px;border:1px solid #dedbd1;box-shadow:0 18px 55px #1d3d3420}.login-card h2,.modal h2{font-size:2rem;margin:15px 0 4px}.login-card>p{color:#74807c}.icon-badge{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#e4eee9;color:#24544d}.login-card label,.modal label{display:grid;gap:7px;font-size:.82rem;font-weight:700;margin:19px 0;color:#40524d}.login-card input,.modal input,.modal select,.modal textarea{border:1px solid #d3d8d3;background:#fcfcf9;padding:13px 14px;outline:none}.login-card input:focus,.modal input:focus,.modal textarea:focus{border-color:#2c645b;box-shadow:0 0 0 3px #2c645b16}button{border:0;background:#bf6b38;color:#fff;padding:12px 17px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.login-card>button{width:100%;margin-top:12px}.demo{margin-top:25px;padding:14px;background:#f4f1e9;display:grid;gap:3px;font-size:.73rem;color:#67736f}.error{padding:10px 12px;background:#fff0ed;color:#a53a2e;border-left:3px solid #c44d3d;font-size:.85rem}.app-shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.app-shell>aside{position:fixed;width:245px;height:100vh;background:#173b3b;color:#fff;padding:28px 19px;display:flex;flex-direction:column}.app-shell nav{display:grid;gap:8px;margin-top:58px}.app-shell nav a{padding:12px 14px;color:#9eb5b0;display:flex;align-items:center;gap:13px;font-size:.87rem}.app-shell nav a svg{width:19px}.app-shell nav a.active{background:#ffffff12;color:#fff;border-left:3px solid #d49463}.app-shell nav a span{margin-left:auto;background:#b86638;border-radius:15px;padding:2px 7px}.profile{margin-top:auto;padding-top:20px;border-top:1px solid #ffffff17;display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;background:#d49463;display:grid;place-items:center;font-weight:800}.profile div:nth-child(2){display:grid;font-size:.78rem}.profile span{text-transform:capitalize;color:#91aaa5}.profile button{margin-left:auto;background:none;padding:5px}.content{grid-column:2;padding:42px 4.5vw 70px;max-width:1500px;width:100%}.content header{display:flex;justify-content:space-between;align-items:flex-start}.content header h1{font-size:2.5rem;margin:7px 0 3px}.content header p{margin:0;color:#71807c}.balance-grid{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));gap:18px;margin:38px 0}.balance-card{background:#fff;border:1px solid #dedbd1;padding:23px;display:flex;align-items:center;gap:18px}.balance-icon{width:50px;height:50px;display:grid;place-items:center;background:#e4eee9;color:#24544d}.tone-1{background:#f7e9db;color:#a65f35}.tone-2{background:#ece8f4;color:#64527d}.balance-card div:last-child{display:grid}.balance-card span{font-size:.75rem;text-transform:uppercase;letter-spacing:.09em;color:#78837f}.balance-card strong{font-size:2rem}.balance-card small{color:#87918d}.split{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:22px}.panel,.side-panel{background:#fff;border:1px solid #dedbd1}.panel-title{padding:25px 27px 17px;display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid #e7e4dc}.panel-title h2,.side-panel h2{margin:5px 0 0;font-size:1.35rem}.quiet{font-size:.8rem;color:#7d8884}.request{display:grid;grid-template-columns:48px 1fr auto auto;align-items:center;gap:15px;padding:18px 25px;border-bottom:1px solid #ece9e1}.date-block{width:44px;text-align:center;border:1px solid #d9ddd8;padding:5px}.date-block b{display:block;font-size:1.2rem}.date-block span{text-transform:uppercase;font-size:.65rem;color:#8a6351}.request-main{display:grid;gap:3px}.request-main span,.request-main small{font-size:.77rem;color:#77817e}.request-main small{color:#9a7460}.status{padding:6px 9px;font-size:.7rem;font-weight:700;text-transform:uppercase;background:#f4e7d6;color:#915b36}.status.approved{background:#e1efe9;color:#2d705d}.status.rejected,.status.cancelled{background:#f5e2df;color:#994a42}.decision{display:flex;gap:5px}.decision button{padding:7px;background:#337466}.decision button svg{width:16px}.decision .reject{background:#a95448}.side-panel{padding:25px}.metric{padding:20px 0;border-bottom:1px solid #e8e5de;display:grid}.metric strong{font-size:1.8rem}.metric span{font-size:.8rem;color:#75817d}.notice{margin-top:22px;padding:15px;background:#eef3ef;display:flex;gap:10px;color:#3e5a53}.notice p{font-size:.76rem;margin:0}.empty{padding:45px;display:grid;place-items:center;gap:7px;color:#82908b}.modal-backdrop{position:fixed;inset:0;background:#102725bf;display:grid;place-items:center;padding:20px;z-index:5}.modal{width:min(630px,100%);background:#fff;padding:35px;position:relative}.close{position:absolute;right:18px;top:18px;background:none;color:#4d5f5a;padding:5px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.modal textarea{min-height:100px;resize:vertical}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.secondary{background:#e8ebe7;color:#40534d}.loading{min-height:100vh;display:grid;place-items:center;background:#173b3b;color:#fff}.top-error{margin-top:20px}@media(max-width:950px){.app-shell{grid-template-columns:75px 1fr}.app-shell>aside{width:75px;padding:25px 12px}.app-shell>aside .brand{font-size:0}.app-shell nav a{font-size:0;justify-content:center}.profile>div:not(.avatar),.profile button{display:none}.split,.login-shell{grid-template-columns:1fr}.login-brand{display:none}}@media(max-width:680px){.content{padding:28px 18px}.content header{display:grid;gap:20px}.balance-grid{grid-template-columns:1fr}.request{grid-template-columns:45px 1fr}.status,.decision{grid-column:2}.form-grid,.app-shell{grid-template-columns:1fr}.app-shell>aside{display:none}.content{grid-column:1}}
