:root{--accent1: #2e7bcc;--accent2: #4ba3e3;--blue-deep: #2569b0;--gold: #d9a45c;--gold-soft: rgba(217, 164, 92, .14);--cyan: #34c759;--danger: #ff5c70;--danger-soft: #ff7a8a;--grad-brand: linear-gradient(135deg, #4ba3e3 0%, #2e7bcc 60%, #2569b0 130%);--grad-brand-soft: linear-gradient(135deg, #4ba3e3, #2e7bcc);--canvas-top: #060709;--canvas-bot: #0a0d14;--surface: rgba(19, 23, 32, .74);--surface-solid: #13171f;--elev: rgba(30, 36, 48, .72);--hairline: rgba(255, 255, 255, .08);--text: #f4f6fa;--muted: #97a1b2;--disabled: #5a6271;--glow-a: rgba(46, 123, 204, .34);--glow-b: rgba(217, 164, 92, .18);--glow-c: rgba(46, 123, 204, .14);--star-op: .5;--accent-soft: rgba(46, 123, 204, .16);--accent-border: rgba(46, 123, 204, .34);--shadow-card: 0 24px 60px -30px rgba(0, 0, 0, .9), inset 0 1px 0 rgba(255, 255, 255, .05);--shadow-glow: 0 10px 30px -10px rgba(46, 123, 204, .6);--r-sm: 9px;--r-md: 12px;--r-lg: 16px;--r-xl: 22px;--r-pill: 999px}:root[data-theme=light]{--canvas-top: #ffffff;--canvas-bot: #f4f6fa;--surface: rgba(255, 255, 255, .92);--surface-solid: #ffffff;--elev: rgba(244, 246, 250, .92);--hairline: rgba(16, 24, 40, .1);--text: #1a1f2e;--muted: #5c6675;--disabled: #9aa2b0;--glow-a: rgba(46, 123, 204, .16);--glow-b: rgba(217, 164, 92, .12);--glow-c: rgba(46, 123, 204, .1);--star-op: 0;--accent-soft: rgba(46, 123, 204, .09);--accent-border: rgba(46, 123, 204, .26);--shadow-card: 0 18px 44px -28px rgba(26, 31, 46, .34), inset 0 1px 0 rgba(255, 255, 255, .7);--shadow-glow: 0 12px 30px -14px rgba(46, 123, 204, .4)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-feature-settings:"cv11","ss01";color:var(--text);background:radial-gradient(120% 80% at 50% -10%,var(--canvas-bot),transparent 60%),linear-gradient(180deg,var(--canvas-top),var(--canvas-bot));background-attachment:fixed;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}::selection{background:#2e7bcc57}input,select,textarea,button{font-family:inherit}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent1);outline-offset:2px}input::placeholder,textarea::placeholder{color:var(--disabled)}code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.95em;background:var(--canvas-bot);border:1px solid var(--hairline);padding:.1em .4em;border-radius:6px;color:var(--text)}.tnum{font-variant-numeric:tabular-nums}@keyframes nbRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes nbPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes nbFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes nbSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.nebula-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none;background:transparent}.nebula-bg:before,.nebula-bg:after{content:"";position:absolute;border-radius:50%;filter:blur(60px)}.nebula-bg:before{top:-18%;left:8%;width:46vw;height:46vw;background:radial-gradient(circle,var(--glow-a),transparent 68%);animation:nbFloat 16s ease-in-out infinite}.nebula-bg:after{bottom:-22%;right:4%;width:50vw;height:50vw;background:radial-gradient(circle,var(--glow-b),transparent 70%);animation:nbFloat 21s ease-in-out infinite reverse}.nebula-bg-accent{position:absolute;top:34%;right:30%;width:24vw;height:24vw;border-radius:50%;background:radial-gradient(circle,var(--glow-c),transparent 70%);filter:blur(48px)}.nebula-bg-stars{position:absolute;top:0;right:0;bottom:0;left:0;opacity:var(--star-op);background-image:radial-gradient(1px 1px at 12% 18%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 88% 32%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 28% 64%,rgba(255,255,255,.55),transparent),radial-gradient(1px 1px at 62% 12%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 78% 78%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 18% 82%,rgba(255,255,255,.45),transparent),radial-gradient(1.4px 1.4px at 48% 38%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 94% 60%,rgba(255,255,255,.55),transparent)}.app-stage{position:relative;z-index:1;min-height:100vh}.brand{display:inline-flex;align-items:center;gap:11px}.brand-mark{width:34px;height:34px;flex-shrink:0;border-radius:50%;object-fit:cover;filter:drop-shadow(0 3px 12px rgba(46,123,204,.5))}.brand-dot{width:30px;height:30px;border-radius:9px;background:var(--grad-brand-soft);box-shadow:0 0 22px #2e7bcc80}.brand-name{font-size:16px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text)}.accent-gold,.brand-name .accent{color:var(--gold)}.brand-avatar{border-radius:13px;background:var(--grad-brand-soft);box-shadow:0 6px 18px -6px #2e7bcc99;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px;letter-spacing:-.01em;flex-shrink:0}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-xl);box-shadow:var(--shadow-card);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2)}.card-flat{background:var(--elev);border:1px solid var(--hairline);border-radius:var(--r-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:44px;padding:0 22px;border-radius:var(--r-pill);border:1px solid transparent;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .15s ease-out,filter .15s ease-out,border-color .15s ease-out,background .15s ease-out,color .15s ease-out}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--grad-brand-soft);color:#fff;box-shadow:var(--shadow-glow)}.btn-primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.btn-secondary{background:var(--elev);color:var(--text);border-color:var(--hairline);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.btn-secondary:hover:not(:disabled){border-color:var(--accent-border);color:var(--text)}.btn-ghost{background:none;color:var(--muted);border-color:transparent;font-weight:500}.btn-ghost:hover:not(:disabled){color:var(--text)}.btn-block{width:100%}.btn-tall{height:50px;font-size:15px;border-radius:var(--r-pill)}.btn-gold{background:transparent;color:var(--gold);border-color:#d9a45c80}.btn-gold:hover:not(:disabled){background:var(--gold-soft);border-color:var(--gold)}.field{width:100%;height:44px;padding:0 14px;background:var(--canvas-bot);border:1px solid var(--hairline);border-radius:11px;color:var(--text);font-size:14.5px;outline:none;transition:border-color .15s ease-out,box-shadow .15s ease-out}.field:focus{border-color:var(--accent1);box-shadow:0 0 0 3px #2e7bcc3d}.pill{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:600;padding:4px 10px;border-radius:999px;letter-spacing:.01em}.pill-confirmed{color:var(--cyan);background:#34c7591f;border:1px solid rgba(52,199,89,.32)}.pill-confirmed .pill-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.alert{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:12px;font-size:13.5px;line-height:1.5}.alert-soft{background:var(--surface);border:1px solid var(--hairline);color:var(--muted)}.alert-soft strong{color:var(--text);font-weight:600}.alert-error{background:#e5484d14;border:1px solid rgba(229,72,77,.3);color:var(--danger)}.cal-bar{display:flex;align-items:center;gap:13px;padding:16px 18px;border-radius:14px;background:var(--surface);border:1px solid var(--hairline)}.cal-bar.disconnected{border-style:dashed}.cal-bar .status-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.cal-bar .status-dot.on{background:var(--cyan);box-shadow:0 0 10px var(--cyan)}.cal-bar .status-dot.off{background:var(--disabled)}.cal-bar-text{flex:1;min-width:0}.cal-bar-title{font-size:13.5px;font-weight:500;color:var(--text)}.cal-bar-sub{font-size:12px;color:var(--muted);margin-top:2px}.shell{padding:44px 28px 140px;margin:0 auto;width:100%}.shell-narrow{max-width:460px}.shell-mid{max-width:720px}.shell-wide{max-width:920px}.stack{display:flex;flex-direction:column;gap:1.25rem}.muted{color:var(--muted)}.faint{color:var(--disabled);font-size:.9rem}.h-display{font-size:30px;font-weight:600;letter-spacing:-.025em;color:var(--text);line-height:1.15;margin:0}.h-lg{font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--text);line-height:1.2;margin:0}.h-md{font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--text);margin:0}.h-section{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0}.lede{font-size:14px;color:var(--muted);line-height:1.55;margin:0}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px}.auth-frame{width:100%;max-width:404px;animation:nbPop .5s ease-out}.auth-card{padding:40px 36px;text-align:center}.auth-google-mark{display:inline-flex;width:19px;height:19px;border-radius:50%;background:#fff;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:#4285f4}.auth-domain-note{margin-top:18px;display:flex;align-items:center;gap:7px;justify-content:center;font-size:12.5px;color:var(--muted)}.auth-domain-note .live-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.auth-domain-note strong{color:var(--text);font-weight:500}.auth-footnote{margin-top:20px;text-align:center;font-size:12px;color:var(--disabled)}.dash-header{display:flex;align-items:center;gap:13px;margin-bottom:34px}.dash-header .brand-avatar{width:44px;height:44px}.dash-header-name{font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.dash-header-role{font-size:13px;color:var(--muted);margin-top:2px}.dash-actions{display:flex;align-items:baseline;justify-content:space-between;margin:26px 0 16px}.hero-card{width:100%;max-width:480px;margin:0 auto;padding:36px 30px;text-align:center;animation:nbPop .45s ease-out}.hero-icon{width:58px;height:58px;border-radius:50%;margin:0 auto 20px;background:#34c7591f;border:1px solid rgba(52,199,89,.4);display:flex;align-items:center;justify-content:center;color:var(--cyan);font-size:26px}.hero-icon.neutral{background:var(--canvas-bot);border-color:var(--hairline);color:var(--muted);box-shadow:none}.hero-meta-list{margin-top:24px;text-align:left;background:var(--canvas-bot);border:1px solid var(--hairline);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:12px}.hero-meta-row{display:flex;justify-content:space-between;gap:12px;font-size:13px}.hero-meta-row .label{color:var(--muted)}.hero-meta-row .value{color:var(--text);font-weight:500;text-align:right}.hero-meta-row .value.accent{color:var(--cyan)}.theme-toggle{position:fixed;right:18px;bottom:18px;z-index:50;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--hairline);color:var(--muted);border-radius:12px;cursor:pointer;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 12px 30px -14px #0009;transition:color .15s ease-out,border-color .15s ease-out,transform .15s ease-out}.theme-toggle:hover{color:var(--text);border-color:var(--accent1);transform:translateY(-1px)}.theme-toggle svg{width:18px;height:18px}.cal-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 24px}.cal-shell{width:100%;max-width:900px;display:grid;grid-template-columns:310px 1fr;overflow:hidden;padding:0;animation:nbPop .45s ease-out}.cal-aside{padding:30px 28px;border-right:1px solid var(--hairline);display:flex;flex-direction:column;gap:18px;background:#ffffff04}.cal-aside-org{font-size:13px;font-weight:500;color:var(--muted)}.cal-aside-title{font-size:23px;font-weight:600;letter-spacing:-.02em;color:var(--text);line-height:1.2}.cal-aside-desc{font-size:13.5px;color:var(--muted);line-height:1.55}.cal-meta{display:flex;flex-direction:column;gap:11px;margin-top:auto;padding-top:18px}.cal-meta-row{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:500;color:var(--text)}.cal-meta-row svg{width:17px;height:17px;color:var(--accent2);flex-shrink:0}.cal-main{padding:28px 28px 32px;min-width:0}@media (max-width: 720px){.cal-shell{grid-template-columns:1fr;max-width:460px}.cal-aside{border-right:none;border-bottom:1px solid var(--hairline)}.cal-meta{margin-top:4px}}.cal-wrap{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-xl);box-shadow:var(--shadow-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:16px 16px 18px}.cal-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:14px}.cal-title{font-size:15px;font-weight:600;color:var(--text);min-width:178px;text-align:center;white-space:nowrap}.cal-nav-btn{height:32px;width:32px;padding:0;font-size:18px;line-height:1}.cal-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:6px}.cal-dow-cell{text-align:center;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:2px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(92px,1fr);gap:6px}.cal-cell{display:flex;flex-direction:column;align-items:stretch;gap:4px;text-align:left;padding:6px 6px 5px;background:var(--elev);border:1px solid var(--hairline);border-radius:var(--r-md);cursor:pointer;overflow:hidden;transition:border-color .14s ease-out,background .14s ease-out,transform .14s ease-out}.cal-cell:hover{border-color:var(--accent-border);transform:translateY(-1px)}.cal-cell.dim{opacity:.45}.cal-cell.today{border-color:var(--accent-border);background:var(--accent-soft)}.cal-cell.selected{border-color:var(--accent1);box-shadow:0 0 0 1px var(--accent1) inset}.cal-daynum{font-size:12.5px;font-weight:600;color:var(--text);align-self:flex-end}.cal-cell.today .cal-daynum{color:var(--accent1)}.cal-grid--pick{grid-auto-rows:minmax(46px,1fr)}.cal-cell--pick{align-items:center;justify-content:center;gap:3px;padding:4px;cursor:pointer}.cal-cell--pick .cal-daynum{align-self:center;font-size:14px}.cal-cell--pick:disabled{cursor:default;opacity:.28;background:transparent}.cal-cell--pick:disabled:hover{border-color:var(--hairline);transform:none}.cal-dot{width:5px;height:5px;border-radius:50%;background:var(--accent1)}.cal-chips{display:flex;flex-direction:column;gap:3px;min-width:0}.cal-chip{display:flex;align-items:baseline;gap:5px;min-width:0;padding:2px 6px;border-radius:6px;background:var(--grad-brand-soft);color:#fff;font-size:11px;line-height:1.35;overflow:hidden}.cal-chip-time{flex-shrink:0;opacity:.85;font-size:10px}.cal-chip-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.cal-more{font-size:10.5px;font-weight:600;color:var(--muted);padding-left:2px}.cal-detail{margin-top:16px;padding-top:14px;border-top:1px solid var(--hairline)}.cal-detail-head{font-size:13px;font-weight:600;color:var(--text);margin-bottom:10px}.cal-detail-row{display:flex;align-items:center;gap:14px;padding:10px 12px;background:var(--elev);border:1px solid var(--hairline);border-radius:var(--r-md)}.cal-detail-time{min-width:120px;font-size:13px;color:var(--muted)}.cal-detail-title{font-weight:600;font-size:14px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-detail-sub{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 560px){.cal-grid{grid-auto-rows:minmax(64px,1fr);gap:4px}.cal-chip-time{display:none}.cal-detail-time{min-width:92px}}.cal-chip.booking{background:linear-gradient(180deg,#e6bd79,#d9a45c);color:#2a1d08}.cal-chip.booking .cal-chip-time{opacity:.7}.cal-detail-row.booking{border-left:3px solid var(--gold)}.cal-booking-badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:var(--r-pill);font-size:11px;font-weight:600;vertical-align:middle;color:var(--gold);background:var(--gold-soft);border:1px solid rgba(217,164,92,.4)}.cal-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px;padding-top:12px}.cal-legend-item{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.cal-legend-swatch{width:12px;height:12px;border-radius:4px;flex-shrink:0;background:var(--grad-brand-soft)}.cal-legend-swatch.booking{background:linear-gradient(180deg,#e6bd79,#d9a45c)}
