/* ============================================================
   ATLAS — camada editorial (opção 1a) sobre o app RPG Life.
   Carregar DEPOIS do CSS base do app. Papel quente, serifa
   Instrument Serif, cantos retos, hairlines, botões pretos.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&display=swap');
:root{
--bg:#F7F5F0;--surface:#F7F5F0;--surface2:#EFEBE0;--border:#D8D3C6;--border-soft:#E7E2D5;
--primary:#5A62E8;--primary-l:#8B92FF;--primary-d:#3F47D6;
--gold:#17150F;--pink:#E5533F;--pink-l:#EF7A66;--green:#1E7F5C;--red:#C7402E;--orange:#A66A10;--blue:#2E7FA8;
--text:#17150F;--text-2:#17150F99;--muted:#8A8578;--navy:#17150F;
--r-sm:0px;--r:0px;--r-lg:0px;
--shadow-sm:none;--shadow-md:none;--shadow-lg:0 24px 60px rgba(23,21,15,.2);
--ring:0 0 0 3px rgba(90,98,232,.18);
--grad-brand:linear-gradient(120deg,#17150F,#17150F); /* @kind color */
--font-display:'Instrument Serif',Georgia,serif;
}
html[data-theme="dark"]{
--bg:#161310 !important;--surface:#161310;--surface2:#211D17;--border:#3B362B;--border-soft:#2C2820;
--primary:#8B92FF !important; /* @kind color */
--primary-l:#AEB3FF !important; /* @kind color */
--primary-d:#7A81F2;
--gold:#F0EBDD !important; /* @kind color */
--pink:#F2705C;--pink-l:#FF9A87;--green:#4FBF97;--red:#F2705C;--orange:#D9A04C;--blue:#6FB8DF;
--text:#F0EBDD;--muted:#9A937F;--navy:#F0EBDD;
--shadow-sm:none;--shadow-md:none;
--grad-brand:linear-gradient(120deg,#F0EBDD,#F0EBDD); /* @kind color */
}
body{background-image:none !important;font-size:14.5px}
h1,h2,h3,h4{font-weight:400 !important;letter-spacing:0}
.section-header h1{font-size:32px}
.trilha-greet{font-weight:400;font-size:40px;letter-spacing:-.01em;margin-top:6px;line-height:1.05}
.msala-name{font-weight:400;font-size:30px}
.rv-v{font-weight:400;font-size:26px}
.rv-v-sm{font-weight:400;font-size:19px}
.tl-now-name{font-weight:400;font-size:26px}
.fsc-value,.reward-balance-value,.streak-count,.modal-title,.char-class-name,.book-title,.crm-col-title,.journey-col-headtitle,.dash-day-head,.levelup-title{font-weight:400 !important}
.page-title{background:none;-webkit-text-fill-color:var(--text);font-weight:400 !important;font-size:34px}
/* ---------- botões: retos, pretos, sem sombra ---------- */
.btn,.btn-now,#undo-btn,.rv-idea-row button,.levelup-card button{border-radius:0 !important;box-shadow:none !important;font-weight:700}
.btn-primary{background:var(--navy);color:var(--bg)}
.btn-primary:hover{background:#000;box-shadow:none;color:#F7F5F0}
html[data-theme="dark"] .btn-primary:hover{background:#fff;color:#161310}
.btn-gold{background:var(--primary);box-shadow:none}
.btn-gold:hover{background:var(--primary-d);filter:none}
.btn-ghost{border:1px solid var(--navy);color:var(--navy)}
.btn-ghost:hover{background:var(--navy);color:var(--bg);border-color:var(--navy)}
.btn-now{background:var(--bg);color:var(--navy)}
.chip,.badge,.tag,.cat-pill,.crm-card-origin,.backlink-item,.kn-tagchip,.crm-col-count{border-radius:0;font-family:var(--font-mono);font-size:11px}
.chip-on{background:var(--navy);border-color:var(--navy)}
/* ---------- superfícies: hairline, sem sombra nem raio ---------- */
.card,.rv-card,.tl-card,.fin-stat-card,.book-card,.crm-card,.reward-card,.objective-card,.flow-card,.msala-id,.msala-radar,.char-page,.tl-mood-btn,.task-item,.shop-item,.event-item,.streak-card,.reward-balance-card,.achievement,.workout-template,.credit-card,#modal-box,.levelup-card,.tier-node{border-radius:0 !important;box-shadow:none !important}
.crm-col,.journey-col,.dash-line,.tx-row,.checklist-item,.fin-card-mini,.debt-card,.saving-card,.notes-cal,.rv-mini>div,.cal-day,.stmt-drop{border-radius:0}
.msala-id::after{display:none}
.char-page{background:var(--surface)}
.tl-card-now{border-radius:0 !important;box-shadow:none !important;background:var(--navy);color:var(--bg)}
html[data-theme="dark"] .tl-card-now{background:#F0EBDD;color:#161310}
html[data-theme="dark"] .tl-card-now .tl-now-meta{color:rgba(22,19,16,.6)}
.tl-now-label{color:var(--primary-l);font-weight:700}
html[data-theme="dark"] .tl-now-label{color:#5A62E8}
.rv-bills{border:1px solid var(--navy) !important;border-top:7px solid var(--red) !important;box-shadow:none !important}
.streak-card,.reward-balance-card{background:var(--surface);border:1px solid var(--navy)}
/* ---------- sidebar: papel + linha estrutural + ativo sublinhado ---------- */
#sidebar{background:var(--surface) !important;border-right:1px solid var(--navy) !important}
.nav-list li{border-radius:0}
#sidebar .nav-list li.active,.nav-list li.active{background:transparent !important;color:var(--text) !important;font-weight:700;box-shadow:none;text-decoration:underline;text-underline-offset:5px}
#sidebar .nav-list li.active::before,.nav-list li.active::before{background:var(--primary)}
.sidebar-footer button,#theme-toggle{border-radius:0 !important;background:transparent !important;border:1px solid var(--border) !important}
#char-mini{border-bottom:1px solid var(--navy)}
.char-avatar{background:var(--navy);border:none;box-shadow:none;border-radius:0;color:var(--bg);font-family:var(--font-display)}
.char-class-badge{color:var(--muted) !important;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em}
.char-xp-bar-wrap{border-radius:0;height:3px}
.char-xp-bar{border-radius:0}
/* ---------- avatar / herói ---------- */
.avatar-orb{background:var(--navy);box-shadow:none}
.avatar-orb-ring{display:none}
.avatar-orb-inner{background:var(--surface)}
.avatar-lvl{border-radius:0;background:var(--navy);color:var(--bg);box-shadow:none;font-weight:400;font-family:var(--font-mono);font-size:11px}
.msala-stage{color:var(--muted)}
.char-big-avatar{background:var(--navy);border:none;box-shadow:none;animation:none;border-radius:0}
.char-level-badge{border-radius:0;background:var(--navy);font-weight:400;font-family:var(--font-mono)}
/* ---------- barras de progresso: filete ---------- */
.msala-xpbar,.xp-bar-outer,.obj-progress-bar,.rv-bar,.attr-bar-outer{border-radius:0;height:4px;background:var(--border-soft)}
.msala-xpfill,.xp-bar-inner,.obj-progress-fill,.rv-bar-fill,.attr-bar-inner{border-radius:0}
.tl-rail{width:2px;border-radius:0}
.tl-rail-fill{width:2px;border-radius:0}
.tl-dot-done{background:var(--navy)}
.tl-dot-current{background:var(--primary);box-shadow:0 0 0 5px rgba(90,98,232,.15)}
.tl-card.future{border-style:dashed}
.trilha-streak{border-radius:0;border:1px solid var(--navy);color:var(--text);box-shadow:none;font-size:12px}
.tl-fire,.streak-fire{display:none}
/* ---------- inputs ---------- */
input,textarea,select{border-radius:0 !important;background:transparent;border-color:var(--border)}
input:focus,textarea:focus,select:focus{border-color:var(--navy);box-shadow:none;background:transparent}
.rv-idea-row input{background:transparent;border:1px solid var(--border)}
.rv-idea-row button{background:var(--navy);width:40px}
.rv-idea-hint{font-style:normal;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em}
/* ---------- modal / toasts ---------- */
#modal-box::before{background:var(--navy)}
#xp-toast,#undo-toast{border-radius:0;background:var(--navy);border-color:var(--navy);color:var(--bg)}
html[data-theme="dark"] #xp-toast,html[data-theme="dark"] #undo-toast{background:#F0EBDD;color:#161310}
/* ---------- misc ---------- */
.trilha-greet-sub,.radar-cap,.trilha-side-label,.card-title{letter-spacing:.14em}
.fin-tab,.lib-tab,.shop-filter{border-radius:0}
.fin-tab.active,.lib-tab.active{background:var(--navy);border-color:var(--navy);color:var(--bg) !important}
::-webkit-scrollbar-thumb{border-radius:0}
a{color:var(--text);text-decoration:underline;text-underline-offset:4px}
a:hover{color:var(--primary)}

/* ---------- kanban (Comercial / Objetivos): cabeçalhos em cor dura ---------- */
.crm-col-head,.journey-col-head{border-radius:0 !important}
.journey-col-headtitle,.crm-col-head .crm-col-title{color:#fff !important}
.crm-col-head .crm-col-total{color:rgba(255,255,255,.8)}
.crm-col-count{border-radius:0}
.crm-col,.journey-col{border:1px solid var(--border)}

/* ============================================================
   ATLAS v2 — cantos 100% retos + ícones (lixeira, recompensas)
   ============================================================ */
/* nada arredondado, em lugar nenhum (vale sobre estilos inline) */
*,*::before,*::after{border-radius:0 !important}
/* ---------- botões de excluir/editar: símbolo visível (a limpeza de emoji os deixava vazios) ---------- */
.task-delete,.checklist-del,.tx-del,.reward-del,.book-del,.crm-card-del,.event-delete,.note-date-del,.notes-date-del-btn,.reward-history-del,button[onclick*='elete']{display:inline-flex;align-items:center;justify-content:center}
.task-delete:empty::before,.checklist-del:empty::before,.tx-del:empty::before,.reward-del:empty::before,.book-del:empty::before,.crm-card-del:empty::before,.event-delete:empty::before,.note-date-del:empty::before,.notes-date-del-btn:empty::before,.reward-history-del:empty::before,button[onclick*='elete']:empty::before{content:'';display:inline-block;width:15px;height:15px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2'/%3E%3Cpath d='M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6'/%3E%3Cpath d='M10 11v6M14 11v6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2'/%3E%3Cpath d='M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6'/%3E%3Cpath d='M10 11v6M14 11v6'/%3E%3C/svg%3E") center/contain no-repeat}
.notes-date-del-btn:empty::before{width:18px;height:18px}
.tx-edit:empty::before,button[onclick*='_openEdit']:empty::before{content:'';display:inline-block;width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z'/%3E%3C/svg%3E") center/contain no-repeat}
.modal-close:empty::before{content:'';display:inline-block;width:13px;height:13px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center/contain no-repeat}
.task-delete,.reward-del,.book-del,.crm-card-del{opacity:.45}
/* ---------- conjunto de ícones Atlas (usa currentColor) ---------- */
.aticon{display:inline-block;width:24px;height:24px;background:currentColor;flex-shrink:0}
.aticon-gift{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='7' width='20' height='5'/%3E%3Cpath d='M12 22V7'/%3E%3Cpath d='M20 12v10H4V12'/%3E%3Cpath d='M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z'/%3E%3Cpath d='M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='7' width='20' height='5'/%3E%3Cpath d='M12 22V7'/%3E%3Cpath d='M20 12v10H4V12'/%3E%3Cpath d='M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z'/%3E%3Cpath d='M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-star{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-coffee{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8h1a4 4 0 0 1 0 8h-1'/%3E%3Cpath d='M2 8h16v9a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4V8z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8h1a4 4 0 0 1 0 8h-1'/%3E%3Cpath d='M2 8h16v9a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4V8z'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-book{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-plane{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 2 11 13'/%3E%3Cpath d='M22 2 15 22l-4-9-9-4 20-7z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 2 11 13'/%3E%3Cpath d='M22 2 15 22l-4-9-9-4 20-7z'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-cart{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-film{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='2' width='20' height='20'/%3E%3Cpath d='M7 2v20M17 2v20M2 12h20M2 7h5M2 17h5M17 17h5M17 7h5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='2' width='20' height='20'/%3E%3Cpath d='M7 2v20M17 2v20M2 12h20M2 7h5M2 17h5M17 17h5M17 7h5'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-music{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18V5l12-2v13'/%3E%3Ccircle cx='6' cy='18' r='3'/%3E%3Ccircle cx='18' cy='16' r='3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18V5l12-2v13'/%3E%3Ccircle cx='6' cy='18' r='3'/%3E%3Ccircle cx='18' cy='16' r='3'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-gamepad{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='6' y1='12' x2='10' y2='12'/%3E%3Cline x1='8' y1='10' x2='8' y2='14'/%3E%3Cline x1='15' y1='13' x2='15.01' y2='13'/%3E%3Cline x1='18' y1='11' x2='18.01' y2='11'/%3E%3Crect x='2' y='6' width='20' height='12'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='6' y1='12' x2='10' y2='12'/%3E%3Cline x1='8' y1='10' x2='8' y2='14'/%3E%3Cline x1='15' y1='13' x2='15.01' y2='13'/%3E%3Cline x1='18' y1='11' x2='18.01' y2='11'/%3E%3Crect x='2' y='6' width='20' height='12'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-dumbbell{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 7v10M10 4v16M14 4v16M18 7v10M2 12h4M18 12h4M10 12h4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 7v10M10 4v16M14 4v16M18 7v10M2 12h4M18 12h4M10 12h4'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-trophy{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 21h8M12 17v4'/%3E%3Cpath d='M7 4h10v6a5 5 0 0 1-10 0V4z'/%3E%3Cpath d='M17 5h3v2a3 3 0 0 1-3 3M7 5H4v2a3 3 0 0 0 3 3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 21h8M12 17v4'/%3E%3Cpath d='M7 4h10v6a5 5 0 0 1-10 0V4z'/%3E%3Cpath d='M17 5h3v2a3 3 0 0 1-3 3M7 5H4v2a3 3 0 0 0 3 3'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-heart{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E") center/contain no-repeat}
.aticon-coin{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v10M9.5 9.5h4a1.5 1.5 0 0 1 0 3h-3a1.5 1.5 0 0 0 0 3h4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v10M9.5 9.5h4a1.5 1.5 0 0 1 0 3h-3a1.5 1.5 0 0 0 0 3h4'/%3E%3C/svg%3E") center/contain no-repeat}
/* recompensas: imagem padrão quando não há ícone definido */
.reward-icon{display:flex;align-items:center;justify-content:center;min-height:38px}
.reward-icon:empty::before{content:'';width:34px;height:34px;background:var(--navy);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='7' width='20' height='5'/%3E%3Cpath d='M12 22V7'/%3E%3Cpath d='M20 12v10H4V12'/%3E%3Cpath d='M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z'/%3E%3Cpath d='M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='7' width='20' height='5'/%3E%3Cpath d='M12 22V7'/%3E%3Cpath d='M20 12v10H4V12'/%3E%3Cpath d='M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z'/%3E%3Cpath d='M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E") center/contain no-repeat}
.reward-balance-icon:empty::before{content:'';display:inline-block;width:36px;height:36px;background:var(--pink);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E") center/contain no-repeat}
.reward-balance-card:last-child .reward-balance-icon:empty::before,.reward-balance-icon.gold:empty::before{background:var(--orange);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v10M9.5 9.5h4a1.5 1.5 0 0 1 0 3h-3a1.5 1.5 0 0 0 0 3h4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v10M9.5 9.5h4a1.5 1.5 0 0 1 0 3h-3a1.5 1.5 0 0 0 0 3h4'/%3E%3C/svg%3E") center/contain no-repeat}
.reward-card{border:1px solid var(--border);background:var(--surface)}
.reward-card:hover:not(.cant-afford){border-color:var(--navy);transform:none;box-shadow:none}

/* ============================================================
   ATLAS v3 — level up com contraste + varredura ponta a ponta
   ============================================================ */
/* level up: cartão de papel sólido, filete índigo, texto tinta */
#levelup-overlay{background:rgba(23,21,15,.62);backdrop-filter:blur(3px)}
.levelup-card{background:var(--surface) !important;border:1px solid var(--navy) !important;border-top:8px solid var(--primary) !important;padding:52px 64px;text-align:center}
.levelup-title{font-family:var(--font-display) !important;font-weight:400 !important;font-size:46px;color:var(--text) !important;letter-spacing:0;text-transform:none}
#levelup-msg{color:var(--text);font-size:15px;line-height:1.65;margin:14px 0 26px}
#levelup-msg b{color:var(--primary)}
#levelup-msg i{color:var(--muted)}
.levelup-emoji{animation:none}
.levelup-card button{background:var(--navy);color:var(--bg);border-radius:0;padding:14px 28px;font-weight:700}
html[data-theme="dark"] .levelup-card{background:var(--surface) !important;border-color:var(--navy) !important}
/* superfícies que ainda tinham gradiente esmaecido (claro e noite) */
.reward-balance-card,.streak-card,.tier-node.current,.achievement.earned,.char-page{background:var(--surface) !important}
.tier-node.current{border-color:var(--navy) !important;transform:none}
.achievement.earned{border-color:var(--primary) !important}
html[data-theme="dark"] .reward-balance-card,html[data-theme="dark"] .streak-card,html[data-theme="dark"] .tier-node.current,html[data-theme="dark"] .achievement.earned,html[data-theme="dark"] .char-page,html[data-theme="dark"] .levelup-card{background:var(--surface) !important}
/* detalhes finais */
.cal-day.today{box-shadow:none}
.tl-dot-current{box-shadow:none}
.msala-id,.msala-radar{border:1px solid var(--border)}
#xp-toast{font-weight:700}

/* ---------- ícones do menu com cor ---------- */
.nav-list li svg{color:#5A62E8}
.nav-list li[data-section="personagem"] svg{color:#6C55C8}
.nav-list li[data-section="agenda"] svg{color:#2E7FA8}
.nav-list li[data-section="objetivos"] svg{color:#C7402E}
.nav-list li[data-section="linha"] svg{color:#A66A10}
.nav-list li[data-section="insights"] svg{color:#E5533F}
.nav-list li[data-section="espiritual"] svg{color:#C7402E}
.nav-list li[data-section="financas"] svg{color:#1E7F5C}
.nav-list li[data-section="comercial"] svg{color:#2E7FA8}
.nav-list li[data-section="treinos"] svg{color:#1E7F5C}
.nav-list li[data-section="biblioteca"] svg{color:#A66A10}
.nav-list li[data-section="compras"] svg{color:#6C55C8}
.nav-list li[data-section="recompensas"] svg{color:#E5533F}
/* moedas: valor de vida em ocre (moeda de ouro), ouro mantém --gold */
.reward-balance-value{color:#A66A10 !important}

/* ============================================================
   DENSIDADE / RITMO DE ESPAÇAMENTO — normalização ponta a ponta
   ============================================================ */
/* escala única de rebatimento vertical entre blocos de uma tela */
#main-content{padding:30px 40px}
@media (min-width:1500px){#main-content{padding:34px 56px}}
.section-header{margin-bottom:24px}
.page-subtitle{margin-bottom:24px}

/* abas: nunca quebram linha; ícone alinhado inline; altura consistente */
.fin-tabs,.lib-tabs{gap:8px;margin-bottom:20px;align-items:stretch}
.fin-tab,.lib-tab{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:9px 16px;line-height:1;min-height:38px}
.fin-tab .eic-i,.fin-tab svg,.lib-tab .eic-i,.lib-tab svg{flex:0 0 auto}

/* cards: padding e rebatimento uniformes; primeiro card cola no header */
.card{padding:22px}
.card+.card{margin-top:16px}
.card-title{margin-bottom:14px}

/* grids de resumo/estatística: gaps e margens iguais */
.fin-summary-grid{gap:14px;margin-bottom:20px}
.fin-stat-card{padding:18px}
.rewards-grid{gap:14px}
.reward-card{padding:18px}
.books-grid{gap:16px}

/* toolbars de topo (seletor + botão): mesma linha de base, sem estouro */
.section-header>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.section-header select,.section-header input[type=month],.section-header input[type=date]{min-height:40px}

/* barras de saldo/recompensa: respiro igual entre as duas */
.reward-balance-card{padding:20px 22px;gap:16px}

/* espaço morto abaixo de rótulos mono repetidos */
.trilha-side-label,.tl-mood-label,.fsc-label{margin-bottom:8px}

/* ---------- toolbar de topo: botão não fica órfão (Finanças etc.) ---------- */
.section-header{align-items:flex-start;row-gap:12px}
.section-header>div{gap:10px 12px;justify-content:flex-end}
@media (max-width:1180px){.section-header{flex-wrap:wrap}.section-header>div{width:100%;justify-content:flex-start}}

/* ---------- gráficos redondos escapam do "tudo reto" (composição de gastos) ---------- */
[style*="conic-gradient"],[style*="border-radius:50%"],[style*="border-radius: 50%"]{border-radius:50% !important}
