@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css";@import "https://cdn.jsdelivr.net/gh/sunn-us/SUIT/fonts/static/woff2/SUIT.css";@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&display=swap";:root{--white:#fff;--bg-appshell:#000;--bg-primary:#0f0e0d;--bg-secondary:#1a1816;--bg-tertiary:#24211e;--bg-hover:#2a2521;--bg-elevated:#312c28;--bg-overlay:#00000073;--page-bg:var(--bg-primary);--input-bg:var(--bg-secondary);--text-primary:#f5f2ee;--text-secondary:#b8b2aa;--text-muted:#7a746d;--text-disabled:#3a3530;--text-inverse:#1a1a1a;--text-error:#ff4d4f;--text-success:#34c759;--border-primary:#2a2521;--border-secondary:#3a332d;--border-strong:#4a4139;--divider:#f5f2ee14;--accent-primary:#ff6a2a;--accent-primary-hover:#ff7a42;--accent-primary-active:#e85b1d;--accent-secondary:#00e5ff;--accent-info:#3b82f6;--calendar-text-default:#f5f2ee;--calendar-text-adjacent:#6e6862;--calendar-sunday-current:#ff5c5c;--calendar-sunday-adjacent:#7a3a3a;--calendar-saturday-current:#4cc9f0;--calendar-saturday-adjacent:#2f5f6e;--calendar-selected-bg:#2a2521;--calendar-selected-border:#ff6a2a;--calendar-today-border:#b8b2aa;--calendar-dot-empty:#ffffff1f;--person-01:#dadada;--team-01:#ff6a2a;--team-02:#ff3b3b;--team-03:#ffd60a;--team-04:#a7f432;--team-05:#06d6a0;--team-06:#00e5ff;--team-07:#4cc9f0;--team-08:#4361ee;--team-09:#3a0ca3;--team-10:#7209b7;--team-11:#b5179e;--team-12:#f72585;--team-13:#f9844a;--team-14:#90be6d;--team-15:#577590;--team-16:#e76f51;--team-text-light:#fff;--team-text-dark:#1a1a1a;--reservation-me:#00e5ff;--reservation-pending:#ff6a2a73;--reservation-dimmed:#ffffff1f;--state-inactive:#5c5650;--kakao-bg:#252525;--kakao-cymbol:#fee500;--side-modal-bg:#1c1a18;--info-card-bg:var(--bg-secondary);--info-card-text:var(--text-muted);--info-card-shadow:#00000040;--font-title:"Pretendard", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-body:"Pretendard", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-calendar:"SUIT", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--text-2xs:10px;--text-xs:11px;--text-sm:12px;--text-mm:13px;--text-md:14px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:24px;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--lh-tight:1.2;--lh-normal:1.4;--lh-relaxed:1.6;--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-10:10px;--space-12:12px;--space-14:14px;--space-16:16px;--space-20:20px;--space-24:24px;--space-28:28px;--space-32:32px;--space-40:40px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px;--radius-circle:50%;--border-width-sm:1px;--shadow-sm:0 2px 8px #0000002e;--shadow-md:0 6px 18px #00000047;--shadow-button:0 6px 16px #ff6a2a59;--mobile-min-width:390px;--mobile-max-width:600px;--page-horizontal-padding:16px;--header-height:70px;--month-header-height:50px;--timeline-time-width:40px;--timeline-row-height:24px;--timeline-bar-height:18px;--bottom-hero-height:181px;--bottom-hero-width:352px;--cta-height:56px;--bottom-nav-safe-space:20px;--page-bottom-padding-sm:80px;--page-bottom-padding-lg:120px;--header-action-size:36px;--logo-size-md:64px;--side-modal-width:250px;--z-base:1;--z-content:10;--z-floating:20;--z-sticky:30;--z-overlay:100;--z-modal:1000;--z-toast:2000;--transition-button:opacity .12s ease, transform .12s ease;--transition-input:border-color .16s ease, box-shadow .16s ease;--button-height-sm:44px;--button-height-md:52px;--button-height-lg:56px;--button-height-xs:24px;--card-row-height:60px;--team-color-swatch-size:45px;--button-radius-sm:8px;--button-radius-md:10px;--button-radius-lg:14px;--button-padding-x-sm:12px;--button-padding-x-md:16px;--button-padding-x-lg:20px;--button-font-size-sm:var(--text-sm);--button-font-size-md:var(--text-md);--button-font-size-lg:var(--text-lg);--button-font-weight:var(--weight-medium);--button-transition:transform .12s ease, opacity .12s ease, background-color .12s ease, border-color .12s ease, color .12s ease;--button-shadow-default:inset 0 1px 0 #ffffff08, 0 4px 12px #0000003d;--button-shadow-pressed:inset 0 1px 0 #ffffff05, 0 2px 8px #00000047;--button-filled-bg:var(--accent-primary);--button-filled-color:var(--text-primary);--button-danger-bg:var(--text-error);--button-disabled-bg:#3a3a3c;--button-disabled-color:var(--text-secondary);--button-outline-bg:transparent;--button-outline-border:var(--accent-info);--button-outline-color:var(--accent-info);--button-ghost-bg:transparent;--button-ghost-border:var(--text-primary);--button-ghost-color:var(--text-primary);--modal-padding:20px;--modal-backdrop-bg:#000000b8;--modal-panel-width-sm:300px;--modal-panel-width-md:340px;--modal-panel-padding:28px 20px 20px;--modal-radius:18px;--modal-shadow:0 12px 40px #0000006b, inset 0 1px 0 #ffffff0a;--modal-backdrop-blur:blur(4px);--modal-button-height:52px;--modal-button-radius:10px;--input-height-sm:44px;--textarea-min-height:72px;--input-status-error-shadow:0 0 0 2px #ff3b3026;--input-status-success-shadow:0 0 0 2px #00c85326;--spinner-size-sm:18px;--spinner-border:2px solid #ffffff2e;--toast-min-height:48px;--role-badge-min-width:45px}*{box-sizing:border-box}html,body,#root{width:100%;min-width:var(--mobile-min-width);height:100%;margin:0;padding:0;overflow:hidden}body{background:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-body);line-height:var(--lh-normal)}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.app-shell{width:100%;min-width:var(--mobile-min-width);background:var(--bg-appshell);justify-content:center;height:100dvh;display:flex;overflow:hidden}.mobile-frame{width:100%;min-width:var(--mobile-min-width);max-width:var(--mobile-max-width);background:var(--bg-appshell);flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}.layout-mobile{width:100%;min-width:var(--mobile-min-width);max-width:var(--mobile-max-width);background:var(--bg-primary);flex-direction:column;height:100dvh;margin:0 auto;display:flex;overflow:hidden}.layout-content{background-color:var(--bg-primary);-ms-overflow-style:none;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;flex-direction:column;flex:1;height:100%;min-height:0;display:flex;position:relative;overflow-y:auto}.layout-content::-webkit-scrollbar{display:none}.section-padding{padding-left:var(--page-horizontal-padding);padding-right:var(--page-horizontal-padding)}.section-divider{border-top:var(--border-width-sm) solid var(--divider)}.page-header,.page-sub-header{height:var(--button-height-lg);box-sizing:border-box;background-color:var(--bg-primary);flex-shrink:0}.page-header{padding:0 var(--space-8);justify-content:space-between;align-items:center;display:flex;position:relative}.page-header__menu{width:var(--header-action-size);height:var(--header-action-size);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.page-header__menu:active{opacity:.6}.page-header__logo{cursor:pointer;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.page-header__logo img{height:var(--space-40);object-fit:contain}.page-header__logo:active{opacity:.7}.page-header__right{width:var(--header-action-size)}.page-sub-header{padding:0 var(--space-8);justify-content:space-between;align-items:center;display:flex;position:relative}.page-sub-header__left,.page-sub-header__right{width:var(--logo-size-md);align-items:center;height:100%;display:flex}.page-sub-header__left{justify-content:flex-start}.page-sub-header__right{justify-content:flex-end}.page-sub-header__back-button{width:var(--header-action-size);height:var(--header-action-size);color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.page-sub-header__back-button:active{opacity:.6}.page-sub-header__refresh-button{width:var(--header-action-size);height:var(--header-action-size);color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.page-sub-header__refresh-button:active{opacity:.6}.page-sub-header__refresh-button:disabled{cursor:default}.page-sub-header__refresh-button.is-refreshing svg{animation:.72s linear infinite pageSubHeaderRefreshSpin}.page-sub-header__title{font-family:var(--font-title);font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--text-primary);pointer-events:none;margin:0;padding:0;line-height:1;position:absolute;left:50%;transform:translate(-50%)}@keyframes pageSubHeaderRefreshSpin{to{transform:rotate(360deg)}}.page-header__title{font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--lh-tight);color:var(--text-primary)}.page-empty{padding:var(--space-24) var(--space-16);text-align:center;color:var(--text-secondary);font-size:var(--text-md)}.bottom-hero-area{z-index:var(--z-sticky);margin-top:auto;position:sticky;bottom:0}.bottom-hero{width:var(--bottom-hero-width);max-width:100%;height:var(--bottom-hero-height);margin:auto auto 0;position:relative;overflow:hidden}.bottom-hero img{object-fit:cover;object-position:center bottom;opacity:.95;width:100%;height:100%;transform:translateY(0%)}.bottom-cta-wrap{z-index:var(--z-sticky);padding:0 var(--space-16) calc(var(--space-16) + var(--bottom-nav-safe-space));background:linear-gradient(to top, var(--bg-primary) 55%, #0f0e0deb 78%, #0f0e0d00 100%);position:sticky;bottom:0}.reservation-status-page{background-color:var(--bg-primary);flex-direction:column;flex:1;display:flex}.action-modal{z-index:var(--z-modal);padding:var(--modal-padding);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.action-modal__backdrop{background:var(--modal-backdrop-bg);-webkit-backdrop-filter:var(--modal-backdrop-blur);backdrop-filter:var(--modal-backdrop-blur);position:absolute;inset:0}.action-modal__panel{width:100%;max-width:var(--modal-panel-width-md);padding:var(--modal-panel-padding);border-radius:var(--modal-radius);box-shadow:var(--modal-shadow);background:linear-gradient(#1c1c1efa 0%,#141416fa 100%);animation:.18s ease-out modalFadeUp;position:relative}.action-modal__actions{gap:var(--space-10);margin-top:var(--space-24);display:flex}.action-modal__icon{margin-bottom:var(--space-16);justify-content:center;display:flex}.action-modal__title{color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--lh-tight);text-align:center;margin:0}.action-modal__description{margin-top:var(--space-20);color:var(--text-secondary);font-size:var(--text-md);line-height:var(--lh-normal);text-align:center}.action-modal__button{border-radius:var(--radius-sm);height:52px;color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-bold);border:0;flex:1}.action-modal__button--cancel{background:var(--bg-elevated)}.action-modal__button--primary,.action-modal__button--danger{background:var(--text-error)}.action-modal__button:disabled{cursor:not-allowed;opacity:.55}@keyframes modalFadeUp{0%{opacity:0;transform:translateY(var(--space-8)) scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes statusFadeIn{0%{opacity:0;transform:translateY(var(--space-2))}to{opacity:1;transform:translateY(0)}}@keyframes statusPop{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.bottom-action{z-index:var(--z-floating);padding:var(--space-16) var(--space-20) var(--space-24);background:linear-gradient(to top, var(--page-bg) 80%, transparent);flex-shrink:0;position:sticky;bottom:0}.bottom-action__button{z-index:var(--z-content);width:100%;height:var(--button-height-md);border-radius:var(--button-radius-lg);background-color:var(--button-filled-bg);color:var(--button-filled-color);font-size:var(--button-font-size-md);font-weight:var(--weight-bold);cursor:pointer;touch-action:manipulation;border:0;position:relative}.bottom-action__button:disabled{background-color:var(--button-disabled-bg);color:var(--button-disabled-color);opacity:1;cursor:not-allowed}.reservation-apply-button{left:var(--space-16);right:var(--space-16);height:var(--cta-height);border-radius:var(--radius-lg);background:var(--button-filled-bg);color:var(--button-filled-color);font-family:var(--font-title);font-size:var(--text-xl);font-weight:var(--weight-bold);box-shadow:var(--shadow-button);z-index:var(--z-floating);border:0;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:0;transform:translateY(-50%)}.floating-cta{z-index:var(--z-overlay);padding:0 var(--space-16) var(--space-20);background:var(--bg-primary);position:sticky;bottom:0}.floating-cta:before{content:"";left:0;right:0;top:calc(-1 * var(--space-32));height:var(--space-32);background:linear-gradient(to top, var(--bg-primary) 0%, #0000 100%);pointer-events:none;position:absolute}.card-row{width:100%;height:var(--card-row-height);padding:0 var(--space-14) 0 5%;box-sizing:border-box;border:var(--border-width-sm) solid #ffffff08;border-radius:var(--button-radius-lg);box-shadow:inset 0 var(--border-width-sm) 0 #ffffff0a, 0 4px 12px #00000038;justify-content:space-between;align-items:center;gap:var(--space-16);background:linear-gradient(#ffffff0a 0%,#ffffff05 100%);display:flex;position:relative}.card-row--button{border:var(--border-width-sm) solid #ffffff08;color:inherit;font:inherit;text-align:left}.card-row--interactive{transition:transform .14s,border-color .14s,background .14s,box-shadow .14s}.card-row--interactive:active{box-shadow:inset 0 var(--border-width-sm) 0 #ffffff08, 0 2px 8px #00000047;transform:scale(.985)}.card-row--selected{box-shadow:inset 0 var(--border-width-sm) 0 #ffffff0d, 0 4px 14px #00000042, 0 0 0 var(--border-width-sm) #ff6b2b6b;border-color:#ff6b2b80}.card-row__title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--text-primary);overflow:hidden}.card-row__right{align-items:center;gap:var(--space-8);flex-shrink:0;display:flex}.form-input{box-sizing:border-box;border:var(--border-width-sm) solid var(--text-muted);border-radius:var(--radius-sm);background-color:var(--input-bg);transition:var(--transition-input);align-items:center;display:flex}.form-input.is-invalid,.form-input.is-unavailable,.form-input.is-error{border-color:var(--text-error);box-shadow:var(--input-status-error-shadow)}.form-input.is-available,.form-input.is-success{border-color:var(--text-success);box-shadow:var(--input-status-success-shadow)}.form-input__control{min-width:0;height:100%;padding:0 var(--space-14);box-sizing:border-box;color:var(--text-primary);font-size:var(--text-md);background:0 0;border:0;outline:none;flex:1}.form-input__control::placeholder{color:var(--text-muted)}.form-input__action,.form-input>svg{margin-right:var(--space-10);flex-shrink:0}.form-input__action{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;animation:.16s ease-out statusFadeIn;display:flex}.form-input__action svg,.form-input>svg{width:var(--spinner-size-sm);height:var(--spinner-size-sm);transform-origin:50%;animation:.18s ease-out statusPop;display:block}.form-message{justify-content:flex-start;align-items:flex-start;gap:var(--space-4);text-align:left;color:var(--text-muted);display:flex}.form-message svg{margin-top:var(--border-width-sm);flex-shrink:0}.form-message p{text-align:left;font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--lh-normal);flex:1;margin:0}.form-message.is-error p,.form-message p.is-error{color:var(--text-error)}.form-message.is-success p,.form-message p.is-success{color:var(--text-success)}.info-box{padding:var(--space-16);border-radius:var(--radius-md);background:var(--info-card-bg);-webkit-backdrop-filter:blur(var(--space-6));backdrop-filter:blur(var(--space-6));box-shadow:0 4px 20px var(--info-card-shadow);gap:var(--space-10);flex-direction:column;display:flex}.info-box__item{align-items:flex-start;gap:var(--space-8);display:flex}.info-box__item svg{margin-top:calc(-1 * var(--border-width-sm));flex-shrink:0}.info-box__item p{font-size:var(--text-xs);color:var(--info-card-text);line-height:var(--lh-normal);margin:0}.role-badge{min-width:var(--role-badge-min-width);height:var(--space-20);padding:0 var(--space-8);box-sizing:border-box;border-radius:var(--radius-pill);font-size:var(--text-2xs);font-weight:var(--weight-light);justify-content:center;align-items:center;display:flex}.role-badge--leader{border:var(--border-width-sm) solid var(--accent-primary);color:var(--accent-primary)}.role-badge--member{border:var(--border-width-sm) solid var(--text-muted);color:var(--text-secondary)}.side-nav-modal{z-index:var(--z-modal);-webkit-backdrop-filter:blur(var(--border-width-sm));backdrop-filter:blur(var(--border-width-sm));background-color:#000c;position:absolute;inset:0}.side-nav-modal.is-open{animation:.2s ease-out forwards fadeIn}.side-nav-modal.is-closing{animation:.2s ease-in forwards fadeOut}.side-nav-modal__panel{width:var(--side-modal-width);height:100dvh;padding:var(--space-32) var(--space-12) var(--space-24);background-color:var(--side-modal-bg);box-sizing:border-box;position:relative}.side-nav-modal__panel.is-open{animation:.24s cubic-bezier(.22,1,.36,1) forwards slideIn}.side-nav-modal__panel.is-closing{animation:.2s ease-in forwards slideOut}.side-nav-modal__close{top:var(--space-12);right:var(--space-12);width:var(--space-24);height:var(--space-24);color:#777;font-size:var(--text-3xl);background:0 0;border:none;padding:0;line-height:1;position:absolute}.side-nav-modal__logo--guest{width:100%;margin:var(--space-24) 0 var(--space-20);justify-content:center;display:flex}.side-nav-modal__logo--guest img{width:163px;height:auto}.side-nav-modal__member-header{padding:0 var(--space-12);margin-top:var(--space-24);flex-direction:column;align-items:flex-start;display:flex}.side-nav-modal__logo--member{width:100%;margin-bottom:var(--space-12);justify-content:flex-start;display:flex}.side-nav-modal__logo--member img{width:63px;height:auto}.side-nav-modal__user{margin:0}.side-nav-modal__greeting{margin:0 0 var(--space-6);color:var(--accent-primary);font-size:var(--text-sm);font-weight:var(--weight-light)}.side-nav-modal__nickname{color:var(--accent-primary);font-size:var(--text-2xl);font-weight:var(--weight-bold);margin:0;line-height:1.2}.side-nav-modal__nickname-suffix{color:var(--accent-primary);font-size:var(--text-sm);font-weight:var(--weight-light)}.side-nav-modal__login{width:100%;height:var(--space-40);justify-content:center;align-items:center;gap:var(--space-6);padding:0 var(--space-8);border-radius:var(--radius-pill);background-color:var(--kakao-bg);color:var(--text-primary);font-size:var(--text-sm);border:none;font-weight:500;display:flex}.side-nav-modal__kakao-icon{background-color:var(--kakao-cymbol);flex-shrink:0;width:20px;height:20px;-webkit-mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12%204C6.48%204%202%207.48%202%2011.78C2%2014.52%203.84%2016.92%206.6%2018.31L5.74%2021.11C5.64%2021.45%206.02%2021.73%206.31%2021.52L9.77%2019.11C10.49%2019.25%2011.23%2019.56%2012%2019.56C17.52%2019.56%2022%2016.08%2022%2011.78C22%207.48%2017.52%204%2012%204Z'%20fill='currentColor'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12%204C6.48%204%202%207.48%202%2011.78C2%2014.52%203.84%2016.92%206.6%2018.31L5.74%2021.11C5.64%2021.45%206.02%2021.73%206.31%2021.52L9.77%2019.11C10.49%2019.25%2011.23%2019.56%2012%2019.56C17.52%2019.56%2022%2016.08%2022%2011.78C22%207.48%2017.52%204%2012%204Z'%20fill='currentColor'/%3e%3c/svg%3e") 50%/contain no-repeat}.side-nav-modal__divider{width:100%;height:var(--border-width-sm);margin:var(--space-24) 0;background-color:var(--border-primary)}.side-nav-modal__divider-bottom{left:var(--space-12);right:var(--space-12);bottom:var(--space-24);height:var(--border-width-sm);background-color:var(--border-primary);z-index:var(--z-base);position:absolute}.side-nav-modal__menu{gap:var(--space-4);flex-direction:column;display:flex}.side-nav-modal__menu-item{width:100%;height:var(--button-height-sm);color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-semibold);margin-bottom:var(--space-8);background:0 0;border:none;justify-content:space-between;align-items:center;padding-left:5%;padding-right:5%;display:flex}.side-nav-modal__arrow{width:20px;height:20px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideOut{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.toast{left:50%;bottom:var(--space-28);width:calc(100% - var(--space-40));max-width:calc(var(--mobile-max-width) - var(--space-40));min-height:var(--toast-min-height);padding:0 var(--space-16);box-sizing:border-box;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(var(--space-8));backdrop-filter:blur(var(--space-8));color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--weight-light);z-index:var(--z-toast);background-color:#000000b3;justify-content:center;align-items:center;animation:.32s cubic-bezier(.22,1,.36,1) toastSlideUp;display:flex;position:fixed;transform:translate(-50%)}@keyframes toastSlideUp{0%{opacity:0;transform:translate(-50%, var(--space-24))}to{opacity:1;transform:translate(-50%)}}.toast.hide{animation:.25s ease-in forwards toastSlideDown}@keyframes toastSlideDown{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%, var(--space-16))}}.calendar-section{margin-bottom:var(--space-12)}.calendar-month-header{height:50px;padding:0 var(--space-16);background:var(--bg-secondary);margin-bottom:var(--space-12);grid-template-columns:32px 1fr 32px;align-items:center;display:grid}.calendar-month-header__button{font-size:var(--text-lg);color:var(--text-primary);justify-content:center;align-items:center;display:inline-flex}.calendar-month-header__title{text-align:center;font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-semibold);color:var(--text-primary)}.calendar-weekdays{padding:var(--space-12) var(--space-16) var(--space-8);text-align:center;grid-template-columns:repeat(7,1fr);justify-items:center;display:grid}.calendar-weekdays__item{text-align:center;font-family:var(--font-calendar);font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-primary)}.calendar-weekdays__item--sun{color:var(--calendar-sunday-current)}.calendar-weekdays__item--sat{color:var(--calendar-saturday-current)}.calendar-grid{row-gap:var(--space-12);padding:var(--space-4) var(--space-16) var(--space-4);grid-template-columns:repeat(7,1fr);justify-items:center;display:grid}.calendar-day{aspect-ratio:1;border-radius:var(--radius-sm);background:0 0;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:44px;padding:0;transition:transform .16s,background-color .16s,border-color .16s,opacity .16s;display:flex}.calendar-day__label{text-align:center;min-width:24px;font-family:var(--font-calendar);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--calendar-text-default);line-height:1;transition:color .16s}.calendar-day__dots{justify-content:center;align-items:center;gap:2px;min-height:8px;display:flex}.calendar-day__dot{border-radius:999px;width:4px;height:4px}.calendar-day__holiday{font-size:9px;font-weight:var(--weight-semibold);color:var(--text-muted);line-height:1}.calendar-day--adjacent .calendar-day__label{color:var(--calendar-text-adjacent)}.calendar-day--sun .calendar-day__label{color:var(--calendar-sunday-current)}.calendar-day--sun.calendar-day--adjacent .calendar-day__label{color:var(--calendar-sunday-adjacent)}.calendar-day--sat .calendar-day__label{color:var(--calendar-saturday-current)}.calendar-day--sat.calendar-day--adjacent .calendar-day__label{color:var(--calendar-saturday-adjacent)}.calendar-day--holiday .calendar-day__label{color:var(--text-muted)}.calendar-day--selected{border:1px solid var(--calendar-selected-border);background:#ff6a2a14;box-shadow:0 0 0 1px #ff6a2a1a,0 0 10px #ff6a2a40}.calendar-selected-date{border-top:1px solid var(--divider);height:42px;font-family:var(--font-title);font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--text-primary);justify-content:center;align-items:center;display:flex}.calendar-section-divider{border-top:1px solid var(--divider);margin:var(--space-4) var(--space-16) var(--space-8)}.calendar-day:hover{background:#ffffff08;transform:translateY(-1px)}.calendar-day:active{transform:scale(.96)}.calendar-day--selected:hover{background:#ff6a2a24;transform:translateY(-1px)scale(1.03);box-shadow:0 0 0 1px #ff6a2a24,0 0 14px #ff6a2a4d}.calendar-day--selected:active{transform:scale(.94);box-shadow:0 0 0 1px #ff6a2a1a,0 0 14px #ff6a2a2e}.calendar-day__dot-count{color:var(--text-secondary);font-size:10px;line-height:1}.kakao-callback-page{background-color:var(--bg-primary);flex-direction:column;flex:1;min-height:100%;display:flex}.kakao-callback-page__content{width:100%;min-height:0;padding:var(--space-32) var(--space-20);box-sizing:border-box;justify-content:center;align-items:center;gap:var(--space-16);flex-direction:column;flex:1;display:flex}.kakao-callback-page__spinner{width:var(--space-32);height:var(--space-32);border-radius:var(--radius-circle);border:var(--spinner-border);border-top-color:var(--accent-primary);box-sizing:border-box;animation:.7s linear infinite kakaoCallbackSpin,.16s ease-out statusFadeIn}.kakao-callback-page__message{font-family:var(--font-title);font-size:var(--text-md);font-weight:var(--weight-medium);line-height:var(--lh-normal);color:var(--text-primary);text-align:center;margin-top:10px}@keyframes kakaoCallbackSpin{to{transform:rotate(360deg)}}.my-info-page{padding:var(--space-32) var(--space-20) var(--page-bottom-padding-lg)}.my-info-page__profile{margin-bottom:var(--header-action-size)}.my-info-page__label{margin:0 0 var(--space-6);font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--text-muted)}.my-info-page__label_accent{font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--accent-primary);margin:0}.my-info-page__nickname{margin:0 var(--space-6) 0 0;font-family:var(--font-title);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--accent-primary)}.my-info-page__nickname__suffix{font-size:var(--text-md);font-weight:var(--weight-light);color:var(--accent-primary)}.my-info-page__title{margin:0;margin-bottom:var(--space-6);font-family:var(--font-title);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--accent-primary)}.my-info-menu{gap:var(--space-4);flex-direction:column;display:flex}.my-info-menu__item{width:100%;height:var(--button-height-md);margin-bottom:var(--space-20);font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--text-primary);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding-left:5%;display:flex}.my-info-menu__arrow{align-items:center;display:flex}.my-info-page__divider{margin:var(--space-32) 0;height:var(--border-width-sm);background-color:var(--divider)}.my-info-detail{flex-direction:column;display:flex}.my-info-detail__row{width:100%;height:var(--button-height-md);margin-bottom:var(--space-20);box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--space-16);padding-left:5%;display:flex}.my-info-detail__label{font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--text-primary);flex:none}.my-info-detail__value{min-width:0;font-size:var(--text-md);font-weight:var(--weight-light);color:var(--text-secondary);text-align:right;word-break:break-all;justify-content:flex-end;align-items:center;display:flex}.my-info-detail__value--sns{gap:var(--space-6)}.my-info-detail__sns-icon{width:var(--spinner-size-sm);height:var(--spinner-size-sm);background-color:var(--kakao-cymbol);flex-shrink:0;display:block;-webkit-mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12%204C6.48%204%202%207.48%202%2011.78C2%2014.52%203.84%2016.92%206.6%2018.31L5.74%2021.11C5.64%2021.45%206.02%2021.73%206.31%2021.52L9.77%2019.11C10.49%2019.25%2011.23%2019.56%2012%2019.56C17.52%2019.56%2022%2016.08%2022%2011.78C22%207.48%2017.52%204%2012%204Z'%20fill='currentColor'/%3e%3c/svg%3e") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12%204C6.48%204%202%207.48%202%2011.78C2%2014.52%203.84%2016.92%206.6%2018.31L5.74%2021.11C5.64%2021.45%206.02%2021.73%206.31%2021.52L9.77%2019.11C10.49%2019.25%2011.23%2019.56%2012%2019.56C17.52%2019.56%2022%2016.08%2022%2011.78C22%207.48%2017.52%204%2012%204Z'%20fill='currentColor'/%3e%3c/svg%3e") 50%/contain no-repeat}.nickname-edit-page{background-color:var(--page-bg);flex-direction:column;min-height:100%;display:flex}.nickname-edit-page__content{width:100%;padding:var(--space-24) var(--space-20) var(--page-bottom-padding-sm);box-sizing:border-box;flex-direction:column;flex:1;align-items:center;display:flex}.nickname-edit-page__logo{width:var(--logo-size-md);height:var(--logo-size-md);margin-top:var(--space-24);margin-bottom:var(--space-20)}.nickname-edit-page__title{margin:0 0 var(--space-32);text-align:center;font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--text-primary);line-height:1.4}.nickname-form{width:100%;max-width:100%}.nickname-form__label{margin-bottom:var(--space-4);font-size:var(--text-md);color:var(--text-primary);display:block}.nickname-form__row{gap:var(--space-8);align-items:center;width:100%;display:flex}.nickname-form__input-wrap{min-width:0;height:var(--input-height-sm);flex:auto}.nickname-form__input{width:100%}.nickname-form__check-button{flex:0 0 var(--logo-size-md);width:var(--logo-size-md);height:var(--input-height-sm);box-sizing:border-box;border-radius:var(--button-radius-md);background-color:var(--button-filled-bg);color:var(--button-filled-color);font-size:var(--text-md);font-weight:var(--weight-medium);white-space:nowrap;cursor:pointer;border:none;justify-content:center;align-items:center;transition:transform .12s,opacity .12s;display:flex}.nickname-form__check-button:active{transform:scale(.96)}.nickname-form__check-button:disabled{background-color:var(--button-disabled-bg);color:var(--button-disabled-color);opacity:1;cursor:not-allowed}.nickname-form__message{margin:var(--space-8) 0 0;font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.4}.nickname-form__message.is-error{color:var(--text-error)}.nickname-form__message.is-success{color:var(--text-success)}.nickname-form__message-item{margin:var(--space-6) 0 0}.nickname-form__message-item p{color:var(--info-card-text)}.nickname-form__notice{margin-top:var(--space-16)}.nickname-form__status-icon svg{width:var(--spinner-size-sm);height:var(--spinner-size-sm)}.my-reservation-page{min-height:0;padding:var(--space-16) 0 0;background:var(--bg-primary);flex-direction:column;flex:1;display:flex}.my-reservation-panel{width:100%;padding:0}.my-reservation-page .bottom-hero{flex-shrink:0;margin-top:auto}.my-reservation-tabs{z-index:2;padding:0 var(--space-12);grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;display:grid;position:relative}.my-reservation-tabs:after{content:"";z-index:4;height:var(--border-width-sm);background:var(--accent-primary);pointer-events:none;position:absolute;bottom:0}.my-reservation-tabs--upcoming:after{right:var(--space-12);left:50%}.my-reservation-tabs--past:after{right:50%;left:var(--space-12)}.my-reservation-tabs__button{z-index:1;justify-content:center;align-items:center;gap:var(--space-8);border:var(--border-width-sm) solid var(--text-muted);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--bg-primary);height:40px;color:var(--text-muted);font-size:var(--text-md);font-weight:var(--weight-medium);border-bottom:0;display:inline-flex;position:relative}.my-reservation-tabs__button+.my-reservation-tabs__button{margin-left:-1px}.my-reservation-tabs__button.is-active{z-index:3;border-color:var(--accent-primary);background:var(--bg-primary);color:var(--accent-primary)}.my-reservation-tabs__button span{border-radius:var(--radius-pill);background:var(--text-muted);min-width:18px;height:18px;color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--weight-bold);justify-content:center;align-items:center;padding-top:1px;line-height:18px;display:inline-flex}.my-reservation-tabs__button.is-active span{background:var(--accent-primary)}.my-reservation-content{z-index:1;padding:var(--space-16) var(--space-12) var(--space-40);background:var(--bg-primary);margin-top:-1px;position:relative}.my-reservation-content:before{content:"";height:var(--border-width-sm);background:var(--accent-primary);pointer-events:none;position:absolute;top:0;left:0;right:0}.my-reservation-filters{align-items:center;gap:var(--space-12);padding:0 var(--space-4) var(--space-16);display:flex}.my-reservation-filters button{padding:0 var(--space-12);justify-content:center;align-items:center;gap:var(--space-8);border:var(--border-width-sm) solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-primary);height:35px;color:var(--text-secondary);font-size:var(--text-sm);display:inline-flex}.my-reservation-filters .my-reservation-filters__state{margin-left:auto}.my-reservation-filters button.is-filtered{border-color:var(--accent-primary);color:var(--accent-primary)}.my-reservation-filters svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.my-reservation-list{gap:var(--space-12);flex-direction:column;display:flex}.my-reservation-load-more{align-items:center;min-height:1px;display:flex}.my-reservation-load-more__skeleton{justify-content:center;gap:var(--space-8);width:100%;min-height:66px;padding:var(--space-12);border:var(--border-width-sm) solid var(--bg-tertiary);border-radius:var(--radius-sm);background:var(--bg-secondary);flex-direction:column;display:flex}.my-reservation-load-more__skeleton span{border-radius:var(--radius-pill);background:linear-gradient(90deg, var(--bg-tertiary) 0%, var(--border-strong) 50%, var(--bg-tertiary) 100%);background-size:200% 100%;height:10px;animation:1.1s ease-in-out infinite myReservationSkeletonPulse}.my-reservation-load-more__skeleton span:first-child{width:34%}.my-reservation-load-more__skeleton span:nth-child(2){width:72%}.my-reservation-load-more__skeleton span:nth-child(3){width:48%}.my-reservation-load-more__retry{border:var(--border-width-sm) solid var(--border-strong);border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium);background:0 0}.my-reservation-list__end{margin:var(--space-12) 0 0;color:var(--text-muted);font-size:var(--text-sm);line-height:var(--lh-normal);text-align:center}.my-reservation-card{--reservation-card-team-bg:var(--bg-secondary);--reservation-card-index:0;padding:var(--space-12) var(--space-12) var(--space-10);border:var(--border-width-sm) solid var(--bg-tertiary);border-radius:var(--radius-sm);transition:transform .14s,border-color .14s,filter .14s;position:relative;overflow:hidden}.my-reservation-list .my-reservation-card{opacity:0;transform-origin:top;animation:.22s ease-out forwards myReservationCardReveal;animation-delay:calc(var(--reservation-card-index) * 38ms)}.my-reservation-card--clickable{cursor:pointer}.my-reservation-card--clickable:hover{border-color:var(--border-strong);filter:brightness(1.06)}.my-reservation-card--clickable:active{filter:brightness(.96);transform:scale(.985)}.my-reservation-card--clickable:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.my-reservation-card--personal{background:var(--bg-secondary)}.my-reservation-card--team{background:var(--reservation-card-team-bg)}.my-reservation-card__top{justify-content:space-between;align-items:flex-start;gap:var(--space-12);min-height:28px;display:flex}.my-reservation-card__state{min-width:66px;height:24px;padding:0 var(--space-10);border:var(--border-width-sm) solid transparent;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-regular);justify-content:center;align-items:center;display:inline-flex}.my-reservation-card__state--pending{color:var(--accent-primary);background:#ff6a2a2e;border-color:#ff6a2a47}.my-reservation-card__state--approved{color:var(--text-success);background:#34c7592e;border-color:#34c75947}.my-reservation-card__state--rejected{color:var(--text-error);background:#ff4d4f29;border-color:#ff4d4f47}.my-reservation-card__state--canceled{color:var(--text-secondary);background:#94a3b829;border-color:#94a3b847}.my-reservation-card__state--completed{color:var(--accent-info);background:#3b82f62e;border-color:#3b82f647}.my-reservation-card__arrow{width:30px;height:30px;color:var(--text-secondary);justify-content:center;align-items:center;margin-top:-2px;display:inline-flex}.my-reservation-card__top svg,.my-reservation-card__meta svg,.my-reservation-card__details svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round}.my-reservation-card__top svg{width:20px;height:20px}.my-reservation-card__title-row{align-items:center;gap:var(--space-8);min-width:0;margin-top:var(--space-8);display:flex}.my-reservation-card__dot{border-radius:var(--radius-circle);flex:none;width:14px;height:14px}.my-reservation-card__title-row h2{min-width:0;color:var(--text-primary);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap;flex:auto;margin:0;overflow:hidden}.my-reservation-card__repeat,.my-reservation-card__conflict{height:22px;padding:0 var(--space-8);border:var(--border-width-sm) solid transparent;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-regular);flex:none;justify-content:center;align-items:center;display:inline-flex}.my-reservation-card__repeat{color:#bba2ff;background:#7209b747;border-color:#7209b747}.my-reservation-card__conflict{color:var(--text-error);background:#ff4d4f24;border-color:#ff4d4f47}.my-reservation-card__details{gap:var(--space-6);margin:var(--space-12) 0 0;padding:0 0 var(--space-12);border-bottom:var(--border-width-sm) solid var(--divider);flex-direction:column;display:flex}.my-reservation-card__details div{align-items:center;gap:var(--space-6);min-width:0;display:flex}.my-reservation-card__details dt{width:16px;height:16px;color:var(--text-secondary);flex:none}.my-reservation-card__details svg{width:16px;height:16px}.my-reservation-card__details dd{min-width:0;color:var(--text-secondary);font-size:var(--text-mm);line-height:var(--lh-normal);margin:0}.my-reservation-card__meta{align-items:center;gap:var(--space-12);padding-top:var(--space-10);color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--lh-normal);display:flex}.my-reservation-card__meta span{align-items:center;gap:var(--space-4);white-space:nowrap;min-width:0;display:inline-flex}.my-reservation-card__meta .my-reservation-card__applied-at{margin-left:auto}.my-reservation-card__meta svg{flex:none;width:14px;height:14px}.my-reservation-empty{margin:var(--space-32) 0 0;color:var(--text-muted);font-size:var(--text-sm);text-align:center}.my-reservation-loading{padding-top:var(--space-32);align-items:center;gap:var(--space-16);flex-direction:column;display:flex}.my-reservation-loading__spinner{width:var(--space-32);height:var(--space-32);border-radius:var(--radius-circle);border:var(--spinner-border);border-top-color:var(--accent-primary);box-sizing:border-box;animation:.7s linear infinite myReservationLoadingSpin}.my-reservation-loading .my-reservation-empty{margin-top:0}.my-reservation-detail-shell{background:var(--bg-primary);flex-direction:column;flex:1 0 auto;min-height:100%;display:flex}.my-reservation-detail-shell>.bottom-hero{flex:0 0 var(--bottom-hero-height);margin-top:auto;margin-bottom:0}.my-reservation-detail-page{gap:var(--space-12);min-height:0;padding:var(--space-16) var(--space-16) var(--space-28);background:var(--bg-primary);flex-direction:column;flex:none;display:flex}.my-reservation-detail-page>.my-reservation-card,.my-reservation-detail-page>.my-reservation-detail-section,.my-reservation-detail-page>.my-reservation-repeat-notice,.my-reservation-detail-page>.my-reservation-repeat-summary,.my-reservation-detail-page>.my-reservation-repeat-rounds,.my-reservation-detail-page>.my-reservation-repeat-empty{flex-shrink:0}.my-reservation-detail-card .my-reservation-card__top,.my-reservation-repeat-card .my-reservation-card__top{min-height:24px}.my-reservation-detail-section{padding:var(--space-14) var(--space-14);border-radius:var(--radius-sm);background:var(--bg-secondary);opacity:0;transform-origin:top;animation:.22s ease-out forwards myReservationDetailReveal}.my-reservation-detail-section:nth-of-type(2){animation-delay:80ms}.my-reservation-detail-section:nth-of-type(3){animation-delay:.15s}.my-reservation-detail-section h2{margin:0 0 var(--space-14);color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-bold);line-height:var(--lh-tight)}.my-reservation-progress{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.my-reservation-progress__item{column-gap:var(--space-10);min-height:60px;color:var(--text-muted);grid-template-columns:22px minmax(0,1fr);display:grid;position:relative}.my-reservation-progress__item:not(:last-child):after{content:"";z-index:0;background:var(--progress-connector-color,currentColor);opacity:1;width:2px;position:absolute;top:11px;bottom:-11px;left:10px}.my-reservation-progress__marker{z-index:1;justify-content:center;align-self:start;align-items:center;width:22px;height:22px;display:inline-flex;position:relative}.my-reservation-progress__item strong{color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-bold);line-height:var(--lh-tight);display:block}.my-reservation-progress__item p{margin:var(--space-4) 0 0;color:var(--text-secondary);font-size:var(--text-md);line-height:var(--lh-normal)}.my-reservation-progress__meta{margin-left:var(--space-4);color:var(--text-muted);font-size:var(--text-md);font-weight:var(--weight-regular);line-height:var(--lh-normal);display:inline}.my-reservation-progress__meta:before{content:"·";margin-right:var(--space-4)}.my-reservation-progress__item.is-success{color:var(--text-success)}.my-reservation-progress__item.is-pending{color:var(--accent-primary)}.my-reservation-progress__item.is-danger{color:var(--text-error)}.my-reservation-progress__item.is-blue{color:var(--accent-info)}.my-reservation-progress__item.is-muted,.my-reservation-progress__item.is-muted strong,.my-reservation-progress__item.is-muted p{color:var(--text-muted)}.my-reservation-cancel-info{color:var(--text-secondary);font-size:var(--text-md);line-height:var(--lh-normal);margin:0}.my-reservation-cancel-info span{margin-top:var(--space-4);color:var(--text-muted);font-size:var(--text-md);display:block}.my-reservation-cancel-button{width:100%;height:44px;margin-top:var(--space-16);border:var(--border-width-sm) solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--accent-primary);font-size:var(--text-md);font-weight:var(--weight-bold);background:0 0}.my-reservation-cancel-button:disabled{border-color:var(--border-strong);color:var(--text-disabled)}.my-reservation-cancel-modal__description p{margin:0}.my-reservation-cancel-modal__description p+p{margin-top:var(--space-4)}.my-reservation-cancel-modal__description strong{margin-top:var(--space-16);color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-regular);line-height:var(--lh-normal);display:block}.my-reservation-cancel-modal__description .my-reservation-cancel-modal__error{margin-top:var(--space-12);color:var(--text-error)}.my-reservation-repeat-card{flex-shrink:0}.my-reservation-repeat-notice{align-items:center;gap:var(--space-8);padding:var(--space-12) var(--space-14);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-muted);display:flex}.my-reservation-repeat-notice p{color:var(--text-muted);font-size:var(--text-md);line-height:var(--lh-normal);margin:0}.my-reservation-repeat-summary{align-items:center;column-gap:var(--space-12);min-height:42px;color:var(--text-muted);text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.my-reservation-repeat-summary button{min-width:0;height:42px;color:var(--text-muted);font-size:var(--text-md);font-weight:var(--weight-bold);line-height:var(--lh-tight);background:0 0;border:0;position:relative}.my-reservation-repeat-summary button:after{content:"";border-radius:var(--radius-pill);background:var(--border-strong);height:1px;position:absolute;bottom:0;left:0;right:0}.my-reservation-repeat-summary .is-success{color:var(--text-success)}.my-reservation-repeat-summary .is-danger{color:var(--text-error)}.my-reservation-repeat-summary .is-primary{color:var(--text-primary)}.my-reservation-repeat-summary .is-muted{color:var(--text-muted)}.my-reservation-repeat-summary button.is-active:after{background:currentColor;height:3px}.my-reservation-repeat-rounds{box-sizing:border-box;padding:var(--space-16) var(--space-18) var(--space-20);border-radius:var(--radius-sm);background:var(--bg-secondary)}.my-reservation-repeat-empty{min-height:160px;margin:var(--space-20) 0 0;padding-top:var(--space-16);color:var(--text-muted);font-size:var(--text-md);font-weight:var(--weight-medium);line-height:var(--lh-normal);text-align:center;flex:1 0 auto;justify-content:center;align-items:flex-start;display:flex}.my-reservation-repeat-rounds h2{margin:var(--space-20) var(--space-16) var(--space-20);color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-bold);line-height:var(--lh-tight)}.my-reservation-repeat-timeline{padding:0 var(--space-16) 0 var(--space-16);flex-direction:column;gap:0;margin:0;list-style:none;display:flex}.my-reservation-repeat-timeline__item{--repeat-round-color:var(--text-muted);--repeat-next-round-color:var(--repeat-round-color);align-items:start;column-gap:var(--space-10);grid-template-columns:22px minmax(0,1fr) auto;min-height:68px;display:grid;position:relative}.my-reservation-repeat-timeline__item.is-clickable{cursor:pointer}.my-reservation-repeat-timeline__item.is-clickable:active{transform:scale(.99)}.my-reservation-repeat-timeline__item:not(:last-child):after{content:"";z-index:0;background:linear-gradient(180deg, var(--repeat-round-color) 0%, var(--repeat-round-color) 35%, var(--repeat-next-round-color) 65%, var(--repeat-next-round-color) 100%);width:2px;height:calc(100% + 1px);position:absolute;top:11px;left:10px}.my-reservation-repeat-timeline__marker{z-index:1;justify-content:center;align-items:center;width:22px;height:22px;margin-top:1px;display:inline-flex;position:relative}.my-reservation-repeat-timeline__content{min-width:0;padding-bottom:var(--space-12)}.my-reservation-repeat-timeline__content p{align-items:baseline;gap:var(--space-8);min-width:0;color:var(--text-secondary);font-size:var(--text-md);line-height:var(--lh-tight);margin:0;display:flex}.my-reservation-repeat-timeline__content strong{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--weight-bold)}.my-reservation-repeat-timeline__content span{color:var(--text-secondary);font-size:var(--text-md);line-height:var(--lh-tight)}.my-reservation-repeat-timeline__content em{margin-top:var(--space-4);color:var(--repeat-round-color);font-size:var(--text-mm);font-style:normal;font-weight:var(--weight-medium);line-height:var(--lh-tight);display:block}.my-reservation-repeat-timeline__content small{max-width:156px;margin-top:var(--space-4);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-regular);line-height:var(--lh-normal);display:block}.my-reservation-repeat-timeline__item>button:not(.my-reservation-repeat-timeline__arrow){height:24px;padding:0 var(--space-12);border-radius:var(--radius-sm);background:var(--accent-primary);color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--weight-bold);border:0;align-self:start;margin-top:0}.my-reservation-repeat-timeline__arrow{width:24px;height:24px;color:var(--text-secondary);justify-content:center;align-self:start;align-items:center;margin-top:0;display:inline-flex}.my-reservation-repeat-timeline__arrow svg{stroke:currentColor;width:18px;height:18px}.my-reservation-bottom-sheet{z-index:var(--z-modal);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.my-reservation-bottom-sheet__backdrop{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#000000b8;border:0;padding:0;position:absolute;inset:0}.my-reservation-bottom-sheet__panel{width:100%;max-width:var(--mobile-max-width);max-height:min(78dvh,560px);padding:var(--space-20) var(--space-20) var(--space-16);border:var(--border-width-sm) solid var(--border-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:linear-gradient(#1c1a18fa 0%,#141312fa 100%);border-bottom:0;flex-direction:column;animation:.18s ease-out myReservationSheetUp;display:flex;position:relative;box-shadow:0 -16px 34px #00000059}.my-reservation-bottom-sheet__handle{width:44px;height:4px;margin-bottom:var(--space-16);border-radius:var(--radius-pill);background:var(--text-muted);align-self:center}.my-reservation-bottom-sheet__header{justify-content:space-between;align-items:center;gap:var(--space-12);display:flex}.my-reservation-bottom-sheet__header h2{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--lh-tight);margin:0}.my-reservation-bottom-sheet__header button{width:28px;height:28px;color:var(--text-secondary);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.my-reservation-bottom-sheet__header svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.my-reservation-bottom-sheet__options{gap:var(--space-8);min-height:0;margin-top:var(--space-20);padding-bottom:var(--space-20);flex-direction:column;display:flex;overflow-y:auto}.my-reservation-bottom-sheet__option{align-items:center;gap:var(--space-10);min-height:42px;padding:0 var(--space-12);color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-semibold);text-align:left;background:0 0;border:0;display:flex}.my-reservation-bottom-sheet__option span{border:var(--border-width-sm) solid var(--text-muted);border-radius:var(--radius-circle);flex:none;width:16px;height:16px}.my-reservation-bottom-sheet__option.is-selected span{border:5px solid var(--accent-primary)}.my-reservation-bottom-sheet__apply{border-radius:var(--radius-sm);background:var(--accent-primary);width:100%;height:52px;color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-bold);border:0;flex:none}@keyframes myReservationSheetUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes myReservationDetailReveal{0%{opacity:0;transform:translateY(-8px)scaleY(.96)}to{opacity:1;transform:translateY(0)scaleY(1)}}@keyframes myReservationCardReveal{0%{opacity:0;transform:translateY(-8px)scaleY(.97)}to{opacity:1;transform:translateY(0)scaleY(1)}}@keyframes myReservationSkeletonPulse{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes myReservationLoadingSpin{to{transform:rotate(360deg)}}.not-found-page{padding:var(--space-32) var(--space-20);background-color:var(--bg-primary);flex:1;justify-content:center;align-items:center;display:flex}.not-found-page__content{align-items:center;gap:var(--space-16);text-align:center;flex-direction:column;width:100%;max-width:320px;display:flex}.not-found-page__code{color:var(--accent-primary);font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--lh-tight);margin:0}.not-found-page__content h1{color:var(--text-primary);font-family:var(--font-title);font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--lh-tight);margin:0}.not-found-page__button{width:100%;min-height:var(--button-height-md);border-radius:var(--radius-md);background:var(--button-filled-bg);color:var(--button-filled-color);font-family:var(--font-title);font-size:var(--text-md);font-weight:var(--weight-bold)}.reservation-apply-page{width:100%;min-height:100%;max-width:var(--mobile-max-width);padding-top:var(--space-16);padding-bottom:calc(var(--button-height-md) + var(--space-28) + var(--space-20));padding-inline:var(--space-16);background:var(--bg-primary);flex-direction:column;flex:none;gap:0;margin:0 auto;display:flex;overflow-x:clip}.reservation-apply-page>*{max-width:100%}.reservation-apply-card{justify-content:space-between;align-items:flex-start;gap:var(--space-12);min-height:116px;padding:var(--space-16) var(--space-16) var(--space-14);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-secondary);display:flex;position:relative}.reservation-apply-card__content{flex:auto;min-width:0}.reservation-apply-card__nickname{max-width:100%;color:var(--accent-primary);font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.reservation-apply-card__hint{margin:var(--space-4) 0 0;color:var(--text-secondary);font-size:var(--text-md);line-height:var(--lh-normal)}.reservation-apply-card__title{margin:var(--space-6) 0 0;color:var(--text-primary);font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--lh-tight)}.reservation-apply-card__duration{margin-left:var(--space-6);color:var(--text-secondary);font-size:var(--text-md);font-weight:var(--weight-semibold);vertical-align:baseline;display:inline-block}.reservation-apply-card__badge{height:22px;padding:0 var(--space-8);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--text-2xs);font-weight:var(--weight-semibold);flex:none;align-items:center;display:inline-flex}.reservation-step-list{gap:var(--space-10);margin-top:var(--space-24);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.reservation-step-item{min-width:0;position:relative}.reservation-controls-panel{width:100%;min-width:0;transition:transform .24s,opacity .24s}.reservation-controls-panel--collapsed{margin-top:var(--space-24);animation:.26s both reservation-controls-collapse}@keyframes reservation-controls-collapse{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.reservation-controls-panel__expand{width:44px;height:30px;margin:0 auto var(--space-8);color:var(--text-primary);font-size:var(--text-3xl);justify-content:center;align-items:center;line-height:1;display:flex}.reservation-controls-panel__expand svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.reservation-step{z-index:1;justify-content:center;align-items:center;gap:var(--space-6);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;min-width:0;height:70px;color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-semibold);transition:var(--button-transition);background:0 0;flex-direction:column;line-height:1;display:flex;position:relative}.reservation-step svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.reservation-step span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.reservation-step--active{border-color:var(--accent-primary);color:var(--text-primary);background:var(--accent-primary)}.reservation-step--completed:not(.reservation-step--active){border-color:var(--accent-primary);color:var(--accent-primary)}.reservation-step--completed svg circle{fill:var(--accent-primary);stroke:var(--accent-primary)}.reservation-step--completed svg path{stroke:var(--bg-primary)}.reservation-step--pending{border-color:var(--border-strong);color:var(--text-secondary)}.reservation-step--disabled{opacity:.55;cursor:default}.reservation-step-connector{z-index:0;width:calc(var(--space-10) - 4px);background:repeating-linear-gradient(to right, var(--border-strong) 0 3px, transparent 3px 5px);border:0;height:3px;position:absolute;top:35px;left:calc(100% + 2px);transform:translateY(-50%)}.reservation-step-connector--solid{width:var(--space-10);background:var(--accent-primary);left:100%}.reservation-step-connector--active{background:repeating-linear-gradient(to right, var(--accent-primary) 0 3px, transparent 3px 5px)}.reservation-step-connector--pending{background:repeating-linear-gradient(to right, var(--border-strong) 0 3px, transparent 3px 5px)}.reservation-review-panel{margin-top:var(--space-24);padding:var(--space-16);border-radius:var(--radius-sm);background:var(--bg-secondary);animation:.24s both reservation-review-enter}@keyframes reservation-review-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.reservation-review-list{gap:var(--space-10);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.reservation-review-list__item{column-gap:var(--space-8);color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--lh-normal);grid-template-columns:22px 1fr;align-items:start;display:grid}.reservation-review-list__item span{width:18px;height:calc(var(--text-xs) * var(--lh-normal));justify-content:center;align-self:start;align-items:center;display:inline-flex;overflow:visible}.reservation-review-list__item p,.reservation-review-list__item strong{font-weight:var(--weight-regular);margin:0}.reservation-review-list__item--danger{color:var(--text-error)}.reservation-date-section{margin-top:var(--space-28);padding-bottom:var(--space-28)}.reservation-date-section__title{margin:0 0 var(--space-12);color:var(--text-primary);font-family:var(--font-title);font-size:var(--text-sm);font-weight:var(--weight-bold)}.reservation-apply-calendar{width:100%}.reservation-apply-calendar__month{height:50px;padding:0 var(--space-16);background:var(--bg-secondary);margin-bottom:var(--space-12);grid-template-columns:32px 1fr 32px;align-items:center;display:grid}.reservation-apply-calendar__month button{height:100%;color:var(--text-primary);justify-content:center;align-items:center;line-height:1;display:inline-flex}.reservation-apply-calendar__month button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.reservation-apply-calendar__month strong{color:var(--text-primary);font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-semibold);text-align:center}.reservation-apply-calendar__weekdays{padding:var(--space-12) var(--space-16) var(--space-8);text-align:center;grid-template-columns:repeat(7,1fr);justify-items:center;display:grid}.reservation-apply-calendar__weekdays span{color:var(--calendar-text-default);font-family:var(--font-calendar);font-size:var(--text-md);font-weight:var(--weight-semibold);text-align:center}.reservation-apply-calendar__weekdays .is-sunday{color:var(--calendar-sunday-current)}.reservation-apply-calendar__weekdays .is-saturday{color:var(--calendar-saturday-current)}.reservation-apply-calendar__grid{row-gap:var(--space-12);padding:var(--space-4) var(--space-16);grid-template-columns:repeat(7,1fr);justify-items:center;display:grid}.reservation-apply-calendar__day{aspect-ratio:1;border-radius:var(--radius-sm);width:44px;color:var(--calendar-text-default);font-family:var(--font-calendar);font-size:var(--text-lg);font-weight:var(--weight-semibold);transition:var(--button-transition);justify-content:center;align-items:center;padding:0;line-height:1;display:flex;position:relative}.reservation-apply-calendar__day.is-adjacent{color:var(--calendar-text-adjacent)}.reservation-apply-calendar__day.is-sunday{color:var(--calendar-sunday-current)}.reservation-apply-calendar__day.is-sunday.is-adjacent{color:var(--calendar-sunday-adjacent)}.reservation-apply-calendar__day.is-saturday{color:var(--calendar-saturday-current)}.reservation-apply-calendar__day.is-saturday.is-adjacent{color:var(--calendar-saturday-adjacent)}.reservation-apply-calendar__day.is-selected{color:var(--text-primary);background:var(--accent-primary)}.reservation-apply-calendar__day.is-disabled{color:var(--text-disabled);cursor:default}.reservation-apply-calendar__day.is-disabled.is-sunday,.reservation-apply-calendar__day.is-disabled.is-saturday,.reservation-apply-calendar__day.is-disabled.is-adjacent,.reservation-apply-calendar__day.is-disabled.is-sunday.is-adjacent,.reservation-apply-calendar__day.is-disabled.is-saturday.is-adjacent{color:var(--text-disabled)}.reservation-apply-calendar__day.is-disabled.is-selected{color:var(--text-disabled);background:0 0}.reservation-apply-calendar__holiday{font-size:9px;font-weight:var(--weight-semibold);color:var(--text-muted);line-height:1;position:absolute;top:calc(50% + 13px);left:50%;transform:translate(-50%)}.reservation-time-section,.reservation-repeat-section,.reservation-team-section{margin-top:var(--space-28)}.reservation-step-panel{min-height:calc(100dvh - 116px - 70px - var(--cta-height) - 220px);animation:.22s both reservation-step-panel-enter}.reservation-step-panel .reservation-time-section,.reservation-step-panel .reservation-repeat-section,.reservation-step-panel .reservation-team-section{min-height:inherit;flex-direction:column;display:flex}@keyframes reservation-step-panel-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.reservation-time-section__title,.reservation-repeat-section__title,.reservation-team-section__title{margin:0 0 var(--space-12);color:var(--text-primary);font-family:var(--font-title);font-size:var(--text-sm);font-weight:var(--weight-bold)}.reservation-time-picker,.reservation-repeat-picker,.reservation-team-picker{margin-block:auto}.reservation-time-picker{touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;height:226px;display:flex;position:relative;overflow:hidden}.reservation-time-picker:before,.reservation-time-picker:after{content:"";z-index:2;pointer-events:none;height:56px;position:absolute;left:0;right:0}.reservation-time-picker:before{background:linear-gradient(to bottom, var(--bg-primary), #0f0e0d00);top:0}.reservation-time-picker:after{background:linear-gradient(to top, var(--bg-primary), #0f0e0d00);bottom:0}.reservation-time-picker__selection{pointer-events:none;width:286px;height:40px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reservation-time-picker__selection:before,.reservation-time-picker__selection:after{content:"";border-radius:var(--radius-sm);background:var(--bg-secondary);height:40px;position:absolute;top:0}.reservation-time-picker__selection:before{width:68px;left:82px}.reservation-time-picker__selection:after{width:126px;left:160px}.reservation-time-picker__date-time{z-index:1;touch-action:none;flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex;position:relative}.reservation-time-picker__row{place-items:center;column-gap:var(--space-6);border-radius:var(--radius-sm);width:286px;height:34px;color:var(--text-primary);font-family:var(--font-title);text-align:center;will-change:opacity;grid-template-columns:74px 74px 126px;margin:0 auto;transition:opacity .18s,color .18s;display:grid;position:relative}.reservation-time-picker__date,.reservation-time-picker__time{transform-origin:50%;will-change:transform;justify-content:center;align-items:center;width:100%;min-height:34px;line-height:1;transition:transform .18s,color .18s;display:inline-flex}.reservation-time-picker__date{color:var(--text-muted);font-size:var(--text-md);font-weight:var(--weight-medium);grid-column:1;justify-content:center}.reservation-time-picker__time{font-family:var(--font-calendar);font-size:24px;font-weight:var(--weight-bold);text-align:center;grid-column:3;justify-content:center}.reservation-time-picker__row.is-selected{z-index:3;color:var(--accent-primary)}.reservation-time-picker__row.is-selected .reservation-time-picker__date,.reservation-time-picker__row.is-selected .reservation-time-picker__time{color:var(--accent-primary)}.reservation-time-picker__row.is-selected .reservation-time-picker__date{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--weight-bold)}.reservation-time-picker__row.is-selected .reservation-time-picker__time{font-size:30px}.reservation-time-picker__row.is-reserved,.reservation-time-picker__row.is-reserved .reservation-time-picker__time{color:var(--text-muted);cursor:default}.reservation-time-picker__row:disabled{cursor:default}.reservation-time-picker__row.is-reserved .reservation-time-picker__time{text-decoration-line:line-through;text-decoration-color:currentColor;text-decoration-thickness:1px}.reservation-time-picker__row.is-distance-1{opacity:.82}.reservation-time-picker__row.is-distance-1 .reservation-time-picker__date,.reservation-time-picker__row.is-distance-1 .reservation-time-picker__time{transform:scale(.92)}.reservation-time-picker__row.is-distance-2{opacity:.62}.reservation-time-picker__row.is-distance-2 .reservation-time-picker__date,.reservation-time-picker__row.is-distance-2 .reservation-time-picker__time{transform:scale(.84)}.reservation-time-picker__row.is-distance-3{opacity:.52}.reservation-time-picker__row.is-distance-3 .reservation-time-picker__date,.reservation-time-picker__row.is-distance-3 .reservation-time-picker__time{transform:scale(.76)}.reservation-time-picker__meridiem-wheel{z-index:4;touch-action:none;width:68px;height:104px;position:absolute;top:50%;left:calc(50% - 61px);transform:translateY(-50%)}.reservation-meridiem-option{border-radius:var(--radius-sm);width:100%;height:40px;color:var(--text-muted);font-family:var(--font-title);font-size:var(--text-xl);font-weight:var(--weight-semibold);text-align:center;transition:transform .18s,color .18s,opacity .18s;position:absolute;top:50%;left:0}.reservation-meridiem-option.is-selected{color:var(--accent-primary);font-size:var(--text-3xl);font-weight:var(--weight-bold);transform:translateY(-50%)scale(1)}.reservation-meridiem-option:not(.is-selected){opacity:.62;transform:translateY(-50%)scale(.84)}.reservation-meridiem-option.is-offset--1{transform:translateY(calc(-50% - 36px))scale(.84)}.reservation-meridiem-option.is-offset-1{transform:translateY(calc(36px - 50%))scale(.84)}.reservation-repeat-picker{touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;height:226px;display:flex;position:relative;overflow:hidden}.reservation-repeat-picker:before,.reservation-repeat-picker:after{content:"";z-index:2;pointer-events:none;height:56px;position:absolute;left:0;right:0}.reservation-repeat-picker:before{background:linear-gradient(to bottom, var(--bg-primary), #0f0e0d00);top:0}.reservation-repeat-picker:after{background:linear-gradient(to top, var(--bg-primary), #0f0e0d00);bottom:0}.reservation-repeat-picker__selection{border-radius:var(--radius-sm);background:var(--bg-secondary);pointer-events:none;width:186px;height:40px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reservation-repeat-option{z-index:1;width:220px;height:34px;color:var(--text-primary);font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-bold);will-change:transform, opacity;justify-content:center;align-items:center;margin:0 auto;line-height:1;transition:transform .18s,opacity .18s,color .18s;display:inline-flex;position:relative}.reservation-repeat-option--empty{pointer-events:none}.reservation-repeat-option.is-selected{z-index:3;color:var(--accent-primary);font-size:28px;transform:scale(1)}.reservation-repeat-option.is-distance-1{opacity:.82;transform:scale(.92)}.reservation-repeat-option.is-distance-2{opacity:.62;transform:scale(.84)}.reservation-repeat-option.is-distance-3{opacity:.52;transform:scale(.76)}.reservation-team-picker{--reservation-team-focused-width:min(100%, calc(var(--mobile-max-width) - (var(--space-16) * 2)));touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;height:226px;display:flex;position:relative;overflow:hidden}.reservation-team-picker:before,.reservation-team-picker:after{content:"";z-index:2;pointer-events:none;height:56px;position:absolute;left:0;right:0}.reservation-team-picker:before{background:linear-gradient(to bottom, var(--bg-primary), #0f0e0d00);top:0}.reservation-team-picker:after{background:linear-gradient(to top, var(--bg-primary), #0f0e0d00);bottom:0}.reservation-team-picker__selection{width:var(--reservation-team-focused-width);border-radius:var(--radius-sm);background:var(--bg-secondary);pointer-events:none;height:40px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reservation-team-option{z-index:1;width:var(--reservation-team-focused-width);min-width:0;height:34px;padding:0 var(--space-16);color:var(--text-primary);font-family:var(--font-title);font-size:28px;font-weight:var(--weight-bold);will-change:transform, opacity;justify-content:center;align-items:center;margin:0 auto;line-height:1;transition:transform .18s,opacity .18s,color .18s;display:inline-flex;position:relative;overflow:hidden}.reservation-team-option__label{text-align:center;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;display:block;overflow:hidden}.reservation-team-option--empty{pointer-events:none}.reservation-team-option.is-selected{z-index:3;color:var(--accent-primary);transform:scale(1)}.reservation-team-option.is-distance-1{opacity:.82;transform:scale(.92)}.reservation-team-option.is-distance-2{opacity:.62;transform:scale(.84)}.reservation-team-option.is-distance-3{opacity:.52;transform:scale(.76)}.reservation-apply-bottom{z-index:var(--z-sticky);width:min(calc(100% - (var(--space-16) * 2)), calc(var(--mobile-max-width) - (var(--space-16) * 2)));padding:var(--space-28) 0 var(--space-20);background:linear-gradient(to top, var(--bg-primary) 70%, #0f0e0dd1 86%, #0f0e0d00 100%);position:fixed;bottom:0;left:50%;right:auto;transform:translate(-50%)}.reservation-apply-submit{width:100%;height:var(--button-height-md);border-radius:var(--button-radius-md);background-color:var(--button-filled-bg);color:var(--button-filled-color);font-size:var(--button-font-size-md);font-weight:var(--button-font-weight);cursor:pointer;border:0;justify-content:center;align-items:center;display:inline-flex}.reservation-apply-submit:active{transform:scale(.98)}.reservation-apply-submit:disabled{color:var(--button-disabled-color);background-color:var(--button-disabled-bg);cursor:not-allowed}.reservation-apply-error{margin:var(--space-8) 0 0;color:var(--text-error);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-align:center;line-height:1.4}.reservation-repeat-notice-modal{padding:var(--modal-padding)}.reservation-repeat-notice-modal__panel{max-width:330px;padding:var(--space-24) var(--space-16) var(--space-16);border-radius:var(--radius-sm);background:var(--bg-secondary)}.reservation-repeat-notice-modal__icon{margin-bottom:var(--space-14);justify-content:center;display:flex}.reservation-repeat-notice-modal__title{color:var(--text-primary);font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--lh-tight);text-align:center;margin:0}.reservation-repeat-notice-modal__description{width:220px;margin:var(--space-16) auto 0;color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--weight-regular);text-align:center;line-height:1.5}.reservation-repeat-notice-modal__dates{margin-top:var(--space-14);color:var(--text-error);font-family:var(--font-title);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-align:center;line-height:1.5}.reservation-repeat-notice-modal__dates strong{margin-bottom:var(--space-8);font-weight:var(--weight-bold);display:block}.reservation-repeat-notice-modal__dates ul{gap:var(--space-2) var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.reservation-repeat-notice-modal__dates li{text-align:center}.reservation-repeat-notice-modal__dates .reservation-repeat-notice-modal__date-list--single{grid-template-columns:minmax(0,1fr);justify-items:center}.reservation-repeat-notice-modal__check{justify-content:center;align-items:center;gap:var(--space-8);margin-top:var(--space-14);color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1;display:flex}.reservation-repeat-notice-modal__check input{clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.reservation-repeat-notice-modal__check span{border-radius:var(--radius-circle);background:var(--text-muted);justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.reservation-repeat-notice-modal__check span:after{content:"";border-left:2px solid var(--bg-primary);border-bottom:2px solid var(--bg-primary);width:7px;height:4px;transform:rotate(-45deg)translateY(-1px)}.reservation-repeat-notice-modal__check input:checked+span{background:var(--text-success)}.reservation-repeat-notice-modal__check input:checked~p{color:var(--text-success)}.reservation-repeat-notice-modal__check p{margin:0}.reservation-repeat-notice-modal__actions{margin-top:var(--space-24);gap:var(--space-10)}.reservation-repeat-notice-modal__button{height:var(--button-height-md);border-radius:var(--button-radius-md);color:var(--text-primary);background-color:var(--button-disabled-bg);font-size:var(--button-font-size-md);font-weight:var(--button-font-weight);cursor:pointer;border:0;flex:1}.reservation-repeat-notice-modal__button:active{transform:scale(.98)}.reservation-repeat-notice-modal__button.action-modal__button--primary{background-color:var(--text-error)}.reservation-repeat-notice-modal__button:disabled{color:var(--button-disabled-color);background-color:var(--button-disabled-bg);cursor:not-allowed}.timeline-section{margin-bottom:var(--space-16)}.timeline-section--loading{min-height:280px;padding:var(--space-32) var(--space-20);box-sizing:border-box;justify-content:center;align-items:center;gap:var(--space-16);flex-direction:column;display:flex}.timeline-section__spinner{width:var(--space-32);height:var(--space-32);border-radius:var(--radius-circle);border:var(--spinner-border);border-top-color:var(--accent-primary);box-sizing:border-box;animation:.7s linear infinite timelineLoadingSpin,.16s ease-out statusFadeIn}.timeline-section__loading-message{font-family:var(--font-title);font-size:var(--text-md);font-weight:var(--weight-medium);line-height:var(--lh-normal);color:var(--text-primary);text-align:center;margin-top:10px}.timeline-section__date{height:42px;font-family:var(--font-title);font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--text-primary);justify-content:center;align-items:center;display:flex}.timeline-list{padding:var(--space-8) var(--space-16) 100px;flex-direction:column;padding-bottom:120px;display:flex}.timeline-row{align-items:center;column-gap:var(--space-8);min-height:36px;margin-bottom:var(--space-4);grid-template-columns:50px 1fr;display:grid}.timeline-row__time{font-family:var(--font-mono);font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--text-muted);line-height:1}.timeline-row__track{width:100%;height:24px;position:relative}.timeline-row__empty{width:100%;height:24px}.timeline-bar{min-width:0;height:24px;padding:0 var(--space-8);box-sizing:border-box;font-family:var(--font-calendar);font-size:var(--text-mm);font-weight:var(--weight-medium);color:var(--text-secondary);background:linear-gradient(#131212a6, #000000e6), var(--team-color);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;overflow:hidden}.timeline-bar:before{content:"";background:var(--team-color);border-radius:4px 0 0 4px;width:5px;height:100%;position:absolute;top:0;left:0}.timeline-bar__label{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.timeline-bar__pending{color:var(--state-inactive);font-size:12px}.timeline-bar__content{justify-content:center;align-items:center;gap:4px;width:100%;height:100%;padding:0 10px;display:inline-flex;overflow:hidden}.timeline-bar__label.is-pending{color:var(--text-muted)}.timeline-bar__badge{height:16px;color:var(--text-muted);background:#ffffff0f;border:1px solid #ffffff29;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0 6px;font-size:10px;font-weight:600;line-height:1;display:inline-flex}@keyframes timelineLoadingSpin{to{transform:rotate(360deg)}}.my-team-page{padding:var(--space-32) var(--space-20) var(--page-bottom-padding-lg)}.my-team-page__intro{margin-bottom:var(--space-28);padding-bottom:var(--space-28);border-bottom:var(--border-width-sm) solid var(--divider)}.my-team-page__title{margin:0 0 var(--space-8);font-family:var(--font-title);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--accent-primary)}.my-team-page__description{font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--text-muted);margin:0;line-height:1.5}.my-team-page__list{gap:var(--space-20);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.my-team-page__item{width:100%}.my-team-page__button{width:100%;height:var(--button-height-md);padding:0 var(--space-8) 0 5%;box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--space-16);font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--text-primary);cursor:pointer;background:0 0;border:0;display:flex}.my-team-page__button svg{flex-shrink:0}.my-team-page__team-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.my-team-page__empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:240px;display:flex}.my-team-page__empty-title{margin:0 0 var(--space-8);font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--text-primary)}.my-team-page__empty-description{font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--text-muted);margin:0;line-height:1.5}.my-team-detail-page{padding:var(--space-24) var(--space-20) var(--page-bottom-padding-lg)}.my-team-detail-page__top{margin-bottom:var(--space-20);justify-content:space-between;align-items:center;display:flex}.my-team-detail-page__title{font-family:var(--font-title);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--accent-primary);margin:0}.my-team-detail-page__edit-button{min-width:48px;height:var(--button-height-xs);padding:0 var(--space-8);margin-right:var(--space-12);border:.5px solid var(--text-primary);border-radius:var(--radius-pill);color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--weight-light);cursor:pointer;background:0 0;transition:background-color .14s,border-color .14s,color .14s,transform .12s}.my-team-detail-page__edit-button--active{border-color:var(--accent-info);background-color:var(--accent-info);color:var(--text-primary)}.my-team-detail-page__edit-button:active{transform:scale(.96)}.team-profile-card{padding:var(--space-20);border-radius:var(--radius-lg);background:var(--info-card-bg);box-shadow:0 var(--space-4) var(--space-20) var(--info-card-shadow);-webkit-backdrop-filter:blur(var(--space-6));backdrop-filter:blur(var(--space-6))}.team-profile-card__summary{align-items:center;gap:var(--spinner-size-sm);display:flex}.team-profile-card__color{flex:0 0 var(--space-40);width:var(--space-40);height:var(--space-40);background-color:var(--team-color);border-radius:50%}.team-profile-card__main{flex:1;min-width:0}.team-profile-card__name{margin:0 0 var(--space-4);font-family:var(--font-title);font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-profile-card__color-label{font-size:var(--text-xs);font-weight:var(--weight-light);color:var(--text-muted);margin:0}.team-profile-card__divider{margin:var(--spinner-size-sm) 0 var(--space-14);height:var(--border-width-sm);background-color:var(--divider)}.team-profile-card__description{font-size:var(--text-xs);font-weight:var(--weight-light);color:var(--text-muted);margin:0;line-height:1.5}.team-profile-card__label{gap:var(--space-6);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);flex-direction:column;display:flex}.team-profile-card__input,.team-profile-card__textarea{box-sizing:border-box;border:var(--border-width-sm) solid var(--text-muted);border-radius:var(--button-radius-md);background-color:var(--input-bg);width:100%;color:var(--text-primary);font-size:var(--text-md);outline:none}.team-profile-card__input{height:var(--space-40);padding:0 var(--space-12)}.team-profile-card__textarea{min-height:var(--textarea-min-height);padding:var(--space-12);resize:none;line-height:1.5}.team-member-list{margin-top:var(--space-40)}.team-member-list__title{margin:0 0 var(--space-12);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary)}.team-member-list__items{gap:var(--space-12);flex-direction:column;margin:0;padding:0;list-style:none;transition:gap .14s;display:flex}.team-member-list__empty{padding:var(--space-20) 0;text-align:center;font-size:var(--text-sm);color:var(--text-muted)}.team-member-item{width:100%}.team-member-item__remove-button{width:var(--space-20);height:var(--space-20);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;animation:.16s ease-out editFadeIn;display:flex}.team-member-item__remove-button svg{display:block}.team-member-list__add-button{width:100%;height:var(--button-height-md);margin-top:var(--space-14);border:var(--border-width-sm) dashed var(--button-outline-border);border-radius:var(--button-radius-md);color:var(--button-outline-color);justify-content:center;align-items:center;gap:var(--space-6);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;background:0 0;animation:.18s ease-out editSlideIn;display:flex}.team-member-list__add-button:active{transform:scale(.98)}@keyframes editFadeIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes editSlideIn{0%{opacity:0;transform:translateY(calc(-1 * var(--space-6)))}to{opacity:1;transform:translateY(0)}}.team-edit-actions{margin-top:var(--space-16);gap:var(--space-12);flex-direction:column;animation:.2s ease-out editSlideIn;display:flex}.team-edit-actions__button{width:100%;height:var(--button-height-md);border:var(--border-width-sm) solid var(--button-disabled-bg);border-radius:var(--button-radius-md);background-color:var(--button-disabled-bg);color:var(--button-disabled-color);box-shadow:inset 0 1px 0 var(--button-disabled-bg), 0 4px 12px #0000003d;font-size:var(--text-md);font-weight:var(--weight-medium);cursor:pointer;transition:transform .12s,opacity .12s,background-color .12s}.team-edit-actions__button:active{background-color:var(--button-disabled-bg);transform:scale(.98)}.team-color-page{padding:var(--space-16) var(--space-20) var(--space-28)}.team-color-page__section{margin-top:var(--space-20)}.team-color-page__title{margin:0 0 var(--space-14);font-size:var(--text-md);color:var(--white);font-weight:700}.team-color-page__color-list{gap:var(--spinner-size-sm) var(--space-14);grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;display:grid}.team-color-page__color-item{min-height:calc(var(--team-color-swatch-size) + var(--space-14));flex-direction:column;align-items:center;display:flex}.team-color-page__color-button{width:var(--team-color-swatch-size);height:var(--team-color-swatch-size);border:var(--space-2) solid var(--text-disabled);border-radius:var(--radius-circle);background-color:var(--team-color);cursor:pointer;padding:0;position:relative}.team-color-page__color-button.has-outer-ring{outline:var(--space-2) solid var(--team-color);outline-offset:var(--space-2)}.team-color-page__color-button.is-used{cursor:not-allowed}.team-color-page__lock{top:calc(-1 * var(--space-6));right:calc(-1 * var(--space-6));width:var(--space-20);height:var(--space-20);border-radius:var(--radius-circle);background-color:var(--bg-tertiary);justify-content:center;align-items:center;display:flex;position:absolute}.team-color-page__label{min-height:var(--space-14);margin-top:var(--space-10);font-size:var(--text-xs);font-weight:500;line-height:var(--space-14);color:var(--text-secondary);white-space:nowrap}.team-color-page__submit{width:100%;height:var(--button-height-md);margin-top:var(--space-24);border-radius:var(--button-radius-md);background-color:var(--button-filled-bg);color:var(--button-filled-color);font-size:var(--text-md);cursor:pointer;border:0;font-weight:700}.team-color-page__submit:disabled{background-color:var(--button-disabled-bg);color:var(--button-disabled-color);cursor:not-allowed}.team-leader-change-page{padding:var(--space-16) var(--space-20) var(--space-28)}.team-leader-change-page__section{margin-top:var(--space-24)}.team-leader-change-page__title{margin:0 0 var(--space-12);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary)}.team-leader-change-page__list{gap:var(--space-12);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.team-leader-change-page__member-card{cursor:pointer}.team-leader-change-page__right{gap:var(--space-12)}.team-leader-change-page__radio{width:var(--space-16);height:var(--space-16);box-sizing:border-box;background:#ffffff05;border:1.5px solid #ffffff57;border-radius:50%;justify-content:center;align-items:center;display:flex}.team-leader-change-page__member-card--selected .team-leader-change-page__radio{border-color:var(--accent-primary);background-color:#ff6b2b14}.team-leader-change-page__radio-dot{width:var(--space-8);height:var(--space-8);background-color:var(--accent-primary);border-radius:50%;animation:.14s ease-out leaderRadioIn}.team-leader-change-page__submit-button{width:100%;height:var(--button-height-md);margin-top:var(--space-24);border-radius:var(--button-radius-md);background-color:var(--button-filled-bg);color:var(--button-filled-color);font-size:var(--button-font-size-md);font-weight:var(--button-font-weight);cursor:pointer;border:0}.team-leader-change-page__submit-button:active{transform:scale(.98)}.team-leader-change-page__submit-button:disabled{background-color:var(--button-disabled-bg);color:var(--button-disabled-color);cursor:not-allowed}@keyframes leaderRadioIn{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.team-modal{z-index:var(--z-modal);padding:var(--modal-padding);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.team-modal__backdrop{background:var(--modal-backdrop-bg);-webkit-backdrop-filter:var(--modal-backdrop-blur);backdrop-filter:var(--modal-backdrop-blur);position:absolute;inset:0}.team-modal__panel{width:100%;max-width:var(--modal-panel-width-sm);padding:var(--modal-panel-padding);box-sizing:border-box;border-radius:var(--modal-radius);background:var(--info-card-bg);box-shadow:var(--modal-shadow);flex-direction:column;align-items:center;animation:.18s ease-out teamModalFadeUp;display:flex;position:relative}.team-modal__title{margin:var(--space-16) 0 0;font-family:var(--font-title);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--text-primary)}.team-modal__description{margin:var(--spinner-size-sm) 0 0;text-align:center;font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--text-primary);line-height:1.5}.team-modal__description span{margin-top:var(--space-12);color:var(--text-secondary);line-height:var(--lh-relaxed);display:block}.team-modal__actions{width:100%;margin-top:var(--space-24);gap:var(--space-10);display:flex}.team-modal__button{height:var(--modal-button-height);border-radius:var(--modal-button-radius);font-size:var(--text-md);font-weight:var(--weight-bold);cursor:pointer;border:0;flex:1}.team-modal__button--cancel{background-color:var(--button-disabled-bg);color:var(--button-disabled-color)}.team-modal__button--danger,.team-modal__button--confirm{background-color:var(--button-danger-bg);color:var(--button-filled-color)}.team-modal__button--primary{background-color:var(--button-filled-bg);color:var(--button-filled-color);transition:var(--transition-button)}.team-modal__button--primary:active:not(:disabled){transform:scale(.98)}.team-modal__button--primary:disabled{background-color:var(--button-disabled-bg);color:var(--button-disabled-color);opacity:1;cursor:not-allowed}.team-modal__input{width:100%;height:var(--input-height-sm);margin-top:var(--space-20)}.team-modal__spinner{margin-right:var(--space-10);width:var(--spinner-size-sm);height:var(--spinner-size-sm);border-radius:var(--radius-pill);border:var(--spinner-border);border-top-color:var(--accent-primary);box-sizing:border-box;flex-shrink:0;animation:.7s linear infinite teamModalSpin,.16s ease-out statusFadeIn}.team-modal__message{width:100%;margin-top:var(--space-8)}@keyframes teamModalFadeUp{0%{opacity:0;transform:translateY(var(--space-8)) scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes teamModalSpin{to{transform:rotate(360deg)}}.team-notice-box{margin-top:var(--space-16)}.policy-page{padding:var(--space-32) var(--space-20) var(--page-bottom-padding-lg)}.policy-content{padding:var(--space-16) var(--space-14) var(--space-24);border-radius:var(--button-radius-md);background-color:var(--info-card-bg)}.policy-content__text{font-size:var(--text-xs);font-weight:var(--weight-light);color:var(--info-card-text);white-space:pre-wrap;word-break:break-word;margin:0;line-height:1.6}.policy__title{margin:0;margin-bottom:var(--space-6);font-family:var(--font-title);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--accent-primary)}.policy__label{margin:0 0 var(--space-6);font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--text-muted)}.policy__divider{margin:var(--space-32) 0;height:var(--border-width-sm);background-color:var(--divider)}.withdraw-page{background-color:var(--page-bg);flex-direction:column;min-height:100%;display:flex}.withdraw-page__content{width:100%;padding:var(--space-24) var(--space-20) var(--page-bottom-padding-sm);box-sizing:border-box;flex-direction:column;flex:1;align-items:center;display:flex}.withdraw-page__logo{width:var(--logo-size-md);height:var(--logo-size-md);margin-top:var(--space-24);margin-bottom:var(--space-20)}.withdraw-page__title{margin:0 0 var(--space-8);text-align:center;font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--text-primary);line-height:1.4}.withdraw-page__description{margin:0 0 var(--space-24);text-align:center;font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--text-secondary);line-height:1.5}.withdraw-notice{box-sizing:border-box;width:100%}.withdraw-confirm{width:100%;margin-top:var(--space-16);align-items:flex-start;gap:var(--space-4);font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:flex}.withdraw-confirm input{margin:var(--space-2) 0 0;accent-color:var(--accent-primary);flex-shrink:0}.withdraw-confirm span{color:var(--text-secondary)}.withdraw-notice__item p.is-warning{color:var(--text-error)}
