@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/InstrumentSerif-italic-400.woff2) format('woff2');}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/InstrumentSerif-normal-400.woff2) format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-style:italic;font-weight:400 800;font-display:swap;src:url(fonts/PlusJakartaSans-italic-400_800.woff2) format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/PlusJakartaSans-normal-400_800.woff2) format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/Inter-normal-400_700.woff2) format('woff2');}
/* ============ Assistly design tokens ============ */
:root{
  /* Ink (text) */
  --ink:#141A24; --ink-2:#3C4555; --muted:#667085; --faint:#98A2B3;
  /* Surfaces */
  --paper:#FAF8F4; --surface:#FFFFFF; --sunken:#F4F2ED; --line:#E8E4DC; --line-2:#D8D2C6;
  /* Brand — "Pine" */
  --brand-950:#062A20; --brand-900:#0A3A2C; --brand-800:#0C4A38; --brand-700:#0F5D46; --brand-600:#137556;
  --brand-500:#1B8F69; --brand-300:#7FCBAE; --brand-200:#BFE6D5; --brand-100:#DCF1E7; --brand-50:#EEF8F3;
  /* Hot lead — "Ember" */
  --hot:#E8590C; --hot-700:#B9470A; --hot-bg:#FFF1E7; --hot-line:#FFD6BC;
  /* Team member (human) — "Iris" */
  --team:#4C51BF; --team-700:#3B3F9E; --team-bg:#EEEFFC; --team-line:#D4D6F7;
  /* Status */
  --ok:#12805C; --ok-bg:#E6F6EF; --warn:#B7791F; --warn-bg:#FDF5E3; --err:#C53030; --err-bg:#FDECEC;
  /* Type */
  --font:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --display:'Plus Jakarta Sans','Inter',ui-sans-serif,system-ui,sans-serif;
  --serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  /* Radius */
  --r-xs:6px; --r-sm:8px; --r-md:12px; --r-lg:16px; --r-xl:24px; --r-pill:999px;
  /* Shadow */
  --sh-1:0 1px 2px rgba(20,26,36,.06),0 1px 1px rgba(20,26,36,.04);
  --sh-2:0 4px 12px -2px rgba(20,26,36,.08),0 2px 4px -2px rgba(20,26,36,.05);
  --sh-3:0 18px 40px -12px rgba(20,26,36,.18),0 6px 12px -6px rgba(20,26,36,.08);
  --ring:0 0 0 3px rgba(27,143,105,.28);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--paper);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--r-sm)}
.i{width:20px;height:20px;flex:none;stroke-width:1.8}
.i-sm{width:16px;height:16px}
.i-xs{width:14px;height:14px}
.i-lg{width:24px;height:24px}

/* Logo */
.logo{font-family:var(--display);display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:21px;letter-spacing:-.035em;color:var(--ink)}
.logo svg{width:30px;height:30px}
.logo.on-dark{color:#fff}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:var(--r-md);border:1px solid transparent;font-weight:600;font-size:15px;letter-spacing:-.006em;cursor:pointer;white-space:nowrap;transition:background .15s,box-shadow .15s,transform .05s}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--brand-700);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 2px rgba(6,42,32,.3)}
.btn-primary:hover{background:var(--brand-800)}
.btn-secondary{background:var(--surface);border-color:var(--line-2);color:var(--ink);box-shadow:var(--sh-1)}
.btn-secondary:hover{background:var(--sunken)}
.btn-ghost{background:transparent;color:var(--ink-2)}
.btn-ghost:hover{background:var(--sunken)}
.btn-dark{background:var(--ink);color:#fff}
.btn-sm{height:34px;padding:0 12px;font-size:14px;border-radius:var(--r-sm)}
.btn-lg{height:52px;padding:0 24px;font-size:16px;border-radius:14px}

/* Badges / chips */
.badge{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:var(--r-pill);font-size:12.5px;font-weight:650;white-space:nowrap;border:1px solid transparent;letter-spacing:-.005em}
.badge .i{width:13px;height:13px;stroke-width:2.2}
.badge-hot{background:var(--hot-bg);color:var(--hot-700);border-color:var(--hot-line)}
.badge-lead{background:var(--brand-50);color:var(--brand-700);border-color:var(--brand-200)}
.badge-ai{background:var(--brand-50);color:var(--brand-700)}
.badge-team{background:var(--team-bg);color:var(--team-700);border-color:var(--team-line)}
.badge-neutral{background:var(--sunken);color:var(--ink-2);border-color:var(--line)}
.dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}

/* Cards */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1)}

/* Inputs */
.input{height:44px;width:100%;padding:0 14px;border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--surface);font-size:15px;color:var(--ink)}
.input::placeholder{color:var(--faint)}
.input:focus{outline:none;border-color:var(--brand-500);box-shadow:var(--ring)}

/* Avatars */
.av{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:13px;flex:none;color:#fff}
.av-ai{background:var(--brand-700)}
.av-team{background:var(--team)}
.sample-tag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}

h1,h2,h3,h4,h5{font-family:var(--display);word-spacing:.05em}
