/* Erf Studio Kit, front-end tool page styles.
   Matches the approved clean tool-page design: ERF monochrome, Kanit display +
   JetBrains Mono, answer-first, mobile-first. The Windows desktop lives on the
   homepage and archives, not here. No em dashes anywhere. */

.kit-page {
  --kit-bg:#0a0a0a; --kit-fg:#f4f4f4; --kit-soft:#b8b8b8; --kit-gray:#6a6a6a;
  --kit-line:rgba(255,255,255,0.12); --kit-line2:rgba(255,255,255,0.22);
  --kit-mono:'JetBrains Mono',ui-monospace,monospace;
  --kit-display:'Kanit',system-ui,sans-serif;
  background:var(--kit-bg); color:var(--kit-fg);
  font-family:var(--kit-display); font-weight:300;
  -webkit-font-smoothing:antialiased;
}

.kit-topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--kit-line);position:sticky;top:0;background:rgba(10,10,10,0.85);backdrop-filter:blur(8px);z-index:50;}
.kit-topbar .kit-brand{display:flex;align-items:center;gap:11px;text-decoration:none;}
.kit-topbar .kit-brand img{height:24px;width:auto;display:block;}
.kit-topbar .kit-brand .kit-tag{font-family:var(--kit-mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--kit-soft);border-left:1px solid var(--kit-line2);padding-left:11px;}
.kit-topbar nav a{font-family:var(--kit-mono);font-size:11px;letter-spacing:0.09em;text-transform:uppercase;color:var(--kit-fg);text-decoration:none;transition:color .15s;}
.kit-topbar nav a:hover{color:var(--kit-soft);}
@media(max-width:480px){.kit-topbar .kit-brand .kit-tag{display:none;}}

.kit-wrap{max-width:760px;margin:0 auto;padding:40px 24px 80px;}

.kit-crumbs{font-family:var(--kit-mono);font-size:11px;letter-spacing:0.05em;color:var(--kit-gray);margin:0 0 28px;display:flex;gap:9px;flex-wrap:wrap;}
.kit-crumbs a{color:var(--kit-soft);text-decoration:none;}
.kit-crumbs a:hover{color:var(--kit-fg);}
.kit-crumbs .cur{color:var(--kit-fg);}

.kit-cat-tag{font-family:var(--kit-mono);font-size:10px;letter-spacing:0.16em;text-transform:uppercase;color:var(--kit-gray);margin:0 0 14px;}
.kit-page h1{font-family:var(--kit-display);font-weight:600;font-size:clamp(32px,6vw,48px);line-height:1.02;letter-spacing:-0.015em;margin:0 0 18px;}
.kit-intro{font-size:17px;line-height:1.55;color:var(--kit-soft);margin:0 0 14px;max-width:60ch;font-weight:300;}
.kit-privacy{font-family:var(--kit-mono);font-size:11px;letter-spacing:0.03em;color:var(--kit-gray);margin:0;display:flex;align-items:center;gap:7px;}

.kit-app{margin:34px 0 48px;}
.kit-soon{font-family:var(--kit-mono);font-size:13px;color:var(--kit-gray);border:1px dashed var(--kit-line2);padding:28px;text-align:center;margin:34px 0 48px;}

.kit-section{margin:0 0 44px;}
.kit-section h2{font-family:var(--kit-display);font-weight:500;font-size:22px;letter-spacing:-0.01em;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--kit-line);}
.kit-body p{font-size:15.5px;line-height:1.7;color:var(--kit-soft);margin:0 0 14px;font-weight:300;}
.kit-steps{margin:0;padding:0;counter-reset:s;list-style:none;}
.kit-steps li{counter-increment:s;position:relative;padding:0 0 14px 38px;color:var(--kit-soft);font-size:15px;line-height:1.55;}
.kit-steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:-1px;font-family:var(--kit-mono);font-size:12px;color:var(--kit-gray);}
.kit-examples{margin:0;padding:0;list-style:none;}
.kit-examples li{padding:12px 0;border-top:1px solid var(--kit-line);color:var(--kit-soft);font-size:15px;line-height:1.5;}
.kit-examples li:first-child{border-top:none;}

.kit-faq details{border-bottom:1px solid var(--kit-line);}
.kit-faq summary{cursor:pointer;padding:16px 0;font-weight:400;font-size:16px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.kit-faq summary::-webkit-details-marker{display:none;}
.kit-faq summary::after{content:"+";font-family:var(--kit-mono);color:var(--kit-gray);font-size:18px;}
.kit-faq details[open] summary::after{content:"\2212";}
.kit-faq-a{padding:0 0 18px;color:var(--kit-soft);font-size:15px;line-height:1.65;max-width:62ch;}

.kit-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;}
.kit-related-card{display:flex;flex-direction:column;gap:5px;padding:16px;border:1px solid var(--kit-line);text-decoration:none;transition:border-color .15s,background .15s;}
.kit-related-card:hover{border-color:var(--kit-line2);background:rgba(255,255,255,0.03);}
.kit-rc-name{font-family:var(--kit-display);font-weight:500;font-size:15px;color:var(--kit-fg);}
.kit-rc-cat{font-family:var(--kit-mono);font-size:9px;letter-spacing:0.1em;text-transform:uppercase;color:var(--kit-gray);}

.kit-foot{border-top:1px solid var(--kit-line);padding:30px 24px;text-align:center;font-family:var(--kit-mono);font-size:10px;letter-spacing:0.08em;color:var(--kit-gray);}
.kit-foot a{color:var(--kit-soft);text-decoration:none;}

.kit-app .row{display:flex;align-items:center;gap:12px;margin-bottom:11px;}
.kit-app .row label{flex:0 0 40%;font-family:var(--kit-mono);font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--kit-gray);}
.kit-app input,.kit-app select{background:#000;color:var(--kit-fg);border:1px solid #000;box-shadow:inset 1px 1px 0 rgba(0,0,0,0.8),inset -1px -1px 0 rgba(255,255,255,0.12);font-family:var(--kit-mono);font-size:12px;padding:7px 9px;outline:none;}
.kit-app input:focus,.kit-app select:focus{box-shadow:inset 1px 1px 0 rgba(0,0,0,0.8),0 0 0 1px var(--kit-fg);}
.kit-app .out{border:1px solid var(--kit-line);padding:16px;margin-top:16px;}
.kit-app .stat .k{font-family:var(--kit-mono);font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--kit-gray);}
.kit-app .stat .v{font-family:var(--kit-display);font-weight:600;font-size:24px;margin-top:4px;}
.kit-app .btn{font-family:var(--kit-mono);font-size:11px;color:var(--kit-fg);background:rgba(255,255,255,0.06);border:1px solid #000;box-shadow:inset -1px -1px 0 rgba(0,0,0,0.6),inset 1px 1px 0 rgba(255,255,255,0.2);padding:8px 14px;cursor:pointer;}
.kit-app .btn:hover{background:rgba(255,255,255,0.12);}
.kit-app .btn.pri{background:rgba(255,255,255,0.85);color:#000;}

@media(max-width:560px){
  .kit-app .row{flex-direction:column;align-items:stretch;gap:5px;}
  .kit-app .row label{flex:none;}
  .kit-app input,.kit-app select{width:100%;box-sizing:border-box;}
}

#kit-boot{position:fixed;inset:0;background:#0a0a0a;z-index:9999;display:none;flex-direction:column;align-items:center;justify-content:center;gap:22px;}
#kit-boot.on{display:flex;}
#kit-boot .bt-logo{width:auto;height:84px;opacity:0;animation:kitBtLogo 1.1s ease-out forwards;filter:drop-shadow(0 0 12px rgba(255,255,255,0.25));}
@keyframes kitBtLogo{0%{opacity:0;transform:scale(0.94)}30%{opacity:1}100%{opacity:1;transform:scale(1)}}
#kit-boot .bt-log{font-family:var(--kit-mono);font-size:11px;letter-spacing:0.06em;color:var(--kit-soft);min-height:54px;text-align:center;line-height:1.6;}
#kit-boot .bt-bar{width:180px;height:3px;background:rgba(255,255,255,0.1);overflow:hidden;}
#kit-boot .bt-bar i{display:block;height:100%;width:0;background:var(--kit-fg);animation:kitBtBar 1.05s ease-in-out forwards;}
@keyframes kitBtBar{to{width:100%}}
#kit-boot .bt-scan{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,rgba(0,0,0,0.25) 3px,transparent 4px);opacity:0.4;}
/* lighter terminal loader shown on repeat visits (not the full boot screen) */
#kit-boot.mini .bt-logo,#kit-boot.mini .bt-bar{display:none;}
#kit-boot.mini{gap:0;}
#kit-boot.mini .bt-log{font-size:12px;color:var(--kit-soft);text-align:left;min-height:0;border:1px solid var(--kit-line2);padding:14px 18px;background:rgba(255,255,255,0.02);min-width:230px;}
body.kit-light #kit-boot.mini .bt-log{background:rgba(0,0,0,0.02);}

/* ===== light mode (toggle on tool pages) ===== */
.kit-page.kit-light{
  --kit-bg:#f4f4f2; --kit-fg:#0a0a0a; --kit-soft:#3a3a3a; --kit-gray:#7a7a7a;
  --kit-line:rgba(0,0,0,0.12); --kit-line2:rgba(0,0,0,0.22);
}
.kit-page.kit-light .kit-topbar{background:rgba(244,244,242,0.85);}
.kit-page.kit-light .kit-app input,.kit-page.kit-light .kit-app select{background:#fff;color:#0a0a0a;box-shadow:inset 1px 1px 0 rgba(0,0,0,0.15);}
.kit-page.kit-light .kit-app input:focus,.kit-page.kit-light .kit-app select:focus{box-shadow:inset 1px 1px 0 rgba(0,0,0,0.15),0 0 0 1px #0a0a0a;}
.kit-page.kit-light .kit-app .btn{color:#0a0a0a;background:rgba(0,0,0,0.05);box-shadow:inset -1px -1px 0 rgba(0,0,0,0.2),inset 1px 1px 0 rgba(255,255,255,0.9);}
.kit-page.kit-light .kit-app .btn.pri{background:#1a1a1a;color:#fff;}

/* theme toggle button */
.kit-theme-toggle{font-family:var(--kit-mono);font-size:11px;letter-spacing:0.09em;text-transform:uppercase;color:var(--kit-fg);background:none;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:7px;}
.kit-theme-toggle:hover{color:var(--kit-soft);}
.kit-topbar nav{display:flex;align-items:center;gap:22px;}

/* suppress the theme's glitch preloader on Kit tool pages (avoid double logo) */
body.kit-page [id^="erf-pl-"] { display: none !important; }

/* logo swaps to black in light mode on tool pages (white png inverted) */


/* footer actions: share + buy me a coffee */
.kit-foot{display:flex;flex-direction:column;gap:18px;}
.kit-foot-actions{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;}
.kit-share,.kit-coffee{font-family:var(--kit-mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;padding:9px 18px;border:1px solid var(--kit-line2);background:none;color:var(--kit-fg);text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s;}
.kit-share:hover,.kit-coffee:hover{background:rgba(255,255,255,0.06);border-color:var(--kit-fg);}
.kit-page.kit-light .kit-share:hover,.kit-page.kit-light .kit-coffee:hover{background:rgba(0,0,0,0.05);}
.kit-foot-line{font-family:var(--kit-mono);font-size:10px;letter-spacing:0.08em;color:var(--kit-gray);}
/* on mobile, the Erf Studio link drops to its own line under the privacy strap */
@media(max-width:560px){
  .kit-foot-line .kit-foot-sep{display:none;}
  .kit-foot-line .kit-foot-erf{display:block;margin-top:8px;}
}

/* real logo swap (white png in dark mode, dark png in light mode) */
.kit-logo-dark { display: none; }
.kit-page.kit-light .kit-logo-white { display: none; }
.kit-page.kit-light .kit-logo-dark { display: inline-block; }

/* inter-page preloader follows light/dark mode */
body.kit-light #kit-boot{background:#f4f4f2;}
body.kit-light #kit-boot .bt-logo{filter:drop-shadow(0 0 12px rgba(0,0,0,0.18));}
body.kit-light #kit-boot .bt-log{color:#555;}
body.kit-light #kit-boot .bt-bar{background:rgba(0,0,0,0.12);}
body.kit-light #kit-boot .bt-bar i{background:#0a0a0a;}
body.kit-light #kit-boot .bt-scan{background:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,rgba(0,0,0,0.06) 3px,transparent 4px);}

.kit-byline{font-family:var(--kit-mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--kit-gray);margin:6px 0 0;}
