.fr-alicia{
  --fa-paper:#F7F8FC; --fa-paper-alt:#EFF2FC; --fa-ink:#1B2140; --fa-ink-soft:#4B5171;
  --fa-primary:#2E4BF2; --fa-primary-dark:#1E34B8; --fa-accent:#F5A623; --fa-accent-soft:#FDECC8;
  --fa-red:#E1483C; --fa-green:#1FA97A; --fa-line:#D8DEF3; --fa-white:#FFFFFF;
  font-family:'Inter',-apple-system,sans-serif; color:var(--fa-ink);
  max-width:360px; margin:0 auto;
}
.fr-alicia *, .fr-alicia *::before, .fr-alicia *::after{ box-sizing:border-box; }

.fr-alicia .fa-wrap{ position:relative; }
.fr-alicia .fa-wrap::before{
  content:""; position:absolute; inset:-16px; z-index:0; border-radius:34px;
  background:radial-gradient(ellipse at 50% 0%, rgba(46,75,242,.20), transparent 70%);
}
.fr-alicia .fa-device{
  position:relative; z-index:1; background:var(--fa-white); border-radius:22px;
  box-shadow:0 24px 54px rgba(27,33,64,.20), 0 4px 14px rgba(27,33,64,.08);
  border:1px solid var(--fa-line); overflow:hidden;
}
.fr-alicia .fa-topbar{
  display:flex; align-items:center; justify-content:space-between; padding:11px 14px;
  background:var(--fa-ink); color:#fff;
}
.fr-alicia .fa-name{
  font-family:'Space Mono',monospace; font-size:11px; letter-spacing:.04em;
  display:flex; align-items:center; gap:7px;
}
.fr-alicia .fa-lamp{ width:7px; height:7px; border-radius:50%; background:var(--fa-green); box-shadow:0 0 8px var(--fa-green); }

.fr-alicia .fa-tabs{ display:flex; overflow-x:auto; background:var(--fa-paper-alt); border-bottom:1px solid var(--fa-line); scrollbar-width:none; }
.fr-alicia .fa-tabs::-webkit-scrollbar{ display:none; }
.fr-alicia .fa-tab{
  flex:1; min-width:max-content; padding:9px 10px; font-weight:700; font-size:.72rem;
  color:var(--fa-ink-soft); background:none; border:none; cursor:pointer; border-bottom:3px solid transparent; white-space:nowrap;
}
.fr-alicia .fa-tab.active{ color:var(--fa-primary); border-bottom-color:var(--fa-primary); background:var(--fa-white); }

.fr-alicia .fa-panel{ display:none; padding:14px; }
.fr-alicia .fa-panel.active{ display:block; }

.fr-alicia .fa-hint{ font-size:.78rem; color:var(--fa-ink-soft); margin:0 0 10px; }
.fr-alicia .fa-hint strong{ color:var(--fa-ink); }

.fr-alicia .fa-op-row{ display:grid; grid-template-columns:1fr auto 1fr; gap:8px; align-items:end; margin-bottom:12px; }
.fr-alicia .fa-fields label{ font-size:.72rem; font-weight:700; color:var(--fa-ink-soft); display:block; margin-bottom:4px; }
.fr-alicia .fa-fields input, .fr-alicia .fa-op-row select{
  width:100%; padding:9px 10px; border-radius:9px; border:1px solid var(--fa-line);
  font-family:'Space Mono',monospace; font-size:.88rem; background:var(--fa-paper-alt); color:var(--fa-ink);
}
.fr-alicia .fa-fields input:focus, .fr-alicia .fa-op-row select:focus{ outline:2px solid var(--fa-primary); outline-offset:1px; }
.fr-alicia .fa-fields{ margin-bottom:12px; }

.fr-alicia .fa-example-row{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
.fr-alicia .fa-example-chip{
  font-family:'Space Mono',monospace; font-size:.68rem; background:var(--fa-paper-alt); border:1px solid var(--fa-line);
  padding:4px 9px; border-radius:999px; cursor:pointer; color:var(--fa-ink-soft);
}
.fr-alicia .fa-example-chip:hover{ border-color:var(--fa-primary); color:var(--fa-primary); }

.fr-alicia .fa-mini-btn{
  padding:10px 18px; border-radius:9px; border:none; background:var(--fa-primary); color:#fff;
  font-weight:700; cursor:pointer; font-family:'Inter',sans-serif; font-size:.82rem; width:100%;
}
.fr-alicia .fa-mini-btn:hover{ background:var(--fa-primary-dark); }
.fr-alicia .fa-download-btn{ background:var(--fa-accent); color:#5c3d00; font-size:.75rem; padding:8px 14px; width:auto; }
.fr-alicia .fa-download-btn:hover{ background:#E39916; }

.fr-alicia .fa-error{ color:var(--fa-red); font-size:.76rem; font-weight:600; margin:6px 2px 0; min-height:16px; }

.fr-alicia .fa-result-strip{
  display:flex; align-items:center; justify-content:space-between; background:var(--fa-ink); border-radius:11px;
  padding:12px 14px; margin-top:12px;
}
.fr-alicia .fa-result-strip .fa-r-label{ font-family:'Space Mono',monospace; font-size:.68rem; color:#9AA5E8; }
.fr-alicia .fa-result-strip .fa-r-value{ font-family:'Space Mono',monospace; font-size:1.3rem; font-weight:700; color:#fff; }
.fr-alicia .fa-result-strip .fa-r-sub{ font-family:'Space Mono',monospace; font-size:.72rem; color:#9AA5E8; }

.fr-alicia .fa-steps{
  margin-top:12px; border-radius:12px; border:1px solid var(--fa-line);
  background:repeating-linear-gradient(var(--fa-white) 0 23px, var(--fa-line) 23px 24px);
  position:relative; padding:11px 12px 11px 26px; max-height:230px; overflow-y:auto;
}
.fr-alicia .fa-steps::before{ content:""; position:absolute; left:17px; top:0; bottom:0; width:2px; background:var(--fa-red); opacity:.5; }
.fr-alicia .fa-steps-title{ font-family:'Space Mono',monospace; font-size:10px; letter-spacing:.05em; text-transform:uppercase; color:var(--fa-ink-soft); margin-bottom:6px; }
.fr-alicia .fa-step-line{ font-family:'Space Mono',monospace; font-size:.76rem; color:var(--fa-ink); padding:2px 0; line-height:20px; opacity:0; animation:faStepIn .3s ease forwards; }
@keyframes faStepIn{ from{opacity:0; transform:translateX(-5px);} to{opacity:1; transform:translateX(0);} }
.fr-alicia .fa-empty{ color:var(--fa-ink-soft); font-size:.76rem; font-style:italic; }

.fr-alicia .fa-hist-entry{
  border-bottom:1px dashed var(--fa-line); padding:6px 0; font-family:'Space Mono',monospace; font-size:.74rem;
}
.fr-alicia .fa-hist-entry .fa-hist-result{ color:var(--fa-green); font-weight:700; }
