"""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
More": "Vis
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 to create one.": "Ingen profiler. Bruk /child add 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 [pin]": "Bruk: /child add [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 ": "Bruk: /child remove ", "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 ": "Bruk: /child rename ", "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 [pin]\nOmit pin to remove it.": "Bruk: /child pin [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 ": "Bruk: /filter add|remove ", '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 to hide videos by title.": "Ingen ordfiltre er satt. Bruk /filter add 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 \n /time add \n /time edu|fun \n /time [start|stop|edu|fun|limit|off|copy]": "Bruk: /time [minutter|off]\n /time setup\n /time start|stop \n /time add \n /time edu|fun \n /time [start|stop|edu|fun|limit|off|copy]", "Usage: /time [] limit ": "Bruk: /time [] limit ", "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} ": "Bruk: /time {category} ", "Invalid time. Examples: 800am, 8:00, 2000, 8:00PM": "Ugyldig tid. Eksempler: 800am, 8:00, 2000, 8:00PM", "Usage: /time add ": "Bruk: /time add ", "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 ": "Bruk: /channel allow|unallow|block|unblock|cat|starter ", "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} ": "Bruk: /channel {verb} ", "{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 edu|fun\n\nThis sets which time budget the channel's videos count against.": "Bruk: /channel cat 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 start|stop` to adjust later.": "\nBruk `/time 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 limit ` to customize specific days.": "✓ **Enkel grense satt**\n Daglig grense: {minutes} min/dag\n\nDette gjelder alle dager. Bruk `/time limit ` 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 edu|fun ` 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 edu|fun ` 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} `.": "✓ Byttet til kategorimodus.\n {category}: {minutes} min/dag\n\nSett grensen for {other_label} med `/time {other} `.", "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 edu|fun`\n\n**Filters & Search:**\n`/filter` - List word filters\n`/filter add|remove `\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 ` - Simple watch limit\n`/time edu|fun ` - Category limits\n`/time start|stop [time|off]` - Schedule\n`/time add ` - Bonus for today\n`/time [start|stop|edu|fun|limit|off]`\n`/time copy `\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 [pin]`\n`/child remove|rename|pin `\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 edu|fun`\n\n**Filtre og søk:**\n`/filter` - Vis ordfiltre\n`/filter add|remove `\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 ` - Enkel segrense\n`/time edu|fun ` - Kategorigrenser\n`/time start|stop [time|off]` - Tidsplan\n`/time add ` - Bonus for i dag\n`/time [start|stop|edu|fun|limit|off]`\n`/time copy `\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 [pin]`\n`/child remove|rename|pin `\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", }