:root{
  --aptya-bg:#cfe3ea;
  --aptya-soft:#b6d9e0;
  --aptya-text:#0f1f2a;
  --aptya-muted:#5d6b75;
  --aptya-main:#335765;
  --aptya-accent:#e77f79;
  --shadow:0 12px 28px rgba(15,31,42,0.18);
  --card-radius:18px;
  --pill-radius:999px;
}

body{color:var(--aptya-text);background:#fff;}
.aptya-profesional-body{min-height:100vh;display:flex;flex-direction:column;}
.aptya-profesional-main{flex:1 0 auto;padding-bottom:22px;}

.container,.container-sm,.container-md,.container-lg,.container-xl,.container-xxl{max-width:none !important;padding-left:18px;padding-right:18px;}

.topbar{background:#fff;border-bottom:1px solid rgba(15,31,42,0.08);}
.brand img{max-height:46px;}
.topnav a{color:var(--aptya-text);text-decoration:none;font-weight:700;padding:.5rem .75rem;border-radius:10px;}
.topnav a:hover,.topnav a.active{background:rgba(15,31,42,0.08);}
.token{font-weight:800;color:var(--aptya-text);text-decoration:none;}

.logout-btn{width:46px;height:46px;border-radius:999px;border:2px solid rgba(15,31,42,0.9);display:inline-flex;align-items:center;justify-content:center;color:var(--aptya-text);text-decoration:none;}

.hero{background:var(--aptya-bg);padding:2.4rem 0 1.8rem;text-align:center;}
.hero.hero--soft{background:var(--aptya-soft);}
.hero h1{color:#fff;font-weight:900;text-shadow:0 10px 18px rgba(15,31,42,0.22);}
.hero p{color:var(--aptya-main);font-weight:700;max-width:none;margin:.75rem auto 0;}
.hero .sub{font-weight:900;font-style:italic;color:rgba(15,31,42,0.7);}

.cardx{border-radius:var(--card-radius);box-shadow:var(--shadow);border:1px solid rgba(15,31,42,0.08);background:#fff;padding:1rem;}

.badge-soft{border-radius:999px;font-weight:800;padding:.35rem .65rem;background:rgba(231,127,121,0.14);color:var(--aptya-main);border:1px solid rgba(231,127,121,0.45);}

.cards-wrap{margin-top:-2.2rem;padding-bottom:3rem;}
.dash-card{background:#fff;border-radius:var(--card-radius);box-shadow:var(--shadow);padding:1.25rem 1.25rem 1.2rem;height:100%;}
.icon-circle{width:120px;height:120px;border-radius:999px;background:#f2da6a;display:flex;align-items:center;justify-content:center;margin:0 auto .9rem;}
.pill-btn{border-radius:var(--pill-radius);padding:.7rem 1.05rem;font-weight:900;color:#fff;text-decoration:none;display:inline-flex;width:100%;justify-content:center;font-size:1.15rem;}
.pill-btn.salmon{background:#e77f79;}
.pill-btn.green{background:#94c6a4;}
.pill-btn.blue{background:#5b86c9;}
.desc{color:var(--aptya-muted);font-weight:600;margin:.95rem 0 0;}
.desc li{margin-bottom:.5rem;}

.panel-wrap{margin-top:-1.25rem;padding-bottom:2.75rem;}
.panel-card{background:#fff;border-radius:var(--card-radius);box-shadow:var(--shadow);padding:1.25rem;height:100%;}
.panel-title{font-weight:900;color:var(--aptya-main);font-size:1rem;margin-bottom:.35rem;}
.panel-note{color:var(--aptya-muted);font-size:.86rem;margin-bottom:.95rem;}
.list-box{background:var(--aptya-soft);border-radius:16px;padding:.95rem;min-height:220px;max-height:320px;overflow:auto;}
.item-pill{background:#fff;border-radius:10px;padding:.52rem .75rem;font-weight:700;color:var(--aptya-main);margin-bottom:.55rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;}
.item-pill small{font-weight:800;color:rgba(15,31,42,0.65);}
.item-pill.form-check{padding-left:.75rem;}
.item-pill > div{display:flex;align-items:center;gap:.6rem;min-width:0;}
.item-pill .form-check-input{position:static;margin:0;flex:0 0 auto;}
.item-pill .form-check-label{display:block;line-height:1.25;margin:0;}
.del{border:0;background:transparent;color:var(--aptya-accent);font-weight:900;line-height:1;font-size:1.05rem;}
.cta-wrap{display:flex;justify-content:center;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap;}
.btn-dark-aptya{background:var(--aptya-main);color:#fff;border-radius:10px;border:0;font-weight:800;padding:.6rem 1.25rem;}
.preview{background:#fff;border-radius:var(--card-radius);box-shadow:var(--shadow);border:1px solid rgba(15,31,42,0.10);padding:1.1rem 1.25rem;margin-top:1.25rem;display:none;}
.preview h3{font-weight:900;color:var(--aptya-main);font-size:1.05rem;}
.preview .meta{color:var(--aptya-muted);font-weight:700;}

.note-photo{max-width:100%;border-radius:14px;border:1px solid rgba(15,31,42,0.12);}

.pill-bar{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-top:1.2rem;margin-bottom:1.2rem;}
.pill{border-radius:999px;padding:.45rem 1.2rem;font-weight:900;border:0;text-decoration:none;display:inline-flex;}
.pill.pink{background:#ff8a80;color:#fff;}
.pill.yellow{background:#fff59d;color:var(--aptya-main);}
.pill.dark{background:#335765;color:#fff;}
.tests-wrap{padding-bottom:2.5rem;}
.test-card{background:#fff;border-radius:var(--card-radius);box-shadow:var(--shadow);border:1px solid rgba(15,31,42,0.08);padding:1rem;height:100%;position:relative;}
.test-card h3{color:var(--aptya-main);font-weight:900;font-size:1.06rem;margin-bottom:.5rem;}
.test-card p{color:var(--aptya-muted);font-size:.9rem;margin-bottom:0;}
.plus{position:absolute;top:.65rem;right:.65rem;width:34px;height:34px;border-radius:999px;border:0;background:#ff8a80;color:#fff;font-weight:900;font-size:1.25rem;line-height:1;}
.detail-pop{position:absolute;left:.65rem;right:.65rem;top:3.1rem;z-index:20;background:#fff;border-radius:14px;border:1px solid rgba(15,31,42,0.12);box-shadow:0 10px 22px rgba(15,31,42,0.18);padding:.75rem .85rem;display:none;}
.detail-pop strong{color:var(--aptya-main);}
.detail-pop .meta{color:var(--aptya-muted);font-weight:700;}
.detail-pop.show{display:block;}

.pack{border-radius:var(--card-radius);box-shadow:var(--shadow);border:1px solid rgba(15,31,42,0.08);background:#fff;padding:1.1rem;height:100%;}
.pack h2{color:var(--aptya-main);font-size:1.1rem;font-weight:900;}
.price{color:var(--aptya-accent);font-weight:900;font-size:1.2rem;}
.pack p{color:var(--aptya-muted);margin-bottom:.55rem;}

.aptya-footer{border-top:1px solid rgba(15,31,42,0.10);padding:18px 0;margin-top:auto;background:#fff;}
.aptya-footer__inner{max-width:none;margin:0 auto;padding:0 18px;color:rgba(15,31,42,0.75);font-size:0.95rem;display:flex;align-items:center;gap:8px;}
.aptya-footer__label{font-weight:700;color:rgba(15,31,42,0.85);}
.aptya-footer__email{font-weight:600;color:rgba(15,31,42,0.85);text-decoration:none;}
.aptya-footer__email:hover{text-decoration:underline;}

.svg-ico{width:74px;height:74px;}

@media (max-width:991px){.topnav{display:none;}}
