Apply Do Better Norge tools brand redesign (CSS + all tool pages)

New dbn-tools-redesign.css with warm paper surface, navy tools nav, gold
accent, and per-tool themes via body[data-active-tool]. Updated all 21 tool
PHP pages, shared layout/nav/footer includes, and advocate route (new).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-24 11:26:39 +02:00
parent c997f204b5
commit e09ee62c62
60 changed files with 2583 additions and 6 deletions
+247
View File
@@ -0,0 +1,247 @@
<?php
return array (
'en' =>
array (
'nav_about' => 'About',
'nav_guide' => 'User guide',
'nav_howit' => 'How it works',
'nav_opentool' => '← Open the tool',
'nav_signin' => 'Sign in',
'nav_open' => 'Open Advocate →',
'hero_kicker' => 'AI Legal Briefs · Child Welfare · Hard-RAG Grounded',
'hero_title' => 'Your AI advocate. Argues your side.',
'hero_sub' => 'Advocate generates a partisan legal brief for your child-welfare case — grounded in Lovdata statutes, ECHR judgments, and Bufdir guidance. Every argument is framed to strengthen your position. Every citation is verified against 220,000+ indexed legal passages before it reaches you.',
'stat_legal' => 'legal passages indexed',
'stat_roles' => 'party roles',
'stat_slices' => 'corpus slices',
'stat_pipeline' => 'pipeline steps',
'btn_try' => 'Try Advocate free →',
'btn_guide' => 'User guide',
'btn_howit' => 'How it works',
'what_eyebrow' => 'What you get',
'what_title' => 'A brief that fights in your corner.',
'f1_title' => 'Argue FOR your client',
'f1_body' => 'Every sub-question, retrieval pass, and the final brief is framed to strengthen your client\'s position — and expose weaknesses in the opposing side. Select your party role once; the agent stays partisan throughout.',
'f2_title' => 'Verified statute and ECHR citations',
'f2_body' => 'Sources drawn from Lovdata, ECHR HUDOC, Bufdir guidance, and Norwegian court decisions. Every claim in the brief is traced to a retrieved passage. If it can\'t be verified — it doesn\'t appear.',
'f3_title' => 'Upload your own case files',
'f3_body_html' => 'Drop in PDFs, court orders, expert reports (DOCX or TXT). Your documents are chunked and searched alongside the legal corpus — blended into the same retrieval pass. Processed <strong>in memory only</strong>, never stored or logged.',
'how_eyebrow' => 'How it works',
'how_title' => 'Select your role → describe the dispute → get your brief.',
'how_sub' => 'Three steps from blank form to a legally grounded partisan brief. No legal training required.',
's1_title' => 'Choose who you\'re representing',
's1_body' => 'Select from 9 party roles — biological parents, foster carer, adoptive parent, child, extended family, or Barnevernet. The agent frames every sub-question and citation to argue for the selected party.',
's1_example' => 'E.g. "Biological father" — the brief argues for preserving or restoring parental contact under barneloven and ECHR Art. 8.',
's2_title' => 'Describe the dispute',
's2_body' => 'Paste or type the facts of the case (up to 4,000 chars). Optionally upload case documents — court orders, expert reports, correspondence. The agent reads both the legal corpus and your files.',
's2_example' => 'Output: YOUR STRONGEST ARGUMENTS · Advocate brief · GAPS IN THE OPPOSING POSITION · Sub-question research trail.',
's3_title' => 'Get your adversarial brief',
's3_body_html' => 'The agent generates adversarial sub-questions, retrieves applicable law, and synthesises a partisan brief with inline citations. One click to <strong>run a counter-brief</strong> for the opposing party — useful for anticipating the other side\'s arguments.',
's3_example' => 'Runs in 15180 s depending on engine. Counter-brief available in one click.',
'ss_eyebrow' => 'Screenshots',
'ss_title' => 'See it in action.',
'g1_caption' => 'The form: select who you\'re representing, describe the case, choose engine and corpus.',
'g2_caption' => 'Output: your strongest arguments with citation sources, then the full advocate brief.',
'g3_caption' => 'Research trail: each sub-question with retrieved sources — ECHR cases and uploaded documents.',
'g4_caption' => 'Analysis: gaps in the opposing position, what remains uncertain, and your next practical step.',
'hood_eyebrow' => 'Under the hood',
'hood_title' => 'Powered by a purpose-built legal LLM.',
'llm_badge' => 'Fine-tuned model',
'llm_body_html' => 'A QLoRA fine-tune trained on Norwegian child-welfare and administrative law text. Unlike a general-purpose LLM, dbn-legal-agent understands the procedural vocabulary of barnevernsloven and barneloven — what ECHR Art. 8 requires in care-order cases, how Barnevernet\'s duty of assessment under §§ 4-1, 4-4 can be challenged, what the proportionality threshold is for omsorgsovertakelse. It runs alongside Azure gpt-4o to shape the argument structure of every brief.',
'llm_s1' => 'fine-tune method',
'llm_s2' => 'child-welfare law',
'llm_s3' => 'drafting backbone',
'llm_s4' => 'pipeline architecture',
'roles_eyebrow' => 'Party roles',
'roles_title' => '9 roles. Each frames the brief to argue your side.',
'roles_sub' => 'Selecting a party role tells the agent whose position to defend. Sub-questions, retrieval, and the final brief all follow the chosen side.',
'cta_title' => 'Ready to build your case?',
'cta_sub' => 'Free for Do Better Norge members. No credit card required.',
'btn_open' => 'Open Advocate →',
'btn_signin_cta' => 'Sign in to use Advocate →',
'btn_register' => 'Register free',
),
'no' =>
array (
'nav_about' => 'Om',
'nav_guide' => 'Brukerveiledning',
'nav_howit' => 'Hvordan det fungerer',
'nav_opentool' => '← Åpne verktøyet',
'nav_signin' => 'Logg inn',
'nav_open' => 'Åpne Advocate →',
'hero_kicker' => 'AI Juridiske sammendrag · Barnevern · Hard-RAG Grounded',
'hero_title' => 'Din AI-advokat. Argumenterer for din side.',
'hero_sub' => 'Advocate genererer et partisk juridisk sammendrag for barnevernssaken din — basert på Lovdata-lover, ECHR-dommer og Bufdirs veiledning. Hvert argument er utformet for å styrke din posisjon. Hver § henvisning er verifisert mot 220 000+ indekserte juridiske passasjer.',
'stat_legal' => 'juridiske passasjer indeksert',
'stat_roles' => 'partsroller',
'stat_slices' => 'corpus-seksjoner',
'stat_pipeline' => 'pipeline-trinn',
'btn_try' => 'Prøv Advocate gratis →',
'btn_guide' => 'Brukerveiledning',
'btn_howit' => 'Hvordan det fungerer',
'what_eyebrow' => 'Hva du får',
'what_title' => 'Et sammendrag som kjemper for deg.',
'f1_title' => 'Argumenter FOR din klient',
'f1_body' => 'Hvert delspørsmål, hentingspass og det endelige sammendraget er utformet for å styrke din klients posisjon — og avdekke svakheter på motsatt side. Velg partsrolle én gang; agenten forblir partisk gjennom hele prosessen.',
'f2_title' => 'Verifiserte lov- og ECHR-henvisninger',
'f2_body' => 'Kilder hentet fra Lovdata, ECHR HUDOC, Bufdirs veiledning og norske rettsavgjørelser. Hvert påstand i sammendraget er sporet til et hentet avsnitt. Hvis det ikke kan verifiseres — vises det ikke.',
'f3_title' => 'Last opp dine egne saksdokumenter',
'f3_body_html' => 'Last opp PDF-er, kjennelser, sakkyndige rapporter (DOCX eller TXT). Dokumentene dine deles inn og søkes ved siden av det juridiske korpuset — blandet inn i samme hentingspass. Behandles <strong>kun i minne</strong>, aldri lagret eller logget.',
'how_eyebrow' => 'Hvordan det fungerer',
'how_title' => 'Velg din rolle → beskriv tvisten → få ditt sammendrag.',
'how_sub' => 'Tre trinn fra tom skjema til et juridisk forankret partisk sammendrag. Ingen juridisk opplæring kreves.',
's1_title' => 'Velg hvem du representerer',
's1_body' => 'Velg blant 9 partsroller — biologiske foreldre, fosterforelder, adoptivforelder, barn, utvidet familie eller Barnevernet. Agenten utformer hvert delspørsmål og hver henvisning for å argumentere for den valgte parten.',
's1_example' => 'F.eks. "Biologisk far" — sammendraget argumenterer for å bevare eller gjenopprette foreldrekontakt under barneloven og EMK Art. 8.',
's2_title' => 'Beskriv tvisten',
's2_body' => 'Lim inn eller skriv fakta i saken (opptil 4 000 tegn). Last eventuelt opp saksdokumenter — kjennelser, sakkyndige rapporter, korrespondanse. Agenten leser både det juridiske korpuset og filene dine.',
's2_example' => 'Utdata: DINE STERKESTE ARGUMENTER · Advokatsammendrag · HULL I MOTPARTENS POSISJON · Forskningsspor for delspørsmål.',
's3_title' => 'Få ditt motstandsorienterte sammendrag',
's3_body_html' => 'Agenten genererer motstandsorienterte delspørsmål, henter gjeldende lov og syntetiserer et partisk sammendrag med innebygde henvisninger. Ett klikk for å <strong>kjøre et motstridende sammendrag</strong> for motparten — nyttig for å forutse motpartens argumenter.',
's3_example' => 'Kjører på 15180 s avhengig av motor. Motstridende sammendrag tilgjengelig med ett klikk.',
'ss_eyebrow' => 'Skjermbilder',
'ss_title' => 'Se det i aksjon.',
'g1_caption' => 'Skjemaet: velg hvem du representerer, beskriv saken, velg motor og corpus.',
'g2_caption' => 'Utdata: dine sterkeste argumenter med kildehenvisninger, deretter det fullstendige advokatsammendraget.',
'g3_caption' => 'Forskningsspor: hvert delspørsmål med hentede kilder — ECHR-saker og opplastede dokumenter.',
'g4_caption' => 'Analyse: hull i motpartens posisjon, hva som gjenstår usikkert, og ditt neste praktiske skritt.',
'hood_eyebrow' => 'Under panseret',
'hood_title' => 'Drevet av en spesialbygd juridisk LLM.',
'llm_badge' => 'Finjustert modell',
'llm_body_html' => 'En QLoRA-finjustering trent på norsk barnevernsrett og forvaltningsrett. dbn-legal-agent forstår det prosessuelle vokabularet i barnevernsloven og barneloven — hva EMK Art. 8 krever i omsorgsovertakelsessaker, hvordan Barnevernets vurderingsplikt under §§ 4-1, 4-4 kan utfordres, og hva proporsjonalitetskravet er for omsorgsovertakelse.',
'llm_s1' => 'finjusteringsmetode',
'llm_s2' => 'barnevernsrett',
'llm_s3' => 'utkastgrunnlag',
'llm_s4' => 'pipeline-arkitektur',
'roles_eyebrow' => 'Partsroller',
'roles_title' => '9 roller. Hver utformer sammendraget for å argumentere for din side.',
'roles_sub' => 'Å velge en partsrolle forteller agenten hvilken posisjon som skal forsvares. Delspørsmål, henting og det endelige sammendraget følger alle den valgte siden.',
'cta_title' => 'Klar til å bygge saken din?',
'cta_sub' => 'Gratis for Do Better Norge-medlemmer. Ingen kredittkort nødvendig.',
'btn_open' => 'Åpne Advocate →',
'btn_signin_cta' => 'Logg inn for å bruke Advocate →',
'btn_register' => 'Registrer gratis',
),
'uk' =>
array (
'nav_about' => 'Про нас',
'nav_guide' => 'Посібник користувача',
'nav_howit' => 'Як це працює',
'nav_opentool' => '← Відкрити інструмент',
'nav_signin' => 'Увійти',
'nav_open' => 'Відкрити Advocate →',
'hero_kicker' => 'AI Юридичні резюме · Захист дітей · Hard-RAG Grounded',
'hero_title' => 'Ваш AI-адвокат. Аргументує на вашу користь.',
'hero_sub' => 'Advocate генерує упереджене юридичне резюме для вашої справи із захисту дітей — на основі норвезьких законів Lovdata, рішень ЄСПЛ та керівництва Bufdir. Кожен аргумент сформульований для зміцнення вашої позиції. Кожна цитата § перевіряється по 220 000+ індексованих правових положень.',
'stat_legal' => 'індексовані правові положення',
'stat_roles' => 'ролі сторін',
'stat_slices' => 'розділи корпусу',
'stat_pipeline' => 'кроки конвеєра',
'btn_try' => 'Спробуйте Advocate безкоштовно →',
'btn_guide' => 'Посібник користувача',
'btn_howit' => 'Як це працює',
'what_eyebrow' => 'Що ви отримуєте',
'what_title' => 'Резюме, яке бореться на вашому боці.',
'f1_title' => 'Аргументуйте НА КОРИСТЬ вашого клієнта',
'f1_body' => 'Кожне підпитання, прохід отримання та фінальне резюме сформульовані для зміцнення позиції вашого клієнта — і виявлення слабких місць протилежної сторони. Виберіть роль сторони один раз; агент залишається упередженим протягом усього процесу.',
'f2_title' => 'Перевірені цитати законів та ЄСПЛ',
'f2_body' => 'Джерела з Lovdata, ЄСПЛ HUDOC, керівництва Bufdir та норвезьких судових рішень. Кожне твердження в резюме прив\'язане до отриманого фрагменту. Якщо неможливо перевірити — не з\'являється.',
'f3_title' => 'Завантажте власні файли справи',
'f3_body_html' => 'Завантажуйте PDF-файли, судові накази, висновки експертів (DOCX або TXT). Ваші документи розбиваються на частини і шукаються разом із правовим корпусом. Обробляється <strong>лише в пам\'яті</strong>, ніколи не зберігається.',
'how_eyebrow' => 'Як це працює',
'how_title' => 'Оберіть роль → опишіть суперечку → отримайте резюме.',
'how_sub' => 'Три кроки від порожньої форми до юридично обґрунтованого упередженого резюме. Юридична освіта не потрібна.',
's1_title' => 'Виберіть, кого ви представляєте',
's1_body' => 'Виберіть з 9 ролей сторін — біологічні батьки, прийомний вихователь, усиновлювач, дитина, розширена сім\'я або Barnevernet. Агент формулює кожне підпитання та цитату для аргументації на користь обраної сторони.',
's1_example' => 'Напр. "Біологічний батько" — резюме аргументує за збереження або відновлення батьківського контакту.',
's2_title' => 'Опишіть суперечку',
's2_body' => 'Вставте або введіть факти справи (до 4 000 символів). За бажанням завантажте документи справи — судові накази, висновки експертів, листування. Агент читає і правовий корпус, і ваші файли.',
's2_example' => 'Вивід: ВАШІ НАЙСИЛЬНІШІ АРГУМЕНТИ · Адвокатське резюме · ПРОГАЛИНИ В ПОЗИЦІЇ ОПОНЕНТА · Дослідницький слід підпитань.',
's3_title' => 'Отримайте своє змагальне резюме',
's3_body_html' => 'Агент генерує змагальні підпитання, отримує застосовне право та синтезує упереджене резюме з вбудованими цитатами. Один клік для <strong>запуску контррезюме</strong> для протилежної сторони.',
's3_example' => 'Виконується за 15–180 с залежно від двигуна. Контррезюме доступне в один клік.',
'ss_eyebrow' => 'Скріншоти',
'ss_title' => 'Дивіться це в дії.',
'g1_caption' => 'Форма: виберіть, кого ви представляєте, опишіть справу, виберіть двигун і корпус.',
'g2_caption' => 'Вивід: ваші найсильніші аргументи з джерелами, потім повне адвокатське резюме.',
'g3_caption' => 'Дослідницький слід: кожне підпитання з отриманими джерелами — справи ЄСПЛ і завантажені документи.',
'g4_caption' => 'Аналіз: прогалини в позиції опонента, що залишається невизначеним, і ваш наступний практичний крок.',
'hood_eyebrow' => 'Під капотом',
'hood_title' => 'Потужна спеціалізована юридична LLM.',
'llm_badge' => 'Модель з тонким налаштуванням',
'llm_body_html' => 'Модель QLoRA, налаштована на текст норвезького права із захисту дітей та адміністративного права. dbn-legal-agent розуміє процедурну лексику barnevernsloven і barneloven — що вимагає ЄСПЛ Стаття 8 у справах про опіку, як можна оскаржити оцінювальний обов\'язок Barnevernet.',
'llm_s1' => 'метод налаштування',
'llm_s2' => 'право захисту дітей',
'llm_s3' => 'основа складання',
'llm_s4' => 'архітектура конвеєра',
'roles_eyebrow' => 'Ролі сторін',
'roles_title' => '9 ролей. Кожна формулює резюме для аргументації на вашому боці.',
'roles_sub' => 'Вибір ролі сторони вказує агенту, яку позицію захищати. Підпитання, отримання та фінальне резюме слідують обраній стороні.',
'cta_title' => 'Готові будувати свою справу?',
'cta_sub' => 'Безкоштовно для членів Do Better Norge. Кредитна картка не потрібна.',
'btn_open' => 'Відкрити Advocate →',
'btn_signin_cta' => 'Увійти, щоб використовувати Advocate →',
'btn_register' => 'Зареєструватися безкоштовно',
),
'pl' =>
array (
'nav_about' => 'O nas',
'nav_guide' => 'Podręcznik użytkownika',
'nav_howit' => 'Jak to działa',
'nav_opentool' => '← Otwórz narzędzie',
'nav_signin' => 'Zaloguj się',
'nav_open' => 'Otwórz Advocate →',
'hero_kicker' => 'AI Pisma prawne · Opieka nad dziećmi · Hard-RAG Grounded',
'hero_title' => 'Twój AI-adwokat. Argumentuje po Twojej stronie.',
'hero_sub' => 'Advocate generuje stronnicze pismo prawne dla Twojej sprawy dotyczącej opieki nad dziećmi — oparte na norweskich przepisach Lovdata, orzeczeniach ECHR i wytycznych Bufdir. Każdy argument jest sformułowany, aby wzmocnić Twoją pozycję. Każda cytacja § jest weryfikowana w odniesieniu do 220 000+ zindeksowanych przepisów.',
'stat_legal' => 'zindeksowane przepisy prawne',
'stat_roles' => 'role stron',
'stat_slices' => 'sekcje korpusu',
'stat_pipeline' => 'kroki pipeline',
'btn_try' => 'Wypróbuj Advocate za darmo →',
'btn_guide' => 'Podręcznik użytkownika',
'btn_howit' => 'Jak to działa',
'what_eyebrow' => 'Co otrzymujesz',
'what_title' => 'Pismo, które walczy po Twojej stronie.',
'f1_title' => 'Argumentuj NA RZECZ swojego klienta',
'f1_body' => 'Każde podpytanie, przejście pobierania i finalne pismo jest sformułowane, aby wzmocnić pozycję klienta — i ujawnić słabości strony przeciwnej. Wybierz rolę strony raz; agent pozostaje stronniczy przez cały czas.',
'f2_title' => 'Zweryfikowane cytaty z ustaw i ECHR',
'f2_body' => 'Źródła z Lovdata, ECHR HUDOC, wytycznych Bufdir i norweskich orzeczeń sądowych. Każde twierdzenie w piśmie jest powiązane z pobranym fragmentem. Jeśli nie można zweryfikować — nie pojawia się.',
'f3_title' => 'Prześlij własne akta sprawy',
'f3_body_html' => 'Prześlij pliki PDF, postanowienia sądowe, opinie biegłych (DOCX lub TXT). Dokumenty są dzielone na fragmenty i przeszukiwane obok korpusu prawnego. Przetwarzane <strong>tylko w pamięci</strong>, nigdy nie przechowywane.',
'how_eyebrow' => 'Jak to działa',
'how_title' => 'Wybierz rolę → opisz spór → otrzymaj pismo.',
'how_sub' => 'Trzy kroki od pustego formularza do prawnie ugruntowanego stronniczego pisma. Nie jest wymagana wiedza prawnicza.',
's1_title' => 'Wybierz, kogo reprezentujesz',
's1_body' => 'Wybierz spośród 9 ról stron — biologiczni rodzice, opiekun zastępczy, rodzic adopcyjny, dziecko, dalsza rodzina lub Barnevernet. Agent formułuje każde podpytanie i cytację, aby argumentować na rzecz wybranej strony.',
's1_example' => 'Np. "Ojciec biologiczny" — pismo argumentuje za utrzymaniem lub przywróceniem kontaktu rodzicielskiego.',
's2_title' => 'Opisz spór',
's2_body' => 'Wklej lub wpisz fakty sprawy (do 4 000 znaków). Opcjonalnie prześlij dokumenty sprawy — postanowienia sądowe, opinie biegłych, korespondencję. Agent czyta zarówno korpus prawny, jak i Twoje pliki.',
's2_example' => 'Wynik: TWOJE NAJSILNIEJSZE ARGUMENTY · Pismo adwokackie · LUKI W POZYCJI STRONY PRZECIWNEJ · Ślad badawczy podpytań.',
's3_title' => 'Otrzymaj swoje pismo adversarialne',
's3_body_html' => 'Agent generuje adversarialne podpytania, pobiera obowiązujące prawo i syntezuje stronnicze pismo z cytacjami inline. Jedno kliknięcie, aby <strong>uruchomić kontropinię</strong> dla strony przeciwnej.',
's3_example' => 'Działa w 15180 s w zależności od silnika. Kontropinia dostępna jednym kliknięciem.',
'ss_eyebrow' => 'Zrzuty ekranu',
'ss_title' => 'Zobacz to w akcji.',
'g1_caption' => 'Formularz: wybierz, kogo reprezentujesz, opisz sprawę, wybierz silnik i korpus.',
'g2_caption' => 'Wynik: Twoje najsilniejsze argumenty ze źródłami, a następnie pełne pismo adwokackie.',
'g3_caption' => 'Ślad badawczy: każde podpytanie z pobranymi źródłami — sprawy ECHR i przesłane dokumenty.',
'g4_caption' => 'Analiza: luki w pozycji strony przeciwnej, co pozostaje niepewne i Twój następny praktyczny krok.',
'hood_eyebrow' => 'Pod maską',
'hood_title' => 'Zasilany przez specjalnie zaprojektowany model LLM do prawa.',
'llm_badge' => 'Model dostosowany',
'llm_body_html' => 'Model QLoRA dostosowany do tekstów norweskiego prawa dotyczącego opieki nad dziećmi i prawa administracyjnego. dbn-legal-agent rozumie słownictwo proceduralne barnevernsloven i barneloven — czego wymaga ECHR Art. 8 w sprawach o opiekę, jak można zakwestionować obowiązek oceny Barnevernet.',
'llm_s1' => 'metoda dostosowania',
'llm_s2' => 'prawo opieki nad dziećmi',
'llm_s3' => 'szkielet pisania',
'llm_s4' => 'architektura pipeline',
'roles_eyebrow' => 'Role stron',
'roles_title' => '9 ról. Każda formułuje pismo, aby argumentować po Twojej stronie.',
'roles_sub' => 'Wybór roli strony informuje agenta, czyją pozycję bronić. Podpytania, pobieranie i finalne pismo podążają za wybraną stroną.',
'cta_title' => 'Gotowy do budowania swojej sprawy?',
'cta_sub' => 'Darmowe dla członków Do Better Norge. Nie jest wymagana karta kredytowa.',
'btn_open' => 'Otwórz Advocate →',
'btn_signin_cta' => 'Zaloguj się, aby użyć Advocate →',
'btn_register' => 'Zarejestruj się za darmo',
),
);
+327
View File
@@ -0,0 +1,327 @@
<?php
return array (
'en' =>
array (
'nav_about' => 'About',
'nav_guide' => 'User guide',
'nav_howit' => 'How it works',
'nav_opentool' => '← Open the tool',
'nav_signin' => 'Sign in',
'nav_open' => 'Open Advocate →',
'hero_kicker' => 'User Guide · Advocate · Step-by-step',
'hero_title' => 'How to use Advocate.',
'hero_sub' => 'A complete walkthrough of every control — from selecting your party role to reading the brief and running a counter-argument.',
'toc_title' => 'In this guide',
's1_head' => '1. Language',
's2_head' => '2. Who you\'re representing',
's3_head' => '3. Case description',
's4_head' => '4. Engine',
's5_head' => '5. Corpus slices',
's6_head' => '6. Advanced controls',
's7_head' => '7. Upload case files',
's8_head' => '8. Preview research angles',
's9_head' => '9. Understanding the output',
's10_head' => '10. Counter-brief',
's11_head' => '11. Tips',
's1_title' => 'Language',
's1_body' => 'Four language pills appear at the top of the form: EN, NO, UK, PL. Switching language changes the form labels and the UI only — the agent always outputs the brief in English regardless of this setting. Use your language to read the form more comfortably.',
's2_title' => 'Who you\'re representing',
's2_body' => 'The most important control. Select the party whose position the agent should argue for. The dropdown sets the framing for every sub-question, every retrieval pass, and the final brief.',
's2_table_col1' => 'Role',
's2_table_col2' => 'Governing law',
's2_table_col3' => 'Typical use',
's3_title' => 'Case description',
's3_body' => 'Type or paste the facts of the case — up to 4,000 characters. Describe what happened, what the dispute is, and what matters most to your client. The more specific you are, the more targeted the sub-questions and the more relevant the retrieved statutes.',
's3_tip' => 'Tip: include key dates, the names of the bodies involved (e.g. Barnevernet, Statsforvalteren), and the specific decisions being challenged.',
's4_title' => 'Engine',
's4_body' => 'Four engines are available. All use the same Hard-RAG pipeline and the same corpus — only the synthesis model differs.',
's4_table_col1' => 'Engine',
's4_table_col2' => 'Speed',
's4_table_col3' => 'Best for',
's5_title' => 'Corpus slices',
's5_body' => 'Eight toggleable slices control which parts of the legal corpus are searched. Three are ON by default — the core slices for most child-welfare cases. Enable additional slices for more targeted research.',
's5_table_col1' => 'Slice',
's5_table_col2' => 'Default',
's5_table_col3' => 'Covers',
's5_table_col4' => 'Enable when',
's6_title' => 'Advanced controls',
's6_body' => 'Click "Advanced controls" to expand five sliders that tune retrieval depth and synthesis behaviour. The defaults are calibrated for most cases — adjust only if you need deeper or narrower research.',
's6_table_col1' => 'Control',
's6_table_col2' => 'Range',
's6_table_col3' => 'Default',
's6_table_col4' => 'What it does',
's7_title' => 'Upload case files',
's7_body' => 'Drop PDF, DOCX, or TXT files into the upload zone (or click Browse). Up to 5 files. Your documents are chunked into 512-token passages, embedded with nomic-embed-text, and searched alongside the legal corpus in the same retrieval pass. Files are processed in memory only — nothing is stored or retained after your session ends.',
's7_tip' => 'Tip: upload the Barnevernet assessment report, court order, or expert report most relevant to the case. The agent will cite passages from your files alongside Lovdata statutes.',
's8_title' => 'Preview research angles',
's8_body' => 'Click "Preview research angles first" instead of "Research my case" to see the adversarial sub-questions the agent has generated before it runs the full retrieval. You can edit any sub-question and then click "Run with these angles" — or discard and run fresh.',
's8_tip' => 'Tip: use Preview when the case is complex or unusual. Editing a sub-question lets you steer the retrieval toward a specific statute or procedural issue.',
's9_title' => 'Understanding the output',
's9_body' => 'The output area has four distinct panels:',
's9_p1_title' => 'YOUR STRONGEST ARGUMENTS',
's9_p1_body' => 'A bullet list of the most powerful points in favour of your client, each with inline source numbers. Click a source number to open the full passage in a modal.',
's9_p2_title' => 'Advocate brief',
's9_p2_body' => 'The full partisan brief — prose paragraphs grounded in retrieved statutes and ECHR authorities, all framed to argue for the selected party.',
's9_p3_title' => 'GAPS IN THE OPPOSING POSITION',
's9_p3_body' => 'Weaknesses in the other side\'s case, identified from the same retrieval. Useful for anticipating counter-arguments in court or mediation.',
's9_p4_title' => 'Sub-question research trail',
's9_p4_body' => 'Each adversarial sub-question the agent generated, with its retrieved sources listed beneath. Corpus passages show the Lovdata or ECHR reference; uploaded-doc passages show the filename and excerpt. Click "Branch ↓" to run a deeper dive on any single sub-question.',
's10_title' => 'Counter-brief',
's10_body' => 'At the top of the output, a banner shows "See the other side? [Opposing party] — Run counter-brief →". Clicking it pre-fills the form with the opposing party role and re-runs the same case description. Useful for stress-testing your arguments before a hearing.',
's11_title' => 'Tips for best results',
'tip1' => 'Be specific in the case description — vague facts produce vague sub-questions.',
'tip2' => 'Upload the most relevant document (e.g. the assessment report) to blend case-specific passages with corpus law.',
'tip3' => 'Use the Norwegian specialist engine (dbn-legal-agent) for Barneloven, Barnevernsloven, and ECHR Art. 8 cases — it produces tighter legal register.',
'tip4' => 'Enable ECHR slice if the case involves proportionality arguments or cross-border elements.',
'tip5' => 'Enable Hague Convention slice for international child-abduction or wrongful-removal cases.',
'tip6' => 'Run a counter-brief before a hearing to anticipate the arguments you\'ll need to rebut.',
'cta_title' => 'Ready to build your case?',
'cta_sub' => 'Free for Do Better Norge members. No credit card required.',
'btn_open' => 'Open Advocate →',
'btn_signin_cta' => 'Sign in to use Advocate →',
'btn_register' => 'Register free',
),
'no' =>
array (
'nav_about' => 'Om',
'nav_guide' => 'Brukerveiledning',
'nav_howit' => 'Hvordan det fungerer',
'nav_opentool' => '← Åpne verktøyet',
'nav_signin' => 'Logg inn',
'nav_open' => 'Åpne Advocate →',
'hero_kicker' => 'Brukerveiledning · Advocate · Steg for steg',
'hero_title' => 'Slik bruker du Advocate.',
'hero_sub' => 'En komplett gjennomgang av hvert kontrollpunkt — fra valg av partsrolle til lesing av sammendraget og kjøring av et motsvar.',
'toc_title' => 'I denne veiledningen',
's1_head' => '1. Språk',
's2_head' => '2. Hvem du representerer',
's3_head' => '3. Saksbeskrivelse',
's4_head' => '4. Motor',
's5_head' => '5. Corpus-seksjoner',
's6_head' => '6. Avanserte innstillinger',
's7_head' => '7. Last opp saksdokumenter',
's8_head' => '8. Forhåndsvis forskningsvinkler',
's9_head' => '9. Forstå utdataene',
's10_head' => '10. Motsammendrag',
's11_head' => '11. Tips',
's1_title' => 'Språk',
's1_body' => 'Fire språkknapper vises øverst i skjemaet: EN, NO, UK, PL. Å bytte språk endrer kun skjemamerkene og brukergrensesnittet — agenten sender alltid ut sammendraget på engelsk uavhengig av denne innstillingen.',
's2_title' => 'Hvem du representerer',
's2_body' => 'Den viktigste kontrollen. Velg parten hvis posisjon agenten skal argumentere for. Rullegardinmenyen setter rammen for hvert delspørsmål, hvert hentingspass og det endelige sammendraget.',
's2_table_col1' => 'Rolle',
's2_table_col2' => 'Gjeldende lov',
's2_table_col3' => 'Typisk bruk',
's3_title' => 'Saksbeskrivelse',
's3_body' => 'Skriv inn eller lim inn faktaene i saken — opptil 4 000 tegn. Beskriv hva som skjedde, hva tvisten er, og hva som er viktigst for din klient.',
's3_tip' => 'Tips: ta med nøkkeldatoer, navnene på involverte organer, og de spesifikke avgjørelsene som utfordres.',
's4_title' => 'Motor',
's4_body' => 'Fire motorer er tilgjengelige. Alle bruker samme Hard-RAG-pipeline og same corpus — bare syntesemodellen er forskjellig.',
's4_table_col1' => 'Motor',
's4_table_col2' => 'Hastighet',
's4_table_col3' => 'Best for',
's5_title' => 'Corpus-seksjoner',
's5_body' => 'Åtte bryterbare seksjoner kontrollerer hvilke deler av det juridiske korpuset som søkes. Tre er PÅ som standard — kjernestykker for de fleste barnevernssaker.',
's5_table_col1' => 'Seksjon',
's5_table_col2' => 'Standard',
's5_table_col3' => 'Dekker',
's5_table_col4' => 'Aktiver når',
's6_title' => 'Avanserte innstillinger',
's6_body' => 'Klikk "Avanserte innstillinger" for å utvide fem glidere som justerer hentingsdybde og synteseadferd.',
's6_table_col1' => 'Kontroll',
's6_table_col2' => 'Område',
's6_table_col3' => 'Standard',
's6_table_col4' => 'Hva den gjør',
's7_title' => 'Last opp saksdokumenter',
's7_body' => 'Slipp PDF, DOCX eller TXT-filer i opplastingssonen. Opptil 5 filer. Dokumentene deles inn i 512-token passasjer og søkes ved siden av det juridiske korpuset. Filer behandles kun i minne — ingenting lagres.',
's7_tip' => 'Tips: last opp den mest relevante rapporten (f.eks. Barnevernets utredningsrapport) for å blande saksspecifikke passasjer med lov.',
's8_title' => 'Forhåndsvis forskningsvinkler',
's8_body' => 'Klikk "Forhåndsvis forskningsvinkler" for å se de motstandsorienterte delspørsmålene før full henting. Du kan redigere spørsmål og klikke "Kjør med disse vinklene".',
's8_tip' => 'Tips: bruk forhåndsvisning for komplekse eller uvanlige saker.',
's9_title' => 'Forstå utdataene',
's9_body' => 'Utdataområdet har fire distinkte paneler:',
's9_p1_title' => 'DINE STERKESTE ARGUMENTER',
's9_p1_body' => 'En punktliste over de mest kraftfulle punktene til fordel for din klient, med inline kildenumre.',
's9_p2_title' => 'Advokatsammendrag',
's9_p2_body' => 'Det fullstendige partiske sammendraget — prosaavsnitt forankret i hentede lover og ECHR-autoriteter.',
's9_p3_title' => 'HULL I MOTPARTENS POSISJON',
's9_p3_body' => 'Svakheter i motpartens sak, identifisert fra den samme hentingen.',
's9_p4_title' => 'Forskningsspor for delspørsmål',
's9_p4_body' => 'Hvert motstandsorientert delspørsmål med hentede kilder. Klikk "Forgren ↓" for å dykke dypere inn i et enkelt delspørsmål.',
's10_title' => 'Motsammendrag',
's10_body' => 'Øverst i utdataene vises et banner med "Se den andre siden? — Kjør motsammendrag →". Klikk for å kjøre det samme tilfellet med motsatt partsrolle.',
's11_title' => 'Tips for best resultat',
'tip1' => 'Vær spesifikk i saksbeskrivelsen — vage fakta gir vage delspørsmål.',
'tip2' => 'Last opp det mest relevante dokumentet for å blande saksspecifikke passasjer med lov.',
'tip3' => 'Bruk norsk spesialistmotor (dbn-legal-agent) for Barneloven, Barnevernsloven og EMK Art. 8-saker.',
'tip4' => 'Aktiver ECHR-seksjonen for proporsjonalitetsargumenter eller grenseoverskridende elementer.',
'tip5' => 'Aktiver Haag-konvensjonsseksjonen for internasjonale barnebortføringssaker.',
'tip6' => 'Kjør et motsammendrag før et rettsmøte for å forutse argumentene du må tilbakevise.',
'cta_title' => 'Klar til å bygge saken din?',
'cta_sub' => 'Gratis for Do Better Norge-medlemmer. Ingen kredittkort nødvendig.',
'btn_open' => 'Åpne Advocate →',
'btn_signin_cta' => 'Logg inn for å bruke Advocate →',
'btn_register' => 'Registrer gratis',
),
'uk' =>
array (
'nav_about' => 'Про нас',
'nav_guide' => 'Посібник користувача',
'nav_howit' => 'Як це працює',
'nav_opentool' => '← Відкрити інструмент',
'nav_signin' => 'Увійти',
'nav_open' => 'Відкрити Advocate →',
'hero_kicker' => 'Посібник · Advocate · Покроково',
'hero_title' => 'Як користуватися Advocate.',
'hero_sub' => 'Повний покроковий огляд кожного елемента управління — від вибору ролі сторони до читання резюме та запуску контраргументу.',
'toc_title' => 'У цьому посібнику',
's1_head' => '1. Мова',
's2_head' => '2. Кого ви представляєте',
's3_head' => '3. Опис справи',
's4_head' => '4. Двигун',
's5_head' => '5. Розділи корпусу',
's6_head' => '6. Розширені налаштування',
's7_head' => '7. Завантаження файлів справи',
's8_head' => '8. Попередній перегляд кутів дослідження',
's9_head' => '9. Розуміння виведення',
's10_head' => '10. Контррезюме',
's11_head' => '11. Поради',
's1_title' => 'Мова',
's1_body' => 'Чотири мовні кнопки з\'являються у верхній частині форми: EN, NO, UK, PL. Зміна мови змінює лише мітки форми та інтерфейс.',
's2_title' => 'Кого ви представляєте',
's2_body' => 'Найважливіший елемент управління. Виберіть сторону, позицію якої агент повинен аргументувати.',
's2_table_col1' => 'Роль',
's2_table_col2' => 'Застосовне право',
's2_table_col3' => 'Типове використання',
's3_title' => 'Опис справи',
's3_body' => 'Введіть або вставте факти справи — до 4 000 символів. Опишіть, що сталося, у чому полягає суперечка, і що найважливіше для вашого клієнта.',
's3_tip' => 'Порада: включіть ключові дати, назви залучених органів та конкретні рішення, що оскаржуються.',
's4_title' => 'Двигун',
's4_body' => 'Доступні чотири двигуни. Всі використовують той самий конвеєр Hard-RAG і той самий корпус.',
's4_table_col1' => 'Двигун',
's4_table_col2' => 'Швидкість',
's4_table_col3' => 'Найкраще для',
's5_title' => 'Розділи корпусу',
's5_body' => 'Вісім перемикальних розділів контролюють, які частини правового корпусу шукаються. Три УВІМКНЕНІ за замовчуванням.',
's5_table_col1' => 'Розділ',
's5_table_col2' => 'За замовчуванням',
's5_table_col3' => 'Охоплює',
's5_table_col4' => 'Увімкнути коли',
's6_title' => 'Розширені налаштування',
's6_body' => 'Натисніть "Розширені налаштування", щоб розгорнути п\'ять повзунків.',
's6_table_col1' => 'Елемент управління',
's6_table_col2' => 'Діапазон',
's6_table_col3' => 'За замовчуванням',
's6_table_col4' => 'Що робить',
's7_title' => 'Завантаження файлів справи',
's7_body' => 'Перетягніть PDF, DOCX або TXT файли в зону завантаження. До 5 файлів. Обробляється лише в пам\'яті — нічого не зберігається.',
's7_tip' => 'Порада: завантажте найбільш релевантний документ для поєднання конкретних пасажів справи із законодавством.',
's8_title' => 'Попередній перегляд кутів дослідження',
's8_body' => 'Натисніть "Попередній перегляд кутів дослідження" перед повним пошуком. Ви можете редагувати підпитання та натиснути "Запустити з цими кутами".',
's8_tip' => 'Порада: використовуйте попередній перегляд для складних або незвичних справ.',
's9_title' => 'Розуміння виведення',
's9_body' => 'Область виведення має чотири різні панелі:',
's9_p1_title' => 'ВАШІ НАЙСИЛЬНІШІ АРГУМЕНТИ',
's9_p1_body' => 'Маркований список найпотужніших аргументів на користь вашого клієнта.',
's9_p2_title' => 'Адвокатське резюме',
's9_p2_body' => 'Повне упереджене резюме — прозові абзаци, засновані на отриманих законах та авторитетах ЄСПЛ.',
's9_p3_title' => 'ПРОГАЛИНИ В ПОЗИЦІЇ ОПОНЕНТА',
's9_p3_body' => 'Слабкі місця у справі іншої сторони.',
's9_p4_title' => 'Дослідницький слід підпитань',
's9_p4_body' => 'Кожне змагальне підпитання з отриманими джерелами. Натисніть "Розгалужити ↓" для глибшого занурення.',
's10_title' => 'Контррезюме',
's10_body' => 'Угорі виведення з\'являється банер "Побачити іншу сторону? — Запустити контррезюме →". Натисніть, щоб запустити ту саму справу з протилежною роллю сторони.',
's11_title' => 'Поради для найкращих результатів',
'tip1' => 'Будьте конкретними в описі справи — розпливчасті факти дають розпливчасті підпитання.',
'tip2' => 'Завантажте найбільш релевантний документ для поєднання конкретних пасажів справи із законодавством.',
'tip3' => 'Використовуйте норвезький спеціалізований двигун для справ barnevernsloven та ЄСПЛ Стаття 8.',
'tip4' => 'Увімкніть розділ ЄСПЛ для аргументів пропорційності або транскордонних елементів.',
'tip5' => 'Увімкніть розділ Гаазької конвенції для міжнародного викрадення дітей.',
'tip6' => 'Запустіть контррезюме перед слуханням для передбачення аргументів.',
'cta_title' => 'Готові будувати свою справу?',
'cta_sub' => 'Безкоштовно для членів Do Better Norge. Кредитна картка не потрібна.',
'btn_open' => 'Відкрити Advocate →',
'btn_signin_cta' => 'Увійти, щоб використовувати Advocate →',
'btn_register' => 'Зареєструватися безкоштовно',
),
'pl' =>
array (
'nav_about' => 'O nas',
'nav_guide' => 'Podręcznik użytkownika',
'nav_howit' => 'Jak to działa',
'nav_opentool' => '← Otwórz narzędzie',
'nav_signin' => 'Zaloguj się',
'nav_open' => 'Otwórz Advocate →',
'hero_kicker' => 'Podręcznik · Advocate · Krok po kroku',
'hero_title' => 'Jak używać Advocate.',
'hero_sub' => 'Kompletny przewodnik po każdym elemencie sterowania — od wyboru roli strony do czytania pisma i uruchamiania kontrargumentu.',
'toc_title' => 'W tym przewodniku',
's1_head' => '1. Język',
's2_head' => '2. Kogo reprezentujesz',
's3_head' => '3. Opis sprawy',
's4_head' => '4. Silnik',
's5_head' => '5. Sekcje korpusu',
's6_head' => '6. Zaawansowane ustawienia',
's7_head' => '7. Prześlij akta sprawy',
's8_head' => '8. Podgląd kątów badań',
's9_head' => '9. Rozumienie wyników',
's10_head' => '10. Kontrpismo',
's11_head' => '11. Wskazówki',
's1_title' => 'Język',
's1_body' => 'Cztery przyciski języka pojawiają się na górze formularza: EN, NO, UK, PL. Zmiana języka zmienia tylko etykiety formularza i interfejs użytkownika.',
's2_title' => 'Kogo reprezentujesz',
's2_body' => 'Najważniejszy element sterowania. Wybierz stronę, której pozycję agent powinien bronić.',
's2_table_col1' => 'Rola',
's2_table_col2' => 'Obowiązujące prawo',
's2_table_col3' => 'Typowe zastosowanie',
's3_title' => 'Opis sprawy',
's3_body' => 'Wpisz lub wklej fakty sprawy — do 4 000 znaków. Opisz, co się stało, jaki jest spór i co jest najważniejsze dla Twojego klienta.',
's3_tip' => 'Wskazówka: uwzględnij kluczowe daty, nazwy zaangażowanych organów i konkretne decyzje, które są kwestionowane.',
's4_title' => 'Silnik',
's4_body' => 'Dostępne są cztery silniki. Wszystkie używają tego samego pipeline Hard-RAG i tego samego korpusu.',
's4_table_col1' => 'Silnik',
's4_table_col2' => 'Prędkość',
's4_table_col3' => 'Najlepszy do',
's5_title' => 'Sekcje korpusu',
's5_body' => 'Osiem przełączalnych sekcji kontroluje, które części korpusu prawnego są przeszukiwane. Trzy są WŁĄCZONE domyślnie.',
's5_table_col1' => 'Sekcja',
's5_table_col2' => 'Domyślnie',
's5_table_col3' => 'Obejmuje',
's5_table_col4' => 'Włącz gdy',
's6_title' => 'Zaawansowane ustawienia',
's6_body' => 'Kliknij "Zaawansowane ustawienia", aby rozwinąć pięć suwaków.',
's6_table_col1' => 'Sterowanie',
's6_table_col2' => 'Zakres',
's6_table_col3' => 'Domyślnie',
's6_table_col4' => 'Co robi',
's7_title' => 'Prześlij akta sprawy',
's7_body' => 'Przeciągnij pliki PDF, DOCX lub TXT do strefy przesyłania. Do 5 plików. Przetwarzane tylko w pamięci — nic nie jest przechowywane.',
's7_tip' => 'Wskazówka: prześlij najbardziej istotny dokument, aby połączyć fragmenty specyficzne dla sprawy z prawem.',
's8_title' => 'Podgląd kątów badań',
's8_body' => 'Kliknij "Podgląd kątów badań" przed pełnym pobieraniem. Możesz edytować podpytania i kliknąć "Uruchom z tymi kątami".',
's8_tip' => 'Wskazówka: użyj podglądu przy złożonych lub nietypowych sprawach.',
's9_title' => 'Rozumienie wyników',
's9_body' => 'Obszar wyników ma cztery odrębne panele:',
's9_p1_title' => 'TWOJE NAJSILNIEJSZE ARGUMENTY',
's9_p1_body' => 'Lista punktowana najpotężniejszych argumentów na rzecz Twojego klienta.',
's9_p2_title' => 'Pismo adwokackie',
's9_p2_body' => 'Pełne stronnicze pismo — akapity prozą oparte na pobranych przepisach i orzeczeniach ECHR.',
's9_p3_title' => 'LUKI W POZYCJI STRONY PRZECIWNEJ',
's9_p3_body' => 'Słabości sprawy drugiej strony.',
's9_p4_title' => 'Ślad badawczy podpytań',
's9_p4_body' => 'Każde adversarialne podpytanie z pobranymi źródłami. Kliknij "Rozgałęź ↓" dla głębszego zagłębienia.',
's10_title' => 'Kontrpismo',
's10_body' => 'Na górze wyników pojawia się baner "Zobacz drugą stronę? — Uruchom kontrpismo →". Kliknij, aby uruchomić tę samą sprawę z rolą strony przeciwnej.',
's11_title' => 'Wskazówki dla najlepszych wyników',
'tip1' => 'Bądź konkretny w opisie sprawy — niejasne fakty dają niejasne podpytania.',
'tip2' => 'Prześlij najbardziej istotny dokument, aby połączyć fragmenty specyficzne dla sprawy z prawem.',
'tip3' => 'Użyj norweskiego silnika specjalistycznego dla spraw barnevernsloven i ECHR Art. 8.',
'tip4' => 'Włącz sekcję ECHR dla argumentów proporcjonalności lub elementów transgranicznych.',
'tip5' => 'Włącz sekcję Konwencji Haskiej dla przypadków międzynarodowego uprowadzenia dzieci.',
'tip6' => 'Uruchom kontrpismo przed rozprawą, aby przewidzieć argumenty do obalenia.',
'cta_title' => 'Gotowy do budowania swojej sprawy?',
'cta_sub' => 'Darmowe dla członków Do Better Norge. Nie jest wymagana karta kredytowa.',
'btn_open' => 'Otwórz Advocate →',
'btn_signin_cta' => 'Zaloguj się, aby użyć Advocate →',
'btn_register' => 'Zarejestruj się za darmo',
),
);
+263
View File
@@ -0,0 +1,263 @@
<?php
return array (
'en' =>
array (
'nav_about' => 'About',
'nav_guide' => 'User guide',
'nav_howit' => 'How it works',
'nav_opentool' => '← Open the tool',
'nav_signin' => 'Sign in',
'nav_open' => 'Open Advocate →',
'hero_kicker' => 'Architecture · Hard-RAG · Fine-tuned LLM',
'hero_title' => 'How Advocate builds your brief.',
'hero_sub' => 'A 7-step pipeline that turns your case description into a legally grounded partisan brief — adversarial sub-questions, hybrid retrieval from 220,000+ passages, and a fine-tuned Norwegian law model for synthesis.',
'stat_legal' => 'legal passages indexed',
'stat_slices' => 'corpus slices',
'stat_steps' => 'pipeline steps',
'stat_model' => 'fine-tuned model',
'pipe_eyebrow' => 'Pipeline architecture',
'pipe_title' => 'Seven steps from case facts to partisan brief.',
'pipe_sub' => 'Each step is visible in the Reasoning panel as the run progresses. No black-box generation — every retrieval pass, dedup, and synthesis is logged.',
'step1_title' => 'Query interpretation',
'step1_body' => 'The seed text is parsed for case type, parties involved, applicable acts, and time context. If the input is clear enough, this step is skipped and the raw seed is passed directly to expansion.',
'step2_title' => 'Query expansion',
'step2_body' => 'The agent generates 35 adversarial sub-questions, each framed to strengthen the selected party\'s position. Sub-questions target different legal angles: procedural obligations, proportionality, ECHR anchors, evidentiary standards.',
'step3_title' => 'Slice resolution',
'step3_body' => 'Active corpus slices are resolved into a Qdrant filter. Candidate documents from the selected slices constrain the vector search space — preventing retrieval from unrelated areas of law.',
'step4_title' => 'Upload indexing',
'step4_body' => 'Uploaded files are chunked into 512-token passages and embedded with nomic-embed-text. The resulting vectors are stored in an in-memory index — searched in the same retrieval pass as the legal corpus, then discarded at session end.',
'step5_title' => 'Retrieval',
'step5_body' => 'For each sub-question: hybrid BM25 + vector search → RRF fusion → reranker. Corpus hits and upload hits are merged, deduped, and trimmed to the configured "Sources kept" limit. Output: N unique ranked passages.',
'step6_title' => 'Synthesis',
'step6_body' => 'The selected engine (dbn-legal-agent or Azure gpt-4o) synthesises the full output: YOUR STRONGEST ARGUMENTS, the advocate brief, GAPS IN THE OPPOSING POSITION, uncertainties, and the next practical step. All framed for the selected party role.',
'step7_title' => 'Citation confidence',
'step7_body' => 'Each inline citation is verified against its source passage. A confidence score is computed and surfaced in the output header. Low-confidence citations are flagged. No hallucinated § numbers reach the final brief.',
'rag_eyebrow' => 'Hard-RAG retrieval',
'rag_title' => 'Every claim traced to a source.',
'rag_sub' => 'Hard-RAG means no citation appears in the brief unless it was retrieved from the corpus or your uploaded files. The retrieval pipeline is deterministic and logged.',
'rag_step1' => 'Active slices → Qdrant payload filter',
'rag_step2' => 'Sub-questions → BM25 keyword search',
'rag_step3' => 'Sub-questions → vector similarity search',
'rag_step4' => 'RRF fusion (rank-based merge)',
'rag_step5' => 'Cross-encoder reranker',
'rag_step6' => 'Upload chunks merged',
'rag_step7' => 'Dedup → top N sources',
'rag_step8' => 'Synthesis with citations',
'corpus_eyebrow' => 'Knowledge base',
'corpus_title' => '220,000+ passages across 8 corpus slices.',
'corpus_sub' => 'The same corpus that powers Korrespond. Indexed from Lovdata, ECHR HUDOC, Norwegian appellate decisions, and Bufdir guidance.',
'llm_eyebrow' => 'Fine-tuned model',
'llm_title' => 'dbn-legal-agent — trained for Norwegian child-welfare law.',
'llm_body_html' => 'A QLoRA fine-tune trained on Norwegian child-welfare and administrative law text. dbn-legal-agent understands the procedural vocabulary of barnevernsloven and barneloven — the proportionality threshold for omsorgsovertakelse, how Barnevernet\'s § 4-1 / 4-4 duty of assessment can be challenged, what ECHR Art. 8 requires in care-order cases, and how the principle of <em>barnets beste</em> is weighed against parental rights in Norwegian courts.',
'llm_table_col1' => 'Pipeline step',
'llm_table_col2' => 'dbn-legal-agent role',
'privacy_eyebrow' => 'Privacy by design',
'privacy_title' => 'Your case data never leaves the request.',
'privacy_p1' => 'Uploaded files are chunked and embedded in-memory only — vectors are discarded when your session ends.',
'privacy_p2' => 'Case descriptions are used for retrieval and synthesis only. They are not logged, stored, or used for training.',
'privacy_p3' => 'The Qdrant corpus is read-only during retrieval — no user data is written to the vector database.',
'privacy_p4' => 'Azure OpenAI processing occurs within EU-region endpoints (West Europe).',
'privacy_p5' => 'Session-scoped uploads: each run gets a fresh in-memory index, isolated from other users.',
'privacy_p6' => 'No cookies, no persistent identifiers, no cross-session tracking on the doc pages.',
'cta_title' => 'See it in action.',
'cta_sub' => 'Free for Do Better Norge members. No credit card required.',
'btn_open' => 'Open Advocate →',
'btn_signin_cta' => 'Sign in to use Advocate →',
'btn_register' => 'Register free',
),
'no' =>
array (
'nav_about' => 'Om',
'nav_guide' => 'Brukerveiledning',
'nav_howit' => 'Hvordan det fungerer',
'nav_opentool' => '← Åpne verktøyet',
'nav_signin' => 'Logg inn',
'nav_open' => 'Åpne Advocate →',
'hero_kicker' => 'Arkitektur · Hard-RAG · Finjustert LLM',
'hero_title' => 'Slik bygger Advocate sammendraget ditt.',
'hero_sub' => 'En 7-trinns pipeline som gjør saksbeskrivelsen din til et juridisk forankret partisk sammendrag — motstandsorienterte delspørsmål, hybrid henting fra 220 000+ passasjer og en finjustert norsk rettsmodell.',
'stat_legal' => 'juridiske passasjer indeksert',
'stat_slices' => 'corpus-seksjoner',
'stat_steps' => 'pipeline-trinn',
'stat_model' => 'finjustert modell',
'pipe_eyebrow' => 'Pipeline-arkitektur',
'pipe_title' => 'Sju trinn fra saksfakta til partisk sammendrag.',
'pipe_sub' => 'Hvert trinn er synlig i Begrunnelsespanelet mens kjøringen pågår.',
'step1_title' => 'Søkefortolkning',
'step1_body' => 'Seed-teksten analyseres for sakstype, involverte parter, gjeldende lover og tidssammenheng.',
'step2_title' => 'Søkeutvidelse',
'step2_body' => 'Agenten genererer 35 motstandsorienterte delspørsmål, hvert utformet for å styrke den valgte partens posisjon.',
'step3_title' => 'Seksjonsoppløsning',
'step3_body' => 'Aktive corpus-seksjoner løses til et Qdrant-filter. Kandidatdokumenter begrenser søkerommet.',
'step4_title' => 'Opplastingsindeksering',
'step4_body' => 'Opplastede filer deles inn i 512-token passasjer og innbygges med nomic-embed-text. Lagres kun i minne.',
'step5_title' => 'Henting',
'step5_body' => 'For hvert delspørsmål: hybrid BM25 + vektorsøk → RRF-sammenslåing → omrangering. Korpus- og opplastingstreff slås sammen, dedupes og trimmes.',
'step6_title' => 'Syntese',
'step6_body' => 'Den valgte motoren syntetiserer hele utdataene: DINE STERKESTE ARGUMENTER, advokatsammendrag, HULL I MOTPARTENS POSISJON, usikkerheter og neste steg.',
'step7_title' => 'Sitatkonfidens',
'step7_body' => 'Hvert inline-sitat verifiseres mot kildepassasjen. En konfidenspoengsum beregnes. Ingen hallusinerte §-numre.',
'rag_eyebrow' => 'Hard-RAG-henting',
'rag_title' => 'Hvert påstand sporet til en kilde.',
'rag_sub' => 'Hard-RAG betyr at ingen referanse vises i sammendraget med mindre den ble hentet fra korpuset eller filene dine.',
'rag_step1' => 'Aktive seksjoner → Qdrant nyttlast-filter',
'rag_step2' => 'Delspørsmål → BM25-nøkkelordssøk',
'rag_step3' => 'Delspørsmål → vektorsimilaritetssøk',
'rag_step4' => 'RRF-sammenslåing (rangbasert sammenslåing)',
'rag_step5' => 'Kryss-koder omrangerer',
'rag_step6' => 'Opplastingsstykker slås sammen',
'rag_step7' => 'Dedup → topp N-kilder',
'rag_step8' => 'Syntese med referanser',
'corpus_eyebrow' => 'Kunnskapsbase',
'corpus_title' => '220 000+ passasjer over 8 corpus-seksjoner.',
'corpus_sub' => 'Samme corpus som driver Korrespond. Indeksert fra Lovdata, ECHR HUDOC, norske lagmannsrettavgjørelser og Bufdir-veiledning.',
'llm_eyebrow' => 'Finjustert modell',
'llm_title' => 'dbn-legal-agent — trent for norsk barnevernsrett.',
'llm_body_html' => 'En QLoRA-finjustering trent på norsk barnevernsrett og forvaltningsrett. dbn-legal-agent forstår det prosessuelle vokabularet i barnevernsloven og barneloven — proporsjonalitetsterskelen for omsorgsovertakelse, hvordan Barnevernets vurderingsplikt kan utfordres, og hva EMK Art. 8 krever i omsorgsovertakelsessaker.',
'llm_table_col1' => 'Pipeline-trinn',
'llm_table_col2' => 'dbn-legal-agent rolle',
'privacy_eyebrow' => 'Personvern etter design',
'privacy_title' => 'Saksdataene dine forlater aldri forespørselen.',
'privacy_p1' => 'Opplastede filer behandles kun i minne — vektorer slettes når sesjonen avsluttes.',
'privacy_p2' => 'Saksbeskrivelser brukes kun for henting og syntese. De logges ikke eller lagres.',
'privacy_p3' => 'Qdrant-korpuset er skrivebeskyttet under henting.',
'privacy_p4' => 'Azure OpenAI-behandling skjer innen EU-regionsendepunkter (Vest-Europa).',
'privacy_p5' => 'Sesjonsscoped opplastinger: hvert kjøring får en ny minneindeks, isolert fra andre brukere.',
'privacy_p6' => 'Ingen informasjonskapsler, ingen vedvarende identifikatorer på dokumentsidene.',
'cta_title' => 'Se det i aksjon.',
'cta_sub' => 'Gratis for Do Better Norge-medlemmer. Ingen kredittkort nødvendig.',
'btn_open' => 'Åpne Advocate →',
'btn_signin_cta' => 'Logg inn for å bruke Advocate →',
'btn_register' => 'Registrer gratis',
),
'uk' =>
array (
'nav_about' => 'Про нас',
'nav_guide' => 'Посібник користувача',
'nav_howit' => 'Як це працює',
'nav_opentool' => '← Відкрити інструмент',
'nav_signin' => 'Увійти',
'nav_open' => 'Відкрити Advocate →',
'hero_kicker' => 'Архітектура · Hard-RAG · Fine-tuned LLM',
'hero_title' => 'Як Advocate будує ваше резюме.',
'hero_sub' => '7-кроковий конвеєр, що перетворює опис вашої справи на юридично обґрунтоване упереджене резюме.',
'stat_legal' => 'індексовані правові положення',
'stat_slices' => 'розділи корпусу',
'stat_steps' => 'кроки конвеєра',
'stat_model' => 'модель з тонким налаштуванням',
'pipe_eyebrow' => 'Архітектура конвеєра',
'pipe_title' => 'Сім кроків від фактів справи до упередженого резюме.',
'pipe_sub' => 'Кожен крок видно на панелі обґрунтування під час виконання.',
'step1_title' => 'Інтерпретація запиту',
'step1_body' => 'Вихідний текст аналізується для типу справи, залучених сторін, застосовних законів.',
'step2_title' => 'Розширення запиту',
'step2_body' => 'Агент генерує 3–5 змагальних підпитань, кожне з яких сформульоване для зміцнення позиції обраної сторони.',
'step3_title' => 'Вирішення розділів',
'step3_body' => 'Активні розділи корпусу перетворюються на фільтр Qdrant.',
'step4_title' => 'Індексування завантажень',
'step4_body' => 'Завантажені файли розбиваються на пасажі по 512 токенів та вбудовуються з nomic-embed-text. Зберігаються лише в пам\'яті.',
'step5_title' => 'Отримання',
'step5_body' => 'Для кожного підпитання: гібридний BM25 + векторний пошук → злиття RRF → ранжування. Пасажі корпусу та завантажень об\'єднуються і дедублюються.',
'step6_title' => 'Синтез',
'step6_body' => 'Вибраний двигун синтезує повний вивід: ВАШІ НАЙСИЛЬНІШІ АРГУМЕНТИ, адвокатське резюме, ПРОГАЛИНИ В ПОЗИЦІЇ ОПОНЕНТА, невизначеності та наступний крок.',
'step7_title' => 'Достовірність цитат',
'step7_body' => 'Кожна вбудована цитата перевіряється по вихідному пасажу. Жодних вигаданих § номерів.',
'rag_eyebrow' => 'Отримання Hard-RAG',
'rag_title' => 'Кожне твердження прив\'язане до джерела.',
'rag_sub' => 'Hard-RAG означає, що жодна цитата не з\'являється в резюме, якщо вона не була отримана з корпусу або ваших файлів.',
'rag_step1' => 'Активні розділи → фільтр навантаження Qdrant',
'rag_step2' => 'Підпитання → ключове слово BM25',
'rag_step3' => 'Підпитання → векторний пошук подібності',
'rag_step4' => 'Злиття RRF',
'rag_step5' => 'Кросс-кодер ранжування',
'rag_step6' => 'Фрагменти завантажень об\'єднані',
'rag_step7' => 'Дедублікація → топ N джерел',
'rag_step8' => 'Синтез з цитатами',
'corpus_eyebrow' => 'База знань',
'corpus_title' => '220 000+ пасажів у 8 розділах корпусу.',
'corpus_sub' => 'Той самий корпус, що живить Korrespond. Індексований з Lovdata, ЄСПЛ HUDOC, норвезьких апеляційних рішень та керівництва Bufdir.',
'llm_eyebrow' => 'Модель з тонким налаштуванням',
'llm_title' => 'dbn-legal-agent — навчена для норвезького права із захисту дітей.',
'llm_body_html' => 'Модель QLoRA, налаштована на текст норвезького права із захисту дітей та адміністративного права. dbn-legal-agent розуміє процедурну лексику barnevernsloven і barneloven.',
'llm_table_col1' => 'Крок конвеєра',
'llm_table_col2' => 'Роль dbn-legal-agent',
'privacy_eyebrow' => 'Конфіденційність за дизайном',
'privacy_title' => 'Ваші дані справи ніколи не покидають запит.',
'privacy_p1' => 'Завантажені файли обробляються лише в пам\'яті — вектори видаляються по закінченні сесії.',
'privacy_p2' => 'Описи справ використовуються лише для отримання та синтезу. Не журналюються і не зберігаються.',
'privacy_p3' => 'Корпус Qdrant доступний лише для читання під час отримання.',
'privacy_p4' => 'Обробка Azure OpenAI відбувається в кінцевих точках регіону ЄС (Західна Європа).',
'privacy_p5' => 'Завантаження в рамках сесії: кожен запуск отримує новий індекс у пам\'яті, ізольований від інших.',
'privacy_p6' => 'Без файлів cookie, без постійних ідентифікаторів на сторінках документів.',
'cta_title' => 'Побачте це в дії.',
'cta_sub' => 'Безкоштовно для членів Do Better Norge. Кредитна картка не потрібна.',
'btn_open' => 'Відкрити Advocate →',
'btn_signin_cta' => 'Увійти, щоб використовувати Advocate →',
'btn_register' => 'Зареєструватися безкоштовно',
),
'pl' =>
array (
'nav_about' => 'O nas',
'nav_guide' => 'Podręcznik użytkownika',
'nav_howit' => 'Jak to działa',
'nav_opentool' => '← Otwórz narzędzie',
'nav_signin' => 'Zaloguj się',
'nav_open' => 'Otwórz Advocate →',
'hero_kicker' => 'Architektura · Hard-RAG · Fine-tuned LLM',
'hero_title' => 'Jak Advocate buduje Twoje pismo.',
'hero_sub' => '7-krokowy pipeline, który przekształca opis Twojej sprawy w prawnie ugruntowane stronnicze pismo.',
'stat_legal' => 'zindeksowane przepisy prawne',
'stat_slices' => 'sekcje korpusu',
'stat_steps' => 'kroki pipeline',
'stat_model' => 'model dostosowany',
'pipe_eyebrow' => 'Architektura pipeline',
'pipe_title' => 'Siedem kroków od faktów sprawy do stronniczego pisma.',
'pipe_sub' => 'Każdy krok jest widoczny w panelu Reasoning podczas przebiegu.',
'step1_title' => 'Interpretacja zapytania',
'step1_body' => 'Tekst źródłowy jest analizowany pod kątem typu sprawy, zaangażowanych stron i obowiązujących przepisów.',
'step2_title' => 'Rozszerzenie zapytania',
'step2_body' => 'Agent generuje 35 adversarialnych podpytań, każde sformułowane w celu wzmocnienia pozycji wybranej strony.',
'step3_title' => 'Rozwiązanie sekcji',
'step3_body' => 'Aktywne sekcje korpusu są przekształcane w filtr Qdrant.',
'step4_title' => 'Indeksowanie przesłanych plików',
'step4_body' => 'Przesłane pliki są dzielone na fragmenty po 512 tokenów i osadzane z nomic-embed-text. Przechowywane tylko w pamięci.',
'step5_title' => 'Pobieranie',
'step5_body' => 'Dla każdego podpytania: hybryda BM25 + wyszukiwanie wektorowe → fuzja RRF → reranking. Fragmenty korpusu i przesłanych plików są łączone i deduplikowane.',
'step6_title' => 'Synteza',
'step6_body' => 'Wybrany silnik syntetyzuje pełny wynik: TWOJE NAJSILNIEJSZE ARGUMENTY, pismo adwokackie, LUKI W POZYCJI STRONY PRZECIWNEJ, niepewności i następny krok.',
'step7_title' => 'Pewność cytacji',
'step7_body' => 'Każda cytacja inline jest weryfikowana względem fragmentu źródłowego. Żadnych halucynowanych § numerów.',
'rag_eyebrow' => 'Pobieranie Hard-RAG',
'rag_title' => 'Każde twierdzenie powiązane ze źródłem.',
'rag_sub' => 'Hard-RAG oznacza, że żadna cytacja nie pojawia się w piśmie, chyba że została pobrana z korpusu lub przesłanych plików.',
'rag_step1' => 'Aktywne sekcje → filtr ładunku Qdrant',
'rag_step2' => 'Podpytania → wyszukiwanie słów kluczowych BM25',
'rag_step3' => 'Podpytania → wektorowe wyszukiwanie podobieństwa',
'rag_step4' => 'Fuzja RRF',
'rag_step5' => 'Cross-encoder reranking',
'rag_step6' => 'Fragmenty przesłanych plików połączone',
'rag_step7' => 'Dedup → top N źródeł',
'rag_step8' => 'Synteza z cytacjami',
'corpus_eyebrow' => 'Baza wiedzy',
'corpus_title' => '220 000+ fragmentów w 8 sekcjach korpusu.',
'corpus_sub' => 'Ten sam korpus, który napędza Korrespond. Zindeksowany z Lovdata, ECHR HUDOC, norweskich orzeczeń apelacyjnych i wytycznych Bufdir.',
'llm_eyebrow' => 'Model dostosowany',
'llm_title' => 'dbn-legal-agent — wytrenowany dla norweskiego prawa opieki nad dziećmi.',
'llm_body_html' => 'Model QLoRA dostosowany do tekstów norweskiego prawa dotyczącego opieki nad dziećmi i prawa administracyjnego. dbn-legal-agent rozumie słownictwo proceduralne barnevernsloven i barneloven.',
'llm_table_col1' => 'Krok pipeline',
'llm_table_col2' => 'Rola dbn-legal-agent',
'privacy_eyebrow' => 'Prywatność przez projekt',
'privacy_title' => 'Dane Twojej sprawy nigdy nie opuszczają żądania.',
'privacy_p1' => 'Przesłane pliki są przetwarzane tylko w pamięci — wektory są usuwane po zakończeniu sesji.',
'privacy_p2' => 'Opisy spraw są używane tylko do pobierania i syntezy. Nie są rejestrowane ani przechowywane.',
'privacy_p3' => 'Korpus Qdrant jest tylko do odczytu podczas pobierania.',
'privacy_p4' => 'Przetwarzanie Azure OpenAI odbywa się w punktach końcowych regionu UE (Europa Zachodnia).',
'privacy_p5' => 'Przesyłanie w zakresie sesji: każde uruchomienie otrzymuje nowy indeks w pamięci, odizolowany od innych.',
'privacy_p6' => 'Bez ciasteczek, bez stałych identyfikatorów na stronach dokumentów.',
'cta_title' => 'Zobacz to w akcji.',
'cta_sub' => 'Darmowe dla członków Do Better Norge. Nie jest wymagana karta kredytowa.',
'btn_open' => 'Otwórz Advocate →',
'btn_signin_cta' => 'Zaloguj się, aby użyć Advocate →',
'btn_register' => 'Zarejestruj się za darmo',
),
);