:root{
  --bg:#0b0f14;--surface:#171e2a;--surface-2:#1c2532;--surface-3:#27323f;
  --line:#303d51;--tx:#f4f7fb;--mu:#7c8798;--bl:#6ea8ff;--gr:#22c55e;
  --am:#f5a524;--rd:#ef4444;--vio:#a78bfa;--radius:18px;--shadow:0 16px 42px rgba(0,0,0,.2);
  --safe-bottom:env(safe-area-inset-bottom,0px)
}
*{box-sizing:border-box}
html{background:var(--bg);color-scheme:dark}
body{margin:0;background:radial-gradient(circle at 50% -100px,rgba(110,168,255,.09),transparent 380px),var(--bg);color:var(--tx);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter","Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit}
button{touch-action:manipulation}
#app{max-width:760px;margin:0 auto;min-height:100vh;padding-bottom:calc(96px + var(--safe-bottom))}
.screen-body{padding:8px 16px 24px;max-width:720px;margin:0 auto}
.v2-top{position:sticky;top:0;z-index:40;padding:12px 16px 10px;background:linear-gradient(180deg,rgba(11,15,20,.98),rgba(11,15,20,.9) 78%,rgba(11,15,20,0));backdrop-filter:blur(16px)}
.v2-top-inner{max-width:720px;margin:0 auto;display:flex;align-items:center;gap:10px;min-height:44px}
.v2-brand{font-size:22px;font-weight:780;letter-spacing:-.045em;white-space:nowrap}.v2-brand b{color:var(--am);font-weight:780}.v2-page{min-width:0;flex:1;font-size:15px;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v2-tools{display:flex;gap:7px}.v2-icon-btn,.v2-pro{height:36px;border-radius:12px;border:1px solid var(--line);background:rgba(23,30,41,.8);color:var(--tx);display:grid;place-items:center;padding:0 10px}.v2-icon-btn{width:38px;padding:0}.v2-pro{font-size:12px;font-weight:750;letter-spacing:.05em;color:var(--am)}.v2-icon{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v2-nav{position:fixed;left:0;right:0;bottom:0;transform:none;z-index:50;width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px 10px calc(8px + var(--safe-bottom));background:rgba(18,24,33,.96);border-top:1px solid rgba(61,77,98,.75);border-left:none;border-right:none;border-bottom:none;border-radius:22px 22px 0 0;box-shadow:0 -10px 30px rgba(0,0,0,.28);backdrop-filter:blur(20px)}
.v2-nav button{border:0;background:transparent;color:var(--mu);border-radius:15px;padding:8px 4px 7px;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:11px;font-weight:650}.v2-nav button.on{background:var(--surface-3);color:var(--tx)}.v2-nav button.on .v2-icon{color:var(--bl)}
.card,.gcard{background:var(--surface);border:1px solid var(--line)!important;border-radius:var(--radius)!important;box-shadow:none!important;padding:16px!important;margin:0 0 12px!important}.gcard{cursor:pointer}.gcard:active,.card[data-tap]:active{transform:scale(.995)}
.h1{font-size:24px!important;line-height:1.12!important;letter-spacing:-.035em!important;font-weight:730!important;margin:7px 0 14px!important}.huge{font-size:34px!important;line-height:1.05!important;letter-spacing:-.04em!important}.big{font-size:22px!important}.mid{font-size:17px!important}.lbl,.sub{font-size:13px!important;line-height:1.42!important;color:var(--mu)!important}.grp{font-size:12px!important;letter-spacing:.06em!important;text-transform:uppercase;color:var(--mu)!important;font-weight:700!important}
.btn,.btn2,.gh,.pill,.ico,.back{border-radius:13px!important;min-height:42px}.btn{background:var(--am)!important;color:#2a1900!important;border:1px solid var(--am)!important;font-weight:720!important}.btn2{background:var(--surface-3)!important;color:var(--tx)!important;border:1px solid var(--line)!important}.gh{background:transparent!important;color:var(--bl)!important;border:0!important}.pill{background:var(--surface)!important;border:1px solid var(--line)!important;color:var(--mu)!important}.pill.on{background:var(--surface-3)!important;color:var(--tx)!important;border-color:#3a4860!important}.ico{background:var(--surface-2)!important;border:1px solid var(--line)!important;color:var(--tx)!important}.back{color:var(--bl)!important;background:transparent!important;border:0!important}.row{border-color:var(--line)!important}
input,textarea,select{background:#0f151d!important;border:1px solid #2a3648!important;border-radius:13px!important;color:var(--tx)!important;min-height:44px;padding:10px 12px!important}input:focus,textarea:focus,select:focus{outline:none!important;border-color:var(--bl)!important;box-shadow:0 0 0 3px rgba(110,168,255,.1)!important}
.bar{height:8px!important;border-radius:999px!important;background:#202a38!important;overflow:visible}.bar.sm{height:7px!important}.fill{border-radius:999px!important}.mark{width:2px!important;background:#fff!important;opacity:.7!important}
.tabs,.seg3{background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:14px!important;padding:4px!important}.tab,.seg3 button{border-radius:10px!important}.tab.on,.seg3 button.on{background:var(--surface-3)!important}
.v2-hero{padding:6px 2px 10px}.v2-eyebrow{font-size:12px;color:var(--mu);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}.v2-title{font-size:30px;line-height:1.08;font-weight:760;letter-spacing:-.045em;margin:0 0 7px}.v2-sub{font-size:15px;line-height:1.45;color:var(--mu);margin:0}
.v2-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 14px}.v2-stat{padding:13px;border-radius:16px;background:var(--surface);border:1px solid var(--line);min-width:0}.v2-stat b{display:block;font-size:17px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-stat span{display:block;color:var(--mu);font-size:11px;margin-top:4px}
.v2-action{position:relative;overflow:hidden;padding:18px!important;background:#1b2634!important}.v2-action:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:rgba(110,168,255,.09);right:-70px;top:-80px}.v2-action-k{font-size:12px;color:#9fc3ff;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.v2-action h2{font-size:21px;line-height:1.18;margin:7px 0 5px;letter-spacing:-.025em}.v2-action p{color:var(--mu);font-size:13px;line-height:1.4;margin:0 0 14px;max-width:90%}.v2-action .btn{position:relative;width:100%}
.v2-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin:16px 2px 9px}.v2-section-head h2{font-size:18px;margin:0;letter-spacing:-.02em}.v2-section-head span{font-size:12px;color:var(--mu)}
.v2-module{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px}.v2-module-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--surface-3);color:var(--bl)}.v2-module b{font-size:15px}.v2-module p{font-size:12px;color:var(--mu);margin:3px 0 0;line-height:1.35}.v2-chevron{color:var(--mu);font-size:22px}
.v2-goal-card{padding:15px!important}.v2-goal-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.v2-goal-name{font-size:16px;font-weight:700}.v2-goal-meta{font-size:12px;color:var(--mu);margin-top:4px}.v2-goal-pct{font-size:16px;font-weight:750}.v2-goal-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:9px;font-size:12px}.v2-status-ok{color:var(--gr)}.v2-status-warn{color:var(--am)}.v2-status-muted{color:var(--mu)}.v2-mini-btn{border:1px solid var(--line);background:var(--surface-3);color:var(--tx);height:34px;padding:0 11px;border-radius:11px;font-weight:650;font-size:12px}
.v2-fab{position:fixed;right:max(18px,calc((100vw - 720px)/2 + 18px));bottom:calc(88px + var(--safe-bottom));width:52px;height:52px;border:0;border-radius:17px;background:var(--tx);color:#0b0f14;font-size:27px;line-height:1;box-shadow:0 14px 30px rgba(0,0,0,.35);z-index:45}
.v2-money-head{display:flex;align-items:center;justify-content:center;gap:8px}.v2-eye{border:0;background:transparent;color:var(--mu);padding:4px}.v2-insight{font-size:13px;line-height:1.45;text-align:center;color:var(--mu);margin-top:7px}.v2-actions3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.v2-actions3 button{min-height:46px}.v2-expense{background:rgba(240,114,114,.12)!important;color:#ffaaaa!important;border-color:rgba(240,114,114,.28)!important}.v2-income{background:rgba(77,213,138,.12)!important;color:#8beab3!important;border-color:rgba(77,213,138,.28)!important}.v2-manage{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.v2-privacy{font-size:11px;color:var(--mu);line-height:1.45;text-align:center;margin:14px 12px 0}
.v2-diary-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v2-diary-card{min-height:126px;padding:15px!important;display:flex;flex-direction:column;justify-content:space-between}.v2-diary-card .emo{font-size:24px}.v2-diary-card b{font-size:15px}.v2-diary-card p{font-size:11px;color:var(--mu);line-height:1.35;margin:4px 0 0}.v2-diary-card .count{font-size:11px;color:var(--mu)}
.v2-skeleton{height:112px;border-radius:18px;background:linear-gradient(90deg,var(--surface) 25%,var(--surface-2) 50%,var(--surface) 75%);background-size:200% 100%;animation:v2sh 1.2s infinite;border:1px solid var(--line);margin-bottom:12px}@keyframes v2sh{to{background-position:-200% 0}}
@media (min-width:800px){#app{max-width:1120px}.screen-body,.v2-top-inner{max-width:1040px}.v2-home-desktop{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;align-items:start}.v2-home-side{position:sticky;top:78px}.v2-fab{right:max(24px,calc((100vw - 1040px)/2 + 24px))}}
@media (max-width:430px){.screen-body{padding-left:12px;padding-right:12px}.v2-top{padding-left:12px;padding-right:12px}.v2-title{font-size:27px}.v2-grid{gap:7px}.v2-stat{padding:11px 9px}.v2-stat b{font-size:15px}.v2-nav{width:100%;bottom:0}.v2-fab{right:14px}.v2-diary-grid{gap:8px}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* Hybrid compatibility: retain all existing section markup/content, restyle only. */
body{max-width:none!important;padding:0!important}
#app>.top,#app>.bnav{display:none!important}
.v2-pro.on{color:#2a1600;background:linear-gradient(135deg,var(--am),#ffd58b);border-color:transparent}
.screen-body>.h1:first-child{margin-top:3px!important}
@media(max-width:520px){.c3{gap:4px}.c3>div{min-width:0}.big{font-size:20px!important}.mid{font-size:16px!important}}

/* Today dashboard v1 — analytics instead of duplicated section menu */
.v2-home-dashboard{max-width:720px;margin:0 auto}.v2-hero-compact{padding-bottom:4px}.v2-hero-compact .v2-title{margin-bottom:5px}.v2-overview-card{padding:18px;border:1px solid var(--line);border-radius:22px;background:#1b2839;margin-bottom:14px;overflow:hidden;position:relative}.v2-overview-card:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-105px;top:-120px;background:rgba(110,168,255,.07);pointer-events:none}.v2-overview-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;position:relative;z-index:1}.v2-overview-top>div:first-child{display:flex;flex-direction:column;gap:2px}.v2-overview-top span{font-size:12px;color:#9fc3ff;text-transform:uppercase;letter-spacing:.07em;font-weight:750}.v2-overview-top b{font-size:18px;letter-spacing:-.025em}.v2-score-dot{width:52px;height:52px;border-radius:17px;background:rgba(110,168,255,.11);border:1px solid rgba(110,168,255,.22);display:grid;place-items:center;font-weight:800;color:#a9caff;position:relative;z-index:1}.v2-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative;z-index:1}.v2-kpi-grid button{min-width:0;text-align:left;border:1px solid rgba(93,117,148,.28);background:rgba(9,14,20,.32);border-radius:15px;padding:12px;color:var(--tx)}.v2-kpi-grid strong{display:block;font-size:22px;line-height:1.05;letter-spacing:-.035em}.v2-kpi-grid span{display:block;margin-top:5px;font-size:11px;line-height:1.25;color:var(--mu);text-transform:none;letter-spacing:0;font-weight:550}.v2-kpi-grid strong.bad,.v2-number-grid b.bad{color:#ff9d9d}.v2-home-block{margin:4px 0 15px}.v2-pride-list{border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.v2-pride-list>div{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;padding:12px 13px;border-bottom:1px solid var(--line)}.v2-pride-list>div:last-child{border-bottom:0}.v2-pride-list>div>span{width:26px;height:26px;border-radius:9px;background:rgba(77,213,138,.1);color:#7ee1a8;display:grid;place-items:center;font-weight:800;font-size:13px}.v2-pride-list p{margin:0;font-size:13px;line-height:1.4;color:var(--mu)}.v2-pride-list p b{color:var(--tx);font-weight:750}.v2-next-action{margin-top:16px!important}.v2-number-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.v2-number-grid>div{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:13px;min-width:0}.v2-number-grid span,.v2-number-grid small{display:block;color:var(--mu)}.v2-number-grid span{font-size:11px;margin-bottom:5px}.v2-number-grid b{display:block;font-size:21px;line-height:1.1;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-number-grid small{font-size:10.5px;margin-top:5px;line-height:1.25}.v2-number-grid b.good{color:#7ee1a8}.v2-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.v2-quick-actions button{border:1px solid var(--line);background:var(--surface);color:var(--tx);border-radius:16px;min-height:76px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.v2-quick-actions button .v2-icon{width:21px;height:21px;color:var(--bl)}.v2-quick-actions span{font-size:11px;font-weight:650}.v2-quick{padding-bottom:4px}
@media(min-width:800px){.v2-home-dashboard{display:grid;grid-template-columns:1.08fr .92fr;gap:14px;align-items:start}.v2-home-dashboard>.v2-hero{grid-column:1/-1}.v2-home-dashboard>.v2-overview-card{grid-column:1}.v2-home-dashboard>.v2-home-block:nth-of-type(3){grid-column:2;grid-row:2}.v2-home-dashboard>.v2-next-action{grid-column:1/-1}.v2-home-dashboard>.v2-home-block{margin-top:0}}

/* Today v1.2 — compact activity label + setup recommendations */
.v2-overview-inline{margin-bottom:14px}
.v2-overview-inline>div:first-child{flex-direction:row;align-items:center;gap:5px;flex-wrap:wrap}
.v2-overview-inline b{font-size:12px;color:var(--mu);font-weight:650;letter-spacing:0}
.v2-improve-list{border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}
.v2-improve-list>button{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--tx);padding:13px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left}
.v2-improve-list>button:last-child{border-bottom:0}
.v2-improve-icon{width:32px;height:32px;border-radius:10px;background:rgba(110,168,255,.10);display:grid;place-items:center;font-size:16px}
.v2-improve-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.v2-improve-copy b{font-size:13px;line-height:1.25}
.v2-improve-copy small{font-size:11px;line-height:1.35;color:var(--mu)}
.v2-improve-cta{font-size:10.5px;font-weight:700;color:#9fc3ff;white-space:nowrap}
.v2-improve-list>button.v2-improve-optional{grid-template-columns:minmax(0,1fr) auto;background:rgba(255,255,255,.018);opacity:.72;padding-top:11px;padding-bottom:11px}
.v2-improve-optional .v2-improve-copy b{font-size:12px;font-weight:650}
.v2-improve-optional .v2-improve-copy small{font-size:10.5px}
.v2-improve-optional .v2-improve-cta{color:var(--mu)}
@media(max-width:430px){.v2-improve-list>button{grid-template-columns:32px minmax(0,1fr);}.v2-improve-cta{grid-column:2;margin-top:3px}.v2-improve-list>button.v2-improve-optional{grid-template-columns:minmax(0,1fr) auto}.v2-improve-optional .v2-improve-cta{grid-column:2;margin-top:0}}


/* Today v1.3 — stable desktop dashboard + clearer onboarding priorities */
@media (min-width:900px){
  #app{max-width:none}
  .screen-body,.v2-top-inner{max-width:1120px}
  .screen-body{padding:18px 24px 120px}
  .v2-home-dashboard{
    max-width:1120px;
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
    grid-template-areas:
      "hero hero"
      "overview improve"
      "action improve"
      "intelligence intelligence"
      "week week";
    column-gap:24px;
    row-gap:18px;
    align-items:start;
    margin:0 auto;
  }
  .v2-home-dashboard>.v2-hero{grid-area:hero;padding:6px 2px 2px}
  .v2-home-dashboard>.v2-overview-card{grid-area:overview;margin:0}
  .v2-home-dashboard>.v2-pride-block{grid-area:pride;margin:0}
  .v2-home-dashboard>.v2-improve-block{grid-area:improve;margin:0}
  .v2-home-dashboard>.v2-next-action{grid-area:action;margin:0!important}
  .v2-home-dashboard>.gi-wrap{grid-area:intelligence;margin:0}
  .v2-home-dashboard>.v2-week-block{grid-area:week;margin:0}
  .v2-home-dashboard.v2-intelligence-new{grid-template-areas:
    "hero hero"
    "intelligence intelligence"
    "overview improve"
    "action improve"
    "week week"}
  .v2-home-dashboard .v2-section-head{margin:0 2px 10px}
  .v2-overview-card{padding:20px}
  .v2-kpi-grid{gap:10px}
  .v2-kpi-grid button{padding:15px}
  .v2-kpi-grid strong{font-size:26px}
  .v2-improve-list>button{padding:16px 15px;grid-template-columns:38px minmax(0,1fr) auto;gap:12px}
  .v2-improve-icon{width:36px;height:36px}
  .v2-improve-copy b{font-size:14px}
  .v2-improve-copy small{font-size:12px}
  .v2-next-action{min-height:0}
  .v2-nav{width:100%;bottom:0}
}
@media (min-width:900px) and (max-width:1100px){
  .v2-home-dashboard{grid-template-columns:1fr 1fr;column-gap:16px}
  .screen-body,.v2-top-inner{max-width:960px}
}

/* Finance polish v1: stronger transaction CTAs + smoother chart presentation */
.v2-fin-main-actions{display:grid;grid-template-columns:1fr .82fr 1fr;gap:9px;margin:2px 0 12px}
.v2-fin-action{min-width:0;min-height:58px;border-radius:17px;border:1px solid rgba(93,117,148,.28);display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 9px;font-size:14px;font-weight:740;letter-spacing:-.01em;transition:transform .12s ease,filter .12s ease,border-color .12s ease,background .12s ease,color .12s ease;background:rgba(17,24,34,.72);color:#dce6f5;backdrop-filter:blur(8px)}
.v2-fin-action:active{transform:scale(.975)}
.v2-fin-action-icon{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;font-size:18px;font-weight:500;line-height:1;background:rgba(255,255,255,.05)}
.v2-fin-income{background:linear-gradient(145deg,rgba(77,213,138,.10),rgba(77,213,138,.04));border-color:rgba(77,213,138,.24);color:#aee8c6;box-shadow:none}
.v2-fin-income .v2-fin-action-icon{background:rgba(77,213,138,.10);color:#7bdca2}
.v2-fin-expense{background:linear-gradient(145deg,rgba(240,114,114,.10),rgba(240,114,114,.04));border-color:rgba(240,114,114,.24);color:#f3b4b4;box-shadow:none}
.v2-fin-expense .v2-fin-action-icon{background:rgba(240,114,114,.10);color:#eea0a0}
.v2-fin-transfer{background:linear-gradient(145deg,rgba(110,168,255,.09),rgba(110,168,255,.04));border-color:rgba(110,168,255,.22);color:#c7d9f8}
.v2-fin-transfer .v2-fin-action-icon{color:#9fc5ff;background:rgba(110,168,255,.08)}
@media(max-width:430px){.v2-fin-main-actions{gap:7px}.v2-fin-action{min-height:56px;padding:8px 6px;gap:6px;font-size:13px}.v2-fin-action-icon{width:25px;height:25px;border-radius:9px;font-size:18px}}


/* Finance polish v2: cleaner CTAs + larger monthly totals */
.v2-fin-action{gap:0;font-size:15px;font-weight:730}
.v2-fin-summary-value{font-size:23px !important;line-height:1.1;font-weight:600;letter-spacing:-.025em}
@media(max-width:430px){.v2-fin-action{font-size:14px}.v2-fin-summary-value{font-size:21px !important}}


/* Diaries dashboard v1 */
.v2-diaries-home{padding-bottom:6px}
.v2-diary-head{margin:2px 2px 14px}
.v2-diary-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}
.v2-diary-home-card{min-height:178px;padding:20px 18px!important;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:left;border-radius:22px!important;background:var(--surface);box-shadow:0 10px 26px rgba(0,0,0,.12)!important}
.v2-diary-home-card .v2-diary-home-icon{font-size:32px;line-height:1;margin-bottom:18px}
.v2-diary-home-title{font-size:17px;font-weight:760;letter-spacing:-.02em;line-height:1.15;margin-bottom:10px}
.v2-diary-home-text{font-size:12.5px;line-height:1.38;color:var(--mu);margin-bottom:10px;max-width:22ch}
.v2-diary-home-meta{margin-top:auto;font-size:12.5px;line-height:1.3;color:var(--tx);font-weight:500}
.v2-diary-home-tools{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 10px}
.v2-diary-home-tool{border:1px solid var(--line);background:var(--surface);color:var(--tx);border-radius:18px;min-height:88px;padding:14px 15px;text-align:left;display:flex;flex-direction:column;gap:6px}
.v2-diary-home-tool span{font-size:22px;line-height:1}
.v2-diary-home-tool b{font-size:14px;line-height:1.2}
.v2-diary-home-tool small{font-size:11px;line-height:1.35;color:var(--mu)}
@media (min-width:900px){.v2-diaries-home{max-width:980px;margin:0 auto}.v2-diary-home-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.v2-diary-home-card{min-height:186px}.v2-diary-home-tools{grid-template-columns:repeat(2,minmax(0,280px));justify-content:start}}
@media (max-width:390px){.v2-diary-home-grid{gap:10px}.v2-diary-home-card{min-height:166px;padding:18px 14px!important}.v2-diary-home-title{font-size:15px}.v2-diary-home-text{font-size:11.5px}.v2-diary-home-tool{padding:13px 12px}}

/* Diary cards compact patch */
.v2-diary-home-grid{
  gap:10px !important;
}

.v2-diary-home-card{
  min-height:140px !important;
  padding:15px 14px !important;
  border-radius:18px !important;
}

.v2-diary-home-card .v2-diary-home-icon{
  font-size:27px !important;
  margin-bottom:11px !important;
}

.v2-diary-home-title{
  font-size:15px !important;
  line-height:1.15 !important;
  margin-bottom:7px !important;
  color:#f4f7fb !important;
  font-weight:700 !important;
}

.v2-diary-home-text{
  font-size:11.5px !important;
  line-height:1.3 !important;
  margin-bottom:6px !important;
  color:#8f9bac !important;
}

.v2-diary-home-meta{
  font-size:11.5px !important;
  line-height:1.2 !important;
  color:#f4f7fb !important;
  font-weight:500 !important;
}

@media(max-width:430px){
  .v2-diary-home-card{
    min-height:138px !important;
    padding:14px 13px !important;
  }
}


/* Diaries compact layout v3 */

.v2-diary-head{
  margin:0 4px 10px !important;
}

.v2-diary-head .h1{
  margin-bottom:3px !important;
}

.v2-diary-head .lbl{
  margin-bottom:10px !important;
}

.v2-diary-home-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  column-gap:8px !important;
  row-gap:8px !important;
  margin-bottom:12px !important;
}

.v2-diary-home-card{
  min-height:118px !important;
  padding:13px 13px !important;
  border-radius:17px !important;
  margin:0 !important;
}

.v2-diary-home-card .v2-diary-home-icon{
  font-size:24px !important;
  line-height:1 !important;
  margin-bottom:8px !important;
}

.v2-diary-home-title{
  font-size:14px !important;
  line-height:1.15 !important;
  margin-bottom:5px !important;
  color:#f4f7fb !important;
  font-weight:700 !important;
}

.v2-diary-home-text{
  font-size:11px !important;
  line-height:1.25 !important;
  margin-bottom:5px !important;
  color:#8f9bac !important;
}

.v2-diary-home-meta{
  margin-top:auto !important;
  font-size:11px !important;
  line-height:1.2 !important;
  color:#f4f7fb !important;
  font-weight:500 !important;
}

/* Моя история / Итоги месяца - именно кнопки */

.v2-diary-home-tools{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:8px !important;
  margin:8px 0 12px !important;
}

.v2-diary-home-tool{
  min-height:46px !important;
  height:46px !important;
  padding:0 12px !important;
  border-radius:14px !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  text-align:center !important;
  background:#1a2330 !important;
  border:1px solid #2b3748 !important;
}

.v2-diary-home-tool span{
  font-size:16px !important;
  line-height:1 !important;
}

.v2-diary-home-tool b{
  font-size:12px !important;
  font-weight:650 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.v2-diary-home-tool small{
  display:none !important;
}

@media(max-width:430px){
  .v2-diary-home-grid{
    column-gap:8px !important;
    row-gap:8px !important;
  }

  .v2-diary-home-card{
    min-height:116px !important;
    padding:12px 12px !important;
  }
}


/* Diary titles slightly larger */
.v2-diary-home-title{
  font-size:16px !important;
  line-height:1.16 !important;
  font-weight:700 !important;
  color:#f4f7fb !important;
}

@media (max-width:430px){
  .v2-diary-home-title{
    font-size:16px !important;
  }
}


/* Amber primary buttons */
.btn{
  background:linear-gradient(180deg,#f7c359 0%, #f0a52b 100%) !important;
  color:#2a1900 !important;
  box-shadow:0 10px 20px rgba(240,165,43,.18), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.btn:disabled{
  opacity:.5 !important;
  box-shadow:none !important;
}

/* Event kinds in 2 columns */
.ev-kind-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px !important;
}
.ev-kind-grid .chip{
  min-height:46px !important;
  padding:8px 12px !important;
  white-space:normal !important;
  line-height:1.2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
}
.ev-kind-manage{
  grid-column:1 / -1 !important;
  justify-content:center !important;
}

/* ===== Remove white outline from amber buttons ===== */
.btn{
  border:0 !important;
  outline:none !important;
  box-shadow:0 10px 22px rgba(240,165,43,.18) !important;
}

.btn:hover,
.btn:active,
.btn:focus,
.btn:focus-visible{
  border:0 !important;
  outline:none !important;
  box-shadow:0 10px 22px rgba(240,165,43,.18) !important;
}

/* ===== Unified style for all category chips ===== */
.chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

.chip{
  min-height:44px !important;
  padding:10px 16px !important;
  border-radius:16px !important;
  border:1px solid rgba(79,95,120,.45) !important;
  background:linear-gradient(180deg, rgba(39,47,66,.96) 0%, rgba(31,39,55,.96) 100%) !important;
  color:#d9e2ee !important;
  font-size:16px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}

.chip:hover,
.chip:active,
.chip:focus,
.chip:focus-visible{
  outline:none !important;
  box-shadow:none !important;
}

.chip.on{
  background:linear-gradient(180deg, rgba(28,88,63,.96) 0%, rgba(20,67,48,.96) 100%) !important;
  border-color:#39dc8f !important;
  color:#f5fbf8 !important;
  box-shadow:0 0 0 1px rgba(57,220,143,.10) !important;
}

.chip[disabled]{
  opacity:.55 !important;
}

/* Event kinds stay structured */
.ev-kind-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px !important;
}

.ev-kind-grid .chip{
  min-height:46px !important;
  white-space:normal !important;
  justify-content:flex-start !important;
}

.ev-kind-manage{
  grid-column:1 / -1 !important;
  justify-content:center !important;
}

.event-weekday-grid{
  display:grid !important;
  grid-template-columns:repeat(7,minmax(0,1fr)) !important;
  gap:6px !important;
}
.event-weekday-grid .chip{
  min-width:0 !important;
  min-height:40px !important;
  padding:8px 0 !important;
  border-radius:13px !important;
  font-size:14px !important;
  text-align:center !important;
}
.event-weekly-preview{
  margin-top:8px;
  font-size:13px;
  line-height:1.35;
  color:var(--mu);
}

/* A bit cleaner field spacing inside diary forms */
.field{
  margin-bottom:14px !important;
}

@media (max-width:430px){
  .chip{
    min-height:42px !important;
    padding:9px 14px !important;
    font-size:15px !important;
  }

  .chips{
    gap:8px !important;
  }
}


/* ===== Finance accounts: compact equal chips ===== */

.field.acc-grid .chips{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

.field.acc-grid .chip{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  min-height:48px !important;
  height:48px !important;
  padding:0 14px !important;
  border-radius:16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
  font-size:15px !important;
  line-height:1 !important;
}

.field.acc-grid .chip *{
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

.field.acc-grid .chip.on{
  box-shadow:0 0 0 1px rgba(57,220,143,.12) !important;
}

@media (max-width:430px){
  .field.acc-grid .chips{
    gap:8px !important;
  }

  .field.acc-grid .chip{
    min-height:46px !important;
    height:46px !important;
    padding:0 12px !important;
    font-size:14px !important;
  }
}


/* ===== Finance compact chips v2: accounts + categories ===== */

.field.acc-grid .chips,
.field.cat-grid .chips{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px !important;
  align-items:stretch !important;
}

.field.acc-grid .chip,
.field.cat-grid .chip{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  min-height:42px !important;
  height:42px !important;
  padding:0 12px !important;
  border-radius:14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
  font-size:13px !important;
  line-height:1 !important;
  gap:8px !important;
}

.field.acc-grid .chip *,
.field.cat-grid .chip *{
  min-width:0 !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

.field.acc-grid .chip.on,
.field.cat-grid .chip.on{
  box-shadow:0 0 0 1px rgba(57,220,143,.10) !important;
}

.field.acc-grid .chip .emoji,
.field.cat-grid .chip .emoji{
  flex:0 0 auto !important;
}

.field.acc-grid .chip .txt,
.field.cat-grid .chip .txt{
  min-width:0 !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

@media (max-width:430px){
  .field.acc-grid .chips,
  .field.cat-grid .chips{
    gap:7px !important;
  }

  .field.acc-grid .chip,
  .field.cat-grid .chip{
    min-height:40px !important;
    height:40px !important;
    padding:0 10px !important;
    border-radius:13px !important;
    font-size:12px !important;
    gap:7px !important;
  }
}


/* ===== Compact transaction calculator ===== */

.tx-calc-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  align-items:center !important;
}

.tx-calc-chips .chip{
  width:36px !important;
  min-width:36px !important;
  max-width:36px !important;
  height:34px !important;
  min-height:34px !important;

  padding:0 !important;
  border-radius:10px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  font-size:16px !important;
  line-height:1 !important;
  font-weight:500 !important;
}

.tx-calc-chips .tx-calc-all{
  width:auto !important;
  min-width:auto !important;
  max-width:none !important;
  padding:0 11px !important;

  font-size:12px !important;
  white-space:nowrap !important;
}

@media(max-width:430px){
  .tx-calc-chips{
    gap:5px !important;
  }

  .tx-calc-chips .chip{
    width:34px !important;
    min-width:34px !important;
    max-width:34px !important;
    height:32px !important;
    min-height:32px !important;
    border-radius:9px !important;
    font-size:15px !important;
  }

  .tx-calc-chips .tx-calc-all{
    width:auto !important;
    min-width:auto !important;
    max-width:none !important;
    padding:0 9px !important;
    font-size:11px !important;
  }
}


/* PRO micro alignment */
.v2-pro{
  height:42px !important;
  min-height:42px !important;
  padding:0 16px !important;
  line-height:1 !important;
}


/* PRO = same height as settings button */
.v2-pro{
  height:36px !important;
  min-height:36px !important;
  padding:0 12px !important;
  border-radius:12px !important;
  font-size:12px !important;
  line-height:1 !important;
}


/* PRO micro fix */
.v2-pro{
  height:35px !important;
  min-height:35px !important;
}


/* PRO micro fix 34px */
.v2-pro{
  height:34px !important;
  min-height:34px !important;
}


/* PRO final 35px */
.v2-pro{
  height:35px !important;
  min-height:35px !important;
}


/* ===== Finance home main actions: softer style ===== */

.fin-main-actions-row{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;
  min-height:54px !important;
  height:54px !important;
  padding:0 14px !important;
  border-radius:18px !important;
  border:1px solid rgba(72,88,112,.42) !important;
  box-shadow:none !important;
  font-size:17px !important;
  font-weight:700 !important;
  line-height:1 !important;
  color:#f2f6fb !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.fin-main-action::before{
  content:'' !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:4px !important;
  border-radius:18px 0 0 18px !important;
  opacity:.95 !important;
}

.fin-main-income{
  background:linear-gradient(180deg, rgba(24,44,38,.96) 0%, rgba(18,35,30,.98) 100%) !important;
  border-color:rgba(57,220,143,.34) !important;
}

.fin-main-income::before{
  background:#39dc8f !important;
}

.fin-main-transfer{
  background:linear-gradient(180deg, rgba(28,35,49,.96) 0%, rgba(22,29,41,.98) 100%) !important;
  border-color:rgba(104,140,255,.22) !important;
}

.fin-main-transfer::before{
  background:#6ea8ff !important;
}

.fin-main-expense{
  background:linear-gradient(180deg, rgba(53,31,37,.96) 0%, rgba(42,24,30,.98) 100%) !important;
  border-color:rgba(255,116,137,.28) !important;
}

.fin-main-expense::before{
  background:#ff7b91 !important;
}

.fin-main-action:hover,
.fin-main-action:active,
.fin-main-action:focus,
.fin-main-action:focus-visible{
  outline:none !important;
  box-shadow:none !important;
}

@media (max-width:430px){
  .fin-main-actions-row{
    gap:10px !important;
  }

  .fin-main-action{
    min-height:52px !important;
    height:52px !important;
    border-radius:16px !important;
    font-size:16px !important;
    padding:0 10px !important;
  }

  .fin-main-action::before{
    border-radius:16px 0 0 16px !important;
  }
}

/* ===== Finance actions final DJIVA style ===== */

.fin-main-action{
  height:52px !important;
  min-height:52px !important;
  border-radius:16px !important;
  background:linear-gradient(
    180deg,
    rgba(31,39,55,.98),
    rgba(25,32,45,.98)
  ) !important;
  border:1px solid rgba(79,95,120,.55) !important;
  box-shadow:none !important;
  font-size:16px !important;
  font-weight:700 !important;
  color:#eef3f8 !important;
}

.fin-main-action::before{
  display:none !important;
  content:none !important;
}

/* Доход */
.fin-main-income{
  background:linear-gradient(
    180deg,
    rgba(27,43,39,.98),
    rgba(23,36,33,.98)
  ) !important;
  border-color:rgba(57,220,143,.38) !important;
  color:#73e8ad !important;
}

/* Перевод */
.fin-main-transfer{
  background:linear-gradient(
    180deg,
    rgba(31,39,55,.98),
    rgba(25,32,45,.98)
  ) !important;
  border-color:rgba(79,95,120,.55) !important;
  color:#f1f4f8 !important;
}

/* Расход */
.fin-main-expense{
  background:linear-gradient(
    180deg,
    rgba(48,32,37,.98),
    rgba(38,27,31,.98)
  ) !important;
  border-color:rgba(255,112,126,.34) !important;
  color:#ff9aa4 !important;
}

.fin-main-action:active{
  transform:scale(.985) !important;
  opacity:.92 !important;
}


/* ===== Finance actions full-fill style ===== */

.fin-main-actions-row{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;
  height:52px !important;
  min-height:52px !important;
  padding:0 14px !important;
  border-radius:16px !important;
  border:1px solid rgba(255,255,255,.06) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 8px 18px rgba(0,0,0,.16) !important;
  font-size:16px !important;
  font-weight:700 !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#f3f7fb !important;
}

.fin-main-action::before{
  display:none !important;
  content:none !important;
}

/* Доход */
.fin-main-income{
  background:linear-gradient(
    180deg,
    rgba(36,103,76,.98) 0%,
    rgba(27,80,60,.98) 100%
  ) !important;
  border-color:rgba(90,235,168,.34) !important;
  color:#f6fffa !important;
}

/* Перевод */
.fin-main-transfer{
  background:linear-gradient(
    180deg,
    rgba(52,73,118,.98) 0%,
    rgba(38,56,95,.98) 100%
  ) !important;
  border-color:rgba(123,157,255,.26) !important;
  color:#f5f8ff !important;
}

/* Расход */
.fin-main-expense{
  background:linear-gradient(
    180deg,
    rgba(104,48,60,.98) 0%,
    rgba(79,37,47,.98) 100%
  ) !important;
  border-color:rgba(255,127,144,.28) !important;
  color:#fff5f7 !important;
}

.fin-main-action:hover,
.fin-main-action:focus,
.fin-main-action:focus-visible{
  outline:none !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 8px 18px rgba(0,0,0,.16) !important;
}

.fin-main-action:active{
  transform:scale(.985) !important;
  opacity:.96 !important;
}

@media (max-width:430px){
  .fin-main-actions-row{
    gap:10px !important;
  }

  .fin-main-action{
    height:50px !important;
    min-height:50px !important;
    border-radius:15px !important;
    font-size:15px !important;
    padding:0 10px !important;
  }
}


/* ===== Finance premium glossy actions ===== */

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;
  height:52px !important;
  min-height:52px !important;
  border-radius:16px !important;
  font-size:16px !important;
  font-weight:750 !important;
  letter-spacing:.1px !important;
  color:#fff !important;

  border:1px solid rgba(255,255,255,.14) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 7px 18px rgba(0,0,0,.22) !important;

  text-shadow:0 1px 1px rgba(0,0,0,.22) !important;
}

/* старую боковую полоску точно убираем */
.fin-main-action::before{
  display:none !important;
  content:none !important;
}

/* общий верхний глянцевый блик */
.fin-main-action::after{
  content:'' !important;
  display:block !important;
  position:absolute !important;
  left:1px !important;
  right:1px !important;
  top:1px !important;
  height:46% !important;

  border-radius:15px 15px 45% 45% !important;

  background:linear-gradient(
    180deg,
    rgba(255,255,255,.18) 0%,
    rgba(255,255,255,.07) 58%,
    rgba(255,255,255,0) 100%
  ) !important;

  pointer-events:none !important;
}

/* Доход */
.fin-main-income{
  background:linear-gradient(
    180deg,
    #318a67 0%,
    #287759 46%,
    #1d6048 100%
  ) !important;

  border-color:rgba(105,242,181,.42) !important;

  box-shadow:
    inset 0 1px 0 rgba(214,255,237,.22),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 7px 18px rgba(22,100,72,.20) !important;
}

/* Перевод */
.fin-main-transfer{
  background:linear-gradient(
    180deg,
    #4967a3 0%,
    #3c588e 46%,
    #304774 100%
  ) !important;

  border-color:rgba(143,176,255,.40) !important;

  box-shadow:
    inset 0 1px 0 rgba(220,230,255,.20),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 7px 18px rgba(43,76,143,.20) !important;
}

/* Расход */
.fin-main-expense{
  background:linear-gradient(
    180deg,
    #985064 0%,
    #854356 46%,
    #6c3445 100%
  ) !important;

  border-color:rgba(255,151,171,.40) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,225,232,.18),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 7px 18px rgba(126,53,72,.20) !important;
}

.fin-main-action:active{
  transform:translateY(1px) scale(.985) !important;

  box-shadow:
    inset 0 1px 2px rgba(0,0,0,.18),
    0 3px 8px rgba(0,0,0,.18) !important;
}

@media (max-width:430px){
  .fin-main-action{
    height:50px !important;
    min-height:50px !important;
    border-radius:15px !important;
    font-size:15px !important;
  }

  .fin-main-action::after{
    border-radius:14px 14px 40% 40% !important;
  }
}


/* ===== Finance actions: compact premium jewel style ===== */

.fin-main-actions-row{
  gap:8px !important;
}

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;

  height:44px !important;
  min-height:44px !important;

  padding:0 10px !important;
  border-radius:14px !important;

  font-size:15px !important;
  font-weight:800 !important;
  letter-spacing:.1px !important;
  line-height:1 !important;

  color:#fff !important;

  border:1px solid rgba(255,255,255,.18) !important;

  text-shadow:
    0 1px 2px rgba(0,0,0,.38) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -2px 4px rgba(0,0,0,.24),
    0 4px 10px rgba(0,0,0,.20) !important;
}

/* никаких старых полос */
.fin-main-action::before{
  display:none !important;
  content:none !important;
}

/* очень тонкий глянец, только сверху */
.fin-main-action::after{
  content:'' !important;
  position:absolute !important;

  left:3px !important;
  right:3px !important;
  top:2px !important;

  height:30% !important;

  border-radius:11px 11px 7px 7px !important;

  background:linear-gradient(
    180deg,
    rgba(255,255,255,.28) 0%,
    rgba(255,255,255,.08) 65%,
    rgba(255,255,255,0) 100%
  ) !important;

  pointer-events:none !important;
}

/* ДОХОД */
.fin-main-income{
  background:linear-gradient(
    180deg,
    #35a477 0%,
    #21845e 48%,
    #176247 100%
  ) !important;

  border-color:rgba(91,239,177,.62) !important;

  box-shadow:
    inset 0 1px 0 rgba(215,255,237,.28),
    inset 0 -2px 4px rgba(5,47,31,.35),
    0 4px 11px rgba(24,128,87,.22) !important;
}

/* ПЕРЕВОД */
.fin-main-transfer{
  background:linear-gradient(
    180deg,
    #5579c3 0%,
    #3f61a3 48%,
    #304a7e 100%
  ) !important;

  border-color:rgba(137,174,255,.60) !important;

  box-shadow:
    inset 0 1px 0 rgba(226,235,255,.26),
    inset 0 -2px 4px rgba(19,43,91,.38),
    0 4px 11px rgba(56,91,170,.22) !important;
}

/* РАСХОД */
.fin-main-expense{
  background:linear-gradient(
    180deg,
    #b15870 0%,
    #914357 48%,
    #713244 100%
  ) !important;

  border-color:rgba(255,146,170,.60) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,226,233,.25),
    inset 0 -2px 4px rgba(82,22,40,.38),
    0 4px 11px rgba(151,55,81,.22) !important;
}

.fin-main-action:active{
  transform:translateY(1px) scale(.98) !important;

  box-shadow:
    inset 0 2px 5px rgba(0,0,0,.25) !important;
}

@media (max-width:430px){
  .fin-main-actions-row{
    gap:7px !important;
  }

  .fin-main-action{
    height:43px !important;
    min-height:43px !important;
    border-radius:13px !important;
    font-size:14px !important;
  }
}


/* ===== Finance actions: soft premium fintech ===== */

.fin-main-actions-row{
  gap:9px !important;
}

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;

  height:47px !important;
  min-height:47px !important;

  padding:0 12px !important;
  border-radius:15px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  font-size:15px !important;
  font-weight:750 !important;
  letter-spacing:.1px !important;
  line-height:1 !important;

  color:#f8fafc !important;

  border:1px solid rgba(255,255,255,.10) !important;

  text-shadow:0 1px 1px rgba(0,0,0,.22) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 5px 12px rgba(0,0,0,.18) !important;
}

/* убираем прошлый сильный глянец */
.fin-main-action::before{
  display:none !important;
  content:none !important;
}

/* тонкая верхняя подсветка */
.fin-main-action::after{
  content:'' !important;
  position:absolute !important;
  left:10px !important;
  right:10px !important;
  top:1px !important;
  height:1px !important;

  border-radius:999px !important;

  background:linear-gradient(
    90deg,
    rgba(255,255,255,0),
    rgba(255,255,255,.32),
    rgba(255,255,255,0)
  ) !important;

  pointer-events:none !important;
}

/* ДОХОД */
.fin-main-income{
  background:linear-gradient(
    180deg,
    #276f56 0%,
    #205e49 52%,
    #194d3d 100%
  ) !important;

  border-color:rgba(79,210,156,.34) !important;

  box-shadow:
    inset 0 1px 0 rgba(208,255,235,.12),
    inset 0 -1px 0 rgba(0,0,0,.20),
    0 5px 12px rgba(21,94,68,.18) !important;
}

/* ПЕРЕВОД */
.fin-main-transfer{
  background:linear-gradient(
    180deg,
    #3a4f7a 0%,
    #314468 52%,
    #283852 100%
  ) !important;

  border-color:rgba(112,149,220,.30) !important;

  box-shadow:
    inset 0 1px 0 rgba(218,229,255,.11),
    inset 0 -1px 0 rgba(0,0,0,.20),
    0 5px 12px rgba(33,53,91,.18) !important;
}

/* РАСХОД */
.fin-main-expense{
  background:linear-gradient(
    180deg,
    #70414e 0%,
    #603743 52%,
    #4f2d37 100%
  ) !important;

  border-color:rgba(218,107,133,.30) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,220,229,.10),
    inset 0 -1px 0 rgba(0,0,0,.20),
    0 5px 12px rgba(94,38,54,.18) !important;
}

.fin-main-action:hover,
.fin-main-action:focus,
.fin-main-action:focus-visible{
  outline:none !important;
}

.fin-main-action:active{
  transform:translateY(1px) scale(.985) !important;

  box-shadow:
    inset 0 2px 4px rgba(0,0,0,.20),
    0 2px 5px rgba(0,0,0,.16) !important;
}

@media (max-width:430px){
  .fin-main-actions-row{
    gap:8px !important;
  }

  .fin-main-action{
    height:46px !important;
    min-height:46px !important;
    border-radius:14px !important;
    font-size:14px !important;
    padding:0 9px !important;
  }
}


/* ===== Finance actions: glossy capsule style ===== */

.fin-main-actions-row{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:9px !important;
}

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;

  height:46px !important;
  min-height:46px !important;
  padding:0 10px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  border-radius:18px !important;
  border:1px solid rgba(255,255,255,.20) !important;

  font-size:15px !important;
  font-weight:800 !important;
  letter-spacing:.1px !important;
  line-height:1 !important;
  color:#ffffff !important;

  text-shadow:0 1px 2px rgba(0,0,0,.28) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -2px 5px rgba(0,0,0,.22),
    0 4px 10px rgba(0,0,0,.18) !important;
}

/* убираем старые декоративные слои */
.fin-main-action::before{
  display:none !important;
  content:none !important;
}

/* верхний глянцевый блик */
.fin-main-action::after{
  content:'' !important;
  position:absolute !important;
  left:2px !important;
  right:2px !important;
  top:2px !important;
  height:44% !important;

  border-radius:16px 16px 10px 10px !important;

  background:linear-gradient(
    180deg,
    rgba(255,255,255,.30) 0%,
    rgba(255,255,255,.14) 48%,
    rgba(255,255,255,.04) 72%,
    rgba(255,255,255,0) 100%
  ) !important;

  pointer-events:none !important;
}

/* Доход */
.fin-main-income{
  background:linear-gradient(
    180deg,
    #49c78b 0%,
    #2ca56f 46%,
    #1c7e56 100%
  ) !important;
  border-color:rgba(150,255,211,.38) !important;
  box-shadow:
    inset 0 1px 0 rgba(230,255,242,.24),
    inset 0 -2px 5px rgba(7,66,43,.26),
    0 4px 10px rgba(24,126,86,.18) !important;
}

/* Перевод */
.fin-main-transfer{
  background:linear-gradient(
    180deg,
    #6ea4ff 0%,
    #4d7fe6 46%,
    #355fb8 100%
  ) !important;
  border-color:rgba(190,214,255,.34) !important;
  box-shadow:
    inset 0 1px 0 rgba(240,246,255,.24),
    inset 0 -2px 5px rgba(28,52,110,.28),
    0 4px 10px rgba(53,95,184,.18) !important;
}

/* Расход */
.fin-main-expense{
  background:linear-gradient(
    180deg,
    #ef7b97 0%,
    #cf5874 46%,
    #a23852 100%
  ) !important;
  border-color:rgba(255,206,217,.32) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,240,244,.22),
    inset 0 -2px 5px rgba(100,27,46,.28),
    0 4px 10px rgba(162,56,82,.18) !important;
}

.fin-main-action:hover,
.fin-main-action:focus,
.fin-main-action:focus-visible{
  outline:none !important;
}

.fin-main-action:active{
  transform:translateY(1px) scale(.985) !important;
  box-shadow:
    inset 0 2px 6px rgba(0,0,0,.22),
    0 2px 5px rgba(0,0,0,.14) !important;
}

@media (max-width:430px){
  .fin-main-actions-row{
    gap:8px !important;
  }

  .fin-main-action{
    height:45px !important;
    min-height:45px !important;
    padding:0 8px !important;
    border-radius:17px !important;
    font-size:14px !important;
  }

  .fin-main-action::after{
    border-radius:15px 15px 9px 9px !important;
  }
}


/* ===== Finance actions: bright lacquer 3D ===== */

.fin-main-actions-row{
  gap:9px !important;
}

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;

  height:46px !important;
  min-height:46px !important;
  padding:0 10px !important;

  border-radius:19px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  font-size:15px !important;
  font-weight:850 !important;
  letter-spacing:.1px !important;
  line-height:1 !important;
  color:#fff !important;

  border:2px solid rgba(255,255,255,.16) !important;

  text-shadow:
    0 1px 1px rgba(0,0,0,.55),
    0 0 2px rgba(255,255,255,.10) !important;

  box-shadow:
    inset 0 2px 1px rgba(255,255,255,.28),
    inset 0 -5px 8px rgba(0,0,0,.32),
    0 3px 7px rgba(0,0,0,.28) !important;
}

.fin-main-action::before{
  display:none !important;
  content:none !important;
}

/* сильный "лаковый" блик как на референсе */
.fin-main-action::after{
  content:'' !important;
  position:absolute !important;

  left:5px !important;
  right:5px !important;
  top:3px !important;

  height:38% !important;

  border-radius:15px 15px 10px 10px !important;

  background:linear-gradient(
    180deg,
    rgba(255,255,255,.48) 0%,
    rgba(255,255,255,.28) 35%,
    rgba(255,255,255,.10) 72%,
    rgba(255,255,255,0) 100%
  ) !important;

  pointer-events:none !important;
}

/* ДОХОД */
.fin-main-income{
  background:linear-gradient(
    180deg,
    #43df91 0%,
    #18b96b 38%,
    #079451 58%,
    #05733d 100%
  ) !important;

  border-color:#35d989 !important;

  box-shadow:
    inset 0 2px 1px rgba(220,255,239,.40),
    inset 0 -6px 9px rgba(0,70,39,.38),
    0 4px 9px rgba(0,121,69,.25) !important;
}

/* ПЕРЕВОД */
.fin-main-transfer{
  background:linear-gradient(
    180deg,
    #69aaff 0%,
    #3180f4 38%,
    #1764d6 58%,
    #114aa9 100%
  ) !important;

  border-color:#6da7ff !important;

  box-shadow:
    inset 0 2px 1px rgba(232,243,255,.40),
    inset 0 -6px 9px rgba(13,54,135,.42),
    0 4px 9px rgba(36,92,190,.27) !important;
}

/* РАСХОД */
.fin-main-expense{
  background:linear-gradient(
    180deg,
    #ff6d87 0%,
    #eb3558 38%,
    #c91d40 58%,
    #98152f 100%
  ) !important;

  border-color:#ff6b85 !important;

  box-shadow:
    inset 0 2px 1px rgba(255,225,232,.38),
    inset 0 -6px 9px rgba(104,7,30,.42),
    0 4px 9px rgba(178,24,57,.27) !important;
}

.fin-main-action:active{
  transform:translateY(1px) scale(.985) !important;

  box-shadow:
    inset 0 4px 8px rgba(0,0,0,.30),
    0 1px 3px rgba(0,0,0,.20) !important;
}

@media (max-width:430px){
  .fin-main-actions-row{
    gap:8px !important;
  }

  .fin-main-action{
    height:45px !important;
    min-height:45px !important;
    border-radius:18px !important;
    font-size:14px !important;
    padding:0 8px !important;
  }

  .fin-main-action::after{
    left:4px !important;
    right:4px !important;
    top:3px !important;
    border-radius:14px 14px 9px 9px !important;
  }
}


/* ===== Finance actions: more rectangular, no border ===== */

.fin-main-actions-row{
  gap:10px !important;
}

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;

  height:46px !important;
  min-height:46px !important;
  padding:0 10px !important;

  border-radius:10px !important;
  border:0 !important;
  outline:none !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  font-size:15px !important;
  font-weight:800 !important;
  letter-spacing:.1px !important;
  line-height:1 !important;
  color:#fff !important;

  text-shadow:0 1px 2px rgba(0,0,0,.25) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -3px 6px rgba(0,0,0,.20),
    0 4px 10px rgba(0,0,0,.16) !important;
}

.fin-main-action::before{
  display:none !important;
  content:none !important;
}

.fin-main-action::after{
  content:'' !important;
  position:absolute !important;
  left:2px !important;
  right:2px !important;
  top:2px !important;
  height:36% !important;
  border-radius:8px 8px 5px 5px !important;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.24) 0%,
    rgba(255,255,255,.10) 55%,
    rgba(255,255,255,0) 100%
  ) !important;
  pointer-events:none !important;
}

/* Доход */
.fin-main-income{
  background:linear-gradient(
    180deg,
    #47d294 0%,
    #27aa6e 52%,
    #1d7c53 100%
  ) !important;
}

/* Перевод */
.fin-main-transfer{
  background:linear-gradient(
    180deg,
    #73a8ff 0%,
    #4b7ee0 52%,
    #3158a8 100%
  ) !important;
}

/* Расход */
.fin-main-expense{
  background:linear-gradient(
    180deg,
    #f07f9d 0%,
    #cf5674 52%,
    #9f3550 100%
  ) !important;
}

.fin-main-action:hover,
.fin-main-action:focus,
.fin-main-action:focus-visible,
.fin-main-action:active{
  border:0 !important;
  outline:none !important;
}

.fin-main-action:active{
  transform:translateY(1px) scale(.985) !important;
  box-shadow:
    inset 0 2px 6px rgba(0,0,0,.22),
    0 2px 5px rgba(0,0,0,.14) !important;
}

@media (max-width:430px){
  .fin-main-actions-row{
    gap:8px !important;
  }

  .fin-main-action{
    height:44px !important;
    min-height:44px !important;
    border-radius:9px !important;
    font-size:14px !important;
    padding:0 8px !important;
  }

  .fin-main-action::after{
    border-radius:7px 7px 4px 4px !important;
  }
}


/* ===== Finance actions: -2px height ===== */
.fin-main-action{
  height:44px !important;
  min-height:44px !important;
}

@media (max-width:430px){
  .fin-main-action{
    height:42px !important;
    min-height:42px !important;
  }
}


/* ===== Finance: vivid accents ===== */

/* Доходы */
.fin-income,
.finance-income,
.income-value{
  color:#2BE77B !important;
}

/* Расходы */
.fin-expense,
.finance-expense,
.expense-value{
  color:#FF555F !important;
}

/* Разница / положительное */
.fin-difference,
.finance-difference,
.diff-positive{
  color:#34E889 !important;
}

/* Главные кнопки */
.fin-main-income{
  background:linear-gradient(
    180deg,
    #35E58B 0%,
    #20C96F 52%,
    #159955 100%
  ) !important;
  color:#08150E !important;
}

.fin-main-transfer{
  background:linear-gradient(
    180deg,
    #6B9BFF 0%,
    #4B74DB 52%,
    #3859AA 100%
  ) !important;
  color:#FFFFFF !important;
}

.fin-main-expense{
  background:linear-gradient(
    180deg,
    #FF6A72 0%,
    #F04650 52%,
    #C62E38 100%
  ) !important;
  color:#FFFFFF !important;
}

/* чуть сильнее контраст текста */
.fin-main-action{
  text-shadow:0 1px 1px rgba(0,0,0,.18) !important;
}

/* верхний мягкий блик */
.fin-main-action::after{
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.22) 0%,
    rgba(255,255,255,.08) 60%,
    rgba(255,255,255,0) 100%
  ) !important;
}


/* ===== Finance KPI vivid colors ===== */

.fin-kpi-label{
  color:#97A3B8 !important;
  opacity:1 !important;
}

.fin-kpi-value{
  font-weight:800 !important;
  letter-spacing:.2px !important;
}

.fin-kpi-value.fin-kpi-income{
  color:#35EA7E !important;
  text-shadow:0 0 10px rgba(53,234,126,.08) !important;
}

.fin-kpi-value.fin-kpi-expense{
  color:#FF5A66 !important;
  text-shadow:0 0 10px rgba(255,90,102,.08) !important;
}

.fin-kpi-value.fin-kpi-difference{
  color:#42EF92 !important;
  text-shadow:0 0 10px rgba(66,239,146,.08) !important;
}

/* ===== Finance buttons: vivid but almost flat ===== */

.fin-main-actions-row{
  gap:10px !important;
}

.fin-main-action{
  position:relative !important;
  overflow:hidden !important;

  height:42px !important;
  min-height:42px !important;
  padding:0 10px !important;

  border-radius:8px !important;
  border:0 !important;
  outline:none !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  font-size:15px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.1px !important;

  text-shadow:none !important;

  box-shadow:
    0 2px 6px rgba(0,0,0,.16) !important;
}

.fin-main-action::before,
.fin-main-action::after{
  display:none !important;
  content:none !important;
}

.fin-main-income{
  background:linear-gradient(
    180deg,
    #34E686 0%,
    #1FC96E 60%,
    #17A857 100%
  ) !important;
  color:#07140D !important;
}

.fin-main-transfer{
  background:linear-gradient(
    180deg,
    #6EA0FF 0%,
    #4A74DC 60%,
    #365CB2 100%
  ) !important;
  color:#FFFFFF !important;
}

.fin-main-expense{
  background:linear-gradient(
    180deg,
    #FF6B75 0%,
    #F04650 60%,
    #CC313B 100%
  ) !important;
  color:#FFFFFF !important;
}

.fin-main-action:hover,
.fin-main-action:focus,
.fin-main-action:focus-visible{
  outline:none !important;
  border:0 !important;
  box-shadow:
    0 2px 6px rgba(0,0,0,.16) !important;
}

.fin-main-action:active{
  transform:translateY(1px) !important;
  box-shadow:
    0 1px 3px rgba(0,0,0,.16) !important;
}

@media (max-width:430px){
  .fin-main-actions-row{
    gap:8px !important;
  }

  .fin-main-action{
    height:40px !important;
    min-height:40px !important;
    border-radius:8px !important;
    font-size:14px !important;
    padding:0 8px !important;
  }
}

/* ===== Finance KPI contrast fix without bold ===== */

.fin-kpi-label{
  color:#7F8AA0 !important;
  opacity:1 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}

.fin-kpi-item{
  position:relative !important;
}

.fin-kpi-value{
  position:relative !important;
  z-index:2 !important;
  opacity:1 !important;
  filter:none !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  text-shadow:
    0 1px 0 rgba(0,0,0,.28),
    0 0 10px rgba(255,255,255,.02) !important;
}

/* чуть ярче, но без жирности */
.fin-kpi-value.fin-kpi-income{
  color:#46F08F !important;
}

.fin-kpi-value.fin-kpi-expense{
  color:#FF6672 !important;
}

.fin-kpi-value.fin-kpi-difference{
  color:#52F39B !important;
}


/* ===== FINAL: единая палитра, плоские заливки, восстановленный контраст ===== */
/* Этот блок последний и перекрывает все предыдущие итерации fin-*.        */

/* --- Главные кнопки: доход / перевод / расход --- */
.fin-main-action,
.v2-fin-action{
  position:relative !important;
  overflow:hidden !important;
  height:44px !important;
  min-height:44px !important;
  padding:0 10px !important;
  border-radius:12px !important;
  border:0 !important;
  outline:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:.1px !important;
  text-shadow:none !important;
  box-shadow:0 1px 2px rgba(0,0,0,.22) !important;
  transition:filter .12s ease, transform .08s ease !important;
}

/* никаких бликов и градиентных наложений */
.fin-main-action::before,
.fin-main-action::after,
.v2-fin-action::before,
.v2-fin-action::after{
  display:none !important;
  content:none !important;
  background:none !important;
}

/* Доход — плоский насыщенный зелёный, тёмный текст (контраст 7.5:1) */
.fin-main-income,
.v2-fin-action.v2-fin-income{
  background:#22c55e !important;
  color:#06210f !important;
  border:0 !important;
}

/* Перевод — тинт акцентного синего приложения, не конкурирует с доходом/расходом */
.fin-main-transfer,
.v2-fin-action.v2-fin-transfer{
  background:rgba(110,168,255,.14) !important;
  border:1px solid rgba(110,168,255,.42) !important;
  color:#a8cbff !important;
}
.fin-main-transfer:active,
.v2-fin-action.v2-fin-transfer:active{
  background:rgba(110,168,255,.22) !important;
}

/* Альтернатива — полностью нейтральная кнопка, как «Аналитика».
   Раскомментируйте, если тинт покажется слишком тихим.
.fin-main-transfer,
.v2-fin-action.v2-fin-transfer{
  background:#2b3646 !important;
  border:1px solid #3a4860 !important;
  color:#f4f7fb !important;
}
*/

/* Расход — плоский красный, белый текст (контраст 4.8:1) */
.fin-main-expense,
.v2-fin-action.v2-fin-expense{
  background:#dc2626 !important;
  color:#ffffff !important;
  border:0 !important;
}

.fin-main-action:hover,
.fin-main-action:focus,
.fin-main-action:focus-visible{
  outline:none !important;
  border:0 !important;
  filter:brightness(1.06) !important;
  box-shadow:0 1px 2px rgba(0,0,0,.22) !important;
}

.fin-main-action:active,
.v2-fin-action:active{
  transform:translateY(1px) !important;
  filter:brightness(.94) !important;
  box-shadow:none !important;
}

/* --- KPI: доходы / расходы / разница --- */
.fin-kpi-label{
  color:var(--mu) !important;
  opacity:1 !important;
  font-weight:500 !important;
  font-size:13px !important;
  letter-spacing:0 !important;
}

.fin-kpi-value,
.v2-fin-summary-value{
  position:relative !important;
  z-index:2 !important;
  opacity:1 !important;
  filter:none !important;
  font-weight:600 !important;
  letter-spacing:-.02em !important;
  text-shadow:none !important;
}

.fin-kpi-value.fin-kpi-income{ color:var(--gr) !important; }
.fin-kpi-value.fin-kpi-expense{ color:var(--rd) !important; }
.fin-kpi-value.fin-kpi-difference{ color:var(--gr) !important; }

/* запасной вариант, если JS-разметчик не успел навесить классы */
.v2-fin-summary-value.pos{ color:var(--gr) !important; }
.v2-fin-summary-value.neg2{ color:var(--rd) !important; }

/* --- Второстепенные кнопки (Аналитика месяца, Добавить счёт) --- */
.btn2{
  background:var(--surface-3) !important;
  border:1px solid var(--line) !important;
  color:var(--tx) !important;
  font-weight:600 !important;
}
.btn2:active{ background:#2e3a4a !important; }

/* --- Карточки: плоские, с читаемой границей --- */
.card,.gcard{
  background:var(--surface) !important;
  border:1px solid var(--line) !important;
}

@media (max-width:430px){
  .fin-main-actions-row{ gap:8px !important; }
  .fin-main-action,
  .v2-fin-action{
    height:42px !important;
    min-height:42px !important;
    font-size:14px !important;
    padding:0 8px !important;
    border-radius:11px !important;
  }
  .fin-kpi-label{ font-size:12px !important; }
}

/* ===== Вес крупных денежных цифр ===== */
/* В index.html у .huge и .big стоит font-weight:300 (Light).
   Штрих получается тоньше, чем у KPI-цифр рядом, и крупное
   число читается тусклее при том же цвете. */
.huge{ font-weight:600 !important; }
.big{ font-weight:600 !important; }

/* ===== Вес крупных цифр (перенесено из патчей на сервере) ===== */
.huge{ font-weight:500 !important; }
.big{ font-weight:500 !important; }

/* ===== Главная кнопка: янтарь конфликтует с бейджем PRO ===== */
/* Янтарный в приложении означает «платное». Когда в него же
   покрашен обычный CTA, значение размывается. */
.btn{
  background:var(--tx) !important;
  color:#0b0f14 !important;
  border:0 !important;
  box-shadow:none !important;
  font-weight:650 !important;
}
.btn:active{ background:#dde3ea !important; }
.btn:disabled{ opacity:.45 !important; box-shadow:none !important; }

/* ===== Переключатель режима графика вместо голой стрелки ===== */
.fin-strip-toggle{
  position:absolute;
  top:-4px;
  padding:5px 9px;
  border:1px solid var(--line);
  background:var(--surface-3);
  color:var(--mu);
  border-radius:9px;
  font-size:11px;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  z-index:2;
}
.fin-strip-toggle:active{ background:#2e3a4a; }

/* Возврат янтарной главной кнопки */
.btn{
  background:linear-gradient(180deg,#f7c359 0%, #f0a52b 100%) !important;
  color:#2a1900 !important;
  box-shadow:0 10px 20px rgba(240,165,43,.18), inset 0 1px 0 rgba(255,255,255,.18) !important;
}

/* Стрелка переключения графика — в строке процентов */
.fin-strip-bar{ display:flex; margin:2px 0 6px; }
.fin-strip-toggle{
  position:static !important;
  padding:2px 6px !important;
  border:0 !important;
  background:transparent !important;
  color:var(--mu) !important;
  font-size:19px !important;
  line-height:1 !important;
}
.fin-strip-toggle:active{ color:var(--tx) !important; background:transparent !important; }

/* Стрелка переключения графика — в строке процентов */
.fin-strip-bar{ display:flex; margin:2px 0 6px; }
.fin-strip-toggle{
  position:static !important;
  padding:2px 6px !important;
  border:0 !important;
  background:transparent !important;
  color:var(--mu) !important;
  font-size:19px !important;
  line-height:1 !important;
}
.fin-strip-toggle:active{ color:var(--tx) !important; background:transparent !important; }

/* ===== FINAL SOFT FINANCE ACTIONS ===== */

.fin-main-income,
.v2-fin-action.v2-fin-income{
  background:rgba(34,197,94,.12) !important;
  border:1px solid rgba(34,197,94,.34) !important;
  color:#8ee6ad !important;
  box-shadow:none !important;
}

.fin-main-transfer,
.v2-fin-action.v2-fin-transfer{
  background:rgba(110,168,255,.10) !important;
  border:1px solid rgba(110,168,255,.30) !important;
  color:#a9caff !important;
  box-shadow:none !important;
}

.fin-main-expense,
.v2-fin-action.v2-fin-expense{
  background:rgba(239,68,68,.12) !important;
  border:1px solid rgba(239,68,68,.34) !important;
  color:#f3a0a0 !important;
  box-shadow:none !important;
}

.fin-main-action:hover,
.fin-main-action:focus,
.fin-main-action:focus-visible,
.v2-fin-action:hover,
.v2-fin-action:focus,
.v2-fin-action:focus-visible{
  filter:none !important;
  box-shadow:none !important;
}

.fin-main-action:active,
.v2-fin-action:active{
  transform:translateY(1px) !important;
  filter:brightness(.96) !important;
  box-shadow:none !important;
}


/* ===== FINAL WHITE TEXT FOR FINANCE ACTIONS ===== */

.fin-main-income,
.fin-main-transfer,
.fin-main-expense,
.v2-fin-action.v2-fin-income,
.v2-fin-action.v2-fin-transfer,
.v2-fin-action.v2-fin-expense{
  color:#ffffff !important;
}


/* ===== ANALYTICS KPI = MAIN FINANCE KPI SIZE ===== */

.fin-kpi-value{
  font-size:23px !important;
  line-height:1.1 !important;
  font-weight:600 !important;
  letter-spacing:-.025em !important;
}

@media(max-width:430px){
  .fin-kpi-value{
    font-size:21px !important;
  }
}


/* ===== ANALYTICS FULL AMOUNTS ===== */
.analytics-kpi-full > div{
  min-width:0 !important;
}

.analytics-full-value{
  white-space:nowrap !important;
  font-size:23px !important;
  line-height:1.1 !important;
  font-weight:600 !important;
  letter-spacing:-.025em !important;
}

@media(max-width:430px){
  .analytics-full-value{
    font-size:clamp(16px,5vw,21px) !important;
  }
}


/* ===== ANALYTICS KPI ADAPTIVE FINAL ===== */

.analytics-full-value{
  white-space:nowrap !important;
  font-size:23px !important;
  line-height:1.1 !important;
  font-weight:500 !important;
  letter-spacing:-.025em !important;
}

.analytics-short{
  font-size:21px !important;
}

@media(max-width:430px){
  .analytics-full-value{
    font-size:21px !important;
    font-weight:500 !important;
  }

  .analytics-short{
    font-size:20px !important;
  }
}


/* ===== MAIN FINANCE KPI ADAPTIVE ===== */

.finance-main-kpi > div{
  min-width:0 !important;
}

.finance-main-kpi-value{
  white-space:nowrap !important;
  font-weight:500 !important;
  font-size:23px !important;
  line-height:1.1 !important;
  letter-spacing:-.025em !important;
}

.finance-main-kpi-short{
  font-size:21px !important;
}

@media(max-width:430px){
  .finance-main-kpi-value{
    font-size:21px !important;
    font-weight:500 !important;
  }

  .finance-main-kpi-short{
    font-size:20px !important;
  }
}


/* ===== DESKTOP LAYOUT FINAL ===== */

@media (min-width:1100px){

  #app{
    max-width:none !important;
    padding-bottom:32px !important;
  }

  .screen-body,
  .v2-top-inner{
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .screen-body{
    padding:22px 28px 48px !important;
  }

  /* На desktop нижняя мобильная навигация не нужна */
  .v2-nav{
    display:none !important;
  }

  /* Today */
  .v2-home-dashboard{
    max-width:1180px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-areas:
      "hero hero"
      "overview improve"
      "action improve"
      "intelligence intelligence"
      "week week" !important;
    gap:22px 24px !important;
    align-items:start !important;
  }

  .v2-home-dashboard.v2-intelligence-new{
    grid-template-areas:
      "hero hero"
      "intelligence intelligence"
      "overview improve"
      "action improve"
      "week week" !important;
  }

  .v2-home-dashboard>.gi-wrap{
    grid-area:intelligence !important;
    margin:0 !important;
  }

  .v2-home-dashboard>.v2-hero{
    grid-area:hero !important;
    padding:4px 2px 0 !important;
  }

  .v2-home-dashboard>.v2-overview-card{
    grid-area:overview !important;
    margin:0 !important;
    height:100% !important;
  }

  .v2-home-dashboard>.v2-improve-block{
    grid-area:improve !important;
    margin:0 !important;
  }

  .v2-home-dashboard>.v2-pride-block{
    grid-area:pride !important;
    margin:0 !important;
  }

  .v2-home-dashboard>.v2-next-action{
    grid-area:action !important;
    margin:0 !important;
  }

  .v2-home-dashboard>.v2-week-block{
    grid-area:week !important;
    margin:0 !important;
  }

  .v2-overview-card{
    padding:22px !important;
  }

  .v2-kpi-grid{
    gap:12px !important;
  }

  .v2-kpi-grid button{
    padding:16px !important;
  }

  .v2-kpi-grid strong{
    font-size:27px !important;
  }

  .v2-improve-list>button{
    padding:16px 16px !important;
  }

  .v2-next-action{
    padding:22px !important;
  }

}


/* ===== DESKTOP TOP NAV ===== */

.v2-desktop-nav{
  display:none;
}

@media (min-width:1100px){

  .v2-top{
    padding-top:14px !important;
    padding-bottom:14px !important;
  }

  .v2-top-inner{
    gap:18px !important;
  }

  .v2-page{
    display:none !important;
  }

  .v2-desktop-nav{
    display:flex !important;
    flex:1;
    align-items:center;
    justify-content:center;
    gap:6px;
  }

  .v2-desktop-nav button{
    appearance:none;
    border:0;
    background:transparent;
    color:var(--mu);
    min-height:38px;
    padding:0 16px;
    border-radius:12px;
    font:inherit;
    font-size:14px;
    font-weight:500;
    cursor:pointer;
    transition:background .15s ease,color .15s ease;
  }

  .v2-desktop-nav button:hover{
    color:var(--tx);
    background:rgba(255,255,255,.04);
  }

  .v2-desktop-nav button.on{
    color:var(--tx);
    background:var(--surface-3);
  }

  .v2-tools{
    flex-shrink:0;
  }
}


/* ===== DESKTOP ALIGN RESULT + IMPROVEMENTS ===== */
@media (min-width:1100px){
  .v2-home-dashboard>.v2-improve-block{
    align-self:start !important;
    margin-top:0 !important;
  }

  .v2-home-dashboard>.v2-overview-card{
    align-self:start !important;
  }
}


/* ===== DESKTOP IMPROVEMENTS AS ONE CARD ===== */
@media (min-width:1100px){

  .v2-home-dashboard>.v2-improve-block{
    align-self:start !important;
    margin:0 !important;
    padding:20px !important;
    background:var(--surface) !important;
    border:1px solid var(--line) !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }

  .v2-improve-block .v2-section-head{
    margin:0 0 12px !important;
  }

  .v2-improve-block .v2-section-head h2{
    margin:0 !important;
  }

  .v2-improve-block .v2-improve-list{
    margin:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
  }

  .v2-improve-block .v2-improve-list>button{
    border-left:0 !important;
    border-right:0 !important;
  }

  .v2-improve-block .v2-improve-list>button:first-child{
    border-top:0 !important;
  }

  .v2-improve-block .v2-improve-list>button:last-child{
    border-bottom:0 !important;
  }
}


/* ===== DESKTOP DIARIES WIDTH FINAL ===== */
@media (min-width:1100px){

  .v2-diaries-home{
    max-width:1040px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .v2-diary-head{
    max-width:1040px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .v2-diary-home-grid,
  .v2-diary-home-tools{
    max-width:1040px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}


/* ===== DESKTOP DIARY CALENDAR WIDTH ===== */
@media (min-width:1100px){

  .v2-diaries-home > .card:first-child{
    max-width:1040px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

}


/* ===== DESKTOP DIARY CALENDAR FINAL WIDTH ===== */
@media (min-width:1100px){
  .v2-diary-calendar{
    max-width:1040px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
  }
}


/* Desktop content width polish
   Обычные экраны компактнее, дашборд Сегодня остаётся широким */
@media (min-width:900px){

  .screen-body{
    max-width:920px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .v2-top-inner{
    max-width:920px !important;
  }

  /* Главный экран Сегодня использует широкую рабочую область */
  .screen-body:has(.v2-home-dashboard){
    max-width:1120px !important;
  }

  .v2-top:has(+ .screen-body .v2-home-dashboard) .v2-top-inner{
    max-width:1120px !important;
  }

  /* Карточки на обычных экранах больше не выглядят длинными полосами */
  .screen-body > .card,
  .screen-body > .gcard{
    width:100%;
  }
}

/* Settings: compact desktop layout */
.settings-shell{
  width:100%;
}

.settings-start-select{
  position:relative;
  flex:0 0 auto;
}

.settings-start-select select{
  width:170px !important;
  min-width:170px !important;
  height:42px !important;
  min-height:42px !important;
  appearance:auto !important;
  -webkit-appearance:menulist !important;
  padding:7px 10px !important;
  border-radius:12px !important;
  font-size:14px !important;
  font-weight:600 !important;
}

@media (min-width:900px){
  .settings-shell{
    max-width:760px;
    margin:0 auto;
  }
}

@media (max-width:520px){
  .settings-start-select select{
    width:138px !important;
    min-width:138px !important;
  }
}

/* Diary cards: icon + title in one row */
.v2-diary-home-card{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  grid-template-rows:auto auto 1fr !important;
  align-items:center !important;
  column-gap:8px !important;
  min-height:102px !important;
}
.v2-diary-home-card .v2-diary-home-icon{
  grid-column:1 !important;
  grid-row:1 !important;
  margin:0 !important;
  font-size:23px !important;
}
.v2-diary-home-card .v2-diary-home-title{
  grid-column:2 !important;
  grid-row:1 !important;
  margin:0 !important;
}
.v2-diary-home-card .v2-diary-home-text,
.v2-diary-home-card .v2-diary-home-meta{
  grid-column:1 / -1 !important;
}
.v2-diary-home-card .v2-diary-home-text{
  margin-top:7px !important;
}
.v2-diary-home-card .v2-diary-home-meta{
  margin-top:0 !important;
  align-self:end !important;
}
@media(max-width:430px){
  .v2-diary-home-card{min-height:100px !important;padding:11px 12px !important}
}

/* Diary cards responsive text safety */
.v2-diary-home-card > *{min-width:0 !important;max-width:100% !important}
.v2-diary-home-card .v2-diary-home-title{
  font-size:clamp(13px,3.8vw,16px) !important;
  line-height:1.12 !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
.v2-diary-home-card .v2-diary-home-text,
.v2-diary-home-card .v2-diary-home-meta{
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
@media(max-width:380px){
  .v2-diary-home-card{column-gap:6px !important;padding:10px 10px !important}
  .v2-diary-home-card .v2-diary-home-icon{font-size:21px !important}
  .v2-diary-home-card .v2-diary-home-title{font-size:13px !important}
}

/* Diary manage preview */
.v2-diary-head-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px!important}
.v2-diary-manage-btn{border:1px solid #34455d;background:#182231;color:#c9d4e2;border-radius:12px;padding:8px 11px;font-size:12px;font-weight:700}
.v2-diary-manage{padding-bottom:10px}.v2-diary-manage-back{border:0;background:transparent;color:#8eb8ff;padding:4px 0 13px;font-weight:700}
.v2-diary-manage-list{display:grid;gap:8px}.v2-diary-manage-row{display:grid;grid-template-columns:22px 28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.v2-diary-manage-drag{color:#718096;font-size:18px;line-height:1}.v2-diary-manage-icon{font-size:20px}.v2-diary-manage-row b{font-size:14px}.v2-diary-manage-toggle{font-size:12px;color:#7ee1a8;font-weight:700}

/* Diary manage visibility controls */
.v2-diary-manage-row.is-hidden{opacity:.58}
.v2-diary-manage-toggle{border:1px solid rgba(126,225,168,.28);background:rgba(77,213,138,.08);border-radius:10px;padding:7px 9px;cursor:pointer}
.v2-diary-manage-row.is-hidden .v2-diary-manage-toggle{color:#9aa7b8;border-color:#3a4657;background:#141c27}

/* Diary manage drag + live card preview */
.v2-diary-manage-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
.v2-diary-manage-row{position:relative!important;min-height:112px!important;margin:0!important;padding:12px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-rows:auto auto 1fr!important;column-gap:8px!important;transition:opacity .15s,transform .15s!important}
.v2-diary-manage-row.is-hidden{opacity:.48!important}
.v2-diary-manage-row.is-dragging{opacity:.86!important;transform:scale(1.025)!important;z-index:5!important;box-shadow:0 12px 30px rgba(0,0,0,.28)!important}
.v2-diary-manage-row .v2-diary-home-icon{grid-column:1!important;grid-row:1!important;margin:0!important}.v2-diary-manage-row .v2-diary-home-title{grid-column:2!important;grid-row:1!important;margin:0!important}.v2-diary-manage-row .v2-diary-home-text{grid-column:1/-1!important;margin:7px 0 6px!important}
.v2-diary-manage-drag{position:absolute;right:8px;top:7px;width:28px;height:28px;border:0;background:transparent;color:#718096;font-size:21px;line-height:1;touch-action:none;cursor:grab;z-index:2}
.v2-diary-manage-toggle{grid-column:1/-1!important;justify-self:start;border:0;border-radius:9px;padding:5px 9px;background:rgba(77,213,138,.11);color:#7ee1a8;font-size:11px;font-weight:800}.v2-diary-manage-row.is-hidden .v2-diary-manage-toggle{background:rgba(255,255,255,.06);color:#a2adba}


/* DJIVA V2 appearance: light palette */
html[data-theme="light"]{
  --bg:#f4f6f9;--surface:#ffffff;--surface-2:#f7f9fc;--surface-3:#edf1f6;
  --line:#dce3ec;--tx:#18212e;--mu:#687789;--bl:#3478d4;--gr:#159447;
  --am:#d98200;--rd:#d94141;--vio:#795bd6;--shadow:0 12px 34px rgba(26,39,56,.08);
  color-scheme:light;
}
html[data-theme="light"] body{background:radial-gradient(circle at 50% -100px,rgba(52,120,212,.08),transparent 380px),var(--bg);color:var(--tx)}
html[data-theme="light"] .v2-top{background:linear-gradient(180deg,rgba(244,246,249,.98),rgba(244,246,249,.92) 78%,rgba(244,246,249,0))}
html[data-theme="light"] .v2-icon-btn,html[data-theme="light"] .v2-pro{background:rgba(255,255,255,.9)}
html[data-theme="light"] .v2-nav{background:rgba(255,255,255,.97);border-color:#d9e1eb;box-shadow:0 -8px 24px rgba(37,51,70,.10)}
html[data-theme="light"] input,html[data-theme="light"] textarea,html[data-theme="light"] select{background:#fff!important;border-color:#d7e0ea!important;color:var(--tx)!important}
html[data-theme="light"] .gp-card,html[data-theme="light"] .gi-card,html[data-theme="light"] .gi-signal,html[data-theme="light"] .gi-next,html[data-theme="light"] .gi-ai,html[data-theme="light"] .ghoro-focus{background:#fff!important;border-color:#dce3ec!important}
html[data-theme="light"] .gp-metrics div,html[data-theme="light"] .v2-overview-card,html[data-theme="light"] .v2-number-grid>div,html[data-theme="light"] .v2-pride-list,html[data-theme="light"] .v2-improve-list{background:#fff!important;border-color:#dce3ec!important}
html[data-theme="light"] .ghoro{background:linear-gradient(145deg,#f5f0ff,#fff)!important;border-color:#d8cdf7!important}
html[data-theme="light"] .gi-copy b,html[data-theme="light"] .gi-next strong,html[data-theme="light"] .ghoro-copy,html[data-theme="light"] .ghoro-focus span{color:var(--tx)!important}
html[data-theme="light"] .gi-copy span,html[data-theme="light"] .gp-today span,html[data-theme="light"] .gp-finance,html[data-theme="light"] .ghoro-note{color:var(--mu)!important}
html[data-theme="light"] .btn{color:#fff!important;background:#18212e!important;border-color:#18212e!important}
html[data-theme="light"] .btn2,html[data-theme="light"] .pill,html[data-theme="light"] .ico{background:var(--surface-3)!important;color:var(--tx)!important}
html[data-theme="light"] .v2-action,html[data-theme="light"] .v2-overview-card{background:#fff!important}
html[data-theme="light"] #toastBox{background:#263242!important;color:#fff!important}

/* Light theme coverage: finance, diaries, credits, tasks */
html[data-theme="light"] .v2-fin-action{background:#fff!important;color:var(--tx)!important;border-color:#dce3ec!important}
html[data-theme="light"] .v2-diary-home-card,html[data-theme="light"] .credit-card,html[data-theme="light"] .task-row{background:#fff!important;border-color:#dce3ec!important;box-shadow:0 8px 22px rgba(26,39,56,.06)!important}
html[data-theme="light"] .v2-diary-manage-btn{background:#f4f7fb!important;color:var(--tx)!important;border-color:#d6dee8!important}
html[data-theme="light"] .v2-diary-manage-row.is-hidden .v2-diary-manage-toggle{background:#eef2f6!important;color:#7b8898!important;border-color:#d8e0e9!important}
html[data-theme="light"] .ghoro-date select{background:#fff!important;color:var(--tx)!important;border-color:#d6dee8!important}
html[data-theme="light"] .credit-note{color:var(--mu)!important}
html[data-theme="light"] .task-add,html[data-theme="light"] .credit-save{color:#fff!important}
html[data-theme="light"] .fin-strip-toggle{background:#f4f7fb!important;color:var(--tx)!important;border-color:#d8e0e9!important}
html[data-theme="light"] .bar{background:#e5eaf0!important}

/* Light theme coverage: intelligence, horoscope, onboarding, privacy */
html[data-theme="light"] .gi-ai,html[data-theme="light"] .gi-next,html[data-theme="light"] .gi-consent{background:#fff!important;border-color:#dce3ec!important}
html[data-theme="light"] .gi-ai p,html[data-theme="light"] .gi-consent p{color:var(--mu)!important}
html[data-theme="light"] .ghoro-sheet{background:#fff!important;border-color:#dce3ec!important;color:var(--tx)!important}
html[data-theme="light"] .ghoro-focus{background:#f7f4ff!important}
html[data-theme="light"] .onb,html[data-theme="light"] .pc-gate{background:#f4f6f9!important;color:var(--tx)!important}
html[data-theme="light"] .onb-card,html[data-theme="light"] .onb-input,html[data-theme="light"] .onb-result,html[data-theme="light"] .pc-scroll,html[data-theme="light"] .pc-choice{background:#fff!important;color:var(--tx)!important;border-color:#dce3ec!important}
html[data-theme="light"] .onb-secondary{background:#edf1f6!important;color:var(--tx)!important}
html[data-theme="light"] .onb-sub,html[data-theme="light"] .onb-mini,html[data-theme="light"] .onb-result p,html[data-theme="light"] .pc-sub,html[data-theme="light"] .pc-optional{color:var(--mu)!important}
html[data-theme="light"] .onb-progress{background:#e5eaf0!important}


/* Light theme polish 2026-09-14: PRO, finance CTAs, diary readability */
html[data-theme="light"] .v2-pro{background:linear-gradient(135deg,#f5a524,#ffbf4d)!important;border-color:#f5a524!important;color:#2a1900!important;box-shadow:0 5px 14px rgba(245,165,36,.18)!important}
html[data-theme="light"] .v2-fin-income{background:linear-gradient(180deg,#1fb861,#159447)!important;border-color:#159447!important;color:#fff!important;box-shadow:0 6px 14px rgba(21,148,71,.18)!important}
html[data-theme="light"] .v2-fin-expense{background:linear-gradient(180deg,#ee4b55,#d94141)!important;border-color:#d94141!important;color:#fff!important;box-shadow:0 6px 14px rgba(217,65,65,.16)!important}
html[data-theme="light"] .v2-fin-transfer{background:linear-gradient(180deg,#5799ee,#3478d4)!important;border-color:#3478d4!important;color:#fff!important;box-shadow:0 6px 14px rgba(52,120,212,.16)!important}
html[data-theme="light"] .v2-diary-home-title{color:#18212e!important;font-weight:780!important}
html[data-theme="light"] .v2-diary-home-text{color:#5f6f82!important}
html[data-theme="light"] .v2-diary-home-meta{color:#43546a!important;font-weight:650!important}
html[data-theme="light"] .v2-diary-home-tool{color:#fff!important}
html[data-theme="light"] .v2-diary-home-tool b{color:#fff!important}

/* iOS Home Screen / standalone: keep app chrome below the system status bar.
   body padding is intentionally reset with !important above, so safe-area belongs on the sticky app header. */
@media (display-mode: standalone) and (max-width: 899px){
  .v2-top{
    padding-top:calc(12px + env(safe-area-inset-top, 0px)) !important;
  }
}
/* header compact standalone */
@media (display-mode: standalone) and (max-width:899px){.v2-top{transform:translateY(-12px);margin-bottom:-12px}}

/* Login standalone — single source of truth */
@media (display-mode:standalone) and (max-width:899px){
  .goalup-login-head{margin:4px 0 8px!important;transform:none!important}
  .goalup-login-head .h1{font-size:28px!important;line-height:1.05!important;margin:0 0 5px!important}
  .goalup-login-head .lbl{font-size:14px!important;line-height:1.25!important}
}

/* Дневники: первичная настройка и информеры */
.v2-diary-setup-callout{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px 12px;align-items:center;border:1px solid rgba(59,130,246,.28);background:linear-gradient(145deg,rgba(59,130,246,.09),var(--card))}
.v2-diary-setup-icon{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(59,130,246,.12);font-size:19px}
.v2-diary-setup-copy{display:flex;flex-direction:column;gap:3px}.v2-diary-setup-copy b{font-size:15px}.v2-diary-setup-copy span{font-size:12px;color:var(--mu);line-height:1.4}
.v2-diary-setup-btn{grid-column:1/-1;width:100%;margin-top:2px}
.v2-diary-manage-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}
.v2-diary-info-btn{border:1px solid var(--line);background:transparent;color:var(--mu);width:32px;height:32px;border-radius:10px;font-size:17px}
.v2-diary-check{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--tx);cursor:pointer}
.v2-diary-check input{width:18px;height:18px;margin:0;accent-color:var(--gr)}
.v2-diary-info{grid-column:1/-1;display:none;margin-top:2px;padding:10px 11px;border-radius:11px;background:var(--surface-2);color:var(--mu);font-size:12px;line-height:1.45}
.v2-diary-info.is-open{display:block}
.v2-diary-manage-done{margin-top:14px}
html[data-theme="light"] .v2-diary-setup-callout{background:linear-gradient(145deg,rgba(52,120,212,.08),#fff)}

/* Привычки */
.habits-goal-card{padding:14px 14px 10px}
.habits-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
.habits-head b{font-size:16px}.habits-list{display:grid;gap:8px}
.habit-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto 14px;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line);cursor:pointer}
.habit-open-arrow{color:var(--mu);font-size:20px;line-height:1}
.habit-row:first-child{border-top:0}
.habit-today{width:38px;height:38px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);font-size:18px;color:var(--tx)}
.habit-today.is-done{background:rgba(34,197,94,.14);border-color:rgba(34,197,94,.45);color:var(--gr);font-weight:800}
.habit-main{display:flex;flex-direction:column;gap:2px}.habit-main b{font-size:14px}.habit-main span{font-size:11px;color:var(--mu)}
.habit-week{display:flex;gap:4px}.habit-week i{width:7px;height:7px;border-radius:50%;background:var(--line)}.habit-week i.on{background:var(--gr)}
.habits-pop{max-width:430px;text-align:left}.habits-modal-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.habits-modal-head h2{margin:0 0 3px;font-size:22px}
.habit-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}
.habit-presets .chip{width:100%;min-width:0;min-height:52px;margin:0;padding:10px 12px;border-radius:15px;display:flex;align-items:center;justify-content:flex-start;gap:8px;text-align:left;white-space:normal;line-height:1.15;font-size:14px;font-weight:650}
.habit-presets .chip:active{transform:scale(.985)}
/* Responsive habit presets on Android */
.habits-pop{box-sizing:border-box;min-width:0}
.habit-presets .chip{box-sizing:border-box;gap:5px;padding:9px 8px;min-width:0;overflow-wrap:anywhere}
.habit-presets .habit-check,.habit-presets .habit-preset-emoji{flex:0 0 auto}
.habit-presets .habit-preset-name{flex:1 1 auto;min-width:0;font-size:clamp(11px,3.25vw,14px);line-height:1.2;overflow-wrap:anywhere}
.habit-create .btn{min-width:0;padding-inline:12px}
.habit-manage-row b{overflow-wrap:anywhere}
@media(max-width:390px){.habit-presets{gap:7px}.habit-presets .chip{padding:8px 6px;gap:4px}.habit-create{grid-template-columns:44px minmax(0,1fr) auto;gap:6px}.habit-create .btn{padding-inline:9px;font-size:13px}}
@media(max-width:340px){.habit-presets{grid-template-columns:1fr}.habit-presets .habit-preset-name{font-size:14px}}
.habit-presets .chip.is-selected{border-color:rgba(34,197,94,.5);background:rgba(34,197,94,.12);color:var(--tx)}
.habit-section-title{margin:16px 0 8px;font-size:12px;font-weight:750;letter-spacing:.02em;color:var(--mu);text-transform:uppercase}
.habit-section-own{margin-top:18px}
.habit-create{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:7px}
@media(max-width:390px){.habit-create{grid-template-columns:44px minmax(0,1fr) auto;gap:6px}}
.habit-done-btn{margin-top:16px}.habit-create input{min-width:0}.habit-create #habitEmoji{text-align:center;padding-left:6px;padding-right:6px}
.habit-manage-list{display:grid;gap:6px;margin-top:14px}.habit-manage-row{display:grid;grid-template-columns:28px minmax(0,1fr) 30px;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:12px}
.habit-manage-row b{font-size:13px}
/* Archived habits: reserve a real button column instead of the 30px icon column. */
.habit-manage-row:has(>button.btn){grid-template-columns:28px minmax(0,1fr) max-content;min-height:48px;height:auto;align-items:center}
.habit-manage-row>button.btn{width:auto;min-width:94px;max-width:100%;height:auto;min-height:36px;padding:8px 12px;white-space:nowrap;overflow-wrap:normal;word-break:normal;writing-mode:horizontal-tb;line-height:1.2}
.habit-manage-row>b{min-width:0;overflow-wrap:break-word}


/* Дневники: компактный выбор и всплывающий информер */
.v2-diary-manage-row{position:relative!important;padding-bottom:48px!important}
.v2-diary-title-line{display:block;min-width:0;padding-right:30px}
.v2-diary-title-line .v2-diary-home-title{min-width:0}
.v2-diary-title-line .v2-diary-info-btn{
  position:absolute;
  left:12px;
  bottom:12px;
  width:26px;
  height:26px;
  border-radius:8px;
  font-size:14px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.v2-diary-manage-row .v2-diary-check{position:absolute;right:12px;bottom:12px;margin:0;display:block}
.v2-diary-manage-row .v2-diary-check input{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:26px!important;
  min-width:26px!important;
  max-width:26px!important;
  height:26px!important;
  min-height:26px!important;
  max-height:26px!important;
  margin:0!important;
  padding:0!important;
  border-radius:7px!important;
  border:1.5px solid #5b6675!important;
  background:transparent!important;
  box-shadow:none!important;
  display:grid!important;
  place-content:center!important;
  cursor:pointer;
  flex:0 0 26px!important;
}
.v2-diary-manage-row .v2-diary-check input:checked{background:var(--gr);border-color:var(--gr)}
.v2-diary-manage-row .v2-diary-check input:checked::after{content:"✓";font-size:16px;line-height:1;color:#fff;font-weight:900;transform:translateY(-1px)}
.v2-diary-manage-row .v2-diary-home-text{padding-right:0!important;margin-bottom:0!important}
.v2-diary-manage-drag{
  width:26px!important;
  height:26px!important;
  right:8px!important;
  top:8px!important;
  font-size:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.v2-diary-info-modal{z-index:10020}
.v2-diary-info-pop{max-width:360px;text-align:left;padding:20px}
.v2-diary-info-pop-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.v2-diary-info-pop-title{display:flex;align-items:center;gap:9px;font-size:18px}
.v2-diary-info-pop-title span{font-size:22px}
.v2-diary-info-pop p{margin:0 0 18px;font-size:14px;line-height:1.55;color:var(--tx)}
html[data-theme="light"] .v2-diary-manage-row .v2-diary-check input{border-color:#a9b4c1}

/* Привычка: детальный экран */
.habit-detail-modal{z-index:10030}
.habit-detail-pop{max-width:400px;text-align:left;padding:20px}
.habit-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.habit-detail-title{font-size:21px;font-weight:800;line-height:1.2;margin-bottom:4px}
.habit-detail-today{width:100%;min-height:52px;border-radius:15px;border:1px solid var(--line);background:var(--surface-2);color:var(--tx);display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px}
.habit-detail-today span{font-size:20px}.habit-detail-today.is-done{border-color:rgba(34,197,94,.45);background:rgba(34,197,94,.12)}
.habit-detail-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:14px 0}
.habit-day{min-width:0;height:68px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--tx);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px}
.habit-day small{font-size:10px;color:var(--mu)}.habit-day strong{font-size:14px}.habit-day i{height:14px;font-style:normal;font-size:12px;color:var(--gr)}
.habit-day.is-today{border-color:rgba(110,168,255,.45)}.habit-day.is-done{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.35)}
.habit-detail-hint{font-size:12px;line-height:1.45;color:var(--mu);margin:0 0 14px}

/* Женский календарь */
.v2-cycle-dot{position:absolute;left:50%;bottom:4px;width:7px;height:7px;border-radius:50%;transform:translateX(-50%);background:#ef7fa7}
.v2-cycle-dot.is-predicted{background:transparent;border:1.5px solid #ef7fa7}
.v2-diary-day-marks{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:5px;height:7px;position:relative}
/* Center the event marker below the date even when the cycle placeholder exists. */
.v2-diary-day-marks .v2-event-dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.v2-diary-day-marks .v2-cycle-week-dot{position:absolute;left:calc(50% + 10px);top:50%;transform:translate(-50%,-50%)}
.v2-event-dot,.v2-cycle-week-dot{width:6px;height:6px;border-radius:50%;background:transparent}
.v2-event-dot.is-on{background:var(--am)}
.v2-cycle-week-dot.is-actual{background:#ef7fa7}.v2-cycle-week-dot.is-predicted{border:1.5px solid #ef7fa7}
.v2-cycle-day-summary{display:flex;align-items:center;justify-content:space-between;gap:10px}
.v2-cycle-day-summary>div{display:flex;flex-direction:column;gap:3px}.v2-cycle-day-summary span{font-weight:700}.v2-cycle-day-summary small{font-size:12px;color:var(--mu)}
.v2-day-actions{display:grid;gap:8px;margin-top:12px}
.cycle-modal{z-index:10035}.cycle-pop{max-width:420px;text-align:left;padding:20px;max-height:min(82vh,720px);overflow:auto}
.cycle-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.cycle-head h2{margin:0 0 3px;font-size:22px}
.cycle-summary-card{padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);display:flex;flex-direction:column;gap:4px;margin-bottom:14px}
.cycle-summary-card span,.cycle-summary-card small{font-size:12px;color:var(--mu)}.cycle-summary-card b{font-size:18px}
.cycle-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cycle-two-cols .field{position:relative}.cycle-two-cols small{position:absolute;right:10px;bottom:11px;color:var(--mu);font-size:11px}
.cycle-two-cols input{padding-right:38px!important}
.cycle-ai-row,.cycle-period-toggle{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:14px;margin:10px 0 16px;background:var(--surface-2)}
.cycle-ai-row input,.cycle-period-toggle input{appearance:none!important;-webkit-appearance:none!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;max-width:24px!important;max-height:24px!important;padding:0!important;margin:0!important;border:1.5px solid #5b6675!important;border-radius:7px!important;background:transparent!important;display:grid!important;place-content:center!important}
.cycle-ai-row input:checked,.cycle-period-toggle input:checked{background:var(--gr)!important;border-color:var(--gr)!important}
.cycle-ai-row input:checked::after,.cycle-period-toggle input:checked::after{content:"✓";font-size:15px;color:#fff;font-weight:900}
.cycle-ai-row span,.cycle-period-toggle span{display:flex;flex-direction:column;gap:3px}.cycle-ai-row b,.cycle-period-toggle b{font-size:14px}.cycle-ai-row small,.cycle-period-toggle small{font-size:11px;line-height:1.4;color:var(--mu)}
.cycle-chips,.cycle-symptoms{display:flex;gap:7px;flex-wrap:wrap}.cycle-chips .chip.on,.cycle-symptoms .chip.on{border-color:rgba(239,127,167,.5);background:rgba(239,127,167,.12);color:var(--tx)}
#cycleFlowWrap.is-hidden{display:none}

/* Женский календарь: мягкий onboarding */
.cycle-settings-pop{max-width:420px}
.cycle-settings-pop .cycle-head{margin-bottom:14px}
.cycle-settings-pop .cycle-head h2{font-size:22px}
.cycle-setup-block{padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);margin-bottom:10px}
.cycle-setup-kicker{font-size:14px;font-weight:760;line-height:1.3;color:var(--tx)}
.cycle-setup-note{font-size:11px;line-height:1.4;color:var(--mu);margin-top:7px}
.cycle-date-input{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  inline-size:100%!important;
  min-inline-size:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  margin-top:10px;
  padding-left:12px!important;
  padding-right:12px!important;
  text-align:center;
  font-size:17px!important;
  font-weight:650;
}
.cycle-setup-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.cycle-stepper{display:grid;grid-template-columns:32px 58px 32px;align-items:center;gap:5px}
.cycle-stepper button{width:32px;height:32px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--tx);font-size:20px;line-height:1;padding:0}
.cycle-stepper>div{text-align:center;display:flex;flex-direction:column;line-height:1}
.cycle-stepper strong{font-size:18px}.cycle-stepper span{font-size:10px;color:var(--mu);margin-top:3px}
.cycle-ai-option{width:100%;border:1px solid var(--line);border-radius:14px;background:transparent;color:var(--tx);display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:12px 13px;margin:2px 0 0}
.cycle-ai-option>span:first-child{display:flex;flex-direction:column;gap:2px}.cycle-ai-option b{font-size:13px}.cycle-ai-option small{font-size:11px;color:var(--mu)}
.cycle-ai-option>span:last-child{font-size:20px;color:var(--mu)}
.cycle-ai-details{display:none}.cycle-ai-details.is-open{display:block}.cycle-ai-details .cycle-ai-row{margin:8px 0 0}
.cycle-settings-done{margin-top:14px}

.cycle-setup-block{min-width:0!important;overflow:hidden}
.cycle-setup-block>*{min-width:0}
.cycle-wheel-field{display:grid;grid-template-columns:62px auto;align-items:center;gap:6px;min-width:0}
.cycle-wheel-field select{
  display:block!important;
  width:62px!important;
  min-width:62px!important;
  max-width:62px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0 8px!important;
  border-radius:12px!important;
  text-align:center;
  text-align-last:center;
  font-size:18px!important;
  font-weight:750!important;
  background:var(--card)!important;
  color:var(--tx)!important;
  border:1px solid var(--line)!important;
}
.cycle-wheel-field span{font-size:11px;color:var(--mu)}

/* Женский календарь: безопасное поле даты для iOS */
.cycle-date-shell{
  position:relative;
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  margin-top:10px;
  box-sizing:border-box;
  overflow:hidden;
  border-radius:16px;
}
.cycle-date-display{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:72px;
  padding:0 14px;
  box-sizing:border-box;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--card);
  color:var(--tx);
  text-align:center;
  font-size:17px;
  font-weight:650;
  line-height:1.2;
  overflow:hidden;
}
.cycle-date-native{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:16px!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer;
  z-index:2;
}

/* Календарь: явное раскрытие месяца */
.v2-cal-title,
.v2-cal-title-wrap{
  border:0;
  background:transparent;
  color:var(--tx);
  padding:0;
  margin:0;
  font-family:inherit;
  cursor:pointer;
}
.v2-cal-title{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font-size:15px;
  font-weight:700;
  line-height:1.2;
}
.v2-cal-title-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  min-width:0;
}
.v2-cal-title-wrap>.v2-cal-title{
  pointer-events:none;
}
.v2-cal-chevron{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--bl);
  font-size:15px;
  font-style:normal;
  font-weight:800;
  line-height:1;
  transform-origin:center;
}
.v2-cal-hint{
  display:block;
  max-width:230px;
  color:var(--mu);
  font-size:10.5px;
  font-weight:500;
  line-height:1.2;
  text-align:center;
  white-space:normal;
}

/* Женский календарь: ровные варианты выбора */
.cycle-choice-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
.cycle-choice-grid .chip{
  width:100%!important;
  min-width:0!important;
  min-height:52px!important;
  margin:0!important;
  padding:10px 8px!important;
  border-radius:15px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.15!important;
  font-size:14px!important;
  font-weight:650!important;
}
.cycle-symptoms{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
.cycle-symptoms .chip{
  width:100%!important;
  min-width:0!important;
  min-height:50px!important;
  margin:0!important;
  padding:10px 12px!important;
  border-radius:15px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.2!important;
  font-size:13.5px!important;
  font-weight:600!important;
}
.cycle-choice-grid .chip.on{
  border-color:var(--am)!important;
  background:rgba(240,165,43,.14)!important;
}
.cycle-symptoms .chip.on{
  border-color:rgba(239,127,167,.55)!important;
  background:rgba(239,127,167,.12)!important;
}
.cycle-note-field textarea{min-height:92px}
.cycle-day-done{margin-top:4px}

/* Женский календарь: компактный экран дня */
.cycle-day-pop{
  max-height:min(88vh,760px)!important;
  padding:16px!important;
  overflow:auto;
}
.cycle-day-pop .cycle-head{margin-bottom:8px!important}
.cycle-day-pop .cycle-head h2{font-size:21px!important;line-height:1.1}
.cycle-day-pop .cycle-head .lbl{margin-top:2px}
.cycle-day-pop .cycle-period-toggle{
  padding:9px 10px!important;
  margin:6px 0 8px!important;
  gap:8px!important;
  border-radius:13px!important;
}
.cycle-day-pop .cycle-period-toggle input{
  width:22px!important;height:22px!important;
  min-width:22px!important;min-height:22px!important;
  max-width:22px!important;max-height:22px!important;
}
.cycle-day-pop .cycle-period-toggle b{font-size:13.5px!important}
.cycle-day-pop .cycle-period-toggle small{font-size:10.5px!important;line-height:1.25!important}
.cycle-day-pop .habit-section-title{
  margin:10px 0 6px!important;
  font-size:11px!important;
  line-height:1.1!important;
}
.cycle-day-pop .cycle-choice-grid{gap:6px!important}
.cycle-day-pop .cycle-choice-grid .chip{
  min-height:40px!important;
  padding:7px 6px!important;
  border-radius:13px!important;
  font-size:13px!important;
}
.cycle-day-pop .cycle-symptoms{
  gap:6px!important;
}
.cycle-day-pop .cycle-symptoms .chip{
  min-height:40px!important;
  padding:7px 8px!important;
  border-radius:13px!important;
  font-size:12.5px!important;
  line-height:1.15!important;
}
.cycle-day-pop .cycle-note-field{
  margin:10px 0 0!important;
}
.cycle-day-pop .cycle-note-field .lbl{
  display:block;
  margin-bottom:5px;
  font-size:11px!important;
}
.cycle-day-pop .cycle-note-field textarea{
  min-height:54px!important;
  max-height:76px!important;
  padding:9px 11px!important;
  font-size:14px!important;
  line-height:1.3!important;
  resize:none;
}
.cycle-day-footer{
  position:sticky;
  bottom:-16px;
  margin:8px -16px -16px;
  padding:8px 16px 12px;
  background:linear-gradient(to bottom,rgba(25,28,35,0),var(--card) 28%);
  z-index:3;
}
.cycle-day-done{
  min-height:44px!important;
  margin:0!important;
}
html[data-theme="light"] .cycle-day-footer{
  background:linear-gradient(to bottom,rgba(255,255,255,0),var(--card) 28%);
}

/* Женский календарь: обзор и аналитика */
.cycle-overview-pop{max-width:430px}
.cycle-head-actions{display:flex;gap:6px}
.cycle-overview-hero{padding:18px;border:1px solid rgba(239,127,167,.25);border-radius:18px;background:linear-gradient(145deg,rgba(239,127,167,.10),var(--surface-2));text-align:center}
.cycle-overview-hero>small{display:block;font-size:11px;color:var(--mu);text-transform:uppercase;letter-spacing:.05em}
.cycle-overview-hero>strong{display:block;font-size:42px;line-height:1;margin:5px 0 8px}
.cycle-overview-countdown{font-size:19px;font-weight:780;line-height:1.2}
.cycle-overview-date{font-size:14px;margin-top:5px;color:var(--tx)}
.cycle-overview-hero>span{display:block;font-size:10.5px;color:var(--mu);margin-top:5px}
.cycle-overview-actions{display:grid;grid-template-columns:1.35fr 1fr;gap:8px;margin:10px 0}
.cycle-overview-actions>*{min-height:44px}
.cycle-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}
.cycle-kpi-grid>div{padding:11px 8px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);text-align:center;min-width:0}
.cycle-kpi-grid small,.cycle-kpi-grid span{display:block;font-size:9.5px;color:var(--mu);line-height:1.25}
.cycle-kpi-grid b{display:block;font-size:20px;margin:3px 0}

.cycle-overview-section{margin-top:14px}.cycle-overview-section h3{margin:0 0 8px;font-size:13px;color:var(--mu);text-transform:uppercase;letter-spacing:.03em}
.cycle-history-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}
.cycle-history-row:last-child{border-bottom:0}.cycle-history-row span{display:flex;flex-direction:column;gap:2px}.cycle-history-row b{font-size:13px}.cycle-history-row small{font-size:10.5px;color:var(--mu)}.cycle-history-row strong{font-size:13px}
.cycle-wellbeing-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.cycle-wellbeing-stats span{padding:10px 6px;border:1px solid var(--line);border-radius:13px;text-align:center;background:var(--surface-2)}
.cycle-wellbeing-stats b{display:block;font-size:16px;margin-top:2px}.cycle-wellbeing-stats small{display:block;font-size:9.5px;color:var(--mu)}
.cycle-frequent{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.cycle-frequent span{padding:9px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);font-size:11.5px}.cycle-frequent b{float:right;color:var(--mu)}
.cycle-empty-stat{padding:11px;border:1px dashed var(--line);border-radius:13px;color:var(--mu);font-size:11px;line-height:1.4}
.cycle-overview-row{width:100%;margin-top:14px;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:transparent;color:var(--tx);display:flex;align-items:center;justify-content:space-between;text-align:left}
.cycle-overview-row span{display:flex;flex-direction:column;gap:2px}.cycle-overview-row b{font-size:13px}.cycle-overview-row small{font-size:10.5px;color:var(--mu)}.cycle-overview-row i{font-size:20px;color:var(--mu);font-style:normal}
.cycle-reminder-row{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:14px;margin-bottom:8px;background:var(--surface-2)}
.cycle-reminder-row input{appearance:none!important;-webkit-appearance:none!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;padding:0!important;margin:0!important;border:1.5px solid #5b6675!important;border-radius:7px!important;background:transparent!important;display:grid!important;place-content:center!important}
.cycle-reminder-row input:checked{background:var(--gr)!important;border-color:var(--gr)!important}.cycle-reminder-row input:checked::after{content:"✓";font-size:15px;color:#fff;font-weight:900}
.cycle-reminder-row span{display:flex;flex-direction:column;gap:3px}.cycle-reminder-row b{font-size:13px}.cycle-reminder-row small{font-size:10.5px;color:var(--mu);line-height:1.35}

/* Мой день: компактная единая оценка */
.day-text-field{margin-bottom:12px!important}
.day-text-field textarea{
  min-height:108px!important;
  max-height:150px!important;
  resize:vertical;
}
.day-feeling-block{margin-top:2px}
.day-feeling-block>.lbl{margin-bottom:7px}
.day-feeling-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:5px;
}
.day-feeling{
  min-width:0;
  min-height:62px;
  padding:7px 3px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--surface-2);
  color:var(--tx);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  text-align:center;
}
.day-feeling span{font-size:21px;line-height:1}
.day-feeling small{
  font-size:10.5px;
  line-height:1.05;
  color:var(--mu);
  white-space:nowrap;
}
.day-feeling.on{
  border-color:rgba(110,168,255,.5);
  background:rgba(110,168,255,.12);
}
.day-feeling.on small{color:var(--tx);font-weight:700}
.day-save-row{margin-top:12px}
.day-save-row .btn{width:100%;min-height:44px}
@media(max-width:899px){
  .v2-diary-home-card.v2-diary-home-last-wide{grid-column:1 / -1}
}
@media(max-width:390px){
  .day-feeling-grid{gap:4px}
  .day-feeling{min-height:58px;padding:6px 2px}
  .day-feeling span{font-size:20px}
  .day-feeling small{font-size:9.5px}
}

/* Siberian Wellness professional diary */
.sw-wrap{display:grid;gap:12px}.sw-title{display:flex;justify-content:space-between;align-items:center;margin:2px 2px 4px}.sw-title span{font-size:12px;color:var(--mu);text-transform:uppercase;letter-spacing:.06em}.sw-title h1{margin:2px 0 0;font-size:27px}.sw-title>b{font-size:30px}.sw-welcome{text-align:left}.sw-welcome h1{margin:8px 0}.sw-welcome p{color:var(--mu);line-height:1.5}.sw-brand{font-weight:800;color:#5ea8ff}.sw-progress{overflow:hidden}.sw-progress-head{display:flex;justify-content:space-between;gap:14px}.sw-progress-head>div:last-child{text-align:right}.sw-progress-head small{display:block;color:var(--mu);font-size:11px}.sw-progress-head strong{display:block;font-size:15px;margin-top:2px}.sw-road{position:relative;display:flex;justify-content:space-between;align-items:flex-start;margin:22px 3px 18px;min-height:48px}.sw-road-line{position:absolute;left:5px;right:5px;top:7px;height:2px;background:var(--line)}.sw-road-node{position:relative;flex:1;min-width:0;text-align:center}.sw-road-node i{position:relative;z-index:1;display:block;width:10px;height:10px;border:2px solid var(--line);background:var(--card);border-radius:50%;margin:3px auto 0}.sw-road-node.done i{background:var(--gr);border-color:var(--gr)}.sw-road-node.current i{width:16px;height:16px;margin-top:0;background:var(--bl);border-color:var(--bl);box-shadow:0 0 0 6px rgba(59,130,246,.15)}.sw-road-node.next i{border-color:var(--am);animation:swPulse 1.3s infinite}.sw-road-node span{display:block;font-size:9px;line-height:1.1;margin-top:7px;color:var(--mu);min-height:20px}.sw-road-node.current span,.sw-road-node.next span{color:var(--tx);font-weight:700}@keyframes swPulse{50%{box-shadow:0 0 0 7px rgba(240,165,43,.08)}}
.sw-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.sw-stats>div{background:rgba(127,140,160,.08);border:1px solid var(--line);border-radius:13px;padding:10px 7px;text-align:center}.sw-stats strong{display:block;font-size:19px}.sw-stats span{display:block;color:var(--mu);font-size:10px;line-height:1.2;margin-top:2px}.sw-section-head,.sw-form-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sw-section-head h2{margin:0;font-size:18px}.sw-section-head span{display:block;color:var(--mu);font-size:11px;margin-top:2px}.sw-contact-block{display:grid;gap:8px}.sw-contact-list{display:grid;gap:8px}.sw-contact{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;margin:0;border:1px solid var(--line);color:var(--tx)}.sw-contact b{display:block}.sw-contact span{display:block;color:var(--mu);font-size:11px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:330px}.sw-contact i{font-style:normal;color:var(--mu);font-size:22px}.sw-empty{color:var(--mu);font-size:13px;text-align:center}.sw-goal-card{width:100%;border:1px solid rgba(59,130,246,.28);color:var(--tx);text-align:left}.sw-goal-top{display:flex;justify-content:space-between;gap:10px}.sw-goal-top span{font-weight:800}.sw-goal-top b{font-size:12px;color:var(--bl);text-align:right}.sw-goal-next{font-size:12px;color:var(--mu);margin:-2px 0 12px}.sw-business .field{margin-top:12px}.sw-form{margin-top:6px}@media(max-width:390px){.sw-road-node span{font-size:8px}.sw-stats span{font-size:9px}.sw-progress-head strong{font-size:13px}}

/* SW career track v2 — horizontal, swipeable, goal-focused */
.sw-progress-premium{position:relative;padding:18px 16px 16px;border:1px solid rgba(96,165,250,.28);background:linear-gradient(145deg,rgba(34,48,68,.96),rgba(20,29,43,.98));box-shadow:0 18px 48px rgba(0,0,0,.18);overflow:hidden}
html[data-theme="light"] .sw-progress-premium{background:linear-gradient(145deg,#fff,#f3f7fc);box-shadow:0 12px 32px rgba(31,55,86,.08)}
.sw-progress-premium:before{content:"";position:absolute;right:-60px;top:-80px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,rgba(78,148,255,.16),transparent 68%);pointer-events:none}
.sw-progress-head{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding-bottom:14px;border-bottom:1px solid rgba(127,140,160,.16)}
.sw-progress-head>div:last-child{text-align:right}.sw-progress-head small{display:block;color:var(--mu);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.sw-progress-head strong{display:block;font-size:16px;line-height:1.2;margin-top:4px}.sw-progress-head em{display:block;margin-top:4px;color:var(--mu);font-size:10px;font-style:normal}
.sw-road-shell{position:relative;margin:14px -16px 6px}.sw-road-hint{text-align:center;color:var(--mu);font-size:10px;letter-spacing:.02em;margin-bottom:7px;opacity:.8}.sw-road-scroll{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:3px calc(50% - 62px) 8px;overscroll-behavior-x:contain;touch-action:pan-x}.sw-road-scroll::-webkit-scrollbar{display:none}.sw-road-track{position:relative;display:flex;align-items:stretch;width:max-content}.sw-road-track:before{content:"";position:absolute;left:61px;right:61px;top:43px;height:3px;border-radius:99px;background:linear-gradient(90deg,rgba(34,197,94,.72),rgba(59,130,246,.58) 30%,rgba(240,165,43,.55) 42%,rgba(84,99,120,.28) 58%)}
.sw-stage{position:relative;width:124px;min-width:124px;padding:0 7px 8px;text-align:center;scroll-snap-align:center;scroll-snap-stop:always;opacity:.48;transition:transform .2s ease,opacity .2s ease}.sw-stage-kicker{height:20px;font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--mu)}.sw-stage-dot{height:38px;display:flex;align-items:center;justify-content:center}.sw-stage-dot i{position:relative;z-index:2;display:block;width:12px;height:12px;border-radius:50%;background:#172232;border:2px solid #44546a;box-shadow:0 0 0 4px rgba(68,84,106,.06)}.sw-stage-name{font-size:11px;line-height:1.15;font-weight:700;min-height:27px;display:flex;align-items:flex-start;justify-content:center;overflow-wrap:normal;word-break:normal}.sw-stage-points{font-size:9.5px;color:var(--mu);margin-top:4px}
.sw-stage.done{opacity:.65}.sw-stage.done .sw-stage-dot i{background:#22c55e;border-color:#22c55e}.sw-stage.done .sw-stage-kicker{color:#55cb7c}.sw-stage.current{opacity:1;transform:scale(1.05)}.sw-stage.current .sw-stage-dot i{width:24px;height:24px;border:5px solid rgba(255,255,255,.16);background:#5b9cff;box-shadow:0 0 0 7px rgba(91,156,255,.12),0 0 24px rgba(91,156,255,.45)}.sw-stage.current .sw-stage-kicker{color:#79b1ff}.sw-stage.current .sw-stage-name{font-size:12px}.sw-stage.next{opacity:1}.sw-stage.next .sw-stage-dot i{width:18px;height:18px;background:#172232;border:3px solid #f5a623;box-shadow:0 0 0 6px rgba(245,166,35,.10);animation:swNextPulse 1.6s ease-in-out infinite}.sw-stage.next .sw-stage-kicker{color:#f5ad35}.sw-stage.next .sw-stage-name{color:#fff}.sw-stage.future{opacity:.35}@keyframes swNextPulse{50%{box-shadow:0 0 0 11px rgba(245,166,35,.03),0 0 18px rgba(245,166,35,.2)}}
.sw-next-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 14px;padding:14px;border:1px solid rgba(245,166,35,.22);border-radius:16px;background:linear-gradient(145deg,rgba(245,166,35,.08),rgba(83,122,176,.08))}.sw-next-head{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sw-next-card small{display:block;color:var(--mu);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.sw-next-card strong{display:block;font-size:16px;line-height:1.2;margin-top:3px}.sw-next-card p{margin:5px 0 0;color:var(--mu);font-size:11px;line-height:1.4}.sw-next-percent{font-size:24px;font-weight:850;color:#f5ad35}.sw-next-bar{height:8px;margin-top:11px;border-radius:99px;background:rgba(127,140,160,.16);overflow:hidden}.sw-next-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4d92ff,#f5a623);box-shadow:0 0 16px rgba(91,156,255,.25)}.sw-next-foot{display:flex;justify-content:space-between;gap:10px;margin-top:7px;font-size:10px;color:var(--mu)}.sw-next-foot b{color:var(--tx)}.sw-next-arrow{font-size:28px;color:#f5ad35}.sw-next-card.is-max{border-color:rgba(34,197,94,.25);background:rgba(34,197,94,.07)}.sw-next-card.is-max>span{font-size:28px}.sw-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sw-stats>div{min-width:0;background:rgba(127,140,160,.07);border:1px solid rgba(127,140,160,.16);border-radius:15px;padding:10px 5px;text-align:center}.sw-stat-icon{font-size:14px!important;line-height:1!important;margin:0 0 4px!important;color:inherit!important}.sw-stats strong{display:block;font-size:20px;line-height:1}.sw-stats>div>span:last-child{display:block;color:var(--mu);font-size:9px;line-height:1.15;margin-top:5px}.sw-goal-card{width:100%;padding:16px;border:1px solid rgba(96,165,250,.25);background:linear-gradient(145deg,rgba(30,43,61,.98),rgba(18,27,40,.98));color:var(--tx);overflow:hidden}.sw-goal-open{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;border:0;border-bottom:1px solid rgba(127,140,160,.15);background:transparent;color:var(--tx);text-align:left}.sw-goal-open div{display:flex;flex-direction:column;gap:2px}.sw-goal-open span{font-size:14px;font-weight:800}.sw-goal-open b{font-size:12px;color:#79b1ff}.sw-goal-open i{font-size:10px;font-style:normal;color:var(--mu);white-space:nowrap}.sw-goal-focus{text-align:center;padding:13px 6px 0}.sw-goal-focus small{display:block;font-size:9px;color:var(--mu);text-transform:uppercase;letter-spacing:.07em}.sw-goal-focus strong{display:block;font-size:20px;line-height:1.15;margin-top:4px}.sw-goal-focus span{display:inline-block;margin-top:6px;padding:4px 8px;border-radius:999px;background:rgba(245,166,35,.1);color:#f5ad35;font-size:10px;font-weight:700}.sw-goal-card .sw-road-shell{margin-left:-16px;margin-right:-16px}.sw-goal-card .sw-next-card{margin-top:0}.sw-goal-card .sw-stats{margin-top:4px}
html[data-theme="light"] .sw-goal-card{background:linear-gradient(145deg,#fff,#f3f7fc)}html[data-theme="light"] .sw-stage.next .sw-stage-name{color:var(--tx)}html[data-theme="light"] .sw-stage-dot i{background:#fff}
@media(max-width:390px){.sw-stage{width:116px;min-width:116px}.sw-road-scroll{padding-left:calc(50% - 58px);padding-right:calc(50% - 58px)}.sw-road-track:before{left:57px;right:57px}.sw-progress-head strong{font-size:14px}.sw-stats strong{font-size:18px}.sw-stats>div>span:last-child{font-size:8.5px}.sw-next-foot{font-size:9px}}
@media(prefers-reduced-motion:reduce){.sw-stage.next .sw-stage-dot i{animation:none}.sw-stage{transition:none}.sw-road-scroll{scroll-behavior:auto}}
.sw-road-shell:before,.sw-road-shell:after{content:"";position:absolute;z-index:6;top:24px;bottom:0;width:24px;pointer-events:none}.sw-road-shell:before{left:0;background:linear-gradient(90deg,rgba(20,29,43,.96),transparent)}.sw-road-shell:after{right:0;background:linear-gradient(270deg,rgba(20,29,43,.96),transparent)}html[data-theme="light"] .sw-road-shell:before{background:linear-gradient(90deg,rgba(247,250,253,.98),transparent)}html[data-theme="light"] .sw-road-shell:after{background:linear-gradient(270deg,rgba(247,250,253,.98),transparent)}
.sw-road-scroll{padding-left:var(--sw-edge-pad,33.333%);padding-right:var(--sw-edge-pad,33.333%)}.sw-stage{width:var(--sw-stage-w,124px);min-width:var(--sw-stage-w,124px)}.sw-road-track:before{left:calc(var(--sw-stage-w,124px)/2);right:calc(var(--sw-stage-w,124px)/2)}
.sw-next-card{display:block}.sw-next-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.sw-next-head>div:first-child{min-width:0;flex:1}.sw-next-percent{flex:0 0 auto;white-space:nowrap}.sw-next-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}.sw-next-foot>span:first-child{min-width:0;line-height:1.25}.sw-next-foot>span:last-child{white-space:nowrap;text-align:right}.sw-next-copy{padding-right:34px;position:relative}.sw-next-arrow{position:absolute;right:14px;top:50%;transform:translateY(-50%)}
@media(max-width:390px){.sw-next-foot{grid-template-columns:1fr}.sw-next-foot>span:last-child{text-align:left}.sw-next-card strong{font-size:15px}.sw-next-percent{font-size:22px}}

/* SW referral links + mobile-safe contact date */
.sw-ref-card{padding:16px}.sw-ref-card .field{margin-top:12px}.sw-ref-edit{border:0;background:transparent;color:#78adff;font-size:11px;font-weight:700;padding:7px 0 7px 10px;white-space:nowrap}.sw-ref-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:13px}.sw-ref-actions button{min-width:0;border:1px solid var(--line);border-radius:15px;background:rgba(127,140,160,.07);color:var(--tx);padding:13px 8px;text-align:center}.sw-ref-actions button:active{transform:scale(.985)}.sw-ref-actions span{display:block;font-size:20px;line-height:1;margin-bottom:7px}.sw-ref-actions b{display:block;font-size:12px;line-height:1.15}.sw-ref-actions small{display:block;color:#78adff;font-size:9.5px;margin-top:5px}.sw-form .field{min-width:0;width:100%;overflow:hidden}.sw-form input,.sw-form select,.sw-form textarea{min-width:0;max-width:100%;width:100%;box-sizing:border-box}.sw-form input[type="date"]{display:block;-webkit-appearance:none;appearance:none;inline-size:100%;max-inline-size:100%;min-inline-size:0}.sw-form input[type="date"]::-webkit-date-and-time-value{text-align:left;min-width:0}.sw-form input[type="date"]::-webkit-calendar-picker-indicator{margin-left:auto}
@media(max-width:390px){.sw-ref-actions{grid-template-columns:1fr 1fr}.sw-ref-actions b{font-size:11px}.sw-ref-actions small{font-size:9px}}
.sw-reminder-hint{display:block;margin-top:7px;color:var(--mu);font-size:10px;line-height:1.35}.sw-date-field{overflow:hidden}.sw-date-field input[type="date"]{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}

/* Android phone contact picker */
.sw-contact-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.sw-phone-pick{border:1px solid rgba(96,165,250,.28);background:rgba(96,165,250,.08);color:var(--tx);border-radius:13px;padding:10px 12px;display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;white-space:nowrap}.sw-phone-pick span{font-size:15px;line-height:1}.sw-phone-pick:active{transform:scale(.98);background:rgba(96,165,250,.14)}
@media(max-width:390px){.sw-section-head{align-items:flex-start}.sw-contact-actions{max-width:62%;gap:6px}.sw-phone-pick,.sw-contact-actions .btn2{padding:9px 10px;font-size:10.5px}}

/* SW partner onboarding / lead flow */
.sw-gate-card{padding:20px 18px;text-align:center}.sw-gate-card .sw-brand{text-align:left}.sw-gate-card h1{font-size:24px;line-height:1.18;margin:12px 0 10px}.sw-gate-card p{font-size:14px;line-height:1.5;margin:0 0 16px}.sw-gate-icon{font-size:42px;line-height:1;margin:12px 0}.sw-gate-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.sw-gate-question{font-size:16px;font-weight:750;line-height:1.4;margin:18px 0 14px}.sw-gate-card>.btn+.btn2,.sw-gate-card>.btn2+.btn{margin-top:9px}.sw-gate-privacy{display:block;color:var(--mu);font-size:10px;line-height:1.4;margin-top:13px}.sw-gate-success{border:1px solid rgba(34,197,94,.22);background:linear-gradient(145deg,rgba(34,197,94,.07),rgba(96,165,250,.05))}.sw-gate-success .sw-gate-icon{width:54px;height:54px;margin:4px auto 12px;border-radius:50%;display:grid;place-items:center;background:rgba(34,197,94,.15);color:#56cf7c;font-size:28px;font-weight:900}.sw-gate-note{padding:11px 12px;border-radius:13px;background:rgba(127,140,160,.07);color:var(--mu);font-size:12px!important}

/* SW CRM-lite: person card, interaction history */
.sw-crm-contact>div{min-width:0;flex:1}.sw-crm-contact small,.sw-crm-contact em{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:1.35;margin-top:4px;color:var(--mu);font-style:normal}.sw-crm-contact em{color:#78adff}
.sw-crm-detail{display:grid;gap:10px}.sw-crm-person{padding:16px}.sw-crm-person-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sw-crm-person-head>div{min-width:0}.sw-crm-person h2{margin:0;font-size:21px}.sw-crm-person-head span,.sw-crm-person-head small{display:block;margin-top:4px;color:var(--mu);font-size:11px}
.sw-crm-next{margin:13px 0;padding:12px;border:1px solid rgba(96,165,250,.22);border-radius:14px;background:rgba(96,165,250,.06)}.sw-crm-next small{display:block;color:var(--mu);font-size:9.5px;text-transform:uppercase;letter-spacing:.05em}.sw-crm-next b{display:block;margin-top:3px;font-size:13px}.sw-crm-next span{display:block;margin-top:5px;color:#78adff;font-size:10px;font-weight:700}
.sw-crm-event-form .field{margin-top:12px}.sw-crm-history-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:6px 2px 0}.sw-crm-history-head h3{margin:0;font-size:16px}.sw-crm-history-head span{color:var(--mu);font-size:10px}
.sw-crm-history{display:grid;gap:8px}.sw-crm-event{border:1px solid var(--line);border-radius:14px;background:var(--card);overflow:hidden}.sw-crm-event summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px;cursor:pointer}.sw-crm-event summary::-webkit-details-marker{display:none}.sw-crm-event summary>span{min-width:0;flex:1}.sw-crm-event summary b{font-size:12px}.sw-crm-event summary small{margin-left:7px;color:var(--mu);font-size:10px}.sw-crm-event summary em{display:block;margin-top:4px;color:var(--mu);font-size:10.5px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sw-crm-event summary i{font-style:normal;color:var(--mu);font-size:20px;transition:transform .15s}.sw-crm-event[open] summary i{transform:rotate(90deg)}
.sw-crm-event-body{padding:0 12px 12px;border-top:1px solid rgba(127,140,160,.12)}.sw-crm-event-body p{margin:10px 0 0;font-size:12px;line-height:1.45;white-space:pre-wrap}.sw-crm-event-body>div{margin-top:10px;padding:9px 10px;border-radius:11px;background:rgba(96,165,250,.06)}.sw-crm-event-body small{display:block;color:var(--mu);font-size:9px;text-transform:uppercase}.sw-crm-event-body b{font-size:11px}.sw-crm-event-body span{font-size:10px;color:#78adff}.sw-crm-empty{padding:18px;text-align:center;color:var(--mu);font-size:12px;border:1px dashed var(--line);border-radius:14px}
@media(max-width:390px){.sw-crm-person h2{font-size:19px}.sw-crm-event summary{padding:11px}.sw-crm-contact small,.sw-crm-contact em{font-size:9.5px}}
/* SW CRM visual polish v2 */
.sw-crm-back{justify-self:start!important;width:auto!important;min-height:34px!important;padding:0 2px!important;margin:0 0 2px!important;font-size:13px!important;text-align:left!important}
.sw-crm-person{padding:17px!important;border:1px solid rgba(96,165,250,.24)!important;background:linear-gradient(145deg,rgba(28,40,57,.98),rgba(20,29,43,.98))!important;box-shadow:0 14px 34px rgba(0,0,0,.14)}
html[data-theme="light"] .sw-crm-person{background:linear-gradient(145deg,#fff,#f5f8fc)!important}
.sw-crm-person-top{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px}
.sw-crm-avatar{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-size:22px;font-weight:850;color:#eaf3ff;background:linear-gradient(145deg,#315f9a,#263b5a);border:1px solid rgba(122,177,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.sw-crm-identity{min-width:0}.sw-crm-identity h2{margin:0!important;font-size:22px!important;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-crm-status{display:inline-flex!important;align-items:center;gap:5px;margin-top:7px!important;padding:5px 9px;border-radius:999px;font-size:10px!important;font-weight:750;line-height:1!important;width:max-content;max-width:100%;white-space:nowrap}
.sw-crm-status.customer{color:#f8b538!important;background:rgba(245,166,35,.11);border:1px solid rgba(245,166,35,.16)}.sw-crm-status.partner{color:#67d58a!important;background:rgba(34,197,94,.10);border:1px solid rgba(34,197,94,.16)}.sw-crm-status.lead{color:#78adff!important;background:rgba(96,165,250,.10);border:1px solid rgba(96,165,250,.16)}
.sw-crm-edit{min-height:38px;border:1px solid rgba(96,165,250,.22);border-radius:12px;background:rgba(96,165,250,.07);color:#78adff;padding:0 10px;font-size:10.5px;font-weight:750;white-space:nowrap}.sw-crm-edit span{font-size:14px;vertical-align:-1px}.sw-crm-edit:active{transform:scale(.98);background:rgba(96,165,250,.12)}
.sw-crm-channel{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;margin:15px 0 14px;padding:10px 11px;border:1px solid rgba(127,140,160,.16);border-radius:14px;background:rgba(127,140,160,.055);color:var(--tx);text-decoration:none}
.sw-crm-channel-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(96,165,250,.12);color:#78adff;font-size:18px}.sw-crm-channel-copy{min-width:0}.sw-crm-channel-copy small{display:block;color:var(--mu);font-size:9px;text-transform:uppercase;letter-spacing:.055em}.sw-crm-channel-copy b{display:block;margin-top:3px;font-size:14px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;letter-spacing:.01em}.sw-crm-channel>i{font-style:normal;color:var(--mu);font-size:20px}
.sw-crm-add{min-height:49px!important;border-radius:14px!important;font-size:14px!important;box-shadow:0 8px 20px rgba(245,166,35,.10)!important}.sw-crm-next{margin:0 0 14px!important}
.sw-crm-history-head{margin:13px 4px 2px!important}.sw-crm-history-head h3{font-size:17px!important}.sw-crm-count{padding:4px 8px;border-radius:999px;background:rgba(127,140,160,.08);border:1px solid rgba(127,140,160,.12);font-size:9.5px!important}
.sw-crm-empty{min-height:155px;padding:24px 18px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;border-color:rgba(96,165,250,.24)!important;background:rgba(96,165,250,.025);color:var(--mu)!important}
.sw-crm-empty-icon{position:relative;width:58px;height:44px;margin-bottom:14px;border:2px solid #43536a;border-radius:15px;display:flex;align-items:center;justify-content:center;gap:5px}.sw-crm-empty-icon:after{content:"";position:absolute;left:14px;bottom:-8px;width:13px;height:13px;border-left:2px solid #43536a;border-bottom:2px solid #43536a;background:var(--bg);transform:skewY(-35deg)}.sw-crm-empty-icon i{width:6px;height:6px;border-radius:50%;background:#566983}
.sw-crm-empty>b{color:var(--tx);font-size:13px}.sw-crm-empty>span{display:block;max-width:280px;margin-top:7px;font-size:10.5px;line-height:1.45;text-align:center;color:var(--mu)}
@media(max-width:390px){.sw-crm-person{padding:15px!important}.sw-crm-person-top{grid-template-columns:46px minmax(0,1fr) auto;gap:10px}.sw-crm-avatar{width:46px;height:46px;border-radius:14px;font-size:19px}.sw-crm-identity h2{font-size:20px!important}.sw-crm-edit{padding:0 8px;font-size:10px}.sw-crm-status{font-size:9.5px!important}.sw-crm-channel{margin-top:13px}.sw-crm-empty{min-height:145px}}
/* SW CRM premium pass v3 */
.sw-crm-person{padding:14px!important}
.sw-crm-person-top{grid-template-columns:44px minmax(0,1fr) auto!important;gap:10px!important}
.sw-crm-avatar{width:44px!important;height:44px!important;border-radius:13px!important;font-size:18px!important}
.sw-crm-identity h2{font-size:20px!important;line-height:1.08!important}
.sw-crm-status{margin-top:5px!important;padding:4px 8px!important;font-size:9px!important}
.sw-crm-edit{min-height:34px!important;height:34px;padding:0 9px!important;border-radius:11px!important;font-size:9.5px!important;display:flex;align-items:center;gap:5px}
.sw-crm-edit>span:first-child{font-size:12px}
.sw-crm-channel{min-height:54px!important;margin:12px 0 10px!important;padding:7px 10px!important;grid-template-columns:34px minmax(0,1fr) auto!important;border-radius:13px!important}
.sw-crm-channel-icon{width:34px!important;height:34px!important;border-radius:10px!important;font-size:0!important;display:grid;place-items:center}.sw-crm-channel-icon svg{width:17px;height:17px;fill:currentColor}
.sw-crm-channel-copy small{font-size:8px!important;letter-spacing:.07em}.sw-crm-channel-copy b{font-size:13px!important;margin-top:2px!important}.sw-crm-channel>i{font-size:18px!important}
.sw-crm-profile-note{margin:0 0 10px;padding:10px 11px;border:1px solid rgba(245,166,35,.18);border-radius:13px;background:rgba(245,166,35,.055)}.sw-crm-profile-note small{display:block;color:var(--mu);font-size:8px;text-transform:uppercase;letter-spacing:.07em}.sw-crm-profile-note p{margin:4px 0 0;color:var(--tx);font-size:12px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
.sw-crm-next{min-height:54px;display:flex!important;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px!important;padding:9px 11px!important;border-radius:13px!important}
.sw-crm-next>div{min-width:0}.sw-crm-next small{font-size:8px!important}.sw-crm-next b{font-size:12.5px!important;margin-top:2px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-crm-next-date{flex:0 0 auto!important;margin:0!important;padding:5px 8px;border-radius:999px;background:rgba(96,165,250,.10);color:#78adff!important;font-size:9.5px!important;font-weight:750!important;white-space:nowrap}
.sw-crm-add{min-height:45px!important;height:45px!important;font-size:13px!important;border-radius:13px!important;box-shadow:none!important}
.sw-crm-history-head{margin-top:15px!important}.sw-crm-count{padding:4px 8px!important;font-size:9px!important}
.sw-crm-event{border-radius:13px!important}.sw-crm-event summary{padding:10px 12px!important}.sw-crm-event summary b{font-size:11.5px!important}.sw-crm-event summary small{font-size:9.5px!important}.sw-crm-event summary em{font-size:10px!important}
.sw-crm-sheet-overlay{position:fixed;z-index:10050;inset:0;display:flex;align-items:flex-end;justify-content:center;background:rgba(3,7,12,.62);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);padding:16px 12px 0;animation:swSheetFade .16s ease-out}
.sw-crm-sheet{position:relative;width:min(100%,540px);max-height:min(82dvh,720px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-sizing:border-box;padding:10px 16px calc(18px + env(safe-area-inset-bottom));border:1px solid rgba(96,165,250,.22);border-bottom:0;border-radius:22px 22px 0 0;background:linear-gradient(180deg,#182230,#111923);box-shadow:0 -18px 54px rgba(0,0,0,.38);animation:swSheetUp .2s ease-out}
html[data-theme="light"] .sw-crm-sheet{background:linear-gradient(180deg,#fff,#f6f8fb)}
.sw-crm-sheet-handle{width:38px;height:4px;margin:0 auto 13px;border-radius:99px;background:rgba(145,159,180,.35)}
.sw-crm-sheet .sw-form-head{margin-bottom:4px}.sw-crm-sheet .sw-form-head>div small{display:block;color:var(--mu);font-size:9px;text-transform:uppercase;letter-spacing:.07em}.sw-crm-sheet .sw-form-head>div b{display:block;margin-top:2px;font-size:18px}.sw-crm-sheet .sw-form-head>.ico{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;border-radius:11px!important}
.sw-crm-sheet .field{margin-top:11px!important}.sw-crm-sheet .field>.lbl{font-size:10px!important}.sw-crm-sheet input,.sw-crm-sheet select,.sw-crm-sheet textarea{font-size:14px!important;border-radius:12px!important}.sw-crm-sheet textarea{resize:none}
.sw-crm-sheet-actions{display:grid;gap:8px;margin-top:14px}.sw-crm-sheet-actions>.btn{min-height:46px!important}
.sw-crm-delete{min-height:40px;border:0;background:transparent;color:#ff7474;font-size:11px;font-weight:700}
@keyframes swSheetFade{from{background:rgba(3,7,12,0)}to{background:rgba(3,7,12,.62)}}@keyframes swSheetUp{from{transform:translateY(24px);opacity:.55}to{transform:none;opacity:1}}
@media(max-width:390px){.sw-crm-person{padding:13px!important}.sw-crm-person-top{grid-template-columns:42px minmax(0,1fr) auto!important;gap:9px!important}.sw-crm-avatar{width:42px!important;height:42px!important}.sw-crm-edit{padding:0 8px!important}.sw-crm-edit>span:last-child{display:none}.sw-crm-channel{margin-top:10px!important}.sw-crm-sheet{padding-left:14px;padding-right:14px;max-height:86dvh}}
@media(prefers-reduced-motion:reduce){.sw-crm-sheet-overlay,.sw-crm-sheet{animation:none}}
/* SW dashboard premium main — 2026-09-23 */
.sw-main{gap:10px!important}.sw-main-back{justify-self:start!important;width:auto!important;min-height:34px!important;padding:0 2px!important;margin:0!important;font-size:13px!important;text-align:left!important}.sw-main-title{margin:4px 3px 8px!important}.sw-main-title span{font-size:10.5px!important;letter-spacing:.095em!important}.sw-main-title h1{font-size:29px!important;letter-spacing:-.025em!important}.sw-main-title>b{font-size:31px!important}
.sw-dashboard-card{position:relative;padding:16px!important;border:1px solid rgba(92,157,255,.35)!important;border-radius:21px!important;background:radial-gradient(circle at 92% 4%,rgba(49,100,176,.18),transparent 34%),linear-gradient(150deg,rgba(24,36,53,.99),rgba(14,23,35,.99))!important;box-shadow:0 22px 58px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.025)!important;overflow:hidden!important}
.sw-dashboard-card:before{content:"";position:absolute;inset:-20% -20% auto 45%;height:260px;background:radial-gradient(circle,rgba(60,127,224,.12),transparent 68%);pointer-events:none}
html[data-theme="light"] .sw-dashboard-card{background:radial-gradient(circle at 92% 4%,rgba(49,100,176,.09),transparent 34%),linear-gradient(150deg,#fff,#f3f7fc)!important}
.sw-dashboard-card .sw-progress-head{padding-bottom:12px!important;border-bottom:1px solid rgba(130,150,178,.18)!important}.sw-dashboard-card .sw-progress-head small{font-size:9.5px!important;letter-spacing:.08em!important}.sw-dashboard-card .sw-progress-head strong{font-size:15.5px!important}.sw-dashboard-card .sw-progress-head em{font-size:9.5px!important}
.sw-dashboard-card .sw-road-shell{position:relative;margin:10px -16px 4px!important;padding-top:14px;overflow:hidden}.sw-dashboard-card .sw-road-shell:after{content:"";position:absolute;z-index:0;left:0;right:0;bottom:3px;height:94px;background:linear-gradient(180deg,transparent,rgba(9,18,31,.58)),linear-gradient(140deg,transparent 0 20%,rgba(35,58,86,.78) 20% 32%,transparent 32% 39%,rgba(24,43,69,.9) 39% 54%,transparent 54% 61%,rgba(77,57,31,.45) 61% 74%,transparent 74%);clip-path:polygon(0 100%,0 80%,12% 54%,21% 68%,35% 18%,46% 62%,59% 35%,70% 72%,83% 15%,100% 58%,100% 100%);pointer-events:none}
.sw-dashboard-card .sw-road-hint{position:relative;z-index:3;font-size:9.5px!important;margin-bottom:6px!important}.sw-dashboard-card .sw-road-scroll{position:relative;z-index:2}.sw-dashboard-card .sw-road-track:before{height:3px!important;background:linear-gradient(90deg,#22c55e 0 31%,#65a7ff 43% 57%,#ffc043 69% 100%)!important;box-shadow:0 0 15px rgba(70,154,255,.34)!important}
.sw-dashboard-card .sw-stage{opacity:.42!important}.sw-dashboard-card .sw-stage.done,.sw-dashboard-card .sw-stage.current,.sw-dashboard-card .sw-stage.next{opacity:1!important}.sw-dashboard-card .sw-stage-kicker{font-size:8.5px!important;font-weight:850!important;letter-spacing:.09em!important}.sw-dashboard-card .sw-stage.done .sw-stage-kicker{color:#45cf78!important}.sw-dashboard-card .sw-stage.current .sw-stage-kicker{color:#72adff!important}.sw-dashboard-card .sw-stage.next .sw-stage-kicker{color:#ffb12e!important}
.sw-dashboard-card .sw-stage-dot{height:44px!important}.sw-dashboard-card .sw-stage-dot i{display:grid!important;place-items:center!important;width:27px!important;height:27px!important;border-width:3px!important;margin-top:4px!important;color:white;font-style:normal;font-size:0!important}.sw-dashboard-card .sw-stage.done .sw-stage-dot i{background:#103e2a!important;border-color:#34d67b!important;box-shadow:0 0 0 5px rgba(34,197,94,.12),0 0 20px rgba(34,197,94,.28)!important}.sw-dashboard-card .sw-stage.done .sw-stage-dot i:after{content:"✓";font-size:13px;font-weight:900;color:#52e58e}
.sw-dashboard-card .sw-stage.current .sw-stage-dot i{width:38px!important;height:38px!important;margin-top:-2px!important;background:#376ea8!important;border-color:#8fc1ff!important;border-radius:50%!important;transform:none!important;box-shadow:0 0 0 7px rgba(91,156,255,.12),0 0 24px rgba(91,156,255,.45)!important}.sw-dashboard-card .sw-stage.current .sw-stage-dot i:after{content:"●";font-size:13px;color:#d7e8ff;transform:none!important}
.sw-dashboard-card .sw-stage.next .sw-stage-dot i{width:34px!important;height:34px!important;margin-top:0!important;background:#4a3210!important;border-color:#ffc043!important;border-radius:50%!important;transform:none!important;box-shadow:0 0 0 6px rgba(245,166,35,.10),0 0 21px rgba(245,166,35,.28)!important}.sw-dashboard-card .sw-stage.next .sw-stage-dot i:after{content:"♛";font-size:15px;color:#ffc043;transform:none!important}
.sw-dashboard-card .sw-stage-name{font-size:10.5px!important;min-height:26px!important;position:relative;z-index:3}.sw-dashboard-card .sw-stage.current .sw-stage-name,.sw-dashboard-card .sw-stage.next .sw-stage-name{font-size:11px!important}.sw-dashboard-card .sw-stage-points{display:none!important}
.sw-next-premium{position:relative;isolation:isolate;margin:8px 0 12px;padding:14px;border:1px solid rgba(255,178,42,.6);border-radius:18px;background:linear-gradient(145deg,rgba(45,38,27,.88),rgba(19,27,39,.98) 58%,rgba(71,49,18,.78));box-shadow:0 0 0 1px rgba(255,193,69,.08),0 10px 28px rgba(0,0,0,.2),inset 0 0 28px rgba(255,174,38,.045);overflow:hidden}
.sw-next-premium:after{content:"";position:absolute;inset:-1px;border-radius:18px;pointer-events:none;background:linear-gradient(120deg,transparent 0 34%,rgba(255,220,145,.18) 48%,transparent 58%);opacity:.45;mix-blend-mode:screen}
.sw-next-mountains{position:absolute;z-index:-1;right:-12%;bottom:-8px;width:76%;height:74%;opacity:.72;filter:saturate(.86)}.sw-next-premium-top{display:grid;grid-template-columns:minmax(0,1fr) 94px;gap:10px;align-items:center}.sw-next-premium-copy{min-width:0}.sw-next-premium-copy small{display:block;color:#95a2b4;font-size:9px;text-transform:uppercase;letter-spacing:.085em}.sw-next-premium-copy strong{display:block;margin-top:4px;font-size:17px;line-height:1.15}.sw-next-premium-copy p{margin:5px 0 0;color:#91a0b4;font-size:10px;line-height:1.35}
.sw-next-ring{--p:0;position:relative;width:88px;height:88px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ffc043 calc(var(--p)*1%),rgba(255,255,255,.10) 0);box-shadow:0 0 0 1px rgba(255,190,66,.42),0 0 24px rgba(255,171,34,.15)}.sw-next-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:radial-gradient(circle at 50% 35%,#172233,#0c121c 72%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}.sw-next-ring>div{position:relative;text-align:center}.sw-next-ring b{display:block;font-size:23px;line-height:1}.sw-next-ring small{display:block;margin-top:4px;color:#8f9caf;font-size:7.5px;text-transform:uppercase;letter-spacing:.08em}.sw-next-ring.is-max{background:linear-gradient(145deg,#2fc66c,#187944)}.sw-next-badge{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:rgba(255,180,42,.12);border:1px solid rgba(255,180,42,.35);color:#ffc043;font-size:22px}
.sw-next-value{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;margin-top:10px;padding:9px 10px;border-radius:13px;background:rgba(8,16,27,.55);border:1px solid rgba(109,135,169,.18)}.sw-next-value-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#ffc043;border:1px solid rgba(255,177,43,.2);background:rgba(255,177,43,.06);font-size:14px}.sw-next-value b{display:block;font-size:11px}.sw-next-value i{display:block;height:7px;margin-top:6px;background:rgba(124,142,166,.18);border-radius:999px;overflow:hidden}.sw-next-value i span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffc043,#ffe08a)}
.sw-next-bottom{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) minmax(112px,.8fr);gap:8px;align-items:center;margin-top:8px;padding-top:9px;border-top:1px solid rgba(130,150,178,.15)}.sw-next-target{font-size:29px;color:#ffc043;line-height:1}.sw-next-bottom small{display:block;color:#8f9caf;font-size:8.5px}.sw-next-bottom b{display:block;margin-top:2px;font-size:15px}.sw-next-motto{justify-self:end;padding:8px 10px;border-radius:11px;border:1px solid rgba(255,183,47,.22);background:rgba(255,175,33,.07);color:#f1b949;font-size:8.5px;font-weight:800;line-height:1.25;text-transform:uppercase;letter-spacing:.045em}.sw-next-motto i{font-style:normal;font-size:17px;vertical-align:-2px}
.sw-dashboard-card .sw-stats{margin-top:2px}.sw-dashboard-card .sw-stats>div{padding:9px 4px!important;border-radius:14px!important;background:rgba(127,140,160,.055)!important}.sw-dashboard-card .sw-stats strong{font-size:18px!important}.sw-dashboard-card .sw-stats>div>span:last-child{font-size:8.7px!important}
.sw-quick-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(127,140,160,.14)}.sw-quick-tools button{min-width:0;min-height:70px;display:grid;grid-template-columns:32px minmax(0,1fr) 12px;align-items:center;gap:7px;padding:9px 8px;border:1px solid rgba(97,125,164,.25);border-radius:14px;background:linear-gradient(145deg,rgba(31,45,64,.8),rgba(20,29,42,.9));color:var(--tx);text-align:left}.sw-quick-tools button:active{transform:scale(.985);background:rgba(55,83,122,.32)}.sw-quick-tools b{font-size:9.5px;line-height:1.18}.sw-quick-tools em{font-style:normal;color:#78adff;font-size:20px;text-align:right}.sw-tool-icon{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:rgba(93,154,255,.08);color:#72adff;font-size:22px;line-height:1}.sw-tool-icon.bars{display:flex;align-items:end;justify-content:center;gap:3px;padding:7px;box-sizing:border-box}.sw-tool-icon.bars i{display:block;width:4px;border-radius:2px;background:#65a7ff}.sw-tool-icon.bars i:nth-child(1){height:10px}.sw-tool-icon.bars i:nth-child(2){height:16px}.sw-tool-icon.bars i:nth-child(3){height:22px}.sw-tool-icon.link{font-size:25px;color:#8a78ff}.sw-tool-icon.people{font-size:21px;color:#65a7ff}
.sw-contacts-strip{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:8px;align-items:stretch;margin-top:8px;padding:8px;border:1px solid rgba(93,135,190,.22);border-radius:14px;background:rgba(9,17,29,.4)}.sw-contacts-open{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;background:transparent;color:var(--tx);text-align:left;padding:0 2px}.sw-contacts-open b{display:block;font-size:13px}.sw-contacts-open span{display:block;margin-top:2px;color:var(--mu);font-size:9.5px}.sw-contact-avatars{display:flex;align-items:center;padding-right:4px}.sw-contact-avatars i{width:25px;height:25px;margin-left:-5px;border-radius:50%;display:grid;place-items:center;border:1px solid #34445b;background:#101824;color:#61728a;font-style:normal;font-size:9px}.sw-contact-avatars i:first-child{margin-left:0}.sw-contact-avatars i.active{background:#16365f;color:#79b1ff;border-color:#4b86d3;box-shadow:0 0 0 3px rgba(75,134,211,.08)}.sw-contact-add{display:flex;align-items:center;justify-content:space-around;gap:4px;border:1px solid rgba(91,156,255,.65);border-radius:12px;background:linear-gradient(145deg,rgba(48,100,170,.34),rgba(20,46,82,.65));color:#78adff}.sw-contact-add span{font-size:24px;font-weight:500}.sw-contact-add i{font-style:normal;font-size:19px;color:#b4cae8}
.sw-tool-screen{gap:12px!important}.sw-tool-back{justify-self:start!important;width:auto!important;min-height:34px!important;padding:0 2px!important}.sw-tool-title{margin:4px 2px 2px}.sw-tool-title span{display:block;color:var(--mu);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.sw-tool-title h1{margin:3px 0 0;font-size:26px;line-height:1.08}.sw-business-panel{padding:16px!important}.sw-business-panel>p{margin:0 0 14px;color:var(--mu);font-size:11px;line-height:1.45}.sw-business-panel .field{margin-top:12px}.sw-business-panel .btn{margin-top:14px}
@media(max-width:390px){.sw-main-title h1{font-size:27px!important}.sw-dashboard-card{padding:14px!important}.sw-dashboard-card .sw-road-shell{margin-left:-14px!important;margin-right:-14px!important}.sw-next-premium{padding:12px}.sw-next-premium-top{grid-template-columns:minmax(0,1fr) 82px}.sw-next-ring{width:78px;height:78px}.sw-next-ring b{font-size:20px}.sw-next-bottom{grid-template-columns:30px minmax(0,1fr) minmax(104px,.8fr)}.sw-next-motto{font-size:7.8px}.sw-quick-tools button{grid-template-columns:28px minmax(0,1fr) 10px;gap:5px;padding:8px 6px}.sw-tool-icon{width:28px;height:28px}.sw-quick-tools b{font-size:8.5px}.sw-contacts-strip{grid-template-columns:minmax(0,1fr) 70px}}
/* SW next goal compact pass — 2026-09-24 */
.sw-next-premium-compact{padding:12px 13px!important;margin:7px 0 10px!important;min-height:0!important}
.sw-next-premium-compact .sw-next-mountains{right:-4%!important;bottom:-18px!important;width:66%!important;height:88%!important;opacity:.46!important}
.sw-next-compact-title{position:relative;z-index:2;min-width:0;padding-right:4px}.sw-next-compact-title small{display:block;color:#95a2b4;font-size:8.5px;text-transform:uppercase;letter-spacing:.085em}.sw-next-compact-title strong{display:block;margin-top:3px;font-size:16px;line-height:1.12;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-next-compact-row{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:10px;align-items:center;margin-top:8px}
.sw-next-value-compact{margin:0!important;padding:8px 9px!important;grid-template-columns:31px minmax(0,1fr)!important;gap:8px!important;min-height:50px!important;border-radius:12px!important}
.sw-next-value-compact .sw-next-value-icon{width:29px!important;height:29px!important;font-size:12px!important}.sw-next-value-compact b{font-size:10.5px!important}.sw-next-value-compact i{height:6px!important;margin-top:5px!important}
.sw-next-ring-compact{width:66px!important;height:66px!important;box-shadow:0 0 0 1px rgba(255,190,66,.38),0 0 18px rgba(255,171,34,.12)!important}.sw-next-ring-compact:before{inset:6px!important}.sw-next-ring-compact b{font-size:18px!important}.sw-next-ring-compact small{font-size:6.4px!important;margin-top:3px!important}
@media(max-width:390px){.sw-next-premium-compact{padding:11px!important}.sw-next-compact-title strong{font-size:15px}.sw-next-compact-row{grid-template-columns:minmax(0,1fr) 62px;gap:8px}.sw-next-ring-compact{width:60px!important;height:60px!important}.sw-next-ring-compact b{font-size:16px!important}.sw-next-value-compact{min-height:46px!important;padding:7px 8px!important;grid-template-columns:28px minmax(0,1fr)!important}.sw-next-value-compact .sw-next-value-icon{width:26px!important;height:26px!important}.sw-next-value-compact b{font-size:9.8px!important}}
/* SW main summary row — 4 compact items in one line */
.sw-main-summary-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(127,140,160,.14)}
.sw-main-summary{position:relative;min-width:0;min-height:82px;box-sizing:border-box;border:1px solid rgba(97,125,164,.25);border-radius:14px;background:linear-gradient(145deg,rgba(31,45,64,.78),rgba(20,29,42,.9));color:var(--tx);padding:9px 5px;text-align:center;overflow:hidden}
.sw-main-summary.stat{display:flex;flex-direction:column;align-items:center;justify-content:center}.sw-main-summary.stat>span{font-size:16px;line-height:1}.sw-main-summary.stat>strong{font-size:18px;line-height:1;margin-top:4px}.sw-main-summary small{display:block;margin-top:5px;color:var(--mu);font-size:8.4px;line-height:1.12;font-weight:650;word-break:keep-all;overflow-wrap:normal;hyphens:none}
.sw-main-summary.action{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(97,125,164,.25);cursor:pointer}.sw-main-summary.action:active{transform:scale(.985);background:rgba(55,83,122,.32)}.sw-main-summary.action>em{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-style:normal;color:#78adff;font-size:16px}
.sw-summary-bars{width:27px;height:27px;border-radius:9px;display:flex;align-items:end;justify-content:center;gap:2px;padding:6px;box-sizing:border-box;background:rgba(93,154,255,.09)}.sw-summary-bars i{display:block;width:3px;border-radius:2px;background:#65a7ff}.sw-summary-bars i:nth-child(1){height:8px}.sw-summary-bars i:nth-child(2){height:13px}.sw-summary-bars i:nth-child(3){height:18px}.sw-summary-link{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:rgba(138,120,255,.09);color:#8a78ff;font-size:22px;line-height:1}
.sw-dashboard-card .sw-progress-head>div:last-child strong{font-size:17px!important;color:#f5f7fb}.sw-dashboard-card .sw-progress-head>div:last-child small{color:#95a2b4!important}
@media(max-width:390px){.sw-main-summary-row{gap:5px}.sw-main-summary{min-height:76px;padding:8px 3px;border-radius:12px}.sw-main-summary.stat>span{font-size:14px}.sw-main-summary.stat>strong{font-size:17px}.sw-main-summary small{font-size:7.4px;line-height:1.08;margin-top:4px}.sw-main-summary.action>em{right:4px;font-size:14px}.sw-summary-bars,.sw-summary-link{width:25px;height:25px}.sw-dashboard-card .sw-progress-head>div:last-child strong{font-size:15px!important}}
/* SW no-road + tight header — 2026-09-24 */
.sw-main{gap:0!important}
.sw-main-back{min-height:28px!important;height:28px!important;line-height:28px!important;padding:0 2px!important;margin:0!important}
.sw-main-title{margin:-6px 3px 9px!important}
@media(max-width:390px){.sw-main-back{min-height:27px!important;height:27px!important;line-height:27px!important}.sw-main-title{margin-top:-6px!important;margin-bottom:8px!important}}

/* SW clickable partner/customer counters */
.sw-main-summary.stat.clickable{cursor:pointer;-webkit-tap-highlight-color:transparent}
.sw-main-summary.stat.clickable:active{transform:scale(.975);background:rgba(55,83,122,.30)}
/* SW upcoming follow-ups — 2026-09-24 */
.sw-upcoming{margin-top:12px;padding:14px!important;border:1px solid rgba(96,165,250,.24)!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(23,34,49,.97),rgba(15,23,34,.98))!important;box-shadow:0 12px 30px rgba(0,0,0,.14)}
html[data-theme="light"] .sw-upcoming{background:linear-gradient(145deg,#fff,#f5f8fc)!important}
.sw-upcoming-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.sw-upcoming-head h2{margin:0;font-size:16px;line-height:1.1}.sw-upcoming-head span{display:block;margin-top:3px;color:var(--mu);font-size:9.5px}.sw-upcoming-toggle{border:0;background:transparent;color:#78adff;font-size:10px;font-weight:750;padding:7px 0 7px 10px;white-space:nowrap}
.sw-upcoming-list{display:grid;gap:7px}.sw-upcoming-row{width:100%;min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) auto 12px;align-items:center;gap:9px;padding:9px 10px;border:1px solid rgba(127,140,160,.15);border-radius:13px;background:rgba(127,140,160,.045);color:var(--tx);text-align:left}.sw-upcoming-row:active{transform:scale(.992);background:rgba(96,165,250,.08)}
.sw-upcoming-avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(96,165,250,.12);border:1px solid rgba(96,165,250,.2);color:#86b9ff;font-size:12px;font-weight:800}.sw-upcoming-main{min-width:0}.sw-upcoming-main b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sw-upcoming-main small{display:block;margin-top:2px;color:var(--mu);font-size:8.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sw-upcoming-main em{display:block;margin-top:4px;color:#d7e3f4;font-size:10px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-upcoming-date{align-self:center;padding:5px 7px;border-radius:999px;border:1px solid rgba(96,165,250,.18);background:rgba(96,165,250,.07);color:#8ab9ff;font-size:8.8px;font-weight:750;white-space:nowrap}.sw-upcoming-date.today{color:#ffbe46;border-color:rgba(245,166,35,.24);background:rgba(245,166,35,.08)}.sw-upcoming-date.tomorrow{color:#87b8ff}.sw-upcoming-date.overdue{color:#ff7878;border-color:rgba(239,68,68,.25);background:rgba(239,68,68,.07)}.sw-upcoming-row>i{font-style:normal;color:#6f819b;font-size:18px}
.sw-upcoming-empty{padding:14px;border:1px dashed rgba(127,140,160,.22);border-radius:13px;color:var(--mu);font-size:10.5px;line-height:1.45;text-align:center}
@media(max-width:390px){.sw-upcoming{padding:12px!important}.sw-upcoming-row{grid-template-columns:32px minmax(0,1fr) auto 10px;gap:7px;padding:8px}.sw-upcoming-avatar{width:32px;height:32px}.sw-upcoming-main b{font-size:11.5px}.sw-upcoming-main em{font-size:9.5px}.sw-upcoming-date{font-size:8px;padding:5px 6px}}
/* SW CRM follow-up workflow — 2026-09-24 */
.sw-crm-next-action{width:100%;border:1px solid rgba(96,165,250,.28)!important;color:var(--tx);cursor:pointer;text-align:left}.sw-crm-next-action>i{margin-left:auto;font-style:normal;color:#78adff;font-size:18px}.sw-crm-next-action:active{transform:scale(.992);background:rgba(96,165,250,.10)!important}.sw-crm-next-action.empty{border-style:dashed!important;background:rgba(96,165,250,.035)!important}
.sw-followup-sheet .sw-form-head{margin-bottom:10px}.sw-fu-current{padding:13px;border:1px solid rgba(96,165,250,.22);border-radius:14px;background:rgba(96,165,250,.06)}.sw-fu-current small{display:block;color:var(--mu);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.sw-fu-current b{display:block;margin-top:4px;font-size:17px}.sw-fu-current span{display:inline-block;margin-top:7px;padding:4px 8px;border-radius:999px;background:rgba(96,165,250,.10);color:#86b9ff;font-size:10px;font-weight:750}
.sw-fu-menu{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:11px}.sw-fu-menu button{min-height:45px;border:1px solid rgba(127,140,160,.18);border-radius:12px;background:rgba(127,140,160,.06);color:var(--tx);font-size:11px;font-weight:750}.sw-fu-menu button.done{border-color:rgba(64,204,128,.28);background:rgba(64,204,128,.08);color:#72df9e}.sw-fu-menu button:active{transform:scale(.98)}
.sw-fu-copy{margin:2px 0 10px}.sw-fu-copy b{display:block;font-size:15px}.sw-fu-copy span{display:block;margin-top:4px;color:var(--mu);font-size:10.5px;line-height:1.4}.sw-fu-results{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sw-fu-results button{min-height:54px;display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid rgba(127,140,160,.17);border-radius:12px;background:rgba(127,140,160,.05);color:var(--tx);text-align:left}.sw-fu-results button>span{font-size:18px}.sw-fu-results button>b{font-size:10.5px;line-height:1.2}.sw-fu-results button:active{transform:scale(.985);background:rgba(96,165,250,.08)}
.sw-fu-result-picked{display:flex;align-items:center;gap:10px;margin:4px 0 12px;padding:10px 12px;border:1px solid rgba(64,204,128,.22);border-radius:13px;background:rgba(64,204,128,.06)}.sw-fu-result-picked>span{font-size:22px}.sw-fu-result-picked small{display:block;color:var(--mu);font-size:8.5px;text-transform:uppercase}.sw-fu-result-picked b{display:block;margin-top:2px;font-size:12px}.sw-fu-presets,.sw-fu-date-presets{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}.sw-fu-presets button,.sw-fu-date-presets button{min-height:30px;padding:5px 9px;border:1px solid rgba(96,165,250,.18);border-radius:999px;background:rgba(96,165,250,.06);color:#9bc3ff;font-size:9px}.sw-fu-presets button:active,.sw-fu-date-presets button:active{background:rgba(96,165,250,.14)}
.sw-fu-history.done{border-color:rgba(64,204,128,.20)!important}.sw-fu-history.postponed{border-color:rgba(245,166,35,.20)!important}.sw-fu-history.edited{border-color:rgba(96,165,250,.20)!important}
@media(max-width:390px){.sw-fu-menu{gap:6px}.sw-fu-menu button{font-size:10px}.sw-fu-results{gap:6px}.sw-fu-results button{min-height:50px;padding:8px}.sw-fu-results button>b{font-size:10px}}

/* iOS Safari: prevent focus zoom in SW bottom sheets */
.sw-crm-sheet input,
.sw-crm-sheet textarea,
.sw-crm-sheet select{
  font-size:16px!important;
  -webkit-text-size-adjust:100%;
}
/* SW goal card compact preview — 2026-09-24 */
.sw-goal-card-compact{width:100%;display:block;padding:15px!important;border:1px solid rgba(96,165,250,.25)!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(27,39,56,.98),rgba(16,25,37,.98))!important;color:var(--tx)!important;text-align:left!important;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent}.sw-goal-card-compact:active{transform:scale(.996)}
.sw-goal-compact-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.85fr);gap:14px;align-items:start;padding-bottom:11px;border-bottom:1px solid rgba(127,140,160,.14)}.sw-goal-compact-current{min-width:0}.sw-goal-compact-current strong{display:block;font-size:16px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sw-goal-compact-current span{display:block;margin-top:4px;color:#72adff;font-size:12px;font-weight:750}.sw-goal-compact-next{min-width:0;text-align:right}.sw-goal-compact-next small{display:block;color:var(--mu);font-size:8.5px;text-transform:uppercase;letter-spacing:.07em}.sw-goal-compact-next b{display:block;margin-top:4px;font-size:13px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-goal-progress-premium{display:grid;grid-template-columns:minmax(0,1fr) 62px;gap:10px;align-items:center;margin-top:11px;padding:9px 10px;border:1px solid rgba(245,166,35,.38);border-radius:14px;background:linear-gradient(145deg,rgba(45,38,27,.66),rgba(14,23,35,.92));box-shadow:inset 0 0 22px rgba(255,174,38,.025)}.sw-goal-progress-value{display:grid;grid-template-columns:29px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.sw-goal-progress-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:#ffc043;border:1px solid rgba(255,177,43,.22);background:rgba(255,177,43,.06);font-size:11px}.sw-goal-progress-value b{display:block;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sw-goal-progress-value i{display:block;height:6px;margin-top:5px;border-radius:99px;background:rgba(127,140,160,.16);overflow:hidden}.sw-goal-progress-value i span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffc043,#ffe08a)}
.sw-goal-progress-ring{--p:0;position:relative;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ffc043 calc(var(--p)*1%),rgba(255,255,255,.10) 0);box-shadow:0 0 0 1px rgba(255,190,66,.34)}.sw-goal-progress-ring:before{content:"";position:absolute;inset:5px;border-radius:50%;background:radial-gradient(circle at 50% 35%,#172233,#0c121c 72%)}.sw-goal-progress-ring>div{position:relative;text-align:center}.sw-goal-progress-ring b{display:block;font-size:15px;line-height:1}.sw-goal-progress-ring small{display:block;margin-top:3px;color:#8f9caf;font-size:5.8px;text-transform:uppercase;letter-spacing:.06em}
.sw-goal-preview-done{display:flex;align-items:center;gap:10px;margin-top:11px;padding:10px 12px;border:1px solid rgba(34,197,94,.20);border-radius:13px;background:rgba(34,197,94,.06)}.sw-goal-preview-done>span{font-size:22px}.sw-goal-preview-done small{display:block;color:var(--mu);font-size:8px;text-transform:uppercase}.sw-goal-preview-done b{display:block;margin-top:2px;font-size:12px}.sw-goal-preview-done.next{border-color:rgba(245,166,35,.20);background:rgba(245,166,35,.06)}
html[data-theme="light"] .sw-goal-card-compact{background:linear-gradient(145deg,#fff,#f4f7fb)!important}
@media(max-width:390px){.sw-goal-card-compact{padding:13px!important}.sw-goal-compact-head{grid-template-columns:minmax(0,1fr) minmax(128px,.82fr);gap:10px}.sw-goal-compact-current strong{font-size:15px}.sw-goal-compact-current span{font-size:11px}.sw-goal-compact-next b{font-size:11.5px}.sw-goal-progress-premium{grid-template-columns:minmax(0,1fr) 56px;padding:8px 9px}.sw-goal-progress-ring{width:52px;height:52px}.sw-goal-progress-ring b{font-size:14px}.sw-goal-progress-value b{font-size:9.8px}}
/* SW goal card career road — match diary visual */
.sw-goal-card-compact .sw-road-shell{position:relative;margin:10px -15px 7px!important;padding-top:8px;overflow:hidden}
.sw-goal-card-compact .sw-road-hint{font-size:9px!important;margin-bottom:5px!important;color:var(--mu)!important;position:relative;z-index:3}
.sw-goal-card-compact .sw-road-scroll{position:relative;z-index:2;padding-bottom:5px!important}
.sw-goal-card-compact .sw-road-track:before{top:43px!important;height:3px!important;background:linear-gradient(90deg,#22c55e 0 31%,#65a7ff 43% 57%,#ffc043 69% 100%)!important;box-shadow:0 0 13px rgba(70,154,255,.28)!important}
.sw-goal-card-compact .sw-stage{opacity:.42!important;padding-bottom:4px!important}.sw-goal-card-compact .sw-stage.done,.sw-goal-card-compact .sw-stage.current,.sw-goal-card-compact .sw-stage.next{opacity:1!important}
.sw-goal-card-compact .sw-stage-kicker{font-size:8.5px!important;height:18px!important}.sw-goal-card-compact .sw-stage.done .sw-stage-kicker{color:#45cf78!important}.sw-goal-card-compact .sw-stage.current .sw-stage-kicker{color:#72adff!important}.sw-goal-card-compact .sw-stage.next .sw-stage-kicker{color:#ffb12e!important}
.sw-goal-card-compact .sw-stage-dot{height:42px!important}.sw-goal-card-compact .sw-stage-dot i{display:grid!important;place-items:center!important;width:27px!important;height:27px!important;border-width:3px!important;margin-top:4px!important;color:#fff;font-style:normal;font-size:0!important}
.sw-goal-card-compact .sw-stage.done .sw-stage-dot i{background:#103e2a!important;border-color:#34d67b!important;box-shadow:0 0 0 5px rgba(34,197,94,.12),0 0 18px rgba(34,197,94,.24)!important}.sw-goal-card-compact .sw-stage.done .sw-stage-dot i:after{content:"✓";font-size:13px;font-weight:900;color:#52e58e}
.sw-goal-card-compact .sw-stage.current .sw-stage-dot i{width:38px!important;height:38px!important;margin-top:-2px!important;background:#376ea8!important;border-color:#8fc1ff!important;border-radius:50%!important;transform:none!important;box-shadow:0 0 0 7px rgba(91,156,255,.12),0 0 22px rgba(91,156,255,.4)!important}.sw-goal-card-compact .sw-stage.current .sw-stage-dot i:after{content:"●";font-size:13px;color:#d7e8ff}
.sw-goal-card-compact .sw-stage.next .sw-stage-dot i{width:34px!important;height:34px!important;margin-top:0!important;background:#4a3210!important;border-color:#ffc043!important;border-radius:50%!important;transform:none!important;box-shadow:0 0 0 6px rgba(245,166,35,.10),0 0 18px rgba(245,166,35,.25)!important}.sw-goal-card-compact .sw-stage.next .sw-stage-dot i:after{content:"♛";font-size:15px;color:#ffc043}
.sw-goal-card-compact .sw-stage-name{font-size:10px!important;min-height:24px!important;position:relative;z-index:3}.sw-goal-card-compact .sw-stage.current .sw-stage-name,.sw-goal-card-compact .sw-stage.next .sw-stage-name{font-size:10.5px!important}.sw-goal-card-compact .sw-stage-points{display:none!important}
@media(max-width:390px){.sw-goal-card-compact .sw-road-shell{margin-left:-13px!important;margin-right:-13px!important}.sw-goal-card-compact .sw-stage-name{font-size:9.4px!important}.sw-goal-card-compact .sw-stage.current .sw-stage-name,.sw-goal-card-compact .sw-stage.next .sw-stage-name{font-size:10px!important}}
/* ===== LIGHT THEME VISUAL AUDIT — 2026-09-24 =====
   Contrast fixes only. Every rule is light-theme scoped so dark theme is untouched. */

/* Weekly review: keep the premium dark countdown, but use an inverted palette. */
html[data-theme="light"] .gi-countdown{
  color:#f2f6fd!important;
  background:linear-gradient(145deg,#142033,#0f1928)!important;
  border-color:#2d405a!important;
}
html[data-theme="light"] .gi-countdown-top b{color:#f2f6fd!important}
html[data-theme="light"] .gi-countdown-top strong{color:#86b7ff!important}
html[data-theme="light"] .gi-countdown small{color:#9eafc4!important}
html[data-theme="light"] .gi-countdown-track{background:#27374c!important}
html[data-theme="light"] .gi-week-data span{
  color:#c5d1e1!important;
  background:#172438!important;
  border-color:#33465f!important;
}

/* Today legacy KPI tiles: light surface + dark ink instead of dark-on-dark. */
html[data-theme="light"] .v2-kpi-grid button{
  background:#f5f8fc!important;
  border-color:#dce3ec!important;
  color:var(--tx)!important;
}
html[data-theme="light"] .v2-kpi-grid button span{color:var(--mu)!important}
html[data-theme="light"] .v2-score-dot{
  background:#eef5ff!important;
  border-color:#cfe0f6!important;
  color:#3478d4!important;
}

/* SW premium qualification panel stays dark inside the light theme. */
html[data-theme="light"] .sw-next-premium{color:#f3f7fd!important}
html[data-theme="light"] .sw-next-premium strong,
html[data-theme="light"] .sw-next-premium b,
html[data-theme="light"] .sw-next-compact-title strong,
html[data-theme="light"] .sw-next-value b,
html[data-theme="light"] .sw-next-ring b,
html[data-theme="light"] .sw-next-bottom b{color:#f3f7fd!important}
html[data-theme="light"] .sw-next-premium-copy small,
html[data-theme="light"] .sw-next-premium-copy p,
html[data-theme="light"] .sw-next-compact-title small,
html[data-theme="light"] .sw-next-ring small,
html[data-theme="light"] .sw-next-bottom small{color:#9eacbf!important}

/* SW dark summary tiles: explicit inverted text palette. */
html[data-theme="light"] .sw-main-summary,
html[data-theme="light"] .sw-quick-tools button{color:#f3f7fd!important}
html[data-theme="light"] .sw-main-summary strong,
html[data-theme="light"] .sw-main-summary b,
html[data-theme="light"] .sw-quick-tools b{color:#f3f7fd!important}
html[data-theme="light"] .sw-main-summary small{color:#aab7c9!important}

/* SW goal card: the nested progress block is intentionally dark. */
html[data-theme="light"] .sw-goal-progress-premium{color:#f3f7fd!important}
html[data-theme="light"] .sw-goal-progress-value b,
html[data-theme="light"] .sw-goal-progress-ring b{color:#f3f7fd!important}
html[data-theme="light"] .sw-goal-progress-ring small{color:#9eacbf!important}

/* SW contacts strip should read as a light sub-surface, not a grey overlay. */
html[data-theme="light"] .sw-contacts-strip{
  background:#f3f6fa!important;
  border-color:#dbe5f0!important;
}
html[data-theme="light"] .sw-contacts-open{color:var(--tx)!important}
html[data-theme="light"] .sw-contact-avatars i{
  background:#fff!important;
  border-color:#cbd7e5!important;
  color:#667990!important;
}
html[data-theme="light"] .sw-contact-avatars i.active{
  background:#eaf3ff!important;
  border-color:#82aee8!important;
  color:#3478d4!important;
}
html[data-theme="light"] .sw-contact-add{
  background:linear-gradient(145deg,#eef6ff,#e4efff)!important;
  border-color:#bfd8fa!important;
  color:#3478d4!important;
}
html[data-theme="light"] .sw-contact-add i{color:#6583a8!important}

/* Upcoming contacts: next-step text was nearly white on a white card. */
html[data-theme="light"] .sw-upcoming-main em{color:#5b6f87!important}
html[data-theme="light"] .sw-upcoming-row>i{color:#6b7e96!important}

/* Light SW forms/chips: retain blue affordance but increase text contrast. */
html[data-theme="light"] .sw-fu-presets button,
html[data-theme="light"] .sw-fu-date-presets button{
  color:#376fae!important;
  border-color:#cbdcf1!important;
  background:#f0f6fd!important;
}
html[data-theme="light"] .sw-crm-next span,
html[data-theme="light"] .sw-crm-event-body span{color:#376fae!important}

/* ===== LIGHT THEME TRUE SURFACE PASS — 2026-09-24 =====
   Converts dark islands to true light-theme components. Dark theme untouched. */

/* Weekly review countdown */
html[data-theme="light"] .gi-countdown{
  color:#18212e!important;
  background:linear-gradient(145deg,#ffffff,#f3f7fd)!important;
  border-color:#d8e3f0!important;
  box-shadow:0 8px 22px rgba(31,55,86,.06)!important;
}
html[data-theme="light"] .gi-countdown-top b{color:#18212e!important}
html[data-theme="light"] .gi-countdown-top strong{color:#3478d4!important}
html[data-theme="light"] .gi-countdown small{color:#687789!important}
html[data-theme="light"] .gi-countdown-track{background:#e4eaf2!important}
html[data-theme="light"] .gi-week-data span{
  color:#53667e!important;
  background:#ffffff!important;
  border-color:#d8e3f0!important;
}

/* SW next qualification premium card */
html[data-theme="light"] .sw-next-premium{
  color:#18212e!important;
  background:
    radial-gradient(circle at 92% 8%,rgba(245,166,35,.12),transparent 34%),
    linear-gradient(145deg,#fffdf8,#f6f9fd)!important;
  border-color:#e6c47d!important;
  box-shadow:0 8px 22px rgba(99,73,24,.08)!important;
}
html[data-theme="light"] .sw-next-premium:after{
  opacity:.18!important;
  mix-blend-mode:multiply!important;
}
html[data-theme="light"] .sw-next-premium strong,
html[data-theme="light"] .sw-next-premium b,
html[data-theme="light"] .sw-next-compact-title strong,
html[data-theme="light"] .sw-next-value b,
html[data-theme="light"] .sw-next-ring b,
html[data-theme="light"] .sw-next-bottom b{color:#18212e!important}
html[data-theme="light"] .sw-next-premium-copy small,
html[data-theme="light"] .sw-next-premium-copy p,
html[data-theme="light"] .sw-next-compact-title small,
html[data-theme="light"] .sw-next-ring small,
html[data-theme="light"] .sw-next-bottom small{color:#687789!important}
html[data-theme="light"] .sw-next-value{
  background:#f4f7fb!important;
  border-color:#d8e3f0!important;
}
html[data-theme="light"] .sw-next-value i{background:#dfe6ef!important}
html[data-theme="light"] .sw-next-ring{
  background:conic-gradient(#f5a623 calc(var(--p)*1%),#e2e8f0 0)!important;
  box-shadow:0 0 0 1px #e0c182!important;
}
html[data-theme="light"] .sw-next-ring:before{
  background:radial-gradient(circle at 50% 35%,#ffffff,#eef3f8 72%)!important;
  box-shadow:inset 0 0 0 1px rgba(76,96,121,.08)!important;
}

/* SW summary tiles */
html[data-theme="light"] .sw-main-summary,
html[data-theme="light"] .sw-quick-tools button{
  color:#18212e!important;
  background:linear-gradient(145deg,#ffffff,#f3f7fb)!important;
  border-color:#d9e3ef!important;
  box-shadow:0 4px 14px rgba(31,55,86,.05)!important;
}
html[data-theme="light"] .sw-main-summary strong,
html[data-theme="light"] .sw-main-summary b,
html[data-theme="light"] .sw-quick-tools b{color:#18212e!important}
html[data-theme="light"] .sw-main-summary small{color:#687789!important}
html[data-theme="light"] .sw-main-summary.action:active,
html[data-theme="light"] .sw-main-summary.stat.clickable:active,
html[data-theme="light"] .sw-quick-tools button:active{background:#eaf2fc!important}

/* SW compact goal card nested progress */
html[data-theme="light"] .sw-goal-progress-premium{
  color:#18212e!important;
  background:linear-gradient(145deg,#fffaf0,#f4f7fb)!important;
  border-color:#e7c67e!important;
  box-shadow:none!important;
}
html[data-theme="light"] .sw-goal-progress-value b,
html[data-theme="light"] .sw-goal-progress-ring b{color:#18212e!important}
html[data-theme="light"] .sw-goal-progress-ring small{color:#687789!important}
html[data-theme="light"] .sw-goal-progress-value i{background:#dfe6ef!important}
html[data-theme="light"] .sw-goal-progress-ring{
  background:conic-gradient(#f5a623 calc(var(--p)*1%),#e2e8f0 0)!important;
  box-shadow:0 0 0 1px #e0c182!important;
}
html[data-theme="light"] .sw-goal-progress-ring:before{
  background:radial-gradient(circle at 50% 35%,#ffffff,#eef3f8 72%)!important;
}

/* SW main dashboard: remove dark mountain overlay in light theme */
html[data-theme="light"] .sw-dashboard-card .sw-road-shell:after{
  opacity:.18!important;
  filter:saturate(.55) brightness(1.65)!important;
}

/* Contacts area */
html[data-theme="light"] .sw-contacts-strip{
  background:linear-gradient(145deg,#f8fbff,#f1f6fb)!important;
  border-color:#d7e3ef!important;
}
html[data-theme="light"] .sw-contact-add{
  background:linear-gradient(145deg,#eef6ff,#e4efff)!important;
  border-color:#bdd7f6!important;
  color:#3478d4!important;
}

/* SW upcoming contact card hierarchy — 2026-09-24 */
.sw-upcoming-row{
  grid-template-columns:38px minmax(0,1fr) auto 11px!important;
  grid-template-areas:"avatar main status chev" "avatar main date chev"!important;
  align-items:center!important;
  gap:5px 10px!important;
  padding:11px 12px!important;
}
.sw-upcoming-avatar{grid-area:avatar;width:38px!important;height:38px!important;align-self:center}
.sw-upcoming-main{grid-area:main;min-width:0;align-self:center}
.sw-upcoming-main b{font-size:22px!important;line-height:1.05!important;font-weight:800!important;letter-spacing:-.02em}
.sw-upcoming-main em{margin-top:7px!important;font-size:11px!important;line-height:1.2!important;color:#d7e3f4!important}
.sw-upcoming-status{grid-area:status;justify-self:end;align-self:start;display:block;max-width:160px;padding:5px 8px;border-radius:999px;font-size:8.5px;font-weight:750;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-upcoming-status.customer{color:#f8b538;background:rgba(245,166,35,.10);border:1px solid rgba(245,166,35,.18)}
.sw-upcoming-status.partner{color:#67d58a;background:rgba(34,197,94,.09);border:1px solid rgba(34,197,94,.17)}
.sw-upcoming-status.lead{color:#78adff;background:rgba(96,165,250,.09);border:1px solid rgba(96,165,250,.17)}
.sw-upcoming-date{grid-area:date!important;justify-self:end;align-self:end!important}
.sw-upcoming-row>i{grid-area:chev;align-self:center}
@media(max-width:390px){
  .sw-upcoming-row{grid-template-columns:34px minmax(0,1fr) auto 10px!important;gap:5px 8px!important;padding:10px!important}
  .sw-upcoming-avatar{width:34px!important;height:34px!important}
  .sw-upcoming-main b{font-size:20px!important}
  .sw-upcoming-main em{font-size:10px!important}
  .sw-upcoming-status{max-width:142px;font-size:7.8px;padding:4px 7px}
}
/* SW upcoming: status as avatar icon, more space for next action — 2026-09-25 */
.sw-upcoming-row{
  grid-template-columns:40px minmax(0,1fr) auto 11px!important;
  grid-template-areas:"avatar main date chev"!important;
  align-items:center!important;
  gap:8px 10px!important;
  padding:11px 12px!important;
}
.sw-upcoming-avatar{grid-area:avatar;width:40px!important;height:40px!important;border-radius:12px!important;font-size:20px!important;font-weight:400!important}
.sw-upcoming-avatar.customer{color:#f8b538!important;background:rgba(245,166,35,.10)!important;border-color:rgba(245,166,35,.20)!important}
.sw-upcoming-avatar.partner{color:#67d58a!important;background:rgba(34,197,94,.09)!important;border-color:rgba(34,197,94,.18)!important}
.sw-upcoming-avatar.lead{color:#78adff!important;background:rgba(96,165,250,.09)!important;border-color:rgba(96,165,250,.18)!important}
.sw-upcoming-main{grid-area:main;min-width:0;align-self:center}
.sw-upcoming-main b{font-size:16.5px!important;line-height:1.1!important;font-weight:800!important;letter-spacing:-.01em!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-upcoming-main em{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-top:5px!important;color:#d7e3f4!important;font-size:11.5px!important;line-height:1.25!important;white-space:normal!important;text-overflow:clip!important}
.sw-upcoming-status{display:none!important}
.sw-upcoming-date{grid-area:date!important;justify-self:end;align-self:center!important}
.sw-upcoming-row>i{grid-area:chev!important;align-self:center!important}
@media(max-width:390px){
  .sw-upcoming-row{grid-template-columns:36px minmax(0,1fr) auto 10px!important;gap:7px 8px!important;padding:10px!important}
  .sw-upcoming-avatar{width:36px!important;height:36px!important;font-size:18px!important}
  .sw-upcoming-main b{font-size:15.5px!important}
  .sw-upcoming-main em{font-size:10.8px!important;line-height:1.25!important}
}
/* SW header rank + controlled partners label — 2026-09-25 */
.sw-main-current-rank{
  margin-top:5px;
  color:#72adff;
  font-size:14px;
  line-height:1.1;
  font-weight:750;
}
.sw-partners-label{
  line-height:1.05!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow:visible!important;
}
.sw-partners-label>span{
  display:block;
  white-space:nowrap;
}
@media(max-width:390px){
  .sw-main-current-rank{font-size:13px;margin-top:4px}
}
/* SW summary row alignment + stronger action icons — 2026-09-25 */
.sw-main-current-rank{
  margin-top:1px!important;
}
.sw-main-summary{
  display:grid!important;
  grid-template-rows:44px auto!important;
  align-content:start!important;
  justify-items:center!important;
  min-height:82px!important;
  padding:8px 5px 9px!important;
}
.sw-summary-visual{
  width:100%;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.sw-summary-stat-visual{
  flex-direction:column;
  gap:2px;
}
.sw-summary-stat-visual>span{
  display:block;
  font-size:16px;
  line-height:1;
}
.sw-summary-stat-visual>strong{
  display:block;
  margin:0!important;
  font-size:18px!important;
  line-height:1!important;
}
.sw-main-summary small{
  align-self:start;
  justify-self:center;
  margin-top:5px!important;
  min-height:18px;
  text-align:center;
}
.sw-summary-action-visual .sw-summary-bars,
.sw-summary-action-visual .sw-summary-link{
  width:40px!important;
  height:40px!important;
  border-radius:12px!important;
}
.sw-summary-action-visual .sw-summary-bars{
  padding:8px!important;
  gap:3px!important;
}
.sw-summary-action-visual .sw-summary-bars i{
  width:4px!important;
}
.sw-summary-action-visual .sw-summary-bars i:nth-child(1){height:12px!important}
.sw-summary-action-visual .sw-summary-bars i:nth-child(2){height:20px!important}
.sw-summary-action-visual .sw-summary-bars i:nth-child(3){height:28px!important}
.sw-summary-action-visual .sw-summary-link{
  font-size:32px!important;
}
@media(max-width:390px){
  .sw-main-summary{
    grid-template-rows:40px auto!important;
    min-height:78px!important;
    padding:7px 3px 8px!important;
  }
  .sw-summary-visual{height:40px}
  .sw-summary-stat-visual>span{font-size:14px}
  .sw-summary-stat-visual>strong{font-size:17px!important}
  .sw-summary-action-visual .sw-summary-bars,
  .sw-summary-action-visual .sw-summary-link{
    width:36px!important;
    height:36px!important;
  }
  .sw-summary-action-visual .sw-summary-link{font-size:29px!important}
  .sw-main-summary small{margin-top:4px!important}
}
/* SW CRM contact detail visual hierarchy — 2026-09-25 */
.sw-crm-avatar{
  font-size:22px!important;
  font-weight:400!important;
  background:rgba(96,165,250,.09)!important;
}
.sw-crm-avatar.customer{
  color:#f8b538!important;
  background:rgba(245,166,35,.10)!important;
  border-color:rgba(245,166,35,.24)!important;
}
.sw-crm-avatar.partner{
  color:#67d58a!important;
  background:rgba(34,197,94,.09)!important;
  border-color:rgba(34,197,94,.22)!important;
}
.sw-crm-avatar.lead{
  color:#78adff!important;
  background:rgba(96,165,250,.09)!important;
  border-color:rgba(96,165,250,.22)!important;
}
.sw-crm-identity h2{
  font-size:22px!important;
  line-height:1.05!important;
}
.sw-crm-edit{
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:12px!important;
}
.sw-crm-edit>span:first-child{
  font-size:16px!important;
  line-height:1!important;
}
.sw-crm-next-action{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto 12px!important;
  align-items:center!important;
  gap:10px!important;
  min-height:66px!important;
  padding:11px 12px!important;
  border-color:rgba(96,165,250,.42)!important;
  background:linear-gradient(145deg,rgba(42,78,125,.16),rgba(23,43,70,.26))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 8px 20px rgba(0,0,0,.08)!important;
}
.sw-crm-next-action>div{min-width:0}
.sw-crm-next-action small{
  color:#78adff!important;
  font-size:8.7px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
}
.sw-crm-next-action b{
  margin-top:4px!important;
  font-size:14px!important;
  line-height:1.15!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.sw-crm-next-date{
  justify-self:end!important;
  align-self:center!important;
  margin:0!important;
  padding:6px 9px!important;
}
.sw-crm-next-action>i{
  justify-self:end!important;
  margin:0!important;
}
@media(max-width:390px){
  .sw-crm-avatar{font-size:20px!important}
  .sw-crm-identity h2{font-size:21px!important}
  .sw-crm-edit{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important}
  .sw-crm-next-action{grid-template-columns:minmax(0,1fr) auto 10px!important;gap:8px!important;padding:10px!important}
  .sw-crm-next-action b{font-size:13px!important}
  .sw-crm-next-date{padding:5px 8px!important}
}
/* SW CRM history edit/delete — 2026-09-25 */
.sw-history-actions{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:7px;
}
.sw-history-edit{
  width:30px;
  height:30px;
  min-width:30px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(96,165,250,.22);
  border-radius:9px;
  background:rgba(96,165,250,.07);
  color:#78adff;
  font-size:13px;
}
.sw-history-edit:active{transform:scale(.96);background:rgba(96,165,250,.14)}
.sw-history-actions>i{
  width:12px;
  text-align:center;
}
.sw-history-delete{
  width:100%;
  min-height:36px;
  margin-top:10px;
  border:1px solid rgba(239,68,68,.22);
  border-radius:10px;
  background:rgba(239,68,68,.06);
  color:#ff7777;
  font-size:10.5px;
  font-weight:750;
}
.sw-history-delete:active{background:rgba(239,68,68,.12)}
.sw-history-edit-sheet .field{margin-top:11px!important}
@media(max-width:390px){
  .sw-history-actions{gap:5px}
  .sw-history-edit{width:28px;height:28px;min-width:28px}
  .sw-history-delete{min-height:34px}
}

/* SW CRM history edit/delete — 2026-09-25 */
.sw-history-actions{flex:0 0 auto;display:flex;align-items:center;gap:7px}
.sw-history-edit{width:30px;height:30px;min-width:30px;display:grid;place-items:center;padding:0;border:1px solid rgba(96,165,250,.22);border-radius:9px;background:rgba(96,165,250,.07);color:#78adff;font-size:13px}
.sw-history-edit:active{transform:scale(.96);background:rgba(96,165,250,.14)}
.sw-history-actions>i{width:12px;text-align:center}
.sw-history-delete{width:100%;min-height:36px;margin-top:10px;border:1px solid rgba(239,68,68,.22);border-radius:10px;background:rgba(239,68,68,.06);color:#ff7777;font-size:10.5px;font-weight:750}
.sw-history-delete:active{background:rgba(239,68,68,.12)}
.sw-history-edit-sheet .field{margin-top:11px!important}
@media(max-width:390px){.sw-history-actions{gap:5px}.sw-history-edit{width:28px;height:28px;min-width:28px}.sw-history-delete{min-height:34px}}

.sw-crm-event summary>.sw-history-actions{flex:0 0 auto;min-width:auto;display:flex;align-items:center;gap:7px}
@media(max-width:390px){.sw-crm-event summary>.sw-history-actions{gap:5px}}

/* SW history: show edit pencil only for expanded record */
.sw-history-edit{display:none!important}
.sw-crm-event[open] .sw-history-edit{display:grid!important}
/* SW goals card: reliable horizontal career drag + compact next qualification */
.sw-goal-card-compact .sw-road-scroll{
  overflow-x:scroll!important;
  overflow-y:hidden!important;
  touch-action:pan-y!important;
  overscroll-behavior-x:contain!important;
  -webkit-overflow-scrolling:touch!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.sw-goal-card-compact .sw-goal-compact-head{
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  padding-bottom:8px!important;
}
.sw-goal-card-compact .sw-goal-compact-next{
  min-width:max-content!important;
}
.sw-goal-card-compact .sw-goal-compact-next small{
  white-space:nowrap!important;
  font-size:7.8px!important;
  letter-spacing:.045em!important;
}
.sw-goal-card-compact .sw-goal-compact-next b{
  margin-top:3px!important;
}
.sw-goal-card-compact .sw-road-shell{
  margin-top:7px!important;
}
@media(max-width:390px){
  .sw-goal-card-compact .sw-goal-compact-head{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:7px!important;
  }
  .sw-goal-card-compact .sw-goal-compact-next small{
    font-size:7.2px!important;
    letter-spacing:.035em!important;
  }
}
/* SW career road: free scrolling without step snapping */
.sw-road-scroll{
  scroll-snap-type:none!important;
  scroll-behavior:auto!important;
}
.sw-stage{
  scroll-snap-align:none!important;
  scroll-snap-stop:normal!important;
}

/* SW business editor entry points */
.sw-business-entry{cursor:pointer;-webkit-tap-highlight-color:transparent}
.sw-business-entry:active{transform:scale(.995);filter:brightness(1.04)}
.sw-main-summary.action{pointer-events:auto!important;position:relative;z-index:3!important}

/* Questions diary — 2026-09-25 */
.q-wrap{display:grid;gap:14px;padding-bottom:18px}.q-back{justify-self:start}.q-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.q-head span{display:block;color:var(--mu);font-size:9px;text-transform:uppercase;letter-spacing:.09em}.q-head h1{margin:3px 0 0;font-size:28px;line-height:1.05}.q-head p{margin:6px 0 0;color:var(--mu);font-size:11px;line-height:1.4}.q-add{min-width:118px;min-height:42px!important;padding:0 14px!important}.q-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border:1px solid var(--line);border-radius:15px;background:rgba(127,140,160,.05)}.q-tabs button{min-height:40px;border:0;border-radius:11px;background:transparent;color:var(--mu);font-size:11px;font-weight:750}.q-tabs button.on{background:rgba(96,165,250,.12);color:#8bbaff}.q-tabs b{margin-left:4px}.q-summary{color:var(--mu);font-size:10px;padding:0 3px}.q-list{display:grid;gap:8px}.q-row{display:grid;grid-template-columns:36px minmax(0,1fr) 14px;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.q-check{width:34px;height:34px;border:1px solid rgba(96,165,250,.28);border-radius:10px;background:rgba(96,165,250,.05);color:#6ee19b;font-size:16px;font-weight:900}.q-check.is-done{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.25)}.q-row-main{min-width:0;border:0;background:transparent;color:var(--tx);text-align:left;padding:0}.q-row-main b{display:block;font-size:13px;line-height:1.25;white-space:normal}.q-row-main span{display:block;margin-top:4px;color:var(--mu);font-size:10px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.q-row-arrow{border:0;background:transparent;color:var(--mu);font-size:19px;padding:0}.q-row.is-closed{opacity:.82}.q-row.is-closed .q-row-main b{text-decoration:none}.q-empty{padding:28px 18px;border:1px dashed var(--line);border-radius:16px;text-align:center;color:var(--mu)}.q-empty>span{display:block;font-size:28px}.q-empty b{display:block;margin-top:8px;color:var(--tx);font-size:13px}.q-empty p{margin:5px 0 0;font-size:10.5px;line-height:1.4}.q-sheet-overlay{position:fixed;inset:0;z-index:1200;background:rgba(3,8,14,.58);display:flex;align-items:flex-end;justify-content:center}.q-sheet{width:min(720px,100%);max-height:88dvh;overflow:auto;padding:14px 16px calc(18px + env(safe-area-inset-bottom));border:1px solid rgba(96,165,250,.22);border-radius:24px 24px 0 0;background:#142031;box-shadow:0 -18px 50px rgba(0,0,0,.35)}
.q-sheet-handle{width:48px;height:5px;margin:0 auto 12px;border-radius:99px;background:#526077}.q-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.q-sheet-head small{display:block;color:var(--mu);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.q-sheet-head b{display:block;margin-top:3px;font-size:18px;line-height:1.2}.q-sheet .field{margin-top:11px}.q-sheet input,.q-sheet textarea,.q-sheet select{font-size:16px!important}.q-context,.q-detail-block{margin:10px 0;padding:11px 12px;border:1px solid rgba(127,140,160,.14);border-radius:12px;background:rgba(127,140,160,.05);color:var(--tx);font-size:11px;line-height:1.45;white-space:pre-wrap}.q-detail-block small{display:block;color:var(--mu);font-size:8.5px;text-transform:uppercase;letter-spacing:.07em}.q-detail-block p{margin:5px 0 0;white-space:pre-wrap}.q-detail-block.q-answer{border-color:rgba(34,197,94,.20);background:rgba(34,197,94,.05)}.q-detail-actions{display:grid;gap:8px;margin-top:12px}.q-delete{min-height:38px;border:1px solid rgba(239,68,68,.22);border-radius:11px;background:rgba(239,68,68,.06);color:#ff7777;font-size:10.5px;font-weight:750}html[data-theme="light"] .q-sheet{background:#f7f9fc}@media(max-width:390px){.q-head h1{font-size:25px}.q-head p{font-size:10px}.q-add{min-width:104px;padding:0 11px!important}.q-row{grid-template-columns:34px minmax(0,1fr) 12px;gap:8px;padding:10px}.q-sheet{padding-left:14px;padding-right:14px}.q-sheet-head b{font-size:17px}}

/* Expanded diary calendar: event mode — 2026-09-25 */
.v2-calendar-events{display:grid;gap:10px;margin:-2px 0 18px}.v2-calendar-events-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:0 2px}.v2-calendar-events-head h2{margin:0;font-size:20px;line-height:1.1}.v2-calendar-events-head span{display:block;margin-top:4px;color:var(--mu);font-size:10px}.v2-calendar-event-add{min-height:38px;padding:0 12px;border:1px solid rgba(245,166,35,.28);border-radius:11px;background:rgba(245,166,35,.08);color:#f5ad35;font-size:10.5px;font-weight:800;white-space:nowrap}.v2-calendar-event-list{display:grid;gap:8px}.v2-cal-event-row{display:grid;grid-template-columns:46px minmax(0,1fr) 14px;align-items:center;gap:10px;width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--tx);text-align:left}.v2-cal-event-row:active{transform:scale(.995);background:rgba(96,165,250,.06)}
.v2-cal-event-date{width:46px;height:46px;display:grid;place-items:center;align-content:center;border-radius:12px;background:rgba(96,165,250,.08);border:1px solid rgba(96,165,250,.18);color:#8bbaff}.v2-cal-event-date b{display:block;font-size:16px;line-height:1}.v2-cal-event-date small{display:block;margin-top:3px;font-size:8px;text-transform:uppercase}.v2-cal-event-main{min-width:0}.v2-cal-event-main>b{display:block;font-size:13px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-cal-event-main>small{display:block;margin-top:3px;color:#8ea0b5;font-size:9.5px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-cal-event-main>em{display:block;margin-top:4px;color:var(--mu);font-size:10px;line-height:1.25;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-cal-event-arrow{justify-self:end;color:#6f819b;font-size:18px}.v2-calendar-events-note{padding:7px 2px 0;color:var(--mu);font-size:9.5px}.v2-calendar-events-empty{padding:22px 16px;border:1px dashed var(--line);border-radius:14px;text-align:center;color:var(--mu)}.v2-calendar-events-empty>span{display:block;font-size:26px}.v2-calendar-events-empty b{display:block;margin-top:7px;color:var(--tx);font-size:13px}.v2-calendar-events-empty p{margin:4px 0 0;font-size:10px;line-height:1.4}
@media(max-width:390px){.v2-calendar-events-head h2{font-size:18px}.v2-calendar-event-add{min-height:36px;padding:0 10px}.v2-cal-event-row{grid-template-columns:42px minmax(0,1fr) 12px;gap:8px;padding:10px}.v2-cal-event-date{width:42px;height:42px}.v2-cal-event-main>b{font-size:12.5px}.v2-cal-event-main>small{font-size:9px}.v2-cal-event-main>em{font-size:9.5px}}

/* SW career road — current smaller, next compact + pulse ring (2026-09-25) */
.sw-dashboard-card .sw-stage.current .sw-stage-dot i,
.sw-goal-card-compact .sw-stage.current .sw-stage-dot i{
  width:34px!important;height:34px!important;margin-top:0!important;
  box-shadow:0 0 0 6px rgba(91,156,255,.11),0 0 21px rgba(91,156,255,.38)!important;
}
.sw-dashboard-card .sw-stage.next .sw-stage-dot i,
.sw-goal-card-compact .sw-stage.next .sw-stage-dot i{
  width:27px!important;height:27px!important;margin-top:4px!important;
  position:relative!important;overflow:visible!important;animation:none!important;
  box-shadow:0 0 0 5px rgba(245,166,35,.10),0 0 18px rgba(245,166,35,.24)!important;
}
.sw-dashboard-card .sw-stage.next .sw-stage-dot i:before,
.sw-goal-card-compact .sw-stage.next .sw-stage-dot i:before{
  content:"";position:absolute;inset:-8px;border:2px solid rgba(255,192,67,.62);
  border-radius:50%;pointer-events:none;opacity:.72;transform:scale(.82);
  animation:swCareerNextRing 1.8s ease-out infinite;
}
@keyframes swCareerNextRing{
  0%{transform:scale(.82);opacity:.72}
  70%,100%{transform:scale(1.42);opacity:0}
}
@media(prefers-reduced-motion:reduce){
  .sw-dashboard-card .sw-stage.next .sw-stage-dot i:before,
  .sw-goal-card-compact .sw-stage.next .sw-stage-dot i:before{animation:none;opacity:.35;transform:scale(1)}
}
/* Goals — progress track background matches SW diary progress track (2026-09-25) */
.gcard .bar{
  background:rgba(124,142,166,.18)!important;
}
html[data-theme="light"] .gcard .bar{
  background:#dfe6ef!important;
}

/* SW goal preview — match diary gold progress panel (2026-09-25) */
.sw-goal-card-compact .sw-goal-progress-premium{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:linear-gradient(145deg,rgba(45,38,27,.88),rgba(19,27,39,.98) 58%,rgba(71,49,18,.78))!important;
  box-shadow:0 0 0 1px rgba(255,193,69,.08),inset 0 0 28px rgba(255,174,38,.045)!important;
}
.sw-goal-card-compact .sw-goal-progress-premium:before{
  content:"";
  position:absolute;
  z-index:0;
  right:-4%;
  bottom:-18px;
  width:66%;
  height:88%;
  opacity:.46;
  background:linear-gradient(145deg,rgba(27,49,80,.9),rgba(11,19,32,.96) 62%,rgba(86,61,25,.72));
  clip-path:polygon(0 100%,0 78%,13% 60%,23% 72%,38% 28%,49% 66%,62% 46%,74% 74%,87% 34%,100% 58%,100% 100%);
  pointer-events:none;
}
.sw-goal-card-compact .sw-goal-progress-premium:after{
  content:"";
  position:absolute;
  z-index:1;
  inset:-1px;
  border-radius:14px;
  pointer-events:none;
  background:linear-gradient(120deg,transparent 0 34%,rgba(255,220,145,.16) 48%,transparent 58%);
  opacity:.38;
  mix-blend-mode:screen;
}
.sw-goal-card-compact .sw-goal-progress-value,
.sw-goal-card-compact .sw-goal-progress-ring{
  position:relative;
  z-index:2;
}
.sw-goal-card-compact .sw-goal-progress-value{
  padding:8px 9px!important;
  min-height:50px!important;
  border-radius:12px!important;
  background:rgba(8,16,27,.55)!important;
  border:1px solid rgba(109,135,169,.18)!important;
}

/* SW career road — prevent first-frame misalignment/flicker (2026-09-25) */
.sw-road-scroll:not([data-sw-ready="1"]){
  visibility:hidden!important;
}
.sw-road-scroll[data-sw-ready="1"]{
  visibility:visible!important;
}

/* Light theme: SW goal progress inner panel should stay light (2026-09-25) */
html[data-theme="light"] .sw-goal-card-compact .sw-goal-progress-value{
  background:linear-gradient(145deg,#ffffff,#f1f5fa)!important;
  border-color:#d7e1ec!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 18px rgba(45,64,89,.06)!important;
}
html[data-theme="light"] .sw-goal-card-compact .sw-goal-progress-value b{
  color:#18212e!important;
}
html[data-theme="light"] .sw-goal-card-compact .sw-goal-progress-value i{
  background:#dfe6ef!important;
}
/* SW progress restyle — DJIVA navy, dark theme (2026-09-25) */
html:not([data-theme="light"]) .sw-next-premium,
html:not([data-theme="light"]) .sw-goal-card-compact .sw-goal-progress-premium{
  background:
    radial-gradient(120% 145% at 86% 100%,rgba(62,105,166,.18) 0%,rgba(62,105,166,0) 44%),
    linear-gradient(145deg,rgba(18,29,45,.99),rgba(10,18,29,.99) 60%,rgba(15,27,42,.99))!important;
  border-color:rgba(88,142,216,.30)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 10px 26px rgba(0,0,0,.18)!important;
}
html:not([data-theme="light"]) .sw-next-premium:after,
html:not([data-theme="light"]) .sw-goal-card-compact .sw-goal-progress-premium:after{
  background:linear-gradient(120deg,transparent 0 34%,rgba(132,180,255,.09) 49%,transparent 61%)!important;
  opacity:.55!important;
  mix-blend-mode:screen!important;
}
html:not([data-theme="light"]) .sw-next-premium .sw-next-mountains{
  opacity:.28!important;
  filter:saturate(.45) hue-rotate(168deg) brightness(.86)!important;
}
html:not([data-theme="light"]) .sw-next-value,
html:not([data-theme="light"]) .sw-goal-card-compact .sw-goal-progress-value{
  background:linear-gradient(145deg,rgba(11,20,33,.94),rgba(17,29,46,.96))!important;
  border-color:rgba(83,121,172,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}html:not([data-theme="light"]) .sw-goal-card-compact .sw-goal-progress-premium:before{
  background:linear-gradient(145deg,rgba(35,58,88,.70),rgba(12,21,34,.86) 62%,rgba(33,51,72,.62))!important;
  opacity:.30!important;
}
html[data-theme="light"] .sw-next-premium,
html[data-theme="light"] .sw-goal-card-compact .sw-goal-progress-premium{
  color:#18212e!important;
  background:
    radial-gradient(120% 150% at 88% 100%,rgba(76,132,207,.10) 0%,rgba(76,132,207,0) 45%),
    linear-gradient(145deg,#ffffff,#f4f8fc 62%,#eef4fa)!important;
  border-color:#cdddef!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 8px 22px rgba(38,64,96,.07)!important;
}
html[data-theme="light"] .sw-next-premium:after,
html[data-theme="light"] .sw-goal-card-compact .sw-goal-progress-premium:after{
  background:linear-gradient(120deg,transparent 0 34%,rgba(83,139,214,.08) 49%,transparent 61%)!important;
  opacity:.5!important;
  mix-blend-mode:multiply!important;
}
html[data-theme="light"] .sw-next-premium .sw-next-mountains{
  opacity:.14!important;
  filter:saturate(.35) hue-rotate(168deg) brightness(1.45)!important;
}
html[data-theme="light"] .sw-goal-card-compact .sw-goal-progress-premium:before{
  background:linear-gradient(145deg,#dfe9f4,#eef4fa 62%,#d7e4f0)!important;
  opacity:.42!important;
}/* SW progress accents — blue progress, gold only as small target cue */
.sw-next-value i span,
.sw-goal-progress-value i span{
  background:linear-gradient(90deg,#5f9fff,#86b9ff)!important;
}
.sw-next-ring,
.sw-goal-progress-ring{
  background:conic-gradient(#6aa8ff calc(var(--p)*1%),rgba(105,132,168,.20) 0)!important;
  box-shadow:0 0 0 1px rgba(104,160,235,.30),0 0 20px rgba(72,133,214,.10)!important;
}
html:not([data-theme="light"]) .sw-next-ring:before,
html:not([data-theme="light"]) .sw-goal-progress-ring:before{
  background:radial-gradient(circle at 50% 35%,#17263a,#0b1421 74%)!important;
}
html[data-theme="light"] .sw-next-value,
html[data-theme="light"] .sw-goal-card-compact .sw-goal-progress-value{
  background:linear-gradient(145deg,#ffffff,#f1f5fa)!important;
  border-color:#d5e1ee!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 5px 14px rgba(42,67,98,.05)!important;
}
html[data-theme="light"] .sw-next-value b,
html[data-theme="light"] .sw-goal-progress-value b,
html[data-theme="light"] .sw-next-ring b,
html[data-theme="light"] .sw-goal-progress-ring b{color:#18212e!important}
html[data-theme="light"] .sw-next-ring small,
html[data-theme="light"] .sw-goal-progress-ring small{color:#687789!important}
html[data-theme="light"] .sw-next-ring:before,
html[data-theme="light"] .sw-goal-progress-ring:before{
  background:radial-gradient(circle at 50% 35%,#ffffff,#edf3f9 74%)!important;
}/* SW dashboard density/scale pass — 2026-09-25 */
.sw-dashboard-card{
  padding:12px!important;
}
.sw-next-premium-compact{
  padding:14px 14px!important;
  margin:6px 0 8px!important;
}
.sw-next-compact-row{
  grid-template-columns:minmax(0,1fr) 74px!important;
  gap:11px!important;
  margin-top:9px!important;
}
.sw-next-value-compact{
  min-height:56px!important;
  padding:9px 10px!important;
  grid-template-columns:33px minmax(0,1fr)!important;
}
.sw-next-value-compact .sw-next-value-icon{
  width:31px!important;
  height:31px!important;
}
.sw-next-ring-compact{
  width:70px!important;
  height:70px!important;
}
.sw-main-summary-row{
  gap:6px!important;
  margin-top:8px!important;
  padding-top:8px!important;
}
.sw-main-summary{
  min-height:90px!important;
  padding:10px 5px!important;
}
.sw-summary-bars,.sw-summary-link{
  width:30px!important;
  height:30px!important;
}
.sw-main-summary small{
  margin-top:6px!important;
  font-size:8.7px!important;
}
.sw-contacts-strip{
  grid-template-columns:minmax(0,1fr) 86px!important;
  gap:9px!important;
  margin-top:7px!important;
  padding:10px!important;
  min-height:58px!important;
}
.sw-contact-add{
  min-height:38px!important;
}
.sw-contact-add span{font-size:26px!important}
.sw-contact-avatars i{
  width:27px!important;
  height:27px!important;
}
@media(max-width:390px){
  .sw-dashboard-card{padding:11px!important}
  .sw-next-premium-compact{padding:12px!important}
  .sw-next-compact-row{grid-template-columns:minmax(0,1fr) 66px!important;gap:9px!important}
  .sw-next-value-compact{min-height:50px!important;padding:8px 9px!important}
  .sw-next-ring-compact{width:64px!important;height:64px!important}
  .sw-main-summary{min-height:84px!important;padding:9px 4px!important}
  .sw-main-summary small{font-size:7.8px!important}
  .sw-summary-bars,.sw-summary-link{width:27px!important;height:27px!important}
  .sw-contacts-strip{grid-template-columns:minmax(0,1fr) 76px!important;padding:9px!important;min-height:54px!important}
}/* SW flat dashboard experiment — remove outer cards, expand inner blocks (2026-09-25) */
.sw-dashboard-card{
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.sw-dashboard-card:before{display:none!important}
.sw-dashboard-card .sw-next-premium-compact{
  margin:0 0 10px!important;
  width:100%!important;
  border-radius:18px!important;
}
.sw-dashboard-card .sw-main-summary-row{
  margin-top:0!important;
  padding-top:0!important;
  border-top:0!important;
  gap:8px!important;
}
.sw-dashboard-card .sw-main-summary{
  min-height:92px!important;
  border-radius:16px!important;
}
.sw-dashboard-card .sw-contacts-strip{
  margin-top:10px!important;
  width:100%!important;
  border-radius:16px!important;
}.sw-upcoming{
  margin-top:18px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html[data-theme="light"] .sw-upcoming{
  background:transparent!important;
}
.sw-upcoming-head{
  margin:0 3px 9px!important;
}
.sw-upcoming-list{
  gap:8px!important;
}
.sw-upcoming-row{
  padding:12px 13px!important;
  border:1px solid rgba(96,165,250,.22)!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,rgba(23,34,49,.97),rgba(15,23,34,.98))!important;
  box-shadow:0 8px 22px rgba(0,0,0,.10)!important;
}
html[data-theme="light"] .sw-upcoming-row{
  background:linear-gradient(145deg,#ffffff,#f5f8fc)!important;
  border-color:#d6e2ee!important;
  box-shadow:0 6px 18px rgba(43,67,96,.06)!important;
}
@media(max-width:390px){
  .sw-dashboard-card .sw-main-summary-row{gap:6px!important}
  .sw-dashboard-card .sw-main-summary{min-height:86px!important}
  .sw-upcoming{margin-top:16px!important}
  .sw-upcoming-row{padding:11px!important}
}/* SW contacts strip — subtle inner surface after flat layout (2026-09-25) */
html:not([data-theme="light"]) .sw-dashboard-card .sw-contacts-strip{
  background:linear-gradient(145deg,rgba(17,28,44,.94),rgba(10,18,30,.96))!important;
  border-color:rgba(84,126,181,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 6px 18px rgba(0,0,0,.10)!important;
}
html[data-theme="light"] .sw-dashboard-card .sw-contacts-strip{
  background:linear-gradient(145deg,#ffffff,#f3f7fb)!important;
  border-color:#d4e0ec!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 5px 16px rgba(43,67,96,.05)!important;
}
/* SW AI knowledge chat — 2026-09-26 */
.sw-ai-box{margin-top:16px!important;padding:14px!important;border:1px solid rgba(96,165,250,.20)!important;background:linear-gradient(145deg,rgba(18,28,43,.97),rgba(12,20,32,.98))!important}
html[data-theme="light"] .sw-ai-box{background:linear-gradient(145deg,#fff,#f5f8fc)!important;border-color:#d8e3ef!important}
.sw-ai-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.sw-ai-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;font-size:20px;background:rgba(59,130,246,.15);border:1px solid rgba(96,165,250,.24)}
.sw-ai-head h2{margin:0;font-size:18px;line-height:1.15}
.sw-ai-head p{margin:3px 0 0;color:var(--mu);font-size:12px;line-height:1.3}
.sw-ai-messages{display:flex;flex-direction:column;gap:8px;margin:4px 0 10px}
.sw-ai-empty{font-size:13px;line-height:1.45;color:var(--mu);padding:8px 2px}
.sw-ai-msg{display:flex}
.sw-ai-msg>div{max-width:92%;padding:10px 12px;border-radius:15px;font-size:14px;line-height:1.45;white-space:normal}
.sw-ai-msg.user{justify-content:flex-end}
.sw-ai-msg.user>div{background:rgba(59,130,246,.18);border:1px solid rgba(96,165,250,.22)}
.sw-ai-msg.ai{justify-content:flex-start;flex-direction:column;align-items:flex-start}
.sw-ai-msg.ai>div{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07)}
html[data-theme="light"] .sw-ai-msg.ai>div{background:#f4f7fb;border-color:#e1e8f0}
.sw-ai-msg.loading>div{color:var(--mu);font-style:italic}

.sw-ai-sources{display:flex;flex-wrap:wrap;gap:5px;margin:5px 3px 0;color:var(--mu);font-size:10px;line-height:1.25}
.sw-ai-sources span{display:inline-block}
.sw-ai-form{display:flex;align-items:flex-end;gap:8px}
.sw-ai-form textarea{flex:1;min-height:46px;max-height:120px;resize:none;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.12);color:var(--tx);padding:11px 12px;font:inherit;font-size:16px!important;line-height:1.35;outline:none}
html[data-theme="light"] .sw-ai-form textarea{background:#fff}
.sw-ai-form textarea:focus{border-color:rgba(96,165,250,.55)}
.sw-ai-form button{width:46px;height:46px;flex:0 0 46px;border:0;border-radius:14px;background:#3b82f6;color:#fff;font-size:23px;font-weight:600;line-height:1;display:grid;place-items:center}
.sw-ai-form button:disabled,.sw-ai-form textarea:disabled{opacity:.55}
.sw-ai-note{display:block;margin:7px 2px 0;color:var(--mu);font-size:10px;line-height:1.35}
@media(max-width:390px){.sw-ai-box{padding:12px!important}.sw-ai-head h2{font-size:17px}.sw-ai-msg>div{max-width:95%}}

/* SW AI history — 2026-09-26 */
.sw-ai-head-copy{flex:1;min-width:0}
.sw-ai-history-link{border:0;background:transparent;color:#7fb4ff;font:inherit;font-size:13px;font-weight:700;padding:8px 0 8px 8px;white-space:nowrap}
.sw-ai-history-link i{font-style:normal;font-size:18px;vertical-align:-1px;margin-left:2px}
.sw-ai-history-screen .sw-tool-title{margin-bottom:14px}
.sw-ai-history-list{display:flex;flex-direction:column;gap:10px}
.sw-ai-history-card{padding:14px!important;margin:0!important;border:1px solid rgba(96,165,250,.18)!important;background:linear-gradient(145deg,rgba(18,28,43,.97),rgba(12,20,32,.98))!important}
html[data-theme="light"] .sw-ai-history-card{background:linear-gradient(145deg,#fff,#f5f8fc)!important;border-color:#d8e3ef!important}
.sw-ai-history-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}
.sw-ai-history-meta time{font-size:11px;color:var(--mu);font-weight:600}
.sw-ai-history-meta button{border:0;background:transparent;color:#ef6b6b;font:inherit;font-size:12px;font-weight:700;padding:4px 0 4px 8px}

.sw-ai-history-question,.sw-ai-history-answer{display:flex;flex-direction:column;gap:5px}
.sw-ai-history-question{padding:10px 12px;border-radius:14px;background:rgba(59,130,246,.14);border:1px solid rgba(96,165,250,.17);margin-bottom:9px}
.sw-ai-history-question small,.sw-ai-history-answer small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--mu);font-weight:700}
.sw-ai-history-question b{font-size:14px;line-height:1.4;font-weight:650}
.sw-ai-history-answer{padding:1px 2px 0}
.sw-ai-history-answer p{margin:0;font-size:14px;line-height:1.5;color:var(--tx)}
.sw-ai-history-state{display:flex;flex-direction:column;gap:5px;text-align:center;color:var(--mu);padding:24px 16px!important}
.sw-ai-history-state b{color:var(--tx);font-size:16px}
.sw-ai-history-state span{font-size:13px}
@media(max-width:390px){.sw-ai-history-link{font-size:12px}.sw-ai-history-card{padding:12px!important}}

.sw-ai-saved-note{display:block;margin:6px 2px 0;color:#69b88b;font-size:11px;line-height:1.35;font-weight:650}
html[data-theme="light"] .sw-ai-saved-note{color:#2f8b59}

.sw-ai-question-offer{margin-top:8px;padding:10px 11px;border-radius:14px;background:rgba(105,184,139,.08);border:1px solid rgba(105,184,139,.20)}
.sw-ai-question-offer p{margin:0 0 9px;font-size:12px;line-height:1.4;color:var(--tx)}
.sw-ai-question-offer>div{display:flex;gap:7px}
.sw-ai-question-offer button{border:0;border-radius:10px;padding:8px 12px;font:inherit;font-size:12px;font-weight:700}
.sw-ai-question-offer .yes{background:#23885a;color:#fff}
.sw-ai-question-offer .later{background:rgba(255,255,255,.07);color:var(--mu)}
html[data-theme="light"] .sw-ai-question-offer{background:#f1faf5;border-color:#cde8d8}
html[data-theme="light"] .sw-ai-question-offer .later{background:#eef2f6;color:#687789}

/* SW AI official-site source — 2026-09-26 */
.sw-ai-official-source{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding:10px 11px;border-radius:13px;text-decoration:none!important;background:rgba(59,130,246,.09);border:1px solid rgba(96,165,250,.20);color:var(--tx)!important}
.sw-ai-official-source>span{display:flex;flex-direction:column;min-width:0;gap:2px}
.sw-ai-official-source small{font-size:10px;line-height:1.2;text-transform:uppercase;letter-spacing:.06em;color:#7fb4ff;font-weight:700}
.sw-ai-official-source b{font-size:12px;line-height:1.35;font-weight:650;white-space:normal}
.sw-ai-official-source em{font-size:10px;line-height:1.25;font-style:normal;color:var(--mu)}
.sw-ai-official-source>i{font-style:normal;font-size:17px;color:#7fb4ff;flex:0 0 auto}
html[data-theme="light"] .sw-ai-official-source{background:#f2f7fd;border-color:#d3e2f2}
html[data-theme="light"] .sw-ai-official-source small,html[data-theme="light"] .sw-ai-official-source>i{color:#3478d4}

/* SW AI inline links — 2026-09-26 */
.sw-ai-inline-link{color:#7fb4ff!important;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:3px!important;font-weight:700!important;cursor:pointer}
.sw-ai-inline-link:visited{color:#9dbfff!important}
.sw-ai-inline-link:active{opacity:.72}
html[data-theme="light"] .sw-ai-inline-link{color:#296fc7!important}


/* SW feedback entry + form — 2026-09-26 */
.sw-main-title{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 98px;
  align-items:center!important;
  gap:10px!important;
}
.sw-main-title-copy{min-width:0}
.sw-main-name{display:flex;align-items:center;gap:7px;min-width:0;margin-top:2px}
.sw-main-name>b{flex:0 0 auto;font-size:27px;line-height:1;font-weight:400}
.sw-main-name>h1{min-width:0;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-feedback-trigger{
  width:98px;min-height:48px;margin:0;padding:7px 8px;
  border:1px solid rgba(96,165,250,.48);border-radius:13px;
  background:linear-gradient(145deg,rgba(40,88,151,.30),rgba(22,43,72,.55));
  color:#85b8ff;font:800 10.5px/1.18 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  text-align:center;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)
}
.sw-feedback-trigger:active{transform:scale(.98);background:rgba(55,99,157,.36)}
html[data-theme="light"] .sw-feedback-trigger{background:#edf5ff;border-color:#b9d6fb;color:#2c6fbd}
.sw-feedback-overlay{z-index:10120!important}
.sw-feedback-sheet{max-width:560px!important;padding-bottom:max(20px,calc(env(safe-area-inset-bottom) + 14px))!important}
.sw-feedback-sheet .sw-form-head{margin-bottom:0!important}
.sw-feedback-help{margin:8px 0 12px;color:var(--mu);font-size:12px;line-height:1.45}
.sw-feedback-sheet textarea{
  display:block;width:100%;min-height:128px;box-sizing:border-box;
  border:1px solid var(--line);border-radius:14px;background:rgba(9,17,28,.66);
  color:var(--tx);padding:12px 13px;font:400 16px/1.45 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  resize:vertical;outline:none;-webkit-text-size-adjust:100%
}
.sw-feedback-sheet textarea:focus{border-color:rgba(96,165,250,.62);box-shadow:0 0 0 3px rgba(96,165,250,.08)}
html[data-theme="light"] .sw-feedback-sheet textarea{background:#f7f9fc}
.sw-feedback-file{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;opacity:0!important}
.sw-feedback-attach{
  display:flex;align-items:center;justify-content:center;box-sizing:border-box;
  width:100%;min-height:46px;margin-top:10px;border:1px dashed rgba(96,165,250,.46);
  border-radius:13px;background:rgba(96,165,250,.06);color:#8bbcff;
  font:750 13px/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;cursor:pointer
}
.sw-feedback-attach span{margin-right:5px}.sw-feedback-attach.is-disabled{pointer-events:none;opacity:.58}
.sw-feedback-preview{
  display:grid;grid-template-columns:66px minmax(0,1fr) 34px;gap:10px;align-items:center;
  margin-top:10px;padding:8px;border:1px solid rgba(96,165,250,.28);border-radius:13px;
  background:rgba(96,165,250,.055)
}
.sw-feedback-preview img{width:66px;height:66px;object-fit:cover;border-radius:9px;border:1px solid rgba(255,255,255,.08)}
.sw-feedback-preview>div{min-width:0}.sw-feedback-preview b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
.sw-feedback-preview span{display:block;margin-top:3px;color:var(--mu);font-size:10px}
.sw-feedback-preview button{
  width:32px;height:32px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--mu);font-size:14px
}
.sw-feedback-send{margin-top:12px!important}
.sw-feedback-limit{display:block;margin-top:7px;color:var(--mu);font-size:9.5px;line-height:1.35;text-align:center}
.sw-feedback-sheet button:disabled,.sw-feedback-sheet textarea:disabled{opacity:.58}
@media(max-width:390px){
  .sw-main-title{grid-template-columns:minmax(0,1fr) 92px;gap:7px!important}
  .sw-main-name{gap:5px}.sw-main-name>b{font-size:24px}
  .sw-main-name>h1{font-size:25px!important}
  .sw-feedback-trigger{width:92px;min-height:45px;padding:6px;font-size:9.8px}
}

/* Virtual keyboard: keep bottom navigation at the physical screen bottom.
   Mobile browsers shrink VisualViewport for the keyboard; hiding the fixed
   nav prevents it from jumping above the keyboard while a form is edited. */
html.goalup-keyboard-open .v2-nav{
  display:none !important;
}



/* Desktop Important Event time field — 2026-10-06 */
@media (min-width:900px){
  #e_time{
    width:118px !important;
    min-width:118px !important;
  }
}

/* Habits settings: viewport-safe modal, independent vertical scrolling on mobile. */
.ov.habits-modal{box-sizing:border-box;position:fixed;inset:0;overflow-y:auto;overscroll-behavior:contain;align-items:safe center;justify-content:center;padding:12px max(12px,env(safe-area-inset-right)) 12px max(12px,env(safe-area-inset-left));-webkit-overflow-scrolling:touch}
.ov.habits-modal .habits-pop{box-sizing:border-box;flex:0 1 430px;max-width:430px;max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:max(20px,env(safe-area-inset-bottom));touch-action:pan-y}
.ov.habits-modal .habits-modal-head{position:sticky;top:-26px;z-index:2;background:var(--card);padding-top:10px;padding-bottom:10px}
.ov.habits-modal .habits-modal-head .ico{flex-shrink:0;min-width:40px;min-height:40px;font-size:24px;color:var(--tx)}
@media(max-height:650px){.ov.habits-modal{align-items:flex-start}.ov.habits-modal .habits-pop{max-height:calc(100dvh - 24px)}}

/* Habit edit/delete actions */
.habit-archive-actions,.habit-active-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0}
.habit-archive-actions .ico,.habit-active-actions .ico{flex:0 0 auto;min-width:34px;min-height:40px;font-size:20px;color:var(--tx)}
.habit-archive-actions .btn{min-width:0!important;padding:8px 10px!important}
.habit-manage-row:has(.habit-archive-actions){grid-template-columns:26px minmax(0,1fr) auto;gap:6px;padding:8px}
.habit-manage-row:has(.habit-active-actions){grid-template-columns:28px minmax(0,1fr) auto}
@media(max-width:380px){.habit-archive-actions{gap:0}.habit-archive-actions .ico{min-width:30px}.habit-archive-actions .btn{font-size:12px;padding:7px!important}}

/* Compact restore action for archived habits */
.habit-archive-actions .habit-restore-check{display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;border:1px solid rgba(34,197,94,.38);border-radius:12px;color:#4ade80;font-size:25px;font-weight:800;background:rgba(34,197,94,.10)}
.habit-archive-actions .habit-restore-check:active{background:rgba(34,197,94,.24)}
.habit-manage-row:has(.habit-archive-actions){grid-template-columns:28px minmax(0,1fr) auto}

/* In-app confirmation and editing instead of blocked native JS dialogs */
.habit-action-dialog{z-index:11000;padding:16px;box-sizing:border-box}
.habit-action-pop{max-width:390px;text-align:left;box-sizing:border-box}
.habit-action-pop h2{font-size:20px;margin:0 0 16px}
.habit-action-pop p{font-size:14px;line-height:1.5;margin:0 0 18px}
.habit-action-pop label{display:block;font-size:13px;color:var(--mu);margin:12px 0 6px}
.habit-action-pop input{box-sizing:border-box;width:100%;min-height:44px}
.habit-action-buttons{display:flex;gap:10px;margin-top:20px}
.habit-action-buttons .btn{flex:1;min-width:0;padding:12px 8px}
.habit-action-buttons .habit-cancel{background:var(--surface-2);color:var(--tx);border:1px solid var(--line);box-shadow:none}
.habit-action-buttons .habit-danger{background:#b93838;color:#fff;box-shadow:none}
/* Habits: compact heading and square settings control */
.habits-goal-card .habits-head{align-items:center;min-height:42px;margin-bottom:4px}
.habits-goal-card .habits-head>b{display:block;line-height:1.25}
.habits-goal-card .habits-settings-compact{display:grid;place-items:center;flex:0 0 42px;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;padding:0!important;border-radius:12px!important;font-size:22px!important;line-height:1!important;box-sizing:border-box;cursor:pointer}
.habits-goal-card .habits-list{margin-top:0}
/* Smaller gear and tighter habit rows, keeping accessible tap targets */
.habits-goal-card .habits-settings-compact{flex:0 0 38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important;border-radius:11px!important;font-size:unset!important}
.habits-goal-card .habits-settings-compact svg{display:block;width:19px;height:19px;pointer-events:none}
.habits-goal-card .habits-head{min-height:38px;margin-bottom:2px}
.habits-goal-card .habits-list{gap:0!important}
.habits-goal-card .habit-row{min-height:70px;padding:8px 0!important;gap:9px;box-sizing:border-box}
.habits-goal-card .habit-today{width:38px;height:38px}
.habits-goal-card .habit-main{gap:1px}
.habits-goal-card .habit-main b{line-height:1.25}
.habits-goal-card .habit-main span{line-height:1.3}
/* Compact habits layout v3 */
.habits-goal-card .habits-settings-compact{flex-basis:32px!important;width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;max-height:32px!important;border-radius:9px!important}
.habits-goal-card .habits-settings-compact svg{width:17px;height:17px}
.habits-goal-card .habits-head{min-height:32px;margin-bottom:0}
.habits-goal-card .habit-row{min-height:60px!important;padding:5px 0!important;gap:8px!important}
.habits-goal-card .habits-list{gap:0!important}
.habits-goal-card .habit-today{width:36px;height:36px}

/* ERR-000067 — подтверждение удаления вопроса без системного confirm */
.q-delete-sheet{max-height:82dvh}
.q-delete-prompt{margin:8px 0 12px;color:var(--mu);font-size:13px;line-height:1.45}
.q-delete-preview{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(127,140,160,.07);font-size:14px;font-weight:650;line-height:1.4;color:var(--tx);overflow-wrap:anywhere}
.q-delete-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.q-delete-buttons>button{min-height:46px;border-radius:12px;font-size:13px;font-weight:750}
.q-delete-confirm{border:1px solid rgba(255,100,100,.40);background:#c83545;color:#fff}
.q-delete-confirm:disabled{opacity:.58;cursor:wait}
html[data-theme="light"] .q-delete-confirm{color:#fff}
