@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/kudel/assets/fraunces-vietnamese-500-normal-GOH_-EGq.woff2) format("woff2"),url(/kudel/assets/fraunces-vietnamese-500-normal-B-KbxExq.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/kudel/assets/fraunces-latin-ext-500-normal-Z5DV8IzT.woff2) format("woff2"),url(/kudel/assets/fraunces-latin-ext-500-normal-BMcFk1Xs.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/kudel/assets/fraunces-latin-500-normal-DnGCNyPD.woff2) format("woff2"),url(/kudel/assets/fraunces-latin-500-normal-BTR4KCeb.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/kudel/assets/fraunces-vietnamese-600-normal-BjlAJixd.woff2) format("woff2"),url(/kudel/assets/fraunces-vietnamese-600-normal-DlAl5EAR.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/kudel/assets/fraunces-latin-ext-600-normal-BtzmzP0X.woff2) format("woff2"),url(/kudel/assets/fraunces-latin-ext-600-normal-B0Dy4lqi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/kudel/assets/fraunces-latin-600-normal-BFCDtZfi.woff2) format("woff2"),url(/kudel/assets/fraunces-latin-600-normal-DL5QCzvS.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/kudel/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(/kudel/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/kudel/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/kudel/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/kudel/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(/kudel/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/kudel/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/kudel/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/kudel/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2) format("woff2"),url(/kudel/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/kudel/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/kudel/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #223129;--ink-soft: #5f6d64;--ink-faint: #899188;--paper: #f5f1e8;--paper-deep: #eae4d7;--surface: #fffdf8;--surface-raised: #ffffff;--line: #ded8ca;--moss: #3f6850;--moss-deep: #294b38;--moss-pale: #dfe8db;--clay: #c26849;--clay-pale: #f0d9ca;--sun: #e9bd62;--danger: #a84e3d;--shadow-soft: 0 18px 50px rgba(44, 55, 43, .09);--shadow-card: 0 2px 1px rgba(46, 53, 44, .04), 0 9px 30px rgba(46, 53, 44, .06);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;font-family:DM Sans,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-width:320px;min-height:100%;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper)}button,input{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(194,104,73,.38);outline-offset:2px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.025em}.eyebrow{color:var(--clay);font-size:11px;font-weight:600;letter-spacing:.13em;line-height:1.2;text-transform:uppercase}.loading-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:13px;color:var(--ink-soft);background:radial-gradient(circle at 50% 42%,#fffdf9 0,var(--paper) 45%)}.loading-screen svg{color:var(--moss);animation:breathe 1.6s ease-in-out infinite}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.1fr) minmax(420px,.9fr);background:var(--surface)}.login-art{position:relative;min-height:100vh;overflow:hidden;display:flex;align-items:flex-end;padding:clamp(40px,6vw,88px);color:#f8f4e9;background:#314d3a;isolation:isolate}.login-art:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;content:"";opacity:.14;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.sun{position:absolute;top:15%;right:16%;width:110px;height:110px;border-radius:50%;background:#e6b861;box-shadow:0 0 80px #e6b8612e}.landscape{position:absolute;left:-10%;width:120%;border-radius:50% 50% 0 0/25% 25% 0 0;transform:rotate(-4deg);transform-origin:center}.landscape-back{z-index:1;bottom:13%;height:49%;background:#47644a;clip-path:polygon(0 36%,17% 22%,34% 37%,49% 17%,67% 34%,81% 20%,100% 37%,100% 100%,0 100%)}.landscape-front{z-index:2;bottom:-18%;height:52%;background:#223b2b;transform:rotate(3deg)}.house-mark{position:absolute;z-index:3;top:48%;left:50%;display:grid;place-items:center;width:122px;height:122px;color:#f3e9d3;border:1px solid rgba(255,255,255,.33);border-radius:50%;transform:translate(-50%,-50%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.login-quote{position:relative;z-index:6;font-family:Fraunces,Georgia,serif;font-size:clamp(25px,3vw,43px);font-weight:500;line-height:1.18;letter-spacing:-.025em}.login-panel{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,8vw,120px)}.brand-lockup{display:inline-flex;align-items:center;gap:11px;color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:17px;font-weight:600;text-decoration:none}.brand-icon{display:grid;width:34px;height:34px;place-items:center;color:var(--surface);background:var(--moss);border-radius:50%}.login-panel>.brand-lockup{position:absolute;top:42px}.login-copy{max-width:470px;margin-bottom:34px}.login-copy h1{margin:12px 0 14px;color:var(--ink);font-size:clamp(37px,4.4vw,57px);line-height:1.04}.login-copy>p:last-child{max-width:420px;color:var(--ink-soft);font-size:16px;line-height:1.65}.login-form{display:grid;gap:12px;width:100%;max-width:430px}.login-form label,.field-group label{color:var(--ink);font-size:13px;font-weight:600}.input-with-icon{position:relative}.input-with-icon>svg{position:absolute;top:50%;left:15px;z-index:1;color:var(--ink-faint);transform:translateY(-50%)}.input-with-icon input{width:100%;height:52px;padding:0 16px 0 45px;color:var(--ink);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-sm);transition:border-color .2s,box-shadow .2s}.input-with-icon input::placeholder{color:#9b9b90}.input-with-icon input:focus{border-color:var(--moss);box-shadow:0 0 0 3px #3f68501a;outline:none}.primary-button{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 18px;color:#fff;font-weight:600;background:var(--moss-deep);border:0;border-radius:var(--radius-sm);cursor:pointer;transition:transform .18s,background .18s,box-shadow .18s}.primary-button:hover:not(:disabled){background:#1e402e;box-shadow:0 8px 20px #2445302e;transform:translateY(-1px)}.primary-button:disabled{opacity:.48;cursor:not-allowed}.form-error{color:var(--danger);font-size:13px}.demo-hint{color:var(--ink-faint);font-size:12px;line-height:1.5;text-align:center}.demo-hint strong{color:var(--ink-soft)}.app-shell{min-height:100vh}.app-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,58px);background:#f5f1e8eb;border-bottom:1px solid rgba(184,176,159,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-meta{display:flex;align-items:center;gap:18px}.connection-status{display:flex;align-items:center;gap:8px;color:var(--ink-soft);font-size:12px}.connection-status i{width:7px;height:7px;background:#599167;border-radius:50%;box-shadow:0 0 0 4px #5991671c}.logout-button{display:flex;align-items:center;gap:7px;padding:8px 10px;color:var(--ink-soft);font-size:12px;background:transparent;border:0;border-radius:7px;cursor:pointer}.logout-button:hover{color:var(--ink);background:#2231290f}.main-content{width:min(1450px,calc(100% - 48px));margin:0 auto;padding:52px 0 62px}.intro{margin:0 0 34px 5px}.intro h2{margin:8px 0 7px;color:var(--ink);font-size:clamp(32px,3.5vw,48px);line-height:1.12}.intro>p:last-child{color:var(--ink-soft);font-size:15px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:20px;transition:opacity .2s}.workspace.is-loading{opacity:.68}.calendar-card,.booking-panel{background:var(--surface);border:1px solid rgba(196,187,169,.7);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.calendar-card{overflow:hidden}.calendar-toolbar{min-height:105px;display:flex;align-items:center;justify-content:space-between;padding:23px 28px 20px;border-bottom:1px solid var(--line)}.calendar-toolbar h1{margin-top:7px;font-size:30px;line-height:1.1}.calendar-actions{display:flex;align-items:center;gap:10px}.today-button{height:38px;padding:0 15px;color:var(--ink-soft);font-size:12px;font-weight:600;background:transparent;border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}.today-button:hover{color:var(--ink);background:var(--paper)}.month-buttons{display:flex;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm)}.month-buttons button{width:39px;height:37px;display:grid;place-items:center;background:transparent;border:0;cursor:pointer}.month-buttons button+button{border-left:1px solid var(--line)}.month-buttons button:hover{background:var(--paper)}.weekday-row{display:grid;grid-template-columns:repeat(7,1fr);padding:0 12px;color:var(--ink-faint);background:#faf7f0;border-bottom:1px solid var(--line)}.weekday-row span{padding:11px 8px 9px;font-size:10px;font-weight:600;letter-spacing:.14em;text-align:right;text-transform:uppercase}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);padding:0 12px;background:var(--surface)}.day-cell{position:relative;min-width:0;height:103px;padding:9px 0 6px;text-align:left;background:transparent;border:0;border-right:1px solid #e7e1d5;border-bottom:1px solid #e7e1d5;cursor:pointer}.day-cell:nth-child(7n){border-right:0}.day-cell:nth-last-child(-n+7){border-bottom:0}.day-cell:not(:disabled):hover{background:#f6f3e9}.day-cell:disabled{cursor:default}.day-number{position:relative;z-index:2;width:27px;height:27px;display:grid;place-items:center;margin-left:auto;margin-right:7px;color:var(--ink-soft);font-size:12px;font-weight:500;border-radius:50%}.outside-month .day-number{color:#beb9ae}.is-past:not(.is-occupied) .day-number{color:#c7c1b6}.is-today .day-number{color:#fff;background:var(--clay)}.event-strip{position:absolute;top:43px;right:0;left:0;z-index:1;height:29px;overflow:hidden;padding:6px 6px 4px 10px;color:#365543;font-size:10px;font-weight:600;line-height:18px;text-overflow:ellipsis;white-space:nowrap;background:var(--moss-pale);border-left:3px solid var(--moss)}.event-strip.continues{border-left-color:transparent}.event-strip.ends{right:5px;border-radius:0 6px 6px 0}.is-selected{background:#f9ede5!important}.is-selected:after{position:absolute;top:3px;right:3px;bottom:3px;left:3px;content:"";pointer-events:none;border:1px solid rgba(194,104,73,.28);border-radius:7px}.is-event-selected{background:#edf2e9!important}.is-event-selected:after{position:absolute;top:3px;right:3px;bottom:3px;left:3px;z-index:3;content:"";pointer-events:none;border:2px solid rgba(63,104,80,.48);border-radius:7px}.selection-dot{position:absolute;bottom:10px;left:50%;width:5px;height:5px;background:var(--clay);border-radius:50%;transform:translate(-50%)}.calendar-legend{display:flex;gap:22px;padding:15px 22px;color:var(--ink-faint);font-size:11px;background:#faf7f0;border-top:1px solid var(--line)}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:10px;height:10px;border-radius:3px}.legend-free{background:var(--surface);border:1px solid var(--line)}.legend-occupied{background:var(--moss-pale);border:1px solid #b7cab6}.legend-selected{background:var(--clay-pale);border:1px solid #daa68d}.booking-panel{position:sticky;top:20px;overflow:hidden}.panel-heading{min-height:105px;display:flex;align-items:center;gap:13px;padding:24px;border-bottom:1px solid var(--line)}.panel-icon{width:42px;height:42px;display:grid;flex:0 0 auto;place-items:center;color:var(--moss);background:var(--moss-pale);border-radius:50%}.panel-heading h2{margin-top:6px;font-size:21px}.empty-selection{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px 30px;text-align:center}.empty-moon{width:70px;height:70px;display:grid;place-items:center;margin-bottom:19px;color:var(--clay);background:#f7eadd;border-radius:50%}.empty-selection h3{margin-bottom:9px;font-size:18px}.empty-selection p{max-width:240px;color:var(--ink-faint);font-size:13px;line-height:1.6}.selection-progress{min-height:300px;display:grid;grid-template-columns:auto 1fr;align-content:center;gap:12px;padding:34px}.selection-progress .step-check{color:var(--moss)}.selection-progress div{display:grid;gap:4px}.selection-progress div span{color:var(--ink-faint);font-size:11px;text-transform:uppercase}.selection-progress div strong{font-family:Fraunces,serif;font-size:16px}.selection-progress p{grid-column:2;color:var(--clay);font-size:13px}.booking-form{display:grid;gap:17px;padding:23px}.selected-range{padding:17px;background:#f7f3e9;border:1px solid #e6decd;border-radius:11px}.range-dates{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}.range-dates>div{display:grid;gap:3px}.range-dates span{color:var(--ink-faint);font-size:9px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.range-dates strong{color:var(--ink);font-family:Fraunces,serif;font-size:13px;line-height:1.35}.range-dates svg{color:var(--clay)}.night-count{display:flex;align-items:center;gap:6px;margin-top:13px;padding-top:11px;color:var(--ink-soft);font-size:11px;border-top:1px solid var(--line)}.night-count svg{color:var(--clay)}.availability{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600}.availability span{width:7px;height:7px;border-radius:50%}.availability.available{color:var(--moss)}.availability.available span{background:#67a074;box-shadow:0 0 0 4px #67a0741f}.availability.unavailable{color:var(--danger)}.availability.unavailable span{background:var(--danger)}.field-group{display:grid;gap:8px}.booking-summary{display:flex;justify-content:space-between;padding:0 2px;color:var(--ink-faint);font-size:11px}.booking-summary strong{color:var(--ink-soft);font-weight:600}.text-button{padding:2px;color:var(--ink-faint);font-size:11px;background:transparent;border:0;cursor:pointer}.text-button:hover{color:var(--clay)}.event-details{display:grid;gap:17px;padding:23px}.event-person{display:flex;align-items:center;gap:12px}.event-avatar{width:42px;height:42px;display:grid;place-items:center;color:var(--moss);background:var(--moss-pale);border-radius:50%}.event-person>div{display:grid;gap:2px}.event-person span:not(.event-avatar){color:var(--ink-faint);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.event-person strong{color:var(--ink);font-family:Fraunces,serif;font-size:19px}.danger-button{min-height:46px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--danger);font-size:12px;font-weight:600;background:#fff7f3;border:1px solid #e9c6b8;border-radius:var(--radius-sm);cursor:pointer}.danger-button:hover{color:#823728;background:#f9e5dc;border-color:#dba895}.delete-confirmation{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:15px;color:var(--danger);background:#fff4ef;border:1px solid #e9c6b8;border-radius:10px}.delete-confirmation>svg{margin-top:1px}.delete-confirmation strong{display:block;color:#7f392c;font-size:12px}.delete-confirmation p{margin-top:4px;color:#9a655b;font-size:10px;line-height:1.45}.delete-actions{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:3px}.delete-actions button{min-height:39px;padding:0 10px;color:var(--ink-soft);font-size:10px;font-weight:600;background:#fff;border:1px solid var(--line);border-radius:7px;cursor:pointer}.delete-actions .confirm-delete{color:#fff;background:var(--danger);border-color:var(--danger)}.delete-actions button:disabled{opacity:.55;cursor:wait}.panel-note{display:flex;gap:9px;padding:17px 22px;color:var(--ink-faint);font-size:10px;line-height:1.5;background:#faf7f0;border-top:1px solid var(--line)}.panel-note span{color:var(--clay)}.notice,.calendar-error{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:13px 15px;font-size:13px;border:1px solid;border-radius:10px;animation:slide-in .35s ease both}.notice.success{color:var(--moss-deep);background:#e7efe3;border-color:#c8d8c2}.notice.error,.calendar-error{color:#843f32;background:#f7e4db;border-color:#ecc3b3}.notice>span,.calendar-error>span{flex:1}.notice button{display:grid;place-items:center;padding:4px;color:inherit;background:transparent;border:0;border-radius:5px;cursor:pointer}.calendar-error button{color:inherit;font-weight:600;background:transparent;border:0;text-decoration:underline;cursor:pointer}footer{display:flex;justify-content:space-between;padding:23px clamp(24px,4vw,58px);color:#858d84;font-size:10px;letter-spacing:.04em;border-top:1px solid rgba(184,176,159,.55)}.setup-shell{min-height:100vh;display:grid;place-items:center;padding:72px 24px;background:radial-gradient(circle at 15% 5%,#fff9ec 0,transparent 32%),var(--paper)}.back-link{position:absolute;top:28px;left:30px;display:flex;align-items:center;gap:7px;color:var(--ink-soft);font-size:12px;text-decoration:none}.back-link:hover{color:var(--clay)}.setup-card{width:min(720px,100%);padding:clamp(28px,6vw,62px);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.setup-card>.brand-lockup{margin-bottom:46px}.setup-card h1{margin:9px 0 13px;font-size:clamp(34px,5vw,52px);line-height:1.05}.setup-intro{max-width:560px;color:var(--ink-soft);line-height:1.65}.setup-form{display:grid;gap:10px;max-width:430px;margin-top:30px}.setup-form label{color:var(--ink);font-size:13px;font-weight:600}.setup-form input,.calendar-picker select{height:50px;padding:0 14px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm)}.setup-form input:focus,.calendar-picker select:focus{border-color:var(--moss);outline:none;box-shadow:0 0 0 3px #3f68501a}.setup-steps{display:grid;gap:1px;margin-top:35px;overflow:hidden;background:var(--line);border:1px solid var(--line);border-radius:12px}.setup-step{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:21px;background:#fffdf8}.step-number{width:29px;height:29px;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:600;background:var(--moss);border-radius:50%}.setup-step strong{color:var(--ink)}.setup-step p{margin-top:4px;color:var(--ink-faint);font-size:12px;line-height:1.5}.outlook-button{grid-column:2;width:fit-content;display:flex;align-items:center;gap:9px;margin-top:8px;padding:10px 14px;color:#fff;font-size:12px;font-weight:600;text-decoration:none;background:#176fc1;border-radius:7px}.calendar-picker{grid-column:2;display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:9px}.calendar-picker .primary-button{min-height:50px}.setup-waiting{grid-column:2;padding:10px 12px;background:var(--paper);border-radius:7px}.setup-message{display:flex;align-items:flex-start;gap:9px;margin-top:18px;padding:13px;font-size:12px;line-height:1.5;border-radius:8px}.setup-message.success{color:var(--moss-deep);background:var(--moss-pale)}.setup-message.error{color:var(--danger);background:#f7e4db}@keyframes breathe{50%{opacity:.45;transform:translateY(-3px)}}@keyframes slide-in{0%{opacity:0;transform:translateY(-8px)}}@media(max-width:1050px){.workspace{grid-template-columns:1fr}.booking-panel{position:static;display:grid;grid-template-columns:250px 1fr}.panel-heading{align-items:flex-start;border-right:1px solid var(--line);border-bottom:0}.empty-selection,.selection-progress{min-height:210px}.booking-form{grid-column:2;grid-row:1 / span 2}.panel-note{grid-column:1;border-right:1px solid var(--line)}}@media(max-width:780px){.login-shell{grid-template-columns:1fr}.login-art{display:none}.login-panel{min-height:100vh;padding:110px 25px 44px}.login-panel>.brand-lockup{top:28px}.app-header{height:64px;padding:0 18px}.connection-status{display:none}.main-content{width:min(100% - 24px,650px);padding:34px 0 45px}.intro{margin-bottom:24px}.calendar-toolbar{min-height:92px;padding:18px}.calendar-toolbar h1{font-size:24px}.calendar-card{border-radius:16px}.weekday-row,.calendar-grid{padding-right:5px;padding-left:5px}.day-cell{height:78px}.event-strip{top:39px;height:23px;padding:3px 3px 3px 5px;font-size:8px;line-height:16px;border-left-width:2px}.day-number{width:24px;height:24px;margin-right:4px;font-size:11px}.calendar-legend{gap:13px;padding:12px 14px}.booking-panel{display:block;border-radius:16px}.panel-heading{border-right:0;border-bottom:1px solid var(--line)}.booking-form{display:grid}.panel-note{border-right:0}footer{flex-direction:column;gap:4px}}@media(max-width:500px){.header-meta .logout-button span,.today-button{display:none}.calendar-toolbar{min-height:84px}.calendar-toolbar h1{font-size:21px}.weekday-row span{padding:8px 3px;text-align:center}.day-cell{height:65px}.event-strip{top:35px;height:19px;line-height:13px}.calendar-legend{flex-wrap:wrap}.range-dates{grid-template-columns:1fr}.range-dates>svg{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
