summaryrefslogtreecommitdiffstats
path: root/toolkit/themes/shared/radio.css
blob: b086ae7c3f20510f95e21a72cb6be385aaba0603 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

/* ===== radio.css ===================================================
  == Styles used by the XUL radio element.
  ======================================================================= */

@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");

/* ::::: radio ::::: */

radio {
  align-items: center;
  margin: 2px 4px;

  @media (-moz-platform: windows) {
    padding-block: 1px;
    padding-inline: 4px 2px;
  }

  &[disabled="true"] {
    color: GrayText;
  }
}

.radio-label {
  margin: 0;
}

.radio-check {
  appearance: auto;
  -moz-default-appearance: radio;
  margin: 1px 0;

  radiogroup:focus-visible > radio[focused] > & {
    outline-style: auto;
  }

  @media (-moz-platform: windows) {
    width: 13px;
    height: 13px;
  }

  @media (-moz-platform: linux) {
    margin: 2px;
  }

  @media (-moz-platform: macos) {
    width: 1.3em;
    height: 1.3em;
    margin: 0 1px 1px;
    /* vertical-align tells native theming where to snap to. However, this
     * doesn't always work reliably because of bug 503833. */
    vertical-align: bottom;
  }
}

@media (-moz-platform: windows) or (-moz-platform: linux) {
  radiogroup:focus-visible > radio[focused="true"] > .radio-label-box {
    outline: var(--focus-outline);
  }

  .radio-icon[src] {
    margin-inline-end: 2px;
  }
}

@media (-moz-platform: windows) {
  .radio-label-box {
    margin-inline-start: 2px;
    padding-bottom: 1px;
    padding-inline-start: 1px;
  }
}

@media (-moz-platform: macos) {
  .radio-label,
  radiogroup {
    margin: 1px 0;
  }

  .radio-icon {
    margin-inline-end: 2px;
  }
}