
:root{
  --pink:#e6007e;--pink-dark:#b90065;--pink-soft:#fff0f7;--pink-line:#f4c7df;
  --ink:#17181d;--muted:#6c6f78;--line:#e8e8ec;--bg:#f7f8fa;--surface:#fff;
  --nav:#17171c;--nav2:#25232a;--green:#16835f;--green-soft:#e9f7f1;
  --amber:#a76600;--amber-soft:#fff5dc;--blue:#3563b8;--blue-soft:#edf3ff;
  --shadow:0 8px 26px rgba(18,18,23,.055);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Proxima Nova",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}
button,input,textarea,select{font:inherit}button{cursor:pointer}
a{color:inherit}.hidden{display:none!important}
.login-screen{position:fixed;inset:0;background:linear-gradient(135deg,#17171c 0 32%,#f8f8fa 32% 100%);z-index:100;display:grid;place-items:center}
.login-screen.hidden{display:none}
.login-brand{position:absolute;top:34px;left:42px;color:#fff;display:flex;align-items:center;gap:10px;font-weight:700}
.login-brand img{width:132px;filter:brightness(0) invert(1)}.login-brand span{font-size:18px}
.login-card{width:min(480px,calc(100vw - 34px));background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:0 24px 70px rgba(0,0,0,.15)}
.login-card h1{font-size:32px;margin:8px 0 8px;letter-spacing:-.03em}.login-card>p{color:var(--muted);line-height:1.55;margin-top:0}
.login-card label{display:grid;gap:6px;font-size:13px;font-weight:650;margin-top:14px}.login-card input{border:1px solid #d9d9df;border-radius:11px;padding:12px 13px;background:#fff}
.mode-note{display:none;background:var(--amber-soft);color:#7a5200;border:1px solid #f2dda6;padding:10px 12px;border-radius:10px;font-size:12px;margin:14px 0}.mode-note.show{display:block}
.login-actions{display:flex;gap:10px;margin:20px 0 10px}.login-card small{color:var(--muted)}
.app-shell{display:grid;grid-template-columns:225px minmax(0,1fr);min-height:100vh}
.sidebar{background:var(--nav);color:#fff;padding:24px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}
.brand-lockup{padding:5px 8px 24px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #2b2b32}.brand-lockup img{width:124px;filter:brightness(0) invert(1)}.brand-lockup span{font-weight:700}
.sidebar nav{display:grid;gap:6px;margin-top:24px}.nav{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:9px;text-align:left;background:transparent;color:#c8c9cf;border:0;border-radius:10px;padding:11px 12px}.nav span{font-size:16px;text-align:center}.nav.active,.nav:hover{background:#30232c;color:#fff}.nav.active span{color:#ff4ca8}
.sidebar-bottom{margin-top:auto;display:grid;gap:18px}.sidebar-note{border-top:1px solid #2b2b32;padding:18px 10px 0;color:#e4e4e7}.sidebar-note b,.sidebar-note small{display:block}.sidebar-note b{font-size:13px;line-height:1.35}.sidebar-note small{color:#8f9099;font-size:11px;margin-top:5px;line-height:1.4}.logout{width:100%}
main{min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 28px;position:sticky;top:0;z-index:30}
.search{width:min(620px,58vw);background:#f4f5f7;border:1px solid #eeeef2;border-radius:12px;padding:10px 13px;color:#93959d;display:flex;gap:8px;align-items:center}.search input{border:0;outline:0;background:transparent;width:100%;color:var(--ink)}
.top-actions{display:flex;align-items:center;gap:12px}.top-actions>span{font-size:11px;color:var(--muted)}.icon{position:relative;width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:10px}.icon i{position:absolute;right:-3px;top:-4px;background:var(--pink);color:#fff;font-size:9px;border-radius:999px;padding:2px 5px;font-style:normal}
.profile{border:0;background:transparent;display:grid;grid-template-columns:34px auto;column-gap:8px;text-align:left;align-items:center}.profile>span{grid-row:1/3;width:34px;height:34px;border-radius:50%;background:var(--pink-soft);color:var(--pink-dark);display:grid;place-items:center;font-weight:800}.profile b{font-size:13px}.profile small{color:var(--muted);font-size:10px}
.page-shell{padding:26px 30px 56px;max-width:1600px;margin:auto}.view{display:none}.view.active{display:block}
.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.page-heading h1{font-size:28px;margin:2px 0 4px;letter-spacing:-.025em}.page-heading p{color:var(--muted);margin:0;line-height:1.5}.page-heading>span{font-size:12px;color:var(--muted);padding-top:8px}
.eyebrow{font-size:10px;font-weight:850;letter-spacing:.12em;color:var(--pink-dark)}
.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.main-column,.right-column{min-width:0}.right-column{display:grid;align-content:start;gap:14px}.section-title{font-size:15px;margin:0 0 10px}
.card,.course-card,.course-hero,.module-panel,.assessment-card,.object-card,.mentor-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.card{padding:17px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.card h3,.card-head h3{font-size:14px;margin:0}.link-btn{border:0;background:transparent;color:var(--pink-dark);font-size:12px;padding:0}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.course-card{display:grid;grid-template-columns:108px minmax(0,1fr) 135px;gap:16px;padding:16px;align-items:center}.course-thumb{width:108px;height:92px;border-radius:13px;background:linear-gradient(135deg,#0f7145,#c3ead3);display:grid;place-items:center;color:#fff;font-weight:900;font-size:32px;position:relative;overflow:hidden}.course-thumb:after{content:"dados";position:absolute;right:8px;bottom:7px;font-size:10px;font-weight:700;opacity:.85}
.course-card h2{font-size:17px;margin:0 0 5px}.course-card p{color:var(--muted);font-size:12px;margin:0 0 10px;line-height:1.5}.course-meta{display:flex;gap:13px;flex-wrap:wrap;font-size:11px;color:var(--muted)}
.progress-line{height:7px;background:#eeeef1;border-radius:999px;overflow:hidden}.progress-line>span{display:block;height:100%;background:var(--pink);border-radius:999px}
.course-action{text-align:right}.course-action strong{display:block;font-size:20px;margin-bottom:7px}.primary,.secondary,.ghost{border-radius:10px;padding:10px 14px;border:1px solid transparent;font-weight:700;font-size:12px}.primary{background:var(--pink);color:#fff}.primary:hover{background:var(--pink-dark)}.secondary{background:#fff;border-color:#d9dae0;color:#30323a}.ghost{background:#f6f6f8;color:#4e5058}
.list{display:grid}.list-row{display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #f0f0f2}.list-row:last-child{border-bottom:0}.list-icon{width:27px;height:27px;border-radius:8px;background:var(--pink-soft);color:var(--pink-dark);display:grid;place-items:center;font-size:12px}.list-row b{font-size:12px;display:block}.list-row small{font-size:10px;color:var(--muted)}.pill{font-size:10px;padding:5px 7px;border-radius:999px;background:#f1f1f4;color:#666}.pill.green{background:var(--green-soft);color:var(--green)}.pill.pink{background:var(--pink-soft);color:var(--pink-dark)}.pill.amber{background:var(--amber-soft);color:var(--amber)}
.skill-row{display:grid;grid-template-columns:1fr 48px;gap:7px;margin:10px 0}.skill-row label{font-size:11px}.skill-row em{font-size:10px;font-style:normal;color:var(--muted);text-align:right}.skill-row .progress-line{grid-column:1/3;height:6px}
.check-list{display:grid;gap:10px}.check-item{display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:flex-start;font-size:11px}.check-item i{font-style:normal;width:20px;height:20px;border-radius:6px;border:1px solid #d6d7dc;display:grid;place-items:center;color:#fff}.check-item.done i{background:var(--green);border-color:var(--green)}
.mentor-card{padding:16px;background:linear-gradient(145deg,#fff 0 55%,#fff2f8 100%);overflow:hidden}.mentor-top{display:grid;grid-template-columns:1fr 96px;gap:9px;align-items:end}.mentor-card img{width:104px;align-self:end;filter:drop-shadow(0 8px 9px rgba(0,0,0,.08))}.mentor-card h3{margin:3px 0 7px;font-size:14px}.mentor-card p{font-size:11px;line-height:1.55;color:#4f5158}.mentor-card .primary{margin-top:4px}
.course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}
.course-hero{padding:19px;margin-bottom:14px;display:grid;grid-template-columns:64px minmax(0,1fr) 210px;gap:16px;align-items:center}.excel-icon{width:64px;height:64px;background:#147a48;color:#fff;border-radius:14px;display:grid;place-items:center;font-size:28px;font-weight:900}.course-hero h1{font-size:22px;margin:1px 0 5px}.course-hero p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.course-hero aside{text-align:right}.course-hero aside b{display:block;font-size:22px}.course-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:14px}.course-tabs button{border:0;background:transparent;padding:11px 2px;color:var(--muted);font-size:12px}.course-tabs button.active{color:var(--pink-dark);border-bottom:2px solid var(--pink);font-weight:800}
.course-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:15px}.modules{display:grid;gap:9px}.module-panel{overflow:hidden}.module-head{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:14px}.module-num{width:32px;height:32px;border-radius:10px;background:#f4f4f6;display:grid;place-items:center;font-weight:800;font-size:12px}.module-head h3{font-size:13px;margin:0 0 3px}.module-head p{font-size:10px;color:var(--muted);margin:0}.module-status{text-align:right}.module-status b{font-size:10px;display:block}.module-status small{font-size:9px;color:var(--muted)}.module-panel.active .module-head{background:#fff6fb}.module-panel.active .module-num{background:var(--pink);color:#fff}.object-list{border-top:1px solid var(--line);padding:4px 14px 10px}.object-row{display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #f1f1f3}.object-row:last-child{border-bottom:0}.object-row button{border:0;background:transparent;text-align:left;padding:0}.object-row b{display:block;font-size:11px}.object-row small{font-size:9px;color:var(--muted)}.obj-icon{width:26px;height:26px;border-radius:7px;background:#f2f2f5;display:grid;place-items:center;font-size:11px}.obj-icon.done{background:var(--green-soft);color:var(--green)}
.assessment-shell{max-width:940px;margin:auto}.assessment-top{display:flex;justify-content:space-between;gap:20px;margin-bottom:14px}.assessment-top h1{font-size:23px;margin:4px 0}.assessment-top p{color:var(--muted);font-size:12px}.assessment-progress{min-width:180px;text-align:right;font-size:11px;color:var(--muted)}.assessment-progress b{display:block;font-size:16px;color:var(--ink);margin-bottom:5px}.assessment-card{padding:24px}.question-label{font-size:10px;font-weight:800;color:var(--pink-dark);letter-spacing:.08em}.assessment-card h2{font-size:19px;line-height:1.4}.answers{display:grid;gap:9px;margin-top:18px}.answer{border:1px solid #dedee3;border-radius:11px;background:#fff;padding:12px 13px;text-align:left;font-size:12px}.answer.selected{border-color:var(--pink);background:var(--pink-soft)}.assessment-nav{display:flex;justify-content:space-between;margin-top:16px}
.result-hero{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;justify-content:space-between;gap:20px;align-items:center}.result-hero h1{margin:4px 0;font-size:24px}.result-score{width:90px;height:90px;border:9px solid var(--pink-soft);border-top-color:var(--pink);border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:20px}.result-grid{display:grid;grid-template-columns:1fr 330px;gap:14px;margin-top:14px}
.object-layout,.case-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:15px}.object-card{padding:20px}.object-header{display:flex;justify-content:space-between;gap:15px;margin-bottom:16px}.object-header h1{font-size:21px;margin:4px 0}.object-header p{font-size:11px;color:var(--muted);margin:0}.lesson-player{background:#111217;border-radius:14px;min-height:365px;color:#fff;overflow:hidden;display:grid;grid-template-rows:1fr auto}.scene{padding:42px;display:grid;grid-template-columns:1fr 1.1fr;gap:22px;align-items:center;background:radial-gradient(circle at 80% 25%,#41313b 0,#17171c 48%,#101014 100%)}.scene-copy h2{font-size:27px;margin:6px 0 10px}.scene-copy p{color:#d1d1d6;line-height:1.65}.scene-visual{min-height:230px;border-radius:12px;background:#fff;color:#222;padding:16px;display:grid;align-content:start;gap:8px}.sheet-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;border:1px solid #ddd}.sheet-grid span{padding:7px;border-right:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;font-size:10px}.sheet-grid span:nth-child(-n+4){background:#e9f6ee;font-weight:800}.player-controls{background:#09090c;padding:11px 13px;display:flex;justify-content:space-between;align-items:center}.player-controls button{border:0;background:transparent;color:#fff}.scene-dots{display:flex;gap:5px}.scene-dots i{width:17px;height:4px;background:#4a4a52;border-radius:99px}.scene-dots i.active{background:var(--pink)}
.content-block{margin-top:14px}.content-block h3{font-size:14px;margin-bottom:8px}.content-block p,.content-block li{font-size:12px;line-height:1.65;color:#45474e}.content-block article{border-left:3px solid var(--pink);background:#fff7fb;padding:13px 14px;border-radius:0 10px 10px 0;margin:10px 0}.resource-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0;font-size:11px}
.guided-step{border:1px solid var(--line);border-radius:11px;padding:12px;margin:8px 0;display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center}.guided-step .step-num{width:26px;height:26px;border-radius:8px;background:#f1f1f4;display:grid;place-items:center;font-size:11px;font-weight:800}.guided-step.done{border-color:#bfe4d6;background:#f7fcfa}.guided-step.done .step-num{background:var(--green);color:#fff}
.case-card{padding:18px;background:#fff;border:1px solid var(--line);border-radius:15px}.case-card h2{font-size:17px}.case-card p,.case-card li{font-size:11px;line-height:1.6;color:#484a51}.upload-box{border:1.5px dashed #d6b3c7;background:#fff8fc;border-radius:13px;padding:22px;text-align:center;margin:13px 0}.upload-box input{display:block;margin:12px auto;font-size:11px}.feedback-list{display:grid;gap:8px;margin-top:10px}.feedback-item{border-radius:9px;padding:9px 10px;font-size:10px;background:#f5f5f7}.feedback-item.ok{background:var(--green-soft);color:#126849}.feedback-item.warn{background:var(--amber-soft);color:#805400}.evidence-score{display:flex;align-items:center;justify-content:space-between;padding:11px;background:#f7f7f9;border-radius:10px}.evidence-score b{font-size:22px}
.mentor-page{max-width:820px}.chat{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.chat-head{display:grid;grid-template-columns:54px 1fr;gap:10px;align-items:center;padding:14px;border-bottom:1px solid var(--line)}.chat-head img{width:54px}.chat-head h3{margin:0;font-size:14px}.chat-head p{margin:2px 0 0;color:var(--muted);font-size:10px}.messages{height:390px;overflow:auto;padding:15px;display:grid;align-content:start;gap:9px;background:#fafafb}.msg{max-width:80%;padding:10px 12px;border-radius:12px;font-size:11px;line-height:1.5}.msg.re{background:#fff;border:1px solid var(--line)}.msg.user{background:var(--pink);color:#fff;margin-left:auto}.chat-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.chat-form input{flex:1;border:1px solid #d9dae0;border-radius:10px;padding:11px}
.toast{position:fixed;right:22px;bottom:22px;background:#17171c;color:#fff;border-radius:10px;padding:11px 14px;font-size:11px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:200}.toast.show{opacity:1;transform:none}
.table{width:100%;border-collapse:collapse;font-size:11px}.table th,.table td{padding:9px;border-bottom:1px solid var(--line);text-align:left}.table th{color:var(--muted);font-size:10px}.callout{background:var(--pink-soft);border:1px solid var(--pink-line);border-radius:11px;padding:12px;font-size:11px;line-height:1.55}.empty{padding:20px;text-align:center;color:var(--muted);font-size:11px}
@media(max-width:1050px){.dashboard-layout,.course-layout,.object-layout,.case-layout,.result-grid{grid-template-columns:1fr}.right-column{grid-template-columns:repeat(2,1fr)}.app-shell{grid-template-columns:76px 1fr}.sidebar{padding:18px 10px}.brand-lockup img{width:48px}.brand-lockup span,.nav:not(.logout){font-size:0}.nav{grid-template-columns:1fr}.nav span{font-size:17px}.sidebar-note{display:none}.course-card{grid-template-columns:90px 1fr}.course-action{grid-column:2;text-align:left}.scene{grid-template-columns:1fr}.scene-visual{min-height:160px}}
@media(max-width:720px){.topbar{padding:0 14px}.search{width:auto;flex:1}.top-actions>span,.profile small{display:none}.page-shell{padding:18px 14px}.two-col,.right-column{grid-template-columns:1fr}.course-card{grid-template-columns:1fr}.course-thumb{width:100%;height:120px}.course-action{grid-column:auto;text-align:left}.course-hero{grid-template-columns:54px 1fr}.course-hero aside{grid-column:1/3;text-align:left}.scene{padding:24px}.scene-copy h2{font-size:22px}}
@media print{.sidebar,.topbar,.object-header,.primary,.secondary,.ghost{display:none!important}.app-shell{display:block}.page-shell{padding:0}.view{display:none!important}.view.active{display:block!important}.card,.object-card{box-shadow:none;border:0}}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px;box-shadow:var(--shadow)}.metric-card small,.metric-card span{display:block;color:var(--muted);font-size:9px}.metric-card b{display:block;font-size:22px;margin:5px 0 3px;letter-spacing:-.02em}.content-block form label{display:grid;gap:6px;font-size:11px;font-weight:700;margin:13px 0}.content-block textarea{width:100%;resize:vertical;border:1px solid #d9dae0;border-radius:10px;padding:11px;background:#fff;line-height:1.5}.admin-table{width:100%;border-collapse:collapse;font-size:11px}.admin-table th,.admin-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin-table th{font-size:9px;color:var(--muted)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px}.kpi small,.kpi span{display:block;color:var(--muted);font-size:9px}.kpi strong{display:block;font-size:23px;margin:4px 0}.badge{display:inline-block;border-radius:999px;padding:4px 7px;background:#f1f1f4;font-size:9px}.badge.red{background:#fff0f0;color:#a12828}.badge.green{background:var(--green-soft);color:var(--green)}.student-name{font-weight:750}.student-sub{font-size:9px;color:var(--muted);margin-top:2px}
@media(max-width:900px){.metric-grid,.kpi-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.metric-grid,.kpi-grid{grid-template-columns:1fr}}
.certificate-card{margin-top:20px;border:1px solid #e4d5de;border-radius:18px;padding:34px;background:linear-gradient(145deg,#fff 0%,#fff8fc 100%);position:relative;overflow:hidden}.certificate-card:before{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:rgba(230,0,126,.06)}.certificate-brand{display:flex;align-items:center;gap:10px;margin-bottom:30px}.certificate-brand img{width:130px}.certificate-brand span{font-size:11px;font-weight:800;color:var(--muted)}.certificate-card h1{font-size:30px;margin:16px 0 5px}.certificate-card h2{font-size:19px;margin:7px 0 12px}.certificate-card>p{color:var(--muted);font-size:11px}.certificate-copy{margin-top:14px!important}.certificate-code{margin:24px 0 8px;padding:12px 14px;border:1px solid var(--pink-line);border-radius:10px;background:#fff;display:inline-grid;gap:3px}.certificate-code span,.certificate-note{font-size:9px!important;color:var(--muted)}.certificate-code b{font-size:15px;letter-spacing:.08em}.certificate-note{word-break:break-all}.certificate-sign{margin-top:34px;padding-top:16px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.certificate-sign div{display:grid;gap:3px}.certificate-sign b{font-size:11px}.certificate-sign span{font-size:9px;color:var(--muted)}.button-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.verify-shell{min-height:100vh;background:#f5f5f7;display:grid;place-items:center;padding:24px}.verify-card{width:min(720px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--shadow)}.verify-brand{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.verify-brand img{width:150px}.verify-status{margin:18px 0;padding:14px;border-radius:12px;background:#f5f5f7}.verify-status.ok{background:var(--green-soft);color:#126849}.verify-status.warn{background:#fff0f0;color:#9b2929}.verify-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.verify-item{padding:12px;border:1px solid var(--line);border-radius:10px}.verify-item span{display:block;font-size:9px;color:var(--muted);margin-bottom:4px}.verify-item b{font-size:12px}
@media(max-width:560px){.certificate-sign,.verify-grid{grid-template-columns:1fr;display:grid}.certificate-card{padding:22px}.certificate-card h1{font-size:24px}}
@media print{body.print-certificate .view>*:not(#completionRoot){display:none!important}body.print-certificate #completionRoot .object-layout{display:block}body.print-certificate #completionRoot .right-column,body.print-certificate #completionRoot .object-header,body.print-certificate #completionRoot .content-block>*:not(.certificate-card){display:none!important}body.print-certificate .certificate-card{border:0;margin:0;padding:22mm;min-height:170mm;box-shadow:none}body.print-certificate .certificate-card:before{display:none}}
/* v0.14 — revisão, acesso controlado e gamificação */
.xp-card{background:linear-gradient(135deg,#fff 0%,#fff7fb 100%);border:1px solid #f0d6e5}
.xp-card .xp-number{font-size:30px;font-weight:800;margin:4px 0}.xp-row{display:flex;justify-content:space-between;gap:10px;align-items:center}.badge-grid{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.game-badge{font-size:10px;border:1px solid #ead9e3;border-radius:999px;padding:6px 8px;background:#fff}.review-banner{position:sticky;top:0;z-index:20;background:#fff3cd;border-bottom:1px solid #ffe69c;padding:8px 16px;text-align:center;font-size:11px;font-weight:700}.mode-note.show{display:block}.hidden{display:none!important}
/* v0.16 — UX consolidation after user review */
.dashboard-clean{grid-template-columns:minmax(0,1fr) 310px}.course-card-focus{border:1px solid #eadde5;box-shadow:0 12px 34px rgba(24,18,22,.07)}.primary-lg{min-width:170px;padding:12px 16px;font-weight:800}.home-support-grid{margin-top:14px}.quick-status{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;background:linear-gradient(90deg,#fff7fb,#fff)}.quick-status div{display:grid;gap:4px}.quick-status b{font-size:16px}.quick-status small{color:var(--muted)}
.next-focus{display:grid;grid-template-columns:36px 1fr auto;gap:11px;align-items:center}.next-focus small{display:block;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.06em}.next-focus b{display:block;font-size:13px;margin:3px 0}.next-focus p{margin:0;color:var(--muted);font-size:10px;line-height:1.45}
.empty-state-friendly{display:grid;gap:5px;padding:18px;border:1px dashed #ddd6da;border-radius:12px;background:#fcfcfd}.empty-state-friendly b{font-size:12px}.empty-state-friendly span{font-size:10px;line-height:1.5;color:var(--muted)}
.catalog-course-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;display:grid;grid-template-columns:76px 1fr auto;gap:18px;align-items:center;box-shadow:var(--shadow)}.catalog-course-icon{width:70px;height:70px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#147b45,#1f9d5b);color:#fff;font-size:31px;font-weight:900}.catalog-course-copy h2{margin:3px 0 6px;font-size:18px}.catalog-course-copy p{font-size:11px;color:var(--muted);margin:0 0 10px}.catalog-course-copy>small{display:block;margin-top:6px;color:var(--muted);font-size:9px}.catalog-course-action{display:grid;gap:8px;justify-items:end}
.review-course-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff7e2;border:1px solid #f1d58a;border-radius:13px;padding:12px 14px;margin:0 0 14px}.review-course-banner>div{display:grid;gap:3px}.review-course-banner b{font-size:12px}.review-course-banner span{font-size:10px;color:#755b15}.review-object-nav{position:sticky;top:70px;z-index:30;background:#fffdf4;border:1px solid #ead28b;border-radius:13px;padding:10px 12px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:14px;box-shadow:0 5px 18px rgba(80,65,20,.08)}.review-object-nav>div:first-child{display:grid;gap:2px}.review-object-nav b{font-size:12px}.review-object-nav small{font-size:9px;color:var(--muted)}.review-object-actions{display:flex;gap:7px;flex-wrap:wrap}.search-match{outline:2px solid rgba(230,0,126,.35);background:#fff8fc}
.journey-card h2{margin:3px 0 5px;font-size:19px}.journey-next{display:flex;justify-content:space-between;gap:16px;align-items:center;background:#fff7fb;border:1px solid var(--pink-line);border-radius:13px;padding:15px}.journey-next p,.journey-intro,.student-copy{font-size:11px;line-height:1.6;color:var(--muted)}.journey-list{display:grid;gap:8px;margin-top:10px}.journey-module{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:11px}.journey-index{width:30px;height:30px;border-radius:9px;background:#f2f2f5;display:grid;place-items:center;font-size:10px;font-weight:800}.journey-module b{display:block;font-size:11px}.journey-module small{display:block;font-size:9px;color:var(--muted);line-height:1.45;margin-top:2px}
.progress-welcome{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start;padding:22px}.progress-welcome-icon{width:58px;height:58px;border-radius:16px;background:var(--pink-soft);color:var(--pink);display:grid;place-items:center;font-size:28px;font-weight:900}.progress-welcome h2{font-size:19px;margin:4px 0 7px}.progress-welcome p{font-size:11px;color:var(--muted);line-height:1.6;margin:0 0 13px}
.mentor-context{border:1px solid var(--pink-line);background:#fff8fc;border-radius:14px;padding:13px 14px;margin-bottom:10px}.mentor-context>div{display:grid;gap:3px}.mentor-context b{font-size:12px}.mentor-context small{color:var(--muted);font-size:9px}.mentor-prompts{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 10px}.mentor-prompts button{border:1px solid #e4d7df;background:#fff;border-radius:999px;padding:7px 10px;font-size:10px;cursor:pointer}.mentor-prompts button:hover{border-color:var(--pink);color:var(--pink)}
.game-hero{background:linear-gradient(135deg,#251f24,#17171c);color:#fff;border-radius:18px;padding:24px;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.game-hero h2{font-size:38px;margin:4px 0}.game-hero p{font-size:11px;color:#ded8dc;max-width:600px;line-height:1.6}.game-level-mark{width:72px;height:72px;border-radius:20px;background:var(--pink);display:grid;place-items:center;font-size:31px}.level-track{display:grid;gap:8px}.level-step{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:10px;color:var(--muted)}.level-step.active{border-color:var(--pink-line);background:var(--pink-soft);color:var(--ink)}.level-step span{width:26px;height:26px;border-radius:8px;background:#f0f0f3;display:grid;place-items:center}.level-step.active span{background:var(--pink);color:#fff}.badge-grid-large .game-badge{display:grid;gap:3px;border-radius:12px;padding:10px 12px}.badge-grid-large .game-badge small{color:var(--muted);font-size:9px}
@media(max-width:900px){.dashboard-clean{grid-template-columns:1fr}.catalog-course-card{grid-template-columns:64px 1fr}.catalog-course-action{grid-column:2;justify-items:start}.review-object-nav{top:60px;align-items:flex-start;flex-direction:column}.game-hero{align-items:flex-start}.game-level-mark{display:none}}
@media(max-width:620px){.review-object-actions{width:100%}.review-object-actions button{flex:1}.next-focus{grid-template-columns:32px 1fr}.next-focus button{grid-column:2}.catalog-course-card{grid-template-columns:1fr}.catalog-course-icon{width:100%;height:90px}.catalog-course-action{grid-column:1}.progress-welcome{grid-template-columns:1fr}.quick-status{align-items:flex-start;flex-direction:column}}
/* v0.17 — dashboard learning-first */
.dashboard-v17{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.dashboard-v17-main{display:grid;gap:14px;min-width:0}.dashboard-v17-side{display:grid;gap:14px;align-content:start}.home-learning-hero{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 12px 34px rgba(24,18,22,.06);padding:18px;display:grid;grid-template-columns:180px minmax(0,1fr);gap:22px;min-height:300px}.home-learning-art{border-radius:17px;background:linear-gradient(145deg,#0e6239 0%,#168a50 58%,#bce8ce 100%);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:19px;position:relative;overflow:hidden;min-height:264px}.home-learning-art:before{content:"";position:absolute;width:175px;height:175px;border-radius:50%;background:rgba(255,255,255,.10);right:-58px;top:-48px}.home-learning-art:after{content:"";position:absolute;width:90px;height:90px;border:1px solid rgba(255,255,255,.22);border-radius:22px;transform:rotate(14deg);left:-28px;top:40px}.home-learning-art span{font-size:11px;font-weight:800;letter-spacing:.08em;opacity:.86}.home-learning-art b{font-size:58px;line-height:.9;margin:8px 0 9px;letter-spacing:-.06em}.home-learning-art small{font-size:11px;line-height:1.4;max-width:130px}.home-learning-copy{padding:5px 4px 2px;display:flex;flex-direction:column;min-width:0}.home-learning-copy h2{font-size:27px;letter-spacing:-.035em;margin:5px 0 8px}.home-learning-copy>p{font-size:12px;line-height:1.6;color:var(--muted);max-width:720px;margin:0}.home-now{margin:19px 0 16px;border-left:3px solid var(--pink);padding:2px 0 2px 12px;display:grid;gap:3px}.home-now span{font-size:9px;font-weight:850;letter-spacing:.1em;color:var(--pink-dark)}.home-now b{font-size:14px}.home-now small{font-size:10px;color:var(--muted)}.home-hero-progress{margin-top:auto}.home-hero-progress>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:10px;color:var(--muted)}.home-hero-actions{display:flex;gap:9px;align-items:center;margin-top:15px;flex-wrap:wrap}.home-hero-cta{min-width:180px;padding:12px 17px}.home-hero-link{border:0;background:transparent;color:var(--pink-dark);font-size:11px;font-weight:750;padding:8px}.home-recommendation{background:#fff;border:1px solid var(--pink-line);border-radius:16px;padding:15px 16px;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:13px;align-items:center}.home-recommendation-avatar{width:44px;height:44px;border-radius:13px;background:var(--pink-soft);overflow:hidden;display:flex;align-items:flex-end;justify-content:center}.home-recommendation-avatar img{width:48px}.home-recommendation-copy h3{font-size:14px;margin:3px 0 4px}.home-recommendation-copy p{font-size:11px;line-height:1.5;margin:0;color:#44474f}.home-recommendation-copy small{display:block;font-size:9px;line-height:1.45;color:var(--muted);margin-top:5px}.home-progress-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;display:grid;grid-template-columns:84px 1fr;gap:13px;align-items:center}.home-progress-ring{--p:0;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--pink) calc(var(--p)*1%),#efeff2 0);position:relative}.home-progress-ring:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff}.home-progress-ring>div{position:relative;z-index:1;display:grid;text-align:center}.home-progress-ring b{font-size:18px;line-height:1}.home-progress-ring span{font-size:8px;color:var(--muted);margin-top:3px}.home-progress-copy h3{font-size:13px;margin:3px 0 5px}.home-progress-copy p{font-size:9.5px;line-height:1.5;color:var(--muted);margin:0 0 8px}.home-progress-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid #f0f0f2;padding-top:8px}.home-progress-meta span{font-size:9px;font-weight:700;max-width:145px}.home-mentor-mini{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px}.home-mentor-mini-head{display:grid;grid-template-columns:40px 1fr;gap:10px;align-items:center}.home-mentor-mini-head img{width:40px;height:40px;object-fit:cover;object-position:top;border-radius:12px;background:var(--pink-soft)}.home-mentor-mini-head b{display:block;font-size:12px;margin-top:2px}.home-mentor-mini p{font-size:10px;line-height:1.55;color:var(--muted);margin:10px 0}.dashboard-v17-side .xp-card{box-shadow:none}.dashboard-v17-side .xp-card .xp-number{font-size:24px}.dashboard-v17-side .badge-grid{display:none}
@media(max-width:1050px){.dashboard-v17{grid-template-columns:1fr}.dashboard-v17-side{grid-template-columns:repeat(3,minmax(0,1fr))}.home-progress-card{grid-template-columns:72px 1fr}.home-progress-ring{width:70px;height:70px}}
@media(max-width:760px){.home-learning-hero{grid-template-columns:1fr;min-height:0}.home-learning-art{min-height:150px}.home-learning-art b{font-size:44px}.home-recommendation{grid-template-columns:42px 1fr}.home-recommendation>button{grid-column:2;justify-self:start}.dashboard-v17-side{grid-template-columns:1fr}}
@media(max-width:520px){.home-learning-hero{padding:13px}.home-learning-copy h2{font-size:23px}.home-hero-actions{align-items:stretch;flex-direction:column}.home-hero-cta{width:100%}.home-progress-card{grid-template-columns:70px 1fr}.home-recommendation{padding:13px}.page-shell{padding-left:18px;padding-right:18px}}

/* =========================================================
   v0.19 — correção visual controlada
   Base visual restaurada da v0.17. As mudanças abaixo são
   locais e não reduzem a escala global da interface.
   ========================================================= */
:root{--sidebar-expanded:225px;--sidebar-collapsed:62px}

/* Sidebar: replica o comportamento da demo de IA sem alterar a escala do conteúdo */
.app-shell{grid-template-columns:var(--sidebar-expanded) minmax(0,1fr);transition:grid-template-columns .2s ease}
.sidebar{width:auto;min-width:0;transition:width .2s ease}
.sidebar-collapse-row{display:flex;justify-content:flex-end;padding:7px 6px 2px;margin-top:-18px;margin-bottom:6px}
.sidebar-collapse-btn{display:grid;place-items:center;width:30px;height:30px;padding:5px;border:0;background:transparent;color:#fff;border-radius:7px}
.sidebar-collapse-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.sidebar-collapse-btn:hover{background:rgba(255,255,255,.09)}
.nav b{font-weight:500;white-space:nowrap}.nav em{font-style:normal;margin-left:auto;transition:transform .2s}
.nav-group-toggle[aria-expanded="false"] em{transform:rotate(-90deg)}
.nav-submenu{display:grid;gap:3px;max-height:260px;overflow:hidden;transition:max-height .18s ease,opacity .18s ease}
.nav-submenu.closed{max-height:0;opacity:0}.subnav{padding-left:42px;font-size:11px}.subnav span{font-size:10px;opacity:.65}
body.sidebar-collapsed .app-shell{grid-template-columns:var(--sidebar-collapsed) minmax(0,1fr)}
body.sidebar-collapsed .sidebar{padding-left:8px;padding-right:8px}
body.sidebar-collapsed .brand-lockup{display:none}
body.sidebar-collapsed .sidebar-collapse-row{justify-content:center;margin:0 0 10px;padding:0}
body.sidebar-collapsed .sidebar-collapse-btn svg{transform:rotate(180deg)}
body.sidebar-collapsed .nav{grid-template-columns:1fr;place-items:center;padding:11px 8px}
body.sidebar-collapsed .nav b,body.sidebar-collapsed .nav em,body.sidebar-collapsed .sidebar-note,body.sidebar-collapsed .nav-submenu{display:none!important}
body.sidebar-collapsed .nav span{font-size:17px}
body.sidebar-collapsed .sidebar-bottom{gap:8px}

/* Perfil */
.profile-wrap{position:relative}.profile-menu{position:absolute;right:0;top:52px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px rgba(25,20,24,.14);border-radius:12px;padding:6px;min-width:175px;z-index:60}.profile-menu button{display:block;width:100%;border:0;background:#fff;text-align:left;padding:10px 11px;border-radius:8px;font-size:12px}.profile-menu button:hover{background:var(--pink-soft);color:var(--pink-dark)}

/* Contexto do curso — mesmo componente para Jornada, Atividades e Desempenho */
.course-context{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin-bottom:18px;box-shadow:var(--shadow)}
.course-context-art{width:60px;height:60px;border-radius:13px;background:linear-gradient(145deg,#0f7145,#88d7ab);color:#fff;display:grid;place-items:center;font-size:29px;font-weight:900}
.course-context-copy small{display:block;font-size:10px;color:var(--pink-dark);font-weight:850;letter-spacing:.08em;text-transform:uppercase}.course-context-copy h2{font-size:19px;margin:3px 0}.course-context-copy p{font-size:11px;color:var(--muted);margin:0}.course-context button{white-space:nowrap}

/* Capas: fallback editorial profissional. O contrato do motor guarda o brief para geração de arte por IA. */
.course-cover-v19{position:relative;overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;border-radius:15px;padding:13px 12px;isolation:isolate;box-shadow:0 8px 22px rgba(15,40,28,.12)}
.course-cover-v19:before{content:"";position:absolute;inset:0;z-index:-3;background:linear-gradient(150deg,#0b5d37,#15985a 58%,#9de1ba)}
.course-cover-v19.service:before{background:linear-gradient(150deg,#5c1744,#a92b70 58%,#ef9bc5)}
.course-cover-v19:after{content:"";position:absolute;width:105px;height:105px;border-radius:50%;right:-32px;top:-24px;background:rgba(255,255,255,.12);z-index:-1}
.course-cover-v19 .cover-pattern{position:absolute;inset:0;z-index:-2}.course-cover-v19 .cover-pattern i{position:absolute;display:block;border:1px solid rgba(255,255,255,.16);border-radius:20px;transform:rotate(16deg)}.course-cover-v19 .cover-pattern i:nth-child(1){width:105px;height:58px;left:-38px;top:24px}.course-cover-v19 .cover-pattern i:nth-child(2){width:92px;height:92px;right:-42px;bottom:15px}.course-cover-v19 .cover-pattern i:nth-child(3){width:64px;height:42px;left:28px;bottom:40px}
.course-cover-v19>span{font-size:8px;opacity:.82;text-transform:uppercase;letter-spacing:.08em;font-weight:750}.course-cover-v19>b{font-size:18px;line-height:1.05;margin:5px 0 3px}.course-cover-v19>small{font-size:9px;line-height:1.2;opacity:.9}
.course-cover-v19.mini{width:82px;height:104px;min-width:82px}.course-cover-v19.catalog{width:112px;height:142px;min-width:112px}.course-cover-v19.hero{width:68px;height:82px;min-width:68px;border-radius:13px;padding:9px}.course-cover-v19.hero>b{font-size:13px}.course-cover-v19.hero>span,.course-cover-v19.hero>small{display:none}
.course-hero-cover{width:68px}

/* Dashboard multcurso sem comprimir os elementos já aprovados */
.multi-course-shelf-v19{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;margin-top:14px;box-shadow:var(--shadow)}
.multi-course-shelf-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.multi-course-shelf-head h3{font-size:16px;margin:4px 0 0}
.mini-course-grid-v19{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.mini-course-v19{border:1px solid var(--line);border-radius:14px;padding:13px;display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:13px;align-items:center;background:#fff}.mini-course-copy h4{font-size:14px;margin:3px 0 6px}.mini-course-copy p{font-size:11px;color:var(--muted);margin:0 0 8px;line-height:1.45}

/* Catálogo e Meus cursos: cards maiores, sem ícones infantis */
.catalog-card-v19{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;display:grid;grid-template-columns:112px minmax(0,1fr) 145px;gap:20px;align-items:center;box-shadow:var(--shadow)}
.catalog-copy h2{font-size:20px;margin:4px 0 7px}.catalog-copy>p{font-size:12px;color:var(--muted);line-height:1.55;margin:0 0 10px}.catalog-actions{display:grid;justify-items:end}.course-progress-copy{display:block;margin-top:7px;color:var(--muted);font-size:10px}

/* Navegação e modo interno não contaminam a experiência do curso */
.course-review-nav{background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px 12px;margin-bottom:13px;display:flex;justify-content:space-between;align-items:center;gap:12px}.course-review-nav .review-meta{font-size:10px;color:var(--muted)}.course-review-nav .review-meta b{display:block;color:var(--ink);font-size:11px}.context-back{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:4px 0;color:var(--pink-dark);font-size:11px;font-weight:750;cursor:pointer;margin-bottom:8px}.context-back:hover{text-decoration:underline}.object-header>.pill{display:none}.object-type-label{display:block;margin-top:7px;color:var(--pink-dark)!important}

/* Vídeo: ajuste LOCAL, mantendo o restante da plataforma na escala da v0.17 */
.content-block .lesson-video{width:100%;max-width:820px;max-height:430px;object-fit:contain;background:#111;border-radius:14px;margin:0 auto;display:block}.lesson-player{max-width:860px;margin:0 auto;min-height:315px}.lesson-player .scene{min-height:315px;padding:32px 36px}.lesson-player .scene-visual{min-height:190px}.lesson-player .scene-copy h2{font-size:25px}

/* Leitura editorial */
.content-block article.reading-section{border:0;background:transparent;padding:0;margin:0 0 24px}.reading-canvas{max-width:790px;margin:0 auto;color:#2d2a2c}.reading-canvas h2{font-size:29px;margin:0 0 15px}.reading-canvas h3{font-size:19px;margin:28px 0 9px}.reading-canvas p{font-size:15px;line-height:1.82;color:#3f3b3e;margin:0 0 15px}.reading-actions{max-width:790px;margin:20px auto 0;display:flex;gap:9px;flex-wrap:wrap}

/* Material de apoio e documentos para impressão */
.support-material{max-width:1020px}.support-actions{display:flex;gap:9px;margin-top:18px;flex-wrap:wrap}.check-list .check-item{cursor:pointer}.check-list .check-item i{background:#fff}.check-list .check-item.checked i{background:var(--pink);border-color:var(--pink)}.check-list .check-item.checked i:after{content:"✓";color:#fff;font-size:10px;display:grid;place-items:center;height:100%}

/* Prática guiada: evidência real + feedback da Rê */
.guided-v18{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.guided-main,.guided-re-panel{border:1px solid var(--line);border-radius:15px;padding:18px;background:#fff}.guided-main h3{font-size:19px;margin:2px 0 8px}.guided-main p{font-size:12px;line-height:1.65;color:var(--muted)}.guided-stepper{display:flex;gap:6px;margin:14px 0}.guided-dot{height:7px;flex:1;border-radius:4px;background:#ececf0}.guided-dot.done,.guided-dot.current{background:var(--pink)}.guided-evidence{display:grid;gap:9px;margin-top:14px}.guided-evidence textarea{width:100%;min-height:120px;border:1px solid var(--line);border-radius:11px;padding:12px;font:inherit;line-height:1.5}.guided-actions{display:flex;gap:9px;flex-wrap:wrap}.guided-re-panel img{width:68px;height:68px;border-radius:14px;object-fit:cover;object-position:top}.guided-re-panel p{font-size:11px;line-height:1.6;color:var(--muted)}.guided-history{display:grid;gap:8px;margin-top:13px}.guided-history-item{border-top:1px solid var(--line);padding-top:8px;font-size:10px;color:var(--muted)}.guided-criteria{margin:13px 0;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#fafafa}.guided-criteria b{font-size:11px}.guided-criteria ul{margin:7px 0 0 18px;padding:0}.guided-criteria li{font-size:11px;line-height:1.5;color:var(--muted);margin:3px 0}.guided-feedback{margin-top:13px;border-radius:11px;padding:12px 14px;border:1px solid var(--line)}.guided-feedback.accepted{background:var(--green-soft);border-color:#c9e9da}.guided-feedback.retry{background:var(--pink-soft);border-color:var(--pink-line)}.guided-feedback b{font-size:11px}.guided-feedback p{margin:4px 0 0;font-size:11px;line-height:1.5;color:var(--muted)}

/* Avaliação de conhecimento */
.assessment-feedback{display:grid;gap:9px;margin-top:15px}.assessment-feedback-item{border:1px solid var(--line);border-radius:11px;padding:12px;font-size:11px;line-height:1.55}.assessment-feedback-item.correct{border-color:#bfe4ce;background:#f4fbf7}.assessment-feedback-item.wrong{border-color:#f1bfd6;background:#fff7fb}.assessment-feedback-item b{display:block;margin-bottom:4px}.assessment-summary{margin-top:15px;border:1px solid var(--pink-line);background:var(--pink-soft);border-radius:13px;padding:14px}

/* Atividades agrupadas por módulo */
.activities-by-module{display:grid;gap:15px}.activity-module{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:var(--shadow)}.activity-module-head{padding:14px 16px;background:#fafafd;border-bottom:1px solid var(--line)}.activity-module-head small{font-size:10px;color:var(--pink-dark);font-weight:800}.activity-module-head h3{font-size:15px;margin:4px 0 0}.activity-row-v18{display:grid;grid-template-columns:minmax(0,1fr) 120px 100px 80px;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid #f0f0f2}.activity-row-v18:last-child{border-bottom:0}.activity-row-v18 b{font-size:11px}.activity-row-v18 small{display:block;color:var(--muted);font-size:10px;margin-top:3px}

/* Rê: conversa continua protagonista, painel lateral não comprime o chat */
.mentor-page-v19{max-width:none}.mentor-v19{display:grid;grid-template-columns:minmax(620px,1.55fr) minmax(320px,.75fr);gap:20px;align-items:start}.mentor-conversation-v19{min-width:0}.mentor-v19 .chat-v19{min-height:560px}.mentor-v19 .messages{height:430px}.re-insight-panel-v19{display:grid;gap:12px}.re-insight-card-v19{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px;box-shadow:var(--shadow)}.re-insight-card-v19.primary-insight{border-color:var(--pink-line);background:#fffafd}.re-insight-card-v19 h3{font-size:14px;margin:4px 0 8px}.re-insight-card-v19 p,.re-insight-card-v19 li{font-size:11px;line-height:1.6;color:var(--muted)}.re-insight-card-v19 ul{padding-left:18px;margin:0}

/* Certificados: visual documental e adulto */
.certificate-tabs-v19{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:16px}.certificate-tabs-v19 button{border:0;background:transparent;padding:10px 2px;color:var(--muted);font-size:12px}.certificate-tabs-v19 button.active{color:var(--pink-dark);border-bottom:2px solid var(--pink);font-weight:800}.cert-grid-v19{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.certificate-card-v19{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;box-shadow:var(--shadow)}.certificate-card-v19 h2{font-size:19px;margin:4px 0 8px}.certificate-card-v19 p{font-size:12px;line-height:1.55;color:var(--muted)}.certificate-document-mark{width:58px;height:72px;border:1px solid #dfe5e1;background:#f4faf6;border-radius:9px;display:grid;place-items:center;color:#19734c;font-weight:850;font-size:13px;position:relative}.certificate-document-mark:after{content:"";position:absolute;left:10px;right:10px;bottom:13px;height:2px;background:#c7ded0;box-shadow:0 -7px 0 #c7ded0,0 -14px 0 #c7ded0}.certificate-document-mark.neutral{background:#f8f8fa;color:#555;border-color:#e1e1e6}.certificate-document-mark.neutral:after{background:#d8d8dd;box-shadow:0 -7px 0 #d8d8dd,0 -14px 0 #d8d8dd}.certificate-policy{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0}.certificate-policy>*{font-size:10px;padding:6px 8px;border-radius:999px;background:#f3f3f5;color:#555}.certificate-code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#f6f5f7;border-radius:8px;padding:7px 9px;font-size:10px;display:inline-block}

/* Perfil */
.profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px}.profile-form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.profile-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.profile-form label{display:grid;gap:5px;font-size:11px;font-weight:650}.profile-form input{border:1px solid var(--line);border-radius:10px;padding:11px;font:inherit}.profile-note{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;font-size:11px;color:var(--muted);line-height:1.6}

/* Relatar erro */
.modal{position:fixed;inset:0;background:rgba(20,17,20,.52);z-index:1000;display:grid;place-items:center;padding:18px}.modal.hidden{display:none}.modal-card{width:min(580px,100%);background:#fff;border-radius:18px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.25);position:relative}.modal-card h2{font-size:23px;margin:5px 0 8px}.modal-card p{font-size:12px;line-height:1.55;color:var(--muted)}.modal-card label{display:grid;gap:5px;margin-top:12px;font-size:11px;font-weight:700}.modal-card textarea,.modal-card input{border:1px solid var(--line);border-radius:10px;padding:11px;font:inherit}.modal-close{position:absolute;right:14px;top:12px;border:0;background:#f4f3f5;width:30px;height:30px;border-radius:50%;font-size:20px;cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}.report-inline{display:flex;justify-content:flex-end;margin-top:16px}.report-inline button{border:0;background:transparent;color:var(--muted);font-size:10px;text-decoration:underline;cursor:pointer}.report-inline button:hover{color:var(--pink-dark)}

/* Recursos universais */
.universal-practice,.external-resource{display:grid;gap:15px}.resource-response{width:100%;min-height:160px;border:1px solid var(--line);border-radius:12px;padding:14px;font:inherit;line-height:1.6;resize:vertical;background:#fff}.resource-response:focus{outline:2px solid rgba(230,0,126,.12);border-color:var(--pink)}.file-field{display:grid;gap:7px;font-size:12px;font-weight:700;color:var(--ink)}.file-field input{font-weight:400;border:1px dashed var(--line);border-radius:10px;padding:12px;background:#fff}.rubric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px}.rubric-grid>div{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:#fff}.external-resource .primary,.external-resource .secondary{width:max-content}

@media(max-width:1180px){.mentor-v19{grid-template-columns:1fr}.guided-v18{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr}.cert-grid-v19{grid-template-columns:1fr}.mini-course-grid-v19{grid-template-columns:1fr}}
@media(max-width:1050px){body:not(.sidebar-collapsed) .app-shell{grid-template-columns:76px 1fr}body:not(.sidebar-collapsed) .brand-lockup img{width:48px}body:not(.sidebar-collapsed) .brand-lockup span,body:not(.sidebar-collapsed) .nav b,body:not(.sidebar-collapsed) .nav em,body:not(.sidebar-collapsed) .nav-submenu{display:none!important}body:not(.sidebar-collapsed) .nav{grid-template-columns:1fr;place-items:center}.course-context{grid-template-columns:54px 1fr}.course-context button{grid-column:2;justify-self:start}.catalog-card-v19{grid-template-columns:96px 1fr}.course-cover-v19.catalog{width:96px;height:126px;min-width:96px}.catalog-actions{grid-column:2;justify-items:start}.activity-row-v18{grid-template-columns:1fr 100px}}
@media(max-width:720px){.mini-course-v19{grid-template-columns:72px 1fr}.mini-course-v19>button{grid-column:2;justify-self:start}.catalog-card-v19{grid-template-columns:1fr}.catalog-card-v19 .course-cover-v19{width:100%;height:120px}.catalog-actions{grid-column:1;justify-items:start}.profile-form .form-grid{grid-template-columns:1fr}.activity-row-v18{grid-template-columns:1fr}.course-context{grid-template-columns:1fr}.course-context-art{width:100%;height:70px}.course-context button{grid-column:1}.mentor-v19{grid-template-columns:1fr}}

/* =========================================================
   RecrutaEasy Learning v0.20 — correções aprovadas de UX
   Mantém a escala geral; ajustes são locais e orientados à visão do participante.
   ========================================================= */

/* Logo oficial + sidebar retrátil */
:root{--sidebar-expanded:238px;--sidebar-collapsed:78px}
.app-shell{grid-template-columns:var(--sidebar-expanded) minmax(0,1fr)}
.sidebar{padding:18px 14px 18px}
.sidebar-brand-row{display:flex;align-items:center;gap:8px;min-height:58px;padding:0 2px 14px;border-bottom:1px solid #2b2b32}
.brand-lockup{flex:1;min-width:0;padding:0;border:0;overflow:hidden;display:flex;align-items:center}
.brand-lockup img{width:174px;max-width:none;height:auto;filter:none;display:block}
.sidebar-collapse-btn{flex:0 0 30px;width:30px;height:30px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;border-radius:9px;display:grid;place-items:center;padding:6px}
.sidebar-collapse-btn:hover{background:rgba(255,255,255,.12)}
.sidebar-collapse-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.sidebar nav{margin-top:20px;gap:5px}
.nav{grid-template-columns:28px minmax(0,1fr);padding:11px 11px;gap:9px;font-size:14px}
.nav span{font-size:18px}.nav b{font-size:14px;font-weight:580}
.nav-group-toggle{grid-template-columns:28px minmax(0,1fr) 20px}.nav-group-toggle em{justify-self:end;font-size:14px}
.nav-submenu{gap:1px;margin:1px 0 4px}
.subnav{grid-template-columns:28px minmax(0,1fr);padding:9px 11px;color:#bfc1c9}
.subnav span{font-size:12px;opacity:.72}.subnav b{font-size:13px;font-weight:520}
body.sidebar-collapsed .app-shell{grid-template-columns:var(--sidebar-collapsed) minmax(0,1fr)}
body.sidebar-collapsed .sidebar{padding-left:9px;padding-right:9px}
body.sidebar-collapsed .sidebar-brand-row{display:grid;justify-items:center;gap:7px;padding-bottom:12px}
body.sidebar-collapsed .brand-lockup{display:block;width:42px;height:34px;overflow:hidden}
body.sidebar-collapsed .brand-lockup img{width:174px;height:auto;max-width:none;transform:translateX(0);object-fit:none;object-position:left center}
body.sidebar-collapsed .sidebar-collapse-btn svg{transform:rotate(180deg)}
body.sidebar-collapsed .nav{grid-template-columns:1fr;place-items:center;padding:11px 6px}
body.sidebar-collapsed .nav b,body.sidebar-collapsed .nav em,body.sidebar-collapsed .nav-submenu,body.sidebar-collapsed .sidebar-note{display:none!important}
body.sidebar-collapsed .sidebar-bottom{gap:8px}

/* Capa gerada / fallback visual para cursos não-Excel */
.course-cover-v20{position:relative;overflow:hidden;border-radius:15px;display:grid;place-items:center;min-width:82px;width:82px;height:104px;box-shadow:0 8px 22px rgba(40,12,31,.14)}
.course-cover-v20.service{background:radial-gradient(circle at 28% 18%,#ff7ab8 0,#d7358a 34%,#8f1e65 72%,#551445 100%)}
.course-cover-v20.service:after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.14),transparent 50%)}
.course-cover-v20 svg{width:62%;height:62%;fill:none;stroke:#fff;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;position:relative;z-index:2;filter:drop-shadow(0 5px 10px rgba(55,0,35,.25))}
.course-cover-v20.hero{width:60px;height:66px;min-width:60px;border-radius:12px}.course-cover-v20.catalog{width:112px;height:142px}.course-cover-v20.image img{width:100%;height:100%;object-fit:cover}

/* Visão do participante: sem linguagem de bastidor */
.top-actions #saveStatus{font-size:11px}.participant-course-nav{padding:12px 14px}.review-course-ident{display:flex;align-items:center;gap:10px}.review-course-icon{width:38px;height:38px;border-radius:9px;background:linear-gradient(145deg,#0f7145,#2ca466);color:#fff;font-size:19px;font-weight:900;display:grid;place-items:center}.participant-course-nav .review-course-ident b{font-size:13px}.participant-course-nav .review-course-ident span{display:block;margin-top:3px;font-size:11px;color:var(--muted)}

/* Tipografia e respiro das páginas internas */
.object-card{padding:26px}.object-header{margin:0 0 20px}.object-header small{display:block;font-size:13px;line-height:1.45;color:#474b55;margin-bottom:8px}.object-type-label{margin:0 0 7px;font-size:11px}.object-header h1{font-size:27px;line-height:1.16;margin:0 0 8px}.object-header p{font-size:13px;line-height:1.55}.context-back{font-size:13px;margin:0 0 15px;padding:3px 0}.content-block{margin-top:18px}.content-block h3{font-size:17px}.content-block p,.content-block li{font-size:14px;line-height:1.65}.callout{padding:15px 16px;font-size:13px;line-height:1.55}.student-copy{font-size:13px}.right-column .card h3{font-size:15px}.right-column .card p,.right-column .card small{font-size:12px;line-height:1.55}.eyebrow{font-size:11px;color:var(--pink);letter-spacing:.11em}
.object-card .eyebrow,.content-block .eyebrow,.page-heading .eyebrow,.home-recommendation .eyebrow{color:var(--pink)}

/* Prática guiada universal — instrução clara + material-base + evidência */
.guided-v20{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.guided-v20 .guided-main,.guided-v20 .guided-re-panel{border:1px solid var(--line);border-radius:16px;padding:20px;background:#fff}.guided-v20 .guided-main h3{font-size:23px;margin:4px 0 9px}.guided-intro{font-size:14px!important;line-height:1.65!important;color:#50535d!important;margin-bottom:12px}.guided-material-button{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--pink-dark);border:1px solid var(--pink-line);background:#fff8fc;border-radius:10px;padding:10px 13px;margin:3px 0 13px;font-size:13px}.guided-material-button span{font-size:20px;line-height:1}.guided-callout p{margin:5px 0 0!important;color:#333740!important}.guided-criteria{padding:14px 16px;background:#fbfbfc}.guided-criteria b{font-size:13px}.guided-criteria li{font-size:13px;line-height:1.55}.guided-evidence{gap:11px}.guided-evidence label{font-size:13px;font-weight:700;color:#343740;display:grid;gap:7px}.guided-evidence textarea{min-height:145px;padding:14px;font-size:14px}.guided-v20 .file-field{font-size:13px}.guided-re-panel img{width:100%;height:158px;object-fit:cover;object-position:center 18%;border-radius:13px;margin-bottom:12px}.guided-re-panel .eyebrow{display:block;margin-bottom:5px}.guided-re-panel h3{font-size:18px;margin:0 0 8px}.guided-re-panel p{font-size:13px;line-height:1.6}.guided-re-panel .secondary{margin-top:5px;width:100%}.guided-history-item{font-size:11px}

/* Mentora Rê — imagem limpa e nomenclatura consistente */
.mentor-card .eyebrow,.home-mentor-mini .eyebrow,.chat-head h3{color:var(--pink)}
.home-recommendation-avatar{overflow:hidden}.home-recommendation-avatar img,.home-mentor-mini-head img{object-fit:cover;object-position:center 16%}
.chat-head img{width:58px;height:58px;border-radius:50%;object-fit:cover;object-position:center 15%}

/* Conquistas: menos informação, mais progresso e compartilhamento */
.game-summary-v20{display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:20px;background:linear-gradient(105deg,#fff 0%,#fff8fc 65%,#fff0f7 100%);border:1px solid var(--pink-line);border-radius:18px;padding:20px 22px;box-shadow:var(--shadow)}
.game-ring{width:82px;height:82px;border-radius:50%;border:9px solid #f7d6e7;border-top-color:var(--pink);display:grid;place-items:center;align-content:center}.game-ring span{font-size:25px;font-weight:850}.game-ring small{font-size:10px;color:var(--muted)}.game-summary-v20 h2{font-size:26px;margin:4px 0}.game-summary-v20 p{font-size:13px;color:var(--muted);margin:0}.linkedin-share,.linkedin-small{border:0;border-radius:10px;background:var(--pink);color:#fff;font-weight:750;padding:11px 15px;white-space:nowrap}.linkedin-small{padding:8px 10px;font-size:11px;background:#fff;color:#0a66c2;border:1px solid #bfd3e9}.game-levels-v20{margin-top:14px}.game-levels-v20 h3{font-size:17px}.level-track-v20{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;position:relative}.level-node-v20{display:grid;justify-items:center;gap:6px;color:#7b7e87;font-size:12px}.level-node-v20 span{width:42px;height:42px;border-radius:50%;background:#f0f1f4;display:grid;place-items:center;font-size:16px}.level-node-v20.active{color:var(--pink-dark);font-weight:800}.level-node-v20.active span{background:var(--pink);color:#fff}.achievements-v20{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.achievements-v20 h3{font-size:17px;margin:4px 0 0}.achievement-grid-v20{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.achievement-card-v20{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:12px;background:#fff}.achievement-icon{width:42px;height:42px;border-radius:12px;background:var(--pink-soft);color:var(--pink);display:grid;place-items:center;font-size:18px;font-weight:900}.achievement-card-v20 b{font-size:13px}.achievement-card-v20 p{font-size:11px;line-height:1.4;color:var(--muted);margin:3px 0 0}

/* Biblioteca de certificados escalável por curso */
.credential-intro-v20{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;margin-bottom:14px;box-shadow:var(--shadow)}.credential-intro-v20 h2{font-size:20px;margin:4px 0 6px}.credential-intro-v20 p{font-size:13px;color:var(--muted);margin:0}.credential-library-v20{display:grid;gap:12px}.credential-course-row-v20{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(280px,1fr) minmax(280px,1fr);gap:0;background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden;box-shadow:var(--shadow)}.credential-course-info-v20{display:grid;grid-template-columns:64px 1fr;gap:13px;align-items:center;padding:18px;border-right:1px solid var(--line)}.credential-course-info-v20 h3{font-size:17px;margin:4px 0 5px}.credential-course-info-v20 p{font-size:11px;color:var(--muted);margin:0}.credential-cell-v20{padding:18px;border-right:1px solid var(--line);display:grid;align-content:start;gap:11px}.credential-cell-v20:last-child{border-right:0}.credential-cell-v20.knowledge{background:linear-gradient(135deg,#fff 0%,#fffbf2 100%)}.credential-title-v20{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center}.credential-title-v20 b{font-size:14px}.credential-title-v20 small{display:block;font-size:11px;line-height:1.4;color:var(--muted);margin-top:2px}.credential-type-icon{width:36px;height:36px;border-radius:10px;background:var(--pink-soft);color:var(--pink);display:grid;place-items:center;font-size:17px;font-weight:900}.credential-type-icon.gold{background:#fff4d4;color:#9c6a00}.credential-status-v20{font-size:11px;color:var(--muted)}.credential-status-v20.ready{color:var(--green);font-weight:750}.credential-actions-v20{display:flex;gap:7px;flex-wrap:wrap}.credential-actions-v20 .secondary,.credential-actions-v20 .primary{padding:8px 10px}.link-quiet{border:0;background:transparent;color:var(--pink-dark);font-size:11px;padding:7px 2px}.credential-modal-card{width:min(1120px,96vw)}.credential-preview-wrap{background:#f5f3ee;border:1px solid #e5dfd0;border-radius:12px;padding:10px;max-height:72vh;overflow:auto}.credential-preview-wrap iframe{display:block;width:100%;height:min(70vh,760px);border:0;background:#fff;border-radius:8px}.modal-open{overflow:hidden}

/* Cabeçalhos / breadcrumbs com respiro */
.object-card .context-back + .object-header{margin-top:2px}.object-header small + .object-type-label{margin-top:7px}.object-type-label + h1{margin-top:7px}.page-heading{margin-bottom:24px}.course-review-nav{margin-bottom:16px}

/* Avaliação de conhecimento: legível, mantendo o fluxo já aprovado */
.assessment-feedback-item{font-size:13px;line-height:1.55}.assessment-summary{font-size:13px}.assessment-card h3{font-size:16px}.assessment-card label{font-size:14px;line-height:1.45}.checkpoint-question{font-size:14px}

@media(max-width:1180px){.guided-v20{grid-template-columns:1fr}.credential-course-row-v20{grid-template-columns:1fr}.credential-course-info-v20,.credential-cell-v20{border-right:0;border-bottom:1px solid var(--line)}.credential-cell-v20:last-child{border-bottom:0}.game-summary-v20{grid-template-columns:80px 1fr}.game-summary-v20 .linkedin-share{grid-column:1/3;justify-self:start}.achievement-card-v20{grid-template-columns:44px 1fr}.achievement-card-v20 .linkedin-small{grid-column:2;justify-self:start}}
@media(max-width:760px){.level-track-v20{grid-template-columns:1fr 1fr}.game-summary-v20{grid-template-columns:1fr}.game-summary-v20 .linkedin-share{grid-column:1}.credential-intro-v20{align-items:flex-start;flex-direction:column}.achievement-grid-v20{grid-template-columns:1fr}.page-shell{padding-left:18px;padding-right:18px}}
.login-brand img{width:190px;filter:none}.brand-lockup img{filter:none}
.course-context-cover{width:60px;height:64px}.course-context-cover .course-cover-v19,.course-context-cover .course-cover-v20{width:60px;height:64px;min-width:60px;border-radius:12px}.course-context-cover .course-cover-v19>b{font-size:15px}

/* =========================================================
   v0.21 — Fechamento UX e responsividade
   Ajustes aprovados em 13/09/2026.
   ========================================================= */

/* Sidebar: botão separado da logo, densidade semelhante ao sistema RecrutaEasy */
.sidebar{overflow:visible;padding:16px 12px 16px;z-index:45}
.sidebar-brand-row{position:relative;display:block;min-height:54px;padding:2px 8px 13px;border-bottom:1px solid #2b2b32}
.brand-lockup{width:100%;height:40px;display:flex;align-items:center;overflow:hidden}
.brand-lockup img{width:182px;height:auto;max-width:none;display:block}
.sidebar-collapse-btn{position:absolute;top:66px;right:-14px;z-index:70;width:29px;height:29px;border:1px solid rgba(255,255,255,.18);background:#26262d;box-shadow:0 4px 14px rgba(0,0,0,.22);border-radius:7px}
.sidebar-collapse-btn:hover{background:#32323a}
.sidebar nav{margin-top:17px;gap:1px}
.nav{min-height:39px;padding:8px 10px;gap:8px;border-radius:9px}
.nav span{font-size:17px}.nav b{font-size:14px}
.nav-group-toggle{grid-template-columns:28px minmax(0,1fr) 18px}
.nav-submenu{gap:0;margin:0 0 3px}
.subnav{min-height:34px;padding:6px 10px 6px 38px;grid-template-columns:18px minmax(0,1fr);gap:6px}
.subnav b{font-size:13px}.subnav span{font-size:10px}
.sidebar-bottom{gap:9px}.sidebar-note{padding-top:14px}.logout{min-height:38px}
body.sidebar-collapsed .sidebar-brand-row{display:block;padding:2px 5px 13px;min-height:54px}
body.sidebar-collapsed .brand-lockup{display:block;width:44px;height:38px;overflow:hidden}
body.sidebar-collapsed .brand-lockup img{width:182px;max-width:none;transform:none;object-fit:none;object-position:left center}
body.sidebar-collapsed .sidebar-collapse-btn{right:-14px}
body.sidebar-collapsed .nav{min-height:39px;padding:8px 5px}

/* Mentora Rê: sempre usar o recorte da cintura para cima */
.mentor-card img,.home-recommendation-avatar img,.home-mentor-mini-head img,.chat-head img,.guided-mentor-sidebar img{object-fit:cover;object-position:center center}
.mentor-card img{max-height:150px}
.guided-mentor-portrait{width:100%;height:190px;border-radius:14px;overflow:hidden;background:var(--pink-soft);margin-bottom:13px}
.guided-mentor-portrait img{width:100%;height:100%;display:block}

/* Prática guiada: conteúdo central livre; uma única Mentora Rê na lateral */
.guided-v21{display:block}
.guided-v21 .guided-main{border:0;padding:0;background:transparent}
.guided-v21 .guided-main h3{font-size:23px;margin:4px 0 9px}
.guided-mentor-sidebar{padding:16px}
.guided-mentor-sidebar .eyebrow{display:block;margin:2px 0 5px}
.guided-mentor-sidebar h3{font-size:17px;margin:0 0 8px}
.guided-mentor-sidebar p{font-size:13px;line-height:1.58}
.guided-mentor-sidebar .primary{width:100%;margin-top:7px}
.guided-mentor-sidebar .guided-history{margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}

/* Mentora Rê: o campo de conversa permanece visível na área útil */
.mentor-page-v19{height:calc(100vh - 190px);min-height:530px}
.mentor-v19{height:100%;min-height:0;align-items:stretch}
.mentor-conversation-v19{display:flex;flex-direction:column;min-height:0}
.mentor-context,.mentor-prompts{flex:0 0 auto}
.mentor-chat-fixed{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}
.mentor-chat-fixed .chat-head{flex:0 0 auto}
.mentor-chat-fixed .messages{height:auto;min-height:0;flex:1 1 auto;overflow:auto}
.mentor-chat-fixed .chat-form{position:sticky;bottom:0;z-index:4;flex:0 0 auto;background:#fff;box-shadow:0 -8px 18px rgba(25,24,28,.04)}

/* Certificados: modelos internos nunca aparecem antes da emissão */
.credential-status-v20{line-height:1.5}
.credential-actions-v20:empty{display:none}
.credential-cell-v20 button[disabled]{opacity:.65;cursor:not-allowed}

/* Revisão recomendada: hierarquia pedagógica, sem aparência de tela técnica */
#view-intervention .object-header h1{max-width:760px}
#view-intervention .object-header p{max-width:820px;font-size:14px;line-height:1.6}
#view-intervention .content-block article{padding:17px 18px;margin:12px 0;border-left:3px solid var(--pink);background:#fff8fc;border-radius:0 12px 12px 0}

/* Responsividade geral */
@media(max-width:1180px){
  .dashboard-v17{grid-template-columns:1fr}
  .dashboard-v17-side{grid-template-columns:repeat(3,minmax(0,1fr))}
  .course-layout,.object-layout,.case-layout,.result-grid{grid-template-columns:1fr}
  .right-column{grid-template-columns:repeat(2,minmax(0,1fr))}
  .right-column>article:first-child:last-child{grid-column:1/-1}
  .mentor-page-v19{height:auto;min-height:0}
  .mentor-v19{grid-template-columns:1fr}
  .mentor-conversation-v19{min-height:620px}
  .mentor-chat-fixed{min-height:430px}
  .re-insight-panel-v19{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:1050px){
  /* Em tablet, o menu ocupa apenas a faixa dos ícones; quando aberto, sobrepõe sem esmagar o conteúdo. */
  .app-shell{grid-template-columns:72px minmax(0,1fr)!important}
  .sidebar{width:72px;padding-left:8px;padding-right:8px}
  .sidebar-brand-row{padding-left:5px;padding-right:5px}
  .brand-lockup{width:44px;overflow:hidden}
  .brand-lockup img{width:182px;max-width:none}
  .sidebar nav .nav{grid-template-columns:1fr;place-items:center;padding:8px 5px}
  .sidebar nav .nav b,.sidebar nav .nav em,.sidebar .nav-submenu,.sidebar-note{display:none!important}
  .sidebar-bottom{gap:6px}
  body:not(.sidebar-collapsed) .sidebar{position:fixed;left:0;top:0;width:238px;height:100vh;padding-left:12px;padding-right:12px;box-shadow:10px 0 28px rgba(0,0,0,.18)}
  body:not(.sidebar-collapsed) .sidebar-brand-row{padding-left:8px;padding-right:8px}
  body:not(.sidebar-collapsed) .brand-lockup{width:100%;overflow:hidden}
  body:not(.sidebar-collapsed) .sidebar nav .nav{grid-template-columns:28px minmax(0,1fr);place-items:initial;padding:8px 10px}
  body:not(.sidebar-collapsed) .sidebar nav .nav b,body:not(.sidebar-collapsed) .sidebar nav .nav em{display:block!important}
  body:not(.sidebar-collapsed) .sidebar .nav-submenu:not(.closed){display:grid!important}
  body:not(.sidebar-collapsed) .sidebar-note{display:block!important}
  .topbar{padding:0 18px}.search{width:min(560px,62vw)}
  .page-shell{padding:22px 20px 48px}
}

@media(max-width:760px){
  .topbar{height:64px;padding:0 12px;gap:8px}.search{width:auto;flex:1;min-width:0}.search input{font-size:13px}.top-actions{gap:6px}.top-actions #saveStatus{display:none}.profile b,.profile small{display:none}.profile{grid-template-columns:34px}
  .page-shell{padding:18px 14px 42px}
  .page-heading{margin-bottom:18px}.page-heading h1{font-size:25px}.page-heading p{font-size:13px}
  .home-learning-hero{grid-template-columns:1fr;min-height:0}.home-learning-art{min-height:150px}.home-learning-copy h2{font-size:24px}
  .dashboard-v17-side{grid-template-columns:1fr}
  .home-recommendation{grid-template-columns:48px 1fr}.home-recommendation>button{grid-column:2;justify-self:start}
  .course-hero{grid-template-columns:54px 1fr}.course-hero aside{grid-column:1/-1;text-align:left}.course-tabs{gap:13px;overflow-x:auto;white-space:nowrap}
  .right-column{grid-template-columns:1fr}
  .object-card{padding:18px}.object-header h1{font-size:24px}.content-block p,.content-block li{font-size:13.5px}
  .guided-mentor-portrait{height:210px}
  .credential-course-row-v20{grid-template-columns:1fr}.credential-course-info-v20,.credential-cell-v20{border-right:0;border-bottom:1px solid var(--line)}
  .credential-cell-v20:last-child{border-bottom:0}.credential-intro-v20{padding:16px}
  .level-track-v20{grid-template-columns:repeat(3,1fr)}
  .game-summary-v20{grid-template-columns:74px 1fr}.game-summary-v20 .linkedin-share{grid-column:1/-1;justify-self:stretch;text-align:center}
  .achievement-card-v20{grid-template-columns:42px 1fr}.achievement-card-v20 .linkedin-small{grid-column:2;justify-self:start}
  .mentor-conversation-v19{min-height:calc(100vh - 150px)}
  .mentor-context{margin-bottom:8px}.mentor-prompts{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.mentor-prompts button{white-space:nowrap}
  .re-insight-panel-v19{grid-template-columns:1fr}
}

@media(max-width:520px){
  .app-shell{grid-template-columns:60px minmax(0,1fr)!important}
  .sidebar{width:60px}.sidebar-collapse-btn{right:-12px}
  body:not(.sidebar-collapsed) .sidebar{width:min(238px,82vw)}
  .page-shell{padding-left:12px;padding-right:12px}.topbar{padding-left:10px;padding-right:10px}
  .search{padding:9px}.search input::placeholder{font-size:12px}
  .course-context{padding:13px}.course-context-copy h2{font-size:17px}
  .object-card{padding:15px}.context-back{font-size:12px}.object-header h1{font-size:22px}.object-header p{font-size:12.5px}
  .primary,.secondary,.ghost{font-size:11.5px;padding:9px 11px}
  .guided-actions{display:grid;grid-template-columns:1fr}.guided-actions button{width:100%}
  .guided-evidence textarea{min-height:130px}
  .credential-course-info-v20{grid-template-columns:54px 1fr;padding:14px}.credential-cell-v20{padding:14px}
  .level-track-v20{grid-template-columns:1fr 1fr}
  .chat-form{padding:9px}.chat-form input{min-width:0;font-size:13px}.chat-form .primary{flex:0 0 auto}
}


/* =========================================================
   v0.22 — fechamento visual de UX e responsividade
   Mantém a arquitetura aprovada da v0.21 e endurece o
   comportamento em tablet, celular e janelas de baixa altura.
   ========================================================= */
.sidebar-backdrop{display:none;position:fixed;inset:0;border:0;padding:0;background:rgba(10,10,14,.34);z-index:40;cursor:default}
.sidebar-collapse-btn{top:68px;right:-15px}
body.sidebar-collapsed .sidebar-collapse-btn{right:-15px}
.mentor-chat-fixed .chat-form{background:#fff}
.mentor-chat-fixed .chat-form input{min-width:0}
.guided-v21 .guided-intro,.guided-v21 .guided-callout p,.guided-v21 .guided-criteria li{overflow-wrap:anywhere}
.guided-evidence textarea{width:100%;resize:vertical}
.credential-course-row-v20,.credential-course-info-v20,.credential-cell-v20{min-width:0}
.credential-course-info-v20 h3,.credential-title-v20 b,.credential-status-v20{overflow-wrap:anywhere}
@media(max-width:1050px){
  body:not(.sidebar-collapsed) .sidebar-backdrop{display:block}
  body:not(.sidebar-collapsed){overflow:hidden}
  .sidebar{z-index:45}
  .sidebar-collapse-btn{z-index:50}
}
@media(max-width:760px){
  #view-mentor .page-heading{margin-bottom:12px}
  #view-mentor .page-heading p{display:none}
  .mentor-page-v19{height:calc(100dvh - 154px);min-height:430px;overflow:visible}
  .mentor-v19{height:auto;display:block}
  .mentor-conversation-v19{height:calc(100dvh - 154px);min-height:430px;display:flex;flex-direction:column}
  .mentor-context{flex:0 0 auto}
  .mentor-prompts{flex:0 0 auto;margin-bottom:8px}
  .mentor-chat-fixed{flex:1 1 auto;min-height:0;height:auto}
  .mentor-chat-fixed .messages{flex:1 1 auto;min-height:120px;overflow:auto}
  .mentor-chat-fixed .chat-form{position:sticky;bottom:0;padding-bottom:max(9px,env(safe-area-inset-bottom))}
  .re-insight-panel-v19{margin-top:18px}
}
@media(max-width:520px){
  .sidebar-collapse-btn{top:68px;right:-13px}
  body.sidebar-collapsed .sidebar-collapse-btn{right:-13px}
  .mentor-page-v19,.mentor-conversation-v19{height:calc(100dvh - 146px);min-height:400px}
  .mentor-prompts{gap:6px}
  .mentor-prompts button{font-size:11px;padding:8px 10px}
  .chat-head{grid-template-columns:44px 1fr;padding:10px}
  .chat-head img{width:44px;height:44px;border-radius:11px}
  .chat-head p{font-size:9.5px;line-height:1.35}
  .msg{max-width:88%;font-size:11.5px}
  .chat-form{gap:6px}.chat-form .primary{padding-left:12px;padding-right:12px}
  .credential-actions-v20{display:grid;grid-template-columns:1fr}.credential-actions-v20>*{width:100%;justify-content:center}
}
@media(max-height:700px) and (min-width:761px){
  #view-mentor .page-heading{margin-bottom:10px}
  #view-mentor .page-heading p{display:none}
  .mentor-page-v19{height:calc(100dvh - 150px);min-height:390px}
  .mentor-conversation-v19{height:100%;min-height:0}
  .mentor-chat-fixed{min-height:0}
  .mentor-context{padding-top:8px;padding-bottom:8px}
}


/* =========================================================
   v0.23 — navegação estrutural reutilizável do motor de cursos
   ========================================================= */
/* O controle da sidebar pertence sempre à própria faixa lateral. */
.sidebar{overflow:hidden}
.sidebar-collapse-btn{top:68px;right:8px;z-index:70}
body.sidebar-collapsed .sidebar-collapse-btn{right:8px}
@media(max-width:520px){.sidebar-collapse-btn,body.sidebar-collapsed .sidebar-collapse-btn{right:7px}}

/* Seta do grupo junto ao rótulo, como no sistema principal. */
.nav-group-toggle{grid-template-columns:28px max-content 18px 1fr!important}
.nav-group-toggle b{grid-column:2}.nav-group-toggle em{grid-column:3;justify-self:start;font-style:normal;margin-left:0}
@media(max-width:1050px){body:not(.sidebar-collapsed) .sidebar nav .nav-group-toggle{grid-template-columns:28px max-content 18px 1fr!important}}

/* Módulos do curso como acordeões. */
.module-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;font-size:11px;color:var(--muted)}
.module-toolbar>div{display:flex;gap:12px}.module-toolbar .link-btn{text-decoration:underline;text-underline-offset:3px}
.module-head.module-toggle{width:100%;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.module-head.module-toggle:hover{background:#fafafd}.module-panel.active .module-head.module-toggle:hover{background:#fff1f8}
.module-title-line{display:flex;align-items:center;gap:8px}.module-title-line h3{margin:0}
.module-chevron{font-size:14px;color:var(--muted);transition:transform .18s ease}.module-panel.expanded .module-chevron{transform:rotate(180deg)}
.module-body[hidden]{display:none!important}.module-panel.collapsed .module-head{border-bottom:0}
.module-panel.locked{opacity:.82}.module-panel.locked .module-num{background:#ececf0;color:#8b8d95}
.module-lock-note{padding:10px 14px;border-top:1px solid var(--line);background:#fafafd;color:var(--muted);font-size:10px}

/* As experiências deixam claro que são links. Ícone, texto e linha acionam o mesmo destino. */
.object-row.is-link{cursor:pointer;transition:background .15s ease,box-shadow .15s ease}
.object-row.is-link:hover,.object-row.is-link:focus-visible{background:#fff5fa;box-shadow:inset 3px 0 0 var(--pink);outline:0}
.object-row.is-link:hover button b,.object-row.is-link:focus-visible button b{color:var(--pink-dark);text-decoration:underline;text-underline-offset:2px}
.object-row.is-link .obj-icon{cursor:pointer}.object-row.is-link button{cursor:pointer}
.object-row.is-locked{background:#fbfbfc;color:#8b8d95}.object-row.is-locked button{cursor:not-allowed;color:inherit}.pill.locked{background:#f0f0f3;color:#84868e}
@media(max-width:760px){.module-toolbar{align-items:flex-start}.module-toolbar>div{display:grid;gap:5px}.module-head{grid-template-columns:34px minmax(0,1fr)}.module-status{grid-column:2;text-align:left;margin-top:2px}}

/* =========================================================
   v0.24 — acabamento final de UX antes da publicação
   ========================================================= */
:root{
  --pink:#e6007e;
  --pink-dark:#e6007e;
  --pink-hover:#c9006f;
  --sidebar-collapsed:54px;
}

/* Identidade: um único rosa-base para títulos, destaques e botões. */
.primary{background:var(--pink)}
.primary:hover{background:var(--pink-hover)}
.nav.active span{color:var(--pink)}
.eyebrow,.link-btn,.object-type-label,.course-context-copy small,.activity-module-head small{color:var(--pink)}

/* Sidebar: acabamento alinhado ao sistema principal da RecrutaEasy. */
.sidebar-brand-row{border-bottom:0!important}
.sidebar-collapse-btn{width:25px;height:25px;padding:4px;border-radius:6px;right:8px}
.sidebar-collapse-btn svg{width:14px;height:14px}
body.sidebar-collapsed .app-shell{grid-template-columns:var(--sidebar-collapsed) minmax(0,1fr)!important}
body.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)!important;padding-left:7px!important;padding-right:7px!important}
body.sidebar-collapsed .brand-lockup{display:none!important}
body.sidebar-collapsed .sidebar-brand-row{min-height:54px;padding:0!important;border:0!important}
body.sidebar-collapsed .sidebar-collapse-btn{right:auto!important;left:50%;transform:translateX(-50%)}
body.sidebar-collapsed .sidebar nav{justify-items:center;width:100%;gap:1px}
body.sidebar-collapsed .sidebar .nav{width:38px;height:38px;min-height:38px;padding:0!important;grid-template-columns:1fr!important;place-items:center!important;justify-self:center}
body.sidebar-collapsed .sidebar .nav span{width:24px;height:24px;display:grid;place-items:center;line-height:1;margin:0}
body.sidebar-collapsed .sidebar .logout{width:38px;justify-self:center}
@media(max-width:1050px){
  body.sidebar-collapsed .app-shell{grid-template-columns:var(--sidebar-collapsed) minmax(0,1fr)!important}
  body.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)!important}
}
@media(max-width:520px){
  :root{--sidebar-collapsed:52px}
  body.sidebar-collapsed .sidebar-collapse-btn{left:50%;right:auto!important}
}

/* Curso: linhas de experiência respiram em relação ao marcador rosa de hover. */
.object-list{padding-left:18px}
.object-row{padding-left:8px;padding-right:0}
.object-row.is-link:hover,.object-row.is-link:focus-visible{box-shadow:inset 3px 0 0 var(--pink)}
.object-row.is-link:hover button b,.object-row.is-link:focus-visible button b{color:var(--pink)}

/* Módulo recolhido = linha-resumo compacta, sem área vazia. */
.module-panel.collapsed{min-height:0!important;height:auto!important}
.module-panel.collapsed .module-head{padding:10px 12px!important;min-height:0!important;height:auto!important;align-self:start}
.module-panel.collapsed .module-title-block p{line-height:1.25}
.module-panel.collapsed .module-body[hidden]{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important}

/* Mentora Rê: enquadramento deve preservar sempre o rosto. */
.mentor-card img,.home-recommendation-avatar img,.home-mentor-mini-head img,.chat-head img,.guided-re-panel img{object-position:center top!important}
.guided-mentor-portrait{background:#f8dce8}
.guided-mentor-portrait img{object-fit:contain!important;object-position:center top!important;background:#f8dce8}

/* Player interno: não expõe estrutura de cenas ao aluno. */
.player-content-label{font-size:10px;color:#aaaab2}


/* =========================================================
   Scene Audio Player — native scalable delivery
   HTML/CSS + scene media; MP4 remains optional export/fallback.
   ========================================================= */
.scene-audio-player{min-height:0;background:#111217}
.scene-audio-shell{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);min-height:420px;background:#111217}
.scene-audio-stage{background:#09090c;display:grid;place-items:center;min-width:0;overflow:hidden;aspect-ratio:16/9;align-self:center}
.scene-audio-stage img{display:block;width:100%;height:100%;object-fit:contain;background:#09090c}
.scene-audio-stage-fallback{padding:34px;color:#fff;align-content:center;text-align:left}
.scene-audio-stage-fallback h3{font-size:26px;margin:8px 0}
.scene-audio-stage-fallback p{color:#d1d1d6;line-height:1.6}
.scene-audio-copy{padding:30px 28px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.scene-audio-copy h2{font-size:24px;margin:8px 0 10px}
.scene-audio-copy>p{color:#d1d1d6;line-height:1.6;margin:0 0 18px}
.scene-audio-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#aaaab2;font-size:11px}
.scene-audio-track{width:100%;margin:2px 0 14px;accent-color:var(--pink)}
.scene-audio-transcript{border-top:1px solid #2c2d34;padding-top:11px;color:#d1d1d6;font-size:11px}
.scene-audio-transcript summary{cursor:pointer;color:#fff;font-weight:700}
.scene-audio-transcript p{color:#c7c7cc;line-height:1.65;margin:9px 0 0}
.scene-audio-controls{gap:12px}
.scene-audio-controls .scene-dots{flex:1;justify-content:center;max-width:280px}
.scene-audio-controls button:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:900px){
  .scene-audio-shell{grid-template-columns:1fr;min-height:0}
  .scene-audio-stage{width:100%;aspect-ratio:16/9}
  .scene-audio-copy{padding:22px}
}
@media(max-width:520px){
  .scene-audio-player{border-radius:12px}
  .scene-audio-copy{padding:16px 14px 18px}
  .scene-audio-copy h2{font-size:20px}
  .scene-audio-copy>p{font-size:12px}
  .scene-audio-meta{font-size:10px}
  .scene-audio-controls{padding:10px 8px}
  .scene-audio-controls button{font-size:10px;padding:6px 4px}
  .scene-audio-controls .scene-dots{gap:3px;max-width:160px}
  .scene-audio-controls .scene-dots i{width:10px;height:3px}
  .scene-audio-transcript{font-size:10.5px}
}


/* M1 native structured scene visuals — no rendered PNG required. */
.scene-visual-native{padding:24px;background:linear-gradient(145deg,#111217,#191a20);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:18px}
.scene-visual-head{display:flex;justify-content:space-between;gap:16px;align-items:center;width:100%}
.scene-visual-head span{font-size:9px;font-weight:800;letter-spacing:.14em;color:#f2a4ca}
.scene-visual-head b{font-size:14px;text-align:right}
.visual-rule{margin:0;color:#e8e8eb;font-size:12px;font-weight:700}
.visual-arrow{display:grid;place-items:center;font-size:24px;color:#e6007e;font-weight:900}
.visual-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;width:100%}
.visual-sheet{border:1px solid #383942;border-radius:12px;padding:14px;display:grid;gap:7px;background:#202127}
.visual-sheet strong{font-size:12px}.visual-sheet span,.visual-sheet i{font-style:normal;background:#2c2d34;border-radius:6px;padding:7px 9px;font-size:10px}
.visual-sheet.bad{border-color:#644153}.visual-sheet.good{border-color:#315b4a}.visual-sheet.good span{background:#1d3b30}
.visual-grid{display:grid;grid-template-columns:repeat(3,1fr);width:100%;border:1px solid #373841;border-radius:10px;overflow:hidden}
.visual-grid>*{padding:9px;border-right:1px solid #34353d;border-bottom:1px solid #34353d;font-size:10px}.visual-grid b{background:#25262d}.visual-grid .row-focus{background:#382231}
.visual-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.visual-columns>div{display:grid;gap:6px;background:#202127;border-radius:10px;padding:10px}.visual-columns b{font-size:10px;color:#fff}.visual-columns span{font-size:9px;color:#cfcfd5}
.visual-header-demo{display:grid;gap:10px;width:100%}.visual-header-demo>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.visual-header-demo span{padding:10px;border-radius:8px;background:#2a2b32;text-align:center;font-size:10px}.visual-header-demo .good span{background:#382231;border:1px solid #6d3152}
.visual-types{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;width:100%}.visual-types>div{background:#202127;border-radius:10px;padding:12px;display:grid;gap:4px}.visual-types small{color:#aaaab2}.visual-types b{font-size:15px}.visual-types em{font-style:normal;font-size:8px;color:#8ce0b4;font-weight:800}.visual-types .warn em{color:#ffb4b4}
.visual-categories{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%}.visual-categories span,.visual-categories strong{padding:10px 12px;border-radius:999px;background:#2a2b32;font-size:11px}.visual-categories strong{background:#382231;border:1px solid #8a3d67}
.visual-duplicates{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%}.visual-duplicates>div{display:grid;gap:5px;padding:12px;background:#202127;border:1px solid #44454f;border-radius:10px}.visual-duplicates span{font-size:9px;color:#bbbcc2}.visual-duplicates>strong{grid-column:1/-1;text-align:center;padding:10px;color:#ffc4df}
.visual-table{display:grid;width:100%;border:1px solid #3a3b43;border-radius:10px;overflow:hidden}.visual-table>div{display:grid;grid-template-columns:repeat(4,1fr)}.visual-table span{padding:8px;border-right:1px solid #34353d;border-bottom:1px solid #34353d;font-size:9px}.visual-table-head{background:#382231;font-weight:800}
.visual-challenge{display:grid;gap:8px;width:min(420px,100%);margin:auto;background:#202127;border-radius:12px;padding:18px}.visual-challenge strong{font-size:18px;margin-bottom:3px}.visual-challenge span{font-size:11px;color:#dddde2}
.visual-generic{max-width:540px}.visual-generic p{font-size:15px;line-height:1.6}
.scene-caption-live{min-height:52px;padding:11px 12px;border-radius:9px;background:#0a0a0d;border:1px solid #2d2e35;color:#fff;font-size:12px;line-height:1.55;margin:2px 0 8px}
.scene-timebar{height:3px;background:#292a31;border-radius:999px;overflow:hidden;margin-bottom:13px}.scene-timebar span{display:block;width:0;height:100%;background:#e6007e;transition:width .15s linear}
@media(max-width:700px){
  .scene-visual-native{padding:16px}
  .visual-compare{grid-template-columns:1fr;gap:7px}.visual-compare .visual-arrow{transform:rotate(90deg)}
  .visual-columns{grid-template-columns:repeat(2,1fr)}
  .visual-types{grid-template-columns:1fr 1fr}
  .scene-caption-live{font-size:11px;min-height:46px}
}

/* =========================================================
   M1 validation round — local-only prototype (v0.24 baseline preserved)
   ========================================================= */
/* Sidebar: keep the collapse control in place and lower the navigation block. */
.sidebar nav{margin-top:32px}
.nav-group-toggle em{align-self:center;display:grid;place-items:center;height:18px;line-height:1;transform:translateY(0)}
.module-chevron{display:inline-grid;place-items:center;width:18px;height:18px;line-height:1;transform-origin:center center}
.module-panel.expanded .module-chevron{transform:rotate(180deg)}

/* Case page: return action and breadcrumb must never share the same line. */
.case-card>.context-back{display:block;width:max-content;margin:0 0 10px}
.case-card>.case-breadcrumb{display:block;margin:0 0 9px;color:var(--muted)}
.case-lead{font-size:14px;line-height:1.7;color:#34363d}
.case-context-v25{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fafafd}
.case-context-v25 h3{margin:0 0 10px;font-size:15px}.case-context-v25 p{margin:8px 0;line-height:1.65;color:#484a52}
.case-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 18px}.case-role-grid article{padding:15px;border:1px solid var(--line);border-radius:12px;background:#fff}.case-role-grid span{display:block;font-size:9px;letter-spacing:.1em;font-weight:850;color:var(--pink);margin-bottom:6px}.case-role-grid p{margin:0;font-size:12px;line-height:1.55;color:#4b4d55}.case-before ul{margin:9px 0 0;padding-left:19px}.case-before li{margin:5px 0;line-height:1.5}

/* Local structured M1 video: static visual per topic, no movement inside a scene. */
.lesson-intro-v25{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px 18px;margin-bottom:12px;box-shadow:var(--shadow)}
.lesson-intro-v25 p{font-size:14px;line-height:1.65;margin:6px 0 7px}.lesson-intro-v25 small{display:block;color:var(--muted);font-size:10px;line-height:1.5}
.m1-structured-prototype .scene-audio-stage{animation:none!important;transform:none!important}
.m1-structured-prototype .scene-audio-stage *{animation:none!important;transition:none!important}
.video-support-v25{margin-top:14px}.video-support-v25>h3{font-size:20px;margin:5px 0 14px}.video-support-v25>article{padding:14px 0;border-top:1px solid #efeff2}.video-support-v25>article h4{font-size:14px;margin:0 0 6px}.video-support-v25>article p{margin:0;color:#4b4d55;line-height:1.65}.video-support-v25 .video-support-mentor{margin-top:4px;padding:14px;border:1px solid #f1c7dd;border-radius:12px;background:#fff5fa}

/* Integrated guided practice — 8 navigable steps, one workbook, one upload. */
.guided-integrated-v25 .guided-main>h3{font-size:24px;margin:5px 0 8px}.guided-download-once{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}.guided-download-once small{color:var(--muted);font-size:10px}.guided-stage-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.guided-stage{border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px;text-align:left;display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;color:var(--ink)}.guided-stage span{width:26px;height:26px;border-radius:8px;background:#f2f2f5;display:grid;place-items:center;font-weight:850;font-size:10px}.guided-stage b{font-size:10px;line-height:1.3}.guided-stage:hover,.guided-stage.current{border-color:#ef9cc8;background:#fff6fb}.guided-stage.current span{background:var(--pink);color:#fff}.guided-focus-card{border:1px solid var(--line);border-radius:14px;padding:17px;background:#fff;margin:12px 0 18px}.guided-focus-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:11px}.guided-focus-head span{font-size:10px;color:var(--pink);font-weight:850;letter-spacing:.06em}.guided-focus-head b{font-size:14px}.guided-navigation{justify-content:space-between;align-items:center;flex-wrap:wrap}.guided-final-submit{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.guided-final-submit h4{font-size:18px;margin:5px 0 7px}.guided-final-submit>p{color:var(--muted);line-height:1.6}.guided-final-criteria{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:13px 0 16px}.guided-final-criterion{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;border:1px solid var(--line);border-radius:10px;padding:9px}.guided-final-criterion>span{width:24px;height:24px;border-radius:7px;background:var(--pink-soft);color:var(--pink);display:grid;place-items:center;font-size:10px;font-weight:850}.guided-final-criterion b,.guided-final-criterion small{display:block}.guided-final-criterion b{font-size:10px}.guided-final-criterion small{font-size:9px;color:var(--muted);margin-top:2px;line-height:1.4}.guided-final-submit label{display:grid;gap:6px;font-size:11px;font-weight:700;margin:12px 0}.guided-final-submit textarea{min-height:86px}

/* M1 checkpoint — online-test pattern, one question at a time. */
.checkpoint-wizard-v25{max-width:900px;margin:0 auto}.checkpoint-wizard-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.checkpoint-wizard-head h3{font-size:22px;margin:5px 0}.checkpoint-wizard-head p{color:var(--muted);margin:0;line-height:1.55}.checkpoint-wizard-head>div:last-child{text-align:right;min-width:70px}.checkpoint-wizard-head>div:last-child b{display:block;font-size:24px}.checkpoint-wizard-head>div:last-child small{font-size:9px;color:var(--muted)}.checkpoint-stepper{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.checkpoint-step{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:#fff;font-weight:800;font-size:11px;color:#64666e}.checkpoint-step.answered{border-color:#b9decf;background:#eff8f4;color:#267456}.checkpoint-step.current{border-color:var(--pink);background:var(--pink);color:#fff}.checkpoint-question-card{border:1px solid var(--line);border-radius:15px;padding:22px;background:#fff}.checkpoint-question-card h2{font-size:20px;line-height:1.45;margin:8px 0 18px}.checkpoint-answers{display:grid;gap:9px}.checkpoint-answer{border:1px solid #dedee3;border-radius:11px;background:#fff;padding:12px 13px;text-align:left;display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center}.checkpoint-answer>b{width:26px;height:26px;border-radius:7px;background:#f2f2f5;display:grid;place-items:center}.checkpoint-answer span{font-size:12px;line-height:1.45}.checkpoint-answer:hover{border-color:#ef9cc8;background:#fff8fc}.checkpoint-answer.selected{border-color:var(--pink);background:var(--pink-soft)}.checkpoint-answer.selected>b{background:var(--pink);color:#fff}.checkpoint-nav{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.checkpoint-mentor-help{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:12px;border:1px solid #f1c7dd;border-radius:14px;background:#fff5fa;padding:15px}.checkpoint-mentor-help b{display:block;font-size:13px;margin:3px 0}.checkpoint-mentor-help p{font-size:11px;line-height:1.5;color:#5b4a54;margin:0}.checkpoint-mentor-help button{flex:0 0 auto}

@media(max-width:760px){
  .case-role-grid,.guided-final-criteria{grid-template-columns:1fr}
  .guided-stage-nav{grid-template-columns:1fr 1fr}
  .checkpoint-wizard-head,.checkpoint-mentor-help{display:grid}.checkpoint-wizard-head>div:last-child{text-align:left}
}
/* Optional fundamentals primer: stays inside the approved video experience, never becomes a new M1 resource. */
.foundation-primer-v25{margin:0 0 12px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.foundation-primer-v25 summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 17px}
.foundation-primer-v25 summary::-webkit-details-marker{display:none}
.foundation-primer-v25 summary b,.foundation-primer-v25 summary small{display:block}.foundation-primer-v25 summary b{font-size:13px}.foundation-primer-v25 summary small{font-size:9px;color:var(--muted);margin-top:3px}
.foundation-primer-body{border-top:1px solid var(--line);padding:14px 17px}.foundation-primer-body>p{margin:0 0 12px;line-height:1.6;color:#4b4d55}.foundation-primer-body article{padding:10px 0;border-top:1px solid #f0f0f3}.foundation-primer-body h4{margin:0 0 5px;font-size:13px}.foundation-primer-body article p{margin:0;color:#51535b;line-height:1.6}


/* =========================================================
   M1 final validation round — approved 2026-09-26
   Minimal overlay on v0.24; no Railway dependency.
   ========================================================= */
/* Clean chevrons centered with their labels. */
.nav-group-toggle em.nav-chevron,.module-chevron{position:relative;width:16px;height:16px;display:inline-block!important;font-size:0!important;transform:none!important;transition:transform .18s ease}
.nav-group-toggle em.nav-chevron:before,.module-chevron:before{content:"";position:absolute;width:6px;height:6px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;left:4px;top:3px;transform:rotate(45deg);transform-origin:center}
.nav-group-toggle[aria-expanded="false"] em.nav-chevron:before{transform:rotate(-45deg);top:4px}
.module-panel.expanded .module-chevron:before{transform:rotate(225deg);top:6px}
.nav-group-toggle em.nav-chevron{align-self:center;justify-self:start;color:#b8bac2;margin:0!important}
.module-title-line{align-items:center}.module-chevron{flex:0 0 16px;color:var(--muted)}

/* One coherent support block: objective -> textual lesson -> Rê tip. */
.video-support-unified{padding:0!important;border:1px solid #f0bfd8;border-radius:16px;background:#fff7fb;overflow:hidden}
.video-objective-box,.video-re-tip{padding:16px 18px;background:#fff0f7}.video-objective-box{border-bottom:1px solid #f0bfd8}.video-re-tip{border-top:1px solid #f0bfd8}
.video-objective-box p,.video-re-tip p{margin:5px 0 0;font-size:14px;line-height:1.65;color:#39323a}
.video-lesson-text{padding:20px 20px 18px;background:#fff}.video-lesson-text h3{margin:5px 0 14px;font-size:17px}.video-lesson-text p{margin:0 0 13px;font-size:14px;line-height:1.72;color:#3f4249}.video-lesson-text p:last-child{margin-bottom:0}

/* Guided practice: one clickable line, one explanation, one final delivery. */
.guided-linear-stepper{position:relative;display:grid;grid-template-columns:repeat(8,1fr);align-items:center;margin:18px 6px 22px;padding:0 2px}.guided-linear-stepper:before{content:"";position:absolute;left:6%;right:6%;top:17px;height:2px;background:#e4e4e9;z-index:0}
.guided-step-dot{position:relative;z-index:1;justify-self:center;width:34px;height:34px;border-radius:999px;border:2px solid #dedee5;background:#fff;color:#64666f;font-weight:850;font-size:11px;display:grid;place-items:center;padding:0}
.guided-step-dot:hover{border-color:#ee8fc1;background:#fff8fc}.guided-step-dot.current{border-color:var(--pink);background:var(--pink);color:#fff;box-shadow:0 0 0 4px #fff0f7}
.guided-submit-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.guided-submit-head h4{margin:5px 0 0}.guided-summary-pill{white-space:nowrap;border-radius:999px;background:var(--pink-soft);color:var(--pink);font-size:10px;font-weight:850;padding:7px 10px}
.guided-final-submit{margin-top:16px}.guided-final-submit>p{font-size:13px}.guided-integrated-v26 .guided-main>h3{font-size:17px!important;margin:5px 0 8px}.guided-integrated-v26 .guided-intro{font-size:14px;line-height:1.65}

/* Contextual Rê: stays beside the activity on desktop, becomes a bottom drawer on mobile. */
.context-mentor-panel{overflow:hidden}.context-mentor-chat{display:grid;gap:10px}.context-mentor-chat[hidden]{display:none!important}.context-mentor-chat-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.context-mentor-chat-head b{display:block;font-size:12px;line-height:1.4;margin-top:4px}.context-mentor-close{border:0;background:#f1f1f4;width:30px;height:30px;border-radius:999px;font-size:20px;line-height:1;display:grid;place-items:center;color:#555861}
.context-mentor-messages{display:grid;gap:8px;max-height:220px;overflow:auto;padding:2px}.context-mentor-bubble{padding:10px 11px;border-radius:11px;display:grid;gap:3px;font-size:11px;line-height:1.5}.context-mentor-bubble b{font-size:10px}.context-mentor-bubble.re{background:#fff0f7;border:1px solid #f0bfd8}.context-mentor-bubble.user{background:#f4f4f6;margin-left:18px}.context-mentor-bubble.muted{color:#65616a}.context-local-note{font-size:9px;line-height:1.5;color:var(--muted);padding:9px;border:1px dashed #dadbe0;border-radius:10px}.context-mentor-chat textarea{width:100%;min-height:76px;resize:vertical}

/* Assessment: eliminate repeated headings and keep the question above the fold. */
.checkpoint-wizard-v26{max-width:900px;margin:0 auto}.checkpoint-compact-status{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:11px;color:var(--muted);margin:0 0 10px}.checkpoint-compact-status b{color:#555861;font-size:11px}.checkpoint-wizard-v26 .checkpoint-stepper{margin:8px 0 12px}.checkpoint-wizard-v26 .checkpoint-question-card{padding:17px 18px}.checkpoint-wizard-v26 .checkpoint-question-card h2{font-size:18px;line-height:1.4;margin:0 0 14px}.checkpoint-wizard-v26 .checkpoint-answer{padding:10px 12px}.checkpoint-wizard-v26 .checkpoint-nav{margin-top:13px;align-items:center}.checkpoint-ask-re{margin-left:auto}.checkpoint-final-note{font-size:10px!important;color:var(--muted);margin:8px 1px 0!important}

/* Case typography follows the same semantic scale as other activities. */
.m1-case-reviewed h2{font-size:27px;line-height:1.16;margin:0 0 8px}.m1-case-reviewed>h3,.m1-case-reviewed .case-context-v25 h3{font-size:17px;line-height:1.35}.m1-case-reviewed .case-lead,.m1-case-reviewed .case-context-v25 p,.m1-case-reviewed .case-role-grid p,.m1-case-reviewed .case-before li,.m1-case-reviewed>ol li{font-size:14px!important;line-height:1.65!important}.m1-case-reviewed .case-role-grid span{font-size:11px}.m1-case-reviewed .upload-box p{font-size:14px;line-height:1.65}

@media(max-width:720px){
  .guided-linear-stepper{gap:0;margin-left:0;margin-right:0}.guided-step-dot{width:30px;height:30px;font-size:10px}.guided-linear-stepper:before{top:15px}
  .guided-submit-head{display:grid}.guided-summary-pill{width:max-content}
  .checkpoint-wizard-v26 .checkpoint-nav{display:grid;grid-template-columns:1fr 1fr}.checkpoint-wizard-v26 .checkpoint-ask-re{grid-column:1/-1;grid-row:1;width:100%;margin:0}.checkpoint-wizard-v26 .checkpoint-nav .primary{grid-column:2}.checkpoint-wizard-v26 .checkpoint-nav .secondary:first-child{grid-column:1}
  .context-mentor-panel.chat-open{position:fixed;left:10px;right:10px;bottom:10px;z-index:120;max-height:78vh;overflow:auto;box-shadow:0 24px 70px rgba(0,0,0,.28);border:1px solid #e7a8ca;background:#fff;padding:16px}
  .context-mentor-panel.chat-open .context-mentor-messages{max-height:34vh}
  .video-lesson-text{padding:17px 16px}.video-objective-box,.video-re-tip{padding:14px 16px}
}

.lesson-video-wrap{position:relative;width:100%;max-width:820px;margin:0 auto}
.lesson-video-wrap .lesson-video{display:block;width:100%}
.lesson-caption-overlay{position:absolute;left:50%;bottom:clamp(46px,11%,70px);transform:translateX(-50%);z-index:4;max-width:min(80%,640px);width:max-content;box-sizing:border-box;padding:5px 9px;border-radius:6px;background:rgba(0,0,0,.76);color:#fff;font-family:Poppins,Arial,sans-serif;font-size:14px;line-height:1.4;text-align:center;pointer-events:none;white-space:normal;overflow-wrap:anywhere}
.lesson-caption-overlay[hidden]{display:none!important}
.lesson-video::cue{font-family:Poppins,Arial,sans-serif;font-size:14px;line-height:1.35;color:#fff;background:rgba(0,0,0,.76);text-align:center}
/* Mobile subtitles are drawn by the OS video player, including native fullscreen.
   Keep our HTML overlay out of the way of native controls. */
@media(max-width:700px){.lesson-video-wrap .lesson-video{border-radius:10px}.lesson-caption-overlay{max-width:90%;font-size:12px;bottom:52px}}

/* =========================================================
   M1 validation follow-up — 2026-09-26
   Restore final-delivery review and rebalance contextual Rê input.
   ========================================================= */
.context-mentor-compose{display:grid;grid-template-columns:1fr;gap:8px;align-items:stretch}
.context-mentor-compose textarea{width:100%;min-height:104px!important;max-height:190px;resize:vertical;padding:11px 12px;font-size:11px;line-height:1.5;border-radius:11px;box-sizing:border-box}
.context-mentor-compose .primary{height:42px;padding:0 14px;margin:0;width:100%}
.guided-delivery-review{margin-top:18px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.guided-delivery-review-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:15px 16px 12px;background:#fafafd;border-bottom:1px solid var(--line)}
.guided-delivery-review-head h4{margin:4px 0 0;font-size:16px}
.guided-review-summary{font-size:10px;font-weight:800;color:#64666f;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 10px;white-space:nowrap}
.guided-delivery-review>p{font-size:12px;line-height:1.55;color:var(--muted);margin:0;padding:12px 16px;border-bottom:1px solid #f0f0f3}
.guided-review-list{display:grid}
.guided-review-row{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;padding:10px 16px;border-bottom:1px solid #f0f0f3}
.guided-review-row:last-child{border-bottom:0}
.guided-review-icon{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;font-size:12px;font-weight:900;background:#f1f1f4;color:#777a82}
.guided-review-row b,.guided-review-row em,.guided-review-row small{display:block}.guided-review-row b{font-size:11px;line-height:1.35}.guided-review-row em{font-size:10px;font-style:normal;color:var(--muted);margin-top:2px}.guided-review-row small{font-size:10px;line-height:1.45;color:#666971;margin-top:4px}
.guided-review-row.passed .guided-review-icon{background:#e7f7ed;color:#18884b}.guided-review-row.passed em{color:#18884b;font-weight:800}
.guided-review-row.needs-adjustment .guided-review-icon{background:#fff0f0;color:#c43d3d}.guided-review-row.needs-adjustment em{color:#c43d3d;font-weight:800}
.guided-review-row.pending .guided-review-icon{background:#fff4df;color:#9a6a13}.guided-review-row.pending em{color:#9a6a13;font-weight:800}
@media(max-width:720px){.context-mentor-compose{grid-template-columns:1fr}.context-mentor-compose .primary{width:100%}.guided-delivery-review-head{display:grid}.guided-review-summary{width:max-content;max-width:100%;white-space:normal}}
.guided-review-legend{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 12px}.guided-review-legend span{font-size:9px;font-weight:800;border-radius:999px;padding:5px 8px}.guided-review-legend .ok{background:#e7f7ed;color:#18884b}.guided-review-legend .fix{background:#fff0f0;color:#c43d3d}.guided-review-legend .wait{background:#fff4df;color:#9a6a13}

/* v0.24 M1 R4 — lateral contextual da Rê nas atividades */
.activity-object-layout,.activity-case-layout{align-items:start}
.activity-mentor-column{align-content:start;grid-auto-rows:max-content}
.activity-mentor-column .activity-progress-card{margin:0}
.activity-mentor-column .context-mentor-panel{min-height:330px;display:flex;flex-direction:column}
.activity-mentor-column .context-mentor-panel.chat-open{min-height:560px}
.activity-mentor-column .context-mentor-chat{flex:1 1 auto;grid-template-rows:auto minmax(250px,1fr) auto auto;min-height:0}
.activity-mentor-column .context-mentor-messages{max-height:none;min-height:250px;overflow:auto;padding:4px 2px}
.activity-mentor-column .context-mentor-compose{margin-top:auto}
.activity-mentor-column .context-mentor-compose textarea{min-height:118px!important;font-size:12px;line-height:1.55}
.case-mentor-column .context-mentor-panel{min-height:620px}
.case-mentor-column .context-mentor-panel.chat-open{min-height:680px}

.case-rubric-strip{margin:20px 0 16px;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:#fafafd}
.case-rubric-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.case-rubric-title small{font-size:11px;color:var(--muted)}
.case-rubric-items{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}
.case-rubric-items article{flex:1 0 100px;min-width:100px;display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #e5e5e9;border-radius:10px;background:#fff}
.case-rubric-items article>span{width:23px;height:23px;flex:0 0 23px;border-radius:7px;display:grid;place-items:center;background:var(--pink-soft);color:var(--pink);font-size:9px;font-weight:850}
.case-rubric-items b,.case-rubric-items small{display:block}
.case-rubric-items b{font-size:10px;line-height:1.25;color:#313239}
.case-rubric-items small{font-size:9px;color:var(--pink);font-weight:800;margin-top:2px}
.case-support-inline{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:14px 0 18px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:#fff}
.case-support-inline>div:first-child b{display:block;font-size:12px;margin-top:3px}
.case-support-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.case-support-actions .secondary{display:inline-flex;align-items:center;text-decoration:none}

@media(max-width:1050px){
  .activity-mentor-column .context-mentor-panel,.case-mentor-column .context-mentor-panel{min-height:0}
  .activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{min-height:520px}
}
@media(max-width:720px){
  .case-rubric-title,.case-support-inline{display:grid}
  .case-support-actions{justify-content:flex-start}
  .case-rubric-items{margin-right:-2px}
  .activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{min-height:0}
  .activity-mentor-column .context-mentor-chat{grid-template-rows:auto minmax(180px,1fr) auto auto}
  .activity-mentor-column .context-mentor-messages{min-height:180px;max-height:34vh}
}


/* =========================================================
   M1 final UX closeout — contextual Rê + case consistency
   ========================================================= */
.activity-mentor-column{display:grid;grid-auto-rows:max-content;gap:15px;align-content:start}
.activity-mentor-column .activity-progress-card{margin:0}
.activity-mentor-column .context-mentor-panel{min-height:0!important;height:auto;display:block}
.activity-mentor-column .context-mentor-panel:not(.chat-open) .context-mentor-summary{display:block}
.activity-mentor-column .context-mentor-panel.chat-open{height:min(590px,calc(100dvh - 210px));min-height:470px!important;max-height:690px;display:flex;flex-direction:column;overflow:hidden}
.activity-mentor-column .context-mentor-panel.chat-open .context-mentor-chat{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;gap:10px}
.activity-mentor-column .context-mentor-chat-head{flex:0 0 auto}
.activity-mentor-column .context-mentor-messages{flex:1 1 auto;min-height:150px!important;max-height:none!important;overflow:auto;padding:2px}
.activity-mentor-column .context-local-note{flex:0 0 auto}
.activity-mentor-column .context-mentor-compose{flex:0 0 auto;margin-top:0}
.activity-mentor-column .context-mentor-compose textarea{min-height:112px!important;max-height:170px;font-size:12px;line-height:1.55}
.case-mentor-column .context-mentor-panel,.case-mentor-column .context-mentor-panel.chat-open{min-height:0!important}
.case-mentor-column .context-mentor-panel.chat-open{height:min(590px,calc(100dvh - 210px));min-height:470px!important}

/* Use the platform's existing rubric card language instead of a one-off strip. */
.case-rubric-platform{background:#fafafd;padding:16px;margin:20px 0 16px;border:1px solid var(--line);border-radius:14px}
.case-rubric-platform .case-rubric-title{margin-bottom:12px}
.case-rubric-platform .case-rubric-title h3{font-size:15px!important;margin:4px 0 0;line-height:1.35}
.case-rubric-grid{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px}
.case-rubric-grid>div{min-width:0;padding:10px 11px;background:#fff;border-radius:10px;align-items:center}
.case-rubric-grid>div b{font-size:11px;line-height:1.3;font-weight:750;color:#35363d}
.case-rubric-grid>div span{font-size:11px;font-weight:850;color:var(--pink);white-space:nowrap}

@media(max-width:1050px){
  .activity-mentor-column{gap:12px}
  .activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{height:auto;min-height:500px!important;max-height:none}
}
@media(max-width:720px){
  .activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{position:fixed;left:10px;right:10px;bottom:10px;z-index:120;height:min(78dvh,680px);min-height:0!important;max-height:78dvh;padding:16px;overflow:hidden}
  .activity-mentor-column .context-mentor-messages{min-height:120px!important}
  .case-rubric-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){.case-rubric-grid{grid-template-columns:1fr}}


/* R6 — fechamento da Rê contextual e critérios do estudo de caso */
.activity-mentor-column .context-mentor-panel,
.case-mentor-column .context-mentor-panel{min-height:0!important;height:auto!important;display:block!important}
.activity-mentor-column .context-mentor-panel.chat-open,
.case-mentor-column .context-mentor-panel.chat-open{height:auto!important;min-height:0!important;max-height:min(650px,calc(100dvh - 190px));display:block!important;overflow:hidden}
.activity-mentor-column .context-mentor-panel.chat-open .context-mentor-chat,
.case-mentor-column .context-mentor-panel.chat-open .context-mentor-chat{display:grid!important;grid-template-rows:auto auto auto auto;gap:10px;height:auto!important;min-height:0!important}
.activity-mentor-column .context-mentor-messages,
.case-mentor-column .context-mentor-messages{display:grid;align-content:start!important;justify-items:stretch;gap:8px;min-height:0!important;max-height:320px!important;overflow:auto;padding:2px}
.context-mentor-bubble{align-self:start!important;height:auto!important;min-height:0!important;max-width:100%}
.context-mentor-bubble.user{justify-self:end;max-width:88%}
.activity-mentor-column .context-mentor-compose,
.case-mentor-column .context-mentor-compose{margin-top:0!important}
.activity-mentor-column .context-mentor-compose textarea,
.case-mentor-column .context-mentor-compose textarea{min-height:108px!important;max-height:170px;font-size:12px;line-height:1.55}

.case-criteria-panel{margin:20px 0 16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}
.case-criteria-head{display:flex;align-items:end;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid #f0f0f2;margin-bottom:4px}
.case-criteria-head h3{font-size:15px!important;line-height:1.35;margin:4px 0 0}
.case-criteria-head small{font-size:10px;color:var(--muted);white-space:nowrap}
.case-criteria-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}
.case-criterion{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:9px;align-items:center;padding:11px 0;border-bottom:1px solid #f0f0f2}
.case-criterion:nth-last-child(-n+2){border-bottom:0}
.case-criterion .list-icon{width:27px;height:27px}
.case-criterion b{display:block;font-size:11.5px;line-height:1.3;color:#33353b}
.case-criterion small{display:block;font-size:9px;color:var(--muted);margin-top:2px}
.case-criterion .pill{font-weight:800;white-space:nowrap}

@media(max-width:1050px){
  .case-criteria-grid{grid-template-columns:1fr 1fr}
  .activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{max-height:none}
}
@media(max-width:680px){
  .case-criteria-head{display:grid;align-items:start}
  .case-criteria-head small{white-space:normal}
  .case-criteria-grid{grid-template-columns:1fr}
  .case-criterion:nth-last-child(-n+2){border-bottom:1px solid #f0f0f2}
  .case-criterion:last-child{border-bottom:0}
}
@media(max-width:900px){
  .activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{position:fixed!important;left:10px;right:10px;bottom:10px;z-index:120;height:min(78dvh,680px)!important;max-height:78dvh!important;padding:16px;display:flex!important;flex-direction:column!important;overflow:hidden}
  .activity-mentor-column .context-mentor-panel.chat-open .context-mentor-chat,.case-mentor-column .context-mentor-panel.chat-open .context-mentor-chat{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:100%!important}
  .activity-mentor-column .context-mentor-messages,.case-mentor-column .context-mentor-messages{flex:1 1 auto;min-height:0!important;max-height:none!important}
}

/* v2: estudo de caso herda tipografia aprovada do M1 em todos os módulos */
.case-reviewed h2{font-size:27px;line-height:1.16;margin:0 0 8px}.case-reviewed>h3,.case-reviewed .case-context-v25 h3{font-size:17px;line-height:1.35}.case-reviewed .case-lead,.case-reviewed .case-context-v25 p,.case-reviewed .case-role-grid p,.case-reviewed .case-before li,.case-reviewed>ol li{font-size:14px!important;line-height:1.65!important}.case-reviewed .case-role-grid span{font-size:11px}.case-reviewed .upload-box p{font-size:14px;line-height:1.65}


/* v0.24 final predeploy: profile photo + LinkedIn share */
.profile>span{overflow:hidden}.profile>span img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.profile-photo-editor{display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px;align-items:center;padding:14px 0 18px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.profile-photo-preview{width:88px;height:88px;border-radius:50%;overflow:hidden;background:var(--pink-soft);color:var(--pink-dark);display:grid;place-items:center;font-size:30px;font-weight:850;border:1px solid var(--pink-line)}
.profile-photo-preview img{width:100%;height:100%;object-fit:cover;display:block}.profile-photo-preview>span{display:grid;place-items:center;width:100%;height:100%}
.profile-photo-copy b{font-size:13px}.profile-photo-copy p{font-size:11px;color:var(--muted);line-height:1.5;margin:4px 0 10px}.profile-photo-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.upload-button{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.linkedin-share-card{max-width:680px}.linkedin-share-field{display:grid;gap:6px;margin-top:13px;font-size:11px;font-weight:700}.linkedin-share-field textarea,.linkedin-share-field input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:11px;padding:12px;font:inherit;background:#fff;line-height:1.5}.linkedin-share-field textarea{resize:vertical;min-height:170px}.linkedin-share-note{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--pink-soft);color:#5b3f4c;font-size:10.5px;line-height:1.5}
@media(max-width:620px){.profile-photo-editor{grid-template-columns:72px minmax(0,1fr)}.profile-photo-preview{width:70px;height:70px}.linkedin-share-card{max-width:calc(100vw - 28px)}}

.credential-admin-preview-v1{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(135deg,#fff8fc 0%,#fff 72%);border:1px solid #f3b1d4;border-radius:16px;padding:16px 20px;margin-bottom:14px}.credential-admin-preview-v1 h3{font-size:16px;margin:4px 0 5px}.credential-admin-preview-v1 p{font-size:12px;color:var(--muted);margin:0;max-width:650px;line-height:1.5}.credential-admin-preview-actions-v1{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.credential-admin-preview-actions-v1 .secondary{white-space:nowrap}@media(max-width:900px){.credential-admin-preview-v1{align-items:flex-start;flex-direction:column}.credential-admin-preview-actions-v1{width:100%;justify-content:flex-start}}@media(max-width:560px){.credential-admin-preview-actions-v1{display:grid;grid-template-columns:1fr}.credential-admin-preview-actions-v1 .secondary{width:100%;white-space:normal}}


/* RecrutaEasy Learning content layer v1 */
.video-companion-v1{display:grid;gap:16px}
.video-companion-v1 .video-objective-box,.video-companion-v1 .video-summary-box{border:1px solid #f1bfd8;border-radius:16px;background:#fff8fb;padding:18px 20px}
.video-companion-v1 .video-summary-box{background:#fff;border-color:#e9e7ea}
.video-companion-v1 .video-summary-box h3{font-size:21px;margin:6px 0 10px}
.video-companion-v1 .video-summary-box p,.video-companion-v1 .video-objective-box p{font-size:14px;line-height:1.75;color:#403b3f;margin:0}
.video-full-transcript{border:1px solid #e5e3e6;border-radius:14px;background:#fafafa;padding:0 16px}
.video-full-transcript summary{cursor:pointer;font-weight:750;padding:14px 0;color:#2a272a}
.video-full-transcript>div{border-top:1px solid #eceaec;padding:14px 0 4px}
.video-full-transcript p{font-size:13px;line-height:1.75;color:#565056;margin:0 0 12px}

.deep-reading-v1,.technical-guide-canvas{max-width:820px;margin:0 auto;color:#2d2a2c}
.deep-reading-v1 h2,.technical-guide-canvas h2{font-size:29px;line-height:1.2;margin:4px 0 14px}
.reading-lead,.technical-guide-lead{font-size:16px!important;line-height:1.82!important;color:#4b454a!important;margin-bottom:26px!important}
.reading-section,.technical-guide-section{border:0!important;background:transparent!important;padding:0!important;margin:0 0 30px!important}
.reading-section h3,.technical-guide-section h3{font-size:20px;line-height:1.3;margin:0 0 10px}
.reading-section p,.technical-guide-section p{font-size:15px;line-height:1.82;color:#3f3b3e;margin:0 0 12px}
.learning-bullets,.technical-steps{margin:10px 0 14px;padding-left:24px;color:#3f3b3e}
.learning-bullets li,.technical-steps li{font-size:14px;line-height:1.7;margin:0 0 7px}
.technical-steps{counter-reset:item}
.learning-example,.learning-takeaway,.learning-tip,.learning-warning{margin:14px 0 18px;padding:14px 16px;border-radius:12px;background:#f7f7f8;border:1px solid #eceaed}
.learning-takeaway{background:#fff7fb;border-color:#f3c7dd}
.learning-tip{background:#f5faf7;border-color:#d9ebe0}
.learning-warning{background:#fff4f7;border-color:#f2c3d4}
.learning-example b,.learning-takeaway b,.learning-tip b,.learning-warning b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;color:#e6007e}
.learning-example p,.learning-takeaway p,.learning-tip p,.learning-warning p{margin:0!important;font-size:13.5px!important;line-height:1.7!important}
.learning-source-topic{display:block;margin-top:10px;color:#777;font-size:11px}

.technical-guide-v1{display:grid;gap:18px}
.technical-guide-sections{margin-top:26px}
.technical-guide-sources{max-width:820px;margin:10px auto 0;border-top:1px solid #eceaed;padding-top:20px}
.technical-guide-sources>p{font-size:12.5px;line-height:1.65;color:#666}
.technical-guide-sources ul{list-style:none;padding:0;margin:12px 0 0}
.technical-guide-sources li{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #efedef;font-size:12px}
.technical-guide-sources a{color:#b40063;font-weight:700;text-decoration:none}
.technical-guide-sources span{color:#777;white-space:nowrap}

.checklist-operational-v1>p{max-width:820px;font-size:14px;line-height:1.7;color:#4c474b}
.checklist-operational-v1 .check-list{max-width:820px}
.checklist-operational-v1 .check-item{padding:11px 0;border-bottom:1px solid #efedef}
.checklist-operational-v1 .check-item span{font-size:14px;line-height:1.55}

@media(max-width:760px){
  .deep-reading-v1 h2,.technical-guide-canvas h2{font-size:25px}
  .reading-lead,.technical-guide-lead{font-size:15px!important}
  .technical-guide-sources li{display:block}
  .technical-guide-sources span{display:block;margin-top:3px}
}


/* Technical guide v2 — operational software teaching */
.technical-guide-visual{margin:16px 0 20px;border:1px solid #e3e2e5;border-radius:14px;overflow:hidden;background:#fff}
.technical-guide-visual img{display:block;width:100%;height:auto;background:#fff}
.technical-guide-visual figcaption{padding:10px 12px;font-size:12px;line-height:1.55;color:#666;border-top:1px solid #ecebee;background:#fafafa}
.technical-guide-where,.technical-guide-expected,.technical-guide-error{margin:12px 0 14px;padding:12px 14px;border-radius:10px;border:1px solid #e7e5e8;background:#fafafa}
.technical-guide-where{border-left:4px solid #e6007e;background:#fff8fb}
.technical-guide-expected{border-left:4px solid #1f7244;background:#f5faf7}
.technical-guide-error{border-left:4px solid #b42318;background:#fff7f6}
.technical-guide-where b,.technical-guide-expected b,.technical-guide-error b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.055em;margin-bottom:5px}
.technical-guide-where b{color:#e6007e}.technical-guide-expected b{color:#1f7244}.technical-guide-error b{color:#b42318}
.technical-guide-where p,.technical-guide-expected p,.technical-guide-error p{margin:0!important;font-size:13.5px!important;line-height:1.65!important}


/* M1 workshop UX: specific correction priority and conversational Rê.
   Design deliberately applies to activity sidebars, not unrelated mentor pages. */
.guided-m1-workshop .guided-m1-feedback{margin-top:22px;overflow:hidden;border-radius:16px}
.guided-m1-workshop .guided-delivery-review-head{padding:20px 22px 18px;align-items:center;gap:14px;background:#fcfbfd}
.guided-m1-workshop .guided-delivery-review-head h3{font-size:19px;line-height:1.35;margin:5px 0 0;letter-spacing:-.02em}
.guided-m1-workshop .guided-review-summary{font-size:11px;line-height:1.4;white-space:normal;text-align:center;flex:0 0 auto}
.guided-m1-workshop .guided-feedback-intro{font-size:13px;line-height:1.7;margin:0;padding:18px 22px 4px;color:#51525b;border:0}
.guided-m1-workshop .guided-next-action{margin:16px 20px 18px;padding:19px 21px 20px;border:1px solid #ecd9e6;border-left:4px solid var(--pink);border-radius:13px;background:#fff9fc;display:grid;gap:10px}
.guided-m1-workshop .guided-next-action-label{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.guided-m1-workshop .guided-next-action-label .eyebrow{font-size:10px;letter-spacing:.07em}
.guided-m1-workshop .guided-action-counter{font-size:11px;color:#77717a;font-weight:600}
.guided-m1-workshop .guided-next-action h4{font-size:17px;line-height:1.4;color:#25252b;margin:0;font-weight:800}
.guided-m1-workshop .guided-next-action p{font-size:14px;line-height:1.75;color:#47434c;margin:0}
.guided-m1-workshop .guided-next-action .secondary{justify-self:start;display:inline-flex;align-items:center;gap:10px;font-size:12px;min-height:42px;padding:10px 15px;border-radius:10px;white-space:normal;text-align:left}
.guided-m1-workshop .guided-next-action.is-complete{border-left-color:#14855b;background:#f5fcf8;border-color:#cbe9d9}
.guided-m1-workshop .guided-progress-note{font-size:12px;line-height:1.7;margin:0 20px 16px;padding:0;color:#3e7259}
.guided-m1-workshop .guided-diagnostic-details{margin:0 20px 20px;padding:0;border:1px solid #e8e6ec;background:#fff;border-radius:12px;overflow:hidden}
.guided-m1-workshop .guided-diagnostic-details summary{cursor:pointer;padding:15px 17px;font-size:13px;line-height:1.5;color:#33313b}
.guided-m1-workshop .guided-diagnostic-details[open] summary{border-bottom:1px solid #e8e6ec}
.guided-m1-workshop .guided-diagnostic-details .guided-review-row b{font-size:12px;line-height:1.45}
.guided-m1-workshop .guided-diagnostic-details .guided-review-row em,.guided-m1-workshop .guided-diagnostic-details .guided-review-row small{font-size:11px;line-height:1.6}

/* Always separate messages vertically. Only the thread scrolls; composer stays visible. */
.activity-object-layout,.activity-case-layout{grid-template-columns:minmax(0,1fr) minmax(315px,345px)}
.activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{
  display:flex!important;flex-direction:column!important;height:min(630px,calc(100dvh - 170px))!important;max-height:680px!important;min-height:410px!important;overflow:hidden;padding:16px
}
.activity-mentor-column .context-mentor-panel.chat-open .context-mentor-chat,.case-mentor-column .context-mentor-panel.chat-open .context-mentor-chat{
  display:flex!important;flex-direction:column!important;gap:0!important;flex:1 1 auto;min-height:0!important;height:100%!important;overflow:hidden
}
.context-mentor-chat-head{flex:0 0 auto;align-items:flex-start;padding:2px 1px 13px;border-bottom:1px solid #e9e5ea;margin-bottom:3px;min-width:0}
.context-mentor-chat-head>div{min-width:0}
.context-mentor-chat-head .eyebrow{font-size:10px;line-height:1.5}
.context-mentor-chat-head b{font-size:13px;line-height:1.45;overflow-wrap:break-word}
.context-mentor-chat-head small{display:block;font-size:11px;line-height:1.45;color:#76737c;margin-top:4px}
.activity-mentor-column .context-mentor-messages,.case-mentor-column .context-mentor-messages{
  flex:1 1 auto;min-height:0!important;max-height:none!important;display:flex!important;
  flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
  gap:12px!important;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:14px 4px 12px;scrollbar-gutter:stable
}
.activity-mentor-column .context-mentor-bubble,.case-mentor-column .context-mentor-bubble{
  display:block!important;flex:none!important;align-self:flex-start!important;max-width:96%!important;
  min-width:0!important;width:fit-content;box-sizing:border-box;margin:0!important;
  padding:12px 13px;border-radius:14px;overflow:visible;overflow-wrap:break-word;word-break:normal;
  background:#fff;border:1px solid #e8d3e0;color:#302e35
}
.activity-mentor-column .context-mentor-bubble.user,.case-mentor-column .context-mentor-bubble.user{
  align-self:flex-end!important;max-width:92%!important;background:#f1f2f6;border-color:#e5e6ed;border-bottom-right-radius:5px
}
.activity-mentor-column .context-mentor-bubble.re,.case-mentor-column .context-mentor-bubble.re{background:#fff8fc;border-bottom-left-radius:5px}
.context-mentor-bubble .mentor-speaker{display:block;font-size:11px;font-weight:800;color:#aa1161;margin-bottom:7px;line-height:1.2}
.context-mentor-bubble.user .mentor-speaker{color:#575b67}
.context-mentor-bubble .mentor-message-text{font-size:13px;line-height:1.7;white-space:normal;color:#343038}
.context-mentor-bubble .mentor-message-text p{margin:0 0 9px!important;line-height:inherit!important;font-size:inherit!important;white-space:pre-wrap;overflow-wrap:anywhere}
.context-mentor-bubble .mentor-message-text p:last-child{margin-bottom:0!important}
.context-mentor-bubble .mentor-message-text strong{font-weight:750;color:#28232b}
.activity-mentor-column .context-mentor-compose,.case-mentor-column .context-mentor-compose{
  flex:0 0 auto!important;padding-top:12px;border-top:1px solid #e9e5ea;margin-top:0!important;gap:9px!important
}
.activity-mentor-column .context-mentor-compose textarea,.case-mentor-column .context-mentor-compose textarea{
  min-height:76px!important;max-height:130px!important;resize:vertical;font-size:13px!important;line-height:1.6!important
}
.activity-mentor-column .context-mentor-compose .primary,.case-mentor-column .context-mentor-compose .primary{min-height:42px;font-size:13px}
@media(max-width:1050px){
  .activity-object-layout,.activity-case-layout{grid-template-columns:minmax(0,1fr) 315px}
}
@media(max-width:900px){
  .activity-object-layout,.activity-case-layout{grid-template-columns:1fr}
  .activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{
    position:fixed!important;left:10px;right:10px;bottom:10px;top:auto;z-index:120;
    height:min(82dvh,680px)!important;max-height:82dvh!important;min-height:0!important;
    padding:16px
  }
}
@media(max-width:620px){
  .guided-m1-workshop .guided-delivery-review-head{display:grid;align-items:start;padding:16px}
  .guided-m1-workshop .guided-next-action{margin:12px 13px 15px;padding:16px}
  .guided-m1-workshop .guided-feedback-intro{padding:14px 16px 3px;font-size:13px}
  .guided-m1-workshop .guided-diagnostic-details{margin:0 13px 16px}
  .activity-mentor-column .context-mentor-panel.chat-open,.case-mentor-column .context-mentor-panel.chat-open{left:5px;right:5px;bottom:5px;height:86dvh!important;max-height:86dvh!important;padding:12px}
}


/* M1 applied workplace missions: source documents, not a completed spreadsheet. */
.m1-applied-documents{margin:18px 0;padding:19px 20px;border:1px solid #e5e5ec;border-radius:14px;background:#fafafd}
.m1-applied-documents h4,.m1-applied-documents h3{font-size:16px;line-height:1.4;margin:0 0 8px}
.m1-applied-documents p,.m1-case-reviewed .case-before p{font-size:13px!important;line-height:1.7!important;color:#555762}
.m1-applied-documents-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:14px}
.m1-applied-documents-grid a{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:9px;min-height:80px;padding:14px;border:1px solid #e5dbe2;border-radius:11px;background:#fff;color:#34343b;font-size:13px;line-height:1.5;font-weight:750;text-decoration:none;overflow-wrap:anywhere}
.m1-applied-documents-grid a:hover,.m1-applied-documents-grid a:focus-visible{border-color:var(--pink);box-shadow:0 0 0 2px #ffe2f0;outline:none}
.m1-applied-documents-grid a span{font-weight:600;font-size:11px;color:#bd1765}
.m1-case-reviewed .case-before,.m1-case-reviewed .case-criteria-panel{margin-top:18px}
.m1-case-reviewed .case-criteria-panel p{font-size:13px;line-height:1.65;margin:0}
.m1-case-reviewed .upload-box{margin:20px 0}
.m1-case-workplace-feedback{border:1px solid #e8e6ed;border-radius:14px;overflow:hidden;margin:18px 0;background:#fff}
.m1-case-workplace-feedback .guided-delivery-review-head h3{margin:4px 0 0;font-size:18px}
.m1-case-workplace-feedback .guided-review-row b{font-size:12px}
.m1-case-workplace-feedback .guided-review-row small{font-size:12px;line-height:1.65}
.m1-case-feedback-note{font-size:12px;line-height:1.65;color:#67666e;padding:12px 16px}
@media(max-width:620px){
  .m1-applied-documents{padding:14px}
  .m1-applied-documents-grid{grid-template-columns:1fr}
  .m1-applied-documents-grid a{min-height:64px}
}


/* M1 iOS validation (09/10/2026): contain contextual chat inside the visual viewport.
   Desktop retains its approved right-column presentation. */
@media (max-width:900px) {
  .activity-object-layout,.activity-case-layout{
    grid-template-columns:minmax(0,1fr)!important;width:100%;max-width:100%;min-width:0
  }
  .activity-mentor-column,.case-mentor-column{min-width:0;max-width:100%}
  .activity-mentor-column .context-mentor-panel.chat-open,
  .case-mentor-column .context-mentor-panel.chat-open{
    box-sizing:border-box!important;
    position:fixed!important;
    inset:auto 8px calc(var(--mentor-keyboard-offset,0px) + 8px) 8px!important;
    width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;min-width:0!important;
    height:min(calc(var(--mentor-visible-height,100dvh) - 16px),680px)!important;
    max-height:calc(var(--mentor-visible-height,100dvh) - 16px)!important;
    min-height:0!important;overflow:hidden!important;
    display:flex!important;flex-direction:column!important;padding:12px!important
  }
  .activity-mentor-column .context-mentor-chat,
  .case-mentor-column .context-mentor-chat{
    width:100%;max-width:100%;min-width:0;min-height:0;overflow:hidden
  }
  .activity-mentor-column .context-mentor-chat-head,
  .case-mentor-column .context-mentor-chat-head{
    min-width:0;max-width:100%;gap:8px
  }
  .activity-mentor-column .context-mentor-chat-head>div,
  .case-mentor-column .context-mentor-chat-head>div{min-width:0;flex:1}
  .activity-mentor-column .context-mentor-chat-head b,
  .case-mentor-column .context-mentor-chat-head b{overflow-wrap:anywhere}
  .activity-mentor-column .context-mentor-messages,
  .case-mentor-column .context-mentor-messages{
    width:100%;min-width:0;max-width:100%;overflow-x:hidden!important;overflow-y:auto!important
  }
  .activity-mentor-column .context-mentor-bubble,
  .case-mentor-column .context-mentor-bubble{
    box-sizing:border-box;min-width:0;max-width:100%!important;overflow-wrap:anywhere
  }
  .activity-mentor-column .context-mentor-compose,
  .case-mentor-column .context-mentor-compose{width:100%;min-width:0;max-width:100%}
  .activity-mentor-column .context-mentor-compose textarea,
  .case-mentor-column .context-mentor-compose textarea{
    box-sizing:border-box;width:100%;max-width:100%;min-width:0;font-size:16px!important;resize:none
  }
  body.context-mentor-mobile-open{overflow:hidden}
}


/* Optional reading mode for contextual Rê: preserves approved desktop layout. */
.context-mentor-head-actions{display:flex;gap:7px;align-items:flex-start;flex:0 0 auto}
.context-mentor-expand{font:inherit;font-size:11px;font-weight:750;padding:7px 9px;background:#fff;border:1px solid #e2d7df;border-radius:9px;color:#ab145d;cursor:pointer;white-space:nowrap}
.context-mentor-expand:focus-visible{outline:2px solid #e6007e;outline-offset:2px}
@media (max-width:900px){.context-mentor-expand{display:none}}
@media (min-width:901px) {
  body.context-mentor-reading-expanded::before{
    content:"";position:fixed;inset:0;z-index:1400;background:rgba(22,18,26,.35);pointer-events:none
  }
  .activity-mentor-column .context-mentor-panel.chat-open.reading-expanded,
  .case-mentor-column .context-mentor-panel.chat-open.reading-expanded{
    position:fixed!important;left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;
    transform:translate(-50%,-50%);z-index:1410!important;
    width:min(700px,calc(100vw - 40px))!important;max-width:calc(100vw - 40px)!important;min-width:0!important;
    height:min(82dvh,760px)!important;max-height:calc(100dvh - 32px)!important;min-height:0!important;
    background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.28);padding:20px!important
  }
  .activity-mentor-column .context-mentor-panel.chat-open.reading-expanded .context-mentor-chat,
  .case-mentor-column .context-mentor-panel.chat-open.reading-expanded .context-mentor-chat{
    display:flex!important;flex-direction:column!important;flex:1 1 auto;min-height:0!important;height:100%!important
  }
  .activity-mentor-column .context-mentor-panel.chat-open.reading-expanded .context-mentor-messages,
  .case-mentor-column .context-mentor-panel.chat-open.reading-expanded .context-mentor-messages{
    min-height:0!important;flex:1 1 auto;overflow-y:auto!important
  }
}


/* Shared M1 golden-master upload pattern — case evidence, modules M1–M8.
   Reuse guided-final-submit, guided-submit-head, guided-summary-pill and
   file-field selectors. Do not style the older .upload-box component here. */
.case-evidence-submit{
  display:grid;gap:14px;margin:20px 0;padding:18px 20px;
  border:1px solid var(--line);border-radius:16px;background:#fff;
  min-width:0;
}
.case-evidence-submit .guided-submit-head{min-width:0}
.case-evidence-submit .guided-submit-head>div{min-width:0}
.case-evidence-submit .guided-submit-head h4{
  margin:5px 0 0;font-size:17px;line-height:1.4;
}
.case-reviewed .case-evidence-submit>p{
  margin:0;font-size:13px;line-height:1.65;color:#555762;
}
.case-evidence-submit .file-field{
  display:grid;gap:8px;min-width:0;font-size:12px;font-weight:700;
}
.case-evidence-submit .file-field input{
  width:100%;min-width:0;max-width:100%;box-sizing:border-box;
  border:1px dashed var(--line);border-radius:10px;padding:12px;
  background:#fff;font-size:12px;
}
.case-evidence-submit .primary{justify-self:start;min-height:42px}
@media(max-width:680px){
  .case-evidence-submit{padding:16px;gap:12px}
  .case-evidence-submit .guided-submit-head{display:grid;gap:10px}
  .case-evidence-submit .guided-summary-pill{width:max-content;max-width:100%}
  .case-evidence-submit .primary{max-width:100%;white-space:normal}
}


/* Certification examination: same one-question-at-a-time design as M1–M8 checkpoints. */
.knowledge-exam-panel{max-width:900px;margin:0 auto 18px;padding:22px;display:grid;gap:14px}
.knowledge-exam-panel h2{margin:3px 0 5px;font-size:22px;line-height:1.35}
.knowledge-exam-panel>p,.knowledge-exam-heading p{color:var(--muted);font-size:13px;line-height:1.7;margin:0}
.knowledge-exam-panel>.secondary,.knowledge-exam-panel>.primary{justify-self:start}
.knowledge-exam-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.knowledge-exam-heading .knowledge-grade-requirement{display:grid;text-align:center;min-width:85px;border:1px solid #efbad4;border-radius:12px;background:var(--pink-soft);padding:12px}
.knowledge-grade-requirement b{font-size:21px;color:var(--pink)}.knowledge-grade-requirement small{font-size:10px;color:var(--muted)}
.knowledge-exam-metrics{display:flex;gap:12px;flex-wrap:wrap}
.knowledge-exam-metrics span{display:grid;min-width:125px;gap:4px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;color:var(--muted);font-size:11px}
.knowledge-exam-metrics b{color:var(--ink);font-size:20px}
.knowledge-attempt-history{max-width:900px;margin:0 auto 20px}
.knowledge-attempt-history h3{font-size:15px;margin:4px 0 12px}
.knowledge-attempts{display:grid;gap:9px;grid-template-columns:repeat(3,minmax(0,1fr))}
.knowledge-attempt{display:grid;gap:5px;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff}
.knowledge-attempt b{font-size:12px}.knowledge-attempt span{color:var(--pink);font-size:20px;font-weight:800}.knowledge-attempt small{font-size:10px;line-height:1.5;color:var(--muted)}
.knowledge-big-grade{font-weight:900;font-size:42px;color:var(--pink);line-height:1}.knowledge-big-grade small{font-size:16px;color:var(--muted)}
.knowledge-exam-warning{padding:13px 16px;border:1px solid #f0c4ac;border-radius:12px;background:#fff8f2;color:#845226!important}
.knowledge-exam-panel .checkpoint-stepper{max-height:150px;overflow:auto;gap:6px}
.knowledge-exam-panel .checkpoint-question-card{margin-top:0}
@media(max-width:720px){
  .knowledge-exam-panel{padding:15px}
  .knowledge-exam-heading{display:grid;gap:12px}
  .knowledge-exam-heading .knowledge-grade-requirement{justify-self:start}
  .knowledge-attempts{grid-template-columns:1fr}
  .knowledge-exam-panel .checkpoint-question-card{padding:16px}
  .knowledge-exam-panel .checkpoint-nav{display:grid;grid-template-columns:1fr 1fr}
  .knowledge-exam-panel .checkpoint-nav button{min-width:0;font-size:12px}
}

/* Relatos de conteúdo — ação visível, discreta e acessível em cada atividade. */
.report-inline{margin:14px 0 8px;justify-content:flex-start}
.report-inline button{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:9px;border:1px solid #e7d7e1;background:#fffafd;color:#9b2363;font-size:12px;font-weight:650;text-decoration:none;line-height:1.3;min-height:36px}
.report-inline button:hover,.report-inline button:focus-visible{color:var(--pink-dark);background:#fff0f7;border-color:var(--pink);outline-offset:2px}
.object-header>.report-inline{margin:0;flex-shrink:0;align-self:flex-start}
.report-context{background:#f8f8fa;border:1px solid #e9e9ed;padding:9px 11px;border-radius:9px;overflow-wrap:anywhere}
.modal-card select{border:1px solid var(--line);border-radius:10px;padding:11px;background:#fff;width:100%}
.modal-card .report-help{font-size:11px;color:#6c6f78}
.report-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:12px 0}
.report-admin-stats>div{background:#faf9fb;border:1px solid #eee7ec;border-radius:11px;padding:13px}
.report-admin-stats strong{display:block;font-size:22px}.report-admin-stats small{font-size:11px;color:var(--muted)}
.report-admin-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:12px 0}
.report-admin-controls label{display:grid;gap:5px;font-size:11px;font-weight:700}
.report-admin-controls select,.report-admin-controls input,.report-admin-item select,.report-admin-item input{border:1px solid var(--line);border-radius:9px;padding:9px;background:#fff;font-size:12px}
.report-admin-list{display:grid;gap:10px;margin-top:14px}
.report-admin-item{border:1px solid var(--line);border-radius:11px;padding:13px;background:#fff}
.report-admin-item>header{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;font-size:12px}
.report-admin-item p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.55}
.report-admin-item small{display:block;color:var(--muted);font-size:11px;line-height:1.55;margin-top:4px}
.report-admin-action{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
.report-admin-action input{flex:1;min-width:160px}
@media(max-width:720px){.object-header>.report-inline{margin-top:12px}.report-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.report-admin-controls>*{flex:1}}

/* Tipografia de formulários — orientações e exemplos nunca herdam o negrito dos rótulos.
   Mantém o destaque semântico em label/strong; protege AVA, admin e formulários futuros. */
input[placeholder], textarea[placeholder], select {
  font-weight: 400;
}
input::placeholder, textarea::placeholder {
  font-weight: 400;
  font-style: normal;
  color: #767b85;
  opacity: 1;
}


/* Jornada do curso ativo: reutiliza o cabeçalho com Trocar de curso. */
.journey-detailed{padding:20px;min-width:0}
.journey-progress-info{margin-top:16px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#faf9fa;display:grid;gap:9px}
.journey-progress-info b{font-size:13px}.journey-progress-info small{color:var(--muted);font-size:11px}
.journey-section-title{margin:24px 0 6px}
.journey-key{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0 18px}
.journey-status{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:600;white-space:nowrap;border:1px solid transparent}
.journey-status.required{color:#ad005a;background:#fff1f8;border-color:#f5cde1}
.journey-status.validate{color:#665015;background:#fff9e9;border-color:#f4dfab}
.journey-status.optional{color:#555b65;background:#f4f5f7;border-color:#e5e7eb}
.journey-status.completed{color:#166b47;background:#ecf9f2;border-color:#c5ebd4}
.journey-guidance{background:#fff8fb;border:1px solid var(--pink-line);border-radius:12px;padding:16px;margin:16px 0}
.journey-guidance b{font-size:14px}.journey-guidance p{color:var(--muted);font-size:12px;line-height:1.6}
.journey-module-list{display:grid;gap:12px;margin-top:12px}
.journey-module-card{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden;min-width:0}
.journey-module-head{list-style:none;display:flex;align-items:center;gap:12px;padding:15px;cursor:pointer;min-width:0;background:#fbfafb}
.journey-module-head::-webkit-details-marker{display:none}
.journey-module-head:focus-visible{outline:2px solid var(--pink);outline-offset:-3px}
.journey-module-copy{display:grid;gap:4px;flex:1;min-width:0}
.journey-module-copy b{font-size:13px}.journey-module-copy small{font-size:11px;line-height:1.5;color:var(--muted)}
.journey-module-copy em{font-style:normal;font-size:10px;color:var(--muted)}
.journey-module-summary-status{font-size:10px;color:#666;white-space:nowrap}
.journey-module-summary-status.mastered{color:#17744b}
.journey-disclosure{font-size:20px;color:var(--muted);transition:transform .15s ease}
.journey-module-card[open] .journey-disclosure{transform:rotate(180deg)}
.journey-module-activities{border-top:1px solid var(--line)}
.journey-activity{display:grid;grid-template-columns:minmax(0,1fr) auto 74px;gap:14px;align-items:center;padding:12px 15px;border-bottom:1px solid #f0edf0;min-width:0}
.journey-activity:last-child{border-bottom:0}
.journey-activity-copy{min-width:0}.journey-activity-copy b{display:block;font-size:12px;line-height:1.5}
.journey-activity-copy small{display:block;font-size:10px;color:var(--muted);margin-top:3px;line-height:1.5}
.journey-activity button{min-width:70px}.journey-help-card{padding:17px}
@media(max-width:740px){.journey-detailed{padding:14px}.journey-activity{grid-template-columns:minmax(0,1fr) auto;gap:8px}
.journey-activity-copy{grid-column:1 / -1}.journey-activity .journey-status{justify-self:start}
.journey-activity button{justify-self:end}.journey-module-head{gap:8px;padding:12px}
.journey-module-summary-status{white-space:normal;text-align:right;max-width:84px}
.journey-next{flex-wrap:wrap}.journey-next>button{width:100%}}

/* Diagnóstico progressivo: M0 participa da navegação normal do curso. */
.diagnostic-intro{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--shadow)}
.diagnostic-intro h1{font-size:25px;margin:8px 0}.diagnostic-intro>p{font-size:13px;line-height:1.6;color:var(--muted)}
.diagnostic-intro h2{font-size:17px;margin:22px 0 12px}
.diagnostic-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0}
.diagnostic-steps span{font-size:12px;padding:11px 13px;background:#f8f8fa;border-radius:9px;border:1px solid #eee}
.diagnostic-choices{display:grid;gap:9px}
.diagnostic-choices button{border:1px solid #dedde2;background:#fff;border-radius:12px;padding:15px;text-align:left;cursor:pointer}
.diagnostic-choices button:hover,.diagnostic-choices button:focus-visible{border-color:var(--pink);background:#fff8fb}
.diagnostic-choices b{display:block;font-size:14px}.diagnostic-choices small{display:block;font-size:11px;margin-top:4px;color:var(--muted)}
.diagnostic-stepper{display:flex;flex-wrap:wrap;gap:6px;margin:13px 0}
.diagnostic-step{width:34px;height:34px;border:1px solid #dedde2;border-radius:9px;background:#fff;cursor:pointer;font-size:12px;font-weight:600}
.diagnostic-step.answered{background:#edf7f1;border-color:#c9e9d6;color:#167044}
.diagnostic-step.current{background:var(--pink);border-color:var(--pink);color:#fff}
.diagnostic-flow .assessment-top{align-items:center;margin-bottom:12px}
.diagnostic-flow .assessment-card{padding:20px}.diagnostic-flow .answers{gap:8px}
.diagnostic-flow .answer{font-weight:400}.diagnostic-flow .answer b{font-weight:600}
.diagnostic-flow .diagnostic-unknown{border-style:dashed;text-align:center;color:#555}
.diagnostic-help{font-size:11px;color:var(--muted);line-height:1.6;margin:13px 0}
.diagnostic-summary{display:grid;gap:13px}.diagnostic-summary>h1{font-size:24px;margin:0}
.diagnostic-summary>p{font-size:12px;margin:0;color:var(--muted)}
.diagnostic-summary .assessment-card{padding:18px}.diagnostic-summary .assessment-card h2{font-size:17px;margin:0 0 9px}
.diagnostic-summary .assessment-card p{font-size:12px;color:var(--muted);line-height:1.6}
.diagnostic-download{display:inline-flex;text-decoration:none;margin:5px 0 12px}
.diagnostic-practice-list{display:grid;gap:14px;margin-top:12px}
.diagnostic-practice-item{display:grid;gap:8px;padding:14px;border:1px solid #e5e2e6;border-radius:10px}
.diagnostic-practice-item>b{font-size:13px;font-weight:600}
.diagnostic-practice-item input:not([type=radio]){width:100%;box-sizing:border-box;border:1px solid #dedee3;border-radius:10px;padding:12px;font:inherit;font-weight:400}
.diagnostic-practice-item label{font-size:12px}
.diagnostic-unknown-btn{border:0;background:transparent;padding:5px 0;text-align:left;justify-self:start;font-weight:500;color:var(--pink-dark);cursor:pointer}
.diagnostic-unknown-btn.active{background:var(--pink-soft);border-radius:6px;padding:5px 9px}
.diagnostic-final{display:flex;justify-content:space-between;align-items:center;gap:12px}
.diagnostic-final p{font-size:12px;color:var(--muted)}.diagnostic-final button:disabled{opacity:.5;cursor:not-allowed}
.journey-detailed .journey-focus-bar{display:flex;gap:14px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 0 16px;margin-bottom:10px;min-width:0}
.journey-focus-bar>div{min-width:0}.journey-focus-bar h2{font-size:18px;margin:5px 0}
.journey-focus-bar p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}
.journey-focus-bar button{flex-shrink:0}
.journey-detailed .journey-progress-info{margin-top:8px;border:0;border-radius:0;background:transparent;padding:8px 0 12px;border-bottom:1px solid var(--line)}
.journey-progress-info b{font-weight:600}
.journey-detailed .journey-section-title{margin-top:17px}
.journey-detailed .journey-intro{margin:0 0 10px}
.journey-detailed .journey-key{margin:11px 0}
.journey-detailed .journey-module-list{gap:9px;margin-top:8px}
.journey-help-card{background:#fff}
@media(max-width:700px){.diagnostic-intro{padding:16px}.diagnostic-steps{grid-template-columns:1fr}
.diagnostic-flow .assessment-top{display:grid;grid-template-columns:1fr}.diagnostic-flow .assessment-progress{text-align:left;min-width:0}
.diagnostic-flow .assessment-nav{gap:12px}.diagnostic-flow .assessment-nav button{flex:1}
.diagnostic-step{width:32px;height:32px}.diagnostic-summary .assessment-card{padding:14px}
.diagnostic-final{flex-direction:column;align-items:stretch}.diagnostic-final button{width:100%}
.journey-detailed .journey-focus-bar{flex-direction:column;align-items:stretch}.journey-focus-bar button{width:100%}}

/* Diagnostic result v3: course identity, full-width interpretation, dedicated Rê chat. */
#view-result .course-context{margin-bottom:14px}
.result-hero-v3{min-width:0;align-items:center}
.result-hero-v3 .result-hero-copy{min-width:0;flex:1}
.result-hero-v3 .result-hero-copy p{max-width:75ch;font-size:13px;line-height:1.6;color:var(--muted)}
.result-hero-v3 .result-score{
  --result-progress:0%;
  flex:0 0 104px;width:104px;height:104px;aspect-ratio:1 / 1;
  box-sizing:border-box;border:0;border-radius:50%;padding:0;position:relative;isolation:isolate;
  display:grid;place-items:center;
  background:conic-gradient(from 0deg,var(--pink) 0% var(--result-progress),#fbeaf2 var(--result-progress) 100%);
}
.result-hero-v3 .result-score:before{content:"";position:absolute;inset:12px;border-radius:50%;background:#fff}
.result-hero-v3 .result-score span{position:relative;z-index:1;font-size:21px;font-weight:800;line-height:1}
.result-grid-v3{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:15px;align-items:start;margin-top:14px}
.result-main{display:grid;gap:14px;min-width:0;align-content:start}
.result-main>.card{min-width:0;padding:20px}
.result-main .card-head{margin-bottom:14px}
.result-main .card-head h2{font-size:17px;margin:5px 0 0}
.result-skill-list{display:grid;gap:4px}
.result-skills-card .skill-row{margin:0 0 7px}
.result-skills-card .skill-row:last-child{margin-bottom:0}
.result-disclaimer{border-top:1px solid var(--line);margin:12px 0 0;padding-top:11px;font-size:11px;color:var(--muted);line-height:1.5}
.result-path-intro{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 15px}
.result-path-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.result-path-row{display:grid;grid-template-columns:27px minmax(0,1fr);column-gap:9px;row-gap:6px;align-items:start;
  padding:12px;border:1px solid var(--line);border-radius:11px;min-width:0;background:#fff}
.result-path-number{display:grid;place-items:center;background:#f2f2f5;color:#555;border-radius:8px;width:27px;height:27px;font-size:11px;font-weight:700}
.result-path-detail{min-width:0}
.result-path-detail b{display:block;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.result-path-detail small{display:block;font-size:10px;color:var(--muted);margin-top:4px;line-height:1.5}
.result-path-status{grid-column:2;font-size:10px;font-weight:600;color:var(--pink-dark);overflow-wrap:anywhere}
.result-path-footer{border-top:1px solid var(--line);padding-top:14px;margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:13px}
.result-path-footer span{font-size:11px;line-height:1.5;color:var(--muted)}
.result-path-footer button{flex:0 0 auto}
.result-mentor-column{min-width:0}
.result-mentor-chat{padding:0;display:flex;flex-direction:column;overflow:hidden;min-height:460px}
.result-mentor-head{display:flex;gap:10px;align-items:center;padding:14px;border-bottom:1px solid var(--line)}
.result-mentor-head img{width:54px;height:72px;object-fit:cover;object-position:center top;border-radius:10px;flex-shrink:0}
.result-mentor-head h2{font-size:14px;line-height:1.35;margin:4px 0 5px}
.result-mentor-head p{font-size:11px;color:var(--muted);line-height:1.5;margin:0}
.result-mentor-messages{display:grid;align-content:start;gap:10px;background:#fafafb;min-height:210px;max-height:380px;overflow-y:auto;padding:13px;flex:1 1 auto}
.result-mentor-messages .msg{max-width:100%;box-sizing:border-box}
.result-mentor-compose{display:grid;gap:8px;padding:13px;border-top:1px solid var(--line)}
.result-mentor-compose label{font-size:11px;font-weight:600}
.result-mentor-compose textarea{width:100%;min-width:0;box-sizing:border-box;resize:vertical;min-height:75px;max-height:170px;border:1px solid #d9dae0;border-radius:10px;padding:11px;font:inherit;font-size:12px;line-height:1.5}
.result-mentor-compose button{width:100%}
@media(max-width:1050px){
  .result-grid-v3{grid-template-columns:minmax(0,1fr)}
  .result-mentor-chat{min-height:350px}
  .result-mentor-messages{max-height:310px}
}
@media(max-width:700px){
  .result-hero-v3{padding:17px;align-items:center;gap:13px}
  .result-hero-v3 h1{font-size:20px;line-height:1.3}
  .result-hero-v3 .result-hero-copy p{font-size:12px}
  .result-hero-v3 .result-score{flex-basis:82px;width:82px;height:82px}
  .result-hero-v3 .result-score:before{inset:9px}
  .result-hero-v3 .result-score span{font-size:18px}
  .result-main>.card{padding:15px}
  .result-path-list{grid-template-columns:1fr}
  .result-path-footer{flex-direction:column;align-items:stretch}
  .result-path-footer button{width:100%}
  .result-mentor-chat{min-height:350px}
}

/* Journey accordion: same drawn chevron as the Meus cursos navigation control. */
.journey-module-head{align-items:center;gap:12px}
.journey-module-head .journey-module-summary-status{align-self:center;line-height:1.35;margin:0}
.journey-module-head .journey-disclosure{
  position:relative;display:block;flex:0 0 16px;width:16px;height:16px;
  margin:0 0 0 2px;align-self:center;line-height:0;font-size:0;
  transform:none!important;color:var(--muted);
}
.journey-module-head .journey-disclosure:before{
  content:"";position:absolute;left:4px;top:3px;width:6px;height:6px;
  border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;
  transform:rotate(45deg);transform-origin:center;transition:transform .18s ease;
}
.journey-module-card[open] .journey-module-head .journey-disclosure:before{top:6px;transform:rotate(225deg)}
/* All canonical resources, not only evidence, appear in Activities. */
.activities-progress-summary{display:grid;gap:11px;padding:18px 20px;margin:0 0 14px;
  background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}
.activities-progress-summary>div:first-child{display:grid;gap:5px}
.activities-progress-summary b{font-size:15px}
.activities-progress-summary small{font-size:11px;line-height:1.5;color:var(--muted)}
.activity-module-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.activity-module-head>div{min-width:0}
.activity-module-count{font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}
.activity-row-v18{min-width:0}
.activity-row-v18 .activity-row-info{min-width:0}
.activity-row-v18 .activity-row-info b{overflow-wrap:anywhere;line-height:1.5}
.activity-row-v18 .activity-grade{font-size:11px;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums}
.activity-row-v18 .pill.neutral{background:#f3f4f6;color:#5d6470}
@media(max-width:700px){
 .activity-module-head{align-items:flex-start;flex-direction:column;gap:5px}
 .activity-module-count{white-space:normal}
 .activity-row-v18{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}
 .activity-row-info{grid-column:1/-1}
 .activity-row-v18 .pill{justify-self:start}
 .activity-row-v18 .activity-grade{grid-column:1;grid-row:3;justify-self:start;text-align:left}
 .activity-row-v18>button{grid-column:2;grid-row:2/4;justify-self:end}
 .journey-module-head .journey-disclosure{flex-basis:16px}
}

/* Release UX: consolidated journey and unified mentor conversation */
.journey-fullwidth{width:100%;min-width:0}
.journey-module-head{background:#fafafd;border-bottom:0;gap:15px}
.journey-module-head .journey-module-copy{gap:4px}
.journey-module-head .journey-module-eyebrow,.journey-module-eyebrow{display:block;font-size:10px;font-weight:800;color:var(--pink-dark);letter-spacing:.035em;line-height:1.5}
.journey-module-head .journey-module-copy b{font-size:15px;line-height:1.4}
.journey-module-count{font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}
.journey-module-reason{margin:0;border-bottom:1px solid var(--line);padding:10px 16px;font-size:11px;line-height:1.55;color:var(--muted);background:#fff}
.journey-diagnostic-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:#fafafd}
.journey-diagnostic-row>div{display:grid;gap:4px;min-width:0}
.journey-diagnostic-row b{font-size:14px}
.journey-diagnostic-row small:not(.journey-module-eyebrow){font-size:11px;color:var(--muted)}
.journey-diagnostic-row button{min-width:95px}
#journeyRoot .journey-activity{grid-template-columns:minmax(0,1fr) auto 80px}
#journeyRoot .journey-activity button{min-width:74px}
#view-mentor .mentor-page-v19{height:auto;min-height:0;overflow:visible}
#view-mentor .mentor-v19.mentor-workspace{display:flex;flex-direction:column;gap:12px;min-width:0;height:auto}
#view-mentor .mentor-conversation-v19.mentor-conversation-unified{display:flex;flex-direction:column;height:auto;min-height:0}
#view-mentor .mentor-prompts-unified{display:flex;flex-wrap:wrap;overflow:visible;gap:8px;margin:0 0 10px}
#view-mentor .mentor-chat-fixed.mentor-chat-unified{height:clamp(340px,calc(100dvh - 260px),720px);min-height:0;flex:0 0 auto;display:flex;flex-direction:column;overflow:hidden}
#view-mentor .mentor-chat-unified .chat-head{flex:0 0 auto}
#view-mentor .mentor-chat-unified .messages{height:auto;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;padding-bottom:16px}
#view-mentor .mentor-chat-unified .chat-form{position:static;bottom:auto;flex:0 0 auto;background:#fff;box-shadow:0 -6px 18px rgba(25,24,28,.05)}
#view-mentor .mentor-chat-unified #mentorInput{min-width:0;width:100%}
#view-mentor .mentor-chat-header{min-width:0}
#view-mentor .mentor-chat-header>div{min-width:0}
#view-mentor .mentor-activity-context{display:block;font-size:10px;color:var(--pink-dark);margin-top:4px;line-height:1.5;overflow-wrap:anywhere}
#view-mentor .mentor-insights{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;min-width:0}
#view-mentor .mentor-insights>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:13px 16px;font-size:12px;font-weight:800}
#view-mentor .mentor-insights>summary::-webkit-details-marker{display:none}
#view-mentor .mentor-insights>summary:after{content:"⌄";font-size:18px;color:var(--muted)}
#view-mentor .mentor-insights[open]>summary:after{transform:rotate(180deg)}
#view-mentor .mentor-insights>summary span{font-size:11px;font-weight:400;color:var(--muted);margin-left:auto}
#view-mentor .mentor-insights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 13px 13px}
#view-mentor .mentor-insights-grid .re-insight-card-v19{box-shadow:none;min-width:0}
@media(max-width:760px){
  .journey-module-head{flex-wrap:wrap;gap:7px 10px}
  .journey-module-head .journey-module-copy{flex:1 1 calc(100% - 30px)}
  .journey-module-head .journey-module-count{order:2}
  .journey-module-head .journey-module-summary-status{order:3;max-width:none;margin-left:auto}
  .journey-module-head .journey-disclosure{order:1;margin-left:auto}
  .journey-diagnostic-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .journey-diagnostic-row>div{grid-column:1/-1}
  #journeyRoot .journey-activity{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  #journeyRoot .journey-activity-copy{grid-column:1/-1}
  #view-mentor .mentor-conversation-v19.mentor-conversation-unified{height:auto;min-height:0}
  #view-mentor .mentor-page-v19{height:auto;min-height:0}
  #view-mentor .mentor-chat-fixed.mentor-chat-unified{height:max(310px,calc(100dvh - 245px));min-height:0}
  #view-mentor .mentor-prompts-unified{overflow-x:auto;flex-wrap:nowrap}
  #view-mentor .mentor-insights-grid{grid-template-columns:1fr}
  #view-mentor .mentor-insights>summary span{display:none}
}
@media(max-height:560px){
  #view-mentor .mentor-chat-fixed.mentor-chat-unified{height:max(270px,calc(100dvh - 210px))}
  #view-mentor .mentor-prompts-unified{margin-bottom:6px}
}

/* UX Release 2 — contextual course performance and privacy-first global league */
#view-game #gameFull>.course-context{margin-bottom:16px}
.performance-dashboard{display:grid;gap:14px}
.performance-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 19px;background:#fff;border:1px solid var(--line);border-radius:15px}
.performance-intro h2{font-size:19px;margin:6px 0}
.performance-intro p{font-size:12px;color:var(--muted);line-height:1.65;margin:0}
.performance-intro button{flex:0 0 auto}
.performance-metrics,.league-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.performance-stat,.league-stat{min-width:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:7px;box-shadow:var(--shadow)}
.performance-stat small,.league-stat small{font-size:11px;color:#555b65}
.performance-stat>b,.league-stat>b{font-size:25px;line-height:1.25;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.performance-stat>span,.league-stat>span{font-size:10.5px;color:var(--muted);line-height:1.5}
.performance-columns{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:14px;align-items:start}
.performance-side{display:grid;gap:14px;min-width:0}
.performance-card{padding:18px;min-width:0}
.performance-card-title{margin-bottom:16px}
.performance-card-title h3{margin:5px 0 6px;font-size:16px}
.performance-card-title p{margin:0;font-size:11.5px;color:var(--muted);line-height:1.6}
.performance-module-list{display:grid;gap:13px}
.performance-module-row{padding:12px 0;border-top:1px solid var(--line)}
.performance-module-row:first-child{border-top:0;padding-top:0}
.performance-module-header{display:flex;justify-content:space-between;gap:10px;align-items:center}
.performance-module-header>div{display:grid;gap:3px;min-width:0}
.performance-module-header small{color:var(--pink-dark);font-size:10px;font-weight:800}
.performance-module-header b{font-size:12px;overflow-wrap:anywhere}
.performance-module-progress{display:flex;align-items:center;gap:12px;margin-top:10px}
.performance-module-progress .progress-line{flex:1;min-width:0}
.performance-module-progress b{font-size:10.5px;color:var(--muted);min-width:93px;text-align:right}
.performance-grade-note{display:block;font-size:10px;line-height:1.55;margin-top:6px;color:var(--muted)}
.performance-evidence-list{display:grid;gap:0}
.performance-evidence-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.performance-evidence-row:last-child{border-bottom:0}
.performance-evidence-row>div{display:grid;gap:4px}
.performance-evidence-row b{font-size:11px}
.performance-evidence-row small{font-size:10px;color:var(--muted)}
.performance-evidence-row strong{font-size:12px;color:var(--green);white-space:nowrap}
.performance-transfer{padding:18px}
.performance-transfer .list-row{min-width:0}
.league-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;margin-top:14px}
.league-panel{min-width:0;padding:20px;display:grid;gap:12px}
.league-panel h3{font-size:17px;margin:0}
.league-hint,.league-disclaimer{font-size:11.5px;line-height:1.6;color:var(--muted);margin:0}
.league-disclaimer{padding-top:11px;border-top:1px solid var(--line)}
.league-course-list{display:grid}
.league-course-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}
.league-course-row>div{display:grid;gap:4px;min-width:0}
.league-course-row>div:last-child{text-align:right;min-width:115px}
.league-course-row b{font-size:12px;overflow-wrap:anywhere}
.league-course-row small{font-size:10.5px;color:var(--muted);line-height:1.5}
.league-ranking-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.league-own-position{font-size:12px;margin:0}
.league-board{display:grid}
.league-rank-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px;border-bottom:1px solid var(--line)}
.league-rank-row.is-me{background:#fff3fa;border-radius:9px}
.league-rank-position{font-size:12px;color:var(--pink-dark);font-weight:800}
.league-rank-row>div{display:grid;gap:4px;min-width:0}
.league-rank-row b{font-size:12px;overflow-wrap:anywhere}
.league-rank-row small{font-size:10px;color:var(--muted)}
.league-rank-row strong{font-size:12px;white-space:nowrap}
@media(max-width:1100px){
  .performance-metrics,.league-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .performance-columns,.league-columns{grid-template-columns:1fr}
}
@media(max-width:580px){
  .performance-intro{flex-direction:column;align-items:stretch}
  .performance-intro button{align-self:start}
  .performance-metrics,.league-metrics{gap:8px}
  .performance-stat,.league-stat{padding:12px}
  .performance-stat>b,.league-stat>b{font-size:20px}
  .performance-module-header{align-items:flex-start;flex-wrap:wrap}
  .performance-module-header .pill{font-size:9px}
  .performance-module-progress{flex-wrap:wrap}
  .performance-module-progress .progress-line{width:100%;flex-basis:100%}
  .performance-module-progress b{text-align:left;min-width:0}
  .league-panel,.performance-card{padding:14px}
  .league-course-row{align-items:flex-start}
  .league-course-row>div:last-child{min-width:90px}
  .league-rank-row{gap:7px}
  #xpTop{font-size:9px}
}

/* Liga RecrutaEasy 2.0 — competitive experience, responsive and accessible */
#view-league>.page-heading{margin-bottom:16px}
.league-competition-v2{display:grid;gap:16px;max-width:100%;min-width:0}
.league-hero-v2{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:146px;padding:24px 30px;border-radius:19px;border:1px solid #f4c1dd;background:linear-gradient(115deg,#fff 0%,#fff4fa 68%,#fce5f1 100%);position:relative;overflow:hidden}
.league-hero-v2:after{content:"";position:absolute;right:95px;bottom:-84px;width:230px;height:230px;border:1px solid #f3c5da;border-radius:50%;pointer-events:none}
.league-hero-v2 h2{font-size:clamp(20px,2vw,28px);line-height:1.2;margin:7px 0;color:var(--ink)}
.league-hero-v2 p{font-size:13px;color:var(--muted);line-height:1.6;margin:0}
.league-hero-mark{position:relative;z-index:1;width:66px;height:66px;border-radius:20px;background:#e6007e;color:#fff;display:flex;align-items:center;justify-content:center;font-size:34px;box-shadow:0 8px 21px #e6007e35;flex:0 0 auto}
.league-scoreboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.league-scoreboard>article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:15px 17px;min-width:0;display:grid;gap:4px}
.league-scoreboard small{font-size:10px;font-weight:800;color:var(--muted);letter-spacing:.025em}
.league-scoreboard b{font-size:26px;line-height:1.35;font-variant-numeric:tabular-nums}
.league-scoreboard span{font-size:10.5px;line-height:1.5;color:var(--muted)}
.league-competition-main{display:grid;grid-template-columns:minmax(0,1.66fr) minmax(270px,.84fr);gap:15px;align-items:start;min-width:0}
.league-main-column,.league-aside-v2{min-width:0;display:grid;gap:13px}
.league-ranking-head{background:#fff;border:1px solid var(--line);border-radius:15px 15px 0 0;padding:17px 20px 14px;display:flex;justify-content:space-between;gap:16px;align-items:end}
.league-ranking-head h3{font-size:18px;margin:5px 0}
.league-ranking-head p{font-size:11px;color:var(--muted);margin:0;line-height:1.6}
.league-periods{display:flex;align-items:center;gap:4px;padding:4px;background:#f6f6f9;border-radius:10px;flex-wrap:wrap}
.league-period-tab{border:0;background:transparent;color:#6c6874;font-weight:700;font-size:10.5px;padding:9px 11px;border-radius:8px;cursor:pointer;white-space:nowrap}
.league-period-tab.selected{background:#e6007e;color:#fff;box-shadow:0 4px 10px #d3007928}
.league-period-tab:focus-visible{outline:3px solid #b90065;outline-offset:2px}
.league-period-description{background:#fff;border-left:1px solid var(--line);border-right:1px solid var(--line);color:var(--muted);font-size:10.5px;padding:9px 20px;line-height:1.6}
.league-podium{background:#fff;border-left:1px solid var(--line);border-right:1px solid var(--line);min-height:181px;padding:22px 22px 0;display:flex;align-items:end;justify-content:center;gap:10px}
.league-podium-person{flex:1;min-width:0;max-width:230px;display:flex;align-items:center;flex-direction:column;text-align:center;gap:6px}
.league-podium-symbol{font-size:23px;color:#a4a0ad}
.league-podium-person.champion .league-podium-symbol{font-size:29px;color:#e6007e}
.league-podium-person b{font-size:11px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.league-podium-person small{font-size:10px;color:var(--muted)}
.league-podium-block{height:48px;width:100%;background:#f2ecf1;border-radius:12px 12px 0 0;display:flex;align-items:center;justify-content:center;border:1px solid #eee5eb;border-bottom:0}
.league-podium-person.champion .league-podium-block{height:84px;background:linear-gradient(145deg,#e6007e,#b90065);color:#fff;border:0}
.league-podium-block strong{font-size:17px}
.league-empty-competition{padding:22px;background:#fff;border:1px solid var(--line);text-align:center}
.league-empty-competition b{font-size:13px}
.league-empty-competition p{font-size:11px;color:var(--muted)}
.league-ranking-table{background:#fff;border:1px solid var(--line);border-radius:0 0 15px 15px;overflow:hidden}
.league-list-head{display:flex;gap:10px;align-items:center;justify-content:space-between;min-width:0;padding:12px 18px}
.league-list-head>b{font-size:12px}
.league-find{display:flex;gap:6px;min-width:0}
.league-find input,.league-nickname-form input{min-width:0;width:100%;background:#fff;border-radius:9px;border:1px solid #dddce3;padding:10px 11px;font-size:12px}
.league-find input{width:160px}
.league-find button{font-size:11px;padding:9px 12px}
.league-ranking-table .league-rank-row{padding:13px 18px}
.league-ranking-table .league-rank-row.is-me{background:#fff2f8;border-radius:0}
.league-ranking-table .league-rank-position{font-size:15px}
.league-paging{padding:13px 18px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
.league-paging>div{display:flex;gap:7px}
.league-paging button{padding:8px 10px;font-size:10px}
.league-near{padding:14px 18px;background:#fff8fc;border-top:1px solid #f1c9dd}
.league-near .league-rank-row{padding:9px}
.league-membership,.league-help-v2{display:grid;gap:12px;padding:19px;min-width:0}
.league-help-v2 h3,.league-join-box h3{font-size:16px;margin:0}
.league-help-v2 p,.league-join-box p{font-size:11px;color:var(--muted);line-height:1.7;margin:0}
.league-join-box{display:grid;gap:17px}
.league-join-box>div:first-child{display:grid;gap:9px}
.league-nickname-form{display:grid;gap:8px}
.league-nickname-form label{font-size:11px;font-weight:700}
.league-nickname-form>div{display:flex;flex-direction:column;gap:8px}
.league-nickname-form input{min-height:41px}
.league-nickname-form button{min-height:40px}
.league-nickname-form small{font-size:10px;line-height:1.6;color:var(--muted)}
.league-participant-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.league-participant-ident{display:grid;gap:5px;flex:1 1 100%;min-width:0}
.league-participant-ident span{font-size:10px;font-weight:700;color:var(--muted)}
.league-participant-ident b{font-size:17px;color:var(--pink-dark);overflow-wrap:anywhere}
.league-link-button{border:none;background:transparent;text-decoration:underline;color:var(--muted);font-size:11px;cursor:pointer;padding:8px}
.league-history{background:#fff;border:1px solid var(--line);border-radius:14px;min-width:0;overflow:hidden}
.league-history summary{cursor:pointer;display:grid;gap:5px;padding:15px 17px;font-weight:800;font-size:12px;list-style:none}
.league-history summary::-webkit-details-marker{display:none}
.league-history summary:after{content:"⌄";position:absolute;right:16px;top:17px;color:var(--muted)}
.league-history summary{position:relative;padding-right:32px}
.league-history[open] summary:after{transform:rotate(180deg)}
.league-history summary small{font-size:10px;font-weight:400;color:var(--muted)}
.league-history .league-course-list{padding:0 15px}
.league-history>button{margin:10px 15px 15px}
.league-footnote{font-size:10.5px;color:var(--muted);line-height:1.6;margin:0 2px 10px}
@media(max-width:1150px){
  .league-competition-main{grid-template-columns:minmax(0,1.3fr) minmax(260px,.9fr)}
  .league-ranking-head{flex-direction:column;align-items:stretch}
}
@media(max-width:900px){
  .league-scoreboard{grid-template-columns:repeat(2,minmax(0,1fr))}
  .league-competition-main{grid-template-columns:1fr}
  .league-aside-v2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  .league-history{grid-column:1/-1}
  .league-ranking-head{flex-direction:row;align-items:end}
}
@media(max-width:620px){
  .league-hero-v2{padding:19px;min-height:0}
  .league-hero-v2 h2{font-size:20px}
  .league-hero-v2 p{font-size:11.5px}
  .league-hero-mark{width:44px;height:44px;border-radius:12px;font-size:26px}
  .league-scoreboard{gap:8px}
  .league-scoreboard>article{padding:12px}
  .league-scoreboard b{font-size:22px}
  .league-ranking-head{flex-direction:column;align-items:stretch;padding:15px}
  .league-periods{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  .league-period-tab{font-size:10px;padding:9px 4px}
  .league-period-description{padding:9px 15px}
  .league-podium{padding:18px 12px 0;gap:6px}
  .league-podium-person b{font-size:10px}
  .league-list-head{flex-direction:column;align-items:stretch;padding:12px}
  .league-find input{width:100%}
  .league-ranking-table .league-rank-row{padding:12px}
  .league-aside-v2{grid-template-columns:1fr}
  .league-history{grid-column:auto}
  .league-paging{padding:12px}
}

/* Historical XP transparency (not all older bulk completions can be dated) */
.league-historical-note{display:block;margin-top:5px;font-size:10.5px;color:#795670;line-height:1.55}

/* Course only: closed modules hug their heading instead of stretching to the
   height of the competency / mentor sidebar. Keep a small, consistent gap. */
#courseRoot .course-layout > .modules {
  align-content: start;
  grid-auto-rows: max-content;
}

/* Course Content only: balanced vertical rhythm for the accordion cards.
   Keep natural row heights; avoid both sidebar-driven stretching and overly
   compressed collapsed summaries. */
#courseRoot .course-layout > .modules { gap:15px; }
#courseRoot .module-panel.collapsed .module-head {
  padding:14px 16px!important;
}
@media (max-width:760px) {
  #courseRoot .course-layout > .modules { gap:12px; }
  #courseRoot .module-panel.collapsed .module-head {
    padding:13px 14px!important;
  }
}

/* Contextual lesson completion: stay in selected module */
#objectRoot .object-continuation {
  margin-top:20px;
  border:1px solid #f3d6e6;
  border-radius:12px;
  padding:17px 18px;
  background:#fff9fc;
  display:grid;
  gap:9px;
  min-width:0;
}
#objectRoot .object-continuation>b {font-size:13px;color:#b90065}
#objectRoot .object-continuation>p {margin:0;font-size:12px;line-height:1.6;color:var(--muted)}
#objectRoot .object-continuation>button {justify-self:start;max-width:100%;white-space:normal;text-align:left;overflow-wrap:anywhere}
@media(max-width:760px) {
  #objectRoot .object-continuation {padding:13px 14px;gap:8px}
  #objectRoot .object-continuation>button {width:100%;justify-self:stretch}
}

/* Credential-first completion view — isolated from courses, learning media, dashboards */
#completionRoot .completion-page-v3{display:grid;gap:18px;width:100%;min-width:0;max-width:1280px;margin:0 auto}
#completionRoot .completion-hero-v3{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;position:relative;overflow:hidden;min-width:0;padding:30px 32px;border:1px solid #edd8e5;border-radius:19px;background:linear-gradient(118deg,#fff 0%,#fff 58%,#fff4fa 100%);box-shadow:var(--shadow)}
#completionRoot .completion-hero-v3:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;border:1px solid #f3d0e3;right:-95px;top:-147px;pointer-events:none}
#completionRoot .completion-hero-copy-v3{display:grid;gap:11px;min-width:0;position:relative;z-index:1;max-width:940px}
#completionRoot .completion-hero-v3 .eyebrow{font-size:11px;color:var(--pink);font-weight:800;letter-spacing:.06em}
#completionRoot .completion-hero-v3 h1{font-size:clamp(23px,2.4vw,32px);line-height:1.2;letter-spacing:-.02em;margin:0;color:var(--ink)}
#completionRoot .completion-hero-v3 h2{font-size:clamp(14px,1.5vw,18px);font-weight:700;line-height:1.4;margin:0;color:var(--ink)}
#completionRoot .completion-hero-v3 p{font-size:12.5px;color:var(--muted);line-height:1.7;margin:0;max-width:750px}
#completionRoot .completion-hero-icon-v3{display:grid;place-items:center;flex:0 0 62px;height:62px;border-radius:18px;font-size:28px;font-weight:800;color:#fff;background:var(--pink);box-shadow:0 8px 25px #df167d36;position:relative;z-index:1}
#completionRoot .completion-credential-summary-v3{display:flex;gap:8px 18px;align-items:center;flex-wrap:wrap;font-size:11px;line-height:1.6;color:var(--muted);margin:7px 0 1px}
#completionRoot .completion-credential-summary-v3 strong{color:var(--ink);font-weight:700;overflow-wrap:anywhere}
#completionRoot .completion-status-v3{color:#177953;font-size:11px;font-weight:800;display:inline-flex;align-items:center;gap:8px}
#completionRoot .completion-status-v3>span{display:inline-grid;place-items:center;width:20px;height:20px;background:#e2f6ed;border-radius:50%}
#completionRoot .completion-actions-v3{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:8px}
#completionRoot .completion-actions-v3 .primary,#completionRoot .completion-actions-v3 .secondary{font-size:12px;padding:12px 16px;min-height:42px;border-radius:10px;white-space:normal;text-align:center;line-height:1.4}
#completionRoot .completion-evidence-v3,#completionRoot .completion-more-v3{border:1px solid var(--line);border-radius:17px;background:#fff;padding:24px 28px;min-width:0}
#completionRoot .completion-evidence-title-v3{display:flex;gap:12px 30px;justify-content:space-between;align-items:end;flex-wrap:wrap;margin-bottom:17px}
#completionRoot .completion-evidence-title-v3 h2,#completionRoot .completion-next-v3 h2{font-size:17px;color:var(--ink);margin:5px 0 0}
#completionRoot .completion-evidence-title-v3 p{color:var(--muted);font-size:11px;line-height:1.6;max-width:460px;margin:0}
#completionRoot .completion-stats-v3{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#completionRoot .completion-stat-v3{padding:17px 20px;border:1px solid #ece5e9;border-radius:12px;background:#faf9fb;display:grid;gap:7px;min-width:0}
#completionRoot .completion-stat-v3 strong{font-size:28px;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
#completionRoot .completion-stat-v3 span{color:var(--muted);font-size:11px}
#completionRoot .completion-validation-v3{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;line-height:1.6;margin:15px 0 0}
#completionRoot .completion-validation-v3 span{color:#168657;font-weight:800}
#completionRoot .completion-more-v3{display:grid;gap:18px}
#completionRoot .completion-details-v3{border-bottom:1px solid var(--line);padding:0 0 15px;min-width:0}
#completionRoot .completion-details-v3 summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;font-size:12px;font-weight:750;min-height:28px}
#completionRoot .completion-details-v3 summary::-webkit-details-marker{display:none}
#completionRoot .completion-details-v3[open] summary>span{transform:rotate(180deg)}
#completionRoot .completion-details-v3>p{margin:12px 0;color:var(--muted);font-size:11px;line-height:1.7}
#completionRoot .completion-skills-v3{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}
#completionRoot .completion-skill-v3{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:9px;font-size:11px;min-width:0}
#completionRoot .completion-skill-v3 b{font-weight:650;overflow-wrap:anywhere}
#completionRoot .completion-skill-v3 span{white-space:nowrap;font-size:10px;color:var(--muted)}
#completionRoot .completion-next-v3{display:flex;justify-content:space-between;align-items:center;gap:22px}
#completionRoot .completion-next-v3 p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.7;max-width:680px}
#completionRoot .completion-secondary-actions-v3{display:flex;gap:9px;flex-wrap:wrap;flex:0 0 auto}
#completionRoot .completion-secondary-actions-v3 button{font-size:11px;padding:11px 14px}
.verify-brand img{width:165px;height:auto;object-fit:contain;display:block}
@media(max-width:760px){
  #completionRoot .completion-page-v3{gap:12px}
  #completionRoot .completion-hero-v3{padding:21px 18px;gap:10px}
  #completionRoot .completion-hero-icon-v3{width:38px;height:38px;flex-basis:38px;border-radius:12px;font-size:21px}
  #completionRoot .completion-hero-v3 h1{font-size:23px}
  #completionRoot .completion-hero-v3 h2{font-size:15px}
  #completionRoot .completion-hero-v3 p{font-size:12px}
  #completionRoot .completion-actions-v3{display:grid;grid-template-columns:1fr}
  #completionRoot .completion-actions-v3>*{width:100%;justify-content:center}
  #completionRoot .completion-evidence-v3,#completionRoot .completion-more-v3{padding:19px 17px}
  #completionRoot .completion-evidence-title-v3{display:grid;gap:9px}
  #completionRoot .completion-next-v3{align-items:stretch;flex-direction:column;gap:13px}
  #completionRoot .completion-secondary-actions-v3{flex:1 1 auto}
}
@media(max-width:520px){
  #completionRoot .completion-hero-v3{padding:19px 15px}
  #completionRoot .completion-hero-icon-v3{display:none}
  #completionRoot .completion-stats-v3,#completionRoot .completion-skills-v3{grid-template-columns:1fr}
  #completionRoot .completion-stat-v3{padding:13px 15px}
  #completionRoot .completion-stat-v3 strong{font-size:23px}
  #completionRoot .completion-secondary-actions-v3{display:grid;grid-template-columns:1fr}
  .verify-brand{align-items:flex-start;flex-wrap:wrap}
  .verify-brand img{width:155px}
}
