/* Replaro design tokens ------------------------------------------------ */
:root{
  --ink:#0B0D12; --ink-2:#161A23; --ink-3:#242938; --ink-4:#3A4052;
  --paper:#F4F0E6; --paper-2:#EAE4D6; --paper-3:#DED6C3; --cream:#FBF9F3;
  --lime:#D6FF3F; --lime-2:#B9E62A; --lime-ink:#233300;
  --coral:#FF5C3A; --coral-2:#E24A2B; --coral-soft:#FFE4DC;
  --sky:#7FB7FF; --amber:#FFC857;
  --text:var(--ink); --muted:#5B6072; --muted-2:#8A8F9E;
  --line:rgba(11,13,18,.12); --line-strong:rgba(11,13,18,.25);
  --radius:14px; --radius-lg:22px; --radius-sm:8px;
  --shadow:0 1px 2px rgba(11,13,18,.06),0 12px 32px -16px rgba(11,13,18,.25);
  --shadow-lg:0 2px 4px rgba(11,13,18,.08),0 30px 60px -30px rgba(11,13,18,.45);
  --display:"Bricolage Grotesque","Heebo",system-ui,sans-serif;
  --body:"Instrument Sans","Heebo",system-ui,sans-serif;
  --hebrew:"Heebo","Instrument Sans",sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--body);color:var(--text);background:var(--paper);line-height:1.5;font-size:16px;-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}
h1,h2,h3,h4{font-family:var(--display);font-weight:600;letter-spacing:-.02em;line-height:1.05;margin:0}
p{margin:0}
.rtl,[dir=rtl]{font-family:var(--hebrew);direction:rtl}
.mono{font-family:var(--mono);font-size:.85em}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
[hidden]{display:none!important}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.25rem;border-radius:999px;border:1.5px solid transparent;font-weight:600;font-size:.95rem;cursor:pointer;transition:transform .2s var(--ease),background .2s,box-shadow .2s,color .2s;white-space:nowrap;line-height:1}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--lime);color:var(--lime-ink);border-color:var(--lime)}
.btn-primary:hover{background:var(--lime-2);border-color:var(--lime-2);box-shadow:0 8px 24px -10px rgba(214,255,63,.8)}
.btn-ink{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn-ink:hover{background:var(--ink-2)}
.btn-ghost{background:transparent;color:inherit;border-color:var(--line-strong)}
.btn-ghost:hover{background:rgba(11,13,18,.05)}
.on-dark .btn-ghost{border-color:rgba(255,255,255,.28);color:var(--paper)}
.on-dark .btn-ghost:hover{background:rgba(255,255,255,.08)}
.btn-coral{background:var(--coral);color:#fff;border-color:var(--coral)}
.btn-coral:hover{background:var(--coral-2)}
.btn-sm{padding:.5rem .85rem;font-size:.85rem}
.btn-lg{padding:1rem 1.6rem;font-size:1.05rem}
.btn[disabled]{opacity:.5;cursor:not-allowed}

/* stamps: the product's signature mark */
.stamp{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .6rem;border-radius:6px;font-family:var(--display);font-weight:700;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;border:2px solid currentColor;line-height:1;transform:rotate(-2deg)}
.stamp-replied{color:#1F3A00;background:var(--lime)}
.stamp-hidden{color:#fff;background:var(--coral);border-color:var(--coral)}
.stamp-skipped{color:var(--muted);background:transparent;border-color:var(--line-strong)}
.stamp-draft{color:#5A4300;background:var(--amber);border-color:var(--amber)}
.stamp-escalate{color:#fff;background:var(--ink);border-color:var(--ink)}
.stamp-failed{color:var(--coral-2);background:transparent}
.stamp-unhide,.stamp-quota,.stamp-approved,.stamp-decided,.stamp-processing,.stamp-queued{color:var(--muted);background:transparent;border-color:var(--line-strong)}

/* forms */
.field{display:flex;flex-direction:column;gap:.4rem}
.field label,.label{font-weight:600;font-size:.9rem}
.field .hint{font-size:.82rem;color:var(--muted)}
.input,textarea.input,select.input{width:100%;padding:.8rem .95rem;border-radius:var(--radius-sm);border:1.5px solid var(--line-strong);background:var(--cream);outline:none;transition:border-color .2s,box-shadow .2s}
.input:focus{border-color:var(--ink);box-shadow:0 0 0 4px rgba(214,255,63,.45)}
textarea.input{min-height:120px;resize:vertical;line-height:1.5}
.check{display:flex;gap:.75rem;align-items:flex-start;padding:.75rem .9rem;border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--cream);cursor:pointer}
.check input{margin-top:.25rem;accent-color:var(--ink);width:1.05rem;height:1.05rem}
.check b{display:block;font-size:.92rem}
.check span{font-size:.82rem;color:var(--muted)}
.error{background:var(--coral-soft);color:#7A200C;border:1.5px solid rgba(255,92,58,.4);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.92rem}
.notice{background:#E8F5C2;color:#1F3A00;border:1.5px solid rgba(35,51,0,.15);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.92rem}

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