/* Smart-GLP theme "Studio" — layered on app.css. Colours/font/radius come from Theme tokens (CSS variables). */
@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(../../vendor/fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(../../vendor/fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(../../vendor/fonts/inter-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:700;font-display:swap;src:url(../../vendor/fonts/inter-latin-700-normal.woff2) format("woff2")}

/* ---------- tokens: light (default) and dark ---------- */
html[data-theme=studio]{--sg-bg:#F4F4F4;--sg-card:#FCFCFC;--sg-ink:#1A1D1F;--sg-ink2:#33383F;--sg-mute:#6F767E;--sg-mute2:#9A9FA5;--sg-line:#EFEFEF;--sg-soft:#F4F4F4;--sg-hover:#EFEFEF;
  --sg-shadow:0 1px 0 rgba(0,0,0,.02);--sg-pop:0 8px 24px -8px rgba(0,0,0,.18);--sg-input:#F4F4F4;--sg-dark:#1A1D1F;--sg-glass:rgba(244,244,244,.86);
  --bs-body-color:var(--sg-ink);--bs-body-bg:var(--sg-bg);--bs-border-color:var(--sg-line);--bs-secondary-color:var(--sg-mute);--bs-border-radius:12px;color-scheme:light}
html[data-theme=studio][data-mode=dark]{--sg-bg:#111315;--sg-card:#1A1D1F;--sg-ink:#FCFCFC;--sg-ink2:#EFEFEF;--sg-mute:#9A9FA5;--sg-mute2:#6F767E;--sg-line:#272B30;--sg-soft:#272B30;--sg-hover:#272B30;
  --sg-shadow:0 1px 0 rgba(0,0,0,.2);--sg-pop:0 12px 32px -8px rgba(0,0,0,.6);--sg-input:#111315;--sg-dark:#0B0C0D;--sg-glass:rgba(17,19,21,.86);color-scheme:dark}

/* ---------- base (also neutralises app.css dark-media rules: the theme decides) ---------- */
html[data-theme=studio],html[data-theme=studio] body{background:var(--sg-bg);color:var(--sg-ink)}
html[data-theme=studio] body{font-family:var(--sg-font);font-size:15px;letter-spacing:-.01em;line-height:1.5}
[data-theme=studio] h1,[data-theme=studio] h2,[data-theme=studio] h3,[data-theme=studio] h4,[data-theme=studio] h5{font-weight:600;letter-spacing:-.025em;color:var(--sg-ink)}
[data-theme=studio] .sg-label,[data-theme=studio] .sg-tag,[data-theme=studio] .form-label{font-family:var(--sg-font);text-transform:none;letter-spacing:0;font-size:.8rem;font-weight:600;color:var(--sg-mute)}
[data-theme=studio] .sg-tag{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:6px;background:var(--sg-soft);color:var(--sg-ink2);font-size:.75rem;font-weight:700}
[data-theme=studio] .text-secondary{color:var(--sg-mute)!important}
[data-theme=studio] a{color:var(--sg-accent)}
[data-theme=studio] .text-reset{color:inherit!important}
[data-theme=studio] .sg-chart .t,[data-theme=studio] .sg-ring .v small,[data-theme=studio] .sg-site text{font-family:var(--sg-font);text-transform:none;letter-spacing:0;font-weight:600}

/* ---------- buttons & forms ---------- */
[data-theme=studio] .btn{font-weight:700;border-radius:12px;padding:.6rem 1.15rem;font-size:.92rem;letter-spacing:-.01em}
[data-theme=studio] .btn-sm{border-radius:10px;padding:.42rem .85rem;font-size:.85rem}
[data-theme=studio] .btn-primary,[data-theme=studio] .btn-grad{--bs-btn-bg:var(--sg-accent);--bs-btn-border-color:var(--sg-accent);--bs-btn-hover-bg:var(--sg-accent-d);--bs-btn-hover-border-color:var(--sg-accent-d);--bs-btn-active-bg:var(--sg-accent-d);--bs-btn-color:#fff;--bs-btn-hover-color:#fff;background:var(--sg-accent);color:#fff;border:0}
[data-theme=studio] .btn-grad:hover,[data-theme=studio] .btn-primary:hover{background:var(--sg-accent-d);color:#fff;filter:none}
[data-theme=studio] .btn-outline-secondary,[data-theme=studio] .btn-light{--bs-btn-color:var(--sg-ink);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-bg:var(--sg-hover);--bs-btn-hover-color:var(--sg-ink);--bs-btn-hover-border-color:transparent;--bs-btn-active-bg:var(--sg-hover);--bs-btn-active-color:var(--sg-ink);box-shadow:inset 0 0 0 2px var(--sg-line);color:var(--sg-ink)}
[data-theme=studio] .btn-success{--bs-btn-bg:var(--sg-ok);--bs-btn-border-color:var(--sg-ok);--bs-btn-disabled-bg:var(--sg-ok);--bs-btn-disabled-border-color:var(--sg-ok)}
[data-theme=studio] .btn-danger{--bs-btn-bg:var(--sg-bad);--bs-btn-border-color:var(--sg-bad)}
[data-theme=studio] .btn-link{color:var(--sg-mute);font-weight:600}
[data-theme=studio] .form-control,[data-theme=studio] .form-select{background-color:var(--sg-input);color:var(--sg-ink);border:2px solid transparent;border-radius:12px;padding:.68rem .9rem;font-weight:500;color-scheme:inherit}
[data-theme=studio] .form-control-sm,[data-theme=studio] .form-select-sm{padding:.42rem .7rem;border-radius:10px}
[data-theme=studio] .form-control:focus,[data-theme=studio] .form-select:focus{background-color:var(--sg-card);color:var(--sg-ink);border-color:var(--sg-accent);box-shadow:none}
[data-theme=studio] .form-control::placeholder{color:var(--sg-mute2)}
[data-theme=studio] .form-check-input{background-color:var(--sg-card);border:2px solid var(--sg-line)}
[data-theme=studio] .form-check-input:checked{background-color:var(--sg-accent);border-color:var(--sg-accent)}
[data-theme=studio] .form-control-color{height:44px;padding:4px}
[data-theme=studio] .table{--bs-table-color:var(--sg-ink);--bs-table-bg:transparent;--bs-table-border-color:var(--sg-line)}
[data-theme=studio] .modal-content{background:var(--sg-card);color:var(--sg-ink);border:0;border-radius:16px}
[data-theme=studio][data-mode=dark] .btn-close{filter:invert(1)}
[data-theme=studio][data-mode=light] .btn-close{filter:none}
[data-theme=studio] .list-group-item{background:var(--sg-card);color:var(--sg-ink);border-color:var(--sg-line)}
[data-theme=studio] .alert{border:0;border-radius:12px;font-weight:500}
[data-theme=studio] .dropdown-menu{background:var(--sg-card);border:0;box-shadow:var(--sg-pop);border-radius:12px}

/* ---------- shell: sidebar ---------- */
[data-theme=studio] .sg-side{width:280px;padding:24px 20px;background:var(--sg-card);border-right:0;box-shadow:inset -1px 0 0 var(--sg-line)}
[data-theme=studio] .sg-brand{font-weight:700;font-size:1.2rem;letter-spacing:-.03em;color:var(--sg-ink)}
[data-theme=studio] .sg-brand span{margin-left:12px}
[data-theme=studio] .sg-side .sg-logo{width:40px;height:40px;flex-basis:40px}
[data-theme=studio] .sg-logo-img{object-fit:contain;border-radius:10px}
[data-theme=studio] .sg-logo-img.wide{width:auto;max-width:180px;height:40px;border-radius:0}
[data-theme=studio] .sg-side nav{margin-top:32px;gap:2px}
[data-theme=studio] .sg-side nav a,[data-theme=studio] .sg-side-foot a,[data-theme=studio] .sg-nav-group summary{height:48px;padding:0 12px;border-radius:12px;color:var(--sg-mute);font-weight:600;font-size:.95rem;margin:0}
[data-theme=studio] .sg-side nav a i,[data-theme=studio] .sg-side-foot a i,[data-theme=studio] .sg-nav-group summary i:first-child{font-size:1.2rem;width:34px;color:inherit}
[data-theme=studio] .sg-side nav a:hover,[data-theme=studio] .sg-nav-group summary:hover{background:transparent;color:var(--sg-ink)}
[data-theme=studio] .sg-side nav a.on,[data-theme=studio] .sg-nav-group summary.in{background:var(--sg-hover);color:var(--sg-ink);box-shadow:inset 0 -2px 1px rgba(0,0,0,.05),inset 0 1px 1px rgba(255,255,255,.6)}
[data-theme=studio][data-mode=dark] .sg-side nav a.on,[data-theme=studio][data-mode=dark] .sg-nav-group summary.in{box-shadow:inset 0 -2px 1px rgba(0,0,0,.4),inset 0 1px 1px rgba(255,255,255,.05)}
[data-theme=studio] .sg-side nav a.on i,[data-theme=studio] .sg-nav-group summary.in i:first-child{color:var(--sg-ink)}
[data-theme=studio] .sg-nav-chev{color:var(--sg-mute2)}
[data-theme=studio] .sg-nav-group>div{margin:4px 0 8px 29px;padding-left:20px;border-left:2px solid var(--sg-line)}
[data-theme=studio] .sg-side nav .sg-nav-group>div a{height:38px;padding:0 10px;font-weight:600;font-size:.88rem;color:var(--sg-mute)}
[data-theme=studio] .sg-side nav .sg-nav-group>div a.on{background:transparent;color:var(--sg-ink);box-shadow:none}
[data-theme=studio] .sg-side-sep{font-family:var(--sg-font);text-transform:none;letter-spacing:0;font-size:.75rem;font-weight:600;color:var(--sg-mute2);padding:20px 12px 6px}
[data-theme=studio] .sg-side-foot{border-top:0;padding-top:8px}
[data-theme=studio] .sg-mode{display:flex;background:var(--sg-soft);border-radius:40px;padding:4px;margin-top:12px}
[data-theme=studio] .sg-mode button{flex:1;display:flex;gap:8px;align-items:center;justify-content:center;height:40px;border-radius:32px;border:0;background:none;font-weight:600;color:var(--sg-mute);font-size:.88rem}
[data-theme=studio] .sg-mode button.on{background:var(--sg-card);color:var(--sg-ink);box-shadow:0 4px 8px -4px rgba(0,0,0,.25)}

/* ---------- shell: top bar & page ---------- */
@media (min-width:992px){
  [data-theme=studio] .sg-app .sg-top,[data-theme=studio] .sg-app .sg-main{margin-left:280px}
  [data-theme=studio] .sg-top{padding:20px 40px;min-height:96px}
  [data-theme=studio] .sg-main{padding:4px 40px 64px;max-width:1360px}
}
[data-theme=studio] .sg-top{background:var(--sg-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:0}
[data-theme=studio] .sg-title{font-size:2rem;font-weight:600;letter-spacing:-.035em}
[data-theme=studio] .sg-page-title{font-size:1.9rem;font-weight:600;letter-spacing:-.035em}
[data-theme=studio] .sg-top-actions{gap:8px;align-items:center}
[data-theme=studio] .sg-top-add{height:48px;align-items:center;gap:8px;padding:0 20px}
[data-theme=studio] .sg-icon-btn{width:48px;height:48px;border-radius:50%;border:0;background:transparent;color:var(--sg-mute);font-size:1.25rem;margin-left:0}
[data-theme=studio] .sg-icon-btn:hover,[data-theme=studio] .sg-icon-btn.on{color:var(--sg-ink);background:var(--sg-hover)}
@media (max-width:991px){[data-theme=studio] .sg-icon-btn{width:40px;height:40px;font-size:1.1rem}[data-theme=studio] .sg-main{padding:4px 16px 120px}}

/* ---------- cards with coloured section markers ---------- */
[data-theme=studio] .sg-card{background:var(--sg-card);border:0;border-radius:var(--sg-radius);box-shadow:var(--sg-shadow);padding:24px;margin-bottom:8px}
@media (max-width:575px){[data-theme=studio] .sg-card{padding:20px;border-radius:calc(var(--sg-radius) + 4px)}}
[data-theme=studio] .sg-card-h{margin-bottom:22px;min-height:32px}
[data-theme=studio] .sg-card-h h2,[data-theme=studio] .sg-card-h h3{display:flex;align-items:center;gap:14px;font-size:1.15rem;font-weight:600;letter-spacing:-.02em}
[data-theme=studio] .sg-card-h h2:before{content:"";flex:none;width:14px;height:28px;border-radius:4px;background:var(--mk,var(--sg-mk1))}
[data-theme=studio] .sg-card-h a{font-weight:700;font-size:.85rem}
[data-theme=studio] .sg-main .sg-card:nth-of-type(5n+2){--mk:var(--sg-mk2)}[data-theme=studio] .sg-main .sg-card:nth-of-type(5n+3){--mk:var(--sg-mk3)}
[data-theme=studio] .sg-main .sg-card:nth-of-type(5n+4){--mk:var(--sg-mk4)}[data-theme=studio] .sg-main .sg-card:nth-of-type(5n+5){--mk:var(--sg-mk5)}
[data-theme=studio] .sg-plan{--mk:var(--sg-mk2)!important}[data-theme=studio] .sg-nutri{--mk:var(--sg-mk3)!important}[data-theme=studio] .sg-progress{--mk:var(--sg-mk1)!important}
[data-theme=studio] .sg-travel{--mk:var(--sg-mk4)!important}[data-theme=studio] .sg-xsell{--mk:var(--sg-mk5)!important}[data-theme=studio] .sg-supply,[data-theme=studio] .sg-fasting{--mk:var(--sg-mk3)!important}
[data-theme=studio] .sg-list li{border-color:var(--sg-line);padding:12px 0}
[data-theme=studio] .sg-list .ic{border-radius:12px;background:rgba(var(--sg-accent-rgb),.1)}
[data-theme=studio] .sg-pill{border-radius:8px;background:var(--sg-soft);font-weight:600;font-size:.8rem}
[data-theme=studio] .sg-stat b,[data-theme=studio] .sg-big{font-weight:600;letter-spacing:-.035em}
[data-theme=studio] .sg-delta-down{color:var(--sg-ok)}[data-theme=studio] .sg-delta-up{color:var(--sg-bad)}
[data-theme=studio] .sg-bar{height:8px;background:var(--sg-soft)}
[data-theme=studio] .sg-bar i{background:var(--sg-accent)}
[data-theme=studio] .sg-chart .area{fill:rgba(var(--sg-accent-rgb),.12)}
[data-theme=studio] .sg-chart .bar{fill:var(--sg-line)}[data-theme=studio] .sg-chart .bar.hit{fill:var(--sg-mk2)}
[data-theme=studio] .sg-chart .goal{stroke:var(--sg-bad)}[data-theme=studio] .sg-chart .goalt{fill:var(--sg-bad)}
[data-theme=studio] .sg-ring .trk{stroke:var(--sg-soft)}
[data-theme=studio] .sg-empty{color:var(--sg-mute)}
[data-theme=studio] .sg-disclaimer{color:var(--sg-mute2)}
[data-theme=studio] .sg-tipbox{border-left:0;background:rgba(var(--sg-accent-rgb),.08);border-radius:12px}
[data-theme=studio] .sg-warnbox{border-left:0;background:rgba(255,106,85,.1);border-radius:12px}

/* segmented tabs & chips */
[data-theme=studio] .sg-seg{background:var(--sg-card);border-radius:12px;padding:6px;gap:4px;box-shadow:var(--sg-shadow)}
[data-theme=studio] .sg-seg a,[data-theme=studio] .sg-seg button,[data-theme=studio] .sg-seg label{border-radius:8px;font-weight:600;font-size:.88rem;color:var(--sg-mute);padding:8px 14px}
[data-theme=studio] .sg-seg a.on,[data-theme=studio] .sg-seg button.on,[data-theme=studio] .sg-seg label.on{background:var(--sg-soft);color:var(--sg-ink);box-shadow:none}
[data-theme=studio] .sg-chips span,[data-theme=studio] .sg-chip{border:2px solid var(--sg-line);border-radius:10px;font-weight:600;background:var(--sg-card);color:var(--sg-ink)}
[data-theme=studio] .sg-chips input:checked+span{background:var(--sg-ink);border-color:var(--sg-ink);color:var(--sg-card)}
[data-theme=studio] .sg-chip.done{background:rgba(131,191,110,.16);color:var(--sg-ok);border-color:transparent}
[data-theme=studio] .sg-choice span{border:2px solid var(--sg-line);border-radius:12px}
[data-theme=studio] .sg-choice input:checked+span{border-color:var(--sg-accent);background:rgba(var(--sg-accent-rgb),.06);box-shadow:none}
[data-theme=studio] .sg-steps i.on{background:var(--sg-accent)}

/* mobile tab bar, FAB, quick sheet */
[data-theme=studio] .sg-tabs{background:var(--sg-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--sg-line)}
[data-theme=studio] .sg-tabs a{color:var(--sg-mute2);font-weight:600;font-size:.7rem}
[data-theme=studio] .sg-tabs a.on{color:var(--sg-ink)}
[data-theme=studio] .sg-fab{background:var(--sg-accent);border-radius:18px;box-shadow:0 10px 24px -8px rgba(var(--sg-accent-rgb),.7)}
[data-theme=studio] .sg-fab-desk{display:none!important}
[data-theme=studio] .sg-sheet .modal-content{border-radius:20px}
[data-theme=studio] .sg-quick a{font-weight:600}
[data-theme=studio] .sg-quick a i{background:var(--sg-soft);color:var(--sg-ink);border-radius:16px}

/* ---------- Today dashboard ---------- */
[data-theme=studio] .sg-hello{font-size:2.5rem;font-weight:600;letter-spacing:-.04em;line-height:1.15}
@media (max-width:575px){[data-theme=studio] .sg-hello{font-size:2rem}}
[data-theme=studio] .sg-today-head{margin:0 0 20px}
[data-theme=studio] .sg-kpis{background:var(--sg-card);border:0;border-radius:16px;padding:6px;box-shadow:var(--sg-shadow)}
[data-theme=studio] .sg-kpis a{border-radius:12px;color:var(--sg-ink)}
[data-theme=studio] .sg-kpis a+a{box-shadow:-1px 0 0 var(--sg-line)}
[data-theme=studio] .sg-kpis a:hover{background:var(--sg-soft)}
[data-theme=studio] .sg-kpis .sg-label{font-size:.72rem}
[data-theme=studio] .sg-kpis b{font-weight:600;font-size:1.45rem}
[data-theme=studio] .sg-dayring .sg-ring .trk{stroke:var(--sg-line)}
/* shortcuts: pills on desktop, tiles on phones */
[data-theme=studio] .sg-actions{gap:8px;margin-bottom:20px}
[data-theme=studio] .sg-actions a{flex:0 0 auto;min-width:0;flex-direction:row;gap:10px;height:44px;padding:0 16px 0 12px;border:0;border-radius:12px;background:var(--sg-card);box-shadow:var(--sg-shadow);font-weight:600;font-size:.88rem;color:var(--sg-ink2)}
[data-theme=studio] .sg-actions a i{width:auto;height:auto;background:none!important;font-size:1.15rem;color:var(--c,var(--sg-accent))}
[data-theme=studio] .sg-actions a:hover{transform:none;background:var(--sg-hover);box-shadow:none}
[data-theme=studio] .sg-actions a.hot{background:var(--sg-ink);color:var(--sg-card)}
[data-theme=studio] .sg-actions a.hot i{color:var(--sg-card)}
@media (max-width:767px){
  [data-theme=studio] .sg-actions a{flex-direction:column;justify-content:center;width:76px;height:84px;padding:0;border-radius:16px;gap:6px;font-size:.72rem}
  [data-theme=studio] .sg-actions a i{font-size:1.5rem}
}
[data-theme=studio] .sg-dash3{gap:8px}
[data-theme=studio] .sg-dcol{gap:8px}
/* next dose: dark card with the brand glow */
[data-theme=studio] .sg-hero{background:var(--sg-dark);color:#fff;border-radius:var(--sg-radius)}
[data-theme=studio] .sg-hero:after{content:"";position:absolute;right:-70px;top:-70px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,var(--sg-accent2) 0,transparent 65%);opacity:.55;pointer-events:none}
[data-theme=studio] .sg-hero>*{position:relative;z-index:1}
[data-theme=studio] .sg-hero .sg-label{color:#9A9FA5;font-size:.85rem}
[data-theme=studio] .sg-count{font-weight:600;font-size:3.2rem;letter-spacing:-.045em}
[data-theme=studio] .sg-hero .btn-light{background:var(--sg-accent);color:#fff;box-shadow:none;--bs-btn-hover-bg:var(--sg-accent-d);--bs-btn-hover-color:#fff}
[data-theme=studio] .sg-hero .btn-link{color:#9A9FA5!important}
[data-theme=studio] .sg-hero .sg-pill{background:rgba(255,255,255,.1);color:#fff}
/* checklist */
[data-theme=studio] .sg-task{border-color:var(--sg-line);padding:12px 0}
[data-theme=studio] .sg-task-ic{border-radius:12px;width:48px;height:48px}
[data-theme=studio] .sg-task-pic .sg-rthumb{width:56px;height:56px;border-radius:12px}
[data-theme=studio] .sg-task-b b{font-weight:600}
[data-theme=studio] .sg-task-b .sg-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--sg-mute2)}
[data-theme=studio] .sg-task.now{background:rgba(var(--sg-accent-rgb),.07);border-radius:12px;margin:2px -12px;padding:12px;border-top:0}
[data-theme=studio] .sg-task.now .sg-label{color:var(--sg-accent)}
[data-theme=studio] .sg-task.done .sg-task-b>b,[data-theme=studio] .sg-task.done .sg-task-b>a b{text-decoration:line-through;text-decoration-color:var(--sg-mute2)}
[data-theme=studio] .sg-moods button{background:var(--sg-soft);border-radius:10px}
[data-theme=studio] .sg-moods button.on{background:rgba(var(--sg-accent-rgb),.12);box-shadow:inset 0 0 0 2px var(--sg-accent)}
[data-theme=studio] .sg-syncline{background:var(--sg-soft);font-weight:600;color:var(--sg-mute)}
/* travel & weather */
[data-theme=studio] .sg-wxc{background:var(--sg-soft);border:0;border-radius:12px}
[data-theme=studio] .sg-route .line{background:repeating-linear-gradient(90deg,var(--sg-line) 0 8px,transparent 8px 14px)}
[data-theme=studio] .sg-route .line i{background:linear-gradient(90deg,var(--sg-accent),var(--sg-accent2))}
[data-theme=studio] .sg-route .me{background:var(--sg-accent);box-shadow:0 0 0 6px rgba(var(--sg-accent-rgb),.18)}
[data-theme=studio] .sg-route .pin{background:var(--sg-card);border-color:var(--sg-line)}
[data-theme=studio] .sg-next{background:var(--sg-soft);border-radius:12px}
[data-theme=studio] .sg-next .sg-bar i{background:var(--sg-warn)}
[data-theme=studio] .sg-cheer{font-weight:600}
/* shop suggestion */
[data-theme=studio] .sg-xitem{border-color:var(--sg-line)}
[data-theme=studio] .sg-xpic img,[data-theme=studio] .sg-xpic>*{border-radius:12px}
[data-theme=studio] .sg-alert{border:0;border-radius:12px;background:rgba(255,159,56,.14);color:var(--sg-ink);font-weight:600}

/* auth pages */
[data-theme=studio] .sg-auth{background:var(--sg-bg)}
[data-theme=studio] .sg-auth>.sg-card{padding:32px;border-radius:16px;box-shadow:var(--sg-pop)}
[data-theme=studio] .sg-auth .sg-card-h h2:before{display:none}

/* chat */
[data-theme=studio] .sg-msg.user{background:var(--sg-accent)}
[data-theme=studio] .sg-msg.assistant{background:var(--sg-card);border:0;box-shadow:var(--sg-shadow)}
[data-theme=studio] .sg-chat-form{border:0;box-shadow:var(--sg-pop)}
/* phones: the greeting is the title on Today */
[data-theme=studio] .sg-main:has(.sg-today-head)>.sg-page-title{display:none}
@media (max-width:767px){[data-theme=studio] .sg-actions a{width:84px;padding:0 4px;white-space:normal;text-align:center;line-height:1.15}}

/* ---------- top bar: search + avatar (Studio) ---------- */
[data-theme=studio] .sg-search{align-items:center;gap:12px;width:400px;max-width:44%;height:48px;border-radius:12px;background:var(--sg-card);padding:0 16px;color:var(--sg-mute)}
[data-theme=studio] .sg-search input{border:0;background:none;outline:0;flex:1;color:var(--sg-ink);font-weight:500;font-size:.95rem;min-width:0}
[data-theme=studio] .sg-search input::placeholder{color:var(--sg-mute2)}
[data-theme=studio] .sg-search:focus-within{box-shadow:inset 0 0 0 2px var(--sg-accent)}
[data-theme=studio] .sg-avatar-btn i{display:none}
[data-theme=studio] .sg-avatar-btn{background:none!important;padding:0;width:auto!important;height:auto!important}
[data-theme=studio] .sg-side-me .bi-person-circle{display:none}

/* ---------- Today (Studio layout) ---------- */
.sg-sd-hello{font-size:2.5rem;font-weight:600;letter-spacing:-.04em;line-height:1.15;margin:2px 0 4px}
.sg-sd-head{margin:0 0 20px}
.sg-sd-quick{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.sg-sd-quick a{display:flex;align-items:center;gap:10px;height:44px;padding:0 16px 0 12px;border-radius:12px;background:var(--sg-card);font-weight:600;font-size:.88rem;color:var(--sg-ink2)!important;box-shadow:var(--sg-shadow);text-decoration:none}
.sg-sd-quick a i{font-size:1.15rem;color:var(--c,var(--sg-accent))}
.sg-sd-quick a:hover{background:var(--sg-hover)}
.sg-sd-quick a.hot{background:var(--sg-ink);color:var(--sg-card)!important}.sg-sd-quick a.hot i{color:var(--sg-card)}
.sg-sd{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:8px;align-items:start}
.sg-sd-main,.sg-sd-side{display:flex;flex-direction:column;gap:8px;min-width:0}
.sg-sd .sg-card{margin:0}
.sg-sd-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:start}
.sg-sd-sel{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px 0 16px;border-radius:10px;box-shadow:inset 0 0 0 2px var(--sg-line);color:var(--sg-mute)!important;font-weight:600!important;font-size:.85rem!important}
.sg-sd-sel i{font-size:.8rem}
.sg-dbadge{display:inline-flex;align-items:center;gap:2px;font-size:.8rem;font-weight:700;padding:2px 8px;border-radius:6px;background:var(--sg-soft);color:var(--sg-ink2);white-space:nowrap}
.sg-dbadge.ok{color:#4C9A35;background:#EAFAE4}.sg-dbadge.bad{color:#D9453A;background:#FFE7E4}
[data-mode=dark] .sg-dbadge.ok{background:rgba(131,191,110,.16);color:#9BD685}[data-mode=dark] .sg-dbadge.bad{background:rgba(255,106,85,.16);color:#FF8B7A}
.sg-sd-tiles{background:var(--sg-soft);border-radius:20px;padding:8px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sg-sd-tile{border-radius:12px;padding:20px 24px;display:flex;gap:16px;color:var(--sg-ink)!important;text-decoration:none;min-width:0}
.sg-sd-tile.on{background:var(--sg-card);box-shadow:0 4px 8px -4px rgba(0,0,0,.1),inset 0 -1px 1px rgba(0,0,0,.04)}
.sg-sd-tile .ic{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:1.2rem;flex:none;color:#1A1D1F}
.sg-sd-big{font-size:3rem;font-weight:600;letter-spacing:-.04em;line-height:1.1}
.sg-sd-big small{font-size:1.2rem;color:var(--sg-mute);font-weight:500;margin-left:4px;letter-spacing:0}
.sg-sd-sub{margin-top:10px;display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--sg-mute);font-weight:500;flex-wrap:wrap}
.sg-wchart{width:100%;height:auto;aspect-ratio:700/200;display:block;margin-top:20px;overflow:visible}
.sg-wchart .g{stroke:var(--sg-line);stroke-width:1;vector-effect:non-scaling-stroke}
.sg-wchart .t{fill:var(--sg-mute2);font-size:12px;font-weight:600;font-family:var(--sg-font)}
.sg-wchart .ln{fill:none;stroke:var(--sg-accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.sg-wchart .goal{stroke:var(--sg-bad);stroke-dasharray:6 6;stroke-width:2;vector-effect:non-scaling-stroke}
.sg-wchart .goalt{fill:var(--sg-bad);font-size:12px;font-weight:700;font-family:var(--sg-font)}
.sg-wchart .dot{fill:var(--sg-card);stroke:var(--sg-accent);stroke-width:3;vector-effect:non-scaling-stroke}
.sg-sd-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:24px}
.sg-sd-kpis a{border-radius:12px;box-shadow:inset 0 0 0 2px var(--sg-line);padding:16px;color:var(--sg-ink)!important;text-decoration:none}
.sg-sd-kpis a:hover{background:var(--sg-soft)}
.sg-sd-kpis b{display:block;font-size:1.5rem;font-weight:600;letter-spacing:-.03em;margin-top:4px}.sg-sd-kpis b small{font-size:.85rem;color:var(--sg-mute);font-weight:500;margin-left:2px}
/* checklist with check boxes */
.sg-ck{width:32px;height:32px;flex:none;border-radius:8px;border:0;background:transparent;box-shadow:inset 0 0 0 2px #DCDDDF;display:grid;place-items:center;color:transparent;font-size:1rem;padding:0;cursor:pointer;transition:background .15s}
[data-mode=dark] .sg-ck{box-shadow:inset 0 0 0 2px #33383F}
.sg-ck:hover{box-shadow:inset 0 0 0 2px var(--sg-ok);color:var(--sg-ok)}
.sg-ck.on,.sg-ck:disabled.on{background:var(--sg-ok);box-shadow:none;color:#fff}
.sg-plan .sg-inline .form-control{width:84px}
.sg-plan .sg-task.done .sg-inline{display:none}
.sg-plan .sg-task-b small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sg-plan .sg-task-b b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.sg-plan .sg-moods button{width:36px;height:36px;font-size:1.05rem}
/* protein bars */
.sg-sd-bars{display:flex;align-items:flex-end;gap:12px;height:180px;margin-top:14px;padding-bottom:24px;border-bottom:1px solid var(--sg-line)}
.sg-sd-bars>div{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}
.sg-sd-bars i{width:100%;max-width:32px;border-radius:6px 6px 2px 2px;background:var(--sg-line);display:block}
.sg-sd-bars i.hit{background:var(--sg-mk2)}.sg-sd-bars i.today{background:var(--sg-accent)}
.sg-sd-bars span{position:absolute;bottom:-22px;font-size:.75rem;font-weight:600;color:var(--sg-mute2);text-transform:uppercase}
.sg-sd-macro{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 16px}
.sg-sd-macro b{display:block;font-size:1.1rem;font-weight:600}
.sg-sd-macro i{display:block;height:6px;border-radius:3px;background:var(--sg-line);margin-top:8px;overflow:hidden}.sg-sd-macro em{display:block;height:100%;border-radius:3px}
.sg-sd .sg-syncline{margin:0;font-weight:600}
/* next dose */
.sg-sd .sg-hero .sg-card-h h2{color:#fff}
.sg-sd .sg-hero .sg-count{font-size:3.5rem;line-height:1;margin:4px 0 0}
.sg-sd .sg-hero .sg-count small{font-size:1.25rem;color:#9A9FA5;margin:0 12px 0 4px;opacity:1}
.sg-sd-dmeta{color:#9A9FA5;font-weight:500;margin:12px 0 18px}
.sg-sd-lvl{display:flex;justify-content:space-between;font-size:.85rem;color:#9A9FA5;font-weight:600}.sg-sd-lvl b{color:#fff}
.sg-sd-lvlbar{height:8px;border-radius:4px;background:#33383F;margin-top:8px;overflow:hidden}.sg-sd-lvlbar i{display:block;height:100%;background:linear-gradient(90deg,#00C6E0,var(--sg-accent2))}
.sg-sd .sg-hero .btn{height:48px;display:flex;align-items:center;justify-content:center}
/* dream */
.sg-sd-share{width:40px!important;height:40px!important;box-shadow:inset 0 0 0 2px var(--sg-line)}
.sg-sd .sg-wx2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sg-sd .sg-cheer{font-size:.98rem}
/* layout breakpoints */
@media (max-width:1399px){.sg-sd{grid-template-columns:minmax(0,1fr) 320px}.sg-sd-row{grid-template-columns:1fr}.sg-sd-big{font-size:2.5rem}}
@media (max-width:1199px){.sg-sd{grid-template-columns:1fr}.sg-sd-side{display:grid;grid-template-columns:1fr 1fr;align-items:start}.sg-sd-row{grid-template-columns:1fr 1fr}}
@media (max-width:991px){
  .sg-sd{display:flex;flex-direction:column;align-items:stretch}.sg-sd-main,.sg-sd-side,.sg-sd-row{display:contents}.sg-sd>*>.sg-card,.sg-sd>*>*>.sg-card{min-width:0}
  .sg-sd .sg-hero{order:1}.sg-sd-ov{order:2}.sg-sd .sg-plan{order:3}.sg-sd .sg-nutri{order:4}.sg-sd .sg-travel{order:5}.sg-sd .sg-fasting{order:6}.sg-sd .sg-xsell{order:7}
  .sg-sd-hello{font-size:2rem}
}
@media (max-width:767px){
  .sg-sd-quick{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 20px;padding:0 16px;scrollbar-width:none}.sg-sd-quick::-webkit-scrollbar{display:none}
  .sg-sd-quick a{flex:none;flex-direction:column;justify-content:center;width:76px;height:84px;padding:0;border-radius:16px;gap:6px;font-size:.72rem}
  .sg-sd-quick a i{font-size:1.5rem}
  .sg-sd-tiles{grid-template-columns:1fr}.sg-sd-tile{padding:16px}
  .sg-sd-kpis{grid-template-columns:1fr 1fr}
  .sg-sd-big{font-size:2.4rem}
}

/* ---------- Meal plan (Studio layout) ---------- */
.sg-sp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 24px}
.sg-sp-actions form{flex-wrap:wrap}
.sg-sp-sel{width:auto;height:44px;padding:0 2.4rem 0 1rem!important;background-color:var(--sg-card)!important;box-shadow:inset 0 0 0 2px var(--sg-line);font-weight:600;color:var(--sg-mute)}
.sg-sp-actions .btn{height:44px;display:inline-flex;align-items:center;background:var(--sg-card)}
.sg-sp{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:8px;align-items:start}
.sg-sp-main,.sg-sp-side{display:flex;flex-direction:column;gap:8px;min-width:0}
.sg-sp .sg-card{margin:0}
.sg-sp-days{padding:24px}
.sg-sp-strip{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.sg-sp-strip::-webkit-scrollbar{display:none}
.sg-sp-strip a{flex:1 0 64px;max-width:96px;border-radius:12px;padding:14px 0 16px;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--sg-mute)!important;font-weight:600;font-size:.82rem;position:relative;text-decoration:none}
.sg-sp-strip a b{font-size:1.25rem;color:var(--sg-ink);font-weight:700}
.sg-sp-strip a:hover{background:var(--sg-soft)}
.sg-sp-strip a.on{background:var(--sg-ink);color:#9A9FA5!important}.sg-sp-strip a.on b{color:var(--sg-card)}
.sg-sp-strip a i{position:absolute;bottom:6px;width:5px;height:5px;border-radius:50%;background:var(--sg-accent)}
.sg-sp-meals{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sg-sp-meal{border-radius:16px;box-shadow:inset 0 0 0 2px var(--sg-line);overflow:hidden;background:var(--sg-card);display:flex;flex-direction:column}
.sg-sp-ph{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:var(--sg-soft)}
.sg-sp-ph img,.sg-sp-ph .sg-rph{width:100%;height:100%;object-fit:cover;display:flex;border-radius:0;transition:transform .3s}
.sg-sp-meal:hover .sg-sp-ph img{transform:scale(1.03)}
.sg-sp-slot{position:absolute;left:12px;top:12px;background:rgba(252,252,252,.94);color:#1A1D1F;border-radius:8px;padding:4px 10px 4px 8px;font-size:.75rem;font-weight:700;display:flex;align-items:center;gap:8px}
.sg-sp-slot:before{content:"";width:8px;height:16px;border-radius:2px;background:var(--mk)}
.sg-sp-flag{position:absolute;right:12px;top:12px;background:var(--sg-accent);color:#fff;border-radius:8px;padding:4px 10px;font-size:.75rem;font-weight:700}
.sg-sp-flag.ok{background:var(--sg-ok)}
.sg-sp-b{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.sg-sp-name{font-size:1.05rem;font-weight:600;letter-spacing:-.02em;color:var(--sg-ink)!important;text-decoration:none;line-height:1.3}
.sg-sp-x{font-size:.75rem;font-weight:700;color:var(--sg-mute);background:var(--sg-soft);border-radius:6px;padding:1px 6px;margin-left:4px}
.sg-sp-m{display:flex;flex-wrap:wrap;gap:4px 14px;margin:8px 0 14px;font-size:.8rem;color:var(--sg-mute);font-weight:600}.sg-sp-m i{margin-right:4px}
.sg-sp-act{display:flex;gap:8px;margin-top:auto}.sg-sp-act form:first-child{flex:1}
.sg-sp-act .btn{height:44px}
.sg-sp-sq{width:44px;padding:0!important;display:grid!important;place-items:center}
.sg-sp-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1px solid var(--sg-line);font-weight:600}
.sg-sp-row:first-of-type{border-top:0;padding-top:0}
.sg-sp-row span{color:var(--sg-mute);font-size:.88rem}
.sg-sp-row b{display:flex;align-items:center;gap:8px}
.sg-sp-var{display:flex;gap:12px;align-items:flex-start;border-radius:12px;padding:14px 16px;margin-top:12px;font-size:.85rem}
.sg-sp-var i{font-size:1.15rem}.sg-sp-var small{display:block;font-weight:500;margin-top:2px;opacity:.85}
.sg-sp-var.ok{background:#EAFAE4;color:#3F7A2E}.sg-sp-var.warn{background:#FFF1DE;color:#9A5B12}
[data-mode=dark] .sg-sp-var.ok{background:rgba(131,191,110,.14);color:#9BD685}[data-mode=dark] .sg-sp-var.warn{background:rgba(255,159,56,.14);color:#FFB870}
.sg-sp-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--sg-line);font-size:.9rem;font-weight:500;color:var(--sg-ink)!important;text-decoration:none}
.sg-sp-item:first-of-type{border-top:0}
.sg-sp-item .bx{width:22px;height:22px;flex:none;border-radius:6px;box-shadow:inset 0 0 0 2px #DCDDDF;display:grid;place-items:center;color:transparent;font-size:.8rem}
.sg-sp-item.done .bx{background:var(--sg-ok);box-shadow:none;color:#fff}.sg-sp-item.done .nm{text-decoration:line-through;color:var(--sg-mute)}
.sg-sp-item .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sg-sp-item .pr{color:var(--sg-mute);font-weight:600;white-space:nowrap}
@media (max-width:1399px){.sg-sp{grid-template-columns:minmax(0,1fr) 300px}}
@media (max-width:1199px){.sg-sp{grid-template-columns:1fr}.sg-sp-side{display:grid;grid-template-columns:1fr 1fr;align-items:start}}
@media (max-width:767px){.sg-sp-meals{grid-template-columns:1fr}.sg-sp-side{display:flex}.sg-sp-days{padding:12px}.sg-sp-strip a{flex:0 0 56px}.sg-sp-head{align-items:flex-start;flex-direction:column}}
/* 1.11.4: search spans the top bar; compact greeting */
[data-theme=studio] .sg-search{flex:1 1 auto;width:auto;max-width:none;margin-right:16px}
.sg-sd-head{margin:-4px 0 18px}
.sg-sd-head .sg-label{font-size:.78rem}
.sg-sd-hello{font-size:1.75rem;margin:0 0 2px}
.sg-sd-head p{font-size:.9rem}
.sg-sp-head .sg-sd-hello{font-size:2rem}
@media (max-width:991px){.sg-sd-hello{font-size:1.6rem}}
