/* CodeSala — Tools engine UI (brand coral) */
:root{ --cs-coral:#f1917d; --cs-coral-deep:#e3705a; --cs-ink:#16181d; }

/* ---------- Hero (heading + tagline + tool box) ---------- */
.cs-tool-hero{position:relative;padding:120px 0 50px;background:linear-gradient(180deg,#fff6f3 0%,#ffffff 70%);overflow:hidden;}
.cs-tool-hero-glow{position:absolute;top:-160px;right:-120px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(241,145,125,.28),transparent 65%);pointer-events:none;}
.cs-tool-bc{font-size:14px;color:#7a7f87;margin-bottom:14px;}
.cs-tool-bc a{color:#7a7f87;text-decoration:none;}
.cs-tool-bc a:hover{color:var(--cs-coral-deep);}
.cs-tool-bc span{margin:0 6px;opacity:.5;}
.cs-tool-title{font-size:clamp(30px,5vw,52px);line-height:1.08;margin:0 0 12px;color:var(--cs-ink);font-weight:800;}
.cs-tool-tagline{font-size:18px;color:#535860;max-width:760px;margin:0 0 30px;line-height:1.5;}
.cs-tool-privacy{margin-top:16px;color:#7a7f87;font-size:14px;}
.cs-tool-privacy i{color:#1a7f37;}

/* ---------- Tool box ---------- */
.cs-tool-app{position:relative;background:#fff;border:1px solid #f0e2dd;border-radius:18px;box-shadow:0 18px 50px rgba(227,112,90,.10);padding:30px;max-width:920px;}
.cs-tool-loading{color:#9a9fa6;display:flex;align-items:center;gap:10px;}
.cs-spin{width:18px;height:18px;border:3px solid #f0e2dd;border-top-color:var(--cs-coral);border-radius:50%;display:inline-block;animation:csspin .8s linear infinite;}
@keyframes csspin{to{transform:rotate(360deg)}}

.cs-tw-row{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:16px;}
.cs-tw-col{flex:1 1 240px;min-width:200px;}
.cs-tw-label{display:block;font-weight:600;font-size:14px;margin-bottom:6px;color:#3a3d44;}
.cs-tw-input,.cs-tw-textarea,.cs-tw-select{width:100%;padding:12px 14px;border:1px solid #e7e2df;border-radius:12px;font-size:15px;font-family:inherit;background:#fff;color:var(--cs-ink);transition:border .15s,box-shadow .15s;}
.cs-tw-input:focus,.cs-tw-textarea:focus,.cs-tw-select:focus{outline:none;border-color:var(--cs-coral);box-shadow:0 0 0 3px rgba(241,145,125,.18);}
.cs-tw-textarea{min-height:150px;resize:vertical;line-height:1.6;}
.cs-tw-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;}
.cs-tw-btn{display:inline-flex;align-items:center;gap:8px;background:var(--cs-coral);color:#fff;border:none;border-radius:40px;padding:13px 26px;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s,transform .1s;}
.cs-tw-btn:hover{background:var(--cs-coral-deep);}
.cs-tw-btn:active{transform:translateY(1px);}
.cs-tw-btn.ghost{background:#fff;color:var(--cs-coral-deep);border:1px solid var(--cs-coral);}
.cs-tw-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px;}
.cs-tw-out{margin-top:18px;background:#fbf7f5;border:1px solid #f0e2dd;border-radius:12px;padding:16px 18px;word-break:break-word;}
.cs-tw-out .big{font-size:30px;font-weight:800;color:var(--cs-coral-deep);}
.cs-tw-stat{display:inline-block;background:#fff;border:1px solid #f0e2dd;border-radius:10px;padding:10px 16px;margin:4px 8px 4px 0;text-align:center;}
.cs-tw-stat b{display:block;font-size:24px;color:var(--cs-ink);}
.cs-tw-stat span{font-size:12px;color:#7a7f87;}
.cs-tw-drop{border:2px dashed #e3b6aa;border-radius:14px;padding:34px;text-align:center;color:#9a7d75;background:#fffaf8;cursor:pointer;transition:.15s;}
.cs-tw-drop.drag{border-color:var(--cs-coral);background:#fff2ed;}
.cs-tw-note{font-size:13px;color:#8a8f98;margin-top:10px;}
.cs-tw-preview{max-width:100%;border-radius:10px;margin-top:14px;border:1px solid #eee;}
.cs-tw-canvas-wrap{margin-top:14px;}
.cs-tw-msg{margin-top:12px;font-weight:600;}
.cs-tw-msg.ok{color:#1a7f37;} .cs-tw-msg.err{color:#b32d2e;}
.cs-tw-soon{text-align:center;padding:20px;}
.cs-tw-soon i{font-size:34px;color:var(--cs-coral);}
.cs-tw-soon h3{margin:12px 0 6px;}
.cs-tw-soon p{color:#7a7f87;max-width:520px;margin:0 auto;}

/* ---------- Content + related ---------- */
.cs-tool-content{padding:40px 0;}
.cs-tool-prose{max-width:820px;}
.cs-tool-prose h2{font-size:26px;margin-top:28px;}
.cs-tool-related{padding:10px 0 70px;}
.cs-tool-related-title{font-size:24px;margin-bottom:18px;}
.cs-tool-related-grid{display:flex;flex-wrap:wrap;gap:12px;}
.cs-tool-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #f0e2dd;border-radius:40px;padding:10px 18px;text-decoration:none;color:var(--cs-ink);font-weight:600;font-size:14px;transition:.15s;}
.cs-tool-chip:hover{border-color:var(--cs-coral);color:var(--cs-coral-deep);transform:translateY(-2px);box-shadow:0 8px 20px rgba(227,112,90,.12);}
.cs-tool-chip i{color:var(--cs-coral);}
@media(max-width:600px){.cs-tool-hero{padding:96px 0 36px;}.cs-tool-app{padding:20px;}}

/* ============================================================
 *  Nexux-style DARK tool page (brand coral accents)
 * ========================================================== */
.cs-tx{--cs-coral:#f1917d;--cs-coral-deep:#e3705a;--cs-violet:#7b6cf6;background:#070810;color:#c7cad6;overflow:hidden;}
.cs-tx .container{position:relative;z-index:2;}
.cs-tx h2,.cs-tx h3{color:#fff;}
.cs-tx-glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;pointer-events:none;z-index:1;}
.cs-tx-glow-1{top:-120px;left:-80px;width:420px;height:420px;background:radial-gradient(circle,rgba(123,108,246,.55),transparent 70%);}
.cs-tx-glow-2{top:40px;right:-100px;width:460px;height:460px;background:radial-gradient(circle,rgba(241,145,125,.45),transparent 70%);}
.cs-tx-glow-3{top:50%;left:50%;transform:translate(-50%,-50%);width:520px;height:520px;background:radial-gradient(circle,rgba(123,108,246,.35),transparent 70%);}

/* hero */
.cs-tx-hero{position:relative;text-align:center;padding:130px 0 70px;background:radial-gradient(120% 90% at 50% -10%,#161433 0%,#0a0b16 45%,#070810 100%);}
.cs-tx-bc{font-size:13px;color:#7d8194;margin-bottom:18px;}
.cs-tx-bc a{color:#9aa0b5;text-decoration:none;}.cs-tx-bc a:hover{color:#fff;}.cs-tx-bc span{margin:0 7px;opacity:.5;}
.cs-tx-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--cs-coral);background:rgba(241,145,125,.12);border:1px solid rgba(241,145,125,.3);padding:6px 16px;border-radius:40px;}
.cs-tx-eyebrow.center{display:inline-flex;}
.cs-tx-title{font-size:clamp(32px,5.5vw,60px);line-height:1.06;margin:20px auto 14px;font-weight:800;background:linear-gradient(90deg,#fff 30%,#d9c3ff 70%,var(--cs-coral));-webkit-background-clip:text;background-clip:text;color:transparent;max-width:14ch;}
.cs-tx-sub{font-size:18px;color:#9ca1b6;max-width:680px;margin:0 auto 36px;line-height:1.6;}
.cs-tx-hero .cs-tool-app{margin:0 auto;text-align:left;background:#fff;color:#16181d;border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 80px rgba(0,0,0,.5),0 0 0 1px rgba(123,108,246,.2);}
.cs-tx-privacy{margin-top:18px;color:#7d8194;font-size:14px;}
.cs-tx-privacy i{color:var(--cs-coral);}

/* sections */
.cs-tx-section{position:relative;padding:74px 0;background:#070810;}
.cs-tx-alt{background:#0a0b16;}
.cs-tx-h2{text-align:center;font-size:clamp(26px,3.5vw,40px);margin:14px 0 6px;font-weight:800;}
.cs-tx-lead{text-align:center;color:#8f94a8;max-width:620px;margin:0 auto 40px;}
.cs-tx-section .cs-tx-eyebrow{display:block;width:max-content;margin:0 auto;}

/* steps */
.cs-tx-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px;}
.cs-tx-step{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:28px 22px;}
.cs-tx-step:hover{border-color:rgba(241,145,125,.4);}
.cs-tx-step-no{position:absolute;top:-14px;left:22px;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--cs-coral),var(--cs-violet));color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;}
.cs-tx-step i{font-size:26px;color:var(--cs-coral);margin:8px 0 12px;display:block;}
.cs-tx-step h3{font-size:17px;margin:0 0 8px;}
.cs-tx-step p{font-size:14px;color:#8f94a8;line-height:1.6;margin:0;}

/* features grid */
.cs-tx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px;}
.cs-tx-card{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:28px;transition:.18s;}
.cs-tx-card:hover{transform:translateY(-4px);border-color:rgba(123,108,246,.45);box-shadow:0 18px 40px rgba(0,0,0,.4);}
.cs-tx-ico{display:inline-flex;width:52px;height:52px;border-radius:14px;align-items:center;justify-content:center;background:rgba(241,145,125,.12);border:1px solid rgba(241,145,125,.3);color:var(--cs-coral);font-size:22px;margin-bottom:16px;}
.cs-tx-card h3{font-size:18px;margin:0 0 8px;}
.cs-tx-card p{color:#8f94a8;font-size:14px;line-height:1.6;margin:0;}

/* prose */
.cs-tx-prose{max-width:820px;margin:0 auto;color:#b8bccb;}
.cs-tx-prose h2,.cs-tx-prose h3{color:#fff;}
.cs-tx-prose a{color:var(--cs-coral);}

/* faq */
.cs-tx-faq{max-width:780px;margin:30px auto 0;}
.cs-tx-faq-item{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;margin-bottom:12px;overflow:hidden;}
.cs-tx-faq-item summary{cursor:pointer;list-style:none;padding:18px 22px;font-weight:600;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:12px;}
.cs-tx-faq-item summary::-webkit-details-marker{display:none;}
.cs-tx-faq-item summary i{color:var(--cs-coral);transition:.2s;}
.cs-tx-faq-item[open] summary i{transform:rotate(45deg);}
.cs-tx-faq-a{padding:0 22px 18px;color:#9ca1b6;line-height:1.7;}

/* chips */
.cs-tx-chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px;}
.cs-tx-chip{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:40px;padding:11px 20px;text-decoration:none;color:#c7cad6;font-weight:600;font-size:14px;transition:.16s;}
.cs-tx-chip:hover{border-color:var(--cs-coral);color:#fff;background:rgba(241,145,125,.12);}
.cs-tx-chip i{color:var(--cs-coral);}

/* cta */
.cs-tx-cta{position:relative;text-align:center;padding:90px 0;background:radial-gradient(100% 100% at 50% 0%,#161433,#070810);overflow:hidden;}
.cs-tx-cta h2{font-size:clamp(26px,4vw,42px);margin:0 0 12px;}
.cs-tx-cta p{color:#9ca1b6;max-width:560px;margin:0 auto 28px;}
.cs-tx-btn{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--cs-coral),var(--cs-coral-deep));color:#fff;text-decoration:none;font-weight:700;padding:15px 34px;border-radius:40px;box-shadow:0 12px 30px rgba(241,145,125,.35);transition:.16s;}
.cs-tx-btn:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(241,145,125,.5);}

@media(max-width:900px){.cs-tx-steps{grid-template-columns:repeat(2,1fr);}.cs-tx-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.cs-tx-steps,.cs-tx-grid{grid-template-columns:1fr;}.cs-tx-hero{padding:104px 0 50px;}}

/* ---------- Tool box polish ---------- */
.cs-tool-app{position:relative;border-radius:20px;}
.cs-tool-app::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;border-radius:20px 20px 0 0;background:linear-gradient(90deg,var(--cs-coral),#7b6cf6);}
.cs-tool-app{padding-top:34px;}
.cs-tx-hero .cs-tool-app{max-width:760px;}
.cs-tool-app .cs-tw-out{background:#fbf7f5;}
.cs-tool-app .cs-tw-out table td{font-size:14px;}
.cs-tw-preview{box-shadow:0 8px 24px rgba(0,0,0,.12);}
