/* MockTest.in Tools — ink navy + saffron on paper */
:root{
  --ink:#17233B; --ink-2:#2A3A5C; --muted:#62708A;
  --saffron:#F26B21; --saffron-soft:#FDEBDF;
  --paper:#FAFBFD; --card:#FFFFFF; --line:#DDE3EE;
  --good:#0E8A54; --bad:#C43D2B;
  --r-card:14px; --r-ctl:10px;
  --font-h:'Sora',system-ui,sans-serif;
  --font-b:system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--font-b)}
.wrap{max-width:860px;margin:0 auto;padding:0 18px}
a{color:var(--ink-2)}
h1,h2,h3{font-family:var(--font-h);line-height:1.25;margin:0 0 .5em}
h2{font-size:1.25rem;margin-top:2.2em}
img{max-width:100%}

/* top bar */
.topbar{background:var(--ink);color:#fff}
.topbar-in{display:flex;align-items:center;justify-content:space-between;height:56px}
.brand{color:#fff;text-decoration:none;font-family:var(--font-h);font-weight:700;font-size:1.05rem}
.topnav a{color:#C9D3E6;text-decoration:none;font-size:.95rem;margin-left:18px}
.topnav a.on,.topnav a:hover{color:#fff}

/* page head */
.crumb{font-size:.85rem;color:var(--muted);margin:18px 0 6px;display:flex;gap:8px;flex-wrap:wrap}
.crumb a{color:var(--muted);text-decoration:none}
.crumb a:hover{color:var(--ink)}
.crumb em{font-style:normal;color:var(--ink)}
.page-h1{font-size:clamp(1.5rem,4vw,2.1rem);margin-top:14px}
.lead{color:var(--muted);max-width:62ch;margin:0 0 22px}

/* calculator card */
.calc{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);padding:22px;margin:8px 0 26px}
.calc h2:first-child{margin-top:0}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:.88rem;font-weight:600;color:var(--ink-2)}
.field small{color:var(--muted);font-weight:400}
input[type=number],input[type=text],input[type=date],select,textarea{
  width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-ctl);
  font:inherit;color:var(--ink);background:#fff}
input:focus,select:focus,textarea:focus{outline:2px solid var(--saffron);outline-offset:1px;border-color:var(--saffron)}
.btn{display:inline-block;background:var(--saffron);color:#fff;border:0;border-radius:var(--r-ctl);
  padding:11px 22px;font:600 1rem var(--font-b);cursor:pointer}
.btn:hover{background:#DA5B14}
.btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.btn-ghost{background:transparent;color:var(--ink-2);border:1px solid var(--line)}
.btn-ghost:hover{background:var(--paper);color:var(--ink)}
.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}

/* result band — the one bold moment */
.result{display:none;background:var(--ink);color:#E7ECF6;border-radius:var(--r-card);
  padding:20px 22px;margin:0 0 26px}
.result.show{display:block}
.result .big{font-family:var(--font-h);font-weight:700;font-size:clamp(1.8rem,6vw,2.6rem);color:var(--saffron);line-height:1.15}
.result .sub{margin-top:6px;font-size:.95rem;color:#AAB6CE}
.result table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.93rem}
.result td,.result th{padding:6px 8px;border-bottom:1px solid #2E3E60;text-align:left;color:#DCE3F2}
.result .ok{color:#5EDDA4}.result .warn{color:#FFB08A}

/* rows / lists */
.tool-rows{list-style:none;margin:0;padding:0}
.tool-rows li+li{margin-top:10px}
.tool-rows a{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);
  padding:14px 16px;text-decoration:none;color:var(--ink)}
.tool-rows a:hover{border-color:var(--saffron)}
.tool-rows strong{display:block;font-family:var(--font-h);font-size:.98rem}
.tool-rows span{display:block;color:var(--muted);font-size:.88rem;margin-top:2px}

/* hub */
.cat{margin-top:34px}
.cat h2{color:var(--saffron);font-size:1.05rem;letter-spacing:.2px;border-bottom:1px solid var(--line);padding-bottom:10px}
.hub-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));list-style:none;margin:0;padding:0}
.hub-grid a{display:block;height:100%;background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);padding:14px 16px;text-decoration:none;color:var(--ink)}
.hub-grid a:hover{border-color:var(--saffron)}
.hub-grid strong{display:block;font-family:var(--font-h);font-size:.95rem}
.hub-grid span{display:block;color:var(--muted);font-size:.85rem;margin-top:4px}

/* prose + faq */
.prose{max-width:70ch}
.prose table{width:100%;border-collapse:collapse;margin:14px 0;background:var(--card)}
.prose th,.prose td{border:1px solid var(--line);padding:8px 10px;text-align:left;font-size:.93rem}
.prose th{background:var(--saffron-soft)}
.prose code{background:var(--saffron-soft);padding:2px 6px;border-radius:6px;font-size:.9em}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);padding:0 16px;margin-bottom:10px}
.faq summary{cursor:pointer;font-weight:600;padding:13px 0;font-size:.96rem}
.faq p{margin:0 0 14px;color:var(--ink-2)}
.related{margin-top:2.2em}

/* dynamic subject/course rows */
.row-list .rrow{display:grid;gap:10px;grid-template-columns:2fr 1fr 1fr auto;align-items:end;margin-bottom:10px}
.row-list .rrow-2{grid-template-columns:2fr 1fr auto}
.rm{background:none;border:1px solid var(--line);border-radius:var(--r-ctl);width:40px;height:40px;cursor:pointer;color:var(--bad);font-size:1.1rem}
.rm:hover{border-color:var(--bad)}

/* typing test */
.type-src{background:var(--saffron-soft);border-radius:var(--r-ctl);padding:14px 16px;line-height:1.9;font-size:1.05rem;user-select:none}
.type-src .ok{color:var(--good)}.type-src .err{color:var(--bad);text-decoration:underline}
.type-src .cur{background:var(--saffron);color:#fff;border-radius:3px}

/* timer */
.clock{font-family:var(--font-h);font-weight:700;font-size:clamp(2.4rem,10vw,4rem);text-align:center;letter-spacing:2px}

/* resizer */
.drop{border:2px dashed var(--line);border-radius:var(--r-card);padding:34px 16px;text-align:center;color:var(--muted);cursor:pointer}
.drop.on{border-color:var(--saffron);color:var(--ink)}
.preview{max-width:220px;border:1px solid var(--line);border-radius:var(--r-ctl);margin-top:12px}

.foot{border-top:1px solid var(--line);margin-top:48px;background:var(--card)}
.foot-in{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:20px 18px;font-size:.88rem;color:var(--muted)}

@media (max-width:560px){
  .row-list .rrow,.row-list .rrow-2{grid-template-columns:1fr 1fr;grid-auto-rows:auto}
  .btn{width:100%;text-align:center}
  .btn-row .btn{width:auto;flex:1}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ad slots (plugin) */
.ad-slot{margin:22px 0;text-align:center;overflow:hidden}
.ad-slot:empty{display:none}
