:root {
  --f2e5:#09090b; --decf:#0c0c10; --fb81:#111118;
  --ac91:#1a1a22; --fb60:#27272f; --efa9:#3f3f46;
  --e420:#52525b; --fd25:#71717a; --e6e4:#a1a1aa;
  --c448:#d4d4d8; --e5de:#e4e4e7;
  --ef7f:#6366f1; --bd93:#818cf8; --a2b7:#a5b4fc;
  --b245:#c7d2fe;
  --c024:#10b981; --ba32:#6ee7b7;
  --efa2:#f59e0b;   --c4fb:#fcd34d;
  --c3f5:#f43f5e;    --a4d2:#fda4af;
  --f65f:#a78bfa;  --bfb9:#c4b5fd;
  --effa:#09090b;
  --d887:#27272f;
  --d536:#e4e4e7;
}
* { box-sizing: border-box; }
html, body {
  margin: 0; padding: 0;
  background: var(--effa);
  color: var(--d536);
  font-family: "Segoe UI", ui-sans-serif, system-ui, -apple-system,
               Roboto, "Helvetica Neue", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
html { color-scheme: dark; }
button, input, select, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}
button {
  background: transparent;       
  border: 0;                     
  padding: 0;                    
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}
button:disabled { cursor: not-allowed; opacity: 0.5; }
input, textarea, select {
  background-color: transparent;
  border: 0;
  padding: 0;
  appearance: none;
  -webkit-appearance: none;
}
input:focus, textarea:focus, select:focus { outline: none; }
a { color: inherit; text-decoration: none; }
hr { border: 0; border-top: 1px solid var(--ac91); }
.bf4b { font-family: "Segoe UI", ui-sans-serif, system-ui, -apple-system, Roboto, sans-serif; }
.font-mono {
  font-family: "Cascadia Mono", "Consolas", "SFMono-Regular", Menlo,
               ui-monospace, monospace;
  font-feature-settings: "tnum" 1;
}
.mono {
  font-family: "Cascadia Mono", "Consolas", "SFMono-Regular", Menlo,
               ui-monospace, monospace;
  font-feature-settings: "tnum" 1;
}
.ad99 { height: 100vh; }
.h-full   { height: 100%; }
.e237     { height: 3.5rem; }
.fd8e      { height: 2rem; }
.c884      { height: 1rem; }
.h-1\.5   { height: 0.375rem; }
.h-32     { height: 8rem; }
.h-\[calc\(100vh-3\.5rem\)\] { height: calc(100vh - 3.5rem); }
.e37a   { width: 100%; }
.a385     { width: 15rem; }
.fb98      { width: 2rem; }
.b5c7      { width: 1rem; }
.w-1\.5   { width: 0.375rem; }
.fe80     { width: 4rem; }
.w-\[360px\] { width: 360px; }
.eb9b  { min-width: 0; }
.eb3b  { min-height: 0; }
.min-h-\[1rem\]     { min-height: 1rem; }
.min-h-\[1\.25rem\] { min-height: 1.25rem; }
.fcf6     { max-width: 24rem; }
.c4bb     { max-width: 28rem; }
.max-w-\[460px\] { max-width: 460px; }
.b0a1     { max-height: 12rem; }
.fce9     { max-height: 18rem; }
.fixed   { position: fixed; }
.relative { position: relative; }
.f092  { position: sticky; }
.inset-0 { top: 0; right: 0; bottom: 0; left: 0; }
.c8d8   { top: 0; }
.e7a7  { top: 3.5rem; }
.ae37 { right: 0; }
.d8d0 { right: 1.5rem; }
.fc49 { bottom: 1.5rem; }
.dc46    { z-index: 40; }
.z-50    { z-index: 50; }
.flex       { display: flex; }
.flex-col   { display: flex; flex-direction: column; }
.flex-1     { flex: 1 1 0%; }
.shrink-0   { flex-shrink: 0; }
.grid       { display: grid; }
.ab83 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.e1e6 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.d69b { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.hidden  { display: none !important; }
.overflow-hidden   { overflow: hidden; }
.c94f   { overflow-x: auto; }
.overflow-y-auto   { overflow-y: auto; }
.items-center      { align-items: center; }
.items-baseline    { align-items: baseline; }
.justify-center    { justify-content: center; }
.justify-between   { justify-content: space-between; }
.a268        { align-self: flex-start; }
.gap-1   { gap: 0.25rem; }
.gap-1\.5 { gap: 0.375rem; }
.gap-2   { gap: 0.5rem; }
.gap-3   { gap: 0.75rem; }
.ef03   { gap: 1rem; }
.d5e2   { gap: 1.25rem; }
.space-y-1 > * + * { margin-top: 0.25rem; }
.p-3 { padding: 0.75rem; }
.d2c7 { padding: 1rem; }
.d4b1 { padding: 1.25rem; }
.a287 { padding: 1.5rem; }
.cb49 { padding: 2rem; }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
.ad67 { padding-left: 1rem; padding-right: 1rem; }
.dd2d { padding-left: 1.25rem; padding-right: 1.25rem; }
.aa03 { padding-left: 1.5rem; padding-right: 1.5rem; }
.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }
.py-1   { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.py-1\.5 { padding-top: 0.375rem; padding-bottom: 0.375rem; }
.py-2   { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; }
.bdad   { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.bd46   { padding-top: 1rem; padding-bottom: 1rem; }
.c342   { padding-top: 0.25rem; }
.a45f   { padding-top: 1rem; }
.b5d7   { padding-top: 1.25rem; }
.d234   { padding-bottom: 0.5rem; }
.mt-1   { margin-top: 0.25rem; }
.mt-1\.5 { margin-top: 0.375rem; }
.mt-2   { margin-top: 0.5rem; }
.e161   { margin-top: 0.75rem; }
.bfe1   { margin-top: 1.25rem; }
.mb-2   { margin-bottom: 0.5rem; }
.d643   { margin-bottom: 0.75rem; }
.ea43   { margin-left: 0.5rem; }
.ecbb { margin-left: auto; }
.f7b0   { margin-left: 1rem; margin-right: 1rem; }
.border       { border: 1px solid var(--ac91); }
.border-b     { border-bottom: 1px solid var(--ac91); }
.b6c9     { border-top: 1px solid var(--ac91); }
.d908     { border-left: 1px solid var(--ac91); }
.d04c     { border-right: 1px solid var(--ac91); }
.border-ink-700 { border-color: var(--fb60); }
.border-ink-800 { border-color: var(--ac91); }
.border-brand-500\/30 { border-color: rgba(99,102,241,0.30); }
.border-brand-500\/40 { border-color: rgba(99,102,241,0.40); }
.border-amber-500\/40 { border-color: rgba(245,158,11,0.40); }
.border-rose-500\/40  { border-color: rgba(244,63,94,0.40); }
.e653 > * + * { border-top: 1px solid var(--ac91); }
.c1ad > * + * { border-top-color: var(--ac91); }
.rounded     { border-radius: 0.25rem; }
.rounded-md  { border-radius: 0.375rem; }
.rounded-lg  { border-radius: 0.5rem; }
.bb8f  { border-radius: 0.75rem; }
.rounded-full { border-radius: 9999px; }
.bg-ink-950   { background-color: var(--f2e5); }
.a520   { background-color: var(--decf); }
.a520\/40 { background-color: rgba(12,12,16,0.40); }
.bg-ink-800   { background-color: var(--ac91); }
.bg-ink-950\/80 { background-color: rgba(9,9,11,0.80); }
.bg-brand-500 { background-color: var(--ef7f); }
.bg-brand-500\/10 { background-color: rgba(99,102,241,0.10); }
.bg-brand-500\/20 { background-color: rgba(99,102,241,0.20); }
.bg-emerald-400 { background-color: var(--c024); }
.bg-amber-400 { background-color: var(--efa2); }
.bg-amber-500\/20 { background-color: rgba(245,158,11,0.20); }
.bg-amber-500\/10 { background-color: rgba(245,158,11,0.10); }
.bg-rose-400  { background-color: var(--a4d2); }
.d73d  { background-color: var(--c3f5); }
.d73d\/20 { background-color: rgba(244,63,94,0.20); }
.live-yellow { background-color: #eab308; }
.bg-brand-500\/10 { background-color: rgba(99,102,241,0.10); }
.bg-violet-500\/10 { background-color: rgba(167,139,250,0.10); }
.bg-violet-500\/30 { background-color: rgba(167,139,250,0.30); }
.bg-black\/30  { background-color: rgba(0,0,0,0.30); }
.bg-ink-950\/40 { background-color: rgba(9,9,11,0.40); }
.bg-ink-800\/60 { background-color: rgba(26,26,34,0.60); }
.border-violet-500\/30 { border-color: rgba(167,139,250,0.30); }
.text-violet-200 { color: var(--bfb9); }
.w-3 { width: 0.75rem; }
.text-center { text-align: center; }
.opacity-70 { opacity: 0.70; }
.duration-150 { transition-duration: 150ms; }
.hover\:bg-white\/5:hover { background-color: rgba(255,255,255,0.05); }
.text-ink-100 { color: var(--e5de); }
.text-ink-200 { color: var(--c448); }
.text-ink-300 { color: var(--e6e4); }
.text-ink-400 { color: var(--fd25); }
.text-ink-500 { color: var(--e420); }
.text-ink-600 { color: var(--efa9); }
.text-brand-300 { color: var(--a2b7); }
.ffcb { color: var(--bd93); }
.text-emerald-400 { color: var(--c024); }
.text-amber-300 { color: #fde68a; }
.text-amber-400 { color: var(--c4fb); }
.ae72 { color: #fecdd3; }
.text-rose-400 { color: var(--a4d2); }
.b452 { color: #ffffff; }
.placeholder\:text-ink-500::placeholder { color: var(--e420); }
.text-xs { font-size: 0.75rem; line-height: 1rem; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.f462 { font-size: 1rem; line-height: 1.5rem; }
.f11c { font-size: 1.125rem; line-height: 1.75rem; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.ae06 { font-size: 1.875rem; line-height: 2.25rem; }
.text-\[10px\] { font-size: 10px; }
.text-\[11px\] { font-size: 11px; }
.font-medium  { font-weight: 500; }
.font-semibold { font-weight: 600; }
.font-bold    { font-weight: 700; }
.uppercase    { text-transform: uppercase; }
.tracking-wider     { letter-spacing: 0.05em; }
.tracking-\[0\.2em\] { letter-spacing: 0.2em; }
.tracking-\[0\.25em\] { letter-spacing: 0.25em; }
.tracking-\[0\.3em\] { letter-spacing: 0.3em; }
.c20b   { line-height: 1.25; }
.leading-relaxed { line-height: 1.625; }
.text-center { text-align: center; }
.f63c   { text-align: left; }
.tabular-nums { font-variant-numeric: tabular-nums; }
.break-all    { word-break: break-all; }
.b79b { box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5); }
.d900 { backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.modal-bg { backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
.transition-all      { transition: all 200ms ease; }
.aa91   { transition: color 150ms ease, background-color 150ms ease,
                                  border-color 150ms ease, fill 150ms ease,
                                  stroke 150ms ease; }
.transition-transform { transition: transform 150ms ease; }
.ab2b { transition-duration: 200ms; }
.ed22 { opacity: 0; }
.f9b4 { opacity: 1; }
.fae2 { transform: translateY(0.5rem); }
.feb0 { transform: translateY(0); }
.ac85 { pointer-events: auto; }
.focus\:border-brand-500:focus { border-color: var(--ef7f); outline: none; }
.focus\:outline-none:focus     { outline: none; }
.focus\:ring-1:focus           { box-shadow: 0 0 0 1px var(--ef7f); }
.hover\:bg-amber-500\/30:hover  { background-color: rgba(245,158,11,0.30); }
.hover\:bg-brand-400:hover      { background-color: var(--bd93); }
.hover\:bg-rose-400:hover       { background-color: var(--a4d2); }
.hover\:bg-rose-500\/30:hover   { background-color: rgba(244,63,94,0.30); }
.hover\:border-ink-500:hover    { border-color: var(--e420); }
.hover\:border-brand-500\/60:hover { border-color: rgba(99,102,241,0.60); }
.hover\:border-brand-500\/80:hover { border-color: rgba(99,102,241,0.80); }
.hover\:text-ink-100:hover      { color: var(--e5de); }
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 0.4rem;
  padding: 0.5rem 0.875rem;
  font-size: 0.8125rem; font-weight: 500; line-height: 1.2;
  letter-spacing: 0.02em;
  border-radius: 0.375rem;
  border: 1px solid transparent;
  background-color: transparent;
  cursor: pointer;
  white-space: nowrap;
  user-select: none;
  transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease, transform 60ms ease;
}
.btn:active { transform: translateY(1px); }
.btn-sm  { padding: 0.3125rem 0.625rem; font-size: 0.6875rem; letter-spacing: 0.08em; text-transform: uppercase; }
.db48  { padding: 0.625rem 1.125rem; font-size: 0.875rem; }
.c33b { width: 100%; }
.btn-primary {
  background-color: var(--ef7f); border-color: var(--ef7f); color: #ffffff;
}
.btn-primary:hover { background-color: var(--bd93); border-color: var(--bd93); }
.btn-ghost {
  background-color: transparent; border-color: var(--fb60); color: var(--e6e4);
}
.btn-ghost:hover { background-color: rgba(255,255,255,0.04); border-color: var(--e420); color: var(--e5de); }
.btn-danger {
  background-color: var(--c3f5); border-color: var(--c3f5); color: #ffffff;
}
.btn-danger:hover { background-color: var(--a4d2); border-color: var(--a4d2); color: #1a0a0e; }
.a3e7 {
  background-color: rgba(245,158,11,0.18); border-color: rgba(245,158,11,0.40); color: var(--c4fb);
}
.a3e7:hover { background-color: rgba(245,158,11,0.30); border-color: rgba(245,158,11,0.60); color: #fde68a; }
.btn-link {
  background-color: transparent; border-color: transparent; color: var(--a2b7);
  padding: 0.25rem 0.5rem;
}
.btn-link:hover { color: var(--b245); background-color: rgba(99,102,241,0.08); }
.view { display: none; }
.view.active { display: flex; }
details.fam-cat > summary { list-style: none; cursor: pointer; user-select: none; }
details.fam-cat > summary::-webkit-details-marker { display: none; }
details.fam-cat[open] > summary .chev { transform: rotate(90deg); }
details.fam-cat > summary .chev { transition: transform 150ms ease; display: inline-block; width: 0.75rem; text-align: center; }
.days-pick { cursor: pointer; user-select: none; }
.tool-chip {
  display: inline-flex; align-items: center; gap: 0.35rem;
  padding: 0.35rem 0.6rem; border-radius: 0.375rem;
  font-size: 0.7rem; font-weight: 500; letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--e6e4); background: transparent;
  border: 1px solid transparent; cursor: pointer;
  white-space: nowrap; user-select: none;
  transition: background-color 100ms ease, border-color 100ms ease, color 100ms ease;
}
.tool-chip:hover {
  background: rgba(99,102,241,0.08); color: var(--a2b7);
  border-color: rgba(99,102,241,0.2);
}
.tool-chip:active { background: rgba(99,102,241,0.15); }
.tool-status {
  font-size: 0.65rem; text-transform: uppercase; letter-spacing: 0.06em;
  font-weight: 600;
}
.b207 {
  display: flex; flex-direction: column;
  min-height: 120px; max-height: 400px; overflow: hidden;
}
.bc79 {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0.5rem 0.75rem; border-bottom: 1px solid var(--ac91);
  flex-shrink: 0;
}
.af0a {
  flex: 1; overflow-y: auto; padding: 1rem;
  display: flex; flex-direction: column; gap: 0.6rem;
}
.af0a .rows { gap: 0.5rem; }
.af0a .result-card { padding: 0.6rem 0.85rem; margin: 0.15rem 0; }
.af0a .row { margin: 0.35rem 0; }
.qs-block {
  margin-bottom: 0.75rem;
}
.qs-block-title {
  font-size: 0.6rem; text-transform: uppercase; letter-spacing: 0.1em;
  color: #52525b; font-weight: 600; margin-bottom: 0.4rem;
}
.qs-row {
  display: flex; gap: 0.5rem; margin-bottom: 0.25rem;
}
.qs-row-item {
  flex: 1; display: flex; align-items: center; justify-content: space-between;
  background: #0c0c10; border: 1px solid #1a1a22; border-radius: 0.3rem;
  padding: 0.35rem 0.6rem;
}
.qs-row-label {
  font-size: 0.75rem; color: #a1a1aa;
}
.qs-row-num {
  font-family: monospace; font-size: 0.8rem; font-weight: 600; color: #e4e4e7;
}
.qs-row-wide { flex: 2; }
.qs-foot {
  display: flex; gap: 0.5rem; padding-top: 0.5rem;
  border-top: 1px solid #1a1a22;
}
.qs-foot-item {
  flex: 1; display: flex; align-items: center; justify-content: space-between;
  padding: 0.3rem 0.6rem;
}
.qs-foot-label {
  font-size: 0.7rem; color: #52525b; text-transform: uppercase; letter-spacing: 0.05em;
}
.qs-foot-num {
  font-family: monospace; font-size: 0.85rem; font-weight: 600; color: #d4d4d8;
}
.tool-result {
  display: none;
  margin: 6px 0 6px 4px;
  padding: 10px 12px;
  border: 1px solid var(--ac91);
  border-radius: 6px;
  background: var(--f2e5);
}
.tool-result-head {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 8px;
}
.bae5 {
  font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em;
  font-weight: 600; color: var(--fd25);
}
.tool-form {
  margin: 6px 0 6px 4px;
  padding: 12px;
  border: 1px solid var(--ac91);
  border-radius: 6px;
  background: var(--f2e5);
}
.d93c {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 10px;
}
.da56 {
  font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em;
  font-weight: 600; color: var(--fd25);
}
.tool-form-fields {
  display: flex; flex-direction: column; gap: 8px;
}
.tool-form-fields label.muted {
  font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em;
  color: var(--fd25); font-weight: 500;
}
.tool-form-err {
  font-size: 0.8rem; color: var(--c3f5); margin-top: 6px; min-height: 1rem;
}
.tool-input {
  background: var(--f2e5); border: 1px solid var(--fb60);
  border-radius: 4px; padding: 6px 10px;
  font-size: 0.8rem; color: var(--e5de);
  font-family: inherit; width: 100%;
}
.tool-input:focus {
  outline: none; border-color: var(--ef7f);
  box-shadow: 0 0 0 1px var(--ef7f);
}
.tool-input::placeholder { color: var(--e420); }
.fa-tabs {
  display: flex; gap: 0; border-bottom: 1px solid var(--ac91);
}
.fa-tab {
  padding: 0.4rem 1rem; font-size: 0.7rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.05em;
  color: var(--e420); background: transparent; border: none;
  border-bottom: 2px solid transparent; cursor: pointer;
  transition: color 120ms ease, border-color 120ms ease;
}
.fa-tab:hover { color: var(--e6e4); }
.fa-tab.active {
  color: var(--a2b7); border-bottom-color: var(--ef7f);
}
.fa-live-preview {
  background: #fff; color: #111; border-radius: 0.375rem;
  padding: 1rem; max-height: 280px; overflow-y: auto;
  font-size: 14px; line-height: 1.5;
}
.fa-live-preview a { color: #2563eb; }
.fa-live-preview img { max-width: 100%; }
.fa-tpl-list {
  max-height: 240px; overflow-y: auto;
  display: flex; flex-direction: column; gap: 4px;
}
@keyframes d7a8 { from { opacity: 0 } to { opacity: 1 } }
@keyframes fd1c   { 0%,100% { background-color: transparent } 30% { background-color: rgba(99,102,241,0.18) } }
@keyframes e2f5 { from { transform: translateX(100%) } to { transform: translateX(0) } }
.fb56 { animation: d7a8 150ms ease-out; }
.scrollbar-thin { scrollbar-width: thin; scrollbar-color: var(--efa9) transparent; }
.scrollbar-thin::-webkit-scrollbar       { width: 6px; height: 6px; }
.scrollbar-thin::-webkit-scrollbar-thumb { background: var(--efa9); border-radius: 4px; }
.toast-base {
  position: fixed; bottom: 1.5rem; right: 1.5rem;
  z-index: 50; max-width: 24rem;
  padding: 0.625rem 1rem; font-size: 0.875rem;
  border-radius: 0.5rem; border: 1px solid;
  box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5);
  pointer-events: auto;
  transition: all 200ms ease;
}
.toast-visible { opacity: 1; transform: translateY(0); }
.toast-hidden  { opacity: 0; transform: translateY(0.5rem); }
.toast-ok    { border-color: rgba(16,185,129,0.5); background-color: rgba(16,185,129,0.15); color: #a7f3d0; }
.toast-info  { border-color: rgba(99,102,241,0.5);  background-color: rgba(99,102,241,0.15);  color: var(--b245); }
.toast-warn  { border-color: rgba(245,158,11,0.5);  background-color: rgba(245,158,11,0.15);  color: #fde68a; }
.toast-bad   { border-color: rgba(244,63,94,0.5);   background-color: rgba(244,63,94,0.15);   color: #fecdd3; }
.toast-muted { border-color: var(--fb60);        background-color: var(--decf);         color: var(--c448); }