diff --git a/.Rbuildignore b/.Rbuildignore
index 5e3177e..07c0d96 100644
--- a/.Rbuildignore
+++ b/.Rbuildignore
@@ -2,3 +2,7 @@
^\.Rproj\.user$
^cran-comments\.md$
^css_changes\.md$
+^_pkgdown\.yml$
+^docs$
+^pkgdown$
+^\.github$
diff --git a/.github/.gitignore b/.github/.gitignore
new file mode 100644
index 0000000..2d19fc7
--- /dev/null
+++ b/.github/.gitignore
@@ -0,0 +1 @@
+*.html
diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml
new file mode 100644
index 0000000..e494350
--- /dev/null
+++ b/.github/workflows/R-CMD-check.yaml
@@ -0,0 +1,52 @@
+# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
+# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
+on:
+ push:
+ branches: [main, master]
+ pull_request:
+ branches: [main, master, development, update-to-gds-v5.4]
+
+name: R-CMD-check
+
+permissions: read-all
+
+jobs:
+ R-CMD-check:
+ runs-on: ${{ matrix.config.os }}
+
+ name: ${{ matrix.config.os }} (${{ matrix.config.r }})
+
+ strategy:
+ fail-fast: false
+ matrix:
+ config:
+ - {os: macos-latest, r: 'release'}
+ - {os: windows-latest, r: 'release'}
+ - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'}
+ - {os: ubuntu-latest, r: 'release'}
+ - {os: ubuntu-latest, r: 'oldrel-1'}
+
+ env:
+ GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
+ R_KEEP_PKG_SOURCE: yes
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - uses: r-lib/actions/setup-pandoc@v2
+
+ - uses: r-lib/actions/setup-r@v2
+ with:
+ r-version: ${{ matrix.config.r }}
+ http-user-agent: ${{ matrix.config.http-user-agent }}
+ use-public-rspm: true
+
+ - uses: r-lib/actions/setup-r-dependencies@v2
+ with:
+ extra-packages: any::rcmdcheck
+ needs: check
+
+ - uses: r-lib/actions/check-r-package@v2
+ with:
+ upload-snapshots: true
+ build_args: 'c("--no-manual","--compact-vignettes=gs+qpdf")'
diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml
new file mode 100644
index 0000000..c9f0165
--- /dev/null
+++ b/.github/workflows/pkgdown.yaml
@@ -0,0 +1,50 @@
+# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
+# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
+on:
+ push:
+ branches: [main, master]
+ pull_request:
+ branches: [main, master]
+ release:
+ types: [published]
+ workflow_dispatch:
+
+name: pkgdown
+
+permissions: read-all
+
+jobs:
+ pkgdown:
+ runs-on: ubuntu-latest
+ # Only restrict concurrency for non-PR jobs
+ concurrency:
+ group: pkgdown-${{ github.event_name != 'pull_request' || github.run_id }}
+ env:
+ GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
+ permissions:
+ contents: write
+ steps:
+ - uses: actions/checkout@v4
+
+ - uses: r-lib/actions/setup-pandoc@v2
+
+ - uses: r-lib/actions/setup-r@v2
+ with:
+ use-public-rspm: true
+
+ - uses: r-lib/actions/setup-r-dependencies@v2
+ with:
+ extra-packages: any::pkgdown, local::.
+ needs: website
+
+ - name: Build site
+ run: pkgdown::build_site_github_pages(new_process = FALSE, install = FALSE)
+ shell: Rscript {0}
+
+ - name: Deploy to GitHub pages 🚀
+ if: github.event_name != 'pull_request'
+ uses: JamesIves/github-pages-deploy-action@v4.5.0
+ with:
+ clean: false
+ branch: gh-pages
+ folder: docs
diff --git a/.gitignore b/.gitignore
index 728e389..215a704 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
.Rhistory
.RData
.DS_Store
+docs
diff --git a/DESCRIPTION b/DESCRIPTION
index e49cb96..873f6aa 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,24 +1,32 @@
Package: shinyGovstyle
Title: Custom Gov Style Inputs for Shiny
-Version: 0.0.8
-Authors@R: person(
- given = "Ross",
- family = "Wyatt",
- email = "ross.wyatt@justice.gov.uk",
- role = c("aut", "cre"))
-Description: Collection of 'shiny' application styling that are the based on
- the GOV.UK Design System. See
- for details.
-Depends: R (>= 3.1.0)
+Version: 0.1.0
+Authors@R: c(
+ person("Ross", "Wyatt", , "ross.wyatt@justice.gov.uk", role = c("aut", "cre")),
+ person("Cameron", "Race", , "cameron.race@education.gov.uk", role = "ctb"),
+ person("Sarah", "Wong", role = "ctb"),
+ person("Richard", "Bielby", , "richard.bielby@education.gov.uk", role = "ctb"),
+ person("Charlotte", "Foster", , "charlotte.foster@education.gov.uk", role = "ctb"),
+ person("Jeni", "Martin", role = "ctb")
+ )
+Description: Collection of 'shiny' application styling that are the based
+ on the GOV.UK Design System. See
+ for details.
License: GPL-3
-Encoding: UTF-8
-RoxygenNote: 7.1.2
URL: https://github.com/moj-analytical-services/shinyGovstyle
-BugReports: https://github.com/moj-analytical-services/shinyGovstyle/issues
+BugReports:
+ https://github.com/moj-analytical-services/shinyGovstyle/issues
+Depends:
+ R (>= 3.1.0)
Imports:
- shiny (>= 0.14),
htmltools,
+ jsonlite,
+ magrittr,
+ purrr,
+ shiny (>= 0.14),
shinyjs,
- jsonlite
+ stringr
Suggests:
testthat
+Encoding: UTF-8
+RoxygenNote: 7.3.2
diff --git a/NAMESPACE b/NAMESPACE
index 9e251b5..6cb57a7 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -1,10 +1,12 @@
# Generated by roxygen2: do not edit by hand
+export("%>%")
export(accordion)
export(backlink_Input)
export(banner)
export(button_Input)
export(checkbox_Input)
+export(contents_link)
export(cookieBanner)
export(date_Input)
export(details)
@@ -41,5 +43,6 @@ export(word_count)
importFrom(htmltools,attachDependencies)
importFrom(htmltools,findDependencies)
importFrom(htmltools,htmlDependency)
+importFrom(magrittr,"%>%")
importFrom(shiny,addResourcePath)
importFrom(utils,packageVersion)
diff --git a/NEWS.md b/NEWS.md
index 6c98f17..e914fd8 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -1,3 +1,13 @@
+# shinyGovstyle 0.1.0
+
+* Update the css to v5.4.0 and made fixes associated with that.
+* No longer requires rem remover step to update for future changes
+* One of the major changes in the css is a change in look and functionality for the accordion. Show/hide all works as expected now.
+* Another major change to how the radio buttons look and feel, in line with the v5.4.0 design examples.
+* Added additional functions to the `run_example` for ease of testing
+* Added the contents_links() function as a helper for getting the styling and behaviour for left navigation
+
+
# shinyGovstyle 0.0.8
* Update the css to v4.0.0 and made fixes associated with that.
diff --git a/R/accordion.R b/R/accordion.R
index 5a78c31..857bab7 100644
--- a/R/accordion.R
+++ b/R/accordion.R
@@ -54,6 +54,7 @@ accordion <- function(inputId, titles, descriptions){
class = "govuk-accordion__show-all",
`aria-expanded` = "false",
shiny::tags$span(
+ id="show-all-chevron",
class=paste(
"govuk-accordion-nav__chevron",
"govuk-accordion-nav__chevron--down"),
diff --git a/R/attachDependency.R b/R/attachDependency.R
index 56bf132..d9b00ea 100644
--- a/R/attachDependency.R
+++ b/R/attachDependency.R
@@ -63,6 +63,18 @@ attachDependency <- function(tag, widget = NULL) {
)
}
+ else if (widget == "contents_link") {
+ dep <- list(
+ dep,
+ htmltools::htmlDependency(
+ name = "contents_link",
+ version = version,
+ src = c(href="shinyGovstyle/js"),
+ script = "contents_link.js"
+ )
+ )
+ }
+
}
htmltools::attachDependencies(tag, dep, append = TRUE)
diff --git a/R/backlink_Input.R b/R/backlink_Input.R
index b75fc5c..5b08295 100644
--- a/R/backlink_Input.R
+++ b/R/backlink_Input.R
@@ -2,6 +2,7 @@
#'
#' This function adds a back link to the page
#' @param inputId The input slot that will be used to access the value.
+#' @param label The link text for the backlink, default is "Back"
#' @return a backlink html shiny object
#' @keywords backlink
#' @export
@@ -42,13 +43,12 @@
#' shinyApp(ui = ui, server = server)
#' }
-backlink_Input <- function(inputId) {
+backlink_Input <- function(inputId, label = "Back") {
value <- shiny::restoreInput(id = inputId, default = NULL)
- govBacklink <- shiny::tags$button("Back",
- id = inputId,
- class = paste0("govuk-back-link",
- " action-button"),
+ govBacklink <- shiny::actionLink(label = label,
+ inputId = inputId,
+ class = paste0("govuk-back-link"),
`data-val` = value)
attachDependency(govBacklink)
diff --git a/R/banner.R b/R/banner.R
index 7405b91..9480a87 100644
--- a/R/banner.R
+++ b/R/banner.R
@@ -17,7 +17,7 @@
#' secondary_text = "User Examples",
#' logo="shinyGovstyle/images/moj_logo.png"),
#' shinyGovstyle::banner(
-#' inputId = "banner", type = "beta", 'This is a new service')
+#' inputId = "banner", type = "Beta", 'This is a new service')
#' )
#'
#' server <- function(input, output, session) {}
diff --git a/R/clean_heading_text.R b/R/clean_heading_text.R
new file mode 100644
index 0000000..7db93da
--- /dev/null
+++ b/R/clean_heading_text.R
@@ -0,0 +1,13 @@
+#' Clean heading text function
+#' This internal function is used in subcontents_links and heading_text to create an automated link between the two
+#' @param text string
+#' @return a string
+#' @keywords internal
+clean_heading_text <- function(text){
+
+ text %>%
+ stringr::str_replace_all(" ", "_") %>%
+ stringr::str_to_lower() %>%
+ stringr::str_remove_all( "[^_[a-z]]")
+
+}
diff --git a/R/contents_links.R b/R/contents_links.R
new file mode 100644
index 0000000..c28b4ac
--- /dev/null
+++ b/R/contents_links.R
@@ -0,0 +1,285 @@
+#' Subcontents links function
+#' This function is used internally within contents_link to create links to headings within pages.
+#' @param subcontents_text_list vector of link text for subcontents
+#' @param subcontents_id_list vector of link ids for subcontents. pass NAs for automatic matching to id in shinygovstyle::heading_text
+#' @return a ol html shiny object
+#' @keywords internal
+#' @examples
+#' if (interactive()) {
+#' ui <- shiny::fluidPage(
+#' shinyGovstyle::header(
+#' main_text = "Example",
+#' secondary_text = "User Examples",
+#' logo = "shinyGovstyle/images/moj_logo.png"
+#' ),
+#' shiny::column(
+#' width = 3,
+#' id = "nav",
+#' shiny::tags$div(
+#' shiny::tags$h2("Contents"),
+#' subcontents_links(
+#' c("radio_button_Input (inline)", "button_Input"),
+#' c(NA, NA)
+#' ),
+#' subcontents_links(
+#' c("date_Input", "button_Input"),
+#' c(NA, "button_input_text_types")
+#' )
+#' )
+#' )
+#' )
+#'
+#' server <- function(input, output, session) {
+#' }
+#' shiny::shinyApp(ui = ui, server = server)
+#' }
+subcontents_links <- function(subcontents_text_list,
+ subcontents_id_list) {
+ if (!missing(subcontents_id_list)) {
+ # check if custom link_id_list is of equal length to links list
+ if (length(subcontents_text_list) != length(subcontents_id_list)) {
+ message(
+ "`subcontents_id_list` must be equal length to `subcontents_text_list`"
+ )
+ }
+ }
+
+ # create sidelink
+ create_sidelink <- function(link_text, link_id) {
+ # match id created in shinygovstyle::heading_text if custom id not specifcied
+ if (is.na(link_id)) {
+ link_id <- clean_heading_text(link_text)
+ }
+
+ shiny::tags$li(
+ "\u2014 ",
+ shiny::tags$a(class = "govuk-link--no-visited-state", link_text, href = stringr::str_c("\u0023", link_id))
+ )
+ }
+
+
+ # create
tags
+ list_tags <- purrr::map2(subcontents_text_list, subcontents_id_list, create_sidelink)
+
+
+ # return output
+ shiny::tags$ol(class = "govuk-subcontents", list_tags)
+}
+
+
+#' Contents link function
+#'
+#' This function creates an action link to nav between tabs and optionally link to subcontents headers.
+#' @param link_text vector of link text for contents
+#' @param input_id contents button id
+#' @param subcontents_text_list vector of link text for subcontents
+#' @param subcontents_id_list vector of link ids for subcontents. if missing automatically matches to id in shinygovstyle::heading_text
+#' @return an action button html shiny object
+#' @export
+#' @examples
+#' if (interactive()) {
+#' ui <- shiny::fluidPage(
+#' title="ShinyGovstyle",
+#' cookieBanner("Run Example"),
+#' header("MOJ", "ShinyGovstyle Example",
+#' logo="shinyGovstyle/images/moj_logo-1.png", logo_width = 66),
+#' banner(
+#' "banner",
+#' "Beta",
+#' 'This is a new service \u002D your
+#' feedback will help us to improve it.'),
+#'
+#' #Need this to make the error and word count work
+#' shinyjs::useShinyjs(),
+#'
+#' #Add a message to show users how to see this code
+#' shiny::tags$br(),
+#' shiny::markdown(
+#' "Run ```View(run_example)``` in console to see the code for this app"),
+#'
+#'
+#' gov_row(
+#' # Nav columns
+#' shiny::column(
+#'
+#' width = 3,
+#' id = "nav", # DO NOT REMOVE ID
+#'
+#' # Contents box
+#' shiny::tags$div(
+#' id = "govuk-contents-box", #DO NOT REMOVE ID
+#' class = "govuk-contents-box", #DO NOT REMOVE CLASS
+#'
+#' shiny::tags$h2("Contents"),
+#'
+#' # Text types tab
+#' contents_link(
+#' "Text Types",
+#' "text_types_button",
+#' subcontents_text_list = c("date_Input",
+#' "text_Input",
+#' "text_area_Input",
+#' "button_Input"),
+#' subcontents_id_list = c(NA, NA, NA, "button_input_text_types")
+#' ),
+#'
+#' # Tables tabs and accordions tab
+#' contents_link(
+#' "Tables, tabs and accordions",
+#' "tables_tabs_and_accordions_button",
+#' subcontents_text_list = c("govTable", "govTabs", "accordions", "button_Input"),
+#' subcontents_id_list = c(NA, NA, NA, "button_input_tables_tabs_accordions")
+#' ),
+#'
+#'
+#' contents_link(
+#' "Cookies",
+#' "cookies_button"),
+#'
+#' )
+#' ),
+#'
+#'
+#' shiny::column( width = 9,
+#'
+#' id = "main_col", # DO NOT REMOVE ID
+#'
+#' #Set up a nav panel so everything not on single page
+#' shiny::tabsetPanel(
+#' type = "hidden",
+#' id = "tab-container", # DO NOT REMOVE ID
+#'
+#' shiny::tabPanel(
+#' "Text Types",
+#' value = "text_types",
+#' gov_layout(
+#' size = "two-thirds",
+#' backlink_Input("back1"),
+#' heading_text("Page 2", size = "l"),
+#' label_hint("label2", "These are some examples of the types of user
+#' text inputs that you can use"),
+#' heading_text("date_Input", size = "s"),
+#' date_Input(
+#' inputId = "date1",
+#' label = "What is your date of birth?",
+#' hint_label = "For example, 31 3 1980"),
+#' heading_text("text_Input", size = "s"),
+#' text_Input(inputId = "txt1", label = "Event name"),
+#' heading_text("text_area_Input", size = "s"),
+#' text_area_Input(
+#' inputId = "text_area1",
+#' label = "Can you provide more detail?",
+#' hint_label = "Do not include personal or financial information,
+#' like your National Insurance number or credit card details."),
+#' text_area_Input(
+#' inputId = "text_area2",
+#' label = "How are you today?",
+#' hint_label = "Leave blank to trigger error",
+#' error = T,
+#' error_message = "Please do not leave blank",
+#' word_limit = 300),
+#' heading_text(
+#' "button_Input", size = "s",
+#' id = "button_input_text_types"),
+#' button_Input("btn2", "Go to next page"),
+#' button_Input("btn3", "Check for errors", type = "warning")
+#' )
+#' ),
+#'
+#' shiny::tabPanel(
+#' "Tables, tabs and accordions",
+#' value = "tables_tabs_and_accordions",
+#' gov_layout(
+#' size = "two-thirds",
+#' backlink_Input("back2"),
+#' heading_text("Page 3", size = "l"),
+#' label_hint("label3", "These are some examples of using tabs and
+#' tables"),
+#' heading_text("govTable", size = "s"),
+#' heading_text("govTabs", size = "s"),
+#' heading_text("accordions", size = "s"),
+#' shinyGovstyle:: accordion(
+#' "acc1",
+#' c("Writing well for the web",
+#' "Writing well for specialists",
+#' "Know your audience",
+#' "How people read"
+#' ),
+#' c("This is the content for Writing well for the web.",
+#' "This is the content for Writing well for specialists.",
+#' "This is the content for Know your audience.",
+#' "This is the content for How people read."
+#' )),
+#'
+#' heading_text(
+#' "button_Input", size = "s",
+#' id = "button_input_tables_tabs_accordions"),
+#' button_Input("btn4", "Go to next page"),
+#' )
+#' ),
+#'
+#'
+#' #####################Create cookie panel################################
+#' shiny::tabPanel(
+#' "Cookies",
+#' value = "panel-cookies",
+#' gov_layout(
+#' size = "two-thirds",
+#' heading_text("Cookie page", size = "l"),
+#' label_hint("label-cookies", "This an example cookie page that could be
+#' expanded")
+#' )
+#' )))
+#'
+#'
+#' ), #end of gov row
+#'
+#' footer(TRUE)
+#'
+#'
+#' ) #end of fluid page
+#'
+#' server <- function(input, output, session) {
+#'
+#'
+#' # Tab nav
+#' shiny::observeEvent(input$back2, {
+#' shiny::updateTabsetPanel(session, "tab-container", selected = "text_types")
+#' })
+#'
+#' shiny::observeEvent(input$tables_tabs_and_accordions_button, {
+#' shiny::updateTabsetPanel(session, "tab-container", selected = "tables_tabs_and_accordions")
+#' })
+#'
+#' shiny::observeEvent(input$cookies_button, {
+#' shiny::updateTabsetPanel(session, "tab-container", selected = "panel-cookies")
+#' })
+#'
+#' }
+#'
+#' shiny::shinyApp(ui = ui, server = server)
+#' }
+contents_link <- function(link_text,
+ input_id,
+ subcontents_text_list,
+ subcontents_id_list) {
+ if (missing(subcontents_id_list) & !missing(subcontents_text_list)) {
+ subcontents_id_list <- rep(NA, length(subcontents_text_list))
+ }
+
+ contents_div <- shiny::tags$div(
+ class = "govuk-contents",
+ shiny::actionLink(
+ class = "govuk-contents__link govuk-link--no-visited-state",
+ inputId = input_id,
+ label = link_text
+ ),
+
+ # add subcontents links if required
+ if (!missing(subcontents_text_list)) {
+ subcontents_links(subcontents_text_list, subcontents_id_list)
+ }
+ )
+
+ attachDependency(contents_div, "contents_link")
+}
diff --git a/R/cookieBanner.R b/R/cookieBanner.R
index c888059..c01e3a0 100644
--- a/R/cookieBanner.R
+++ b/R/cookieBanner.R
@@ -43,7 +43,7 @@
#' })
#'
#' observeEvent(input$cookieLink, {
-#' #Need to link here to where further info is located. You can you
+#' #Need to link here to where further info is located. You can use
#' #updateTabsetPanel to have a cookie page for instance
#' })
#'
@@ -53,14 +53,10 @@
cookieBanner <- function(service_name) {
- value <- shiny::restoreInput(id = "cookieLink", default = NULL)
- govCookieLink <- shiny::tags$button(
- "View cookies",
- id = "cookieLink",
- class = paste0("govuk-link", " action-button"),
- `data-val` = value)
-
- attachDependency(govCookieLink)
+ govCookieLink <- shiny::actionLink(
+ inputId = "cookieLink",
+ label = "View cookies",
+ class = "govuk-link")
cookieBanner_Input <-
shiny::tags$div(
diff --git a/R/govTabs.R b/R/govTabs.R
index 046bec7..6a4954f 100644
--- a/R/govTabs.R
+++ b/R/govTabs.R
@@ -64,7 +64,7 @@ govTabs <- function(inputId, df, group_col) {
#Put the lime with coconut and create the final thing
- main_tab_div <- shiny::tags$div(class = "js-enabled",
+ main_tab_div <- shiny::tags$div(class = "govuk-frontend-supported",
shiny::tags$h2(class = "govuk-tabs__title", "Contents"),
tab_headers,
main_temp_hold)
diff --git a/R/header.R b/R/header.R
index 82cb431..4757f30 100644
--- a/R/header.R
+++ b/R/header.R
@@ -70,7 +70,7 @@ header <- function(main_text, secondary_text, logo = NULL,
shiny::tags$div(class = "govuk-header__content",
shiny::tags$a(
href = secondary_link, secondary_text,
- class = "govuk-header__link govuk-header__link--service-name"
+ class = "govuk-header__link govuk-header__service-name"
)
)
)
diff --git a/R/heading_text.R b/R/heading_text.R
index bb6994d..beb8afb 100644
--- a/R/heading_text.R
+++ b/R/heading_text.R
@@ -3,6 +3,7 @@
#' This function create a heading text
#' @param text_input Text to display
#' @param size Text size using xl, l, m, s. Defaults to xl.
+#' @param id Custom header id
#' @return a heading text html shiny object
#' @keywords heading
#' @export
@@ -23,8 +24,14 @@
#' shinyApp(ui = ui, server = server)
#' }
-heading_text <- function(text_input, size = "xl"){
+heading_text <- function(text_input, size = "xl", id){
+
+ if(missing(id)){
+ id <- clean_heading_text(text_input)
+ }
+
govHeading <- shiny::tags$h1(shiny::HTML(text_input),
- class=paste0("govuk-heading-", size))
+ class=paste0("govuk-heading-", size),
+ id = id)
attachDependency(govHeading)
}
diff --git a/R/run_example.R b/R/run_example.R
index 21c2ddc..6af5f19 100644
--- a/R/run_example.R
+++ b/R/run_example.R
@@ -9,6 +9,19 @@
#' run_example()
#'}
run_example <- function(){
+ Months <- c("January", "February", "March")
+ Bikes <- c(85, 75, 165)
+ Cars <- c(95, 55, 125)
+ example_data <- data.frame(Months, Bikes, Cars)
+ tabs <- c(rep("Past Day", 3),
+ rep("Past Week", 3),
+ rep("Past Month", 3),
+ rep("Past Year", 3))
+ Case_manager <- rep(c("David Francis", "Paul Farmer", "Rita Patel"),4)
+ Cases_open <- c(3, 1, 2, 24, 16, 24, 98, 122, 126, 1380, 1129, 1539)
+ Cases_closed <- c(0, 0, 0, 18, 20, 27, 95, 131, 142, 1472, 1083, 1265)
+ data <- data.frame(tabs, Case_manager, Cases_open, Cases_closed)
+
shiny::shinyApp(
ui = shiny::fluidPage(
title="ShinyGovstyle",
@@ -17,7 +30,7 @@ run_example <- function(){
logo="shinyGovstyle/images/moj_logo-1.png", logo_width = 66),
banner(
"banner",
- "beta",
+ "Beta",
'This is a new service \u002D your
feedback will help us to improve it.'),
@@ -29,28 +42,112 @@ run_example <- function(){
shiny::markdown(
"Run ```View(run_example)``` in console to see the code for this app"),
+
+ gov_row(
+ # Nav columns
+ shiny::column(
+
+ width = 3,
+ id = "nav", # DO NOT REMOVE ID
+
+ # Contents box
+ shiny::tags$div(
+ id = "govuk-contents-box", #DO NOT REMOVE ID
+ class = "govuk-contents-box", #DO NOT REMOVE CLASS
+
+ shiny::tags$h2("Contents"),
+
+ # Select Types tab
+ contents_link(
+ "Select Types",
+ "select_types_button",
+ subcontents_text_list =
+ c(
+ "radio_button_Input (inline)",
+ "radio_button_Input (stacked)",
+ "checkbox_Input",
+ "select_Input",
+ "file_Input",
+ "button_Input"
+
+ )
+
+ ),
+
+
+
+ # Text types tab
+ contents_link(
+ "Text Types",
+ "text_types_button",
+ subcontents_text_list = c("date_Input", "text_Input", "text_area_Input", "button_Input"),
+ subcontents_id_list = c(NA, NA, NA, "button_input_text_types")
+ ),
+
+ # Tables tabs and accordions tab
+ contents_link(
+ "Tables, tabs and accordions",
+ "tables_tabs_and_accordions_button",
+ subcontents_text_list = c("govTable", "govTabs", "accordions", "button_Input"),
+ subcontents_id_list = c(NA, NA, NA, "button_input_tables_tabs_accordions")
+ ),
+
+ # Feedback types tab
+ contents_link(
+ "Feedback types",
+ "feedback_types_button",
+ subcontents_text_list = c(
+ "tag_Input",
+ "details",
+ "insert_text",
+ "warning_text",
+ "panel_output",
+ "noti_banner",
+ "gov_summary"
+ )
+ ),
+
+
+ contents_link(
+ "Cookies",
+ "cookies_button"),
+
+ )
+ ),
+
+
+
+shiny::column( width = 9,
+
+ id = "main_col", # DO NOT REMOVE ID
+
#Set up a nav panel so everything not on single page
- shiny::navlistPanel(
- "",
- id="nav",
- widths = c(2, 10),
- well = FALSE,
+ shiny::tabsetPanel(
+ type = "hidden",
+ id = "tab-container", # DO NOT REMOVE ID
#####################Create first panel################################
- shiny::tabPanel(
+ shiny::tabPanel(
"Select Types",
- value = "panel1",
+ value = "select_types",
gov_layout(
size = "two-thirds",
- heading_text("Page 1", size = "l"),
+
+ heading_text("Select Types", size = "l"),
label_hint("label1", "These are some examples of the types of user
select type inputs that you can use"),
- heading_text("radio_button_Input", size = "s"),
+ heading_text("radio_button_Input (inline)", size = "s"),
radio_button_Input(
inputId = "name_changed", label = "Have you changed your name?",
choices = c("Yes", "No"), inline = TRUE,
hint_label = "This includes changing your last name or spelling
your name differently."),
+ heading_text("radio_button_Input (stacked)", size = "s"),
+ radio_button_Input(
+ inputId = "name_changed", label = "Have you changed your name?",
+ choices = c("Yes", "No"), inline = FALSE,
+ hint_label = "This includes changing your last name or spelling
+ your name differently."),
heading_text("checkbox_Input", size = "s"),
checkbox_Input(
inputId = "checkID",
@@ -78,9 +175,9 @@ run_example <- function(){
#####################Create second panel################################
- shiny::tabPanel(
+ shiny::tabPanel(
"Text Types",
- value = "panel2",
+ value = "text_types",
gov_layout(
size = "two-thirds",
backlink_Input("back1"),
@@ -107,27 +204,73 @@ run_example <- function(){
error = T,
error_message = "Please do not leave blank",
word_limit = 300),
- heading_text("button_Input", size = "s"),
+ heading_text("button_Input", size = "s", id = "button_input_text_types"),
button_Input("btn2", "Go to next page"),
button_Input("btn3", "Check for errors", type = "warning")
)
),
#####################Create third panel################################
- shiny::tabPanel(
- "Feedback Types",
- value = "panel3",
+ shiny::tabPanel(
+ "Tables, tabs and accordions",
+ value = "tables_tabs_and_accordions",
gov_layout(
size = "two-thirds",
- backlink_Input("back2"),
+ backlink_Input("back2"),
heading_text("Page 3", size = "l"),
- label_hint("label3", "These are some examples of the types of user
+ label_hint("label3", "These are some examples of using tabs and
+ tables"),
+ heading_text("govTable", size = "s"),
+ shinyGovstyle::govTable(
+ "tab1", example_data, "Test", "l", num_col = c(2,3),
+ width_overwrite = c("one-half", "one-quarter", "one-quarter")),
+ heading_text("govTabs", size = "s"),
+ shinyGovstyle::govTabs("tabsID", data, "tabs"),
+ heading_text("accordions", size = "s"),
+ shinyGovstyle:: accordion(
+ "acc1",
+ c("Writing well for the web",
+ "Writing well for specialists",
+ "Know your audience",
+ "How people read"
+ ),
+ c("This is the content for Writing well for the web.",
+ "This is the content for Writing well for specialists.",
+ "This is the content for Know your audience.",
+ "This is the content for How people read."
+ )),
+
+ heading_text("button_Input", size = "s", id = "button_input_tables_tabs_accordions"),
+ button_Input("btn4", "Go to next page"),
+ )
+ ),
+
+ #####################Create feedback panel################################
+ shiny::tabPanel(
+ "Feedback Types",
+ value = "feedback_types",
+ gov_layout(
+ size = "two-thirds",
+ backlink_Input("back3"),
+ heading_text("Feedback page", size = "l"),
+ label_hint("label-feedback", "These are some examples of the types of user
feedback inputs that you can use"),
heading_text("tag_Input", size = "s"),
- tag_Input("tag1", "NAVY"),
- tag_Input("tag2", "RED", "red"),
- tag_Input("tag3", "BLUE", "blue"),
- tag_Input("tag4", "YELLOW", "yellow"),
+
+ shinyGovstyle::tag_Input("tag1", "Default"),
+ shinyGovstyle::tag_Input("tag2", "Grey", "grey"),
+ shinyGovstyle::tag_Input("tag3", "Green", "green"),
+ shinyGovstyle::tag_Input("tag4", "Turquoise", "turquoise"),
+ shinyGovstyle::tag_Input("tag5", "Blue", "blue"),
+ shinyGovstyle::tag_Input("tag6", "Light-blue", "light-blue"),
+ shinyGovstyle::tag_Input("tag7", "Purple", "purple"),
+ shinyGovstyle::tag_Input("tag8", "Pink", "pink"),
+ shinyGovstyle::tag_Input("tag9", "Red", "red"),
+ shinyGovstyle::tag_Input("tag10", "Orange", "orange"),
+ shinyGovstyle::tag_Input("tag11", "Yellow", "yellow"),
+
+
+
shiny::tags$br(), shiny::tags$br(),
heading_text("details", size = "s"),
details(
@@ -158,49 +301,96 @@ run_example <- function(){
title_txt = "Important",
body_txt = "You have 7 days left to send your application.",
type = "standard"
- )
+ ),
+ heading_text("gov_summary", size = "s"),
+ shinyGovstyle::gov_summary(
+ "sumID",
+ c("Name", "Date of birth", "Contact information", "Contact details"),
+ c(
+ "Sarah Philips",
+ "5 January 1978",
+ "72 Guild Street London SE23 6FH",
+ "07700 900457 sarah.phillips@example.com"
+ ),
+ action = FALSE
+ ),
+
+
)
),
- #####################Create fourth panel################################
+ #####################Create cookie panel################################
shiny::tabPanel(
"Cookies",
- value = "panel4",
+ value = "panel-cookies",
gov_layout(
size = "two-thirds",
- heading_text("Page 3", size = "l"),
- label_hint("label3", "This an example cookie page that could be
+ heading_text("Cookie page", size = "l"),
+ label_hint("label-cookies", "This an example cookie page that could be
expanded")
)
- )),
+ )))
+
+
+), #end of gov row
+
+ footer(TRUE)
- # Add a full footer
- footer(TRUE)),
+
+), #end of fluid page
server = function(input, output, session) {
- # Nav to next tab
- shiny::observeEvent(input$btn1, {
- shiny::updateTabsetPanel(session, "nav",
- selected = "panel2")
+
+
+ # Tab nav
+ shiny::observeEvent(input$select_types_button, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "select_types")
})
- # Nav to next tab
- shiny::observeEvent(input$btn2, {
- shiny::updateTabsetPanel(session, "nav",
- selected = "panel3")
+ shiny::observeEvent(input$text_types_button, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "text_types")
})
+ shiny::observeEvent(input$tables_tabs_and_accordions_button, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "tables_tabs_and_accordions")
+ })
+
+ shiny::observeEvent(input$feedback_types_button, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "feedback_types")
+ })
+
+ shiny::observeEvent(input$cookies_button, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "panel-cookies")
+ })
+
+
+ # Back buttons
shiny::observeEvent(input$back1, {
- shiny::updateTabsetPanel(session, "nav",
- selected = "panel1")
+ shiny::updateTabsetPanel(session, "tab-container", selected = "select_types")
})
shiny::observeEvent(input$back2, {
- shiny::updateTabsetPanel(session, "nav",
- selected = "panel2")
+ shiny::updateTabsetPanel(session, "tab-container", selected = "text_types")
+ })
+
+ shiny::observeEvent(input$back3, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "tables_tabs_and_accordions")
})
+ # Next page buttons
+ shiny::observeEvent(input$btn1, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "text_types")
+ })
+
+ shiny::observeEvent(input$btn1, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "tables_tabs_and_accordions")
+ })
+
+ shiny::observeEvent(input$btn1, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "feedback_types")
+ })
+
# Need this to use live update the word counter
shiny::observeEvent(
input$text_area2,
diff --git a/R/tag.R b/R/tag.R
index e81eb13..af2caaf 100644
--- a/R/tag.R
+++ b/R/tag.R
@@ -16,8 +16,8 @@
#' secondary_text = "User Examples",
#' logo="shinyGovstyle/images/moj_logo.png"),
#' shinyGovstyle::gov_layout(size = "two-thirds",
-#' shinyGovstyle::tag_Input("tag1", "COMPLETE"),
-#' shinyGovstyle::tag_Input("tag2", "INCOMPLETE", "red")),
+#' shinyGovstyle::tag_Input("tag1", "Complete"),
+#' shinyGovstyle::tag_Input("tag2", "Incomplete", "red")),
#' shinyGovstyle::footer(full = TRUE)
#' )
#'
diff --git a/R/utils-pipe.R b/R/utils-pipe.R
new file mode 100644
index 0000000..fd0b1d1
--- /dev/null
+++ b/R/utils-pipe.R
@@ -0,0 +1,14 @@
+#' Pipe operator
+#'
+#' See \code{magrittr::\link[magrittr:pipe]{\%>\%}} for details.
+#'
+#' @name %>%
+#' @rdname pipe
+#' @keywords internal
+#' @export
+#' @importFrom magrittr %>%
+#' @usage lhs \%>\% rhs
+#' @param lhs A value or the magrittr placeholder.
+#' @param rhs A function call using the magrittr semantics.
+#' @return The result of calling `rhs(lhs)`.
+NULL
diff --git a/R/warning_text.R b/R/warning_text.R
index 11ef0d5..ef80dc6 100644
--- a/R/warning_text.R
+++ b/R/warning_text.R
@@ -31,7 +31,7 @@ warning_text <- function(inputId, text){
"!", class="govuk-warning-text__icon", `aria-hidden`="true"
),
shiny::tags$strong(text, class="govuk-warning-text__text",
- shiny::tags$span("Warning", class="govuk-warning-text__assistive")
+ shiny::tags$span("Warning", class="govuk-visually-hidden")
)
)
attachDependency(govWarning)
diff --git a/README.md b/README.md
index 8c10605..171dd6c 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@
[![CRAN status](https://www.r-pkg.org/badges/version/shinyGovstyle)](https://cran.r-project.org/package=shinyGovstyle)
-
+[![R-CMD-check](https://github.com/moj-analytical-services/shinyGovstyle/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/moj-analytical-services/shinyGovstyle/actions/workflows/R-CMD-check.yaml)
> Apply Gov styled components and formats in shiny
@@ -44,6 +44,8 @@ To use error and word count elements you will need to load useShinyjs from shiny
- [Gov style layout](#gov-style-layout)
- [Banner](#banner)
+ - [Contents links](#contents-links)
+ - [Header text](#header-text)
- [Radio button](#radio-button)
- [Checkbox](#checkbox)
- [Button](#button)
@@ -111,6 +113,165 @@ ui <- fluidPage(
server <- function(input, output, session) {}
```
+### Contents links
+
+Create contents and subcontents links to sidebar to navigate page.
+
+![](man/figures/contents_link.png)
+
+Important: `contents_link()` requires the following UI structure to enable the js to work as it relies on the IDs for each section to then point a users focus to. This can also be found in `run_example()`:
+
+```
+shiny::fluidpage(
+ shinygovstyle::header(
+ main_text = "example",
+ secondary_text = "user examples",
+ logo = "shinygovstyle/images/moj_logo.png"
+ ),
+ gov_row(
+ shiny::column(
+ width = 3,
+ id = "nav", # DO NOT REMOVE ID
+ shiny::tags$div(
+ id = "govuk-contents-box", # DO NOT REMOVE ID
+ class = "govuk-contents-box", # DO NOT REMOVE CLASS
+ shiny::tags$h2("contents"),
+
+ # CONTENTS LINKS GO HERE
+ )
+ ),
+ shiny::column(
+ width = 9,
+ id = "main-col", # DO NOT REMOVE ID
+ shiny::tabsetpanel(
+ type = "hidden",
+ id = "tab-container", # DO NOT REMOVE ID
+
+ # TAB PANELS GO HERE
+ )
+ )
+ )
+)
+```
+
+You can create a content links without subcontents links:
+
+```
+contents_link(
+ link_text = "Cookies",
+ input_id = "cookies_button")
+```
+
+Or with subcontents links:
+
+```
+contents_link(
+ link_text = "Feedback types",
+ input_id = "feedback_types_button",
+ subcontents_text_list = c("tag_Input", "details"))
+```
+
+If you use `subcontents_text_list` without specifying `subcontents_id_list` then the subcontents links will automatically link to `shinyGovstyle::heading_text()` elements where the header label matches the `subcontents_text_list` label.
+
+Use `subcontents_id_list` to link a subcontents link to a `shinyGovstyle::heading_text()` with a custom `id` argument. The order needs to match that of `subcontents_text_list`.
+
+Add as a `NA` to your vector any subcontents links where you still want to use the automatic link id for.
+
+```
+contents_link(
+ link_text = "Tables, tabs and accordions",
+ input_id = "tables_tabs_and_accordions_button",
+ subcontents_text_list = c("govTable", "govTabs", "button_Input"),
+ subcontents_id_list = c(NA, NA, "button_input_tables_tabs_accordions")
+)
+```
+
+Contents links will need a `shiny::observeEvent()` in the server to switch between tabset panels.
+
+```
+ui <- shiny::fluidPage(
+ shinyGovstyle::header(
+ main_text = "Example",
+ secondary_text = "User Examples",
+ logo = "shinyGovstyle/images/moj_logo.png"
+ ),
+ gov_row(
+ shiny::column(
+ width = 3,
+ id = "nav", # DO NOT REMOVE ID
+
+ shiny::tags$div( # DO NOT REMOVE DIV
+ shiny::tags$h2("Contents"),
+ contents_link(
+ "Tables, tabs and accordions",
+ "tables_tabs_and_accordions_button",
+ ),
+ contents_link("Feedback types", "feedback_types_button"),
+ )
+ ),
+ shiny::column(
+ width = 9,
+ id = "main_col", # DO NOT REMOVE ID
+ shiny::tabsetPanel(
+ type = "hidden",
+ id = "tab-container", # DO NOT REMOVE ID
+
+ shiny::tabPanel(
+ "Tables, tabs and accordions",
+ value = "tables_tabs_and_accordions",
+ gov_layout(size = "Tables, tabs and accordions",
+ heading_text("Tables, tabs and accordions", size = "l"))
+ ),
+
+ shiny::tabPanel(
+ "Feedback Types",
+ value = "feedback_types",
+ gov_layout(size = "two-thirds",
+ heading_text("Feedback types", size = "l"))
+ ),
+ )
+
+ )
+ )
+)
+
+server <- function(input, output, session) {
+ shiny::observeEvent(input$tables_tabs_and_accordions_button, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "tables_tabs_and_accordions")
+ })
+
+ shiny::observeEvent(input$feedback_types_button, {
+ shiny::updateTabsetPanel(session, "tab-container", selected = "feedback_types")
+ })
+
+}
+shiny::shinyApp(ui = ui, server = server)
+}
+```
+
+Subcontents links work automatically and do not need to a `shiny::observeEvent()` in the server.
+
+### Heading text
+
+Use heading text to create headings.
+
+![](man/figures/header_text.png)
+
+You can adjust the text size by setting `size` to 'xl', 'l', 'm', or 's'. `size` defaults to 'xl'.
+
+```
+heading_text(text_input = "I am the default extra large text", size = "xl"),
+heading_text(text_input = "I am large text", size = "l"),
+heading_text(text_input = "I am medium text", size = "m"),
+heading_text(text_input = "I am small text", size = "s")
+```
+
+You can use `id` to create a custom id to link with `subcontents_id_list` from `shinyGovstyle::contents_link`. This can be helpful when you have identically named headings.
+
+```
+heading_text(text_input = "I am the default extra large text", id = "custom_id")
+```
+
### Radio button
Create a gov style radio button :
@@ -118,7 +279,7 @@ Create a gov style radio button :
```r
radio_button_Input(inputId = "name_changed", label = "Have you changed your name?",
- choices = c("Yes", "No"), inline = TRUE,
+ choices= c("Yes", "No"), inline = TRUE,
hint_label = "This includes changing your last name or spelling your name differently.")
```
@@ -445,8 +606,17 @@ Add a gov style tag component :
![tags](man/figures/tags.png)
```r
-shinyGovstyle::tag_Input("tag1", "COMPLETE"),
-shinyGovstyle::tag_Input("tag2", "INCOMPLETE", "red")
+tag_Input(inputId = "tag1", text = "Default"),
+tag_Input(inputId = "tag2", text = "Grey", colour = "grey"),
+tag_Input(inputId = "tag3", text = "Green", colour = "green"),
+tag_Input(inputId = "tag4", text = "Turquoise", colour = "turquoise"),
+tag_Input(inputId = "tag5", text = "Blue", colour = "blue"),
+tag_Input(inputId = "tag6", text = "Light-blue", colour = "light-blue"),
+tag_Input(inputId = "tag7", text = "Purple", colour = "purple"),
+tag_Input(inputId = "tag8", text = "Pink", colour = "pink"),
+tag_Input(inputId = "tag9", text = "Red", colour = "red"),
+tag_Input(inputId = "tag10", text = "Orange", colour = "orange"),
+tag_Input(inputId = "tag11", text = "Yellow", colour = "yellow")
```
### Error
diff --git a/_pkgdown.yml b/_pkgdown.yml
new file mode 100644
index 0000000..d71acfb
--- /dev/null
+++ b/_pkgdown.yml
@@ -0,0 +1,4 @@
+url: ~
+template:
+ bootstrap: 5
+
diff --git a/cran-comments.md b/cran-comments.md
index 73518a3..3c9237a 100644
--- a/cran-comments.md
+++ b/cran-comments.md
@@ -2,23 +2,8 @@
This is a minor release to update the style sheets to the latest release plus
adding a couple of new components.
-## Test environments
-- R-hub windows-x86_64-devel (r-devel)
-- R-hub ubuntu-gcc-release (r-release)
-- R-hub fedora-clang-devel (r-devel)
-- win-builder (devel and release)
-
-One note from Windows Server 2022, R-devel, 64 bit
-
-```
-* checking for detritus in the temp directory ... NOTE
-Found the following files/directories:
- 'lastMiKTeXException'
-```
-A github search suggests this is isolate to that setup on rhub and is not an
-issue. In addition, I can't replicate the issue on any local builds.
-
## R CMD check results
0 errors v | 0 warnings v | 0 note v
-
+## revdepcheck results
+There are currently no downstream dependencies for this package.
diff --git a/css_changes.md b/css_changes.md
index 83d1cc9..1780401 100644
--- a/css_changes.md
+++ b/css_changes.md
@@ -24,25 +24,174 @@ color: #0b0c0c;
```
* Move fonts css to the font css
-*Change url links
+* Change url links
-* For accordion need to fix the norem by:
+* For accordion need to fix the css by:
+
+ Finding and replacing all `.govuk-frontend-supported .govuk-accordion` with `.js-enabled .govuk-accordion`
+
+ and adding this chunk to the accordion section of css:
+
+```
+.js-enabled .govuk-accordion__section-toggle {
+ pointer-events: none;
+}
```
-.js-enabled .govuk-accordion-nav__chevron {
- width: 20px;
- height: 20px;
- border: 1px solid;
-.js-enabled .govuk-accordion-nav__chevron:after{
- bottom: 5px;
- left: 6px;
- width: 6px;
- height: 6px;
- border-top: 2px solid;
- border-right: 2px solid
+* Change filepaths for crown copyright logo:
+```
+.govuk-footer__copyright-logo {
+ display: inline-block;
+ min-width: 125px;
+ padding-top: 112px;
+ background-image: url(../images/govuk-crest.png);
+ background-repeat: no-repeat;
+ background-position: 50% 0;
+ background-size: 125px 102px;
+ text-align: center;
+ white-space: nowrap
}
-.js-enabled .govuk-accordion__section-toggle {
- pointer-events: none;
+@media only screen and (-webkit-min-device-pixel-ratio:2),
+only screen and (min-resolution:192dpi),
+only screen and (min-resolution:2dppx) {
+ .govuk-footer__copyright-logo {
+ background-image: url(../images/govuk-crest-2x.png)
+ }
+}
+```
+
+* Fix alignment on the radio button item labels
+```
+.govuk-radios__input {
+ z-index: 1;
+ width: 44px;
+ height: 44px;
+ margin: 0;
+ opacity: 0;
+ vertical-align: middle;
+ cursor: pointer
+}
+
+.govuk-radios__label {
+ align-self: center;
+ max-width: calc(100% - 74px);
+ display: inline-block;
+ padding: 7px 15px;
+ cursor: pointer;
+ touch-action: manipulation
+}
+```
+
+* Fix selected tab panel border gap
+```
+.govuk-frontend-supported .govuk-tabs__list-item--selected {
+ position: relative;
+ margin-top: -5px;
+ margin-bottom: -2px;
+ padding: 14px 19px 16px;
+ border: 1px solid #b1b4b6;
+ border-bottom: none;
+ background-color: #fff
+}
+```
+
+* govTable caption colour:
+
+```
+.govuk-table__caption {
+ font-weight: 700;
+ display: table-caption;
+ text-align: left;
+ color: #000;
+}
+```
+
+* contents box:
+
+```
+/*Match margin in main-wrapper so "Contents" is level*/
+@media (max-width:40.0625em) {
+ .govuk-contents-box {
+ margin-right: 30px;
+ margin-left: 30px
+
+ }
+}
+
+/*Match margin in main-wrapper so "Contents" is level*/
+@media (min-width:40.0625em) and (max-width:48.0625em) {
+ .govuk-contents-box {
+ margin-right: 45px;
+ margin-left: 45px
+
+ }
+}
+
+
+/*Match margin in main-wrapper so "Contents" is level*/
+@media (min-width:40.0625em) {
+ .govuk-contents-box {
+ margin-top: 40px;
+
+ }
+}
+
+
+/*Do not apply stickyness on smaller screen*/
+@media (min-width:48.0625em) {
+.govuk-contents-box_sticky {
+ position: fixed;
+ /*Guess? - probably could put exact pixels to make smooth*/
+ top: 26px;
+ /* Margin 0 to stop the contents box bopping around */
+ margin: 0;
+ padding: 0;
+}
+}
+
+
+/*Contents link formatting*/
+.govuk-contents {
+ top: 0.5rem;
+ padding: 0.25rem;
+}
+
+.govuk-contents__link {
+ padding-left: 0;
+ font-size: 1rem;
+}
+
+.govuk-subcontents {
+ list-style-type: none;
+ padding-left: 0;
+ font-size: 1rem;
+}
+
+/*Only display subcontents for first one - on load*/
+.govuk-contents ~ .govuk-contents > .govuk-subcontents {
+ display: none;
+}
+```
+
+* Updated govuk-link--no-visited-state to still have a clear focus highlight (copied from the govuk-link formatting)
+
+```
+.govuk-link--no-visited-state:focus {
+ outline: 3px solid transparent;
+ background-color: #fd0;
+ box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
+}
+
+.govuk-link--no-visited-state:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none;
+ color: #003078
}
```
diff --git a/docs/404.html b/docs/404.html
new file mode 100644
index 0000000..a22911f
--- /dev/null
+++ b/docs/404.html
@@ -0,0 +1,110 @@
+
+
+
+
+
+
+
+Page not found (404) • shinyGovstyle
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Content not found. Please use links in the navbar.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/apple-touch-icon-120x120.png b/docs/apple-touch-icon-120x120.png
new file mode 100644
index 0000000..8660c0e
Binary files /dev/null and b/docs/apple-touch-icon-120x120.png differ
diff --git a/docs/apple-touch-icon-152x152.png b/docs/apple-touch-icon-152x152.png
new file mode 100644
index 0000000..3466d2e
Binary files /dev/null and b/docs/apple-touch-icon-152x152.png differ
diff --git a/docs/apple-touch-icon-180x180.png b/docs/apple-touch-icon-180x180.png
new file mode 100644
index 0000000..eadce2a
Binary files /dev/null and b/docs/apple-touch-icon-180x180.png differ
diff --git a/docs/apple-touch-icon-60x60.png b/docs/apple-touch-icon-60x60.png
new file mode 100644
index 0000000..57ba63e
Binary files /dev/null and b/docs/apple-touch-icon-60x60.png differ
diff --git a/docs/apple-touch-icon-76x76.png b/docs/apple-touch-icon-76x76.png
new file mode 100644
index 0000000..577efb8
Binary files /dev/null and b/docs/apple-touch-icon-76x76.png differ
diff --git a/docs/apple-touch-icon.png b/docs/apple-touch-icon.png
new file mode 100644
index 0000000..f926b33
Binary files /dev/null and b/docs/apple-touch-icon.png differ
diff --git a/docs/authors.html b/docs/authors.html
new file mode 100644
index 0000000..9d23dc9
--- /dev/null
+++ b/docs/authors.html
@@ -0,0 +1,98 @@
+
+Authors and Citation • shinyGovstyle
+
+
+
+
+
+
+
+
+
+
Wyatt R (2024).
+shinyGovstyle: Custom Gov Style Inputs for Shiny .
+R package version 0.0.8, https://github.com/moj-analytical-services/shinyGovstyle .
+
+
@Manual{,
+ title = {shinyGovstyle: Custom Gov Style Inputs for Shiny},
+ author = {Ross Wyatt},
+ year = {2024},
+ note = {R package version 0.0.8},
+ url = {https://github.com/moj-analytical-services/shinyGovstyle},
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/bootstrap-toc.css b/docs/bootstrap-toc.css
new file mode 100644
index 0000000..5a85941
--- /dev/null
+++ b/docs/bootstrap-toc.css
@@ -0,0 +1,60 @@
+/*!
+ * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/)
+ * Copyright 2015 Aidan Feldman
+ * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */
+
+/* modified from https://github.com/twbs/bootstrap/blob/94b4076dd2efba9af71f0b18d4ee4b163aa9e0dd/docs/assets/css/src/docs.css#L548-L601 */
+
+/* All levels of nav */
+nav[data-toggle='toc'] .nav > li > a {
+ display: block;
+ padding: 4px 20px;
+ font-size: 13px;
+ font-weight: 500;
+ color: #767676;
+}
+nav[data-toggle='toc'] .nav > li > a:hover,
+nav[data-toggle='toc'] .nav > li > a:focus {
+ padding-left: 19px;
+ color: #563d7c;
+ text-decoration: none;
+ background-color: transparent;
+ border-left: 1px solid #563d7c;
+}
+nav[data-toggle='toc'] .nav > .active > a,
+nav[data-toggle='toc'] .nav > .active:hover > a,
+nav[data-toggle='toc'] .nav > .active:focus > a {
+ padding-left: 18px;
+ font-weight: bold;
+ color: #563d7c;
+ background-color: transparent;
+ border-left: 2px solid #563d7c;
+}
+
+/* Nav: second level (shown on .active) */
+nav[data-toggle='toc'] .nav .nav {
+ display: none; /* Hide by default, but at >768px, show it */
+ padding-bottom: 10px;
+}
+nav[data-toggle='toc'] .nav .nav > li > a {
+ padding-top: 1px;
+ padding-bottom: 1px;
+ padding-left: 30px;
+ font-size: 12px;
+ font-weight: normal;
+}
+nav[data-toggle='toc'] .nav .nav > li > a:hover,
+nav[data-toggle='toc'] .nav .nav > li > a:focus {
+ padding-left: 29px;
+}
+nav[data-toggle='toc'] .nav .nav > .active > a,
+nav[data-toggle='toc'] .nav .nav > .active:hover > a,
+nav[data-toggle='toc'] .nav .nav > .active:focus > a {
+ padding-left: 28px;
+ font-weight: 500;
+}
+
+/* from https://github.com/twbs/bootstrap/blob/e38f066d8c203c3e032da0ff23cd2d6098ee2dd6/docs/assets/css/src/docs.css#L631-L634 */
+nav[data-toggle='toc'] .nav > .active > ul {
+ display: block;
+}
diff --git a/docs/bootstrap-toc.js b/docs/bootstrap-toc.js
new file mode 100644
index 0000000..1cdd573
--- /dev/null
+++ b/docs/bootstrap-toc.js
@@ -0,0 +1,159 @@
+/*!
+ * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/)
+ * Copyright 2015 Aidan Feldman
+ * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */
+(function() {
+ 'use strict';
+
+ window.Toc = {
+ helpers: {
+ // return all matching elements in the set, or their descendants
+ findOrFilter: function($el, selector) {
+ // http://danielnouri.org/notes/2011/03/14/a-jquery-find-that-also-finds-the-root-element/
+ // http://stackoverflow.com/a/12731439/358804
+ var $descendants = $el.find(selector);
+ return $el.filter(selector).add($descendants).filter(':not([data-toc-skip])');
+ },
+
+ generateUniqueIdBase: function(el) {
+ var text = $(el).text();
+ var anchor = text.trim().toLowerCase().replace(/[^A-Za-z0-9]+/g, '-');
+ return anchor || el.tagName.toLowerCase();
+ },
+
+ generateUniqueId: function(el) {
+ var anchorBase = this.generateUniqueIdBase(el);
+ for (var i = 0; ; i++) {
+ var anchor = anchorBase;
+ if (i > 0) {
+ // add suffix
+ anchor += '-' + i;
+ }
+ // check if ID already exists
+ if (!document.getElementById(anchor)) {
+ return anchor;
+ }
+ }
+ },
+
+ generateAnchor: function(el) {
+ if (el.id) {
+ return el.id;
+ } else {
+ var anchor = this.generateUniqueId(el);
+ el.id = anchor;
+ return anchor;
+ }
+ },
+
+ createNavList: function() {
+ return $('');
+ },
+
+ createChildNavList: function($parent) {
+ var $childList = this.createNavList();
+ $parent.append($childList);
+ return $childList;
+ },
+
+ generateNavEl: function(anchor, text) {
+ var $a = $(' ');
+ $a.attr('href', '#' + anchor);
+ $a.text(text);
+ var $li = $(' ');
+ $li.append($a);
+ return $li;
+ },
+
+ generateNavItem: function(headingEl) {
+ var anchor = this.generateAnchor(headingEl);
+ var $heading = $(headingEl);
+ var text = $heading.data('toc-text') || $heading.text();
+ return this.generateNavEl(anchor, text);
+ },
+
+ // Find the first heading level (``, then ``, etc.) that has more than one element. Defaults to 1 (for ``).
+ getTopLevel: function($scope) {
+ for (var i = 1; i <= 6; i++) {
+ var $headings = this.findOrFilter($scope, 'h' + i);
+ if ($headings.length > 1) {
+ return i;
+ }
+ }
+
+ return 1;
+ },
+
+ // returns the elements for the top level, and the next below it
+ getHeadings: function($scope, topLevel) {
+ var topSelector = 'h' + topLevel;
+
+ var secondaryLevel = topLevel + 1;
+ var secondarySelector = 'h' + secondaryLevel;
+
+ return this.findOrFilter($scope, topSelector + ',' + secondarySelector);
+ },
+
+ getNavLevel: function(el) {
+ return parseInt(el.tagName.charAt(1), 10);
+ },
+
+ populateNav: function($topContext, topLevel, $headings) {
+ var $context = $topContext;
+ var $prevNav;
+
+ var helpers = this;
+ $headings.each(function(i, el) {
+ var $newNav = helpers.generateNavItem(el);
+ var navLevel = helpers.getNavLevel(el);
+
+ // determine the proper $context
+ if (navLevel === topLevel) {
+ // use top level
+ $context = $topContext;
+ } else if ($prevNav && $context === $topContext) {
+ // create a new level of the tree and switch to it
+ $context = helpers.createChildNavList($prevNav);
+ } // else use the current $context
+
+ $context.append($newNav);
+
+ $prevNav = $newNav;
+ });
+ },
+
+ parseOps: function(arg) {
+ var opts;
+ if (arg.jquery) {
+ opts = {
+ $nav: arg
+ };
+ } else {
+ opts = arg;
+ }
+ opts.$scope = opts.$scope || $(document.body);
+ return opts;
+ }
+ },
+
+ // accepts a jQuery object, or an options object
+ init: function(opts) {
+ opts = this.helpers.parseOps(opts);
+
+ // ensure that the data attribute is in place for styling
+ opts.$nav.attr('data-toggle', 'toc');
+
+ var $topContext = this.helpers.createChildNavList(opts.$nav);
+ var topLevel = this.helpers.getTopLevel(opts.$scope);
+ var $headings = this.helpers.getHeadings(opts.$scope, topLevel);
+ this.helpers.populateNav($topContext, topLevel, $headings);
+ }
+ };
+
+ $(function() {
+ $('nav[data-toggle="toc"]').each(function(i, el) {
+ var $nav = $(el);
+ Toc.init($nav);
+ });
+ });
+})();
diff --git a/docs/css_changes.html b/docs/css_changes.html
new file mode 100644
index 0000000..55fe099
--- /dev/null
+++ b/docs/css_changes.html
@@ -0,0 +1,112 @@
+
+NA • shinyGovstyle
+
+
+
+
+
+
+
+
+
These the things needed when updating the gov.uk css to make it work.
+
add to .govuk-back-link
for backlink
+border: none;
+background: white;
+color: #0b0c0c;
+
.govuk-error-summary__list {
+ color: #d4351c;
+ font-weight: 700;
+ text-decoration: underline;
+ text-underline-offset: 0.1em
+
.govuk-link {
+ border:none
+}
+
.js-enabled .govuk-accordion-nav__chevron {
+ width: 20px;
+ height: 20px;
+ border: 1px solid;
+
+.js-enabled .govuk-accordion-nav__chevron:after{
+ bottom: 5px;
+ left: 6px;
+ width: 6px;
+ height: 6px;
+ border-top: 2px solid;
+ border-right: 2px solid
+}
+
+.js-enabled .govuk-accordion__section-toggle {
+ pointer-events: none;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docsearch.css b/docs/docsearch.css
new file mode 100644
index 0000000..e5f1fe1
--- /dev/null
+++ b/docs/docsearch.css
@@ -0,0 +1,148 @@
+/* Docsearch -------------------------------------------------------------- */
+/*
+ Source: https://github.com/algolia/docsearch/
+ License: MIT
+*/
+
+.algolia-autocomplete {
+ display: block;
+ -webkit-box-flex: 1;
+ -ms-flex: 1;
+ flex: 1
+}
+
+.algolia-autocomplete .ds-dropdown-menu {
+ width: 100%;
+ min-width: none;
+ max-width: none;
+ padding: .75rem 0;
+ background-color: #fff;
+ background-clip: padding-box;
+ border: 1px solid rgba(0, 0, 0, .1);
+ box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .175);
+}
+
+@media (min-width:768px) {
+ .algolia-autocomplete .ds-dropdown-menu {
+ width: 175%
+ }
+}
+
+.algolia-autocomplete .ds-dropdown-menu::before {
+ display: none
+}
+
+.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] {
+ padding: 0;
+ background-color: rgb(255,255,255);
+ border: 0;
+ max-height: 80vh;
+}
+
+.algolia-autocomplete .ds-dropdown-menu .ds-suggestions {
+ margin-top: 0
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion {
+ padding: 0;
+ overflow: visible
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion--category-header {
+ padding: .125rem 1rem;
+ margin-top: 0;
+ font-size: 1.3em;
+ font-weight: 500;
+ color: #00008B;
+ border-bottom: 0
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion--wrapper {
+ float: none;
+ padding-top: 0
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column {
+ float: none;
+ width: auto;
+ padding: 0;
+ text-align: left
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion--content {
+ float: none;
+ width: auto;
+ padding: 0
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion--content::before {
+ display: none
+}
+
+.algolia-autocomplete .ds-suggestion:not(:first-child) .algolia-docsearch-suggestion--category-header {
+ padding-top: .75rem;
+ margin-top: .75rem;
+ border-top: 1px solid rgba(0, 0, 0, .1)
+}
+
+.algolia-autocomplete .ds-suggestion .algolia-docsearch-suggestion--subcategory-column {
+ display: block;
+ padding: .1rem 1rem;
+ margin-bottom: 0.1;
+ font-size: 1.0em;
+ font-weight: 400
+ /* display: none */
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion--title {
+ display: block;
+ padding: .25rem 1rem;
+ margin-bottom: 0;
+ font-size: 0.9em;
+ font-weight: 400
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion--text {
+ padding: 0 1rem .5rem;
+ margin-top: -.25rem;
+ font-size: 0.8em;
+ font-weight: 400;
+ line-height: 1.25
+}
+
+.algolia-autocomplete .algolia-docsearch-footer {
+ width: 110px;
+ height: 20px;
+ z-index: 3;
+ margin-top: 10.66667px;
+ float: right;
+ font-size: 0;
+ line-height: 0;
+}
+
+.algolia-autocomplete .algolia-docsearch-footer--logo {
+ background-image: url("data:image/svg+xml;utf8, ");
+ background-repeat: no-repeat;
+ background-position: 50%;
+ background-size: 100%;
+ overflow: hidden;
+ text-indent: -9000px;
+ width: 100%;
+ height: 100%;
+ display: block;
+ transform: translate(-8px);
+}
+
+.algolia-autocomplete .algolia-docsearch-suggestion--highlight {
+ color: #FF8C00;
+ background: rgba(232, 189, 54, 0.1)
+}
+
+
+.algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight {
+ box-shadow: inset 0 -2px 0 0 rgba(105, 105, 105, .5)
+}
+
+.algolia-autocomplete .ds-suggestion.ds-cursor .algolia-docsearch-suggestion--content {
+ background-color: rgba(192, 192, 192, .15)
+}
diff --git a/docs/docsearch.js b/docs/docsearch.js
new file mode 100644
index 0000000..b35504c
--- /dev/null
+++ b/docs/docsearch.js
@@ -0,0 +1,85 @@
+$(function() {
+
+ // register a handler to move the focus to the search bar
+ // upon pressing shift + "/" (i.e. "?")
+ $(document).on('keydown', function(e) {
+ if (e.shiftKey && e.keyCode == 191) {
+ e.preventDefault();
+ $("#search-input").focus();
+ }
+ });
+
+ $(document).ready(function() {
+ // do keyword highlighting
+ /* modified from https://jsfiddle.net/julmot/bL6bb5oo/ */
+ var mark = function() {
+
+ var referrer = document.URL ;
+ var paramKey = "q" ;
+
+ if (referrer.indexOf("?") !== -1) {
+ var qs = referrer.substr(referrer.indexOf('?') + 1);
+ var qs_noanchor = qs.split('#')[0];
+ var qsa = qs_noanchor.split('&');
+ var keyword = "";
+
+ for (var i = 0; i < qsa.length; i++) {
+ var currentParam = qsa[i].split('=');
+
+ if (currentParam.length !== 2) {
+ continue;
+ }
+
+ if (currentParam[0] == paramKey) {
+ keyword = decodeURIComponent(currentParam[1].replace(/\+/g, "%20"));
+ }
+ }
+
+ if (keyword !== "") {
+ $(".contents").unmark({
+ done: function() {
+ $(".contents").mark(keyword);
+ }
+ });
+ }
+ }
+ };
+
+ mark();
+ });
+});
+
+/* Search term highlighting ------------------------------*/
+
+function matchedWords(hit) {
+ var words = [];
+
+ var hierarchy = hit._highlightResult.hierarchy;
+ // loop to fetch from lvl0, lvl1, etc.
+ for (var idx in hierarchy) {
+ words = words.concat(hierarchy[idx].matchedWords);
+ }
+
+ var content = hit._highlightResult.content;
+ if (content) {
+ words = words.concat(content.matchedWords);
+ }
+
+ // return unique words
+ var words_uniq = [...new Set(words)];
+ return words_uniq;
+}
+
+function updateHitURL(hit) {
+
+ var words = matchedWords(hit);
+ var url = "";
+
+ if (hit.anchor) {
+ url = hit.url_without_anchor + '?q=' + escape(words.join(" ")) + '#' + hit.anchor;
+ } else {
+ url = hit.url + '?q=' + escape(words.join(" "));
+ }
+
+ return url;
+}
diff --git a/docs/favicon-16x16.png b/docs/favicon-16x16.png
new file mode 100644
index 0000000..e371dd7
Binary files /dev/null and b/docs/favicon-16x16.png differ
diff --git a/docs/favicon-32x32.png b/docs/favicon-32x32.png
new file mode 100644
index 0000000..7b899d3
Binary files /dev/null and b/docs/favicon-32x32.png differ
diff --git a/docs/favicon.ico b/docs/favicon.ico
new file mode 100644
index 0000000..919fba3
Binary files /dev/null and b/docs/favicon.ico differ
diff --git a/docs/index.html b/docs/index.html
new file mode 100644
index 0000000..9b131d3
--- /dev/null
+++ b/docs/index.html
@@ -0,0 +1,567 @@
+
+
+
+
+
+
+
+Custom Gov Style Inputs for Shiny • shinyGovstyle
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Apply Gov styled components and formats in shiny
+
+
+
Overview
+
+
This package provides some custom widgets to style your app like gov.uk. There are a variety of widgets available, including select, radio, checkboxes as well as styling for headers and footers.
+
To view details of gov.uk components please visit https://design-system.service.gov.uk/ . Most components from https://design-system.service.gov.uk/components/ are available to use through this package.
+
Installation :
+
+
This is also available on conda
+
conda install r-shinygovstyle
+
If you want to make use of the development then
+
+
To use error and word count elements you will need to load useShinyjs from shinyjs in the UI:
+
+
+
+
Components available :
+
+
+
+
Gov style layout
+
+
Create a gov style look to the page with a header, footer, font and layout:
+
+ui <- fluidPage (
+ #font(),
+ shinyGovstyle :: header ( "Justice" , "Prototype" , logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ gov_layout ( size = "full" ,
+ tags $ br ( ) ,
+ tags $ br ( ) ,
+ tags $ br ( ) ,
+ tags $ br ( ) ,
+ tags $ br ( )
+ ) ,
+ footer ( TRUE )
+)
+
+server <- function ( input , output , session ) { }
+
Note: You can only use gov.uk font on service.gov.uk (see https://design-system.service.gov.uk/styles/typography/ )
+
+
+
Banner
+
+
Add a banner to the header to state in beta or alpha :
+
+ui <- fluidPage (
+ shinyGovstyle :: header ( "Justice" , "Prototype" , logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ banner ( "banner" , "beta" , 'This is a new service – your <a class="govuk-link" href="#">feedback</a> will help us to improve it.' ) ,
+ gov_layout ( size = "full" ,
+ tags $ br ( ) ,
+ tags $ br ( ) ,
+ tags $ br ( ) ,
+ tags $ br ( ) ,
+ tags $ br ( )
+ ) ,
+ footer ( TRUE )
+)
+
+server <- function ( input , output , session ) { }
+
+
+
+
Create a gov style radio button :
+
+radio_button_Input ( inputId = "name_changed" , label = "Have you changed your name?" ,
+ choices = c ( "Yes" , "No" ) , inline = TRUE ,
+ hint_label = "This includes changing your last name or spelling your name differently." )
+
+
+
Checkbox
+
+
Turn checkboxes into gov style ones :
+
+checkbox_Input (
+ inputId = "checkID" ,
+ cb_labels = c ( "Waste from animal carcasses" , "Waste from mines or quarries" , "Farm or agricultural waste" ) ,
+ checkboxIds = c ( "op1" , "op2" , "op3" ) ,
+ label = "Which types of waste do you transport?" ,
+ hint_label = "Select all that apply." )
+
Note that you currently access the values separately through the inputIds you supply or all values through the main inputID.
+
+
+
+
Gov style button with different styles :
+
shinyGovstyle:: button_Input (inputId = "btn1" , label = "default" ),
+ shinyGovstyle:: button_Input (inputId = "btn1" , label = "start" , type = "start" ),
+ shinyGovstyle:: button_Input (inputId = "btn1" , label = "secondary" , type = "secondary" ),
+ shinyGovstyle:: button_Input (inputId = "btn1" , label = "warning" , type = "warning" )
+
+
+
Select
+
+
Gov style drop down select :
+
+shinyGovstyle :: select_Input (
+ inputId = "sorter" ,
+ label = "Sort by" ,
+ select_text = c ( "Recently published" , "Recently updated" , "Most views" , "Most comments" ) ,
+ select_value = c ( "published" , "updated" , "view" , "comments" ) )
+
+
+
Date
+
+
Gov style date input :
+
+date_Input (
+ inputId = "date1" ,
+ label = "What is your date of birth?" ,
+ hint_label = "For example, 31 3 1980" )
+
Note that you currently access the individual values by adding an affix of _day, _month and _year or the full date in dd/mm/yy by using the inputID.
+
+
+
+
Gov style file input component :
+
+file_Input ( inputId = "file1" , label = "Upload a file" )
+
+
+
Text input
+
+
Gov style text input component :
+
+text_Input ( inputId = "txt1" , label = "Event name" )
+
+
+
Text area input
+
+
Gov style text area input component :
+
+text_area_Input (
+ inputId = "text_area" ,
+ label = "Can you provide more detail?" ,
+ hint_label = "Do not include personal or financial information, like your National Insurance number or credit card details." )
+
You can also add a word count to the options, which requires an additional argument in the server :
+
+ui <- fluidPage (
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header ( "Justice" , "" , logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ gov_layout ( size = "full" ,
+ text_area_Input (
+ inputId = "text_area" ,
+ label = "Can you provide more detail?" ,
+ hint_label = "Do not include personal or financial information, like
+ your National Insurance number or credit card details." ,
+ word_limit = 300 )
+ ) ,
+ footer ( TRUE )
+)
+
+# Define server logic required to draw a histogram
+server <- function ( input , output , session ) {
+ observeEvent ( input $ text_area ,
+ word_count ( inputId = "text_area" , input = input $ text_area , word_limit = 300 )
+ )
+}
+
+
+
Warning
+
+
Gov style warning component :
+
+warning_text ( inputId = "warn" , text = "You can be fined up to £5,000 if you do not register." )
+
+
+
Insert text
+
+
Gov style insert text component :
+
+insert_text ( inputId = "insertId" ,
+ text = "It can take up to 8 weeks to register a lasting power of attorney
+ if there are no mistakes in the application." )
+
+
+
Details
+
+
Gov style details component :
+
+ details (
+ inputId = "detID" ,
+ label = "Help with nationality" ,
+ help_text = "We need to know your nationality so we can work out which elections you’re
+ entitled to vote in. If you cannot provide your nationality, you’ll have to
+ send copies of identity documents through the post." )
+
+
+
Panel
+
+
Gov style panel component :
+
+panel_output (
+ inputId = "panId" ,
+ main_text = "Application complete" ,
+ sub_text = "Your reference number <br> <strong>HDJ2123F</strong>" )
+
+
+
Notification Banner
+
+
Gov style panel component :
+
noti_banner (
+ "notId" ,
+ title_txt = "Important" ,
+ body_txt = Example text,
+ type = "standard"
+ )
+
+
+
Accordion
+
+
Gov style accordion component :
+
+accordion (
+ "acc1" ,
+ c ( "Writing well for the web" ,
+ "Writing well for specialists" ,
+ "Know your audience" ,
+ "How people read"
+ ) ,
+ c ( "This is the content for Writing well for the web." ,
+ "This is the content for Writing well for specialists." ,
+ "This is the content for Know your audience." ,
+ "This is the content for How people read."
+ ) )
+
+
+
Table
+
+
Gov style table component :
+
+Months <- c ( "January" , "February" , "March" )
+Bikes <- c ( "£85" , "£75" , "£165" )
+Cars <- c ( "£95" , "£55" , "£125" )
+example_data <- data.frame ( Months , Bikes , Cars )
+
+shinyGovstyle :: govTable (
+ "tab1" , example_data , "Test" , "l" , num_col = c ( 2 ,3 ) ,
+ width_overwrite = c ( "one-half" , "one-quarter" , "one-quarter" ) )
+
+
+
Tabs
+
+
Gov style tabs component :
+
+ # Create an example dataset
+ tabs <- c ( rep ( "Past Day" , 3 ) ,
+ rep ( "Past Week" , 3 ) ,
+ rep ( "Past Month" , 3 ) ,
+ rep ( "Past Year" , 3 ) )
+ Case_manager <- rep ( c ( "David Francis" , "Paul Farmer" , "Rita Patel" ) ,4 )
+ Cases_open <- c ( 3 , 1 , 2 , 24 , 16 , 24 , 98 , 122 , 126 , 1380 , 1129 , 1539 )
+ Cases_closed <- c ( 0 , 0 , 0 , 18 , 20 , 27 , 95 , 131 , 142 , 1472 , 1083 , 1265 )
+ data <- data.frame ( tabs , Case_manager , Cases_open , Cases_closed )
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: govTabs ( "tabsID" , data , "tabs" ) ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+
+
+
Summary List
+
+
Gov style summary list :
+
+ # Create an example dataset
+ headers <- c ( "Name" , "Date of birth" , "Contact information" , "Contact details" )
+ info <- c (
+ "Sarah Philips" ,
+ "5 January 1978" ,
+ "72 Guild Street <br> London <br> SE23 6FH" ,
+ "07700 900457 <br> sarah.phillips@example.com" )
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: gov_summary ( "sumID" , headers , info , action = TRUE ) ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+
+
+
Cookie Banner
+
+
Gov style cookie banner :
+
+ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ #Needs shinyjs to work
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: cookieBanner ( "The best thing" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+)
+
+server <- function ( input , output , session ) {
+
+ #Need these set of observeEvent to create a path through the cookie banner
+ observeEvent ( input $ cookieAccept , {
+ shinyjs :: show ( id = "cookieAcceptDiv" )
+ shinyjs :: hide ( id = "cookieMain" )
+ } )
+
+ observeEvent ( input $ cookieReject , {
+ shinyjs :: show ( id = "cookieRejectDiv" )
+ shinyjs :: hide ( id = "cookieMain" )
+ } )
+
+ observeEvent ( input $ hideAccept , {
+ shinyjs :: toggle ( id = "cookieDiv" )
+ } )
+
+ observeEvent ( input $ hideReject , {
+ shinyjs :: toggle ( id = "cookieDiv" )
+ } )
+
+ observeEvent ( input $ cookieLink , {
+ #Need to link here to where further info is located. You can
+ #updateTabsetPanel to have a cookie page for instance
+ } )
+
+}
+shinyApp ( ui = ui , server = server )
+
+
+
+
Add a gov style tag component :
+
shinyGovstyle:: tag_Input ("tag1" , "COMPLETE" ),
+ shinyGovstyle:: tag_Input ("tag2" , "INCOMPLETE" , "red" )
+
+
+
Error
+
+
Add errors to components when not filled in correctly. Most components have an option to add :
+
+ui <- fluidPage (
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header ( "Justice" , "" , logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ gov_layout ( size = "full" ,
+ text_area_Input (
+ "text_area" ,
+ "Can you provide more detail?" ,
+ "Do not include personal or financial information, like your National Insurance number or credit card details." ,
+ word_limit = 300 , error = TRUE , error_message = "Error" ) ,
+
+ button_Input ( "btn1" , "Toggle error" )
+ ) ,
+ footer ( TRUE )
+)
+
+server <- function ( input , output , session ) {
+ err <<- FALSE
+ observeEvent ( input $ btn1 ,{
+ if ( err ) {
+ err <<- FALSE
+ error_off ( "text_area" )
+ }
+ else {
+ err <<- TRUE
+ error_on ( "text_area" , "You have an error" )
+ }
+ }
+ )
+}
+
+
+
Example Version
+
+
You can run an example dashboard. This is very rough and will be improved.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/link.svg b/docs/link.svg
new file mode 100644
index 0000000..88ad827
--- /dev/null
+++ b/docs/link.svg
@@ -0,0 +1,12 @@
+
+
+
+
+
+
diff --git a/docs/logo.png b/docs/logo.png
new file mode 100644
index 0000000..d87cda6
Binary files /dev/null and b/docs/logo.png differ
diff --git a/docs/news/index.html b/docs/news/index.html
new file mode 100644
index 0000000..b68e88c
--- /dev/null
+++ b/docs/news/index.html
@@ -0,0 +1,106 @@
+
+Changelog • shinyGovstyle
+
+
+
+
+
+
+
+
+
+
Update the css to v4.0.0 and made fixes associated with that.
+One of the major changes in the css is a change in look for the accordion.
+Added new functions gov_main_layout
, gov_row
, gov_box
and gov_text
to give better control over the layouts.
+Added tabs as a component using the govTab
command
+Added summary list as a component using the gov_summary
command
+Added error summary component (error_summary
) and error summary update (error_summary_update
)
+
+
+
+
Improved the header so that you can adjust the logo size to suit
+Fix some errors that appeared in the footer
+Fix the word count function so that you only need to enter word count limit on the text_area
function. You can change the limit on word_count
if needed.
+Change the run_example
to a better versions that show more ways you can you the package.
+Change the backlink_Input
to a button so that you can use server to move between panels etc.
+Added tags through the tag_Input
function plus added to the use_example
.
+Added cookie banner through the cookieBanner
function.
+Added accordion through the accordion
function.
+Added tables through the govTable
function.
+
+
+
+
Fix minor bugs from the issues list including data default and radio default
+Added units test
+Added an example function
+Added a NEWS.md
file to track changes to the package.
+Added a notification banner function
+Got ready for CRAN release.
+Added output value to the documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/pkgdown.css b/docs/pkgdown.css
new file mode 100644
index 0000000..80ea5b8
--- /dev/null
+++ b/docs/pkgdown.css
@@ -0,0 +1,384 @@
+/* Sticky footer */
+
+/**
+ * Basic idea: https://philipwalton.github.io/solved-by-flexbox/demos/sticky-footer/
+ * Details: https://github.com/philipwalton/solved-by-flexbox/blob/master/assets/css/components/site.css
+ *
+ * .Site -> body > .container
+ * .Site-content -> body > .container .row
+ * .footer -> footer
+ *
+ * Key idea seems to be to ensure that .container and __all its parents__
+ * have height set to 100%
+ *
+ */
+
+html, body {
+ height: 100%;
+}
+
+body {
+ position: relative;
+}
+
+body > .container {
+ display: flex;
+ height: 100%;
+ flex-direction: column;
+}
+
+body > .container .row {
+ flex: 1 0 auto;
+}
+
+footer {
+ margin-top: 45px;
+ padding: 35px 0 36px;
+ border-top: 1px solid #e5e5e5;
+ color: #666;
+ display: flex;
+ flex-shrink: 0;
+}
+footer p {
+ margin-bottom: 0;
+}
+footer div {
+ flex: 1;
+}
+footer .pkgdown {
+ text-align: right;
+}
+footer p {
+ margin-bottom: 0;
+}
+
+img.icon {
+ float: right;
+}
+
+/* Ensure in-page images don't run outside their container */
+.contents img {
+ max-width: 100%;
+ height: auto;
+}
+
+/* Fix bug in bootstrap (only seen in firefox) */
+summary {
+ display: list-item;
+}
+
+/* Typographic tweaking ---------------------------------*/
+
+.contents .page-header {
+ margin-top: calc(-60px + 1em);
+}
+
+dd {
+ margin-left: 3em;
+}
+
+/* Section anchors ---------------------------------*/
+
+a.anchor {
+ display: none;
+ margin-left: 5px;
+ width: 20px;
+ height: 20px;
+
+ background-image: url(./link.svg);
+ background-repeat: no-repeat;
+ background-size: 20px 20px;
+ background-position: center center;
+}
+
+h1:hover .anchor,
+h2:hover .anchor,
+h3:hover .anchor,
+h4:hover .anchor,
+h5:hover .anchor,
+h6:hover .anchor {
+ display: inline-block;
+}
+
+/* Fixes for fixed navbar --------------------------*/
+
+.contents h1, .contents h2, .contents h3, .contents h4 {
+ padding-top: 60px;
+ margin-top: -40px;
+}
+
+/* Navbar submenu --------------------------*/
+
+.dropdown-submenu {
+ position: relative;
+}
+
+.dropdown-submenu>.dropdown-menu {
+ top: 0;
+ left: 100%;
+ margin-top: -6px;
+ margin-left: -1px;
+ border-radius: 0 6px 6px 6px;
+}
+
+.dropdown-submenu:hover>.dropdown-menu {
+ display: block;
+}
+
+.dropdown-submenu>a:after {
+ display: block;
+ content: " ";
+ float: right;
+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid;
+ border-width: 5px 0 5px 5px;
+ border-left-color: #cccccc;
+ margin-top: 5px;
+ margin-right: -10px;
+}
+
+.dropdown-submenu:hover>a:after {
+ border-left-color: #ffffff;
+}
+
+.dropdown-submenu.pull-left {
+ float: none;
+}
+
+.dropdown-submenu.pull-left>.dropdown-menu {
+ left: -100%;
+ margin-left: 10px;
+ border-radius: 6px 0 6px 6px;
+}
+
+/* Sidebar --------------------------*/
+
+#pkgdown-sidebar {
+ margin-top: 30px;
+ position: -webkit-sticky;
+ position: sticky;
+ top: 70px;
+}
+
+#pkgdown-sidebar h2 {
+ font-size: 1.5em;
+ margin-top: 1em;
+}
+
+#pkgdown-sidebar h2:first-child {
+ margin-top: 0;
+}
+
+#pkgdown-sidebar .list-unstyled li {
+ margin-bottom: 0.5em;
+}
+
+/* bootstrap-toc tweaks ------------------------------------------------------*/
+
+/* All levels of nav */
+
+nav[data-toggle='toc'] .nav > li > a {
+ padding: 4px 20px 4px 6px;
+ font-size: 1.5rem;
+ font-weight: 400;
+ color: inherit;
+}
+
+nav[data-toggle='toc'] .nav > li > a:hover,
+nav[data-toggle='toc'] .nav > li > a:focus {
+ padding-left: 5px;
+ color: inherit;
+ border-left: 1px solid #878787;
+}
+
+nav[data-toggle='toc'] .nav > .active > a,
+nav[data-toggle='toc'] .nav > .active:hover > a,
+nav[data-toggle='toc'] .nav > .active:focus > a {
+ padding-left: 5px;
+ font-size: 1.5rem;
+ font-weight: 400;
+ color: inherit;
+ border-left: 2px solid #878787;
+}
+
+/* Nav: second level (shown on .active) */
+
+nav[data-toggle='toc'] .nav .nav {
+ display: none; /* Hide by default, but at >768px, show it */
+ padding-bottom: 10px;
+}
+
+nav[data-toggle='toc'] .nav .nav > li > a {
+ padding-left: 16px;
+ font-size: 1.35rem;
+}
+
+nav[data-toggle='toc'] .nav .nav > li > a:hover,
+nav[data-toggle='toc'] .nav .nav > li > a:focus {
+ padding-left: 15px;
+}
+
+nav[data-toggle='toc'] .nav .nav > .active > a,
+nav[data-toggle='toc'] .nav .nav > .active:hover > a,
+nav[data-toggle='toc'] .nav .nav > .active:focus > a {
+ padding-left: 15px;
+ font-weight: 500;
+ font-size: 1.35rem;
+}
+
+/* orcid ------------------------------------------------------------------- */
+
+.orcid {
+ font-size: 16px;
+ color: #A6CE39;
+ /* margins are required by official ORCID trademark and display guidelines */
+ margin-left:4px;
+ margin-right:4px;
+ vertical-align: middle;
+}
+
+/* Reference index & topics ----------------------------------------------- */
+
+.ref-index th {font-weight: normal;}
+
+.ref-index td {vertical-align: top; min-width: 100px}
+.ref-index .icon {width: 40px;}
+.ref-index .alias {width: 40%;}
+.ref-index-icons .alias {width: calc(40% - 40px);}
+.ref-index .title {width: 60%;}
+
+.ref-arguments th {text-align: right; padding-right: 10px;}
+.ref-arguments th, .ref-arguments td {vertical-align: top; min-width: 100px}
+.ref-arguments .name {width: 20%;}
+.ref-arguments .desc {width: 80%;}
+
+/* Nice scrolling for wide elements --------------------------------------- */
+
+table {
+ display: block;
+ overflow: auto;
+}
+
+/* Syntax highlighting ---------------------------------------------------- */
+
+pre, code, pre code {
+ background-color: #f8f8f8;
+ color: #333;
+}
+pre, pre code {
+ white-space: pre-wrap;
+ word-break: break-all;
+ overflow-wrap: break-word;
+}
+
+pre {
+ border: 1px solid #eee;
+}
+
+pre .img, pre .r-plt {
+ margin: 5px 0;
+}
+
+pre .img img, pre .r-plt img {
+ background-color: #fff;
+}
+
+code a, pre a {
+ color: #375f84;
+}
+
+a.sourceLine:hover {
+ text-decoration: none;
+}
+
+.fl {color: #1514b5;}
+.fu {color: #000000;} /* function */
+.ch,.st {color: #036a07;} /* string */
+.kw {color: #264D66;} /* keyword */
+.co {color: #888888;} /* comment */
+
+.error {font-weight: bolder;}
+.warning {font-weight: bolder;}
+
+/* Clipboard --------------------------*/
+
+.hasCopyButton {
+ position: relative;
+}
+
+.btn-copy-ex {
+ position: absolute;
+ right: 0;
+ top: 0;
+ visibility: hidden;
+}
+
+.hasCopyButton:hover button.btn-copy-ex {
+ visibility: visible;
+}
+
+/* headroom.js ------------------------ */
+
+.headroom {
+ will-change: transform;
+ transition: transform 200ms linear;
+}
+.headroom--pinned {
+ transform: translateY(0%);
+}
+.headroom--unpinned {
+ transform: translateY(-100%);
+}
+
+/* mark.js ----------------------------*/
+
+mark {
+ background-color: rgba(255, 255, 51, 0.5);
+ border-bottom: 2px solid rgba(255, 153, 51, 0.3);
+ padding: 1px;
+}
+
+/* vertical spacing after htmlwidgets */
+.html-widget {
+ margin-bottom: 10px;
+}
+
+/* fontawesome ------------------------ */
+
+.fab {
+ font-family: "Font Awesome 5 Brands" !important;
+}
+
+/* don't display links in code chunks when printing */
+/* source: https://stackoverflow.com/a/10781533 */
+@media print {
+ code a:link:after, code a:visited:after {
+ content: "";
+ }
+}
+
+/* Section anchors ---------------------------------
+ Added in pandoc 2.11: https://github.com/jgm/pandoc-templates/commit/9904bf71
+*/
+
+div.csl-bib-body { }
+div.csl-entry {
+ clear: both;
+}
+.hanging-indent div.csl-entry {
+ margin-left:2em;
+ text-indent:-2em;
+}
+div.csl-left-margin {
+ min-width:2em;
+ float:left;
+}
+div.csl-right-inline {
+ margin-left:2em;
+ padding-left:1em;
+}
+div.csl-indent {
+ margin-left: 2em;
+}
diff --git a/docs/pkgdown.js b/docs/pkgdown.js
new file mode 100644
index 0000000..6f0eee4
--- /dev/null
+++ b/docs/pkgdown.js
@@ -0,0 +1,108 @@
+/* http://gregfranko.com/blog/jquery-best-practices/ */
+(function($) {
+ $(function() {
+
+ $('.navbar-fixed-top').headroom();
+
+ $('body').css('padding-top', $('.navbar').height() + 10);
+ $(window).resize(function(){
+ $('body').css('padding-top', $('.navbar').height() + 10);
+ });
+
+ $('[data-toggle="tooltip"]').tooltip();
+
+ var cur_path = paths(location.pathname);
+ var links = $("#navbar ul li a");
+ var max_length = -1;
+ var pos = -1;
+ for (var i = 0; i < links.length; i++) {
+ if (links[i].getAttribute("href") === "#")
+ continue;
+ // Ignore external links
+ if (links[i].host !== location.host)
+ continue;
+
+ var nav_path = paths(links[i].pathname);
+
+ var length = prefix_length(nav_path, cur_path);
+ if (length > max_length) {
+ max_length = length;
+ pos = i;
+ }
+ }
+
+ // Add class to parent , and enclosing if in dropdown
+ if (pos >= 0) {
+ var menu_anchor = $(links[pos]);
+ menu_anchor.parent().addClass("active");
+ menu_anchor.closest("li.dropdown").addClass("active");
+ }
+ });
+
+ function paths(pathname) {
+ var pieces = pathname.split("/");
+ pieces.shift(); // always starts with /
+
+ var end = pieces[pieces.length - 1];
+ if (end === "index.html" || end === "")
+ pieces.pop();
+ return(pieces);
+ }
+
+ // Returns -1 if not found
+ function prefix_length(needle, haystack) {
+ if (needle.length > haystack.length)
+ return(-1);
+
+ // Special case for length-0 haystack, since for loop won't run
+ if (haystack.length === 0) {
+ return(needle.length === 0 ? 0 : -1);
+ }
+
+ for (var i = 0; i < haystack.length; i++) {
+ if (needle[i] != haystack[i])
+ return(i);
+ }
+
+ return(haystack.length);
+ }
+
+ /* Clipboard --------------------------*/
+
+ function changeTooltipMessage(element, msg) {
+ var tooltipOriginalTitle=element.getAttribute('data-original-title');
+ element.setAttribute('data-original-title', msg);
+ $(element).tooltip('show');
+ element.setAttribute('data-original-title', tooltipOriginalTitle);
+ }
+
+ if(ClipboardJS.isSupported()) {
+ $(document).ready(function() {
+ var copyButton = " ";
+
+ $("div.sourceCode").addClass("hasCopyButton");
+
+ // Insert copy buttons:
+ $(copyButton).prependTo(".hasCopyButton");
+
+ // Initialize tooltips:
+ $('.btn-copy-ex').tooltip({container: 'body'});
+
+ // Initialize clipboard:
+ var clipboardBtnCopies = new ClipboardJS('[data-clipboard-copy]', {
+ text: function(trigger) {
+ return trigger.parentNode.textContent.replace(/\n#>[^\n]*/g, "");
+ }
+ });
+
+ clipboardBtnCopies.on('success', function(e) {
+ changeTooltipMessage(e.trigger, 'Copied!');
+ e.clearSelection();
+ });
+
+ clipboardBtnCopies.on('error', function() {
+ changeTooltipMessage(e.trigger,'Press Ctrl+C or Command+C to copy');
+ });
+ });
+ }
+})(window.jQuery || window.$)
diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml
new file mode 100644
index 0000000..908c34c
--- /dev/null
+++ b/docs/pkgdown.yml
@@ -0,0 +1,6 @@
+pandoc: 3.1.1
+pkgdown: 2.0.7
+pkgdown_sha: ~
+articles: {}
+last_built: 2024-04-02T09:12Z
+
diff --git a/docs/reference/Rplot001.png b/docs/reference/Rplot001.png
new file mode 100644
index 0000000..17a3580
Binary files /dev/null and b/docs/reference/Rplot001.png differ
diff --git a/docs/reference/accordion.html b/docs/reference/accordion.html
new file mode 100644
index 0000000..739c7ef
--- /dev/null
+++ b/docs/reference/accordion.html
@@ -0,0 +1,137 @@
+
+Accordion Function — accordion • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function inserts a accordion
+
+
+
+
accordion ( inputId , titles , descriptions )
+
+
+
+
Arguments
+
inputId
+Input id for the accordion
+
+
+titles
+Add the titles for the accordion
+
+
+descriptions
+Add the main text for the accordion
+
+
+
+
Value
+
+
+
an accordion html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ accordion (
+ "acc1" ,
+ c ( "Writing well for the web" ,
+ "Writing well for specialists" ,
+ "Know your audience" ,
+ "How people read"
+ ) ,
+ c ( "This is the content for Writing well for the web." ,
+ "This is the content for Writing well for specialists." ,
+ "This is the content for Know your audience." ,
+ "This is the content for How people read."
+ ) ) ) ,
+
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/backlink_Input.html b/docs/reference/backlink_Input.html
new file mode 100644
index 0000000..4ad2d95
--- /dev/null
+++ b/docs/reference/backlink_Input.html
@@ -0,0 +1,134 @@
+
+Back Link Function — backlink_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function adds a back link to the page
+
+
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+
+
Value
+
+
+
a backlink html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shiny :: navlistPanel (
+ "" ,
+ id= "nav" ,
+ widths = c ( 2 , 10 ) ,
+ well = FALSE ,
+
+ #Create first panel
+ shiny :: tabPanel (
+ "Select Types" ,
+ value = "panel1" ,
+ gov_layout ( size = "two-thirds" ,
+ backlink_Input ( "link1" ) ,
+ shiny :: tags $ br ( ) , shiny :: tags $ br ( )
+ ) ) ,
+ shiny :: tabPanel (
+ "Tab2" ,
+ value = "panel2" ) ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+ #Slightly confused in that it goes forward rather than back, but shows how
+ #to use
+ observeEvent ( input $ link1 ,{
+ updateTabsetPanel ( session , "nav" , selected = "panel2" )
+ } )
+ }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/banner.html b/docs/reference/banner.html
new file mode 100644
index 0000000..a3022c1
--- /dev/null
+++ b/docs/reference/banner.html
@@ -0,0 +1,124 @@
+
+Banner Function — banner • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a detail component that you can click for further
+details.
+
+
+
+
banner ( inputId , type , label )
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+type
+Main type of label e.g. alpha or beta. Can be any word.
+
+
+label
+test to display.
+
+
+
+
Value
+
+
+
a banner html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' )
+ )
+
+ server <- function ( input , output , session ) { }
+
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/button_Input.html b/docs/reference/button_Input.html
new file mode 100644
index 0000000..f053e19
--- /dev/null
+++ b/docs/reference/button_Input.html
@@ -0,0 +1,126 @@
+
+Button Function — button_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a gov style button
+
+
+
+
button_Input ( inputId , label , type = "default" )
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+label
+Display label for the control, or NULL
for no label.
+
+
+type
+The type of button. Options are default, start, secondary and
+warning. Defaults to default.
+
+
+
+
Value
+
+
+
a html button shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: button_Input (
+ inputId = "btn1" ,
+ label = "Continue" ,
+ type = "default" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/checkbox_Input.html b/docs/reference/checkbox_Input.html
new file mode 100644
index 0000000..380ccc6
--- /dev/null
+++ b/docs/reference/checkbox_Input.html
@@ -0,0 +1,183 @@
+
+Checkbox Function — checkbox_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function inserts a checkbox group
+
+
+
+
checkbox_Input (
+ inputId ,
+ cb_labels ,
+ checkboxIds ,
+ label ,
+ hint_label = NULL ,
+ small = FALSE ,
+ error = FALSE ,
+ error_message = NULL
+)
+
+
+
+
Arguments
+
inputId
+Input id for the group of checkboxes
+
+
+cb_labels
+Add the names of the options that will appear
+
+
+checkboxIds
+Add the values for each checkbox
+
+
+label
+Insert the text for the checkbox group.
+
+
+hint_label
+Insert optional hint/secondary text. Defaults to NULL
+
+
+small
+change the sizing to a small version of the checkbox. Defaults
+to FALSE
+
+
+error
+Whenever you want to include error handle on the component.
+
+
+error_message
+If you want a default error message.
+
+
+
+
Value
+
+
+
a checkbox html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ # Required for error handling function
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ # Simple checkbox
+ shinyGovstyle :: checkbox_Input (
+ inputId = "check1" ,
+ cb_labels = c ( "Option 1" , "Option 2" , "Option 3" ) ,
+ checkboxIds = c ( "op1" , "op2" , "op3" ) ,
+ label = "Choice option" ) ,
+ # Error checkbox
+ shinyGovstyle :: checkbox_Input (
+ inputId = "check2" ,
+ cb_labels = c ( "Option 1" , "Option 2" , "Option 3" ) ,
+ checkboxIds = c ( "op1" , "op2" , "op3" ) ,
+ label = "Choice option" ,
+ hint_label = "Select the best fit" ,
+ error = TRUE ,
+ error_message = "Select one" ) ,
+ # Button to trigger error
+ shinyGovstyle :: button_Input ( inputId = "submit" , label = "Submit" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+ #'Trigger error on blank submit of eventId2
+ observeEvent ( input $ submit , {
+ if ( is.null ( input $ check2 ) ) {
+ shinyGovstyle :: error_on ( inputId = "check2" )
+ } else {
+ shinyGovstyle :: error_off ( inputId = "check2" )
+ }
+ } )
+ }
+
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/cookieBanner.html b/docs/reference/cookieBanner.html
new file mode 100644
index 0000000..7adafdf
--- /dev/null
+++ b/docs/reference/cookieBanner.html
@@ -0,0 +1,145 @@
+
+Cookie Banner Function — cookieBanner • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function creates a cookie banner. You need to have shinyjs::useShinyjs()
+enabled to work. All the ids are pre set. See example for how to
+structure.
+
+
+
+
cookieBanner ( service_name )
+
+
+
+
Arguments
+
service_name
+Name for this service to add to banner
+
+
+
+
Value
+
+
+
a cookie banner html shiny object.
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ #Needs shinyjs to work
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: cookieBanner ( "The best thing" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+)
+
+server <- function ( input , output , session ) {
+
+ #Need these set of observeEvent to create a path through the cookie banner
+ observeEvent ( input $ cookieAccept , {
+ shinyjs :: show ( id = "cookieAcceptDiv" )
+ shinyjs :: hide ( id = "cookieMain" )
+ } )
+
+ observeEvent ( input $ cookieReject , {
+ shinyjs :: show ( id = "cookieRejectDiv" )
+ shinyjs :: hide ( id = "cookieMain" )
+ } )
+
+ observeEvent ( input $ hideAccept , {
+ shinyjs :: toggle ( id = "cookieDiv" )
+ } )
+
+ observeEvent ( input $ hideReject , {
+ shinyjs :: toggle ( id = "cookieDiv" )
+ } )
+
+ observeEvent ( input $ cookieLink , {
+ #Need to link here to where further info is located. You can you
+ #updateTabsetPanel to have a cookie page for instance
+ } )
+
+}
+shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/date_Input.html b/docs/reference/date_Input.html
new file mode 100644
index 0000000..a06b4ec
--- /dev/null
+++ b/docs/reference/date_Input.html
@@ -0,0 +1,178 @@
+
+Date Input Function — date_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a date input that follows GDS component
+
+
+
+
date_Input (
+ inputId ,
+ label ,
+ hint_label = NULL ,
+ error = FALSE ,
+ error_message = NULL ,
+ day = NULL ,
+ month = NULL ,
+ year = NULL
+)
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+label
+Display label for the control, or NULL
for no label.
+
+
+hint_label
+Display hint label for the control, or NULL
for no
+hint label.
+
+
+error
+Whenever to include error components.Defaults to FALSE
.
+
+
+error_message
+Error handling message? Defaults to NULL
+
+
+day
+Select a default day on start up. Defaults to NULL
+
+
+month
+Select a default month on start up. Defaults to NULL
+
+
+year
+Select a default year on start up. Defaults to NULL
+
+
+
+
Value
+
+
+
a data input html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ # Required for error handling function.
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ # Simple date input
+ shinyGovstyle :: date_Input (
+ inputId = "dob_input" ,
+ label = "Please enter your birthday" ) ,
+ # Error date input
+ shinyGovstyle :: date_Input (
+ inputId = "dob_input2" ,
+ label = "Please enter your birthday" ,
+ hint_label = "For example, 12 11 2007" ,
+ error = TRUE ) ,
+ # Button to trigger error
+ shinyGovstyle :: button_Input ( inputId = "submit" , label = "Submit" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+ #'Trigger error on blank submit of dob_input2
+ observeEvent ( input $ submit , {
+ if ( input $ dob_input2 == "//" ) {
+ shinyGovstyle :: error_on ( inputId = "dob_input2" )
+ } else {
+ shinyGovstyle :: error_off (
+ inputId = "dob_input2" )
+ }
+ } )
+ }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/details.html b/docs/reference/details.html
new file mode 100644
index 0000000..a989045
--- /dev/null
+++ b/docs/reference/details.html
@@ -0,0 +1,127 @@
+
+Details Function — details • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a detail component that you can click for further
+details.
+
+
+
+
details ( inputId , label , help_text )
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+label
+Main label text
+
+
+help_text
+Additional help information in the component.
+
+
+
+
Value
+
+
+
a details box html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: details (
+ inputId = "help_div" ,
+ label = "Help with form" ,
+ help_text = "To complete the form you need to fill it in..." )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/error_off.html b/docs/reference/error_off.html
new file mode 100644
index 0000000..ead8377
--- /dev/null
+++ b/docs/reference/error_off.html
@@ -0,0 +1,142 @@
+
+Error off Function — error_off • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function turns off the the error o the component, once issues have
+been sorted.
+
+
+
+
+
+
Arguments
+
inputId
+The inputId to turn error handling iff for on for.
+
+
+
+
Value
+
+
+
no return value. This toggles off error css
+
+
+
+
Examples
+
## Only run examples in interactive R sessions
+if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ # Required for error handling function
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ # Error text box
+ shinyGovstyle :: text_Input (
+ inputId = "eventId" ,
+ label = "Event Name" ,
+ error = TRUE ) ,
+ # Button to trigger error
+ shinyGovstyle :: button_Input ( inputId = "submit" , label = "Submit" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+
+ server <- function ( input , output , session ) {
+ #Trigger error on blank submit of eventId2
+ observeEvent ( input $ submit , {
+ if ( input $ eventId != "" ) {
+ shinyGovstyle :: error_off ( inputId = "eventId" )
+ } else {
+ shinyGovstyle :: error_on (
+ inputId = "eventId" ,
+ error_message = "Please complete" )
+ }
+ } )
+ }
+
+ # Run the application
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/error_on.html b/docs/reference/error_on.html
new file mode 100644
index 0000000..a52ad99
--- /dev/null
+++ b/docs/reference/error_on.html
@@ -0,0 +1,147 @@
+
+Error on Function — error_on • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function turns on the the error o the component. Can be used to
+validate inputs.
+
+
+
+
error_on ( inputId , error_message = NULL )
+
+
+
+
Arguments
+
inputId
+The input id that you to to turn the error on for.
+
+
+error_message
+if you want to add an additional error message.
+Defaults to NULL, showing the original designed error message
+
+
+
+
Value
+
+
+
no return value. This toggles on error css
+
+
+
+
Examples
+
## Only run examples in interactive R sessions
+if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ # Required for error handling function
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ # Error text box
+ shinyGovstyle :: text_Input (
+ inputId = "eventId" ,
+ label = "Event Name" ,
+ error = TRUE ) ,
+ # Button to trigger error
+ shinyGovstyle :: button_Input ( inputId = "submit" , label = "Submit" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+
+ server <- function ( input , output , session ) {
+ #Trigger error on blank submit of eventId2
+ observeEvent ( input $ submit , {
+ if ( input $ eventId != "" ) {
+ shinyGovstyle :: error_off ( inputId = "eventId" )
+ } else {
+ shinyGovstyle :: error_on (
+ inputId = "eventId" ,
+ error_message = "Please complete" )
+ }
+ } )
+ }
+
+ # Run the application
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/error_summary.html b/docs/reference/error_summary.html
new file mode 100644
index 0000000..af5a3ca
--- /dev/null
+++ b/docs/reference/error_summary.html
@@ -0,0 +1,143 @@
+
+Error Summary Function — error_summary • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function loads the error summary component to display error text.
+This replicates the gov style error boxes linked below:
+https://design-system.service.gov.uk/components/error-summary/
+
+
+
+
error_summary ( inputId , error_title , error_list )
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+error_title
+The title for the error summary.
+
+
+error_list
+A list of text values to be displayed in the error body.
+
+
+
+
Value
+
+
+
an error_summary html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo = "shinyGovstyle/images/moj_logo.png"
+ ) ,
+ shinyGovstyle :: gov_layout (
+ size = "two-thirds" ,
+ error_summary (
+ inputId = "errorId" ,
+ error_title = "Error title" ,
+ error_list = c ( "error item1" , "error item2" )
+ )
+ ) ,
+ shinyGovstyle :: button_Input ( "btn1" , "Change error summary" ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+
+ shiny :: observeEvent ( input $ btn1 , {
+ error_summary_update (
+ "errorId" ,
+ c ( "error item1" , "error item2" , "error item3" )
+ ) } ,
+ ignoreInit = TRUE
+ )
+ }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/error_summary_update.html b/docs/reference/error_summary_update.html
new file mode 100644
index 0000000..9afb62c
--- /dev/null
+++ b/docs/reference/error_summary_update.html
@@ -0,0 +1,138 @@
+
+Error Summary Update Function — error_summary_update • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function changes the text that displays in the error summary box.
+Requires shinyjs::useShinyjs() to work.
+
+
+
+
error_summary_update ( inputId , error_list )
+
+
+
+
Arguments
+
inputId
+The inputid of the error summary you want to update
+
+
+error_list
+An updated list of text values to be displayed in the
+error body.
+
+
+
+
Value
+
+
+
an update error summary box
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo = "shinyGovstyle/images/moj_logo.png"
+ ) ,
+ shinyGovstyle :: gov_layout (
+ size = "two-thirds" ,
+ error_summary (
+ inputId = "errorId" ,
+ error_title = "Error title" ,
+ error_list = c ( "error item1" , "error item2" )
+ )
+ ) ,
+ shinyGovstyle :: button_Input ( "btn1" , "Change error summary" ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+
+ shiny :: observeEvent ( input $ btn1 , {
+ error_summary_update (
+ "errorId" ,
+ c ( "error item1" , "error item2" , "error item3" )
+ ) } ,
+ ignoreInit = TRUE
+ )
+ }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/figures/accordion.png b/docs/reference/figures/accordion.png
new file mode 100644
index 0000000..8686635
Binary files /dev/null and b/docs/reference/figures/accordion.png differ
diff --git a/docs/reference/figures/banner.png b/docs/reference/figures/banner.png
new file mode 100644
index 0000000..a9886d3
Binary files /dev/null and b/docs/reference/figures/banner.png differ
diff --git a/docs/reference/figures/buttons.png b/docs/reference/figures/buttons.png
new file mode 100644
index 0000000..3edd942
Binary files /dev/null and b/docs/reference/figures/buttons.png differ
diff --git a/docs/reference/figures/checkbox.png b/docs/reference/figures/checkbox.png
new file mode 100644
index 0000000..1680a30
Binary files /dev/null and b/docs/reference/figures/checkbox.png differ
diff --git a/docs/reference/figures/cookie.png b/docs/reference/figures/cookie.png
new file mode 100644
index 0000000..ebe6ff5
Binary files /dev/null and b/docs/reference/figures/cookie.png differ
diff --git a/docs/reference/figures/date.png b/docs/reference/figures/date.png
new file mode 100644
index 0000000..ffd634b
Binary files /dev/null and b/docs/reference/figures/date.png differ
diff --git a/docs/reference/figures/details.png b/docs/reference/figures/details.png
new file mode 100644
index 0000000..d3f587a
Binary files /dev/null and b/docs/reference/figures/details.png differ
diff --git a/docs/reference/figures/error.png b/docs/reference/figures/error.png
new file mode 100644
index 0000000..e76a055
Binary files /dev/null and b/docs/reference/figures/error.png differ
diff --git a/docs/reference/figures/example.png b/docs/reference/figures/example.png
new file mode 100644
index 0000000..41feb87
Binary files /dev/null and b/docs/reference/figures/example.png differ
diff --git a/docs/reference/figures/file.png b/docs/reference/figures/file.png
new file mode 100644
index 0000000..f1aaab5
Binary files /dev/null and b/docs/reference/figures/file.png differ
diff --git a/docs/reference/figures/insert.png b/docs/reference/figures/insert.png
new file mode 100644
index 0000000..5c122e8
Binary files /dev/null and b/docs/reference/figures/insert.png differ
diff --git a/docs/reference/figures/logo.png b/docs/reference/figures/logo.png
new file mode 100644
index 0000000..d87cda6
Binary files /dev/null and b/docs/reference/figures/logo.png differ
diff --git a/docs/reference/figures/noti_banner.png b/docs/reference/figures/noti_banner.png
new file mode 100644
index 0000000..e0e5611
Binary files /dev/null and b/docs/reference/figures/noti_banner.png differ
diff --git a/docs/reference/figures/page_layout.png b/docs/reference/figures/page_layout.png
new file mode 100644
index 0000000..6326019
Binary files /dev/null and b/docs/reference/figures/page_layout.png differ
diff --git a/docs/reference/figures/panel.png b/docs/reference/figures/panel.png
new file mode 100644
index 0000000..15db806
Binary files /dev/null and b/docs/reference/figures/panel.png differ
diff --git a/docs/reference/figures/radio_button_Input.png b/docs/reference/figures/radio_button_Input.png
new file mode 100644
index 0000000..6289195
Binary files /dev/null and b/docs/reference/figures/radio_button_Input.png differ
diff --git a/docs/reference/figures/select.png b/docs/reference/figures/select.png
new file mode 100644
index 0000000..3c213c7
Binary files /dev/null and b/docs/reference/figures/select.png differ
diff --git a/docs/reference/figures/summary.png b/docs/reference/figures/summary.png
new file mode 100644
index 0000000..5b55cb6
Binary files /dev/null and b/docs/reference/figures/summary.png differ
diff --git a/docs/reference/figures/table.png b/docs/reference/figures/table.png
new file mode 100644
index 0000000..409eaaa
Binary files /dev/null and b/docs/reference/figures/table.png differ
diff --git a/docs/reference/figures/tabs.png b/docs/reference/figures/tabs.png
new file mode 100644
index 0000000..c1841d1
Binary files /dev/null and b/docs/reference/figures/tabs.png differ
diff --git a/docs/reference/figures/tags.png b/docs/reference/figures/tags.png
new file mode 100644
index 0000000..f17cbf4
Binary files /dev/null and b/docs/reference/figures/tags.png differ
diff --git a/docs/reference/figures/text.png b/docs/reference/figures/text.png
new file mode 100644
index 0000000..d1e13d4
Binary files /dev/null and b/docs/reference/figures/text.png differ
diff --git a/docs/reference/figures/text_area.png b/docs/reference/figures/text_area.png
new file mode 100644
index 0000000..099ff69
Binary files /dev/null and b/docs/reference/figures/text_area.png differ
diff --git a/docs/reference/figures/warning.png b/docs/reference/figures/warning.png
new file mode 100644
index 0000000..680d7d3
Binary files /dev/null and b/docs/reference/figures/warning.png differ
diff --git a/docs/reference/figures/word_count.png b/docs/reference/figures/word_count.png
new file mode 100644
index 0000000..911ac93
Binary files /dev/null and b/docs/reference/figures/word_count.png differ
diff --git a/docs/reference/file_Input.html b/docs/reference/file_Input.html
new file mode 100644
index 0000000..5de3f4f
--- /dev/null
+++ b/docs/reference/file_Input.html
@@ -0,0 +1,190 @@
+
+File Input Function — file_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a file upload component. It uses the basis of the
+shiny fileInput function, but restyles the label and adds error onto it.
+It doesn't look like the www.gov.uk/ style one, although this www.gov.uk/
+doesn't seem to have a settle style as, for example it changes between
+Firefox and Chrome
+
+
+
+
file_Input (
+ inputId ,
+ label ,
+ multiple = FALSE ,
+ accept = NULL ,
+ width = NULL ,
+ buttonLabel = "Choose file" ,
+ placeholder = "No file chosen" ,
+ error = FALSE ,
+ error_message = NULL
+)
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+label
+Display label for the control, or NULL
for no label.
+
+
+multiple
+Whether the user should be allowed to select and upload
+multiple files at once. Does not work on older browsers, including Internet
+Explorer 9 and earlier.
+
+
+accept
+A character vector of MIME types; gives the browser a hint of
+what kind of files the server is expecting.
+
+
+width
+The width of the input, e.g. '400px'
, or '100%'
+
+
+buttonLabel
+The label used on the button. Can be text or an HTML tag
+object.
+
+
+placeholder
+The text to show before a file has been uploaded.
+
+
+error
+Whenever to icnlud error handling Defaults to FALSE.
+
+
+error_message
+Message to display on error. Defaults to NULL
+
+
+
+
Value
+
+
+
a file input html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ # Required for error handling function
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ # Simple file input
+ shinyGovstyle :: file_Input ( inputId = "file1" , label = "Upload a file" ) ,
+ # Error file
+ shinyGovstyle :: file_Input (
+ inputId = "file2" ,
+ label = "Upload a file" ,
+ error = TRUE ) ,
+ # Button to trigger error
+ shinyGovstyle :: button_Input ( inputId = "submit" , label = "Submit" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+ #'Trigger error on blank submit of file2
+ observeEvent ( input $ submit , {
+ if ( is.null ( input $ file2 ) ) {
+ shinyGovstyle :: error_on ( inputId = "file2" )
+ } else {
+ shinyGovstyle :: error_off (
+ inputId = "file2" )
+ }
+ } )
+ }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/font.html b/docs/reference/font.html
new file mode 100644
index 0000000..8ee6f49
--- /dev/null
+++ b/docs/reference/font.html
@@ -0,0 +1,111 @@
+
+Font Function — font • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function adds rge nta fonts to the app. See
+https://design-system.service.gov.uk/styles/typography/ for when they
+are allowed.
+
+
+
+
+
+
Value
+
+
+
no value returned. This loads the font css file
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ font ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" )
+ )
+
+ server <- function ( input , output , session ) { }
+
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/footer.html b/docs/reference/footer.html
new file mode 100644
index 0000000..8f7d710
--- /dev/null
+++ b/docs/reference/footer.html
@@ -0,0 +1,118 @@
+
+Footer Function — footer • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a gov style footer for your page
+
+
+
+
+
+
Arguments
+
full
+Whenever you want to have blank footer or official gov version.
+Defaults to FALSE
+
+
+
+
Value
+
+
+
a footer html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ tags $ br ( ) ,
+ tags $ br ( ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/govTable.html b/docs/reference/govTable.html
new file mode 100644
index 0000000..4446377
--- /dev/null
+++ b/docs/reference/govTable.html
@@ -0,0 +1,159 @@
+
+Table Function — govTable • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function inserts a gov styled table. Format is with header looking
+rows and columns
+
+
+
+
govTable (
+ inputId ,
+ df ,
+ caption ,
+ caption_size = "l" ,
+ num_col = NULL ,
+ width_overwrite = NULL
+)
+
+
+
+
Arguments
+
inputId
+Input id for the table
+
+
+df
+expects a dataframe to create a table
+
+
+caption
+adds a caption to the table as a header
+
+
+caption_size
+adjust the size of caption. Options are s, m, l, xl,
+with l as the default
+
+
+num_col
+adds numeric class format to these columns.
+
+
+width_overwrite
+change width. Need to include width for every column.
+Options are three-quarters, two-thirds, one-half, one-third, one-quarter.
+Default is NULL
.
+
+
+
+
Value
+
+
+
an table html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ Months <- c ( "January" , "February" , "March" )
+ Bikes <- c ( "£85" , "£75" , "£165" )
+ Cars <- c ( "£95" , "£55" , "£125" )
+
+ example_data <- data.frame ( Months , Bikes , Cars )
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: govTable (
+ "tab1" , example_data , "Test" , "l" , num_col = c ( 2 ,3 ) ,
+ width_overwrite = c ( "one-half" , "one-quarter" , "one-quarter" ) )
+ ) ,
+
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/govTabs.html b/docs/reference/govTabs.html
new file mode 100644
index 0000000..3b897f7
--- /dev/null
+++ b/docs/reference/govTabs.html
@@ -0,0 +1,134 @@
+
+Tabs Function — govTabs • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function creates a tabs based table. It requires a single dataframe
+with a grouping variable
+
+
+
+
govTabs ( inputId , df , group_col )
+
+
+
+
Arguments
+
inputId
+The id to access the tag
+
+
+df
+A single dataframe with all data. See example for structure.
+
+
+group_col
+The column name with the groups to be used as tabs
+
+
+
+
Value
+
+
+
a tab table html shiny object.
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ # Create an example dataset
+ tabs <- c ( rep ( "Past Day" , 3 ) ,
+ rep ( "Past Week" , 3 ) ,
+ rep ( "Past Month" , 3 ) ,
+ rep ( "Past Year" , 3 ) )
+ Case_manager <- rep ( c ( "David Francis" , "Paul Farmer" , "Rita Patel" ) ,4 )
+ Cases_open <- c ( 3 , 1 , 2 , 24 , 16 , 24 , 98 , 122 , 126 , 1380 , 1129 , 1539 )
+ Cases_closed <- c ( 0 , 0 , 0 , 18 , 20 , 27 , 95 , 131 , 142 , 1472 , 1083 , 1265 )
+ data <- data.frame ( tabs , Case_manager , Cases_open , Cases_closed )
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: govTabs ( data , "tabs" ) ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/gov_layout.html b/docs/reference/gov_layout.html
new file mode 100644
index 0000000..6849a4c
--- /dev/null
+++ b/docs/reference/gov_layout.html
@@ -0,0 +1,132 @@
+
+Page Layout Function — gov_layout • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function loads the page layout, This doesn't work as well as
+the `gov_main_layout` and associated functions. This is being kept for now
+as a simpler version where grids are not needed.
+
+
+
+
gov_layout ( ... , inputID = "main" , size = "full" )
+
+
+
+
Arguments
+
...
+include the components of the UI that you want within the
+main page.
+
+
+inputID
+ID of the main div. Defaults to "main"
+
+
+size
+Layout of the page. Optional are full, one-half, two-thirds,
+one-third and one-quarter. Defaults to "full"
+
+
+
+
Value
+
+
+
a html shiny layout div
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "full" ,
+ shinyGovstyle :: panel_output (
+ inputId = "panel1" ,
+ main_text = "Application Complete" ,
+ sub_text = "Thank you for submitting your application.
+ Your reference is xvsiq" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/gov_summary.html b/docs/reference/gov_summary.html
new file mode 100644
index 0000000..81523ec
--- /dev/null
+++ b/docs/reference/gov_summary.html
@@ -0,0 +1,144 @@
+
+Tabs Function — gov_summary • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function creates a tabs based table. It requires a single dataframe
+with a grouping variable
+
+
+
+
gov_summary ( inputId , headers , info , action = FALSE , border = TRUE )
+
+
+
+
Arguments
+
inputId
+The id to access the summary list
+
+
+headers
+input for the row headers value
+
+
+info
+summary information values for the table
+
+
+action
+whenever a change link is needed. sets input to the value of
+the headers using lowercase and with underscore to replace gaps. Default
+set to FALSE
+
+
+border
+set if the table should have borders. Default set
+to TRUE
+
+
+
+
Value
+
+
+
a summary list table html shiny object.
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ # Create an example dataset
+ headers <- c ( "Name" , "Date of birth" , "Contact information" , "Contact details" )
+ info <- c (
+ "Sarah Philips" ,
+ "5 January 1978" ,
+ "72 Guild Street <br> London <br> SE23 6FH" ,
+ "07700 900457 <br> sarah.phillips@example.com" )
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: gov_summary ( "sumID" , headers , info , action = FALSE ) ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/header.html b/docs/reference/header.html
new file mode 100644
index 0000000..fc0effb
--- /dev/null
+++ b/docs/reference/header.html
@@ -0,0 +1,145 @@
+
+Header Function — header • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a header banner. For use at top of the screen
+
+
+
+
header (
+ main_text ,
+ secondary_text ,
+ logo = NULL ,
+ main_link = "#" ,
+ secondary_link = "#" ,
+ logo_width = 36 ,
+ logo_height = 32
+)
+
+
+
+
Arguments
+
main_text
+Main text that goes in the header
+
+
+secondary_text
+Secondary header to supplement the main text
+
+
+logo
+Add a link to a logo which will apply in the header. Use crown to
+use the crown svg version on gov uk.
+
+
+main_link
+Add a link for clicking on main text
+
+
+secondary_link
+Add a link for clicking on secondary header.
+
+
+logo_width
+Change the logo size width css to improve fit
+
+
+logo_height
+Change the logo size height css to improve fit
+
+
+
+
Value
+
+
+
a header html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" )
+ )
+
+ server <- function ( input , output , session ) { }
+
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/heading_text.html b/docs/reference/heading_text.html
new file mode 100644
index 0000000..5a4fe79
--- /dev/null
+++ b/docs/reference/heading_text.html
@@ -0,0 +1,118 @@
+
+Heading Text Function — heading_text • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a heading text
+
+
+
+
heading_text ( text_input , size = "xl" )
+
+
+
+
Arguments
+
text_input
+Text to display
+
+
+size
+Text size using xl, l, m, s. Defaults to xl.
+
+
+
+
Value
+
+
+
a heading text html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: heading_text ( "This is great text" , "m" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/index.html b/docs/reference/index.html
new file mode 100644
index 0000000..86408da
--- /dev/null
+++ b/docs/reference/index.html
@@ -0,0 +1,217 @@
+
+Function reference • shinyGovstyle
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/input_field.html b/docs/reference/input_field.html
new file mode 100644
index 0000000..9c8c9ff
--- /dev/null
+++ b/docs/reference/input_field.html
@@ -0,0 +1,170 @@
+
+Input Field Function — input_field • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function inserts number of text inputs. Useful for addresses.
+
+
+
+
input_field (
+ legend ,
+ labels ,
+ inputIds ,
+ widths = NULL ,
+ types = "text" ,
+ error = FALSE ,
+ error_message = NULL
+)
+
+
+
+
Arguments
+
legend
+Legend that goes above the fieldset
+
+
+labels
+A list of labels for the text inputs
+
+
+inputIds
+A list input slots that will be used to access the value.
+
+
+widths
+control the size of the box based on number of characters
+required. Options are 30, 20, 10, 5, 4, 3, 2. NULL will not limit the size
+
+
+types
+text box types. Will default to text.
+
+
+error
+Whenever to icnlud error handling Defaults to FALSE.
+
+
+error_message
+Message to display on error. Defaults to NULL
+
+
+
+
Value
+
+
+
a input field of html as a shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ # Required for error handling function
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: input_field (
+ legend = "List of three text boxes in a field" ,
+ labels = c ( "Field 1" , "Field 2" , "Field 3" ) ,
+ inputIds = c ( "field1" , "field2" , "field3" ) ,
+ widths = c ( 30 ,20 ,10 ) ,
+ error = TRUE ) ,
+ # Button to trigger error
+ shinyGovstyle :: button_Input ( inputId = "submit" , label = "Submit" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+ # Trigger error on blank submit of field2
+ observeEvent ( input $ submit , {
+ if ( input $ field2 == "" ) {
+ shinyGovstyle :: error_on ( inputId = "field2" ,
+ error_message = "Please complete" )
+ } else {
+ shinyGovstyle :: error_off (
+ inputId = "field2" )
+ }
+ } )
+ }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/insert_text.html b/docs/reference/insert_text.html
new file mode 100644
index 0000000..4d0a08e
--- /dev/null
+++ b/docs/reference/insert_text.html
@@ -0,0 +1,124 @@
+
+Insert Text Function — insert_text • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function loads the insert text component to display additional
+information in a special format.
+
+
+
+
insert_text ( inputId , text )
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+text
+Text that you want to display on the insert
+
+
+
+
Value
+
+
+
a insert text html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: insert_text (
+ inputId = "note" ,
+ text = "It can take up to 8 weeks to register a lasting power of
+ attorney if there are no mistakes in the application."
+ )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/label_hint.html b/docs/reference/label_hint.html
new file mode 100644
index 0000000..132a74f
--- /dev/null
+++ b/docs/reference/label_hint.html
@@ -0,0 +1,126 @@
+
+Label with Hint Function — label_hint • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function inserts a label and optional hint
+
+
+
+
label_hint ( inputId , label , hint_input = NULL )
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+label
+Display label for the control, or NULL
for no label.
+
+
+hint_input
+Display hint label for the control, or NULL
for
+no hint label.
+
+
+
+
Value
+
+
+
a label hint html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ label_hint (
+ inputId = "label1" ,
+ label = "This is a label" ,
+ hint_input = "This is a hint" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/layouts.html b/docs/reference/layouts.html
new file mode 100644
index 0000000..125faa5
--- /dev/null
+++ b/docs/reference/layouts.html
@@ -0,0 +1,172 @@
+
+Page Layout Functions — layouts • shinyGovstyle
+
+
+
+
+
+
+
+
+
These function loads the page layout in a gov layout. There is a selection
+of components that can sit within each other. The gov_main_layout is the
+overarching layout. The gov_row creates a each row and gov_box creates
+a box within the row. The gov_text is a container for text bodies.
+
+
+
+
gov_main_layout ( ... , inputID = "main" )
+
+gov_row ( ... )
+
+gov_box ( ... , size = "full" )
+
+gov_text ( ... )
+
+
+
+
Arguments
+
...
+include the components of the UI that you want within the
+main page. These components are made to flow through each other. See
+example
+
+
+inputID
+ID of the main div. Defaults to "main"
+
+
+size
+size of the box in the row. Optional are full, one-half,
+two-thirds, one-third and one-quarter. Defaults to "full"
+
+
+
+
Value
+
+
+
a html shiny layout div
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_main_layout (
+ shinyGovstyle :: gov_row (
+ shinyGovstyle :: gov_box (
+ size = "full" ,
+ shinyGovstyle :: gov_text ( "govuk-grid-column-full" )
+ )
+ ) ,
+ shinyGovstyle :: gov_row (
+ shinyGovstyle :: gov_box (
+ size = "one-half" ,
+ shinyGovstyle :: gov_text ( "govuk-grid-column-one-half" )
+ ) ,
+ shinyGovstyle :: gov_box (
+ size = "one-half" ,
+ shinyGovstyle :: gov_text ( "govuk-grid-column-one-half" )
+ )
+ ) ,
+ shinyGovstyle :: gov_row (
+ shinyGovstyle :: gov_box (
+ size = "one-third" ,
+ shinyGovstyle :: gov_text ( "govuk-grid-column-one-third" )
+ ) ,
+ shinyGovstyle :: gov_box (
+ size = "two-third" ,
+ shinyGovstyle :: gov_text ( "govuk-grid-column-two-third" )
+ )
+ ) ,
+ shinyGovstyle :: gov_row (
+ shinyGovstyle :: gov_box (
+ size = "one-quarter" ,
+ shinyGovstyle :: gov_text ( "govuk-grid-column-one-quarter" )
+ ) ,
+ shinyGovstyle :: gov_box (
+ size = "three-quarters" ,
+ shinyGovstyle :: gov_text ( "govuk-grid-column-three-quarters" )
+ )
+ )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/noti_banner.html b/docs/reference/noti_banner.html
new file mode 100644
index 0000000..7fa8d28
--- /dev/null
+++ b/docs/reference/noti_banner.html
@@ -0,0 +1,133 @@
+
+Notification Banner Function — noti_banner • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a notification banner
+
+
+
+
noti_banner (
+ inputId ,
+ title_txt = "Important" ,
+ body_txt = NULL ,
+ type = "standard"
+)
+
+
+
+
Arguments
+
inputId
+The input id for the banner
+
+
+title_txt
+The wording that appears in the title
+
+
+body_txt
+The wording that appears in the banner body
+
+
+type
+The type of banner. Options are standard and success.
+Standard is default
+
+
+
+
Value
+
+
+
a notification html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: noti_banner (
+ inputId = "banner" , title_txt = "Important" , body_txt = "Example text" )
+ )
+
+ server <- function ( input , output , session ) { }
+
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/panel_output.html b/docs/reference/panel_output.html
new file mode 100644
index 0000000..648a497
--- /dev/null
+++ b/docs/reference/panel_output.html
@@ -0,0 +1,126 @@
+
+Panel output — panel_output • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function inserts a panel. Normally used for confirmation screens
+
+
+
+
panel_output ( inputId , main_text , sub_text )
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+main_text
+Add the header for the panel
+
+
+sub_text
+Add the main body of text for the panel
+
+
+
+
Value
+
+
+
a panel html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "full" ,
+ shinyGovstyle :: panel_output (
+ inputId = "panel1" ,
+ main_text = "Application Complete" ,
+ sub_text = "Thank you for submitting your application.
+ Your reference is xvsiq" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/radio_button_Input.html b/docs/reference/radio_button_Input.html
new file mode 100644
index 0000000..6ebfba8
--- /dev/null
+++ b/docs/reference/radio_button_Input.html
@@ -0,0 +1,208 @@
+
+Radio Button Function — radio_button_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create radio buttons
+
+
+
+
radio_button_Input (
+ inputId ,
+ label ,
+ choices = NULL ,
+ selected = NULL ,
+ inline = FALSE ,
+ small = FALSE ,
+ choiceNames = NULL ,
+ choiceValues = NULL ,
+ hint_label = NULL ,
+ error = FALSE ,
+ error_message = NULL ,
+ custom_class = ""
+)
+
+
+
+
Arguments
+
inputId
+The input
slot that will be used to access the value.
+
+
+label
+Input label.
+
+
+choices
+List of values to select from (if elements of the list are
+named then that name rather than the value is displayed to the user)
+
+
+selected
+The initially selected value.
+
+
+inline
+If you want the radio inline or not, Default is FALSE
+
+
+small
+If you want the smaller versions of radio buttons, Default
+is FALSE
+
+
+choiceNames, choiceValues
+Same as in
+checkboxGroupInput
. List of names and values,
+respectively, that are displayed to the user in the app and correspond to
+the each choice (for this reason they must have the same length). If either
+of these arguments is provided, then the other must be provided and choices
+must not be provided. The advantage of using both of these over a named list
+for choices is that choiceNames allows any type of UI object to be passed
+through (tag objects, icons, HTML code, ...), instead of just simple text.
+
+
+hint_label
+Additional hint text you may want to display below the
+label. Defaults to NULL
+
+
+error
+Whenever you want to include error handle on the component.
+
+
+error_message
+If you want a default error message.
+
+
+custom_class
+If you want to add additional classes to the radio
+buttons
+
+
+
+
Value
+
+
+
radio buttons html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ # Required for error handling function
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ #Simple radio
+ shinyGovstyle :: radio_button_Input (
+ inputId = "radio1" ,
+ choices = c ( "Yes" , "No" , "Maybe" ) ,
+ label = "Choice option" ) ,
+ # Error radio
+ shinyGovstyle :: radio_button_Input (
+ inputId = "radio2" ,
+ choices = c ( "Yes" , "No" , "Maybe" ) ,
+ label = "Choice option" ,
+ hint_label = "Select the best fit" ,
+ inline = TRUE ,
+ error = TRUE ,
+ error_message = "Select one" ) ,
+ # Button to trigger error
+ shinyGovstyle :: button_Input ( inputId = "submit" , label = "Submit" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+ #Trigger error on blank submit of eventId2
+ observeEvent ( input $ submit , {
+ if ( is.null ( input $ radio2 ) ) {
+ shinyGovstyle :: error_on ( inputId = "radio2" )
+ } else {
+ shinyGovstyle :: error_off (
+ inputId = "radio2" )
+ }
+ } )
+ }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/run_example.html b/docs/reference/run_example.html
new file mode 100644
index 0000000..a1ad1a4
--- /dev/null
+++ b/docs/reference/run_example.html
@@ -0,0 +1,96 @@
+
+Example Function — run_example • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function runs a shiny example using different parts of the package
+
+
+
+
+
+
Value
+
+
+
a shiny app with examples in
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/select_Input.html b/docs/reference/select_Input.html
new file mode 100644
index 0000000..17cfc7a
--- /dev/null
+++ b/docs/reference/select_Input.html
@@ -0,0 +1,134 @@
+
+Select Function — select_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function inserts a select box
+
+
+
+
select_Input ( inputId , label , select_text , select_value )
+
+
+
+
Arguments
+
inputId
+Input id for the component
+
+
+label
+Insert the text for the label.
+
+
+select_text
+Add the text that will apply in the drop down as a list
+
+
+select_value
+Add the value that will be used for each selection.
+
+
+
+
Value
+
+
+
a select input html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "full" ,
+ select_Input (
+ inputId = "sorter" ,
+ label = "Sort by" ,
+ select_text = c ( "Recently published" ,
+ "Recently updated" ,
+ "Most views" ,
+ "Most comments" ) ,
+ select_value = c ( "published" , "updated" , "view" , "comments" ) ) ,
+ tags $ br ( )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/tag_Input.html b/docs/reference/tag_Input.html
new file mode 100644
index 0000000..af131d1
--- /dev/null
+++ b/docs/reference/tag_Input.html
@@ -0,0 +1,123 @@
+
+Tag Function — tag_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function creates a tag
+
+
+
+
tag_Input ( inputId , text , colour = "navy" )
+
+
+
+
Arguments
+
inputId
+The id to access the tag
+
+
+text
+The text in the tag
+
+
+colour
+The colour of the tag. Default is navy. Other options are
+grey, green, turquoise, blue, purple, pink, red, orange and yellow
+
+
+
+
Value
+
+
+
a tag html shiny object.
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: tag_Input ( "tag1" , "COMPLETE" ) ,
+ shinyGovstyle :: tag_Input ( "tag2" , "INCOMPLETE" , "red" ) ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/text_Input.html b/docs/reference/text_Input.html
new file mode 100644
index 0000000..1fe971a
--- /dev/null
+++ b/docs/reference/text_Input.html
@@ -0,0 +1,187 @@
+
+Text Input Function — text_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a text area input
+
+
+
+
text_Input (
+ inputId ,
+ label ,
+ hint_label = NULL ,
+ type = "text" ,
+ width = NULL ,
+ error = FALSE ,
+ error_message = NULL ,
+ prefix = NULL ,
+ suffix = NULL
+)
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+label
+Display label for the control, or NULL
for no label.
+
+
+hint_label
+Display hint label for the control, or NULL
for
+no hint label.
+
+
+type
+Type of text input to accept. Defaults to text.
+
+
+width
+control the size of the box based on number of characters
+required. Options are 30, 20, 10, 5, 4, 3, 2. NULL will not limit the size
+
+
+error
+Whenever to include error handling Defaults to FALSE.
+
+
+error_message
+Message to display on error. Defaults to NULL
+
+
+prefix
+Add a prefix to the box. Defaults to NULL
+
+
+suffix
+Add a suffix to the box. Defaults to NULL
+
+
+
+
Value
+
+
+
a text input html shiny object
+
+
+
+
Examples
+
## Only run examples in interactive R sessions
+if ( interactive ( ) ) {
+
+ ui <- fluidPage (
+ # Required for error handling function
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: banner (
+ inputId = "banner" , type = "beta" , 'This is a new service' ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ # Simple text box
+ shinyGovstyle :: text_Input ( inputId = "eventId" , label = "Event Name" ) ,
+ # Error text box
+ shinyGovstyle :: text_Input (
+ inputId = "eventId2" ,
+ label = "Event Name" ,
+ hint_label = "This can be found on the letter" ,
+ error = TRUE ) ,
+ # Button to trigger error
+ shinyGovstyle :: button_Input ( inputId = "submit" , label = "Submit" )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+
+ server <- function ( input , output , session ) {
+ #Trigger error on blank submit of eventId2
+ observeEvent ( input $ submit , {
+ if ( input $ eventId2 != "" ) {
+ shinyGovstyle :: error_off ( inputId = "eventId2" )
+ } else {
+ shinyGovstyle :: error_on (
+ inputId = "eventId2" ,
+ error_message = "Please complete" )
+ }
+ } )
+ }
+
+ # Run the application
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/text_area_Input.html b/docs/reference/text_area_Input.html
new file mode 100644
index 0000000..69f1d5c
--- /dev/null
+++ b/docs/reference/text_area_Input.html
@@ -0,0 +1,141 @@
+
+Text Area Input Function — text_area_Input • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create a text area input
+
+
+
+
text_area_Input (
+ inputId ,
+ label ,
+ hint_label = NULL ,
+ row_no = 5 ,
+ error = FALSE ,
+ error_message = NULL ,
+ word_limit = NULL
+)
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+label
+Display label for the control, or NULL
for no label.
+
+
+hint_label
+Display hint label for the control, or NULL
for no
+hint label.
+
+
+row_no
+Size of the text entry box. Defaults to 5.
+
+
+error
+Whenever to icnlud error handling Defaults to FALSE
+
+
+error_message
+Message to display on error. Defaults to NULL
+
+
+word_limit
+Add a word limit to the display. Defaults to NULL
.
+
+
+
+
Value
+
+
+
a text area box html shiny object
+
+
+
+
Examples
+
text_area_Input ( "taId" , "Can you provide more detail?" ,
+"Do not include personal or financial information, like your
+National Insurance number or credit card details." )
+#> <div class="govuk-form-group govuk-character-count" id="taIddiv">
+#> <label class="govuk-label">Can you provide more detail?</label>
+#> <div class="govuk-hint">Do not include personal or financial information, like your
+#> National Insurance number or credit card details.</div>
+#> <textarea id="taId" class="govuk-textarea" rows="5"></textarea>
+#> </div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/warning_text.html b/docs/reference/warning_text.html
new file mode 100644
index 0000000..41d7db6
--- /dev/null
+++ b/docs/reference/warning_text.html
@@ -0,0 +1,120 @@
+
+Warning Text Function — warning_text • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create warning text
+
+
+
+
warning_text ( inputId , text )
+
+
+
+
Arguments
+
inputId
+The input slot that will be used to access the value.
+
+
+text
+Text that goes in the main
+
+
+
+
Value
+
+
+
a warning box html shiny object
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+ ui <- fluidPage (
+ shinyGovstyle :: header (
+ main_text = "Example" ,
+ secondary_text = "User Examples" ,
+ logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ shinyGovstyle :: gov_layout ( size = "two-thirds" ,
+ shinyGovstyle :: warning_text (
+ inputId = "warn1" ,
+ text = "You can be fined up to £5,000 if you do not register." )
+ ) ,
+ shinyGovstyle :: footer ( full = TRUE )
+ )
+
+ server <- function ( input , output , session ) { }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/word_count.html b/docs/reference/word_count.html
new file mode 100644
index 0000000..032d5a4
--- /dev/null
+++ b/docs/reference/word_count.html
@@ -0,0 +1,137 @@
+
+Word Count Function — word_count • shinyGovstyle
+
+
+
+
+
+
+
+
+
This function create tracks the word count and should be used with the
+text area function
+
+
+
+
word_count ( inputId , input , word_limit = NULL )
+
+
+
+
Arguments
+
inputId
+The input slot of the text area that you want to affect
+
+
+input
+The text input that is associated with the box.
+
+
+word_limit
+Change the word limit if needed. Default will keep as
+what was used in text area component
+
+
+
+
Value
+
+
+
no value returned. Updates the word count in a shiny app
+
+
+
+
Examples
+
if ( interactive ( ) ) {
+
+ ui <- shiny :: fluidPage (
+ shinyjs :: useShinyjs ( ) ,
+ shinyGovstyle :: header (
+ "Justice" , "" , logo= "shinyGovstyle/images/moj_logo.png" ) ,
+ gov_layout ( size = "full" ,
+ text_area_Input (
+ inputId = "text_area" ,
+ label = "Can you provide more detail?" ,
+ hint_label = "Do not include personal or financial information
+ , like your National Insurance number or credit
+ card details." ,
+ word_limit = 300 )
+ ) ,
+ footer ( TRUE )
+ )
+
+ server <- function ( input , output , session ) {
+ shiny :: observeEvent ( input $ text_area ,
+ word_count ( inputId = "text_area" ,
+ input = input $ text_area
+ )
+ )
+ }
+ shinyApp ( ui = ui , server = server )
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/sitemap.xml b/docs/sitemap.xml
new file mode 100644
index 0000000..006e623
--- /dev/null
+++ b/docs/sitemap.xml
@@ -0,0 +1,126 @@
+
+
+
+ /404.html
+
+
+ /authors.html
+
+
+ /css_changes.html
+
+
+ /index.html
+
+
+ /news/index.html
+
+
+ /reference/accordion.html
+
+
+ /reference/backlink_Input.html
+
+
+ /reference/banner.html
+
+
+ /reference/button_Input.html
+
+
+ /reference/checkbox_Input.html
+
+
+ /reference/cookieBanner.html
+
+
+ /reference/date_Input.html
+
+
+ /reference/details.html
+
+
+ /reference/error_off.html
+
+
+ /reference/error_on.html
+
+
+ /reference/error_summary.html
+
+
+ /reference/error_summary_update.html
+
+
+ /reference/file_Input.html
+
+
+ /reference/font.html
+
+
+ /reference/footer.html
+
+
+ /reference/govTable.html
+
+
+ /reference/govTabs.html
+
+
+ /reference/gov_layout.html
+
+
+ /reference/gov_summary.html
+
+
+ /reference/header.html
+
+
+ /reference/heading_text.html
+
+
+ /reference/index.html
+
+
+ /reference/input_field.html
+
+
+ /reference/insert_text.html
+
+
+ /reference/label_hint.html
+
+
+ /reference/layouts.html
+
+
+ /reference/noti_banner.html
+
+
+ /reference/panel_output.html
+
+
+ /reference/radio_button_Input.html
+
+
+ /reference/run_example.html
+
+
+ /reference/select_Input.html
+
+
+ /reference/tag_Input.html
+
+
+ /reference/text_area_Input.html
+
+
+ /reference/text_Input.html
+
+
+ /reference/warning_text.html
+
+
+ /reference/word_count.html
+
+
diff --git a/inst/www/css/font.css b/inst/www/css/font.css
index 3ed98ec..f0814eb 100644
--- a/inst/www/css/font.css
+++ b/inst/www/css/font.css
@@ -4,14 +4,15 @@
font-style: normal;
font-weight: 400;
src: url(../fonts/light-94a07e06a1-v2.woff2) format("woff2"), url(../fonts/light-f591b13f7d-v2.woff) format("woff");
- font-display: fallback;
+ font-display: fallback
}
+
@font-face {
font-family: GDS Transport;
font-style: normal;
font-weight: 700;
src: url(../fonts/bold-b542beb274-v2.woff2) format("woff2"), url(../fonts/bold-affa96571d-v2.woff) format("woff");
- font-display: fallback;
+ font-display: fallback
}
/* @font-face {
diff --git a/inst/www/css/govuk-frontend-norem.css b/inst/www/css/govuk-frontend-norem.css
index 84a064b..f745a66 100644
--- a/inst/www/css/govuk-frontend-norem.css
+++ b/inst/www/css/govuk-frontend-norem.css
@@ -1,8 +1,20 @@
+@charset "UTF-8";
+
+:root {
+ --govuk-frontend-version: "5.4.0";
+ font-size: 16px;
+ --govuk-frontend-breakpoint-mobile: 20rem;
+ --govuk-frontend-breakpoint-tablet: 40.0625rem;
+ --govuk-frontend-breakpoint-desktop: 48.0625rem
+}
+
.govuk-link {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- text-decoration: underline
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em
}
@media print {
@@ -11,15 +23,21 @@
}
}
-.govuk-link {
- border:none
+.govuk-link:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
}
.govuk-link:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
background-color: #fd0;
box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.govuk-link:link {
@@ -40,9 +58,10 @@
}
@media print {
- .govuk-link[href^="/"]:after,
- .govuk-link[href^="http://"]:after,
- .govuk-link[href^="https://"]:after {
+
+ [href^="/"].govuk-link:after,
+ [href^="http://"].govuk-link:after,
+ [href^="https://"].govuk-link:after {
content: " (" attr(href) ")";
font-size: 90%;
word-wrap: break-word
@@ -63,6 +82,7 @@
}
@media print {
+
.govuk-link--text-colour:link,
.govuk-link--text-colour:visited {
color: #000
@@ -79,6 +99,7 @@
}
@media print {
+
.govuk-link--text-colour:active,
.govuk-link--text-colour:focus {
color: #000
@@ -108,24 +129,48 @@
color: #1d70b8
}
+.govuk-link--no-visited-state:focus {
+ outline: 3px solid transparent;
+ background-color: #fd0;
+ box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
+}
+
.govuk-link--no-visited-state:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none;
color: #003078
}
.govuk-link--no-visited-state:active,
-.govuk-link--no-visited-state:focus,
-.govuk-list {
+.govuk-link--no-visited-state:focus {
color: #0b0c0c
}
+.govuk-link-image {
+ display: inline-block;
+ line-height: 0;
+ text-decoration: none
+}
+
+.govuk-link-image:focus {
+ outline: 3px solid transparent;
+ box-shadow: 0 0 0 4px #fd0, 0 0 0 8px #0b0c0c
+}
+
.govuk-list {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
+ color: #0b0c0c;
margin-top: 0;
margin-bottom: 15px;
padding-left: 0;
@@ -140,9 +185,8 @@
@media (min-width:40.0625em) {
.govuk-list {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@@ -184,6 +228,7 @@
}
@media (min-width:40.0625em) {
+
.govuk-list--bullet>li,
.govuk-list--number>li {
margin-bottom: 5px
@@ -206,8 +251,7 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 700;
- font-size: 32px;
- font-size: 2norem;
+ font-size: 2rem;
line-height: 1.09375;
display: block;
margin-top: 0;
@@ -223,9 +267,8 @@
@media (min-width:40.0625em) {
.govuk-heading-xl {
- font-size: 48px;
- font-size: 3norem;
- line-height: 1.04167
+ font-size: 3rem;
+ line-height: 1.0416666667
}
}
@@ -248,9 +291,8 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 700;
- font-size: 24px;
- font-size: 1.5norem;
- line-height: 1.04167;
+ font-size: 1.5rem;
+ line-height: 1.0416666667;
display: block;
margin-top: 0;
margin-bottom: 20px
@@ -265,9 +307,8 @@
@media (min-width:40.0625em) {
.govuk-heading-l {
- font-size: 36px;
- font-size: 2.25norem;
- line-height: 1.11111
+ font-size: 2.25rem;
+ line-height: 1.1111111111
}
}
@@ -290,9 +331,8 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
+ font-size: 1.125rem;
+ line-height: 1.1111111111;
display: block;
margin-top: 0;
margin-bottom: 15px
@@ -307,8 +347,7 @@
@media (min-width:40.0625em) {
.govuk-heading-m {
- font-size: 24px;
- font-size: 1.5norem;
+ font-size: 1.5rem;
line-height: 1.25
}
}
@@ -332,8 +371,7 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 700;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
display: block;
margin-top: 0;
@@ -349,9 +387,8 @@
@media (min-width:40.0625em) {
.govuk-heading-s {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@@ -373,9 +410,8 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
+ font-size: 1.125rem;
+ line-height: 1.1111111111;
display: block;
margin-bottom: 5px;
color: #505a5f
@@ -389,9 +425,8 @@
@media (min-width:40.0625em) {
.govuk-caption-xl {
- font-size: 27px;
- font-size: 1.6875norem;
- line-height: 1.11111
+ font-size: 1.6875rem;
+ line-height: 1.1111111111
}
}
@@ -407,9 +442,8 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
+ font-size: 1.125rem;
+ line-height: 1.1111111111;
display: block;
margin-bottom: 5px;
color: #505a5f
@@ -423,8 +457,7 @@
@media (min-width:40.0625em) {
.govuk-caption-l {
- font-size: 24px;
- font-size: 1.5norem;
+ font-size: 1.5rem;
line-height: 1.25
}
}
@@ -447,8 +480,7 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
display: block;
color: #505a5f
@@ -462,9 +494,8 @@
@media (min-width:40.0625em) {
.govuk-caption-m {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@@ -482,14 +513,14 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
+ font-size: 1.125rem;
+ line-height: 1.1111111111;
margin-top: 0;
margin-bottom: 20px
}
@media print {
+
.govuk-body-l,
.govuk-body-lead {
color: #000;
@@ -498,15 +529,16 @@
}
@media (min-width:40.0625em) {
+
.govuk-body-l,
.govuk-body-lead {
- font-size: 24px;
- font-size: 1.5norem;
+ font-size: 1.5rem;
line-height: 1.25
}
}
@media print {
+
.govuk-body-l,
.govuk-body-lead {
font-size: 18pt;
@@ -515,6 +547,7 @@
}
@media (min-width:40.0625em) {
+
.govuk-body-l,
.govuk-body-lead {
margin-bottom: 30px
@@ -528,14 +561,14 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
margin-top: 0;
margin-bottom: 15px
}
@media print {
+
.govuk-body,
.govuk-body-m {
color: #000;
@@ -544,15 +577,16 @@
}
@media (min-width:40.0625em) {
+
.govuk-body,
.govuk-body-m {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
+
.govuk-body,
.govuk-body-m {
font-size: 14pt;
@@ -561,6 +595,7 @@
}
@media (min-width:40.0625em) {
+
.govuk-body,
.govuk-body-m {
margin-bottom: 20px
@@ -573,9 +608,8 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
+ font-size: .875rem;
+ line-height: 1.1428571429;
margin-top: 0;
margin-bottom: 15px
}
@@ -589,8 +623,7 @@
@media (min-width:40.0625em) {
.govuk-body-s {
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25
}
}
@@ -614,8 +647,7 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 12px;
- font-size: .75norem;
+ font-size: .75rem;
line-height: 1.25;
margin-top: 0;
margin-bottom: 15px
@@ -630,9 +662,8 @@
@media (min-width:40.0625em) {
.govuk-body-xs {
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.42857
+ font-size: .875rem;
+ line-height: 1.4285714286
}
}
@@ -655,6 +686,7 @@
}
@media (min-width:40.0625em) {
+
.govuk-body-l+.govuk-heading-l,
.govuk-body-lead+.govuk-heading-l {
padding-top: 10px
@@ -669,6 +701,7 @@
}
@media (min-width:40.0625em) {
+
.govuk-body+.govuk-heading-l,
.govuk-body-m+.govuk-heading-l,
.govuk-body-s+.govuk-heading-l,
@@ -689,6 +722,7 @@
}
@media (min-width:40.0625em) {
+
.govuk-body+.govuk-heading-m,
.govuk-body+.govuk-heading-s,
.govuk-body-m+.govuk-heading-m,
@@ -748,18 +782,8 @@
.govuk-button-group {
margin-bottom: 5px;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
flex-direction: column;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
align-items: center
}
@@ -774,8 +798,7 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.1875;
display: inline-block;
max-width: 100%;
@@ -792,8 +815,7 @@
@media (min-width:40.0625em) {
.govuk-button-group .govuk-link {
- font-size: 19px;
- font-size: 1.1875norem;
+ font-size: 1.1875rem;
line-height: 1
}
}
@@ -812,23 +834,16 @@
@media (min-width:40.0625em) {
.govuk-button-group {
margin-right: -15px;
- -webkit-box-orient: horizontal;
- -webkit-box-direction: normal;
- -webkit-flex-direction: row;
- -ms-flex-direction: row;
flex-direction: row;
- -webkit-flex-wrap: wrap;
- -ms-flex-wrap: wrap;
flex-wrap: wrap;
- -webkit-box-align: baseline;
- -webkit-align-items: baseline;
- -ms-flex-align: baseline;
align-items: baseline
}
+
.govuk-button-group .govuk-button,
.govuk-button-group .govuk-link {
margin-right: 15px
}
+
.govuk-button-group .govuk-link {
text-align: left
}
@@ -896,7 +911,7 @@
@media (min-width:40.0625em) {
.govuk-grid-column-one-third {
- width: 33.3333%;
+ width: 33.3333333333%;
float: left
}
}
@@ -922,7 +937,7 @@
@media (min-width:40.0625em) {
.govuk-grid-column-two-thirds {
- width: 66.6666%;
+ width: 66.6666666667%;
float: left
}
}
@@ -972,7 +987,7 @@
@media (min-width:48.0625em) {
.govuk-grid-column-one-third-from-desktop {
- width: 33.3333%;
+ width: 33.3333333333%;
float: left
}
}
@@ -996,7 +1011,7 @@
@media (min-width:48.0625em) {
.govuk-grid-column-two-thirds-from-desktop {
- width: 66.6666%;
+ width: 66.6666666667%;
float: left
}
}
@@ -1044,6 +1059,7 @@
}
@media (min-width:40.0625em) {
+
.govuk-main-wrapper--auto-spacing:first-child,
.govuk-main-wrapper--l {
padding-top: 50px
@@ -1053,10 +1069,20 @@
.govuk-template {
background-color: #f3f2f1;
-webkit-text-size-adjust: 100%;
- -ms-text-size-adjust: 100%;
+ -moz-text-size-adjust: 100%;
text-size-adjust: 100%
}
+@supports ((position:-webkit-sticky) or (position:sticky)) {
+ .govuk-template {
+ scroll-padding-top: 60px
+ }
+
+ .govuk-template:not(:has(.govuk-exit-this-page)) {
+ scroll-padding-top: 0
+ }
+}
+
@media screen {
.govuk-template {
overflow-y: scroll
@@ -1086,6 +1112,7 @@
margin-right: 30px;
margin-left: 30px
}
+
@supports (margin:max(calc(0px))) {
.govuk-width-container {
margin-right: max(30px, calc(15px + env(safe-area-inset-right)));
@@ -1099,6 +1126,7 @@
margin-right: auto;
margin-left: auto
}
+
@supports (margin:max(calc(0px))) {
.govuk-width-container {
margin-right: auto;
@@ -1129,6 +1157,12 @@
}
.govuk-accordion__section-button {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 700;
+ font-size: 1.125rem;
+ line-height: 1.1111111111;
color: #0b0c0c;
display: block;
margin-bottom: 0;
@@ -1137,38 +1171,22 @@
@media print {
.govuk-accordion__section-button {
- color: #000
- }
-}
-
-.govuk-accordion__section-heading-text {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111
-}
-
-@media print {
- .govuk-accordion__section-heading-text {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-accordion__section-heading-text {
- font-size: 24px;
- font-size: 1.5norem;
+ .govuk-accordion__section-button {
+ font-size: 1.5rem;
line-height: 1.25
}
}
@media print {
- .govuk-accordion__section-heading-text {
+ .govuk-accordion__section-button {
font-size: 18pt;
- line-height: 1.15
+ line-height: 1.15;
+ color: #000
}
}
@@ -1186,6 +1204,7 @@
.js-enabled .govuk-accordion__section-content {
display: none;
+ padding-top: 15px;
padding-bottom: 30px
}
@@ -1195,6 +1214,18 @@
}
}
+.js-enabled .govuk-accordion__section-content[hidden] {
+ padding-top: 0;
+ padding-bottom: 0
+}
+
+@supports (content-visibility:hidden) {
+ .js-enabled .govuk-accordion__section-content[hidden] {
+ content-visibility: hidden;
+ display: inherit
+ }
+}
+
.js-enabled .govuk-accordion__section--expanded .govuk-accordion__section-content {
display: block
}
@@ -1204,8 +1235,7 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
position: relative;
z-index: 1;
@@ -1226,9 +1256,8 @@
@media (min-width:40.0625em) {
.js-enabled .govuk-accordion__show-all {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@@ -1239,7 +1268,7 @@
}
}
-@media (min-width:48.0625em) {
+@media (min-width:40.0625em) {
.js-enabled .govuk-accordion__show-all {
margin-bottom: 14px
}
@@ -1270,11 +1299,13 @@
}
.js-enabled .govuk-accordion__show-all:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
color: #0b0c0c;
background-color: #fd0;
box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.js-enabled .govuk-accordion__show-all:focus .govuk-accordion-nav__chevron {
@@ -1293,9 +1324,9 @@
box-sizing: border-box;
display: inline-block;
position: relative;
- width: 20px;
- height: 20px;
- border: 1px solid;
+ width: 1.25rem;
+ height: 1.25rem;
+ border: .0625rem solid;
border-radius: 50%;
vertical-align: middle
}
@@ -1305,20 +1336,16 @@
box-sizing: border-box;
display: block;
position: absolute;
- bottom: 5px;
- left: 6px;
- width: 6px;
- height: 6px;
- -webkit-transform: rotate(-45deg);
- -ms-transform: rotate(-45deg);
+ bottom: .3125rem;
+ left: .375rem;
+ width: .375rem;
+ height: .375rem;
transform: rotate(-45deg);
- border-top: 2px solid;
- border-right: 2px solid
+ border-top: .125rem solid;
+ border-right: .125rem solid
}
.js-enabled .govuk-accordion-nav__chevron--down {
- -webkit-transform: rotate(180deg);
- -ms-transform: rotate(180deg);
transform: rotate(180deg)
}
@@ -1327,7 +1354,7 @@
padding: 10px 0 0;
border: 0;
border-top: 1px solid #b1b4b6;
- border-bottom: 10px solid rgba(0, 0, 0, 0);
+ border-bottom: 10px solid transparent;
color: #0b0c0c;
background: none;
text-align: left;
@@ -1335,6 +1362,11 @@
-webkit-appearance: none
}
+.js-enabled .govuk-accordion__section-toggle {
+ pointer-events: none;
+}
+
+
@media (min-width:40.0625em) {
.js-enabled .govuk-accordion__section-button {
padding-bottom: 10px
@@ -1371,11 +1403,13 @@
.js-enabled .govuk-accordion__section-button:focus .govuk-accordion__section-heading-text-focus,
.js-enabled .govuk-accordion__section-button:focus .govuk-accordion__section-summary-focus,
.js-enabled .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus {
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
color: #0b0c0c;
background-color: #fd0;
box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.js-enabled .govuk-accordion__section-button:focus .govuk-accordion-nav__chevron {
@@ -1393,10 +1427,16 @@
}
.js-enabled .govuk-accordion__section--expanded .govuk-accordion__section-button {
- padding-bottom: 20px;
+ padding-bottom: 15px;
border-bottom: 0
}
+@media (min-width:40.0625em) {
+ .js-enabled .govuk-accordion__section--expanded .govuk-accordion__section-button {
+ padding-bottom: 20px
+ }
+}
+
.js-enabled .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus {
padding-bottom: 3px
}
@@ -1411,8 +1451,7 @@
.js-enabled .govuk-accordion__section-summary,
.js-enabled .govuk-accordion__section-toggle {
display: block;
- margin-bottom: 13px;
- pointer-events: none;
+ margin-bottom: 13px
}
.js-enabled .govuk-accordion__section-heading-text .govuk-accordion__section-heading-text-focus,
@@ -1428,27 +1467,16 @@
}
.js-enabled .govuk-accordion__section-toggle {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
+ font-weight: 400;
color: #1d70b8
}
-@media print {
- .js-enabled .govuk-accordion__section-toggle {
- font-family: sans-serif
- }
-}
-
@media (min-width:40.0625em) {
.js-enabled .govuk-accordion__section-toggle {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@@ -1466,10 +1494,12 @@
}
@media screen and (forced-colors:active) {
+
.js-enabled .govuk-accordion__section-button:hover .govuk-accordion-nav__chevron,
.js-enabled .govuk-accordion__show-all:hover .govuk-accordion-nav__chevron {
- background-color: rgba(0, 0, 0, 0)
+ background-color: transparent
}
+
.js-enabled .govuk-accordion__section-button:focus .govuk-accordion-nav__chevron,
.js-enabled .govuk-accordion__section-button:focus .govuk-accordion__section-heading-text-focus,
.js-enabled .govuk-accordion__section-button:focus .govuk-accordion__section-summary-focus,
@@ -1478,8 +1508,8 @@
.js-enabled .govuk-accordion__show-all:focus .govuk-accordion__section-heading-text-focus,
.js-enabled .govuk-accordion__show-all:focus .govuk-accordion__section-summary-focus,
.js-enabled .govuk-accordion__show-all:focus .govuk-accordion__section-toggle-focus {
- background: rgba(0, 0, 0, 0);
- background-color: rgba(0, 0, 0, 0)
+ background: transparent;
+ background-color: transparent
}
}
@@ -1488,33 +1518,31 @@
border-top-color: #b1b4b6;
box-shadow: inset 0 3px 0 0 #1d70b8
}
+
.js-enabled .govuk-accordion__section-header:hover .govuk-accordion__section-button {
border-top-color: #b1b4b6
}
}
.govuk-back-link {
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
+ font-size: .875rem;
+ line-height: 1.1428571429;
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em;
display: inline-block;
position: relative;
margin-top: 15px;
margin-bottom: 15px;
- padding-left: 14px;
- border: none;
- background: white;
- color: #0b0c0c;
+ padding-left: .875em
}
@media (min-width:40.0625em) {
.govuk-back-link {
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25
}
}
@@ -1527,12 +1555,22 @@
}
}
+.govuk-back-link:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
+}
+
.govuk-back-link:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
color: #0b0c0c;
background-color: #fd0;
box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.govuk-back-link:link,
@@ -1541,6 +1579,7 @@
}
@media print {
+
.govuk-back-link:link,
.govuk-back-link:visited {
color: #000
@@ -1557,6 +1596,7 @@
}
@media print {
+
.govuk-back-link:active,
.govuk-back-link:focus {
color: #000
@@ -1569,18 +1609,23 @@
position: absolute;
top: 0;
bottom: 0;
- left: 3px;
- width: 7px;
- height: 7px;
+ left: .1875em;
+ width: .4375em;
+ height: .4375em;
margin: auto 0;
- -webkit-transform: rotate(225deg);
- -ms-transform: rotate(225deg);
transform: rotate(225deg);
border: solid;
border-width: 1px 1px 0 0;
border-color: #505a5f
}
+@supports (border-width:max(0px)) {
+ .govuk-back-link:before {
+ border-width: max(1px, .0625em) max(1px, .0625em) 0 0;
+ font-size: max(16px, 1em)
+ }
+}
+
.govuk-back-link:focus:before {
border-color: #0b0c0c
}
@@ -1594,14 +1639,31 @@
left: 0
}
+.govuk-back-link--inverse:link,
+.govuk-back-link--inverse:visited {
+ color: #fff
+}
+
+.govuk-back-link--inverse:active,
+.govuk-back-link--inverse:hover {
+ color: hsla(0, 0%, 100%, .99)
+}
+
+.govuk-back-link--inverse:focus {
+ color: #0b0c0c
+}
+
+.govuk-back-link--inverse:before {
+ border-color: currentcolor
+}
+
.govuk-breadcrumbs {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
+ font-size: .875rem;
+ line-height: 1.1428571429;
color: #0b0c0c;
margin-top: 15px;
margin-bottom: 10px
@@ -1615,8 +1677,7 @@
@media (min-width:40.0625em) {
.govuk-breadcrumbs {
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25
}
}
@@ -1645,8 +1706,8 @@
display: inline-block;
position: relative;
margin-bottom: 5px;
- margin-left: 10px;
- padding-left: 15.655px;
+ margin-left: .625em;
+ padding-left: .9784375em;
float: left
}
@@ -1656,18 +1717,23 @@
position: absolute;
top: 0;
bottom: 0;
- left: -3.31px;
- width: 7px;
- height: 7px;
+ left: -.206875em;
+ width: .4375em;
+ height: .4375em;
margin: auto 0;
- -webkit-transform: rotate(45deg);
- -ms-transform: rotate(45deg);
transform: rotate(45deg);
border: solid;
border-width: 1px 1px 0 0;
border-color: #505a5f
}
+@supports (border-width:max(0px)) {
+ .govuk-breadcrumbs__list-item:before {
+ border-width: max(1px, .0625em) max(1px, .0625em) 0 0;
+ font-size: max(16px, 1em)
+ }
+}
+
.govuk-breadcrumbs__list-item:first-child {
margin-left: 0;
padding-left: 0
@@ -1682,7 +1748,9 @@
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- text-decoration: underline
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em
}
@media print {
@@ -1691,12 +1759,22 @@
}
}
+.govuk-breadcrumbs__link:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
+}
+
.govuk-breadcrumbs__link:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
color: #0b0c0c;
background-color: #fd0;
box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.govuk-breadcrumbs__link:link,
@@ -1705,6 +1783,7 @@
}
@media print {
+
.govuk-breadcrumbs__link:link,
.govuk-breadcrumbs__link:visited {
color: #000
@@ -1721,6 +1800,7 @@
}
@media print {
+
.govuk-breadcrumbs__link:active,
.govuk-breadcrumbs__link:focus {
color: #000
@@ -1731,29 +1811,47 @@
.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item {
display: none
}
+
.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item:first-child,
.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item:last-child {
display: inline-block
}
+
.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item:before {
- top: 6px;
+ top: .375em;
margin: 0
}
+
.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
display: flex
}
}
+.govuk-breadcrumbs--inverse,
+.govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:link,
+.govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:visited {
+ color: #fff
+}
+
+.govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:active,
+.govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:hover {
+ color: hsla(0, 0%, 100%, .99)
+}
+
+.govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:focus {
+ color: #0b0c0c
+}
+
+.govuk-breadcrumbs--inverse .govuk-breadcrumbs__list-item:before {
+ border-color: currentcolor
+}
+
.govuk-button {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.1875;
box-sizing: border-box;
display: inline-block;
@@ -1761,7 +1859,7 @@
width: 100%;
margin: 0 0 22px;
padding: 8px 10px 7px;
- border: 2px solid rgba(0, 0, 0, 0);
+ border: 2px solid transparent;
border-radius: 0;
color: #fff;
background-color: #00703c;
@@ -1780,8 +1878,7 @@
@media (min-width:40.0625em) {
.govuk-button {
- font-size: 19px;
- font-size: 1.1875norem;
+ font-size: 1.1875rem;
line-height: 1
}
}
@@ -1823,7 +1920,7 @@
.govuk-button:focus {
border-color: #fd0;
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
box-shadow: inset 0 0 0 1px #fd0
}
@@ -1842,28 +1939,22 @@
right: -2px;
bottom: -4px;
left: -2px;
- background: rgba(0, 0, 0, 0)
+ background: transparent
}
.govuk-button:active:before {
top: -4px
}
-.govuk-button--disabled,
-.govuk-button[disabled=disabled],
.govuk-button[disabled] {
opacity: .5
}
-.govuk-button--disabled:hover,
-.govuk-button[disabled=disabled]:hover,
.govuk-button[disabled]:hover {
background-color: #00703c;
- cursor: default
+ cursor: not-allowed
}
-.govuk-button--disabled:active,
-.govuk-button[disabled=disabled]:active,
.govuk-button[disabled]:active {
top: 0;
box-shadow: 0 2px 0 #002d18
@@ -1911,26 +2002,39 @@
background-color: #d4351c
}
+.govuk-button--inverse {
+ background-color: #fff;
+ box-shadow: 0 2px 0 #144e81
+}
+
+.govuk-button--inverse,
+.govuk-button--inverse:active,
+.govuk-button--inverse:hover,
+.govuk-button--inverse:link,
+.govuk-button--inverse:visited {
+ color: #1d70b8
+}
+
+.govuk-button--inverse:hover {
+ background-color: #e8f1f8
+}
+
+.govuk-button--inverse:hover[disabled] {
+ background-color: #fff
+}
+
.govuk-button--start {
font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
+ font-size: 1.125rem;
line-height: 1;
- display: -webkit-inline-box;
- display: -webkit-inline-flex;
- display: -ms-inline-flexbox;
display: inline-flex;
min-height: auto;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
justify-content: center
}
@media (min-width:40.0625em) {
.govuk-button--start {
- font-size: 24px;
- font-size: 1.5norem;
+ font-size: 1.5rem;
line-height: 1
}
}
@@ -1945,11 +2049,7 @@
.govuk-button__start-icon {
margin-left: 5px;
vertical-align: middle;
- -webkit-flex-shrink: 0;
- -ms-flex-negative: 0;
flex-shrink: 0;
- -webkit-align-self: center;
- -ms-flex-item-align: center;
align-self: center;
forced-color-adjust: auto
}
@@ -1965,8 +2065,7 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 700;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
display: block;
margin-top: 0;
@@ -1983,9 +2082,8 @@
@media (min-width:40.0625em) {
.govuk-error-message {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@@ -1996,511 +2094,451 @@
}
}
-.govuk-fieldset {
- min-width: 0;
- margin: 0;
- padding: 0;
- border: 0
-}
-
-.govuk-fieldset:after {
- content: "";
- display: block;
- clear: both
-}
-
-@supports not (caret-color:auto) {
- .govuk-fieldset,
- x:-moz-any-link {
- display: table-cell
- }
-}
-
-.govuk-fieldset__legend {
+.govuk-hint {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
- color: #0b0c0c;
- box-sizing: border-box;
- display: table;
- max-width: 100%;
- margin-bottom: 10px;
- padding: 0;
- white-space: normal
+ margin-bottom: 15px;
+ color: #505a5f
}
@media print {
- .govuk-fieldset__legend {
+ .govuk-hint {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-fieldset__legend {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-hint {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-fieldset__legend {
+ .govuk-hint {
font-size: 14pt;
- line-height: 1.15;
- color: #000
+ line-height: 1.15
}
}
-.govuk-fieldset__legend--xl {
+.govuk-fieldset__legend:not(.govuk-fieldset__legend--m):not(.govuk-fieldset__legend--l):not(.govuk-fieldset__legend--xl)+.govuk-hint,
+.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl)+.govuk-hint {
+ margin-bottom: 10px
+}
+
+.govuk-fieldset__legend+.govuk-hint {
+ margin-top: -5px
+}
+
+.govuk-label {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 32px;
- font-size: 2norem;
- line-height: 1.09375;
- margin-bottom: 15px
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ color: #0b0c0c;
+ display: block;
+ margin-bottom: 5px
}
@media print {
- .govuk-fieldset__legend--xl {
+ .govuk-label {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-fieldset__legend--xl {
- font-size: 48px;
- font-size: 3norem;
- line-height: 1.04167
+ .govuk-label {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-fieldset__legend--xl {
- font-size: 32pt;
- line-height: 1.15
+ .govuk-label {
+ font-size: 14pt;
+ line-height: 1.15;
+ color: #000
}
}
-.govuk-fieldset__legend--l {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
+.govuk-label--l,
+.govuk-label--m,
+.govuk-label--xl {
font-weight: 700;
- font-size: 24px;
- font-size: 1.5norem;
- line-height: 1.04167;
margin-bottom: 15px
}
-@media print {
- .govuk-fieldset__legend--l {
- font-family: sans-serif
- }
+.govuk-label--xl {
+ font-size: 2rem;
+ line-height: 1.09375
}
@media (min-width:40.0625em) {
- .govuk-fieldset__legend--l {
- font-size: 36px;
- font-size: 2.25norem;
- line-height: 1.11111
+ .govuk-label--xl {
+ font-size: 3rem;
+ line-height: 1.0416666667
}
}
@media print {
- .govuk-fieldset__legend--l {
- font-size: 24pt;
- line-height: 1.05
+ .govuk-label--xl {
+ font-size: 32pt;
+ line-height: 1.15
}
}
-.govuk-fieldset__legend--m {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
- margin-bottom: 15px
+.govuk-label--l {
+ font-size: 1.5rem;
+ line-height: 1.0416666667
+}
+
+@media (min-width:40.0625em) {
+ .govuk-label--l {
+ font-size: 2.25rem;
+ line-height: 1.1111111111
+ }
}
@media print {
- .govuk-fieldset__legend--m {
- font-family: sans-serif
+ .govuk-label--l {
+ font-size: 24pt;
+ line-height: 1.05
}
}
+.govuk-label--m {
+ font-size: 1.125rem;
+ line-height: 1.1111111111
+}
+
@media (min-width:40.0625em) {
- .govuk-fieldset__legend--m {
- font-size: 24px;
- font-size: 1.5norem;
+ .govuk-label--m {
+ font-size: 1.5rem;
line-height: 1.25
}
}
@media print {
- .govuk-fieldset__legend--m {
+ .govuk-label--m {
font-size: 18pt;
line-height: 1.15
}
}
-.govuk-fieldset__legend--s {
+.govuk-label--s {
+ font-weight: 700
+}
+
+.govuk-label-wrapper {
+ margin: 0
+}
+
+.govuk-textarea {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ box-sizing: border-box;
+ display: block;
+ width: 100%;
+ min-height: 40px;
+ margin-bottom: 20px;
+ padding: 5px;
+ resize: vertical;
+ border: 2px solid #0b0c0c;
+ border-radius: 0;
+ -webkit-appearance: none
}
@media print {
- .govuk-fieldset__legend--s {
+ .govuk-textarea {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-fieldset__legend--s {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-textarea {
+ font-size: 1.1875rem;
+ line-height: 1.25
}
}
@media print {
- .govuk-fieldset__legend--s {
+ .govuk-textarea {
font-size: 14pt;
- line-height: 1.15
+ line-height: 1.25
}
}
-.govuk-fieldset__heading {
- margin: 0;
- font-size: inherit;
- font-weight: inherit
+@media (min-width:40.0625em) {
+ .govuk-textarea {
+ margin-bottom: 30px
+ }
}
-.govuk-hint {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- margin-bottom: 15px;
- color: #505a5f
+.govuk-textarea:focus {
+ outline: 3px solid #fd0;
+ outline-offset: 0;
+ box-shadow: inset 0 0 0 2px
}
-@media print {
- .govuk-hint {
- font-family: sans-serif
- }
+.govuk-textarea:disabled {
+ opacity: .5;
+ color: inherit;
+ background-color: transparent;
+ cursor: not-allowed
+}
+
+.govuk-textarea--error {
+ border-color: #d4351c
+}
+
+.govuk-textarea--error:focus {
+ border-color: #0b0c0c
+}
+
+.govuk-character-count {
+ margin-bottom: 20px
}
@media (min-width:40.0625em) {
- .govuk-hint {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-character-count {
+ margin-bottom: 30px
}
}
-@media print {
- .govuk-hint {
- font-size: 14pt;
- line-height: 1.15
- }
+.govuk-character-count .govuk-form-group,
+.govuk-character-count .govuk-textarea {
+ margin-bottom: 5px
}
-.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl)+.govuk-hint {
- margin-bottom: 10px
+.govuk-character-count__message {
+ font-variant-numeric: tabular-nums;
+ margin-top: 0;
+ margin-bottom: 0
}
-.govuk-fieldset__legend:not(.govuk-fieldset__legend--m):not(.govuk-fieldset__legend--l):not(.govuk-fieldset__legend--xl)+.govuk-hint {
- margin-bottom: 10px
+.govuk-character-count__message:after {
+ content: "​"
}
-.govuk-fieldset__legend+.govuk-hint {
- margin-top: -5px
+.govuk-character-count__message--disabled {
+ visibility: hidden
}
-.govuk-label {
+.govuk-fieldset {
+ min-width: 0;
+ margin: 0;
+ padding: 0;
+ border: 0
+}
+
+.govuk-fieldset:after {
+ content: "";
+ display: block;
+ clear: both
+}
+
+@supports not (caret-color:auto) {
+
+ .govuk-fieldset,
+ x:-moz-any-link {
+ display: table-cell
+ }
+}
+
+.govuk-fieldset__legend {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
color: #0b0c0c;
- display: block;
- margin-bottom: 5px
+ box-sizing: border-box;
+ display: table;
+ max-width: 100%;
+ margin-bottom: 10px;
+ padding: 0;
+ white-space: normal
}
@media print {
- .govuk-label {
+ .govuk-fieldset__legend {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-label {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-fieldset__legend {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-label {
+ .govuk-fieldset__legend {
font-size: 14pt;
line-height: 1.15;
color: #000
}
}
-.govuk-label--xl {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
+.govuk-fieldset__legend--l,
+.govuk-fieldset__legend--m,
+.govuk-fieldset__legend--xl {
font-weight: 700;
- font-size: 32px;
- font-size: 2norem;
- line-height: 1.09375;
margin-bottom: 15px
}
-@media print {
- .govuk-label--xl {
- font-family: sans-serif
- }
+.govuk-fieldset__legend--xl {
+ font-size: 2rem;
+ line-height: 1.09375
}
@media (min-width:40.0625em) {
- .govuk-label--xl {
- font-size: 48px;
- font-size: 3norem;
- line-height: 1.04167
+ .govuk-fieldset__legend--xl {
+ font-size: 3rem;
+ line-height: 1.0416666667
}
}
@media print {
- .govuk-label--xl {
+ .govuk-fieldset__legend--xl {
font-size: 32pt;
line-height: 1.15
}
}
-.govuk-label--l {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 24px;
- font-size: 1.5norem;
- line-height: 1.04167;
- margin-bottom: 15px
-}
-
-@media print {
- .govuk-label--l {
- font-family: sans-serif
- }
+.govuk-fieldset__legend--l {
+ font-size: 1.5rem;
+ line-height: 1.0416666667
}
@media (min-width:40.0625em) {
- .govuk-label--l {
- font-size: 36px;
- font-size: 2.25norem;
- line-height: 1.11111
+ .govuk-fieldset__legend--l {
+ font-size: 2.25rem;
+ line-height: 1.1111111111
}
}
@media print {
- .govuk-label--l {
+ .govuk-fieldset__legend--l {
font-size: 24pt;
line-height: 1.05
}
}
-.govuk-label--m {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
- margin-bottom: 10px
-}
-
-@media print {
- .govuk-label--m {
- font-family: sans-serif
- }
+.govuk-fieldset__legend--m {
+ font-size: 1.125rem;
+ line-height: 1.1111111111
}
@media (min-width:40.0625em) {
- .govuk-label--m {
- font-size: 24px;
- font-size: 1.5norem;
+ .govuk-fieldset__legend--m {
+ font-size: 1.5rem;
line-height: 1.25
}
}
@media print {
- .govuk-label--m {
+ .govuk-fieldset__legend--m {
font-size: 18pt;
line-height: 1.15
}
}
-.govuk-label--s {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25
-}
-
-@media print {
- .govuk-label--s {
- font-family: sans-serif
- }
-}
-
-@media (min-width:40.0625em) {
- .govuk-label--s {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
- }
-}
-
-@media print {
- .govuk-label--s {
- font-size: 14pt;
- line-height: 1.15
- }
+.govuk-fieldset__legend--s {
+ font-weight: 700
}
-.govuk-label-wrapper {
- margin: 0
+.govuk-fieldset__heading {
+ margin: 0;
+ font-size: inherit;
+ font-weight: inherit
}
.govuk-checkboxes__item {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- display: block;
+ display: flex;
+ flex-wrap: wrap;
position: relative;
- min-height: 40px;
- margin-bottom: 10px;
- padding-left: 40px;
- clear: left
+ margin-bottom: 10px
}
-@media print {
- .govuk-checkboxes__item {
- font-family: sans-serif
- }
-}
-
-@media (min-width:40.0625em) {
- .govuk-checkboxes__item {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
- }
-}
-
-@media print {
- .govuk-checkboxes__item {
- font-size: 14pt;
- line-height: 1.15
- }
-}
-
-.govuk-checkboxes__item:last-child,
-.govuk-checkboxes__item:last-of-type {
- margin-bottom: 0
+.govuk-checkboxes__item:last-child,
+.govuk-checkboxes__item:last-of-type {
+ margin-bottom: 0
}
.govuk-checkboxes__input {
- cursor: pointer;
- position: absolute;
z-index: 1;
- top: -2px;
- left: -2px;
width: 44px;
height: 44px;
margin: 0;
- opacity: 0
+ opacity: 0;
+ cursor: pointer
}
.govuk-checkboxes__label {
- display: inline-block;
+ align-self: center;
+ max-width: calc(100% - 74px);
margin-bottom: 0;
- padding: 8px 15px 5px;
+ padding: 7px 15px;
cursor: pointer;
- -ms-touch-action: manipulation;
touch-action: manipulation
}
.govuk-checkboxes__label:before {
- content: "";
- box-sizing: border-box;
- position: absolute;
- top: 0;
- left: 0;
+ top: 2px;
+ left: 2px;
width: 40px;
height: 40px;
- border: 2px solid;
- background: rgba(0, 0, 0, 0)
+ border: 2px solid
}
-.govuk-checkboxes__label:after {
+.govuk-checkboxes__label:after,
+.govuk-checkboxes__label:before {
content: "";
box-sizing: border-box;
position: absolute;
- top: 11px;
- left: 9px;
+ background: transparent
+}
+
+.govuk-checkboxes__label:after {
+ top: 13px;
+ left: 10px;
width: 23px;
height: 12px;
- -webkit-transform: rotate(-45deg);
- -ms-transform: rotate(-45deg);
transform: rotate(-45deg);
border: solid;
border-width: 0 0 5px 5px;
- border-top-color: rgba(0, 0, 0, 0);
- opacity: 0;
- background: rgba(0, 0, 0, 0)
+ border-top-color: transparent;
+ opacity: 0
}
.govuk-checkboxes__hint {
display: block;
+ width: 100%;
+ margin-top: -5px;
padding-right: 15px;
- padding-left: 15px
+ padding-left: 59px
+}
+
+.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl)+.govuk-checkboxes__hint {
+ margin-bottom: 0
}
.govuk-checkboxes__input:focus+.govuk-checkboxes__label:before {
border-width: 4px;
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
outline-offset: 1px;
box-shadow: 0 0 0 3px #fd0
}
@@ -2518,10 +2556,11 @@ screen and (forced-colors:active) {
.govuk-checkboxes__input:disabled,
.govuk-checkboxes__input:disabled+.govuk-checkboxes__label {
- cursor: default
+ cursor: not-allowed
}
-.govuk-checkboxes__input:disabled+.govuk-checkboxes__label {
+.govuk-checkboxes__input:disabled+.govuk-checkboxes__label,
+.govuk-checkboxes__input:disabled~.govuk-hint {
opacity: .5
}
@@ -2530,8 +2569,7 @@ screen and (forced-colors:active) {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
color: #0b0c0c;
width: 40px;
@@ -2547,9 +2585,8 @@ screen and (forced-colors:active) {
@media (min-width:40.0625em) {
.govuk-checkboxes__divider {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@@ -2574,51 +2611,32 @@ screen and (forced-colors:active) {
}
}
-.js-enabled .govuk-checkboxes__conditional--hidden {
+.govuk-frontend-supported .govuk-checkboxes__conditional--hidden {
display: none
}
+.govuk-checkboxes--small .govuk-checkboxes__item,
.govuk-checkboxes__conditional>:last-child {
margin-bottom: 0
}
-.govuk-checkboxes--small .govuk-checkboxes__item {
- min-height: 0;
- margin-bottom: 0;
- padding-left: 34px;
- float: left
-}
-
-.govuk-checkboxes--small .govuk-checkboxes__item:after {
- content: "";
- display: block;
- clear: both
-}
-
.govuk-checkboxes--small .govuk-checkboxes__input {
- left: -10px
+ margin-left: -10px
}
.govuk-checkboxes--small .govuk-checkboxes__label {
- margin-top: -2px;
- padding: 13px 15px 13px 1px;
- float: left
-}
-
-@media (min-width:40.0625em) {
- .govuk-checkboxes--small .govuk-checkboxes__label {
- padding: 11px 15px 10px 1px
- }
+ padding-left: 1px
}
.govuk-checkboxes--small .govuk-checkboxes__label:before {
- top: 8px;
+ top: 10px;
+ left: 0;
width: 24px;
height: 24px
}
.govuk-checkboxes--small .govuk-checkboxes__label:after {
- top: 15px;
+ top: 17px;
left: 6px;
width: 12px;
height: 6.5px;
@@ -2626,17 +2644,17 @@ screen and (forced-colors:active) {
}
.govuk-checkboxes--small .govuk-checkboxes__hint {
- padding: 0;
- clear: both
+ padding-left: 34px
}
.govuk-checkboxes--small .govuk-checkboxes__conditional {
margin-left: 10px;
- padding-left: 20px;
- clear: both
+ padding-left: 20px
}
.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:not(:disabled)+.govuk-checkboxes__label:before {
+ outline: 3px dashed transparent;
+ outline-offset: 1px;
box-shadow: 0 0 0 10px #b1b4b6
}
@@ -2644,939 +2662,789 @@ screen and (forced-colors:active) {
box-shadow: 0 0 0 3px #fd0, 0 0 0 10px #b1b4b6
}
+@media (-ms-high-contrast:active),
+screen and (forced-colors:active) {
+ .govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus+.govuk-checkboxes__label:before {
+ outline-color: Highlight
+ }
+}
+
@media (hover:none),
(pointer:coarse) {
.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:not(:disabled)+.govuk-checkboxes__label:before {
box-shadow: none
}
+
.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus+.govuk-checkboxes__label:before {
box-shadow: 0 0 0 3px #fd0
}
}
-.govuk-textarea {
+.govuk-cookie-banner {
+ padding-top: 20px;
+ border-bottom: 10px solid transparent;
+ background-color: #f3f2f1
+}
+
+.govuk-cookie-banner[hidden] {
+ display: none
+}
+
+.govuk-cookie-banner__message {
+ margin-bottom: -10px
+}
+
+.govuk-cookie-banner__message[hidden] {
+ display: none
+}
+
+.govuk-cookie-banner__message:focus {
+ outline: none
+}
+
+.govuk-input {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
box-sizing: border-box;
- display: block;
width: 100%;
- min-height: 40px;
- margin-bottom: 20px;
+ height: 2.5rem;
+ margin-top: 0;
padding: 5px;
- resize: vertical;
border: 2px solid #0b0c0c;
border-radius: 0;
- -webkit-appearance: none
+ -webkit-appearance: none;
+ appearance: none
}
@media print {
- .govuk-textarea {
+ .govuk-input {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-textarea {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.25
+ .govuk-input {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-textarea {
+ .govuk-input {
font-size: 14pt;
- line-height: 1.25
- }
-}
-
-@media (min-width:40.0625em) {
- .govuk-textarea {
- margin-bottom: 30px
+ line-height: 1.15
}
}
-.govuk-textarea:focus {
+.govuk-input:focus {
outline: 3px solid #fd0;
outline-offset: 0;
box-shadow: inset 0 0 0 2px
}
-.govuk-textarea--error {
+.govuk-input:disabled {
+ opacity: .5;
+ color: inherit;
+ background-color: transparent;
+ cursor: not-allowed
+}
+
+.govuk-input::-webkit-inner-spin-button,
+.govuk-input::-webkit-outer-spin-button {
+ margin: 0;
+ -webkit-appearance: none
+}
+
+.govuk-input[type=number] {
+ -moz-appearance: textfield
+}
+
+.govuk-input--error {
border-color: #d4351c
}
-.govuk-textarea--error:focus {
+.govuk-input--error:focus {
border-color: #0b0c0c
}
-.govuk-character-count {
- margin-bottom: 20px
+.govuk-input--extra-letter-spacing {
+ font-variant-numeric: tabular-nums;
+ letter-spacing: .05em
}
-@media (min-width:40.0625em) {
- .govuk-character-count {
- margin-bottom: 30px
- }
+.govuk-input--width-30 {
+ max-width: 29.5em
}
-.govuk-character-count .govuk-form-group,
-.govuk-character-count .govuk-textarea {
- margin-bottom: 5px
+.govuk-input--width-20 {
+ max-width: 20.5em
}
-.govuk-character-count__message {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- -webkit-font-feature-settings: "tnum" 1;
- font-feature-settings: "tnum" 1;
- font-weight: 400;
- margin-top: 0;
- margin-bottom: 0
+.govuk-input--width-10 {
+ max-width: 11.5em
}
-@media print {
- .govuk-character-count__message {
- font-family: sans-serif
- }
+.govuk-input--width-5 {
+ max-width: 5.5em
}
-@supports (font-variant-numeric:tabular-nums) {
- .govuk-character-count__message {
- -webkit-font-feature-settings: normal;
- font-feature-settings: normal;
- font-variant-numeric: tabular-nums
- }
+.govuk-input--width-4 {
+ max-width: 4.5em
}
-.govuk-character-count__message--disabled {
- visibility: hidden
+.govuk-input--width-3 {
+ max-width: 3.75em
}
-.govuk-cookie-banner {
- padding-top: 20px;
- border-bottom: 10px solid rgba(0, 0, 0, 0);
- background-color: #f3f2f1
+.govuk-input--width-2 {
+ max-width: 2.75em
}
-.govuk-cookie-banner[hidden] {
- display: none
+.govuk-input__wrapper {
+ display: flex
}
-.govuk-cookie-banner__message {
- margin-bottom: -10px
+.govuk-input__wrapper .govuk-input {
+ flex: 0 1 auto
}
-.govuk-cookie-banner__message[hidden] {
- display: none
+.govuk-input__wrapper .govuk-input:focus {
+ z-index: 1
}
-.govuk-cookie-banner__message:focus {
- outline: none
+@media (max-width:19.99em) {
+ .govuk-input__wrapper {
+ display: block
+ }
+
+ .govuk-input__wrapper .govuk-input {
+ max-width: 100%
+ }
}
-.govuk-summary-list {
+.govuk-input__prefix,
+.govuk-input__suffix {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
- color: #0b0c0c;
- margin: 0 0 20px
+ box-sizing: border-box;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ min-width: 2.5rem;
+ height: 2.5rem;
+ padding: 5px;
+ border: 2px solid #0b0c0c;
+ background-color: #f3f2f1;
+ text-align: center;
+ white-space: nowrap;
+ cursor: default;
+ flex: 0 0 auto
}
@media print {
- .govuk-summary-list {
+
+ .govuk-input__prefix,
+ .govuk-input__suffix {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-summary-list {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+
+ .govuk-input__prefix,
+ .govuk-input__suffix {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-summary-list {
+
+ .govuk-input__prefix,
+ .govuk-input__suffix {
font-size: 14pt;
- line-height: 1.15;
- color: #000
+ line-height: 1.15
}
}
-@media (min-width:40.0625em) {
- .govuk-summary-list {
- display: table;
- width: 100%;
- table-layout: fixed;
- border-collapse: collapse;
- margin-bottom: 30px
+@media (max-width:19.99em) {
+
+ .govuk-input__prefix,
+ .govuk-input__suffix {
+ display: block;
+ height: 100%;
+ white-space: normal
}
-}
-.govuk-summary-list__row {
- border-bottom: 1px solid #b1b4b6
+ .govuk-input__prefix {
+ border-bottom: 0
+ }
}
-@media (max-width:40.0525em) {
- .govuk-summary-list__row {
- margin-bottom: 15px
+@media (min-width:20em) {
+ .govuk-input__prefix {
+ border-right: 0
}
}
-@media (min-width:40.0625em) {
- .govuk-summary-list__row {
- display: table-row
+@media (max-width:19.99em) {
+ .govuk-input__suffix {
+ border-top: 0
}
}
-.govuk-summary-list__row--no-actions:after {
- content: "";
- display: table-cell
+@media (min-width:20em) {
+ .govuk-input__suffix {
+ border-left: 0
+ }
}
-.govuk-summary-list__actions,
-.govuk-summary-list__key,
-.govuk-summary-list__value {
- margin: 0
+.govuk-date-input {
+ font-size: 0
}
-@media (min-width:40.0625em) {
- .govuk-summary-list__actions,
- .govuk-summary-list__key,
- .govuk-summary-list__value {
- display: table-cell;
- padding-top: 10px;
- padding-right: 20px;
- padding-bottom: 10px
- }
+.govuk-date-input:after {
+ content: "";
+ display: block;
+ clear: both
}
-.govuk-summary-list__actions {
- margin-bottom: 15px
+.govuk-date-input__item {
+ display: inline-block;
+ margin-right: 20px;
+ margin-bottom: 0
}
-@media (min-width:40.0625em) {
- .govuk-summary-list__actions {
- width: 20%;
- padding-right: 0;
- text-align: right
- }
+.govuk-date-input__label {
+ display: block
}
-.govuk-summary-list__key,
-.govuk-summary-list__value {
- word-wrap: break-word;
- overflow-wrap: break-word
+.govuk-date-input__input {
+ margin-bottom: 0
}
-.govuk-summary-list__key {
- margin-bottom: 5px;
- font-weight: 700
+.govuk-details {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ color: #0b0c0c;
+ margin-bottom: 20px;
+ display: block
+}
+
+@media print {
+ .govuk-details {
+ font-family: sans-serif
+ }
}
@media (min-width:40.0625em) {
- .govuk-summary-list__key {
- width: 30%
+ .govuk-details {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
-@media (max-width:40.0525em) {
- .govuk-summary-list__value {
- margin-bottom: 15px
+@media print {
+ .govuk-details {
+ font-size: 14pt;
+ line-height: 1.15;
+ color: #000
}
}
-.govuk-summary-list__value>p {
- margin-bottom: 10px
+@media (min-width:40.0625em) {
+ .govuk-details {
+ margin-bottom: 30px
+ }
}
-.govuk-summary-list__value>:last-child {
- margin-bottom: 0
+.govuk-details__summary {
+ display: inline-block;
+ margin-bottom: 5px
}
-.govuk-summary-list__actions-list {
- width: 100%;
- margin: 0;
- padding: 0
+.govuk-details__summary-text>:first-child {
+ margin-top: 0
}
-.govuk-summary-list__actions-list-item {
- display: inline;
- margin-right: 10px;
- padding-right: 10px
+.govuk-details__summary-text>:last-child,
+.govuk-details__summary-text>:only-child {
+ margin-bottom: 0
}
-.govuk-summary-list__actions-list-item:not(:last-child) {
- border-right: 1px solid #b1b4b6
+.govuk-details__text {
+ padding-top: 15px;
+ padding-bottom: 15px;
+ padding-left: 20px
}
-.govuk-summary-list__actions-list-item:last-child {
- margin-right: 0;
- padding-right: 0;
- border: 0
+.govuk-details__text p {
+ margin-top: 0;
+ margin-bottom: 20px
}
-.govuk-summary-list--no-border .govuk-summary-list__row {
- border: 0
+.govuk-details__text>:last-child {
+ margin-bottom: 0
}
-@media (min-width:40.0625em) {
- .govuk-summary-list--no-border .govuk-summary-list__actions,
- .govuk-summary-list--no-border .govuk-summary-list__key,
- .govuk-summary-list--no-border .govuk-summary-list__value {
- padding-bottom: 11px
+@media screen\0 {
+ .govuk-details {
+ border-left: 10px solid #b1b4b6
+ }
+
+ .govuk-details__summary {
+ margin-top: 15px
+ }
+
+ .govuk-details__summary-text {
+ font-weight: 700;
+ margin-bottom: 15px;
+ padding-left: 20px
}
}
-.govuk-summary-list__row--no-border {
- border: 0
+@media screen\0 and (min-width:40.0625em) {
+ .govuk-details__summary-text {
+ margin-bottom: 20px
+ }
}
-@media (min-width:40.0625em) {
- .govuk-summary-list__row--no-border .govuk-summary-list__actions,
- .govuk-summary-list__row--no-border .govuk-summary-list__key,
- .govuk-summary-list__row--no-border .govuk-summary-list__value {
- padding-bottom: 11px
+@supports not (-ms-ime-align:auto) {
+ .govuk-details__summary {
+ position: relative;
+ padding-left: 25px;
+ color: #1d70b8;
+ cursor: pointer
+ }
+
+ .govuk-details__summary:hover {
+ color: #003078
+ }
+
+ .govuk-details__summary:focus {
+ outline: 3px solid transparent;
+ color: #0b0c0c;
+ background-color: #fd0;
+ box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
+ }
+
+ .govuk-details__summary-text {
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em
+ }
+
+ .govuk-details__summary:hover .govuk-details__summary-text {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
+ }
+
+ .govuk-details__summary:focus .govuk-details__summary-text {
+ text-decoration: none
+ }
+
+ .govuk-details__summary::-webkit-details-marker {
+ display: none
+ }
+
+ .govuk-details__summary:before {
+ content: "";
+ position: absolute;
+ top: -1px;
+ bottom: 0;
+ left: 0;
+ margin: auto;
+ display: block;
+ width: 0;
+ height: 0;
+ -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
+ clip-path: polygon(0 0, 100% 50%, 0 100%);
+ border-color: transparent;
+ border-style: solid;
+ border-width: 7px 0 7px 12.124px;
+ border-left-color: inherit
+ }
+
+ .govuk-details[open]>.govuk-details__summary:before {
+ display: block;
+ width: 0;
+ height: 0;
+ -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
+ clip-path: polygon(0 0, 50% 100%, 100% 0);
+ border-color: transparent;
+ border-style: solid;
+ border-width: 12.124px 7px 0;
+ border-top-color: inherit
+ }
+
+ .govuk-details__text {
+ border-left: 5px solid #b1b4b6
}
}
-.govuk-input {
+.govuk-error-summary {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
- box-sizing: border-box;
- width: 100%;
- height: 40px;
- height: 2.5norem;
- margin-top: 0;
- padding: 5px;
- border: 2px solid #0b0c0c;
- border-radius: 0;
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none
+ color: #0b0c0c;
+ padding: 15px;
+ margin-bottom: 30px;
+ border: 5px solid #d4351c
}
@media print {
- .govuk-input {
+ .govuk-error-summary {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-input {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-error-summary {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-input {
+ .govuk-error-summary {
font-size: 14pt;
- line-height: 1.15
+ line-height: 1.15;
+ color: #000
}
}
-.govuk-input:focus {
- outline: 3px solid #fd0;
- outline-offset: 0;
- box-shadow: inset 0 0 0 2px
+@media (min-width:40.0625em) {
+ .govuk-error-summary {
+ padding: 20px;
+ margin-bottom: 50px
+ }
}
-.govuk-input::-webkit-inner-spin-button,
-.govuk-input::-webkit-outer-spin-button {
- margin: 0;
- -webkit-appearance: none
+.govuk-error-summary:focus {
+ outline: 3px solid #fd0
}
-.govuk-input[type=number] {
- -moz-appearance: textfield
+.govuk-error-summary__title {
+ font-size: 1.125rem;
+ line-height: 1.1111111111;
+ font-weight: 700;
+ margin-top: 0;
+ margin-bottom: 15px
}
-.govuk-input--error {
- border-color: #d4351c
+@media (min-width:40.0625em) {
+ .govuk-error-summary__title {
+ font-size: 1.5rem;
+ line-height: 1.25
+ }
}
-.govuk-input--error:focus {
- border-color: #0b0c0c
+@media print {
+ .govuk-error-summary__title {
+ font-size: 18pt;
+ line-height: 1.15
+ }
}
-.govuk-input--width-30 {
- max-width: 59ex
+@media (min-width:40.0625em) {
+ .govuk-error-summary__title {
+ margin-bottom: 20px
+ }
}
-.govuk-input--width-20 {
- max-width: 41ex
+.govuk-error-summary__body p {
+ margin-bottom: 0
}
-.govuk-input--width-10 {
- max-width: 23ex
+.govuk-error-summary__body>*+* {
+ margin-top: 15px
}
-.govuk-input--width-5 {
- max-width: 10.8ex
+@media (min-width:40.0625em) {
+ .govuk-error-summary__body>*+* {
+ margin-top: 20px
+ }
}
-.govuk-input--width-4 {
- max-width: 9ex
+.govuk-error-summary__list,
+.govuk-error-summary__list li:last-child {
+ margin-bottom: 0
}
-.govuk-input--width-3 {
- max-width: 7.2ex
+.govuk-error-summary__list a {
+ font-weight: 700;
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em
}
-.govuk-input--width-2 {
- max-width: 5.4ex
+@media print {
+ .govuk-error-summary__list a {
+ font-family: sans-serif
+ }
}
-.govuk-input__wrapper {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex
+.govuk-error-summary__list a:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
}
-.govuk-input__wrapper .govuk-input {
- -webkit-box-flex: 0;
- -webkit-flex: 0 1 auto;
- -ms-flex: 0 1 auto;
- flex: 0 1 auto
+.govuk-error-summary__list a:focus {
+ outline: 3px solid transparent;
+ background-color: #fd0;
+ box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
-.govuk-input__wrapper .govuk-input:focus {
- z-index: 1
+.govuk-error-summary__list a:link,
+.govuk-error-summary__list a:visited {
+ color: #d4351c
}
-@media (max-width:19.99em) {
- .govuk-input__wrapper {
- display: block
- }
- .govuk-input__wrapper .govuk-input {
- max-width: 100%
- }
+.govuk-error-summary__list a:hover {
+ color: #942514
}
-.govuk-input__prefix,
-.govuk-input__suffix {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- box-sizing: border-box;
- display: inline-block;
- min-width: 40px;
- min-width: 2.5norem;
- height: 40px;
- height: 2.5norem;
- padding: 5px;
- border: 2px solid #0b0c0c;
- background-color: #f3f2f1;
- text-align: center;
- white-space: nowrap;
- cursor: default;
- -webkit-box-flex: 0;
- -webkit-flex: 0 0 auto;
- -ms-flex: 0 0 auto;
- flex: 0 0 auto
+.govuk-error-summary__list a:active {
+ color: #d4351c
}
-@media print {
- .govuk-input__prefix,
- .govuk-input__suffix {
- font-family: sans-serif
- }
+.govuk-error-summary__list a:focus {
+ color: #0b0c0c
}
-@media (min-width:40.0625em) {
- .govuk-input__prefix,
- .govuk-input__suffix {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
- }
+.govuk-exit-this-page {
+ margin-bottom: 30px;
+ position: -webkit-sticky;
+ position: sticky;
+ z-index: 1000;
+ top: 0;
+ left: 0;
+ width: 100%
}
-@media print {
- .govuk-input__prefix,
- .govuk-input__suffix {
- font-size: 14pt;
- line-height: 1.15
+@media (min-width:40.0625em) {
+ .govuk-exit-this-page {
+ margin-bottom: 50px;
+ display: inline-block;
+ right: 0;
+ left: auto;
+ width: auto;
+ float: right
}
}
-@media (max-width:40.0525em) {
- .govuk-input__prefix,
- .govuk-input__suffix {
- line-height: 1.6
- }
+.govuk-exit-this-page__button {
+ margin-bottom: 0
}
-@media (max-width:19.99em) {
- .govuk-input__prefix,
- .govuk-input__suffix {
- display: block;
- height: 100%;
- white-space: normal
- }
+.govuk-exit-this-page__indicator {
+ display: none;
+ padding: 10px 10px 0;
+ color: inherit;
+ line-height: 0;
+ text-align: center;
+ pointer-events: none
}
-@media (max-width:19.99em) {
- .govuk-input__prefix {
- border-bottom: 0
- }
+.govuk-exit-this-page__indicator--visible {
+ display: block
}
-@media (min-width:20em) {
- .govuk-input__prefix {
- border-right: 0
- }
+.govuk-exit-this-page__indicator-light {
+ box-sizing: border-box;
+ display: inline-block;
+ width: .75em;
+ height: .75em;
+ margin: 0 .125em;
+ border-radius: 50%;
+ border: 2px solid
}
-@media (max-width:19.99em) {
- .govuk-input__suffix {
- border-top: 0
- }
+.govuk-exit-this-page__indicator-light--on {
+ border-width: .375em
}
-@media (min-width:20em) {
- .govuk-input__suffix {
- border-left: 0
+@media only print {
+ .govuk-exit-this-page {
+ display: none
}
}
-.govuk-date-input {
- font-size: 0
-}
-
-.govuk-date-input:after {
- content: "";
- display: block;
- clear: both
-}
-
-.govuk-date-input__item {
- display: inline-block;
- margin-right: 20px;
- margin-bottom: 0
+.govuk-exit-this-page-overlay {
+ position: fixed;
+ z-index: 9999;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ background-color: #fff
}
-.govuk-date-input__label {
- display: block
+.govuk-exit-this-page-hide-content * {
+ display: none !important
}
-.govuk-date-input__input {
- margin-bottom: 0
+.govuk-exit-this-page-hide-content .govuk-exit-this-page-overlay {
+ display: block !important
}
-.govuk-details {
+.govuk-file-upload {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
color: #0b0c0c;
- margin-bottom: 20px;
- display: block
+ max-width: 100%;
+ margin-left: -5px;
+ padding: 5px
}
@media print {
- .govuk-details {
+ .govuk-file-upload {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-details {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-file-upload {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-details {
+ .govuk-file-upload {
font-size: 14pt;
line-height: 1.15;
color: #000
}
}
-@media (min-width:40.0625em) {
- .govuk-details {
- margin-bottom: 30px
- }
-}
-
-.govuk-details__summary {
- display: inline-block;
- position: relative;
- margin-bottom: 5px;
- padding-left: 25px;
- color: #1d70b8;
- cursor: pointer
-}
-
-.govuk-details__summary:hover {
- color: #003078
-}
-
-.govuk-details__summary:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
- color: #0b0c0c;
- background-color: #fd0;
- box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
-}
-
-.govuk-details__summary-text {
- text-decoration: underline
-}
-
-.govuk-details__summary:focus .govuk-details__summary-text {
- text-decoration: none
-}
-
-.govuk-details__summary::-webkit-details-marker {
- display: none
-}
-
-.govuk-details__summary:before {
- content: "";
- position: absolute;
- top: -1px;
- bottom: 0;
- left: 0;
- margin: auto;
- display: block;
- width: 0;
- height: 0;
- -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
- clip-path: polygon(0 0, 100% 50%, 0 100%);
- border-color: rgba(0, 0, 0, 0);
- border-style: solid;
- border-width: 7px 0 7px 12.124px;
- border-left-color: inherit
-}
-
-.govuk-details[open]>.govuk-details__summary:before {
- display: block;
- width: 0;
- height: 0;
- -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
- clip-path: polygon(0 0, 50% 100%, 100% 0);
- border-color: rgba(0, 0, 0, 0);
- border-style: solid;
- border-width: 12.124px 7px 0;
- border-top-color: inherit
-}
-
-.govuk-details__text {
- padding-top: 15px;
- padding-bottom: 15px;
- padding-left: 20px;
- border-left: 5px solid #b1b4b6
-}
-
-.govuk-details__text p {
- margin-top: 0;
- margin-bottom: 20px
-}
-
-.govuk-details__text>:last-child {
- margin-bottom: 0
-}
-
-.govuk-error-summary {
- color: #0b0c0c;
- padding: 15px;
- margin-bottom: 30px;
- border: 5px solid #d4351c
+.govuk-file-upload::-webkit-file-upload-button {
+ -webkit-appearance: button;
+ color: inherit;
+ font: inherit
}
-@media print {
- .govuk-error-summary {
- color: #000
- }
+.govuk-file-upload:focus {
+ outline: 3px solid #fd0;
+ box-shadow: inset 0 0 0 4px #0b0c0c
}
-@media (min-width:40.0625em) {
- .govuk-error-summary {
- padding: 20px;
- margin-bottom: 50px
- }
+.govuk-file-upload:focus-within {
+ outline: 3px solid #fd0;
+ box-shadow: inset 0 0 0 4px #0b0c0c
}
-.govuk-error-summary:focus {
- outline: 3px solid #fd0
+.govuk-file-upload:disabled {
+ opacity: .5;
+ cursor: not-allowed
}
-.govuk-error-summary__title {
+.govuk-footer {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
- margin-top: 0;
- margin-bottom: 15px
+ font-weight: 400;
+ font-size: .875rem;
+ line-height: 1.1428571429;
+ padding-top: 25px;
+ padding-bottom: 15px;
+ border-top: 1px solid #b1b4b6;
+ color: #0b0c0c;
+ background: #f3f2f1;
}
@media print {
- .govuk-error-summary__title {
+ .govuk-footer {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-error-summary__title {
- font-size: 24px;
- font-size: 1.5norem;
+ .govuk-footer {
+ font-size: 1rem;
line-height: 1.25
}
}
@media print {
- .govuk-error-summary__title {
- font-size: 18pt;
- line-height: 1.15
+ .govuk-footer {
+ font-size: 14pt;
+ line-height: 1.2
}
}
@media (min-width:40.0625em) {
- .govuk-error-summary__title {
- margin-bottom: 20px
+ .govuk-footer {
+ padding-top: 40px;
+ padding-bottom: 25px
}
}
-.govuk-error-summary__body {
+.govuk-footer__link {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em
}
@media print {
- .govuk-error-summary__body {
+ .govuk-footer__link {
font-family: sans-serif
}
}
-@media (min-width:40.0625em) {
- .govuk-error-summary__body {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
- }
+.govuk-footer__link:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
}
-@media print {
- .govuk-error-summary__body {
- font-size: 14pt;
- line-height: 1.15
- }
-}
-
-.govuk-error-summary__body p {
- margin-top: 0;
- margin-bottom: 15px
-}
-
-@media (min-width:40.0625em) {
- .govuk-error-summary__body p {
- margin-bottom: 20px
- }
-}
-
-.govuk-error-summary__list {
- margin-top: 0;
- margin-bottom: 0;
- color: #d4351c;
- font-weight: 700;
- text-decoration: underline;
- text-underline-offset: 0.1em
-}
-
-.govuk-error-summary__list a {
- font-weight: 700;
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- text-decoration: underline
-}
-
-@media print {
- .govuk-error-summary__list a {
- font-family: sans-serif
- }
-}
-
-.govuk-error-summary__list a:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
- background-color: #fd0;
- box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
-}
-
-.govuk-error-summary__list a:link,
-.govuk-error-summary__list a:visited {
- color: #d4351c
-}
-
-.govuk-error-summary__list a:hover {
- color: #942514
-}
-
-.govuk-error-summary__list a:active {
- color: #d4351c
-}
-
-.govuk-error-summary__list a:focus {
- color: #0b0c0c
-}
-
-.govuk-file-upload {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- color: #0b0c0c;
- max-width: 100%;
- margin-left: -5px;
- padding: 5px
-}
-
-@media print {
- .govuk-file-upload {
- font-family: sans-serif
- }
-}
-
-@media (min-width:40.0625em) {
- .govuk-file-upload {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
- }
-}
-
-@media print {
- .govuk-file-upload {
- font-size: 14pt;
- line-height: 1.15;
- color: #000
- }
-}
-
-.govuk-file-upload::-webkit-file-upload-button {
- -webkit-appearance: button;
- color: inherit;
- font: inherit
-}
-
-.govuk-file-upload:focus {
- outline: 3px solid #fd0;
- box-shadow: inset 0 0 0 4px #0b0c0c
-}
-
-.govuk-file-upload:focus-within {
- outline: 3px solid #fd0;
- box-shadow: inset 0 0 0 4px #0b0c0c
-}
-
-.govuk-footer {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
- padding-top: 25px;
- padding-bottom: 15px;
- border-top: 1px solid #b1b4b6;
- color: #0b0c0c;
- background: #f3f2f1;
- display:inline-block;
- width:100%;
- bottom:0
-}
-
-@media print {
- .govuk-footer {
- font-family: sans-serif
- }
-}
-
-@media (min-width:40.0625em) {
- .govuk-footer {
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25
- }
-}
-
-@media print {
- .govuk-footer {
- font-size: 14pt;
- line-height: 1.2
- }
-}
-
-@media (min-width:40.0625em) {
- .govuk-footer {
- padding-top: 40px;
- padding-bottom: 25px
- }
-}
-
-.govuk-footer__link {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- text-decoration: underline
-}
-
-@media print {
- .govuk-footer__link {
- font-family: sans-serif
- }
-}
-
-.govuk-footer__link:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
- color: #0b0c0c;
- background-color: #fd0;
- box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+.govuk-footer__link:focus {
+ outline: 3px solid transparent;
+ color: #0b0c0c;
+ background-color: #fd0;
+ box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.govuk-footer__link:link,
@@ -3585,6 +3453,7 @@ screen and (forced-colors:active) {
}
@media print {
+
.govuk-footer__link:link,
.govuk-footer__link:visited {
color: #000
@@ -3601,6 +3470,7 @@ screen and (forced-colors:active) {
}
@media print {
+
.govuk-footer__link:active,
.govuk-footer__link:focus {
color: #000
@@ -3620,22 +3490,11 @@ screen and (forced-colors:active) {
}
.govuk-footer__meta {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
display: flex;
margin-right: -15px;
margin-left: -15px;
- -webkit-flex-wrap: wrap;
- -ms-flex-wrap: wrap;
flex-wrap: wrap;
- -webkit-box-align: end;
- -webkit-align-items: flex-end;
- -ms-flex-align: end;
align-items: flex-end;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
justify-content: center
}
@@ -3646,16 +3505,11 @@ screen and (forced-colors:active) {
}
.govuk-footer__meta-item--grow {
- -webkit-box-flex: 1;
- -webkit-flex: 1;
- -ms-flex: 1;
flex: 1
}
@media (max-width:40.0525em) {
.govuk-footer__meta-item--grow {
- -webkit-flex-basis: 320px;
- -ms-flex-preferred-size: 320px;
flex-basis: 320px
}
}
@@ -3690,8 +3544,8 @@ screen and (forced-colors:active) {
}
@media only screen and (-webkit-min-device-pixel-ratio:2),
-only screen and (min-resolution:2dppx),
-only screen and (min-resolution:192dpi) {
+only screen and (min-resolution:192dpi),
+only screen and (min-resolution:2dppx) {
.govuk-footer__copyright-logo {
background-image: url(../images/govuk-crest-2x.png)
}
@@ -3746,21 +3600,15 @@ only screen and (min-resolution:192dpi) {
margin: 0;
padding: 0;
list-style: none;
- -webkit-column-gap: 30px;
column-gap: 30px
}
-.govuk-footer__list .govuk-footer__link:hover {
- text-decoration-thickness: auto
-}
-
@media (min-width:48.0625em) {
.govuk-footer__list--columns-2 {
- -webkit-column-count: 2;
column-count: 2
}
+
.govuk-footer__list--columns-3 {
- -webkit-column-count: 3;
column-count: 3
}
}
@@ -3784,9 +3632,8 @@ only screen and (min-resolution:192dpi) {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
+ font-size: .875rem;
+ line-height: 1;
border-bottom: 10px solid #fff;
color: #fff;
background: #0b0c0c
@@ -3800,16 +3647,15 @@ only screen and (min-resolution:192dpi) {
@media (min-width:40.0625em) {
.govuk-header {
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25
+ font-size: 1rem;
+ line-height: 1
}
}
@media print {
.govuk-header {
font-size: 14pt;
- line-height: 1.2
+ line-height: 1
}
}
@@ -3837,7 +3683,11 @@ only screen and (min-resolution:192dpi) {
.govuk-header__logotype {
display: inline-block;
- margin-right: 5px
+ position: relative;
+ top: -3px;
+ margin-right: 5px;
+ fill: currentcolor;
+ vertical-align: top
}
@media (forced-colors:active) {
@@ -3851,42 +3701,18 @@ only screen and (min-resolution:192dpi) {
margin-right: 0
}
-.govuk-header__logotype-crown {
- position: relative;
- top: -1px;
- margin-right: 1px;
- fill: currentColor;
- vertical-align: top
-}
-
-.govuk-header__logotype-crown-fallback-image {
- width: 36px;
- height: 32px;
- border: 0;
- vertical-align: bottom
-}
-
.govuk-header__product-name {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 18px;
- font-size: 1.125norem;
+ font-size: 1.125rem;
line-height: 1;
- display: inline-table
-}
-
-@media print {
- .govuk-header__product-name {
- font-family: sans-serif
- }
+ font-weight: 400;
+ display: inline-table;
+ margin-top: 10px;
+ vertical-align: top
}
@media (min-width:40.0625em) {
.govuk-header__product-name {
- font-size: 24px;
- font-size: 1.5norem;
+ font-size: 1.5rem;
line-height: 1
}
}
@@ -3898,19 +3724,28 @@ only screen and (min-resolution:192dpi) {
}
}
-.govuk-header__link {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- text-decoration: none
+@-moz-document url-prefix() {
+ .govuk-header__product-name {
+ margin-top: 9.5px
+ }
}
-@media print {
- .govuk-header__link {
- font-family: sans-serif
+@media (min-width:40.0625em) {
+ .govuk-header__product-name {
+ margin-top: 5px
+ }
+
+ @-moz-document url-prefix() {
+ .govuk-header__product-name {
+ margin-top: 4.5px
+ }
}
}
+.govuk-header__link {
+ text-decoration: none
+}
+
.govuk-header__link:link,
.govuk-header__link:visited {
color: #fff
@@ -3924,31 +3759,32 @@ only screen and (min-resolution:192dpi) {
.govuk-header__link:hover {
text-decoration: underline;
text-decoration-thickness: 3px;
- text-underline-offset: .1em
+ text-underline-offset: .1578em
}
.govuk-header__link:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
color: #0b0c0c;
background-color: #fd0;
box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.govuk-header__link--homepage {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
display: inline-block;
margin-right: 10px;
- font-size: 30px;
- line-height: 1
+ font-size: 30px
}
-@media print {
+@media (min-width:48.0625em) {
.govuk-header__link--homepage {
- font-family: sans-serif
+ display: inline
+ }
+
+ .govuk-header__link--homepage:focus {
+ box-shadow: 0 0 #fd0
}
}
@@ -3968,34 +3804,23 @@ only screen and (min-resolution:192dpi) {
border-bottom: 0
}
-.govuk-header__link--service-name {
+.govuk-header__service-name {
display: inline-block;
margin-bottom: 10px;
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111
-}
-
-@media print {
- .govuk-header__link--service-name {
- font-family: sans-serif
- }
+ font-size: 1.125rem;
+ line-height: 1.1111111111;
+ font-weight: 700
}
@media (min-width:40.0625em) {
- .govuk-header__link--service-name {
- font-size: 24px;
- font-size: 1.5norem;
+ .govuk-header__service-name {
+ font-size: 1.5rem;
line-height: 1.25
}
}
@media print {
- .govuk-header__link--service-name {
+ .govuk-header__service-name {
font-size: 18pt;
line-height: 1.15
}
@@ -4008,13 +3833,7 @@ only screen and (min-resolution:192dpi) {
.govuk-header__logo {
margin-bottom: 10px;
- padding-right: 50px
-}
-
-@media (min-width:40.0625em) {
- .govuk-header__logo {
- margin-bottom: 10px
- }
+ padding-right: 80px
}
@media (min-width:48.0625em) {
@@ -4024,9 +3843,13 @@ only screen and (min-resolution:192dpi) {
float: left;
vertical-align: top
}
-}
-@media (min-width:48.0625em) {
+ .govuk-header__logo:last-child {
+ width: auto;
+ padding-right: 0;
+ float: none
+ }
+
.govuk-header__content {
width: 66.66%;
padding-left: 15px;
@@ -4039,18 +3862,19 @@ only screen and (min-resolution:192dpi) {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
- display: none;
+ font-size: .875rem;
+ line-height: 1.1428571429;
position: absolute;
- top: 20px;
+ top: 13px;
right: 0;
+ max-width: 80px;
+ min-height: 24px;
margin: 0;
padding: 0;
border: 0;
color: #fff;
background: none;
+ word-break: break-all;
cursor: pointer
}
@@ -4062,8 +3886,7 @@ only screen and (min-resolution:192dpi) {
@media (min-width:40.0625em) {
.govuk-header__menu-button {
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25
}
}
@@ -4078,15 +3901,17 @@ only screen and (min-resolution:192dpi) {
.govuk-header__menu-button:hover {
-webkit-text-decoration: solid underline 3px;
text-decoration: solid underline 3px;
- text-underline-offset: .1em
+ text-underline-offset: .1578em
}
.govuk-header__menu-button:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
color: #0b0c0c;
background-color: #fd0;
box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.govuk-header__menu-button:after {
@@ -4095,7 +3920,7 @@ only screen and (min-resolution:192dpi) {
height: 0;
-webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
clip-path: polygon(0 0, 50% 100%, 100% 0);
- border-color: rgba(0, 0, 0, 0);
+ border-color: transparent;
border-style: solid;
border-width: 8.66px 5px 0;
border-top-color: inherit;
@@ -4103,183 +3928,1347 @@ only screen and (min-resolution:192dpi) {
margin-left: 5px
}
-@media (min-width:40.0625em) {
- .govuk-header__menu-button {
- top: 15px
- }
-}
-
-.govuk-header__menu-button--open:after {
+.govuk-header__menu-button[aria-expanded=true]:after {
display: inline-block;
width: 0;
height: 0;
-webkit-clip-path: polygon(50% 0, 0 100%, 100% 100%);
clip-path: polygon(50% 0, 0 100%, 100% 100%);
- border-color: rgba(0, 0, 0, 0);
+ border-color: transparent;
border-style: solid;
border-width: 0 5px 8.66px;
border-bottom-color: inherit
}
-@media (min-width:48.0625em) {
- .govuk-header__navigation {
- margin-bottom: 10px
+@media (min-width:40.0625em) {
+ .govuk-header__menu-button {
+ top: 15px
}
}
-.govuk-header__navigation-list {
- margin: 0;
- padding: 0;
- list-style: none
+.govuk-frontend-supported .govuk-header__menu-button {
+ display: block
}
-.js-enabled .govuk-header__menu-button {
- display: block
+.govuk-frontend-supported .govuk-header__menu-button[hidden],
+.govuk-header__menu-button[hidden] {
+ display: none
}
@media (min-width:48.0625em) {
- .js-enabled .govuk-header__menu-button {
- display: none
+ .govuk-header__navigation {
+ margin-bottom: 10px
}
}
-.js-enabled .govuk-header__navigation-list {
+.govuk-header__navigation-list {
+ margin: 0;
+ padding: 0;
+ list-style: none
+}
+
+.govuk-header__navigation-list[hidden] {
display: none
}
@media (min-width:48.0625em) {
- .js-enabled .govuk-header__navigation-list {
- display: block
+ .govuk-header__navigation--end {
+ margin: 0;
+ padding: 5px 0;
+ text-align: right
}
}
-.js-enabled .govuk-header__navigation-list--open {
- display: block
+.govuk-header__navigation-item {
+ padding: 10px 0;
+ border-bottom: 1px solid #2e3133
}
@media (min-width:48.0625em) {
- .govuk-header__navigation--end {
- margin: 0;
+ .govuk-header__navigation-item {
+ display: inline-block;
+ margin-right: 15px;
padding: 5px 0;
- text-align: right
+ border: 0
+ }
+}
+
+.govuk-header__navigation-item a {
+ font-size: .875rem;
+ line-height: 1.1428571429;
+ font-weight: 700;
+ white-space: nowrap
+}
+
+@media (min-width:40.0625em) {
+ .govuk-header__navigation-item a {
+ font-size: 1rem;
+ line-height: 1.25
}
}
-.govuk-header__navigation--no-service-name {
- padding-top: 40px
+@media print {
+ .govuk-header__navigation-item a {
+ font-size: 14pt;
+ line-height: 1.2
+ }
}
-.govuk-header__navigation-item {
- padding: 10px 0;
- border-bottom: 1px solid #2e3133
+.govuk-header__navigation-item--active a:hover,
+.govuk-header__navigation-item--active a:link,
+.govuk-header__navigation-item--active a:visited {
+ color: #1d8feb
+}
+
+@media print {
+ .govuk-header__navigation-item--active a {
+ color: #1d70b8
+ }
+}
+
+.govuk-header__navigation-item--active a:focus {
+ color: #0b0c0c
+}
+
+.govuk-header__navigation-item:last-child {
+ margin-right: 0;
+ border-bottom: 0
+}
+
+@media print {
+ .govuk-header {
+ border-bottom-width: 0;
+ color: #0b0c0c;
+ background: transparent
+ }
+
+ .govuk-header__link:link,
+ .govuk-header__link:visited {
+ color: #0b0c0c
+ }
+
+ .govuk-header__link:after {
+ display: none
+ }
+}
+
+.govuk-inset-text {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ color: #0b0c0c;
+ padding: 15px;
+ margin-top: 20px;
+ margin-bottom: 20px;
+ clear: both;
+ border-left: 10px solid #b1b4b6
+}
+
+@media print {
+ .govuk-inset-text {
+ font-family: sans-serif
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-inset-text {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
+ }
+}
+
+@media print {
+ .govuk-inset-text {
+ font-size: 14pt;
+ line-height: 1.15;
+ color: #000
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-inset-text {
+ margin-top: 30px;
+ margin-bottom: 30px
+ }
+}
+
+.govuk-inset-text>:first-child {
+ margin-top: 0
+}
+
+.govuk-inset-text>:last-child,
+.govuk-inset-text>:only-child {
+ margin-bottom: 0
+}
+
+.govuk-notification-banner {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ margin-bottom: 30px;
+ border: 5px solid #1d70b8;
+ background-color: #1d70b8
+}
+
+@media print {
+ .govuk-notification-banner {
+ font-family: sans-serif
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-notification-banner {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
+ }
+}
+
+@media print {
+ .govuk-notification-banner {
+ font-size: 14pt;
+ line-height: 1.15
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-notification-banner {
+ margin-bottom: 50px
+ }
+}
+
+.govuk-notification-banner:focus {
+ outline: 3px solid #fd0
+}
+
+.govuk-notification-banner__header {
+ padding: 2px 15px 5px;
+ border-bottom: 1px solid transparent
+}
+
+@media (min-width:40.0625em) {
+ .govuk-notification-banner__header {
+ padding: 2px 20px 5px
+ }
+}
+
+.govuk-notification-banner__title {
+ font-size: 1rem;
+ line-height: 1.25;
+ font-weight: 700;
+ margin: 0;
+ padding: 0;
+ color: #fff
+}
+
+@media (min-width:40.0625em) {
+ .govuk-notification-banner__title {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
+ }
+}
+
+@media print {
+ .govuk-notification-banner__title {
+ font-size: 14pt;
+ line-height: 1.15
+ }
+}
+
+.govuk-notification-banner__content {
+ color: #0b0c0c;
+ padding: 15px;
+ background-color: #fff
+}
+
+@media print {
+ .govuk-notification-banner__content {
+ color: #000
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-notification-banner__content {
+ padding: 20px
+ }
+}
+
+.govuk-notification-banner__content>* {
+ box-sizing: border-box;
+ max-width: 605px
+}
+
+.govuk-notification-banner__content>:last-child {
+ margin-bottom: 0
+}
+
+.govuk-notification-banner__heading {
+ font-size: 1.125rem;
+ line-height: 1.1111111111;
+ font-weight: 700;
+ margin: 0 0 15px;
+ padding: 0
+}
+
+@media (min-width:40.0625em) {
+ .govuk-notification-banner__heading {
+ font-size: 1.5rem;
+ line-height: 1.25
+ }
+}
+
+@media print {
+ .govuk-notification-banner__heading {
+ font-size: 18pt;
+ line-height: 1.15
+ }
+}
+
+.govuk-notification-banner__link {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em
+}
+
+@media print {
+ .govuk-notification-banner__link {
+ font-family: sans-serif
+ }
+}
+
+.govuk-notification-banner__link:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
+}
+
+.govuk-notification-banner__link:focus {
+ outline: 3px solid transparent;
+ background-color: #fd0;
+ box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
+}
+
+.govuk-notification-banner__link:link,
+.govuk-notification-banner__link:visited {
+ color: #1d70b8
+}
+
+.govuk-notification-banner__link:hover {
+ color: #003078
+}
+
+.govuk-notification-banner__link:active,
+.govuk-notification-banner__link:focus {
+ color: #0b0c0c
+}
+
+.govuk-notification-banner--success {
+ border-color: #00703c;
+ background-color: #00703c
+}
+
+.govuk-notification-banner--success .govuk-notification-banner__link:link,
+.govuk-notification-banner--success .govuk-notification-banner__link:visited {
+ color: #00703c
+}
+
+.govuk-notification-banner--success .govuk-notification-banner__link:hover {
+ color: #004e2a
+}
+
+.govuk-notification-banner--success .govuk-notification-banner__link:active {
+ color: #00703c
+}
+
+.govuk-notification-banner--success .govuk-notification-banner__link:focus {
+ color: #0b0c0c
+}
+
+.govuk-pagination {
+ margin-bottom: 20px;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ flex-wrap: wrap
+}
+
+@media (min-width:40.0625em) {
+ .govuk-pagination {
+ margin-bottom: 30px;
+ flex-direction: row;
+ align-items: flex-start
+ }
+}
+
+.govuk-pagination__list {
+ margin: 0;
+ padding: 0;
+ list-style: none
+}
+
+.govuk-pagination__item,
+.govuk-pagination__next,
+.govuk-pagination__prev {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ box-sizing: border-box;
+ position: relative;
+ min-width: 45px;
+ min-height: 45px;
+ padding: 10px 15px;
+ float: left
+}
+
+@media print {
+
+ .govuk-pagination__item,
+ .govuk-pagination__next,
+ .govuk-pagination__prev {
+ font-family: sans-serif
+ }
+}
+
+@media (min-width:40.0625em) {
+
+ .govuk-pagination__item,
+ .govuk-pagination__next,
+ .govuk-pagination__prev {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
+ }
+}
+
+@media print {
+
+ .govuk-pagination__item,
+ .govuk-pagination__next,
+ .govuk-pagination__prev {
+ font-size: 14pt;
+ line-height: 1.15
+ }
+}
+
+.govuk-pagination__item:hover,
+.govuk-pagination__next:hover,
+.govuk-pagination__prev:hover {
+ background-color: #f3f2f1
+}
+
+.govuk-pagination__item {
+ display: none;
+ text-align: center
+}
+
+@media (min-width:40.0625em) {
+ .govuk-pagination__item {
+ display: block
+ }
+}
+
+.govuk-pagination__next,
+.govuk-pagination__prev {
+ font-weight: 700
+}
+
+.govuk-pagination__next .govuk-pagination__link,
+.govuk-pagination__prev .govuk-pagination__link {
+ display: flex;
+ align-items: center
+}
+
+.govuk-pagination__prev {
+ padding-left: 0
+}
+
+.govuk-pagination__next {
+ padding-right: 0
+}
+
+.govuk-pagination__item--current,
+.govuk-pagination__item--ellipses,
+.govuk-pagination__item:first-child,
+.govuk-pagination__item:last-child {
+ display: block
+}
+
+.govuk-pagination__item--current {
+ font-weight: 700;
+ outline: 1px solid transparent;
+ background-color: #1d70b8
+}
+
+.govuk-pagination__item--current:hover {
+ background-color: #1d70b8
+}
+
+.govuk-pagination__item--current .govuk-pagination__link:link,
+.govuk-pagination__item--current .govuk-pagination__link:visited {
+ color: #fff
+}
+
+.govuk-pagination__item--current .govuk-pagination__link:active,
+.govuk-pagination__item--current .govuk-pagination__link:hover {
+ color: hsla(0, 0%, 100%, .99)
+}
+
+.govuk-pagination__item--current .govuk-pagination__link:focus {
+ color: #0b0c0c
+}
+
+.govuk-pagination__item--ellipses {
+ font-weight: 700;
+ color: #505a5f
+}
+
+.govuk-pagination__item--ellipses:hover {
+ background-color: transparent
+}
+
+.govuk-pagination__link {
+ display: block;
+ min-width: 15px
+}
+
+@media screen {
+ .govuk-pagination__link:after {
+ content: "";
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0
+ }
+}
+
+.govuk-pagination__link:active .govuk-pagination__link-title--decorated,
+.govuk-pagination__link:hover .govuk-pagination__link-title--decorated {
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em
+}
+
+.govuk-pagination__link:active .govuk-pagination__link-label,
+.govuk-pagination__link:active .govuk-pagination__link-title--decorated,
+.govuk-pagination__link:hover .govuk-pagination__link-label,
+.govuk-pagination__link:hover .govuk-pagination__link-title--decorated {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
+}
+
+.govuk-pagination__link:focus .govuk-pagination__icon {
+ color: #0b0c0c
+}
+
+.govuk-pagination__link:focus .govuk-pagination__link-label,
+.govuk-pagination__link:focus .govuk-pagination__link-title--decorated {
+ text-decoration: none
+}
+
+.govuk-pagination__link-label {
+ font-weight: 400;
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em;
+ display: inline-block;
+ padding-left: 30px
+}
+
+.govuk-pagination__icon {
+ width: .9375rem;
+ height: .8125rem;
+ color: #505a5f;
+ fill: currentcolor;
+ forced-color-adjust: auto
+}
+
+.govuk-pagination__icon--prev {
+ margin-right: 15px
+}
+
+.govuk-pagination__icon--next {
+ margin-left: 15px
+}
+
+.govuk-pagination--block {
+ display: block
+}
+
+.govuk-pagination--block .govuk-pagination__item {
+ padding: 15px;
+ float: none
+}
+
+.govuk-pagination--block .govuk-pagination__next,
+.govuk-pagination--block .govuk-pagination__prev {
+ padding-left: 0;
+ float: none
+}
+
+.govuk-pagination--block .govuk-pagination__next {
+ padding-right: 15px
+}
+
+.govuk-pagination--block .govuk-pagination__next .govuk-pagination__icon {
+ margin-left: 0
+}
+
+.govuk-pagination--block .govuk-pagination__prev+.govuk-pagination__next {
+ border-top: 1px solid #b1b4b6
+}
+
+.govuk-pagination--block .govuk-pagination__link,
+.govuk-pagination--block .govuk-pagination__link-title {
+ display: inline
+}
+
+.govuk-pagination--block .govuk-pagination__link-title:after {
+ content: "";
+ display: block
+}
+
+.govuk-pagination--block .govuk-pagination__link {
+ text-align: left
+}
+
+.govuk-pagination--block .govuk-pagination__link:focus .govuk-pagination__link-label {
+ outline: 3px solid transparent;
+ color: #0b0c0c;
+ background-color: #fd0;
+ box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
+}
+
+.govuk-pagination--block .govuk-pagination__link:not(:focus) {
+ text-decoration: none
+}
+
+.govuk-pagination--block .govuk-pagination__icon {
+ margin-right: 10px
+}
+
+.govuk-panel {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1.5rem;
+ line-height: 1.0416666667;
+ box-sizing: border-box;
+ margin-bottom: 15px;
+ padding: 35px;
+ border: 5px solid transparent;
+ text-align: center
+}
+
+@media print {
+ .govuk-panel {
+ font-family: sans-serif
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-panel {
+ font-size: 2.25rem;
+ line-height: 1.1111111111
+ }
+}
+
+@media print {
+ .govuk-panel {
+ font-size: 24pt;
+ line-height: 1.05
+ }
+}
+
+@media (max-width:40.0525em) {
+ .govuk-panel {
+ padding: 10px;
+ overflow-wrap: break-word;
+ word-wrap: break-word
+ }
+}
+
+.govuk-panel--confirmation {
+ color: #fff;
+ background: #00703c
+}
+
+@media print {
+ .govuk-panel--confirmation {
+ border-color: currentcolor;
+ color: #000;
+ background: none
+ }
+}
+
+.govuk-panel__title {
+ font-size: 2rem;
+ line-height: 1.09375;
+ font-weight: 700;
+ margin-top: 0;
+ margin-bottom: 30px
+}
+
+@media (min-width:40.0625em) {
+ .govuk-panel__title {
+ font-size: 3rem;
+ line-height: 1.0416666667
+ }
+}
+
+@media print {
+ .govuk-panel__title {
+ font-size: 32pt;
+ line-height: 1.15
+ }
+}
+
+.govuk-panel__title:last-child {
+ margin-bottom: 0
+}
+
+@media (min-width:20em) {
+ .govuk-password-input__wrapper {
+ flex-direction: row;
+ align-items: flex-start
+ }
+}
+
+.govuk-password-input__input::-ms-reveal {
+ display: none
+}
+
+.govuk-password-input__toggle {
+ margin-top: 5px;
+ margin-bottom: 0
+}
+
+.govuk-password-input__toggle[hidden] {
+ display: none
+}
+
+@media (min-width:20em) {
+ .govuk-password-input__toggle {
+ width: auto;
+ flex-shrink: 0;
+ flex-basis: 5em;
+ margin-top: 0;
+ margin-left: 5px
+ }
+}
+
+.govuk-tag {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ display: inline-block;
+ max-width: 160px;
+ margin-top: -2px;
+ margin-bottom: -3px;
+ padding: 2px 8px 3px;
+ color: #0c2d4a;
+ background-color: #bbd4ea;
+ text-decoration: none;
+ overflow-wrap: break-word
+}
+
+@media print {
+ .govuk-tag {
+ font-family: sans-serif
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-tag {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
+ }
+}
+
+@media print {
+ .govuk-tag {
+ font-size: 14pt;
+ line-height: 1.15
+ }
+}
+
+@media screen and (forced-colors:active) {
+ .govuk-tag {
+ font-weight: 700
+ }
+}
+
+.govuk-tag--grey {
+ color: #282d30;
+ background-color: #e5e6e7
+}
+
+.govuk-tag--purple {
+ color: #491644;
+ background-color: #efdfed
+}
+
+.govuk-tag--turquoise {
+ color: #10403c;
+ background-color: #d4ecea
+}
+
+.govuk-tag--blue {
+ color: #0c2d4a;
+ background-color: #bbd4ea
+}
+
+.govuk-tag--light-blue {
+ color: #0c2d4a;
+ background-color: #e8f1f8
+}
+
+.govuk-tag--yellow {
+ color: #594d00;
+ background-color: #fff7bf
+}
+
+.govuk-tag--orange {
+ color: #6e3619;
+ background-color: #fcd6c3
+}
+
+.govuk-tag--red {
+ color: #2a0b06;
+ background-color: #f4cdc6
+}
+
+.govuk-tag--pink {
+ color: #6b1c40;
+ background-color: #f9e1ec
+}
+
+.govuk-tag--green {
+ color: #005a30;
+ background-color: #cce2d8
+}
+
+.govuk-phase-banner {
+ padding-top: 10px;
+ padding-bottom: 10px;
+ border-bottom: 1px solid #b1b4b6
+}
+
+.govuk-phase-banner__content {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: .875rem;
+ line-height: 1.1428571429;
+ color: #0b0c0c;
+ display: table;
+ margin: 0
+}
+
+@media print {
+ .govuk-phase-banner__content {
+ font-family: sans-serif
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-phase-banner__content {
+ font-size: 1rem;
+ line-height: 1.25
+ }
+}
+
+@media print {
+ .govuk-phase-banner__content {
+ font-size: 14pt;
+ line-height: 1.2;
+ color: #000
+ }
+}
+
+.govuk-phase-banner__content__tag {
+ font-size: .875rem;
+ line-height: 1.1428571429;
+ margin-right: 10px
+}
+
+@media (min-width:40.0625em) {
+ .govuk-phase-banner__content__tag {
+ font-size: 1rem;
+ line-height: 1.25
+ }
+}
+
+@media print {
+ .govuk-phase-banner__content__tag {
+ font-size: 14pt;
+ line-height: 1.2
+ }
+}
+
+@media screen and (forced-colors:active) {
+ .govuk-phase-banner__content__tag {
+ font-weight: 700
+ }
+}
+
+.govuk-phase-banner__text {
+ display: table-cell;
+ vertical-align: middle
+}
+
+.govuk-radios__item {
+ display: flex;
+ flex-wrap: wrap;
+ position: relative;
+ margin-bottom: 10px
+}
+
+.govuk-radios__item:last-child,
+.govuk-radios__item:last-of-type {
+ margin-bottom: 0
+}
+
+.govuk-radios__input {
+ z-index: 1;
+ width: 44px;
+ height: 44px;
+ margin: 0;
+ opacity: 0;
+ vertical-align: middle;
+ cursor: pointer
+}
+
+.govuk-radios__label {
+ align-self: center;
+ max-width: calc(100% - 74px);
+ display: inline-block;
+ padding: 7px 15px;
+ cursor: pointer;
+ touch-action: manipulation
+}
+
+.govuk-radios__label:before {
+ content: "";
+ box-sizing: border-box;
+ position: absolute;
+ top: 2px;
+ left: 2px;
+ width: 40px;
+ height: 40px;
+ border: 2px solid;
+ border-radius: 50%;
+ background: transparent
+}
+
+.govuk-radios__label:after {
+ content: "";
+ position: absolute;
+ top: 12px;
+ left: 12px;
+ width: 0;
+ height: 0;
+ border: 10px solid;
+ border-radius: 50%;
+ opacity: 0;
+ background: currentcolor
+}
+
+.govuk-radios__hint {
+ display: block;
+ width: 100%;
+ margin-top: -5px;
+ padding-right: 15px;
+ padding-left: 59px
+}
+
+.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl)+.govuk-radios__hint {
+ margin-bottom: 0
+}
+
+.govuk-radios__input:focus+.govuk-radios__label:before {
+ border-width: 4px;
+ outline: 3px solid transparent;
+ outline-offset: 1px;
+ box-shadow: 0 0 0 4px #fd0
+}
+
+@media (-ms-high-contrast:active),
+screen and (forced-colors:active) {
+ .govuk-radios__input:focus+.govuk-radios__label:before {
+ outline-color: Highlight
+ }
+}
+
+.govuk-radios__input:checked+.govuk-radios__label:after {
+ opacity: 1
+}
+
+.govuk-radios__input:disabled,
+.govuk-radios__input:disabled+.govuk-radios__label {
+ cursor: not-allowed
+}
+
+.govuk-radios__input:disabled+.govuk-radios__label,
+.govuk-radios__input:disabled~.govuk-hint {
+ opacity: .5
+}
+
+@media (min-width:40.0625em) {
+ .govuk-radios--inline {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: flex-start
+ }
+
+ .govuk-radios--inline .govuk-radios__item {
+ margin-right: 20px
+ }
+}
+
+.govuk-radios__divider {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ color: #0b0c0c;
+ width: 40px;
+ margin-bottom: 10px;
+ text-align: center
+}
+
+@media print {
+ .govuk-radios__divider {
+ font-family: sans-serif
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-radios__divider {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
+ }
+}
+
+@media print {
+ .govuk-radios__divider {
+ font-size: 14pt;
+ line-height: 1.15;
+ color: #000
+ }
+}
+
+.govuk-radios__conditional {
+ margin-bottom: 15px;
+ margin-left: 18px;
+ padding-left: 33px;
+ border-left: 4px solid #b1b4b6
+}
+
+@media (min-width:40.0625em) {
+ .govuk-radios__conditional {
+ margin-bottom: 20px
+ }
+}
+
+.govuk-frontend-supported .govuk-radios__conditional--hidden {
+ display: none
+}
+
+.govuk-radios--small .govuk-radios__item,
+.govuk-radios__conditional>:last-child {
+ margin-bottom: 0
+}
+
+.govuk-radios--small .govuk-radios__input {
+ margin-left: -10px
+}
+
+.govuk-radios--small .govuk-radios__label {
+ padding-left: 1px
+}
+
+.govuk-radios--small .govuk-radios__label:before {
+ top: 10px;
+ left: 0;
+ width: 24px;
+ height: 24px
+}
+
+.govuk-radios--small .govuk-radios__label:after {
+ top: 17px;
+ left: 7px;
+ border-width: 5px
+}
+
+.govuk-radios--small .govuk-radios__hint {
+ padding-left: 34px
+}
+
+.govuk-radios--small .govuk-radios__conditional {
+ margin-left: 10px;
+ padding-left: 20px
+}
+
+.govuk-radios--small .govuk-radios__divider {
+ width: 24px;
+ margin-bottom: 5px
+}
+
+.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled)+.govuk-radios__label:before {
+ outline: 4px dashed transparent;
+ outline-offset: 1px;
+ box-shadow: 0 0 0 10px #b1b4b6
+}
+
+.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before {
+ box-shadow: 0 0 0 4px 0 0 0 10px #fd0 #b1b4b6
+}
+
+@media (-ms-high-contrast:active),
+screen and (forced-colors:active) {
+ .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before {
+ outline-color: Highlight
+ }
+}
+
+@media (hover:none),
+(pointer:coarse) {
+ .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled)+.govuk-radios__label:before {
+ box-shadow: none
+ }
+
+ .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before {
+ box-shadow: 0 0 0 4px #fd0
+ }
+}
+
+.govuk-select {
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ box-sizing: border-box;
+ min-width: 11.5em;
+ max-width: 100%;
+ height: 2.5rem;
+ padding: 5px;
+ border: 2px solid #0b0c0c;
+ color: #0b0c0c;
+ background-color: #fff
+}
+
+@media print {
+ .govuk-select {
+ font-family: sans-serif
+ }
+}
+
+@media (min-width:40.0625em) {
+ .govuk-select {
+ font-size: 1.1875rem;
+ line-height: 1.25
+ }
+}
+
+@media print {
+ .govuk-select {
+ font-size: 14pt;
+ line-height: 1.25
+ }
+}
+
+.govuk-select:focus {
+ outline: 3px solid #fd0;
+ outline-offset: 0;
+ box-shadow: inset 0 0 0 2px
+}
+
+.govuk-select:disabled {
+ opacity: .5;
+ color: inherit;
+ cursor: not-allowed
+}
+
+.govuk-select option:active,
+.govuk-select option:checked,
+.govuk-select:focus::-ms-value {
+ color: #fff;
+ background-color: #1d70b8
+}
+
+.govuk-select--error {
+ border-color: #d4351c
+}
+
+.govuk-select--error:focus {
+ border-color: #0b0c0c
+}
+
+.govuk-skip-link {
+ position: absolute !important;
+ width: 1px !important;
+ height: 1px !important;
+ margin: 0 !important;
+ overflow: hidden !important;
+ clip: rect(0 0 0 0) !important;
+ -webkit-clip-path: inset(50%) !important;
+ clip-path: inset(50%) !important;
+ white-space: nowrap !important;
+ -webkit-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em;
+ font-size: .875rem;
+ line-height: 1.1428571429;
+ display: block;
+ padding: 10px 15px
+}
+
+.govuk-skip-link:active,
+.govuk-skip-link:focus {
+ position: static !important;
+ width: auto !important;
+ height: auto !important;
+ margin: inherit !important;
+ overflow: visible !important;
+ clip: auto !important;
+ -webkit-clip-path: none !important;
+ clip-path: none !important;
+ white-space: inherit !important;
+ -webkit-user-select: text;
+ -ms-user-select: text;
+ user-select: text
+}
+
+@media print {
+ .govuk-skip-link {
+ font-family: sans-serif
+ }
+}
+
+.govuk-skip-link:link,
+.govuk-skip-link:visited {
+ color: #0b0c0c
}
-@media (min-width:48.0625em) {
- .govuk-header__navigation-item {
- display: inline-block;
- margin-right: 15px;
- padding: 5px 0;
- border: 0
+@media print {
+
+ .govuk-skip-link:link,
+ .govuk-skip-link:visited {
+ color: #000
}
}
-.govuk-header__navigation-item a {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
- white-space: nowrap
+.govuk-skip-link:hover {
+ color: rgba(11, 12, 12, .99)
+}
+
+.govuk-skip-link:active,
+.govuk-skip-link:focus {
+ color: #0b0c0c
}
@media print {
- .govuk-header__navigation-item a {
- font-family: sans-serif
+
+ .govuk-skip-link:active,
+ .govuk-skip-link:focus {
+ color: #000
}
}
@media (min-width:40.0625em) {
- .govuk-header__navigation-item a {
- font-size: 16px;
- font-size: 1norem;
+ .govuk-skip-link {
+ font-size: 1rem;
line-height: 1.25
}
}
@media print {
- .govuk-header__navigation-item a {
+ .govuk-skip-link {
font-size: 14pt;
line-height: 1.2
}
}
-.govuk-header__navigation-item--active a:hover,
-.govuk-header__navigation-item--active a:link,
-.govuk-header__navigation-item--active a:visited {
- color: #1d8feb
-}
-
-.govuk-header__navigation-item--active a:focus {
- color: #0b0c0c
+@supports (padding:max(calc(0px))) {
+ .govuk-skip-link {
+ padding-right: max(15px, calc(15px + env(safe-area-inset-right)));
+ padding-left: max(15px, calc(15px + env(safe-area-inset-left)))
+ }
}
-.govuk-header__navigation-item:last-child {
- margin-right: 0;
- border-bottom: 0
+.govuk-skip-link:focus {
+ outline: 3px solid #fd0;
+ outline-offset: 0;
+ background-color: #fd0
}
-@media print {
- .govuk-header {
- border-bottom-width: 0;
- color: #0b0c0c;
- background: rgba(0, 0, 0, 0)
- }
- .govuk-header__logotype-crown-fallback-image {
- display: none
- }
- .govuk-header__link:link,
- .govuk-header__link:visited {
- color: #0b0c0c
- }
- .govuk-header__link:after {
- display: none
- }
+.govuk-skip-link-focused-element:focus {
+ outline: none
}
-.govuk-inset-text {
+.govuk-summary-list {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
color: #0b0c0c;
- padding: 15px;
- margin-top: 20px;
- margin-bottom: 20px;
- clear: both;
- border-left: 10px solid #b1b4b6
+ margin: 0 0 20px
}
@media print {
- .govuk-inset-text {
+ .govuk-summary-list {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-inset-text {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-summary-list {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-inset-text {
+ .govuk-summary-list {
font-size: 14pt;
line-height: 1.15;
color: #000
@@ -4287,521 +5276,515 @@ only screen and (min-resolution:192dpi) {
}
@media (min-width:40.0625em) {
- .govuk-inset-text {
- margin-top: 30px;
+ .govuk-summary-list {
+ display: table;
+ width: 100%;
+ table-layout: fixed;
+ border-collapse: collapse;
margin-bottom: 30px
}
}
-.govuk-inset-text>:first-child {
- margin-top: 0
-}
-
-.govuk-inset-text>:last-child,
-.govuk-inset-text>:only-child {
- margin-bottom: 0
-}
-
-.govuk-notification-banner {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- margin-bottom: 30px;
- border: 5px solid #1d70b8;
- background-color: #1d70b8
+.govuk-summary-list__row {
+ border-bottom: 1px solid #b1b4b6
}
-@media print {
- .govuk-notification-banner {
- font-family: sans-serif
+@media (max-width:40.0525em) {
+ .govuk-summary-list__row {
+ margin-bottom: 15px
}
}
@media (min-width:40.0625em) {
- .govuk-notification-banner {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-summary-list__row {
+ display: table-row
}
}
-@media print {
- .govuk-notification-banner {
- font-size: 14pt;
- line-height: 1.15
- }
+.govuk-summary-list__row:not(.govuk-summary-list__row--no-actions)>:last-child {
+ padding-right: 0
}
@media (min-width:40.0625em) {
- .govuk-notification-banner {
- margin-bottom: 50px
+ .govuk-summary-list__row--no-actions:after {
+ content: "";
+ display: table-cell;
+ width: 20%
}
}
-.govuk-notification-banner:focus {
- outline: 3px solid #fd0
-}
-
-.govuk-notification-banner__header {
- padding: 2px 15px 5px;
- border-bottom: 1px solid rgba(0, 0, 0, 0)
+.govuk-summary-list__actions,
+.govuk-summary-list__key,
+.govuk-summary-list__value {
+ margin: 0
}
@media (min-width:40.0625em) {
- .govuk-notification-banner__header {
- padding: 2px 20px 5px
- }
-}
-.govuk-notification-banner__title {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- margin: 0;
- padding: 0;
- color: #fff
+ .govuk-summary-list__actions,
+ .govuk-summary-list__key,
+ .govuk-summary-list__value {
+ display: table-cell;
+ padding-top: 10px;
+ padding-right: 20px;
+ padding-bottom: 10px
+ }
}
-@media print {
- .govuk-notification-banner__title {
- font-family: sans-serif
- }
+.govuk-summary-list__actions {
+ margin-bottom: 15px
}
@media (min-width:40.0625em) {
- .govuk-notification-banner__title {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-summary-list__actions {
+ width: 20%;
+ text-align: right
}
}
-@media print {
- .govuk-notification-banner__title {
- font-size: 14pt;
- line-height: 1.15
- }
+.govuk-summary-list__key,
+.govuk-summary-list__value {
+ word-wrap: break-word;
+ overflow-wrap: break-word
}
-.govuk-notification-banner__content {
- color: #0b0c0c;
- padding: 15px;
- background-color: #fff
+.govuk-summary-list__key {
+ margin-bottom: 5px;
+ font-weight: 700
}
-@media print {
- .govuk-notification-banner__content {
- color: #000
+@media (min-width:40.0625em) {
+ .govuk-summary-list__key {
+ width: 30%
}
}
-@media (min-width:40.0625em) {
- .govuk-notification-banner__content {
- padding: 20px
+@media (max-width:40.0525em) {
+ .govuk-summary-list__value {
+ margin-bottom: 15px
}
}
-.govuk-notification-banner__content>* {
- box-sizing: border-box;
- max-width: 605px
+.govuk-summary-list__value>p {
+ margin-bottom: 10px
}
-.govuk-notification-banner__content>:last-child {
+.govuk-summary-list__value>:last-child {
margin-bottom: 0
}
-.govuk-notification-banner__heading {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
- margin: 0 0 15px;
+.govuk-summary-list__actions-list {
+ width: 100%;
+ margin: 0;
padding: 0
}
-@media print {
- .govuk-notification-banner__heading {
- font-family: sans-serif
- }
+.govuk-summary-list__actions-list-item {
+ display: inline-block
}
-@media (min-width:40.0625em) {
- .govuk-notification-banner__heading {
- font-size: 24px;
- font-size: 1.5norem;
- line-height: 1.25
+@media (max-width:40.0525em) {
+ .govuk-summary-list__actions-list-item {
+ margin-right: 10px;
+ padding-right: 10px;
+ border-right: 1px solid #b1b4b6
}
-}
-@media print {
- .govuk-notification-banner__heading {
- font-size: 18pt;
- line-height: 1.15
+ .govuk-summary-list__actions-list-item:last-child {
+ margin-right: 0;
+ padding-right: 0;
+ border: 0
}
}
-.govuk-notification-banner__link {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- text-decoration: underline
-}
+@media (min-width:40.0625em) {
+ .govuk-summary-list__actions-list-item {
+ margin-left: 10px;
+ padding-left: 10px
+ }
-@media print {
- .govuk-notification-banner__link {
- font-family: sans-serif
+ .govuk-summary-list__actions-list-item:not(:first-child) {
+ border-left: 1px solid #b1b4b6
}
-}
-.govuk-notification-banner__link:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
- background-color: #fd0;
- box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ .govuk-summary-list__actions-list-item:first-child {
+ margin-left: 0;
+ padding-left: 0;
+ border: 0
+ }
+}
+
+.govuk-summary-list__actions-list-item .govuk-link:focus {
+ isolation: isolate
}
-.govuk-notification-banner__link:link,
-.govuk-notification-banner__link:visited {
- color: #1d70b8
+.govuk-summary-list--no-border .govuk-summary-list__row {
+ border: 0
}
-.govuk-notification-banner__link:hover {
- color: #003078
+@media (min-width:40.0625em) {
+
+ .govuk-summary-list--no-border .govuk-summary-list__actions,
+ .govuk-summary-list--no-border .govuk-summary-list__key,
+ .govuk-summary-list--no-border .govuk-summary-list__value {
+ padding-bottom: 11px
+ }
}
-.govuk-notification-banner__link:active,
-.govuk-notification-banner__link:focus {
- color: #0b0c0c
+.govuk-summary-list__row--no-border {
+ border: 0
}
-.govuk-notification-banner--success {
- border-color: #00703c;
- background-color: #00703c
+@media (min-width:40.0625em) {
+
+ .govuk-summary-list__row--no-border .govuk-summary-list__actions,
+ .govuk-summary-list__row--no-border .govuk-summary-list__key,
+ .govuk-summary-list__row--no-border .govuk-summary-list__value {
+ padding-bottom: 11px
+ }
}
-.govuk-notification-banner--success .govuk-notification-banner__link:link,
-.govuk-notification-banner--success .govuk-notification-banner__link:visited {
- color: #00703c
+.govuk-summary-card {
+ margin-bottom: 20px;
+ border: 1px solid #b1b4b6
}
-.govuk-notification-banner--success .govuk-notification-banner__link:hover {
- color: #004e2a
+@media (min-width:40.0625em) {
+ .govuk-summary-card {
+ margin-bottom: 30px
+ }
}
-.govuk-notification-banner--success .govuk-notification-banner__link:active {
- color: #00703c
+.govuk-summary-card__title-wrapper {
+ padding: 15px;
+ border-bottom: 1px solid transparent;
+ background-color: #f3f2f1
}
-.govuk-notification-banner--success .govuk-notification-banner__link:focus {
- color: #0b0c0c
+@media (min-width:40.0625em) {
+ .govuk-summary-card__title-wrapper {
+ display: flex;
+ justify-content: space-between;
+ flex-wrap: nowrap;
+ padding: 15px 20px
+ }
}
-.govuk-panel {
+.govuk-summary-card__title {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-weight: 700;
+ font-size: 1rem;
line-height: 1.25;
- box-sizing: border-box;
- margin-bottom: 15px;
- padding: 35px;
- border: 5px solid rgba(0, 0, 0, 0);
- text-align: center
+ color: #0b0c0c;
+ margin: 5px 20px 10px 0
}
@media print {
- .govuk-panel {
+ .govuk-summary-card__title {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-panel {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-summary-card__title {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-panel {
+ .govuk-summary-card__title {
font-size: 14pt;
- line-height: 1.15
+ line-height: 1.15;
+ color: #000
}
}
-@media (max-width:40.0525em) {
- .govuk-panel {
- padding: 10px;
- overflow-wrap: break-word;
- word-wrap: break-word
+@media (min-width:40.0625em) {
+ .govuk-summary-card__title {
+ margin-bottom: 5px
}
}
-.govuk-panel--confirmation {
- color: #fff;
- background: #00703c
+.govuk-summary-card__actions {
+ font-size: 1rem;
+ line-height: 1.25;
+ font-weight: 700;
+ display: flex;
+ flex-wrap: wrap;
+ row-gap: 10px;
+ margin: 5px 0;
+ padding: 0;
+ list-style: none
}
-@media print {
- .govuk-panel--confirmation {
- border-color: currentColor;
- color: #000;
- background: none
+@media (min-width:40.0625em) {
+ .govuk-summary-card__actions {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
-.govuk-panel__title {
- margin-top: 0;
- margin-bottom: 30px;
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 32px;
- font-size: 2norem;
- line-height: 1.09375
+@media print {
+ .govuk-summary-card__actions {
+ font-size: 14pt;
+ line-height: 1.15
+ }
}
-@media print {
- .govuk-panel__title {
- font-family: sans-serif
+@media (min-width:40.0625em) {
+ .govuk-summary-card__actions {
+ justify-content: right;
+ text-align: right
}
}
+.govuk-summary-card__action {
+ display: inline;
+ margin: 0 10px 0 0;
+ padding-right: 10px;
+ border-right: 1px solid #b1b4b6
+}
+
@media (min-width:40.0625em) {
- .govuk-panel__title {
- font-size: 48px;
- font-size: 3norem;
- line-height: 1.04167
+ .govuk-summary-card__action {
+ margin-right: 0
}
}
-@media print {
- .govuk-panel__title {
- font-size: 32pt;
- line-height: 1.15
+@media (-ms-high-contrast:none),
+screen and (-ms-high-contrast:active) {
+ .govuk-summary-card__action {
+ margin-bottom: 5px
}
}
-.govuk-panel__title:last-child {
- margin-bottom: 0
+.govuk-summary-card__action:last-child {
+ margin: 0;
+ padding-right: 0;
+ border-right: none
}
-.govuk-panel__body {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 24px;
- font-size: 1.5norem;
- line-height: 1.04167
+@media (min-width:40.0625em) {
+ .govuk-summary-card__action:last-child {
+ padding-left: 10px
+ }
}
-@media print {
- .govuk-panel__body {
- font-family: sans-serif
+@media (-ms-high-contrast:none),
+screen and (-ms-high-contrast:active) {
+ .govuk-summary-card__action:last-child {
+ margin-bottom: 0
}
}
+.govuk-summary-card__content {
+ padding: 15px 15px 0
+}
+
@media (min-width:40.0625em) {
- .govuk-panel__body {
- font-size: 36px;
- font-size: 2.25norem;
- line-height: 1.11111
+ .govuk-summary-card__content {
+ padding: 15px 20px
}
}
-@media print {
- .govuk-panel__body {
- font-size: 24pt;
- line-height: 1.05
- }
+.govuk-summary-card__content .govuk-summary-list {
+ margin-bottom: 0
}
-.govuk-tag {
- display: inline-block;
- outline: 2px solid rgba(0, 0, 0, 0);
- outline-offset: -2px;
- color: #fff;
- background-color: #1d70b8;
- letter-spacing: 1px;
- text-decoration: none;
- text-transform: uppercase;
+.govuk-summary-card__content .govuk-summary-list__row:last-of-type {
+ margin-bottom: 0;
+ border-bottom: none
+}
+
+.govuk-table {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1;
- padding: 5px 8px 4px
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25;
+ color: #0b0c0c;
+ width: 100%;
+ margin-bottom: 20px;
+ border-spacing: 0;
+ border-collapse: collapse
}
@media print {
- .govuk-tag {
+ .govuk-table {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-tag {
- font-size: 16px;
- font-size: 1norem;
- line-height: 1
+ .govuk-table {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-tag {
+ .govuk-table {
font-size: 14pt;
- line-height: 1
+ line-height: 1.15;
+ color: #000
}
}
-.govuk-tag--grey {
- color: #383f43;
- background: #eeefef
+@media (min-width:40.0625em) {
+ .govuk-table {
+ margin-bottom: 30px
+ }
}
-.govuk-tag--purple {
- color: #3d2375;
- background: #dbd5e9
+.govuk-table__header {
+ font-weight: 700
}
-.govuk-tag--turquoise {
- color: #10403c;
- background: #bfe3e0
+.govuk-table__cell,
+.govuk-table__header {
+ padding: 10px 20px 10px 0;
+ border-bottom: 1px solid #b1b4b6;
+ text-align: left;
+ vertical-align: top
}
-.govuk-tag--blue {
- color: #144e81;
- background: #d2e2f1
+.govuk-table__cell--numeric {
+ font-variant-numeric: tabular-nums
}
-.govuk-tag--yellow {
- color: #594d00;
- background: #fff7bf
+.govuk-table__cell--numeric,
+.govuk-table__header--numeric {
+ text-align: right
}
-.govuk-tag--orange {
- color: #6e3619;
- background: #fcd6c3
+.govuk-table__cell:last-child,
+.govuk-table__header:last-child {
+ padding-right: 0
}
-.govuk-tag--red {
- color: #942514;
- background: #f6d7d2
+.govuk-table__caption {
+ font-weight: 700;
+ display: table-caption;
+ text-align: left;
+ color: #000;
}
-.govuk-tag--pink {
- color: #80224d;
- background: #f7d7e6
+.govuk-table__caption--l,
+.govuk-table__caption--m,
+.govuk-table__caption--xl {
+ margin-bottom: 15px
}
-.govuk-tag--green {
- color: #005a30;
- background: #cce2d8
+.govuk-table__caption--xl {
+ font-size: 2rem;
+ line-height: 1.09375
}
-.govuk-phase-banner {
- padding-top: 10px;
- padding-bottom: 10px;
- border-bottom: 1px solid #b1b4b6
+@media (min-width:40.0625em) {
+ .govuk-table__caption--xl {
+ font-size: 3rem;
+ line-height: 1.0416666667
+ }
}
-.govuk-phase-banner__content {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
- color: #0b0c0c;
- display: table;
- margin: 0
+@media print {
+ .govuk-table__caption--xl {
+ font-size: 32pt;
+ line-height: 1.15
+ }
+}
+
+.govuk-table__caption--l {
+ font-size: 1.5rem;
+ line-height: 1.0416666667
+}
+
+@media (min-width:40.0625em) {
+ .govuk-table__caption--l {
+ font-size: 2.25rem;
+ line-height: 1.1111111111
+ }
}
@media print {
- .govuk-phase-banner__content {
- font-family: sans-serif
+ .govuk-table__caption--l {
+ font-size: 24pt;
+ line-height: 1.05
+ }
+}
+
+.govuk-table__caption--m {
+ font-size: 1.125rem;
+ line-height: 1.1111111111
+}
+
+@media (min-width:40.0625em) {
+ .govuk-table__caption--m {
+ font-size: 1.5rem;
+ line-height: 1.25
+ }
+}
+
+@media print {
+ .govuk-table__caption--m {
+ font-size: 18pt;
+ line-height: 1.15
}
}
+.govuk-tabs {
+ margin-top: 5px;
+ margin-bottom: 20px;
+ font-family: GDS Transport, arial, sans-serif;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ font-weight: 400;
+ font-size: 1rem;
+ line-height: 1.25
+}
+
@media (min-width:40.0625em) {
- .govuk-phase-banner__content {
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25
+ .govuk-tabs {
+ margin-bottom: 30px
}
}
@media print {
- .govuk-phase-banner__content {
- font-size: 14pt;
- line-height: 1.2;
- color: #000
+ .govuk-tabs {
+ font-family: sans-serif
}
}
-.govuk-phase-banner__content__tag {
- margin-right: 10px
-}
-
-.govuk-phase-banner__text {
- display: table-cell;
- vertical-align: middle
-}
-
-.govuk-tabs {
- margin-top: 5px;
- margin-bottom: 20px
+@media (min-width:40.0625em) {
+ .govuk-tabs {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
+ }
}
-@media (min-width:40.0625em) {
+@media print {
.govuk-tabs {
- margin-top: 5px;
- margin-bottom: 30px
+ font-size: 14pt;
+ line-height: 1.15
}
}
.govuk-tabs__title {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
+ font-weight: 400;
color: #0b0c0c;
margin-bottom: 10px
}
-@media print {
- .govuk-tabs__title {
- font-family: sans-serif
- }
-}
-
@media (min-width:40.0625em) {
.govuk-tabs__title {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@@ -4826,40 +5809,12 @@ only screen and (min-resolution:192dpi) {
}
.govuk-tabs__list-item {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
margin-left: 25px
}
-@media print {
- .govuk-tabs__list-item {
- font-family: sans-serif
- }
-}
-
-@media (min-width:40.0625em) {
- .govuk-tabs__list-item {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
- }
-}
-
-@media print {
- .govuk-tabs__list-item {
- font-size: 14pt;
- line-height: 1.15
- }
-}
-
.govuk-tabs__list-item:before {
color: #0b0c0c;
- content: "\2014 ";
+ content: "—";
margin-left: -25px;
padding-right: 5px
}
@@ -4875,6 +5830,8 @@ only screen and (min-resolution:192dpi) {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-decoration: underline;
+ text-decoration-thickness: max(1px, .0625rem);
+ text-underline-offset: .1578em;
display: inline-block;
margin-bottom: 10px
}
@@ -4885,11 +5842,21 @@ only screen and (min-resolution:192dpi) {
}
}
+.govuk-tabs__tab:hover {
+ text-decoration-thickness: max(3px, .1875rem, .12em);
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none;
+ -webkit-text-decoration-skip: none;
+ text-decoration-skip: none
+}
+
.govuk-tabs__tab:focus {
- outline: 3px solid rgba(0, 0, 0, 0);
+ outline: 3px solid transparent;
background-color: #fd0;
box-shadow: 0 -2px #fd0, 0 4px #0b0c0c;
- text-decoration: none
+ text-decoration: none;
+ -webkit-box-decoration-break: clone;
+ box-decoration-break: clone
}
.govuk-tabs__tab:link {
@@ -4917,22 +5884,23 @@ only screen and (min-resolution:192dpi) {
.govuk-tabs__panel {
margin-bottom: 50px
}
-}
-@media (min-width:40.0625em) {
- .js-enabled .govuk-tabs__list {
+ .govuk-frontend-supported .govuk-tabs__list {
margin-bottom: 0;
border-bottom: 1px solid #b1b4b6
}
- .js-enabled .govuk-tabs__list:after {
+
+ .govuk-frontend-supported .govuk-tabs__list:after {
content: "";
display: block;
clear: both
}
- .js-enabled .govuk-tabs__title {
+
+ .govuk-frontend-supported .govuk-tabs__title {
display: none
}
- .js-enabled .govuk-tabs__list-item {
+
+ .govuk-frontend-supported .govuk-tabs__list-item {
position: relative;
margin-right: 5px;
margin-bottom: 0;
@@ -4942,56 +5910,64 @@ only screen and (min-resolution:192dpi) {
background-color: #f3f2f1;
text-align: center
}
- .js-enabled .govuk-tabs__list-item:before {
+
+ .govuk-frontend-supported .govuk-tabs__list-item:before {
content: none
}
- .js-enabled .govuk-tabs__list-item--selected {
+
+ .govuk-frontend-supported .govuk-tabs__list-item--selected {
position: relative;
margin-top: -5px;
- margin-bottom: -1px;
+ margin-bottom: -2px;
padding: 14px 19px 16px;
border: 1px solid #b1b4b6;
- border-bottom: 0;
+ border-bottom: none;
background-color: #fff
}
- .js-enabled .govuk-tabs__list-item--selected .govuk-tabs__tab {
+
+ .govuk-frontend-supported .govuk-tabs__list-item--selected .govuk-tabs__tab {
text-decoration: none
}
- .js-enabled .govuk-tabs__tab {
+
+ .govuk-frontend-supported .govuk-tabs__tab {
margin-bottom: 0
}
- .js-enabled .govuk-tabs__tab:link,
- .js-enabled .govuk-tabs__tab:visited {
+
+ .govuk-frontend-supported .govuk-tabs__tab:link,
+ .govuk-frontend-supported .govuk-tabs__tab:visited {
color: #0b0c0c
}
}
@media print and (min-width:40.0625em) {
- .js-enabled .govuk-tabs__tab:link,
- .js-enabled .govuk-tabs__tab:visited {
+
+ .govuk-frontend-supported .govuk-tabs__tab:link,
+ .govuk-frontend-supported .govuk-tabs__tab:visited {
color: #000
}
}
@media (min-width:40.0625em) {
- .js-enabled .govuk-tabs__tab:hover {
+ .govuk-frontend-supported .govuk-tabs__tab:hover {
color: rgba(11, 12, 12, .99)
}
- .js-enabled .govuk-tabs__tab:active,
- .js-enabled .govuk-tabs__tab:focus {
+
+ .govuk-frontend-supported .govuk-tabs__tab:active,
+ .govuk-frontend-supported .govuk-tabs__tab:focus {
color: #0b0c0c
}
}
@media print and (min-width:40.0625em) {
- .js-enabled .govuk-tabs__tab:active,
- .js-enabled .govuk-tabs__tab:focus {
+
+ .govuk-frontend-supported .govuk-tabs__tab:active,
+ .govuk-frontend-supported .govuk-tabs__tab:focus {
color: #000
}
}
@media (min-width:40.0625em) {
- .js-enabled .govuk-tabs__tab:after {
+ .govuk-frontend-supported .govuk-tabs__tab:after {
content: "";
position: absolute;
top: 0;
@@ -4999,383 +5975,256 @@ only screen and (min-resolution:192dpi) {
bottom: 0;
left: 0
}
- .js-enabled .govuk-tabs__panel {
+
+ .govuk-frontend-supported .govuk-tabs__panel {
margin-bottom: 0;
padding: 30px 20px;
border: 1px solid #b1b4b6;
border-top: 0
}
-}
-@media (min-width:40.0625em) and (min-width:40.0625em) {
- .js-enabled .govuk-tabs__panel {
+ .govuk-frontend-supported .govuk-tabs__panel>:last-child {
margin-bottom: 0
}
-}
-@media (min-width:40.0625em) {
- .js-enabled .govuk-tabs__panel>:last-child {
- margin-bottom: 0
- }
- .js-enabled .govuk-tabs__panel--hidden {
+ .govuk-frontend-supported .govuk-tabs__panel--hidden {
display: none
}
}
-.govuk-radios__item {
+.govuk-task-list {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
- display: block;
- position: relative;
- min-height: 40px;
- margin-bottom: 10px;
- padding-left: 40px;
- clear: left
+ margin-top: 0;
+ margin-bottom: 20px;
+ padding: 0;
+ list-style-type: none
}
@media print {
- .govuk-radios__item {
+ .govuk-task-list {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-radios__item {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-task-list {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-radios__item {
+ .govuk-task-list {
font-size: 14pt;
line-height: 1.15
}
}
-.govuk-radios__item:last-child,
-.govuk-radios__item:last-of-type {
- margin-bottom: 0
-}
-
-.govuk-radios__input {
- cursor: pointer;
- position: absolute;
- z-index: 1;
- top: -2px;
- left: -2px;
- width: 44px;
- height: 44px;
- margin: 0;
- opacity: 0
-}
-
-.govuk-radios__label {
- display: inline-block;
- margin-bottom: 0;
- padding: 8px 15px 5px;
- cursor: pointer;
- -ms-touch-action: manipulation;
- touch-action: manipulation
-}
-
-.govuk-radios__label:before {
- content: "";
- box-sizing: border-box;
- position: absolute;
- top: 0;
- left: 0;
- width: 40px;
- height: 40px;
- border: 2px solid;
- border-radius: 50%;
- background: rgba(0, 0, 0, 0)
-}
-
-.govuk-radios__label:after {
- content: "";
- position: absolute;
- top: 10px;
- left: 10px;
- width: 0;
- height: 0;
- border: 10px solid;
- border-radius: 50%;
- opacity: 0;
- background: currentColor
-}
-
-.govuk-radios__hint {
- display: block;
- padding-right: 15px;
- padding-left: 15px
-}
-
-.govuk-radios__input:focus+.govuk-radios__label:before {
- border-width: 4px;
- outline: 3px solid rgba(0, 0, 0, 0);
- outline-offset: 1px;
- box-shadow: 0 0 0 4px #fd0
-}
-
-@media (-ms-high-contrast:active),
-screen and (forced-colors:active) {
- .govuk-radios__input:focus+.govuk-radios__label:before {
- outline-color: Highlight
- }
-}
-
-.govuk-radios__input:checked+.govuk-radios__label:after {
- opacity: 1
-}
-
-.govuk-radios__input:disabled,
-.govuk-radios__input:disabled+.govuk-radios__label {
- cursor: default
-}
-
-.govuk-radios__input:disabled+.govuk-radios__label {
- opacity: .5
-}
-
-@media (min-width:40.0625em) {
- .govuk-radios--inline:after {
- content: "";
- display: block;
- clear: both
- }
- .govuk-radios--inline .govuk-radios__item {
- margin-right: 20px;
- float: left;
- clear: none
- }
-}
-
-.govuk-radios--inline.govuk-radios--conditional .govuk-radios__item {
- margin-right: 0;
- float: none
-}
-
-.govuk-radios__divider {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- color: #0b0c0c;
- width: 40px;
- margin-bottom: 10px;
- text-align: center
-}
-
-@media print {
- .govuk-radios__divider {
- font-family: sans-serif
- }
-}
-
-@media (min-width:40.0625em) {
- .govuk-radios__divider {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
- }
-}
-
-@media print {
- .govuk-radios__divider {
- font-size: 14pt;
- line-height: 1.15;
- color: #000
- }
-}
-
-.govuk-radios__conditional {
- margin-bottom: 15px;
- margin-left: 18px;
- padding-left: 33px;
- border-left: 4px solid #b1b4b6
-}
-
@media (min-width:40.0625em) {
- .govuk-radios__conditional {
- margin-bottom: 20px
+ .govuk-task-list {
+ margin-bottom: 30px
}
}
-.js-enabled .govuk-radios__conditional--hidden {
- display: none
-}
-
-.govuk-radios__conditional>:last-child {
- margin-bottom: 0
-}
-
-.govuk-radios--small .govuk-radios__item {
- min-height: 0;
- margin-bottom: 0;
- padding-left: 34px;
- float: left
-}
-
-.govuk-radios--small .govuk-radios__item:after {
- content: "";
- display: block;
- clear: both
-}
-
-.govuk-radios--small .govuk-radios__input {
- left: -10px
-}
-
-.govuk-radios--small .govuk-radios__label {
- margin-top: -2px;
- padding: 13px 15px 13px 1px;
- float: left
+.govuk-task-list__item {
+ display: table;
+ position: relative;
+ width: 100%;
+ margin-bottom: 0;
+ padding-top: 10px;
+ padding-bottom: 10px;
+ border-bottom: 1px solid #b1b4b6
}
-@media (min-width:40.0625em) {
- .govuk-radios--small .govuk-radios__label {
- padding: 11px 15px 10px 1px
- }
+.govuk-task-list__item:first-child {
+ border-top: 1px solid #b1b4b6
}
-.govuk-radios--small .govuk-radios__label:before {
- top: 8px;
- width: 24px;
- height: 24px
+.govuk-task-list__item--with-link:hover {
+ background: #f3f2f1
}
-.govuk-radios--small .govuk-radios__label:after {
- top: 15px;
- left: 7px;
- border-width: 5px
+.govuk-task-list__name-and-hint {
+ display: table-cell;
+ vertical-align: top;
+ color: #0b0c0c
}
-.govuk-radios--small .govuk-radios__hint {
- padding: 0;
- clear: both;
- pointer-events: none
+@media print {
+ .govuk-task-list__name-and-hint {
+ color: #000
+ }
}
-.govuk-radios--small .govuk-radios__conditional {
- margin-left: 10px;
- padding-left: 20px;
- clear: both
+.govuk-task-list__status {
+ display: table-cell;
+ padding-left: 10px;
+ text-align: right;
+ vertical-align: top;
+ color: #0b0c0c
}
-.govuk-radios--small .govuk-radios__divider {
- width: 24px;
- margin-bottom: 5px
+@media print {
+ .govuk-task-list__status {
+ color: #000
+ }
}
-.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled)+.govuk-radios__label:before {
- box-shadow: 0 0 0 10px #b1b4b6
+.govuk-task-list__status--cannot-start-yet {
+ color: #505a5f
}
-.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before {
- box-shadow: 0 0 0 4px #fd0, 0 0 0 10px #b1b4b6
+.govuk-task-list__link:after {
+ content: "";
+ display: block;
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0
}
-@media (hover:none),
-(pointer:coarse) {
- .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled)+.govuk-radios__label:before {
- box-shadow: none
- }
- .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before {
- box-shadow: 0 0 0 4px #fd0
- }
+.govuk-task-list__hint {
+ margin-top: 5px;
+ color: #505a5f
}
-.govuk-select {
+.govuk-warning-text {
font-family: GDS Transport, arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
+ font-size: 1rem;
line-height: 1.25;
- box-sizing: border-box;
- max-width: 100%;
- height: 40px;
- height: 2.5norem;
- padding: 5px;
- border: 2px solid #0b0c0c
+ margin-bottom: 20px;
+ position: relative;
+ padding: 10px 0
}
@media print {
- .govuk-select {
+ .govuk-warning-text {
font-family: sans-serif
}
}
@media (min-width:40.0625em) {
- .govuk-select {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.25
+ .govuk-warning-text {
+ font-size: 1.1875rem;
+ line-height: 1.3157894737
}
}
@media print {
- .govuk-select {
+ .govuk-warning-text {
font-size: 14pt;
- line-height: 1.25
+ line-height: 1.15
}
}
-.govuk-select:focus {
- outline: 3px solid #fd0;
- outline-offset: 0;
- box-shadow: inset 0 0 0 2px
+@media (min-width:40.0625em) {
+ .govuk-warning-text {
+ margin-bottom: 30px
+ }
}
-.govuk-select:focus::-ms-value,
-.govuk-select option:active,
-.govuk-select option:checked {
+.govuk-warning-text__icon {
+ font-weight: 700;
+ box-sizing: border-box;
+ display: inline-block;
+ position: absolute;
+ left: 0;
+ min-width: 35px;
+ min-height: 35px;
+ margin-top: -7px;
+ border: 3px solid #0b0c0c;
+ border-radius: 50%;
color: #fff;
- background-color: #1d70b8
+ background: #0b0c0c;
+ font-size: 30px;
+ line-height: 29px;
+ text-align: center;
+ -webkit-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ forced-color-adjust: none
}
-.govuk-select--error {
- border-color: #d4351c
+@media (min-width:40.0625em) {
+ .govuk-warning-text__icon {
+ margin-top: -5px
+ }
}
-.govuk-select--error:focus {
- border-color: #0b0c0c
+@media screen and (forced-colors:active) {
+ .govuk-warning-text__icon {
+ border-color: windowText;
+ color: windowText;
+ background: transparent
+ }
}
-.govuk-skip-link {
+.govuk-warning-text__text {
+ color: #0b0c0c;
+ display: block;
+ padding-left: 45px
+}
+
+@media print {
+ .govuk-warning-text__text {
+ color: #000
+ }
+}
+
+.govuk-clearfix:after {
+ content: "";
+ display: block;
+ clear: both
+}
+
+.govuk-visually-hidden {
position: absolute !important;
width: 1px !important;
height: 1px !important;
margin: 0 !important;
+ padding: 0 !important;
overflow: hidden !important;
clip: rect(0 0 0 0) !important;
-webkit-clip-path: inset(50%) !important;
clip-path: inset(50%) !important;
+ border: 0 !important;
white-space: nowrap !important;
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- text-decoration: underline;
- font-size: 14px;
- font-size: .875norem;
- line-height: 1.14286;
- display: block;
- padding: 10px 15px
+ -webkit-user-select: none;
+ -ms-user-select: none;
+ user-select: none
}
-.govuk-skip-link:active,
-.govuk-skip-link:focus {
+.govuk-visually-hidden:after,
+.govuk-visually-hidden:before {
+ content: "Â "
+}
+
+.govuk-visually-hidden-focusable {
+ position: absolute !important;
+ width: 1px !important;
+ height: 1px !important;
+ margin: 0 !important;
+ overflow: hidden !important;
+ clip: rect(0 0 0 0) !important;
+ -webkit-clip-path: inset(50%) !important;
+ clip-path: inset(50%) !important;
+ white-space: nowrap !important;
+ -webkit-user-select: none;
+ -ms-user-select: none;
+ user-select: none
+}
+
+.govuk-visually-hidden-focusable:active,
+.govuk-visually-hidden-focusable:focus {
position: static !important;
width: auto !important;
height: auto !important;
@@ -5384,1696 +6233,1485 @@ screen and (forced-colors:active) {
clip: auto !important;
-webkit-clip-path: none !important;
clip-path: none !important;
- white-space: inherit !important
-}
-
-@media print {
- .govuk-skip-link {
- font-family: sans-serif
- }
-}
-
-.govuk-skip-link:link,
-.govuk-skip-link:visited {
- color: #0b0c0c
-}
-
-@media print {
- .govuk-skip-link:link,
- .govuk-skip-link:visited {
- color: #000
- }
+ white-space: inherit !important;
+ -webkit-user-select: text;
+ -ms-user-select: text;
+ user-select: text
}
-.govuk-skip-link:hover {
- color: rgba(11, 12, 12, .99)
+.govuk-\!-display-inline {
+ display: inline !important
}
-.govuk-skip-link:active,
-.govuk-skip-link:focus {
- color: #0b0c0c
+.govuk-\!-display-inline-block {
+ display: inline-block !important
}
-@media print {
- .govuk-skip-link:active,
- .govuk-skip-link:focus {
- color: #000
- }
+.govuk-\!-display-block {
+ display: block !important
}
-@media (min-width:40.0625em) {
- .govuk-skip-link {
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25
- }
+.govuk-\!-display-none {
+ display: none !important
}
@media print {
- .govuk-skip-link {
- font-size: 14pt;
- line-height: 1.2
- }
-}
-
-@supports (padding:max(calc(0px))) {
- .govuk-skip-link {
- padding-right: max(15px, calc(15px + env(safe-area-inset-right)));
- padding-left: max(15px, calc(15px + env(safe-area-inset-left)))
+ .govuk-\!-display-none-print {
+ display: none !important
}
}
-.govuk-skip-link:focus {
- outline: 3px solid #fd0;
- outline-offset: 0;
- background-color: #fd0
+.govuk-\!-margin-0 {
+ margin: 0 !important
}
-.govuk-skip-link-focused-element:focus {
- outline: none
+.govuk-\!-margin-top-0 {
+ margin-top: 0 !important
}
-.govuk-table {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 400;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- color: #0b0c0c;
- width: 100%;
- margin-bottom: 20px;
- border-spacing: 0;
- border-collapse: collapse
+.govuk-\!-margin-right-0 {
+ margin-right: 0 !important
}
-@media print {
- .govuk-table {
- font-family: sans-serif
- }
+.govuk-\!-margin-bottom-0 {
+ margin-bottom: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-table {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
- }
+.govuk-\!-margin-left-0 {
+ margin-left: 0 !important
}
-@media print {
- .govuk-table {
- font-size: 14pt;
- line-height: 1.15;
- color: #000
- }
+.govuk-\!-margin-1 {
+ margin: 5px !important
}
-@media (min-width:40.0625em) {
- .govuk-table {
- margin-bottom: 30px
- }
+.govuk-\!-margin-top-1 {
+ margin-top: 5px !important
}
-.govuk-table__header {
- font-weight: 700
+.govuk-\!-margin-right-1 {
+ margin-right: 5px !important
}
-.govuk-table__cell,
-.govuk-table__header {
- padding: 10px 20px 10px 0;
- border-bottom: 1px solid #b1b4b6;
- text-align: left;
- vertical-align: top
+.govuk-\!-margin-bottom-1 {
+ margin-bottom: 5px !important
}
-.govuk-table__cell--numeric {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- -webkit-font-feature-settings: "tnum" 1;
- font-feature-settings: "tnum" 1;
- font-weight: 400
+.govuk-\!-margin-left-1 {
+ margin-left: 5px !important
}
-@media print {
- .govuk-table__cell--numeric {
- font-family: sans-serif
- }
+.govuk-\!-margin-2 {
+ margin: 10px !important
}
-@supports (font-variant-numeric:tabular-nums) {
- .govuk-table__cell--numeric {
- -webkit-font-feature-settings: normal;
- font-feature-settings: normal;
- font-variant-numeric: tabular-nums
- }
+.govuk-\!-margin-top-2 {
+ margin-top: 10px !important
}
-.govuk-table__cell--numeric,
-.govuk-table__header--numeric {
- text-align: right
+.govuk-\!-margin-right-2 {
+ margin-right: 10px !important
}
-.govuk-table__cell:last-child,
-.govuk-table__header:last-child {
- padding-right: 0
+.govuk-\!-margin-bottom-2 {
+ margin-bottom: 10px !important
}
-.govuk-table__caption {
- font-weight: 700;
- display: table-caption;
- text-align: left
+.govuk-\!-margin-left-2 {
+ margin-left: 10px !important
}
-.govuk-table__caption--xl {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 32px;
- font-size: 2norem;
- line-height: 1.09375;
- margin-bottom: 15px
+.govuk-\!-margin-3 {
+ margin: 15px !important
}
-@media print {
- .govuk-table__caption--xl {
- font-family: sans-serif
- }
+.govuk-\!-margin-top-3 {
+ margin-top: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-table__caption--xl {
- font-size: 48px;
- font-size: 3norem;
- line-height: 1.04167
- }
+.govuk-\!-margin-right-3 {
+ margin-right: 15px !important
}
-@media print {
- .govuk-table__caption--xl {
- font-size: 32pt;
- line-height: 1.15
- }
+.govuk-\!-margin-bottom-3 {
+ margin-bottom: 15px !important
}
-.govuk-table__caption--l {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 24px;
- font-size: 1.5norem;
- line-height: 1.04167;
- margin-bottom: 15px
+.govuk-\!-margin-left-3 {
+ margin-left: 15px !important
}
-@media print {
- .govuk-table__caption--l {
- font-family: sans-serif
- }
+.govuk-\!-margin-4 {
+ margin: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-table__caption--l {
- font-size: 36px;
- font-size: 2.25norem;
- line-height: 1.11111
+ .govuk-\!-margin-4 {
+ margin: 20px !important
}
}
-@media print {
- .govuk-table__caption--l {
- font-size: 24pt;
- line-height: 1.05
- }
+.govuk-\!-margin-top-4 {
+ margin-top: 15px !important
}
-.govuk-table__caption--m {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 18px;
- font-size: 1.125norem;
- line-height: 1.11111;
- margin-bottom: 15px
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-top-4 {
+ margin-top: 20px !important
+ }
}
-@media print {
- .govuk-table__caption--m {
- font-family: sans-serif
- }
+.govuk-\!-margin-right-4 {
+ margin-right: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-table__caption--m {
- font-size: 24px;
- font-size: 1.5norem;
- line-height: 1.25
+ .govuk-\!-margin-right-4 {
+ margin-right: 20px !important
}
}
-@media print {
- .govuk-table__caption--m {
- font-size: 18pt;
- line-height: 1.15
- }
+.govuk-\!-margin-bottom-4 {
+ margin-bottom: 15px !important
}
-.govuk-table__caption--s {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-bottom-4 {
+ margin-bottom: 20px !important
+ }
}
-@media print {
- .govuk-table__caption--s {
- font-family: sans-serif
- }
+.govuk-\!-margin-left-4 {
+ margin-left: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-table__caption--s {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-\!-margin-left-4 {
+ margin-left: 20px !important
}
}
-@media print {
- .govuk-table__caption--s {
- font-size: 14pt;
- line-height: 1.15
+.govuk-\!-margin-5 {
+ margin: 15px !important
+}
+
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-5 {
+ margin: 25px !important
}
}
-.govuk-warning-text {
- position: relative;
- margin-bottom: 20px;
- padding: 10px 0
+.govuk-\!-margin-top-5 {
+ margin-top: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-warning-text {
- margin-bottom: 30px
+ .govuk-\!-margin-top-5 {
+ margin-top: 25px !important
}
}
-.govuk-warning-text__assistive {
- position: absolute !important;
- width: 1px !important;
- height: 1px !important;
- margin: 0 !important;
- padding: 0 !important;
- overflow: hidden !important;
- clip: rect(0 0 0 0) !important;
- -webkit-clip-path: inset(50%) !important;
- clip-path: inset(50%) !important;
- border: 0 !important;
- white-space: nowrap !important
+.govuk-\!-margin-right-5 {
+ margin-right: 15px !important
}
-.govuk-warning-text__icon {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- box-sizing: border-box;
- display: inline-block;
- position: absolute;
- left: 0;
- min-width: 35px;
- min-height: 35px;
- margin-top: -7px;
- border: 3px solid #0b0c0c;
- border-radius: 50%;
- color: #fff;
- background: #0b0c0c;
- font-size: 30px;
- line-height: 29px;
- text-align: center;
- -webkit-user-select: none;
- -ms-user-select: none;
- user-select: none;
- forced-color-adjust: none
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-right-5 {
+ margin-right: 25px !important
+ }
}
-@media print {
- .govuk-warning-text__icon {
- font-family: sans-serif
- }
+.govuk-\!-margin-bottom-5 {
+ margin-bottom: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-warning-text__icon {
- margin-top: -5px
+ .govuk-\!-margin-bottom-5 {
+ margin-bottom: 25px !important
}
}
-@media screen and (forced-colors:active) {
- .govuk-warning-text__icon {
- border-color: windowText;
- color: windowText;
- background: rgba(0, 0, 0, 0)
+.govuk-\!-margin-left-5 {
+ margin-left: 15px !important
+}
+
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-left-5 {
+ margin-left: 25px !important
}
}
-.govuk-warning-text__text {
- font-family: GDS Transport, arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 700;
- font-size: 16px;
- font-size: 1norem;
- line-height: 1.25;
- color: #0b0c0c;
- display: block;
- padding-left: 45px
+.govuk-\!-margin-6 {
+ margin: 20px !important
}
-@media print {
- .govuk-warning-text__text {
- font-family: sans-serif
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-6 {
+ margin: 30px !important
}
}
+.govuk-\!-margin-top-6 {
+ margin-top: 20px !important
+}
+
@media (min-width:40.0625em) {
- .govuk-warning-text__text {
- font-size: 19px;
- font-size: 1.1875norem;
- line-height: 1.31579
+ .govuk-\!-margin-top-6 {
+ margin-top: 30px !important
}
}
-@media print {
- .govuk-warning-text__text {
- font-size: 14pt;
- line-height: 1.15;
- color: #000
- }
+.govuk-\!-margin-right-6 {
+ margin-right: 20px !important
}
-.govuk-clearfix:after {
- content: "";
- display: block;
- clear: both
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-right-6 {
+ margin-right: 30px !important
+ }
}
-.govuk-visually-hidden {
- padding: 0 !important;
- border: 0 !important
+.govuk-\!-margin-bottom-6 {
+ margin-bottom: 20px !important
}
-.govuk-visually-hidden,
-.govuk-visually-hidden-focusable {
- position: absolute !important;
- width: 1px !important;
- height: 1px !important;
- margin: 0 !important;
- overflow: hidden !important;
- clip: rect(0 0 0 0) !important;
- -webkit-clip-path: inset(50%) !important;
- clip-path: inset(50%) !important;
- white-space: nowrap !important
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-bottom-6 {
+ margin-bottom: 30px !important
+ }
}
-.govuk-visually-hidden-focusable:active,
-.govuk-visually-hidden-focusable:focus {
- position: static !important;
- width: auto !important;
- height: auto !important;
- margin: inherit !important;
- overflow: visible !important;
- clip: auto !important;
- -webkit-clip-path: none !important;
- clip-path: none !important;
- white-space: inherit !important
+.govuk-\!-margin-left-6 {
+ margin-left: 20px !important
}
-.govuk-\ !-display-inline {
- display: inline !important
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-left-6 {
+ margin-left: 30px !important
+ }
}
-.govuk-\ !-display-inline-block {
- display: inline-block !important
+.govuk-\!-margin-7 {
+ margin: 25px !important
}
-.govuk-\ !-display-block {
- display: block !important
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-7 {
+ margin: 40px !important
+ }
}
-.govuk-\ !-display-none {
- display: none !important
+.govuk-\!-margin-top-7 {
+ margin-top: 25px !important
}
-@media print {
- .govuk-\ !-display-none-print {
- display: none !important
+@media (min-width:40.0625em) {
+ .govuk-\!-margin-top-7 {
+ margin-top: 40px !important
}
}
-.govuk-\ !-margin-0 {
- margin: 0 !important
+.govuk-\!-margin-right-7 {
+ margin-right: 25px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-0 {
- margin: 0 !important
+ .govuk-\!-margin-right-7 {
+ margin-right: 40px !important
}
}
-.govuk-\ !-margin-top-0 {
- margin-top: 0 !important
+.govuk-\!-margin-bottom-7 {
+ margin-bottom: 25px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-0 {
- margin-top: 0 !important
+ .govuk-\!-margin-bottom-7 {
+ margin-bottom: 40px !important
}
}
-.govuk-\ !-margin-right-0 {
- margin-right: 0 !important
+.govuk-\!-margin-left-7 {
+ margin-left: 25px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-0 {
- margin-right: 0 !important
+ .govuk-\!-margin-left-7 {
+ margin-left: 40px !important
}
}
-.govuk-\ !-margin-bottom-0 {
- margin-bottom: 0 !important
+.govuk-\!-margin-8 {
+ margin: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-0 {
- margin-bottom: 0 !important
+ .govuk-\!-margin-8 {
+ margin: 50px !important
}
}
-.govuk-\ !-margin-left-0 {
- margin-left: 0 !important
+.govuk-\!-margin-top-8 {
+ margin-top: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-0 {
- margin-left: 0 !important
+ .govuk-\!-margin-top-8 {
+ margin-top: 50px !important
}
}
-.govuk-\ !-margin-1 {
- margin: 5px !important
+.govuk-\!-margin-right-8 {
+ margin-right: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-1 {
- margin: 5px !important
+ .govuk-\!-margin-right-8 {
+ margin-right: 50px !important
}
}
-.govuk-\ !-margin-top-1 {
- margin-top: 5px !important
+.govuk-\!-margin-bottom-8 {
+ margin-bottom: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-1 {
- margin-top: 5px !important
+ .govuk-\!-margin-bottom-8 {
+ margin-bottom: 50px !important
}
}
-.govuk-\ !-margin-right-1 {
- margin-right: 5px !important
+.govuk-\!-margin-left-8 {
+ margin-left: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-1 {
- margin-right: 5px !important
+ .govuk-\!-margin-left-8 {
+ margin-left: 50px !important
}
}
-.govuk-\ !-margin-bottom-1 {
- margin-bottom: 5px !important
+.govuk-\!-margin-9 {
+ margin: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-1 {
- margin-bottom: 5px !important
+ .govuk-\!-margin-9 {
+ margin: 60px !important
}
}
-.govuk-\ !-margin-left-1 {
- margin-left: 5px !important
+.govuk-\!-margin-top-9 {
+ margin-top: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-1 {
- margin-left: 5px !important
+ .govuk-\!-margin-top-9 {
+ margin-top: 60px !important
}
}
-.govuk-\ !-margin-2 {
- margin: 10px !important
+.govuk-\!-margin-right-9 {
+ margin-right: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-2 {
- margin: 10px !important
+ .govuk-\!-margin-right-9 {
+ margin-right: 60px !important
}
}
-.govuk-\ !-margin-top-2 {
- margin-top: 10px !important
+.govuk-\!-margin-bottom-9 {
+ margin-bottom: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-2 {
- margin-top: 10px !important
+ .govuk-\!-margin-bottom-9 {
+ margin-bottom: 60px !important
}
}
-.govuk-\ !-margin-right-2 {
- margin-right: 10px !important
+.govuk-\!-margin-left-9 {
+ margin-left: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-2 {
- margin-right: 10px !important
+ .govuk-\!-margin-left-9 {
+ margin-left: 60px !important
}
}
-.govuk-\ !-margin-bottom-2 {
- margin-bottom: 10px !important
+.govuk-\!-padding-0 {
+ padding: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-2 {
- margin-bottom: 10px !important
- }
+.govuk-\!-padding-top-0 {
+ padding-top: 0 !important
}
-.govuk-\ !-margin-left-2 {
- margin-left: 10px !important
+.govuk-\!-padding-right-0 {
+ padding-right: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-2 {
- margin-left: 10px !important
- }
+.govuk-\!-padding-bottom-0 {
+ padding-bottom: 0 !important
}
-.govuk-\ !-margin-3 {
- margin: 15px !important
+.govuk-\!-padding-left-0 {
+ padding-left: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-3 {
- margin: 15px !important
- }
+.govuk-\!-padding-1 {
+ padding: 5px !important
}
-.govuk-\ !-margin-top-3 {
- margin-top: 15px !important
+.govuk-\!-padding-top-1 {
+ padding-top: 5px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-3 {
- margin-top: 15px !important
- }
+.govuk-\!-padding-right-1 {
+ padding-right: 5px !important
}
-.govuk-\ !-margin-right-3 {
- margin-right: 15px !important
+.govuk-\!-padding-bottom-1 {
+ padding-bottom: 5px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-3 {
- margin-right: 15px !important
- }
+.govuk-\!-padding-left-1 {
+ padding-left: 5px !important
}
-.govuk-\ !-margin-bottom-3 {
- margin-bottom: 15px !important
+.govuk-\!-padding-2 {
+ padding: 10px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-3 {
- margin-bottom: 15px !important
- }
+.govuk-\!-padding-top-2 {
+ padding-top: 10px !important
}
-.govuk-\ !-margin-left-3 {
- margin-left: 15px !important
+.govuk-\!-padding-right-2 {
+ padding-right: 10px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-3 {
- margin-left: 15px !important
- }
+.govuk-\!-padding-bottom-2 {
+ padding-bottom: 10px !important
}
-.govuk-\ !-margin-4 {
- margin: 15px !important
+.govuk-\!-padding-left-2 {
+ padding-left: 10px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-4 {
- margin: 20px !important
- }
+.govuk-\!-padding-3 {
+ padding: 15px !important
}
-.govuk-\ !-margin-top-4 {
- margin-top: 15px !important
+.govuk-\!-padding-top-3 {
+ padding-top: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-4 {
- margin-top: 20px !important
- }
+.govuk-\!-padding-right-3 {
+ padding-right: 15px !important
}
-.govuk-\ !-margin-right-4 {
- margin-right: 15px !important
+.govuk-\!-padding-bottom-3 {
+ padding-bottom: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-4 {
- margin-right: 20px !important
- }
+.govuk-\!-padding-left-3 {
+ padding-left: 15px !important
}
-.govuk-\ !-margin-bottom-4 {
- margin-bottom: 15px !important
+.govuk-\!-padding-4 {
+ padding: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-4 {
- margin-bottom: 20px !important
+ .govuk-\!-padding-4 {
+ padding: 20px !important
}
}
-.govuk-\ !-margin-left-4 {
- margin-left: 15px !important
+.govuk-\!-padding-top-4 {
+ padding-top: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-4 {
- margin-left: 20px !important
+ .govuk-\!-padding-top-4 {
+ padding-top: 20px !important
}
}
-.govuk-\ !-margin-5 {
- margin: 15px !important
+.govuk-\!-padding-right-4 {
+ padding-right: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-5 {
- margin: 25px !important
+ .govuk-\!-padding-right-4 {
+ padding-right: 20px !important
}
}
-.govuk-\ !-margin-top-5 {
- margin-top: 15px !important
+.govuk-\!-padding-bottom-4 {
+ padding-bottom: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-5 {
- margin-top: 25px !important
+ .govuk-\!-padding-bottom-4 {
+ padding-bottom: 20px !important
}
}
-.govuk-\ !-margin-right-5 {
- margin-right: 15px !important
+.govuk-\!-padding-left-4 {
+ padding-left: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-5 {
- margin-right: 25px !important
+ .govuk-\!-padding-left-4 {
+ padding-left: 20px !important
}
}
-.govuk-\ !-margin-bottom-5 {
- margin-bottom: 15px !important
+.govuk-\!-padding-5 {
+ padding: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-5 {
- margin-bottom: 25px !important
+ .govuk-\!-padding-5 {
+ padding: 25px !important
}
}
-.govuk-\ !-margin-left-5 {
- margin-left: 15px !important
+.govuk-\!-padding-top-5 {
+ padding-top: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-5 {
- margin-left: 25px !important
+ .govuk-\!-padding-top-5 {
+ padding-top: 25px !important
}
}
-.govuk-\ !-margin-6 {
- margin: 20px !important
+.govuk-\!-padding-right-5 {
+ padding-right: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-6 {
- margin: 30px !important
+ .govuk-\!-padding-right-5 {
+ padding-right: 25px !important
}
}
-.govuk-\ !-margin-top-6 {
- margin-top: 20px !important
+.govuk-\!-padding-bottom-5 {
+ padding-bottom: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-6 {
- margin-top: 30px !important
+ .govuk-\!-padding-bottom-5 {
+ padding-bottom: 25px !important
}
}
-.govuk-\ !-margin-right-6 {
- margin-right: 20px !important
+.govuk-\!-padding-left-5 {
+ padding-left: 15px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-6 {
- margin-right: 30px !important
+ .govuk-\!-padding-left-5 {
+ padding-left: 25px !important
}
}
-.govuk-\ !-margin-bottom-6 {
- margin-bottom: 20px !important
+.govuk-\!-padding-6 {
+ padding: 20px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-6 {
- margin-bottom: 30px !important
+ .govuk-\!-padding-6 {
+ padding: 30px !important
}
}
-.govuk-\ !-margin-left-6 {
- margin-left: 20px !important
+.govuk-\!-padding-top-6 {
+ padding-top: 20px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-6 {
- margin-left: 30px !important
+ .govuk-\!-padding-top-6 {
+ padding-top: 30px !important
}
}
-.govuk-\ !-margin-7 {
- margin: 25px !important
+.govuk-\!-padding-right-6 {
+ padding-right: 20px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-7 {
- margin: 40px !important
+ .govuk-\!-padding-right-6 {
+ padding-right: 30px !important
}
}
-.govuk-\ !-margin-top-7 {
- margin-top: 25px !important
+.govuk-\!-padding-bottom-6 {
+ padding-bottom: 20px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-7 {
- margin-top: 40px !important
+ .govuk-\!-padding-bottom-6 {
+ padding-bottom: 30px !important
}
}
-.govuk-\ !-margin-right-7 {
- margin-right: 25px !important
+.govuk-\!-padding-left-6 {
+ padding-left: 20px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-7 {
- margin-right: 40px !important
+ .govuk-\!-padding-left-6 {
+ padding-left: 30px !important
}
}
-.govuk-\ !-margin-bottom-7 {
- margin-bottom: 25px !important
+.govuk-\!-padding-7 {
+ padding: 25px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-7 {
- margin-bottom: 40px !important
+ .govuk-\!-padding-7 {
+ padding: 40px !important
}
}
-.govuk-\ !-margin-left-7 {
- margin-left: 25px !important
+.govuk-\!-padding-top-7 {
+ padding-top: 25px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-7 {
- margin-left: 40px !important
+ .govuk-\!-padding-top-7 {
+ padding-top: 40px !important
}
}
-.govuk-\ !-margin-8 {
- margin: 30px !important
+.govuk-\!-padding-right-7 {
+ padding-right: 25px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-8 {
- margin: 50px !important
+ .govuk-\!-padding-right-7 {
+ padding-right: 40px !important
}
}
-.govuk-\ !-margin-top-8 {
- margin-top: 30px !important
+.govuk-\!-padding-bottom-7 {
+ padding-bottom: 25px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-8 {
- margin-top: 50px !important
+ .govuk-\!-padding-bottom-7 {
+ padding-bottom: 40px !important
}
}
-.govuk-\ !-margin-right-8 {
- margin-right: 30px !important
+.govuk-\!-padding-left-7 {
+ padding-left: 25px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-8 {
- margin-right: 50px !important
+ .govuk-\!-padding-left-7 {
+ padding-left: 40px !important
}
}
-.govuk-\ !-margin-bottom-8 {
- margin-bottom: 30px !important
+.govuk-\!-padding-8 {
+ padding: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-8 {
- margin-bottom: 50px !important
+ .govuk-\!-padding-8 {
+ padding: 50px !important
}
}
-.govuk-\ !-margin-left-8 {
- margin-left: 30px !important
+.govuk-\!-padding-top-8 {
+ padding-top: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-8 {
- margin-left: 50px !important
+ .govuk-\!-padding-top-8 {
+ padding-top: 50px !important
}
}
-.govuk-\ !-margin-9 {
- margin: 40px !important
+.govuk-\!-padding-right-8 {
+ padding-right: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-9 {
- margin: 60px !important
+ .govuk-\!-padding-right-8 {
+ padding-right: 50px !important
}
}
-.govuk-\ !-margin-top-9 {
- margin-top: 40px !important
+.govuk-\!-padding-bottom-8 {
+ padding-bottom: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-top-9 {
- margin-top: 60px !important
+ .govuk-\!-padding-bottom-8 {
+ padding-bottom: 50px !important
}
}
-.govuk-\ !-margin-right-9 {
- margin-right: 40px !important
+.govuk-\!-padding-left-8 {
+ padding-left: 30px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-right-9 {
- margin-right: 60px !important
+ .govuk-\!-padding-left-8 {
+ padding-left: 50px !important
}
}
-.govuk-\ !-margin-bottom-9 {
- margin-bottom: 40px !important
+.govuk-\!-padding-9 {
+ padding: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-bottom-9 {
- margin-bottom: 60px !important
+ .govuk-\!-padding-9 {
+ padding: 60px !important
}
}
-.govuk-\ !-margin-left-9 {
- margin-left: 40px !important
+.govuk-\!-padding-top-9 {
+ padding-top: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-margin-left-9 {
- margin-left: 60px !important
+ .govuk-\!-padding-top-9 {
+ padding-top: 60px !important
}
}
-.govuk-\ !-padding-0 {
- padding: 0 !important
+.govuk-\!-padding-right-9 {
+ padding-right: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-padding-0 {
- padding: 0 !important
+ .govuk-\!-padding-right-9 {
+ padding-right: 60px !important
}
}
-.govuk-\ !-padding-top-0 {
- padding-top: 0 !important
+.govuk-\!-padding-bottom-9 {
+ padding-bottom: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-0 {
- padding-top: 0 !important
+ .govuk-\!-padding-bottom-9 {
+ padding-bottom: 60px !important
}
}
-.govuk-\ !-padding-right-0 {
- padding-right: 0 !important
+.govuk-\!-padding-left-9 {
+ padding-left: 40px !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-0 {
- padding-right: 0 !important
+ .govuk-\!-padding-left-9 {
+ padding-left: 60px !important
}
}
-.govuk-\ !-padding-bottom-0 {
- padding-bottom: 0 !important
+.govuk-\!-static-margin-0 {
+ margin: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-0 {
- padding-bottom: 0 !important
- }
+.govuk-\!-static-margin-top-0 {
+ margin-top: 0 !important
}
-.govuk-\ !-padding-left-0 {
- padding-left: 0 !important
+.govuk-\!-static-margin-right-0 {
+ margin-right: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-0 {
- padding-left: 0 !important
- }
+.govuk-\!-static-margin-bottom-0 {
+ margin-bottom: 0 !important
}
-.govuk-\ !-padding-1 {
- padding: 5px !important
+.govuk-\!-static-margin-left-0 {
+ margin-left: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-1 {
- padding: 5px !important
- }
+.govuk-\!-static-margin-1 {
+ margin: 5px !important
}
-.govuk-\ !-padding-top-1 {
- padding-top: 5px !important
+.govuk-\!-static-margin-top-1 {
+ margin-top: 5px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-1 {
- padding-top: 5px !important
- }
+.govuk-\!-static-margin-right-1 {
+ margin-right: 5px !important
+}
+
+.govuk-\!-static-margin-bottom-1 {
+ margin-bottom: 5px !important
+}
+
+.govuk-\!-static-margin-left-1 {
+ margin-left: 5px !important
+}
+
+.govuk-\!-static-margin-2 {
+ margin: 10px !important
+}
+
+.govuk-\!-static-margin-top-2 {
+ margin-top: 10px !important
+}
+
+.govuk-\!-static-margin-right-2 {
+ margin-right: 10px !important
+}
+
+.govuk-\!-static-margin-bottom-2 {
+ margin-bottom: 10px !important
+}
+
+.govuk-\!-static-margin-left-2 {
+ margin-left: 10px !important
}
-.govuk-\ !-padding-right-1 {
- padding-right: 5px !important
+.govuk-\!-static-margin-3 {
+ margin: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-1 {
- padding-right: 5px !important
- }
+.govuk-\!-static-margin-top-3 {
+ margin-top: 15px !important
}
-.govuk-\ !-padding-bottom-1 {
- padding-bottom: 5px !important
+.govuk-\!-static-margin-right-3 {
+ margin-right: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-1 {
- padding-bottom: 5px !important
- }
+.govuk-\!-static-margin-bottom-3 {
+ margin-bottom: 15px !important
}
-.govuk-\ !-padding-left-1 {
- padding-left: 5px !important
+.govuk-\!-static-margin-left-3 {
+ margin-left: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-1 {
- padding-left: 5px !important
- }
+.govuk-\!-static-margin-4 {
+ margin: 20px !important
}
-.govuk-\ !-padding-2 {
- padding: 10px !important
+.govuk-\!-static-margin-top-4 {
+ margin-top: 20px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-2 {
- padding: 10px !important
- }
+.govuk-\!-static-margin-right-4 {
+ margin-right: 20px !important
}
-.govuk-\ !-padding-top-2 {
- padding-top: 10px !important
+.govuk-\!-static-margin-bottom-4 {
+ margin-bottom: 20px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-2 {
- padding-top: 10px !important
- }
+.govuk-\!-static-margin-left-4 {
+ margin-left: 20px !important
}
-.govuk-\ !-padding-right-2 {
- padding-right: 10px !important
+.govuk-\!-static-margin-5 {
+ margin: 25px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-2 {
- padding-right: 10px !important
- }
+.govuk-\!-static-margin-top-5 {
+ margin-top: 25px !important
}
-.govuk-\ !-padding-bottom-2 {
- padding-bottom: 10px !important
+.govuk-\!-static-margin-right-5 {
+ margin-right: 25px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-2 {
- padding-bottom: 10px !important
- }
+.govuk-\!-static-margin-bottom-5 {
+ margin-bottom: 25px !important
}
-.govuk-\ !-padding-left-2 {
- padding-left: 10px !important
+.govuk-\!-static-margin-left-5 {
+ margin-left: 25px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-2 {
- padding-left: 10px !important
- }
+.govuk-\!-static-margin-6 {
+ margin: 30px !important
}
-.govuk-\ !-padding-3 {
- padding: 15px !important
+.govuk-\!-static-margin-top-6 {
+ margin-top: 30px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-3 {
- padding: 15px !important
- }
+.govuk-\!-static-margin-right-6 {
+ margin-right: 30px !important
}
-.govuk-\ !-padding-top-3 {
- padding-top: 15px !important
+.govuk-\!-static-margin-bottom-6 {
+ margin-bottom: 30px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-3 {
- padding-top: 15px !important
- }
+.govuk-\!-static-margin-left-6 {
+ margin-left: 30px !important
}
-.govuk-\ !-padding-right-3 {
- padding-right: 15px !important
+.govuk-\!-static-margin-7 {
+ margin: 40px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-3 {
- padding-right: 15px !important
- }
+.govuk-\!-static-margin-top-7 {
+ margin-top: 40px !important
}
-.govuk-\ !-padding-bottom-3 {
- padding-bottom: 15px !important
+.govuk-\!-static-margin-right-7 {
+ margin-right: 40px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-3 {
- padding-bottom: 15px !important
- }
+.govuk-\!-static-margin-bottom-7 {
+ margin-bottom: 40px !important
}
-.govuk-\ !-padding-left-3 {
- padding-left: 15px !important
+.govuk-\!-static-margin-left-7 {
+ margin-left: 40px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-3 {
- padding-left: 15px !important
- }
+.govuk-\!-static-margin-8 {
+ margin: 50px !important
}
-.govuk-\ !-padding-4 {
- padding: 15px !important
+.govuk-\!-static-margin-top-8 {
+ margin-top: 50px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-4 {
- padding: 20px !important
- }
+.govuk-\!-static-margin-right-8 {
+ margin-right: 50px !important
}
-.govuk-\ !-padding-top-4 {
- padding-top: 15px !important
+.govuk-\!-static-margin-bottom-8 {
+ margin-bottom: 50px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-4 {
- padding-top: 20px !important
- }
+.govuk-\!-static-margin-left-8 {
+ margin-left: 50px !important
}
-.govuk-\ !-padding-right-4 {
- padding-right: 15px !important
+.govuk-\!-static-margin-9 {
+ margin: 60px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-4 {
- padding-right: 20px !important
- }
+.govuk-\!-static-margin-top-9 {
+ margin-top: 60px !important
}
-.govuk-\ !-padding-bottom-4 {
- padding-bottom: 15px !important
+.govuk-\!-static-margin-right-9 {
+ margin-right: 60px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-4 {
- padding-bottom: 20px !important
- }
+.govuk-\!-static-margin-bottom-9 {
+ margin-bottom: 60px !important
}
-.govuk-\ !-padding-left-4 {
- padding-left: 15px !important
+.govuk-\!-static-margin-left-9 {
+ margin-left: 60px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-4 {
- padding-left: 20px !important
- }
+.govuk-\!-static-padding-0 {
+ padding: 0 !important
}
-.govuk-\ !-padding-5 {
- padding: 15px !important
+.govuk-\!-static-padding-top-0 {
+ padding-top: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-5 {
- padding: 25px !important
- }
+.govuk-\!-static-padding-right-0 {
+ padding-right: 0 !important
}
-.govuk-\ !-padding-top-5 {
- padding-top: 15px !important
+.govuk-\!-static-padding-bottom-0 {
+ padding-bottom: 0 !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-5 {
- padding-top: 25px !important
- }
+.govuk-\!-static-padding-left-0 {
+ padding-left: 0 !important
}
-.govuk-\ !-padding-right-5 {
- padding-right: 15px !important
+.govuk-\!-static-padding-1 {
+ padding: 5px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-5 {
- padding-right: 25px !important
- }
+.govuk-\!-static-padding-top-1 {
+ padding-top: 5px !important
}
-.govuk-\ !-padding-bottom-5 {
- padding-bottom: 15px !important
+.govuk-\!-static-padding-right-1 {
+ padding-right: 5px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-5 {
- padding-bottom: 25px !important
- }
+.govuk-\!-static-padding-bottom-1 {
+ padding-bottom: 5px !important
}
-.govuk-\ !-padding-left-5 {
- padding-left: 15px !important
+.govuk-\!-static-padding-left-1 {
+ padding-left: 5px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-5 {
- padding-left: 25px !important
- }
+.govuk-\!-static-padding-2 {
+ padding: 10px !important
}
-.govuk-\ !-padding-6 {
- padding: 20px !important
+.govuk-\!-static-padding-top-2 {
+ padding-top: 10px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-6 {
- padding: 30px !important
- }
+.govuk-\!-static-padding-right-2 {
+ padding-right: 10px !important
}
-.govuk-\ !-padding-top-6 {
- padding-top: 20px !important
+.govuk-\!-static-padding-bottom-2 {
+ padding-bottom: 10px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-6 {
- padding-top: 30px !important
- }
+.govuk-\!-static-padding-left-2 {
+ padding-left: 10px !important
}
-.govuk-\ !-padding-right-6 {
- padding-right: 20px !important
+.govuk-\!-static-padding-3 {
+ padding: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-6 {
- padding-right: 30px !important
- }
+.govuk-\!-static-padding-top-3 {
+ padding-top: 15px !important
}
-.govuk-\ !-padding-bottom-6 {
- padding-bottom: 20px !important
+.govuk-\!-static-padding-right-3 {
+ padding-right: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-6 {
- padding-bottom: 30px !important
- }
+.govuk-\!-static-padding-bottom-3 {
+ padding-bottom: 15px !important
}
-.govuk-\ !-padding-left-6 {
- padding-left: 20px !important
+.govuk-\!-static-padding-left-3 {
+ padding-left: 15px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-6 {
- padding-left: 30px !important
- }
+.govuk-\!-static-padding-4 {
+ padding: 20px !important
}
-.govuk-\ !-padding-7 {
- padding: 25px !important
+.govuk-\!-static-padding-top-4 {
+ padding-top: 20px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-7 {
- padding: 40px !important
- }
+.govuk-\!-static-padding-right-4 {
+ padding-right: 20px !important
}
-.govuk-\ !-padding-top-7 {
- padding-top: 25px !important
+.govuk-\!-static-padding-bottom-4 {
+ padding-bottom: 20px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-7 {
- padding-top: 40px !important
- }
+.govuk-\!-static-padding-left-4 {
+ padding-left: 20px !important
}
-.govuk-\ !-padding-right-7 {
- padding-right: 25px !important
+.govuk-\!-static-padding-5 {
+ padding: 25px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-7 {
- padding-right: 40px !important
- }
+.govuk-\!-static-padding-top-5 {
+ padding-top: 25px !important
}
-.govuk-\ !-padding-bottom-7 {
- padding-bottom: 25px !important
+.govuk-\!-static-padding-right-5 {
+ padding-right: 25px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-7 {
- padding-bottom: 40px !important
- }
+.govuk-\!-static-padding-bottom-5 {
+ padding-bottom: 25px !important
}
-.govuk-\ !-padding-left-7 {
+.govuk-\!-static-padding-left-5 {
padding-left: 25px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-7 {
- padding-left: 40px !important
- }
-}
-
-.govuk-\ !-padding-8 {
+.govuk-\!-static-padding-6 {
padding: 30px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-8 {
- padding: 50px !important
- }
+.govuk-\!-static-padding-top-6 {
+ padding-top: 30px !important
}
-.govuk-\ !-padding-top-8 {
- padding-top: 30px !important
+.govuk-\!-static-padding-right-6 {
+ padding-right: 30px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-8 {
- padding-top: 50px !important
- }
+.govuk-\!-static-padding-bottom-6 {
+ padding-bottom: 30px !important
}
-.govuk-\ !-padding-right-8 {
- padding-right: 30px !important
+.govuk-\!-static-padding-left-6 {
+ padding-left: 30px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-8 {
- padding-right: 50px !important
- }
+.govuk-\!-static-padding-7 {
+ padding: 40px !important
}
-.govuk-\ !-padding-bottom-8 {
- padding-bottom: 30px !important
+.govuk-\!-static-padding-top-7 {
+ padding-top: 40px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-8 {
- padding-bottom: 50px !important
- }
+.govuk-\!-static-padding-right-7 {
+ padding-right: 40px !important
}
-.govuk-\ !-padding-left-8 {
- padding-left: 30px !important
+.govuk-\!-static-padding-bottom-7 {
+ padding-bottom: 40px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-8 {
- padding-left: 50px !important
- }
+.govuk-\!-static-padding-left-7 {
+ padding-left: 40px !important
}
-.govuk-\ !-padding-9 {
- padding: 40px !important
+.govuk-\!-static-padding-8 {
+ padding: 50px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-9 {
- padding: 60px !important
- }
+.govuk-\!-static-padding-top-8 {
+ padding-top: 50px !important
}
-.govuk-\ !-padding-top-9 {
- padding-top: 40px !important
+.govuk-\!-static-padding-right-8 {
+ padding-right: 50px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-top-9 {
- padding-top: 60px !important
- }
+.govuk-\!-static-padding-bottom-8 {
+ padding-bottom: 50px !important
}
-.govuk-\ !-padding-right-9 {
- padding-right: 40px !important
+.govuk-\!-static-padding-left-8 {
+ padding-left: 50px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-right-9 {
- padding-right: 60px !important
- }
+.govuk-\!-static-padding-9 {
+ padding: 60px !important
}
-.govuk-\ !-padding-bottom-9 {
- padding-bottom: 40px !important
+.govuk-\!-static-padding-top-9 {
+ padding-top: 60px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-bottom-9 {
- padding-bottom: 60px !important
- }
+.govuk-\!-static-padding-right-9 {
+ padding-right: 60px !important
}
-.govuk-\ !-padding-left-9 {
- padding-left: 40px !important
+.govuk-\!-static-padding-bottom-9 {
+ padding-bottom: 60px !important
}
-@media (min-width:40.0625em) {
- .govuk-\ !-padding-left-9 {
- padding-left: 60px !important
- }
+.govuk-\!-static-padding-left-9 {
+ padding-left: 60px !important
}
-.govuk-\ !-text-align-left {
+.govuk-\!-text-align-left {
text-align: left !important
}
-.govuk-\ !-text-align-centre {
+.govuk-\!-text-align-centre {
text-align: center !important
}
-.govuk-\ !-text-align-right {
+.govuk-\!-text-align-right {
text-align: right !important
}
-.govuk-\ !-font-size-80 {
- font-size: 53px !important;
- font-size: 3.3125norem !important;
- line-height: 1.03774 !important
+.govuk-\!-font-size-80 {
+ font-size: 3.3125rem !important;
+ line-height: 1.0377358491 !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-font-size-80 {
- font-size: 80px !important;
- font-size: 5norem !important;
+ .govuk-\!-font-size-80 {
+ font-size: 5rem !important;
line-height: 1 !important
}
}
@media print {
- .govuk-\ !-font-size-80 {
+ .govuk-\!-font-size-80 {
font-size: 53pt !important;
line-height: 1.1 !important
}
}
-.govuk-\ !-font-size-48 {
- font-size: 32px !important;
- font-size: 2norem !important;
+.govuk-\!-font-size-48 {
+ font-size: 2rem !important;
line-height: 1.09375 !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-font-size-48 {
- font-size: 48px !important;
- font-size: 3norem !important;
- line-height: 1.04167 !important
+ .govuk-\!-font-size-48 {
+ font-size: 3rem !important;
+ line-height: 1.0416666667 !important
}
}
@media print {
- .govuk-\ !-font-size-48 {
+ .govuk-\!-font-size-48 {
font-size: 32pt !important;
line-height: 1.15 !important
}
}
-.govuk-\ !-font-size-36 {
- font-size: 24px !important;
- font-size: 1.5norem !important;
- line-height: 1.04167 !important
+.govuk-\!-font-size-36 {
+ font-size: 1.5rem !important;
+ line-height: 1.0416666667 !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-font-size-36 {
- font-size: 36px !important;
- font-size: 2.25norem !important;
- line-height: 1.11111 !important
+ .govuk-\!-font-size-36 {
+ font-size: 2.25rem !important;
+ line-height: 1.1111111111 !important
}
}
@media print {
- .govuk-\ !-font-size-36 {
+ .govuk-\!-font-size-36 {
font-size: 24pt !important;
line-height: 1.05 !important
}
}
-.govuk-\ !-font-size-27 {
- font-size: 18px !important;
- font-size: 1.125norem !important;
- line-height: 1.11111 !important
+.govuk-\!-font-size-27 {
+ font-size: 1.125rem !important;
+ line-height: 1.1111111111 !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-font-size-27 {
- font-size: 27px !important;
- font-size: 1.6875norem !important;
- line-height: 1.11111 !important
+ .govuk-\!-font-size-27 {
+ font-size: 1.6875rem !important;
+ line-height: 1.1111111111 !important
}
}
@media print {
- .govuk-\ !-font-size-27 {
+ .govuk-\!-font-size-27 {
font-size: 18pt !important;
line-height: 1.15 !important
}
}
-.govuk-\ !-font-size-24 {
- font-size: 18px !important;
- font-size: 1.125norem !important;
- line-height: 1.11111 !important
+.govuk-\!-font-size-24 {
+ font-size: 1.125rem !important;
+ line-height: 1.1111111111 !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-font-size-24 {
- font-size: 24px !important;
- font-size: 1.5norem !important;
+ .govuk-\!-font-size-24 {
+ font-size: 1.5rem !important;
line-height: 1.25 !important
}
}
@media print {
- .govuk-\ !-font-size-24 {
+ .govuk-\!-font-size-24 {
font-size: 18pt !important;
line-height: 1.15 !important
}
}
-.govuk-\ !-font-size-19 {
- font-size: 16px !important;
- font-size: 1norem !important;
+.govuk-\!-font-size-19 {
+ font-size: 1rem !important;
line-height: 1.25 !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-font-size-19 {
- font-size: 19px !important;
- font-size: 1.1875norem !important;
- line-height: 1.31579 !important
+ .govuk-\!-font-size-19 {
+ font-size: 1.1875rem !important;
+ line-height: 1.3157894737 !important
}
}
@media print {
- .govuk-\ !-font-size-19 {
+ .govuk-\!-font-size-19 {
font-size: 14pt !important;
line-height: 1.15 !important
}
}
-.govuk-\ !-font-size-16 {
- font-size: 14px !important;
- font-size: .875norem !important;
- line-height: 1.14286 !important
+.govuk-\!-font-size-16 {
+ font-size: .875rem !important;
+ line-height: 1.1428571429 !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-font-size-16 {
- font-size: 16px !important;
- font-size: 1norem !important;
+ .govuk-\!-font-size-16 {
+ font-size: 1rem !important;
line-height: 1.25 !important
}
}
@media print {
- .govuk-\ !-font-size-16 {
+ .govuk-\!-font-size-16 {
font-size: 14pt !important;
line-height: 1.2 !important
}
}
-.govuk-\ !-font-size-14 {
- font-size: 12px !important;
- font-size: .75norem !important;
+.govuk-\!-font-size-14 {
+ font-size: .75rem !important;
line-height: 1.25 !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-font-size-14 {
- font-size: 14px !important;
- font-size: .875norem !important;
- line-height: 1.42857 !important
+ .govuk-\!-font-size-14 {
+ font-size: .875rem !important;
+ line-height: 1.4285714286 !important
}
}
@media print {
- .govuk-\ !-font-size-14 {
+ .govuk-\!-font-size-14 {
font-size: 12pt !important;
line-height: 1.2 !important
}
}
-.govuk-\ !-font-weight-regular {
+.govuk-\!-font-weight-regular {
font-weight: 400 !important
}
-.govuk-\ !-font-weight-bold {
+.govuk-\!-font-weight-bold {
font-weight: 700 !important
}
-.govuk-\ !-width-full,
-.govuk-\ !-width-three-quarters {
+.govuk-\!-font-tabular-numbers {
+ font-variant-numeric: tabular-nums !important
+}
+
+.govuk-\!-width-full,
+.govuk-\!-width-three-quarters {
width: 100% !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-width-three-quarters {
+ .govuk-\!-width-three-quarters {
width: 75% !important
}
}
-.govuk-\ !-width-two-thirds {
+.govuk-\!-width-two-thirds {
width: 100% !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-width-two-thirds {
+ .govuk-\!-width-two-thirds {
width: 66.66% !important
}
}
-.govuk-\ !-width-one-half {
+.govuk-\!-width-one-half {
width: 100% !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-width-one-half {
+ .govuk-\!-width-one-half {
width: 50% !important
}
}
-.govuk-\ !-width-one-third {
+.govuk-\!-width-one-third {
width: 100% !important
}
@media (min-width:40.0625em) {
- .govuk-\ !-width-one-third {
+ .govuk-\!-width-one-third {
width: 33.33% !important
}
}
-.govuk-\ !-width-one-quarter {
+.govuk-\!-width-one-quarter {
width: 100% !important
}
+
@media (min-width:40.0625em) {
- .govuk-\ !-width-one-quarter {
+ .govuk-\!-width-one-quarter {
width: 25% !important
}
}
+
+
+/*Match margin in main-wrapper so "Contents" is level*/
+@media (max-width:40.0625em) {
+ .govuk-contents-box {
+ margin-right: 30px;
+ margin-left: 30px
+
+ }
+}
+
+/*Match margin in main-wrapper so "Contents" is level*/
+@media (min-width:40.0625em) and (max-width:48.0625em) {
+ .govuk-contents-box {
+ margin-right: 45px;
+ margin-left: 45px
+
+ }
+}
+
+
+/*Match margin in main-wrapper so "Contents" is level*/
+@media (min-width:40.0625em) {
+ .govuk-contents-box {
+ margin-top: 40px;
+
+ }
+}
+
+
+/*Do not apply stickyness on smaller screen*/
+@media (min-width:48.0625em) {
+.govuk-contents-box_sticky {
+ position: fixed;
+ /*Guess? - probably could put exact pixels to make smooth*/
+ top: 26px;
+ /* Margin 0 to stop the contents box bopping around */
+ margin: 0;
+ padding: 0;
+}
+}
+
+
+/*Contents link formatting*/
+.govuk-contents {
+ top: 0.5rem;
+ padding: 0.25rem;
+}
+
+.govuk-contents__link {
+ padding-left: 0;
+ font-size: 1rem;
+}
+
+.govuk-subcontents {
+ list-style-type: none;
+ padding-left: 0;
+ font-size: 1rem;
+}
+
+/*Only display subcontents for first one - on load*/
+.govuk-contents ~ .govuk-contents > .govuk-subcontents {
+ display: none;
+}
+
+
+/*# sourceMappingURL=govuk-frontend-5.4.0.min.css.map */
diff --git a/inst/www/fonts/bold-affa96571d-v2.woff b/inst/www/fonts/bold-affa96571d-v2.woff
new file mode 100644
index 0000000..48fbcf5
Binary files /dev/null and b/inst/www/fonts/bold-affa96571d-v2.woff differ
diff --git a/inst/www/fonts/bold-b542beb274-v2.woff2 b/inst/www/fonts/bold-b542beb274-v2.woff2
new file mode 100644
index 0000000..81fd149
Binary files /dev/null and b/inst/www/fonts/bold-b542beb274-v2.woff2 differ
diff --git a/inst/www/fonts/light-94a07e06a1-v2.woff2 b/inst/www/fonts/light-94a07e06a1-v2.woff2
new file mode 100644
index 0000000..1eb1015
Binary files /dev/null and b/inst/www/fonts/light-94a07e06a1-v2.woff2 differ
diff --git a/inst/www/fonts/light-f591b13f7d-v2.woff b/inst/www/fonts/light-f591b13f7d-v2.woff
new file mode 100644
index 0000000..3b26d5f
Binary files /dev/null and b/inst/www/fonts/light-f591b13f7d-v2.woff differ
diff --git a/inst/www/images/favicon.ico b/inst/www/images/favicon.ico
new file mode 100644
index 0000000..20129a0
Binary files /dev/null and b/inst/www/images/favicon.ico differ
diff --git a/inst/www/images/favicon.svg b/inst/www/images/favicon.svg
new file mode 100644
index 0000000..67d7ef9
--- /dev/null
+++ b/inst/www/images/favicon.svg
@@ -0,0 +1 @@
+
diff --git a/inst/www/images/govuk-icon-180.png b/inst/www/images/govuk-icon-180.png
new file mode 100644
index 0000000..7c33beb
Binary files /dev/null and b/inst/www/images/govuk-icon-180.png differ
diff --git a/inst/www/images/govuk-icon-192.png b/inst/www/images/govuk-icon-192.png
new file mode 100644
index 0000000..35e51d7
Binary files /dev/null and b/inst/www/images/govuk-icon-192.png differ
diff --git a/inst/www/images/govuk-icon-512.png b/inst/www/images/govuk-icon-512.png
new file mode 100644
index 0000000..f5eb6f4
Binary files /dev/null and b/inst/www/images/govuk-icon-512.png differ
diff --git a/inst/www/images/govuk-icon-mask.svg b/inst/www/images/govuk-icon-mask.svg
new file mode 100644
index 0000000..e10ff6c
--- /dev/null
+++ b/inst/www/images/govuk-icon-mask.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/inst/www/images/govuk-opengraph-image.png b/inst/www/images/govuk-opengraph-image.png
new file mode 100644
index 0000000..4d0e312
Binary files /dev/null and b/inst/www/images/govuk-opengraph-image.png differ
diff --git a/inst/www/js/accordion.js b/inst/www/js/accordion.js
index 6f4c7cb..1795d38 100644
--- a/inst/www/js/accordion.js
+++ b/inst/www/js/accordion.js
@@ -1,35 +1,100 @@
-$(document).on('click', '.govuk-accordion__section-button', function(e) {
+// individual section buttons
+$(document).on('click', '.govuk-accordion__section-button', function (e) {
+ // get 'name' value from button
var str = e.target.name;
- var level = str.substring(str.length-1);
+ // get z value from name (Map argument)
+ var level = str.substring(str.length - 1);
+
+ // get class from top div
var cur_class = $('[name="accordion-default-heading-' + level + '"]').parent().parent().parent()[0].classList.value
- if(cur_class == "govuk-accordion__section") {
+
+ // check if "govuk-accordion__section--expanded" has already been added to the top div class
+ if (cur_class == "govuk-accordion__section") {
+
+ // add "govuk-accordion__section--expanded" to top div class
$('[name="accordion-default-heading-' + level + '"]').parent().parent().parent().addClass("govuk-accordion__section--expanded");
+
+ // remove chevron transform class
$('[name="accordion-default-heading-' + level + '"]').children().children().children().removeClass("govuk-accordion-nav__chevron--down")[0];
+
+ // edit toggle text
+ $('[name="accordion-default-heading-' + level + '"]').children().children().children()[1].innerHTML = "Hide"
+
} else {
+
+ // remove "govuk-accordion__section--expanded" to top div class
$('[name="accordion-default-heading-' + level + '"]').parent().parent().parent().removeClass("govuk-accordion__section--expanded");
+
+ // add chevron transform class
$('[name="accordion-default-heading-' + level + '"]').children().children().children().addClass("govuk-accordion-nav__chevron--down")[0];
+
+ // edit toggle text
+ $('[name="accordion-default-heading-' + level + '"]').children().children().children()[1].innerHTML = "Show"
+
+ // if any section set to hidden want "Show all text" and chevron down
+ document.getElementById("show-all-chevron").classList.add("govuk-accordion-nav__chevron--down")
+ document.getElementsByClassName("govuk-accordion__show-all-text")[0].innerHTML = "Show all sections"
}
});
-$(document).on('click', '.govuk-accordion__show-all', function(e) {
+// show all button
+$(document).on('click', '.govuk-accordion__show-all', function (e) {
+ // get all section elements
var sections = document.getElementsByClassName('govuk-accordion__section');
+
+ // get all chevron elements
var chevrons = document.getElementsByClassName('govuk-accordion-nav__chevron');
+ // get toggle text element
+ var toggle_text = document.getElementsByClassName('govuk-accordion__section-toggle-text');
+
+ // get current class value for the show all chevron
+ var show_all_chevron_class = document.getElementById("show-all-chevron").classList.value;
+
+
+ for (var i = 0; i < sections.length; i++) {
+
+ // check direction of Show all chevron
+ if (show_all_chevron_class != "govuk-accordion-nav__chevron") {
+
+ // switch Show all text and chevon direction
+ document.getElementsByClassName("govuk-accordion__show-all-text")[0].innerHTML = "Hide all sections";
+ chevrons[0].classList.remove("govuk-accordion-nav__chevron--down");
+
+ // only switch individual sections if they are closed
+ if (sections[i].classList.value == "govuk-accordion__section") {
+ sections[i].classList.add("govuk-accordion__section--expanded");
+
+ // note: chevron elements length one greater than section length due to show all/hide all chevron
+ chevrons[i + 1].classList.remove("govuk-accordion-nav__chevron--down");
+
+ // change individual section text to "Hide"
+ toggle_text[i].innerHTML = "Hide";
+
+ }
+
- for(var i=0; i< sections.length; i++){
- if(sections[i].classList.value == "govuk-accordion__section") {
- sections[i].classList.add("govuk-accordion__section--expanded");
- chevrons[i].classList.remove("govuk-accordion-nav__chevron--down");
} else {
- sections[i].classList.remove("govuk-accordion__section--expanded");
- chevrons[i].classList.add("govuk-accordion-nav__chevron--down");
+
+ // this else section does the opposite of the if section above
+ document.getElementsByClassName("govuk-accordion__show-all-text")[0].innerHTML = "Show all sections";
+ chevrons[0].classList.add("govuk-accordion-nav__chevron--down");
+
+ if (sections[i].classList.value != "govuk-accordion__section") {
+ sections[i].classList.remove("govuk-accordion__section--expanded");
+ chevrons[i + 1].classList.add("govuk-accordion-nav__chevron--down");
+
+ toggle_text[i].innerHTML = "Show";
+
+ }
+
}
- console.log(chevrons[i].classList.value);
+
}
diff --git a/inst/www/js/contents_link.js b/inst/www/js/contents_link.js
new file mode 100644
index 0000000..4f20d4f
--- /dev/null
+++ b/inst/www/js/contents_link.js
@@ -0,0 +1,63 @@
+
+// contents links JS
+$(document).on('click', '.govuk-contents__link', function(e) {
+
+ // get subcontents sections
+ var subsections = document.getElementsByClassName("govuk-subcontents");
+
+ // close all other subsections except in the section of the link you are clicking
+ for (var i = 0; i < subsections.length; i++) {
+
+ if(subsections[i].parentElement.children[0].id === event.target.id) {
+ subsections[i].style.display = "block"
+
+ } else {
+ subsections[i].style.display = "none"
+
+ }
+
+ }
+
+});
+
+
+
+// make navbar 'sticky' on scroll
+$(document).scroll(function () {
+
+ // Get the navbar
+ var nav_contents = document.getElementById("govuk-contents-box");
+
+
+ // Add the sticky class to the navbar when you reach its scroll position. Remove "sticky" when you leave the scroll position
+ if (window.pageYOffset >= document.getElementById("nav").offsetTop) {
+ nav_contents.classList.add("govuk-contents-box_sticky")
+
+ } else {
+ nav_contents.classList.remove("govuk-contents-box_sticky");
+ }
+
+
+});
+
+// Avoid the different widths caused by changing between fixed and static divs?
+function set_contents_box_width(){
+ var new_width = $('#nav').width();
+ $('#govuk-contents-box').width(new_width);
+}
+
+$(document).scroll(function () {
+ set_contents_box_width();
+});
+
+$(window).resize(function () {
+ set_contents_box_width();
+});
+
+
+// Scroll to top of main col
+$(document).on('click', '.govuk-contents__link', function(e) {
+
+ document.getElementById("main_col").scrollIntoView()
+
+});
diff --git a/inst/www/js/govuk-frontend-5.4.0.min.js b/inst/www/js/govuk-frontend-5.4.0.min.js
new file mode 100644
index 0000000..7c84957
--- /dev/null
+++ b/inst/www/js/govuk-frontend-5.4.0.min.js
@@ -0,0 +1 @@
+const version="5.4.0";function normaliseString(e,t){const n=e?e.trim():"";let s,i=null==t?void 0:t.type;switch(i||(["true","false"].includes(n)&&(i="boolean"),n.length>0&&isFinite(Number(n))&&(i="number")),i){case"boolean":s="true"===n;break;case"number":s=Number(n);break;default:s=e}return s}function mergeConfigs(...e){const t={};for(const n of e)for(const e of Object.keys(n)){const s=t[e],i=n[e];isObject(s)&&isObject(i)?t[e]=mergeConfigs(s,i):t[e]=i}return t}function extractConfigByNamespace(e,t,n){const s=e.schema.properties[n];if("object"!==(null==s?void 0:s.type))return;const i={[n]:{}};for(const[o,r]of Object.entries(t)){let e=i;const t=o.split(".");for(const[s,i]of t.entries())"object"==typeof e&&(s` from template `