/* TributaSim — estilo compartilhado (tema escuro por padrão; claro com <html data-theme="light">) */
:root{--bg:#070B14;--bg2:#0B1220;--paper:var(--bg);--surface:rgba(255,255,255,.035);--surface-2:rgba(255,255,255,.06);--ink:#E8EEF8;--muted:#8C98AE;--line:rgba(255,255,255,.09);--line-strong:rgba(255,255,255,.18);
--act:#22D3EE;--act-2:#3B82F6;--act-soft:rgba(34,211,238,.12);--win:#34D399;--win-soft:rgba(52,211,153,.13);--est:#FBBF24;--est-soft:rgba(251,191,36,.14);--alert:#F87171;--alert-soft:rgba(248,113,113,.14);
--track:rgba(255,255,255,.08);--shadow:0 18px 50px rgba(0,0,0,.45);--radius:14px;--radius-s:9px;--glow:0 0 0 1px rgba(34,211,238,.35),0 0 28px rgba(34,211,238,.18);--btn-ink:#041018;
--font:"Inter",system-ui,sans-serif;--display:"Space Grotesk","Inter",sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace}
:root[data-theme=light]{--bg:#F3F6FB;--bg2:#FFFFFF;--surface:#FFFFFF;--surface-2:#F5F8FC;--ink:#0B1220;--muted:#5B6478;--line:#E1E6EF;--line-strong:#C3CBD9;
--act:#0E7490;--act-2:#1F4FBF;--act-soft:#E3F4F8;--win:#0F7B5F;--win-soft:#E3F3EE;--est:#B9791C;--est-soft:#FBF1DF;--alert:#B23A3A;--alert-soft:#F9E4E4;
--track:#E6EAF1;--shadow:0 10px 30px rgba(22,35,59,.08);--glow:0 0 0 3px rgba(14,116,144,.18);--btn-ink:#fff}
*{box-sizing:border-box}html{font-size:15px;overflow-x:hidden}body{overflow-x:hidden}@media(max-width:600px){html{font-size:14px}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);line-height:1.5;font-feature-settings:"tnum" 1;-webkit-font-smoothing:antialiased;min-height:100vh;position:relative}
body::before{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(900px 500px at 8% -10%,rgba(34,211,238,.16),transparent 60%),radial-gradient(800px 500px at 100% 0%,rgba(59,130,246,.16),transparent 60%),var(--bg)}
:root[data-theme=light] body::before{background:radial-gradient(900px 500px at 8% -10%,rgba(14,116,144,.10),transparent 60%),radial-gradient(800px 500px at 100% 0%,rgba(31,79,191,.10),transparent 60%),var(--bg)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.35;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse at 50% 0%,#000 0%,transparent 70%);mask-image:radial-gradient(ellipse at 50% 0%,#000 0%,transparent 70%)}
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.01em;font-family:var(--display)}h1{font-size:1.25rem}h2{font-size:.82rem;margin-bottom:.9rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:600}h3{font-size:1rem}
p{margin:0}button{font:inherit;cursor:pointer}a{color:var(--act)}
input,select,textarea{font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-s);padding:.6rem .7rem;width:100%;min-width:0;transition:border-color .15s,box-shadow .15s}
input:hover,select:hover,textarea:hover{border-color:var(--act)}
input:focus,select:focus,button:focus-visible,textarea:focus{outline:0;border-color:var(--act);box-shadow:var(--glow)}
input[type=number],td.num,th.num,.num{font-family:var(--mono)}
input[type=color]{padding:.2rem}
select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 16px) 55%,calc(100% - 11px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:2rem}
::placeholder{color:var(--muted);opacity:.7}
.top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg2) 78%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.top>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:.75rem;align-items:center}
.top>div:first-child::before{content:"";grid-row:1/3;width:36px;height:36px;border-radius:11px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23041018' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 18 L10 11 L14 14 L20 6'/><path d='M15 6 h5 v5'/></svg>") center/22px 22px no-repeat,linear-gradient(135deg,var(--act),var(--act-2));box-shadow:0 8px 22px rgba(34,211,238,.28)}
:root[data-theme=light] .top>div:first-child::before{background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 18 L10 11 L14 14 L20 6'/><path d='M15 6 h5 v5'/></svg>") center/22px 22px no-repeat,linear-gradient(135deg,var(--act),var(--act-2))}
.top small{color:var(--muted);display:block;font-weight:500;font-size:.8rem}.top .actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.btn{border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);padding:.55rem .9rem;border-radius:var(--radius-s);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;transition:transform .12s,box-shadow .15s,border-color .15s;white-space:nowrap}
.btn:hover{border-color:var(--act);transform:translateY(-1px)}.btn:active{transform:none}
.btn.primary{background:linear-gradient(135deg,var(--act),var(--act-2));border-color:transparent;color:var(--btn-ink);box-shadow:0 8px 22px rgba(34,211,238,.25)}
.btn.quiet{border-color:transparent;background:transparent;color:var(--act)}.btn.quiet:hover{background:var(--act-soft)}.btn.danger{color:var(--alert)}
.btn:disabled{opacity:.5;cursor:default;transform:none}
.wrap{padding:1.4rem 1.5rem;max-width:1200px;margin:0 auto}@media(max-width:960px){.wrap{padding:1rem}}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.15rem 1.25rem;margin-bottom:1rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow)}
.field{margin-bottom:.8rem}.field label{display:block;font-size:.86rem;font-weight:600;margin-bottom:.3rem}.field .hint,.hint{display:block;font-size:.76rem;color:var(--muted);margin-top:.25rem}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.7rem}
.tblwrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-s)}table{width:100%;border-collapse:collapse;font-size:.86rem}th,td{text-align:left;padding:.55rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:0}th{font-weight:600;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;background:var(--surface-2)}td.num,th.num{text-align:right;white-space:nowrap}tbody tr:hover td{background:var(--surface-2)}
.tag{display:inline-block;font-size:.68rem;font-weight:700;padding:.14rem .5rem;border-radius:999px;letter-spacing:.04em;text-transform:uppercase}.tag.win{background:var(--win-soft);color:var(--win)}.tag.est{background:var(--est-soft);color:var(--est)}.tag.bad{background:var(--alert-soft);color:var(--alert)}
.msg{font-size:.88rem;padding:.55rem .8rem;border-radius:var(--radius-s);background:var(--est-soft);color:var(--est);border-left:3px solid var(--est);margin:.5rem 0;display:none}
:root[data-theme=light] .msg{color:#7A4E0C}
.center{max-width:440px;margin:3rem auto}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.plan{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem;box-shadow:var(--shadow)}.plan.best{border-color:transparent;background:linear-gradient(var(--bg2),var(--bg2)) padding-box,linear-gradient(135deg,var(--win),var(--act) 60%,var(--act-2)) border-box}
.plan .price{font-size:1.9rem;font-weight:700;margin:.3rem 0;font-family:var(--display);letter-spacing:-.02em}.plan .price small{font-size:.85rem;color:var(--muted);font-weight:500;font-family:var(--font)}
.plan ul{padding-left:1.1rem;margin:.6rem 0 1rem;font-size:.9rem}.plan li::marker{color:var(--win)}
.who{font-size:.8rem;color:var(--muted);padding:.35rem .7rem;border:1px solid var(--line);border-radius:999px;background:var(--surface)}.who:empty{display:none}.who b{color:var(--ink);font-weight:600}
.toast{position:fixed;bottom:1.2rem;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:.65rem 1.1rem;border-radius:999px;font-size:.9rem;display:none;box-shadow:var(--shadow);z-index:30}
@media print{:root{--bg:#fff;--bg2:#fff;--surface:#fff;--surface-2:#fff;--ink:#111;--muted:#555;--line:#ddd;--line-strong:#bbb;--shadow:none}body::before,body::after{display:none}.panel{backdrop-filter:none}}
/* FX compartilhado: aurora + malha de pontos (injetados por _tema.js) */
.aurora{position:fixed;inset:-20%;z-index:-2;pointer-events:none;filter:blur(80px);opacity:.28;background:radial-gradient(40% 35% at 20% 20%,rgba(34,211,238,.35),transparent 70%),radial-gradient(35% 35% at 80% 15%,rgba(59,130,246,.35),transparent 70%),radial-gradient(30% 30% at 60% 85%,rgba(52,211,153,.25),transparent 70%),radial-gradient(25% 25% at 15% 80%,rgba(168,85,247,.18),transparent 70%);animation:aurora 48s ease-in-out infinite alternate}
:root[data-theme=light] .aurora{opacity:.18}
@keyframes aurora{0%{transform:translate3d(0,0,0) rotate(0deg) scale(1)}50%{transform:translate3d(3%,-2%,0) rotate(3deg) scale(1.06)}100%{transform:translate3d(-3%,2%,0) rotate(-2deg) scale(1.03)}}
#bgfx{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.42}:root[data-theme=light] #bgfx{opacity:.2}
.panel{position:relative}.panel::before{content:"";position:absolute;left:12px;right:12px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);pointer-events:none}
:root[data-theme=light] .panel::before{background:linear-gradient(90deg,transparent,rgba(14,116,144,.25),transparent)}
.btn.primary{position:relative;overflow:hidden}.btn.primary::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translateX(-120%);transition:transform .6s}.btn.primary:hover::after{transform:translateX(120%)}
.top h1{background:linear-gradient(120deg,var(--ink),var(--act) 70%,var(--act-2));-webkit-background-clip:text;background-clip:text;color:transparent}
@media (prefers-reduced-motion:reduce){.aurora,#bgfx{display:none}}
@media print{.aurora,#bgfx{display:none!important}}
