:root{font-family:Inter,Segoe UI,sans-serif;color:#2e2e2e;background:#f6f6f6;font-size:16px}*{box-sizing:border-box}body{margin:0}header{padding:22px max(24px,calc((100vw - 1100px)/2));background:#333333;color:white;display:flex;align-items:center;justify-content:space-between}.brand{font-size:28px;font-weight:750;letter-spacing:-1px}.brand span{color:#c3c3c3}.brand small{font-size:11px;letter-spacing:3px;display:block;margin-top:6px;font-weight:500}main{max-width:1100px;margin:auto;padding:30px 24px 60px}h1{font-size:clamp(32px,5vw,54px);letter-spacing:-2px;line-height:1.1;margin:14px 0}h2{font-size:25px;overflow-wrap:anywhere}p{line-height:1.65}.eyebrow{font-size:12px;letter-spacing:2px;color:#636363;font-weight:bold}.banner{background:#f1f1f1;border-left:4px solid #8f8f8f;padding:14px 18px;font-size:13px;margin-bottom:24px}.muted,footer{font-size:13px;color:#707070}button,.button{display:inline-block;border:0;background:#515151;color:white;padding:12px 18px;border-radius:7px;cursor:pointer;font:inherit;text-decoration:none}button:hover{background:#3d3d3d}button:disabled{opacity:.45;cursor:not-allowed}#login{max-width:650px;padding:30px 0}#demo-login button{margin-right:10px}label{display:grid;gap:7px;font-size:13px;font-weight:600}input,select,textarea{border:1px solid #d4d4d4;border-radius:6px;padding:12px;font:inherit;background:white;color:#2e2e2e}textarea{min-height:110px;resize:vertical}.filters{display:flex;align-items:end;gap:16px;margin:28px 0}.filters label:nth-child(2){flex:1}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.card{background:white;border:1px solid #e0e0e0;border-radius:12px;padding:24px;box-shadow:0 5px 18px #33333306}.card h3{font-size:17px;overflow-wrap:anywhere}.tag{display:inline-block;background:#ebebeb;padding:5px 9px;border-radius:5px;font-size:11px;font-weight:700;letter-spacing:1px}.card button{width:100%;margin-top:14px}.date{font-size:22px;font-weight:650}form{background:white;border:1px solid #e0e0e0;border-radius:12px;margin:20px 0;padding:22px;display:grid;gap:16px}#history article{border-left:3px solid #a3a3a3;padding:8px 18px;margin:14px 0;background:white;overflow-wrap:anywhere}#status{padding:14px 0;font-weight:600}footer{border-top:1px solid #e2e2e2;padding:25px;text-align:center}[hidden]{display:none!important}@media(max-width:600px){.filters{display:grid}.brand{font-size:24px}main{padding:24px 16px}}
[hidden]{display:none!important}
.weekbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 14px}.weeknav{display:flex;gap:5px}.weeknav button{background:#e8e8e8;color:#2e2e2e;padding:9px 13px}.weekbar h2{margin:0;font-size:22px}.legend{display:flex;gap:20px;flex-wrap:wrap;color:#6d6d6d;font-size:12px;margin-bottom:15px}#calendar-scroll{overflow-x:auto;border:1px solid #d8d8d8;border-radius:12px;background:white}.calendar{display:grid;grid-template-columns:54px repeat(7,minmax(130px,1fr));min-width:1000px}.calendar>div:first-child,.day-head{background:#f1f1f1;text-align:center;padding:16px 6px;font-size:13px;font-weight:650;border-bottom:1px solid #d8d8d8}.hour{padding:10px 4px;font-size:11px;color:#727272;text-align:center;border-bottom:1px solid #e7e7e7;background:#f9f9f9}.slot{min-height:60px;padding:5px;border-left:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;display:flex;flex-direction:column;gap:5px}.today{background:#f6f6f6}.day-head.today{color:#515151;background:#e8e8e8}.appointment{background:#ececec;border-left:3px solid #656565;color:#323232;display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;padding:9px 7px;text-align:left;font-size:11px;overflow-wrap:anywhere}.appointment strong{font-size:14px}.appointment span:nth-child(2){font-weight:700;font-size:10px;letter-spacing:.5px}.appointment small{color:#636363}.appointment:hover,.appointment:focus-visible{background:#dfdfdf;color:#323232;outline:2px solid #656565}.appointment.extra{border-left-color:#7e7e7e;background:#f1f1f1}.filters{flex-wrap:wrap}main{max-width:1400px}@media(max-width:700px){.weekbar{align-items:flex-start;flex-wrap:wrap}.weekbar h2{font-size:18px}.filters{display:grid;grid-template-columns:1fr 1fr}.filters label{min-width:0}.legend span:last-child{width:100%}}
.calendar{grid-template-columns:48px repeat(7,minmax(100px,1fr));min-width:780px}

.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:16px;margin:24px 0}.summary>div{min-width:0;overflow-wrap:anywhere}.summary>div{background:white;border:1px solid #e0e0e0;border-radius:12px;padding:20px;display:grid;gap:6px}.summary strong{font-size:28px}.summary span{font-size:13px;color:#707070}.view-switch{display:flex;gap:6px;margin-bottom:20px}.view-switch button[aria-pressed=false]{background:#e8e8e8;color:#2e2e2e}.agenda-row{display:grid;grid-template-columns:170px 1fr 130px 160px;gap:16px;align-items:center;width:100%;margin:10px 0;padding:22px;text-align:left;background:white;color:#2e2e2e;border:1px solid #e0e0e0}.agenda-row:hover{background:#ececec}.agenda-row span{overflow-wrap:anywhere}.agenda-row small{color:#707070}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #8f8f8f;outline-offset:3px}#workspace h1{font-size:38px}#status:not(:empty){background:#eeeeee;padding:16px;border-radius:8px}@media(max-width:700px){.summary{gap:8px}.summary>div{padding:12px}.summary span{font-size:11px}.agenda-row{grid-template-columns:1fr;gap:8px}}

.day-head small{display:block;font-weight:400;margin-top:8px;color:#676767}.weeknav{flex-wrap:wrap}#upcoming-week{background:#515151;color:white}.filters select{max-width:220px}

.slot{background:#fafafa}.slot:nth-child(2n){background:#f0f0f0}.slot.today{background:#e4e4e4}.day-head.today{background:#ccc;color:#222}.appointment.extra{border-left-style:dashed}.appointment:focus-visible{outline:3px solid #111}

#portal-nav{display:flex;gap:12px;margin:20px 0}.invites-panel{margin:16px 0 24px}.invites-panel article button{margin:6px 10px 0 0}.finance-card{border:1px solid #d0d0d0;border-radius:10px;padding:20px;margin:12px 0;background:#fafafa}.finance-card form{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.finance-card input[type=checkbox]{width:auto;margin-right:10px}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:10px;border-bottom:1px solid #ddd}@media print{header,footer,nav,button{display:none}main{max-width:none}}

.management-intro{background:linear-gradient(120deg,#242424,#505050);color:#fff;padding:32px;border-radius:16px;margin:20px 0}.management-intro span{font-size:12px;letter-spacing:2px}.management-intro h2{max-width:650px;font-size:32px;line-height:1.2}.organization-panel{border:1px solid #dedede;border-radius:16px;background:#f0f0f0;padding:24px;margin:24px 0}.management-form{grid-template-columns:repeat(2,minmax(0,1fr));box-shadow:0 6px 24px #00000005}.management-form button{grid-column:1/-1;justify-self:start}.management-form label:has(textarea){grid-column:1/-1}.opportunity-card{padding:24px;border:1px solid #d7d7d7;border-radius:14px;background:#fff;margin:16px 0}.opportunity-card>span{font-size:11px;letter-spacing:2px;color:#777}.opportunity-card h3{font-size:22px;margin:10px 0}@media(max-width:650px){.management-form{grid-template-columns:1fr}.management-intro,.organization-panel{padding:20px}}

#login.landing{max-width:none;padding:30px 0}.landing-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center;padding:40px 0 60px}.landing h1{font-size:clamp(38px,4.7vw,68px);line-height:1.08;letter-spacing:-2px;margin:22px 0}.landing h1 span{color:#777}.landing-lead{font-size:19px;line-height:1.65;max-width:540px}.landing .button{display:inline-block;margin:20px 0 12px;padding:18px 24px}.landing .muted{max-width:480px;line-height:1.6}.flow-preview{border:1px solid #d4d4d4;border-radius:20px;background:linear-gradient(140deg,#fff,#e7e7e7);padding:34px;box-shadow:0 20px 60px #00000008}.flow-preview>p,.landing-benefits article>span{font-size:11px;letter-spacing:1.8px;color:#666}.flow-preview ol{list-style:none;counter-reset:steps;padding:0}.flow-preview li{counter-increment:steps;position:relative;padding:20px 0 20px 48px;border-bottom:1px solid #ddd}.flow-preview li:before{content:counter(steps);position:absolute;left:0;top:20px;width:28px;height:28px;border:1px solid #aaa;border-radius:50%;text-align:center;line-height:28px;font-size:12px}.flow-preview span{display:block;font-size:13px;color:#666;line-height:1.5;margin-top:6px}.flow-preview small{font-size:11px;color:#777}.landing-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid #ccc;padding:40px 0}.landing-benefits h2{font-size:23px;line-height:1.3}.landing-benefits p{line-height:1.7;color:#555}.landing-benefits article{padding-right:20px}@media(max-width:800px){.landing-hero{grid-template-columns:1fr;gap:25px;padding:10px 0 30px}.landing-benefits{grid-template-columns:1fr;gap:15px}.flow-preview{padding:24px}#portal-nav{flex-wrap:wrap}}

.agenda-day{margin:24px 0;border:1px solid #d5d5d5;border-radius:12px;overflow:hidden;background:#fafafa}.agenda-day h3{margin:0;padding:18px 20px;background:#e9e9e9;text-transform:capitalize;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.agenda-day h3 small{font-weight:400;font-size:13px;text-transform:none}.agenda-day .agenda-row{border-radius:0;margin:0;border:0;border-top:1px solid #ddd;width:100%;text-align:left}.view-switch button:focus-visible,.agenda-row:focus-visible{outline:3px solid #555;outline-offset:3px}

header{gap:12px;flex-wrap:wrap}header .brand{margin-right:auto}.dashboard-actions{display:flex;gap:12px;flex-wrap:wrap}#install-help{padding:20px;background:#e9e9e9;border-radius:12px;margin:15px 0}.filters>*{min-width:0}.filters input,.filters select{min-width:0;max-width:100%;box-sizing:border-box}@media(max-width:600px){input,select,textarea{font-size:16px}button{min-height:44px}#portal-nav{gap:8px}.summary{gap:8px}#install-app{font-size:12px;padding:10px}header{padding:16px}}

#finance-charges{overflow-x:auto}.finance-table{min-width:760px;background:white}.finance-table th{background:#e8e8e8}.finance-table td{vertical-align:top}.finance-table form{display:grid;gap:8px;min-width:200px}.finance-table input{max-width:240px}.finance-table tr:nth-child(even){background:#f5f5f5}
