/* 1.7.27 · Planos page ([tlms_plans], plans.php) and «O meu plano». Trident colours: navy #252652, teal #17a5bc / #0d6c8c.
   Same card language as the catalogue and the companies page: white cards, 16 px radius, soft shadow. No images. */
.tlms-plans{--n:#252652;--t:#17a5bc;--td:#0d6c8c;--line:#e1e5ec;--muted:#5a6475;max-width:1140px;margin:0 auto 60px;color:#2b2d42;font-size:16px;line-height:1.55}
.tlms-plans *,.tlms-plans *::before,.tlms-plans *::after{box-sizing:border-box}
.tpl-lead{font-size:19px;max-width:820px;margin:0 0 26px}
.tpl-grid{display:grid;gap:20px;grid-template-columns:1fr;align-items:stretch}
@media (min-width:880px){.tpl-grid{grid-template-columns:repeat(3,1fr)}}
.tpl-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px 22px 22px;
  box-shadow:0 1px 2px rgba(37,38,82,.06),0 10px 28px -12px rgba(37,38,82,.18)}
.tpl-card.is-popular{border:2px solid var(--t);box-shadow:0 14px 34px -12px rgba(13,108,140,.35)}
@media (min-width:880px){.tpl-card.is-popular{transform:translateY(-8px)}}
.tpl-card.is-current{background:#f4fbfc}
.tpl-badge{position:absolute;top:-13px;left:22px;background:var(--t);color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.03em;padding:5px 12px;border-radius:999px}
.tpl-badge--cur{left:auto;right:22px;background:var(--n)}
.tpl-card h2{margin:0 0 4px;font-size:24px;line-height:1.2;color:var(--n)}
.tpl-tag{margin:0 0 16px;color:var(--muted);font-size:15px;min-height:2.6em}
.tpl-price{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px;color:var(--n)}
.tpl-price b{font-size:30px;line-height:1.1;font-weight:800;font-variant-numeric:tabular-nums}
.tpl-price span{font-size:16px;font-weight:600}
.tpl-price small{font-size:13px;color:var(--muted)}
.tpl-month{margin:2px 0 18px;font-size:14px;color:var(--td)}
.tpl-feat{list-style:none;margin:0 0 20px;padding:16px 0 0;border-top:1px solid var(--line);display:grid;gap:9px;flex:1}
.tpl-feat li{font-size:15px;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.tpl-feat li small{color:var(--muted);font-size:13px}
.tpl-feat .tpl-key{color:var(--n)}
.tpl-feat .tpl-key::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--t);transform:translateY(-1px)}
.tpl-feat .is-yes span{color:#13795b;font-weight:700}
.tpl-feat .is-no{color:#9aa1b1}
.tpl-cta{display:grid;gap:6px}
.tpl-btn{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border-radius:12px;font-weight:700;font-size:16px;text-decoration:none;
  background:linear-gradient(135deg,var(--t),var(--td));color:#fff!important;box-shadow:0 8px 20px -8px rgba(13,108,140,.55);transition:transform .15s}
.tpl-btn:hover{transform:translateY(-1px)}
.tpl-card:not(.is-popular) .tpl-btn:not(.is-off){background:#fff;color:var(--td)!important;border:1.5px solid var(--t);box-shadow:none}
.tpl-btn.is-off{background:#eef1f5!important;color:#7a8194!important;border:0!important;box-shadow:none;cursor:default;transform:none}
.tpl-diff{font-size:13px;color:var(--muted);text-align:center}
.tpl-note{margin:18px 0 0;font-size:14px;color:var(--muted)}
.tpl-faq{margin:40px 0 0}
.tpl-faq h2{font-size:24px;color:var(--n);margin:0 0 12px;padding-left:12px;border-left:5px solid var(--t)}
.tpl-faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin:0 0 10px;overflow:hidden}
.tpl-faq summary{cursor:pointer;padding:14px 18px;font-weight:700;color:var(--n);list-style:none}
.tpl-faq summary::-webkit-details-marker{display:none}
.tpl-faq summary::after{content:"+";float:right;color:var(--t);font-weight:800}
.tpl-faq details[open] summary::after{content:"–"}
.tpl-faq details p{margin:0;padding:0 18px 16px;color:#3b4a5a}
.tlms-plans :focus-visible{outline:3px solid #f5b81c;outline-offset:2px}
/* «O meu plano» */
.tlms-myplan{display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;justify-content:space-between;background:#fff;border:1px solid #d5ecf1;border-left:5px solid #17a5bc;
  border-radius:12px;padding:16px 18px;margin:0 0 20px}
.tlms-myplan > div{flex:1 1 260px;min-width:0}
.tlms-myplan h3{margin:2px 0 4px;font-size:19px;color:#252652}
.tlms-myplan__line{margin:0 0 8px;font-size:15px;color:#3b4a5a}
.tlms-myplan--ended{border-left-color:#9aa1b1;background:#f7f8fa}
.tlms-plan-box{margin:6px 0 14px}
.tlms-plan-box .tlms-btn{margin:4px 0 6px}
/* 1.7.28: benefits — support promise, «O meu plano» links and notices, Biblioteca de recursos */
.tpl-feat .tpl-tip{display:block;width:100%;margin:-2px 0 0 22px;color:var(--td);font-size:12.5px}
.tlms-myplan__links{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;font-size:14px}
.tlms-myplan__links a{color:#0d6c8c;font-weight:600;text-decoration:none}
.tlms-myplan__notice{margin:6px 0 8px;padding:8px 12px;border-radius:8px;background:#e8f7ef;color:#13795b;font-size:14px;font-weight:600}
.tlms-res{--n:#252652;--t:#17a5bc;--td:#0d6c8c;--line:#e1e5ec;--muted:#5a6475;color:#2b2d42}
.tlms-res__lead{margin:0 0 14px;color:var(--muted)}
.tlms-res__filters{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 12px}
.tlms-res__filters label{display:grid;gap:4px;font-size:13px;color:var(--muted);flex:1 1 150px;min-width:0}
.tlms-res__filters .tlms-res__q{flex:2 1 220px}
.tlms-res__filters select,.tlms-res__filters input{width:100%;min-height:42px;border:1px solid #cfd6e2;border-radius:8px;padding:6px 10px;font-size:15px;background:#fff}
.tlms-res__count{margin:0 0 10px;font-size:14px;color:var(--muted)}
.tlms-res__empty{padding:16px;background:#f7f8fa;border-radius:10px}
.tlms-res__area{background:#fff;border:1px solid var(--line);border-radius:12px;margin:0 0 10px;overflow:hidden}
.tlms-res__area>summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px;padding:13px 16px;font-weight:700;color:var(--n);border-left:5px solid var(--t);list-style:none}
.tlms-res__area>summary::-webkit-details-marker{display:none}
.tlms-res__area>summary small{color:var(--muted);font-weight:500}
.tlms-res__course{padding:6px 16px 10px}
.tlms-res__course h4{margin:8px 0 6px;font-size:15px;color:var(--n)}
.tlms-res__course h4 small{color:var(--muted);font-weight:500;font-size:12.5px}
.tlms-res__course ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tlms-res__course li{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:8px 0;border-top:1px solid #eef1f5}
.tlms-res__ext{flex:none;min-width:44px;text-align:center;padding:4px 6px;border-radius:6px;font-size:11.5px;font-weight:800;background:#eef1f5;color:var(--n)}
.tlms-res__ext--pdf{background:#fde4e1;color:#b42318}.tlms-res__ext--xlsx{background:#e3f6ea;color:#13795b}.tlms-res__ext--docx{background:#e3ecfb;color:#1d4ed8}
.tlms-res__doc{flex:1 1 240px;min-width:0;display:grid;gap:2px}
.tlms-res__doc small{color:var(--muted);font-size:13px;line-height:1.4}
.tlms-res__course .tlms-btn{flex:none;min-height:40px}
.tlms-res__teaser{margin:16px 0 0;padding:14px 16px;border-radius:12px;background:#f4fbfc;border:1px dashed var(--t)}
.tlms-res__teaser p{margin:0}
.tlms-res__teaser a{color:var(--td);font-weight:700}
.tlms-res :focus-visible{outline:3px solid #f5b81c;outline-offset:2px}
/* 1.7.29 · entry points to the Planos page (plans-promo.php): course page line, catalogue banner, home section */
.tlms-pp-course{margin:10px 0 16px;padding:10px 14px;background:#f3fbfc;border:1px solid #cdeaf0;border-radius:10px;color:#252652;font-size:14.5px;line-height:1.5}
.tlms-pp-course a{color:#0d6c8c;font-weight:700;text-decoration:none;white-space:nowrap}
.tlms-pp-course a:hover{text-decoration:underline}
.tlms-pp-bar{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;margin:0 0 20px;padding:10px 16px;border-radius:12px;
  background:linear-gradient(135deg,#252652,#0d6c8c);color:#fff;font-size:15px;line-height:1.45}
.tlms-pp-bar span{flex:1 1 260px;min-width:0}
.tlms-pp-bar__btn{flex:none;background:#fff;color:#0d6c8c!important;border-radius:999px;padding:6px 16px;font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap}
.tlms-pp-bar__btn:hover{background:#e8f7fa}
.tlms-pp-bar--member{display:block;background:#f4fbfc;color:#252652;border:1px solid #d5ecf1;border-left:4px solid #17a5bc;font-size:14.5px}
.tlms-pp-bar--member a{color:#0d6c8c;font-weight:700;text-decoration:none}
.tlms-pp-home{padding:56px 16px;background:#f6f8fb}
.tlms-pp-home__in{max-width:1140px;margin:0 auto}
.tlms-pp-home h2{margin:0 0 8px;text-align:center;color:#252652;font-size:clamp(26px,3vw,36px);line-height:1.2}
.tlms-pp-home__sub{margin:0 0 34px;text-align:center;color:#5a6475;font-size:17px}
.tlms-plans--compact{margin-bottom:0}
.tpl-card--compact{padding:26px 22px 20px}
.tpl-card--compact h3{margin:0 0 10px;font-size:22px;line-height:1.2;color:var(--n)}
.tpl-card--compact .tpl-price{margin-bottom:16px}
.tpl-card--compact .tpl-feat{flex:1}
.tlms-pp-bar :focus-visible,.tlms-pp-course :focus-visible{outline:3px solid #f5b81c;outline-offset:2px}
