/* * The default style sheet used to render HTML. * * Copyright (C) 2000 Lars Knoll (knoll@kde.org) * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public License * along with this library; see the file COPYING.LIB. If not, write to * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. * */ @namespace "http://www.w3.org/1999/xhtml"; html { display: block; } :root { view-transition-name: root; } /* generic block-level elements */ body { display: block; margin: 8px; } body:-webkit-full-page-media { background-color: rgb(0, 0, 0) } p { display: block; margin-block-start: 1__qem; margin-block-end: 1__qem; margin-inline-start: 0; margin-inline-end: 0; } div { display: block } article, aside, footer, header, hgroup, main, nav, search, section { display: block } marquee { display: inline-block; width: -webkit-fill-available; } address { display: block } blockquote { display: block; margin-block-start: 1__qem; margin-block-end: 1em; margin-inline-start: 40px; margin-inline-end: 40px; } figcaption { display: block } figure { display: block; margin-block-start: 1em; margin-block-end: 1em; margin-inline-start: 40px; margin-inline-end: 40px; } q { display: inline } q:before { content: open-quote; } q:after { content: close-quote; } center { display: block; /* special centering to be able to emulate the html4/netscape behaviour */ text-align: -webkit-center } hr { display: block; overflow: hidden; margin-block-start: 0.5em; margin-block-end: 0.5em; margin-inline-start: auto; margin-inline-end: auto; border-style: inset; border-width: 1px } map { display: inline } video { object-fit: contain; } video:-webkit-full-page-media { margin: auto; position: absolute; top: 0; right: 0; bottom: 0; left: 0; max-height: 100%; max-width: 100%; } audio:not([controls]) { display: none !important; } /** TODO(crbug.com/985623): Remove these hard-coded audio tag size. * This fixed audio tag width/height leads to fail the wpt tests below. * crbug.com/955170 external/wpt/css/css-contain/contain-size-replaced-003a.html * crbug.com/955163 external/wpt/css/css-contain/contain-size-replaced-003b.html * crbug.com/955163 external/wpt/css/css-contain/contain-size-replaced-003c.html */ audio { width: 300px; height: 54px; } video, canvas, img { overflow: clip; overflow-clip-margin: content-box; } iframe, embed, object, fencedframe { overflow: clip !important; overflow-clip-margin: content-box !important; } /* heading elements */ h1 { display: block; font-size: 2em; margin-block-start: 0.67__qem; margin-block-end: 0.67em; margin-inline-start: 0; margin-inline-end: 0; font-weight: bold } :-webkit-any(article,aside,nav,section) h1 { font-size: 1.5em; margin-block-start: 0.83__qem; margin-block-end: 0.83em; } :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 { font-size: 1.17em; margin-block-start: 1__qem; margin-block-end: 1em; } :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 { font-size: 1.00em; margin-block-start: 1.33__qem; margin-block-end: 1.33em; } :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 { font-size: .83em; margin-block-start: 1.67__qem; margin-block-end: 1.67em; } :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 { font-size: .67em; margin-block-start: 2.33__qem; margin-block-end: 2.33em; } h2 { display: block; font-size: 1.5em; margin-block-start: 0.83__qem; margin-block-end: 0.83em; margin-inline-start: 0; margin-inline-end: 0; font-weight: bold } h3 { display: block; font-size: 1.17em; margin-block-start: 1__qem; margin-block-end: 1em; margin-inline-start: 0; margin-inline-end: 0; font-weight: bold } h4 { display: block; margin-block-start: 1.33__qem; margin-block-end: 1.33em; margin-inline-start: 0; margin-inline-end: 0; font-weight: bold } h5 { display: block; font-size: .83em; margin-block-start: 1.67__qem; margin-block-end: 1.67em; margin-inline-start: 0; margin-inline-end: 0; font-weight: bold } h6 { display: block; font-size: .67em; margin-block-start: 2.33__qem; margin-block-end: 2.33em; margin-inline-start: 0; margin-inline-end: 0; font-weight: bold } /* tables */ table { display: table; border-collapse: separate; border-spacing: 2px; border-color: gray; box-sizing: border-box; text-indent: initial } thead { display: table-header-group; vertical-align: middle; border-color: inherit } tbody { display: table-row-group; vertical-align: middle; border-color: inherit } tfoot { display: table-footer-group; vertical-align: middle; border-color: inherit } /* for tables without table section elements (can happen with XHTML or dynamically created tables) */ table > tr { vertical-align: middle; } col { display: table-column } colgroup { display: table-column-group } tr { display: table-row; vertical-align: inherit; border-color: inherit } td, th { display: table-cell; vertical-align: inherit; } /* When the td/th are inside a table (the normal case), the padding is taken care of by HTMLTableCellElement::AdditionalPresentationAttributeStyle(). */ td:not(table td), th:not(table th) { padding: 1px; } th { font-weight: bold; text-align: -internal-center } caption { display: table-caption; text-align: -webkit-center } /* lists */ ul, menu, dir { display: block; list-style-type: disc; margin-block-start: 1__qem; margin-block-end: 1em; margin-inline-start: 0; margin-inline-end: 0; padding-inline-start: 40px } ol { display: block; list-style-type: decimal; margin-block-start: 1__qem; margin-block-end: 1em; margin-inline-start: 0; margin-inline-end: 0; padding-inline-start: 40px } li { display: list-item; text-align: -webkit-match-parent; } ul ul, ol ul { list-style-type: circle } ol ol ul, ol ul ul, ul ol ul, ul ul ul { list-style-type: square } dd { display: block; margin-inline-start: 40px } dl { display: block; margin-block-start: 1__qem; margin-block-end: 1em; margin-inline-start: 0; margin-inline-end: 0; } dt { display: block } ol ul, ul ol, ul ul, ol ol { margin-block-start: 0; margin-block-end: 0 } /* form elements */ form { display: block; margin-top: 0__qem; } :-webkit-any(table, thead, tbody, tfoot, tr) > form:-internal-is-html { display: none !important; } label { cursor: default; } legend { display: block; padding-inline-start: 2px; padding-inline-end: 2px; border: none } fieldset { display: block; margin-inline-start: 2px; margin-inline-end: 2px; padding-block-start: 0.35em; padding-inline-start: 0.75em; padding-inline-end: 0.75em; padding-block-end: 0.625em; border: 2px groove #C0C0C0; min-inline-size: min-content; } button { appearance: auto; -internal-align-content-block: center; } input, textarea, select, button { margin: 0__qem; font: -webkit-small-control; text-rendering: auto; /* FIXME: Remove when tabs work with optimizeLegibility. */ color: FieldText; letter-spacing: normal; word-spacing: normal; line-height: normal; text-transform: none; text-indent: 0; text-shadow: none; display: inline-block; text-align: start; } textarea { appearance: auto; border: 1px solid light-dark(#767676, #858585); column-count: initial !important; -webkit-rtl-ordering: logical; resize: -internal-textarea-auto; cursor: text; padding: 2px; white-space: pre-wrap; word-wrap: break-word; background-color: Field; font-family: monospace; } input { appearance: auto; padding:1px 0; border: 2px inset light-dark(#767676, #858585); -webkit-rtl-ordering: logical; cursor: text; background-color: Field; } input:not([type="file" i], [type="image" i], [type="checkbox" i], [type="radio" i]) { -internal-align-content-block: center; } input[type="search" i] { appearance: auto; box-sizing: border-box; } input::-webkit-textfield-decoration-container { display: flex !important; align-items: center; -webkit-user-modify: read-only !important; content: none !important; writing-mode: inherit !important; } input::-webkit-clear-button { appearance: auto; display: inline-block; cursor: default; flex: none; -webkit-user-modify: read-only !important; margin-inline-start: 2px; opacity: 0; pointer-events: none; } input:enabled:read-write:-webkit-any(:focus,:hover)::-webkit-clear-button { opacity: 1; pointer-events: auto; } input[type="search" i]::-webkit-search-cancel-button { appearance: auto; display: block; cursor: default; flex: none; -webkit-user-modify: read-only !important; margin-inline-start: 1px; margin-right: 3px; opacity: 0; pointer-events: none; user-select: none !important; } input[type="search" i]:enabled:read-write:-webkit-any(:focus,:hover)::-webkit-search-cancel-button { opacity: 1; pointer-events: auto; } input[type="search" i]::-webkit-search-results-decoration { margin: auto 3px auto 2px; } input, input[type="email" i], input[type="number" i], input[type="password" i], input[type="search" i], input[type="tel" i], input[type="text" i], input[type="url" i] { padding-block: 1px; padding-inline: 2px; } input[type="tel" i] { direction: ltr; } input::-webkit-inner-spin-button { appearance: auto; display: inline-block; cursor: default; flex: none; align-self: stretch; -webkit-user-modify: read-only !important; opacity: 0; pointer-events: none; } input:enabled:read-write:-webkit-any(:focus,:hover)::-webkit-inner-spin-button { opacity: 1; pointer-events: auto; } ::-webkit-input-placeholder { -webkit-text-security: none; color: #757575; direction: inherit !important; pointer-events: none !important; text-orientation: inherit !important; writing-mode: inherit !important; } input::-webkit-input-placeholder { text-overflow: inherit; line-height: initial !important; white-space: pre; word-wrap: normal; overflow: hidden; -webkit-user-modify: read-only !important; } input::-internal-input-suggested { text-overflow: inherit; white-space: nowrap; overflow: hidden; } input::-internal-input-suggested, textarea::-internal-input-suggested { font: -webkit-small-control !important; /* -webkit-small-control does not pin the font-feature-settings and we want previews to look consistent. */ font-feature-settings: normal !important; /* Prevent that overflow affects the scrollable area. Without this, LayoutBox::*Scroll{Height,Width}() may determine the scroll width/height from the scrollable area instead of from the overrides in LayoutTextControl{Single,Multi}Line::Scroll{Height,Width}(). */ overflow: hidden !important; overflow-anchor: none; } textarea::-internal-input-suggested { font-family: monospace !important; } input[type="password" i] { -webkit-text-security: disc !important; } input[type="password" i]::-internal-input-suggested:not(.reveal-password) { -webkit-text-security: disc !important; } input[type="password" i]::-internal-input-suggested.reveal-password { -webkit-text-security: none; } input[type="password" i]::-internal-input-suggested.fade-out-password { width: fit-content; -webkit-mask: linear-gradient(to right, #000 50%, #0000); mask: linear-gradient(to right, #000 50%, #0000); } input[type="password" i]::-internal-reveal { width: 1.3em; height: 1.3em; cursor: default; flex: none; background-image: url(images/password_reveal_on.svg); background-repeat: no-repeat; background-position: center; background-size: contain; margin-left: 3px; margin-right: 3px; } input[type="password" i]::-internal-reveal.reveal { background-image: url(images/password_reveal_off.svg); } input[type="password" i]::-internal-reveal:hover, input[type="password" i]::-internal-reveal:focus { border-radius: 1px; cursor: pointer; } input[type="password" i]::-internal-strong { color: light-dark(#0B57D0, #A8C7FA); font-family: roboto; -webkit-text-security: none; } input[type="hidden" i], input[type="image" i], input[type="file" i] { appearance: none; padding: initial; background-color: initial; border: initial; cursor: default; } input[type="file" i] { align-items: baseline; color: inherit; text-align: start !important; text-overflow: ellipsis; white-space: pre; } input[type="image" i] { cursor: pointer; } input[type="radio" i], input[type="checkbox" i] { margin:3px 3px 3px 4px; padding: initial; background-color: initial; border: initial; cursor: default; } input[type="radio" i] { margin:3px 3px 0 5px; } input[type="button" i], input[type="submit" i], input[type="reset" i] { -internal-empty-line-height: fabricated; appearance: auto; user-select: none; white-space: pre } input[type="file" i]::-webkit-file-upload-button { appearance: auto; -webkit-user-modify: read-only !important; white-space: nowrap; margin: 0; margin-inline-end: 4px; /* See FileUploadControlIntrinsicInlineSize() */ font-size: inherit; } input[type="button" i], input[type="submit" i], input[type="reset" i], input[type="file" i]::-webkit-file-upload-button, button { align-items: flex-start; text-align: center; cursor: default; padding-block: 1px; padding-inline: 6px; border: 2px outset ButtonBorder; box-sizing: border-box; background-color: ButtonFace; color: ButtonText; } input[type="checkbox" i]:disabled, input[type="file" i]:disabled, input[type="hidden" i]:disabled, input[type="image" i]:disabled, input[type="radio" i]:disabled, input[type="range" i]:disabled { background-color: initial; } input[type="range" i] { appearance: auto; padding: initial; border: initial; margin: 2px; cursor: default; color: light-dark(#101010, #ffffff); } input[type="range" i]::-webkit-slider-container, input[type="range" i]::-webkit-media-slider-container { appearance: inherit; flex: 1; min-inline-size: 0; box-sizing: border-box; -webkit-user-modify: read-only !important; display: flex; } input[type="range" i]:-internal-has-datalist::-webkit-slider-container { /* * See LayoutThemeDefault. "22px" is * 2 * (SliderTickOffsetFromTrackCenter() + SliderTickSize().Height()). */ min-block-size: 22px; } input[type="range" i]::-webkit-slider-runnable-track { flex: 1; min-inline-size: 0; align-self: center; box-sizing: border-box; -webkit-user-modify: read-only !important; display: block; } input[type="range" i]::-webkit-slider-thumb, input[type="range" i]::-webkit-media-slider-thumb { appearance: auto; box-sizing: border-box; -webkit-user-modify: read-only !important; display: block; } input[type="range" i]:disabled { color: #c5c5c5; } input[type="button" i]:disabled, input[type="submit" i]:disabled, input[type="reset" i]:disabled, input[type="color" i]:disabled, input[type="file" i]:disabled::-webkit-file-upload-button, button:disabled { background-color: light-dark(rgba(239, 239, 239, 0.3), rgba(19, 1, 1, 0.3)); border-color: light-dark(rgba(118, 118, 118, 0.3), rgba(195, 195, 195, 0.3)); color: light-dark(rgba(16, 16, 16, 0.3), rgba(255, 255, 255, 0.3)); } input[type="button" i]:active, input[type="submit" i]:active, input[type="reset" i]:active, input[type="file" i]:active::-webkit-file-upload-button, button:active { border-style: inset } input[type="button" i]:active:disabled, input[type="submit" i]:active:disabled, input[type="reset" i]:active:disabled, input[type="file" i]:active:disabled::-webkit-file-upload-button, button:active:disabled { border-style: outset } input:disabled, textarea:disabled { cursor: default; background-color: light-dark(rgba(239, 239, 239, 0.3), rgba(59, 59, 59, 0.3)); color: light-dark(#545454, #aaaaaa); } option:-internal-spatial-navigation-focus { outline: light-dark(black, white) dashed 1px; outline-offset: -1px; } input:not([type="image" i], [type="range" i], [type="checkbox" i], [type="radio" i]) { overflow: clip !important; overflow-clip-margin: 0px !important; } /* https://html.spec.whatwg.org/multipage/rendering.html#hidden-elements */ /* TODO(crbug.com/1231263): should be display:none. */ area { display: inline; } base, basefont, datalist, head, link, meta, noembed, noframes, param, rp, script, style, template, title { display: none; } input[type="hidden" i] { display: none !important; } area:-webkit-any-link { cursor: pointer; } input[type="checkbox" i] { appearance: auto; box-sizing: border-box; } input[type="radio" i] { appearance: auto; box-sizing: border-box; } input[type="color" i] { appearance: auto; inline-size: 50px; block-size: 27px; /* Same as native_theme_base. */ border: 1px solid ButtonBorder; padding: 1px 2px; cursor: default; box-sizing: border-box; background-color: ButtonFace; color: ButtonText; } input[type="color" i]::-webkit-color-swatch-wrapper { display: flex; padding: 4px 2px; box-sizing: border-box; -webkit-user-modify: read-only !important; width: 100%; height: 100% } input[type="color" i]::-webkit-color-swatch { /* The swatch should not be affected by color scheme. */ color-scheme: only light; background-color: #000000; border: 1px solid #777777; flex: 1; min-width: 0; -webkit-user-modify: read-only !important; } input[type="color" i][list] { appearance: auto; inline-size: 94px; block-size: 27px } input[type="color" i][list]::-webkit-color-swatch-wrapper { padding-inline-start: 8px; padding-inline-end: 24px; } input[type="color" i][list]::-webkit-color-swatch { border-color: #000000; } input::-webkit-calendar-picker-indicator { display: inline-block; inline-size: 0.66em; block-size: 0.66em; padding-block: 0.17em; padding-inline: 0.34em; -webkit-user-modify: read-only !important; opacity: 0; cursor: default; pointer-events: none; } input::-webkit-calendar-picker-indicator:hover { background-color: #eee; } input:enabled:read-write:-webkit-any(:focus,:hover)::-webkit-calendar-picker-indicator, input::-webkit-calendar-picker-indicator:focus { opacity: 1; pointer-events: auto; } input[type="date" i]:disabled::-webkit-clear-button, input[type="date" i]:disabled::-webkit-inner-spin-button, input[type="datetime-local" i]:disabled::-webkit-clear-button, input[type="datetime-local" i]:disabled::-webkit-inner-spin-button, input[type="month" i]:disabled::-webkit-clear-button, input[type="month" i]:disabled::-webkit-inner-spin-button, input[type="week" i]:disabled::-webkit-clear-button, input[type="week" i]:disabled::-webkit-inner-spin-button, input:disabled::-webkit-calendar-picker-indicator, input[type="date" i][readonly]::-webkit-clear-button, input[type="date" i][readonly]::-webkit-inner-spin-button, input[type="datetime-local" i][readonly]::-webkit-clear-button, input[type="datetime-local" i][readonly]::-webkit-inner-spin-button, input[type="month" i][readonly]::-webkit-clear-button, input[type="month" i][readonly]::-webkit-inner-spin-button, input[type="week" i][readonly]::-webkit-clear-button, input[type="week" i][readonly]::-webkit-inner-spin-button, input[readonly]::-webkit-calendar-picker-indicator { visibility: hidden; } /* Form controls that measure the inline size without doing actual layout need to disable `text-autospace`, if their content can be affected by the property. crbug.com/1484863 */ input[type="date" i], input[type="datetime-local" i], input[type="month" i], input[type="week" i], select { text-autospace: no-autospace !important; } select { appearance: auto; box-sizing: border-box; align-items: center; white-space: pre; -webkit-rtl-ordering: logical; color: FieldText; background-color: Field; border: 1px solid light-dark(#767676, #858585); cursor: default; border-radius: 0; } select:disabled { opacity: 0.7; } /* -internal-list-box is how we specify select[multiple] */ /* select[multiple] is an exception to the prohibition on sizes here because it is one of the few controls with borders that grow on zoom (to solve a nasty scrollbar location problem) */ select:-internal-list-box { appearance: auto; align-items: flex-start; -internal-overflow-inline: hidden; -internal-overflow-block: scroll; vertical-align: text-bottom; white-space: nowrap; border-radius: 2px; } select:not(:-internal-list-box) { overflow: visible !important; } /* The padding here should match the value of |extraPaddingForOptionInsideOptgroup| in list_picker.js, which is the padding for select optgroup option. */ select:-internal-list-box optgroup option { padding-inline-start: 20px; } select:-internal-list-box option, select:-internal-list-box optgroup { line-height: initial !important; } /* option selected, list-box focused */ /* TODO(crbug.com/1244986): We should be able to remove !important here, but it breaks some WebUI menus. */ select:-internal-list-box:focus option:checked, select:-internal-list-box:focus option:checked:hover { background-color: SelectedItem !important; color: SelectedItemText !important; } /* TODO(crbug.com/1244986): We should be able to remove !important here, but it breaks some WebUI menus. */ select:-internal-list-box:focus option:checked:disabled { background-color: -internal-inactive-list-box-selection !important; } /* option selected, list-box not focused */ select:-internal-list-box option:checked, select:-internal-list-box option:checked:hover { background-color: light-dark(#cecece, #545454); color: light-dark(#101010, #FFFFFF); } select:-internal-list-box:disabled option:checked, select:-internal-list-box option:checked:disabled, select:-internal-list-box option:checked:disabled:hover { color: light-dark(gray, #aaa); } select:-internal-list-box hr { border-style: none; margin-block-start: 0.5em; margin-block-end: 0; } select:-internal-list-box:focus-visible option:-internal-multi-select-focus { outline: auto 1px -webkit-focus-ring-color; outline-offset: -1px; } select:-internal-list-box option:hover { background-color: initial; } optgroup { font-weight: bolder; display: block; } option { font-weight: normal; display: block; padding-inline: 2px; padding-block-start: 0; padding-block-end: 1px; white-space: nowrap; min-block-size: 1.2em; } /* The following select style rules have to go after the other select styles in order to have higher precedence. */ /* TODO(crbug.com/880258): Use different styles for `-internal-autofill-previewed` and `-internal-autofill-selected`. */ input:-internal-autofill-previewed, input:-internal-autofill-selected, textarea:-internal-autofill-previewed, textarea:-internal-autofill-selected, select:-internal-autofill-previewed, select:-internal-autofill-selected { appearance: menulist-button; background-image:none !important; background-color: light-dark(#E8F0FE, rgba(70,90,126,0.4)) !important; color: FieldText !important; } input:disabled, select:disabled, textarea:disabled { border-color: rgba(118, 118, 118, 0.3); } select:disabled, optgroup:disabled, option:disabled, select[disabled]>option { color: light-dark(GrayText, #aaa); } output { display: inline; } /* meter */ @supports not blink-feature(MeterAppearanceNoneFallbackStyle) { meter { appearance: auto; box-sizing: border-box; display: inline-block; block-size: 1em; inline-size: 5em; vertical-align: -0.2em; -webkit-user-modify: read-only !important; } meter::-webkit-meter-inner-element { appearance: inherit; box-sizing: inherit; display: none; -webkit-user-modify: read-only !important; block-size: 100%; inline-size: 100%; } meter::-webkit-meter-inner-element:-internal-shadow-host-has-non-auto-appearance { display: grid; grid-template-rows: 1fr [line1] 2fr [line2] 1fr; position: relative; } meter::-internal-fallback:-internal-shadow-host-has-non-auto-appearance { display: none; } meter::-webkit-meter-bar { block-size: 100%; inline-size: 100%; -webkit-user-modify: read-only !important; background: light-dark(#efefef, #3B3B3B); border: thin solid light-dark(rgba(118, 118, 118, 0.3), #858585); grid-row-start: line1; grid-row-end: line2; border-radius: 20px; box-sizing: border-box; align-self: unsafe center; position: absolute; overflow: hidden; } meter::-webkit-meter-optimum-value { block-size: 100%; -webkit-user-modify: read-only !important; box-sizing: border-box; background: light-dark(#107c10, #74b374); } meter::-webkit-meter-suboptimum-value { block-size: 100%; -webkit-user-modify: read-only !important; box-sizing: border-box; background: light-dark(#ffb900, #f2c812); } meter::-webkit-meter-even-less-good-value { block-size: 100%; -webkit-user-modify: read-only !important; box-sizing: border-box; background: light-dark(#d83b01, #e98f6d); } } @supports blink-feature(MeterAppearanceNoneFallbackStyle) { meter { -webkit-user-modify: read-only !important; appearance: auto; block-size: 1em; box-sizing: border-box; display: inline-block; inline-size: 5em; vertical-align: -0.2em; } meter::-webkit-meter-inner-element { -webkit-user-modify: read-only !important; appearance: inherit; block-size: 100%; box-sizing: inherit; display: grid; grid-template-rows: 1fr [line1] 2fr [line2] 1fr; inline-size: 100%; position: relative; } meter::-webkit-meter-bar { -webkit-user-modify: read-only !important; align-self: unsafe center; background: linear-gradient(to bottom, #ddd, #eee 20%, #ccc 45%, #ccc 55%, #ddd); block-size: 100%; box-sizing: border-box; grid-row-end: line2; grid-row-start: line1; inline-size: 100%; overflow: hidden; position: absolute; } meter::-webkit-meter-bar:-internal-shadow-host-has-non-auto-appearance { background: light-dark(#efefef, #3B3B3B); border-radius: 20px; border: thin solid light-dark(rgba(118, 118, 118, 0.3), #858585); } meter::-webkit-meter-optimum-value { -webkit-user-modify: read-only !important; background: linear-gradient(to bottom, #ad7, #cea 20%, #7a3 45%, #7a3 55%, #ad7); block-size: 100%; box-sizing: border-box; } meter::-webkit-meter-optimum-value:-internal-shadow-host-has-non-auto-appearance { background: light-dark(#107c10, #74b374); } meter::-webkit-meter-suboptimum-value { -webkit-user-modify: read-only !important; background: linear-gradient(to bottom, #fe7, #ffc 20%, #db3 45%, #db3 55%, #fe7); block-size: 100%; box-sizing: border-box; } meter::-webkit-meter-suboptimum-value:-internal-shadow-host-has-non-auto-appearance { background: light-dark(#ffb900, #f2c812); } meter::-webkit-meter-even-less-good-value { -webkit-user-modify: read-only !important; background: linear-gradient(to bottom, #f77, #fcc 20%, #d44 45%, #d44 55%, #f77); block-size: 100%; box-sizing: border-box; } meter::-webkit-meter-even-less-good-value:-internal-shadow-host-has-non-auto-appearance { background: light-dark(#d83b01, #e98f6d); } } /* progress */ progress { appearance: auto; box-sizing: border-box; display: inline-block; block-size: 1em; inline-size: 10em; vertical-align: -0.2em; } progress::-webkit-progress-inner-element { box-sizing: inherit; -webkit-user-modify: read-only; block-size: 100%; inline-size: 100%; } progress::-webkit-progress-bar { background-color: gray; block-size: 100%; inline-size: 100%; -webkit-user-modify: read-only !important; box-sizing: border-box; } progress::-webkit-progress-value { background-color: green; block-size: 100%; inline-size: 50%; /* should be removed later */ -webkit-user-modify: read-only !important; box-sizing: border-box; } /* inline elements */ u, ins { text-decoration: underline } abbr[title], acronym[title] { text-decoration: dotted underline; } strong, b { font-weight: bold } i, cite, em, var, address, dfn { font-style: italic } tt, code, kbd, samp { font-family: monospace } pre, xmp, plaintext, listing { display: block; font-family: monospace; white-space: pre; margin: 1__qem 0 } mark { background-color: Mark; color: MarkText; } big { font-size: larger } small { font-size: smaller } s, strike, del { text-decoration: line-through } sub { vertical-align: sub; font-size: smaller } sup { vertical-align: super; font-size: smaller } nobr { white-space: nowrap } /* states */ :-internal-selector-fragment-anchor { outline: Highlight 3px solid; } :focus-visible { outline: auto 1px -webkit-focus-ring-color } html:focus-visible, body:focus-visible { outline: none } embed:focus-visible, iframe:focus-visible, object:focus-visible { outline: none } input:focus-visible, textarea:focus-visible, select:focus-visible { outline-offset: 0; } input[type="button" i]:focus-visible, input[type="file" i]:focus-visible, input[type="hidden" i]:focus-visible, input[type="image" i]:focus-visible, input[type="reset" i]:focus-visible, input[type="submit" i]:focus-visible, input[type="file" i]:focus-visible::-webkit-file-upload-button { outline-offset: 0 } input[type="checkbox" i]:focus-visible, input[type="radio" i]:focus-visible { outline-offset: 2px; } input[type="date" i]::-webkit-calendar-picker-indicator, input[type="datetime-local" i]::-webkit-calendar-picker-indicator, input[type="month" i]::-webkit-calendar-picker-indicator, input[type="week" i]::-webkit-calendar-picker-indicator { background-image: light-dark(url(images/calendar_icon.svg), url(images/calendar_icon_white.svg)); background-origin: content-box; background-repeat: no-repeat; background-size: contain; block-size: 1.0em; inline-size: 1.0em; opacity: 1; outline: none; padding: 2px; } input[type="date" i]::-webkit-calendar-picker-indicator:focus-visible, input[type="datetime-local" i]::-webkit-calendar-picker-indicator:focus-visible, input[type="month" i]::-webkit-calendar-picker-indicator:focus-visible, input[type="week" i]::-webkit-calendar-picker-indicator:focus-visible { outline: solid 2px -webkit-focus-ring-color; outline-offset: -2px; } input[type="time" i]::-webkit-calendar-picker-indicator { background-image: light-dark(url(images/time_icon.svg), url(images/time_icon_white.svg)); background-origin: content-box; background-repeat: no-repeat; background-size: contain; opacity: 1; outline: none; margin-inline-start: 8px; padding-inline-start: 3px; padding-inline-end: 3px; padding-block: 3px; block-size: 1.05em; inline-size: 1.05em; } input[type="time" i]::-webkit-calendar-picker-indicator:focus-visible { outline: solid 2px -webkit-focus-ring-color; outline-offset: -2px; } input::-webkit-calendar-picker-indicator:hover { background-color: initial; } input::-webkit-datetime-edit-ampm-field:focus, input::-webkit-datetime-edit-day-field:focus, input::-webkit-datetime-edit-hour-field:focus, input::-webkit-datetime-edit-millisecond-field:focus, input::-webkit-datetime-edit-minute-field:focus, input::-webkit-datetime-edit-month-field:focus, input::-webkit-datetime-edit-second-field:focus, input::-webkit-datetime-edit-week-field:focus, input::-webkit-datetime-edit-year-field:focus { background-color: light-dark(highlight, #99C8FF); color: light-dark(highlighttext, #000000); outline: none; } input::-webkit-datetime-edit-year-field[disabled], input::-webkit-datetime-edit-month-field[disabled], input::-webkit-datetime-edit-week-field[disabled], input::-webkit-datetime-edit-day-field[disabled], input::-webkit-datetime-edit-ampm-field[disabled], input::-webkit-datetime-edit-hour-field[disabled], input::-webkit-datetime-edit-millisecond-field[disabled], input::-webkit-datetime-edit-minute-field[disabled], input::-webkit-datetime-edit-second-field[disabled] { color: light-dark(GrayText, rgb(165, 165, 165)); } a:-webkit-any-link { color: -webkit-link; text-decoration: underline; cursor: pointer; } a:-webkit-any-link:active { color: -webkit-activelink } a:-webkit-any-link:read-write { cursor: text; } a:-webkit-any-link:focus-visible { outline-offset: 1px; } /* HTML5 ruby elements */ ruby, rt { text-indent: 0; /* blocks used for ruby rendering should not trigger this */ } ruby { display: ruby; } rt { line-height: normal; text-emphasis: none; } ruby > rt { display: ruby-text; font-size: 50%; text-align: start; } /* other elements */ frameset, frame { display: block } frameset { border-color: inherit } iframe { border: 2px inset } fencedframe { border: 2px inset; object-fit: contain !important; object-position: 50% 50% !important; } details { display: block } summary { display: block } /* * https://html.spec.whatwg.org/C/#the-details-and-summary-elements * The specification doesn't have |details >| and |:first-of-type|. * We add them because: * - We had provided |summary { display: block }| for a long time, * there are sites using without details, and they * expect that is not a list-item. * - Firefox does so. */ details > summary:first-of-type { display: list-item; counter-increment: list-item 0; list-style: disclosure-closed inside; } details[open] > summary:first-of-type { list-style-type: disclosure-open; } /* https://html.spec.whatwg.org/multipage/rendering.html#bidi-rendering */ /* This chunk of styles interacts with the `name == html_names::kDirAttr` case in HTMLElement::CollectStyleForPresentationAttribute(). Make sure any changes here are congruent with changes made there. */ address, blockquote, center, div, figure, figcaption, footer, form, header, hr, legend, listing, main, p, plaintext, pre, summary, xmp, article, aside, h1, h2, h3, h4, h5, h6, hgroup, nav, section, search, table, caption, colgroup, col, thead, tbody, tfoot, tr, td, th, dir, dd, dl, dt, menu, ol, ul, li, bdi, output, [dir=ltr i], [dir=rtl i], [dir=auto i] { unicode-bidi: isolate; } bdo, bdo[dir] { unicode-bidi: isolate-override; } textarea[dir=auto i], pre[dir=auto i] { unicode-bidi: plaintext; } dialog { display: none; /* https://html.spec.whatwg.org/multipage/rendering.html#flow-content-3 */ position: absolute; inset-inline-start: 0; inset-inline-end: 0; width: fit-content; height: fit-content; margin: auto; border: solid; padding: 1em; background-color: Canvas; color: CanvasText; } dialog[open] { display: block; } dialog:-internal-dialog-in-top-layer { /* https://html.spec.whatwg.org/multipage/rendering.html#flow-content-3 */ position: fixed; overflow: auto; inset-block-start: 0; inset-block-end: 0; max-width: calc(100% - 6px - 2em); max-height: calc(100% - 6px - 2em); /* https://github.com/w3c/csswg-drafts/issues/6939#issuecomment-1016679588 */ user-select: text; visibility: visible; } dialog:modal { overlay: auto !important; } /* TODO(foolip): In the Fullscreen spec, there's a ::backdrop block with the properties shared with :fullscreen::backdrop (see fullscreen.css). */ dialog:-internal-dialog-in-top-layer::backdrop { position: fixed; inset: 0; /* https://html.spec.whatwg.org/multipage/rendering.html#flow-content-3 */ background: rgba(0,0,0,0.1); } slot { display: contents; } [popover] { position: fixed; inset: 0; width: fit-content; height: fit-content; margin: auto; border: solid; padding: 0.25em; overflow: auto; color: CanvasText; background-color: Canvas; } /* This ensures that popovers get display:none when they are not open, and we need to be careful not to affect `` when open as a dialog. */ [popover]:not(:popover-open):not(dialog[open]) { display:none; } /* The UA stylesheet has a rule like dialog{display:none}, so needs this to be visible when it is open as a popover. */ dialog:popover-open { display:block; } @supports blink-feature(HTMLAnchorAttribute) { /* Popovers using anchor positioning get their inset properties reset, to make * it easier to position them. */ [popover][anchor] { inset:auto; } } /* This rule matches popovers (dialog or not) that are currently open as a popover. */ [popover]:popover-open:not(dialog), dialog:popover-open:not([open]) { overlay: auto !important; } [popover]:-internal-popover-in-top-layer::backdrop { /* From the (modified) fullscreen spec: https://fullscreen.spec.whatwg.org/#user-agent-level-style-sheet-defaults: */ position: fixed; inset: 0; /* Specific to [popover]: */ pointer-events: none !important; background-color: transparent; } /* Pagination */ @media print { @page { /* https://drafts.csswg.org/css-page-3/#margin-text-alignment */ @top-left-corner { text-align: right; vertical-align: middle; } @top-left { text-align: left; vertical-align: middle; } @top-center { text-align: center; vertical-align: middle; } @top-right { text-align: right; vertical-align: middle; } @top-right-corner { text-align: left; vertical-align: middle; } @right-top { text-align: center; vertical-align: top; } @right-middle { text-align: center; vertical-align: middle; } @right-bottom { text-align: center; vertical-align: bottom; } @bottom-right-corner { text-align: left; vertical-align: middle; } @bottom-right { text-align: right; vertical-align: middle; } @bottom-center { text-align: center; vertical-align: middle; } @bottom-left { text-align: left; vertical-align: middle; } @bottom-left-corner { text-align: right; vertical-align: middle; } @left-bottom { text-align: center; vertical-align: bottom; } @left-middle { text-align: center; vertical-align: middle; } @left-top { text-align: center; vertical-align: top; } } /* Allows table headers and footers to print at the top / bottom of each page. */ thead { break-inside: avoid; } tfoot { break-inside: avoid; } } /* spelling/grammar error pseudos */ html::spelling-error { text-decoration: -internal-spelling-error-color spelling-error; } html::grammar-error { text-decoration: -internal-grammar-error-color grammar-error; } @supports blink-feature(AutoSizeLazyLoadedImages) { img:is([sizes="auto" i], [sizes^="auto," i]) { contain: size !important; contain-intrinsic-size: 300px 150px; } } /* noscript is handled internally, as it depends on settings. */