@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f3f6f8;--surface:#fff;--surface-2:#f8fafb;--ink:#10283c;--ink-soft:#475a6b;--line:#dbe3e9;--field-line:#7a8ea0;--btn-line:#aebccb;--primary:#0a6b7c;--primary-strong:#07525f;--primary-soft:#e1f2f4;--accent:#ffb238;--accent-strong:#f59e0b;--nav-bg:#0d2638;--nav-ink:#cfe0ea;--nav-hover:#ffffff12;--nav-active:#5fd3d929;--nav-accent:#5fd3d9;--approved:#1c7a48;--approved-bg:#e2f5ea;--pending:#8a5700;--pending-bg:#fff0d1;--declined:#b02a2a;--declined-bg:#fde7e7;--muted:#52606d;--muted-bg:#e8edf1;--focus:#1f5fd6;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #10283c0f, 0 4px 14px #10283c0d;--shadow-lg:0 12px 40px #10283c47;--paper:var(--bg);--paper-raised:var(--surface);--brass:var(--primary);--font:"Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--tabs-h:64px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-text-size-adjust:100%;margin:0;font-size:16px;line-height:1.5}h1,h2,h3{font-family:var(--font);letter-spacing:-.015em;color:var(--ink);margin:0 0 .4em;font-weight:700;line-height:1.2}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1.05rem}a{color:var(--primary)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}.sidebar :focus-visible{outline-color:var(--nav-accent)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--ink);color:#fff;z-index:100;border-radius:0 0 8px;padding:.6em 1em;position:absolute;top:0;left:-999px}.skip-link:focus{top:0;left:0}.icon{flex:none}button{font-family:var(--font);cursor:pointer;font-size:1rem}.btn,.btn-outline{border:1px solid var(--primary);border-radius:10px;justify-content:center;align-items:center;gap:.5em;min-height:44px;padding:.55em 1.15em;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.btn{background:var(--primary);color:#fff}.btn:hover:not(:disabled){background:var(--primary-strong);border-color:var(--primary-strong)}.btn-outline{background:var(--surface);color:var(--ink);border-color:var(--btn-line)}.btn-outline:hover:not(:disabled){background:var(--primary-soft);border-color:var(--primary)}.btn:disabled,.btn-outline:disabled{opacity:.5;cursor:not-allowed}.btn-approve{background:var(--approved);border-color:var(--approved);color:#fff}.btn-approve:hover:not(:disabled){background:#155f38;border-color:#155f38}.btn-decline{background:var(--declined);border-color:var(--declined);color:#fff}.btn-decline:hover:not(:disabled){background:#8f2020;border-color:#8f2020}.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--ink)}.btn-accent:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.btn-text{color:var(--primary);background:0 0;border:none;border-radius:8px;min-height:40px;padding:.5em .6em;font-size:.95rem;font-weight:600}.btn-text:hover:not(:disabled){background:var(--primary-soft)}.btn-text:disabled{opacity:.5;cursor:not-allowed}.icon-btn{width:44px;height:44px;color:var(--ink);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.icon-btn:hover{background:var(--primary-soft)}.btn-row{flex-wrap:wrap;align-items:center;gap:.7em;display:flex}.seg{flex-wrap:wrap;gap:.5em;margin-bottom:1.2em;display:flex}input,select,textarea{font-family:var(--font);border:1px solid var(--field-line);background:var(--surface);min-height:44px;color:var(--ink);border-radius:10px;width:100%;padding:.6em .75em;font-size:1rem}textarea{resize:vertical}input[type=checkbox],input[type=radio]{width:22px;height:22px;min-height:0;accent-color:var(--primary);flex:none;padding:0}input[readonly]{background:var(--muted-bg);color:var(--ink-soft)}input:disabled,select:disabled{opacity:.6}label{color:var(--ink-soft);margin-bottom:.3em;font-size:.88rem;font-weight:600;display:block}.inline-label{align-items:center;gap:.5em;margin:0;display:flex}.inline-label select{width:auto}.check{color:var(--ink);align-items:flex-start;gap:.6em;margin:0 0 1em;font-size:.95rem;font-weight:400;display:flex}.check input{margin-top:.1em}.field{margin-bottom:1em}.form-row-2{grid-template-columns:1fr 1fr;gap:0 1em;display:grid}.pw-toggle{min-height:36px;padding:.3em .6em;position:absolute;top:50%;right:.2em;transform:translateY(-50%)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.15em 1.3em}.card.flush{padding:1em}.hint{color:var(--ink-soft);font-size:.88rem}.empty{color:var(--ink-soft);text-align:center;background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius);padding:1em}.error-text{color:var(--declined);margin-top:.4em;font-size:.95rem}.banner{border-radius:var(--radius-sm);border:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1em;margin-bottom:1em;padding:.8em 1em;display:flex}.banner-error{background:var(--declined-bg);color:var(--declined);border-color:#f0b4b4}.banner-warn{background:var(--pending-bg);color:var(--ink);border-color:#f0cf8a}.banner-info{background:var(--primary-soft);color:var(--ink);border-color:#a9d6dc}.badge{background:var(--declined);color:#fff;text-align:center;border-radius:1em;min-width:1.5em;margin-left:.4em;padding:0 .45em;font-size:.72rem;font-weight:700;line-height:1.6;display:inline-block}.app{grid-template-columns:268px minmax(0,1fr);min-height:100vh;display:grid}.main{min-width:0}.main:focus{outline:none}.main-inner{max-width:1240px;margin:0 auto;padding:32px 40px 64px}.sidebar{background:var(--nav-bg);height:100vh;color:var(--nav-ink);flex-direction:column;gap:6px;padding:22px 14px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.3rem;font-weight:800;text-decoration:none;display:flex}.brand b{color:var(--primary);font-weight:800}.sidebar .brand{color:#fff;padding:2px 8px 18px}.sidebar .brand b,.brand-light b{color:var(--nav-accent)}.brand-light{color:#fff}.side-cta{min-height:48px;margin:0 4px 14px}.side-nav{flex-direction:column;gap:2px;display:flex}.side-heading{letter-spacing:.08em;text-transform:uppercase;color:#8fa9bb;margin:16px 12px 4px;font-size:.72rem;font-weight:700}.nav-link{min-height:44px;color:var(--nav-ink);text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;width:100%;padding:0 12px;font-size:.95rem;font-weight:600;text-decoration:none;display:flex;position:relative}.nav-link:hover{background:var(--nav-hover);color:#fff}.nav-link.active{background:var(--nav-active);color:#fff}.nav-link.active:before{content:"";background:var(--nav-accent);border-radius:0 4px 4px 0;width:4px;position:absolute;top:9px;bottom:9px;left:-14px}.nav-link .badge{margin-left:auto}.side-foot{border-top:1px solid #ffffff1a;flex-direction:column;gap:2px;margin-top:auto;padding-top:12px;display:flex}.user-card{color:#fff;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.user-card:hover{background:var(--nav-hover)}.user-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.user-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.user-text small{color:#9db6c6;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.avatar{background:var(--primary);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:inline-flex}.sidebar .avatar{background:var(--nav-accent);color:var(--nav-bg)}.bell-wrap{position:relative}.bell .badge{margin:0;position:absolute;top:4px;right:4px}.sidebar .bell .badge{margin-left:auto;position:static}.notif-panel{z-index:60;width:min(360px,100vw - 24px);max-height:min(420px,70vh);box-shadow:var(--shadow-lg);padding:.6em 1em;position:fixed;overflow-y:auto}.notif-side{bottom:16px;left:280px}.notif-top{top:60px;right:12px}.notif-item{border-bottom:1px solid var(--line);padding:.6em 0;font-size:.9rem}.notif-item:last-child{border-bottom:none}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.6em 1em;margin-bottom:.4em;display:flex}.page-head h1{margin-bottom:.1em}.page-actions{flex-wrap:wrap;align-items:center;gap:.6em;display:flex}.split{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:24px;display:grid}.split-rail{flex-direction:column;gap:16px;display:flex;position:sticky;top:24px}.how-it-works ol{margin:0;padding-left:1.2em;font-size:.92rem}.how-it-works li{margin-bottom:.5em}.card.start-from{margin:0;padding:0}.start-from summary{cursor:pointer;border-radius:var(--radius);padding:1em 1.3em;font-weight:700;list-style:none}.start-from summary::-webkit-details-marker{display:none}.start-from summary:after{content:"▾";float:right;color:var(--ink-soft)}.start-from[open] summary:after{content:"▴"}.start-from>:not(summary){margin-left:1.3em;margin-right:1.3em}.start-from>:last-child{margin-bottom:1.1em}.cal-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}.auth-page{grid-template-columns:minmax(340px,5fr) 6fr;min-height:100vh;display:grid}.auth-brand{color:#fff;background:linear-gradient(155deg,#0d2638 0%,#0a4a5a 60%,#0a6b7c 120%);flex-direction:column;justify-content:space-between;padding:40px 48px;display:flex}.auth-pitch h2{color:#fff;max-width:14em;margin-bottom:.8em;font-size:2.1rem;line-height:1.15}.auth-pitch ul{margin:0;padding:0;list-style:none}.auth-pitch li{color:#d4e6ee;margin-bottom:.55em;padding-left:1.7em;position:relative}.auth-pitch li:before{content:"";background:var(--nav-accent);border-radius:50%;width:.8em;height:.8em;position:absolute;top:.45em;left:0}.auth-main{justify-content:center;align-items:center;padding:32px 24px;display:flex}.auth-card-wrap{width:min(440px,100%)}.auth-card-wrap h1{font-size:2rem}.auth-wrap{max-width:440px;margin:3em auto;padding:0 1.2em}.doc-page{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:700px;box-shadow:var(--shadow);margin:2em auto;padding:1.6em 1.8em 2em}.doc-page ul{padding-left:1.2em}.doc-page li{margin-bottom:.4em}.member-row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8em;padding:.6em 0;display:flex}.member-row:last-child{border-bottom:none}.series-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1em;margin-bottom:.6em;display:flex}.decline-box{background:var(--declined-bg);margin-top:.8em}.edit-row{flex-wrap:wrap;gap:.4em;display:flex}.edit-row input[type=date]{width:11em}.edit-row input[type=time]{width:8em}.actions{white-space:normal}.actions .btn{margin:0 .4em .3em 0}.action-row{flex-wrap:wrap;gap:.4em;margin-bottom:.3em;display:flex}.status-chip{letter-spacing:.01em;border-radius:999px;padding:.2em .7em;font-size:.76rem;font-weight:700;display:inline-block}.status-pending{background:var(--pending-bg);color:var(--pending)}.status-approved{background:var(--approved-bg);color:var(--approved)}.status-declined,.status-lapsed{background:var(--declined-bg);color:var(--declined)}.status-draft,.status-cancelled{background:var(--muted-bg);color:var(--muted)}table.bookings-table{border-collapse:collapse;width:100%;font-size:.92rem}table.bookings-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);border-bottom:1px solid var(--line);padding:.6em .7em;font-size:.74rem;font-weight:700}table.bookings-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:.75em .7em}table.bookings-table tbody tr:hover td{background:var(--surface-2)}table.bookings-table tr.subrow td{border-bottom:none;padding-top:0}table.bookings-table tr.subrow:hover td{background:0 0}.week-nav{flex-wrap:wrap;align-items:center;gap:.6em;margin-bottom:1em;display:flex}.week-label{margin-left:.4em;font-size:1.05rem}.seg-tight{gap:0;margin:0 .6em 0 0}.seg-tight button{border-radius:0;margin-left:-1px}.seg-tight button:first-child{border-radius:10px 0 0 10px;margin-left:0}.seg-tight button:last-child{border-radius:0 10px 10px 0}.calendar-grid{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);grid-template-columns:58px repeat(7,minmax(0,1fr));font-size:.8rem;display:grid;overflow:hidden}.calendar-grid .day-head{text-align:center;border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-2);padding:.6em .3em;font-weight:700}.calendar-grid .day-head.is-today{background:var(--primary);color:#fff}.calendar-grid .corner{border-bottom:1px solid var(--line);background:var(--surface-2)}.calendar-grid .hour-label{text-align:right;color:var(--ink-soft);border-top:1px solid var(--line);padding:.3em;font-size:.75rem}.calendar-grid .day-col{border-left:1px solid var(--line);border-top:1px solid var(--line);background-image:linear-gradient(var(--line) 1px, transparent 1px);background-position:0 -1px;background-size:100% 44px;min-height:34px;position:relative}.day-link{min-height:0;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.day-link:hover,.day-link:focus-visible{text-decoration-color:currentColor}.hall-legend{flex-wrap:wrap;gap:.4em 1em;margin:.8em 0 1.1em;font-size:.85rem;display:flex}.hall-legend .dot{border-radius:50%;width:10px;height:10px;margin-right:.35em;display:inline-block}.booking-block{color:#fff;cursor:pointer;text-align:left;min-height:0;font-size:.72rem;line-height:1.25;font-family:var(--font);border:1px solid #0003;border-radius:6px;padding:3px 6px;position:absolute;overflow:hidden;box-shadow:0 1px 2px #00000026}.booking-block:hover{filter:brightness(1.08)}.booking-block em{font-style:normal;font-weight:700}.booking-block.is-pending,.month-chip.is-pending{background-image:repeating-linear-gradient(135deg,#ffffff47 0 4px,#0000 4px 8px);border-style:dashed;border-color:#ffffffd9}.calendar-grid.is-day .booking-block{padding:5px 9px;font-size:.85rem}.agenda-day{margin-bottom:1.1em}.agenda-day h2{border-bottom:1px solid var(--line);padding-bottom:.25em;font-size:1rem}.agenda-day.is-today h2{color:var(--primary)}.agenda-item{text-align:left;background:var(--surface);border:1px solid var(--line);border-left:6px solid var(--primary);width:100%;color:var(--ink);min-height:48px;box-shadow:var(--shadow);border-radius:10px;margin-bottom:.45em;padding:.65em .9em;display:block}.agenda-item.is-pending{border-style:dashed dashed dashed solid}.month{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.month-dow{text-align:center;background:var(--surface-2);border-bottom:1px solid var(--line);padding:.55em .3em;font-size:.8rem;font-weight:700}.month-cell{border-left:1px solid var(--line);border-top:1px solid var(--line);flex-direction:column;gap:3px;min-width:0;min-height:118px;padding:4px;display:flex}.month-cell.is-outside{background:var(--surface-2)}.month-cell.is-outside .month-num{color:var(--ink-soft)}.month-cell.is-today .month-num{background:var(--primary);color:#fff;border-radius:50%}.month-num{min-width:28px;min-height:28px;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-self:flex-start;align-items:center;gap:4px;padding:0 6px;font-weight:700;display:inline-flex}.month-chip{color:#fff;text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;min-height:24px;font-size:.72rem;line-height:1.3;font-family:var(--font);border:1px solid #0003;border-radius:5px;padding:2px 5px;overflow:hidden}.month-more{color:var(--primary);text-align:left;cursor:pointer;background:0 0;border:none;min-height:24px;padding:2px 4px;font-size:.78rem;font-weight:600;text-decoration:underline}.month-count{background:var(--primary);color:#fff;border-radius:8px;padding:0 5px;font-size:.7rem}.month-dots{gap:3px;padding:0 6px;display:flex}.month-dots span{border-radius:50%;width:7px;height:7px}.modal-backdrop{z-index:70;background:#0d26388c;justify-content:center;align-items:center;padding:1em;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{width:min(560px,100%);max-height:100%;box-shadow:var(--shadow-lg);border-radius:16px;padding:1.4em 1.5em;overflow-y:auto}.modal-head{justify-content:space-between;align-items:center;gap:1em;display:flex}.comments{border-top:1px solid var(--line);margin-top:1.2em;padding-top:.9em}.comments h3{font-size:1rem}.comment-list{max-height:240px;margin:0 0 .8em;padding:0;list-style:none;overflow-y:auto}.comment{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;margin-bottom:.4em;padding:.5em .75em}.comment.is-mine{background:var(--primary-soft);border-color:#a9d6dc}.comment-meta{color:var(--ink-soft);font-size:.78rem}.comment p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.15em 0 0}.start-from ul,.slot-results{margin:.6em 0 0;padding:0;list-style:none}.template-row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6em;padding:.5em 0;display:flex}.slot-hall{border-bottom:1px solid var(--line);padding:.75em 0}.slot-hall:last-child{border-bottom:none}.slot-status{font-weight:700}.slot-free{color:var(--approved)}.slot-busy{color:var(--declined)}.finder{margin-bottom:0}.finder .form-row-2{grid-template-columns:1fr}.mobile-top,.bottom-tabs,.sheet-backdrop{display:none}@media (width<=899px){.app{display:block}.sidebar{display:none}.main-inner{padding:18px 16px calc(var(--tabs-h) + 28px + env(safe-area-inset-bottom))}.mobile-top{z-index:40;background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:8px;height:56px;padding:0 8px 0 14px;display:flex;position:sticky;top:0}.mobile-top .brand{flex:none}.mobile-title{text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;padding-left:4px;font-size:1.05rem;font-weight:700;overflow:hidden}.avatar-link{justify-content:center;align-items:center;width:44px;height:44px;text-decoration:none;display:inline-flex}.bottom-tabs{z-index:40;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #10283c0f}.tab{min-height:var(--tabs-h);color:var(--ink-soft);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 2px;font-size:.72rem;font-weight:600;text-decoration:none;display:flex;position:relative}.tab.active{color:var(--primary)}.tab.active:before{content:"";background:var(--primary);border-radius:0 0 3px 3px;height:3px;position:absolute;top:0;left:28%;right:28%}.tab-icon{display:inline-flex;position:relative}.tab-icon .badge{margin:0;font-size:.65rem;position:absolute;top:-6px;right:-12px}.tab-new{color:var(--ink)}.tab-new.active:before{display:none}.fab{background:var(--accent);width:52px;height:52px;color:var(--ink);border:3px solid var(--surface);border-radius:50%;justify-content:center;align-items:center;margin-top:-22px;display:inline-flex;box-shadow:0 4px 12px #f59e0b80}.tab-new-label{margin-top:-2px}.sheet-backdrop{z-index:80;background:#0d263880;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;padding:14px 12px calc(14px + env(safe-area-inset-bottom));box-shadow:var(--shadow-lg);border-radius:20px 20px 0 0}.sheet-user{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-bottom:4px;padding:4px 12px 14px;display:flex}.sheet .user-text small{color:var(--ink-soft)}.sheet-link{width:100%;min-height:52px;color:var(--ink);text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:14px;padding:0 12px;font-size:1rem;font-weight:600;text-decoration:none;display:flex}.sheet-link:hover,.sheet-link.active{background:var(--primary-soft)}.notif-top{width:auto;top:62px;left:12px;right:12px}h1{font-size:1.5rem}.cal-layout.has-rail,.split{grid-template-columns:1fr}.split-rail{order:-1;position:static}.how-it-works{display:none}.auth-page{display:block}.auth-brand{gap:14px;padding:20px 20px 22px}.auth-pitch h2{margin-bottom:.3em;font-size:1.3rem}.auth-pitch ul{display:none}.auth-main{align-items:flex-start;padding:20px 16px 40px}.auth-card-wrap h1{font-size:1.6rem}}@media (width>=1100px){.cal-layout.has-rail{grid-template-columns:minmax(0,1fr) 340px}.cal-layout.has-rail .cal-main{order:1}.cal-layout.has-rail .finder{order:2;position:sticky;top:24px}}@media (width<=760px){.form-row-2{grid-template-columns:1fr}.modal-backdrop{align-items:flex-end;padding:0}.modal{width:100%;max-height:92vh;padding-bottom:calc(1.4em + env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.month-cell{min-height:58px}.card{padding:1em}.page-actions{width:100%}.hide-phone{display:none}.card table.responsive tr{box-shadow:none;background:var(--surface-2)}table.responsive,table.responsive tbody,table.responsive tr,table.responsive td{width:100%;display:block}table.responsive thead{position:absolute;left:-9999px}table.responsive tr{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);margin-bottom:.8em;padding:.4em .5em}table.responsive tr.subrow{box-shadow:none;background:0 0;border:none;padding:0}table.responsive td{border:none;padding:.35em .4em}table.bookings-table tbody tr:hover td{background:0 0}table.responsive td[data-label]:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:.7rem;font-weight:700;display:block}table.responsive td[data-label=Select]:before,table.responsive td[data-label=Actions]:before,table.responsive td[data-label=Decision]:before{display:none}}@media print{body{background:#fff;font-size:11pt}.sidebar,.mobile-top,.bottom-tabs,.no-print,.week-nav button,.week-nav .seg,.skip-link,.finder{display:none!important}.app{display:block}.main-inner{max-width:none;padding:0}.card{box-shadow:none;border:none;padding:0}.week-nav{margin:0}.calendar-grid{break-inside:avoid;font-size:8pt}.booking-block{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.danger-zone{border:1px solid var(--declined)}.confirm-backdrop{z-index:90}.toolbar{flex-wrap:wrap;align-items:center;gap:.6em;margin:.6em 0 1em;display:flex}.toolbar input[type=search]{max-width:280px}
