.schedule-header{flex:none}.schedule-add{padding:0 20px 12px}.schedule-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:0 20px 12px;flex:none}.schedule-date-field{flex:1 1 300px;min-width:0}.schedule-controls{display:flex;align-items:center;gap:8px}.schedule-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:44px;min-height:44px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:15px}.schedule-controls{flex:1 1 320px}.schedule-controls>button[aria-haspopup]{min-width:0;flex:1;width:auto}.schedule-view-switch{display:flex;padding:3px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.schedule-view-switch button{min-height:44px;padding:0 12px;background:transparent;border:0;border-radius:5px;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer}.schedule-view-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.schedule-scroll{flex:1;min-height:0;overflow:auto;margin:0 20px;border:1px solid var(--line);border-radius:12px;background:var(--surface);position:relative;overscroll-behavior:contain}.schedule-grid{display:grid;grid-template-columns:var(--time-width) var(--column-tracks);min-width:max(100%,var(--grid-min));width:100%}.schedule-corner,.schedule-column-heading{position:sticky;top:0;z-index:5;min-height:48px;background:var(--surface);border-bottom:1px solid var(--line-strong);padding:0 8px;display:flex;align-items:center;justify-content:space-between;gap:6px}.schedule-corner{left:0;z-index:7;font-size:9px;color:var(--muted);padding:0 4px;text-transform:uppercase;letter-spacing:.04em}.schedule-column-heading{border-left:1px solid var(--line);font-size:14px;min-width:0}.schedule-column-heading>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-column-heading small{flex:none;font:11px var(--font-mono);color:var(--muted)}.schedule-column-heading button{border:0;background:transparent;padding:0;display:flex;align-items:center;gap:10px;color:inherit;cursor:pointer;text-align:left;min-height:44px}.schedule-column-heading button strong{font-family:var(--font-mono);font-size:18px}.schedule-column-heading.is-today{border-bottom:2px solid var(--wine)}.schedule-time-axis{position:sticky;left:0;z-index:4;background:var(--surface)}.schedule-time-axis>div{height:var(--slot-height);position:relative}.schedule-time-axis span{position:absolute;top:5px;right:10px;font:10px var(--font-mono);color:var(--muted)}.schedule-column,.schedule-time-axis{padding-bottom:var(--calendar-tail)}.schedule-column{position:relative;border-left:1px solid var(--line)}.schedule-slot{display:block;width:100%;height:var(--slot-height);padding:0;border:0;border-top:1px solid var(--line);background:transparent;cursor:pointer}.schedule-slot.half-hour{border-top:1px dashed var(--line-soft)}.schedule-slot:hover{background:var(--surface-subtle)}.schedule-slot:focus-visible{outline-offset:-3px}.schedule-booking{position:absolute;z-index:2;display:flex;flex-direction:column;gap:2px;padding:5px 6px;background:var(--surface-subtle);border:1px solid var(--line-strong);border-left:3px solid var(--ink-soft);border-radius:6px;overflow:hidden;color:var(--ink);text-align:left;cursor:pointer;min-width:0}.schedule-booking:hover{background:var(--line);border-color:var(--muted);z-index:3}.schedule-booking-time{font:11px var(--font-mono);letter-spacing:-.04em;white-space:nowrap}.schedule-booking strong{font-size:14px;line-height:1.2;overflow-wrap:anywhere}.schedule-booking.is-short{padding:4px 6px;gap:2px}.schedule-booking.is-short strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-now{position:absolute;left:0;right:0;height:1px;background:var(--wine);z-index:3;pointer-events:none}.schedule-now:before{content:"";position:absolute;left:-3px;top:-3px;width:7px;height:7px;background:var(--wine);border-radius:50%}.schedule-hint{padding:8px 20px 12px;margin:0;flex:none;color:var(--muted);font-size:13px}.schedule-message{padding:30px 24px;color:var(--muted)}.schedule-empty{display:flex;align-items:center;gap:12px;margin:0 20px 12px;flex:none;padding:14px 16px;border:1px solid var(--line);border-radius:8px}.schedule-empty strong,.schedule-empty span{display:block;font-size:14px}.schedule-empty span{color:var(--muted);margin-top:2px}.schedule-notice{padding:0 24px;margin:0 0 12px;font-size:14px}.schedule-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.schedule-form-heading h2{margin:0;font-family:var(--font-display);font-size:26px;letter-spacing:-.03em}.schedule-form-heading p{margin:4px 0 0;color:var(--muted);font-size:14px}.schedule-fields{border:0;padding:0;margin:0;min-width:0;display:flex;flex-direction:column;gap:14px}.schedule-fields label,.schedule-field-label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}.schedule-field-label{margin-bottom:6px}.schedule-fields input,.schedule-fields textarea{width:100%;min-width:0;min-height:52px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);font-size:16px;color:var(--ink)}.schedule-fields textarea{resize:vertical}.schedule-time-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.schedule-duration{display:flex;align-items:center;gap:7px;font-size:13px;margin:-4px 0 0;color:var(--muted)}.schedule-option-meta{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.schedule-error{color:var(--error);font-size:14px}.schedule-client-results{border:1px solid var(--line);border-radius:8px;overflow:auto;max-height:190px;margin-top:-8px}.schedule-client-results>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;text-align:left;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}.schedule-client-results>button:hover{background:var(--surface-subtle)}.schedule-client-results span,.schedule-client-results p{font-size:13px;color:var(--muted)}.schedule-client-results p{margin:12px}.schedule-client-results .schedule-new-client{font-weight:600;background:var(--surface-subtle);position:sticky;bottom:0}.schedule-delete{background:transparent;border:0;color:var(--error);text-decoration:underline;min-height:44px;cursor:pointer;align-self:center;font-size:14px}.schedule-delete-confirm p{margin:0 0 10px}.schedule-delete-confirm>div{display:flex;gap:8px}@media (max-width: 600px){.schedule-toolbar{gap:8px}.schedule-date-field{flex-basis:100%}.schedule-controls{flex-basis:100%;gap:6px}.schedule-view-switch button{padding:0 10px}.schedule-hint{font-size:12px}}@media (orientation: landscape) and (max-height: 500px){.schedule-header{display:flex;align-items:center;padding-right:20px}.schedule-header .julius-top-bar{flex:1!important;padding-top:8px!important;padding-bottom:8px!important}.schedule-add{flex:none;padding:0}.schedule-toolbar{gap:6px 16px;padding-bottom:8px}.schedule-date-field{flex-basis:250px}.schedule-date-field>button{min-height:44px}.schedule-controls{flex-basis:280px}.schedule-controls>button[aria-haspopup]{min-height:44px}.schedule-view-switch{padding:0;border:0}.schedule-hint{padding-top:4px;padding-bottom:max(4px,env(safe-area-inset-bottom));font-size:12px}.schedule-empty{padding:6px 12px;margin-bottom:8px}.schedule-empty strong,.schedule-empty span{display:inline;margin-right:8px}}.studio-shell{min-height:100dvh;padding:24px max(20px,calc((100% - 1120px)/2)) 64px;display:flex;flex-direction:column;gap:24px;background:#f7f5f2;color:#171311}.studio-shell h1{margin:0;font-size:26px;font-weight:600}.studio-shell h2{margin:0;font-size:22px;font-weight:600}.studio-shell h3{margin:0;font-size:17px;font-weight:600}.studio-shell p{margin:0;font-size:15px;line-height:1.5}.studio-shell .muted{color:#625c5a;font-size:14px}.studio-shell .error-text{color:#a03e43;font-size:14px}.studio-shell .eyebrow{font-size:13px;font-weight:600;letter-spacing:.08em;color:#625c5a}.studio-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.studio-header>div{display:flex;flex-direction:column;gap:6px}.studio-intro{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}.studio-intro>div{display:flex;flex-direction:column;gap:6px}.studio-shell .panel{display:flex;flex-direction:column;gap:14px;align-items:stretch;background:#fff9f6;border:1px solid #e6e0dd;border-radius:16px;padding:20px}.studio-shell .studio-unlock{max-width:420px;width:100%;margin:8vh auto 0}.studio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:20px;align-items:start}.studio-shell .field-label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:#37322f}.studio-shell fieldset{display:flex;flex-direction:column;gap:8px;margin:0;padding:14px;border:1px solid #eee8e5;border-radius:12px}.studio-shell legend{padding:0 6px;font-size:13px;font-weight:600;color:#37322f}.studio-shell .action-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.studio-shell .action-link{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 12px;font-size:16px;font-weight:600;color:#3f1c2e;text-decoration:none}.studio-shell .action-link:hover{text-decoration:underline}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.studio-shell .invitation-panel{background:#efe4ea;border-color:#c9c3c0;color:#171311}.studio-shell .invitation-panel svg{color:#1f744f}.studio-shell .invitation-panel input{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:13px}.salon-list{display:flex;flex-direction:column;gap:12px}.salon-card{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid #e6e0dd;border-radius:14px;background:#f5efec}.salon-card .tag{flex:none;padding:3px 9px;border-radius:999px;background:#efe4ea;color:#3f1c2e;font-size:13px;font-weight:600;letter-spacing:.06em}.studio-login-details{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px;border:1px solid #e6e0dd;border-radius:12px;background:#fff9f6}.studio-login-details>div{min-width:0;display:flex;flex-direction:column;gap:2px}.studio-login-details span{color:#625c5a;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.studio-login-details code{overflow-wrap:anywhere;color:#171311;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:13px}.studio-login-details button{grid-column:2;grid-row:1 / span 2;align-self:center}.studio-login-details .error-text{grid-column:1 / -1}@media (max-width: 520px){.studio-login-details{grid-template-columns:minmax(0,1fr)}.studio-login-details button{grid-column:1;grid-row:auto}}.milestones{display:flex;flex-wrap:wrap;gap:6px 14px}.milestone{font-size:13px;color:#625c5a}.milestone.done{color:#1f744f;font-weight:600}.salon-card button{align-self:flex-start}:root{--paper: #f7f5f2;--surface: #fff9f6;--surface-subtle: #f5efec;--line: #e6e0dd;--line-soft: #eee8e5;--line-strong: #c9c3c0;--ink: #171311;--ink-soft: #37322f;--muted: #625c5a;--wine: #55283f;--wine-deep: #3f1c2e;--wine-tint: #efe4ea;--n-00: #fff9f6;--n-10: #f5efec;--n-20: #e6e0dd;--n-30: #c9c3c0;--n-40: #97918e;--n-50: #625c5a;--n-60: #37322f;--n-70: #171311;--drop-amber: #f1af57;--drop-rose: #ff9a9b;--drop-verdigris: #68d7a1;--drop-amber-deep: #8b5600;--drop-rose-deep: #a03e43;--drop-verdigris-deep: #1f744f;--success: #1f744f;--warning: #8b5600;--error: #a03e43;--r-md: 8px;--r-lg: 12px;--font-display: "Cabinet Grotesk", "Source Sans 3", -apple-system, sans-serif;--font-body: "Source Sans 3", -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);font-family:var(--font-body);font-size:16px;color:var(--ink);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}button,input,textarea,select{font-family:inherit}.tabular-nums,.julius-data{font-variant-numeric:tabular-nums}.julius-data{font-family:var(--font-mono);font-feature-settings:"tnum" 1;letter-spacing:-.02em}::selection{background:var(--wine-tint);color:var(--wine-deep)}input,textarea{caret-color:var(--wine)}input{accent-color:var(--wine)}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--line-strong);border:3px solid transparent;background-clip:content-box;border-radius:999px}*::-webkit-scrollbar-track{background:transparent}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--wine);box-shadow:0 0 0 3px #55283f38}:where(button,a,[role=button],summary):focus-visible{outline:2px solid var(--wine);outline-offset:2px;border-radius:var(--r-md)}a[href^="tel:"],a[href^="mailto:"]{color:inherit!important;-webkit-text-fill-color:currentColor!important;text-decoration:none!important}@keyframes julius-spin{to{transform:rotate(360deg)}}.julius-list{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.julius-list>*+*{border-top:1px solid var(--line-soft)}.julius-row-button{transition:background-color .15s ease-out}@media (hover: hover){.julius-row-button:hover{background:var(--surface-subtle)}}.julius-row-button:active{background:var(--wine-tint)}.julius-sidebar,.julius-tablet-only{display:none}.julius-mobile-only{display:flex}@media (min-width: 700px) and (min-height: 600px){.julius-sidebar,.julius-tablet-only{display:flex}.julius-mobile-only{display:none}}.julius-grid-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(76px,100%),1fr));gap:8px}.julius-grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:16px}.julius-grid-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:8px}.julius-grid-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(84px,100%),1fr));gap:8px}.julius-chip-row{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.julius-chip-row::-webkit-scrollbar{display:none}@media (min-width: 700px) and (min-height: 600px){.julius-chip-row{flex-wrap:wrap;overflow-x:visible}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.001ms!important;scroll-behavior:auto!important}}.julius-select-trigger{flex:1;min-width:0;width:100%;min-height:52px;display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease-out,box-shadow .15s ease-out}.julius-select-trigger:focus-visible{outline:none;border-color:var(--wine);box-shadow:0 0 0 3px #55283f2e}@media (hover: hover){.julius-select-trigger:not(:disabled):hover{border-color:var(--line-strong)}}.julius-select-trigger:disabled{cursor:default;opacity:.55}.julius-date-heading{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:44px;margin-left:-8px;padding:0 8px;border:0;border-radius:var(--r-md);background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease-out}.julius-date-heading:focus-visible{outline:none;box-shadow:0 0 0 3px #55283f2e}@media (hover: hover){.julius-date-heading:hover{background:var(--surface-subtle)}}.julius-select-trigger-inline{flex:none;width:auto;min-height:52px;padding:4px 12px;font-size:15px}.julius-select-option{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:8px 10px;border:none;border-radius:8px;font:inherit;text-align:left;cursor:pointer}@media (hover: hover){.julius-select-option:not(:disabled):not([aria-selected=true]):hover{background:var(--surface-subtle)}}.julius-select-option:focus-visible{outline:2px solid var(--wine);outline-offset:-2px}.julius-select-option:disabled{cursor:default}.julius-day-cell:not(:disabled):hover{background:var(--surface-subtle)}.julius-day-cell[aria-pressed=true]:hover{background:var(--ink)}@media (min-width: 700px) and (min-height: 600px){.julius-day-cell{min-height:72px!important}}.julius-field-row{border:1px solid var(--line);transition:border-color .15s ease-out,box-shadow .15s ease-out}.julius-field-row:focus-within{border-color:var(--wine);box-shadow:0 0 0 3px #55283f2e}.julius-field-row input:focus,.julius-field-row textarea:focus{outline:none;box-shadow:none;border-color:transparent}.julius-pager{display:inline-flex;align-items:stretch;height:52px;gap:1px;padding:3px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}@media (hover: hover){.julius-pager button:not(:disabled):not([aria-current=page]):hover{background:var(--surface-subtle)}}.julius-pager button:disabled{opacity:.3;cursor:default}.julius-pager button:first-child{margin-right:3px;border-right:1px solid var(--line-soft);border-top-right-radius:0;border-bottom-right-radius:0;padding-right:9px}.julius-pager button:last-child{margin-left:3px;border-left:1px solid var(--line-soft);border-top-left-radius:0;border-bottom-left-radius:0;padding-left:9px}.julius-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:4px}.julius-pages-wide{display:flex;align-items:center;gap:1px}.julius-pages-compact{display:none}.julius-pagination>:first-child{flex:1 1 auto;min-width:0}@media (max-width: 560px){.julius-pagination{gap:10px}.julius-pages-wide{display:none}.julius-pages-compact{display:flex;align-items:center}.julius-size-label{display:none}}.julius-screen-body>*{flex-shrink:0}@media (max-height: 600px) and (min-width: 600px){.julius-product-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.julius-top-bar{padding-top:8px!important;padding-bottom:8px!important}.julius-bottom-bar{display:flex!important;flex-direction:row!important;align-items:center;padding:8px 20px!important}.julius-bottom-bar>*{flex:1;min-width:0}}.julius-login{position:relative;z-index:1;display:grid;align-content:start;gap:24px;width:100%;max-width:420px;margin:0 auto;padding:64px 24px 32px}.julius-login-reveal{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 4px;border:none;background:none;font:inherit;font-size:16px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.julius-login-reveal{position:absolute;top:0;right:4px;bottom:0;min-width:48px;color:var(--muted);text-decoration:none}@media (max-height: 640px){.julius-login{gap:20px;padding-top:32px}}@media (min-width: 700px) and (min-height: 600px){.julius-login{gap:28px;padding-top:120px}}
