:root{--wine:#72152e;--wine2:#9e2443;--gold:#d2aa5a;--bg:#f5f5f7;--card:#fff;--ink:#201a1c;--muted:#766c70;--line:#ebe7e8;--green:#24715a;--sans:Inter,system-ui,sans-serif;--serif:"Cormorant Garamond",Georgia,serif}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);min-height:100vh;padding-bottom:94px}button{font:inherit}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:sticky;top:0;z-index:20;background:rgba(245,245,247,.88);backdrop-filter:blur(20px)}.brand{display:flex;align-items:center;gap:11px;border:0;background:none;color:var(--wine);padding:0;text-align:left;cursor:pointer}.brand-dice{width:39px;height:39px;display:grid;grid-template-columns:repeat(2,5px);grid-template-rows:repeat(2,5px);align-content:center;justify-content:center;gap:6px;border-radius:12px;background:linear-gradient(145deg,var(--wine),#4e0b1c);box-shadow:0 7px 18px rgba(114,21,46,.24)}.brand-dice i{width:5px;height:5px;border-radius:50%;background:#fff}.brand-dice i:nth-child(3){grid-column:2}.brand strong,.brand small{display:block}.brand strong{font:700 21px/19px var(--serif)}.brand small{font-size:9px;letter-spacing:1.7px;text-transform:uppercase}.profile-button{width:40px;height:40px;border:3px solid #fff;border-radius:50%;background:linear-gradient(145deg,var(--wine2),var(--wine));color:#fff;font-weight:700;font-size:12px;box-shadow:0 4px 14px rgba(50,25,31,.15);cursor:pointer}main{width:min(100%,1080px);margin:auto;padding:16px 18px 34px}.eyebrow{margin:0 0 6px;color:var(--wine2);font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(29px,7vw,48px);line-height:1.08;margin-bottom:14px;letter-spacing:-1px}h2{font-size:24px;letter-spacing:-.5px;margin-bottom:8px}h3{font-size:16px;margin-bottom:5px}.lead{font-size:15px;line-height:1.65;color:var(--muted);margin:0}.app-greeting{display:flex;align-items:center;justify-content:space-between;margin:3px 1px 18px}.app-greeting h1{font-size:27px;margin:0}.notification{width:42px;height:42px;border:0;border-radius:14px;background:#fff;display:grid;place-items:center;box-shadow:0 5px 18px rgba(35,22,27,.07)}.notification svg,.primary svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hero-card{height:260px;border-radius:28px;overflow:hidden;position:relative;box-shadow:0 18px 42px rgba(67,17,32,.18);isolation:isolate}.hero-card img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(46,5,17,.94) 0%,rgba(72,8,25,.72) 43%,rgba(55,5,18,.08) 76%)}.hero-copy{position:absolute;inset:0;padding:28px 26px;color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;max-width:70%}.hero-copy>span{font-size:10px;letter-spacing:2px;font-weight:800;color:#e8c87f;margin-bottom:8px}.hero-copy h2{font:700 29px/1.02 var(--serif);color:#fff;margin-bottom:8px}.hero-copy p{font-size:12px;line-height:1.4;opacity:.78;margin:0}.play-button{position:absolute;left:26px;top:24px;width:48px;height:48px;border:0;border-radius:50%;background:#fff;color:var(--wine);display:grid;place-items:center;box-shadow:0 8px 25px rgba(0,0,0,.18)}.play-button svg{width:23px;fill:currentColor;stroke:none}.progress-panel{display:grid;grid-template-columns:68px 1fr;gap:16px;align-items:center;background:#fff;border-radius:22px;padding:17px;margin-top:14px;box-shadow:0 7px 22px rgba(30,19,23,.055)}.progress-panel strong{font-size:15px}.progress-panel p{font-size:12px;color:var(--muted);margin:4px 0 10px}.progress-ring{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--wine) var(--progress),#eee8ea 0);position:relative}.progress-ring:after{content:"";position:absolute;inset:6px;background:#fff;border-radius:50%}.progress-ring span{position:relative;z-index:1;font-weight:800;color:var(--wine)}.progress-ring small{font-size:9px}.progress-track{height:5px;background:#eee9ea;border-radius:5px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--wine),var(--wine2));border-radius:5px}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px}.quick-grid button{border:0;background:#fff;border-radius:20px;padding:17px;text-align:left;box-shadow:0 7px 22px rgba(30,19,23,.045);cursor:pointer}.quick-grid strong,.quick-grid small{display:block}.quick-grid strong{font-size:14px;margin-top:12px}.quick-grid small{font-size:11px;color:var(--muted);margin-top:4px}.quick-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-weight:800;font-size:20px}.quick-icon.book{background:#fbecef;color:var(--wine)}.quick-icon.dice{background:#fff4db;color:#9b6d18}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:34px 2px 14px}.section-heading h2{margin:0}.text-link,.back{border:0;background:none;color:var(--wine);font-size:13px;font-weight:800;cursor:pointer}.module-list{display:grid;gap:12px}.module-card{width:100%;border:0;background:#fff;border-radius:21px;padding:16px;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;text-align:left;cursor:pointer;box-shadow:0 6px 20px rgba(30,19,23,.045);transition:.2s}.module-card:active{transform:scale(.985)}.module-number{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:#f8ecef;color:var(--wine);font-weight:800;font-size:16px}.module-card:nth-child(2n) .module-number{background:#fff4de;color:#94691a}.module-card.done .module-number{background:var(--green);color:#fff}.module-card small{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--wine2);font-weight:800}.module-card h3{margin:3px 0 5px}.module-card p{font-size:10px;color:var(--muted);margin:0}.mini-track{display:block;height:3px;background:#eee9ea;border-radius:3px;margin-top:8px;overflow:hidden}.mini-track i{display:block;height:100%;background:var(--wine2)}.chevron{color:#aaa1a4;font-size:22px}.badge{display:inline-flex;padding:6px 10px;border-radius:20px;background:#f8e9ed;color:var(--wine);font-size:10px;letter-spacing:1px;font-weight:800}.badge.done{background:#e4f2ed;color:var(--green)}.back{padding:4px 0 20px}.module-head{padding:8px 2px 22px}.module-head .badge{margin-bottom:15px}.module-head h1{margin-bottom:8px}.lesson-list{display:grid;gap:10px}.lesson{background:#fff;border:0;border-radius:18px;padding:15px;display:flex;align-items:center;gap:13px;box-shadow:0 5px 18px rgba(30,19,23,.04)}.check{flex:none;width:30px;height:30px;border-radius:50%;border:2px solid #dfd7da;background:#fff;color:#fff;cursor:pointer;font-weight:700}.lesson.done .check{background:var(--green);border-color:var(--green)}.lesson-content{flex:1}.lesson-content strong{display:block;font-size:14px}.lesson-content small{display:block;color:var(--muted);margin-top:4px;font-size:11px}.lesson-open{border:0;background:#f7ecef;color:var(--wine);border-radius:11px;padding:9px 11px;cursor:pointer;font-weight:800;font-size:12px}.lesson-detail,.reading-card{background:#fff;border-radius:24px;padding:24px;box-shadow:0 7px 24px rgba(30,19,23,.05)}.lesson-detail p{line-height:1.75;color:var(--muted)}.lesson-detail .primary{width:100%;margin-top:10px}.primary{border:0;border-radius:14px;padding:15px 20px;background:linear-gradient(135deg,var(--wine2),var(--wine));color:#fff;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 9px 20px rgba(114,21,46,.2)}.practice-intro{padding:8px 2px 20px}.dice-stage{background:radial-gradient(circle at 50% 12%,#a53550,#681126 65%);border-radius:28px;padding:24px 18px 27px;text-align:center;box-shadow:0 16px 36px rgba(75,13,31,.2);position:relative;overflow:hidden}.table-label{font-size:9px;color:#f2d89f;letter-spacing:2px;font-weight:800;margin-bottom:25px}.dice-row{display:flex;justify-content:center;gap:14px;margin:0 0 30px;perspective:700px}.die{width:72px;height:72px;border-radius:16px;background:linear-gradient(145deg,#fff,#e9e3df);box-shadow:inset -5px -6px 10px rgba(118,91,99,.14),inset 4px 4px 8px #fff,0 13px 20px rgba(21,4,10,.3);display:grid;grid-template:repeat(3,1fr)/repeat(3,1fr);padding:13px;transform:rotateX(8deg) rotateY(-6deg);transition:.2s}.die:nth-child(2){transform:translateY(-7px) rotateX(5deg) rotateY(7deg)}.die:nth-child(3){transform:rotateX(9deg) rotateY(5deg)}.die i{width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#d7b65e,#835814);place-self:center}.face-1 i{grid-area:2/2}.face-2 i:first-child{grid-area:1/1}.face-2 i:last-child{grid-area:3/3}.face-3 i:nth-child(1){grid-area:1/1}.face-3 i:nth-child(2){grid-area:2/2}.face-3 i:nth-child(3){grid-area:3/3}.face-4 i:nth-child(1){grid-area:1/1}.face-4 i:nth-child(2){grid-area:1/3}.face-4 i:nth-child(3){grid-area:3/1}.face-4 i:nth-child(4){grid-area:3/3}.face-5 i:nth-child(1){grid-area:1/1}.face-5 i:nth-child(2){grid-area:1/3}.face-5 i:nth-child(3){grid-area:2/2}.face-5 i:nth-child(4){grid-area:3/1}.face-5 i:nth-child(5){grid-area:3/3}.face-6 i:nth-child(1){grid-area:1/1}.face-6 i:nth-child(2){grid-area:1/3}.face-6 i:nth-child(3){grid-area:2/1}.face-6 i:nth-child(4){grid-area:2/3}.face-6 i:nth-child(5){grid-area:3/1}.face-6 i:nth-child(6){grid-area:3/3}.die.rolling{animation:roll .55s ease}.dice-stage .primary{background:#fff;color:var(--wine);box-shadow:0 8px 22px rgba(0,0,0,.18)}.reading-card{margin-top:14px}.reading-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:15px}.reading-item{background:#f7f5f6;padding:13px;border-radius:14px}.reading-item small{display:block;color:var(--muted);font-size:10px;margin-bottom:4px}.reading-item strong{color:var(--wine);font-size:13px}.reflection{width:100%;min-height:100px;border:1px solid var(--line);border-radius:15px;padding:14px;font:15px/1.6 var(--sans);resize:vertical;margin-top:14px}.reflection:focus{outline:2px solid rgba(158,36,67,.15);border-color:var(--wine2)}.saved-note{font-size:11px;color:var(--green);margin:8px 0 0}.bottom-nav{position:fixed;z-index:30;left:50%;bottom:10px;transform:translateX(-50%);width:min(calc(100% - 20px),500px);height:70px;border-radius:23px;background:rgba(255,255,255,.96);box-shadow:0 12px 36px rgba(33,18,23,.16);display:grid;grid-template-columns:repeat(3,1fr);padding:6px;backdrop-filter:blur(18px)}.bottom-nav button{border:0;border-radius:17px;background:none;color:#999094;font-size:10px;font-weight:700;cursor:pointer;display:grid;place-items:center;gap:1px}.bottom-nav svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bottom-nav button.active{background:#f8e9ed;color:var(--wine)}.toast{position:fixed;z-index:50;left:50%;bottom:92px;transform:translate(-50%,20px);background:#21191c;color:#fff;border-radius:13px;padding:11px 16px;font-size:12px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
@keyframes roll{0%{transform:rotate(0) scale(1)}45%{transform:rotate(130deg) scale(.82)}100%{transform:rotate(360deg) scale(1)}}@media(min-width:760px){body{padding-bottom:30px}.topbar{padding:0 34px}main{padding:30px 34px 60px}.hero-card{height:360px}.hero-copy{padding:38px;max-width:52%}.hero-copy h2{font-size:42px}.play-button{left:38px;top:34px}.progress-panel{margin-top:18px}.quick-grid{grid-template-columns:repeat(2,240px)}.module-list{grid-template-columns:repeat(2,1fr)}.bottom-nav{left:24px;top:50%;bottom:auto;transform:translateY(-50%);width:76px;height:255px;grid-template-columns:1fr;grid-template-rows:repeat(3,1fr)}.dice-stage{padding:34px}.die{width:96px;height:96px;padding:17px}.die i{width:12px;height:12px}.reading-grid{grid-template-columns:repeat(4,1fr)}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Aula completa: leitura, material, quiz e transição */
.lesson-die{position:relative;z-index:2;flex:none;width:62px;height:62px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#dedbe0);color:#741632;font-size:42px;line-height:1;box-shadow:0 15px 28px rgba(0,0,0,.35),inset -4px -5px 8px rgba(80,56,67,.18)}
.full-lesson{padding:clamp(22px,5vw,48px);max-width:860px;margin-left:auto;margin-right:auto}.section-kicker{font:700 10px/1.4 Sora,Inter,sans-serif;letter-spacing:1.4px;color:#ff8fa9}.lesson-intro{font-size:clamp(18px,2.5vw,21px);line-height:1.72!important;color:#f4f1f4!important;margin:14px 0 34px!important}.written-section{padding:25px 0;border-top:1px solid #2b2d35}.written-section h2{font:700 clamp(19px,3vw,23px)/1.3 Sora,Inter,sans-serif;color:#ffc857;margin-bottom:12px}.written-section p{font-size:16px;line-height:1.8!important;color:#d7d3d9!important;margin:0 0 9px}.written-section p:last-child{margin-bottom:0}
.download-card{display:grid;grid-template-columns:105px 1fr;gap:16px;align-items:center;margin:34px 0;padding:18px;border:1px solid rgba(255,200,87,.22);border-radius:20px;background:linear-gradient(145deg,rgba(255,200,87,.1),rgba(255,61,110,.06))}.download-card img{width:105px;aspect-ratio:1240/1754;object-fit:cover;object-position:top;border-radius:10px;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 25px rgba(0,0,0,.35)}.download-card h2{font-size:17px;margin:5px 0}.download-card p{font-size:13px;line-height:1.55!important;margin:0!important}.download-card a{grid-column:1/-1;display:flex;justify-content:center;text-decoration:none;border-radius:13px;padding:13px 17px;background:#ffc857;color:#1b1710;font-weight:800;font-size:13px}
.inline-quiz{margin:36px 0;padding:clamp(20px,4vw,32px);border-radius:22px;background:#121318;border:1px solid #30323a}.inline-quiz h2{font:700 24px Sora,Inter,sans-serif;margin:7px 0}.quiz-intro{font-size:14px;line-height:1.6!important;margin-bottom:23px!important}.quiz-questions{display:grid;gap:15px}.quiz-question{margin:0;padding:18px;border:1px solid #30323a;border-radius:17px}.quiz-question legend{padding:0 5px;font-weight:700;line-height:1.5;color:#f7f7fa}.quiz-question legend span{color:#ffc857;font:700 10px Sora,Inter,sans-serif;margin-right:9px}.quiz-options{display:grid;gap:8px;margin-top:13px}.quiz-options label{display:grid;grid-template-columns:22px 28px 1fr;align-items:center;gap:8px;padding:11px;border-radius:12px;background:#1d1f25;color:#d6d2d7;font-size:14px;line-height:1.45;cursor:pointer;border:1px solid transparent}.quiz-options input{accent-color:#ff3d6e;width:17px;height:17px}.option-letter{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#2a2c34;font-size:11px;font-weight:800}.quiz-question.answered .right-answer{border-color:rgba(65,211,162,.55);background:rgba(65,211,162,.1)}.quiz-question.answered .right-answer .option-letter{background:#41d3a2;color:#101114}.quiz-question.answered .chosen-wrong{border-color:rgba(255,92,133,.5);background:rgba(255,61,110,.09)}.quiz-feedback{min-height:20px;margin:10px 0 0!important;font-size:12px;line-height:1.45!important}.quiz-question.correct .quiz-feedback{color:#62e0b7!important}.quiz-question.incorrect .quiz-feedback{color:#ff9ab3!important}.quiz-score{margin-top:17px;padding:14px;border-radius:13px;background:#202229;color:#bdb8c0;font-size:13px}.quiz-score strong{color:#ffc857}
.practice-notebook{margin:38px 0;padding:clamp(20px,4vw,32px);border-radius:22px;background:linear-gradient(145deg,#1d1f25,#15161b);border:1px solid rgba(255,200,87,.2);box-shadow:inset 0 1px rgba(255,255,255,.03)}.notebook-head{display:flex;gap:15px;align-items:flex-start;padding-bottom:22px;border-bottom:1px solid #30323a}.notebook-head h2{font:700 clamp(20px,3vw,25px)/1.3 Sora,Inter,sans-serif;margin:6px 0}.notebook-head p{font-size:13px;line-height:1.55!important;margin:0!important}.notebook-icon{width:46px;height:46px;flex:none;border-radius:14px;display:grid;place-items:center;background:rgba(255,200,87,.13);color:#ffc857;font-size:23px}.practice-fields{display:grid;gap:22px;margin-top:25px}.practice-fields label>span{display:grid;grid-template-columns:32px 1fr;gap:8px;align-items:start;color:#ece8ed;font-size:15px;font-weight:650;line-height:1.5}.practice-fields label b{color:#ffc857;font:800 11px/1.9 Sora,Inter,sans-serif}.practice-fields textarea{width:100%;min-height:94px;margin-top:10px;padding:14px 15px;border:1px solid #383a44;border-radius:13px;background:#101116;color:#f7f7fa;font:15px/1.6 Inter,sans-serif;resize:vertical}.practice-fields textarea:focus{outline:2px solid rgba(255,200,87,.16);border-color:#c79d47}.practice-fields textarea::placeholder{color:#706b74}.practice-closing{margin-top:24px;padding:15px;border-radius:13px;background:rgba(255,61,110,.09);color:#ffafc2;font-size:13px;line-height:1.55}.autosave-status{margin:16px 0 0!important;color:#62e0b7!important;font-size:12px;line-height:1.4!important}
.practice-download{display:grid;grid-template-columns:92px 1fr;gap:14px;align-items:center;margin-top:24px;padding:15px;border:1px solid #353741;border-radius:17px;background:#101116}.practice-download img{width:92px;aspect-ratio:1240/1754;object-fit:cover;object-position:top;border-radius:8px;border:1px solid rgba(255,255,255,.12)}.practice-download strong{display:block;margin:5px 0;color:#f7f7fa;font-size:14px}.practice-download p{margin:0!important;color:#9f9aa3!important;font-size:12px;line-height:1.5!important}.practice-download a{grid-column:1/-1;display:flex;justify-content:center;padding:12px 16px;border-radius:12px;background:linear-gradient(135deg,#ff5c85,#e92759);color:#fff;text-decoration:none;font-size:13px;font-weight:800}.practice-download a:focus-visible{outline:3px solid rgba(255,200,87,.5);outline-offset:3px}
.transition-card{margin:34px 0 22px;padding:22px;border-left:3px solid #ff3d6e;border-radius:0 16px 16px 0;background:linear-gradient(90deg,rgba(255,61,110,.12),rgba(255,61,110,.03))}.transition-card p{font-size:17px;line-height:1.7!important;color:#f4f1f4!important;margin:8px 0 0!important}.complete-lesson{width:100%}
@media(min-width:700px){.download-card{grid-template-columns:125px 1fr auto}.download-card img{width:125px}.download-card a{grid-column:auto}.practice-download{grid-template-columns:105px 1fr auto}.practice-download img{width:105px}.practice-download a{grid-column:auto}.lesson-die{width:76px;height:76px;font-size:52px}}

/* Dados fotográficos e mesa realista */
.mini-real-die{position:relative;display:block;width:100%;height:100%}.mini-real-die>img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 9px 10px rgba(0,0,0,.38))}.photo-pips{position:absolute;left:27.5%;top:16.5%;width:45%;height:45%;display:grid;grid-template:repeat(3,1fr)/repeat(3,1fr);transform:rotate(45deg)}.photo-pips i{width:32%;aspect-ratio:1;border-radius:50%;background:transparent;place-self:center}.photo-pips i.on{background:radial-gradient(circle at 32% 28%,#ff6389,#b1123d 46%,#56091f 78%);box-shadow:inset 2px 2px 3px rgba(255,255,255,.32),inset -2px -2px 3px rgba(50,0,16,.45),0 2px 3px rgba(0,0,0,.42)}
.quick-icon.dice{padding:1px;background:rgba(255,200,87,.1);overflow:visible}.quick-icon.dice .photo-pips i.on{box-shadow:none}.lesson-die{padding:0;background:none!important;box-shadow:none!important;color:inherit!important}.lesson-die .mini-real-die{width:100%;height:100%}
.real-table{min-height:500px;padding:22px 18px 25px;background-image:linear-gradient(rgba(7,7,9,.03),rgba(7,7,9,.08)),url('mesa-real.webp');background-size:cover;background-position:center;box-shadow:0 20px 55px rgba(0,0,0,.48),inset 0 0 0 1px rgba(255,200,87,.18)}.real-table .table-label{position:relative;z-index:4;display:inline-flex;padding:8px 12px;border-radius:99px;background:rgba(12,12,15,.72);border:1px solid rgba(255,200,87,.28);backdrop-filter:blur(8px);margin-bottom:0}.real-dice-area{height:365px;position:relative;margin:2px auto 8px;isolation:isolate}.real-die-object{position:absolute;left:var(--x);top:var(--y);width:clamp(76px,22vw,112px);aspect-ratio:1;transform:translate(-50%,-50%) rotate(var(--r)) scale(var(--s));transform-origin:center;filter:drop-shadow(0 16px 14px rgba(0,0,0,.55));transition:left .48s ease,top .48s ease,transform .48s ease;z-index:2}.real-die-object>img{display:block;width:100%;height:100%;object-fit:contain}.real-die-object .photo-pips i.on{background:radial-gradient(circle at 35% 30%,#c72e57,#5a0a22 72%);box-shadow:inset 2px 2px 3px rgba(255,255,255,.24),0 2px 2px rgba(0,0,0,.3)}.real-die-object.tossing{animation:photo-toss .68s cubic-bezier(.2,.8,.25,1)}.real-table .primary{position:relative;z-index:5;background:linear-gradient(135deg,#fff,#e8e3e6);color:#6e1230;box-shadow:0 12px 28px rgba(0,0,0,.35)}
@keyframes photo-toss{0%{transform:translate(-50%,-50%) rotate(var(--r)) scale(var(--s))}38%{transform:translate(-50%,-105%) rotate(calc(var(--r) + 155deg)) scale(calc(var(--s) * .82))}100%{transform:translate(-50%,-50%) rotate(calc(var(--r) + 360deg)) scale(var(--s))}}
@media(min-width:760px){.real-table{min-height:590px}.real-dice-area{height:440px}.real-die-object{width:126px}}
/* Liberação progressiva do módulo prático */
.module-card.locked{border-color:rgba(255,200,87,.16);background:linear-gradient(145deg,#1b1c21,#16171b);cursor:pointer}.module-card.locked .module-number{background:rgba(255,200,87,.11);color:#ffc857;font-size:18px}.module-card.locked h3{color:#c9c4cb}.module-card.locked p{color:#a89e89}.module-card.locked .mini-track i{background:linear-gradient(90deg,#b9852e,#ffc857)}.quick-grid button.quick-locked{border-color:rgba(255,200,87,.15);background:linear-gradient(145deg,#1b1c21,#16171b)}.quick-locked .quick-icon.dice{background:rgba(255,200,87,.1);color:#ffc857;font-size:18px}.quick-locked small{color:#b9a77f}
.locked-practice{max-width:680px;margin:7vh auto 0;padding:clamp(28px,6vw,52px);border-radius:28px;text-align:center;background:radial-gradient(circle at 50% 0,rgba(255,200,87,.11),transparent 38%),linear-gradient(145deg,#1d1e24,#15161a);border:1px solid rgba(255,200,87,.18);box-shadow:0 24px 60px rgba(0,0,0,.38)}.lock-emblem{width:78px;height:78px;margin:0 auto 22px;border-radius:24px;display:grid;place-items:center;background:rgba(255,200,87,.1);border:1px solid rgba(255,200,87,.19);font-size:32px;box-shadow:0 0 36px rgba(255,200,87,.08)}.locked-practice .eyebrow{color:#ffc857}.locked-practice h1{font-family:Sora,Inter,sans-serif;font-size:clamp(28px,6vw,42px);margin:10px 0 13px}.locked-practice .lead{max-width:520px;margin:0 auto}.unlock-progress{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:30px 0 11px;text-align:left}.unlock-progress strong,.unlock-progress span{display:block}.unlock-progress strong{font:700 18px Sora,Inter,sans-serif;color:#f7f7fa}.unlock-progress span{margin-top:4px;color:#99939c;font-size:12px}.unlock-progress>b{color:#ffc857;font:800 22px Sora,Inter,sans-serif}.locked-practice .progress-track{height:7px}.remaining-note{margin:12px 0 25px;color:#b9b3bc;font-size:13px}.locked-practice .primary{width:100%}
.reset-progress{width:100%;display:flex;align-items:center;gap:12px;margin-top:10px;padding:13px 16px;border:1px solid #eadfe2;border-radius:17px;background:rgba(255,255,255,.72);color:var(--wine);text-align:left;cursor:pointer}.reset-progress>span:first-child{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:11px;background:#f8e9ed;font-size:20px;font-weight:800}.reset-progress strong,.reset-progress small{display:block}.reset-progress strong{font-size:13px}.reset-progress small{margin-top:2px;color:var(--muted);font-size:11px}.reset-progress:disabled{opacity:.45;cursor:default}.reset-progress:focus-visible{outline:3px solid rgba(158,36,67,.22);outline-offset:2px}

/* O e-book assume o papel de consulta; nas aulas, permanece apenas o caderno de prática. */
.full-lesson:not(.bonus-lesson)>.download-card{display:none}
.simulator-journey-card{border:1px solid rgba(255,200,87,.38);background:linear-gradient(135deg,#28151d,#17181e);box-shadow:0 12px 30px rgba(76,12,32,.18)}.simulator-journey-card .lesson-content small{color:#ffc857}.simulator-journey-card .lesson-content strong{color:#fff;margin-top:4px}.simulator-journey-card .lesson-content p{color:#c9c3cb;font-size:12px;line-height:1.5;margin-top:7px}.simulator-journey-card .lesson-content p b{color:#ff9ab3}.simulator-step{flex:none;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:rgba(255,200,87,.13);color:#ffc857}.simulator-journey-card .lesson-open{background:linear-gradient(135deg,#ff5c85,#e92759);color:#fff}
.simulator-objective{display:flex;align-items:center;gap:13px;margin-top:20px;padding:16px;border:1px solid rgba(255,200,87,.24);border-radius:17px;background:linear-gradient(135deg,rgba(255,200,87,.1),rgba(255,61,110,.06))}.simulator-objective>span{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:13px;background:rgba(255,200,87,.13);color:#ffc857;font-size:20px}.simulator-objective small,.simulator-objective strong{display:block}.simulator-objective small{color:#ffc857;font-size:10px;letter-spacing:1.2px;font-weight:800}.simulator-objective strong{margin-top:5px;color:#f4f1f4;font-size:14px;line-height:1.5}
.simulator-next{display:grid;gap:16px;margin-top:16px;padding:22px;border:1px solid rgba(255,200,87,.24);border-radius:22px;background:linear-gradient(135deg,#21141a,#17181e)}.simulator-next small{color:#ffc857;font-size:10px;letter-spacing:1.2px;font-weight:800}.simulator-next h2{margin:6px 0;color:#fff}.simulator-next p{margin:0;color:#bdb7c0;font-size:14px;line-height:1.6}.simulator-next .primary{width:100%}@media(min-width:700px){.simulator-next{grid-template-columns:1fr auto;align-items:center}.simulator-next .primary{width:auto}}
.course-celebration{position:relative;overflow:hidden;max-width:760px;margin:3vh auto 0;padding:clamp(28px,7vw,60px);border:1px solid rgba(255,200,87,.28);border-radius:30px;text-align:center;background:radial-gradient(circle at 50% 8%,rgba(255,200,87,.17),transparent 35%),linear-gradient(145deg,#24151c,#111217 72%);box-shadow:0 25px 70px rgba(0,0,0,.42)}.celebration-glow{position:absolute;inset:-30% 15% auto;height:280px;border-radius:50%;background:rgba(255,61,110,.11);filter:blur(50px);pointer-events:none}.celebration-dice{position:relative;display:flex;justify-content:center;align-items:center;gap:5px;height:92px;margin-bottom:20px}.celebration-dice span{display:block;width:76px;height:76px}.celebration-dice span:nth-child(1){transform:rotate(-12deg) translateY(8px)}.celebration-dice span:nth-child(2){transform:translateY(-8px);z-index:2}.celebration-dice span:nth-child(3){transform:rotate(12deg) translateY(8px)}.course-celebration .eyebrow{color:#ffc857}.course-celebration h1{position:relative;margin:10px auto 15px;max-width:600px;color:#fff;font:800 clamp(30px,7vw,52px)/1.08 Sora,Inter,sans-serif}.celebration-lead{max-width:620px;margin:0 auto;color:#d0cad2;font-size:16px;line-height:1.75}.celebration-message{display:flex;gap:13px;align-items:flex-start;margin:28px 0 16px;padding:19px;text-align:left;border-radius:18px;background:rgba(255,61,110,.09);border:1px solid rgba(255,92,133,.18)}.celebration-message span{color:#ff6e94;font-size:20px}.celebration-message p{margin:0;color:#eee9ef;font-size:14px;line-height:1.65}.celebration-achievement{padding:20px;border-radius:18px;background:rgba(255,200,87,.09);border:1px solid rgba(255,200,87,.2)}.celebration-achievement small,.celebration-achievement strong{display:block}.celebration-achievement small{color:#ffc857;font-size:10px;letter-spacing:1.3px;font-weight:800}.celebration-achievement strong{margin-top:7px;color:#fff;font-size:15px;line-height:1.55}.celebration-actions{display:grid;gap:10px;margin-top:24px}.celebration-actions .primary{width:100%}.celebration-secondary{width:100%;padding:14px;border:1px solid #3a343b;border-radius:14px;background:transparent;color:#d7d1d8;font-weight:800;cursor:pointer}@media(min-width:620px){.celebration-actions{grid-template-columns:1fr 1fr}}
.celebration-quote{position:relative;margin:27px 0 0;padding:23px 20px;border-top:1px solid rgba(255,200,87,.3);border-bottom:1px solid rgba(255,200,87,.3)}.celebration-quote small{color:#ffc857;font-size:10px;letter-spacing:1.4px;font-weight:800}.celebration-quote blockquote{max-width:590px;margin:10px auto 0;color:#fff;font:600 clamp(18px,4vw,23px)/1.55 Sora,Inter,sans-serif}
.course-celebration>*:not(.celebration-glow){position:relative;z-index:2}.celebration-atmosphere{height:390px;margin:-20px -20px 18px;overflow:hidden;border-radius:24px;background:radial-gradient(circle at 50% 36%,rgba(255,255,255,.22),rgba(255,200,87,.11) 32%,rgba(255,61,110,.08) 55%,transparent 75%);pointer-events:none}.celebration-atmosphere img{position:absolute;z-index:2;left:50%;top:0;width:min(82%,360px);height:350px;object-fit:contain;object-position:center top;opacity:0;filter:drop-shadow(0 0 24px rgba(255,255,255,.35)) drop-shadow(0 0 34px rgba(255,61,110,.25));animation:bright-entrance 5.6s cubic-bezier(.2,.75,.25,1) .1s 1 both}.celebration-atmosphere .celebration-dice{position:absolute;z-index:4;left:50%;bottom:0;transform:translateX(-50%);display:flex;justify-content:center;align-items:center;gap:2px;width:100%;height:112px;margin:0;background:linear-gradient(0deg,rgba(17,18,23,.96),rgba(17,18,23,.45) 58%,transparent)}.celebration-atmosphere .celebration-dice span{width:94px;height:94px;filter:drop-shadow(0 0 16px rgba(255,255,255,.48))}.smoke{position:absolute;z-index:3;bottom:8%;width:90px;height:230px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(255,255,255,.48),rgba(240,236,238,.2) 38%,transparent 72%);filter:blur(10px);opacity:0;transform-origin:bottom center;animation:smoke-rise-bright 5.8s ease-out 1 both}.smoke-one{left:8%;animation-delay:.1s}.smoke-two{left:44%;width:105px;height:260px;animation-delay:.8s}.smoke-three{right:4%;width:78px;height:210px;animation-delay:1.5s}@keyframes bright-entrance{0%{opacity:0;transform:translate(-50%,35px) scale(.86)}18%{opacity:1}72%{opacity:.94;transform:translate(-50%,0) scale(1)}100%{opacity:.78;transform:translate(-50%,-5px) scale(1.01)}}@keyframes smoke-rise-bright{0%{opacity:0;transform:translateY(80px) scale(.65) rotate(-4deg)}18%{opacity:.7}65%{opacity:.4}100%{opacity:0;transform:translateY(-300px) scale(1.6) rotate(10deg)}}.celebration-replay{width:100%;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;margin-top:12px;padding:14px 16px;border:1px solid rgba(255,200,87,.24);border-radius:18px;background:linear-gradient(135deg,#28151d,#17181e);color:#fff;text-align:left;cursor:pointer}.celebration-replay>span:first-child{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:rgba(255,200,87,.12);color:#ffc857;font-size:19px}.celebration-replay strong,.celebration-replay small{display:block}.celebration-replay strong{font-size:14px}.celebration-replay small{margin-top:3px;color:#aaa3ac;font-size:11px}.celebration-replay>b{color:#ffc857;font-size:25px}@media(prefers-reduced-motion:reduce){.celebration-atmosphere img,.smoke{animation:none}.celebration-atmosphere img{opacity:.9;transform:translateX(-50%)}.smoke{opacity:.25}}
.celebration-atmosphere{height:455px}.celebration-atmosphere img{height:420px;animation:image-to-backdrop 7s cubic-bezier(.2,.7,.25,1) .1s 1 both}.celebration-overlay{position:absolute;z-index:5;inset:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 22px 116px;text-align:center}.celebration-overlay:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(12,12,16,.05) 38%,rgba(12,12,16,.7) 70%,rgba(12,12,16,.96) 100%);opacity:0;animation:overlay-darken 2.4s ease 2.2s 1 both}.celebration-overlay .eyebrow,.celebration-overlay h1{opacity:0;transform:translateY(18px);animation:text-over-image 1.8s ease 3s 1 both}.celebration-overlay h1{margin:8px auto 0;text-shadow:0 3px 18px rgba(0,0,0,.9);animation-delay:3.2s}.celebration-overlay .eyebrow{text-shadow:0 2px 10px rgba(0,0,0,.9)}@keyframes image-to-backdrop{0%{opacity:0;transform:translate(-50%,38px) scale(.86);filter:brightness(1.2) drop-shadow(0 0 30px rgba(255,255,255,.5))}18%{opacity:1;filter:brightness(1.18) drop-shadow(0 0 34px rgba(255,255,255,.55))}48%{opacity:1;transform:translate(-50%,0) scale(1);filter:brightness(1.05) drop-shadow(0 0 24px rgba(255,255,255,.34))}100%{opacity:.42;transform:translate(-50%,-7px) scale(1.02);filter:brightness(.55) saturate(.8)}}@keyframes overlay-darken{to{opacity:1}}@keyframes text-over-image{to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.celebration-overlay:before,.celebration-overlay .eyebrow,.celebration-overlay h1{animation:none;opacity:1;transform:none}.celebration-atmosphere img{animation:none;opacity:.48;transform:translateX(-50%);filter:brightness(.62)}.celebration-overlay:before{opacity:1}}
