/* TT Calc v1.0.2 - six calculateurs (storeverdict.com)
   Palette = design system v2 "Editorial Ink & Emerald" : ink #0C1F17, ink-soft #33463C,
   muted #55645A, hairline #D8D5C8, hairline-int #E6E3D8, emerald #175D43, brass #C9A15A / #8C6A1F,
   red #9C3A22, cream #F8F7F1 / #F4F2EA, tints #E9F0E9 / #F7EFDA / #F7EAE4, paper #FFFFFF.
   Radius 2px, zero ombre, chiffres tabulaires. Tout est prefixe .ttc. */

.ttc{--ttc-ink:#0C1F17;--ttc-ink-soft:#33463C;--ttc-muted:#55645A;--ttc-hair:#D8D5C8;--ttc-hair-int:#E6E3D8;
  --ttc-emerald:#175D43;--ttc-brass:#C9A15A;--ttc-brass-deep:#8C6A1F;--ttc-red:#9C3A22;--ttc-cream:#F8F7F1;--ttc-cream-deep:#F4F2EA;
  --ttc-tint-green:#E9F0E9;--ttc-tint-brass:#F7EFDA;--ttc-tint-red:#F7EAE4;--ttc-paper:#FFFFFF;
  --ttc-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --ttc-serif:Georgia,"Times New Roman",serif;
  box-sizing:border-box;margin:28px 0 34px;padding:0;border:1px solid var(--ttc-hair);border-top:3px solid var(--ttc-ink);
  background:var(--ttc-paper);color:var(--ttc-ink);font-family:var(--ttc-sans);font-size:15px;line-height:1.5;
  font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;}
.ttc *,.ttc *::before,.ttc *::after{box-sizing:inherit;}
.ttc p{margin:0;}
.ttc-noscript{margin:0;padding:18px 20px;color:var(--ttc-muted);}

/* ---------- en-tete ---------- */
.ttc-head{padding:20px 20px 6px;}
.ttc-kicker{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ttc-emerald);margin:0 0 8px;}
.ttc-title{font-family:var(--ttc-serif);font-weight:400;font-size:24px;line-height:1.25;letter-spacing:-.01em;color:var(--ttc-ink);margin:0 0 4px;}
.ttc-lede{font-size:14px;color:var(--ttc-muted);margin:0;}

/* ---------- formulaire ---------- */
.ttc-form{padding:8px 20px 4px;}
.ttc-group{border:0;margin:0;padding:14px 0 6px;min-width:0;}
.ttc-group + .ttc-group{border-top:1px solid var(--ttc-hair-int);}
/* Le legend garde son rendu natif (bloc, padding 0) ; la mise en forme est sur le span interieur. */
.ttc-legend{display:block;width:100%;padding:0;margin:0 0 12px;}
.ttc-legend-in{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ttc-ink-soft);line-height:1.2;}
.ttc-legend-n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid var(--ttc-ink);border-radius:2px;font-family:var(--ttc-serif);font-size:13px;font-weight:400;letter-spacing:0;color:var(--ttc-ink);background:var(--ttc-paper);}
.ttc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;}
.ttc-field{min-width:0;}
.ttc-field--hidden{display:none;}
.ttc-label{display:block;font-size:13.5px;font-weight:600;color:var(--ttc-ink);margin:0 0 6px;line-height:1.3;}
.ttc-opt{margin-left:7px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ttc-muted);}
.ttc-input{position:relative;display:flex;align-items:center;height:42px;border:1px solid var(--ttc-hair);border-radius:2px;background:var(--ttc-paper);transition:border-color .12s ease;}
.ttc-input:hover{border-color:var(--ttc-ink-soft);}
.ttc-input:focus-within{border-color:var(--ttc-emerald);box-shadow:0 0 0 2px var(--ttc-tint-green);}
.ttc-field--bad .ttc-input{border-color:var(--ttc-red);}
.ttc-field--bad .ttc-input:focus-within{box-shadow:0 0 0 2px var(--ttc-tint-red);}
.ttc-adorn{flex:none;padding:0 0 0 12px;font-size:14px;color:var(--ttc-muted);pointer-events:none;}
.ttc-adorn--suffix{padding:0 12px 0 0;}
.ttc .ttc-num,.ttc .ttc-select{flex:1;min-width:0;width:100%;height:40px;margin:0;padding:0 12px;border:0;border-radius:0;background:transparent;
  font-family:var(--ttc-sans);font-size:16px;line-height:40px;color:var(--ttc-ink);font-variant-numeric:tabular-nums;outline:none;box-shadow:none;-webkit-appearance:none;appearance:none;}
.ttc .ttc-input--money .ttc-num{padding-left:6px;}
.ttc .ttc-input--pct .ttc-num{padding-right:4px;text-align:right;}
.ttc .ttc-num::placeholder{color:#A9B0AB;font-style:normal;}
.ttc .ttc-select{padding-right:34px;cursor:pointer;line-height:1.3;}
.ttc-input--select::after{content:"";position:absolute;right:14px;top:50%;width:7px;height:7px;margin-top:-5px;border-right:1.5px solid var(--ttc-ink);border-bottom:1.5px solid var(--ttc-ink);transform:rotate(45deg);pointer-events:none;}
.ttc-help{font-size:12.5px;line-height:1.4;color:var(--ttc-muted);margin:5px 0 0;}

/* ---------- sorties ---------- */
.ttc-out{border-top:1px solid var(--ttc-hair);background:var(--ttc-cream);padding:18px 20px 18px;}
.ttc-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px 24px;align-items:stretch;}
.ttc-hero-main{display:flex;flex-direction:column;min-width:0;}
.ttc-hero-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ttc-muted);}
.ttc-hero-value{display:block;font-family:var(--ttc-serif);font-weight:400;font-size:46px;line-height:1.05;letter-spacing:-.02em;color:var(--ttc-ink);margin:6px 0 8px;overflow-wrap:anywhere;}
.ttc-hero-value--neg{color:var(--ttc-red);}
.ttc-hero-sub{font-size:13.5px;line-height:1.45;color:var(--ttc-ink-soft);}
.ttc-verdict{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:14px 16px;border:1px solid var(--ttc-hair);border-left-width:3px;border-radius:2px;background:var(--ttc-paper);}
.ttc-verdict--hidden{display:none;}
.ttc-verdict-label{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;}
.ttc-verdict-text{font-size:13.5px;line-height:1.45;color:var(--ttc-ink-soft);}
.ttc-verdict--yes,.ttc-verdict--net{border-left-color:var(--ttc-emerald);background:var(--ttc-tint-green);}
.ttc-verdict--yes .ttc-verdict-label,.ttc-verdict--net .ttc-verdict-label{color:var(--ttc-emerald);}
.ttc-verdict--limited{border-left-color:var(--ttc-brass-deep);background:var(--ttc-tint-brass);}
.ttc-verdict--limited .ttc-verdict-label{color:var(--ttc-brass-deep);}
.ttc-verdict--no{border-left-color:var(--ttc-red);background:var(--ttc-tint-red);}
.ttc-verdict--no .ttc-verdict-label{color:var(--ttc-red);}
.ttc-verdict--muted{border-left-color:var(--ttc-hair);background:var(--ttc-cream-deep);}
.ttc-verdict--muted .ttc-verdict-label{color:var(--ttc-muted);}

.ttc-block-title{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ttc-ink-soft);margin:0 0 10px;}
.ttc-bar-box,.ttc-ladder-box,.ttc-chain-box{margin-top:22px;}
.ttc-bar-box--empty,.ttc-ladder-box--empty{display:none;}

/* barre empilee */
.ttc-bar{display:flex;height:22px;width:100%;overflow:hidden;border-radius:2px;background:var(--ttc-hair-int);}
.ttc-seg{height:100%;flex:none;transition:width .25s ease;}
.ttc-seg + .ttc-seg{box-shadow:inset 1px 0 0 var(--ttc-paper);}
.ttc-seg--cost1{background:#33463C;}
.ttc-seg--cost2{background:#55645A;}
.ttc-seg--cost3{background:#8A968E;}
.ttc-seg--fee{background:#C9A15A;}
.ttc-seg--ads{background:#8C6A1F;}
.ttc-seg--fixed{background:#B3AE9E;}
.ttc-seg--net{background:#175D43;}
.ttc-seg--loss{background:#9C3A22;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.28) 0 4px,transparent 4px 8px);}
.ttc-legend{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px;}
.ttc-legend-item{display:flex;align-items:baseline;gap:8px;font-size:13px;min-width:0;}
.ttc-swatch{flex:none;width:10px;height:10px;border-radius:2px;position:relative;top:0;}
.ttc-legend-label{color:var(--ttc-ink-soft);min-width:0;}
.ttc-legend-value{margin-left:auto;color:var(--ttc-ink);white-space:nowrap;}

/* echelle (ROAS, CPA vs plafond) */
.ttc-ladder{position:relative;height:6px;margin:12px 0 14px;border-radius:2px;background:var(--ttc-hair-int);}
.ttc-ladder--filled{margin-top:34px;}
.ttc-ladder-fill{position:absolute;left:0;top:0;height:100%;border-radius:2px;transition:width .25s ease;}
.ttc-ladder-fill--net{background:var(--ttc-emerald);}
.ttc-ladder-fill--loss{background:var(--ttc-red);}
.ttc-ladder-you{position:absolute;top:-6px;width:2px;height:18px;margin-left:-1px;background:var(--ttc-ink);}
.ttc-ladder-you-label{position:absolute;left:50%;bottom:100%;transform:translateX(-50%);margin-bottom:6px;white-space:nowrap;font-size:11.5px;font-weight:700;letter-spacing:.04em;color:var(--ttc-ink);}
.ttc-ladder-you:first-child .ttc-ladder-you-label{transform:none;left:0;}
.ttc-ladder-mark{position:absolute;top:-4px;width:2px;height:14px;margin-left:-1px;}
.ttc-ladder-mark--no{background:var(--ttc-red);}
.ttc-ladder-mark--limited{background:var(--ttc-brass-deep);}
.ttc-ladder-mark--yes,.ttc-ladder-mark--net{background:var(--ttc-emerald);}
.ttc-ladder-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 20px;}
.ttc-ladder-item{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ttc-ink-soft);}
.ttc-ladder-tick{flex:none;width:2px;height:12px;}
.ttc-ladder-item-value{color:var(--ttc-ink);font-weight:600;}

/* chaine budget > impressions > clics > commandes */
.ttc-chain{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);gap:0 8px;align-items:stretch;}
.ttc-chain-tile{display:flex;flex-direction:column;min-width:0;padding:10px 12px;border:1px solid var(--ttc-hair);border-radius:2px;background:var(--ttc-paper);}
.ttc-chain-tile:last-child{border-color:var(--ttc-ink);}
.ttc-chain-label{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ttc-muted);overflow-wrap:normal;}
.ttc-chain-value{font-family:var(--ttc-serif);font-size:22px;line-height:1.15;color:var(--ttc-ink);margin:4px 0 2px;overflow-wrap:anywhere;}
.ttc-chain-sub{font-size:12px;color:var(--ttc-ink-soft);}
.ttc-chain-op{display:flex;align-items:center;justify-content:center;padding:0 2px;}
.ttc-chain-op-text{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--ttc-brass-deep);white-space:normal;overflow-wrap:normal;max-width:84px;line-height:1.25;text-align:center;}
.ttc-chain-op-text::after{content:"\2192";display:block;font-size:14px;color:var(--ttc-ink-soft);}

/* lignes de resultat */
/* Specificite renforcee : GeneratePress pose des bordures sur tous les td/th du contenu. */
.ttc .ttc-rows{width:100%;border-collapse:collapse;border-spacing:0;margin:22px 0 0;font-size:14.5px;border:0;border-top:1px solid var(--ttc-hair);}
.ttc .ttc-rows tr{background:transparent;}
.ttc .ttc-rows th,.ttc .ttc-rows td{padding:9px 0;border:0;border-bottom:1px solid var(--ttc-hair-int);vertical-align:top;background:transparent;font-size:inherit;line-height:1.45;}
.ttc-row-label{text-align:left;font-weight:400;color:var(--ttc-ink-soft);padding-right:16px;}
.ttc-row-note{display:block;font-size:12.5px;line-height:1.35;color:var(--ttc-muted);margin-top:2px;}
.ttc-row-value{text-align:right;white-space:nowrap;color:var(--ttc-ink);font-variant-numeric:tabular-nums;}
.ttc-row-value--neg{color:var(--ttc-red);}
.ttc .ttc-row--strong th,.ttc .ttc-row--strong td{border-top:1px solid var(--ttc-ink);border-bottom-color:var(--ttc-hair);}
.ttc-row--strong .ttc-row-label{color:var(--ttc-ink);font-weight:600;}
.ttc-row--strong .ttc-row-value{font-weight:700;}
.ttc-formula{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:var(--ttc-muted);}

/* actions */
.ttc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;}
.ttc .ttc-btn{display:inline-flex;align-items:center;height:38px;margin:0;padding:0 16px;border:1px solid var(--ttc-ink);border-radius:2px;background:var(--ttc-paper);
  font-family:var(--ttc-sans);font-size:13px;font-weight:700;letter-spacing:.02em;line-height:1;color:var(--ttc-ink);cursor:pointer;text-decoration:none;box-shadow:none;transition:background .12s ease,color .12s ease,border-color .12s ease;}
.ttc .ttc-btn:hover{border-color:var(--ttc-emerald);color:var(--ttc-emerald);background:var(--ttc-paper);}
.ttc .ttc-btn--primary{background:var(--ttc-ink);color:var(--ttc-paper);}
.ttc .ttc-btn--primary:hover{background:var(--ttc-emerald);border-color:var(--ttc-emerald);color:var(--ttc-paper);}
.ttc .ttc-btn:focus-visible,.ttc .ttc-num:focus-visible,.ttc .ttc-select:focus-visible{outline:2px solid var(--ttc-emerald);outline-offset:2px;}
.ttc-flash{font-size:13px;color:var(--ttc-emerald);opacity:0;transition:opacity .15s ease;}
.ttc-flash--on{opacity:1;}
.ttc-privacy{margin:12px 0 0;font-size:12px;color:var(--ttc-muted);}

/* ---------- responsive ---------- */
@media (max-width:640px){
  .ttc{margin-left:0;margin-right:0;}
  .ttc-head,.ttc-form,.ttc-out{padding-left:16px;padding-right:16px;}
  .ttc-fields{grid-template-columns:1fr;gap:12px;}
  .ttc-hero{grid-template-columns:1fr;}
  .ttc-hero-value{font-size:38px;}
  .ttc-legend{grid-template-columns:1fr;}
  .ttc-chain{grid-template-columns:1fr;gap:6px 0;}
  .ttc-chain-op{justify-content:flex-start;padding:2px 0 2px 12px;}
  .ttc-chain-op-text{display:flex;align-items:center;gap:8px;max-width:none;white-space:nowrap;}
  .ttc-chain-op-text::after{display:inline;transform:rotate(90deg);}
}
@media (prefers-reduced-motion:reduce){
  .ttc-seg,.ttc-ladder-fill,.ttc-flash,.ttc-input,.ttc .ttc-btn{transition:none;}
}
