/* Profitalyzer V53 — product navigation, workspace positioning, daily timeline controls */
html.pf-workspace-auth-check body{visibility:hidden}

/* Home: make the product hierarchy unmistakable. */
.v53-hero .inner{max-width:780px}.v53-hero .herohelper{max-width:760px}
.v53-free-head{max-width:900px;margin:64px auto 24px;text-align:center}.v53-free-head h2{font-size:clamp(30px,4vw,48px);line-height:1.05;margin:10px 0 12px}.v53-free-head p{max-width:760px;margin:0 auto;opacity:.76;line-height:1.65}
.v53-free-grid .v53-free-card{position:relative}.v53-free-grid .v53-free-card .tag{letter-spacing:.06em;font-size:10px;font-weight:900}
.v53-free-first{margin:58px 0 18px;padding:30px;border:1px solid color-mix(in srgb,var(--brand,#6c4cf1) 18%,transparent);border-radius:28px;background:color-mix(in srgb,var(--surface,#171322) 97%,transparent)}.v53-free-first .v53-free-head{margin:0 0 22px;text-align:left}.v53-free-first .v53-free-head p{margin:0;max-width:820px}.v53-free-first .v53-free-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v53-free-first .v53-free-card{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid color-mix(in srgb,var(--brand,#6c4cf1) 18%,transparent);border-radius:18px;text-decoration:none;color:inherit;background:color-mix(in srgb,var(--surface,#171322) 93%,transparent)}.v53-free-first .v53-free-card b{font-size:20px}.v53-free-first .v53-free-card span{opacity:.72;line-height:1.55}
.v53-workspaces{margin:76px 0 54px;padding:42px;border:1px solid color-mix(in srgb,var(--brand,#6c4cf1) 35%,transparent);border-radius:32px;background:radial-gradient(circle at 100% 0,color-mix(in srgb,#6c4cf1 18%,transparent),transparent 36%),linear-gradient(145deg,color-mix(in srgb,var(--surface,#151221) 96%,#6c4cf1 4%),var(--surface,#151221));box-shadow:0 28px 70px rgba(20,13,45,.18)}
.v53-workspaces-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px}.v53-workspaces-head h2{font-size:clamp(31px,4vw,50px);line-height:1.06;margin:10px 0 12px;max-width:850px}.v53-workspaces-head p{max-width:820px;opacity:.75;line-height:1.65}.v53-account-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 19px;border-radius:14px;background:var(--brand,#6c4cf1);color:#fff;text-decoration:none;font-weight:850;white-space:nowrap}
.v53-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.v53-mode-card{border:1px solid color-mix(in srgb,currentColor 11%,transparent);border-radius:24px;padding:28px;background:color-mix(in srgb,var(--surface,#171322) 93%,transparent);min-height:430px;display:flex;flex-direction:column}.v53-mode-card.personal{background:linear-gradient(155deg,color-mix(in srgb,#4169e1 10%,var(--surface,#171322)),var(--surface,#171322) 65%)}.v53-mode-card.business{background:linear-gradient(155deg,color-mix(in srgb,#6c4cf1 14%,var(--surface,#171322)),var(--surface,#171322) 65%)}.v53-mode-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.v53-mode-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand,#6c4cf1) 18%,transparent);font-size:25px}.v53-signin-badge,.v53-mode-pill{font-size:10px;font-weight:900;letter-spacing:.09em;border:1px solid color-mix(in srgb,var(--brand,#6c4cf1) 35%,transparent);padding:7px 9px;border-radius:999px;opacity:.78}.v53-mode-card h3{font-size:clamp(24px,2.5vw,34px);margin:22px 0 12px}.v53-mode-card p{line-height:1.65;opacity:.78}.v53-mode-card ul{list-style:none;margin:18px 0 24px;padding:0;display:grid;gap:10px}.v53-mode-card li{position:relative;padding-left:24px;font-weight:700}.v53-mode-card li:before{content:'✓';position:absolute;left:0;color:#50d9ad}.v53-mode-card>a{margin-top:auto;text-decoration:none;font-weight:900;color:var(--brand-2,#9d8cff)}.v53-both-band{margin-top:18px;padding:18px 20px;border-radius:18px;background:color-mix(in srgb,var(--brand,#6c4cf1) 9%,transparent);display:flex;gap:12px;align-items:flex-start}.v53-both-band b{white-space:nowrap}.v53-both-band span{opacity:.76;line-height:1.55}

/* Account workspace: less dashboard clutter, stronger product entry points. */
.v53-account-launch{margin:4px 0 24px}.v53-account-launch-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:6px 0 18px}.v53-account-launch-head h2{font-size:clamp(28px,3vw,40px);margin:6px 0}.v53-account-launch-head p{margin:0;opacity:.72}.v53-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v53-product-grid .pf-workspace-product{min-height:170px}.v53-product-grid .pf-workspace-product.primary{grid-column:span 2;min-height:200px}.v53-free-companion{border-style:dashed!important}.v53-free-companion:after{content:'FREE';position:absolute;top:14px;right:14px;font-size:9px;font-weight:900;letter-spacing:.08em;opacity:.58}.pf-workspace-product{position:relative}.v53-mode-mismatch{margin-bottom:16px;padding:30px!important}.v53-use-picker .pf-use-grid button{min-height:250px}

/* Personal & Business activity period selectors. */
.mt-period-toolbar,.bmt-period-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:14px 0 16px;padding:10px;border:1px solid var(--mt-rule,var(--bmt-border,#393052));border-radius:16px;background:color-mix(in srgb,var(--mt-panel,var(--bmt-panel,#181326)) 92%,transparent)}
.mt-period-switch,.bmt-period-switch{display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:color-mix(in srgb,currentColor 5%,transparent)}.mt-period-switch button,.bmt-period-switch button{border:0;background:transparent;color:inherit;border-radius:9px;padding:9px 13px;font:800 12px/1.1 inherit;cursor:pointer}.mt-period-switch button.active,.bmt-period-switch button.active{background:var(--mt-brand,var(--bmt-brand,#6d4aff));color:#fff;box-shadow:0 6px 16px rgba(76,54,180,.22)}
.mt-period-nav,.bmt-period-nav{display:flex;align-items:center;gap:8px}.mt-period-nav button,.bmt-period-nav button{width:34px;height:34px;border:1px solid var(--mt-rule,var(--bmt-border,#393052));background:transparent;color:inherit;border-radius:10px;cursor:pointer}.mt-period-label,.bmt-period-label{min-width:180px;text-align:center}.mt-period-label b,.bmt-period-label b{display:block;font-size:13px}.mt-period-label small,.bmt-period-label small{display:block;opacity:.62;margin-top:2px;font-size:10px}.mt-period-summary,.bmt-period-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 14px}.mt-period-summary>div,.bmt-period-summary>div{padding:12px 14px;border:1px solid var(--mt-rule,var(--bmt-border,#393052));border-radius:13px;background:color-mix(in srgb,var(--mt-panel,var(--bmt-panel,#181326)) 95%,transparent)}.mt-period-summary span,.bmt-period-summary span{display:block;font-size:10px;font-weight:800;opacity:.62;text-transform:uppercase;letter-spacing:.04em}.mt-period-summary b,.bmt-period-summary b{display:block;margin-top:5px;font-size:15px}.mt-period-summary .good b,.bmt-period-summary .good b{color:#2ca77a}.mt-period-summary .bad b,.bmt-period-summary .bad b{color:#d45f76}

@media(max-width:900px){.v53-workspaces{padding:28px 20px}.v53-workspaces-head{align-items:flex-start;flex-direction:column}.v53-mode-grid{grid-template-columns:1fr}.v53-mode-card{min-height:auto}.v53-product-grid{grid-template-columns:1fr}.v53-product-grid .pf-workspace-product.primary{grid-column:auto}.v53-account-launch-head{align-items:flex-start;flex-direction:column}.mt-period-summary,.bmt-period-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.v53-free-first{padding:20px}.v53-free-first .v53-free-grid{grid-template-columns:1fr}.v53-workspaces{margin:46px 0 34px;border-radius:22px}.v53-mode-card{padding:22px}.v53-both-band{flex-direction:column}.mt-period-toolbar,.bmt-period-toolbar{align-items:stretch;flex-direction:column}.mt-period-switch,.bmt-period-switch{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.mt-period-switch button,.bmt-period-switch button{padding:9px 6px}.mt-period-nav,.bmt-period-nav{justify-content:space-between}.mt-period-label,.bmt-period-label{min-width:0;flex:1}}

/* V53.1 — UI glitch hardening: native controls + long financial values. */
html[data-theme="dark"] body select{color-scheme:dark}
html[data-theme="dark"] body select option{background:#1e1928;color:#f7f3ff}
html[data-theme="light"] body select{color-scheme:light}
html[data-theme="light"] body select option{background:#fff;color:#17151f}

/* Grid/flex children that contain large currency values must be allowed to shrink. */
.bmt-kpi,.bmt-kpi strong,.bmt-outlook-total>div,.bmt-outlook-total strong,
.mt-stat,.mt-stat b,.mt-period-summary>div,.mt-period-summary b,
.bmt-period-summary>div,.bmt-period-summary b{min-width:0;max-width:100%}
.bmt-kpi strong,.bmt-outlook-total strong,.mt-stat b,.mt-period-summary b,.bmt-period-summary b{
  font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere;
}

/* Keep two-column tablet dashboards readable even with six/seven-figure values. */
@media(max-width:850px) and (min-width:621px){
  .bmt-kpis-premium .bmt-kpi strong{font-size:clamp(1rem,3.1vw,1.2rem);line-height:1.15}
  .mt-summary .mt-stat b{font-size:clamp(1.05rem,3.2vw,1.35rem);line-height:1.15}
  .mt-period-summary b,.bmt-period-summary b{font-size:clamp(.82rem,2.65vw,.95rem);line-height:1.2}
}

/* Very narrow screens: never let KPI text create horizontal page overflow. */
@media(max-width:620px){
  .bmt-kpi strong,.bmt-outlook-total strong,.mt-stat b,.mt-period-summary b,.bmt-period-summary b{
    word-break:break-word;
  }
}

/* ── V53.14 · In-place sign-in requirement for account-only workspaces ────── */
.pf-authgate{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:24px 16px;box-sizing:border-box;
  background:var(--bg,#0e0b1d);color:var(--ink,#f4f1ff)}
.pf-authgate-card{width:100%;max-width:520px;box-sizing:border-box;text-align:center;
  background:var(--card,rgba(255,255,255,.045));border:1px solid var(--line,rgba(255,255,255,.12));
  border-radius:20px;padding:clamp(22px,5vw,38px)}
.pf-authgate-badge{display:inline-block;font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:800;
  color:var(--purple,#9075ff);background:rgba(108,76,241,.14);border-radius:999px;padding:6px 13px;margin-bottom:14px}
.pf-authgate-card h1{margin:0 0 10px;font-size:clamp(21px,4.5vw,27px);line-height:1.25}
.pf-authgate-card p{margin:0 0 20px;font-size:14.5px;line-height:1.6;opacity:.82}
.pf-authgate-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:16px}
.pf-authgate-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;
  border-radius:12px;font-weight:700;font-size:14.5px;text-decoration:none;
  border:1px solid var(--line,rgba(255,255,255,.18));color:inherit;background:transparent}
.pf-authgate-btn.primary{background:linear-gradient(135deg,#7c5cf5,#6c4cf1);border-color:transparent;color:#fff}
.pf-authgate-btn:hover{border-color:var(--purple,#9075ff)}
.pf-authgate-alt{display:inline-block;font-size:13.5px;font-weight:600;color:var(--green,#44dab0);text-decoration:none;margin-bottom:12px}
.pf-authgate-alt:hover{text-decoration:underline}
.pf-authgate-card small{display:block;font-size:12.5px;opacity:.6}
@media (max-width:380px){.pf-authgate-actions{flex-direction:column}.pf-authgate-btn{width:100%}}

/* ── V53.14 · Product marks ───────────────────────────────────────────────
   A mark carries its own rounded tile, so the host swatch drops its
   background and padding rather than framing a frame.                      */
.v53-mode-icon.has-mark{background:none;padding:0;font-size:0}
.v53-mode-icon.has-mark svg{width:48px;height:48px;display:block;
  filter:drop-shadow(0 3px 9px rgba(43,23,111,.34))}
.pf-tico-mark{background:none!important;border:0!important;padding:0!important;font-size:0}
.pf-tico-mark svg{width:30px;height:30px;display:block}
.pf-product-mark svg,svg.pf-mark{display:block}

/* ── V53.14 · Plan-ahead section (Forecast + Personal Budget) ───────────── */
.v53-planning{margin:54px 0 18px}
.v53-planning-head{max-width:760px;margin:0 0 20px}
.v53-planning-head h2{margin:8px 0 8px;font-size:clamp(21px,3.4vw,30px);line-height:1.22}
.v53-planning-head p{margin:0;font-size:15px;line-height:1.62;opacity:.78}
.v53-planning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.v53-planning-grid>a{min-width:0}
.v53-planning-grid .seccard>.art{height:186px;min-height:186px;padding:0;overflow:hidden}
.v53-planning-grid .seccard .hd{display:flex;align-items:center;gap:11px}
@media (max-width:820px){
  .v53-planning-grid{grid-template-columns:1fr;gap:15px}
  .v53-planning-grid .seccard>.art{height:158px;min-height:158px}
  .v53-planning{margin:40px 0 14px}
}
@media (max-width:420px){
  .v53-planning-grid .seccard>.art{height:132px;min-height:132px}
  .v53-mode-icon.has-mark svg{width:42px;height:42px}
}

/* ── V53.14 · Workspace switch feels instant instead of freezing ─────────── */
.pf-workspace-switch button{transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.pf-workspace-switch button[disabled]{cursor:progress;opacity:1}
.pf-workspace-switching{transition:opacity .16s ease;opacity:.55}
@media (prefers-reduced-motion:reduce){
  .pf-workspace-switching{transition:none;opacity:1}
  .pf-workspace-switch button{transition:none}
}

/* ── V53.14 · Account control always closes the header row ───────────────── */
.pf-account-fallback{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 13px;
  border-radius:999px;border:1px solid var(--line,rgba(255,255,255,.16));text-decoration:none;
  color:inherit;font-weight:700;font-size:13.5px;white-space:nowrap}
.pf-account-fallback svg{width:18px;height:18px;flex:none}
.pf-account-fallback:hover{border-color:var(--purple,#9075ff)}
@media (max-width:760px){.pf-account-fallback>span{display:none}.pf-account-fallback{padding:0 10px}}
