:root{--bg: #f4fbfa;--bg-elevated: #ffffff;--bg-soft: #e7f6f4;--ink: #243332;--muted: #5f7572;--blush: #d8f7f4;--rose: #7ad9d0;--coral: #4ec4ba;--warm: #f7fdfc;--accent: #7ad9d0;--accent-strong: #d8f7f4;--accent-deep: #4ec4ba;--accent-wash: rgba(122, 217, 208, .45);--accent-ink: #0f5c56;--accent-text: #0f5c56;--accent-text-hover: #0a3f3b;--on-accent: #083532;--danger: #d66b6b;--success: #5f9e78;--line: rgba(43, 36, 38, .08);--shadow: 0 10px 30px rgba(43, 36, 38, .06);--shadow-soft: 0 4px 16px rgba(43, 36, 38, .04);--shadow-accent: 0 4px 14px rgba(20, 120, 110, .22);--shadow-accent-hover: 0 8px 22px rgba(20, 120, 110, .32);--radius: 16px;--radius-sm: 12px;--font: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "DM Sans", system-ui, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-md: .9375rem;--text-lg: 1.0625rem;--text-xl: 1.125rem;--text-2xl: clamp(1.35rem, 2.5vw, 1.65rem);--leading: 1.55;--touch: 44px;--page-max: 1120px;--page-gutter: clamp(.75rem, 2.5vw, 1.75rem);--ease-out: cubic-bezier(.22, 1, .36, 1);font-family:var(--font);color:var(--ink);background:var(--bg);line-height:var(--leading);font-size:15px;font-weight:500;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}html,body,#root{min-height:100%;margin:0}body{font-family:var(--font);font-size:var(--text-md);line-height:var(--leading);background:radial-gradient(700px 420px at 50% -5%,rgba(122,217,208,.42),transparent 60%),radial-gradient(500px 320px at 0% 30%,rgba(122,217,208,.18),transparent 55%),radial-gradient(480px 300px at 100% 20%,rgba(78,196,186,.16),transparent 50%),var(--bg)}a{color:var(--accent-text);transition:color .2s ease}a:hover{color:var(--accent-text-hover, var(--accent-deep))}.brand{font-family:var(--font);font-size:var(--text-lg);font-weight:600;letter-spacing:-.02em;margin:0;color:var(--ink);line-height:1.2}h1,h2,h3{font-family:var(--font);color:var(--ink);line-height:1.3;letter-spacing:-.02em}h1{font-weight:600;font-size:var(--text-2xl);margin:.15rem 0 .4rem}h2{font-weight:600;font-size:var(--text-xl);margin:0 0 .65rem}h3{font-weight:600;font-size:var(--text-lg);margin:0 0 .5rem}.muted{color:var(--muted)}.error{color:var(--danger);margin:0}.page{min-height:100vh;width:100%;padding:1rem var(--page-gutter) 2.25rem;padding-bottom:max(2.25rem,env(safe-area-inset-bottom))}.page.center{display:grid;place-items:center}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.auth-panel{width:min(420px,100%);background:var(--bg-elevated);border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);padding:2rem 1.75rem;box-shadow:var(--shadow);transition:box-shadow .22s ease,border-color .22s ease}.auth-panel:focus-within{border-color:color-mix(in srgb,var(--rose) 35%,var(--line));box-shadow:var(--shadow-accent)}.stack{display:grid;gap:.9rem;margin:1.25rem 0}label{display:grid;gap:.4rem;font-size:var(--text-sm);color:var(--muted);font-weight:600}input,textarea,select{width:100%;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:var(--radius-sm);padding:.7rem .85rem;min-height:var(--touch);font:inherit;font-size:var(--text-md);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}input:hover,textarea:hover,select:hover{border-color:color-mix(in srgb,var(--rose) 25%,var(--line))}input:focus,textarea:focus,select:focus{outline:none;border-color:color-mix(in srgb,var(--rose) 55%,var(--line));box-shadow:0 0 0 3px var(--accent-wash);background:var(--bg-elevated)}textarea{resize:vertical;min-height:6rem}button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:0;border-radius:999px;padding:.65rem 1.05rem;min-height:var(--touch);font:inherit;font-weight:600;line-height:1.2;background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);cursor:pointer;transition:transform .22s var(--ease-out),box-shadow .22s ease,background .22s ease,border-color .22s ease,color .22s ease,opacity .22s ease;box-shadow:var(--shadow-accent)}button svg{flex-shrink:0;display:block}button:hover{transform:translateY(-2px);box-shadow:var(--shadow-accent-hover);background:linear-gradient(135deg,var(--coral),var(--accent-deep))}button:active{transform:translateY(0) scale(.98);box-shadow:var(--shadow-accent)}button:disabled{opacity:.6;cursor:wait;transform:none;box-shadow:none}button.ghost{background:transparent;color:var(--ink);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));box-shadow:none}button.ghost:hover{background:var(--blush);border-color:var(--rose);color:var(--accent-ink);transform:translateY(-2px);box-shadow:none}button.danger,.ghost.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 28%,var(--line));box-shadow:none}a.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;text-decoration:none;border-radius:999px;padding:.65rem 1.05rem;min-height:var(--touch);font-weight:600;background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);box-shadow:var(--shadow-accent);transition:transform .22s var(--ease-out),box-shadow .22s ease,background .22s ease,border-color .22s ease,color .22s ease}a.btn:hover{color:var(--on-accent);transform:translateY(-2px);box-shadow:var(--shadow-accent-hover);background:linear-gradient(135deg,var(--coral),var(--accent-deep))}a.btn.ghost{background:transparent;color:var(--ink);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));box-shadow:none}a.btn.ghost:hover{color:var(--accent-ink);background:var(--blush);border-color:var(--rose)}a.brand-link{text-decoration:none;color:inherit;display:inline-flex;align-items:center}.brand-mark{display:block;width:auto;height:2.5rem;object-fit:contain}.brand-mark-nav{height:2.6rem}.brand-mark-footer{height:2.75rem}.brand-logo{display:block;width:100%;max-width:18rem;height:auto;object-fit:contain}.brand-logo-auth{max-width:11.5rem;margin:0 auto .5rem}.auth-brand-link{display:block;text-decoration:none;margin:-.35rem -.15rem .85rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 auto 1.5rem;width:100%;max-width:var(--page-max);padding:.65rem .85rem;background:color-mix(in srgb,var(--bg-elevated) 88%,transparent);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:.5rem;z-index:50;animation:fade-up .4s ease both}.topbar-left{display:flex;align-items:center;gap:.75rem;min-width:0;flex:1}.nav-icon-inline,.bottom-nav{display:none}.page-app-body{width:100%}.topbar-right,.actions,.search-row,.content-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.content-header{justify-content:space-between;margin-bottom:1.25rem;align-items:flex-start}.nav-scroll{min-width:0;flex:1;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.nav-scroll::-webkit-scrollbar{display:none}.nav{display:flex;flex-wrap:nowrap;gap:.25rem;width:max-content;margin-left:.15rem;padding:.2rem;background:var(--bg-soft);border-radius:999px}.nav a{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;text-decoration:none;color:var(--muted);font-size:var(--text-sm);font-weight:600;line-height:1.2;white-space:nowrap;min-height:2.25rem;padding:.45rem .85rem;border-radius:999px;transition:background .22s ease,color .22s ease,transform .16s var(--ease-out)}.nav a:hover{color:var(--accent-text);background:color-mix(in srgb,var(--blush) 65%,transparent)}.nav a.active{color:var(--accent-ink);background:var(--bg-elevated);box-shadow:var(--shadow-soft)}.content,.content.narrow,.content-wide,.home,.home-day{width:100%;max-width:var(--page-max);margin:0 auto;position:relative;z-index:1;animation:fade-up .45s ease both}.small{font-size:var(--text-sm);line-height:1.45}.search-row{margin-bottom:1.25rem}.search-row input{flex:1;min-width:180px}.list{list-style:none;padding:0;margin:0;display:grid;gap:.7rem}.list-item{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:inherit;background:var(--bg-elevated);box-shadow:var(--shadow-soft);transition:border-color .18s ease,transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s ease;animation:fade-up .4s ease both}.list-item:nth-child(1){animation-delay:.02s}.list-item:nth-child(2){animation-delay:.05s}.list-item:nth-child(3){animation-delay:.08s}.list-item:nth-child(4){animation-delay:.11s}.list-item:nth-child(5){animation-delay:.14s}.list-item:nth-child(6){animation-delay:.17s}a.list-item:hover{border-color:color-mix(in srgb,var(--rose) 45%,var(--line));transform:translateY(-3px);box-shadow:var(--shadow);background:color-mix(in srgb,var(--blush) 35%,var(--bg-elevated))}.list-item.static{cursor:default}.list-meta{text-align:right}.cash-entry-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.55rem}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin:1rem 0 1.5rem}.stat,.panel{border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;background:var(--bg-elevated);box-shadow:var(--shadow-soft);transition:border-color .22s ease,box-shadow .22s ease,transform .22s var(--ease-out),background .22s ease}.stat{display:grid;gap:.25rem}.stat strong{font-family:var(--font);font-size:var(--text-xl);font-weight:700;color:var(--accent-text)}.panel{margin:1rem 0 1.5rem}.panel h2,.history h2{font-family:var(--font);font-size:var(--text-xl);font-weight:600;margin:0 0 .75rem;letter-spacing:-.02em}.notes{color:var(--muted);margin:0 0 1rem}.notes-preview{margin:.35rem 0 0;max-width:42ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-day-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:start}.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.section-head h2,.section-head h3{font-family:var(--font);font-size:var(--text-xl);font-weight:600;margin:0;letter-spacing:-.02em}@media(max-width:860px){.home-day-grid{grid-template-columns:1fr}}.agenda-controls{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.segmented{display:flex;gap:.25rem;padding:.25rem;background:var(--bg-soft);border-radius:999px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:100%}.segmented::-webkit-scrollbar{display:none}.segmented button{box-shadow:none;flex:0 0 auto;white-space:nowrap;min-height:2.25rem;padding:.45rem .85rem;font-size:var(--text-sm)}.segmented button.active{background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);border:0;box-shadow:var(--shadow-accent)}.segmented button.ghost{border:0;background:transparent}.agenda-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .6rem;font-size:.72rem;font-weight:700;border:1px solid var(--line);color:var(--muted);background:var(--bg)}.badge-scheduled{color:var(--ink)}.badge-awaiting_confirmation{color:#b8842e;border-color:color-mix(in srgb,#e0b56a 35%,var(--line));background:color-mix(in srgb,#e0b56a 12%,white)}.badge-awaiting_deposit{color:#9a5b2f;border-color:color-mix(in srgb,#d4a574 40%,var(--line));background:color-mix(in srgb,#d4a574 14%,white)}.badge-confirmed{color:var(--success);border-color:color-mix(in srgb,var(--success) 30%,var(--line));background:color-mix(in srgb,var(--success) 10%,white)}.badge-declined{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,var(--line));background:color-mix(in srgb,var(--danger) 8%,white)}.badge-completed,.badge-cancelled{opacity:.75}.status-cancelled .agenda-row strong,.status-cancelled .muted{text-decoration:line-through;opacity:.7}.actions.vertical{flex-direction:column;align-items:stretch}.day-title{font-family:var(--font);font-size:var(--text-xl);font-weight:600;text-transform:capitalize;margin:0 0 1rem;letter-spacing:-.02em}.week-grid{display:grid;gap:.75rem}@media(min-width:900px){.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.week-day{margin:0}.week-day-btn{width:100%;text-align:left;background:transparent;color:inherit;border:0;border-radius:0;padding:0;margin-bottom:.75rem;font:inherit;cursor:pointer;box-shadow:none}.week-day-btn:hover{transform:none;filter:none}.week-day-btn strong{font-family:var(--font);font-size:var(--text-lg);font-weight:700;text-transform:capitalize}.list.compact{gap:.45rem}.list.compact .list-item{padding:.7rem .8rem;box-shadow:none}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}.month-weekday{text-align:center;font-size:.78rem;color:var(--muted);font-weight:700;padding:.35rem 0}.month-cell{min-height:88px;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;text-align:left;border:1px solid var(--line);border-radius:14px;background:var(--bg-elevated);color:inherit;padding:.5rem;cursor:pointer;font:inherit;box-shadow:none;transition:border-color .18s ease,background .18s ease,transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s ease}.month-cell:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--rose) 45%,var(--line));background:color-mix(in srgb,var(--blush) 40%,var(--bg-elevated));box-shadow:var(--shadow-soft)}.month-cell.outside{opacity:.42;background:var(--bg-soft)}.month-cell.today{border-color:color-mix(in srgb,var(--accent) 70%,var(--line))}.month-cell.selected{outline:2px solid var(--accent);outline-offset:1px}.month-cell.has-items{background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--accent) 14%,white))}.month-day-num{font-weight:700;font-size:.95rem}.month-count{font-size:.72rem;color:var(--accent-text);font-weight:700}.month-previews{list-style:none;margin:.15rem 0 0;padding:0;width:100%;font-size:.68rem;color:var(--muted)}.month-previews li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cash-in{color:#2f6b4f}.cash-out{color:#9a3b4a}.checkbox-row{display:flex;align-items:center;gap:.6rem;font-weight:500}.checkbox-row input{width:auto}.inline-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--muted)}.list.compact .list-item{padding:.65rem}.user-avatar{display:inline-grid;place-items:center;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--accent) 35%,var(--bg-soft));color:var(--accent-ink);font-weight:700;flex-shrink:0}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-avatar.size-sm{width:2rem;height:2rem;font-size:.85rem}.user-avatar.size-md{width:2.4rem;height:2.4rem;font-size:.95rem}.user-avatar.size-lg{width:7rem;height:7rem;font-size:2.4rem}.avatar-menu{position:relative;z-index:1}.avatar-trigger{padding:0;border:none;background:transparent;box-shadow:none;border-radius:999px;line-height:0;min-height:0;min-width:0}.avatar-trigger:hover{transform:none;filter:brightness(.98)}.avatar-dropdown{position:absolute;right:0;top:calc(100% + .55rem);min-width:240px;padding:.45rem;background:var(--bg-elevated);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);z-index:60;display:grid;gap:.2rem;isolation:isolate}.avatar-dropdown-head{display:flex;align-items:center;gap:.65rem;padding:.55rem .6rem .7rem;border-bottom:1px solid var(--line);margin-bottom:.2rem}.avatar-dropdown-head strong{display:block;font-size:.92rem}.avatar-dropdown button{display:inline-flex;align-items:center;justify-content:flex-start;gap:.55rem;width:100%;background:transparent;box-shadow:none;color:var(--ink);font-weight:600;font-size:var(--text-sm);padding:.7rem .75rem;min-height:var(--touch);border-radius:12px}.avatar-dropdown button svg{width:1rem;height:1rem}.avatar-dropdown button:hover{background:var(--blush);color:var(--accent-ink)}.avatar-dropdown .danger-item{color:#9a3b4a}.settings-page{display:grid;gap:1rem;overflow-x:hidden}.settings-hero{margin:0}.settings-hero h1{margin-bottom:.35rem}.settings-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:1rem;align-items:start}.settings-sidebar{margin:0;padding:.85rem}.settings-sidebar-title{margin:0 0 .65rem .35rem;font-weight:600}.settings-nav{display:grid;gap:.25rem}.settings-nav button{display:inline-flex;align-items:center;justify-content:flex-start;gap:.6rem;width:100%;background:transparent;box-shadow:none;color:var(--muted);font-weight:600;font-size:var(--text-sm);padding:.7rem .85rem;min-height:var(--touch);border-radius:12px;text-align:left}.settings-nav button svg{width:1rem;height:1rem;flex-shrink:0}.settings-nav button:hover{background:var(--blush);color:var(--accent-ink)}.settings-nav button.active{background:color-mix(in srgb,var(--blush) 75%,var(--bg-elevated));color:var(--accent-ink);box-shadow:var(--shadow-soft)}.settings-main{margin:0;min-height:320px}.settings-panel-head{margin-bottom:.35rem}.settings-panel-head h2{margin-bottom:.25rem}.settings-empty{padding:1.5rem .25rem}.settings-mobile-index,.settings-mobile-detail-bar{display:none}.settings-index-list{display:grid;gap:.45rem}.settings-index-item{display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;background:var(--bg-elevated);color:var(--ink);box-shadow:none;border:1px solid var(--line);border-radius:16px;padding:.85rem .9rem;min-height:3.5rem}.settings-index-item:hover{transform:none;filter:none;background:color-mix(in srgb,var(--blush) 45%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.settings-index-icon{display:grid;place-items:center;width:2.35rem;height:2.35rem;flex-shrink:0;border-radius:12px;background:var(--blush);color:var(--accent-ink)}.settings-index-copy{display:grid;gap:.15rem;min-width:0;flex:1}.settings-index-copy strong{font-size:var(--text-md);font-weight:700}.settings-index-copy .muted{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.settings-index-chevron{flex-shrink:0;color:var(--muted)}.settings-mobile-head h1{margin-bottom:.25rem}.settings-back{display:inline-flex;align-items:center;gap:.2rem;width:fit-content;background:transparent;box-shadow:none;color:var(--accent-ink);font-weight:700;font-size:var(--text-sm);padding:.15rem 0;min-height:auto}.settings-back:hover{transform:none;filter:none;background:transparent}.settings-mobile-detail-bar{gap:.2rem;margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:1px solid var(--line)}.settings-mobile-detail-bar h1{margin:.15rem 0 .2rem}.profile-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:1.5rem;align-items:start}.profile-photo-block{display:grid;justify-items:center;gap:.65rem}.photo-upload{cursor:pointer}.studio-logo-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.studio-logo-preview{max-width:min(16rem,100%);max-height:7rem;width:auto;height:auto;object-fit:contain;background:color-mix(in srgb,var(--bg) 70%,white);padding:.5rem .75rem;border-radius:12px;border:1px dashed var(--line)}.studio-logo-preview-empty{display:grid;place-items:center;min-width:8rem;min-height:4.5rem;color:var(--muted);font-size:var(--text-sm)}.studio-logo-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}label.btn.ghost,label.btn-upload-sm{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;text-decoration:none;border-radius:999px;font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:transform .18s var(--ease-out),box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease}label.btn-upload-sm{padding:.4rem .85rem;min-height:2.15rem;background:var(--bg-elevated);color:var(--accent-ink);border:1px solid color-mix(in srgb,var(--rose) 45%,var(--line));box-shadow:var(--shadow-soft)}label.btn-upload-sm:hover{background:var(--blush);border-color:var(--rose);color:var(--accent-ink);transform:translateY(-1px);box-shadow:0 4px 12px #c080c8,.14 )}label.btn-upload-sm:active{transform:translateY(0)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.field-hint{display:block;margin-top:.35rem}.profile-actions{justify-content:flex-end}.field-block{display:grid;gap:.55rem}.field-label{font-weight:600;font-size:.92rem}.slot-chips{display:flex;flex-wrap:wrap;gap:.45rem}.slot-chip{min-width:4.5rem;padding:.55rem .9rem;border-radius:999px;border:1px solid var(--line);background:var(--bg-soft);color:var(--ink);font-weight:700;box-shadow:none}.slot-chip:hover{background:color-mix(in srgb,var(--accent) 18%,var(--bg-elevated))}.slot-chip.active{background:color-mix(in srgb,var(--accent) 42%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--accent-ink)}.modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom));box-sizing:border-box}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;border-radius:0;background:#0006;box-shadow:none;cursor:pointer}.modal-dialog{position:relative;z-index:1;width:min(520px,100%);max-height:min(88vh,840px);margin:0;display:flex;flex-direction:column;overflow:hidden;background:#fff}.modal-dialog.panel:hover{transform:none;box-shadow:var(--shadow);border-color:var(--line);background:#fff}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem;flex:0 0 auto}.modal-header h2{margin:0}.modal-body{overflow:auto;flex:1 1 auto;min-height:0;-webkit-overflow-scrolling:touch;padding-bottom:.15rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem;min-width:var(--touch);min-height:var(--touch);line-height:0}.icon-btn svg{display:block}.availability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.hours-calendar .toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.hours-calendar .day-title{flex:1;text-align:center;text-transform:capitalize;margin:0}.hours-day-editor{margin-top:.25rem}.hours-day-editor h3{margin:0;font-size:var(--text-lg);text-transform:capitalize}.availability-day h2{font-size:var(--text-lg);margin-bottom:.65rem}.time-chips{list-style:none;margin:0 0 .75rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.time-chips li{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .35rem .25rem .65rem;background:var(--bg-soft);border-radius:999px;font-size:var(--text-sm);font-weight:600}.time-chips button{padding:.15rem .4rem;min-width:auto;min-height:auto;box-shadow:none}.add-time-row{display:flex;gap:.5rem;align-items:center}.add-time-row input[type=time]{flex:1}.add-range-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.75rem}.add-range-row select{flex:1;min-width:5.5rem}.range-list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.range-list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .65rem;background:var(--bg-soft);border-radius:999px;font-weight:600;font-size:var(--text-sm)}.address-block{margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--line)}.address-block .field-label{margin-bottom:.15rem}.service-check-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem;max-height:240px;overflow:auto}.service-check-list li{padding:.35rem .55rem;border-radius:12px;background:var(--bg-soft)}.service-check-list .checkbox-row{margin:0;width:100%}.accent-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.65rem}.accent-option{display:flex;align-items:center;gap:.75rem;width:100%;justify-content:flex-start;text-align:left;background:var(--bg);border:1px solid var(--line);box-shadow:none;color:var(--ink);font-weight:500;border-radius:var(--radius-sm);padding:.75rem;min-height:var(--touch)}.accent-option:hover{transform:none;filter:none;border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:var(--bg-elevated)}.accent-option.active{border-color:color-mix(in srgb,var(--accent) 70%,var(--line));background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));box-shadow:0 0 0 2px var(--accent-wash)}.accent-swatch{width:1.75rem;height:1.75rem;border-radius:999px;flex-shrink:0;box-shadow:inset 0 0 0 1px #2b242614}.accent-copy{display:grid;gap:.1rem;min-width:0}.accent-copy strong{font-size:var(--text-sm);font-weight:700}.accent-preview{margin:0}.accent-preview-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.65rem}@media(max-width:860px){.settings-hero-desktop,.settings-sidebar{display:none}.settings-page-index .settings-mobile-index{display:grid;gap:1rem}.settings-page-index .settings-layout{display:none}.settings-page-detail .settings-layout{display:block}.settings-page-detail .settings-mobile-detail-bar{display:grid}.settings-page-detail .settings-panel-head{display:none}.settings-layout,.profile-layout,.profile-grid{grid-template-columns:1fr}.settings-main{min-height:0;padding:.9rem}.profile-layout{justify-items:center;text-align:center;gap:1rem}.profile-photo-block{width:100%}.profile-fields{width:100%;text-align:left}.profile-actions{position:sticky;bottom:calc(4.6rem + env(safe-area-inset-bottom));z-index:3;justify-content:stretch;margin:.5rem -.9rem -.9rem;padding:.75rem .9rem;background:color-mix(in srgb,var(--bg-elevated) 94%,transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.profile-actions button{width:100%}.user-avatar.size-lg{width:5.5rem;height:5.5rem;font-size:1.85rem}.settings-deposit-type{grid-template-columns:1fr}.add-range-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.add-range-row button{grid-column:1 / -1;width:100%}.hours-calendar .toolbar{justify-content:space-between}.hours-calendar .day-title{font-size:var(--text-md);flex:1 1 100%;order:-1}.month-previews{display:none}.month-cell{min-height:var(--touch);padding:.35rem .15rem;align-items:center;border-radius:10px}.page-app:has(.settings-page) .help-fab{display:none}.settings-deposit>button[type=submit],.hours-day-editor>button[type=submit]{width:100%}.hours-day-editor.panel{margin-top:.75rem;padding:.85rem 0 0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent}.hours-day-editor.panel:hover{transform:none;box-shadow:none;border-color:var(--line);background:transparent}.settings-whatsapp .actions{display:grid;grid-template-columns:1fr}.settings-whatsapp .actions button,.settings-whatsapp .actions .btn{width:100%}.settings-index-item{min-height:3.65rem}}@media(max-width:720px){.page{padding-inline:.75rem}.page-app{padding-bottom:calc(4.75rem + env(safe-area-inset-bottom))}.page-app .topbar{position:sticky;top:0;margin-bottom:1rem;border-radius:0 0 18px 18px;margin-inline:-.75rem;width:calc(100% + 1.5rem);max-width:none;padding:.65rem .85rem;padding-top:max(.65rem,env(safe-area-inset-top));gap:.5rem}.page-app .topbar-left{flex-direction:row;align-items:center;gap:.55rem}.nav-desktop{display:none}.brand-mark-nav{height:2rem}.bottom-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:55;gap:0;margin:0;padding:.35rem .2rem calc(.35rem + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg-elevated) 94%,transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 -8px 24px #2b24260f}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:3.15rem;padding:.3rem .1rem;border-radius:12px;text-decoration:none;color:var(--muted);font-size:.62rem;font-weight:700;letter-spacing:-.01em;line-height:1.1;text-align:center;transition:color .18s ease,background .18s ease}.bottom-nav-item span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-nav-item:hover,.bottom-nav-item.active{color:var(--accent-text);background:color-mix(in srgb,var(--blush) 70%,transparent)}.brand{font-size:var(--text-md)}.content-header{flex-direction:column;align-items:stretch;gap:.85rem}.content-header .actions,.agenda-controls .actions{width:100%}.content-header .actions>*,.agenda-controls .actions>*{flex:1}.list-item{flex-direction:column;align-items:stretch;gap:.75rem}.list-meta{text-align:left}.actions.vertical{flex-direction:row;flex-wrap:wrap}.actions.vertical>*{flex:1 1 auto;min-width:calc(50% - .4rem)}.agenda-controls{flex-direction:column;align-items:stretch}.segmented{width:100%}.segmented button{flex:1 1 auto}.month-previews{display:none}.month-cell{min-height:var(--touch);padding:.35rem .15rem;align-items:center;border-radius:10px}.month-day-num{font-size:var(--text-sm)}.month-count{font-size:.62rem;text-align:center;line-height:1.2}.month-weekday{font-size:.65rem;padding:.2rem 0}.month-grid{gap:.25rem}.add-range-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.add-range-row button{grid-column:1 / -1;width:100%}.range-list li{border-radius:12px;min-height:var(--touch);padding-inline:.75rem}.modal-root{padding:max(.75rem,env(safe-area-inset-top)) .75rem max(.75rem,env(safe-area-inset-bottom));align-items:center}.modal-dialog{width:min(520px,100%);max-height:min(86vh,900px);border-radius:var(--radius)}.slot-chip{min-height:var(--touch);min-width:4.75rem}.stats{grid-template-columns:1fr 1fr;gap:.55rem}.stat,.panel{padding:.9rem}.hours-calendar .toolbar{justify-content:space-between}.hours-calendar .day-title{font-size:var(--text-md);flex:1 1 100%;order:-1}.auth-shell{padding:.85rem;align-items:start}.auth-panel,.auth-panel-wide{width:100%;padding:1.35rem 1.1rem;border-radius:calc(var(--radius) + 2px)}.password-input-row{grid-template-columns:1fr}.password-toggle{width:100%}.booking-link-row{flex-direction:column;align-items:stretch}.booking-link-row input,.booking-link-row button,.booking-link-row a{width:100%}.row-between{flex-direction:column;align-items:stretch}.plans-offer-grid{grid-template-columns:1fr}.plans-subtabs,.plans-billing-toggle{width:100%}.avatar-dropdown{right:0;left:auto;min-width:min(280px,calc(100vw - 1.5rem))}}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-soft{0%,to{opacity:.55}50%{opacity:1}}.loading-state{display:inline-flex;align-items:center;gap:.7rem;color:var(--muted);font-size:var(--text-sm);font-weight:600;margin:.75rem 0;animation:fade-up .3s ease both}.loading-state.compact{margin:.35rem 0;font-size:var(--text-xs)}.page.center .loading-state{font-size:var(--text-md)}.spinner{width:1.15rem;height:1.15rem;border-radius:999px;border:2px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-top-color:var(--accent-deep);animation:spin .7s linear infinite;flex-shrink:0}.loading-state.compact .spinner{width:.95rem;height:.95rem}.panel,.stat{transition:border-color .22s ease,box-shadow .22s ease,transform .22s var(--ease-out)}.stat:hover,.panel:hover{box-shadow:var(--shadow);transform:translateY(-2px);border-color:color-mix(in srgb,var(--rose) 30%,var(--line))}.slot-chip{transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease,border-color .16s ease,box-shadow .16s ease}.slot-chip:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--rose) 40%,var(--line));background:color-mix(in srgb,var(--blush) 45%,var(--bg-elevated))}.slot-chip:active{transform:scale(.97)}.nav a{transition:background .22s ease,color .22s ease,transform .16s var(--ease-out)}.nav a:active{transform:scale(.97)}.accent-option{transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .16s ease}.accent-option:hover{transform:translateY(-1px)}.accent-option:active{transform:scale(.98)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.spinner{animation:pulse-soft 1.2s ease-in-out infinite;border-top-color:color-mix(in srgb,var(--accent) 30%,var(--line))}}.booking-landing-nav-brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;color:inherit;max-width:min(52vw,16rem)}.booking-landing-nav-logo{height:2.25rem;width:auto;max-width:7.5rem;object-fit:contain;flex-shrink:0}.booking-landing-nav-name{font-weight:700;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-landing-hero{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:min(92vh,52rem);padding:2.5rem var(--page-gutter) 3.5rem;overflow:hidden;text-align:center}.booking-landing-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 90% 55% at 50% 15%,rgba(184,240,234,.95),transparent 70%),radial-gradient(520px 360px at 8% 70%,rgba(122,217,208,.28),transparent 55%),radial-gradient(480px 320px at 96% 55%,rgba(168,230,224,.34),transparent 50%),linear-gradient(180deg,var(--warm) 0%,var(--bg) 88%);animation:landing-bg-shift 16s ease-in-out infinite alternate}.booking-landing-hero-visual{position:relative;z-index:1;margin-bottom:1.35rem;animation:landing-rise .85s ease both}.booking-landing-logo{display:block;width:auto;height:auto;max-width:min(18rem,72vw);max-height:10.5rem;object-fit:contain;background:none;border-radius:0;box-shadow:none}.booking-landing-logo-fallback{width:auto;height:auto;max-width:min(7.5rem,42vw);max-height:7.5rem;filter:drop-shadow(0 8px 20px rgba(43,36,38,.08))}.booking-landing-hero-content{position:relative;z-index:1;width:100%;max-width:34rem;margin:0 auto;animation:landing-rise .9s ease .08s both}.booking-landing-studio{margin:0 0 .65rem;font-family:var(--font-display);font-size:clamp(2rem,7vw,3.15rem);font-weight:700;letter-spacing:-.035em;line-height:1.08;color:var(--ink);animation:landing-rise .9s ease both}.booking-landing-title{max-width:18ch;font-size:clamp(1.05rem,2.4vw,1.3rem);font-weight:500;color:var(--accent-ink)}.booking-landing-steps{list-style:none;margin:1.75rem 0 0;padding:0;display:grid;gap:.85rem;text-align:left}.booking-landing-step{display:grid;grid-template-columns:auto auto 1fr;align-items:start;gap:.85rem;padding:.35rem 0;animation:landing-rise .7s ease both}.booking-landing-step:nth-child(2){animation-delay:.08s}.booking-landing-step:nth-child(3){animation-delay:.16s}.booking-landing-step-index{width:1.5rem;height:1.5rem;margin-top:.35rem;display:grid;place-items:center;border-radius:50%;font-size:var(--text-xs);font-weight:700;color:var(--accent-ink);background:var(--blush);border:1px solid color-mix(in srgb,var(--rose) 40%,transparent)}.booking-landing-step h3{margin:0 0 .2rem;font-size:var(--text-md)}.booking-landing-step p{margin:0;font-size:var(--text-sm)}.booking-landing-services-section{background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--blush) 35%,transparent))}.booking-landing-services{list-style:none;margin:1.5rem auto 0;padding:0;max-width:28rem;display:grid;gap:0;text-align:left}.booking-landing-service{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line);animation:landing-rise .65s ease both}.booking-landing-service:last-child{border-bottom:none}.booking-landing-service h3{margin:0 0 .15rem;font-size:var(--text-md);font-weight:600}.booking-landing-service p{margin:0}.booking-landing-footer{padding:2rem var(--page-gutter) 2.5rem;text-align:center;border-top:1px solid var(--line)}.booking-landing-footer-brand{color:var(--accent-ink);font-weight:600;text-decoration:none}.booking-landing-footer-brand:hover{color:var(--accent-text)}.booking-landing-cta-follow{margin-top:1.75rem}.booking-app-nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 calc(-1 * var(--page-gutter)) 1.25rem;padding:.75rem var(--page-gutter);padding-top:max(.75rem,env(safe-area-inset-top));background:color-mix(in srgb,var(--bg-elevated) 90%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.booking-app-nav-brand{display:inline-flex;align-items:center;gap:.55rem;min-width:0;text-decoration:none;color:inherit}.booking-app-nav-logo{height:2.1rem;width:auto;max-width:6.5rem;object-fit:contain;flex-shrink:0}.booking-app-nav-name{font-weight:700;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-content{max-width:640px;margin:0 auto}.booking-page{padding-top:0}.booking-auth{animation:fade-up .35s ease both}.booking-auth h1{margin-bottom:.35rem}.booking-confirm-page{padding:2rem 1rem}.booking-confirm-card{width:min(28rem,100%);padding:1.5rem 1.35rem;border-radius:20px;background:var(--surface, #fff);box-shadow:0 12px 40px color-mix(in srgb,var(--accent-deep, #4a1020) 12%,transparent)}.booking-confirm-brand{display:flex;align-items:center;gap:.5rem;font-weight:650}.booking-confirm-actions{flex-wrap:wrap}.booking-deposit-notice{margin:0;padding:.75rem .9rem;border-radius:12px;background:color-mix(in srgb,var(--blush) 70%,white);border:1px solid color-mix(in srgb,var(--rose) 35%,transparent);color:var(--accent-ink);font-size:var(--text-sm);line-height:1.45}.booking-deposit-amount{margin:0;font-size:var(--text-lg)}.booking-pix-qr{width:min(220px,70vw);height:auto;margin:.25rem auto;display:block;border-radius:12px;background:#fff;padding:.5rem;border:1px solid var(--line)}.booking-pix-key-value{display:block;padding:.65rem .75rem;border-radius:10px;background:var(--bg-soft);border:1px solid var(--line);word-break:break-all;font-size:var(--text-sm)}.settings-toggle-row{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 0;border-bottom:1px solid var(--line);font-weight:500;color:var(--ink)}.settings-toggle-row input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;margin-top:.2rem;width:1.15rem;height:1.15rem;min-height:0;padding:0;flex-shrink:0;border:2px solid color-mix(in srgb,var(--rose) 55%,var(--line));border-radius:.3rem;background:var(--bg-elevated);cursor:pointer;display:grid;place-content:center;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.settings-toggle-row input[type=checkbox]:before{content:"";width:.55rem;height:.55rem;transform:scale(0);transition:transform .12s ease;box-shadow:inset 1em 1em var(--on-accent);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}.settings-toggle-row input[type=checkbox]:checked{background:linear-gradient(135deg,var(--coral),var(--accent-deep));border-color:var(--coral)}.settings-toggle-row input[type=checkbox]:checked:before{transform:scale(1)}.settings-toggle-row input[type=checkbox]:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 35%,transparent)}.settings-toggle-row .block{display:block;margin-top:.2rem}.settings-deposit-type{border:none;margin:0;padding:0;display:grid;gap:.55rem}.settings-radio{display:flex!important;flex-direction:row;align-items:center;gap:.65rem;margin:0;padding:.55rem .7rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);color:var(--ink);font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease}.settings-radio:has(input:checked){border-color:color-mix(in srgb,var(--rose) 55%,var(--line));background:color-mix(in srgb,var(--blush) 55%,var(--bg-elevated))}.settings-radio input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:1.1rem;height:1.1rem;min-height:0;min-width:1.1rem;margin:0;padding:0;flex:0 0 auto;border:2px solid color-mix(in srgb,var(--rose) 55%,var(--line));border-radius:50%;background:var(--bg-elevated);cursor:pointer;display:grid;place-content:center}.settings-radio input[type=radio]:before{content:"";width:.5rem;height:.5rem;border-radius:50%;transform:scale(0);transition:transform .12s ease;background:var(--coral)}.settings-radio input[type=radio]:checked{border-color:var(--coral)}.settings-radio input[type=radio]:checked:before{transform:scale(1)}.settings-radio input[type=radio]:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 35%,transparent)}.settings-pix-qr{width:180px;height:180px;object-fit:contain;border-radius:12px;border:1px solid var(--line);background:#fff;padding:.35rem}.success{color:var(--success);margin:0}@media(max-width:800px){.booking-landing-hero{min-height:auto;padding-top:1.75rem;padding-bottom:2.5rem}.booking-landing-studio{font-size:clamp(1.75rem,9vw,2.35rem)}.booking-landing-step{grid-template-columns:auto 1fr}.booking-landing-step .landing-feature-icon{display:none}}.booking-service-list{display:grid;gap:.5rem}.booking-service{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;text-align:left;padding:.85rem 1rem;border:1px solid var(--line);border-radius:12px;background:var(--bg-elevated);color:var(--ink);box-shadow:none;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease,color .16s ease}.booking-service:hover{border-color:color-mix(in srgb,var(--rose) 45%,var(--line));transform:translateY(-2px);background:color-mix(in srgb,var(--blush) 50%,var(--bg-elevated));color:var(--ink);box-shadow:var(--shadow-soft)}.booking-service.active{border-color:var(--accent-deep);background:color-mix(in srgb,var(--blush) 72%,var(--bg-elevated));color:var(--accent-ink);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.booking-service-name{font-weight:600;color:inherit}.booking-service .muted{color:var(--muted)}.booking-appt-list{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.booking-appt-item{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.9rem 0;border-bottom:1px solid var(--line)}.booking-appt-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.booking-link-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.booking-link-row input{flex:1 1 220px;min-width:0}.row-between{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.booking-missing{text-align:center;gap:.75rem}.auth-panel-wide{width:min(460px,100%)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;margin:1.25rem 0 0;padding:.25rem;background:var(--bg-soft);border-radius:999px}.auth-tabs button{border:0;background:transparent;color:var(--muted);font-weight:600;font-size:var(--text-sm);padding:.55rem .75rem;min-height:auto;border-radius:999px;cursor:pointer}.auth-tabs button.active{background:var(--bg-elevated);color:var(--accent-ink);box-shadow:var(--shadow-soft)}.auth-tabs button:hover:not(.active){color:var(--accent-text);background:color-mix(in srgb,var(--blush) 55%,transparent)}.phone-input{font-variant-numeric:tabular-nums;letter-spacing:.02em}.otp-input{text-align:center;font-size:var(--text-xl);font-weight:700;letter-spacing:.35em;font-variant-numeric:tabular-nums}.password-field{display:grid;gap:.45rem}.password-input-row{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:stretch}.password-input-row input{min-width:0}.password-toggle{min-height:var(--touch);min-width:var(--touch);padding-inline:.65rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--touch);min-width:var(--touch);min-height:var(--touch);padding:0;border-radius:var(--radius-sm);line-height:0}.icon-btn.primary{background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);border:1px solid transparent;box-shadow:var(--shadow-accent)}.icon-btn.primary:hover{background:linear-gradient(135deg,var(--coral),var(--accent-deep));transform:translateY(-1px)}.icon-btn.danger{color:var(--danger)}.icon-btn.danger:hover{background:color-mix(in srgb,var(--danger) 10%,white);border-color:color-mix(in srgb,var(--danger) 30%,var(--line))}.icon-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.agenda-item-attention{border-color:color-mix(in srgb,#d4a574 55%,var(--line));background:linear-gradient(100deg,color-mix(in srgb,#d4a574 16%,var(--bg-elevated)),var(--bg-elevated) 55%);box-shadow:0 0 0 1px color-mix(in srgb,#d4a574 28%,transparent),var(--shadow-soft);animation:agenda-attention-pulse 2.4s ease-in-out infinite}.agenda-attention-banner{margin:.35rem 0 .45rem;padding:.4rem .6rem;border-radius:8px;background:color-mix(in srgb,#d4a574 22%,white);color:#7a4a22;font-size:var(--text-xs);font-weight:700;letter-spacing:.01em}@keyframes agenda-attention-pulse{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,#d4a574 28%,transparent),var(--shadow-soft)}50%{box-shadow:0 0 0 3px color-mix(in srgb,#d4a574 35%,transparent),0 8px 20px #b4783c1f}}.password-strength-bar{height:4px;background:var(--bg-soft);border-radius:999px;overflow:hidden}.password-strength-bar span{display:block;height:100%;background:var(--danger);border-radius:inherit;transition:width .2s ease,background .2s ease}.password-strength-bar[data-score="3"] span,.password-strength-bar[data-score="4"] span{background:#d4a017}.password-strength-bar[data-score="5"] span{background:var(--success)}.password-rules{list-style:none;margin:.35rem 0 0;padding:0;display:grid;gap:.2rem;font-size:var(--text-xs);color:var(--muted)}.password-rules li{position:relative;padding-left:1.1rem}.password-rules li:before{content:"○";position:absolute;left:0;color:var(--muted)}.password-rules li.ok{color:var(--success)}.password-rules li.ok:before{content:"✓"}.password-ok{margin:.25rem 0 0}.email-field{display:grid;gap:.25rem}.field-hint{font-size:var(--text-xs);font-weight:500}.field-hint.error{color:var(--danger)}input.input-invalid{border-color:color-mix(in srgb,var(--danger) 55%,var(--line))}button.linkish{background:none;border:0;padding:0;min-height:auto;color:var(--accent-text);font:inherit;font-weight:600;cursor:pointer;text-decoration:underline;box-shadow:none}button.linkish:hover{color:var(--accent-text-hover, var(--accent-deep));transform:none;box-shadow:none;background:none}.plans-subtabs{display:inline-grid;grid-template-columns:1fr 1fr;gap:.25rem;padding:.25rem;background:var(--bg-soft);border-radius:999px;width:min(320px,100%)}.plans-subtabs button{border:0;background:transparent;color:var(--muted);font-weight:600;font-size:var(--text-sm);padding:.55rem .9rem;min-height:auto;border-radius:999px;cursor:pointer}.plans-subtabs button.active{background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);box-shadow:var(--shadow-accent)}.plans-subtabs button:hover:not(.active){color:var(--accent-text);background:color-mix(in srgb,var(--blush) 55%,transparent);transform:none;box-shadow:none}.plans-banner{margin:0;padding:.75rem .9rem;border-radius:var(--radius-sm);background:var(--accent-wash)}.plans-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.plans-section-head h3{margin:0 0 .2rem}.plans-status-card,.plans-offer-card,.plans-invoice-card{background:var(--bg-elevated);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);padding:1.25rem 1.2rem;box-shadow:var(--shadow-soft);transition:border-color .22s ease,box-shadow .22s ease,transform .22s var(--ease-out)}.plans-offer-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--rose) 40%,var(--line))}.plans-status-top,.plans-invoice-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.plans-status-title{font-size:var(--text-lg)}.plans-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .7rem;border-radius:999px;font-size:var(--text-xs);font-weight:700;background:var(--bg-soft);color:var(--muted);white-space:nowrap}.plans-badge.ok{background:color-mix(in srgb,var(--success) 18%,white);color:var(--success)}.plans-alert{margin:1rem 0;padding:.85rem 1rem;border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--line)}.plans-alert p{margin:0;font-size:var(--text-sm)}.plans-alert.ok{background:color-mix(in srgb,var(--success) 12%,white);border-color:color-mix(in srgb,var(--success) 28%,var(--line))}.plans-alert.warn{background:color-mix(in srgb,var(--danger, #b42318) 10%,white);border-color:color-mix(in srgb,var(--danger, #b42318) 28%,var(--line))}.plans-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem 1rem;padding-top:1rem;border-top:1px solid var(--line)}.plans-meta-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.plans-meta-label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.2rem}.plans-card-actions{display:flex;justify-content:flex-end;margin-top:1.1rem}.plans-invoice-count{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--text-sm);color:var(--muted);font-weight:600}.plans-invoice-list{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}.plans-invoice-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.9rem}a.btn-link{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none;padding:.55rem .9rem;min-height:auto;border-radius:999px;border:1px solid var(--line);color:var(--ink);font-size:var(--text-sm);font-weight:600}.plans-catalog{align-items:stretch}.plans-catalog-lead{margin:0;text-align:center}.plans-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch;width:100%}.plans-billing-toggle{display:inline-grid;grid-template-columns:1fr 1fr;gap:.3rem;padding:.3rem;background:var(--bg-soft);border-radius:999px;width:min(360px,100%)}.plans-billing-toggle button{position:relative;border:0;background:transparent;color:var(--muted);font-weight:700;padding:.7rem 1rem;min-height:auto;border-radius:999px;cursor:pointer}.plans-billing-toggle button.active{background:color-mix(in srgb,var(--accent) 55%,var(--accent-deep));color:var(--on-accent)}.plans-off-chip{display:inline-block;margin-left:.4rem;padding:.12rem .4rem;border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.02em;background:#ffffff38}.plans-billing-toggle button:not(.active) .plans-off-chip{background:color-mix(in srgb,var(--accent) 18%,white);color:var(--accent-text)}.plans-off-hint{margin:0;font-size:var(--text-sm);font-weight:700;color:var(--accent-text);text-align:center}.plans-offer-card{width:100%;position:relative;display:grid;gap:1.15rem;padding-top:1.5rem}.plans-offer-card.featured{border-color:color-mix(in srgb,var(--rose) 55%,var(--line));box-shadow:0 8px 28px #c080c8,.12 )}.plans-offer-card.featured:hover{border-color:var(--coral);box-shadow:0 12px 32px #c080c8,.2 )}.plans-discount-badge{position:absolute;top:-.55rem;left:50%;transform:translate(-50%);padding:.3rem .7rem;border-radius:999px;font-size:var(--text-xs);font-weight:800;background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);white-space:nowrap}.plans-offer-head{text-align:center;display:grid;justify-items:center;gap:.4rem}.plans-offer-head h3{margin:0;font-size:1.45rem}.plans-trial-badge{display:inline-flex;align-items:center;gap:.35rem;margin-top:.25rem;padding:.35rem .75rem;border-radius:999px;background:var(--blush);color:var(--accent-ink);border:1px solid color-mix(in srgb,var(--rose) 35%,transparent);font-size:var(--text-sm);font-weight:700}.plans-offer-price{text-align:center}.plans-price-compare{display:block;text-decoration:line-through;color:var(--muted);font-size:var(--text-sm);margin-bottom:.15rem}.plans-price-main{margin:0;display:flex;align-items:baseline;justify-content:center;gap:.35rem}.plans-price-main strong{font-size:clamp(1.75rem,4vw,2.15rem);letter-spacing:-.03em}.plans-price-main span{color:var(--muted);font-weight:600}.plans-features-title{margin:0 0 .55rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.plans-features ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.plans-features li{display:flex;align-items:flex-start;gap:.55rem;font-size:var(--text-sm)}.plans-check{flex:0 0 auto;width:1.25rem;height:1.25rem;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,var(--success) 18%,white);color:var(--success);margin-top:.05rem}@media(max-width:720px){.plans-meta-grid,.plans-meta-grid-4{grid-template-columns:1fr 1fr}.plans-offer-grid{grid-template-columns:1fr}}.help-fab{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:56;width:3.25rem;height:3.25rem;min-width:3.25rem;min-height:3.25rem;padding:0;border-radius:999px;background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);box-shadow:var(--shadow-accent)}.help-fab:hover{transform:translateY(-2px);box-shadow:var(--shadow-accent-hover);background:linear-gradient(135deg,var(--coral),var(--accent-deep))}@media(max-width:720px){.help-fab{right:max(.75rem,env(safe-area-inset-right));bottom:calc(4.5rem + env(safe-area-inset-bottom));width:2.25rem;height:2.25rem;min-width:2.25rem;min-height:2.25rem;padding:0}.help-fab svg{width:1rem;height:1rem}}.help-lead{margin:0 0 .75rem}.help-modal-footer{margin:1rem 0 0}.help-actions{display:grid;gap:.65rem;margin:.75rem 0 1.25rem}.help-action{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg-soft);color:inherit;text-decoration:none;transition:border-color .22s ease,background .22s ease,transform .22s var(--ease-out),box-shadow .22s ease}.help-action:hover{color:inherit;border-color:color-mix(in srgb,var(--rose) 45%,var(--line));background:var(--blush);transform:translateY(-2px);box-shadow:var(--shadow-soft)}.help-action svg{flex:0 0 auto;color:var(--accent-text)}.help-action span{display:grid;gap:.1rem}.help-faq-title{display:inline-flex;align-items:center;gap:.4rem;margin:0 0 .65rem;font-size:var(--text-md)}.help-faq-list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.help-faq-list details{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-elevated);padding:.65rem .85rem}.help-faq-list summary{cursor:pointer;font-weight:600;font-size:var(--text-sm);list-style:none}.help-faq-list summary::-webkit-details-marker{display:none}.help-faq-list summary:before{content:"+";display:inline-block;width:1rem;color:var(--accent-text);font-weight:700}.help-faq-list details[open] summary:before{content:"–"}.help-faq-list details p{margin:.55rem 0 .15rem;font-size:var(--text-sm);color:var(--muted);line-height:1.5}.landing{min-height:100vh;color:var(--ink)}.landing-nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:1.25rem;padding:.75rem var(--page-gutter);background:color-mix(in srgb,var(--bg-elevated) 90%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.landing-nav-brand{flex:0 0 auto;position:absolute;left:var(--page-gutter)}.landing-nav-links{display:flex;align-items:center;gap:1.25rem}.landing-nav-links a{color:var(--muted);text-decoration:none;font-size:var(--text-sm);font-weight:600;transition:color .2s ease}.landing-nav-links a:hover{color:var(--accent-text)}.landing-nav-actions{display:flex;align-items:center;gap:.5rem;position:absolute;right:var(--page-gutter)}.landing-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:999px;padding:.5rem .95rem;min-height:2.35rem;font:inherit;font-weight:600;font-size:var(--text-sm);text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease,color .22s ease}.landing-btn.lg{min-height:2.65rem;padding:.65rem 1.2rem;font-size:.9375rem}.landing-btn.primary{background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);box-shadow:var(--shadow-accent)}.landing-btn.primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-accent-hover);background:linear-gradient(135deg,var(--coral),var(--accent-deep))}.landing-btn.ghost{background:transparent;border-color:color-mix(in srgb,var(--accent) 35%,var(--line));color:var(--ink)}.landing-btn.ghost:hover{background:var(--blush);border-color:var(--rose);color:var(--accent-ink)}.landing-hero{position:relative;display:flex;flex-direction:column;align-items:center;padding:0 0 3rem;overflow:hidden}.landing-hero-logo-band{position:relative;z-index:2;display:flex;justify-content:center;width:100%;padding:1.25rem var(--page-gutter) .5rem}.landing-hero-logo{max-width:min(280px,72vw);width:100%;margin:0 auto}.landing-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(700px 420px at 50% 0%,rgba(122,217,208,.55),transparent 65%),radial-gradient(500px 320px at 10% 60%,rgba(122,217,208,.22),transparent 55%),radial-gradient(480px 300px at 95% 45%,rgba(184,240,234,.45),transparent 50%),linear-gradient(180deg,var(--warm) 0%,var(--bg) 85%);animation:landing-bg-shift 16s ease-in-out infinite alternate}.landing-hero-content{position:relative;z-index:1;width:100%;max-width:34rem;margin:0 auto;padding:1.5rem var(--page-gutter) 0;text-align:center;animation:landing-rise .9s ease both}.landing-billing-banner{display:inline-block;margin:0 0 .85rem;padding:.7rem 1rem;max-width:36rem;border-radius:12px;background:color-mix(in srgb,var(--danger, #b42318) 10%,white);color:var(--ink);font-size:var(--text-sm);font-weight:600;line-height:1.4;border:1px solid color-mix(in srgb,var(--danger, #b42318) 28%,transparent);animation:landing-rise .9s ease .05s both}.landing-trial-pill{display:inline-block;margin:0 0 .85rem;padding:.35rem .75rem;border-radius:999px;background:var(--blush);color:var(--accent-ink);font-size:var(--text-xs);font-weight:700;letter-spacing:.01em;border:1px solid color-mix(in srgb,var(--rose) 35%,transparent);animation:landing-rise .9s ease .05s both}.landing-title{font-family:var(--font);font-weight:600;font-size:clamp(1.25rem,2.8vw,1.65rem);line-height:1.3;letter-spacing:-.02em;margin:0 auto .65rem;max-width:22ch}.landing-lead{margin:0 auto 1.25rem;font-size:.9375rem;color:var(--muted);max-width:32ch;line-height:1.55;animation:landing-rise .9s ease .12s both}.landing-hero-ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem;animation:landing-rise .9s ease .2s both}.landing-section{padding:3rem var(--page-gutter);scroll-margin-top:4.5rem}.landing-section-inner{max-width:920px;margin:0 auto;text-align:center}.landing-h2{font-family:var(--font);font-weight:600;font-size:clamp(1.15rem,2.4vw,1.45rem);margin:0 0 .4rem;letter-spacing:-.02em}.landing-section-lead{margin:0 auto 1.75rem;max-width:34ch;font-size:.9375rem;line-height:1.55}.landing-section-lead strong{color:var(--accent-text);font-weight:700}.landing-features{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;text-align:center}.landing-feature{display:flex;flex-direction:column;align-items:center;gap:.65rem;padding:1.15rem .9rem;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;animation:landing-rise .7s ease both;cursor:default}.landing-feature:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--rose) 45%,var(--line));background:color-mix(in srgb,var(--blush) 40%,white)}.landing-feature:nth-child(2){animation-delay:.06s}.landing-feature:nth-child(3){animation-delay:.12s}.landing-feature:nth-child(4){animation-delay:.18s}.landing-feature:nth-child(5){animation-delay:.24s}.landing-feature:nth-child(6){animation-delay:.3s}.landing-feature h3{margin:0 0 .2rem;font-size:.9375rem;font-weight:600}.landing-feature p{margin:0;font-size:var(--text-xs);line-height:1.45}.landing-feature-icon{width:2.35rem;height:2.35rem;border-radius:999px;display:grid;place-items:center;background:var(--blush);color:var(--accent-text);transition:transform .25s ease,background .25s ease,color .25s ease}.landing-feature:hover .landing-feature-icon{transform:scale(1.1);background:color-mix(in srgb,var(--rose) 35%,white);color:var(--accent-ink)}.landing-pricing-section{background:radial-gradient(520px 260px at 50% 0%,rgba(184,240,234,.9),transparent 70%),linear-gradient(180deg,var(--blush) 0%,var(--bg-soft) 100%)}.landing-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;max-width:960px;margin:0 auto}.landing-interval{display:flex;justify-content:center;gap:.4rem;margin:0 auto 1rem}.landing-interval button{border:1px solid var(--line);background:var(--bg-elevated);color:var(--ink);border-radius:999px;padding:.4rem .85rem;font:inherit;font-weight:600;cursor:pointer}.landing-interval button.active{background:var(--rose);color:var(--on-accent);border-color:transparent}.landing-plan{position:relative;background:var(--bg-elevated);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);padding:1.25rem 1.1rem 1.15rem;display:grid;gap:.5rem;box-shadow:var(--shadow-soft);text-align:left;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;animation:landing-rise .8s ease both}.landing-plan:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.landing-plan.featured{border-color:color-mix(in srgb,var(--rose) 55%,var(--line));box-shadow:0 8px 28px #c080c8,.12 );animation-delay:.08s}.landing-plan.featured:hover{border-color:var(--coral);box-shadow:0 12px 32px #c080c8,.2 )}.landing-plan h3{margin:0;font-family:var(--font);font-size:1.15rem;font-weight:600}.landing-plan-badge{position:absolute;top:-.5rem;right:1rem;padding:.25rem .55rem;border-radius:999px;background:linear-gradient(135deg,var(--rose),var(--coral));color:var(--on-accent);font-size:.6875rem;font-weight:700;letter-spacing:.02em}.landing-plan-compare{margin:0;text-decoration:line-through;color:var(--muted);font-size:var(--text-xs)}.landing-plan-price{margin:0;display:flex;align-items:baseline;gap:.3rem}.landing-plan-price strong{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;color:var(--accent-ink)}.landing-plan-price span{color:var(--muted);font-weight:600;font-size:var(--text-sm)}.landing-plan-perks{list-style:none;margin:.25rem 0 .4rem;padding:0;display:grid;gap:.35rem;font-size:var(--text-xs)}.landing-plan-perks li{display:flex;align-items:center;gap:.35rem}.landing-plan-perks svg{color:var(--accent-text);flex:0 0 auto}.landing-plan .landing-btn,.landing-plan button.landing-btn{width:100%;margin-top:.15rem;border:0}.landing-footer{padding:1.75rem var(--page-gutter) 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;border-top:1px solid var(--line);text-align:center}.landing-footer a{text-decoration:none;font-weight:600;transition:color .2s ease}.landing-footer a:hover{color:var(--accent-text)}@keyframes landing-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-bg-shift{0%{filter:hue-rotate(0deg) saturate(1)}to{filter:hue-rotate(-6deg) saturate(1.08)}}@media(max-width:800px){.landing-nav{position:sticky;top:0;justify-content:space-between;padding:.7rem var(--page-gutter);padding-top:max(.7rem,env(safe-area-inset-top))}.landing-nav-links{display:none}.landing-nav-brand,.landing-nav-actions{position:static}.landing-nav-actions{gap:.4rem}.landing-btn{padding:.48rem .8rem;min-height:2.25rem;font-size:var(--text-xs)}.landing-hero{padding-bottom:2.25rem}.landing-hero-logo{max-width:min(220px,78vw)}.landing-hero-content{padding-top:1.1rem}.landing-title{max-width:none;font-size:clamp(1.2rem,5.5vw,1.45rem)}.landing-lead{max-width:none;font-size:var(--text-sm)}.landing-hero-ctas{flex-direction:column;align-items:stretch}.landing-hero-ctas .landing-btn{width:100%}.landing-section{padding:2.25rem var(--page-gutter)}.landing-features{grid-template-columns:1fr;gap:.65rem}.landing-plans{grid-template-columns:1fr}.landing-footer{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom))}}@media(max-width:480px){.stats,.plans-meta-grid,.plans-meta-grid-4{grid-template-columns:1fr}.bottom-nav-item{font-size:.58rem}.bottom-nav-item svg{width:1.15rem;height:1.15rem}.user-avatar.size-md{width:2.15rem;height:2.15rem;font-size:.85rem}}@media(hover:none){button:hover,a.btn:hover,.landing-btn.primary:hover,.landing-btn.ghost:hover,.landing-feature:hover,.landing-plan:hover,.list-item:hover,.stat:hover,.panel:hover,.month-cell:hover{transform:none}}.legal-page{max-width:40rem;margin:0 auto;padding:2rem var(--page-gutter) 4rem}.legal-page h1{margin:1.25rem 0 .35rem}.legal-page h2{font-size:1.05rem;margin:1.5rem 0 .4rem}.legal-page p{margin:.45rem 0 0}.legal-links{margin-top:2rem}.terms-accept{display:flex;gap:.65rem;align-items:flex-start;font-size:var(--text-sm)}.terms-accept input{margin-top:.2rem}.account-delete{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line)}
