/* MostHelt Client Portal V4 — personal health workspace */
.portal-danisan{
  --client-ink:#17342d;
  --client-muted:#6f817b;
  --client-line:#e2ebe7;
  --client-soft:#f4faf7;
  --client-mint:#e5f5ef;
  --client-green:#087c69;
  --client-green-deep:#075f52;
  --client-warm:#fbfaf7;
}

/* Personal workspace: readable, calm, not an admin clone */
.portal-danisan .portal-content{max-width:1280px;width:100%;margin:0 auto;padding:30px 32px 56px!important}
.portal-danisan .portal-sidebar{border-right:1px solid var(--client-line)!important}
.portal-danisan .workspace-badge{border:1px solid var(--client-line);background:#fff;border-radius:16px;padding:11px}
.portal-danisan .workspace-badge small{font-size:13px!important;letter-spacing:.08em;color:#91a09b!important}
.portal-danisan .workspace-badge b{font-size:12px!important;color:var(--client-ink)!important}
.portal-danisan .portal-nav-group{display:block;margin:20px 10px 7px;color:#9aa7a3;font-size:13px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.portal-danisan .portal-nav a{min-height:43px;border-radius:12px;padding:0 11px;color:#60736d!important;font-size:12px!important;font-weight:650}
.portal-danisan .portal-nav a i{width:20px;height:20px;color:#7c8f88}
.portal-danisan .portal-nav a i svg{width:18px;height:18px}
.portal-danisan .portal-nav a.active{background:#eef8f4!important;color:var(--client-green-deep)!important;font-weight:760}
.portal-danisan .portal-nav a.active i{color:var(--client-green)}
.portal-danisan .portal-nav a.active em{background:var(--client-green)!important}
.portal-danisan .sidebar-support{border:1px solid var(--client-line);background:#fff;color:var(--client-ink)}
.portal-danisan .sidebar-support small{font-size:13px!important;color:#8b9994}
.portal-danisan .sidebar-logout button{font-size:14px!important;color:#7b8984}

.portal-danisan .portal-topbar{min-height:94px;border-bottom:1px solid var(--client-line);background:rgba(251,250,247,.9);backdrop-filter:blur(14px)}
.portal-danisan .topbar-copy>span{color:var(--client-green);font-size:13px!important;letter-spacing:.11em;font-weight:800}
.portal-danisan .topbar-copy h1{font-size:27px!important;letter-spacing:-.04em;color:var(--client-ink);font-weight:740}
.portal-danisan .topbar-copy p{font-size:12px!important;line-height:1.5;color:#81908b}
.portal-danisan .notification-button{border-color:var(--client-line);background:#fff;color:#57716a}
.portal-danisan .user-chip b{font-size:14px!important;color:var(--client-ink)}
.portal-danisan .user-chip small{font-size:13px!important;color:#899691}

/* Dashboard hero becomes a personal status surface rather than marketing banner */
.portal-danisan .client-welcome{
  min-height:178px!important;
  border:1px solid #d7e8e1!important;
  border-radius:26px!important;
  background:linear-gradient(118deg,#ffffff 0%,#f2faf7 58%,#e7f6f0 100%)!important;
  box-shadow:0 10px 34px rgba(7,73,63,.05)!important;
  padding:29px 31px!important;
  overflow:hidden;
}
.portal-danisan .client-welcome:after{content:"";position:absolute;right:-50px;top:-70px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(8,124,105,.08),rgba(8,124,105,0) 68%);pointer-events:none}
.portal-danisan .client-welcome small{color:var(--client-green)!important;font-size:13px!important;letter-spacing:.12em;font-weight:850}
.portal-danisan .client-welcome h2{margin:7px 0 8px;color:var(--client-ink)!important;font-size:34px!important;letter-spacing:-.045em;font-weight:760}
.portal-danisan .client-welcome p{max-width:590px;color:#647b74!important;font-size:13px!important;line-height:1.65}
.portal-danisan .client-welcome .action-button{position:relative;z-index:1;min-height:46px!important;border-color:var(--client-green)!important;background:var(--client-green)!important;color:#fff!important;border-radius:13px!important;box-shadow:0 10px 24px rgba(8,124,105,.14)!important;font-size:12px!important}
.portal-danisan .client-welcome .action-button:hover{background:var(--client-green-deep)!important}

/* Status tiles */
.portal-danisan .metric-grid{gap:12px!important;margin:18px 0!important}
.portal-danisan .metric-card{min-height:122px!important;border:1px solid var(--client-line)!important;border-radius:18px!important;padding:17px!important;background:#fff!important;box-shadow:0 5px 20px rgba(7,73,63,.025)!important}
.portal-danisan .metric-card:hover{transform:none!important;border-color:#cbded6!important;box-shadow:0 8px 24px rgba(7,73,63,.045)!important}
.portal-danisan .metric-icon,.portal-danisan .metric-icon.blue,.portal-danisan .metric-icon.coral,.portal-danisan .metric-icon.sand,.portal-danisan .metric-icon.violet{width:42px!important;height:42px!important;border-radius:13px!important;background:var(--client-mint)!important;color:var(--client-green)!important;font-size:16px!important}
.portal-danisan .metric-copy small{font-size:13.5px!important;color:#84938e!important;font-weight:700}
.portal-danisan .metric-copy strong,.portal-danisan .metric-copy strong[style]{font-size:24px!important;color:var(--client-ink)!important;letter-spacing:-.04em!important}
.portal-danisan .metric-copy strong small{font-size:14px!important}
.portal-danisan .metric-copy span{font-size:13.5px!important;color:#899791!important;line-height:1.45}
.portal-danisan .metric-copy span.good{color:#26775d!important}

/* Surfaces */
.portal-danisan .portal-grid{gap:16px!important;margin-bottom:16px!important}
.portal-danisan .panel-card{border:1px solid var(--client-line)!important;border-radius:22px!important;background:#fff!important;padding:21px!important;box-shadow:0 6px 22px rgba(7,73,63,.028)!important}
.portal-danisan .panel-card.dark{background:linear-gradient(145deg,#0a695a,#087c69)!important;border-color:#087c69!important;color:#fff!important;box-shadow:0 16px 36px rgba(8,124,105,.12)!important}
.portal-danisan .panel-head{margin-bottom:17px!important}
.portal-danisan .panel-head h2{font-size:17px!important;color:var(--client-ink)!important;letter-spacing:-.025em!important}
.portal-danisan .panel-head p{font-size:13.5px!important;color:#8b9994!important;line-height:1.5}
.portal-danisan .panel-head>a,.portal-danisan .panel-head>button{font-size:13.5px!important;color:var(--client-green)!important;font-weight:760}
.portal-danisan .panel-card.dark .panel-head h2{color:#fff!important}
.portal-danisan .panel-card.dark .panel-head p{color:rgba(255,255,255,.64)!important}
.portal-danisan .panel-card.dark .panel-head>a{color:#dff7ef!important}

/* Next appointment */
.portal-danisan .appointment-hero{border:1px solid var(--client-line)!important;border-radius:18px!important;background:#fbfdfc!important;padding:16px!important;gap:16px!important}
.portal-danisan .appointment-date{min-width:76px!important;border-radius:15px!important;background:var(--client-mint)!important;color:var(--client-green-deep)!important;padding:13px!important}
.portal-danisan .appointment-date b{font-size:28px!important;letter-spacing:-.05em}
.portal-danisan .appointment-date span{font-size:13px!important}
.portal-danisan .appointment-copy>span{font-size:12.5px!important;letter-spacing:.1em;color:var(--client-green)!important}
.portal-danisan .appointment-copy h3{font-size:16px!important;color:var(--client-ink)!important;margin:5px 0!important}
.portal-danisan .appointment-copy p{font-size:13.5px!important;line-height:1.5;color:#73857f!important}
.portal-danisan .link-action{font-size:13.5px!important;color:var(--client-green)!important;font-weight:750}
.portal-danisan .status-badge{min-height:25px!important;padding:0 9px!important;font-size:13px!important;border-radius:999px!important}

/* Water card */
.portal-danisan .water-card .progress-ring{width:138px!important;height:138px!important}
.portal-danisan .water-card .progress-ring b{font-size:32px!important}
.portal-danisan .water-card .progress-ring small{font-size:13px!important}
.portal-danisan .inline-water .action-button{font-size:14px!important;background:#fff!important;color:var(--client-green-deep)!important;border-color:rgba(255,255,255,.72)!important}

/* Quick actions and activity */
.portal-danisan .quick-actions{gap:9px!important}
.portal-danisan .quick-action{min-height:66px!important;border:1px solid var(--client-line)!important;border-radius:15px!important;padding:12px 13px!important;background:#fff!important}
.portal-danisan .quick-action:hover{background:#f7fbf9!important;border-color:#c9ddd5!important}
.portal-danisan .quick-action>i{width:38px!important;height:38px!important;border-radius:12px!important;background:var(--client-mint)!important;color:var(--client-green)!important}
.portal-danisan .quick-action b{font-size:14px!important;color:var(--client-ink)!important}
.portal-danisan .quick-action small{font-size:13px!important;color:#8b9994!important;line-height:1.4}
.portal-danisan .quick-action>span{font-size:13px!important;color:#91a09a!important}
.portal-danisan .activity-item{padding:12px 0!important;gap:11px!important}
.portal-danisan .activity-item b{font-size:13.5px!important;color:var(--client-ink)!important}
.portal-danisan .activity-item small{font-size:13px!important;color:#899792!important;line-height:1.5}
.portal-danisan .activity-item time{font-size:12.5px!important;color:#9aa6a2!important}

/* Forms and tracking: make health logging feel consumer-friendly */
.portal-danisan .portal-form{gap:15px!important}
.portal-danisan .portal-form label>span{font-size:13.5px!important;color:#506760!important;font-weight:720}
.portal-danisan .portal-form label>small,.portal-danisan .portal-form small{font-size:13px!important;color:#8b9994!important;line-height:1.45}
.portal-danisan .portal-form input:not([type=checkbox]):not([type=radio]),.portal-danisan .portal-form select,.portal-danisan .portal-form textarea{min-height:46px!important;border:1px solid #d8e4df!important;border-radius:13px!important;padding:11px 13px!important;background:#fff!important;color:var(--client-ink)!important;font-size:12px!important}
.portal-danisan .portal-form textarea{min-height:112px!important;line-height:1.55}
.portal-danisan .portal-form input:focus,.portal-danisan .portal-form select:focus,.portal-danisan .portal-form textarea:focus{border-color:#78c4b2!important;box-shadow:0 0 0 4px rgba(8,124,105,.07)!important}
.portal-danisan .action-button,.portal-danisan .portal-button{min-height:43px!important;padding:0 15px!important;border-radius:12px!important;font-size:14px!important;font-weight:760!important}
.portal-danisan .tracking-action{border-radius:18px!important;padding:16px!important}
.portal-danisan .tracking-action b{font-size:12px!important}
.portal-danisan .tracking-action small{font-size:13px!important;line-height:1.5}
.portal-danisan .tracking-action>span{width:42px!important;height:42px!important;border-radius:13px!important}

/* Tables become readable on desktop and card-scrollable on small screens */
.portal-danisan .panel-table th{font-size:13px!important;padding:12px 14px!important;color:#899792!important}
.portal-danisan .panel-table td{font-size:13.5px!important;padding:14px!important;color:#5f746e!important;line-height:1.45}
.portal-danisan .panel-table td strong{font-size:14px!important;color:var(--client-ink)!important}
.portal-danisan .panel-table td small{font-size:13px!important}
.portal-danisan .panel-table-wrap{border-radius:15px!important;overflow:auto}

/* Forms / consent */
.portal-danisan .form-assignment-card{border:1px solid var(--client-line)!important;border-radius:19px!important;background:#fff!important;padding:18px!important}
.portal-danisan .form-assignment-card h3{font-size:14px!important;color:var(--client-ink)!important}
.portal-danisan .form-assignment-card p,.portal-danisan .legal-note p{font-size:13.5px!important;line-height:1.6!important}
.portal-danisan .legal-note{border:1px solid #e7e0ce!important;border-radius:17px!important;background:#fffaf0!important;padding:15px 17px!important}
.portal-danisan .legal-note b{font-size:14px!important;color:#6f5d37!important}

/* Messages */
.portal-danisan.portal-view-messages .activity-list{display:flex;flex-direction:column;gap:8px}
.portal-danisan.portal-view-messages .activity-item{max-width:86%;border:1px solid var(--client-line);border-radius:15px;background:#f8fbfa;padding:12px 14px!important}
.portal-danisan.portal-view-messages .activity-item:has(b:first-child){ }
.portal-danisan.portal-view-messages .portal-form{margin-top:22px!important;border-top:1px solid var(--client-line);padding-top:20px}

/* Payments and plans */
.portal-danisan .package-progress{height:8px!important;border-radius:999px!important;background:#edf3f0!important;overflow:hidden}
.portal-danisan .package-progress i{display:block;height:100%;background:var(--client-green)!important;border-radius:inherit}
.portal-danisan .payment-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.portal-danisan .clinic-contact{background:linear-gradient(145deg,#0a695a,#087c69)!important}
.portal-danisan .clinic-contact h3{font-size:20px!important;color:#fff!important}
.portal-danisan .clinic-contact p{font-size:13.5px!important;line-height:1.55;color:rgba(255,255,255,.7)!important}
.portal-danisan .clinic-links a{font-size:13.5px!important}

/* Notifications */
.portal-danisan .notification-row{border:1px solid var(--client-line)!important;border-radius:16px!important;background:#fff!important;padding:14px!important;margin-bottom:9px!important}
.portal-danisan .notification-row.unread{background:#f5fbf8!important;border-color:#cfe5dc!important}
.portal-danisan .notification-row b{font-size:14px!important;color:var(--client-ink)!important}
.portal-danisan .notification-row p{font-size:13px!important;line-height:1.55!important;color:#687d76!important}
.portal-danisan .notification-row small{font-size:12.5px!important;color:#93a09c!important}

/* Mobile app navigation */
.client-mobile-nav{display:none}
@media(max-width:820px){
  .portal-danisan .portal-content{padding:18px 14px 100px!important}
  .portal-danisan .portal-footer{padding-bottom:84px!important}
  .portal-danisan .client-mobile-nav{position:fixed;left:10px;right:10px;bottom:10px;z-index:75;display:grid;grid-template-columns:repeat(5,1fr);min-height:64px;border:1px solid rgba(211,225,219,.92);border-radius:20px;background:rgba(255,255,255,.95);box-shadow:0 16px 50px rgba(7,73,63,.16);backdrop-filter:blur(18px);padding:6px}
  .portal-danisan .client-mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:14px;color:#7e8f89;text-decoration:none;font-size:12.5px;font-weight:700;min-width:0}
  .portal-danisan .client-mobile-nav a i{display:grid;place-items:center;width:24px;height:24px}
  .portal-danisan .client-mobile-nav a svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .portal-danisan .client-mobile-nav a.active{background:#edf8f3;color:var(--client-green-deep)}
  .portal-danisan .portal-topbar{min-height:78px!important;padding:12px 14px!important}
  .portal-danisan .topbar-copy h1{font-size:22px!important}
  .portal-danisan .client-welcome{min-height:auto!important;padding:23px!important;border-radius:21px!important}
  .portal-danisan .client-welcome h2{font-size:28px!important}
  .portal-danisan .client-welcome p{font-size:14px!important}
  .portal-danisan .metric-grid{grid-template-columns:1fr 1fr!important;gap:9px!important}
  .portal-danisan .metric-card{min-height:112px!important;grid-template-columns:36px minmax(0,1fr)!important;padding:13px!important;gap:9px!important}
  .portal-danisan .metric-icon,.portal-danisan .metric-icon.blue,.portal-danisan .metric-icon.coral,.portal-danisan .metric-icon.sand,.portal-danisan .metric-icon.violet{width:36px!important;height:36px!important;border-radius:11px!important}
  .portal-danisan .metric-copy strong,.portal-danisan .metric-copy strong[style]{font-size:20px!important}
  .portal-danisan .portal-grid.two,.portal-danisan .portal-grid.equal{grid-template-columns:1fr!important}
  .portal-danisan .panel-card{padding:17px!important;border-radius:18px!important}
  .portal-danisan .appointment-hero{display:grid!important;grid-template-columns:68px minmax(0,1fr)!important;padding:13px!important}
  .portal-danisan .appointment-date{min-width:0!important}
  .portal-danisan .water-card .progress-ring{width:120px!important;height:120px!important}
  .portal-danisan .payment-metrics{grid-template-columns:1fr!important}
  .portal-danisan .panel-table{min-width:620px}
}
@media(max-width:460px){
  .portal-danisan .portal-content{padding-inline:11px!important}
  .portal-danisan .metric-grid{grid-template-columns:1fr!important}
  .portal-danisan .metric-card{min-height:94px!important}
  .portal-danisan .client-mobile-nav{left:7px;right:7px;bottom:7px;border-radius:18px}
  .portal-danisan .client-mobile-nav a{font-size:12.5px}
  .portal-danisan .user-chip{display:none!important}
  .portal-danisan .client-welcome h2{font-size:25px!important}
  .portal-danisan .appointment-hero{grid-template-columns:1fr!important}
  .portal-danisan .appointment-date{width:76px}
}

/* V3.3 — simple source forms */
.portal-danisan .mh-client-source-forms-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}.portal-danisan .mh-client-source-forms-head>div:first-child>span{display:block;color:var(--client-green);font-size:12px;font-weight:900;letter-spacing:.16em;margin-bottom:8px}.portal-danisan .mh-client-source-forms-head h2{margin:0;color:var(--client-ink);font-size:30px;letter-spacing:-.035em}.portal-danisan .mh-client-source-forms-head p{margin:8px 0 0;color:#73857f;font-size:13.5px;line-height:1.58}.portal-danisan .mh-client-source-forms-head>div:last-child{display:flex;gap:8px}.portal-danisan .mh-client-source-forms-head>div:last-child b{min-width:86px;border:1px solid var(--client-line);border-radius:15px;background:#fff;padding:10px 12px;color:var(--client-ink);font-size:20px}.portal-danisan .mh-client-source-forms-head>div:last-child small{display:block;color:#91a09b;font-size:10.5px;margin-top:1px}.portal-danisan .mh-client-source-form-list{display:grid;gap:10px}.portal-danisan .mh-client-source-form-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:16px!important}.portal-danisan .mh-client-source-form-icon{width:46px;height:46px;border-radius:14px;background:#e7f7f1;color:var(--client-green);display:grid;place-items:center;font-size:19px;font-weight:900}.portal-danisan .mh-client-source-form-copy span{display:block;color:var(--client-green);font-size:10.5px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.portal-danisan .mh-client-source-form-copy h3{margin:3px 0 4px;color:var(--client-ink);font-size:16px}.portal-danisan .mh-client-source-form-copy p{margin:0;color:#74857f;font-size:12.5px;line-height:1.48}.portal-danisan .mh-client-source-form-copy small{display:block;color:#97a39f;font-size:10.5px;margin-top:5px}.portal-danisan .mh-client-source-form-state{display:flex;align-items:center;gap:6px;border-radius:999px;padding:7px 9px;background:#fff7eb;color:#9b6824;font-size:10.5px;font-weight:800}.portal-danisan .mh-client-source-form-state i{width:7px;height:7px;border-radius:50%;background:#d29239}.portal-danisan .mh-client-source-form-state.done{background:#eaf8f2;color:#08745f}.portal-danisan .mh-client-source-form-state.done i{background:#0a9579}.portal-danisan .mh-client-source-form-actions{display:flex;gap:6px}.portal-danisan .mh-client-source-form-actions .action-button{min-width:90px;justify-content:center}
@media(max-width:820px){.portal-danisan .mh-client-source-forms-head{align-items:flex-start;flex-direction:column}.portal-danisan .mh-client-source-forms-head h2{font-size:25px}.portal-danisan .mh-client-source-form-card{grid-template-columns:44px minmax(0,1fr)}.portal-danisan .mh-client-source-form-state,.portal-danisan .mh-client-source-form-actions{grid-column:2}.portal-danisan .mh-client-source-form-actions{justify-content:flex-start;flex-wrap:wrap}}
