/*
 * Fasil institutional surfaces — design reminder:
 * Institutional decision infrastructure. Sharp, composed, and exact.
 * Deep navy material, brass-gold hierarchy, teal operational cues,
 * hard edges, fine evidence lines, and uncompromising ThmanyahSans typography.
 */

@import url('fasil-theme.css');

@font-face {
  font-family: "ThmanyahSans";
  src: url("../fonts/thmanyahsans-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "ThmanyahSans";
  src: url("../fonts/thmanyahsans-500-normal.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "ThmanyahSans";
  src: url("../fonts/thmanyahsans-700-normal.woff2") format("woff2");
  font-weight: 600 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "ThmanyahSerif";
  src: url("../fonts/Thmanyah/ThmanyahSerif-700.woff2") format("woff2");
  font-weight: 700 900;
  font-style: normal;
  font-display: swap;
}

:root {
  --fi-canvas: #0d1b35;
  --fi-depth: #081226;
  --fi-surface: #12203f;
  --fi-raised: #182a52;
  --fi-ink: #f2ede2;
  --fi-muted: rgba(242, 237, 226, 0.68);
  --fi-soft: rgba(242, 237, 226, 0.42);
  --fi-gold: #d4a855;
  --fi-gold-light: #e8c87a;
  --fi-teal: #2dd4bf;
  --fi-teal-deep: #0d9488;
  --fi-line: rgba(212, 168, 85, 0.14);
  --fi-line-strong: rgba(212, 168, 85, 0.32);
  --fi-shadow: rgba(0, 0, 0, 0.42);
}

* { box-sizing: border-box; }

html { background: var(--fi-depth); }

body.fi-body {
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  color: var(--fi-ink);
  background:
    radial-gradient(ellipse 52rem 34rem at 6% -14%, rgba(45, 212, 191, 0.09), transparent 62%),
    radial-gradient(ellipse 44rem 32rem at 94% 4%, rgba(212, 168, 85, 0.10), transparent 65%),
    linear-gradient(180deg, var(--fi-canvas), var(--fi-depth) 88%);
  font-family: "ThmanyahSans", Tahoma, Arial, sans-serif;
}

.fi-atmosphere,
.fi-atmosphere::before,
.fi-atmosphere::after {
  position: fixed;
  pointer-events: none;
  inset: 0;
}

.fi-atmosphere {
  z-index: 0;
  background-image:
    linear-gradient(rgba(212, 168, 85, 0.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212, 168, 85, 0.028) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.85), rgba(0,0,0,.22) 68%, transparent);
}

.fi-atmosphere::before {
  content: "";
  inset: auto 8% 9% auto;
  width: 15rem;
  height: 15rem;
  border: 1px solid rgba(212, 168, 85, 0.14);
  border-radius: 50%;
  box-shadow: 0 0 0 30px rgba(212, 168, 85, 0.022), 0 0 0 60px rgba(212, 168, 85, 0.014);
}

.fi-atmosphere::after {
  content: "";
  inset: 15.5rem auto auto 5%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--fi-teal);
  box-shadow: 0 0 0 5px rgba(45, 212, 191, 0.09), 0 0 24px rgba(45, 212, 191, 0.34);
}

.fi-page {
  position: relative;
  z-index: 1;
  width: min(1160px, calc(100% - 48px));
  margin: 0 auto;
  padding: 106px 0 82px;
}

.fi-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--fi-gold-light);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.fi-kicker::before {
  width: 22px;
  height: 1px;
  background: var(--fi-gold);
  content: "";
}

.fi-kicker i { color: var(--fi-teal); font-size: 12px; }

.fi-heading {
  max-width: 840px;
  margin: 14px 0 12px;
  color: var(--fi-ink);
  font-family: "ThmanyahSerif", "ThmanyahSans", Tahoma, Arial, sans-serif;
  font-size: clamp(42px, 6.4vw, 74px);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: -.035em;
}

.fi-heading--compact { font-size: clamp(38px, 5vw, 60px); }

.fi-lead {
  max-width: 710px;
  margin: 0;
  color: var(--fi-muted);
  font-size: 17px;
  line-height: 1.92;
}

.fi-rule {
  width: 100%;
  height: 1px;
  margin: 33px 0;
  background: linear-gradient(90deg, var(--fi-line-strong), var(--fi-line), transparent);
}

.fi-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--fi-line);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(24, 42, 82, 0.92), rgba(13, 27, 53, 0.96));
  box-shadow: 0 20px 52px var(--fi-shadow), inset 0 1px 0 rgba(242, 237, 226, 0.05);
}

.fi-panel::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 84px;
  height: 1px;
  background: var(--fi-gold);
  content: "";
  opacity: .72;
}

.fi-panel__body { position: relative; z-index: 1; padding: 28px; }

.fi-panel--teal {
  border-color: rgba(45, 212, 191, .38);
  background:
    radial-gradient(circle at 0 0, rgba(45, 212, 191, .16), transparent 40%),
    linear-gradient(145deg, rgba(16, 42, 58, .97), rgba(13, 27, 53, .98));
}

.fi-panel--quiet { background: rgba(242, 237, 226, .04); box-shadow: none; }

.fi-panel--quiet::after { background: var(--fi-teal); }

.fi-section-title {
  margin: 8px 0 6px;
  color: var(--fi-ink);
  font-family: "ThmanyahSerif", "ThmanyahSans", Tahoma, Arial, sans-serif;
  font-size: clamp(24px, 2.9vw, 32px);
  font-weight: 900;
  line-height: 1.18;
}

.fi-section-copy { margin: 0; color: var(--fi-muted); font-size: 14px; line-height: 1.85; }

.fi-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 26px;
  padding: 4px 9px;
  border: 1px solid var(--fi-line);
  border-radius: 999px;
  background: rgba(242, 237, 226, .045);
  color: var(--fi-muted);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.fi-chip--gold { border-color: rgba(212,168,85,.34); color: var(--fi-gold-light); background: rgba(212,168,85,.09); }
.fi-chip--teal { border-color: rgba(45,212,191,.30); color: #c7f4ec; background: rgba(45,212,191,.09); }

.fi-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  padding: 12px 17px;
  border: 1px solid rgba(13, 148, 136, .55);
  border-radius: 8px;
  background: linear-gradient(135deg, var(--fi-teal), #14b8a6);
  box-shadow: 0 10px 26px rgba(13, 148, 136, .26), inset 0 1px 0 rgba(255,255,255,.22);
  color: #04211e;
  font: 900 14px "ThmanyahSans", Tahoma, Arial, sans-serif;
  text-decoration: none;
  cursor: pointer;
  transition: transform .16s cubic-bezier(.23,1,.32,1), box-shadow .16s cubic-bezier(.23,1,.32,1), filter .16s ease;
}

.fi-button:hover { filter: brightness(1.06); box-shadow: 0 14px 32px rgba(13,148,136,.36), inset 0 1px 0 rgba(255,255,255,.26); transform: translateY(-2px); }
.fi-button:active { transform: scale(.97); }
.fi-button--wide { width: 100%; }
.fi-button--gold { border-color: rgba(212,168,85,.55); background: linear-gradient(135deg, var(--fi-gold-light), var(--fi-gold)); color: #1a1206; }

.fi-text-link { color: var(--fi-gold-light); font-weight: 800; text-decoration: none; }
.fi-text-link:hover { color: var(--fi-teal); }

/* Access: the form is one station in a clear review protocol. */
.fi-access-grid { display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(370px, .97fr); gap: 28px; align-items: start; }
.fi-protocol { display: grid; gap: 0; border-top: 1px solid var(--fi-line); }
.fi-protocol__item { display: grid; grid-template-columns: 37px 1fr; gap: 14px; padding: 20px 0; border-bottom: 1px solid var(--fi-line); }
.fi-protocol__index { color: var(--fi-gold); font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.fi-protocol__item strong { display: block; margin-bottom: 5px; color: var(--fi-ink); font-size: 16px; }
.fi-protocol__item p { margin: 0; color: var(--fi-muted); font-size: 14px; line-height: 1.75; }
.fi-access-notes { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; margin-top: 20px; }
.fi-mini-note { min-height: 100px; padding: 15px; border: 1px solid var(--fi-line); border-radius: 12px; background: rgba(242,237,226,.035); }
.fi-mini-note i { color: var(--fi-gold); }
.fi-mini-note strong { display: block; margin: 10px 0 3px; color: var(--fi-ink); font-size: 13px; }
.fi-mini-note span { color: var(--fi-soft); font-size: 12px; line-height: 1.55; }
.fi-form-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding-bottom: 18px; border-bottom: 1px solid var(--fi-line); }
.fi-form-meta { margin: 4px 0 0; color: var(--fi-soft); font-size: 12px; line-height: 1.6; }
.fi-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; margin-top: 20px; }
.fi-field { margin: 0 0 16px; }
.fi-field--wide { grid-column: 1 / -1; }
.fi-field label { display: flex; align-items: center; gap: 5px; margin: 0 0 8px; color: #ece3d0; font-size: 12px; font-weight: 900; }
.fi-required { color: var(--fi-gold); }
.fi-field input, .fi-field select, .fi-field textarea {
  width: 100%;
  border: 1px solid var(--fi-line);
  border-radius: 8px;
  background: rgba(8, 18, 38, .62);
  color: var(--fi-ink);
  outline: none;
  padding: 12px 13px;
  font: 14px "ThmanyahSans", Tahoma, Arial, sans-serif;
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
.fi-field textarea { min-height: 112px; resize: vertical; }
.fi-field input:focus, .fi-field select:focus, .fi-field textarea:focus { border-color: rgba(45,212,191,.72); background: rgba(8,18,38,.82); box-shadow: 0 0 0 3px rgba(45,212,191,.11); }
.fi-field select option { background: var(--fi-raised); color: var(--fi-ink); }
.fi-error { margin: 6px 0 0; color: #ffad9b; font-size: 12px; }
.fi-form-foot { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 4px; padding-top: 17px; border-top: 1px solid var(--fi-line); }
.fi-form-foot p { margin: 0; color: var(--fi-soft); font-size: 12px; line-height: 1.7; }
.fi-success { max-width: 720px; margin: 5vh auto 0; }
.fi-success .fi-panel__body { padding: clamp(30px, 6vw, 58px); }
.fi-success-number { margin: 24px 0; padding: 12px 14px; border-right: 2px solid var(--fi-gold); background: rgba(212,168,85,.08); color: var(--fi-gold-light); font-size: 13px; }

/* Access form: charcoal material from the original Fasil surfaces, not a blue campaign card. */
.fi-body--access .fi-panel {
  isolation: isolate;
  border-color: rgba(212,168,85,.25);
  background:
    radial-gradient(circle at 12% 8%, rgba(212,168,85,.12) 0 1px, transparent 2px),
    radial-gradient(circle at 88% 74%, rgba(45,212,191,.11) 0 1px, transparent 2px),
    linear-gradient(rgba(200,184,154,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(200,184,154,.045) 1px, transparent 1px),
    linear-gradient(150deg, #1b1c1d, #111315 70%);
  background-size: 118px 118px, 154px 154px, 30px 30px, 30px 30px, auto;
  box-shadow: 0 18px 48px rgba(0,0,0,.38), inset 0 1px 0 rgba(242,237,226,.045);
}
.fi-body--access .fi-panel::before {
  position: absolute;
  z-index: 0;
  inset: 15px 16px auto auto;
  width: 148px;
  height: 92px;
  border-top: 1px solid rgba(212,168,85,.30);
  border-right: 1px solid rgba(212,168,85,.30);
  background:
    linear-gradient(135deg, transparent 49.5%, rgba(212,168,85,.23) 50%, transparent 50.5%) 0 0 / 36px 36px,
    linear-gradient(90deg, transparent 48%, rgba(45,212,191,.16) 49%, rgba(45,212,191,.16) 51%, transparent 52%) 0 100% / 54px 1px no-repeat;
  content: "";
  opacity: .9;
  pointer-events: none;
}
.fi-body--access .fi-panel::after { z-index: 2; width: 108px; background: var(--fi-gold-light); }
.fi-body--access .fi-panel__body > * { position: relative; z-index: 1; }
.fi-body--access .fi-field input,
.fi-body--access .fi-field select,
.fi-body--access .fi-field textarea {
  border-color: rgba(232,200,122,.18);
  background: #0e1011;
}
.fi-body--access .fi-field input:focus,
.fi-body--access .fi-field select:focus,
.fi-body--access .fi-field textarea:focus {
  border-color: rgba(232,200,122,.72);
  background: #0a0c0d;
  box-shadow: 0 0 0 3px rgba(212,168,85,.12);
}
.fi-body--access .fi-chip--gold { background: rgba(212,168,85,.08); }

/* Onboarding: a deliberation launch sequence. */
.fi-onboard-grid { display: grid; grid-template-columns: minmax(0, 1.16fr) minmax(275px, .84fr); gap: 25px; align-items: start; }
.fi-onboard-grid--single { grid-template-columns: minmax(0, 900px); }
.fi-setting-group { border: 0; border-top: 1px solid rgba(204, 183, 128, .28); margin: 22px 0 0; padding: 20px 0 0; min-inline-size: 0; }
.fi-setting-group legend { color: #e3bd64; font: 700 .92rem/1.2 ThmanyahSans, sans-serif; padding-inline: 0; }
.fi-setting-hint { color: rgba(239, 234, 218, .62); font: .88rem/1.7 ThmanyahSans, sans-serif; margin: 7px 0 13px; }
.fi-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
.fi-choice { align-items: flex-start; background: linear-gradient(135deg, rgba(29, 33, 32, .96), rgba(14, 17, 18, .92)); border: 1px solid rgba(221, 187, 96, .26); cursor: pointer; display: flex; gap: 10px; min-height: 112px; padding: 15px; position: relative; }
.fi-choice:has(input:checked) { border-color: rgba(38, 208, 193, .78); box-shadow: inset 0 0 0 1px rgba(38, 208, 193, .15), 0 0 24px rgba(38, 208, 193, .08); }
.fi-choice input { accent-color: #28cfc0; margin-top: 4px; }
.fi-choice strong, .fi-choice small { display: block; }
.fi-choice strong { color: #f0eadb; font: 700 1rem/1.35 ThmanyahSans, sans-serif; }
.fi-choice small { color: rgba(239, 234, 218, .62); font: .8rem/1.55 ThmanyahSans, sans-serif; margin-top: 5px; }
.fi-choice-grid--compact .fi-choice { min-height: 82px; }
.fi-role-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.fi-role-field span { color: #e3bd64; display: block; font: 700 .78rem/1.3 ThmanyahSans, sans-serif; margin-bottom: 6px; }
.fi-role-field input { background: rgba(11, 15, 15, .84); border: 1px solid rgba(223, 211, 180, .19); color: #f0eadb; font: .95rem/1.4 ThmanyahSans, sans-serif; min-height: 45px; padding: 9px 11px; width: 100%; }
.fi-reference-area { min-height: 130px; }
.fi-checkline { align-items: center; color: rgba(239, 234, 218, .76); cursor: pointer; display: flex; font: .88rem/1.55 ThmanyahSans, sans-serif; gap: 9px; margin-top: 11px; }
.fi-checkline input { accent-color: #28cfc0; }
@media (max-width: 650px) { .fi-choice-grid, .fi-role-grid { grid-template-columns: 1fr; } .fi-choice { min-height: 0; padding: 13px; } .fi-setting-group { margin-top: 18px; padding-top: 16px; } }
.fi-stage-rail { display: grid; gap: 1px; overflow: hidden; margin-bottom: 24px; border: 1px solid var(--fi-line); border-radius: 14px; background: var(--fi-line); }
.fi-stage { position: relative; min-height: 101px; padding: 15px 17px 15px 60px; background: rgba(18, 32, 63, .94); color: var(--fi-soft); }
[dir="rtl"] .fi-stage { padding: 15px 60px 15px 17px; }
.fi-stage__no { position: absolute; top: 17px; left: 17px; color: var(--fi-gold); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
[dir="rtl"] .fi-stage__no { right: 17px; left: auto; }
.fi-stage strong { display: block; margin-bottom: 5px; color: var(--fi-ink); font-size: 15px; }
.fi-stage span { display: block; font-size: 12px; line-height: 1.55; }
.fi-stage.is-current { background: linear-gradient(135deg, rgba(45,212,191,.18), rgba(16,42,58,.98)); box-shadow: inset 3px 0 0 var(--fi-teal); color: #d8f7f1; }
[dir="rtl"] .fi-stage.is-current { box-shadow: inset -3px 0 0 var(--fi-teal); }
.fi-stage.is-ready { background: rgba(212,168,85,.075); }
.fi-question-copy { margin: 17px 0 21px; padding: 15px 17px; border-right: 2px solid var(--fi-gold); background: rgba(212,168,85,.07); color: #f2eadb; font-family: "ThmanyahSans", Tahoma, Arial, sans-serif; font-size: 19px; line-height: 1.6; font-weight: 700; }
.fi-onboard-label { display: block; margin-bottom: 8px; color: #ece3d0; font-size: 12px; font-weight: 900; }
.fi-question-area, .fi-goal-input { width: 100%; border: 1px solid var(--fi-line); border-radius: 8px; outline: 0; background: rgba(8,18,38,.62); color: var(--fi-ink); font: 15px/1.7 "ThmanyahSans", Tahoma, Arial, sans-serif; transition: border-color .16s ease, box-shadow .16s ease; }
.fi-question-area { min-height: 142px; padding: 15px; resize: vertical; }
.fi-goal-input { padding: 13px; }
.fi-question-area:focus, .fi-goal-input:focus { border-color: rgba(45,212,191,.7); box-shadow: 0 0 0 3px rgba(45,212,191,.10); }
.fi-example-list { display: grid; gap: 8px; margin: 17px 0 2px; }
.fi-example { display: flex; align-items: flex-start; gap: 9px; width: 100%; padding: 11px 13px; border: 1px solid var(--fi-line); border-radius: 8px; background: rgba(242,237,226,.035); color: var(--fi-muted); text-align: right; font: 13px/1.6 "ThmanyahSans", Tahoma, Arial, sans-serif; cursor: pointer; transition: background .16s ease, border-color .16s ease, color .16s ease; }
.fi-example:hover { border-color: rgba(212,168,85,.45); background: rgba(212,168,85,.075); color: var(--fi-ink); }
.fi-example i { margin-top: 3px; color: var(--fi-gold); }
.fi-goal-row { display: grid; grid-template-columns: 30px 1fr; gap: 10px; align-items: center; margin: 0 0 12px; }
.fi-goal-row span { color: var(--fi-gold); font-size: 12px; font-weight: 900; }
.fi-launch-note { margin: 18px 0 0; padding-top: 16px; border-top: 1px solid var(--fi-line); color: var(--fi-soft); font-size: 12px; line-height: 1.7; }
.fi-onboard-aside { display: grid; gap: 13px; }
.fi-aside-list { display: grid; gap: 0; margin-top: 13px; border-top: 1px solid var(--fi-line); }
.fi-aside-list div { display: flex; align-items: flex-start; gap: 10px; padding: 13px 0; border-bottom: 1px solid var(--fi-line); color: var(--fi-muted); font-size: 13px; line-height: 1.65; }
.fi-aside-list i { margin-top: 4px; color: var(--fi-teal); }

/* Workspace: operational record, deliberately quiet and evidence-led. */
.fi-work-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: end; }
.fi-work-subtitle { margin: 0; color: var(--fi-muted); font-size: 14px; }
.fi-work-nav { display: flex; flex-wrap: wrap; gap: 7px; justify-content: flex-end; padding: 7px; border: 1px solid var(--fi-line); border-radius: 12px; background: rgba(8,18,38,.56); }
.fi-work-nav a { padding: 8px 11px; border: 1px solid transparent; border-radius: 7px; color: var(--fi-soft); font-size: 12px; font-weight: 800; text-decoration: none; transition: all .16s ease; }
.fi-work-nav a:hover, .fi-work-nav a.is-active { border-color: rgba(45,212,191,.32); background: rgba(45,212,191,.10); color: #d8f7f1; }
.fi-work-grid { display: grid; grid-template-columns: minmax(0, 1.42fr) minmax(300px, .58fr); gap: 22px; align-items: start; }
.fi-live-state { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 19px; }
.fi-pulse { display: inline-flex; align-items: center; gap: 7px; color: #c8f5ed; font-size: 11px; font-weight: 900; }
.fi-pulse::before { width: 7px; height: 7px; border-radius: 50%; background: var(--fi-teal); box-shadow: 0 0 0 4px rgba(45,212,191,.1); content: ""; }
.fi-live-title { margin: 8px 0 12px; color: var(--fi-ink); font-family: "ThmanyahSerif", "ThmanyahSans", Tahoma, Arial, sans-serif; font-size: clamp(26px, 3.3vw, 40px); font-weight: 900; line-height: 1.22; }
.fi-live-copy { margin: 0; color: var(--fi-muted); font-size: 14px; line-height: 1.85; }
.fi-live-meta { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 20px; }
.fi-empty-orbit { display: grid; grid-template-columns: 60px 1fr; gap: 15px; align-items: center; }
.fi-orbit-mark { display: grid; width: 60px; height: 60px; place-items: center; border: 1px solid rgba(212,168,85,.38); border-radius: 50%; color: var(--fi-gold); box-shadow: 0 0 0 10px rgba(212,168,85,.035); }
.fi-records { margin-top: 22px; }
.fi-record-list { margin-top: 14px; border-top: 1px solid var(--fi-line); }
.fi-record { display: grid; grid-template-columns: 21px 1fr auto; gap: 12px; align-items: center; padding: 15px 0; border-bottom: 1px solid var(--fi-line); }
.fi-record__index { color: var(--fi-gold); font-size: 11px; font-weight: 900; }
.fi-record__title { color: var(--fi-ink); font-size: 14px; font-weight: 800; line-height: 1.55; text-decoration: none; }
.fi-record__title:hover { color: var(--fi-teal); }
.fi-record__state { color: var(--fi-soft); font-size: 11px; white-space: nowrap; }
.fi-member { display: flex; align-items: center; gap: 11px; padding: 13px 0; border-top: 1px solid var(--fi-line); }
.fi-member__mark { display: grid; width: 31px; height: 31px; place-items: center; border: 1px solid rgba(212,168,85,.28); border-radius: 50%; color: var(--fi-gold); font-size: 12px; }
.fi-member strong { display: block; color: var(--fi-ink); font-size: 13px; }
.fi-member span { color: var(--fi-soft); font-size: 11px; }
.fi-side-note { margin: 16px 0 0; color: var(--fi-soft); font-size: 12px; line-height: 1.7; }

/* Cases: preserve actual outcomes, reframe them as decision records. */
.fi-cases-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(275px, .6fr); gap: 42px; align-items: end; }
.fi-method { padding: 19px; border: 1px solid var(--fi-line-strong); border-radius: 2px 14px 14px 14px; background: rgba(212,168,85,.055); }
.fi-method strong { display: block; margin-bottom: 7px; color: var(--fi-gold-light); font-size: 12px; }
.fi-method p { margin: 0; color: var(--fi-muted); font-size: 13px; line-height: 1.78; }
.fi-section-bar { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 0 0 17px; }
.fi-count { color: var(--fi-gold-light); font-size: 12px; font-weight: 900; }
.fi-case-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.fi-case-card { position: relative; display: flex; min-height: 100%; flex-direction: column; overflow: hidden; border: 1px solid var(--fi-line); border-radius: 14px; background: linear-gradient(150deg, rgba(24,42,82,.98), rgba(13,27,53,.99)); color: inherit; text-decoration: none; box-shadow: 0 16px 36px rgba(0,0,0,.22); transition: transform .18s cubic-bezier(.23,1,.32,1), border-color .18s ease, box-shadow .18s ease; }
.fi-case-card:hover { border-color: rgba(212,168,85,.46); box-shadow: 0 24px 48px rgba(0,0,0,.34); transform: translateY(-4px); }
.fi-case-card__top { position: relative; min-height: 91px; padding: 15px 16px; overflow: hidden; background: linear-gradient(126deg, rgba(45,212,191,.22), rgba(212,168,85,.09) 58%, rgba(242,237,226,.025)); }
.fi-case-card__top::before { position: absolute; top: -47px; left: 18px; width: 115px; height: 115px; border: 1px solid rgba(242,237,226,.15); border-radius: 50%; content: ""; }
.fi-case-card__top::after { position: absolute; right: 18px; bottom: 18px; width: 48px; height: 1px; background: var(--fi-gold); content: ""; }
.fi-case-card--active .fi-case-card__top { background: linear-gradient(126deg, rgba(45,212,191,.34), rgba(16,42,58,.83)); }
.fi-case-status { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 6px; color: #d8f7f1; font-size: 11px; font-weight: 900; }
.fi-case-status i { color: var(--fi-teal); font-size: 8px; }
.fi-case-card__body { display: flex; flex: 1; flex-direction: column; padding: 17px 17px 0; }
.fi-case-title { margin: 0 0 11px; color: var(--fi-ink); font-family: "ThmanyahSerif", "ThmanyahSans", Tahoma, Arial, sans-serif; font-size: 20px; font-weight: 900; line-height: 1.35; }
.fi-case-desc { margin: 0; color: var(--fi-muted); font-size: 13px; line-height: 1.76; }
.fi-case-outcome { display: grid; gap: 7px; margin: 17px -17px 0; padding: 13px 17px; border-top: 1px solid var(--fi-line); background: rgba(242,237,226,.032); }
.fi-case-winner { color: var(--fi-gold-light); font-size: 12px; font-weight: 900; }
.fi-case-score { color: var(--fi-soft); font-size: 12px; }
.fi-case-deduction { margin: 0 -17px; padding: 14px 17px 17px; color: var(--fi-muted); font-size: 12px; line-height: 1.67; }
.fi-case-deduction span { display: block; margin-bottom: 6px; color: var(--fi-soft); font-size: 10px; font-weight: 900; letter-spacing: .055em; }
.fi-case-deduction strong { color: var(--fi-gold-light); }
.fi-case-empty { padding: 22px; border: 1px dashed var(--fi-line-strong); border-radius: 12px; color: var(--fi-muted); }
.fi-footer { display: flex; justify-content: space-between; gap: 18px; margin-top: 52px; padding-top: 20px; border-top: 1px solid var(--fi-line); color: var(--fi-soft); font-size: 12px; }
.fi-footer a { color: var(--fi-gold-light); font-weight: 800; text-decoration: none; }

/* Commercial pages: a licence and a continuity covenant, not a generic price grid. */
.fi-commercial-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .46fr); gap: 34px; align-items: end; }
.fi-commercial-aside { margin: 0 0 4px; padding: 18px 19px; border: 1px solid var(--fi-line-strong); border-radius: 3px 14px 14px 14px; background: rgba(212,168,85,.06); }
.fi-commercial-aside strong { display: block; margin-bottom: 7px; color: var(--fi-gold-light); font-size: 12px; }
.fi-commercial-aside p { margin: 0; color: var(--fi-muted); font-size: 13px; line-height: 1.72; }
.fi-commercial-grid { display: grid; grid-template-columns: minmax(290px, .82fr) minmax(0, 1.18fr); gap: 22px; align-items: stretch; }
.fi-price-card { position: relative; display: flex; min-height: 100%; flex-direction: column; overflow: hidden; padding: 29px; border: 1px solid rgba(212,168,85,.43); border-radius: 14px; background: radial-gradient(circle at 9% 7%, rgba(212,168,85,.17), transparent 33%), linear-gradient(145deg, #1a2a52, #0d1b35 72%); box-shadow: 0 20px 50px rgba(0,0,0,.32); }
.fi-price-card::before { position: absolute; top: -74px; left: -40px; width: 205px; height: 205px; border: 1px solid rgba(212,168,85,.16); border-radius: 50%; box-shadow: 0 0 0 28px rgba(212,168,85,.026); content: ""; }
.fi-price-card > * { position: relative; z-index: 1; }
.fi-price-caption { margin: 4px 0 5px; color: var(--fi-gold-light); font-size: 13px; font-weight: 900; }
.fi-price-amount { display: flex; align-items: baseline; gap: 9px; margin: 8px 0 12px; color: var(--fi-ink); font-family: "ThmanyahSans", Tahoma, Arial, sans-serif; font-size: clamp(42px, 5.2vw, 58px); font-weight: 900; letter-spacing: -.04em; line-height: 1; }
.fi-price-amount small { color: var(--fi-gold-light); font-family: "ThmanyahSans", Tahoma, sans-serif; font-size: 14px; letter-spacing: 0; }
.fi-price-note { margin: 0; color: var(--fi-muted); font-size: 13px; line-height: 1.82; }
.fi-price-divider { height: 1px; margin: 24px 0 17px; background: linear-gradient(90deg, var(--fi-line-strong), transparent); }
.fi-price-includes { display: grid; gap: 9px; margin-top: 3px; }
.fi-price-includes div { display: flex; align-items: flex-start; gap: 9px; color: var(--fi-muted); font-size: 13px; line-height: 1.62; }
.fi-price-includes i { margin-top: 4px; color: var(--fi-teal); font-size: 11px; }
.fi-scope-panel { padding: 0; }
.fi-scope-row { display: grid; grid-template-columns: 42px 1fr; gap: 14px; padding: 20px 24px; border-bottom: 1px solid var(--fi-line); }
.fi-scope-row:last-child { border-bottom: 0; }
.fi-scope-row__mark { color: var(--fi-gold); font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.fi-scope-row strong { display: block; margin-bottom: 4px; color: var(--fi-ink); font-size: 15px; }
.fi-scope-row p { margin: 0; color: var(--fi-muted); font-size: 13px; line-height: 1.7; }
.fi-licence-callout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 22px; align-items: center; margin-top: 22px; padding: 22px 24px; border: 1px dashed rgba(45,212,191,.43); border-radius: 12px; background: linear-gradient(100deg, rgba(45,212,191,.105), rgba(45,212,191,.025)); }
.fi-licence-callout h2 { margin: 4px 0 5px; color: var(--fi-ink); font-family: "ThmanyahSans", Tahoma, Arial, sans-serif; font-size: 25px; font-weight: 900; }
.fi-licence-callout p { margin: 0; color: var(--fi-muted); font-size: 13px; line-height: 1.72; }

/* Ownership page: three assertions laid out as a continuity record. */
.fi-continuity-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.fi-continuity-item { position: relative; min-height: 278px; padding: 21px 20px; overflow: hidden; border: 1px solid var(--fi-line); border-radius: 14px; background: linear-gradient(150deg, rgba(24,42,82,.96), rgba(13,27,53,.98)); }
.fi-continuity-item::before { position: absolute; top: 0; right: 0; width: 64px; height: 1px; background: var(--fi-gold); content: ""; }
.fi-continuity-no { display: block; margin-bottom: 34px; color: var(--fi-gold); font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.fi-continuity-icon { display: grid; width: 40px; height: 40px; margin-bottom: 16px; place-items: center; border: 1px solid rgba(45,212,191,.29); border-radius: 50%; color: var(--fi-teal); }
.fi-continuity-item h2 { margin: 0 0 9px; color: var(--fi-ink); font-family: "ThmanyahSans", Tahoma, Arial, sans-serif; font-size: 26px; font-weight: 900; line-height: 1.12; }
.fi-continuity-item p { margin: 0; color: var(--fi-muted); font-size: 13px; line-height: 1.78; }
.fi-continuity-quote { margin-top: 23px; padding: 25px 26px; border-right: 3px solid var(--fi-gold); border-radius: 12px 0 0 12px; background: rgba(212,168,85,.07); color: #f0e8d9; font-family: "ThmanyahSans", Tahoma, Arial, sans-serif; font-size: clamp(21px, 3.1vw, 31px); font-weight: 900; line-height: 1.5; }
.fi-continuity-quote span { display: block; margin-top: 9px; color: var(--fi-gold-light); font-family: "ThmanyahSans", Tahoma, sans-serif; font-size: 12px; font-weight: 900; }
.fi-data-boundary { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-top: 22px; overflow: hidden; border: 1px solid var(--fi-line); border-radius: 14px; background: var(--fi-line); }
.fi-data-boundary > div { padding: 21px 22px; background: rgba(18,32,63,.98); }
.fi-data-boundary > div:last-child { background: linear-gradient(145deg, rgba(16,42,58,.98), rgba(13,27,53,.99)); }
.fi-data-boundary strong { display: block; margin-bottom: 6px; color: var(--fi-ink); font-size: 14px; }
.fi-data-boundary p { margin: 0; color: var(--fi-muted); font-size: 13px; line-height: 1.72; }

/* Licensing and ownership: decisive institutional documents, not product cards. */
.fi-decision-header { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr); gap:30px; align-items:end; }
.fi-decision-code { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 14px; border-top:1px solid var(--fi-line-strong); border-bottom:1px solid var(--fi-line); color:var(--fi-soft); font-size:11px; font-weight:800; }
.fi-decision-code bdi { color:var(--fi-gold-light); letter-spacing:.12em; }
.fi-decision-side { position:relative; min-height:196px; padding:22px; overflow:hidden; border:1px solid var(--fi-line-strong); border-radius:2px 14px 14px 14px; background:linear-gradient(145deg,rgba(24,42,82,.88),rgba(13,27,53,.94)); }
.fi-decision-side::after { position:absolute; inset:auto -30px -55px auto; width:170px; height:170px; border:1px solid rgba(212,168,85,.22); border-radius:50%; box-shadow:0 0 0 24px rgba(212,168,85,.025); content:""; }
.fi-decision-side > * { position:relative; z-index:1; }
.fi-decision-side strong { display:block; max-width:210px; color:var(--fi-gold-light); font-size:16px; font-weight:900; line-height:1.4; }
.fi-decision-side p { max-width:250px; margin:10px 0 0; color:var(--fi-muted); font-size:13px; line-height:1.75; }
.fi-licence-slab { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); overflow:hidden; border:1px solid var(--fi-line-strong); border-radius:14px; background:rgba(8,18,38,.52); box-shadow:0 24px 60px var(--fi-shadow); }
.fi-price-field { position:relative; min-height:430px; padding:31px; overflow:hidden; background:radial-gradient(circle at 12% 10%,rgba(212,168,85,.23),transparent 32%),linear-gradient(155deg,#1b2e59,#0d1b35 72%); }
.fi-price-field::before { position:absolute; right:-66px; bottom:-70px; width:258px; height:258px; border:1px solid rgba(212,168,85,.18); border-radius:50%; box-shadow:0 0 0 28px rgba(212,168,85,.026),0 0 0 56px rgba(212,168,85,.014); content:""; }
.fi-price-field > * { position:relative; z-index:1; }
.fi-price-marker { display:flex; align-items:center; gap:8px; color:var(--fi-gold-light); font-size:11px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.fi-price-marker::before { width:7px; height:7px; border-radius:50%; background:var(--fi-teal); box-shadow:0 0 0 5px rgba(45,212,191,.10); content:""; }
.fi-price-main { margin:49px 0 13px; color:var(--fi-ink); font-size:clamp(50px,7vw,82px); font-weight:900; letter-spacing:-.065em; line-height:.94; }
.fi-price-main small { display:block; margin-top:11px; color:var(--fi-gold-light); font-size:14px; font-weight:900; letter-spacing:0; }
.fi-price-field p { max-width:380px; margin:0; color:var(--fi-muted); font-size:14px; line-height:1.85; }
.fi-price-engraving { position:absolute; left:31px; bottom:27px; display:flex; align-items:center; gap:10px; color:var(--fi-soft); font-size:11px; font-weight:800; }
.fi-price-engraving i { color:var(--fi-teal); }
.fi-scope-field { padding:0; background:linear-gradient(155deg,rgba(18,32,63,.98),rgba(8,18,38,.98)); }
.fi-scope-field-header { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:25px 27px 19px; border-bottom:1px solid var(--fi-line); }
.fi-scope-field-header h2 { margin:0; color:var(--fi-ink); font-family:"ThmanyahSerif", "ThmanyahSans", Tahoma, Arial, sans-serif; font-size:24px; font-weight:900; }
.fi-scope-field-header span { color:var(--fi-teal); font-size:11px; font-weight:900; }
.fi-scope-line { display:grid; grid-template-columns:46px 1fr; gap:15px; padding:21px 27px; border-bottom:1px solid var(--fi-line); }
.fi-scope-line:last-child { border-bottom:0; }
.fi-scope-line__no { color:var(--fi-gold); font-size:12px; font-weight:900; letter-spacing:.08em; }
.fi-scope-line strong { display:block; margin-bottom:4px; color:var(--fi-ink); font-size:15px; font-weight:900; }
.fi-scope-line p { margin:0; color:var(--fi-muted); font-size:13px; line-height:1.72; }
.fi-decision-cta { display:grid; grid-template-columns:1fr auto; gap:22px; align-items:center; margin-top:22px; padding:21px 24px; border:1px solid rgba(45,212,191,.42); border-radius:10px; background:linear-gradient(105deg,rgba(45,212,191,.13),rgba(13,27,53,.30)); }
.fi-decision-cta strong { display:block; margin-bottom:4px; color:var(--fi-ink); font-size:18px; font-weight:900; }
.fi-decision-cta p { margin:0; color:var(--fi-muted); font-size:13px; line-height:1.7; }
.fi-custody-rail { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; overflow:hidden; border:1px solid var(--fi-line); border-radius:14px; background:var(--fi-line); }
.fi-custody-rail::before { position:absolute; z-index:2; top:0; right:0; left:0; height:2px; background:linear-gradient(90deg,var(--fi-teal),var(--fi-gold),var(--fi-teal)); content:""; }
.fi-custody-card { min-height:300px; padding:25px 22px; background:linear-gradient(150deg,rgba(24,42,82,.98),rgba(13,27,53,.99)); }
.fi-custody-card:nth-child(2) { background:linear-gradient(150deg,rgba(16,42,58,.99),rgba(13,27,53,.99)); }
.fi-custody-index { display:flex; align-items:center; justify-content:space-between; color:var(--fi-gold); font-size:12px; font-weight:900; letter-spacing:.08em; }
.fi-custody-index i { color:var(--fi-teal); font-size:18px; }
.fi-custody-card h2 { margin:42px 0 10px; color:var(--fi-ink); font-family:"ThmanyahSerif", "ThmanyahSans", Tahoma, Arial, sans-serif; font-size:25px; font-weight:900; line-height:1.18; }
.fi-custody-card p { margin:0; color:var(--fi-muted); font-size:13px; line-height:1.8; }
.fi-custody-vow { position:relative; margin-top:22px; padding:25px 30px 25px 34px; border-right:3px solid var(--fi-gold); border-radius:0 10px 10px 0; background:linear-gradient(90deg,rgba(212,168,85,.12),rgba(212,168,85,.035)); color:var(--fi-ink); font-size:clamp(22px,3vw,32px); font-weight:900; line-height:1.48; }
.fi-custody-vow span { display:block; margin-top:11px; color:var(--fi-gold-light); font-size:12px; font-weight:900; }
.fi-boundary-register { display:grid; grid-template-columns:1fr 1fr; gap:13px; margin-top:22px; }
.fi-boundary-register article { padding:21px; border:1px solid var(--fi-line); border-radius:10px; background:rgba(18,32,63,.58); }
.fi-boundary-register article:last-child { border-color:rgba(45,212,191,.30); background:rgba(45,212,191,.06); }
.fi-boundary-register i { color:var(--fi-gold); }
.fi-boundary-register strong { display:block; margin:13px 0 5px; color:var(--fi-ink); font-size:15px; font-weight:900; }
.fi-boundary-register p { margin:0; color:var(--fi-muted); font-size:13px; line-height:1.75; }

/* Charcoal material system: every institutional surface shares Fasil's quiet decision field,
   while each surface has its own restrained engraving rather than recycled blue cards. */
:root {
  --fi-canvas: #171716;
  --fi-depth: #0d0d0d;
  --fi-surface: #1a1a1a;
  --fi-raised: #242423;
  --fi-line: rgba(200,184,154,.14);
  --fi-line-strong: rgba(212,168,85,.30);
  --fi-shadow: rgba(0,0,0,.54);
}

@font-face {
  font-family: "ThmanyahSerif";
  src: url("../fonts/thmanyahserif-700-normal.woff2") format("woff2");
  font-weight: 700 900;
  font-style: normal;
  font-display: swap;
}

body.fi-body {
  background:
    radial-gradient(ellipse 48rem 28rem at 100% 0, rgba(212,168,85,.055), transparent 64%),
    radial-gradient(ellipse 42rem 30rem at 0 12%, rgba(45,212,191,.035), transparent 68%),
    linear-gradient(180deg, #171716, #0d0d0d 86%);
}

.fi-panel:not(.fi-panel--teal) {
  background:
    linear-gradient(135deg, transparent 49.4%, rgba(200,184,154,.03) 50%, transparent 50.6%) 0 0 / 46px 46px,
    linear-gradient(145deg, #20201f, #151515 72%);
  box-shadow: 0 20px 52px var(--fi-shadow), inset 0 1px 0 rgba(242,237,226,.045);
}

.fi-panel--teal {
  border-color: rgba(45,212,191,.28);
  background:
    repeating-linear-gradient(90deg, transparent 0 27px, rgba(45,212,191,.035) 28px 29px),
    linear-gradient(145deg, #1b1b1a, #131313 72%);
}

.fi-stage {
  background:
    repeating-linear-gradient(135deg, transparent 0 19px, rgba(200,184,154,.025) 20px 21px),
    #1a1a19;
}
.fi-stage.is-current {
  background:
    linear-gradient(90deg, rgba(45,212,191,.12), transparent 42%),
    repeating-linear-gradient(135deg, transparent 0 19px, rgba(45,212,191,.035) 20px 21px),
    #1a1a19;
}
.fi-question-area, .fi-goal-input { background:#101010; }
.fi-question-area:focus, .fi-goal-input:focus { background:#0c0c0c; }
.fi-work-nav { background:#131313; }

.fi-case-card {
  background:
    linear-gradient(135deg, transparent 49.4%, rgba(212,168,85,.028) 50%, transparent 50.6%) 0 0 / 40px 40px,
    linear-gradient(150deg, #20201f, #151515 74%);
}
.fi-case-card__top {
  background:
    linear-gradient(90deg, rgba(212,168,85,.10), transparent 52%),
    repeating-linear-gradient(90deg, transparent 0 21px, rgba(45,212,191,.06) 22px 23px),
    #20201f;
}
.fi-case-card--active .fi-case-card__top {
  background:
    linear-gradient(90deg, rgba(45,212,191,.16), transparent 54%),
    repeating-linear-gradient(90deg, transparent 0 21px, rgba(45,212,191,.07) 22px 23px),
    #20201f;
}

.fi-price-card {
  background:
    radial-gradient(circle at 9% 7%, rgba(212,168,85,.14), transparent 31%),
    repeating-linear-gradient(135deg, transparent 0 25px, rgba(212,168,85,.025) 26px 27px),
    linear-gradient(145deg, #222120, #151515 74%);
}
.fi-licence-callout,
.fi-decision-cta {
  border-color: rgba(45,212,191,.30);
  background:
    repeating-linear-gradient(90deg, transparent 0 34px, rgba(45,212,191,.035) 35px 36px),
    linear-gradient(105deg, rgba(45,212,191,.075), rgba(212,168,85,.025) 50%, rgba(255,255,255,.015));
}

.fi-continuity-item {
  background:
    radial-gradient(circle at 14% 15%, rgba(212,168,85,.11) 0 1px, transparent 2px),
    linear-gradient(150deg, #20201f, #151515 75%);
  background-size: 76px 76px, auto;
}
.fi-continuity-item:nth-child(2) {
  background:
    repeating-linear-gradient(135deg, transparent 0 22px, rgba(45,212,191,.032) 23px 24px),
    linear-gradient(150deg, #1d1d1c, #141414 75%);
}
.fi-continuity-item:nth-child(3) {
  background:
    linear-gradient(rgba(212,168,85,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212,168,85,.04) 1px, transparent 1px),
    linear-gradient(150deg, #20201f, #151515 75%);
  background-size: 32px 32px, 32px 32px, auto;
}
.fi-data-boundary > div {
  background:
    repeating-linear-gradient(90deg, transparent 0 26px, rgba(200,184,154,.025) 27px 28px),
    #191918;
}
.fi-data-boundary > div:last-child {
  background:
    repeating-linear-gradient(135deg, transparent 0 24px, rgba(45,212,191,.034) 25px 26px),
    #171716;
}

.fi-decision-side {
  background:
    linear-gradient(135deg, transparent 49.5%, rgba(212,168,85,.045) 50%, transparent 50.5%) 0 0 / 38px 38px,
    linear-gradient(145deg, #201f1e, #151515 76%);
}
.fi-licence-slab { background:#111110; }
.fi-price-field {
  background:
    radial-gradient(circle at 12% 10%, rgba(212,168,85,.21), transparent 31%),
    linear-gradient(135deg, transparent 49.4%, rgba(212,168,85,.035) 50%, transparent 50.6%) 0 0 / 42px 42px,
    linear-gradient(155deg, #22211f, #151515 74%);
}
.fi-scope-field {
  background:
    linear-gradient(rgba(200,184,154,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(200,184,154,.035) 1px, transparent 1px),
    linear-gradient(155deg, #1d1d1c, #141414 78%);
  background-size: 31px 31px, 31px 31px, auto;
}
.fi-custody-card {
  background:
    radial-gradient(circle at 82% 12%, rgba(212,168,85,.11) 0 1px, transparent 2px),
    linear-gradient(150deg, #20201f, #151515 76%);
  background-size: 84px 84px, auto;
}
.fi-custody-card:nth-child(2) {
  background:
    repeating-linear-gradient(135deg, transparent 0 21px, rgba(45,212,191,.03) 22px 23px),
    linear-gradient(150deg, #1d1d1c, #141414 76%);
}
.fi-boundary-register article {
  background:
    linear-gradient(135deg, transparent 49%, rgba(200,184,154,.028) 50%, transparent 51%),
    #1a1a19;
  background-size: 36px 36px, auto;
}
.fi-boundary-register article:last-child {
  border-color: rgba(45,212,191,.30);
  background:
    repeating-linear-gradient(90deg, transparent 0 24px, rgba(45,212,191,.038) 25px 26px),
    #181817;
}

/* Published cases: each card reads as a decision file with a real session cover and an honest evaluation surface. */
.fi-case-file-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.fi-case-file { display:flex; min-height:100%; flex-direction:column; overflow:hidden; border:1px solid var(--fi-line); border-radius:3px 14px 14px 14px; background:#181817; box-shadow:0 18px 42px rgba(0,0,0,.32); color:inherit; text-decoration:none; transition:transform .18s cubic-bezier(.23,1,.32,1),border-color .18s ease,box-shadow .18s ease; }
.fi-case-file:hover { border-color:rgba(212,168,85,.54); box-shadow:0 25px 56px rgba(0,0,0,.44); transform:translateY(-4px); }
.fi-case-file__visual { position:relative; min-height:216px; overflow:hidden; border-bottom:1px solid var(--fi-line); background:linear-gradient(135deg,transparent 49.5%,rgba(212,168,85,.09) 50%,transparent 50.5%) 0 0 / 42px 42px,linear-gradient(145deg,#292722,#171716); }
.fi-case-file__visual--signal::before { position:absolute; inset:0; background:radial-gradient(circle at 18% 22%,rgba(212,168,85,.22) 0 1px,transparent 2px),radial-gradient(circle at 78% 70%,rgba(45,212,191,.16) 0 1px,transparent 2px); background-size:94px 94px,137px 137px; content:""; }
.fi-case-file__visual--signal::after { position:absolute; right:12%; bottom:-70px; width:190px; height:190px; border:1px solid rgba(212,168,85,.24); border-radius:50%; box-shadow:0 0 0 26px rgba(212,168,85,.025),0 0 0 52px rgba(212,168,85,.018); content:""; }
.fi-case-file__visual img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; filter:saturate(.74) contrast(1.08) brightness(.72); transition:transform .4s cubic-bezier(.23,1,.32,1),filter .4s ease; }
.fi-case-file:hover .fi-case-file__visual img { filter:saturate(.87) contrast(1.05) brightness(.81); transform:scale(1.035); }
.fi-case-file__veil { position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(9,9,9,.08),rgba(9,9,9,.86) 98%); }
.fi-case-file__status,.fi-case-file__id { position:absolute; z-index:2; display:inline-flex; align-items:center; gap:6px; color:#f5ead5; font-size:11px; font-weight:900; letter-spacing:.055em; }
.fi-case-file__status { top:16px; right:17px; }.fi-case-file__status i { color:var(--fi-teal); font-size:8px; }.fi-case-file__id { bottom:15px; left:17px; color:var(--fi-gold-light); }
[dir="rtl"] .fi-case-file__status { right:auto; left:17px; }[dir="rtl"] .fi-case-file__id { right:17px; left:auto; }
.fi-case-file__body { display:flex; flex:1; flex-direction:column; padding:22px 22px 0; background:linear-gradient(135deg,transparent 49.5%,rgba(200,184,154,.024) 50%,transparent 50.5%) 0 0 / 44px 44px,#181817; }
.fi-case-file__code { color:var(--fi-gold-light); font-size:10px; font-weight:900; letter-spacing:.1em; }
.fi-case-file__body h3 { margin:11px 0 9px; color:var(--fi-ink); font-family:"ThmanyahSerif","ThmanyahSans",Tahoma,Arial,sans-serif; font-size:clamp(24px,2.7vw,32px); font-weight:900; line-height:1.22; }
.fi-case-file__body > p { margin:0; color:var(--fi-muted); font-size:13px; line-height:1.82; }
.fi-case-file__outcome { display:grid; gap:5px; margin:18px -22px 0; padding:14px 22px; border-top:1px solid var(--fi-line); border-bottom:1px solid var(--fi-line); background:rgba(212,168,85,.055); }.fi-case-file__outcome strong { color:var(--fi-gold-light); font-size:14px; }.fi-case-file__outcome span { color:var(--fi-soft); font-size:12px; }
.fi-case-file__pending { margin:18px -22px 0; padding:14px 22px; border-top:1px solid var(--fi-line); color:var(--fi-soft); font-size:12px; line-height:1.7; }
.fi-case-evaluation { margin:18px 0 0; border:1px solid rgba(45,212,191,.20); border-radius:10px; overflow:hidden; background:repeating-linear-gradient(90deg,transparent 0 30px,rgba(45,212,191,.03) 31px 32px),#151515; }
.fi-case-evaluation__head { display:flex; justify-content:space-between; gap:10px; padding:11px 13px; border-bottom:1px solid rgba(45,212,191,.17); color:#c7f4ec; font-size:11px; font-weight:900; }.fi-case-evaluation__head small { color:var(--fi-soft); font-size:10px; font-weight:700; text-align:end; }
.fi-case-evaluation__grid { display:grid; grid-template-columns:repeat(4,1fr); }.fi-case-evaluation__grid span { display:grid; gap:5px; padding:12px 8px; border-left:1px solid rgba(45,212,191,.13); color:var(--fi-soft); font-size:10px; text-align:center; }.fi-case-evaluation__grid span:first-child { border-left:0; }.fi-case-evaluation__grid bdi { color:var(--fi-ink); font-family:"ThmanyahSerif","ThmanyahSans",sans-serif; font-size:18px; font-weight:900; }
[dir="rtl"] .fi-case-evaluation__grid span { border-right:1px solid rgba(45,212,191,.13); border-left:0; }[dir="rtl"] .fi-case-evaluation__grid span:first-child { border-right:0; }
.fi-case-file__observation { margin:18px -22px 0; padding:16px 22px 20px; border-top:1px solid var(--fi-line); background:linear-gradient(90deg,rgba(212,168,85,.085),transparent); }.fi-case-file__observation > span { display:block; margin-bottom:7px; color:var(--fi-soft); font-size:10px; font-weight:900; letter-spacing:.06em; }.fi-case-file__observation strong { color:var(--fi-gold-light); font-size:13px; }.fi-case-file__observation p { margin:8px 0 0; color:var(--fi-muted); font-size:12px; line-height:1.75; }.fi-case-file__observation--quiet { background:rgba(242,237,226,.025); }
@media (max-width:720px) { .fi-case-file-grid { grid-template-columns:1fr; }.fi-case-file__visual { min-height:190px; }.fi-case-file__body { padding:19px 19px 0; }.fi-case-file__outcome,.fi-case-file__pending,.fi-case-file__observation { margin-right:-19px; margin-left:-19px; padding-right:19px; padding-left:19px; }.fi-case-evaluation__head { align-items:flex-start; flex-direction:column; }.fi-case-evaluation__grid span { padding:11px 5px; } }

@media (max-width: 880px) {
  .fi-commercial-head, .fi-commercial-grid { grid-template-columns: 1fr; }
  .fi-decision-header, .fi-licence-slab { grid-template-columns:1fr; }
  .fi-custody-rail { grid-template-columns:1fr; }
  .fi-commercial-aside { max-width: 520px; }
  .fi-continuity-grid { grid-template-columns: 1fr; }
  .fi-continuity-item { min-height: 0; }
}

@media (max-width: 620px) {
  .fi-price-card { padding: 23px; }
  .fi-price-amount { font-size: 42px; }
  .fi-price-field { min-height:380px; padding:25px; }
  .fi-price-main { margin-top:42px; font-size:52px; }
  .fi-price-engraving { left:25px; }
  .fi-scope-field-header, .fi-scope-line { padding-right:20px; padding-left:20px; }
  .fi-decision-cta { grid-template-columns:1fr; align-items:stretch; }
  .fi-decision-cta .fi-button { width:100%; }
  .fi-boundary-register { grid-template-columns:1fr; }
  .fi-licence-callout { grid-template-columns: 1fr; align-items: stretch; }
  .fi-licence-callout .fi-button { width: 100%; }
  .fi-data-boundary { grid-template-columns: 1fr; }
  .fi-continuity-quote { padding: 20px; font-size: 24px; }
  .fi-continuity-grid { gap: 10px; }
  .fi-continuity-item {
    display: grid;
    min-height: 0;
    grid-template-columns: 1fr auto;
    column-gap: 14px;
    padding: 17px 18px 18px;
  }
  .fi-continuity-no { grid-column: 1; grid-row: 1; margin: 0 0 14px; align-self: center; }
  .fi-continuity-icon { grid-column: 2; grid-row: 1; width: 34px; height: 34px; margin: 0; }
  .fi-continuity-item h2 { grid-column: 1 / -1; margin: 0 0 6px; font-size: 23px; line-height: 1.18; }
  .fi-continuity-item p { grid-column: 1 / -1; font-size: 12.5px; line-height: 1.68; }
}

@media (max-width: 880px) {
  .fi-access-grid, .fi-onboard-grid, .fi-work-grid, .fi-cases-head { grid-template-columns: 1fr; }
  .fi-work-head { grid-template-columns: 1fr; align-items: start; }
  .fi-work-nav { justify-content: flex-start; }
  .fi-case-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fi-method { max-width: 540px; }
}

@media (max-width: 620px) {
  .fi-page { width: min(100% - 28px, 620px); padding-top: 79px; padding-bottom: 56px; }
  .fi-heading { font-size: clamp(38px, 11vw, 54px); }
  .fi-lead { font-size: 16px; }
  .fi-panel__body { padding: 21px; }
  .fi-access-notes, .fi-fields { grid-template-columns: 1fr; }
  .fi-field--wide { grid-column: auto; }
  .fi-form-foot { align-items: stretch; flex-direction: column; }
  .fi-form-foot .fi-button { width: 100%; }
  .fi-onboard-grid { gap: 15px; }
  .fi-stage-rail { grid-template-columns: 1fr; }
  .fi-stage { min-height: 76px; }
  .fi-case-grid { grid-template-columns: 1fr; }
  .fi-section-bar, .fi-footer { align-items: flex-start; flex-direction: column; }
  .fi-record { grid-template-columns: 18px 1fr; }
  .fi-record__state { grid-column: 2; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Fasil royal parchment mode — institutional pages respond to the shared toggle. */
html[data-theme="light"] { --fi-canvas: #faf6ef; --fi-depth: #efe4cf; --fi-surface: #fffaf1; --fi-raised: #f1e6d2; --fi-ink: #1a130b; --fi-muted: rgba(74,51,15,.78); --fi-soft: rgba(96,68,22,.6); --fi-gold: #9e6f1a; --fi-gold-light: #b9852a; --fi-teal: #1a8e84; --fi-teal-deep: #146d65; --fi-line: rgba(150,108,40,.17); --fi-line-strong: rgba(150,108,40,.36); --fi-shadow: rgba(77,53,15,.12); }
html[data-theme="light"] body.fi-body { background: radial-gradient(ellipse 52rem 34rem at 6% -14%, rgba(26,122,56,.12), transparent 62%), radial-gradient(ellipse 44rem 32rem at 94% 4%, rgba(158,111,26,.15), transparent 65%), linear-gradient(180deg, #faf6ef, #efe4cf 88%) !important; color: #1a130b !important; }
html[data-theme="light"] .fi-atmosphere { background: linear-gradient(rgba(158,111,26,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(158,111,26,.055) 1px, transparent 1px) !important; background-size: 42px 42px !important; mask-image: linear-gradient(180deg, rgba(0,0,0,.75), rgba(0,0,0,.16) 68%, transparent) !important; }
html[data-theme="light"] .fi-atmosphere::before { border-color: rgba(158,111,26,.2); box-shadow: 0 0 0 30px rgba(158,111,26,.035), 0 0 0 60px rgba(158,111,26,.02); }
html[data-theme="light"] .fi-atmosphere::after { background: #1a8e84; box-shadow: 0 0 0 5px rgba(26,142,132,.10), 0 0 24px rgba(26,142,132,.24); }
html[data-theme="light"] .fi-panel, html[data-theme="light"] .fi-case-card, html[data-theme="light"] .fi-stage-rail, html[data-theme="light"] .fi-record, html[data-theme="light"] .fi-continuity-item, html[data-theme="light"] .fi-choice { background: linear-gradient(145deg, rgba(255,252,245,.96), rgba(239,229,208,.86)) !important; border-color: rgba(150,108,40,.24) !important; box-shadow: 0 12px 32px rgba(77,53,15,.07) !important; }
html[data-theme="light"] .fi-panel--teal, html[data-theme="light"] .fi-case-card--featured { background: linear-gradient(135deg, rgba(26,122,56,.11), transparent 45%), linear-gradient(145deg, rgba(255,252,245,.98), rgba(238,229,205,.9)) !important; }
html[data-theme="light"] .fi-heading, html[data-theme="light"] .fi-section-title, html[data-theme="light"] .fi-live-title, html[data-theme="light"] .fi-case-card h2, html[data-theme="light"] .fi-case-card h3, html[data-theme="light"] .fi-continuity-item h2, html[data-theme="light"] .fi-work-head h1 { color: #1a130b !important; }
html[data-theme="light"] .fi-lead, html[data-theme="light"] .fi-section-copy, html[data-theme="light"] .fi-live-copy, html[data-theme="light"] .fi-work-subtitle, html[data-theme="light"] .fi-side-note, html[data-theme="light"] .fi-setting-hint, html[data-theme="light"] .fi-choice small, html[data-theme="light"] .fi-continuity-item p, html[data-theme="light"] .fi-question-copy { color: rgba(74,51,15,.78) !important; }
html[data-theme="light"] .fi-kicker, html[data-theme="light"] .fi-stage__no, html[data-theme="light"] .fi-record__index, html[data-theme="light"] .fi-role-field span, html[data-theme="light"] .fi-setting-group legend { color: #9e6f1a !important; }
html[data-theme="light"] .fi-stage, html[data-theme="light"] .fi-record, html[data-theme="light"] .fi-continuity-item, html[data-theme="light"] .fi-setting-group { border-color: rgba(150,108,40,.19) !important; }
html[data-theme="light"] .fi-stage strong, html[data-theme="light"] .fi-record__title, html[data-theme="light"] .fi-choice strong, html[data-theme="light"] .fi-member strong, html[data-theme="light"] .fi-checkline { color: #1a130b !important; }
html[data-theme="light"] .fi-stage span, html[data-theme="light"] .fi-record__state, html[data-theme="light"] .fi-member span { color: rgba(96,68,22,.8) !important; }
html[data-theme="light"] .fi-goal-input, html[data-theme="light"] .fi-question-area, html[data-theme="light"] .fi-role-field input { background: rgba(250,246,239,.9) !important; border-color: rgba(150,108,40,.28) !important; color: #1a130b !important; }
html[data-theme="light"] .fi-goal-input::placeholder, html[data-theme="light"] .fi-question-area::placeholder, html[data-theme="light"] .fi-role-field input::placeholder { color: rgba(96,68,22,.65) !important; }
html[data-theme="light"] .fi-work-nav { background: rgba(245,237,222,.78) !important; border-color: rgba(150,108,40,.22) !important; }
html[data-theme="light"] .fi-work-nav a { color: rgba(74,51,15,.78) !important; }
html[data-theme="light"] .fi-work-nav a.is-active { background: rgba(26,122,56,.1) !important; color: #1a6130 !important; }
html[data-theme="light"] .fi-rule { border-color: rgba(150,108,40,.24) !important; }

/* Every specialised institutional surface must become parchment in light mode. */
html[data-theme="light"] .fi-stage,
html[data-theme="light"] .fi-stage.is-current,
html[data-theme="light"] .fi-price-card,
html[data-theme="light"] .fi-licence-callout,
html[data-theme="light"] .fi-decision-cta,
html[data-theme="light"] .fi-continuity-item,
html[data-theme="light"] .fi-data-boundary > div,
html[data-theme="light"] .fi-decision-side,
html[data-theme="light"] .fi-licence-slab,
html[data-theme="light"] .fi-price-field,
html[data-theme="light"] .fi-scope-field,
html[data-theme="light"] .fi-custody-card,
html[data-theme="light"] .fi-boundary-register article,
html[data-theme="light"] .fi-case-file {
  background: linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.9)) !important;
  border-color: rgba(150,108,40,.25) !important;
  box-shadow: 0 12px 30px rgba(77,53,15,.075) !important;
}
html[data-theme="light"] .fi-stage.is-current,
html[data-theme="light"] .fi-licence-callout,
html[data-theme="light"] .fi-decision-cta,
html[data-theme="light"] .fi-boundary-register article:last-child {
  background: linear-gradient(135deg, rgba(26,142,132,.10), transparent 52%), linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.9)) !important;
}
html[data-theme="light"] .fi-continuity-item:nth-child(2),
html[data-theme="light"] .fi-custody-card:nth-child(2) {
  background: repeating-linear-gradient(135deg, transparent 0 22px, rgba(26,142,132,.055) 23px 24px), linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.9)) !important;
}
html[data-theme="light"] .fi-continuity-item:nth-child(3),
html[data-theme="light"] .fi-scope-field {
  background: linear-gradient(rgba(158,111,26,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(158,111,26,.055) 1px, transparent 1px), linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.9)) !important;
  background-size: 32px 32px, 32px 32px, auto !important;
}
html[data-theme="light"] .fi-price-field {
  background: radial-gradient(circle at 12% 10%, rgba(158,111,26,.14), transparent 31%), linear-gradient(135deg, transparent 49.4%, rgba(158,111,26,.055) 50%, transparent 50.6%) 0 0 / 42px 42px, linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.9)) !important;
}
html[data-theme="light"] .fi-custody-card {
  background: radial-gradient(circle at 82% 12%, rgba(158,111,26,.13) 0 1px, transparent 2px), linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.9)) !important;
  background-size: 84px 84px, auto !important;
}
html[data-theme="light"] .fi-case-file__body,
html[data-theme="light"] .fi-case-file__outcome,
html[data-theme="light"] .fi-case-file__observation,
html[data-theme="light"] .fi-case-file__observation--quiet,
html[data-theme="light"] .fi-case-evaluation,
html[data-theme="light"] .fi-case-evaluation__grid {
  background: transparent !important;
  border-color: rgba(150,108,40,.18) !important;
}
html[data-theme="light"] .fi-price-main,
html[data-theme="light"] .fi-price-field strong,
html[data-theme="light"] .fi-scope-field h2,
html[data-theme="light"] .fi-custody-card h2,
html[data-theme="light"] .fi-boundary-register strong,
html[data-theme="light"] .fi-decision-side h2,
html[data-theme="light"] .fi-decision-cta strong,
html[data-theme="light"] .fi-licence-callout strong,
html[data-theme="light"] .fi-case-file h2,
html[data-theme="light"] .fi-case-file h3,
html[data-theme="light"] .fi-case-evaluation strong,
html[data-theme="light"] .fi-stage strong {
  color: #1a130b !important;
}
html[data-theme="light"] .fi-price-field p,
html[data-theme="light"] .fi-scope-field p,
html[data-theme="light"] .fi-custody-card p,
html[data-theme="light"] .fi-boundary-register p,
html[data-theme="light"] .fi-decision-side p,
html[data-theme="light"] .fi-decision-cta p,
html[data-theme="light"] .fi-licence-callout p,
html[data-theme="light"] .fi-case-file p,
html[data-theme="light"] .fi-case-evaluation span,
html[data-theme="light"] .fi-stage span {
  color: rgba(74,51,15,.8) !important;
}
html[data-theme="light"] .fi-case-file__visual {
  background: linear-gradient(135deg, rgba(158,111,26,.12), rgba(26,142,132,.06)), #efe4cf !important;
  border-color: rgba(150,108,40,.22) !important;
}
html[data-theme="light"] .fi-case-file__veil { background: linear-gradient(180deg, rgba(250,246,239,.05), rgba(49,33,11,.44) 100%) !important; }
html[data-theme="light"] .fi-case-file__visual img { filter: saturate(.83) contrast(1.02) brightness(.93) !important; }

/* Organised parchment ornaments: each operational surface has its own quiet record cue. */
html[data-theme="light"] .fi-panel:not(.fi-panel--teal),
html[data-theme="light"] .fi-case-card,
html[data-theme="light"] .fi-data-boundary > div,
html[data-theme="light"] .fi-boundary-register article {
  background:
    linear-gradient(rgba(158,111,26,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(158,111,26,.045) 1px, transparent 1px),
    linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.90)) !important;
  background-size: 38px 38px, 38px 38px, auto !important;
}
html[data-theme="light"] .fi-stage,
html[data-theme="light"] .fi-choice,
html[data-theme="light"] .fi-work-nav {
  background:
    repeating-linear-gradient(135deg, transparent 0 21px, rgba(158,111,26,.045) 22px 23px),
    linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.90)) !important;
}
html[data-theme="light"] .fi-stage.is-current,
html[data-theme="light"] .fi-panel--teal,
html[data-theme="light"] .fi-decision-cta,
html[data-theme="light"] .fi-licence-callout {
  background:
    repeating-linear-gradient(90deg, transparent 0 26px, rgba(26,142,132,.055) 27px 28px),
    linear-gradient(135deg, rgba(26,142,132,.10), transparent 56%),
    linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.90)) !important;
}
html[data-theme="light"] .fi-price-card,
html[data-theme="light"] .fi-price-field {
  background:
    radial-gradient(circle at 12% 12%, rgba(158,111,26,.18) 0 1px, transparent 2px),
    linear-gradient(135deg, transparent 49.4%, rgba(158,111,26,.065) 50%, transparent 50.6%) 0 0 / 42px 42px,
    linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.90)) !important;
  background-size: 84px 84px, 42px 42px, auto !important;
}
html[data-theme="light"] .fi-scope-field,
html[data-theme="light"] .fi-case-file__body,
html[data-theme="light"] .fi-case-evaluation {
  background:
    linear-gradient(rgba(158,111,26,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(158,111,26,.055) 1px, transparent 1px),
    linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.90)) !important;
  background-size: 31px 31px, 31px 31px, auto !important;
}
html[data-theme="light"] .fi-custody-card,
html[data-theme="light"] .fi-continuity-item {
  background:
    radial-gradient(circle at 82% 12%, rgba(158,111,26,.17) 0 1px, transparent 2px),
    radial-gradient(circle at 18% 78%, rgba(26,142,132,.10) 0 1px, transparent 2px),
    linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.90)) !important;
  background-size: 76px 76px, 108px 108px, auto !important;
}
html[data-theme="light"] .fi-custody-card:nth-child(2),
html[data-theme="light"] .fi-continuity-item:nth-child(2) {
  background:
    repeating-linear-gradient(135deg, transparent 0 20px, rgba(26,142,132,.055) 21px 22px),
    linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.90)) !important;
}
html[data-theme="light"] .fi-custody-vow,
html[data-theme="light"] .fi-continuity-quote {
  background:
    linear-gradient(90deg, rgba(158,111,26,.12), transparent 56%),
    linear-gradient(145deg, rgba(255,253,248,.98), rgba(238,226,201,.90)) !important;
}

/* Recast light mode as denser sand-coloured vellum: unique decision contours, never a tiled technical grid. */
html[data-theme="light"] {
  --fi-canvas: #e7dac2;
  --fi-depth: #d8c5a1;
  --fi-surface: #f1e3c9;
  --fi-raised: #e3cda8;
  --fi-line: rgba(104,72,26,.23);
  --fi-line-strong: rgba(133,86,20,.42);
  --fi-shadow: rgba(62,40,10,.17);
}
html[data-theme="light"] body.fi-body {
  background:
    radial-gradient(ellipse 54rem 32rem at 6% -18%, rgba(22,115,103,.12), transparent 64%),
    radial-gradient(ellipse 48rem 36rem at 96% 5%, rgba(146,94,21,.18), transparent 68%),
    linear-gradient(180deg, #eadfc9, #d8c39d 92%) !important;
}
html[data-theme="light"] .fi-atmosphere {
  background:
    radial-gradient(120% 85% at 100% 0, transparent 0 56%, rgba(139,91,20,.11) 56.3% 56.8%, transparent 57.2%),
    radial-gradient(90% 110% at 0 100%, transparent 0 66%, rgba(22,115,103,.08) 66.3% 66.8%, transparent 67.2%) !important;
  background-size: auto !important;
}
html[data-theme="light"] .fi-panel:not(.fi-panel--teal),
html[data-theme="light"] .fi-case-card,
html[data-theme="light"] .fi-data-boundary > div,
html[data-theme="light"] .fi-boundary-register article {
  background:
    radial-gradient(115% 130% at 105% -20%, transparent 0 57%, rgba(139,91,20,.11) 57.4% 57.8%, transparent 58.2%),
    linear-gradient(146deg, rgba(245,235,215,.98), rgba(220,198,159,.94)) !important;
  background-size: auto !important;
}
html[data-theme="light"] .fi-stage,
html[data-theme="light"] .fi-choice,
html[data-theme="light"] .fi-work-nav {
  background:
    linear-gradient(112deg, rgba(139,91,20,.12) 0 1px, transparent 1px 61%, rgba(22,115,103,.10) 61.4% 61.9%, transparent 62.3%),
    linear-gradient(146deg, rgba(244,233,212,.98), rgba(221,199,162,.94)) !important;
  background-size: auto !important;
}
html[data-theme="light"] .fi-stage.is-current,
html[data-theme="light"] .fi-panel--teal,
html[data-theme="light"] .fi-decision-cta,
html[data-theme="light"] .fi-licence-callout {
  background:
    radial-gradient(110% 150% at 0 100%, transparent 0 59%, rgba(22,115,103,.15) 59.4% 59.8%, transparent 60.2%),
    linear-gradient(130deg, rgba(22,115,103,.12), transparent 52%),
    linear-gradient(146deg, rgba(244,234,215,.98), rgba(219,198,161,.94)) !important;
  background-size: auto !important;
}
html[data-theme="light"] .fi-price-card,
html[data-theme="light"] .fi-price-field {
  background:
    radial-gradient(ellipse 78% 130% at 8% 0, rgba(146,94,21,.22), transparent 46%),
    radial-gradient(115% 120% at 112% 100%, transparent 0 59%, rgba(139,91,20,.13) 59.4% 59.9%, transparent 60.3%),
    linear-gradient(146deg, #f0dfbf, #d8ba81) !important;
  background-size: auto !important;
}
html[data-theme="light"] .fi-scope-field,
html[data-theme="light"] .fi-case-file__body,
html[data-theme="light"] .fi-case-evaluation {
  background:
    linear-gradient(90deg, transparent 0 22px, rgba(139,91,20,.15) 22px 24px, transparent 24px) 0 18px / 100% 1px no-repeat,
    radial-gradient(100% 130% at 100% 0, transparent 0 64%, rgba(22,115,103,.09) 64.4% 64.8%, transparent 65.2%),
    linear-gradient(146deg, rgba(245,235,216,.98), rgba(220,199,164,.94)) !important;
  background-size: 100% 1px, auto, auto !important;
}
html[data-theme="light"] .fi-custody-card,
html[data-theme="light"] .fi-continuity-item {
  background:
    radial-gradient(130% 110% at 100% -10%, transparent 0 57%, rgba(139,91,20,.15) 57.4% 57.9%, transparent 58.3%),
    linear-gradient(146deg, rgba(244,233,212,.98), rgba(220,198,159,.94)) !important;
  background-size: auto !important;
}
html[data-theme="light"] .fi-custody-card:nth-child(2),
html[data-theme="light"] .fi-continuity-item:nth-child(2) {
  background:
    radial-gradient(120% 115% at 0 100%, transparent 0 58%, rgba(22,115,103,.15) 58.4% 58.9%, transparent 59.3%),
    linear-gradient(146deg, rgba(243,233,213,.98), rgba(218,198,162,.94)) !important;
}
html[data-theme="light"] .fi-custody-vow,
html[data-theme="light"] .fi-continuity-quote {
  background:
    linear-gradient(90deg, rgba(146,94,21,.18), transparent 48%),
    radial-gradient(110% 150% at 100% 0, transparent 0 61%, rgba(139,91,20,.10) 61.4% 61.8%, transparent 62.2%),
    linear-gradient(146deg, #efe0c5, #d9bd8c) !important;
}

/* Final light-mode system — aligned to Fasil's paper decision field, not the dark theme's geometry. */
html[data-theme="light"] {
  --fi-canvas: #f7f3eb;
  --fi-depth: #efe8da;
  --fi-surface: #fffcf7;
  --fi-raised: #ffffff;
  --fi-ink: #16110d;
  --fi-body: #625c54;
  --fi-muted: #8c8377;
  --fi-gold: #b88316;
  --fi-teal: #188c7f;
  --fi-line: #e7dfd2;
  --fi-line-strong: #d7c49f;
  --fi-shadow: rgba(52, 40, 20, .11);
}
html[data-theme="light"] body.fi-body {
  color: var(--fi-body) !important;
  background:
    radial-gradient(circle at 4% 8%, rgba(184,131,22,.045) 0 1px, transparent 1.5px),
    radial-gradient(circle at 82% 22%, rgba(24,140,127,.035) 0 1px, transparent 1.5px),
    linear-gradient(110deg, rgba(255,255,255,.32), transparent 36%),
    #f7f3eb !important;
  background-size: 31px 31px, 43px 43px, auto, auto !important;
}
html[data-theme="light"] .fi-atmosphere {
  opacity: 1 !important;
  background:
    linear-gradient(90deg, transparent calc(50% - .5px), rgba(184,131,22,.18) 50%, transparent calc(50% + .5px)) center top / 1px 34rem no-repeat,
    radial-gradient(30rem 24rem at 78% 16%, rgba(220,212,240,.22), transparent 72%) !important;
}
html[data-theme="light"] .fi-page,
html[data-theme="light"] .fi-cases-page {
  color: var(--fi-body) !important;
}
html[data-theme="light"] .fi-heading,
html[data-theme="light"] .fi-heading *,
html[data-theme="light"] .fi-section-title,
html[data-theme="light"] .fi-work-head h1,
html[data-theme="light"] .fi-case-file__title,
html[data-theme="light"] .fi-case-file__outcome,
html[data-theme="light"] .fi-price-main,
html[data-theme="light"] .fi-custody-card h2,
html[data-theme="light"] .fi-decision-cta h2 {
  color: var(--fi-ink) !important;
}
html[data-theme="light"] .fi-kicker,
html[data-theme="light"] .fi-decision-code,
html[data-theme="light"] .fi-price-marker,
html[data-theme="light"] .fi-custody-index,
html[data-theme="light"] .fi-record__index,
html[data-theme="light"] .fi-stage__no,
html[data-theme="light"] .fi-scope-line__no {
  color: var(--fi-gold) !important;
}
html[data-theme="light"] .fi-lead,
html[data-theme="light"] .fi-section-copy,
html[data-theme="light"] .fi-live-copy,
html[data-theme="light"] .fi-work-subtitle,
html[data-theme="light"] .fi-case-file__observation,
html[data-theme="light"] .fi-custody-card p,
html[data-theme="light"] .fi-continuity-item p,
html[data-theme="light"] .fi-decision-cta p,
html[data-theme="light"] .fi-panel p {
  color: var(--fi-body) !important;
}
html[data-theme="light"] .fi-panel,
html[data-theme="light"] .fi-panel--quiet,
html[data-theme="light"] .fi-panel--teal,
html[data-theme="light"] .fi-stage,
html[data-theme="light"] .fi-choice,
html[data-theme="light"] .fi-work-nav,
html[data-theme="light"] .fi-record,
html[data-theme="light"] .fi-member,
html[data-theme="light"] .fi-side-note,
html[data-theme="light"] .fi-custody-card,
html[data-theme="light"] .fi-continuity-item,
html[data-theme="light"] .fi-boundary-register article,
html[data-theme="light"] .fi-data-boundary > div,
html[data-theme="light"] .fi-price-field,
html[data-theme="light"] .fi-scope-field,
html[data-theme="light"] .fi-licence-slab,
html[data-theme="light"] .fi-decision-side,
html[data-theme="light"] .fi-decision-cta,
html[data-theme="light"] .fi-custody-vow,
html[data-theme="light"] .fi-continuity-quote,
html[data-theme="light"] .fi-case-file,
html[data-theme="light"] .fi-case-file__body,
html[data-theme="light"] .fi-case-evaluation,
html[data-theme="light"] .fi-case-empty,
html[data-theme="light"] .fi-live-state {
  color: var(--fi-body) !important;
  border: 1px solid var(--fi-line) !important;
  border-radius: 20px !important;
  box-shadow: 0 18px 42px rgba(52,40,20,.075), 0 1px 0 rgba(255,255,255,.92) inset !important;
  background: rgba(255,252,247,.92) !important;
}
html[data-theme="light"] .fi-panel--teal,
html[data-theme="light"] .fi-stage.is-current,
html[data-theme="light"] .fi-live-state {
  border-color: rgba(24,140,127,.28) !important;
  background: linear-gradient(135deg, rgba(231,247,241,.95), rgba(255,252,247,.96)) !important;
}
html[data-theme="light"] .fi-decision-side,
html[data-theme="light"] .fi-decision-cta,
html[data-theme="light"] .fi-price-field,
html[data-theme="light"] .fi-licence-slab {
  border-color: rgba(184,131,22,.27) !important;
  background: linear-gradient(135deg, rgba(255,249,233,.98), rgba(255,252,247,.96)) !important;
}
html[data-theme="light"] .fi-scope-field,
html[data-theme="light"] .fi-case-evaluation {
  background: linear-gradient(135deg, rgba(248,246,255,.96), rgba(255,252,247,.96)) !important;
  border-color: rgba(160,140,204,.23) !important;
}
html[data-theme="light"] .fi-custody-card::before,
html[data-theme="light"] .fi-custody-card::after,
html[data-theme="light"] .fi-continuity-item::before,
html[data-theme="light"] .fi-continuity-item::after,
html[data-theme="light"] .fi-price-field::before,
html[data-theme="light"] .fi-price-field::after,
html[data-theme="light"] .fi-case-file__body::before,
html[data-theme="light"] .fi-case-file__body::after,
html[data-theme="light"] .fi-scope-field::before,
html[data-theme="light"] .fi-scope-field::after {
  background-image: none !important;
  opacity: 0 !important;
}
html[data-theme="light"] .fi-field input,
html[data-theme="light"] .fi-field textarea,
html[data-theme="light"] .fi-goal-input,
html[data-theme="light"] .fi-question-area,
html[data-theme="light"] .fi-role-field,
html[data-theme="light"] .fi-reference-area {
  color: var(--fi-ink) !important;
  background: rgba(255,255,255,.76) !important;
  border: 1px solid #e2d8c9 !important;
  border-radius: 14px !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.95) inset !important;
}
html[data-theme="light"] .fi-field input::placeholder,
html[data-theme="light"] .fi-field textarea::placeholder,
html[data-theme="light"] .fi-question-area::placeholder {
  color: #a1988d !important;
}
html[data-theme="light"] .fi-chip,
html[data-theme="light"] .fi-chip--gold,
html[data-theme="light"] .fi-chip--teal {
  border-radius: 999px !important;
  background: rgba(24,140,127,.10) !important;
  border-color: rgba(24,140,127,.18) !important;
  color: #16776c !important;
}
html[data-theme="light"] .fi-chip--gold {
  background: rgba(184,131,22,.10) !important;
  border-color: rgba(184,131,22,.18) !important;
  color: #986a10 !important;
}
html[data-theme="light"] .fi-button--gold,
html[data-theme="light"] .fi-button[type="submit"] {
  color: #fffdf8 !important;
  border: 1px solid rgba(143,96,12,.62) !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, #c38c16, #ad7410) !important;
  box-shadow: 0 10px 20px rgba(143,96,12,.17), 0 1px 0 rgba(255,255,255,.24) inset !important;
}
html[data-theme="light"] .fi-button:not(.fi-button--gold):not([type="submit"]),
html[data-theme="light"] .fi-text-link {
  color: var(--fi-ink) !important;
  border-radius: 14px !important;
}
html[data-theme="light"] .fi-rule,
html[data-theme="light"] .fi-section-bar,
html[data-theme="light"] .fi-scope-line,
html[data-theme="light"] .fi-record-list,
html[data-theme="light"] .fi-case-evaluation__grid {
  border-color: var(--fi-line) !important;
}
html[data-theme="light"] .fi-protocol__item,
html[data-theme="light"] .fi-goal-row,
html[data-theme="light"] .fi-setting-group,
html[data-theme="light"] .fi-role-field,
html[data-theme="light"] .fi-example,
html[data-theme="light"] .fi-record__state,
html[data-theme="light"] .fi-live-meta,
html[data-theme="light"] .fi-member__mark,
html[data-theme="light"] .fi-success,
html[data-theme="light"] .fi-error {
  color: var(--fi-body) !important;
  border-color: var(--fi-line) !important;
  background: rgba(255,252,247,.78) !important;
}
html[data-theme="light"] .fi-case-file__visual {
  filter: saturate(.82) brightness(1.06) contrast(.96) !important;
  border-radius: 18px 18px 0 0 !important;
}
html[data-theme="light"] .fi-case-file__veil {
  background: linear-gradient(180deg, rgba(255,252,247,.10), rgba(255,252,247,.72)) !important;
}
html[data-theme="light"] .fi-case-file__status,
html[data-theme="light"] .fi-record__state,
html[data-theme="light"] .fi-live-state,
html[data-theme="light"] .fi-success-number,
html[data-theme="light"] .fi-count {
  color: #16776c !important;
  background-color: rgba(24,140,127,.10) !important;
  border-color: rgba(24,140,127,.18) !important;
}
html[data-theme="light"] .fi-case-file__pending,
html[data-theme="light"] .fi-error {
  color: #9b5e1c !important;
  background-color: rgba(184,131,22,.09) !important;
  border-color: rgba(184,131,22,.20) !important;
}
html[data-theme="light"] .fi-record__title,
html[data-theme="light"] .fi-live-title,
html[data-theme="light"] .fi-case-file__code,
html[data-theme="light"] .fi-case-file__id,
html[data-theme="light"] .fi-protocol__index,
html[data-theme="light"] .fi-onboard-label,
html[data-theme="light"] .fi-setting-hint,
html[data-theme="light"] .fi-checkline,
html[data-theme="light"] .fi-method {
  color: var(--fi-muted) !important;
}
/* Higher-specificity reset for legacy dark/sand panel selectors. */
html[data-theme="light"] .fi-panel:not(.fi-panel--teal),
html[data-theme="light"] .fi-body--pricing .fi-panel:not(.fi-panel--teal),
html[data-theme="light"] .fi-body--ownership .fi-panel:not(.fi-panel--teal),
html[data-theme="light"] .fi-body--onboarding .fi-panel:not(.fi-panel--teal),
html[data-theme="light"] .fi-body--workspace .fi-panel:not(.fi-panel--teal) {
  background: rgba(255,252,247,.94) !important;
  border: 1px solid var(--fi-line) !important;
  border-radius: 20px !important;
  box-shadow: 0 18px 42px rgba(52,40,20,.075), 0 1px 0 rgba(255,255,255,.92) inset !important;
}
html[data-theme="light"] .fi-body--access .fi-panel:not(.fi-panel--teal) {
  background: linear-gradient(135deg, rgba(248,246,255,.97), rgba(255,252,247,.96)) !important;
  border-color: rgba(160,140,204,.23) !important;
}
html[data-theme="light"] .fi-body--access .fi-access-grid > section:first-child {
  align-self: start;
  padding: 26px 28px 24px;
  border: 1px solid rgba(24,140,127,.22);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(238,249,245,.96), rgba(255,252,247,.94));
  box-shadow: 0 18px 42px rgba(52,40,20,.065), 0 1px 0 rgba(255,255,255,.94) inset;
}
html[data-theme="light"] .fi-body--access .fi-protocol {
  margin-top: 18px;
  padding-top: 10px;
  border-top: 1px solid rgba(24,140,127,.15);
}
html[data-theme="light"] .fi-body--access .fi-protocol__item {
  display: grid;
  grid-template-columns: 40px minmax(0,1fr);
  gap: 15px;
  align-items: center;
  padding: 17px 0;
  border-bottom: 1px solid rgba(24,140,127,.12) !important;
  background: transparent !important;
}
html[data-theme="light"] .fi-body--access .fi-protocol__item:last-child {
  padding-bottom: 2px;
  border-bottom: 0 !important;
}
html[data-theme="light"] .fi-body--access .fi-protocol__index {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin: 0 !important;
  border: 1px solid rgba(184,131,22,.28);
  border-radius: 50%;
  background: rgba(255,252,247,.9);
  color: #a97310 !important;
  font-family: ThmanyahSans, sans-serif;
  font-size: .74rem;
  font-weight: 800;
  line-height: 1;
  text-align: center;
}
html[data-theme="light"] .fi-body--access .fi-protocol__item strong {
  color: var(--fi-ink) !important;
}
html[data-theme="light"] .fi-body--access .fi-protocol__item p {
  margin: 4px 0 0;
  color: var(--fi-body) !important;
}
html[data-theme="light"] .fi-body--access .fi-field label {
  color: #4e453b !important;
  font-family: ThmanyahSans, sans-serif;
  font-size: .79rem;
  font-weight: 750;
  line-height: 1.35;
  opacity: 1 !important;
}
html[data-theme="light"] .fi-body--access .fi-required {
  color: #a97310 !important;
  opacity: 1 !important;
}
html[data-theme="light"] .fi-body--pricing .fi-decision-side {
  min-height: 142px;
  padding: 20px 22px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255,249,233,.98), rgba(255,252,247,.96)) !important;
  border-color: rgba(184,131,22,.24);
  box-shadow: 0 14px 32px rgba(52,40,20,.055), 0 1px 0 rgba(255,255,255,.94) inset;
}
html[data-theme="light"] .fi-body--pricing .fi-decision-side strong {
  color: #9b6c12;
}
html[data-theme="light"] .fi-body--pricing .fi-decision-side p {
  margin-top: 7px;
  color: var(--fi-body);
  line-height: 1.62;
}
html[data-theme="light"] .fi-body--pricing .fi-licence-slab {
  gap: 20px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
html[data-theme="light"] .fi-body--pricing .fi-price-field,
html[data-theme="light"] .fi-body--pricing .fi-scope-field {
  min-height: 300px;
  border: 1px solid var(--fi-line);
  border-radius: 20px;
  box-shadow: 0 16px 36px rgba(52,40,20,.065), 0 1px 0 rgba(255,255,255,.94) inset;
}
html[data-theme="light"] .fi-body--pricing .fi-price-field {
  display: flex;
  flex-direction: column;
  padding: 22px 26px 20px;
}
html[data-theme="light"] .fi-body--pricing .fi-price-main {
  margin: 26px 0 9px;
  font-size: clamp(46px, 6vw, 68px);
}
html[data-theme="light"] .fi-body--pricing .fi-price-main small {
  margin-top: 7px;
}
html[data-theme="light"] .fi-body--pricing .fi-price-field p {
  font-size: 13px;
  line-height: 1.65;
}
html[data-theme="light"] .fi-body--pricing .fi-price-engraving {
  position: static;
  margin-top: auto;
  padding-top: 14px;
}
html[data-theme="light"] .fi-body--pricing .fi-scope-field-header {
  padding: 19px 22px 14px;
}
html[data-theme="light"] .fi-body--pricing .fi-scope-field-header h2 {
  font-size: 22px;
}
html[data-theme="light"] .fi-body--pricing .fi-scope-line {
  grid-template-columns: 34px minmax(0,1fr);
  gap: 12px;
  padding: 15px 22px;
}
html[data-theme="light"] .fi-body--pricing .fi-scope-line p {
  font-size: 12px;
  line-height: 1.55;
}
/* Three annual institutional licences: clear operating scale, never self-service packages. */
.fi-decision-header--tiers { align-items: center; }
.fi-license-tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 26px; }
.fi-license-tier { position: relative; display: flex; flex-direction: column; min-height: 430px; padding: 26px; overflow: hidden; border: 1px solid var(--fi-line-strong); border-radius: 18px; background: rgba(12,26,50,.72); box-shadow: 0 20px 46px var(--fi-shadow); }
.fi-license-tier::after { position:absolute; width:170px; height:170px; border:1px solid rgba(212,168,85,.18); border-radius:50%; content:""; inset:auto -60px -68px auto; }
.fi-license-tier > * { position:relative; z-index:1; }
.fi-license-tier__head { display:flex; align-items:center; gap:12px; }
.fi-license-tier__no { display:grid; place-items:center; width:34px; height:34px; border:1px solid rgba(212,168,85,.30); border-radius:50%; color:var(--fi-gold-light); font-size:11px; font-weight:900; }
.fi-license-tier h2 { margin:0; color:var(--fi-ink); font-family:"ThmanyahSerif", "ThmanyahSans", Tahoma, Arial, sans-serif; font-size:28px; font-weight:900; }
.fi-license-tier__head p { margin:3px 0 0; color:var(--fi-muted); font-size:13px; }
.fi-license-tier__price { margin:28px 0 23px; color:var(--fi-ink); font-size:clamp(36px,4vw,54px); font-weight:900; letter-spacing:-.055em; line-height:.95; }
.fi-license-tier__price span { display:block; margin-top:8px; color:var(--fi-gold-light); font-size:13px; font-weight:900; letter-spacing:0; }
.fi-license-tier__metrics { display:grid; gap:10px; margin:0; }
.fi-license-tier__metrics div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-top:1px solid var(--fi-line); }
.fi-license-tier__metrics dt { color:var(--fi-muted); font-size:13px; }
.fi-license-tier__metrics dd { margin:0; color:var(--fi-ink); font-size:14px; font-weight:900; }
.fi-license-tier .fi-button { width:100%; justify-content:center; margin-top:auto; }
.fi-license-tier__action { margin-top:auto; }
.fi-license-tier--expanded { border-color:rgba(24,140,127,.42); }
.fi-license-tier--national { border-color:rgba(160,140,204,.42); }
.fi-license-tier--institutional { background-image: radial-gradient(ellipse 120px 120px at 92% 12%, rgba(212,168,85,.15) 0 1px, transparent 1.5px), radial-gradient(circle at 92% 12%, transparent 0 34px, rgba(212,168,85,.13) 34px 35px, transparent 36px), linear-gradient(148deg, rgba(34,44,55,.92), rgba(12,26,50,.77)); }
.fi-license-tier--expanded { background-image: repeating-linear-gradient(135deg, rgba(24,140,127,.09) 0 1px, transparent 1px 24px), linear-gradient(148deg, rgba(17,61,65,.91), rgba(12,26,50,.77)); }
.fi-license-tier--national { background-image: linear-gradient(90deg, transparent 49.7%, rgba(160,140,204,.16) 49.7% 50.3%, transparent 50.3%), linear-gradient(0deg, transparent 26%, rgba(160,140,204,.11) 26% 26.5%, transparent 26.5%), radial-gradient(circle at 50% 26%, rgba(160,140,204,.15) 0 2px, transparent 2.5px), linear-gradient(148deg, rgba(38,43,72,.92), rgba(12,26,50,.77)); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier { min-height:390px; border-color:var(--fi-line); background:rgba(255,252,247,.94); box-shadow:0 18px 40px rgba(52,40,20,.07),0 1px 0 rgba(255,255,255,.94) inset; }
html[data-theme="light"] .fi-body--pricing .fi-license-tier::after { border-color:rgba(184,131,22,.14); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier--institutional { background:linear-gradient(145deg,rgba(255,249,233,.96),rgba(255,252,247,.98)); border-color:rgba(184,131,22,.25); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier--expanded { background:linear-gradient(145deg,rgba(238,249,245,.96),rgba(255,252,247,.98)); border-color:rgba(24,140,127,.25); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier--national { background:linear-gradient(145deg,rgba(248,246,255,.97),rgba(255,252,247,.98)); border-color:rgba(160,140,204,.28); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier--institutional { background-image: radial-gradient(ellipse 118px 118px at 91% 12%, rgba(184,131,22,.16) 0 1px, transparent 1.5px), radial-gradient(circle at 91% 12%, transparent 0 34px, rgba(184,131,22,.13) 34px 35px, transparent 36px), linear-gradient(145deg,rgba(255,249,233,.98),rgba(255,252,247,.96)); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier--expanded { background-image: repeating-linear-gradient(135deg, rgba(24,140,127,.11) 0 1px, transparent 1px 24px), linear-gradient(145deg,rgba(238,249,245,.98),rgba(255,252,247,.96)); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier--national { background-image: linear-gradient(90deg, transparent 49.7%, rgba(160,140,204,.18) 49.7% 50.3%, transparent 50.3%), linear-gradient(0deg, transparent 26%, rgba(160,140,204,.14) 26% 26.5%, transparent 26.5%), radial-gradient(circle at 50% 26%, rgba(160,140,204,.25) 0 2px, transparent 2.5px), linear-gradient(145deg,rgba(248,246,255,.98),rgba(255,252,247,.96)); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier h2,
html[data-theme="light"] .fi-body--pricing .fi-license-tier__price,
html[data-theme="light"] .fi-body--pricing .fi-license-tier__metrics dd { color:var(--fi-ink); }
html[data-theme="light"] .fi-body--pricing .fi-license-tier__head p,
html[data-theme="light"] .fi-body--pricing .fi-license-tier__metrics dt { color:var(--fi-body); }
@media (max-width: 900px) { .fi-license-tiers { grid-template-columns: 1fr; } .fi-license-tier { min-height:0; } }
.fi-body--pricing .fi-license-tier { min-height:300px; }
.fi-body--pricing .fi-license-tier__metrics { margin-top:30px; }
.fi-license-guidance { margin:12px 2px 0; color:var(--fi-muted); font-size:13px; }
.fi-license-tier--annual { border-color:rgba(160,140,204,.42); background-image:linear-gradient(90deg,transparent 49.7%,rgba(160,140,204,.16) 49.7% 50.3%,transparent 50.3%),linear-gradient(0deg,transparent 26%,rgba(160,140,204,.11) 26% 26.5%,transparent 26.5%),radial-gradient(circle at 50% 26%,rgba(160,140,204,.15) 0 2px,transparent 2.5px),linear-gradient(148deg,rgba(38,43,72,.92),rgba(12,26,50,.77)); }
.fi-license-tier--annual h2 { max-width:220px; font-size:22px; line-height:1.12; }
.fi-license-tier--annual .fi-license-tier__price { margin:24px 0 18px; font-size:clamp(30px,3vw,40px); letter-spacing:-.025em; line-height:1.05; }
html[data-theme="light"] .fi-body--pricing .fi-license-tier--annual { border-color:rgba(160,140,204,.28); background-image:linear-gradient(90deg,transparent 49.7%,rgba(160,140,204,.18) 49.7% 50.3%,transparent 50.3%),linear-gradient(0deg,transparent 26%,rgba(160,140,204,.14) 26% 26.5%,transparent 26.5%),radial-gradient(circle at 50% 26%,rgba(160,140,204,.25) 0 2px,transparent 2.5px),linear-gradient(145deg,rgba(248,246,255,.98),rgba(255,252,247,.96)); }
.fi-body--pricing .fi-license-offer { display:grid; grid-template-rows:auto auto auto 1fr auto; min-height:326px; padding:24px; border-color:rgba(212,168,85,.42); background:linear-gradient(145deg,rgba(38,35,26,.98),rgba(22,30,30,.94)); }
.fi-body--pricing .fi-license-offer::before { position:absolute; inset:0; opacity:.8; background:linear-gradient(90deg,transparent 0 13%,rgba(212,168,85,.17) 13.2% 13.45%,transparent 13.7%),repeating-linear-gradient(0deg,transparent 0 27px,rgba(212,168,85,.038) 28px 29px),radial-gradient(130% 115% at 100% 100%,transparent 0 57%,rgba(45,212,191,.11) 57.4% 57.9%,transparent 58.3%); content:""; pointer-events:none; }
.fi-body--pricing .fi-license-offer > * { position:relative; z-index:1; }
.fi-license-offer__mast { display:flex; align-items:center; justify-content:space-between; gap:14px; color:var(--fi-gold-light); font-family:"ThmanyahSans",Tahoma,Arial,sans-serif; font-size:11px; font-weight:900; letter-spacing:.02em; }
.fi-license-offer__mast i { display:grid; width:32px; height:32px; place-items:center; border:1px solid rgba(212,168,85,.28); border-radius:50%; font-size:13px; }
.fi-body--pricing .fi-license-offer h2 { max-width:100%; margin:16px 0 6px; color:#fffdf9; font-size:clamp(24px,2.35vw,31px); line-height:1.14; }
.fi-license-offer__scope { max-width:300px; margin:0; color:rgba(235,229,218,.70); font-size:13px; line-height:1.6; }
.fi-license-offer__starting { align-self:end; margin-top:20px; padding-top:13px; border-top:1px solid rgba(212,168,85,.19); }
.fi-license-offer__starting span { display:block; margin-bottom:5px; color:rgba(235,229,218,.58); font-family:"ThmanyahSans",Tahoma,Arial,sans-serif; font-size:11px; font-weight:800; }
.fi-license-offer__starting strong { color:#fffdf9; font-family:"ThmanyahSerif","ThmanyahSans",Tahoma,Arial,sans-serif; font-size:clamp(27px,3vw,39px); letter-spacing:-.03em; line-height:1; }
.fi-license-offer__contact { display:flex; align-items:center; justify-content:space-between; gap:13px; margin-top:17px; padding-top:13px; border-top:1px solid rgba(212,168,85,.20); color:#f2cf73; font-family:"ThmanyahSans",Tahoma,Arial,sans-serif; font-size:14px; font-weight:900; text-decoration:none; }
.fi-license-offer__contact small { display:inline-flex; align-items:center; gap:7px; color:rgba(235,229,218,.63); font-size:10px; font-weight:800; }
.fi-license-offer__contact:hover { color:#fffdf9; }
html[data-theme="light"] .fi-body--pricing .fi-license-offer { border-color:rgba(184,131,22,.28); background:linear-gradient(145deg,rgba(255,249,233,.98),rgba(243,248,245,.96)); }
html[data-theme="light"] .fi-body--pricing .fi-license-offer::before { opacity:1; background:linear-gradient(90deg,transparent 0 13%,rgba(184,131,22,.15) 13.2% 13.45%,transparent 13.7%),repeating-linear-gradient(0deg,transparent 0 27px,rgba(184,131,22,.034) 28px 29px),radial-gradient(130% 115% at 100% 100%,transparent 0 57%,rgba(24,140,127,.09) 57.4% 57.9%,transparent 58.3%); }
html[data-theme="light"] .fi-body--pricing .fi-license-offer h2,html[data-theme="light"] .fi-license-offer__starting strong { color:#2f2922; }
html[data-theme="light"] .fi-license-offer__scope,html[data-theme="light"] .fi-license-offer__starting span,html[data-theme="light"] .fi-license-offer__contact small { color:#71685c; }
html[data-theme="light"] .fi-license-offer__contact { color:#946d15; }
.fi-body--pricing .fi-license-terms-band { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(180px,.6fr) auto; align-items:center; gap:clamp(20px,4vw,54px); margin-top:18px; padding:22px 26px; border:1px solid rgba(212,168,85,.28); border-radius:12px; background:linear-gradient(105deg,rgba(31,35,31,.92),rgba(19,31,30,.88)); box-shadow:0 14px 30px rgba(0,0,0,.10); }
.fi-license-terms-band h2 { margin:8px 0 4px; color:#fffdf9; font-size:24px; line-height:1.15; }
.fi-license-terms-band p { margin:0; color:rgba(235,229,218,.68); font-size:13px; }
.fi-license-terms-band__starting { padding-inline-start:22px; border-inline-start:1px solid rgba(212,168,85,.22); }
.fi-license-terms-band__starting span { display:block; margin-bottom:5px; color:rgba(235,229,218,.55); font-size:11px; font-weight:800; }
.fi-license-terms-band__starting strong { color:#fffdf9; font-family:"ThmanyahSerif","ThmanyahSans",Tahoma,Arial,sans-serif; font-size:30px; line-height:1; }
.fi-license-terms-band__contact { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:42px; padding:0 17px; border:1px solid rgba(212,168,85,.48); border-radius:7px; background:rgba(212,168,85,.12); color:#f3d37f; font-family:"ThmanyahSans",Tahoma,Arial,sans-serif; font-size:13px; font-weight:900; text-decoration:none; white-space:nowrap; }
.fi-license-terms-band__contact:hover { background:rgba(212,168,85,.22); color:#fffdf9; }
html[data-theme="light"] .fi-body--pricing .fi-license-terms-band { border-color:rgba(184,131,22,.23); background:linear-gradient(105deg,rgba(255,249,233,.98),rgba(238,249,245,.94)); box-shadow:0 14px 30px rgba(68,51,21,.055); }
html[data-theme="light"] .fi-license-terms-band h2,html[data-theme="light"] .fi-license-terms-band__starting strong { color:#2f2922; }
html[data-theme="light"] .fi-license-terms-band p,html[data-theme="light"] .fi-license-terms-band__starting span { color:#71685c; }
html[data-theme="light"] .fi-license-terms-band__starting { border-color:rgba(184,131,22,.18); }
html[data-theme="light"] .fi-license-terms-band__contact { border-color:rgba(184,131,22,.34); background:rgba(184,131,22,.08); color:#8b6514; }
@media (max-width:900px) { .fi-body--pricing .fi-license-terms-band { grid-template-columns:1fr; gap:14px; } .fi-license-terms-band__starting { padding:14px 0 0; border-inline-start:0; border-top:1px solid rgba(212,168,85,.22); } .fi-license-terms-band__contact { justify-self:start; } }
/* Ownership is a concise operating specification, not a field of decorative cards. */
.fi-decision-header--ownership .fi-decision-side { min-height: 132px; padding: 21px 24px; }
.fi-decision-header--ownership .fi-decision-side p { margin-top: 7px; line-height: 1.6; }
.fi-body--ownership .fi-custody-rail { gap: 14px; margin-top: 22px; }
.fi-body--ownership .fi-custody-card { min-height: 300px; padding: 22px 23px 20px; border-radius: 18px; }
.fi-custody-topline { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.fi-custody-topline > i { color: var(--fi-teal); font-size: 18px; }
.fi-body--ownership .fi-custody-card h2 { margin: 0 0 8px; font-size: 24px; line-height: 1.22; }
.fi-body--ownership .fi-custody-card > p { margin: 0; font-size: 13px; line-height: 1.62; }
.fi-custody-specs { display: grid; gap: 7px; margin: auto 0 0; padding-top: 16px; }
.fi-custody-specs div { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 10px; padding-top: 7px; border-top: 1px solid var(--fi-line); }
.fi-custody-specs dt { color: var(--fi-gold-light); font-size: 11px; font-weight: 900; }
.fi-custody-specs dd { margin: 0; color: var(--fi-body); font-size: 12px; line-height: 1.4; }
.fi-body--ownership .fi-custody-vow { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 100px; margin: 20px 0; padding: 22px 26px; border-radius: 18px; }
.fi-body--ownership .fi-custody-vow strong { max-width: 820px; font-family: "ThmanyahSerif", "ThmanyahSans", Tahoma, Arial, sans-serif; font-size: clamp(22px, 2.35vw, 34px); line-height: 1.18; }
.fi-body--ownership .fi-custody-vow span { white-space: nowrap; }
.fi-body--ownership .fi-boundary-register { gap: 14px; margin-top: 0; }
.fi-body--ownership .fi-boundary-register article { display: flex; align-items: flex-start; gap: 14px; min-height: 108px; padding: 19px 22px; border-radius: 16px; }
.fi-body--ownership .fi-boundary-register article > i { margin-top: 2px; color: var(--fi-gold-light); }
.fi-body--ownership .fi-boundary-register article strong { display:block; margin-bottom: 5px; }
.fi-body--ownership .fi-boundary-register article p { margin:0; font-size:13px; line-height:1.55; }
html[data-theme="light"] .fi-body--ownership .fi-decision-side { background: linear-gradient(145deg, rgba(255,249,233,.96), rgba(255,252,247,.98)); border-color: rgba(184,131,22,.24); box-shadow: 0 14px 30px rgba(52,40,20,.055); }
html[data-theme="light"] .fi-body--ownership .fi-custody-card { background: rgba(255,252,247,.96); border-color: var(--fi-line); box-shadow: 0 16px 34px rgba(52,40,20,.055), 0 1px 0 rgba(255,255,255,.94) inset; }
html[data-theme="light"] .fi-body--ownership .fi-custody-card--record { border-top: 3px solid rgba(24,140,127,.6); }
html[data-theme="light"] .fi-body--ownership .fi-custody-card--export { border-top: 3px solid rgba(184,131,22,.62); }
html[data-theme="light"] .fi-body--ownership .fi-custody-card--continuity { border-top: 3px solid rgba(54,63,87,.56); }
html[data-theme="light"] .fi-body--ownership .fi-custody-card h2 { color: var(--fi-ink); }
html[data-theme="light"] .fi-body--ownership .fi-custody-card > p,
html[data-theme="light"] .fi-body--ownership .fi-custody-specs dd { color: var(--fi-body); }
html[data-theme="light"] .fi-body--ownership .fi-custody-specs dt { color: #9b6c12; }
html[data-theme="light"] .fi-body--ownership .fi-custody-vow { background: rgba(255,252,247,.94); border-color: var(--fi-line); box-shadow: 0 12px 28px rgba(52,40,20,.045); }
html[data-theme="light"] .fi-body--ownership .fi-custody-vow strong { color: var(--fi-ink); }
html[data-theme="light"] .fi-body--ownership .fi-boundary-register article { background: rgba(255,252,247,.90); border-color: var(--fi-line); box-shadow: 0 10px 24px rgba(52,40,20,.04); }
html[data-theme="light"] .fi-body--ownership .fi-boundary-register article strong { color: var(--fi-ink); }
html[data-theme="light"] .fi-body--ownership .fi-boundary-register article p { color: var(--fi-body); }
@media (max-width: 760px) {
  .fi-decision-header--ownership .fi-decision-side { min-height: 0; }
  .fi-body--ownership .fi-custody-card { min-height: 0; }
  .fi-body--ownership .fi-custody-vow { align-items:flex-start; flex-direction:column; gap:10px; }
  .fi-body--ownership .fi-custody-vow span { white-space:normal; }
}

/* Ownership refinements: three distinct document materials sit directly on the page field. */
.fi-body--ownership .fi-custody-rail {
  gap: 14px;
  overflow: visible;
  border: 0;
  background: transparent;
}
.fi-body--ownership .fi-custody-rail::before { display: none; }
.fi-body--ownership .fi-custody-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid rgba(200,184,154,.20);
  box-shadow: 0 16px 32px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035);
}
.fi-body--ownership .fi-custody-card > * { position: relative; z-index: 1; }
.fi-body--ownership .fi-custody-card--record {
  background:
    linear-gradient(90deg, rgba(45,212,191,.10) 0 1px, transparent 1px) 22px 0 / 1px 100% no-repeat,
    radial-gradient(circle at 86% 16%, rgba(212,168,85,.14) 0 1px, transparent 1.8px) 0 0 / 58px 58px,
    linear-gradient(150deg, #20201f, #151515 78%);
}
.fi-body--ownership .fi-custody-card--export {
  background:
    repeating-linear-gradient(135deg, transparent 0 24px, rgba(45,212,191,.050) 25px 26px),
    linear-gradient(150deg, #1e1e1d, #141414 78%);
}
.fi-body--ownership .fi-custody-card--continuity {
  background:
    radial-gradient(130% 112% at 102% 103%, transparent 0 58%, rgba(212,168,85,.12) 58.5% 59%, transparent 59.5%),
    linear-gradient(90deg, rgba(212,168,85,.065) 0 1px, transparent 1px) 0 0 / 38px 100%,
    linear-gradient(150deg, #20201f, #151515 78%);
}
.fi-body--ownership .fi-boundary-register--single { grid-template-columns: minmax(0,1fr); }
.fi-body--ownership .fi-boundary-register--single article { max-width: 100%; }
html[data-theme="light"] .fi-body--ownership .fi-custody-rail { background: transparent !important; }
html[data-theme="light"] .fi-body--ownership .fi-custody-card {
  border-color: #e7dfd2 !important;
  box-shadow: 0 16px 34px rgba(52,40,20,.055), 0 1px 0 rgba(255,255,255,.95) inset !important;
}
html[data-theme="light"] .fi-body--ownership .fi-custody-card--record {
  background:
    linear-gradient(90deg, rgba(24,140,127,.22) 0 1px, transparent 1px) 22px 0 / 1px 100% no-repeat,
    radial-gradient(circle at 86% 16%, rgba(184,131,22,.15) 0 1px, transparent 1.8px) 0 0 / 58px 58px,
    linear-gradient(146deg, rgba(255,253,248,.98), rgba(248,246,241,.96)) !important;
}
html[data-theme="light"] .fi-body--ownership .fi-custody-card--export {
  background:
    repeating-linear-gradient(135deg, transparent 0 24px, rgba(24,140,127,.055) 25px 26px),
    linear-gradient(146deg, rgba(248,251,248,.98), rgba(238,247,243,.95)) !important;
}
html[data-theme="light"] .fi-body--ownership .fi-custody-card--continuity {
  background:
    radial-gradient(130% 112% at 102% 103%, transparent 0 58%, rgba(184,131,22,.13) 58.5% 59%, transparent 59.5%),
    linear-gradient(90deg, rgba(184,131,22,.075) 0 1px, transparent 1px) 0 0 / 38px 100%,
    linear-gradient(146deg, rgba(252,250,245,.98), rgba(246,242,234,.96)) !important;
}

/* Custody record: a populated, textured deed rather than a wide empty status strip. */
.fi-body--ownership .fi-custody-retention { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); gap:28px; align-items:center; min-height:158px; margin-top:18px; padding:25px 28px; overflow:hidden; border:1px solid rgba(45,212,191,.27); border-radius:18px; background:linear-gradient(90deg,rgba(45,212,191,.07),transparent 36%),linear-gradient(145deg,#1b1b1a,#141414 78%); box-shadow:0 16px 32px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.035); }
.fi-body--ownership .fi-custody-retention::before { position:absolute; z-index:0; inset:0; background:linear-gradient(90deg,transparent 0 27px,rgba(45,212,191,.06) 27px 28px,transparent 28px) 0 0 / 100% 100%,radial-gradient(110% 160% at 100% 105%,transparent 0 58%,rgba(212,168,85,.14) 58.4% 58.9%,transparent 59.3%); content:""; }
.fi-body--ownership .fi-custody-retention > * { position:relative; z-index:1; }
.fi-custody-retention__intro .fi-kicker { margin-bottom:7px; }
.fi-custody-retention__intro h2 { margin:0 0 6px; color:var(--fi-ink); font-family:"ThmanyahSerif","ThmanyahSans",Tahoma,Arial,sans-serif; font-size:clamp(24px,2.5vw,32px); font-weight:900; line-height:1.12; }
.fi-custody-retention__intro p { max-width:400px; margin:0; color:var(--fi-muted); font-size:13px; line-height:1.65; }
.fi-custody-retention__items { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin:0; }
.fi-custody-retention__items div { min-height:84px; padding:12px 13px; border:1px solid var(--fi-line); border-radius:12px; background:rgba(0,0,0,.13); }
.fi-custody-retention__items dt { display:flex; align-items:center; gap:7px; margin-bottom:8px; color:var(--fi-gold-light); font-size:11px; font-weight:900; }
.fi-custody-retention__items dt i { color:var(--fi-teal); font-size:11px; }
.fi-custody-retention__items dd { margin:0; color:var(--fi-muted); font-size:11px; line-height:1.5; }
html[data-theme="light"] .fi-body--ownership .fi-custody-retention { border-color:rgba(24,140,127,.22); background:linear-gradient(90deg,rgba(24,140,127,.10),transparent 38%),linear-gradient(145deg,rgba(238,249,245,.96),rgba(255,252,247,.98)) !important; box-shadow:0 15px 32px rgba(52,40,20,.055),0 1px 0 rgba(255,255,255,.95) inset !important; }
html[data-theme="light"] .fi-body--ownership .fi-custody-retention::before { background:linear-gradient(90deg,transparent 0 27px,rgba(24,140,127,.10) 27px 28px,transparent 28px) 0 0 / 100% 100%,radial-gradient(110% 160% at 100% 105%,transparent 0 58%,rgba(184,131,22,.14) 58.4% 58.9%,transparent 59.3%); }
html[data-theme="light"] .fi-custody-retention__intro h2 { color:var(--fi-ink); }
html[data-theme="light"] .fi-custody-retention__intro p,html[data-theme="light"] .fi-custody-retention__items dd { color:var(--fi-body); }
html[data-theme="light"] .fi-custody-retention__items div { border-color:rgba(24,140,127,.16); background:rgba(255,255,255,.66); }
html[data-theme="light"] .fi-custody-retention__items dt { color:#9b6c12; }
@media (max-width:760px) { .fi-body--ownership .fi-custody-retention { grid-template-columns:1fr; gap:17px; min-height:0; padding:22px; } .fi-custody-retention__items { grid-template-columns:1fr; } .fi-custody-retention__items div { min-height:0; } }

/* The exit guarantee belongs to the custody record, not to a separate promotional strip. */
.fi-custody-retention__items { grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:980px) and (min-width:761px) { .fi-custody-retention__items { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Workspace: a decision desk, not a landing page — one continuous paper field with three surface levels. */
.fi-body--workspace .fi-page { min-height:100vh; padding-top:46px; padding-bottom:66px; }
.fi-body--workspace .fi-page::before { position:absolute; z-index:-1; inset:0 -7vw; opacity:.42; pointer-events:none; background:linear-gradient(90deg,transparent 0 50%,rgba(212,168,85,.055) 50% 50.08%,transparent 50.08%) 0 0 / 100% 100%,repeating-linear-gradient(0deg,transparent 0 37px,rgba(212,168,85,.025) 38px 39px),repeating-linear-gradient(90deg,transparent 0 37px,rgba(45,212,191,.018) 38px 39px); content:""; }
.fi-body--workspace .fi-page > * { position:relative; z-index:1; }
.fi-body--workspace bdi { unicode-bidi:isolate; }

/* Account settings: a compact member ledger, not a public CV or a wallet. */
.fi-body--account { min-height:100vh; }
.fi-body--account .fi-account-page { position:relative; width:min(100% - 48px,1080px); min-height:100vh; padding:clamp(78px,9vw,124px) 0 76px; }
.fi-body--account .fi-account-page::before { position:absolute; z-index:-1; inset:38px -7vw 0; opacity:.7; background:repeating-linear-gradient(90deg,transparent 0 45px,rgba(212,168,85,.035) 46px 47px),linear-gradient(132deg,transparent 0 67%,rgba(45,212,191,.055) 67.2% 67.5%,transparent 67.8%); content:""; pointer-events:none; }
.fi-account-head { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:28px; }
.fi-account-head .fi-heading { max-width:700px; margin:9px 0 10px; font-size:clamp(36px,5vw,68px); line-height:1.03; }
.fi-account-head .fi-lead { max-width:680px; margin:0; }
.fi-account-workspace-link { display:inline-flex; flex:0 0 auto; align-items:center; gap:8px; min-height:40px; padding:0 13px; border:1px solid rgba(45,212,191,.30); border-radius:8px; background:rgba(45,212,191,.055); color:#c8f3ed; font-size:12px; font-weight:900; text-decoration:none; }
.fi-account-workspace-link:hover { border-color:rgba(45,212,191,.58); background:rgba(45,212,191,.10); }
.fi-account-message { margin:0 0 16px; padding:11px 13px; border:1px solid rgba(45,212,191,.28); border-radius:8px; background:rgba(45,212,191,.06); color:#c9f5ed; font-size:13px; font-weight:800; }
.fi-account-message.is-error { border-color:rgba(224,105,92,.35); background:rgba(224,105,92,.08); color:#ffd7d1; }
.fi-account-grid { display:grid; grid-template-columns:minmax(230px,.72fr) minmax(0,1.55fr); gap:18px; align-items:stretch; }
.fi-account-record,.fi-account-form { position:relative; overflow:hidden; border:1px solid rgba(212,168,85,.22); border-radius:14px; background:linear-gradient(145deg,rgba(22,30,29,.96),rgba(15,18,18,.96)); box-shadow:0 18px 42px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.045); }
.fi-account-record { display:flex; flex-direction:column; align-items:flex-start; min-height:325px; padding:27px; }
.fi-account-record::before,.fi-account-form::before { position:absolute; inset:0; opacity:.7; content:""; pointer-events:none; }
.fi-account-record::before { background:radial-gradient(120% 100% at 100% 0,transparent 0 55%,rgba(212,168,85,.10) 55.4% 55.9%,transparent 56.3%),repeating-linear-gradient(0deg,transparent 0 34px,rgba(45,212,191,.045) 35px 36px); }
.fi-account-record > *,.fi-account-form > * { position:relative; z-index:1; }
.fi-account-record__mark { display:grid; width:46px; height:46px; place-items:center; border:1px solid rgba(212,168,85,.34); border-radius:50%; color:var(--fi-gold-light); font-size:17px; }
.fi-account-record__eyebrow { margin:25px 0 6px; color:rgba(212,168,85,.78); font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.fi-account-record > strong { color:#fffdf9; font-size:20px; font-weight:900; }
.fi-account-record__email { margin-top:5px; color:rgba(235,229,218,.60); font-size:12px; overflow-wrap:anywhere; }
.fi-account-record__institution { display:flex; align-items:center; gap:10px; width:100%; margin-top:auto; padding-top:18px; border-top:1px solid rgba(212,168,85,.17); color:var(--fi-teal); }
.fi-account-record__institution span { display:grid; gap:2px; }
.fi-account-record__institution small { color:rgba(235,229,218,.52); font-size:10px; font-weight:800; }
.fi-account-record__institution b { color:#fffdf9; font-size:13px; }
.fi-account-form { min-height:325px; padding:29px; }
.fi-account-form::before { background:linear-gradient(110deg,transparent 0 71%,rgba(45,212,191,.07) 71.3% 71.65%,transparent 72%),repeating-linear-gradient(135deg,transparent 0 39px,rgba(212,168,85,.03) 40px 41px); }
.fi-account-form__head { max-width:630px; }
.fi-account-form__head p { margin:10px 0 24px; color:rgba(235,229,218,.66); font-size:14px; line-height:1.75; }
.fi-account-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.fi-account-fields label { display:grid; gap:7px; color:rgba(235,229,218,.70); font-size:12px; font-weight:800; }
.fi-account-fields input { width:100%; height:44px; padding:0 12px; border:1px solid rgba(212,168,85,.20); border-radius:7px; outline:0; background:rgba(0,0,0,.16); color:#fffdf9; font-family:ThmanyahSans,sans-serif; font-size:14px; }
.fi-account-fields input:focus { border-color:rgba(45,212,191,.62); box-shadow:0 0 0 3px rgba(45,212,191,.08); }
.fi-account-fields input[readonly] { color:rgba(235,229,218,.52); cursor:not-allowed; }
.fi-account-fields .fi-account-email { grid-column:1 / -1; }
.fi-account-save { display:inline-flex; width:auto; min-height:42px; margin-top:23px; padding-inline:17px; border-radius:7px; }
html[data-theme="light"] .fi-body--account .fi-account-page::before { background:repeating-linear-gradient(90deg,transparent 0 45px,rgba(184,131,22,.045) 46px 47px),linear-gradient(132deg,transparent 0 67%,rgba(24,140,127,.055) 67.2% 67.5%,transparent 67.8%); }
html[data-theme="light"] .fi-account-workspace-link { border-color:rgba(24,140,127,.30); background:rgba(24,140,127,.06); color:#166b62; }
html[data-theme="light"] .fi-account-message { border-color:rgba(24,140,127,.25); background:rgba(24,140,127,.06); color:#175f58; }
html[data-theme="light"] .fi-account-record,html[data-theme="light"] .fi-account-form { border-color:rgba(116,88,39,.18); background:linear-gradient(145deg,rgba(255,252,247,.98),rgba(246,240,229,.98)); box-shadow:0 18px 42px rgba(70,50,20,.075),inset 0 1px 0 rgba(255,255,255,.94); }
html[data-theme="light"] .fi-account-record::before { background:radial-gradient(120% 100% at 100% 0,transparent 0 55%,rgba(184,131,22,.10) 55.4% 55.9%,transparent 56.3%),repeating-linear-gradient(0deg,transparent 0 34px,rgba(24,140,127,.045) 35px 36px); }
html[data-theme="light"] .fi-account-form::before { background:linear-gradient(110deg,transparent 0 71%,rgba(24,140,127,.07) 71.3% 71.65%,transparent 72%),repeating-linear-gradient(135deg,transparent 0 39px,rgba(184,131,22,.03) 40px 41px); }
html[data-theme="light"] .fi-account-record > strong,html[data-theme="light"] .fi-account-record__institution b { color:#2f2922; }
html[data-theme="light"] .fi-account-record__email,html[data-theme="light"] .fi-account-form__head p,html[data-theme="light"] .fi-account-fields label { color:#6d6257; }
html[data-theme="light"] .fi-account-fields input { border-color:rgba(116,88,39,.20); background:rgba(255,255,255,.78); color:#2f2922; }
@media (max-width:760px) { .fi-body--account .fi-account-page { width:min(100% - 28px,620px); padding-top:58px; } .fi-account-head { align-items:flex-start; flex-direction:column; gap:18px; } .fi-account-head .fi-heading { font-size:clamp(34px,10vw,48px); } .fi-account-grid { grid-template-columns:1fr; } .fi-account-record { min-height:240px; } .fi-account-form { padding:23px 19px; } .fi-account-fields { grid-template-columns:1fr; } .fi-account-fields .fi-account-email { grid-column:auto; } .fi-account-save { width:100%; justify-content:center; } }
.fi-body--workspace .fi-work-head--strip { align-items:center; gap:18px; }
.fi-body--workspace .fi-work-head .fi-heading { margin:5px 0 1px; font-family:"ThmanyahSerif","ThmanyahSans",Tahoma,Arial,sans-serif; font-size:clamp(34px,4vw,52px); line-height:1; }
.fi-body--workspace .fi-work-subtitle { font-size:12px; }
.fi-body--workspace .fi-rule { margin:22px 0 26px; }
.fi-body--workspace .fi-work-nav { padding:5px; border-radius:13px; background:rgba(12,16,18,.24); }
.fi-body--workspace .fi-work-nav a { padding:7px 10px; }
.fi-work-primary { position:relative; isolation:isolate; }
.fi-work-primary::before { position:absolute; z-index:-1; width:min(78vw,820px); height:260px; top:50%; left:50%; border-radius:50%; opacity:.34; transform:translate(-50%,-50%); background:radial-gradient(ellipse,rgba(45,212,191,.10),transparent 67%); content:""; pointer-events:none; }
.fi-body--workspace .fi-work-primary .fi-panel { position:relative; overflow:hidden; border:1px solid rgba(200,184,154,.22); border-inline-start:2px solid var(--fi-teal); border-radius:18px; background:rgba(24,26,25,.70); box-shadow:0 20px 42px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.035); }
.fi-body--workspace .fi-work-primary .fi-panel::before { position:absolute; inset:0; opacity:.42; background:linear-gradient(130deg,transparent 0 61%,rgba(45,212,191,.065) 61.2% 61.4%,transparent 61.7%),radial-gradient(130% 105% at 100% 100%,transparent 0 57%,rgba(212,168,85,.10) 57.3% 57.7%,transparent 58%); content:""; pointer-events:none; }
.fi-body--workspace .fi-work-primary .fi-panel__body { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:19px 28px; align-items:end; min-height:214px; padding:26px 30px; }
.fi-work-primary__head { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.fi-work-primary__body { display:grid; grid-template-columns:52px minmax(0,1fr); gap:15px; align-items:center; min-width:0; }
.fi-work-primary__body .fi-kicker { margin-bottom:5px; }
.fi-work-primary__body .fi-live-title { margin:0 0 6px; font-size:clamp(28px,3.4vw,42px); }
.fi-work-primary__body .fi-live-copy { max-width:760px; }
.fi-work-primary__facts { display:flex; flex-wrap:wrap; gap:8px; grid-column:1; margin:0; }
.fi-work-primary__facts div { display:flex; align-items:baseline; gap:7px; padding:7px 10px; border:1px solid var(--fi-line); border-radius:9px; background:rgba(0,0,0,.12); }
.fi-work-primary__facts dt { color:var(--fi-soft); font-size:10px; font-weight:800; }
.fi-work-primary__facts dd { margin:0; color:var(--fi-ink); font-size:11px; font-weight:900; }
.fi-work-primary__action { grid-column:2; grid-row:2 / span 2; align-self:center; white-space:nowrap; }
.fi-work-start__mark { display:grid; width:50px; height:50px; place-items:center; border:1px solid rgba(212,168,85,.32); border-radius:50%; background:rgba(212,168,85,.055); color:var(--fi-gold-light); font-size:16px; box-shadow:0 0 0 8px rgba(212,168,85,.025); }
.fi-work-primary .fi-pulse { color:#c7f4ec; }
.fi-work-archive { margin-top:33px; }
.fi-body--workspace .fi-work-archive .fi-section-bar { margin-bottom:13px; }
.fi-archive-list { display:grid; gap:8px; }
.fi-archive-entry { display:grid; grid-template-columns:35px minmax(0,1fr) 33px; gap:13px; align-items:center; min-height:82px; padding:13px 15px; border:1px solid rgba(200,184,154,.18); border-radius:14px; background:rgba(24,26,25,.38); transition:transform .16s cubic-bezier(.23,1,.32,1),border-color .16s ease; }
.fi-archive-entry:hover { border-color:rgba(45,212,191,.40); transform:translateY(-1px); }
.fi-archive-entry__index { display:grid; width:30px; height:30px; place-items:center; border:1px solid rgba(212,168,85,.22); border-radius:50%; color:var(--fi-gold-light); font-size:10px; font-weight:900; }
.fi-archive-entry__body { min-width:0; }
.fi-archive-entry__body > span { display:block; margin-bottom:2px; color:var(--fi-soft); font-size:10px; font-weight:800; }
.fi-archive-entry__body a { display:block; overflow:hidden; color:var(--fi-ink); font-size:14px; font-weight:900; line-height:1.45; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
.fi-archive-entry__body a:hover { color:var(--fi-teal); }
.fi-archive-entry__outcome { display:flex; flex-wrap:wrap; gap:6px 12px; margin-top:5px; color:var(--fi-soft); font-size:10px; }
.fi-archive-entry__outcome bdi { color:var(--fi-gold-light); font-weight:900; }
.fi-archive-entry__deduction { display:flex; align-items:baseline; gap:7px; margin:5px 0 0; overflow:hidden; color:var(--fi-soft); font-size:10px; line-height:1.45; white-space:nowrap; }
.fi-archive-entry__deduction strong { flex:0 0 auto; color:var(--fi-teal); }
.fi-archive-entry__deduction span { overflow:hidden; text-overflow:ellipsis; }
.fi-archive-entry__open { display:grid; width:31px; height:31px; place-items:center; border:1px solid rgba(45,212,191,.22); border-radius:9px; color:var(--fi-teal); text-decoration:none; font-size:11px; }
.fi-archive-entry__open:hover { border-color:rgba(45,212,191,.52); background:rgba(45,212,191,.07); }
.fi-work-team { margin-top:31px; padding:19px 21px; border:1px solid rgba(200,184,154,.18); border-radius:15px; background:rgba(24,26,25,.34); }
.fi-work-team__head,.fi-work-team__row { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.fi-work-team__head .fi-section-title { margin:5px 0 0; font-size:24px; }
.fi-work-team__count { flex:0 0 auto; padding:6px 9px; border:1px solid var(--fi-line); border-radius:9px; color:var(--fi-soft); font-size:10px; }
.fi-work-team__count bdi { color:var(--fi-gold-light); font-weight:900; }
.fi-work-team__row { margin-top:15px; padding-top:14px; border-top:1px solid var(--fi-line); }
.fi-work-team__members { display:grid; gap:8px; margin:17px 0; }
.fi-work-owner { display:flex; align-items:center; gap:10px; min-width:0; }
.fi-work-owner__mark { display:grid; width:32px; height:32px; place-items:center; border:1px solid rgba(212,168,85,.28); border-radius:50%; color:var(--fi-gold-light); font-size:11px; }
.fi-work-owner strong,.fi-work-owner span { display:block; }
.fi-work-owner strong { overflow:hidden; color:var(--fi-ink); font-size:13px; font-weight:900; text-overflow:ellipsis; white-space:nowrap; }
.fi-work-owner span { margin-top:2px; color:var(--fi-soft); font-size:10px; }
.fi-work-team .fi-text-link,.fi-work-archive .fi-text-link { display:inline-flex; align-items:center; gap:7px; font-size:12px; }
.fi-work-archive--full { margin-top:0; }
.fi-work-archive--full .fi-section-copy { max-width:640px; }
html[data-theme="light"] .fi-body--workspace .fi-page::before { opacity:.72; background:linear-gradient(90deg,transparent 0 50%,rgba(184,131,22,.08) 50% 50.08%,transparent 50.08%) 0 0 / 100% 100%,repeating-linear-gradient(0deg,transparent 0 37px,rgba(184,131,22,.03) 38px 39px),repeating-linear-gradient(90deg,transparent 0 37px,rgba(24,140,127,.026) 38px 39px); }
html[data-theme="light"] .fi-work-primary::before { background:radial-gradient(ellipse,rgba(24,140,127,.10),transparent 67%); }
html[data-theme="light"] .fi-body--workspace .fi-work-primary .fi-panel { border-color:rgba(24,140,127,.26); border-inline-start-color:#188c7f; background:rgba(255,253,248,.76) !important; box-shadow:0 17px 34px rgba(52,40,20,.07),inset 0 1px 0 rgba(255,255,255,.95) !important; }
html[data-theme="light"] .fi-body--workspace .fi-work-primary .fi-panel::before { background:linear-gradient(130deg,transparent 0 61%,rgba(24,140,127,.07) 61.2% 61.4%,transparent 61.7%),radial-gradient(130% 105% at 100% 100%,transparent 0 57%,rgba(184,131,22,.10) 57.3% 57.7%,transparent 58%); }
html[data-theme="light"] .fi-work-primary__facts div,html[data-theme="light"] .fi-archive-entry,html[data-theme="light"] .fi-work-team { border-color:rgba(102,88,58,.17); background:rgba(255,253,248,.58); box-shadow:none; }
html[data-theme="light"] .fi-work-primary__facts dd,html[data-theme="light"] .fi-archive-entry__body a,html[data-theme="light"] .fi-work-owner strong { color:var(--fi-ink); }
html[data-theme="light"] .fi-work-primary__facts dt,html[data-theme="light"] .fi-archive-entry__body > span,html[data-theme="light"] .fi-archive-entry__outcome,html[data-theme="light"] .fi-archive-entry__deduction,html[data-theme="light"] .fi-work-owner span,html[data-theme="light"] .fi-work-team__count { color:var(--fi-body); }
html[data-theme="light"] .fi-archive-entry__outcome bdi,html[data-theme="light"] .fi-work-team__count bdi { color:#9b6c12; }
html[data-theme="light"] .fi-archive-entry__deduction strong,html[data-theme="light"] .fi-archive-entry__open { color:#16776c; }
@media (prefers-reduced-transparency: reduce) { .fi-body--workspace .fi-work-primary .fi-panel,.fi-body--workspace .fi-archive-entry,.fi-body--workspace .fi-work-team { background:#1a1b19 !important; } html[data-theme="light"] .fi-body--workspace .fi-work-primary .fi-panel,html[data-theme="light"] .fi-body--workspace .fi-archive-entry,html[data-theme="light"] .fi-body--workspace .fi-work-team { background:#fffdf8 !important; } }
@media (max-width:700px) { .fi-body--workspace .fi-page { padding-top:28px; padding-bottom:48px; } .fi-body--workspace .fi-work-head--strip { gap:14px; } .fi-body--workspace .fi-work-head .fi-heading { font-size:clamp(31px,10vw,43px); } .fi-body--workspace .fi-rule { margin:17px 0 20px; } .fi-work-primary .fi-panel__body { grid-template-columns:1fr; min-height:0; padding:21px; } .fi-work-primary__head,.fi-work-primary__body,.fi-work-primary__facts,.fi-work-primary__action { grid-column:1; grid-row:auto; } .fi-work-primary__body { grid-template-columns:43px minmax(0,1fr); gap:12px; } .fi-work-start__mark { width:43px; height:43px; } .fi-work-primary__action { width:100%; margin-top:2px; } .fi-archive-entry { grid-template-columns:31px minmax(0,1fr) 30px; gap:10px; min-height:0; padding:12px; } .fi-archive-entry__body a { white-space:normal; } .fi-archive-entry__deduction { white-space:normal; } .fi-archive-entry__deduction span { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; } .fi-work-team { padding:17px; } .fi-work-team__head,.fi-work-team__row { align-items:flex-start; flex-direction:column; gap:11px; } .fi-work-team__row .fi-text-link { align-self:flex-start; } }
@media (max-width: 760px) {
  html[data-theme="light"] .fi-body--access .fi-access-grid > section:first-child {
    padding: 22px 20px 20px;
    border-radius: 18px;
  }
  html[data-theme="light"] .fi-body--access .fi-protocol__item {
    grid-template-columns: 36px minmax(0,1fr);
    gap: 12px;
    padding: 15px 0;
  }
  html[data-theme="light"] .fi-body--access .fi-protocol__index {
    width: 36px;
    height: 36px;
  }
  html[data-theme="light"] .fi-body--pricing .fi-licence-slab {
    gap: 14px;
  }
  html[data-theme="light"] .fi-body--pricing .fi-price-field,
  html[data-theme="light"] .fi-body--pricing .fi-scope-field {
    min-height: 0;
  }
  html[data-theme="light"] .fi-body--pricing .fi-price-field {
    padding: 20px;
  }
  html[data-theme="light"] .fi-body--pricing .fi-scope-field-header,
  html[data-theme="light"] .fi-body--pricing .fi-scope-line {
    padding-inline: 18px;
  }
}

/* Workspace redesign: a compact institutional command surface with readable decision files. */
.fi-body--workspace .fi-work-grid { grid-template-columns: minmax(0,1.34fr) minmax(295px,.66fr); gap: 20px; }
.fi-body--workspace .fi-work-start,
.fi-body--workspace .fi-work-ownership,
.fi-body--workspace .fi-work-active-session { position:relative; isolation:isolate; overflow:hidden; }
.fi-body--workspace .fi-work-start .fi-panel__body { display:grid; grid-template-columns:58px minmax(0,1fr) auto; gap:18px; align-items:center; min-height:244px; padding:27px 30px; }
.fi-work-start::before { position:absolute; z-index:0; inset:0; background:radial-gradient(150% 130% at 100% 100%, transparent 0 55%, rgba(45,212,191,.10) 55.4% 55.9%, transparent 56.3%), linear-gradient(90deg, transparent 0 31px, rgba(212,168,85,.07) 31px 32px, transparent 32px) 0 34px / 100% 1px no-repeat; content:""; }
.fi-work-start::after { position:absolute; z-index:0; top:22px; right:24px; width:116px; height:116px; border:1px solid rgba(212,168,85,.16); border-radius:50%; box-shadow:0 0 0 20px rgba(212,168,85,.022),0 0 0 40px rgba(212,168,85,.012); content:""; }
.fi-work-start .fi-panel__body > * { position:relative; z-index:1; }
.fi-work-start__mark { display:grid; width:56px; height:56px; place-items:center; border:1px solid rgba(212,168,85,.34); border-radius:50%; background:rgba(212,168,85,.055); color:var(--fi-gold-light); box-shadow:0 0 0 8px rgba(212,168,85,.025); font-size:19px; }
.fi-work-start__copy .fi-kicker { margin-bottom:5px; }
.fi-work-start__copy .fi-live-title { margin:0 0 7px; }
.fi-work-start__copy .fi-live-copy { max-width:535px; }
.fi-work-start__action { align-self:end; white-space:nowrap; }
.fi-body--workspace .fi-work-active-session { background:repeating-linear-gradient(135deg, transparent 0 25px, rgba(45,212,191,.032) 26px 27px),linear-gradient(145deg,#1c1c1a,#141414 76%); }
.fi-work-ownership-column { align-self:start; }
.fi-body--workspace .fi-work-ownership .fi-panel__body { min-height:244px; padding:25px 25px 21px; }
.fi-work-ownership::before { position:absolute; z-index:0; inset:0; background:radial-gradient(125% 100% at 100% 0, transparent 0 59%, rgba(212,168,85,.11) 59.4% 59.9%, transparent 60.3%),linear-gradient(90deg, rgba(45,212,191,.08) 0 1px, transparent 1px) 0 0 / 31px 100%; content:""; }
.fi-work-ownership .fi-panel__body > * { position:relative; z-index:1; }
.fi-work-ownership__head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.fi-work-ownership__seal { display:grid; width:28px; height:28px; place-items:center; border:1px solid rgba(45,212,191,.25); border-radius:50%; color:var(--fi-teal); font-size:11px; }
.fi-work-ownership .fi-section-title { margin:15px 0 12px; }
.fi-work-owner { display:flex; align-items:center; gap:11px; padding:11px 12px; border:1px solid var(--fi-line); border-radius:13px; background:rgba(0,0,0,.13); }
.fi-work-owner__mark { display:grid; width:33px; height:33px; place-items:center; border:1px solid rgba(212,168,85,.30); border-radius:50%; color:var(--fi-gold-light); font-size:12px; }
.fi-work-owner strong,.fi-work-owner span { display:block; }
.fi-work-owner strong { color:var(--fi-ink); font-size:13px; font-weight:900; }
.fi-work-owner span { margin-top:2px; color:var(--fi-soft); font-size:11px; }
.fi-work-ownership__foot { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:15px; padding-top:12px; border-top:1px solid var(--fi-line); color:var(--fi-soft); font-size:11px; }
.fi-work-ownership__foot .fi-text-link { display:inline-flex; align-items:center; gap:6px; font-size:12px; }
.fi-work-archive { margin-top:24px; }
.fi-body--workspace .fi-work-archive .fi-section-bar { margin-bottom:12px; }
.fi-archive-panel .fi-panel__body { padding:29px; }
.fi-archive-panel__head { display:flex; align-items:flex-start; justify-content:space-between; gap:22px; margin-bottom:23px; }
.fi-archive-panel__head .fi-live-title { margin:10px 0 6px; }
.fi-archive-panel__seal { display:grid; flex:0 0 auto; width:48px; height:48px; place-items:center; border:1px solid rgba(212,168,85,.30); border-radius:50%; color:var(--fi-gold-light); box-shadow:0 0 0 8px rgba(212,168,85,.025); }
.fi-archive-list { display:grid; gap:10px; }
.fi-archive-entry { display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:14px; align-items:center; min-height:82px; padding:14px 16px; border:1px solid var(--fi-line); border-radius:14px; background:rgba(0,0,0,.12); transition:border-color .16s ease,transform .16s cubic-bezier(.23,1,.32,1),box-shadow .16s ease; }
.fi-archive-entry:hover { border-color:rgba(212,168,85,.42); box-shadow:0 12px 24px rgba(0,0,0,.14); transform:translateY(-2px); }
.fi-archive-entry__index { display:grid; width:32px; height:32px; place-items:center; border:1px solid rgba(212,168,85,.22); border-radius:50%; color:var(--fi-gold-light); font-size:10px; font-weight:900; }
.fi-archive-entry__body { min-width:0; }
.fi-archive-entry__body > span { display:block; margin-bottom:3px; color:var(--fi-soft); font-size:10px; font-weight:800; }
.fi-archive-entry__body a { display:block; overflow:hidden; color:var(--fi-ink); font-size:14px; font-weight:900; line-height:1.5; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
.fi-archive-entry__body a:hover { color:var(--fi-gold-light); }
.fi-archive-entry__open { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:32px; padding:7px 10px; border:1px solid rgba(45,212,191,.24); border-radius:9px; color:#c7f4ec; font-size:10px; font-weight:900; text-decoration:none; white-space:nowrap; }
.fi-archive-entry__open:hover { border-color:rgba(45,212,191,.55); background:rgba(45,212,191,.08); }
.fi-archive-list--compact .fi-archive-entry { min-height:72px; padding:11px 14px; }
html[data-theme="light"] .fi-body--workspace .fi-work-start,
html[data-theme="light"] .fi-body--workspace .fi-work-ownership,
html[data-theme="light"] .fi-body--workspace .fi-work-active-session { border-color:var(--fi-line) !important; box-shadow:0 18px 42px rgba(52,40,20,.075),0 1px 0 rgba(255,255,255,.92) inset !important; }
html[data-theme="light"] .fi-body--workspace .fi-work-start { background:radial-gradient(150% 130% at 100% 100%, transparent 0 55%, rgba(24,140,127,.13) 55.4% 55.9%, transparent 56.3%),linear-gradient(90deg, transparent 0 31px, rgba(184,131,22,.10) 31px 32px, transparent 32px) 0 34px / 100% 1px no-repeat,linear-gradient(145deg,rgba(238,249,245,.96),rgba(255,252,247,.98)) !important; }
html[data-theme="light"] .fi-work-start::before,html[data-theme="light"] .fi-work-start::after { display:none; }
html[data-theme="light"] .fi-body--workspace .fi-work-ownership { background:radial-gradient(125% 100% at 100% 0, transparent 0 59%, rgba(184,131,22,.13) 59.4% 59.9%, transparent 60.3%),linear-gradient(90deg, rgba(24,140,127,.10) 0 1px, transparent 1px) 0 0 / 31px 100%,linear-gradient(145deg,rgba(255,249,233,.97),rgba(255,252,247,.98)) !important; }
html[data-theme="light"] .fi-work-ownership::before { display:none; }
html[data-theme="light"] .fi-work-start__mark { border-color:rgba(184,131,22,.30); background:rgba(255,252,247,.86); color:#a97310; }
html[data-theme="light"] .fi-work-owner,html[data-theme="light"] .fi-archive-entry { border-color:var(--fi-line); background:rgba(255,255,255,.68); }
html[data-theme="light"] .fi-work-owner strong,html[data-theme="light"] .fi-archive-entry__body a { color:var(--fi-ink); }
html[data-theme="light"] .fi-work-owner span,html[data-theme="light"] .fi-work-ownership__foot,html[data-theme="light"] .fi-archive-entry__body > span { color:var(--fi-body); }
html[data-theme="light"] .fi-archive-entry__open { border-color:rgba(24,140,127,.24); background:rgba(24,140,127,.06); color:#16776c; }
html[data-theme="light"] .fi-archive-panel { background:linear-gradient(145deg,rgba(248,246,255,.97),rgba(255,252,247,.98)) !important; border-color:rgba(160,140,204,.23) !important; }
@media (max-width: 880px) {
  .fi-body--workspace .fi-work-grid { grid-template-columns:1fr; }
  .fi-work-ownership-column { order:-1; }
}
@media (max-width: 700px) {
  .fi-body--workspace .fi-work-start .fi-panel__body { grid-template-columns:48px minmax(0,1fr); gap:14px; min-height:0; padding:22px; }
  .fi-work-start__mark { width:46px; height:46px; }
  .fi-work-start__action { grid-column:1 / -1; width:100%; }
  .fi-archive-panel .fi-panel__body { padding:21px; }
  .fi-archive-panel__head { margin-bottom:17px; }
  .fi-archive-panel__seal { width:40px; height:40px; }
  .fi-archive-entry { grid-template-columns:32px minmax(0,1fr); gap:11px; min-height:0; padding:12px; }
  .fi-archive-entry__open { grid-column:2; justify-self:start; min-height:28px; padding:5px 8px; }
  .fi-archive-entry__body a { white-space:normal; }
}

/* Workspace surface correction: legacy grid rules made the starting-point copy collapse to a narrow column. */
.fi-body--workspace .fi-work-primary .fi-work-start .fi-panel__body { display:flex !important; align-items:center; justify-content:space-between; gap:clamp(18px,4vw,54px); min-height:232px; padding:clamp(24px,3vw,38px); }
.fi-body--workspace .fi-work-primary .fi-work-start .fi-work-primary__body { display:grid; grid-template-columns:54px minmax(0,1fr); flex:1 1 auto; max-width:820px; gap:17px; }
.fi-body--workspace .fi-work-primary .fi-work-start .fi-work-primary__body > div { min-width:0; }
.fi-body--workspace .fi-work-primary .fi-work-start .fi-live-title { max-width:660px; overflow-wrap:anywhere; }
.fi-body--workspace .fi-work-primary .fi-work-start .fi-live-copy { max-width:620px; overflow-wrap:anywhere; }
.fi-body--workspace .fi-work-primary .fi-work-start .fi-work-primary__action { flex:0 0 auto; width:auto; margin:0; }
.fi-body--workspace .fi-work-primary .fi-work-start::before { position:absolute; z-index:0; inset:0; opacity:.78; background:repeating-linear-gradient(90deg,transparent 0 41px,rgba(212,168,85,.055) 42px 43px),linear-gradient(145deg,transparent 0 57%,rgba(45,212,191,.075) 57.2% 57.45%,transparent 57.7%),radial-gradient(108% 118% at 0 100%,transparent 0 60%,rgba(212,168,85,.09) 60.4% 60.9%,transparent 61.3%); content:""; pointer-events:none; }
.fi-body--workspace .fi-work-primary .fi-work-start .fi-panel__body > * { position:relative; z-index:1; }
.fi-body--workspace .fi-archive-entry,.fi-body--workspace .fi-work-team { background-image:repeating-linear-gradient(135deg,transparent 0 25px,rgba(212,168,85,.022) 26px 27px),linear-gradient(100deg,transparent 0 72%,rgba(45,212,191,.04) 72.2% 72.5%,transparent 72.8%); }
html[data-theme="light"] .fi-body--workspace .fi-work-primary .fi-work-start::before { opacity:1; background:repeating-linear-gradient(90deg,transparent 0 41px,rgba(184,131,22,.055) 42px 43px),linear-gradient(145deg,transparent 0 57%,rgba(24,140,127,.07) 57.2% 57.45%,transparent 57.7%),radial-gradient(108% 118% at 0 100%,transparent 0 60%,rgba(184,131,22,.09) 60.4% 60.9%,transparent 61.3%); }
html[data-theme="light"] .fi-body--workspace .fi-archive-entry,html[data-theme="light"] .fi-body--workspace .fi-work-team { background-image:repeating-linear-gradient(135deg,transparent 0 25px,rgba(184,131,22,.035) 26px 27px),linear-gradient(100deg,transparent 0 72%,rgba(24,140,127,.045) 72.2% 72.5%,transparent 72.8%); }
@media (max-width:700px) { .fi-body--workspace .fi-work-primary .fi-work-start .fi-panel__body { display:block !important; min-height:0; padding:25px 22px 22px; } .fi-body--workspace .fi-work-primary .fi-work-start .fi-work-primary__body { grid-template-columns:44px minmax(0,1fr); gap:13px; max-width:none; } .fi-body--workspace .fi-work-primary .fi-work-start .fi-live-title { font-size:clamp(30px,10vw,42px); line-height:1.18; } .fi-body--workspace .fi-work-primary .fi-work-start .fi-live-copy { margin-top:8px; font-size:15px; line-height:1.75; } .fi-body--workspace .fi-work-primary .fi-work-start .fi-work-primary__action { display:flex; width:100%; margin-top:22px; } }

/* New institutional session: the question is the first usable object, not the end of a landing-page procession. */
.fi-body--onboarding .fi-page { padding-top:48px; }
.fi-onboard-head { margin:0 0 12px; }
.fi-onboard-head .fi-kicker { margin:0; }
.fi-body--onboarding .fi-onboard-grid--single { max-width:900px; }
.fi-body--onboarding .fi-stage-rail--compact { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; margin:0 0 14px; overflow:hidden; border-radius:13px; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage { display:flex; align-items:center; justify-content:flex-start; gap:8px; min-height:52px; padding:10px 12px; background:rgba(20,22,22,.66); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { position:static; flex:0 0 auto; color:var(--fi-gold); font-size:10px; letter-spacing:.04em; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage strong { margin:0; font-size:12px; line-height:1.25; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage > span:last-child { display:none; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current { box-shadow:inset 0 -2px 0 var(--fi-teal); }
[dir="rtl"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current { box-shadow:inset 0 -2px 0 var(--fi-teal); }
.fi-body--onboarding .fi-example-list--chips { display:flex; flex-wrap:wrap; gap:8px; margin:15px 0 14px; }
.fi-body--onboarding .fi-example-list--chips .fi-example { width:auto; max-width:100%; align-items:center; padding:8px 11px; border-radius:999px; background:rgba(242,237,226,.045); font-size:12px; }
.fi-body--onboarding .fi-example-list--chips .fi-example span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.fi-body--onboarding .fi-onboard-next { display:inline-flex; width:auto; margin-top:16px; padding-inline:18px; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage { background:rgba(255,252,247,.78); }
html[data-theme="light"] .fi-body--onboarding .fi-example-list--chips .fi-example { border-color:rgba(150,108,40,.22); background:rgba(255,253,248,.75); color:var(--fi-body); }
html[data-theme="light"] .fi-body--onboarding .fi-example-list--chips .fi-example:hover { border-color:rgba(24,140,127,.42); background:rgba(24,140,127,.07); color:var(--fi-ink); }
@media (max-width:620px) { .fi-body--onboarding .fi-page { padding-top:30px; } .fi-body--onboarding .fi-stage-rail--compact { grid-template-columns:repeat(4,minmax(0,1fr)) !important; margin-bottom:12px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage { min-height:48px; gap:4px; padding:8px 6px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { font-size:9px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage strong { font-size:10px; overflow-wrap:anywhere; } .fi-body--onboarding .fi-example-list--chips { gap:6px; margin:13px 0; } .fi-body--onboarding .fi-example-list--chips .fi-example { width:100%; justify-content:flex-start; } .fi-body--onboarding .fi-onboard-next { width:100%; justify-content:center; } }

/* Each session step is its own material; the rail itself stays transparent. */
.fi-body--onboarding .fi-stage-rail--compact { gap:8px; overflow:visible; border:0; border-radius:0; background:transparent; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage { position:relative; overflow:hidden; border:1px solid rgba(200,184,154,.18); border-radius:11px; box-shadow:0 8px 18px rgba(0,0,0,.08); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage::before { position:absolute; inset:0; opacity:.72; content:""; pointer-events:none; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage > * { position:relative; z-index:1; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(1) { background:linear-gradient(145deg,#172725,#141817); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(1)::before { background:radial-gradient(120% 160% at 100% 100%,transparent 0 57%,rgba(45,212,191,.15) 57.4% 58%,transparent 58.4%),repeating-linear-gradient(90deg,transparent 0 18px,rgba(45,212,191,.055) 19px 20px); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(2) { background:linear-gradient(145deg,#26211a,#171615); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(2)::before { background:radial-gradient(circle at 100% 0,transparent 0 24px,rgba(212,168,85,.12) 24.5px 25.5px,transparent 26px),repeating-linear-gradient(135deg,transparent 0 16px,rgba(212,168,85,.052) 17px 18px); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(3) { background:linear-gradient(145deg,#1d2021,#151616); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(3)::before { background:linear-gradient(90deg,transparent 0 70%,rgba(200,184,154,.075) 70.4% 70.8%,transparent 71.2%),repeating-linear-gradient(0deg,transparent 0 13px,rgba(200,184,154,.032) 14px 15px); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(4) { background:linear-gradient(145deg,#162321,#171615); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(4)::before { background:linear-gradient(135deg,transparent 0 56%,rgba(45,212,191,.10) 56.3% 56.8%,transparent 57.1%),radial-gradient(90% 130% at 0 100%,transparent 0 62%,rgba(212,168,85,.11) 62.5% 63%,transparent 63.5%); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current { border-color:rgba(45,212,191,.52); box-shadow:inset 0 -2px 0 var(--fi-teal),0 8px 19px rgba(0,0,0,.12); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage { border-color:rgba(150,108,40,.20); box-shadow:0 8px 18px rgba(77,53,15,.055); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(1) { background:linear-gradient(145deg,#edf8f4,#fffaf2); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(2) { background:linear-gradient(145deg,#fff6df,#fffaf2); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(3) { background:linear-gradient(145deg,#f3f1ed,#fffaf2); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(4) { background:linear-gradient(145deg,#eef8f5,#fff6e5); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(1)::before { background:radial-gradient(120% 160% at 100% 100%,transparent 0 57%,rgba(24,140,127,.12) 57.4% 58%,transparent 58.4%),repeating-linear-gradient(90deg,transparent 0 18px,rgba(24,140,127,.047) 19px 20px); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(2)::before { background:radial-gradient(circle at 100% 0,transparent 0 24px,rgba(184,131,22,.11) 24.5px 25.5px,transparent 26px),repeating-linear-gradient(135deg,transparent 0 16px,rgba(184,131,22,.045) 17px 18px); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(3)::before { background:linear-gradient(90deg,transparent 0 70%,rgba(102,88,58,.06) 70.4% 70.8%,transparent 71.2%),repeating-linear-gradient(0deg,transparent 0 13px,rgba(102,88,58,.026) 14px 15px); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage:nth-child(4)::before { background:linear-gradient(135deg,transparent 0 56%,rgba(24,140,127,.075) 56.3% 56.8%,transparent 57.1%),radial-gradient(90% 130% at 0 100%,transparent 0 62%,rgba(184,131,22,.09) 62.5% 63%,transparent 63.5%); }
@media (max-width:620px) { .fi-body--onboarding .fi-stage-rail--compact { gap:5px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage { border-radius:9px; } }

/* Isolated step cards: no shared rail material, no connected wallpaper. */
.fi-body--onboarding .fi-stage-rail--compact { display:grid; gap:10px; overflow:visible; border:0 !important; border-radius:0; background:transparent !important; box-shadow:none !important; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:2px; min-height:56px; padding:10px 13px; border-radius:6px; box-shadow:0 5px 12px rgba(0,0,0,.055); text-align:start; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage strong { width:100%; margin:0; font-size:12px; text-align:start; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { width:100%; margin:0; font-size:9px; line-height:1; text-align:start; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage::before { border-radius:inherit; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact { background:transparent !important; box-shadow:none !important; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage { box-shadow:0 5px 12px rgba(77,53,15,.045); }
@media (max-width:620px) { .fi-body--onboarding .fi-stage-rail--compact { gap:5px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage { min-height:52px; padding:8px 7px; border-radius:5px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage strong { font-size:10px; } }

/* Institutional session route — a single engraved protocol rail and three distinct working materials. */
.fi-body--onboarding .fi-page { width:min(100% - 48px, 1030px); padding-top:68px; }
.fi-body--onboarding .fi-onboard-head { display:flex; justify-content:flex-end; margin:0 0 10px; }
.fi-body--onboarding .fi-onboard-grid--single { max-width:100%; }
.fi-body--onboarding .fi-stage-rail--compact { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:0 0 20px; overflow:hidden; border:1px solid rgba(200,184,154,.22) !important; border-radius:12px; background:linear-gradient(104deg,rgba(10,18,20,.93),rgba(21,28,27,.92)) !important; box-shadow:0 15px 32px rgba(0,0,0,.18) !important; }
.fi-body--onboarding .fi-stage-rail--compact::before { position:absolute; inset:0; opacity:.58; background:repeating-linear-gradient(90deg,transparent 0 50px,rgba(212,168,85,.045) 51px 52px),linear-gradient(125deg,transparent 0 46%,rgba(45,212,191,.08) 46.2% 46.45%,transparent 46.7%); content:""; pointer-events:none; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage { position:relative; display:grid; grid-template-columns:24px minmax(0,1fr); grid-template-areas:"no title" "no note"; align-content:center; min-height:68px; padding:12px 16px; overflow:visible; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; text-align:start; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage + .fi-stage { border-inline-start:1px solid rgba(200,184,154,.16) !important; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage > * { position:relative; z-index:1; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { grid-area:no; align-self:start; margin:2px 0 0; color:rgba(212,168,85,.74); font-family:ThmanyahSans,sans-serif; font-size:10px; font-weight:800; line-height:1; text-align:start; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage strong { grid-area:title; width:auto; margin:0; color:rgba(255,252,247,.72); font-family:ThmanyahSans,sans-serif; font-size:13px; font-weight:800; line-height:1.2; text-align:start; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage > span:last-child { display:block; grid-area:note; margin-top:4px; color:rgba(225,218,205,.44); font-family:ThmanyahSans,sans-serif; font-size:10px; line-height:1.25; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-ready strong { color:rgba(255,252,247,.92); }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current { background:linear-gradient(135deg,rgba(24,140,127,.28),rgba(24,140,127,.08)) !important; box-shadow:inset 0 -2px 0 #32cdbd !important; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current strong { color:#fffdf9; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current::after { position:absolute; width:84px; height:84px; border:1px solid rgba(45,212,191,.24); border-radius:50%; content:""; inset:-49px -30px auto auto; }
.fi-body--onboarding .fi-onboard-panel { position:relative; overflow:hidden; min-height:0; border:1px solid rgba(200,184,154,.22); border-radius:14px; background:#171d1d; box-shadow:0 22px 46px rgba(0,0,0,.16),0 1px 0 rgba(255,255,255,.05) inset; }
.fi-body--onboarding .fi-onboard-panel::before { position:absolute; inset:0; content:""; pointer-events:none; }
.fi-body--onboarding .fi-onboard-panel .fi-panel__body { position:relative; z-index:1; padding:clamp(30px,4vw,48px); }
.fi-body--onboarding .fi-onboard-panel--question { background:linear-gradient(142deg,#172220,#121717); }
.fi-body--onboarding .fi-onboard-panel--question::before { opacity:.85; background:radial-gradient(120% 135% at 100% -15%,transparent 0 60%,rgba(45,212,191,.10) 60.4% 60.9%,transparent 61.3%),repeating-linear-gradient(90deg,transparent 0 46px,rgba(212,168,85,.045) 47px 48px); }
.fi-body--onboarding .fi-onboard-panel--goals { background:linear-gradient(142deg,#20231f,#171917); }
.fi-body--onboarding .fi-onboard-panel--goals::before { opacity:.76; background:linear-gradient(90deg,transparent 0 67%,rgba(212,168,85,.11) 67.3% 67.55%,transparent 67.8%),radial-gradient(94% 150% at 0 100%,transparent 0 64%,rgba(45,212,191,.08) 64.4% 64.8%,transparent 65.2%); }
.fi-body--onboarding .fi-onboard-panel--settings { background:linear-gradient(142deg,#1b2020,#121516); }
.fi-body--onboarding .fi-onboard-panel--settings::before { opacity:.72; background:repeating-linear-gradient(135deg,transparent 0 54px,rgba(45,212,191,.045) 55px 56px),linear-gradient(110deg,transparent 0 73%,rgba(212,168,85,.08) 73.3% 73.65%,transparent 74%); }
.fi-body--onboarding .fi-onboard-panel .fi-kicker { color:#d6a849; }
.fi-body--onboarding .fi-onboard-panel .fi-section-title { max-width:760px; color:#fffdf9; font-size:clamp(35px,4.4vw,58px); line-height:1.05; }
.fi-body--onboarding .fi-onboard-panel .fi-section-copy,.fi-body--onboarding .fi-onboard-panel .fi-question-copy { max-width:720px; color:rgba(235,229,218,.74); }
.fi-body--onboarding .fi-onboard-panel .fi-question-copy { margin:18px 0 24px; padding:13px 16px; border-inline-start:2px solid #d6a849; background:rgba(255,252,247,.045); font-family:ThmanyahSans,sans-serif; font-weight:700; }
.fi-body--onboarding .fi-onboard-panel .fi-onboard-label,.fi-body--onboarding .fi-onboard-panel .fi-setting-group legend { color:rgba(233,222,201,.75); }
.fi-body--onboarding .fi-onboard-panel .fi-question-area,.fi-body--onboarding .fi-onboard-panel .fi-goal-input,.fi-body--onboarding .fi-onboard-panel .fi-role-field input { border-color:rgba(212,168,85,.23); border-radius:7px; background:rgba(5,9,9,.28); box-shadow:inset 0 1px 0 rgba(255,255,255,.035); color:#fffdf9; }
.fi-body--onboarding .fi-onboard-panel .fi-question-area::placeholder,.fi-body--onboarding .fi-onboard-panel .fi-goal-input::placeholder,.fi-body--onboarding .fi-onboard-panel .fi-role-field input::placeholder { color:rgba(233,222,201,.43); }
.fi-body--onboarding .fi-onboard-panel .fi-example { border:1px solid rgba(212,168,85,.20); border-radius:6px; background:rgba(255,252,247,.035); color:rgba(241,234,223,.82); }
.fi-body--onboarding .fi-onboard-panel .fi-example:hover { border-color:rgba(45,212,191,.52); background:rgba(45,212,191,.08); color:#fffdf9; }
.fi-body--onboarding .fi-onboard-panel .fi-goal-row { grid-template-columns:46px minmax(0,1fr); border:1px solid rgba(212,168,85,.16); border-radius:7px; background:rgba(255,252,247,.03); }
.fi-body--onboarding .fi-onboard-panel .fi-goal-row > span { display:grid; place-items:center; color:#d6a849; font-family:ThmanyahSans,sans-serif; font-size:11px; font-weight:800; }
.fi-body--onboarding .fi-onboard-panel .fi-goal-input { border:0; border-inline-start:1px solid rgba(212,168,85,.16); border-radius:0; }
.fi-body--onboarding .fi-onboard-panel .fi-setting-group { border-color:rgba(212,168,85,.17); background:rgba(255,252,247,.025); }
.fi-body--onboarding .fi-onboard-panel .fi-choice { border-color:rgba(212,168,85,.16); border-radius:7px; background:rgba(5,9,9,.21); }
.fi-body--onboarding .fi-onboard-panel .fi-choice strong { color:#fffdf9; }
.fi-body--onboarding .fi-onboard-panel .fi-choice small,.fi-body--onboarding .fi-onboard-panel .fi-setting-hint,.fi-body--onboarding .fi-onboard-panel .fi-checkline { color:rgba(235,229,218,.67); }
.fi-body--onboarding .fi-onboard-panel .fi-button { border:1px solid rgba(212,168,85,.62); border-radius:7px; background:linear-gradient(135deg,#c18c21,#94700f); box-shadow:0 11px 22px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.22); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact { border-color:rgba(116,88,39,.18) !important; background:linear-gradient(106deg,#fcfaf5,#f1eadc) !important; box-shadow:0 14px 30px rgba(68,51,21,.07) !important; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact::before { opacity:1; background:repeating-linear-gradient(90deg,transparent 0 50px,rgba(184,131,22,.055) 51px 52px),linear-gradient(125deg,transparent 0 46%,rgba(24,140,127,.075) 46.2% 46.45%,transparent 46.7%); }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage + .fi-stage { border-inline-start-color:rgba(116,88,39,.14) !important; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage strong { color:#5d554a; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage > span:last-child { color:#978d80; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-ready strong { color:#2f2922; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current { background:linear-gradient(135deg,rgba(225,246,239,.96),rgba(246,251,248,.86)) !important; box-shadow:inset 0 -2px 0 #188c7f !important; }
html[data-theme="light"] .fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current strong { color:#153f3a; }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel { border-color:rgba(116,88,39,.16); box-shadow:0 20px 44px rgba(68,51,21,.075),0 1px 0 rgba(255,255,255,.95) inset; }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel--question { background:linear-gradient(142deg,#fffdf8,#f6f1e8); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel--question::before { background:radial-gradient(120% 135% at 100% -15%,transparent 0 60%,rgba(24,140,127,.11) 60.4% 60.9%,transparent 61.3%),repeating-linear-gradient(90deg,transparent 0 46px,rgba(184,131,22,.052) 47px 48px); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel--goals { background:linear-gradient(142deg,#fbf8f0,#f4ecdd); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel--goals::before { background:linear-gradient(90deg,transparent 0 67%,rgba(184,131,22,.11) 67.3% 67.55%,transparent 67.8%),radial-gradient(94% 150% at 0 100%,transparent 0 64%,rgba(24,140,127,.075) 64.4% 64.8%,transparent 65.2%); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel--settings { background:linear-gradient(142deg,#f6fbf8,#eef4f0); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel--settings::before { background:repeating-linear-gradient(135deg,transparent 0 54px,rgba(24,140,127,.047) 55px 56px),linear-gradient(110deg,transparent 0 73%,rgba(184,131,22,.07) 73.3% 73.65%,transparent 74%); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-section-title { color:#17120d; }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-section-copy,html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-question-copy { color:#625c54; }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-question-copy { border-inline-start-color:#b88316; background:rgba(255,255,255,.50); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-onboard-label,html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-setting-group legend { color:#766a5c; }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-question-area,html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-goal-input,html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-role-field input { border-color:rgba(116,88,39,.20); background:rgba(255,255,255,.78); color:#2f2922; }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-goal-row,html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-setting-group { border-color:rgba(116,88,39,.16); background:rgba(255,255,255,.34); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-choice { border-color:rgba(116,88,39,.16); background:rgba(255,255,255,.72); }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-choice strong { color:#2f2922; }
html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-choice small,html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-setting-hint,html[data-theme="light"] .fi-body--onboarding .fi-onboard-panel .fi-checkline { color:#736a5f; }
@media (max-width:700px) { .fi-body--onboarding .fi-page { width:min(100% - 28px,620px); padding-top:44px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage { grid-template-columns:1fr; grid-template-areas:"title" "no"; min-height:60px; padding:9px 8px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage > span:last-child { display:none; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { margin-top:3px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage strong { font-size:10px; } .fi-body--onboarding .fi-onboard-panel { border-radius:11px; } .fi-body--onboarding .fi-onboard-panel .fi-panel__body { padding:25px 20px; } .fi-body--onboarding .fi-onboard-panel .fi-section-title { font-size:clamp(31px,10vw,44px); } }

/* Settings editor: the six seats become two calm lanes; references reuse the structured Sijal register. */
.fi-body--onboarding .fi-role-editor { padding:18px 0 0; border-top:1px solid rgba(212,168,85,.17); border-inline:0; border-bottom:0; background:transparent; }
.fi-body--onboarding .fi-role-editor .fi-setting-hint { max-width:680px; margin-bottom:15px; }
.fi-body--onboarding .fi-role-lanes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.fi-body--onboarding .fi-role-lane { padding:14px; border:1px solid rgba(212,168,85,.15); border-radius:8px; background:rgba(6,10,10,.18); }
.fi-body--onboarding .fi-role-lane--support { box-shadow:inset 2px 0 0 rgba(45,212,191,.55); }
.fi-body--onboarding .fi-role-lane--opposition { box-shadow:inset 2px 0 0 rgba(212,168,85,.52); }
.fi-body--onboarding .fi-role-lane header { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:9px; }
.fi-body--onboarding .fi-role-lane header strong { color:#fffdf9; font-family:ThmanyahSans,sans-serif; font-size:13px; }
.fi-body--onboarding .fi-role-lane header span { color:rgba(212,168,85,.78); font-family:ThmanyahSans,sans-serif; font-size:10px; font-weight:800; }
.fi-body--onboarding .fi-role-lane label { display:grid; grid-template-columns:24px minmax(0,1fr); align-items:center; gap:8px; margin-top:7px; }
.fi-body--onboarding .fi-role-lane label > span { color:rgba(212,168,85,.74); font-family:ThmanyahSans,sans-serif; font-size:10px; font-weight:800; }
.fi-body--onboarding .fi-role-lane input { min-width:0; height:38px; padding:0 10px; border:1px solid rgba(212,168,85,.16); border-radius:5px; background:rgba(0,0,0,.16); color:#fffdf9; font-family:ThmanyahSans,sans-serif; }
.fi-body--onboarding .fi-resource-editor { margin-top:28px; padding:18px 0 0; border-top:1px solid rgba(212,168,85,.17); border-inline:0; border-bottom:0; background:transparent; }
.fi-body--onboarding .fi-resource-editor .fi-setting-hint { max-width:690px; margin-bottom:13px; }
.fi-body--onboarding .fi-resource-editor__head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 0 10px; }
.fi-body--onboarding .fi-resource-editor__head > span { color:#fffdf9; font-family:ThmanyahSans,sans-serif; font-size:13px; font-weight:800; }
.fi-body--onboarding .fi-resource-add { display:inline-flex; align-items:center; gap:7px; min-height:34px; padding:0 11px; border:1px solid rgba(45,212,191,.38); border-radius:5px; background:rgba(45,212,191,.08); color:#bff5ed; font-family:ThmanyahSans,sans-serif; font-size:12px; font-weight:800; cursor:pointer; }
.fi-body--onboarding .fi-resource-empty { display:flex; align-items:center; gap:12px; padding:16px; border:1px dashed rgba(212,168,85,.20); border-radius:7px; background:rgba(0,0,0,.10); color:rgba(235,229,218,.62); font-family:ThmanyahSans,sans-serif; font-size:12px; line-height:1.55; }
.fi-body--onboarding .fi-resource-empty[hidden] { display:none; }
.fi-body--onboarding .fi-resource-empty i { color:#d6a849; font-size:19px; }
.fi-body--onboarding .fi-resource-list { display:grid; gap:10px; }
.fi-body--onboarding .fi-resource-card { padding:14px; border:1px solid rgba(212,168,85,.17); border-radius:8px; background:linear-gradient(110deg,rgba(0,0,0,.15),rgba(255,255,255,.025)); }
.fi-body--onboarding .fi-resource-card__head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.fi-body--onboarding .fi-resource-card__head > span { color:#d6a849; font-family:ThmanyahSans,sans-serif; font-size:12px; font-weight:800; }
.fi-body--onboarding .fi-resource-card__head button { border:0; background:transparent; color:rgba(235,229,218,.55); font-family:ThmanyahSans,sans-serif; font-size:11px; cursor:pointer; }
.fi-body--onboarding .fi-resource-fields { display:grid; grid-template-columns:minmax(0,1.2fr) 130px; gap:10px; }
.fi-body--onboarding .fi-resource-fields label { display:grid; gap:5px; color:rgba(235,229,218,.62); font-family:ThmanyahSans,sans-serif; font-size:11px; font-weight:800; }
.fi-body--onboarding .fi-resource-fields input,.fi-body--onboarding .fi-resource-fields select { width:100%; min-width:0; height:38px; padding:0 10px; border:1px solid rgba(212,168,85,.17); border-radius:5px; background:rgba(0,0,0,.16); color:#fffdf9; font-family:ThmanyahSans,sans-serif; }
.fi-body--onboarding .fi-resource-fields .fi-resource-url,.fi-body--onboarding .fi-resource-fields .fi-resource-note { grid-column:1 / -1; }
.fi-body--onboarding .fi-resource-url > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.fi-body--onboarding .fi-resource-url button { min-height:38px; padding:0 10px; border:1px solid rgba(212,168,85,.24); border-radius:5px; background:rgba(212,168,85,.08); color:#ead298; font-family:ThmanyahSans,sans-serif; font-size:11px; font-weight:800; cursor:pointer; }
html[data-theme="light"] .fi-body--onboarding .fi-role-editor,html[data-theme="light"] .fi-body--onboarding .fi-resource-editor { border-top-color:rgba(116,88,39,.16); }
html[data-theme="light"] .fi-body--onboarding .fi-role-lane,html[data-theme="light"] .fi-body--onboarding .fi-resource-card { border-color:rgba(116,88,39,.16); background:rgba(255,255,255,.46); }
html[data-theme="light"] .fi-body--onboarding .fi-role-lane header strong,html[data-theme="light"] .fi-body--onboarding .fi-resource-editor__head > span { color:#2f2922; }
html[data-theme="light"] .fi-body--onboarding .fi-role-lane input,html[data-theme="light"] .fi-body--onboarding .fi-resource-fields input,html[data-theme="light"] .fi-body--onboarding .fi-resource-fields select { border-color:rgba(116,88,39,.19); background:rgba(255,255,255,.84); color:#2f2922; }
html[data-theme="light"] .fi-body--onboarding .fi-resource-empty { border-color:rgba(116,88,39,.21); background:rgba(255,255,255,.34); color:#736a5f; }
html[data-theme="light"] .fi-body--onboarding .fi-resource-fields label { color:#736a5f; }
@media (max-width:700px) { .fi-body--onboarding .fi-role-lanes { grid-template-columns:1fr; } .fi-body--onboarding .fi-resource-fields { grid-template-columns:1fr; } .fi-body--onboarding .fi-resource-fields .fi-resource-url,.fi-body--onboarding .fi-resource-fields .fi-resource-note { grid-column:auto; } .fi-body--onboarding .fi-resource-editor__head { align-items:flex-start; flex-direction:column; } }

/* Protocol rail: title, explanation, then a stable number line. */
.fi-body--onboarding .fi-stage-rail--compact .fi-stage { grid-template-columns:1fr; grid-template-areas:"title" "note" "no"; align-content:center; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { justify-self:start; align-self:end; margin:5px 0 0; font-size:10px; line-height:1; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage strong { width:100%; }
@media (max-width:700px) { .fi-body--onboarding .fi-stage-rail--compact .fi-stage { grid-template-areas:"title" "no"; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { margin-top:4px; } }

/* Stage index: a fixed corner mark, never part of the title or description flow. */
.fi-body--onboarding .fi-stage-rail--compact .fi-stage { grid-template-areas:"title" "note"; min-height:76px; padding:26px 16px 12px; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { position:absolute; inset-block-start:10px; inset-inline-start:14px; z-index:3; justify-self:auto; align-self:auto; margin:0; color:rgba(212,168,85,.88); font-size:10px; letter-spacing:.04em; }
.fi-body--onboarding .fi-stage-rail--compact .fi-stage.is-current::after { inset-block-start:-49px; inset-inline-end:-30px; inset-inline-start:auto; }
@media (max-width:700px) { .fi-body--onboarding .fi-stage-rail--compact .fi-stage { grid-template-areas:"title" "note"; min-height:66px; padding:25px 9px 9px; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage > span:last-child { display:none; } .fi-body--onboarding .fi-stage-rail--compact .fi-stage__no { inset-block-start:8px; inset-inline-start:9px; margin:0; } }
