:root{--green:#153a2d;--green2:#214f3e;--gold:#c4a84e;--ink:#1d2622;--muted:#6e756f;--line:#dfe3df;--bg:#f3f4f1;--white:#fff;--danger:#a92d2d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg)}a{color:inherit;text-decoration:none}button,.primary{border:0;border-radius:10px;background:var(--green);color:#fff;padding:13px 18px;font-weight:700;cursor:pointer;display:inline-block}button:hover,.primary:hover{background:var(--green2)}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{width:100%;border:1px solid #d6dbd7;border-radius:9px;padding:12px 13px;background:#fff;color:var(--ink);font:inherit}textarea{resize:vertical;min-height:84px}label{display:grid;gap:6px;font-weight:650}label small{font-weight:400;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,4vw,48px);line-height:1.08}h2{font-size:23px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:#9a7e22;margin-bottom:8px}.flash{padding:12px 15px;border-radius:9px;margin:0 0 16px;background:#e5f5e9;color:#17612f}.flash.error{background:#fde8e8;color:var(--danger)}.logo{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:4px}.logo b,.install-brand b{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--green);color:var(--gold);font:700 22px Georgia}.logo span,.install-brand span{display:grid}.logo small,.install-brand small{font-size:9px;letter-spacing:3px;color:var(--muted)}.public-header{height:80px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,30px);color:var(--muted)}.booking-layout{min-height:calc(100vh - 80px);display:grid;grid-template-columns:minmax(320px,.8fr) minmax(520px,1.2fr);gap:6vw;align-items:center;max-width:1220px;margin:auto;padding:55px 35px}.booking-copy h1{font:500 clamp(46px,5vw,72px)/.98 Georgia;color:var(--green)}.booking-copy>p:not(.eyebrow){font-size:18px;color:var(--muted);max-width:520px}.booking-copy ul{list-style:none;padding:24px 0;border-top:1px solid var(--line);display:grid;gap:15px;font-weight:650}.booking-card,.install-card,.login-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:42px;box-shadow:0 20px 60px #16382b12}.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.type-grid label{position:relative}.type-grid input{position:absolute;opacity:0}.type-grid span{display:grid;border:1px solid var(--line);padding:16px;border-radius:10px;cursor:pointer}.type-grid input:checked+span{border:2px solid var(--green);background:#f1f6f3}.type-grid small{color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.full{grid-column:1/-1}.choices{display:flex;gap:25px}.choices label{display:flex;align-items:center}.choices input{width:auto}.booking-card>.primary{width:100%;margin-top:20px}.confirmation{max-width:620px;margin:10vh auto;background:#fff;border-radius:22px;padding:55px;text-align:center}.confirmation>div,.success-icon{margin:auto auto 18px;display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#e5f2ea;color:var(--green);font-size:34px}.confirmation strong{font-size:24px;display:block;margin:8px 0 25px;color:var(--green)}.install-card,.login-card{max-width:610px;margin:7vh auto}.install-brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:4px;margin-bottom:35px}.checks{display:grid;gap:8px;margin:22px 0}.checks div{display:flex;align-items:center;gap:9px;color:var(--muted)}.checks span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e5f2ea;color:var(--green);font-weight:800}.checks .fail span{background:#fde8e8;color:var(--danger)}.install-form,.login-card form{display:grid;gap:15px}.install-form .primary,.login-card .primary{width:100%}.privacy{text-align:center;font-size:12px;color:var(--muted);margin:15px 0 0}.admin-body{padding-left:245px}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#123328;color:#fff;padding:25px 17px;display:flex;flex-direction:column;z-index:5}.sidebar .logo{padding:0 8px 25px;border-bottom:1px solid #ffffff1f}.sidebar .logo b{background:#ffffff10}.sidebar .logo small{color:#aebdb5}.sidebar nav{display:grid;gap:5px;padding-top:25px}.sidebar nav a{padding:12px 14px;border-radius:9px;font-weight:650}.sidebar nav a:hover{background:#ffffff12}.side-user{margin-top:auto;border-top:1px solid #ffffff1f;padding:18px 10px 0;display:grid}.side-user small{color:#aebdb5}.side-user a{color:var(--gold);font-size:12px;margin-top:8px}.admin-main{padding:34px 46px;max-width:1500px;margin:auto}.admin-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.admin-head h1{font-size:34px;margin:0}.admin-head a:not(.primary){font-size:13px;color:var(--muted)}.search{display:flex;gap:10px;max-width:650px;margin:0 0 22px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}.stats article,.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px}.stats small{display:block;color:var(--muted)}.stats b{display:block;font-size:28px;margin-top:12px}.panel{margin-bottom:20px}.panel-title{display:flex;justify-content:space-between;align-items:center}.panel-title h2{margin:0}.panel-title>span{color:var(--muted)}.pipeline-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin-top:20px}.pipeline-grid div{background:#f4f6f3;border-radius:10px;padding:14px}.pipeline-grid small{display:block;color:var(--muted);min-height:38px}.pipeline-grid b{font-size:22px}.dashboard-grid,.record-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.record-grid{grid-template-columns:repeat(3,1fr)}.records,.agenda{display:grid}.records>a,.records>div,.agenda>a,.user-row{padding:14px 4px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.records span,.agenda a{display:grid}.records small,.agenda small,.line-item small{color:var(--muted)}.records em,.status{font-style:normal;background:#e8f0eb;color:var(--green);padding:5px 9px;border-radius:20px;font-size:12px}.agenda a span{font-weight:650}.empty{text-align:center;color:var(--muted);padding:35px 10px}.admin-footer{display:flex;justify-content:space-between;color:var(--muted);font-size:13px}.admin-footer a{color:var(--green);font-weight:700}.record-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.record-head h1{font-size:36px;margin:4px 0}.record-head>span{font-size:14px}.record-controls{display:grid;grid-template-columns:1fr 1fr 1fr auto auto;align-items:end;gap:12px}.record-controls .check{display:flex;align-items:center;padding-bottom:12px}.record-controls .check input{width:auto}.tabs{display:flex;gap:8px;overflow:auto;margin:0 0 20px}.tabs a{white-space:nowrap;background:#fff;border:1px solid var(--line);border-radius:30px;padding:8px 13px}.panel form:not(.inline-form){display:grid;gap:10px}.line-item{padding:13px 0;border-bottom:1px solid var(--line);display:grid;gap:3px}.line-item p{margin:3px 0}.inline-form{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;align-items:end;margin-bottom:18px}.project-card{border-top:1px solid var(--line);padding:20px 0;display:grid;grid-template-columns:1fr 1fr;gap:20px}.project-card form{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.project-card button{grid-column:1/-1}.timeline>div{display:flex;gap:12px;padding:0 0 18px}.timeline>div>span{width:11px;height:11px;border-radius:50%;background:var(--gold);margin-top:6px}.timeline p{display:grid;margin:0}.timeline small{color:var(--muted)}dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}dt{color:var(--muted)}dd{margin:0;font-weight:700}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:12px;color:var(--muted)}@media(max-width:1000px){.booking-layout{grid-template-columns:1fr}.booking-copy{padding-top:20px}.admin-body{padding-left:0}.sidebar{position:relative;width:auto;height:auto}.sidebar nav{grid-template-columns:repeat(3,1fr)}.side-user{display:none}.admin-main{padding:25px}.stats{grid-template-columns:repeat(2,1fr)}.pipeline-grid{grid-template-columns:repeat(4,1fr)}.dashboard-grid,.record-grid{grid-template-columns:1fr}.record-controls,.inline-form{grid-template-columns:1fr 1fr}.project-card{grid-template-columns:1fr}}@media(max-width:620px){.public-header{padding:0 18px}.public-header>span{display:none}.booking-layout{padding:25px 15px}.booking-copy h1{font-size:48px}.booking-card,.install-card,.login-card{padding:24px;border-radius:15px}.type-grid,.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.admin-main{padding:18px}.sidebar nav{grid-template-columns:1fr 1fr}.stats,.pipeline-grid,.record-controls,.inline-form{grid-template-columns:1fr}.record-head{align-items:flex-start}.record-head>span{margin-top:28px}.admin-footer{display:grid;gap:8px}}
.notification-pagination{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid var(--line,#d9dfdb);color:var(--muted,#66716b);font-size:13px}.notification-pagination>div{display:flex;gap:8px;flex-wrap:wrap}.notification-pagination .button{margin:0}
