Ctrl K
ComunidadGuías…

i18n/locales/nb.py

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
"""Norwegian Bokmål translations."""

MONTHS_SHORT = (
    "jan",
    "feb",
    "mar",
    "apr",
    "mai",
    "jun",
    "jul",
    "aug",
    "sep",
    "okt",
    "nov",
    "des",
)

TRANSLATIONS: dict[str, str] = {
    "App Name": "HjerneVakt",
    "Too many requests": "For mange forespørsler",
    "Please wait a moment and try again.": "Vent litt og prøv igjen.",
    "Search": "Søk",
    "Search YouTube": "Søk på YouTube",
    "Search or paste a link...": "Søk eller lim inn en lenke...",
    "Go": "Gå",
    "Hi {name}!": "Hei, {name}!",
    "Pick your icon": "Velg ikon",
    "Pick your color": "Velg farge",
    "Switch Profile": "Bytt profil",
    "Buy me a coffee": "Spander en kaffe",
    "Login": "Logg inn",
    "Who's Watching?": "Hvem ser?",
    "Enter PIN": "Skriv inn PIN",
    "Wrong PIN. Try again.": "Feil PIN. Prøv igjen.",
    "PIN": "PIN",
    "Enter": "Logg inn",
    "Switch profile": "Bytt profil",
    "Search: {query}": "Søk: {query}",
    'Results for "{query}"': 'Resultater for "{query}"',
    "Short": "Kort",
    "Request": "Be om",
    "Show More": "Vis mer",
    "No results found": "Ingen resultater",
    "Try a different search": "Prøv et annet søk",
    "Waiting...": "Venter...",
    "Waiting for approval...": "Venter på godkjenning...",
    "This page updates automatically when a decision is made": "Siden oppdateres automatisk når en avgjørelse er tatt.",
    "Not Approved": "Ikke godkjent",
    "This video wasn't approved by your parent. You can browse other videos or request a different one.": "Denne videoen ble ikke godkjent av en foresatt. Du kan se på andre videoer eller be om en annen.",
    "Back to Home": "Tilbake hjem",
    "Not Available": "Ikke tilgjengelig",
    "Videos Aren't Available Right Now": "Videoer er ikke tilgjengelige akkurat nå",
    "Videos are available from {start} to {end}": "Videoer er tilgjengelige fra {start} til {end}",
    "Available again {unlock_time}": "Tilgjengelig igjen {unlock_time}",
    "Time's Up": "Tiden er ute",
    "{category} Time's Up!": "{category}: Tiden er ute!",
    "{name} has used {used} out of {limit} {category} minutes today.": "{name} har brukt {used} av {limit} {category}-minutter i dag.",
    "You've used {used} out of {limit} {category} minutes today.": "Du har brukt {used} av {limit} {category}-minutter i dag.",
    "{name} can still watch:": "{name} kan fortsatt se:",
    "You can still watch:": "Du kan fortsatt se:",
    "{label} ({minutes} min left)": "{label} ({minutes} min igjen)",
    "({minutes} min left)": "({minutes} min igjen)",
    "Videos available again at {time}.": "Videoer er tilgjengelige igjen kl. {time}.",
    "Time resets tomorrow at midnight.": "Tiden nullstilles i morgen ved midnatt.",
    "{name} has used {used} out of {limit} minutes today.": "{name} har brukt {used} av {limit} minutter i dag.",
    "You've used {used} out of {limit} minutes today.": "Du har brukt {used} av {limit} minutter i dag.",
    "Available until {time}": "Tilgjengelig til {time}",
    "No time remaining today": "Ingen tid igjen i dag",
    "{remaining} min remaining today": "{remaining} min igjen i dag",
    "{used} / {limit} min used": "{used} / {limit} min brukt",
    "Watch Now": "Se nå",
    "All": "Alle",
    "time's up": "tiden er ute",
    "of {limit}m": "av {limit}m",
    "Unlimited": "Ubegrenset",
    "Watch activity": "Se aktivitet",
    "Your Requests": "Dine forespørsler",
    "{views} views": "{views} visninger",
    "Channel Videos": "Kanalvideoer",
    "No videos yet": "Ingen videoer ennå",
    "No videos to show": "Ingen videoer å vise",
    "Search for something to watch!": "Søk etter noe å se på!",
    "Shorts": "Shorts",
    "Show<br>More": "Vis<br>mer",
    "Hide": "Skjul",
    "Show": "Vis",
    "{category}: {remaining} min remaining": "{category}: {remaining} min igjen",
    "{used} / {limit} min used detail": "{used} / {limit} min brukt",
    "{category} time left:": "{category} tid igjen:",
    "Back to Library": "Tilbake til biblioteket",
    "Less than 5 minutes remaining": "Mindre enn 5 minutter igjen",
    "Less than 1 minute remaining!": "Mindre enn 1 minutt igjen!",
    "Redirecting to home...": "Sender deg hjem...",
    "Fullscreen": "Fullskjerm",
    "Video finished": "Videoen er ferdig",
    "Results": "Resultater",
    "Loading...": "Laster...",
    "Failed to load": "Kunne ikke laste inn",
    "Today's Activity": "Dagens aktivitet",
    "Requests": "Forespørsler",
    "Pending Requests": "Ventende forespørsler",
    "Approved by Request": "Godkjent etter forespørsel",
    "No pending requests": "Ingen ventende forespørsler",
    "No approved requests": "Ingen godkjente forespørsler",
    "No requests yet": "Ingen forespørsler ennå",
    "Requested videos will appear here": "Forespurte videoer vises her",
    "Videos waiting for approval will appear here": "Videoer som venter på godkjenning, vises her",
    "Approved videos outside allowed channels will stay here": "Godkjente videoer utenfor tillatte kanaler blir her",
    "History": "Historikk",
    "No videos watched yet": "Ingen videoer sett ennå",
    "Videos you start will appear here": "Videoer du starter, vises her",
    "Try another filter": "Prøv et annet filter",
    "Yesterday": "I går",
    "Active": "Aktivitet",
    "Dismiss": "Skjul",
    "Back": "Tilbake",
    "Back to {page}": "Tilbake til {page}",
    "Library": "biblioteket",
    "Activity": "aktivitet",
    "Video": "video",
    "Pending": "ventende",
    "Edu min": "Læring min",
    "Edu left": "Læring igjen",
    "Fun min": "Moro min",
    "Fun left": "Moro igjen",
    "{label} min": "{label} min",
    "{label} left": "{label} igjen",
    "min watched": "min sett",
    "min allowed": "min tillatt",
    "min left": "min igjen",
    "min watched today": "min sett i dag",
    "{total}/{limit} min": "{total}/{limit} min",
    "{total} min (no limit)": "{total} min (ingen grense)",
    "Entertainment (uncategorized)": "Underholdning (ukategorisert)",
    "No videos watched today": "Ingen videoer sett i dag",
    "Your watch history will appear here": "Sehistorikken din vises her",
    "That doesn't look like a valid YouTube link or video ID.": "Det ser ikke ut som en gyldig YouTube-lenke eller video-ID.",
    "Couldn't load video info — it may be private, age-restricted, or region-locked.": "Kunne ikke hente videoinfo. Den kan være privat, aldersbegrenset eller regionslåst.",
    "Educational": "Læring",
    "Entertainment": "Underholdning",
    "Edu": "Læring",
    "Fun": "Moro",
    "Monday": "Mandag",
    "Tuesday": "Tirsdag",
    "Wednesday": "Onsdag",
    "Thursday": "Torsdag",
    "Friday": "Fredag",
    "Saturday": "Lørdag",
    "Sunday": "Søndag",
    "Mon": "Man",
    "Tue": "Tir",
    "Wed": "Ons",
    "Thu": "Tor",
    "Fri": "Fre",
    "Sat": "Lør",
    "Sun": "Søn",
    "today": "i dag",
    "tomorrow": "i morgen",
    "midnight": "midnatt",
    "not set": "ikke satt",
    "open": "åpen",
    "at {time}": "kl. {time}",
    "tomorrow at {time}": "i morgen kl. {time}",
    "This bot is for the parent/admin only.": "Denne boten er for foresatte eller admin.",
    "No profiles. Use /child add <name> to create one.": "Ingen profiler. Bruk /child add <navn> for å opprette en.",
    "Which child?": "Hvilket barn?",
    "Done.": "Ferdig.",
    "Profile not found.": "Fant ikke profilen.",
    "No pending command.": "Ingen ventende kommando.",
    "No longer pending.": "Ikke lenger ventende.",
    "Invalid callback.": "Ugyldig callback.",
    "Video not found.": "Fant ikke videoen.",
    "Failed to delete profile.": "Kunne ikke slette profilen.",
    "Resending...": "Sender på nytt...",
    "Approved!": "Godkjent!",
    "Denied.": "Avslått.",
    "Revoked!": "Fjernet!",
    "Blocked: {channel}": "Blokkert: {channel}",
    "AUTO-APPROVED ({category})": "AUTOGODKJENT ({category})",
    "APPROVED": "GODKJENT",
    "DENIED": "AVSLÅTT",
    "REVOKED": "FJERNET",
    "Watch on YouTube": "Se på YouTube",
    "New Video Request{short_label}{from_label}": "Ny videoforespørsel{short_label}{from_label}",
    "Title:": "Tittel:",
    "Channel:": "Kanal:",
    "Duration:": "Varighet:",
    "Already approved for {name}": "Allerede godkjent for {name}",
    "[SHORT]": "[SHORT]",
    " from {name}": " fra {name}",
    "another child": "et annet barn",
    "Auto-approve": "Autogodkjenn",
    "Approve Edu": "Godkjenn læring",
    "Approve Fun": "Godkjenn moro",
    "Deny": "Avslå",
    "Allow Ch Edu": "Tillat kanal læring",
    "Allow Ch Fun": "Tillat kanal moro",
    "Block Channel": "Blokker kanal",
    "Revoke": "Fjern",
    "Created profile: {name}{pin_msg}": "Opprettet profil: {name}{pin_msg}",
    " with PIN": " med PIN",
    " (no PIN)": " (ingen PIN)",
    "Child Profiles": "Barneprofiler",
    "PIN set": "PIN satt",
    "no PIN": "ingen PIN",
    "{videos} videos": "{videos} videoer",
    "{channels} channels": "{channels} kanaler",
    "Usage: /child add <name> [pin]": "Bruk: /child add <navn> [pin]",
    "Name must contain at least one alphanumeric character.": "Navnet må inneholde minst ett bokstav- eller talltegn.",
    "Profile ID conflict with '{name}' — try a different name.": "Profil-ID kolliderer med '{name}' — prøv et annet navn.",
    "Failed to create profile.": "Kunne ikke opprette profil.",
    "Usage: /child remove <name>": "Bruk: /child remove <navn>",
    "Profile not found: {name}": "Fant ikke profil: {name}",
    "Delete {name} and all data": "Slett {name} og alle data",
    "Delete **{name}**? This removes all videos, channels, watch history, and settings.": "Vil du slette **{name}**? Dette fjerner alle videoer, kanaler, sehistorikk og innstillinger.",
    "Usage: /child rename <name> <new_name>": "Bruk: /child rename <navn> <nytt_navn>",
    "A profile named '{name}' already exists.": "En profil med navnet '{name}' finnes allerede.",
    "Renamed: {old} -> **{new}**": "Endret navn: {old} -> **{new}**",
    "Failed to rename profile.": "Kunne ikke endre profilnavn.",
    "Usage: /child pin <name> [pin]\nOmit pin to remove it.": "Bruk: /child pin <navn> [pin]\nUtelat pin for å fjerne den.",
    "PIN set for **{name}**.": "PIN satt for **{name}**.",
    "PIN removed for **{name}**.": "PIN fjernet for **{name}**.",
    "Failed to update PIN.": "Kunne ikke oppdatere PIN.",
    "Shorts enabled{ctx}": "Shorts aktivert{ctx}",
    "Shorts disabled{ctx}": "Shorts deaktivert{ctx}",
    "Shorts: enabled{ctx}": "Shorts: aktivert{ctx}",
    "Shorts: disabled{ctx}": "Shorts: deaktivert{ctx}",
    "No pending requests. Videos requested from the web app will appear here.": "Ingen ventende forespørsler. Videoer som forespørres i nettappen, vises her.",
    "Pending Requests{ctx} ({total})": "Ventende forespørsler{ctx} ({total})",
    "Resend: {title}": "Send på nytt: {title}",
    'No approved videos matching "{query}".': 'Ingen godkjente videoer som matcher "{query}".',
    "No approved videos yet. Approve requests or use /channel to allow channels.": "Ingen godkjente videoer ennå. Godkjenn forespørsler eller bruk /channel for å tillate kanaler.",
    '"{search}"{ctx} ({total} {result_word})': '"{search}"{ctx} ({total} {result_word})',
    "result": "resultat",
    "results": "resultater",
    "Approved{ctx} ({total})": "Godkjent{ctx} ({total})",
    "No approved videos.": "Ingen godkjente videoer.",
    "Video not found — it may have been removed from the database.": "Fant ikke videoen — den kan ha blitt fjernet fra databasen.",
    "Already {status} — no change needed.": "Allerede {status} — ingen endring trengs.",
    "Approval removed: {title}\nThe video is no longer watchable.": "Godkjenning fjernet: {title}\nVideoen kan ikke lenger sees.",
    "Stats{ctx}": "Statistikk{ctx}",
    "Total videos: {total}": "Videoer totalt: {total}",
    "Pending: {count}": "Ventende: {count}",
    "Approved: {count}": "Godkjent: {count}",
    "Denied: {count}": "Avslått: {count}",
    "Total views: {count}": "Visninger totalt: {count}",
    "Changelog not available.": "Endringslogg er ikke tilgjengelig.",
    "No activity in the {period}.": "Ingen aktivitet i {period}.",
    "Today": "I dag",
    "Last {days} days": "Siste {days} dagene",
    "No activity.": "Ingen aktivitet.",
    "No searches in the {period}.": "Ingen søk i {period}.",
    "Search History ({period}){ctx}": "Søkehistorikk ({period}){ctx}",
    "No searches.": "Ingen søk.",
    "Usage: /filter add|remove <word>": "Bruk: /filter add|remove <ord>",
    'Filter added: "{word}"\nVideos with this word in the title are hidden everywhere.': 'Filter lagt til: "{word}"\nVideoer med dette ordet i tittelen skjules overalt.',
    'Already filtered: "{word}"': 'Allerede filtrert: "{word}"',
    'Filter removed: "{word}"': 'Filter fjernet: "{word}"',
    '"{word}" isn\'t in the filter list.': '"{word}" er ikke i filterlisten.',
    "No word filters set. Use /filter add <word> to hide videos by title.": "Ingen ordfiltre er satt. Bruk /filter add <ord> for å skjule videoer etter tittel.",
    "All watch time limits disabled. Videos can be watched without a daily cap.": "Alle segrenser er deaktivert. Videoer kan sees uten daglig grense.",
    "OPEN": "ÅPEN",
    "CLOSED (unlocks {unlock_time})": "STENGT (åpner {unlock_time})",
    "Today ({day}){ctx} — {status}": "I dag ({day}){ctx} — {status}",
    "Schedule: {start} - {end}": "Tidsplan: {start} - {end}",
    "Bonus today: +{bonus} min": "Bonus i dag: +{bonus} min",
    "Limit: {limit} min": "Grense: {limit} min",
    "No limits set — {used} min watched": "Ingen grenser satt — {used} min sett",
    "Use /time setup to configure limits.": "Bruk /time setup for å sette opp grenser.",
    "Week": "Uke",
    "All days: same schedule": "Alle dager: samme tidsplan",
    "Usage: /time [minutes|off]\n       /time setup\n       /time start|stop <time|off>\n       /time add <minutes>\n       /time edu|fun <minutes|off>\n       /time <day> [start|stop|edu|fun|limit|off|copy]": "Bruk: /time [minutter|off]\n       /time setup\n       /time start|stop <tid|off>\n       /time add <minutter>\n       /time edu|fun <minutter|off>\n       /time <dag> [start|stop|edu|fun|limit|off|copy]",
    "Usage: /time [<day>] limit <minutes>": "Bruk: /time [<dag>] limit <minutter>",
    "Use `/time off` to disable the time limit.": "Bruk `/time off` for å deaktivere tidsgrensen.",
    "Keep categories": "Behold kategorier",
    "Switch to {minutes} min flat": "Bytt til {minutes} min samlet",
    "Keep simple limit": "Behold enkel grense",
    "Set up categories": "Sett opp kategorier",
    "⚠️ You have category limits set (edu:{edu} fun:{fun}).\n\nSwitching to a simple limit replaces category budgets with a single daily cap.": "⚠️ Du har satt kategorigrenser (læring:{edu} moro:{fun}).\n\nÅ bytte til en enkel grense erstatter kategoribudsjettene med én daglig grense.",
    "⚠️ You have a simple limit of {minutes} min.\n\nSwitching to category mode replaces this with separate edu and fun budgets.": "⚠️ Du har en enkel grense på {minutes} min.\n\nÅ bytte til kategorimodus erstatter denne med egne budsjetter for læring og moro.",
    "Usage: /time {category} <minutes|off>": "Bruk: /time {category} <minutter|off>",
    "Invalid time. Examples: 800am, 8:00, 2000, 8:00PM": "Ugyldig tid. Eksempler: 800am, 8:00, 2000, 8:00PM",
    "Usage: /time add <minutes>": "Bruk: /time add <minutter>",
    "Bonus minutes must be a positive number.": "Bonusminutter må være et positivt tall.",
    "Bonus must be 480 minutes (8 hours) or less.": "Bonus må være 480 minutter (8 timer) eller mindre.",
    "Time Setup": "Tidsoppsett",
    "Time Limit Setup": "Oppsett av tidsgrenser",
    "Time Setup for {name}": "Tidsoppsett for {name}",
    "Limits": "Grenser",
    "Schedule": "Tidsplan",
    "Done": "Ferdig",
    "Done ✓": "Ferdig ✓",
    "Back to Setup": "Tilbake til oppsett",
    "Children": "Barn",
    "Time Limits": "Tidsgrenser",
    "Channels": "Kanaler",
    "0 channels": "0 kanaler",
    "disabled": "deaktivert",
    "enabled": "aktivert",
    "not configured": "ikke konfigurert",
    "allowed": "tillatt",
    "blocked": "blokkert",
    "No starter channels configured.": "Ingen startkanaler er satt opp.",
    "Starter Channels": "Startkanaler",
    "Starter Channels for {name}": "Startkanaler for {name}",
    "Import: {name}": "Importer: {name}",
    "Invalid channel.": "Ugyldig kanal.",
    "Already imported: {name}": "Allerede importert: {name}",
    "Imported: {name}": "Importert: {name}",
    "Usage: /channel allow|unallow|block|unblock|cat|starter <name>": "Bruk: /channel allow|unallow|block|unblock|cat|starter <navn>",
    "Usage: /channel {verb} @handle\nExample: /channel {verb} {example}": "Bruk: /channel {verb} @handle\nEksempel: /channel {verb} {example}",
    "Please use the channel's @handle (e.g. {example}).\nYou can find it on the channel's YouTube page.": "Bruk kanalens @handle (f.eks. {example}).\nDu finner den på kanalens YouTube-side.",
    "Looking up {raw} on YouTube...": "Slår opp {raw} på YouTube...",
    "Couldn't find a channel for {raw}. Check the spelling or try the full @handle from YouTube.": "Fant ikke noen kanal for {raw}. Sjekk stavemåten eller prøv hele @handle fra YouTube.",
    "Added to allowlist: {channel} ({handle})\nCategory: {category}": "Lagt til i tillatelseslisten: {channel} ({handle})\nKategori: {category}",
    "Blocked: {channel}\nVideos from this channel will be auto-denied.": "Blokkert: {channel}\nVideoer fra denne kanalen blir automatisk avslått.",
    "No category": "Ingen kategori",
    "Usage: /channel {verb} <channel name>": "Bruk: /channel {verb} <kanalnavn>",
    "{label}: {channel}.{extra}": "{label}: {channel}.{extra}",
    "Removed from allowlist": "Fjernet fra tillatelseslisten",
    "Unblocked": "Opphevet blokkering",
    " Deleted {count} {word} from catalog.": " Slettet {count} {word} fra katalogen.",
    "video": "video",
    "videos": "videoer",
    "Channel not in list: {channel}. Use /channel to see all channels.": "Kanalen er ikke i listen: {channel}. Bruk /channel for å se alle kanaler.",
    "Usage: /channel cat <name> edu|fun\n\nThis sets which time budget the channel's videos count against.": "Bruk: /channel cat <navn> edu|fun\n\nDette bestemmer hvilket tidsbudsjett kanalens videoer teller mot.",
    "Category must be edu (Educational) or fun (Entertainment).": "Kategori må være edu (Læring) eller fun (Underholdning).",
    "**{channel}** is blocked, not allowed\\. Unblock it first, then allow with a category\\.": "**{channel}** er blokkert, ikke tillatt\\. Opphev blokkeringen først, og tillat den deretter med kategori\\.",
    "Channel not in allowlist: {channel}. Use /channel to see all channels.": "Kanalen er ikke i tillatelseslisten: {channel}. Bruk /channel for å se alle kanaler.",
    "**{channel}** -> {category}\nExisting videos from this channel updated too.": "**{channel}** -> {category}\nEksisterende videoer fra denne kanalen ble også oppdatert.",
    "No channels configured.": "Ingen kanaler er satt opp.",
    "Allowed: {count}": "Tillatt: {count}",
    "Blocked: {count}": "Blokkert: {count}",
    "Categories: {categories}": "Kategorier: {categories}",
    "Allowed ({count})": "Tillatt ({count})",
    "Blocked ({count})": "Blokkert ({count})",
    "Allowed Channels": "Tillatte kanaler",
    "Blocked Channels": "Blokkerte kanaler",
    "Unallow: {name}": "Fjern tillatelse: {name}",
    "Unblock: {name}": "Opphev blokkering: {name}",
    "Got it!": "Skjønner!",
    "Keeping current settings.": "Beholder gjeldende innstillinger.",
    "Please reply with a positive number of minutes.": "Svar med et positivt antall minutter.",
    "{app_name} v{version}\n\nYouTube approval system for kids. Tap a section below to set things up.": "{app_name} v{version}\n\nYouTube-godkjenningssystem for barn. Trykk på en seksjon under for å sette opp.",
    "Children Setup": "Barneoppsett",
    "Current: default (no name)": "Nåværende: standard (uten navn)",
    " (PIN set)": " (PIN satt)",
    "Rename Default": "Gi nytt navn til standard",
    "Add Child": "Legg til barn",
    "Reply with the child's name:": "Svar med barnets navn:",
    "Session expired — run /setup to restart.": "Økten er utløpt — kjør /setup for å starte på nytt.",
    "Reply with a PIN:": "Svar med en PIN:",
    "Name can't be empty. Try again:": "Navnet kan ikke være tomt. Prøv igjen:",
    "Name must contain at least one alphanumeric character. Try again:": "Navnet må inneholde minst ett bokstav- eller talltegn. Prøv igjen:",
    "Please reply with a PIN containing 4-12 digits. Try again:": "Svar med en PIN på 4-12 sifre. Prøv igjen:",
    "Set a PIN for {name}?": "Vil du sette PIN for {name}?",
    "Set PIN": "Sett PIN",
    "No PIN": "Ingen PIN",
    "A profile with that name already exists. Try a different name:": "En profil med det navnet finnes allerede. Prøv et annet navn:",
    "schedule only": "bare tidsplan",
    "Set Limits": "Sett grenser",
    "no limits set": "ingen grenser satt",
    "What would you like to configure?": "Hva vil du sette opp?",
    "daily screen time budgets": "daglige tidsgrenser",
    "when videos are available": "når videoer er tilgjengelige",
    "Channels\n": "Kanaler\n",
    "Browse Starters": "Bla i startkanaler",
    "YouTube Shorts": "YouTube Shorts",
    "YouTube Shorts for {name}": "YouTube Shorts for {name}",
    "under 60s": "under 60 sek",
    "Enable": "Aktiver",
    "Disable": "Deaktiver",
    "Reply with the start time (e.g. 8am, 08:00):": "Svar med starttidspunktet (f.eks. 8, 08:00):",
    "Reply with the stop time (e.g. 8pm, 20:00):": "Svar med sluttidspunktet (f.eks. 20, 20:00):",
    "Reply with start time for {label} (e.g. 9am, 09:00):": "Svar med starttid for {label} (f.eks. 9, 09:00):",
    "Reply with stop time for {label} (e.g. 9pm, 21:00):": "Svar med sluttid for {label} (f.eks. 21, 21:00):",
    "Reply with the number of minutes:": "Svar med antall minutter:",
    "Reply with the number of minutes for **educational** limit:": "Svar med antall minutter for **læring**:",
    "Reply with the number of minutes for **entertainment** limit:": "Svar med antall minutter for **underholdning**:",
    "How would you like to manage screen time?": "Hvordan vil du styre skjermtid?",
    "Simple": "Enkel",
    "Category": "Kategori",
    "one daily cap for all videos.": "én daglig grense for alle videoer.",
    "separate edu + fun budgets (total = edu + fun).": "egne budsjetter for læring + moro (totalt = læring + moro).",
    "Simple Limit": "Enkel grense",
    "Category Limits": "Kategorigrenser",
    "Same schedule every day, or different times for specific days?": "Samme tidsplan hver dag, eller ulike tider på bestemte dager?",
    "Same for all days": "Samme for alle dager",
    "Customize by day": "Tilpass per dag",
    "Set when watching is allowed to begin:": "Velg når det er lov å begynne å se:",
    "Custom": "Tilpass",
    "Start: {time} ✓\nNow set when watching must stop:": "Start: {time} ✓\nVelg nå når visningen må stoppe:",
    "Default: {start} – {end}\n\n": "Standard: {start} – {end}\n\n",
    "Days without a schedule are open (no restrictions).\n\n": "Dager uten tidsplan er åpne (ingen begrensninger).\n\n",
    "Tap a day to set its schedule, or Done to finish.": "Trykk på en dag for å sette tidsplan, eller Ferdig for å avslutte.",
    "**{label}** — currently {start} – {end}{source}\n\nSet start time for {label}:": "**{label}** — nå {start} – {end}{source}\n\nVelg starttid for {label}:",
    " (default)": " (standard)",
    "{label} start: {time} ✓\nSet stop time for {label}:": "{label} start: {time} ✓\nVelg sluttid for {label}:",
    "✓ **Schedule configured**\n": "✓ **Tidsplan satt opp**\n",
    "Default: {start} – {end}": "Standard: {start} – {end}",
    "\nUse `/time <day> start|stop` to adjust later.": "\nBruk `/time <dag> start|stop` for å justere senere.",
    "Category mode gives separate budgets for educational and entertainment videos. Total screen time = edu + fun.\n\nSet **educational** limit:": "Kategorimodus gir egne budsjetter for lærings- og underholdningsvideoer. Total skjermtid = læring + moro.\n\nVelg **læringsgrense**:",
    "Set a daily screen time limit. All videos share one pool.\n\nPick a preset or reply with a custom number:": "Velg en daglig skjermtidsgrense. Alle videoer deler samme pott.\n\nVelg et forslag eller svar med et eget tall:",
    "✓ **Simple limit set**\n  Daily cap: {minutes} min/day\n\nThese apply to all days. Use `/time <day> limit <min>` to customize specific days.": "✓ **Enkel grense satt**\n  Daglig grense: {minutes} min/dag\n\nDette gjelder alle dager. Bruk `/time <dag> limit <min>` for å tilpasse enkelte dager.",
    "Educational: {minutes} min ✓\nNow set **entertainment** limit:": "Læring: {minutes} min ✓\nVelg nå **moro-grense**:",
    "✓ **Category limits set**\n  Educational: {edu} min/day\n  Entertainment: {fun} min/day\n  Total: {total} min/day\n\nThese apply to all days. Use `/time <day> edu|fun <min>` to customize specific days.": "✓ **Kategorigrenser satt**\n  Læring: {edu} min/dag\n  Underholdning: {fun} min/dag\n  Totalt: {total} min/dag\n\nDette gjelder alle dager. Bruk `/time <dag> edu|fun <min>` for å tilpasse enkelte dager.",
    "✓ Switched to simple limit: {minutes} min/day": "✓ Byttet til enkel grense: {minutes} min/dag",
    "✓ Switched to category mode.\n  {category}: {minutes} min/day\n\nSet the {other_label} limit with `/time {other} <minutes>`.": "✓ Byttet til kategorimodus.\n  {category}: {minutes} min/dag\n\nSett grensen for {other_label} med `/time {other} <minutter>`.",
    "Shorts are hidden from the homepage, catalog, and search results. No Shorts are fetched from channels.\n\n`/shorts on` — show Shorts in a dedicated row": "Shorts er skjult fra hjemmesiden, katalogen og søkeresultatene. Ingen Shorts hentes fra kanaler.\n\n`/shorts on` — vis Shorts i en egen rad",
    "Shorts appear in a dedicated row on the homepage and are fetched from allowlisted channels. They count toward edu/fun time budgets like regular videos.\n\n`/shorts off` — hide Shorts everywhere": "Shorts vises i en egen rad på hjemmesiden og hentes fra tillatte kanaler. De teller mot læring/moro-budsjetter som vanlige videoer.\n\n`/shorts off` — skjul Shorts overalt",
    "Shorts row appears on the homepage below videos\n- Shorts from allowlisted channels are fetched on next cache refresh\n- Shorts still count toward category time budgets (edu/fun)\n- Shorts hidden from search results remain hidden": "Shorts-raden vises på hjemmesiden under videoer\n- Shorts fra tillatte kanaler hentes ved neste oppfriskning\n- Shorts teller fortsatt mot kategori-budsjetter (læring/moro)\n- Shorts som skjules fra søk, forblir skjult",
    "Shorts row removed from homepage\n- Shorts hidden from catalog, search results, and channel filters\n- Existing approved Shorts stay in the database\n- Use `/shorts on` to re-enable anytime": "Shorts-raden fjernes fra hjemmesiden\n- Shorts skjules fra katalog, søkeresultater og kanalfiltre\n- Eksisterende godkjente Shorts blir i databasen\n- Bruk `/shorts on` for å aktivere igjen når som helst",
    "Next": "Neste",
    "OFF": "AV",
    "none": "ingen",
    "pending": "ventende",
    "approved": "godkjent",
    "denied": "avslått",
    "revoked": "fjernet",
    "Allowed": "Tillatte",
    "Blocked": "Blokkerte",
    "imported": "importert",
    " — {name}": " — {name}",
    " ({category})": " ({category})",
    " · pg {page}/{total}": " · s. {page}/{total}",
    "Today's Watch Activity{ctx}": "Dagens seaktivitet{ctx}",
    "Yesterday's Watch Activity{ctx}": "Gårsdagens seaktivitet{ctx}",
    "Watch Activity (last {days} days){ctx}": "Seaktivitet (siste {days} dagene){ctx}",
    "Watch limit:": "Segrense:",
    "**Watched today:** {used} min": "**Sett i dag:** {used} min",
    "**Daily limit:** {limit} min": "**Daglig grense:** {limit} min",
    "**Bonus today:** +{bonus} min": "**Bonus i dag:** +{bonus} min",
    "**Used:** {used} min · **Remaining:** {remaining} min": "**Brukt:** {used} min · **Igjen:** {remaining} min",
    "**Overview** — {total} min total": "**Oversikt** — {total} min totalt",
    "No videos watched.": "Ingen videoer sett.",
    "\n**{category}** — {used}/{limit} min": "\n**{category}** — {used}/{limit} min",
    "\n**{category}** — {used} min (no limit)": "\n**{category}** — {used} min (ingen grense)",
    "  {channel} · {watched}m / {duration}m ({percent}%)": "  {channel} · {watched}m / {duration}m ({percent}%)",
    "  {channel} · {watched}m watched": "  {channel} · {watched}m sett",
    "Activity ({period}){ctx} — {total} videos": "Aktivitet ({period}){ctx} — {total} videoer",
    "**Word Filters** (hidden everywhere):\n": "**Ordfiltre** (skjult overalt):\n",
    "Shorts {status}": "Shorts {status}",
    "{app_name} v{version}\n\n{content}": "{app_name} v{version}\n\n{content}",
    "📖 [Full command reference]({url})\n": "📖 [Full kommandoreferanse]({url})\n",
    "☕ [Buy me a coffee]({url})": "☕ [Spander en kaffe]({url})",
    "**{app_name} v{version}**\n\n**Commands:**\n`/help` - Show this message\n`/pending` - List pending requests\n`/approved` - List approved videos\n`/stats` - Usage statistics\n`/watch [yesterday|N]` - Watch activity & time budget\n`/logs [days|today]` - Activity report\n`/changelog` - Latest changes\n\n**Channel:**\n`/channel` - List all channels\n`/channel starter` - Kid-friendly starter list\n`/channel allow|unallow @handle [edu|fun]`\n`/channel block|unblock @handle`\n`/channel cat <name> edu|fun`\n\n**Filters & Search:**\n`/filter` - List word filters\n`/filter add|remove <word>`\n`/search [days|today|all]` - Search history\n\n**Time & Schedule:**\n`/time` - Show status & weekly view\n`/time setup` - Guided limit wizard\n`/time <min|off>` - Simple watch limit\n`/time edu|fun <min|off>` - Category limits\n`/time start|stop [time|off]` - Schedule\n`/time add <min>` - Bonus for today\n`/time <day> [start|stop|edu|fun|limit|off]`\n`/time <day> copy <days|weekdays|weekend|all>`\n`/shorts [on|off]` - Toggle Shorts row\n`/autoload [on|off]` - Toggle scroll loading\n`/searchmode [on|off]` - Toggle child search\n\n**Profiles:**\n`/child` - List child profiles\n`/child add <name> [pin]`\n`/child remove|rename|pin <name>`\n\n**Setup:**\n`/setup` - Interactive setup hub\n\n": "**{app_name} v{version}**\n\n**Kommandoer:**\n`/help` - Vis denne meldingen\n`/pending` - Vis ventende forespørsler\n`/approved` - Vis godkjente videoer\n`/stats` - Bruksstatistikk\n`/watch [yesterday|N]` - Seaktivitet og tidsbudsjett\n`/logs [days|today]` - Aktivitetsrapport\n`/changelog` - Siste endringer\n\n**Kanal:**\n`/channel` - Vis alle kanaler\n`/channel starter` - Barnevennlig startliste\n`/channel allow|unallow @handle [edu|fun]`\n`/channel block|unblock @handle`\n`/channel cat <name> edu|fun`\n\n**Filtre og søk:**\n`/filter` - Vis ordfiltre\n`/filter add|remove <word>`\n`/search [days|today|all]` - Søkehistorikk\n\n**Tid og tidsplan:**\n`/time` - Vis status og ukeoversikt\n`/time setup` - Guidet oppsett\n`/time <min|off>` - Enkel segrense\n`/time edu|fun <min|off>` - Kategorigrenser\n`/time start|stop [time|off]` - Tidsplan\n`/time add <min>` - Bonus for i dag\n`/time <day> [start|stop|edu|fun|limit|off]`\n`/time <day> copy <days|weekdays|weekend|all>`\n`/shorts [on|off]` - Slå Shorts-raden av eller på\n`/autoload [on|off]` - Slå rullelasting av eller på\n`/searchmode [on|off]` - Slå barnets søk av eller på\n\n**Profiler:**\n`/child` - Vis barneprofiler\n`/child add <name> [pin]`\n`/child remove|rename|pin <name>`\n\n**Oppsett:**\n`/setup` - Interaktivt oppsett\n\n",
    "Allowlisted: {channel}": "Tillatt: {channel}",
    "Allowlisted ({category}): {channel}": "Tillatt ({category}): {channel}",
    "{approved} + CHANNEL ALLOWED": "{approved} + KANAL TILLATT",
    "CHANNEL ALLOWED (video already {status})": "KANAL TILLATT (video allerede {status})",
    "{approved} + CHANNEL ALLOWED ({category})": "{approved} + KANAL TILLATT ({category})",
    "CHANNEL ALLOWED ({category}) (video already {status})": "KANAL TILLATT ({category}) (video allerede {status})",
    "{denied} + CHANNEL BLOCKED": "{denied} + KANAL BLOKKERT",
    "CHANNEL BLOCKED (video already {status})": "KANAL BLOKKERT (video allerede {status})",
    "→ {category}": "→ {category}",
    "Deleted profile: **{name}** and all associated data.": "Slettet profil: **{name}** og alle tilknyttede data.",
    "Removed: {name}": "Fjernet: {name}",
    "Not found: {name}": "Fant ikke: {name}",
    "{count} {category}": "{count} {category}",
    "{count} uncategorized": "{count} ukategorisert",
    "Deleted {count} {word} from catalog.": "Slettet {count} {word} fra katalogen.",
    "**Daily watch limit reached{category}{child}**\n\n**Used:** {used} min / {limit} min limit\n{blocked_text}": "**Daglig segrense nådd{category}{child}**\n\n**Brukt:** {used} min / {limit} min grense\n{blocked_text}",
    "Videos in this category are blocked until tomorrow.": "Videoer i denne kategorien er sperret til i morgen.",
    "Videos are blocked until tomorrow.": "Videoer er sperret til i morgen.",
    "{limits} min ({total}m total)": "{limits} min ({total}m totalt)",
    "  {category} `{bar}` {used}/{limit}": "  {category} `{bar}` {used}/{limit}",
    "**Schedule:** {start} – {end}": "**Tidsplan:** {start} – {end}",
    "**Schedule:** {status}": "**Tidsplan:** {status}",
    "**Total:** {minutes} min": "**Totalt:** {minutes} min",
    "\n_Has {count} override(s) — defaults used for the rest._": "\n_Har {count} overstyring(er) — standard brukes ellers._",
    "\n_No overrides — using default settings._": "\n_Ingen overstyringer — bruker standardinnstillinger._",
    "Unknown day: {day}. Use day names (mon, tue...), weekdays, weekend, or all.": "Ukjent dag: {day}. Bruk dagnavn (mon, tue...), weekdays, weekend eller all.",
    "No valid days. Use day names (mon, tue...), weekdays, weekend, or all.": "Ingen gyldige dager. Bruk dagnavn (mon, tue...), weekdays, weekend eller all.",
    "Copied {count} override(s) from {source} → {targets}.": "Kopierte {count} overstyring(er) fra {source} → {targets}.",
    "{label} limit set to {minutes} minutes. Playback stops when time runs out.": "{label} grense satt til {minutes} minutter. Avspilling stopper når tiden er ute.",
    "Daily limit set to {minutes} minutes. Playback stops when time runs out.": "Daglig grense satt til {minutes} minutter. Avspilling stopper når tiden er ute.",
    "{label} {category}: OFF (override)": "{label} {category}: AV (overstyring)",
    "{label} {category}: {minutes} min (from default)": "{label} {category}: {minutes} min (fra standard)",
    "{label} {category}: OFF": "{label} {category}: AV",
    "{label} {category}: {minutes} min (override)": "{label} {category}: {minutes} min (overstyring)",
    "{category} limit: OFF (unlimited)": "{category}-grense: AV (ubegrenset)",
    "{category} limit: {minutes} minutes/day": "{category}-grense: {minutes} minutter/dag",
    "{label} {category} override cleared — default settings will apply.": "{label} {category}-overstyring fjernet — standard brukes videre.",
    "{category} limit disabled — no daily cap.": "{category}-grense deaktivert — ingen daglig grense.",
    "{label} {category} limit set to {minutes} min. Playback stops when budget runs out.": "{label} {category}-grense satt til {minutes} min. Avspilling stopper når budsjettet er brukt opp.",
    "{category} limit set to {minutes} min/day. Playback stops when budget runs out.": "{category}-grense satt til {minutes} min/dag. Avspilling stopper når budsjettet er brukt opp.",
    "Start": "Start",
    "Stop": "Stopp",
    "{label} time: {time}": "{label}: {time}",
    "{label} time: {time} (from default)": "{label}: {time} (fra standard)",
    "{label} time: not set": "{label}: ikke satt",
    "{label} time override cleared.": "Overstyring for {label} fjernet.",
    "{label} time cleared.": "{label}: fjernet.",
    "{label} time set to {time}": "{label}: satt til {time}",
    "Added {added} bonus minutes for today ({total} total). Expires at midnight.": "La til {added} bonusminutter for i dag ({total} totalt). Utløper ved midnatt.",
    "{minutes}m/day": "{minutes} m/dag",
    "{minutes}m edu": "{minutes} m læring",
    "{minutes}m fun": "{minutes} m moro",
    "**{app_name} v{latest} available** (you have v{current})\n\n{body}\n\n[View release]({url})": "**{app_name} v{latest} er tilgjengelig** (du har v{current})\n\n{body}\n\n[Se utgivelse]({url})",
    "Auto-approved!": "Autogodkjent!",
    "Autoload enabled{ctx}": "Autoinnlasting aktivert{ctx}",
    "Autoload disabled{ctx}": "Autoinnlasting deaktivert{ctx}",
    "Autoload: enabled{ctx}": "Autoinnlasting: aktivert{ctx}",
    "Autoload: disabled{ctx}": "Autoinnlasting: deaktivert{ctx}",
    "Homepage loads videos in batches as you scroll down\n- Videos are fetched from the server on demand\n- Use `/autoload off` to switch back to Show More mode": "Hjemmesiden laster videoer i partier mens du ruller ned\n- Videoer hentes fra serveren etter behov\n- Bruk `/autoload off` for å bytte tilbake til Vis mer-modus",
    "Homepage loads all videos at once (faster browsing)\n- Channel and category filters work instantly\n- Use `/autoload on` to re-enable scroll loading": "Hjemmesiden laster alle videoer på en gang (raskere surfing)\n- Kanal- og kategorifiltre fungerer umiddelbart\n- Bruk `/autoload on` for å aktivere rullelasting igjen",
    "Videos load in batches as the child scrolls. Channel and category filters fetch from the server.\n\n`/autoload off` — switch to Show More mode": "Videoer lastes i partier når barnet ruller. Kanal- og kategorifiltre henter fra serveren.\n\n`/autoload off` — bytt til Vis mer-modus",
    "All videos load at once. Channel and category filters work instantly without server requests.\n\n`/autoload on` — enable scroll loading": "Alle videoer lastes på en gang. Kanal- og kategorifiltre fungerer umiddelbart uten serverforespørsler.\n\n`/autoload on` — aktiver rullelasting",
    "Search disabled{ctx}": "Søk deaktivert{ctx}",
    "Search enabled{ctx}": "Søk aktivert{ctx}",
    "Search: disabled{ctx}": "Søk: deaktivert{ctx}",
    "Search: enabled{ctx}": "Søk: aktivert{ctx}",
    "Search bar hidden from the child's pages\n- Only videos from allowlisted channels and already-approved videos are available\n- New video requests are blocked\n- Use `/searchmode on` to re-enable search": "Søkefeltet er skjult på barnets sider\n- Bare videoer fra tillatte kanaler og allerede godkjente videoer er tilgjengelige\n- Nye videoforespørsler er blokkert\n- Bruk `/searchmode on` for å aktivere søk igjen",
    "Search bar is back on the child's pages\n- New videos can be requested for your approval\n- Use `/searchmode off` to switch back to allowlist-only browsing": "Søkefeltet er tilbake på barnets sider\n- Nye videoer kan forespørres for din godkjenning\n- Bruk `/searchmode off` for å bytte tilbake til surfing kun blant tillatte kanaler",
    "The child can only browse allowlisted channels and approved videos. There is no search bar and new requests are blocked.\n\n`/searchmode on` — allow searching again": "Barnet kan bare bla i tillatte kanaler og godkjente videoer. Det finnes ikke noe søkefelt, og nye forespørsler er blokkert.\n\n`/searchmode on` — tillat søk igjen",
    "The child can search YouTube and request videos for your approval.\n\n`/searchmode off` — hide search, allowlist-only browsing": "Barnet kan søke på YouTube og forespørre videoer for din godkjenning.\n\n`/searchmode off` — skjul søk, kun tillatte kanaler",
}