/* Reservas com as métricas das fontes da marca: o texto não reflui quando elas chegam (CLS). Geradas de pages/template.mjs. */
@font-face{font-family:'Space Grotesk Fallback';font-weight:400;src:local('Arial'), local('ArialMT'), local('Liberation Sans'), local('Helvetica');size-adjust:106.78%;ascent-override:92.15%;descent-override:27.35%;line-gap-override:0%}
@font-face{font-family:'Space Grotesk Fallback';font-weight:500;src:local('Arial'), local('ArialMT'), local('Liberation Sans'), local('Helvetica');size-adjust:106.99%;ascent-override:91.97%;descent-override:27.29%;line-gap-override:0%}
@font-face{font-family:'Space Grotesk Fallback';font-weight:600;src:local('Arial Bold'), local('Arial-BoldMT'), local('Liberation Sans Bold'), local('Helvetica Bold');size-adjust:100.24%;ascent-override:98.16%;descent-override:29.13%;line-gap-override:0%}
@font-face{font-family:'Space Grotesk Fallback';font-weight:700;src:local('Arial Bold'), local('Arial-BoldMT'), local('Liberation Sans Bold'), local('Helvetica Bold');size-adjust:100.35%;ascent-override:98.06%;descent-override:29.10%;line-gap-override:0%}
@font-face{font-family:'Manrope Fallback';font-weight:400;src:local('Arial'), local('ArialMT'), local('Liberation Sans'), local('Helvetica');size-adjust:101.35%;ascent-override:105.18%;descent-override:29.60%;line-gap-override:0%}
@font-face{font-family:'Manrope Fallback';font-weight:500;src:local('Arial'), local('ArialMT'), local('Liberation Sans'), local('Helvetica');size-adjust:103.13%;ascent-override:103.36%;descent-override:29.09%;line-gap-override:0%}
@font-face{font-family:'Manrope Fallback';font-weight:600;src:local('Arial Bold'), local('Arial-BoldMT'), local('Liberation Sans Bold'), local('Helvetica Bold');size-adjust:97.78%;ascent-override:109.02%;descent-override:30.68%;line-gap-override:0%}
@font-face{font-family:'Manrope Fallback';font-weight:700;src:local('Arial Bold'), local('Arial-BoldMT'), local('Liberation Sans Bold'), local('Helvetica Bold');size-adjust:99.42%;ascent-override:107.22%;descent-override:30.18%;line-gap-override:0%}
@font-face{font-family:'JetBrains Mono Fallback';src:local('Courier New'), local('CourierNewPSMT'), local('Liberation Mono');size-adjust:100%;ascent-override:102%;descent-override:30%;line-gap-override:0%}
/* MyMiniCase · Tools — shared design system (teal Heritage theme) */
:root{
  --bg:#F0FAFB;--ink:#0A2A2E;--sub:#4E6A6E;--surface:#FFFFFF;--line:#DBEDEE;
  --nav-bg:rgba(240,250,251,.82);
  --band:#082A2F;--band-ink:#E6F7F8;--band-sub:#8FB6BA;--band-line:rgba(255,255,255,.10);--surface-band:#0D363C;
  --accent:#0DB2C6; --accent-ink: #097B89;--accent-2:#1ACEDD;--on-accent:#04262A;--accent-soft:rgba(13,178,198,0.10);
  --display:'Space Grotesk','Space Grotesk Fallback',system-ui,-apple-system,sans-serif;
  --body:'Manrope','Manrope Fallback',system-ui,-apple-system,sans-serif;
  --mono:'JetBrains Mono','JetBrains Mono Fallback',ui-monospace,SFMono-Regular,Menlo,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.5}
a{color:inherit;text-decoration:none}
[hidden]{display:none!important} /* beat .field{display:flex} etc. when toggled */
button{cursor:pointer;font-family:inherit}
h1,h2,h3,h4{font-family:var(--display);font-weight:700;margin:0;letter-spacing:-0.03em}
::selection{background:var(--accent-2);color:var(--on-accent)}
.mono{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);font-weight:500;display:inline-flex;align-items:center;gap:7px}
.btn{font-family:var(--display);font-weight:600;font-size:14.5px;border-radius:999px;padding:11px 20px;border:1px solid transparent;display:inline-flex;align-items:center;gap:9px;transition:transform .18s,box-shadow .25s,background .2s,color .2s,border-color .2s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:0 6px 18px -8px rgba(13,178,198,.6)}
.btn-primary:hover{box-shadow:0 12px 30px -8px rgba(13,178,198,.7)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent-ink)}
.btn-arrow{font-family:var(--mono);font-size:.9em}

/* nav */
.nav-shell{position:sticky;top:0;z-index:40;background:var(--nav-bg);border-bottom:1px solid var(--line);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px)}
.nav{max-width:1180px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;gap:24px}
.nav .lockup{display:inline-flex;align-items:center;gap:11px}
.nav .wordmark{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-0.02em;color:var(--ink);line-height:1;white-space:nowrap}
.nav .wordmark .accent-piece{color:var(--accent-ink)}
.nav-spacer{flex:1}
.nav-links{display:flex;gap:26px;align-items:center}
.nav-links a{font-family:var(--display);font-weight:500;font-size:14.5px;color:var(--sub);transition:color .15s}
.nav-links a:hover,.nav-links a.active{color:var(--accent-ink)}
.nav-signin{font-family:var(--display);font-weight:500;font-size:14.5px;color:var(--sub)}
.nav-signin:hover{color:var(--accent-ink)}

/* page shell */
.wrap{max-width:1180px;margin:0 auto;padding:0 32px}
.head{padding:44px 0 24px;max-width:720px}
.head h1{font-size:clamp(28px,4.2vw,44px);line-height:1.05;margin:12px 0 14px}
.head p{color:var(--sub);font-size:17px;max-width:600px}
.crumbs{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--sub);margin-bottom:4px}
.crumbs a{color:var(--accent-ink);text-decoration:underline;text-underline-offset:2px}

/* two-col calc layout */
.calc{display:grid;grid-template-columns:1fr 380px;gap:26px;align-items:start;padding-bottom:56px}
@media(max-width:900px){.calc{grid-template-columns:1fr}}

/* cards + inputs */
.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px 22px 8px}
.card+.card{margin-top:18px}
.card>.mono{margin-bottom:2px}
.card-sub{color:var(--sub);font-size:13px;margin:2px 0 16px}
.seg{display:inline-flex;background:var(--accent-soft);border-radius:999px;padding:4px;gap:4px;margin-bottom:18px;flex-wrap:wrap}
.seg button{border:none;background:transparent;font-family:var(--display);font-weight:600;font-size:13.5px;color:var(--sub);padding:7px 16px;border-radius:999px;transition:.15s}
.seg button.on{background:var(--accent);color:var(--on-accent)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
@media(max-width:520px){.grid2{grid-template-columns:1fr}}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.field label{font-size:13px;font-weight:600;color:var(--ink)}
.field .hint{font-size:11.5px;color:var(--sub);font-weight:400}
.inp{display:flex;align-items:center;border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.inp:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.inp input,.inp select{border:none;outline:none;font-family:var(--body);font-size:15px;font-weight:600;color:var(--ink);padding:11px 12px;width:100%;background:transparent;-moz-appearance:textfield}
.inp select{cursor:pointer}
.inp input::-webkit-outer-spin-button,.inp input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.inp .unit{font-family:var(--mono);font-size:12px;color:var(--sub);padding:0 12px 0 4px;white-space:nowrap;flex-shrink:0}
.inp .pre{font-family:var(--mono);font-size:13px;color:var(--sub);padding:0 4px 0 12px;flex-shrink:0}
.optrow{display:flex;align-items:center;gap:10px;padding:14px 0 16px;border-top:1px solid var(--line);margin-top:2px}
.switch{position:relative;width:42px;height:24px;flex-shrink:0}
.switch input{opacity:0;width:0;height:0}
.slider{position:absolute;inset:0;background:var(--line);border-radius:999px;transition:.2s}
.slider::before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.switch input:checked+.slider{background:var(--accent)}
.switch input:checked+.slider::before{transform:translateX(18px)}
.optrow label{font-weight:600;font-size:14px}
.optrow .hint{font-size:12px;color:var(--sub);font-weight:400}

/* dark result panel */
.res{position:sticky;top:86px;background:var(--band);color:var(--band-ink);border-radius:18px;padding:24px;box-shadow:0 24px 60px -30px rgba(8,42,47,.7); --accent-ink: var(--accent);}
@media(max-width:900px){.res{position:static}}
.res-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.res-top .mono{color:var(--accent-2)}
.cur{background:var(--surface-band);color:var(--band-ink);border:1px solid var(--band-line);border-radius:9px;font-family:var(--mono);font-size:12px;padding:6px 8px;font-weight:600; --accent-ink: var(--accent);}
.res .big{font-family:var(--display);font-weight:700;font-size:44px;line-height:1;letter-spacing:-0.03em;margin:6px 0 2px}
.res .big .cursym{color:var(--band-sub);font-size:26px;vertical-align:6px;margin-right:2px}
.res .per{color:var(--band-sub);font-size:13px;margin-bottom:18px}
.bd{display:flex;flex-direction:column;gap:11px;margin-bottom:6px}
.bd-row{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center}
.bd-row .lab{font-size:13px}.bd-row .val{font-family:var(--mono);font-size:12.5px}
.bar{grid-column:1/3;height:6px;border-radius:999px;background:var(--band-line);overflow:hidden}
.bar span{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .25s}
.bar.c1 span{background:#1ACEDD}.bar.c2 span{background:#0DB2C6}.bar.c3 span{background:#7FE3EC}
.bar.c4 span{background:#0A5E68}.bar.c5 span{background:#4FD3E0}.bar.c6 span{background:#0D93A3}
.res-div{height:1px;background:var(--band-line);margin:18px 0}
.res .cta{width:100%;justify-content:center;margin-top:18px}
.disc{color:var(--band-sub);font-size:11.5px;margin-top:14px;line-height:1.5}
.rstat{display:flex;flex-direction:column;gap:3px;margin-bottom:14px}
.rstat .k{font-size:12.5px;color:var(--band-sub)}
.rstat .v{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:-0.02em}

/* hub */
.hubgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding-bottom:56px}
@media(max-width:720px){.hubgrid{grid-template-columns:1fr}}
.tool-card{display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px;transition:transform .18s,box-shadow .25s,border-color .2s}
.tool-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -24px rgba(8,42,47,.35);border-color:var(--accent)}
.tool-card .ic{width:44px;height:44px;border-radius:12px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;color:var(--accent-ink);font-size:22px}
.tool-card h2{font-size:19px}
.tool-card p{color:var(--sub);font-size:14px;margin:0;flex:1}
.tool-card .go{font-family:var(--display);font-weight:600;font-size:13.5px;color:var(--accent-ink);display:inline-flex;gap:6px;align-items:center}
.tool-card.soon{border-style:dashed;background:transparent;box-shadow:none;pointer-events:none}
.tool-card.soon .go{color:var(--sub)}
.badge-soon{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--sub);border:1px solid var(--line);border-radius:999px;padding:3px 8px;align-self:flex-start}

/* seo blurb */
.blurb{border-top:1px solid var(--line);padding:40px 0 6px;max-width:760px}
.blurb h2{font-size:22px;margin:26px 0 10px}.blurb h2:first-child{margin-top:0}
.blurb p{color:var(--sub);margin:0 0 12px;font-size:15.5px}
.blurb ul{margin:0 0 12px;padding-left:20px;color:var(--sub);font-size:15.5px}
.blurb li{margin:5px 0}

/* footer */
.foot{background:var(--band);color:var(--band-sub);margin-top:20px; --accent-ink: var(--accent);}
.foot-inner{max-width:1180px;margin:0 auto;padding:44px 32px 26px;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:28px}
@media(max-width:700px){.foot-inner{grid-template-columns:1fr 1fr}}
.foot .lockup{display:inline-flex;align-items:center;gap:11px}
.foot .tagline{color:var(--band-sub);font-size:13px;margin:12px 0 0;max-width:300px;line-height:1.6}
.col-title{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--band-sub);margin-bottom:12px}
.foot-col-links{display:flex;flex-direction:column;gap:9px}
.foot-col-links a{color:var(--band-ink);font-size:14px;opacity:.85}
.foot-col-links a:hover{color:var(--accent-2);opacity:1}
.foot-bottom-wrap{border-top:1px solid var(--band-line)}
.foot-bottom{max-width:1180px;margin:0 auto;padding:16px 32px;display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--band-sub);flex-wrap:wrap}
@media(max-width:640px){.nav-links{display:none}.nav-signin{display:none}}
