@font-face {
    font-family: "Vazirmatn";
    src: url("/assets/fonts/vazirmatn/Vazirmatn-Variable.woff2") format("woff2");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
:root {
    --primary: #0f766e;
    --primary-dark: #115e59;
    --surface: #fff;
    --surface-alt: #f8fafc;
    --page: #f0fdfa;
    --text: #0f172a;
    --muted: #64748b;
    --border: #dbe3ec;
    --success: #15803d;
    --warning: #b45309;
    --danger: #b91c1c;
    --shadow: 0 18px 50px rgba(15, 23, 42, .09);
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 20rem; min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; background: linear-gradient(180deg,#ecfeff 0,#f8fafc 45%,#fff 100%); color: var(--text); font-family: "Vazirmatn",sans-serif; line-height: 1.85; }
a { color: var(--primary); text-decoration: none; }
a:hover,a:focus-visible { text-decoration: underline; }
button,input,textarea,select { font: inherit; }
img { max-width: 100%; height: auto; }
.public-header { display: flex; flex-direction: column; gap: .7rem; padding: max(.75rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) .75rem max(1rem,env(safe-area-inset-left)); background: rgba(255,255,255,.95); border-bottom: 1px solid var(--border); }
.public-brand { width: 9rem; line-height: 0; }
.public-brand img { display:block; aspect-ratio:500/333; object-fit:contain; }
.public-header nav { display:flex; gap:.75rem; overflow-x:auto; padding-bottom:.15rem; }
.public-header nav a { flex:0 0 auto; color:var(--text); font-weight:700; }
.public-main { width:min(100%,72rem); margin:0 auto; flex:1; padding:1.25rem max(1rem,env(safe-area-inset-right)) 2rem max(1rem,env(safe-area-inset-left)); }
.public-footer { display:grid; gap:.2rem; padding:1rem; text-align:center; color:var(--muted); border-top:1px solid var(--border); background:#fff; font-size:.85rem; }
.hero-card,.question-card,.answer-card,.auth-card { border:1px solid var(--border); border-radius:1.25rem; background:rgba(255,255,255,.97); box-shadow:var(--shadow); padding:1.1rem; }
.hero-card { display:grid; gap:1.25rem; }
.hero-copy h1,.section-heading h1,.answer-card h1,.auth-card h1 { margin:.2rem 0; line-height:1.35; font-size:clamp(1.5rem,6vw,2.6rem); }
.hero-copy p,.section-heading p,.auth-card p { color:var(--muted); margin:.35rem 0; }
.eyebrow { color:var(--primary)!important; font-size:.86rem; font-weight:900; }
.hero-actions { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1rem; }
.hero-points,.trust-grid { display:grid; gap:.7rem; }
.hero-points article,.trust-grid article { display:grid; gap:.2rem; padding:.9rem; border:1px solid var(--border); border-radius:.9rem; background:var(--surface-alt); }
.hero-points span,.trust-grid span { color:var(--muted); font-size:.9rem; }
.trust-grid { margin-top:1rem; }
.button { min-height:2.9rem; display:inline-flex; align-items:center; justify-content:center; padding:.6rem 1rem; border:1px solid transparent; border-radius:.85rem; font-weight:900; cursor:pointer; text-decoration:none; }
.button:hover,.button:focus-visible { text-decoration:none; }
.button.primary { background:var(--primary); color:#fff; }
.button.primary:hover,.button.primary:focus-visible { background:var(--primary-dark); }
.button.secondary { background:#fff; border-color:var(--border); color:var(--text); }
.button.full { width:100%; }
.form-grid { display:grid; gap:1rem; }
.form-grid.columns-2 { grid-template-columns:1fr; }
.field { display:grid; gap:.35rem; }
.field > span { font-weight:800; }
.field small { color:var(--muted); }
input,textarea,select { width:100%; min-height:3rem; padding:.7rem .8rem; border:1px solid var(--border); border-radius:.85rem; background:#fff; color:var(--text); outline:none; }
textarea { resize:vertical; min-height:8rem; }
input:focus,textarea:focus,select:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(15,118,110,.14); }
.check { display:flex; align-items:center; gap:.55rem; }
.check input { width:1.1rem; min-height:1.1rem; accent-color:var(--primary); }
.honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; opacity:0!important; }
.question-card,.answer-card,.auth-card { width:min(100%,48rem); margin:0 auto; }
.section-heading { margin-bottom:1rem; }
.answer-meta { display:flex; justify-content:space-between; align-items:center; gap:.8rem; color:var(--muted); }
.question-quote,.answer-text,.notice { padding:.9rem; border:1px solid var(--border); border-radius:.9rem; background:var(--surface-alt); white-space:pre-wrap; overflow-wrap:anywhere; }
.question-quote { color:var(--muted); margin:.8rem 0; }
.answer-text { font-size:1.03rem; line-height:2.05; }
.answer-card h2 { font-size:1.1rem; margin:1rem 0 .55rem; }
.citations { margin-top:1rem; }
.citations article { display:grid; gap:.15rem; padding:.7rem 0; border-bottom:1px solid var(--border); }
.citations span { color:var(--muted); }
.feedback-box { display:flex; flex-direction:column; gap:.55rem; padding-top:1rem; margin-top:1rem; border-top:1px solid var(--border); }
.feedback-box form { display:flex; gap:.55rem; }
.alert { width:min(100%,48rem); margin:0 auto 1rem; padding:.8rem 1rem; border-radius:.9rem; border:1px solid var(--border); }
.alert.success { background:#ecfdf5; border-color:#bbf7d0; color:#166534; }
.alert.error { background:#fef2f2; border-color:#fecaca; color:#991b1b; }
.badge { display:inline-flex; padding:.2rem .6rem; border-radius:999px; font-size:.8rem; font-weight:900; background:#e2e8f0; }
.badge.success { background:#dcfce7; color:#166534; }
.badge.warning { background:#fef3c7; color:#92400e; }
.badge.neutral { color:#334155; }
.mono,code { font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; direction:ltr; unicode-bidi:embed; font-size:.84rem; }
@media (min-width:40rem) {
    .public-header { flex-direction:row; align-items:center; justify-content:space-between; padding-inline:1.5rem; }
    .hero-card { grid-template-columns:minmax(0,1.4fr) minmax(15rem,.7fr); padding:1.7rem; }
    .trust-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .form-grid.columns-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .feedback-box { flex-direction:row; justify-content:space-between; align-items:center; }
    .question-card,.answer-card,.auth-card { padding:1.5rem; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; } }

/* ROSHANA_PUBLIC_ANSWER_PRESENTATION_1_2_14 */
.answer-content--justified {
    direction: rtl;
    margin: 1rem 0;
    padding: 1.1rem 1.15rem;
    border: 1px solid rgba(15, 118, 110, 0.16);
    border-radius: 1.1rem;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.97),
            rgba(240, 253, 250, 0.9)
        );
    color: #172033;
    font-size: 1rem;
    line-height: 2.05;
    text-align: justify;
    text-align-last: right;
    white-space: pre-line;
    overflow-wrap: anywhere;
    word-spacing: 0.02em;
    box-shadow:
        0 0.8rem 2rem rgba(15, 23, 42, 0.07),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.citations article {
    border-radius: 0.9rem;
}

@media (max-width: 640px) {
    .answer-content--justified {
        padding: 0.95rem;
        font-size: 0.95rem;
        line-height: 2;
    }
}
