/* Original professional-page geometry; the sample workspace has its own browser-only store. */
#groove-pro{--gp-ink:#232c23;--gp-muted:#5c665d;--gp-sage:#5d7b5e;--gp-line:#dce5dc;--gp-butter:#f5e9b0;--gp-soft:#edf5ed;width:100%;height:100%;min-width:0;overflow-y:auto;background:#fff;color:var(--gp-ink);font-family:Fredoka,ui-sans-serif,system-ui,sans-serif;font-size:14px;line-height:1.5}
#groove-pro *{box-sizing:border-box}
#groove-pro :is(h1,h2,h3,p){margin:0}
#groove-pro :is(h1,h2,h3){font-weight:600;letter-spacing:0}
#groove-pro :is(button,input,select,textarea){font:inherit}
#groove-pro button{cursor:pointer}
#groove-pro :is(button,input,select,textarea):disabled{opacity:.5;cursor:not-allowed}
#groove-pro :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--gp-sage);outline-offset:3px}
#groove-pro .gp-container{width:100%;max-width:1152px;margin-inline:auto;padding:48px 20px 70px}
#groove-pro .gp-surface{min-width:0;background:#fff;border:1px solid var(--gp-line);border-radius:12px;box-shadow:0 1px 2px #2a402b14,0 12px 32px -18px #2a402b3d;padding:24px}
#groove-pro .gp-eyebrow{font-size:11px;line-height:16px;letter-spacing:2.42px;text-transform:uppercase;color:var(--gp-muted)}
#groove-pro .gp-lead{max-width:672px;margin-top:12px;font-size:14px;line-height:20px;color:var(--gp-muted)}
#groove-pro .gp-studio-intro{margin-bottom:40px}
#groove-pro h1,#groove-pro .gp-demo-heading h2{margin-top:8px;font-size:30px;line-height:36px}
#groove-pro .gp-studio-links{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:20px}
#groove-pro .gp-open-studio{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;min-height:44px;border-radius:999px;background:var(--gp-sage);color:white;font-weight:500;text-decoration:none}
#groove-pro .gp-team-link{font-size:12px;color:var(--gp-sage);text-underline-offset:3px}
#groove-pro .gp-badges{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:32px}
#groove-pro .gp-badge{display:inline-flex;align-items:center;padding:2px 10px;min-height:20px;border-radius:999px;background:var(--gp-soft);font-size:12px;line-height:16px;font-weight:500;box-shadow:0 1px 2px #2a402b18}
#groove-pro .gp-yellow{background:var(--gp-butter)}
#groove-pro .gp-workspace{margin:40px 0 0;padding:0;border:0;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:start}
#groove-pro .gp-roster{padding:20px}
#groove-pro .gp-roster>ul{padding:0;list-style:none;margin:16px 0 0;display:flex;flex-direction:column;gap:6px;max-height:360px;overflow-y:auto}
#groove-pro .gp-client{width:100%;padding:10px 12px;text-align:left;border:0;border-radius:4px;background:transparent;color:var(--gp-ink)}
#groove-pro .gp-client[aria-pressed="true"]{background:var(--gp-butter)}
#groove-pro .gp-client:hover{background:var(--gp-soft)}
#groove-pro .gp-client[aria-pressed="true"]:hover{background:var(--gp-butter)}
#groove-pro .gp-client strong{display:block;font-size:14px;line-height:20px;font-weight:500}
#groove-pro .gp-client span{display:block;font-size:12px;line-height:16px;color:var(--gp-muted)}
#groove-pro .gp-client :is(strong,span),#groove-pro .gp-client-heading h2{overflow-wrap:anywhere}
#groove-pro .gp-add-client{margin-top:24px;padding-top:20px;border-top:1px solid var(--gp-line);display:flex;flex-direction:column;gap:12px}
#groove-pro :is(input,textarea,select){display:block;width:100%;min-width:0;height:36px;padding:7px 12px;border:1px solid var(--gp-line);border-radius:2px;background:#fff;color:var(--gp-ink);line-height:20px;box-shadow:0 1px 2px #2a402b26}
#groove-pro input::placeholder{color:var(--gp-muted);opacity:1}
#groove-pro textarea{height:auto;min-height:84px;resize:vertical}
#groove-pro .gp-client-workspace{min-width:0;display:flex;flex-direction:column;gap:24px}
#groove-pro .gp-client-heading{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px}
#groove-pro .gp-client-heading h2{font-size:30px;line-height:36px}
#groove-pro .gp-client-heading>div>p{margin-top:4px;font-size:12px;line-height:16px;color:var(--gp-muted);overflow-wrap:anywhere}
#groove-pro .gp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
#groove-pro .gp-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:7px 16px;border:1px solid var(--gp-line);border-radius:2px;background:white;color:var(--gp-sage);line-height:20px;font-size:14px;font-weight:500;text-decoration:none}
#groove-pro .gp-button svg{flex-shrink:0}
#groove-pro .gp-primary{color:#fff;background:linear-gradient(135deg,oklch(.40 .055 146),oklch(.50 .06 145) 55%,oklch(.62 .06 130));border-color:transparent;font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}
#groove-pro .gp-soft{background:linear-gradient(135deg,#fcfaee,var(--gp-butter));color:var(--gp-sage)}
#groove-pro .gp-icon-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;padding:8px;border:0;border-radius:4px;background:transparent;color:var(--gp-muted)}
#groove-pro .gp-icon-button:hover{background:var(--gp-soft)}
#groove-pro .gp-text-button{padding:5px 0;min-height:32px;border:0;background:transparent;color:var(--gp-sage);font-size:12px;text-decoration:underline;text-underline-offset:3px}
#groove-pro .gp-reset{margin-top:16px}
#groove-pro .gp-plan-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:24px}
#groove-pro .gp-field{min-width:0;display:flex;flex-direction:column;gap:4px}
#groove-pro .gp-field label{font-size:14px;font-weight:500;line-height:20px}
#groove-pro .gp-full{grid-column:1/-1}
#groove-pro .gp-calendars{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
#groove-pro .gp-tabs{display:flex;align-items:center;gap:4px;width:fit-content;max-width:100%;padding:4px;background:var(--gp-soft);border-radius:6px}
#groove-pro .gp-tabs button{min-height:36px;padding:6px 12px;border:0;border-radius:4px;color:var(--gp-muted);background:transparent;line-height:20px;font-weight:500}
#groove-pro .gp-tabs button[aria-pressed="true"]{background:#fff;color:var(--gp-ink);box-shadow:0 1px 3px #2a402b22}
#groove-pro .gp-routines{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
#groove-pro .gp-routine h3{display:flex;align-items:center;gap:8px;font-size:20px;line-height:28px;color:var(--gp-sage)}
#groove-pro .gp-routine ol{margin:16px 0 0;padding-left:18px}
#groove-pro .gp-routine li{position:relative;padding-right:32px;padding-block:4px;margin-top:8px;overflow-wrap:anywhere}
#groove-pro .gp-routine li strong{font-weight:500}
#groove-pro .gp-routine li :is(span,em){display:block;font-size:12px;line-height:18px;color:var(--gp-muted)}
#groove-pro .gp-routine li .gp-icon-button{position:absolute;right:-8px;top:0}
#groove-pro .gp-routine>p{margin-top:16px}
#groove-pro .gp-add-step,#groove-pro .gp-add-treatment{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:end}
#groove-pro .gp-treatment-list>div{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-block:14px;overflow-wrap:anywhere}
#groove-pro .gp-treatment-list>div+div{border-top:1px solid var(--gp-line)}
#groove-pro .gp-treatment-list strong{font-weight:500}
#groove-pro .gp-treatment-list p{font-size:12px;color:var(--gp-muted);line-height:18px}
#groove-pro .gp-muted{color:var(--gp-muted)}
#groove-pro .gp-preview-info{margin-top:24px;display:flex;flex-direction:column;gap:12px;padding:20px;background:var(--gp-soft);border-radius:8px;overflow-wrap:anywhere}
#groove-pro .gp-preview-info h3,#groove-pro .gp-preview-label{font-size:22px;line-height:28px}
#groove-pro .gp-empty{display:flex;flex-direction:column;gap:12px}
#groove-pro .gp-empty h2{font-size:24px}
#groove-pro .gp-storage{margin-top:20px;padding:16px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;background:var(--gp-butter);border-radius:8px}
#groove-pro .gp-storage p{flex-basis:100%}
#groove-pro .gp-status{margin-top:16px;color:var(--gp-sage)}
#groove-pro .gp-error{color:#983b32}
#groove-pro .gp-pricing{margin-top:80px}
#groove-pro .gp-pricing h2{margin-top:8px;font-size:30px;line-height:36px}
#groove-pro .gp-tiers{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:32px}
#groove-pro .gp-tiers article{display:flex;flex-direction:column}
#groove-pro .gp-tiers h3{font-size:24px;line-height:32px}
#groove-pro .gp-tiers .gp-price{font-size:36px;line-height:40px;color:var(--gp-sage);font-weight:600;margin-top:8px}
#groove-pro .gp-price span{font-size:14px;line-height:20px;font-weight:400;color:var(--gp-muted)}
#groove-pro .gp-tiers .gp-muted{font-size:12px;line-height:16px;margin-top:4px}
#groove-pro .gp-tiers ul{margin:20px 0 24px;padding:0;list-style:none;flex-grow:1;color:var(--gp-muted);line-height:20px}
#groove-pro .gp-tiers li::before{content:'— '}
#groove-pro .gp-tiers li+li{margin-top:8px}
#groove-pro .gp-tiers .gp-button{font-size:12px;line-height:20px;letter-spacing:.12em;text-transform:uppercase}
#groove-pro .gp-pricing-note{margin-top:16px;max-width:672px;color:var(--gp-muted);font-size:12px;line-height:18px}
#groove-pro .gp-pricing-note [role="status"]{display:block;margin-top:4px;color:var(--gp-sage)}
#groove-pro .gp-add-step>.gp-button{min-height:44px;padding-inline:32px;font-size:12px;line-height:20px;letter-spacing:.12em;text-transform:uppercase}
#groove-pro .gp-add-step .gp-field{gap:6px}
#groove-pro .gp-pilot{margin-top:32px;padding-top:20px;border-top:1px solid var(--gp-line);font-size:12px;color:var(--gp-muted)}
#groove-pro .gp-overlay{position:fixed;z-index:1000;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#20342166}
#groove-pro .gp-modal{width:100%;max-width:480px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:20px}
#groove-pro .gp-modal h2{font-size:24px;line-height:30px}
#groove-pro .gp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:640px){#groove-pro h1,#groove-pro .gp-demo-heading h2{font-size:36px;line-height:40px}#groove-pro .gp-plan-fields,#groove-pro .gp-routines{grid-template-columns:repeat(2,minmax(0,1fr))}#groove-pro .gp-add-step,#groove-pro .gp-add-treatment{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:768px){#groove-pro .gp-tiers{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1024px){#groove-pro .gp-workspace{grid-template-columns:288px minmax(0,1fr)}#groove-pro .gp-add-step{grid-template-columns:repeat(3,minmax(0,1fr))}#groove-pro .gp-add-treatment{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1200px){#groove-pro .gp-add-step{grid-template-columns:repeat(3,minmax(0,1fr)) 144px 119px}}
@media(max-width:639px){#groove-pro .gp-container{padding-top:32px}#groove-pro .gp-surface{padding:20px}#groove-pro :is(input,select){height:44px;font-size:16px}#groove-pro textarea{font-size:16px}#groove-pro :is(.gp-button,.gp-text-button,.gp-tabs button){min-height:44px}#groove-pro .gp-icon-button{width:44px;height:44px}#groove-pro .gp-routine li{padding-right:40px}#groove-pro .gp-client-heading h2{font-size:28px}#groove-pro .gp-client-heading>.gp-actions{width:100%;justify-content:space-between}#groove-pro .gp-add-step>.gp-button,#groove-pro .gp-add-treatment>.gp-button{width:100%}}
