:root{--ink:#17343b;--muted:#6b7f82;--lake:#186d78;--lake-dark:#0e525c;--cream:#f5f2e9;--paper:#fffdfa;--line:#dfe5df;--sage:#6f9274;--gold:#d5a13a;--coral:#c96e55;--blue:#4b7ca2}*{box-sizing:border-box}html{background:var(--cream)}body{color:var(--ink);background:var(--cream);margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif}button,input,textarea{font:inherit}button{color:inherit}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdfaf5;justify-content:space-between;align-items:center;height:78px;padding:0 4.2vw;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;min-width:250px;display:flex}.brand-mark{background:var(--lake);border-radius:50% 50% 42% 42%;width:42px;height:42px;position:relative;overflow:hidden;box-shadow:inset 0 -11px #ffffff14}.brand-mark:before{content:"";background:var(--paper);border-radius:2px 2px 0 0;width:24px;height:14px;position:absolute;top:16px;left:9px}.brand-mark:after{content:"";background:var(--gold);width:8px;height:11px;position:absolute;top:19px;left:17px}.brand-mark i{border:6px solid #0000;border-bottom-color:var(--paper);width:28px;height:28px;position:absolute;top:-3px;left:7px;transform:rotate(0)}.brand strong,.brand span{display:block}.brand strong{letter-spacing:-.2px;font-family:Georgia,serif;font-size:19px}.brand span{color:var(--muted);margin-top:2px;font-size:12px}.desktop-nav{align-items:stretch;gap:28px;height:100%;display:flex}.desktop-nav button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:14px;font-weight:650;position:relative}.desktop-nav button:hover,.desktop-nav .nav-active{color:var(--ink)}.desktop-nav .nav-active:after{content:"";background:var(--lake);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:0;right:0}.avatar-button{cursor:pointer;background:0 0;border:0;justify-content:flex-end;align-items:center;gap:9px;min-width:250px;display:flex}.avatar-button span{width:34px;height:34px;color:var(--lake-dark);background:#d7e8e7;border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.avatar-button b{font-size:14px}.avatar-button i{color:var(--muted);font-style:normal}main{width:min(1450px,92vw);margin:0 auto;padding:46px 0 70px}.hero-row{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.eyebrow{color:var(--lake);letter-spacing:1.6px;font-size:10px;font-weight:850}h1,h2{font-family:Georgia,Times New Roman,serif}h1{letter-spacing:-1.4px;margin:7px 0 8px;font-size:clamp(34px,4vw,52px);line-height:1.02}.hero-row p{color:var(--muted);margin:0;font-size:15px}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:9px;min-height:44px;padding:0 19px;font-weight:750}.primary-button{background:var(--lake);color:#fff;box-shadow:0 6px 18px #0e525c24}.primary-button:hover{background:var(--lake-dark)}.primary-button:disabled{opacity:.45;cursor:not-allowed}.secondary-button{color:var(--ink);background:#edf1ed}.hero-row .primary-button{min-height:48px;padding:0 23px}.hero-row .primary-button span{vertical-align:-1px;margin-right:4px;font-size:21px}.calendar-card,.upcoming-card,.gathering-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 30px #243c390f}.calendar-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:0 22px;display:flex}.date-controls{align-items:center;gap:8px;display:flex}.date-controls button{border:1px solid var(--line);cursor:pointer;background:#f1f3ee;border-radius:8px;width:34px;height:34px;font-size:22px;line-height:1}.date-controls h2{margin:0 0 0 8px;font-size:19px}.legend{color:var(--muted);gap:18px;font-size:11px;display:flex}.legend span{align-items:center;gap:6px;display:flex}.legend i{border-radius:50%;width:8px;height:8px}.available-dot{background:#fff;border:1px solid #afbbb5}.stay-dot{background:var(--lake)}.event-dot{background:var(--coral)}.availability-grid{overflow-x:auto}.grid-corner,.room-label{flex:0 0 228px;width:228px}.grid-corner{color:var(--muted);text-transform:uppercase;letter-spacing:1px;align-items:center;padding-left:21px;font-size:11px;display:flex}.days-strip{flex:1;grid-template-columns:repeat(18,1fr);min-width:1040px;display:grid}.availability-grid>.grid-corner{float:left;border-bottom:1px solid var(--line);height:69px}.days-strip{border-bottom:1px solid var(--line);height:69px}.days-strip>div{border-left:1px solid #edf0eb;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.days-strip span,.days-strip small{color:#8a9997;text-transform:uppercase;font-size:9px}.days-strip strong{margin:2px 0;font-size:15px}.days-strip .weekend{background:#faf8f1}.days-strip .today strong{background:var(--lake);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.room-line,.shared-line{clear:both;border-bottom:1px solid var(--line);min-width:1268px;height:84px;display:flex}.room-label{background:var(--paper);z-index:3;border-right:1px solid var(--line);align-items:center;gap:11px;padding:0 18px;display:flex;position:sticky;left:0}.room-label strong,.room-label small{display:block}.room-label strong{font-size:13px}.room-label small{color:var(--muted);margin-top:3px;font-size:10px}.room-icon{color:#fff;border-radius:9px;place-items:center;width:31px;height:31px;font-size:15px;display:grid}.room-1{background:var(--blue)}.room-2{background:var(--gold)}.room-3{background:var(--sage)}.room-4{background:#8b75a4}.shared-icon{background:var(--coral)}.room-days{flex:1;grid-template-columns:repeat(18,1fr);min-width:1040px;display:grid;position:relative;overflow:hidden}.day-cell{cursor:pointer;background:0 0;border:0;border-left:1px solid #edf0eb}.day-cell:nth-child(5),.day-cell:nth-child(6),.day-cell:nth-child(12),.day-cell:nth-child(13){background:#faf8f1}.day-cell:hover{background:#edf5f3}.today-cell{background:#f1f7f6}.booking-block{z-index:2;cursor:pointer;color:#18333a;border:0;border-radius:7px;align-items:center;gap:6px;height:44px;padding:0 8px;display:flex;position:absolute;top:20px;overflow:hidden;box-shadow:inset 0 0 0 1px #17343b0f}.booking-block span{background:#ffffff9e;border-radius:50%;flex:0 0 25px;place-items:center;height:25px;font-size:8px;font-weight:850;display:grid}.booking-block b{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.blue{background:#c9dceb}.gold{background:#f1dfae}.sage{background:#cfe0cf}.coral{background:#efd1c8}.shared-line{border-bottom:0;height:78px}.shared-days{background:repeating-linear-gradient(90deg,#0000 0 calc(5.555% - 1px),#edf0eb calc(5.555% - 1px) 5.555%);flex:1;min-width:1040px;position:relative}.event-block{background:#f8e7e0;border:1px solid #e2a795;border-radius:8px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;column-gap:8px;width:16.66%;height:54px;padding:6px 9px;display:grid;position:absolute;top:12px;left:61.11%}.event-block span{color:var(--coral);grid-row:1/3;align-self:center;font-size:10px;font-weight:800}.event-block strong{font-size:10px}.event-block small{color:var(--muted);font-size:9px}.lower-grid{grid-template-columns:1.75fr 1fr;gap:22px;margin-top:24px;display:grid}.upcoming-card,.gathering-card{padding:24px}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:13px;display:flex}.section-heading h2,.gathering-card h2{margin:4px 0 0;font-size:24px}.section-heading>button{color:var(--lake);cursor:pointer;background:0 0;border:0;font-weight:750}.booking-list>button{text-align:left;border:0;border-top:1px solid var(--line);cursor:pointer;background:0 0;align-items:center;gap:12px;width:100%;min-height:66px;display:flex}.booking-list>button:hover{background:#fafbf8}.list-avatar{border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:9px;font-weight:850;display:grid}.list-main{flex:1;min-width:0}.list-main strong,.list-main small,.list-date strong,.list-date small{display:block}.list-main strong{font-size:13px}.list-main small,.list-date small{color:var(--muted);margin-top:3px;font-size:10px}.list-date{text-align:right;font-size:11px}.chevron{color:var(--muted);font-size:20px}.gathering-card{background:var(--lake-dark);color:#fff;position:relative;overflow:hidden}.gathering-card:after{content:"";border:1px solid #ffffff1a;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-130px;right:-80px;box-shadow:0 0 0 35px #ffffff09}.gathering-card .eyebrow{color:#a9d4d3}.gathering-card p{color:#d2e3e2;max-width:420px;font-size:13px;line-height:1.55}.gathering-card button{color:#fff;cursor:pointer;z-index:2;background:0 0;border:0;padding:10px 0 0;font-weight:800;position:relative}.gathering-card button span{margin-left:8px}.content-view{min-height:65vh}.content-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.content-heading h1{margin-bottom:8px}.content-heading p{color:var(--muted);margin:0;font-size:15px}.content-heading .primary-button span{vertical-align:-1px;font-size:20px}.content-grid{grid-template-columns:1fr 1fr;align-items:start;gap:22px;display:grid}.content-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 8px 30px #243c390f}.count-pill{min-width:30px;height:30px;color:var(--lake-dark);background:#e5efec;border-radius:15px;place-items:center;padding:0 9px;font-size:11px;font-weight:850;display:grid}.booking-list.roomy>button{min-height:76px}.empty-state{text-align:center;border-top:1px solid var(--line);min-height:150px;color:var(--muted);place-content:center;display:grid}.empty-state strong{color:var(--ink);font-size:13px}.empty-state p{margin:5px 0 0;font-size:11px}.family-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.family-card{background:var(--paper);border:1px solid var(--line);border-radius:15px;align-items:flex-start;gap:15px;min-height:180px;padding:23px;display:flex;box-shadow:0 7px 25px #243c390d}.family-avatar{border-radius:50%;flex:0 0 48px;place-items:center;width:48px;height:48px;font-size:11px;font-weight:850;display:grid}.family-card h2{margin:2px 0 8px;font-size:20px}.family-card p{min-height:34px;color:var(--muted);margin:0 0 18px;font-size:11px;line-height:1.5}.family-links{gap:5px;display:grid}.family-links a{color:var(--lake);overflow-wrap:anywhere;font-size:11px;font-weight:700}.guide-view{max-width:1180px}.guide-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.guide-grid article{background:var(--paper);border:1px solid var(--line);border-radius:15px;min-height:215px;padding:24px}.guide-grid article>span{width:39px;height:39px;color:var(--lake);background:#e5efec;border-radius:10px;place-items:center;font-size:20px;display:grid}.guide-grid h2{margin:24px 0 9px;font-size:19px}.guide-grid p{color:var(--muted);margin:0;font-size:11px;line-height:1.55}.guide-coming{background:#fff8e6;border:1px solid #e6c78d;border-radius:12px;align-items:center;gap:17px;margin-top:22px;padding:19px 22px;display:flex}.guide-coming>span{background:var(--gold);color:#fff;letter-spacing:.7px;text-transform:uppercase;border-radius:7px;padding:6px 9px;font-size:9px;font-weight:850}.guide-coming strong,.guide-coming p{display:block}.guide-coming strong{font-size:12px}.guide-coming p{color:#6f664f;margin:4px 0 0;font-size:10px}.backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40;background:#0f24275c;position:fixed;inset:0}.drawer{background:var(--paper);z-index:50;flex-direction:column;width:min(510px,96vw);animation:.24s ease-out slide-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-14px 0 50px #13292c29}@keyframes slide-in{0%{opacity:0;transform:translate(35px)}}.drawer-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:92px;padding:20px 25px;display:flex}.drawer-head h2{margin:4px 0 0;font-size:26px}.drawer-head>button{width:36px;height:36px;color:var(--muted);cursor:pointer;background:#eff2ed;border:0;border-radius:50%;font-size:24px}.drawer-body{flex:1;padding:23px 25px 30px;overflow-y:auto}.mode-toggle{background:#edf1ec;border-radius:10px;grid-template-columns:1fr 1fr;margin-bottom:24px;padding:4px;display:grid}.mode-toggle button{min-height:39px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:12px;font-weight:750}.mode-toggle .selected{color:var(--ink);background:#fff;box-shadow:0 3px 10px #1e3c3c14}fieldset{border:0;margin:0 0 22px;padding:0}legend,.drawer-body>label,.form-row label{width:100%;margin-bottom:9px;font-size:12px;font-weight:800;display:block}.room-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.room-options button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:9px;align-items:center;gap:8px;min-height:50px;padding:0 11px;display:flex}.room-options button>span{color:var(--muted)}.room-options button strong{flex:1;font-size:11px}.room-options button i{width:19px;height:19px;color:var(--muted);background:#edf1ec;border-radius:50%;place-items:center;font-size:10px;font-style:normal;display:grid}.room-options button.selected{border-color:var(--lake);background:#f0f7f5}.room-options button.selected i{background:var(--lake);color:#fff}.form-row{grid-template-columns:1fr 1fr;gap:11px;display:grid}input[type=text],input[type=date],input[type=time],input[type=email],input[type=password],input[type=tel],textarea{width:100%;min-height:46px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #cfd9d4;border-radius:9px;outline:none;margin-top:7px;padding:11px 13px;font-weight:500}.drawer input:focus,.drawer textarea:focus,.login-form input:focus{border-color:var(--lake);box-shadow:0 0 0 3px #186d781a}.drawer textarea{resize:vertical;min-height:88px}.optional{float:right;color:var(--muted);font-size:10px;font-weight:500}.check-line{border:1px solid var(--line);cursor:pointer;border-radius:10px;gap:10px;margin:0 0 17px;padding:13px;display:flex!important}.check-line input{accent-color:var(--lake)}.check-line span{flex:1}.check-line strong,.check-line small{display:block}.check-line small{color:var(--muted);margin-top:3px;font-weight:500}.overlap-note{background:#fff8e6;border:1px solid #e6c78d;border-radius:10px;gap:11px;margin-top:18px;padding:14px;display:flex}.overlap-note>span{background:var(--gold);color:#fff;border-radius:50%;place-items:center;width:23px;height:23px;font-family:Georgia,serif;font-weight:800;display:grid}.overlap-note div{flex:1}.overlap-note strong{font-size:12px}.overlap-note p{color:#6f664f;margin:4px 0 11px;font-size:11px;line-height:1.45}.overlap-note label{align-items:center;gap:6px;font-size:10px;font-weight:650;display:flex}.overlap-note input{accent-color:var(--lake)}.drawer-footer{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;gap:9px;padding:17px 25px;display:flex}.drawer-footer.split{justify-content:space-between}.danger-link{color:#9a4d3b;cursor:pointer;background:0 0;border:0;font-weight:700}.drawer-form{flex-direction:column;flex:1;min-height:0;display:flex}.form-error,.login-error{color:#8f402f;background:#fff0eb;border:1px solid #dfaa9a;border-radius:9px;margin-top:16px;padding:11px 13px;font-size:11px;line-height:1.45}.organizer-card{background:#f3f5f0;border-radius:11px;align-items:center;gap:12px;padding:14px;display:flex}.organizer-card .list-avatar{width:42px;height:42px}.organizer-card small,.organizer-card strong,.organizer-card a{display:block}.organizer-card small{color:var(--muted);font-size:10px}.organizer-card strong{margin:2px 0;font-size:13px}.organizer-card a{color:var(--lake);font-size:10px;font-weight:750}.detail-dates{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:23px 0;display:grid}.detail-dates small,.detail-dates strong{display:block}.detail-dates small{color:var(--muted);font-size:10px}.detail-dates strong{margin-top:4px;font-size:13px}.detail-dates>span{color:var(--muted)}.edit-panel{padding:22px 0 4px}.field-help{color:var(--muted);margin:-2px 0 18px;font-size:10px;line-height:1.45}.reserved-tags{flex-wrap:wrap;gap:7px;display:flex}.reserved-tags span{color:var(--lake-dark);background:#e9f1ef;border-radius:7px;padding:8px 10px;font-size:10px;font-weight:750}.notes-card{border:1px solid var(--line);border-radius:10px;margin:20px 0;padding:15px}.notes-card small{color:var(--muted);font-size:10px;font-weight:750}.notes-card p{margin:5px 0 0;font-size:12px;line-height:1.5}.history{color:var(--muted);align-items:center;gap:9px;padding-top:8px;display:flex}.history>span{width:20px;height:20px;color:var(--sage);background:#dcebdd;border-radius:50%;place-items:center;font-size:10px;display:grid}.history strong,.history small{display:block}.history strong{color:var(--ink);font-size:10px}.history small{margin-top:2px;font-size:9px}.history-panel{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.history-panel>.eyebrow{margin-bottom:8px;display:block}.history-panel .history{align-items:flex-start;padding:9px 0}.history-panel .history+.history{border-top:1px solid #edf0eb}.toast{z-index:90;background:var(--ink);color:#fff;border-radius:10px;align-items:center;gap:9px;padding:13px 18px;font-size:12px;font-weight:650;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 12px 35px #10242840}.toast span{background:var(--sage);border-radius:50%;place-items:center;width:21px;height:21px;display:grid}.modal-wrap{z-index:60;place-items:center;display:grid;position:fixed;inset:0}.modal-wrap .backdrop{z-index:0}.preferences-modal{z-index:1;background:var(--paper);border-radius:15px;width:min(520px,94vw);max-height:92vh;position:relative;overflow:auto;box-shadow:0 22px 65px #0f252840}.preferences-modal>p{color:var(--muted);margin:22px 25px 10px;font-size:12px;line-height:1.5}.preference-list{padding:0 25px 22px}.preference-list label{border-bottom:1px solid var(--line);cursor:pointer;gap:10px;padding:13px 0;display:flex}.preference-list input{accent-color:var(--lake)}.preference-list span{flex:1}.preference-list strong,.preference-list small{display:block}.preference-list strong{font-size:12px}.preference-list small{color:var(--muted);margin-top:3px;font-size:10px}.login-help a,.login-copy a{color:var(--lake);font-weight:750}.login-success,.manage-message{color:#355f3b;background:#edf8ee;border:1px solid #a8c9ad;border-radius:9px;margin:0 0 16px;padding:11px 13px;font-size:11px;line-height:1.45}.link-button{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.account-section{border-bottom:1px solid var(--line);padding:20px 25px}.account-section h3{margin:0;font-family:Georgia,serif;font-size:18px}.account-section>p{color:var(--muted);margin:5px 0 10px;font-size:11px}.account-section .preference-list{padding:0 0 14px}.password-form{grid-template-columns:1fr 1fr;gap:10px;margin-top:13px;display:grid}.password-form label{font-size:11px;font-weight:750}.password-form label:first-child{grid-column:1/-1}.password-form .field-help{grid-column:1/-1;margin:0}.password-form button{justify-self:start}.profile-form{grid-template-columns:1fr 1fr;gap:10px;margin-top:13px;display:grid}.profile-form label{font-size:11px;font-weight:750}.profile-form label small{color:var(--muted);margin-top:4px;font-size:9px;font-weight:500;display:block}.profile-form .field-help{grid-column:1/-1;margin:0}.profile-form button{justify-self:start}.date-picker{width:100%;margin-top:7px;font-weight:500;position:relative}.date-picker-trigger{width:100%;min-height:46px;color:var(--ink);font:inherit;cursor:pointer;text-align:left;background:#fff;border:1px solid #cfd9d4;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;display:flex}.date-picker-trigger:focus-visible{border-color:var(--lake);outline:none;box-shadow:0 0 0 3px #186d781a}.date-picker-trigger i{color:var(--muted);font-size:12px;font-style:normal}.date-picker-popover{z-index:60;border:1px solid var(--line);background:var(--paper);border-radius:12px;width:292px;padding:13px;position:absolute;top:calc(100% + 7px);left:0;box-shadow:0 16px 42px #1434372e}.date-picker-month{grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:10px;display:grid}.date-picker-month strong{text-align:center;font-family:Georgia,Times New Roman,serif;font-size:15px}.date-picker-month button,.date-picker-days button{color:var(--ink);cursor:pointer;background:0 0;border:0}.date-picker-month button{background:#f1f3ee;border-radius:8px;width:34px;height:34px;font-size:21px}.date-picker-weekdays,.date-picker-days{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.date-picker-weekdays span{height:23px;color:var(--muted);place-items:center;font-size:9px;font-weight:800;display:grid}.date-picker-days button{border-radius:50%;width:34px;height:34px;font-size:11px;font-weight:650}.date-picker-days button:hover:not(:disabled){background:#e8efeb}.date-picker-days button.outside{color:#aab4af}.date-picker-days button.selected{background:var(--lake);color:#fff}.date-picker-days button:disabled{color:#d4dad7;cursor:not-allowed}.jump-date{color:var(--muted);align-items:center;gap:7px;margin-left:12px;font-size:10px;font-weight:750;display:flex}.jump-date .date-picker{width:148px;margin:0}.jump-date .date-picker-trigger{width:148px;height:34px;min-height:34px;padding:0 9px;font-size:10px}.date-picker-compact .date-picker-popover{left:auto;right:0}.date-controls .date-picker-trigger{background:#fff;width:148px}.date-controls .date-picker-month button{width:34px;height:34px;padding:0}.date-controls .date-picker-days button{width:34px;height:34px;padding:0;font-size:11px}.date-controls .today-button{width:auto;padding:0 10px;font-size:10px;font-weight:750}.manage-page{width:min(1220px,92vw);margin:0 auto;padding:48px 0 80px}.manage-top{justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:26px;display:flex}.manage-top h1{margin:6px 0 8px}.manage-top p{color:var(--muted);margin:0;font-size:13px}.manage-grid{grid-template-columns:.8fr 1.7fr;align-items:start;gap:20px;display:grid}.manage-card{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:23px;box-shadow:0 7px 25px #243c390d}.manage-card.full{grid-column:1/-1}.manage-form{gap:12px;display:grid}.manage-form label{font-size:11px;font-weight:800}.manage-form select,.manage-row select{background:#fff;border:1px solid #cfd9d4;border-radius:8px;min-height:42px;padding:0 10px}.manage-form .primary-button{justify-self:start}.manage-list{border-top:1px solid var(--line)}.manage-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(180px,1fr) 130px 105px auto;align-items:center;gap:10px;min-height:67px;display:grid}.manage-row strong,.manage-row small{display:block}.manage-row strong{font-size:12px}.manage-row small{color:var(--muted);margin-top:3px;font-size:10px}.manage-row .secondary-button{min-height:38px;padding:0 13px}.invite-row{grid-template-columns:minmax(240px,1fr) auto auto}.event-block{cursor:pointer;text-align:left;color:var(--ink)}.mobile-nav{display:none}.login-page{background:radial-gradient(circle at 80% 15%, #d7e9e5 0, transparent 31%), var(--cream);place-items:center;width:100%;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;width:min(440px,100%);padding:34px;box-shadow:0 22px 70px #17343b1c}.login-brand{min-width:0;margin-bottom:40px}.login-copy h1{margin:8px 0 10px;font-size:38px}.login-copy p{color:var(--muted);margin:0 0 23px;font-size:13px;line-height:1.55}.login-form label{margin-bottom:16px;font-size:12px;font-weight:800;display:block}.login-form .primary-button{width:100%;min-height:48px;margin-top:4px}.login-help{color:var(--muted);text-align:center;margin:22px 0 0;font-size:10px}@media (max-width:900px){.topbar{height:66px;padding:0 18px}.brand{min-width:0}.brand-mark{width:36px;height:36px}.brand-mark:before{width:22px;top:14px;left:7px}.brand-mark:after{top:17px;left:14px}.brand-mark i{top:-5px;left:4px}.brand strong{font-size:17px}.brand span,.desktop-nav,.avatar-button b,.avatar-button i{display:none}.avatar-button{min-width:0}.hero-row{align-items:flex-start}.hero-row .primary-button{flex:none;width:48px;padding:0;font-size:0}.hero-row .primary-button span{margin:0;font-size:24px}.calendar-toolbar{z-index:4;background:var(--paper);align-items:flex-start;padding:16px;position:sticky;left:0}.legend{display:none}.lower-grid{grid-template-columns:1fr}.grid-corner,.room-label{flex-basis:180px;width:180px}.room-line,.shared-line{min-width:1220px}.availability-grid{scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.room-label{scroll-snap-align:start}.day-cell,.booking-block,.mobile-nav button,.drawer-head>button{touch-action:manipulation}.mobile-nav{z-index:30;border-top:1px solid var(--line);height:62px;padding-bottom:env(safe-area-inset-bottom);background:#fffdfaf7;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{min-width:54px;min-height:44px;color:var(--muted);background:0 0;border:0;font-size:10px;font-weight:750}.mobile-nav button:nth-child(3){background:var(--lake);color:#fff;border-radius:50%;width:43px;min-width:43px;height:43px;font-size:23px;box-shadow:0 6px 15px #0e525c3b}.mobile-nav .nav-active{color:var(--lake)}main{padding-bottom:100px}}@media (max-width:560px){main{width:calc(100% - 28px);padding-top:30px}.hero-row{margin-bottom:21px}.hero-row p{max-width:310px;line-height:1.45}.calendar-card{border-radius:13px}.date-controls h2{font-size:16px}.date-controls button{width:44px;height:44px}.calendar-toolbar{min-height:72px}.grid-corner,.room-label{flex-basis:150px;width:150px}.room-label{padding:0 9px}.room-label small{display:none}.room-label strong{font-size:12px}.room-line,.shared-line{min-width:1190px}.lower-grid{margin-top:16px}.upcoming-card,.gathering-card{padding:19px}.drawer{width:100vw}.drawer-head{z-index:2;background:var(--paper);min-height:82px;padding:16px 18px;position:sticky;top:0}.drawer-body{padding:20px 18px}.drawer-footer{padding:12px 18px calc(12px + env(safe-area-inset-bottom));z-index:2;position:sticky;bottom:0}.drawer-footer .primary-button,.drawer-footer .secondary-button{min-height:48px}.room-options{grid-template-columns:1fr}.room-options button{min-height:54px}.toast{bottom:75px;left:14px;right:14px;transform:none}.form-row{grid-template-columns:1fr;gap:2px}input[type=text],input[type=date],input[type=time],input[type=email],input[type=password],textarea{font-size:16px}.detail-dates{grid-template-columns:1fr auto 1fr}.login-page{padding:14px}.login-card{padding:26px 20px}.login-copy h1{font-size:33px}}@media (max-width:900px){.content-grid{grid-template-columns:1fr}.family-grid,.guide-grid{grid-template-columns:repeat(2,1fr)}.manage-grid{grid-template-columns:1fr}.manage-card.full{grid-column:auto}.manage-row{grid-template-columns:1fr 120px 100px auto}.date-controls{flex-wrap:wrap}.jump-date{margin-left:76px}}@media (max-width:560px){.content-heading{align-items:flex-start}.content-heading .primary-button{flex:0 0 48px;width:48px;min-height:48px;padding:0;font-size:0}.content-heading .primary-button span{font-size:23px}.content-card{padding:19px}.family-grid,.guide-grid{grid-template-columns:1fr}.family-card{min-height:0}.guide-grid article{min-height:175px}.guide-coming{align-items:flex-start}.password-form{grid-template-columns:1fr}.password-form label:first-child{grid-column:auto}.profile-form{grid-template-columns:1fr}.profile-form .field-help{grid-column:auto}input[type=tel]{font-size:16px}.jump-date{margin-left:0}.jump-date span{display:none}.jump-date .date-picker,.jump-date .date-picker-trigger{width:148px}.jump-date .date-picker-trigger{height:44px;min-height:44px}.date-picker-popover{width:min(292px,100vw - 36px)}.date-controls .today-button{height:44px}.manage-page{width:calc(100% - 28px);padding-top:30px}.manage-top{align-items:flex-start}.manage-row,.invite-row{grid-template-columns:1fr 1fr;padding:13px 0}.manage-row>div{grid-column:1/-1}}
