:root{
  --ink:#171717;
  --ink-2:#242424;
  --ink-3:#343434;
  --cream:#f3e8d6;
  --cream-2:#fbf7ef;
  --surface:#fffdf9;
  --orange:#f8ac32;
  --orange-2:#ffbc4f;
  --orange-dark:#a55e00;
  --muted:#756c61;
  --line:#e4d7c5;
  --line-dark:#3b3b3b;
  --ok:#167545;
  --danger:#b42318;
  --info:#245e9b;
  --radius-sm:14px;
  --radius:22px;
  --radius-lg:32px;
  --shadow-sm:0 8px 24px rgba(26,22,17,.07);
  --shadow:0 20px 55px rgba(26,22,17,.12);
  --header-h:78px;
  --content:1320px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;min-height:100%;overflow-y:auto}
body{margin:0;min-height:100%;overflow-y:auto;background:var(--cream-2);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
[hidden]{display:none!important}
::selection{background:rgba(248,172,50,.35)}
.skip-link{position:fixed;top:-80px;left:14px;z-index:9999;background:#fff;color:#000;padding:10px 14px;border-radius:10px;box-shadow:var(--shadow-sm)}
.skip-link:focus{top:14px}
.container{width:min(var(--content),calc(100% - 48px));margin-inline:auto}
.app-shell{min-height:100vh;display:flex;flex-direction:column}
.site-main{flex:1;padding-top:var(--header-h)}

/* Header */
.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:rgba(23,23,23,.97);color:white;border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px)}
.header-inner{min-height:var(--header-h);display:flex;align-items:center;gap:22px}
.brand{display:inline-flex;align-items:center;gap:11px;font-weight:950;letter-spacing:.035em;color:var(--orange);font-size:1.28rem;white-space:nowrap}
.brand-mark{width:24px;height:21px;background:var(--orange);clip-path:polygon(0 0,100% 0,89% 100%,59% 100%,59% 58%,41% 58%,41% 100%,11% 100%);flex:none}
.nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.nav a,.nav button{color:#eee;background:transparent;border:0;padding:10px 12px;border-radius:12px;font-weight:650;transition:.18s ease}
.nav a:hover,.nav a.active,.nav button:hover{background:rgba(255,255,255,.085);color:white}
.header-user{display:flex;align-items:center;gap:8px}
.user-chip{display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.08);padding:6px 10px 6px 6px;border:1px solid rgba(255,255,255,.06);border-radius:999px}
.user-chip:hover{background:rgba(255,255,255,.12)}
.mini-avatar{width:32px;height:32px;border-radius:50%;background:var(--orange);color:#171717;display:grid;place-items:center;font-weight:950;font-size:.82rem}
.menu-toggle{display:none;margin-left:auto;border:0;background:rgba(255,255,255,.06);color:white;width:44px;height:44px;border-radius:12px}
.menu-toggle span{display:block;width:22px;height:2px;background:white;margin:5px auto;border-radius:99px}

/* Buttons */
.btn{border:1px solid transparent;border-radius:15px;padding:12px 18px;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease;min-height:46px;white-space:nowrap;position:relative}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0) scale(.985)}
.btn:focus-visible,.icon-btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.file-trigger:focus-visible{outline:3px solid rgba(248,172,50,.45);outline-offset:3px}
.btn-primary{background:linear-gradient(180deg,#ffc45a 0%,var(--orange) 100%);color:var(--ink);border-color:#cf8e27;box-shadow:0 14px 30px rgba(248,172,50,.24), inset 0 1px 0 rgba(255,255,255,.28)}
.btn-primary:hover{background:linear-gradient(180deg,#ffd06f 0%,var(--orange-2) 100%);box-shadow:0 18px 34px rgba(248,172,50,.3)}
.btn-dark{background:linear-gradient(180deg,#2d2d2d 0%,var(--ink) 100%);color:white;border-color:#343434;box-shadow:0 10px 26px rgba(0,0,0,.16)}
.btn-dark:hover{background:linear-gradient(180deg,#363636 0%,#202020 100%)}
.btn-outline{background:#fff;color:var(--ink);border:1px solid #cdb99a;box-shadow:0 8px 20px rgba(42,33,22,.04)}
.btn-outline:hover{border-color:#b28a51;background:#fffaf2;box-shadow:0 12px 24px rgba(42,33,22,.07)}
.btn-ghost{background:rgba(255,255,255,.08);color:white;border-color:rgba(255,255,255,.08)}
.btn-ghost:hover{background:rgba(255,255,255,.14)}
.btn-danger{background:#fff5f4;color:#92271e;border:1px solid #efc1bc;box-shadow:0 8px 18px rgba(146,39,30,.08)}
.btn.small{min-height:38px;padding:8px 12px;font-size:.88rem;border-radius:12px}
.btn[disabled]{opacity:.58;cursor:not-allowed;transform:none}
.btn.loading{position:relative;color:transparent!important}
.btn.loading::after{content:"";position:absolute;width:18px;height:18px;border:2px solid rgba(23,23,23,.25);border-top-color:var(--ink);border-radius:50%;animation:spin .65s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* Home */
.hero{padding:0;background:#111}
.hero-banner{width:100%;overflow:hidden;background:#111}
.hero-banner img{width:100%;height:clamp(430px,42vw,690px);object-fit:cover;object-position:center;display:block}
.home-intro{padding:76px 0 70px;background:var(--cream-2)}
.home-intro-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:64px;align-items:center}
.home-intro-copy{max-width:690px}
.home-intro-copy h1{font-size:clamp(2.4rem,4vw,4.8rem);letter-spacing:-.045em;margin-bottom:18px}
.home-intro-copy p{font-size:1.08rem;color:var(--muted);max-width:620px}
.home-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:26px}
.home-highlight{background:var(--ink);color:white;border-radius:var(--radius-lg);padding:30px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.home-highlight::after{content:"";position:absolute;width:260px;height:260px;border:58px solid var(--orange);border-radius:50%;right:-140px;bottom:-135px;opacity:.92}
.home-highlight>*{position:relative;z-index:1}
.home-highlight .eyebrow{color:var(--orange)}
.home-highlight h2{font-size:clamp(1.8rem,3vw,2.65rem);max-width:430px}
.home-highlight p{color:#cfc7bd;max-width:430px}
.home-highlight-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:26px}
.mini-feature{border-top:1px solid #3f3f3f;padding-top:15px}
.mini-feature strong{display:block;color:var(--orange);font-size:1.35rem}
.mini-feature span{font-size:.85rem;color:#cfc7bd}
.home-features{padding:72px 0;background:#efe1cc}
.home-features .section-head{max-width:760px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.feature-card{background:rgba(255,255,255,.78);border:1px solid rgba(185,163,132,.45);border-radius:26px;padding:27px;min-height:220px;box-shadow:0 10px 28px rgba(38,30,20,.05);transition:.18s ease}
.feature-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.feature-number{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--orange);font-weight:950;margin-bottom:32px}
.feature-card h3{font-size:1.3rem}
.home-steps{padding:82px 0;background:var(--ink);color:white}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#383838;border:1px solid #383838;border-radius:28px;overflow:hidden;margin-top:28px}
.step-card{background:#202020;padding:32px;min-height:250px}
.step-index{font-weight:950;color:var(--orange);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}
.step-card h3{font-size:1.4rem;margin-top:35px}
.step-card p{color:#bcb5ac}
.home-cta{padding:70px 0;background:var(--cream-2)}
.cta-panel{background:var(--orange);border-radius:32px;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:var(--shadow-sm)}
.cta-panel h2{max-width:700px;font-size:clamp(1.8rem,3vw,3rem);margin-bottom:5px}
.cta-panel p{margin:0;color:#5f3a00}

/* Typography / common layout */
.section{padding:66px 0}
.section.soft{background:#efe1cc}
.section.dark{background:var(--ink);color:white}
.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}
.section-head.center{text-align:center;display:block}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-weight:950;color:var(--orange-dark);font-size:.76rem}
.dark .eyebrow,.home-steps .eyebrow{color:var(--orange)}
h1,h2,h3{line-height:1.1;margin:0 0 10px;letter-spacing:-.025em}
h1{font-size:clamp(2.2rem,4vw,4.3rem)}
h2{font-size:clamp(1.75rem,3vw,2.8rem)}
h3{font-size:1.17rem}
p{margin:0 0 12px}
.muted{color:var(--muted)}
.dark .muted{color:#c8c1b8}

/* App pages */
.page-hero{padding:52px 0 30px;background:linear-gradient(180deg,#f6eddf 0%,var(--cream-2) 100%);border-bottom:1px solid rgba(217,199,174,.7)}
.page-hero.dark{background:var(--ink);color:white;border:0}
.page-title-wrap{display:flex;justify-content:space-between;align-items:end;gap:18px}
.page-title-wrap>div:first-child{min-width:0}
.panel-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.88fr);gap:20px}
.stack{display:grid;gap:16px}
.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.four-col{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 8px 22px rgba(42,33,22,.035)}
.dark .card{background:#222;border-color:#383838;color:white}
.card:hover{border-color:#d5c1a3}
.stats-grid,.cards-grid,.admin-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.stat-card{position:relative;overflow:hidden}
.stat-card::after{content:"";position:absolute;right:-24px;top:-24px;width:86px;height:86px;border-radius:50%;background:rgba(248,172,50,.14)}
.stat-card strong{display:block;font-size:2rem;letter-spacing:-.04em;margin:7px 0}
.stat-card small{color:var(--muted)}
.progress{height:10px;background:#eadfce;border-radius:999px;overflow:hidden}
.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--orange),var(--orange-2));border-radius:999px}

/* Forms */
.form-card{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow-sm)}
.form-grid{display:grid;gap:16px}
.field{display:grid;gap:7px}
.field label,.field .label{font-weight:800;font-size:.88rem}
.field input,.field select,.field textarea{width:100%;border:1px solid #cfbea6;background:#fff;border-radius:15px;padding:12px 14px;color:#171717;min-height:48px;transition:.15s border,.15s box-shadow,.15s background;box-shadow:0 2px 0 rgba(0,0,0,.02) inset}
.field input::placeholder,.field textarea::placeholder{color:#9a8f82}
.field input:hover,.field select:hover,.field textarea:hover{border-color:#c9aa77;background:#fffdfa}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--orange-dark);box-shadow:0 0 0 4px rgba(248,172,50,.12),0 8px 18px rgba(248,172,50,.06);outline:none;background:#fff}
.field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:54px;background-image:linear-gradient(45deg,transparent 50%,var(--orange-dark) 50%),linear-gradient(135deg,var(--orange-dark) 50%,transparent 50%),linear-gradient(to right,rgba(0,0,0,.08),rgba(0,0,0,.08));background-position:calc(100% - 22px) calc(50% - 3px),calc(100% - 16px) calc(50% - 3px),calc(100% - 42px) 50%;background-size:6px 6px,6px 6px,1px 56%;background-repeat:no-repeat}
.field select::-ms-expand{display:none}
.field select option{color:#171717}
.field textarea{resize:vertical;min-height:118px}
.help{font-size:.81rem;color:var(--muted)}
.field-error{color:var(--danger);font-size:.84rem}

.username-input-wrap{display:flex;align-items:center;border:1px solid #cfbea6;background:#fff;border-radius:15px;min-height:48px;overflow:hidden;transition:.15s border,.15s box-shadow,.15s background;box-shadow:0 2px 0 rgba(0,0,0,.02) inset}
.username-input-wrap>span{padding:0 0 0 14px;color:#8d6a32;font-weight:900}
.field .username-input-wrap input{border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0;padding-left:5px;min-width:0}
.username-input-wrap:hover{border-color:#c9aa77;background:#fffdfa}
.username-input-wrap:focus-within{border-color:var(--orange-dark);box-shadow:0 0 0 4px rgba(248,172,50,.12),0 8px 18px rgba(248,172,50,.06);background:#fff}
.profile-username{color:#a56600!important;font-weight:850;font-size:.86rem;margin:2px 0 4px!important}
.form-message{padding:12px 14px;border-radius:12px;font-size:.9rem}
.form-message.ok{background:#e8f5ed;color:#0f5d34;border:1px solid #b7dfc7}
.form-message.error{background:#fff0ee;color:#92271e;border:1px solid #efc6c1}

/* Auth */
.auth-shell{min-height:calc(100vh - var(--header-h));padding:48px 24px;background:radial-gradient(circle at 8% 10%,rgba(248,172,50,.16),transparent 25%),linear-gradient(135deg,#f7efe3,var(--cream-2));display:grid;place-items:center}
.auth-layout{width:min(1040px,100%);display:grid;grid-template-columns:.82fr 1.18fr;background:#fff;border:1px solid var(--line);border-radius:32px;overflow:hidden;box-shadow:var(--shadow)}
.auth-side{background:var(--ink);color:white;padding:44px 40px;display:flex;flex-direction:column;justify-content:space-between;min-height:590px;position:relative;overflow:hidden}
.auth-side::after{content:"";position:absolute;width:360px;height:360px;border:74px solid var(--orange);border-radius:50%;left:-210px;bottom:-210px;opacity:.9}
.auth-side>*{position:relative;z-index:1}
.auth-side .brand{font-size:1.5rem}
.auth-side h2{font-size:clamp(2rem,3vw,3.35rem);max-width:420px}
.auth-side p{color:#c9c2b9;max-width:420px}
.auth-points{display:grid;gap:12px;margin-top:26px}
.auth-point{display:flex;gap:11px;align-items:flex-start;color:#e8e3dd;font-size:.92rem}
.auth-point-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:var(--orange);color:#171717;font-weight:900;flex:none}
.auth-card{padding:42px 46px;display:grid;align-content:center;background:#fff}
.auth-card .form-card{border:0;box-shadow:none;padding:0;background:transparent}
.auth-brand{display:none}
.auth-links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:4px;font-size:.9rem}
.auth-links a{color:#8a5100;font-weight:800}

/* Profile/dashboard */
.avatar-xl{width:92px;height:92px;border-radius:50%;background:var(--orange);display:grid;place-items:center;font-size:2rem;font-weight:950;border:5px solid white;box-shadow:0 8px 22px rgba(0,0,0,.12);overflow:hidden}
.avatar-xl img{width:100%;height:100%;object-fit:cover}
.profile-card{position:relative;overflow:hidden;padding:0}
.profile-banner{height:108px;background:linear-gradient(120deg,#171717,#333)}
.profile-banner-orange{background:linear-gradient(120deg,#f8ac32,#171717)}
.profile-banner-beige{background:linear-gradient(120deg,#ead1ad,#171717)}
.profile-body{margin-top:-50px;position:relative;padding:0 22px 22px}
.frame-bronze{box-shadow:0 0 0 5px #b97935,0 8px 22px rgba(0,0,0,.12)}
.effect-glow{filter:drop-shadow(0 0 12px rgba(248,172,50,.7))}
.anim-pulse{animation:pulse 1.8s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.05)}}
.timeline{display:grid;gap:10px}
.timeline-item{display:flex;gap:11px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}
.timeline-dot{width:9px;height:9px;background:var(--orange);border-radius:50%;margin-top:7px;flex:none}
.achievement{display:flex;gap:12px;align-items:center;padding:13px;border-radius:15px;background:#fff6e8;border:1px solid #f3d3a0}
.achievement-icon{font-size:1.6rem}
.chart{display:flex;align-items:end;gap:7px;height:170px;padding:14px 4px 0;border-bottom:1px solid var(--line)}
.bar{flex:1;min-width:8px;background:linear-gradient(180deg,var(--orange-2),var(--orange));border-radius:7px 7px 0 0;position:relative}
.bar:hover::after{content:attr(data-label);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);background:#171717;color:#fff;padding:5px 7px;border-radius:7px;font-size:.7rem;white-space:nowrap;z-index:3}

/* Exercises */
.exercise-list{display:grid;gap:13px}
.exercise-row{display:flex;justify-content:space-between;align-items:center;gap:22px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px 22px;box-shadow:0 7px 18px rgba(30,25,20,.035)}
.exercise-row h3{font-size:1.3rem;margin-top:8px}
.exercise-row>div:last-child{text-align:right;flex:none}
.chips{display:flex;flex-wrap:wrap;gap:7px}
.chip{display:inline-flex;align-items:center;border-radius:999px;background:#f2dfbf;padding:5px 9px;font-size:.75rem;font-weight:850;color:#5f3a00}
.chip.dark{background:#2b2b2b;color:white}
.question-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;box-shadow:var(--shadow-sm)}
.question-card.result-good{border-color:#98d1ae;background:#fbfffc}
.question-card.result-bad{border-color:#efb4ad;background:#fffafa}
.answers{display:grid;gap:9px;margin:15px 0}
.answer-option{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff;cursor:pointer}
.answer-option:hover{border-color:#c9a56c;background:#fffaf2}
.answer-option input{accent-color:var(--orange-dark)}
.question-feedback{margin-top:12px}
details{margin-top:10px;background:#f8f1e6;border-radius:12px;padding:9px 11px}
summary{cursor:pointer;font-weight:800}

/* Tables/ranking */
.toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-bottom:18px}
.toolbar>*{min-width:160px;flex:1}
.toolbar .btn{flex:0 0 auto;min-width:auto}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;background:#fff}
.dark .table-wrap{border-color:#363636;background:#202020}
.data-table{width:100%;border-collapse:collapse;min-width:720px}
.data-table th,.data-table td{padding:13px 14px;text-align:left;border-bottom:1px solid #eee2d2;vertical-align:middle}
.data-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#726656;background:#fbf6ee}
.data-table tr:last-child td{border-bottom:0}
.data-table tr:hover td{background:#fffaf2}
.dark .data-table th{background:#262626;color:#c9c2b9;border-color:#353535}
.dark .data-table td{border-color:#343434}
.dark .data-table tr:hover td{background:#282828}
.you-row td{background:#fff4df!important;color:#171717}
.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:18px 0 26px;align-items:end}
.podium-card{background:#242424;border:1px solid #3b3b3b;border-radius:22px;padding:24px;text-align:center;color:white;min-height:180px;display:grid;place-items:center;align-content:center}
.podium-card.first{min-height:220px;background:linear-gradient(180deg,#2a2a2a,#1e1e1e);border-color:#8c631c;box-shadow:0 0 0 1px rgba(248,172,50,.15) inset}
.podium-rank{font-size:2.2rem;font-weight:950;color:var(--orange)}

/* Collection */
.collect-card{position:relative;background:#202020;color:white;border:1px solid #363636;border-radius:22px;overflow:hidden;min-height:340px;box-shadow:var(--shadow-sm)}
.collect-card img{width:100%;height:220px;object-fit:cover;background:#151515}
.collect-meta{padding:16px}
.overall{position:absolute;top:12px;left:12px;width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:var(--orange);color:#171717;font-weight:950;font-size:1.2rem}
.qty{position:absolute;top:12px;right:12px;background:#fff;color:#171717;padding:5px 9px;border-radius:999px;font-weight:900}
.rarity{display:inline-flex;font-size:.72rem;font-weight:900;letter-spacing:.07em;padding:5px 8px;border-radius:999px;background:#414141}
.rarity.RARA{background:#315e8f}.rarity.EPICA{background:#6f3e91}.rarity.LENDARIA{background:#9e6b0b}
.pack-opening{position:fixed;inset:0;z-index:5000;background:rgba(0,0,0,.82);display:grid;place-items:center;padding:20px}
.pack-stage{width:min(1000px,100%);max-height:92vh;overflow:auto;background:#171717;color:white;border:1px solid #333;border-radius:28px;padding:28px;text-align:center;box-shadow:0 30px 100px rgba(0,0,0,.4)}
.reveal{animation:cardReveal .5s ease both}
@keyframes cardReveal{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:none}}

/* Support */
.ticket{border:1px solid var(--line);border-radius:18px;padding:18px;background:white;box-shadow:0 6px 18px rgba(30,25,20,.03)}
.ticket-response{margin-top:11px;padding:12px;border-radius:13px;background:#f4eadb}
.status{font-size:.72rem;font-weight:900;padding:5px 8px;border-radius:999px}
.status.ABERTA{background:#fff0d8;color:#8a5100}.status.RESPONDIDA{background:#eaf5ec;color:#1b6c35}.status.FECHADA{background:#eee;color:#555}
.stars{display:flex;gap:3px}
.star-btn{font-size:2.3rem;border:0;background:transparent;color:#d4cabd;padding:2px}
.star-btn.active{color:#f6a619}

/* Admin */
.admin-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px}
.admin-nav{position:sticky;top:calc(var(--header-h) + 20px);align-self:start;background:var(--ink);color:white;border-radius:22px;padding:12px;box-shadow:var(--shadow-sm)}
.admin-nav button{display:block;width:100%;text-align:left;background:transparent;border:0;color:#ded8d0;padding:11px 12px;border-radius:11px;font-weight:700}
.admin-nav button.active,.admin-nav button:hover{background:#2d2d2d;color:var(--orange)}
.admin-card strong{font-size:2rem;display:block}
.admin-main{min-width:0}
.admin-section{display:none}
.admin-section.active{display:block}
.inline-actions{display:flex;gap:7px;flex-wrap:wrap}
.dialog{border:0;border-radius:24px;padding:0;width:min(780px,calc(100% - 28px));max-height:90vh;box-shadow:0 24px 70px rgba(0,0,0,.25)}
.dialog::backdrop{background:rgba(0,0,0,.62)}
.dialog-head{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);background:#fffaf2}
.dialog-body{padding:22px;overflow:auto;max-height:calc(90vh - 76px)}
.icon-btn{width:38px;height:38px;border:0;border-radius:10px;background:#eee;display:grid;place-items:center}
.question-editor{padding:14px;border:1px solid var(--line);border-radius:14px;margin-top:10px;background:#fffaf2}
.metric-list{display:grid;gap:10px}
.metric-row{display:grid;grid-template-columns:150px 1fr 64px;gap:10px;align-items:center}
.metric-track{height:9px;background:#eadfce;border-radius:999px;overflow:hidden}
.metric-track span{display:block;height:100%;background:var(--orange)}

/* Feedback */
.empty{text-align:center;padding:34px 18px;color:var(--muted);border:1px dashed #cbbba4;border-radius:18px;background:rgba(255,255,255,.4)}
.dark .empty{color:#bdb6ae;border-color:#484848;background:#202020}
.notice{padding:12px 14px;border-radius:14px;background:#fff4df;border:1px solid #f3d19b}
.danger-zone{border-color:#f0b7b2;background:#fff8f7}
.footer{margin-top:auto;background:#171717;color:#ddd;padding:32px 0;border-top:1px solid #2f2f2f}
.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center}
.footer-brand-row{display:flex;align-items:center;gap:18px}
.footer small{color:#999}
.toast-root{position:fixed;right:16px;bottom:16px;z-index:7000;display:grid;gap:9px;max-width:min(390px,calc(100vw - 32px))}
.toast{background:#171717;color:white;border-left:4px solid var(--orange);padding:12px 14px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2);animation:toastIn .2s ease}
.toast.error{border-color:#e0483e}.toast.ok{border-color:#40b45f}
@keyframes toastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.global-loading{position:fixed;inset:0;background:rgba(250,246,239,.72);z-index:6500;display:grid;place-items:center;backdrop-filter:blur(2px)}
.global-loading[hidden]{display:none}
.spinner{width:42px;height:42px;border:4px solid #dbc8aa;border-top-color:#f8ac32;border-radius:50%;animation:spin .75s linear infinite}
.skeleton{background:linear-gradient(90deg,#e9ddca 25%,#f6eee1 50%,#e9ddca 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:12px;min-height:90px}
@keyframes shimmer{to{background-position:-200% 0}}

@media(max-width:1120px){
  .container{width:min(var(--content),calc(100% - 32px))}
  .nav a,.nav button{padding-inline:9px}
  .header-inner{gap:12px}
  .home-intro-grid{gap:36px}
  .feature-grid,.stats-grid,.cards-grid,.admin-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .four-col{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:980px){
  .nav{position:fixed;top:var(--header-h);left:0;right:0;background:#171717;padding:12px 16px 18px;display:none;flex-direction:column;align-items:stretch;border-top:1px solid #333;box-shadow:0 18px 38px rgba(0,0,0,.25)}
  .nav.open{display:flex}
  .nav a,.nav button{text-align:left;padding:12px}
  .menu-toggle{display:block}
  .header-user .user-chip span:last-child{display:none}
  .home-intro-grid{grid-template-columns:1fr}
  .home-highlight{max-width:720px}
  .steps-grid{grid-template-columns:1fr}
  .step-card{min-height:auto}
  .panel-grid{grid-template-columns:1fr}
  .admin-layout{grid-template-columns:1fr}
  .admin-nav{position:static;display:flex;overflow:auto;gap:4px}
  .admin-nav button{white-space:nowrap;width:auto}
  .three-col{grid-template-columns:repeat(2,minmax(0,1fr))}
  .auth-layout{grid-template-columns:1fr;max-width:680px}
  .auth-side{min-height:auto;padding:30px 34px}
  .auth-side .auth-points{display:none}
  .auth-side::after{width:220px;height:220px;border-width:45px;left:auto;right:-125px;bottom:-125px}
  .auth-card{padding:36px}
}
@media(max-width:700px){
  :root{--header-h:68px}
  .container{width:min(100% - 24px,var(--content))}
  .site-header .container{width:calc(100% - 20px)}
  .header-user .btn-primary{display:none}
  .header-user .btn-ghost{padding-inline:10px}
  .brand{font-size:1.12rem}
  .brand-mark{width:21px;height:18px}
  .section{padding:48px 0}
  .page-hero{padding:34px 0 22px}
  .hero-banner img{height:auto;min-height:0;object-fit:contain}
  .home-intro,.home-features,.home-steps,.home-cta{padding:48px 0}
  .home-intro-copy h1{font-size:2.35rem}
  .home-highlight{padding:24px;border-radius:24px}
  .home-highlight-row{grid-template-columns:1fr;gap:12px}
  .mini-feature{display:flex;align-items:center;gap:9px}
  .mini-feature strong{font-size:1.1rem}
  .feature-grid,.stats-grid,.cards-grid,.admin-cards,.two-col,.three-col,.four-col{grid-template-columns:1fr}
  .feature-card{min-height:auto}
  .feature-number{margin-bottom:22px}
  .cta-panel{padding:28px 24px;border-radius:24px;align-items:flex-start;flex-direction:column}
  .page-title-wrap,.section-head,.footer-inner{align-items:flex-start;flex-direction:column}
  .podium{grid-template-columns:1fr}
  .podium-card.first{order:-1;min-height:180px}
  .exercise-row{align-items:flex-start;flex-direction:column}
  .exercise-row>div:last-child{text-align:left;width:100%}
  .exercise-row .btn{width:100%;margin-top:8px}
  .metric-row{grid-template-columns:90px 1fr 55px}
  .pack-stage .cards-grid{grid-template-columns:1fr;max-height:70vh;overflow:auto}
  .collect-card{min-height:auto}
  .header-inner{gap:8px}
  .auth-shell{padding:20px 12px}
  .auth-layout{border-radius:22px}
  .auth-side{padding:24px 22px}
  .auth-side h2{font-size:2rem}
  .auth-card{padding:28px 22px}
  .toolbar>*{min-width:100%}
  .toolbar .btn{width:100%}
  .form-card{padding:20px;border-radius:22px}
  .card{padding:18px}
  .profile-body{padding:0 18px 18px}
  .footer-brand-row{align-items:flex-start;flex-direction:column;gap:6px}
}
@media(max-width:430px){
  .site-header .container{width:calc(100% - 16px)}
  .header-user .btn-ghost{font-size:.82rem;padding:6px 8px;min-height:36px}
  .header-user .user-chip{display:none}
  .home-actions{display:grid;grid-template-columns:1fr}
  .home-actions .btn{width:100%}
  .page-title-wrap .btn{width:100%}
  .stat-card strong{font-size:1.7rem}
  .quick-card{padding:14px}
  .data-table{min-width:650px}
}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition:none!important}}

/* Uploads de imagem */
.stack.compact{gap:8px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.profile-photo-picker{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#fffdf9 0%,#fff6ea 100%)}
.profile-photo-preview{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:linear-gradient(180deg,#ffc65f 0%,var(--orange) 100%);color:#171717;font-weight:950;font-size:1.35rem;border:4px solid #fff;box-shadow:0 12px 24px rgba(0,0,0,.08)}
.profile-photo-preview img{width:100%;height:100%;object-fit:cover}
.upload-meta{display:grid;gap:9px}
.file-picker{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:10px 12px;border:1px solid #d7c6af;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(36,26,18,.04)}
.file-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:12px;background:var(--ink);color:#fff;font-weight:800;border:1px solid #2f2f2f;cursor:pointer;transition:.18s ease;white-space:nowrap}
.file-trigger:hover{background:#2d2d2d;transform:translateY(-1px)}
.file-name{min-width:0;color:var(--muted);font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.file-name.has-file{color:var(--ink);font-weight:700}
.upload-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.question-image-field{display:grid;gap:7px;margin-top:4px}
.question-image-field>label{font-weight:800;font-size:.88rem}
.question-image-picker{display:grid;grid-template-columns:minmax(170px,240px) minmax(0,1fr);gap:16px;align-items:center;padding:14px;border:1px dashed #c7ad87;border-radius:18px;background:linear-gradient(180deg,#fff 0%,#fffaf3 100%)}
.question-image-preview{aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:#f2eadf;border:1px solid var(--line);display:grid;place-items:center;color:var(--muted);font-size:.85rem;padding:10px}
.question-image-preview img{width:100%;height:100%;object-fit:contain;background:#fff;border-radius:10px}
.exercise-question-image{margin:16px 0 18px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#faf6f0;display:flex;justify-content:center}
.exercise-question-image img{display:block;max-width:100%;max-height:520px;object-fit:contain}
@media(max-width:700px){
  .profile-photo-picker{grid-template-columns:1fr}
  .profile-photo-preview{width:72px;height:72px}
  .question-image-picker{grid-template-columns:1fr}
  .question-image-preview{max-height:260px}
  .file-picker{grid-template-columns:1fr}
  .file-trigger{width:100%}
}

/* PHILAR v5 — selects próprios para não depender do menu nativo do navegador */
.pretty-select{position:relative;width:100%}
.pretty-select-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;left:8px!important;bottom:0!important;padding:0!important;border:0!important}
.pretty-select-trigger{width:100%;min-height:48px;border:1px solid #cfbea6;background:linear-gradient(180deg,#fff 0%,#fffdf9 100%);border-radius:15px;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--ink);font-weight:650;text-align:left;box-shadow:0 5px 16px rgba(35,27,19,.035);transition:.16s ease}
.pretty-select-trigger:hover{border-color:#c29a61;background:#fffaf2}
.pretty-select-trigger:focus-visible{outline:none;border-color:var(--orange-dark);box-shadow:0 0 0 4px rgba(248,172,50,.15),0 9px 22px rgba(35,27,19,.06)}
.pretty-select.placeholder .pretty-select-value{color:#8d8275;font-weight:500}
.pretty-select-chevron{width:9px;height:9px;border-right:2px solid #8b5b15;border-bottom:2px solid #8b5b15;transform:rotate(45deg) translateY(-2px);transition:transform .16s ease;flex:none;margin-right:3px}
.pretty-select.open .pretty-select-chevron{transform:rotate(225deg) translate(-2px,-1px)}
.pretty-select-menu{position:absolute;z-index:3500;top:calc(100% + 8px);left:0;right:0;display:none;max-height:300px;overflow:auto;background:#fff;border:1px solid #d9c8ae;border-radius:16px;padding:7px;box-shadow:0 22px 55px rgba(24,18,12,.18)}
.pretty-select.open .pretty-select-menu{display:block;animation:selectIn .14s ease}
@keyframes selectIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.pretty-select-option{width:100%;border:0;background:transparent;border-radius:11px;min-height:42px;padding:9px 11px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;color:#221e19;font-weight:620}
.pretty-select-option:hover,.pretty-select-option:focus-visible{outline:none;background:#fff2dc;color:#6c3d00}
.pretty-select-option[aria-selected="true"]{background:#f8ac32;color:#171717;font-weight:850}
.pretty-select-option:disabled{opacity:.45;cursor:not-allowed}
.pretty-select-group{padding:10px 11px 5px;font-size:.7rem;text-transform:uppercase;letter-spacing:.11em;color:#8b7b67;font-weight:900}
.pretty-select.invalid .pretty-select-trigger{border-color:#c83b31;box-shadow:0 0 0 4px rgba(200,59,49,.09)}
.pretty-select.disabled{opacity:.6}
.pretty-select-trigger:disabled{cursor:not-allowed}
.dark .pretty-select-trigger{background:#242424;color:#f5f1eb;border-color:#474747;box-shadow:none}
.dark .pretty-select-trigger:hover{background:#2b2b2b;border-color:#696055}
.dark .pretty-select-chevron{border-color:var(--orange)}
.dark .pretty-select-menu{background:#232323;border-color:#454545;box-shadow:0 24px 60px rgba(0,0,0,.4)}
.dark .pretty-select-option{color:#eee}
.dark .pretty-select-option:hover,.dark .pretty-select-option:focus-visible{background:#35302a;color:#ffd287}
.dark .pretty-select-option[aria-selected="true"]{background:var(--orange);color:#171717}
.dark .pretty-select-group{color:#a9a096}
@media(max-width:700px){.pretty-select-menu{max-height:min(330px,48vh)}}

/* =========================================================
   PHILAR 5 — APPLICATION EXPERIENCE
   Desktop dashboard + mobile-first app shell
   ========================================================= */
:root{
  --app-sidebar:244px;
  --app-bg:#f7f3ec;
  --app-surface:#fffefa;
  --app-soft:#f2eadf;
  --app-accent:#f5a524;
  --app-accent-2:#ffca69;
  --app-purple:#6b4de6;
  --app-blue:#2d7dd2;
  --app-green:#198754;
  --app-red:#b42318;
}
body.sheet-open,body.pack-open{overflow:hidden}
.sheet-panel,.dialog-body,.app-dialog,.pack-stage,.chat-thread,.table-wrap{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.app-sidebar{position:fixed;inset:0 auto 0 0;width:var(--app-sidebar);z-index:1200;background:#171717;color:#fff;border-right:1px solid #292929;display:flex;flex-direction:column;padding:22px 14px 16px;box-shadow:10px 0 38px rgba(0,0,0,.08)}
.sidebar-brand{padding:0 10px 20px}.sidebar-brand .brand{font-size:1.25rem}.sidebar-brand small{display:block;color:#8f8f8f;font-size:.72rem;margin:5px 0 0 36px}
.sidebar-nav{display:grid;gap:3px;overflow:auto;padding:3px 0 14px;scrollbar-width:thin}.sidebar-nav>a,.sidebar-nav .sidebar-divider+*{min-width:0}.sidebar-nav>a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:13px;color:#cfcfcf;font-size:.9rem;font-weight:760;transition:.16s}.sidebar-nav>a:hover,.sidebar-nav>a.active{background:#282828;color:#fff}.sidebar-nav>a.active{box-shadow:inset 3px 0 0 var(--app-accent)}
.nav-icon{width:24px;height:24px;display:grid;place-items:center;font-size:1rem;font-weight:900;flex:none}.sidebar-divider{display:flex;align-items:center;gap:8px;margin:12px 9px 5px;color:#797979;font-size:.65rem;text-transform:uppercase;letter-spacing:.13em}.sidebar-divider::after{content:"";height:1px;background:#303030;flex:1}
.sidebar-user{margin-top:auto;border-top:1px solid #2d2d2d;padding:14px 8px 0;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.sidebar-user>div:nth-child(2){min-width:0}.sidebar-user strong,.sidebar-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user strong{font-size:.83rem}.sidebar-user small{font-size:.7rem;color:#959595}.sidebar-logout{color:#bbb;background:transparent}
.icon-btn{border:0;width:40px;height:40px;border-radius:12px;background:#f3eee7;color:var(--ink);display:grid;place-items:center;font-weight:900;transition:.15s}.icon-btn:hover{background:#e9dfd1}.app-sidebar .icon-btn{background:#252525;color:#ccc}.app-sidebar .icon-btn:hover{background:#333;color:#fff}
.mobile-appbar,.mobile-bottom-nav,.mobile-more-sheet{display:none}
.site-main.app-main{padding-top:0;margin-left:var(--app-sidebar);min-height:100vh;background:var(--app-bg);width:auto;overflow-x:clip}
.app-page{width:min(1420px,100%);margin-inline:auto;padding:34px clamp(24px,3.3vw,54px) 64px;display:grid;gap:24px}
.app-page .btn-ghost{background:#f4eee5;color:var(--ink);border-color:#e2d5c4}.app-page .btn-ghost:hover{background:#ebe1d4}.app-page .btn-primary{background:var(--app-accent);box-shadow:none;border-color:#dc901b}.app-page .btn-primary:hover{background:#ffb23b;box-shadow:0 8px 20px rgba(245,165,36,.2)}
.app-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:5px 0 2px}.app-page-head h1{font-size:clamp(2rem,3vw,3.15rem);margin:5px 0 8px}.app-page-head p{color:var(--muted);max-width:760px;margin:0}.section-kicker{display:inline-block;font-size:.69rem;font-weight:950;letter-spacing:.13em;color:#a45e00;margin-bottom:7px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:13px}.section-title h2{font-size:1.55rem}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.big-count{font-size:1.8rem;font-weight:950}.text-link{font-size:.83rem;font-weight:850;color:#795005}.inline-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.optional{font-weight:500;color:var(--muted);font-size:.78rem}.full{grid-column:1/-1}.info-box{padding:14px 16px;border-radius:14px;background:#fff8e9;border:1px solid #ecd8ac}.info-box p{margin:4px 0 0;color:#6f6251;font-size:.88rem}.check-row{display:flex;gap:9px;align-items:center;font-weight:750}.check-row input{width:18px;height:18px;accent-color:var(--app-accent)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.empty-state{border:1px dashed #cebfa9;background:#fbf7f1;border-radius:20px;padding:30px;display:flex;align-items:center;justify-content:center;gap:16px;text-align:left;min-height:150px}.empty-state>span{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#ede2d2;color:#7e633f;font-size:1.5rem;font-weight:950}.empty-state strong{display:block}.empty-state p{margin:3px 0;color:var(--muted)}.empty-state.compact{min-height:auto;padding:17px;justify-content:flex-start}.empty-state.compact>span{width:42px;height:42px;font-size:1.1rem}
.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.69rem;font-weight:900;letter-spacing:.03em;background:#ede7dd;color:#5f5447;white-space:nowrap}.status-novo,.status-aberta{background:#fff0d0;color:#865000}.status-em_andamento,.status-aguardando_aluno{background:#e8effe;color:#294f92}.status-concluido,.status-resolvida{background:#e4f4e9;color:#14623b}.status-respondida{background:#eee8ff;color:#6040a3}
.accuracy-pill{min-width:57px;text-align:center;border-radius:999px;padding:6px 9px;background:#e5f3e9;color:#12623a;font-weight:900;font-size:.8rem}.accuracy-pill.mid{background:#fff2cf;color:#7f5500}.accuracy-pill.low{background:#fde6e3;color:#8d281f}
.points-card{background:#171717;color:white;border-radius:18px;padding:14px 20px;min-width:150px;box-shadow:var(--shadow-sm)}.points-card small{display:block;color:#aaa}.points-card strong{display:block;color:var(--app-accent);font-size:1.25rem}
.skeleton-block{height:260px;border-radius:22px;background:linear-gradient(90deg,#eee6da 25%,#faf6f0 40%,#eee6da 65%);background-size:400% 100%;animation:skeleton 1.25s ease infinite}@keyframes skeleton{to{background-position:-400% 0}}

/* Dashboard */
.dashboard-page{gap:20px}.dashboard-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.dashboard-welcome h1{font-size:clamp(2rem,3vw,3.3rem);margin:4px 0}.dashboard-welcome p{color:var(--muted);margin:0}.quick-stats{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.quick-stats span{background:#fff;border:1px solid var(--line);border-radius:13px;padding:9px 12px;font-size:.76rem;color:var(--muted);box-shadow:0 5px 15px rgba(0,0,0,.025)}.quick-stats b{color:var(--ink);font-size:.9rem}
.continue-card{position:relative;overflow:hidden;background:#171717;color:#fff;border-radius:26px;padding:30px 32px;min-height:215px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;box-shadow:0 20px 40px rgba(0,0,0,.12)}.continue-card::after{content:"";position:absolute;right:-75px;top:-90px;width:290px;height:290px;border-radius:50%;border:58px solid rgba(245,165,36,.92)}.continue-card>*{position:relative;z-index:1}.continue-card .section-kicker{color:#ffbb4c}.continue-card h2{font-size:clamp(1.65rem,2.6vw,2.6rem);max-width:720px}.continue-card p{color:#c7c7c7}.continue-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:17px}.continue-card .text-link{color:#fff}.continue-visual{width:120px;height:120px;border-radius:32px;background:var(--app-accent);color:#171717;display:grid;place-items:center;font-size:3.7rem;font-weight:950;transform:rotate(-5deg)}
.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.dashboard-grid-wide{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr)}.dashboard-grid .card,.recent-card{padding:22px}.dashboard-grid h2,.recent-card h2{font-size:1.35rem}.mission-count,.collection-percent{font-size:1.6rem;font-weight:950;color:#7a4c00}.progress-lg{height:13px;margin:18px 0 11px}.level-line{display:flex;justify-content:space-between;align-items:center;margin-top:9px}.level-line h2{margin:0}.attention-list{display:grid;gap:9px;margin-top:14px}.attention-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #eee5d9}.attention-row:last-child{border-bottom:0}.attention-row strong,.attention-row small{display:block}.attention-row small{font-size:.75rem;color:var(--muted)}.activity-list{display:grid}.activity-row{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:11px 0;border-bottom:1px solid #eee5d9}.activity-row:last-child{border-bottom:0}.activity-icon{width:35px;height:35px;border-radius:11px;background:#f6e8ce;display:grid;place-items:center;font-weight:900}.activity-row strong,.activity-row small{display:block}.activity-row small{color:var(--muted);font-size:.73rem}.activity-row>b{font-size:.79rem;color:#76530d}

/* Profile */
.profile-hero{display:flex;justify-content:space-between;align-items:center;gap:28px;background:linear-gradient(115deg,#fffefb 0%,#f8eddc 100%)}.profile-identity{display:flex;align-items:center;gap:18px}.profile-identity h1{font-size:2rem;margin:3px 0}.profile-identity p{margin:0;color:var(--muted)}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e7dccc;border:1px solid #e7dccc;border-radius:17px;overflow:hidden}.profile-stats>div{min-width:100px;padding:14px 16px;background:#fff;text-align:center}.profile-stats strong,.profile-stats span{display:block}.profile-stats strong{font-size:1.13rem}.profile-stats span{font-size:.68rem;color:var(--muted);text-transform:uppercase;font-weight:850}.profile-grid{display:grid;grid-template-columns:minmax(330px,.75fr) minmax(0,1.25fr);gap:20px}.achievement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px}.achievement small{display:block;color:#786c5b}.profile-links{display:grid;margin-top:10px}.profile-links a{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #ece2d6}.profile-links a:last-child{border:0}.profile-links a>span{width:38px;height:38px;border-radius:12px;background:#f3e6d1;display:grid;place-items:center;font-weight:900}.profile-links strong,.profile-links small{display:block}.profile-links small{font-size:.74rem;color:var(--muted)}.file-picker{display:flex;align-items:center;gap:10px;min-width:0}.file-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 12px;border:1px solid #ccb898;border-radius:12px;background:#fff;cursor:pointer;font-weight:800}.file-name{font-size:.78rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-name.has-file{color:#4e3d24;font-weight:750}

/* Exercise browser */
.exercises-page{gap:30px}.exercise-filters{padding:17px}.filter-grid{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(5,minmax(120px,.7fr)) auto auto;gap:10px;align-items:end}.filter-grid .field{gap:4px}.filter-grid .field label{font-size:.73rem}.filter-grid .field input,.filter-grid .field select{min-height:43px;padding-top:8px;padding-bottom:8px}.filter-submit,.filter-clear{min-height:43px}.exercise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.exercise-card{padding:19px;background:#fff;border:1px solid var(--line);border-radius:19px;box-shadow:0 6px 18px rgba(40,30,20,.025);display:flex;flex-direction:column;min-width:0}.exercise-card.featured{max-width:780px;border-color:#e4bd74;background:linear-gradient(110deg,#fffaf0,#fff)}.exercise-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.exercise-card h3{font-size:1.15rem;margin:15px 0 7px}.exercise-card p{color:var(--muted);font-size:.86rem;flex:1}.exercise-xp{font-weight:900;font-size:.76rem;color:#815400;white-space:nowrap}.exercise-meta{display:flex;gap:11px;flex-wrap:wrap;font-size:.71rem;color:#7c7164;margin:11px 0}.exercise-card .progress{height:7px}.exercise-card>small{color:#897b69;font-size:.67rem;margin-top:4px}.exercise-card-actions{margin-top:14px}.exercise-card-actions .btn{width:100%;min-height:41px}.difficulty-facil{background:#e2f3e7;color:#155c37}.difficulty-medio{background:#fff1cf;color:#795100}.difficulty-dificil{background:#fbe3df;color:#8b2c22}

/* Exercise player */
.exercise-player-page{max-width:980px}.exercise-player-head{display:grid;grid-template-columns:1fr auto;gap:8px 20px;align-items:end}.exercise-player-head .back-link{grid-column:1/-1;color:#766651;font-weight:800;font-size:.82rem}.exercise-player-head h1{font-size:clamp(1.8rem,3vw,2.8rem)}.exercise-player{padding:0;overflow:hidden;box-shadow:0 18px 48px rgba(36,27,19,.08)}.player-progress{padding:18px 24px;background:#fffaf3;border-bottom:1px solid #eadfce}.player-progress>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:.78rem;margin-bottom:8px;color:#776957}.player-progress strong{color:#634300}.player-question{padding:clamp(22px,4vw,42px)}.player-question h2{font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.35;margin-bottom:24px}.player-answers{gap:10px}.player-answers .answer-option{padding:14px 15px;border-radius:14px}.player-answers .answer-option:has(input:checked){border-color:#d38a16;background:#fff6e3;box-shadow:0 0 0 3px rgba(245,165,36,.1)}.answer-option input{accent-color:#d68a15}.exercise-question-image{margin:0 0 20px;max-height:360px;overflow:hidden;border-radius:16px;border:1px solid #e2d4c1;background:#f5efe6}.exercise-question-image img{width:100%;height:100%;max-height:360px;object-fit:contain}.hint-box{margin:15px 0;background:#f6f1e9;border-radius:13px;padding:10px 13px}.hint-box summary{font-weight:800;cursor:pointer}.hint-box p{margin:8px 0 0;color:#6e6254}.player-actions{display:flex;justify-content:flex-end;margin-top:22px}.question-feedback{margin-top:16px}.feedback-card{padding:15px 17px;border-radius:14px;border:1px solid}.feedback-card.correct{background:#edf8f0;border-color:#b8dfc4;color:#155b35}.feedback-card.wrong{background:#fff3ec;border-color:#edc5ae;color:#77341a}.feedback-card strong{font-size:1.03rem}.feedback-card p{margin:3px 0}.feedback-card small{display:block;margin-top:6px}.result-hero{text-align:center;padding:40px 26px 27px}.result-hero>span{width:68px;height:68px;border-radius:22px;background:#eee5d8;display:grid;place-items:center;margin:0 auto 15px;font-size:2rem;font-weight:950}.result-hero.success>span{background:#daf0e1;color:#156039}.result-hero h2{font-size:2rem}.reward-pill{display:inline-flex;margin-top:10px;padding:8px 13px;border-radius:999px;background:#fff0cf;color:#765000;font-weight:900}.diagnostic-result{padding:0 28px 30px}.result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;padding:0 24px 32px}

/* Diagnostics */
.diagnostic-page{max-width:1120px}.diagnostic-empty{text-align:center;padding:48px;display:grid;justify-items:center}.diagnostic-empty-icon{width:80px;height:80px;border-radius:24px;background:#f3e5cf;display:grid;place-items:center;font-size:2.8rem;font-weight:900;margin-bottom:16px}.diagnostic-empty p{max-width:600px;color:var(--muted);margin:0 auto 20px}.diagnostic-overview{display:grid;grid-template-columns:260px 1fr;gap:28px}.diagnostic-main-score{display:flex;flex-direction:column;justify-content:center;border-right:1px solid #e9ded0;padding-right:28px}.diagnostic-main-score>span,.diagnostic-main-score>small{color:var(--muted)}.diagnostic-main-score strong{font-size:3.5rem;letter-spacing:-.06em}.diagnostic-category-list{display:grid;gap:8px}.diagnostic-category{display:grid;grid-template-columns:1fr auto;gap:13px;align-items:center;padding:9px 0;border-bottom:1px solid #eee5da}.diagnostic-category:last-child{border-bottom:0}.diagnostic-category strong,.diagnostic-category small{display:block}.diagnostic-category small{font-size:.73rem;color:var(--muted)}.diagnostic-category .progress{height:6px;margin-top:6px}.diagnostic-score{min-width:58px;text-align:center;font-weight:950;padding:8px;border-radius:12px}.diagnostic-score.strong{background:#e5f3e9;color:#15603a}.diagnostic-score.developing{background:#fff1d2;color:#785000}.diagnostic-score.review{background:#fbe4e0;color:#8b2a21}.diagnostic-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.study-tags{display:flex;flex-wrap:wrap;gap:8px}.study-tag{display:inline-flex;gap:7px;align-items:center;padding:8px 11px;border-radius:999px;background:#e8f4eb;color:#175f3a;font-size:.8rem;font-weight:800}.study-tag.attention{background:#fff0d8;color:#815208}.recommended-plan>a{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #ece2d5}.recommended-plan>a:last-child{border-bottom:0}.recommended-plan>a>b{width:34px;height:34px;border-radius:11px;background:#f3e4cb;display:grid;place-items:center}.recommended-plan>a strong,.recommended-plan>a small{display:block}.recommended-plan>a small{font-size:.73rem;color:var(--muted)}.diagnostic-history{display:grid}.history-row{display:grid;grid-template-columns:1fr auto auto;gap:13px;align-items:center;padding:11px 0;border-bottom:1px solid #ece4da}.history-row:last-child{border:0}.history-row strong,.history-row small{display:block}.history-row>span{font-size:1.1rem;font-weight:950}

/* Packs & cards */
.pack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.pack-product{padding:0;overflow:hidden}.pack-art{height:180px;background:linear-gradient(145deg,#171717 0%,#313131 58%,#f5a524 59%,#f5a524 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;position:relative;overflow:hidden}.pack-art::before{content:"";position:absolute;width:170px;height:170px;border:34px solid rgba(255,255,255,.08);border-radius:50%}.pack-art span,.pack-art b{position:relative;z-index:1}.pack-art span{width:58px;height:58px;border-radius:18px;background:var(--app-accent);color:#171717;display:grid;place-items:center;font-weight:950;font-size:1.25rem}.pack-art b{margin-top:8px;letter-spacing:.2em;font-size:.8rem}.pack-product-body{padding:19px}.pack-product-body h2{font-size:1.25rem}.pack-product-body>p{font-size:.85rem;color:var(--muted);min-height:42px}.pack-product-body .btn{width:100%;margin-top:15px}.rarity-odds{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.rarity{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;font-size:.67rem;font-weight:900;text-transform:uppercase}.rarity-comum{background:#ecebe7;color:#555}.rarity-rara{background:#e4edff;color:#275aa9}.rarity-epica{background:#eee4ff;color:#6940ae}.rarity-lendaria{background:#fff0c8;color:#8b5b00}.collection-callout{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff8eb}.collection-callout h2{font-size:1.45rem}.collection-callout p{margin:0;color:var(--muted)}
.pack-opening{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px}.pack-opening-backdrop{position:absolute;inset:0;background:rgba(12,12,12,.82);backdrop-filter:blur(6px)}.pack-stage{position:relative;z-index:1;width:min(1100px,100%);max-height:92vh;overflow:auto;background:#fffaf3;border-radius:28px;padding:28px;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.35)}.pack-animation{min-height:420px;display:grid;place-items:center;align-content:center;gap:18px}.pack-art.big{width:230px;height:310px;border-radius:22px;box-shadow:0 28px 55px rgba(0,0,0,.28);animation:packShake .58s ease both}.pack-art.big span{width:82px;height:82px;font-size:1.6rem}.pack-animation p{font-weight:850}.pack-reveal-card{animation:cardReveal .5s ease both;animation-delay:calc(var(--reveal-index) * 100ms)}@keyframes packShake{25%{transform:rotate(-4deg) scale(1.02)}55%{transform:rotate(5deg) scale(1.05)}100%{transform:rotate(0) scale(1)}}@keyframes cardReveal{from{opacity:0;transform:translateY(20px) rotateY(80deg)}to{opacity:1;transform:none}}
.collection-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.collection-stats .card{text-align:center;padding:16px}.collection-stats strong,.collection-stats span{display:block}.collection-stats strong{font-size:1.55rem}.collection-stats span{font-size:.72rem;color:var(--muted);font-weight:850}.collection-pack-link{background:#171717!important;color:#fff}.collection-pack-link strong{color:var(--app-accent)}.collection-ring{width:96px;height:96px;border-radius:50%;background:conic-gradient(var(--app-accent) var(--collection,70%),#e8ded0 0);border:7px solid #fff;box-shadow:0 0 0 1px #ddd0be;display:grid;place-items:center;align-content:center}.collection-ring strong,.collection-ring span{display:block;text-align:center}.collection-ring span{font-size:.63rem;color:var(--muted)}.collection-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}.collection-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.collect-card{position:relative;border-radius:19px;overflow:hidden;background:#202020;color:#fff;border:2px solid #484848;min-width:0;box-shadow:0 11px 25px rgba(0,0,0,.1)}.collect-card>img,.collect-card>.card-placeholder,.locked-card-art{width:100%;aspect-ratio:4/3;object-fit:cover;background:#302f2d}.card-placeholder,.locked-card-art{display:grid;place-items:center;font-size:2rem;font-weight:950;color:#f5a524}.locked-card-art{background:repeating-linear-gradient(135deg,#292929 0 12px,#323232 12px 24px);color:#7e7e7e}.collect-card.locked{filter:saturate(.35);opacity:.82}.collect-card .overall{position:absolute;top:11px;left:11px;background:rgba(17,17,17,.86);border-radius:10px;padding:6px 8px;font-weight:950}.collect-meta{padding:14px}.collect-meta h3{font-size:1.05rem;margin:9px 0 3px}.collect-meta p{font-size:.75rem;color:#bdbdbd;min-height:18px}.duplicate-badge,.new-card-badge{display:inline-flex;margin-top:7px;padding:4px 7px;border-radius:7px;font-size:.6rem;font-weight:950}.duplicate-badge{background:#533d78;color:#eadcff}.new-card-badge{background:#184f32;color:#d8f7e4}.rarity-border-comum{border-color:#9c9a92}.rarity-border-rara{border-color:#5688df}.rarity-border-epica{border-color:#8657d1}.rarity-border-lendaria{border-color:#e5aa2a}

/* Doubts/chat */
.doubts-page{max-width:1100px}.new-doubt{padding:22px}.new-doubt .card-head{margin-bottom:15px}.doubt-list{display:grid;gap:15px}.doubt-thread{padding:0;overflow:hidden}.thread-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px;border-bottom:1px solid #eae0d3}.thread-head h2,.thread-head h3{font-size:1.18rem;margin:7px 0 3px}.thread-head p{font-size:.8rem;color:var(--muted);margin:0}.thread-head>small{font-size:.7rem;color:var(--muted)}.chat-thread{display:grid;gap:9px;padding:20px;background:#f6f1e9;max-height:540px;overflow:auto}.chat-message{display:flex}.chat-message.student{justify-content:flex-end}.chat-bubble{max-width:min(78%,620px);background:#fff;border:1px solid #dfd4c5;border-radius:16px 16px 16px 5px;padding:10px 12px;box-shadow:0 4px 12px rgba(0,0,0,.03)}.chat-message.student .chat-bubble{background:#fff1d8;border-color:#e8c98e;border-radius:16px 16px 5px 16px}.chat-bubble>small{display:block;font-size:.67rem;font-weight:900;color:#735d3c}.chat-bubble p{white-space:pre-wrap;margin:3px 0}.chat-bubble time{display:block;text-align:right;font-size:.62rem;color:#8e8171}.chat-bubble img{max-width:360px;max-height:360px;border-radius:11px;margin:8px 0;object-fit:contain}.thread-reply,.monitor-reply{padding:16px 20px;background:#fff}.thread-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.thread-actions select{min-height:40px;border:1px solid #d3c3ac;border-radius:11px;background:#fff;padding:7px 10px}.file-trigger.compact{min-height:38px;padding:6px 10px;font-size:.77rem}.resolved-note{padding:13px 18px;background:#eaf6ee;color:#185f3a;font-weight:800;font-size:.83rem}.camera-picker{display:grid;gap:6px}.camera-picker input{padding:9px;background:#fff}.camera-picker small{color:var(--muted);font-size:.76rem}
.monitor-page{max-width:1320px}.monitor-toolbar{padding:10px}.filter-pills{display:flex;gap:6px;overflow:auto}.filter-pills a{padding:8px 11px;border-radius:10px;font-size:.78rem;font-weight:850;white-space:nowrap}.filter-pills a:hover,.filter-pills a.active{background:#171717;color:#fff}.monitor-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:15px;min-height:620px}.monitor-ticket-list{padding:8px;display:flex;flex-direction:column;gap:5px;max-height:720px;overflow:auto}.monitor-ticket{border:0;background:transparent;border-radius:13px;padding:12px;display:flex;justify-content:space-between;gap:10px;text-align:left;color:var(--ink)}.monitor-ticket:hover,.monitor-ticket.active{background:#f3eadf}.monitor-ticket.unread{background:#fff5df}.monitor-ticket>div{display:grid;grid-template-columns:auto 1fr;gap:0 7px;min-width:0}.monitor-ticket .status-dot{grid-row:1/3;width:8px;height:8px;border-radius:50%;background:#c7bba9;margin-top:5px}.monitor-ticket .status-aberta{background:#e09b26}.monitor-ticket strong,.monitor-ticket small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monitor-ticket small{font-size:.7rem;color:var(--muted)}.monitor-ticket>span{font-size:.62rem;color:#7b6d5b;white-space:nowrap}.monitor-conversation{padding:0;overflow:hidden}.monitor-thread-head{padding:19px 21px;border-bottom:1px solid #e8ddd0}.monitor-thread-head h2{font-size:1.3rem;margin:7px 0 2px}.monitor-thread-head p{font-size:.78rem;color:var(--muted)}.monitor-chat{min-height:390px}.monitor-reply{border-top:1px solid #e9ded0}

/* Admin */
.admin-page{max-width:1600px}.admin-shell{display:grid;grid-template-columns:205px minmax(0,1fr);gap:18px;align-items:start}.admin-nav{position:sticky;top:24px;padding:8px;display:grid;gap:3px}.admin-nav button{border:0;background:transparent;text-align:left;border-radius:11px;padding:10px 11px;display:flex;align-items:center;gap:9px;color:#655d52;font-size:.82rem;font-weight:800}.admin-nav button span{width:23px;text-align:center}.admin-nav button:hover,.admin-nav button.active{background:#171717;color:#fff}.admin-workspace{min-width:0}.admin-section-view{display:grid;gap:18px}.admin-section-head{display:flex;justify-content:space-between;align-items:end;gap:18px}.admin-section-head h2{font-size:1.7rem}.admin-section-head p{margin:0;color:var(--muted)}.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.admin-metric{padding:16px}.admin-metric span,.admin-metric small{display:block;color:var(--muted);font-size:.72rem}.admin-metric strong{display:block;font-size:1.85rem;margin:4px 0;letter-spacing:-.04em}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mini-bar-chart{height:200px;display:flex;align-items:end;gap:9px;padding:20px 5px 0}.mini-bar-chart>div{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:3px}.mini-bar-chart span{width:min(36px,70%);min-height:5px;background:var(--app-accent);border-radius:8px 8px 3px 3px}.mini-bar-chart small{font-size:.62rem;color:var(--muted)}.mini-bar-chart b{font-size:.66rem}.metric-list{display:grid;gap:11px;margin-top:14px}.metric-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(100px,2fr) 48px;gap:8px;align-items:center;font-size:.76rem}.metric-track{height:7px;background:#eadfce;border-radius:99px;overflow:hidden}.metric-track span{display:block;height:100%;background:var(--app-accent);border-radius:99px}.metric-row strong{text-align:right}.class-activity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}.class-activity-grid>div{padding:12px;border-radius:13px;background:#f7f1e8;border:1px solid #eadccb}.class-activity-grid strong,.class-activity-grid small,.class-activity-grid span{display:block}.class-activity-grid small,.class-activity-grid span{color:var(--muted);font-size:.68rem}.admin-filters{display:grid;grid-template-columns:minmax(160px,1.3fr) repeat(3,minmax(120px,.8fr)) auto;gap:9px;align-items:end;padding:14px}.admin-table-card{padding:0;overflow:hidden}.data-table{width:100%;border-collapse:collapse;font-size:.79rem}.data-table th,.data-table td{text-align:left;padding:12px 13px;border-bottom:1px solid #eee5d9;vertical-align:middle}.data-table th{background:#f8f3ec;color:#756b5e;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em}.data-table td>strong,.data-table td>small{display:block}.data-table td>small{color:var(--muted);font-size:.68rem}.table-wrap{overflow:auto}.pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:.75rem;color:var(--muted)}
.exercise-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.admin-exercise-card h3{font-size:1.15rem;margin:13px 0 5px}.admin-exercise-card p{font-size:.82rem;color:var(--muted);min-height:38px}.admin-exercise-card .inline-actions{margin-top:12px}.admin-dialog{width:min(980px,calc(100vw - 28px));max-height:92vh;border:0;border-radius:24px;padding:0;background:#fffaf4;box-shadow:0 28px 90px rgba(0,0,0,.32)}.admin-dialog::backdrop{background:rgba(20,18,15,.58);backdrop-filter:blur(3px)}.dialog-head{position:sticky;top:0;z-index:3;background:#fffaf4;border-bottom:1px solid #e8ddcf;padding:17px 20px;display:flex;justify-content:space-between;align-items:center}.dialog-head h2{font-size:1.45rem;margin:0}.dialog-body{padding:20px;max-height:calc(92vh - 78px);overflow:auto}.student-detail{display:grid;gap:20px}.student-detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.exercise-wizard{display:grid;gap:18px}.wizard-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.wizard-steps button{border:0;background:transparent;padding:8px 4px;color:#8b8073;font-size:.68rem;font-weight:800}.wizard-steps button b{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;margin:0 auto 4px;background:#ece3d7;color:#6e6356}.wizard-steps button.active{color:#5d3f09}.wizard-steps button.active b{background:var(--app-accent);color:#171717}.wizard-panel{display:none}.wizard-panel.active{display:block}.wizard-error{padding:11px 13px;border:1px solid #efc0ba;background:#fff0ee;border-radius:12px;color:#8d2a22;font-size:.83rem}.wizard-actions{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;padding-top:8px;border-top:1px solid #e9ded0}.question-editors{display:grid;gap:14px;margin-bottom:12px}.question-editor{border:1px solid #dacbb7;border-radius:17px;background:#fff;padding:15px}.question-editor-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.question-editor-head strong{font-size:.9rem}.question-editor .three-col{grid-column:1/-1}.help-inline{color:var(--muted);font-size:.69rem;font-weight:500}.review-summary{display:grid;gap:13px}.review-metrics{display:flex;gap:8px;flex-wrap:wrap}.review-metrics span{padding:8px 11px;border-radius:10px;background:#f3ebdf;font-size:.76rem}.review-question-list{display:grid;gap:7px}.review-question-list>div{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:10px;border:1px solid #eadfce;border-radius:12px;background:#fff}.review-question-list b{width:27px;height:27px;border-radius:9px;background:#f3e3c8;display:grid;place-items:center}.review-question-list span{font-size:.79rem}.review-question-list small{font-size:.66rem;color:var(--muted)}.publish-check{text-align:center;padding:34px 20px}.publish-check>span{width:62px;height:62px;border-radius:20px;background:#e3f4e8;color:#175e39;display:grid;place-items:center;margin:0 auto 13px;font-size:1.8rem}.exercise-preview{display:grid;gap:13px}.preview-question{padding:14px;border:1px solid #e6dacb;border-radius:14px;background:#fff}.preview-question strong,.preview-question small{display:block}.preview-question small{color:var(--muted);margin-top:8px}.preview-question img{max-height:280px;object-fit:contain;margin-top:10px}.admin-pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.disabled-card{opacity:.5}.admin-ticket-list,.review-grid,.monitor-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.admin-ticket{padding:0;overflow:hidden}.compact-thread{max-height:330px;padding:14px}.admin-ticket-reply{padding:14px;border-top:1px solid #e9dfd2}.review-item p{white-space:pre-wrap}.monitor-admin-grid .card p{color:var(--muted)}

/* Mobile application shell */
@media(max-width:1180px){
  .filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-search{grid-column:span 2}.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-grid,.admin-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.class-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filters .btn{align-self:end}
}
@media(max-width:860px){
  body:not(.sheet-open):not(.pack-open){overflow-y:auto;touch-action:pan-y}
  :root{--mobile-appbar-h:58px;--mobile-nav-h:74px}.app-sidebar{display:none}.site-main.app-main{margin-left:0;padding-top:var(--mobile-appbar-h);padding-bottom:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom));min-height:100dvh}.mobile-appbar{display:flex;position:fixed;inset:0 0 auto;z-index:1400;height:calc(var(--mobile-appbar-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) 14px 0;align-items:center;justify-content:space-between;background:rgba(23,23,23,.98);color:#fff;border-bottom:1px solid #303030}.mobile-appbar .brand{font-size:1.05rem}.mobile-appbar .brand-mark{width:20px;height:18px}.mobile-appbar-actions{display:flex;align-items:center;gap:7px}.mini-points{font-size:.72rem;color:#f0b14c;font-weight:850}.mobile-more-toggle{background:#292929;color:#fff;width:38px;height:38px}.mobile-bottom-nav{display:grid;position:fixed;z-index:1450;inset:auto 0 0;grid-template-columns:repeat(5,1fr);height:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom));padding:7px 5px env(safe-area-inset-bottom);background:rgba(20,20,20,.98);border-top:1px solid #353535;box-shadow:0 -8px 28px rgba(0,0,0,.12)}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:11px;color:#aaa;font-size:.62rem;font-weight:700;min-width:0}.mobile-bottom-nav .nav-icon{height:25px}.mobile-bottom-nav a.active{color:#fff;background:#2b2b2b}.mobile-bottom-nav a.active .nav-icon{color:var(--app-accent)}.mobile-more-sheet{display:block;position:fixed;inset:0;z-index:2000}.sheet-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.56)}.sheet-panel{position:absolute;inset:auto 0 0;background:#fffaf4;border-radius:24px 24px 0 0;padding:8px 14px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -22px 50px rgba(0,0,0,.22);max-height:75vh;overflow:auto}.sheet-handle{width:42px;height:4px;border-radius:99px;background:#cfc3b3;margin:2px auto 10px}.sheet-head{display:flex;justify-content:space-between;align-items:center;padding:4px 2px 10px}.sheet-panel nav{display:grid;gap:4px}.sheet-panel nav>a,.sheet-logout{border:0;width:100%;background:transparent;border-radius:12px;padding:11px 12px;display:flex;align-items:center;gap:10px;text-align:left;color:#2a2722;font-weight:800}.sheet-panel nav>a:hover,.sheet-logout:hover{background:#f2e9dc}.sheet-logout{font:inherit;cursor:pointer}.app-page{padding:20px 15px 28px;gap:18px;width:100%}.app-page-head{align-items:flex-start}.app-page-head h1{font-size:2rem}.app-page-head>div:first-child{min-width:0}.app-page-head>.btn{flex:none}.dashboard-welcome{align-items:flex-start}.quick-stats{justify-content:flex-start}.continue-card{padding:23px;min-height:190px}.continue-visual{width:82px;height:82px;border-radius:24px;font-size:2.6rem}.dashboard-grid,.dashboard-grid-wide{grid-template-columns:1fr}.profile-hero{align-items:flex-start;flex-direction:column}.profile-stats{width:100%;grid-template-columns:repeat(4,1fr)}.profile-stats>div{min-width:0;padding:11px 6px}.profile-grid{grid-template-columns:1fr}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-search{grid-column:1/-1}.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.monitor-layout{grid-template-columns:1fr}.monitor-ticket-list{max-height:350px}.monitor-conversation{min-height:430px}.admin-shell{grid-template-columns:1fr}.admin-nav{position:static;display:flex;overflow:auto;padding:7px;gap:4px}.admin-nav button{white-space:nowrap;flex:none}.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-dashboard-grid{grid-template-columns:1fr}.exercise-admin-grid{grid-template-columns:1fr}.admin-ticket-list,.review-grid,.monitor-admin-grid{grid-template-columns:1fr}.admin-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dialog-body{padding:16px}
}
@media(max-width:620px){
  .app-page{padding-inline:12px}.app-page-head{display:grid;grid-template-columns:1fr}.app-page-head>.btn,.app-page-head>.points-card{justify-self:start}.dashboard-welcome{display:grid}.quick-stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.quick-stats span{text-align:center;padding:8px 5px}.continue-card{grid-template-columns:1fr;padding:21px}.continue-card::after{right:-130px;top:-120px}.continue-visual{display:none}.continue-actions{display:grid}.continue-actions .btn{width:100%}.dashboard-grid .card,.recent-card{padding:18px}.activity-row{grid-template-columns:auto minmax(0,1fr) auto}.profile-identity{align-items:flex-start}.avatar-xl{width:76px;height:76px}.profile-stats strong{font-size:.95rem}.profile-stats span{font-size:.56rem}.achievement-grid{grid-template-columns:1fr}.filter-grid{grid-template-columns:1fr}.filter-search{grid-column:auto}.filter-grid .field{min-width:0}.exercise-grid{grid-template-columns:1fr}.exercise-card.featured{max-width:none}.exercise-player-head{grid-template-columns:1fr}.exercise-player-head .exercise-xp{justify-self:start}.player-progress{padding:15px 17px}.player-question{padding:20px 16px}.player-actions .btn{width:100%}.diagnostic-overview{grid-template-columns:1fr}.diagnostic-main-score{border-right:0;border-bottom:1px solid #e9ded0;padding:0 0 20px}.diagnostic-columns{grid-template-columns:1fr}.pack-grid{grid-template-columns:1fr}.collection-callout{align-items:flex-start;flex-direction:column}.collection-stats{grid-template-columns:repeat(2,1fr)}.collection-filters{grid-template-columns:1fr}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.collect-meta{padding:11px}.collect-meta h3{font-size:.88rem}.pack-stage{padding:18px 12px;border-radius:22px}.pack-stage .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.thread-head{padding:15px}.chat-thread{padding:13px}.chat-bubble{max-width:88%}.thread-reply,.monitor-reply{padding:13px}.thread-actions{justify-content:stretch}.thread-actions>*{flex:1}.admin-section-head{align-items:flex-start;flex-direction:column}.admin-section-head .btn{width:100%}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metric strong{font-size:1.5rem}.class-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filters{grid-template-columns:1fr}.student-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-steps{display:flex;overflow:auto;justify-content:space-between}.wizard-steps button{min-width:76px}.wizard-steps button span{display:none}.wizard-actions{grid-template-columns:auto 1fr auto}.wizard-actions>div{display:none}.wizard-actions #wizardSave{grid-column:3}.question-editor{padding:12px}.question-editor .two-col,.question-editor .three-col{grid-template-columns:1fr!important}.review-question-list>div{grid-template-columns:auto 1fr}.review-question-list small{grid-column:2}.admin-pack-grid{grid-template-columns:1fr}.admin-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pagination{flex-wrap:wrap;justify-content:center}.data-table{min-width:760px}
}
@media(max-width:390px){
  .app-page{padding-inline:10px}.mobile-bottom-nav{padding-inline:2px}.mobile-bottom-nav a{font-size:.57rem}.mobile-bottom-nav .nav-icon{font-size:.92rem}.quick-stats span{font-size:.65rem}.quick-stats b{font-size:.78rem}.continue-card h2{font-size:1.45rem}.collection-grid,.admin-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-identity{gap:12px}.profile-identity h1{font-size:1.5rem}.profile-stats{grid-template-columns:repeat(2,1fr)}.pack-stage .cards-grid{grid-template-columns:1fr}.admin-metrics{grid-template-columns:1fr 1fr}.class-activity-grid{grid-template-columns:1fr}.dialog-head{padding:14px}.dialog-body{padding:12px}.wizard-actions{position:sticky;bottom:-12px;background:#fffaf4;padding:10px 0 2px}.btn{white-space:normal}
}
@media(max-width:330px){.app-page{padding-inline:8px}.mobile-bottom-nav a span:last-child{font-size:.52rem}.collection-grid,.admin-card-grid{grid-template-columns:1fr 1fr}.collect-meta h3{font-size:.8rem}.profile-stats>div{padding-inline:3px}.quick-stats{grid-template-columns:1fr 1fr}.quick-stats span:last-child{grid-column:1/-1}.admin-nav button{padding:9px}.app-page-head h1{font-size:1.75rem}}
@media(prefers-reduced-motion:reduce){.pack-art.big,.pack-reveal-card,.skeleton-block{animation:none!important}}

/* =========================================================
   PHILAR 6.1 — diagnóstico inicial e editor de questões
   ========================================================= */
.sidebar-diagnostic-lock{margin:0 7px 14px;padding:12px;border:1px solid #4d3b1c;background:#261f14;border-radius:15px;display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center}.sidebar-diagnostic-lock>span{width:34px;height:34px;border-radius:11px;background:var(--app-accent);color:#171717;display:grid;place-items:center;font-weight:950}.sidebar-diagnostic-lock strong,.sidebar-diagnostic-lock small{display:block}.sidebar-diagnostic-lock strong{font-size:.78rem;color:#fff}.sidebar-diagnostic-lock small{font-size:.65rem;color:#bdb2a4;margin-top:2px}.mini-required{font-size:.68rem;font-weight:900;color:#ffd073;border:1px solid #60491e;padding:5px 8px;border-radius:999px;background:#2c2417}

.wizard-steps button.done b{background:#e5f3e9;color:#16603a}.wizard-steps button.done{color:#4f735e}.field-invalid{border-color:#c83b31!important;box-shadow:0 0 0 4px rgba(200,59,49,.1)!important}.question-editor-head>div{min-width:0}.question-scope-label{display:block;color:var(--muted);font-size:.68rem;margin-top:2px}.diagnostic-settings{display:grid;gap:14px;padding:16px;border:1px solid #ead7b9;border-radius:16px;background:#fff9ed}.question-post-image-text{font-size:1.03rem;line-height:1.65;margin:0 0 22px;white-space:pre-wrap}.diagnostic-player-note{display:block;text-align:right;color:var(--muted);font-size:.72rem;margin-top:10px}.player-actions{gap:9px;flex-wrap:wrap}.player-actions .btn-ghost{background:#f3ece2;color:#302a22;border-color:#dfd1bf}

.diagnostic-onboarding{max-width:980px}.diagnostic-intro-card{padding:clamp(22px,4vw,42px);display:grid;grid-template-columns:auto 1fr;gap:20px 24px;align-items:start}.diagnostic-intro-icon{width:72px;height:72px;border-radius:22px;background:#f4e4c8;color:#75500d;display:grid;place-items:center;font-size:2.35rem;font-weight:950}.diagnostic-intro-copy h2{font-size:clamp(1.7rem,3vw,2.45rem);margin:2px 0 9px}.diagnostic-intro-copy p{color:var(--muted);font-size:1rem;max-width:720px}.diagnostic-honesty-callout{grid-column:1/-1;padding:17px 18px;border-radius:16px;background:#fff4dc;border:1px solid #edcf97}.diagnostic-honesty-callout strong{display:block;color:#6d4700}.diagnostic-honesty-callout p{margin:5px 0 0;color:#695d4c}.diagnostic-instructions{grid-column:1/-1;display:grid;gap:8px}.diagnostic-instructions h3{margin:3px 0 6px}.diagnostic-instruction{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start;padding:10px 0;border-bottom:1px solid #eee3d4}.diagnostic-instruction:last-child{border-bottom:0}.diagnostic-instruction b{width:32px;height:32px;border-radius:10px;background:#eee3d3;display:grid;place-items:center;color:#6b5434}.diagnostic-start-note{grid-column:1/-1;display:flex;gap:11px;align-items:flex-start;padding:13px 15px;border-radius:14px;background:#eef7f1;border:1px solid #c9e4d1;color:#1b5737}.diagnostic-start-note span{font-weight:950}.diagnostic-start-note p{margin:0}.diagnostic-start-btn{grid-column:1/-1;justify-self:stretch;min-height:52px}

@media(max-width:620px){.diagnostic-intro-card{grid-template-columns:1fr;gap:15px}.diagnostic-intro-icon{width:58px;height:58px;border-radius:18px;font-size:1.9rem}.diagnostic-honesty-callout,.diagnostic-instructions,.diagnostic-start-note,.diagnostic-start-btn{grid-column:auto}.diagnostic-intro-card{padding:20px 17px}.player-actions{display:grid;grid-template-columns:1fr}.player-actions .btn{width:100%}.diagnostic-player-note{text-align:center}.question-image-picker{padding:10px}}

.diagnostic-admin-summary{display:grid;gap:16px;margin-bottom:18px}.diagnostic-scope-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.diagnostic-scope-counts span{padding:12px;border:1px solid var(--line);border-radius:14px;background:#faf4e9;font-size:.78rem;color:var(--muted)}.diagnostic-scope-counts b{display:block;font-size:1.35rem;color:var(--ink)}@media(max-width:620px){.diagnostic-scope-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* =========================================================
   PHILAR 6.2 — gerenciador seguro de questões do diagnóstico
   ========================================================= */
.diagnostic-question-manager{display:grid;gap:20px;margin-bottom:18px}.diagnostic-question-manager>.card-head{align-items:flex-start;gap:16px}.diagnostic-question-manager>.card-head p{margin:4px 0 0}.diagnostic-question-group{display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--line)}.diagnostic-question-group:first-of-type{padding-top:4px;border-top:0}.diagnostic-question-admin-list{display:grid;gap:8px}.diagnostic-question-admin-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.diagnostic-question-number{width:36px;height:36px;border-radius:11px;background:#f5ead8;color:#7b5110;display:grid;place-items:center;font-weight:950}.diagnostic-question-copy{min-width:0}.diagnostic-question-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.92rem}.diagnostic-question-copy small{display:block;color:var(--muted);font-size:.72rem;margin-top:3px}.standalone-question-form{display:grid;gap:14px}.standalone-question-form .question-editor{margin:0}.standalone-question-form .question-editor-head{padding-bottom:10px}.standalone-question-actions{position:sticky;bottom:-16px;background:var(--surface);border-top:1px solid var(--line);padding:12px 0 2px;z-index:2}.standalone-question-actions .btn-ghost{background:#f3ece2;color:var(--ink);border-color:var(--line)}
@media(max-width:760px){.diagnostic-question-admin-row{grid-template-columns:36px minmax(0,1fr)}.diagnostic-question-admin-row>.inline-actions{grid-column:2;display:flex;flex-wrap:wrap}.diagnostic-question-admin-row>.inline-actions .btn{flex:1}.diagnostic-question-manager>.card-head{display:grid;grid-template-columns:1fr}.diagnostic-question-manager>.card-head>.btn{width:100%}}
@media(max-width:430px){.diagnostic-question-admin-row{padding:10px;gap:9px}.diagnostic-question-copy strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.standalone-question-actions{grid-template-columns:1fr}.standalone-question-actions .btn{width:100%}}

/* v6.5 — conversas em tempo quase real e menus que não ficam cortados */
.pretty-select.open-up .pretty-select-menu{top:auto;bottom:calc(100% + 8px)}
.monitor-conversation{overflow:visible}
.monitor-chat{border-radius:0;scroll-behavior:smooth}
.typing-slot{min-height:34px;background:#f6f1e9;padding:0 18px 9px}
.typing-indicator{display:flex;align-items:center;gap:8px;color:#756956;font-size:.74rem;font-weight:700;min-height:25px}
.typing-dots{display:inline-flex;align-items:center;gap:3px;background:#fff;border:1px solid #dfd4c5;border-radius:14px;padding:7px 9px}
.typing-dots i{width:5px;height:5px;border-radius:50%;background:#8c7e6a;animation:typingDot 1s infinite ease-in-out}
.typing-dots i:nth-child(2){animation-delay:.14s}.typing-dots i:nth-child(3){animation-delay:.28s}
@keyframes typingDot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-3px);opacity:1}}
.monitor-reply-actions{position:relative;align-items:flex-end}
.role-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.68rem;font-weight:900;background:#eee5d8;color:#5d5140}
.role-monitor{background:#e7efff;color:#244a85}.role-admin{background:#fff0cc;color:#7d4c00}.role-aluno{background:#edf4ea;color:#315e2b}
.account-management{display:grid;gap:22px}.dialog-divider{border:0;border-top:1px solid #e8ddcf;width:100%;margin:0}.password-card .form-grid{margin-top:12px}
@media(max-width:700px){.typing-slot{padding-inline:13px}.monitor-reply-actions>*{min-width:0}.monitor-reply-actions .pretty-select{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.typing-dots i{animation:none}}

/* =========================================================
   PHILAR 7 — dashboard, revisão, banco, avisos e gestão
   ========================================================= */
.site-main.app-main{align-self:stretch}
.app-page{padding-top:22px}
.page-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.page-title-row h1{font-size:clamp(2rem,3.2vw,3.1rem);margin:.25rem 0 .45rem}.page-title-row p{margin:0;color:var(--muted);max-width:780px}
.mobile-bell{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#292929;color:#fff;font-weight:900}
.dashboard-notices{display:grid;gap:12px}.section-row{display:flex;align-items:end;justify-content:space-between;gap:16px}.section-row h2{font-size:1.35rem;margin:0}.notice-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);gap:12px;overflow:auto;padding-bottom:4px;scroll-snap-type:x proximity}.mini-notice{scroll-snap-align:start;display:grid;grid-template-columns:100px 1fr;min-height:110px;border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.mini-notice img{width:100%;height:100%;object-fit:cover}.mini-notice>div{padding:14px}.mini-notice strong{display:block;margin-bottom:5px}.mini-notice p{font-size:.8rem;color:var(--muted);margin:0;line-height:1.45}
.dashboard-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-action-card{display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:center;padding:15px 16px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 8px 25px rgba(44,33,20,.045)}.quick-action-card>span{width:46px;height:46px;border-radius:14px;background:#fff0d5;display:grid;place-items:center;color:#9b6100;font-weight:950;font-size:1.25rem}.quick-action-card strong,.quick-action-card small{display:block}.quick-action-card small{color:var(--muted);margin-top:3px;font-size:.72rem}
.notice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.notice-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 12px 34px rgba(35,27,18,.05)}.notice-card.unread{border-color:#e6a136;box-shadow:0 0 0 3px rgba(245,165,36,.11),0 12px 34px rgba(35,27,18,.05)}.notice-card>img{width:100%;aspect-ratio:16/6;object-fit:cover}.notice-body{padding:20px}.notice-body h2{margin:8px 0}.notice-body p{color:var(--muted);white-space:pre-wrap}.notice-meta{display:flex;justify-content:space-between;gap:10px;color:#a45e00;font-size:.7rem;font-weight:900;letter-spacing:.08em}
.notification-list{display:grid;gap:9px}.notification-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:15px 17px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.notification-item.unread{background:#fff8e9;border-color:#edca8b}.notification-item p{margin:3px 0;color:var(--muted)}.notification-item small{color:var(--muted)}.notification-dot{width:8px;height:8px;border-radius:50%;background:#c8bba8}.notification-item.unread .notification-dot{background:var(--app-accent)}
.revision-list{display:grid;gap:16px}.revision-card{max-width:980px;margin-inline:auto;width:100%}.revision-head{display:flex;justify-content:space-between;gap:20px}.revision-head h2{margin:8px 0 3px}.question-prompt{font-size:1.08rem;font-weight:730;line-height:1.6;white-space:pre-wrap}.question-inline-image{max-width:100%;max-height:500px;display:block;object-fit:contain;margin:16px auto;border-radius:16px;border:1px solid var(--line)}.answer-options{display:grid;gap:8px;margin:15px 0}.answer-options label{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer}.revision-feedback{padding:12px;border-radius:12px;margin:10px 0}.revision-feedback.ok{background:#eaf7ef;color:#1f603b}.revision-feedback.error{background:#fff0ed;color:#8b2d24}.hero-count{min-width:120px;padding:12px 16px;border-radius:18px;background:#171717;color:#fff;text-align:center}.hero-count strong,.hero-count span{display:block}.hero-count strong{font-size:1.8rem;color:var(--app-accent)}
.filter-card{padding:14px 16px}.bank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bank-question h3{margin:10px 0 7px}.bank-question p{color:var(--muted);line-height:1.5}.bank-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.bank-tags span,.difficulty-tag{font-size:.68rem;padding:5px 8px;border-radius:999px;background:#f2eadf;color:#655641;font-weight:800}.app-dialog{width:min(920px,calc(100% - 28px));max-height:92vh;border:0;border-radius:24px;padding:0;background:#fffaf5;box-shadow:0 28px 90px rgba(0,0,0,.26);overflow:auto}.app-dialog::backdrop{background:rgba(0,0,0,.55)}.app-dialog>div{padding:22px}.smart-upload{display:grid;gap:10px;border:1.5px dashed #d2b47e;border-radius:18px;background:#fff9ee;padding:14px}.smart-upload>label{min-height:84px;display:grid;place-items:center;text-align:center;cursor:pointer;border-radius:13px}.smart-upload>label strong,.smart-upload>label span{display:block}.smart-upload>label span{font-size:.75rem;color:var(--muted);margin-top:5px}.smart-upload img{max-width:100%;max-height:320px;display:block;margin:auto;border-radius:12px}.question-editor textarea{min-height:110px}
.report-kpis,.monitor-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.report-kpis article,.monitor-kpis article{display:grid;gap:2px}.report-kpis strong,.monitor-kpis strong{font-size:2rem}.report-kpis span,.monitor-kpis span{font-size:.75rem;color:var(--muted);font-weight:800}.skill-report{display:grid;gap:12px}.skill-report>div{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,2fr) 55px;gap:14px;align-items:center}.skill-report strong,.skill-report small{display:block}.skill-report small{color:var(--muted)}
.notice-admin-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.notice-admin-image{width:100%;max-height:240px;object-fit:cover;border-radius:14px;margin:12px 0}.backup-history{display:grid;gap:8px}.backup-history>div{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;padding:12px;border-bottom:1px solid var(--line)}
.monitor-dashboard-head{align-items:flex-start}.monitor-kpis{margin-top:-6px}
.camera-picker{position:relative}.camera-picker>input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.camera-picker::before{content:'Adicionar foto';display:flex;align-items:center;justify-content:center;width:max-content;min-width:150px;min-height:46px;padding:0 16px;border-radius:13px;background:#171717;color:#fff;font-weight:850}.camera-picker::after{content:'Toque para fotografar ou escolher da galeria';display:block;color:var(--muted);font-size:.75rem;margin-top:8px}.camera-picker>small{display:none}
.thread-actions{overflow:visible}.monitor-reply{overflow:visible}.pretty-select.open{z-index:50}
@media(max-width:900px){.dashboard-quick-actions,.report-kpis,.monitor-kpis{grid-template-columns:repeat(2,1fr)}.notice-grid,.bank-grid,.notice-admin-list{grid-template-columns:1fr}.page-title-row{align-items:flex-start;flex-direction:column}.skill-report>div{grid-template-columns:1fr 70px}.skill-report .progress{grid-row:2;grid-column:1/-1}.mini-notice{grid-template-columns:80px 1fr}}
@media(max-width:620px){.app-page{padding-top:14px}.dashboard-quick-actions{grid-template-columns:1fr}.notice-strip{grid-auto-columns:86%}.notification-item{grid-template-columns:auto 1fr}.notification-item .btn{grid-column:2;justify-self:start}.revision-head{flex-direction:column}.report-kpis,.monitor-kpis{grid-template-columns:repeat(2,1fr)}.bank-grid{grid-template-columns:1fr}.backup-history>div{grid-template-columns:1fr}.page-title-row .inline-actions{width:100%}.page-title-row .inline-actions .btn{flex:1}.app-dialog{width:calc(100% - 14px);border-radius:20px}.app-dialog>div{padding:15px}}
@media print{.app-sidebar,.mobile-appbar,.mobile-bottom-nav,.btn,.site-header{display:none!important}.site-main.app-main{margin:0!important;padding:0!important}.app-page{max-width:none!important;padding:12mm!important}.card{box-shadow:none!important}}
.upload-preview{display:flex;align-items:center;gap:12px;margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:14px;background:#fff}.upload-preview img{width:72px;height:72px;object-fit:cover;border-radius:10px}.upload-preview strong,.upload-preview small{display:block}.upload-preview small{color:var(--muted);margin-top:3px}
