:root{
  --tc-accent:#0f766e;
  --tc-accent-dark:#115e59;
  --tc-accent-soft:#ecfdf5;
  --tc-text:#17202a;
  --tc-muted:#667085;
  --tc-border:#dfe4e8;
  --tc-bg:#ffffff;
  --tc-panel:#f8fafb;
  --tc-danger:#b42318;
  --tc-radius:16px;
  --tc-shadow:0 12px 35px rgba(16,24,40,.08);
}
.tc-tool{box-sizing:border-box;background:var(--tc-bg);border:1px solid var(--tc-border);border-radius:var(--tc-radius);box-shadow:var(--tc-shadow);padding:clamp(18px,3vw,30px);margin:1.5rem 0 2rem;color:var(--tc-text);font-size:16px;line-height:1.5}
.tc-tool *{box-sizing:border-box}
.tc-tool__top{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.tc-tool__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--tc-accent-soft);color:var(--tc-accent);flex:0 0 auto}
.tc-tool__icon svg{width:23px;height:23px;fill:currentColor}
.tc-tool__eyebrow{margin:0;color:var(--tc-muted);font-size:.92rem;font-weight:700;letter-spacing:.01em}
.tc-grid{display:grid;gap:16px;margin:16px 0}.tc-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.tc-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tc-field label{display:block;font-weight:700;margin-bottom:7px;color:var(--tc-text)}
.tc-field label span{font-weight:500;color:var(--tc-muted);font-size:.88em}
.tc-field input,.tc-field select,.tc-field textarea{width:100%;border:1px solid #cfd6dc;border-radius:10px;background:#fff;color:var(--tc-text);padding:11px 12px;font:inherit;min-height:46px;outline:none;transition:border-color .15s,box-shadow .15s}
.tc-field textarea{min-height:230px;resize:vertical}
.tc-field input:focus,.tc-field select:focus,.tc-field textarea:focus{border-color:var(--tc-accent);box-shadow:0 0 0 3px rgba(15,118,110,.12)}
.tc-input-affix{display:flex;align-items:center;border:1px solid #cfd6dc;border-radius:10px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.tc-input-affix:focus-within{border-color:var(--tc-accent);box-shadow:0 0 0 3px rgba(15,118,110,.12)}
.tc-input-affix>span{padding:0 0 0 12px;color:var(--tc-muted);font-weight:700}.tc-input-affix--suffix>span{padding:0 12px 0 0}
.tc-input-affix input{border:0!important;box-shadow:none!important;border-radius:0!important;background:transparent}
.tc-help,.tc-note{color:var(--tc-muted);font-size:.9rem;margin:.45rem 0 0}.tc-note{margin-top:16px;padding-top:14px;border-top:1px solid var(--tc-border)}
.tc-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.tc-actions--field{align-items:end;margin:0;padding-top:27px}
.tc-btn,.tc-copy,.tc-tab{appearance:none;border:0;font:inherit;cursor:pointer;transition:transform .05s,background .15s,border-color .15s,color .15s}.tc-btn:active,.tc-copy:active,.tc-tab:active{transform:translateY(1px)}
.tc-btn{min-height:44px;border-radius:10px;padding:10px 16px;font-weight:800}.tc-btn--primary{background:var(--tc-accent);color:#fff}.tc-btn--primary:hover{background:var(--tc-accent-dark)}.tc-btn--secondary{background:var(--tc-accent-soft);color:var(--tc-accent-dark)}.tc-btn--ghost{background:#fff;color:var(--tc-text);border:1px solid var(--tc-border)}
.tc-tabs{display:inline-flex;gap:4px;background:var(--tc-panel);border:1px solid var(--tc-border);padding:4px;border-radius:12px;margin:0 0 14px;max-width:100%}.tc-tab{background:transparent;color:var(--tc-muted);border-radius:8px;padding:9px 12px;font-weight:700}.tc-tab.is-active{background:#fff;color:var(--tc-accent-dark);box-shadow:0 1px 4px rgba(16,24,40,.08)}
.tc-results{margin-top:18px;border:1px solid var(--tc-border);border-radius:13px;overflow:hidden;background:var(--tc-panel)}
.tc-result{display:flex;justify-content:space-between;gap:20px;padding:12px 14px;border-bottom:1px solid var(--tc-border)}.tc-result:last-of-type{border-bottom:0}.tc-result span{color:var(--tc-muted)}.tc-result strong{font-variant-numeric:tabular-nums}.tc-result--total{background:var(--tc-accent-soft);font-size:1.08rem}.tc-result--total span,.tc-result--total strong{color:var(--tc-accent-dark);font-weight:800}
.tc-copy{margin:12px 14px 14px;background:transparent;color:var(--tc-accent-dark);font-weight:800;text-decoration:underline;text-underline-offset:3px}
.tc-results--cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;overflow:hidden}.tc-results--six{grid-template-columns:repeat(3,minmax(0,1fr))}.tc-stat{padding:16px;border-right:1px solid var(--tc-border);border-bottom:1px solid var(--tc-border);min-width:0}.tc-stat:nth-child(4n){border-right:0}.tc-results--six .tc-stat:nth-child(3n){border-right:0}.tc-stat span,.tc-stat small{display:block;color:var(--tc-muted)}.tc-stat strong{display:block;font-size:1.35rem;margin:.2rem 0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.tc-stat small{font-size:.82rem}
.tc-word-insights{display:grid;grid-template-columns:1fr 1fr 2fr;gap:10px;margin-top:12px}.tc-word-insights>div{background:var(--tc-panel);border:1px solid var(--tc-border);border-radius:10px;padding:12px}.tc-word-insights span{display:block;color:var(--tc-muted);font-size:.88rem}.tc-word-insights strong{display:block;margin-top:4px}.tc-top-words strong{font-size:.95rem;font-weight:700}
.tc-check{display:flex;gap:9px;align-items:flex-start;margin:12px 0;cursor:pointer}.tc-check input{margin-top:4px}
.tc-callout{margin:16px 0 0;padding:15px 16px;border-radius:12px;background:var(--tc-accent-soft);border:1px solid #b7eadf;color:var(--tc-accent-dark);font-weight:700}.tc-callout.is-warning{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.tc-callout.is-error{background:#fff1f2;border-color:#fecdd3;color:var(--tc-danger)}
.tc-shifts{border:1px solid var(--tc-border);border-radius:12px;overflow:hidden;margin-top:14px}.tc-shift{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr auto;gap:10px;align-items:end;padding:12px;border-bottom:1px solid var(--tc-border);background:#fff}.tc-shift:last-child{border-bottom:0}.tc-shift .tc-field{margin:0}.tc-shift .tc-field label{font-size:.82rem;color:var(--tc-muted)}.tc-shift__total{min-height:46px;display:flex;align-items:center;font-weight:800;white-space:nowrap}.tc-shift__remove{width:42px;height:42px;border:1px solid var(--tc-border);border-radius:9px;background:#fff;color:#667085;cursor:pointer;font-size:20px}.tc-shift__remove:hover{color:var(--tc-danger);border-color:#f3b7b3}
.tc-error{margin:10px 0 0;color:var(--tc-danger);font-weight:700;font-size:.9rem}
@media(max-width:760px){.tc-grid--2,.tc-grid--3{grid-template-columns:1fr}.tc-results--cards,.tc-results--six{grid-template-columns:repeat(2,minmax(0,1fr))}.tc-stat:nth-child(n){border-right:1px solid var(--tc-border)}.tc-stat:nth-child(2n){border-right:0}.tc-word-insights{grid-template-columns:1fr}.tc-shift{grid-template-columns:1fr 1fr}.tc-shift__total{align-items:flex-end}.tc-shift__remove{justify-self:end}.tc-actions--field{padding-top:0}.tc-tabs{display:flex}.tc-tab{flex:1}.tc-tool{border-radius:12px}}
@media(max-width:430px){.tc-results--cards,.tc-results--six{grid-template-columns:1fr}.tc-stat:nth-child(n){border-right:0}.tc-shift{grid-template-columns:1fr}.tc-shift__remove{justify-self:start}.tc-result{align-items:flex-start;flex-direction:column;gap:2px}}
@media(prefers-reduced-motion:reduce){.tc-tool *{scroll-behavior:auto!important;transition:none!important}}
