/* v81 — simple responsive post-login dashboard, based on v78.
   Important: this file is loaded before premium-ui.css, so dashboard layout
   declarations use high-specificity + !important where premium global rules
   could otherwise override .app-main. */
body.page-dashboard.dashboard-simple-v81{
  --dash-surface:#FAF7F0;
  --dash-card:#FFFFFF;
  --dash-soft:#F3EEE4;
  --dash-line:#E7E1D4;
  --dash-ink:#0D1538;
  --dash-muted:#7B8296;
  --dash-primary:#6B2CFF;
  --dash-primary-soft:#EEE5FF;
  background:var(--dash-surface);
  overflow-x:hidden;
}
body.page-dashboard.dashboard-simple-v81 .app-main{
  width:min(1180px,calc(100vw - 32px))!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:22px 0 132px!important;
  min-height:auto!important;
  height:auto!important;
  display:block!important;
  overflow:visible!important;
}
body.page-dashboard.dashboard-simple-v81 .dock-wrap{
  display:flex!important;
}
.sr-only{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}
.today-shell{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:28px;
  align-items:start;
}
.today-rail{
  position:sticky;
  top:92px;
  min-height:calc(100dvh - 122px);
  border:1px solid rgba(231,225,212,.92);
  border-radius:30px;
  background:rgba(255,255,255,.58);
  box-shadow:0 22px 60px -46px rgba(13,21,56,.45);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  padding:18px 14px;
}
.today-rail-brand{
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 8px 18px;
  color:var(--dash-ink);
  text-decoration:none;
  font-weight:900;
}
.today-rail-logo{
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,#6B2CFF,#8F5BFF);
  box-shadow:0 14px 30px -18px rgba(107,44,255,.9);
}
.today-nav{display:flex;flex-direction:column;gap:7px}
.today-nav a{
  min-height:46px;
  border-radius:16px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:0 12px;
  color:#50586F;
  font-weight:800;
  font-size:14px;
  text-decoration:none;
}
.today-nav a i{font-size:20px;color:#66708A}
.today-nav a:hover{background:rgba(107,44,255,.06);color:var(--dash-ink)}
.today-nav a.is-active{color:var(--dash-primary);background:var(--dash-primary-soft)}
.today-nav a.is-active i{color:var(--dash-primary)}
.today-main{min-width:0;display:flex;flex-direction:column;gap:18px}
.today-hero-card{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.80));
  border:1px solid var(--dash-line);
  border-radius:32px;
  box-shadow:0 28px 70px -54px rgba(13,21,56,.58);
  padding:30px;
}
.today-kicker{
  color:var(--dash-primary);
  font-weight:950;
  letter-spacing:.05em;
  font-size:13px;
  text-transform:uppercase;
  margin-bottom:8px;
}
.today-hero-card h1{
  margin:0;
  font-size:clamp(34px,4.8vw,62px);
  line-height:.96;
  letter-spacing:-.055em;
  color:var(--dash-ink);
}
.today-hero-card p{
  margin:14px 0 22px;
  color:#5B6276;
  font-size:clamp(18px,2vw,24px);
  line-height:1.38;
  max-width:780px;
}
.today-intent{
  display:grid;
  grid-template-columns:minmax(0,1fr) 56px;
  gap:12px;
  align-items:center;
  max-width:840px;
}
.today-intent input{
  width:100%;
  min-height:64px;
  border:1px solid var(--dash-line);
  border-radius:22px;
  padding:0 22px;
  background:#FBF8F1;
  color:var(--dash-ink);
  font-size:17px;
  font-weight:650;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
}
.today-intent input::placeholder{color:#8A92A6;font-weight:600}
.today-intent input:focus{border-color:rgba(107,44,255,.42);box-shadow:0 0 0 5px rgba(107,44,255,.10)}
.today-intent button{
  width:56px;
  height:56px;
  border:0;
  border-radius:20px;
  color:#fff;
  background:var(--dash-primary);
  box-shadow:0 18px 40px -20px rgba(107,44,255,.95);
  display:grid;
  place-items:center;
  cursor:pointer;
}
.today-intent button i{font-size:27px}
.today-actions{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.today-action-card{
  min-height:138px;
  border:1px solid var(--dash-line);
  border-radius:24px;
  background:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
  color:var(--dash-ink);
  text-decoration:none;
  font-weight:900;
  box-shadow:0 20px 50px -42px rgba(13,21,56,.42);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.today-action-card:hover{transform:translateY(-2px);border-color:rgba(107,44,255,.28);box-shadow:0 24px 56px -38px rgba(107,44,255,.45)}
.today-action-card strong{max-width:150px;font-size:15px;line-height:1.22}
.today-action-icon{
  width:48px;
  height:48px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:var(--dash-primary-soft);
  color:var(--dash-primary);
}
.today-action-icon i{font-size:25px}
.today-grid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:16px;
  align-items:stretch;
}
.today-panel{
  border:1px solid var(--dash-line);
  border-radius:28px;
  background:rgba(255,255,255,.86);
  box-shadow:0 22px 60px -48px rgba(13,21,56,.48);
  padding:22px;
}
.today-panel-large{grid-row:span 2}
.today-panel-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:16px;
}
.today-panel-head span,
.today-signal span{
  display:block;
  color:#8A92A6;
  font-size:12px;
  line-height:1;
  letter-spacing:.05em;
  text-transform:uppercase;
  font-weight:950;
  margin-bottom:7px;
}
.today-panel-head h2,
.today-signal h2{
  margin:0;
  color:var(--dash-ink);
  font-size:21px;
  line-height:1.08;
  letter-spacing:-.03em;
}
.today-panel-head a{color:var(--dash-primary);font-size:13px;font-weight:950;text-decoration:none}
.resume-list{display:flex;flex-direction:column;gap:10px}
.resume-item{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:12px;
  border-radius:20px;
  background:#FBF8F1;
  border:1px solid rgba(231,225,212,.72);
  color:var(--dash-ink);
  text-decoration:none;
}
.resume-item:hover{background:#fff;border-color:rgba(107,44,255,.22)}
.resume-item img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.resume-item b{display:block;font-size:15px;line-height:1.1;margin-bottom:4px}
.resume-item small{display:block;color:#626B82;font-weight:650;font-size:13px;line-height:1.24}
.resume-item em{
  min-width:28px;
  height:28px;
  border-radius:999px;
  background:var(--dash-primary);
  color:#fff;
  display:grid;
  place-items:center;
  font-style:normal;
  font-weight:950;
  font-size:12px;
}
.loop-mini-list{display:flex;flex-direction:column;gap:9px;margin-bottom:14px}
.loop-mini-list a{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  border-radius:20px;
  border:1px solid rgba(231,225,212,.78);
  color:var(--dash-ink);
  text-decoration:none;
  background:#FBF8F1;
}
.loop-mini-list a:hover{background:#fff;border-color:rgba(107,44,255,.22)}
.loop-mini-list i{
  width:42px;
  height:42px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:var(--dash-primary-soft);
  color:var(--dash-primary);
  font-size:23px;
  flex:0 0 auto;
}
.loop-mini-list b{display:block;font-size:15px;line-height:1.1;margin-bottom:4px}
.loop-mini-list small{display:block;color:#7B8296;font-weight:800;font-size:12px;line-height:1.1}
.today-secondary-btn{
  min-height:48px;
  border-radius:18px;
  background:#F3EEE4;
  border:1px solid var(--dash-line);
  color:#303B62;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-decoration:none;
  font-weight:950;
}
.today-secondary-btn:hover{background:#fff;border-color:rgba(107,44,255,.28)}
.today-signal{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:14px;
  align-items:start;
  background:linear-gradient(135deg,rgba(238,229,255,.9),rgba(255,255,255,.84));
}
.today-signal-icon{
  width:54px;
  height:54px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:var(--dash-primary);
  background:#fff;
  box-shadow:0 12px 26px -20px rgba(107,44,255,.8);
}
.today-signal-icon i{font-size:26px}
.today-signal p{margin:10px 0 0;color:#626B82;font-size:14px;line-height:1.4;font-weight:650}

@media (max-width:1100px){
  body.page-dashboard.dashboard-simple-v81 .app-main{width:min(100vw - 22px,860px)!important;padding-top:14px!important}
  .today-shell{grid-template-columns:1fr;gap:16px}
  .today-rail{position:relative;top:auto;min-height:0;border-radius:24px;padding:12px}
  .today-rail-brand{display:none}
  .today-nav{flex-direction:row;overflow:auto;padding-bottom:2px;scrollbar-width:none}
  .today-nav::-webkit-scrollbar{display:none}
  .today-nav a{white-space:nowrap;min-width:max-content;background:#fff;border:1px solid rgba(231,225,212,.72)}
}
@media (max-width:760px){
  body.page-dashboard.dashboard-simple-v81 .app-main{width:100%!important;max-width:100%!important;padding:10px 12px calc(106px + env(safe-area-inset-bottom))!important}
  body.page-dashboard.dashboard-simple-v81 .today-rail{display:none!important}
  .today-shell{display:block}
  .today-main{gap:12px}
  .today-hero-card{border-radius:26px;padding:22px}
  .today-hero-card h1{font-size:42px;letter-spacing:-.06em}
  .today-hero-card p{font-size:18px;margin-bottom:18px}
  .today-intent{grid-template-columns:minmax(0,1fr) 52px;gap:9px}
  .today-intent input{min-height:56px;border-radius:18px;font-size:15px;padding:0 16px}
  .today-intent button{width:52px;height:52px;border-radius:18px}
  .today-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .today-action-card{min-height:116px;border-radius:22px}
  .today-grid{grid-template-columns:1fr;gap:12px}
  .today-panel-large{grid-row:auto}
  .today-panel{border-radius:24px;padding:18px}
}
@media (max-width:430px){
  .today-hero-card h1{font-size:38px}
  .today-actions{grid-template-columns:1fr 1fr}
  .today-action-card strong{font-size:13px;max-width:118px}
  .today-action-icon{width:44px;height:44px;border-radius:16px}
  .resume-item{grid-template-columns:42px minmax(0,1fr) auto;padding:10px}
  .resume-item img{width:42px;height:42px}
  .resume-item small{font-size:12px}
}

/* ============================================================
   v80 — premium dashboard additions: next useful action + calm AI path
   ============================================================ */
.today-clarify-path{
  margin-top:16px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.today-clarify-path span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:0 11px;
  border-radius:999px;
  background:rgba(238,229,255,.72);
  color:#432089;
  border:1px solid rgba(216,199,255,.78);
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
.today-clarify-path i{font-size:16px;color:var(--dash-primary)}
.today-next-action{
  display:grid;
  grid-template-columns:56px minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  padding:18px 20px;
  border:1px solid rgba(216,199,255,.78);
  border-radius:26px;
  background:linear-gradient(135deg,rgba(238,229,255,.92),rgba(255,255,255,.92));
  box-shadow:0 24px 60px -48px rgba(107,44,255,.62), inset 0 1px 0 rgba(255,255,255,.72);
}
.today-next-orb{
  width:56px;
  height:56px;
  border-radius:20px;
  display:grid;
  place-items:center;
  background:#fff;
  color:var(--dash-primary);
  box-shadow:0 14px 30px -22px rgba(107,44,255,.88);
}
.today-next-orb i{font-size:27px}
.today-next-action small{
  display:block;
  margin-bottom:5px;
  color:var(--dash-primary);
  text-transform:uppercase;
  letter-spacing:.05em;
  font-size:12px;
  font-weight:950;
}
.today-next-action h2{
  margin:0;
  color:var(--dash-ink);
  font-size:20px;
  line-height:1.12;
  letter-spacing:-.03em;
}
.today-next-action p{
  margin:7px 0 0;
  color:#626B82;
  font-size:13px;
  line-height:1.42;
  font-weight:650;
}
.today-next-action a{
  min-height:44px;
  padding:0 18px;
  border-radius:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  background:var(--dash-primary);
  color:#fff;
  font-weight:950;
  box-shadow:0 18px 38px -22px rgba(107,44,255,.92);
}
.today-next-action a:hover{filter:brightness(1.04);transform:translateY(-1px)}
@media (max-width:760px){
  .today-clarify-path{gap:7px;margin-top:14px}
  .today-clarify-path span{font-size:11px;min-height:31px;padding:0 9px}
  .today-next-action{
    grid-template-columns:44px minmax(0,1fr);
    gap:12px;
    padding:15px;
    border-radius:24px;
  }
  .today-next-orb{width:44px;height:44px;border-radius:16px}
  .today-next-orb i{font-size:23px}
  .today-next-action h2{font-size:17px}
  .today-next-action p{font-size:12px}
  .today-next-action a{grid-column:1/-1;min-height:42px;width:100%}
}
@media (max-width:430px){
  .today-clarify-path span{flex:1 1 calc(50% - 6px);justify-content:center}
}


/* ============================================================
   v81 — action color identity on dashboard cards
   ============================================================ */
.today-action-card.bp-action-help,
.today-action-card.bp-action-need,
.today-action-card.bp-action-meet,
.today-action-card.bp-action-explore{
  border-color:color-mix(in oklab,var(--bp-action-fg) 18%,var(--dash-line));
  background:linear-gradient(180deg,#fff,color-mix(in oklab,var(--bp-action-bg) 36%,#fff));
}
.today-action-card.bp-action-help .today-action-icon,
.today-action-card.bp-action-need .today-action-icon,
.today-action-card.bp-action-meet .today-action-icon,
.today-action-card.bp-action-explore .today-action-icon{
  background:var(--bp-action-bg);
  color:var(--bp-action-fg);
  box-shadow:0 14px 32px -24px var(--bp-action-shadow);
}
.today-action-card.bp-action-help:hover,
.today-action-card.bp-action-need:hover,
.today-action-card.bp-action-meet:hover,
.today-action-card.bp-action-explore:hover{
  border-color:color-mix(in oklab,var(--bp-action-fg) 42%,var(--dash-line));
  box-shadow:0 28px 60px -42px var(--bp-action-shadow);
}
@media (hover:hover){
  .today-action-card.bp-action-help:hover .today-action-icon,
  .today-action-card.bp-action-need:hover .today-action-icon,
  .today-action-card.bp-action-meet:hover .today-action-icon,
  .today-action-card.bp-action-explore:hover .today-action-icon{transform:translateY(-1px) scale(1.03)}
}

/* ============================================================
   v82 — dashboard hover polish: color feedback without movement
   ============================================================ */
.today-action-card:hover,
.today-next-action a:hover{
  transform:none!important;
}
@media (hover:hover){
  .today-action-card.bp-action-help:hover .today-action-icon,
  .today-action-card.bp-action-need:hover .today-action-icon,
  .today-action-card.bp-action-meet:hover .today-action-icon,
  .today-action-card.bp-action-explore:hover .today-action-icon{
    transform:none!important;
  }
}


/* ============================================================
   v83 — dashboard premium polish and v83 body class compatibility
   ============================================================ */
body.page-dashboard.dashboard-simple-v83{
  --dash-surface:#FAF7F0;
  --dash-card:#FFFFFF;
  --dash-soft:#F3EEE4;
  --dash-line:#E7E1D4;
  --dash-ink:#0D1538;
  --dash-muted:#7B8296;
  --dash-primary:#6B2CFF;
  --dash-primary-soft:#EEE5FF;
  background:var(--dash-surface);
  overflow-x:hidden;
}
body.page-dashboard.dashboard-simple-v83 .app-main{
  width:min(1180px,calc(100vw - 32px))!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:22px 0 132px!important;
  min-height:auto!important;
  height:auto!important;
  display:block!important;
  overflow:visible!important;
}
body.page-dashboard.dashboard-simple-v83 .dock-wrap{display:flex!important;}

body.page-dashboard .today-hero-card,
body.page-dashboard .today-panel,
body.page-dashboard .today-next-action,
body.page-dashboard .today-action-card,
body.page-dashboard .today-rail{
  border-color:rgba(231,225,212,.95)!important;
}
body.page-dashboard .today-action-card,
body.page-dashboard .resume-item,
body.page-dashboard .loop-mini-list a,
body.page-dashboard .today-secondary-btn,
body.page-dashboard .today-next-action a{
  transition:background .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease),color .16s var(--ease)!important;
}
body.page-dashboard .today-action-card:hover,
body.page-dashboard .resume-item:hover,
body.page-dashboard .loop-mini-list a:hover,
body.page-dashboard .today-secondary-btn:hover{
  transform:none!important;
  box-shadow:0 22px 54px -42px rgba(107,44,255,.42)!important;
}
body.page-dashboard .today-action-card:focus-visible,
body.page-dashboard .resume-item:focus-visible,
body.page-dashboard .loop-mini-list a:focus-visible,
body.page-dashboard .today-secondary-btn:focus-visible{
  outline:0!important;
  box-shadow:0 0 0 4px rgba(107,44,255,.13),0 22px 54px -42px rgba(107,44,255,.42)!important;
}
body.page-dashboard .today-intent button:hover,
body.page-dashboard .today-next-action a:hover{
  transform:none!important;
  filter:brightness(1.035);
}
body.page-dashboard .today-next-action a:focus-visible{
  outline:0!important;
  box-shadow:0 0 0 4px rgba(107,44,255,.16),0 18px 38px -22px rgba(107,44,255,.92)!important;
}
@media(max-width:1100px){
  body.page-dashboard.dashboard-simple-v83 .app-main{width:min(100vw - 22px,860px)!important;padding-top:14px!important}
}
@media(max-width:760px){
  body.page-dashboard.dashboard-simple-v83 .app-main{width:100%!important;max-width:100%!important;padding:10px 12px calc(106px + env(safe-area-inset-bottom))!important}
}
