:root{--green:#173f35;--green-2:#245b4d;--mint:#e8f2ed;--cream:#f6f4ee;--ink:#17231f;--muted:#64716c;--line:#dde4e0;--white:#fff;--amber:#d98b20;--red:#b84242;--shadow:0 16px 45px rgba(25,58,49,.09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#fbfaf7 0,#f4f6f3 100%)}button,input,select,textarea{font:inherit}.demo-banner{min-height:34px;padding:7px 5vw;background:#e3b04b;color:#35270d;display:flex;align-items:center;justify-content:center;gap:12px;font-size:12px;letter-spacing:.02em}.demo-banner strong{font-size:10px;letter-spacing:.13em;border:1px solid rgba(53,39,13,.3);padding:2px 7px;border-radius:99px}.site-header{height:78px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand-mark{width:42px;height:42px;border-radius:14px;background:var(--green);color:white;display:grid;place-items:center;font-family:Georgia,serif;font-size:25px}.brand strong,.brand small{display:block}.brand strong{font-family:Georgia,serif;font-size:19px}.brand small{margin-top:1px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.15em}.top-nav{display:flex;align-items:center;gap:4px}.nav-button,.nav-link{border:0;background:none;color:#5d6965;padding:10px 13px;border-radius:10px;text-decoration:none;font-size:13px;font-weight:700;cursor:pointer}.nav-button:hover,.nav-link:hover,.nav-button.active{color:var(--green);background:var(--mint)}.nav-link{margin-left:8px;color:white;background:var(--green)}.nav-link:hover{color:white;background:var(--green-2)}.count{background:var(--green);color:white;border-radius:99px;padding:1px 6px;font-size:10px}.page-shell{width:min(1180px,90vw);margin:0 auto;padding:50px 0 80px}.hero{background:var(--green);color:white;padding:48px 52px;border-radius:28px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:40px;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-110px;top:-180px}.hero h1{font:600 clamp(36px,5vw,62px)/1.02 Georgia,serif;letter-spacing:-.04em;max-width:700px;margin:8px 0 16px}.hero-copy{max-width:660px;color:#d6e3de;line-height:1.7;margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:900;margin:0;color:#a8c6ba}.hero-profile{min-width:230px;display:flex;align-items:center;gap:13px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);padding:14px 16px;border-radius:18px;position:relative;z-index:1}.avatar{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:#e3b04b;color:#26342e;font-weight:900}.hero-profile small,.hero-profile strong,.hero-profile span{display:block}.hero-profile small{color:#bdd2ca;font-size:10px}.hero-profile strong{margin:2px 0;font-size:14px}.hero-profile div>span{font-size:11px;color:#dbe8e3}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:52px 0 22px}.section-heading h2{font:600 34px/1.1 Georgia,serif;margin:5px 0 0}.section-heading .eyebrow{color:var(--green-2)}.filter-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--muted)}select,input,textarea{width:100%;margin-top:7px;border:1px solid var(--line);background:white;color:var(--ink);border-radius:12px;padding:12px 14px;outline:none}select:focus,input:focus,textarea:focus{border-color:#78a293;box-shadow:0 0 0 3px rgba(74,126,107,.12)}.filter-label select{min-width:230px}.view{display:none}.view.active{display:block}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.shift-card{background:white;border:1px solid var(--line);border-radius:21px;padding:22px;box-shadow:0 5px 24px rgba(30,60,50,.04);display:flex;flex-direction:column;min-height:340px;transition:transform .2s,box-shadow .2s}.shift-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.card-top,.card-meta{display:flex;justify-content:space-between;align-items:center;gap:10px}.group-pill{display:inline-block;width:max-content;max-width:100%;overflow:hidden;text-overflow:ellipsis;padding:5px 8px;border-radius:7px;background:var(--mint);color:var(--green);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.availability{font-size:10px;color:#257858;font-weight:900}.availability:before{content:"";display:inline-block;width:6px;height:6px;background:#3ea579;border-radius:50%;margin-right:5px}.availability.full{color:var(--red)}.availability.full:before{background:var(--red)}.date-block{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid #edf0ee;padding:22px 0 15px;text-transform:capitalize}.date-block strong{font:600 18px Georgia,serif}.date-block span{font-size:12px;font-weight:800;color:var(--green)}.shift-card h3{font:600 24px Georgia,serif;margin:19px 0 8px}.shift-card>p{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 18px}.card-meta{font-size:11px;color:var(--muted);margin-top:auto;margin-bottom:16px}.button{border:0;border-radius:12px;padding:12px 17px;font-weight:850;font-size:12px;cursor:pointer;transition:.2s}.button.primary{background:var(--green);color:white}.button.primary:hover{background:var(--green-2);transform:translateY(-1px)}.button:disabled{cursor:not-allowed;transform:none}.button.joined{background:var(--mint);color:var(--green)}.button.ghost{background:white;border:1px solid var(--line);color:var(--ink)}.button.danger{background:#fff1ef;color:var(--red)}.list-stack{display:grid;gap:12px}.my-shift{background:white;border:1px solid var(--line);border-radius:18px;padding:17px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}.calendar-tile{width:64px;height:64px;border-radius:15px;background:var(--green);color:white;display:grid;place-content:center;text-align:center}.calendar-tile strong{font:600 25px Georgia,serif}.calendar-tile span{text-transform:uppercase;font-size:9px;letter-spacing:.12em}.my-shift h3{font:600 20px Georgia,serif;margin:7px 0 3px}.my-shift p{margin:0;color:var(--muted);font-size:12px}.panel{background:white;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 6px 25px rgba(25,55,45,.04)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label,.form-grid legend{font-size:11px;font-weight:850;color:#46524e}.full{grid-column:1/-1}fieldset{border:0;padding:0;margin:4px 0}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.choice{position:relative}.choice input{position:absolute;opacity:0;width:1px}.choice span{display:block;padding:11px;border:1px solid var(--line);border-radius:11px;background:#fafbf9;cursor:pointer;font-size:11px}.choice input:checked+span{border-color:var(--green);background:var(--mint);color:var(--green)}.form-actions{display:flex;gap:10px}.notice{position:fixed;z-index:50;right:25px;top:130px;background:#dff3e9;color:#15543e;border:1px solid #a8d6c2;padding:14px 18px;border-radius:13px;box-shadow:var(--shadow);font-size:13px;font-weight:750}.notice.error{background:#fff0ed;color:#8a2929;border-color:#ecc0b8}.hidden{display:none!important}.empty{grid-column:1/-1;border:1px dashed #cbd5d0;border-radius:18px;background:rgba(255,255,255,.55);padding:45px;text-align:center;color:var(--muted);display:flex;flex-direction:column;gap:7px}.modal{display:none;position:fixed;inset:0;background:rgba(9,25,20,.68);z-index:60;padding:20px;place-items:center;backdrop-filter:blur(4px)}.modal.open{display:grid}.modal-card{width:min(450px,100%);background:white;border-radius:23px;padding:31px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.3)}.modal-card h2{font:600 30px Georgia,serif;margin:8px 0 20px}.modal-close{position:absolute;right:17px;top:13px;background:none;border:0;font-size:28px;color:#718079;cursor:pointer}.booking-details{display:grid;gap:7px;color:var(--muted);font-size:13px;padding:16px;background:#f5f8f6;border-radius:14px;margin-bottom:20px}.booking-details strong{color:var(--ink)}.full-button{width:100%}footer{background:#102f27;color:#b5cbc2;display:flex;justify-content:space-between;padding:24px 5vw;font-size:11px}
@media(max-width:900px){.site-header{height:auto;min-height:78px;align-items:flex-start;padding-top:14px;padding-bottom:14px}.top-nav{flex-wrap:wrap;justify-content:flex-end}.hero{grid-template-columns:1fr;padding:38px}.hero-profile{width:max-content}.card-grid{grid-template-columns:repeat(2,1fr)}.choice-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.demo-banner span{display:none}.site-header{position:static;display:block;padding-left:4vw;padding-right:4vw}.top-nav{margin-top:13px;justify-content:flex-start;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.nav-button,.nav-link{padding:9px 6px;font-size:11px;text-align:center;white-space:nowrap}.nav-link{margin-left:0;grid-column:1/-1}.page-shell{width:92vw;padding-top:22px}.hero{padding:28px 24px;border-radius:20px}.hero h1{font-size:38px}.hero-profile{min-width:0;width:100%}.section-heading{display:block;margin-top:38px}.filter-label{display:block;margin-top:18px}.filter-label select{min-width:0;width:100%}.card-grid{grid-template-columns:1fr}.my-shift{grid-template-columns:auto 1fr}.my-shift .danger{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.choice-grid{grid-template-columns:1fr}.form-actions{display:grid}.notice{left:4vw;right:4vw;top:15px}footer{display:grid;gap:5px}}
.tenant-switcher{width:auto;min-width:180px;margin:0 0 0 10px;padding:5px 28px 5px 10px;border-radius:999px;border:1px solid rgba(53,39,13,.25);background:#fff8e6;color:#35270d;font-size:12px;font-weight:800}.admin-tenant-switcher{margin-top:12px;border-color:rgba(255,255,255,.22);background:#173f35;color:white}
.session-summary{margin-top:22px;display:grid;gap:10px;max-width:680px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:16px;position:relative;z-index:1}.session-summary strong,.session-summary span,.session-summary small{display:block}.session-summary strong{font-size:13px}.session-summary span{font-size:12px;color:#dbe8e3;margin-top:3px}.session-summary small{font-size:10px;color:#bdd2ca}.role-row{display:flex;flex-wrap:wrap;gap:7px}.role-chip{display:inline-flex;align-items:center;width:max-content;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);color:white;padding:5px 9px;font-size:10px;font-weight:850}.owner-grid .role-chip,.session-summary .role-chip{margin-top:0}
