
.tcur {
  --ink: #0b0c10;
  --ink2: #1a1d24;
  --ink3: #3e4150;
  --ink4: #7c7f94;
  --ink5: #b0b3c6;
  --paper: #f4f5f9;
  --card: #ffffff;
  --card2: #eef0f5;
  --line: #e3e6ee;
  --blue: #2563eb;
  --blue2: #3b82f6;
  --blue-lt: #eff6ff;
  --teal: #0d9488;
  --teal-lt: #f0fdfa;
  --amber: #b45309;
  --amber-lt: #fffbeb;
  --red: #dc2626;
  --red-lt: #fef2f2;
  --green: #15803d;
  --green-lt: #f0fdf4;
  --r6: 6px; --r10: 10px; --r14: 14px; --r20: 20px;
  --fh: "Syne", system-ui, sans-serif;
  --fb: "DM Sans", system-ui, sans-serif;
  --fm: "JetBrains Mono", "Fira Mono", monospace;
  --sh-sm: 0 1px 3px rgba(11,12,16,.08);
  --sh-md: 0 4px 16px rgba(11,12,16,.10);
  --sh-lg: 0 12px 40px rgba(11,12,16,.12);
  font-family: var(--fb);
  color: var(--ink);
  font-size: 16px;
  line-height: 1.6;
  background: var(--paper);
  -webkit-font-smoothing: antialiased;
}
.tcur *, .tcur *::before, .tcur *::after { box-sizing: border-box; margin: 0; padding: 0; }
.tcur a { color: inherit; text-decoration: none; }
.tcur img { max-width: 100%; }
.tcur button, .tcur input, .tcur select, .tcur textarea { font-family: var(--fb); font-size: 100%; }
.tcur .wrap { max-width: 1100px; margin: 0 auto; padding: 0 24px; }
.tcur .eyebrow { font-family: var(--fm); font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--blue); margin-bottom: 10px; }
.tcur h2.sec-h2 { font-family: var(--fh); font-size: clamp(24px,3.6vw,34px); font-weight: 800; letter-spacing: -.9px; line-height: 1.2; margin-bottom: 12px; }
.tcur h3 { font-family: var(--fh); font-weight: 700; letter-spacing: -.4px; }
.tcur p { margin-bottom: 12px; }
.tcur .lead { color: var(--ink3); font-size: 16px; max-width: 620px; }


/* HERO */
.tcur .hero { background: var(--ink); padding: 66px 24px 74px; position: relative; overflow: hidden; }
.tcur .hero::before { content:""; position:absolute; inset:0; background: radial-gradient(ellipse 55% 45% at 65% 55%, rgba(37,99,235,.20), transparent), radial-gradient(ellipse 40% 35% at 20% 30%, rgba(13,148,136,.12), transparent); pointer-events:none; }
.tcur .hero-in { max-width: 1100px; margin: 0 auto; position: relative; }
.tcur .hero-badge { display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:500; color:rgba(255,255,255,.72); background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); padding:5px 13px; border-radius:100px; margin-bottom:20px; }
.tcur .hero-dot { width:6px; height:6px; border-radius:50%; background:#4ade80; }
.tcur .hero h1 { font-family: var(--fh); font-size: clamp(30px,5.2vw,52px); font-weight:800; line-height:1.08; letter-spacing:-1.6px; color:#fff; max-width:16ch; margin-bottom:18px; }
.tcur .hero h1 .a1 { color: var(--blue2); }
.tcur .hero h1 .a2 { color: #2dd4bf; }
.tcur .hero-sub { font-size:17px; color:rgba(255,255,255,.68); max-width:60ch; margin-bottom:22px; }
.tcur .hero-feats { display:flex; flex-wrap:wrap; gap:8px 20px; margin-bottom:28px; }
.tcur .hero-feat { display:inline-flex; align-items:center; gap:7px; font-size:13px; color:rgba(255,255,255,.6); }
.tcur .hero-feat svg { width:14px; height:14px; fill:#4ade80; flex-shrink:0; }
.tcur .hero-btns { display:flex; flex-wrap:wrap; gap:12px; }
.tcur .btn-pri { display:inline-flex; align-items:center; gap:9px; background:var(--blue); color:#fff; border:0; font-size:15px; font-weight:600; padding:13px 26px; border-radius:var(--r10); cursor:pointer; box-shadow:0 4px 20px rgba(37,99,235,.35); }
.tcur .btn-pri:hover { background:var(--blue2); }
.tcur .btn-ghost { background:transparent; color:rgba(255,255,255,.72); border:1px solid rgba(255,255,255,.2); font-size:15px; font-weight:500; padding:13px 24px; border-radius:var(--r10); cursor:pointer; }
.tcur .btn-ghost:hover { background:rgba(255,255,255,.07); color:#fff; }

/* TRUST BAR */
.tcur .trust { background:var(--ink2); border-top:1px solid rgba(255,255,255,.07); padding:16px 24px; }
.tcur .trust-in { max-width:1100px; margin:0 auto; display:flex; flex-wrap:wrap; gap:14px 34px; justify-content:center; }
.tcur .trust-i { font-size:12.5px; color:rgba(255,255,255,.5); }
.tcur .trust-i strong { color:#fff; font-weight:600; }

/* TOOL */
.tcur .tool-sec { padding:46px 24px 20px; }
.tcur .tool-card { max-width:1000px; margin:0 auto; background:var(--card); border:1px solid var(--line); border-radius:var(--r20); box-shadow:var(--sh-lg); overflow:hidden; }
.tcur .tabs { display:flex; border-bottom:1px solid var(--line); background:var(--card2); overflow-x:auto; }
.tcur .tab { flex:1; min-width:150px; display:flex; align-items:center; justify-content:center; gap:8px; background:transparent; border:0; border-bottom:2px solid transparent; padding:15px 12px; font-size:13.5px; font-weight:600; color:var(--ink4); cursor:pointer; white-space:nowrap; }
.tcur .tab svg { width:16px; height:16px; fill:currentColor; }
.tcur .tab:hover { color:var(--ink2); }
.tcur .tab.on { color:var(--blue); background:var(--card); border-bottom-color:var(--blue); }
.tcur .panel { display:none; padding:26px 26px 30px; }
.tcur .panel.on { display:block; }
@media(max-width:620px){ .tcur .panel{padding:20px 16px 24px} }
.tcur .p-head { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:6px; }
.tcur .p-title { font-family:var(--fh); font-size:19px; font-weight:700; letter-spacing:-.4px; display:flex; align-items:center; gap:9px; }
.tcur .pill { font-family:var(--fb); font-size:10.5px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; padding:3px 9px; border-radius:100px; }
.tcur .pill-free { background:var(--green-lt); color:var(--green); }
.tcur .pill-cur { background:var(--amber-lt); color:var(--amber); }
.tcur .p-desc { font-size:13.5px; color:var(--ink3); margin-bottom:16px; max-width:70ch; }

/* honesty notice */
.tcur .notice { display:flex; gap:10px; align-items:flex-start; background:var(--amber-lt); border:1px solid #fde68a; border-radius:var(--r10); padding:11px 14px; font-size:12.5px; color:#78350f; line-height:1.55; margin-bottom:16px; }
.tcur .notice svg { width:15px; height:15px; fill:var(--amber); flex-shrink:0; margin-top:2px; }
.tcur .notice strong { font-weight:600; }
.tcur .notice-blue { background:var(--blue-lt); border-color:#bfdbfe; color:#1e3a8a; }
.tcur .notice-blue svg { fill:var(--blue); }

/* fields */
.tcur .f-label { font-size:12px; font-weight:600; color:var(--ink3); margin-bottom:6px; display:block; }
.tcur .f-in, .tcur .f-sel { width:100%; padding:11px 13px; font-size:14px; border:1px solid var(--line); border-radius:var(--r10); background:var(--card); color:var(--ink); }
.tcur .f-in:focus, .tcur .f-sel:focus, .tcur textarea:focus { outline:2px solid var(--blue); outline-offset:1px; border-color:var(--blue); }
.tcur .ta-wrap { position:relative; }
.tcur textarea { width:100%; min-height:150px; padding:13px 15px; font-family:var(--fm); font-size:13.5px; line-height:1.75; border:1px solid var(--line); border-radius:var(--r10); resize:vertical; color:var(--ink); background:var(--card); }
.tcur .lab-row { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:7px; }
.tcur .btn-ex { background:none; border:0; font-size:12px; font-weight:600; color:var(--blue); cursor:pointer; padding:0; }
.tcur .btn-ex:hover { text-decoration:underline; }
.tcur .act-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:12px; }
.tcur .counter { font-size:12.5px; color:var(--ink4); margin-right:auto; }
.tcur .counter strong { color:var(--ink2); }
.tcur .btn-run { display:inline-flex; align-items:center; gap:8px; background:var(--blue); color:#fff; border:0; font-size:14px; font-weight:600; padding:11px 22px; border-radius:var(--r10); cursor:pointer; }
.tcur .btn-run:hover:not(:disabled) { background:var(--blue2); }
.tcur .btn-run:disabled { opacity:.42; cursor:not-allowed; }
.tcur .btn-run svg { width:15px; height:15px; fill:#fff; }
.tcur .btn-sec { display:inline-flex; align-items:center; gap:7px; background:var(--card2); color:var(--ink3); border:1px solid var(--line); font-size:13px; font-weight:500; padding:10px 16px; border-radius:var(--r10); cursor:pointer; }
.tcur .btn-sec:hover { background:#e6e9f0; }
.tcur .btn-sec svg { width:14px; height:14px; fill:currentColor; }
.tcur .hint { font-size:12px; color:var(--ink4); margin-top:9px; }
.tcur kbd { font-family:var(--fm); font-size:11px; background:var(--card2); border:1px solid var(--line); border-bottom-width:2px; border-radius:4px; padding:1px 5px; }

/* autocomplete */
.tcur .ac { position:absolute; left:0; right:0; top:calc(100% + 4px); background:var(--card); border:1px solid var(--line); border-radius:var(--r10); box-shadow:var(--sh-md); z-index:60; display:none; overflow:hidden; }
.tcur .ac.open { display:block; }
.tcur .ac-item { display:flex; align-items:center; gap:10px; padding:9px 13px; cursor:pointer; font-size:13.5px; }
.tcur .ac-item:hover, .tcur .ac-item.foc { background:var(--blue-lt); }
.tcur .ac-name { font-weight:500; }
.tcur .ac-dom { margin-left:auto; font-family:var(--fm); font-size:11.5px; color:var(--ink4); }
.tcur .fav, .tcur .fav-ph { width:22px; height:22px; border-radius:5px; flex-shrink:0; }
.tcur .fav-ph { background:var(--card2); color:var(--ink4); display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; }

/* progress */
.tcur .prog { margin-top:18px; }
.tcur .prog-bar { height:5px; background:var(--card2); border-radius:100px; overflow:hidden; }
.tcur .prog-fill { height:100%; background:var(--blue); border-radius:100px; transition:width .25s; }
.tcur .prog-txt { font-size:12.5px; color:var(--ink4); margin-top:8px; }

/* results table */
.tcur .res-top { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin:20px 0 10px; }
.tcur .res-label { font-size:13px; font-weight:600; color:var(--ink2); }
.tcur .tbl-wrap { border:1px solid var(--line); border-radius:var(--r10); overflow-x:auto; }
.tcur table.res { width:100%; border-collapse:collapse; font-size:13.5px; min-width:660px; }
.tcur table.res th { text-align:left; font-size:11px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--ink4); background:var(--card2); padding:10px 14px; border-bottom:1px solid var(--line); }
.tcur table.res td { padding:12px 14px; border-bottom:1px solid var(--line); vertical-align:middle; }
.tcur table.res tr:last-child td { border-bottom:0; }
.tcur .td-co { display:flex; align-items:center; gap:9px; font-weight:500; }
.tcur .td-typed { font-size:11.5px; color:var(--ink4); }
.tcur .td-url a { font-family:var(--fm); font-size:12.5px; color:var(--blue); }
.tcur .td-url a:hover { text-decoration:underline; }
.tcur .none { font-size:12.5px; color:var(--ink4); font-style:italic; }
.tcur .conf { display:inline-block; font-size:11px; font-weight:600; padding:3px 9px; border-radius:100px; }
.tcur .c-hi { background:var(--green-lt); color:var(--green); }
.tcur .c-md { background:var(--amber-lt); color:var(--amber); }
.tcur .c-lo { background:var(--red-lt); color:var(--red); }
.tcur .score { font-family:var(--fm); font-size:11px; color:var(--ink4); margin-left:5px; }
.tcur .ico-btn { background:none; border:1px solid var(--line); border-radius:var(--r6); width:30px; height:30px; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; color:var(--ink4); }
.tcur .ico-btn:hover { background:var(--card2); color:var(--ink2); }
.tcur .ico-btn svg { width:14px; height:14px; fill:currentColor; }
.tcur .alt-row td { background:#fbfcfe; padding-top:0; }
.tcur .alt-box { font-size:12.5px; color:var(--ink3); padding:10px 0 4px; }
.tcur .alt-box b { font-weight:600; color:var(--ink2); }
.tcur .alt-chip { display:inline-flex; align-items:center; gap:6px; background:var(--card); border:1px solid var(--line); border-radius:100px; padding:4px 11px; margin:5px 6px 0 0; font-size:12px; cursor:pointer; }
.tcur .alt-chip:hover { border-color:var(--blue); color:var(--blue); }
.tcur .alt-chip code { font-family:var(--fm); font-size:11px; color:var(--ink4); }
.tcur .paths { margin-top:8px; display:flex; flex-wrap:wrap; gap:6px; }
.tcur .path-lnk { font-family:var(--fm); font-size:11px; color:var(--ink3); background:var(--card); border:1px solid var(--line); border-radius:var(--r6); padding:3px 9px; }
.tcur .path-lnk:hover { border-color:var(--blue); color:var(--blue); }

/* messages */
.tcur .msg { display:flex; gap:9px; align-items:flex-start; border-radius:var(--r10); padding:12px 15px; font-size:13.5px; margin-top:16px; line-height:1.55; }
.tcur .msg svg { width:16px; height:16px; flex-shrink:0; margin-top:2px; }
.tcur .msg-err { background:var(--red-lt); border:1px solid #fecaca; color:#991b1b; }
.tcur .msg-err svg { fill:var(--red); }
.tcur .msg-info { background:var(--blue-lt); border:1px solid #bfdbfe; color:#1e3a8a; }
.tcur .msg-info svg { fill:var(--blue); }

/* chips + cards */
.tcur .chips { display:flex; flex-wrap:wrap; gap:7px; margin:14px 0 18px; }
.tcur .chip { background:var(--card2); border:1px solid var(--line); border-radius:100px; padding:6px 14px; font-size:12.5px; font-weight:500; color:var(--ink3); cursor:pointer; }
.tcur .chip:hover { border-color:var(--blue); color:var(--blue); }
.tcur .chip.on { background:var(--blue); border-color:var(--blue); color:#fff; }
.tcur .grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(238px,1fr)); gap:13px; margin-top:16px; }
.tcur .co-card { background:var(--card); border:1px solid var(--line); border-radius:var(--r14); padding:15px; display:flex; flex-direction:column; }
.tcur .co-card:hover { box-shadow:var(--sh-md); border-color:#cfd5e4; }
.tcur .co-head { display:flex; align-items:center; gap:10px; margin-bottom:9px; }
.tcur .co-name { font-weight:600; font-size:14px; line-height:1.3; }
.tcur .co-dom { font-family:var(--fm); font-size:11px; color:var(--ink4); }
.tcur .co-desc { font-size:12.5px; color:var(--ink3); line-height:1.55; margin-bottom:10px; flex:1; }
.tcur .co-tags { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:11px; }
.tcur .tag { font-size:10.5px; font-weight:500; background:var(--card2); color:var(--ink3); padding:3px 8px; border-radius:4px; }
.tcur .co-visit { display:inline-flex; align-items:center; gap:6px; font-size:12.5px; font-weight:600; color:var(--blue); }
.tcur .co-visit svg { width:12px; height:12px; fill:currentColor; }
.tcur .empty { text-align:center; padding:34px 16px; color:var(--ink4); font-size:13.5px; }

/* generic sections */
.tcur .sec { padding:56px 24px; }
.tcur .sec-alt { background:var(--card); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.tcur .steps { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:20px; margin-top:28px; }
.tcur .step { position:relative; padding-top:6px; }
.tcur .step-n { font-family:var(--fh); font-size:13px; font-weight:800; color:#fff; background:var(--blue); width:28px; height:28px; border-radius:8px; display:flex; align-items:center; justify-content:center; margin-bottom:11px; }
.tcur .step h3 { font-size:16px; margin-bottom:6px; }
.tcur .step p { font-size:13.5px; color:var(--ink3); margin:0; }

.tcur .tbl-plain { width:100%; border-collapse:collapse; font-size:13.5px; margin-top:22px; min-width:640px; }
.tcur .tbl-plain th { text-align:left; font-size:11px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--ink4); padding:10px 13px; border-bottom:2px solid var(--line); }
.tcur .tbl-plain td { padding:11px 13px; border-bottom:1px solid var(--line); }
.tcur .tbl-plain tr.us td { background:var(--blue-lt); font-weight:500; }
.tcur .yes { color:var(--green); font-weight:600; }
.tcur .no { color:var(--ink5); }
.tcur .scroll-x { overflow-x:auto; }

/* guide */
.tcur .guide { max-width:800px; margin:0 auto; }
.tcur .toc { background:var(--card2); border:1px solid var(--line); border-radius:var(--r14); padding:18px 22px; margin:24px 0 30px; }
.tcur .toc h3 { font-size:13px; text-transform:uppercase; letter-spacing:.07em; color:var(--ink4); margin-bottom:10px; }
.tcur .toc ol { margin-left:18px; }
.tcur .toc li { font-size:13.5px; margin-bottom:5px; }
.tcur .toc a { color:var(--blue); }
.tcur .toc a:hover { text-decoration:underline; }
.tcur .guide h3 { font-size:21px; margin:34px 0 10px; scroll-margin-top:74px; }
.tcur .guide h4 { font-family:var(--fh); font-size:16px; font-weight:700; margin:22px 0 8px; letter-spacing:-.3px; }
.tcur .guide p, .tcur .guide li { font-size:15px; color:var(--ink2); }
.tcur .guide ul, .tcur .guide ol { margin:0 0 14px 22px; }
.tcur .guide li { margin-bottom:7px; }
.tcur .guide a.inl { color:var(--blue); font-weight:500; }
.tcur .guide a.inl:hover { text-decoration:underline; }
.tcur .callout { background:var(--blue-lt); border-left:3px solid var(--blue); border-radius:0 var(--r10) var(--r10) 0; padding:14px 18px; margin:16px 0; font-size:14px; color:#1e3a8a; }
.tcur .callout strong { font-weight:600; }

/* faq */
.tcur .faq-item { background:var(--card); border:1px solid var(--line); border-radius:var(--r10); margin-bottom:9px; overflow:hidden; }
.tcur .faq-item summary { cursor:pointer; padding:15px 18px; font-size:15px; font-weight:600; list-style:none; display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.tcur .faq-item summary::-webkit-details-marker { display:none; }
.tcur .faq-item summary::after { content:"+"; font-family:var(--fm); font-size:18px; color:var(--ink4); line-height:1; flex-shrink:0; }
.tcur .faq-item[open] summary::after { content:"\2212"; }
.tcur .faq-item[open] summary { color:var(--blue); }
.tcur .faq-a { padding:0 18px 16px; font-size:14.5px; color:var(--ink3); line-height:1.65; }
.tcur .faq-a a { color:var(--blue); font-weight:500; }

/* cta */
.tcur .cta { background:var(--ink); padding:58px 24px; text-align:center; }
.tcur .cta h2 { font-family:var(--fh); font-size:clamp(23px,3.6vw,34px); font-weight:800; color:#fff; letter-spacing:-.9px; margin-bottom:12px; }
.tcur .cta p { color:rgba(255,255,255,.62); font-size:15.5px; max-width:56ch; margin:0 auto 24px; }
.tcur .cta-btns { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }

