code.gitea.io/gitea@v1.22.3/web_src/css/modules/input.css (about) 1 /* based on Fomantic UI input module, with just the parts extracted that we use. If you find any 2 unused rules here after refactoring, please remove them. */ 3 4 .ui.input { 5 position: relative; 6 font-weight: var(--font-weight-normal); 7 display: inline-flex; 8 color: var(--color-input-text); 9 } 10 .ui.input > input { 11 margin: 0; 12 max-width: 100%; 13 flex: 1 0 auto; 14 outline: none; 15 font-family: var(--fonts-regular); 16 padding: 0.67857143em 1em; 17 border: 1px solid var(--color-input-border); 18 color: var(--color-input-text); 19 border-radius: 0.28571429rem; 20 line-height: var(--line-height-default); 21 text-align: start; 22 } 23 24 .ui.disabled.input, 25 .ui.input:not(.disabled) input[disabled] { 26 opacity: var(--opacity-disabled); 27 } 28 .ui.disabled.input > input, 29 .ui.input:not(.disabled) input[disabled] { 30 pointer-events: none; 31 } 32 33 .ui.input.focus > input, 34 .ui.input > input:focus { 35 border-color: var(--color-primary); 36 } 37 38 .ui.input.error > input { 39 background: var(--color-error-bg); 40 border-color: var(--color-error-border); 41 color: var(--color-error-text); 42 } 43 44 .ui.icon.input > i.icon { 45 display: flex; 46 align-items: center; 47 justify-content: center; 48 cursor: default; 49 position: absolute; 50 text-align: center; 51 top: 0; 52 right: 0; 53 margin: 0; 54 height: 100%; 55 width: 2.67142857em; 56 opacity: 0.5; 57 border-radius: 0 0.28571429rem 0.28571429rem 0; 58 pointer-events: none; 59 padding: 4px; 60 } 61 62 .ui.icon.input > i.icon.is-loading { 63 position: absolute !important; 64 height: 28px; 65 top: 4px; 66 } 67 68 .ui.icon.input > i.icon.is-loading > * { 69 visibility: hidden; 70 } 71 72 .ui.ui.ui.ui.icon.input > textarea, 73 .ui.ui.ui.ui.icon.input > input { 74 padding-right: 2.67142857em; 75 } 76 .ui.icon.input > i.link.icon { 77 cursor: pointer; 78 } 79 .ui.icon.input > i.circular.icon { 80 top: 0.35em; 81 right: 0.5em; 82 } 83 84 .ui[class*="left icon"].input > i.icon { 85 right: auto; 86 left: 1px; 87 border-radius: 0.28571429rem 0 0 0.28571429rem; 88 } 89 .ui[class*="left icon"].input > i.circular.icon { 90 right: auto; 91 left: 0.5em; 92 } 93 .ui.ui.ui.ui[class*="left icon"].input > textarea, 94 .ui.ui.ui.ui[class*="left icon"].input > input { 95 padding-left: 2.67142857em; 96 padding-right: 1em; 97 } 98 99 .ui.icon.input > textarea:focus ~ .icon, 100 .ui.icon.input > input:focus ~ .icon { 101 opacity: 1; 102 } 103 104 .ui.icon.input > textarea ~ i.icon { 105 height: 3em; 106 } 107 108 .ui.form .field.error > .ui.action.input > .ui.button, 109 .ui.action.input.error > .ui.button { 110 border-top: 1px solid var(--color-error-border); 111 border-bottom: 1px solid var(--color-error-border); 112 } 113 114 .ui.action.input > .button, 115 .ui.action.input > .buttons { 116 display: flex; 117 align-items: center; 118 flex: 0 0 auto; 119 } 120 .ui.action.input > .button, 121 .ui.action.input > .buttons > .button { 122 padding-top: 0.78571429em; 123 padding-bottom: 0.78571429em; 124 margin: 0; 125 } 126 127 .ui.action.input:not([class*="left action"]) > input { 128 border-top-right-radius: 0; 129 border-bottom-right-radius: 0; 130 border-right-color: transparent; 131 } 132 133 .ui.action.input > .dropdown:first-child, 134 .ui.action.input > .button:first-child, 135 .ui.action.input > .buttons:first-child > .button { 136 border-radius: 0.28571429rem 0 0 0.28571429rem; 137 } 138 .ui.action.input > .dropdown:not(:first-child), 139 .ui.action.input > .button:not(:first-child), 140 .ui.action.input > .buttons:not(:first-child) > .button { 141 border-radius: 0; 142 } 143 .ui.action.input > .dropdown:last-child, 144 .ui.action.input > .button:last-child, 145 .ui.action.input > .buttons:last-child > .button { 146 border-radius: 0 0.28571429rem 0.28571429rem 0; 147 } 148 149 .ui.fluid.input { 150 display: flex; 151 } 152 .ui.fluid.input > input { 153 width: 0 !important; 154 } 155 156 .ui.tiny.input { 157 font-size: 0.85714286em; 158 } 159 .ui.small.input { 160 font-size: 0.92857143em; 161 } 162 163 .ui.action.input .ui.ui.button { 164 border-color: var(--color-input-border); 165 padding-top: 0; /* the ".action.input" is "flex + stretch", so let the buttons layout themselves */ 166 padding-bottom: 0; 167 } 168 169 /* currently used for search bar dropdowns in repo search and explore code */ 170 .ui.action.input:not([class*="left action"]) > .ui.dropdown.selection { 171 min-width: 10em; 172 } 173 .ui.action.input:not([class*="left action"]) > .ui.dropdown.selection:not(:focus) { 174 border-right: none; 175 } 176 .ui.action.input:not([class*="left action"]) > .ui.dropdown.selection:not(.active):hover { 177 border-color: var(--color-input-border); 178 } 179 .ui.action.input:not([class*="left action"]) .ui.dropdown.selection.upward.visible { 180 border-bottom-left-radius: 0 !important; 181 border-bottom-right-radius: 0 !important; 182 } 183 .ui.action.input:not([class*="left action"]) > input, 184 .ui.action.input:not([class*="left action"]) > input:hover { 185 border-right: none; 186 } 187 .ui.action.input:not([class*="left action"]) > input:focus + .ui.dropdown.selection, 188 .ui.action.input:not([class*="left action"]) > input:focus + .ui.dropdown.selection:hover, 189 .ui.action.input:not([class*="left action"]) > input:focus + .button, 190 .ui.action.input:not([class*="left action"]) > input:focus + .button:hover, 191 .ui.action.input:not([class*="left action"]) > input:focus + i.icon + .button, 192 .ui.action.input:not([class*="left action"]) > input:focus + i.icon + .button:hover { 193 border-left-color: var(--color-primary); 194 } 195 .ui.action.input:not([class*="left action"]) > input:focus { 196 border-right-color: var(--color-primary); 197 }