├── screenshot-1.png
├── README.md
├── index.html
├── LICENSE
└── css
├── normalize.css
└── kaiui.css
/screenshot-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nadim1992/KaiUI/HEAD/screenshot-1.png
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # KaiUI (v1.0.1)
2 | Useful native UI components for KaiOS
3 |
4 | 
5 |
6 | ## Getting Started
7 |
8 | Visit [KaiOS](https://developer.kaiostech.com)
9 |
10 | ### Installing
11 |
12 | ```
13 | Include the css directory into your project.
14 | ```
15 |
16 | ### Usage
17 |
18 | ```
19 | See index.html file's content for usage.
20 | ```
21 |
22 | What about a silly [Demo App](https://github.com/nadim1992/legal-terms-kaios)
23 |
24 | ## Built With
25 |
26 | * HTML
27 | * CSS
28 | * JavaScript
29 | * :heart:
30 |
31 | ## Author
32 |
33 | * **Jahidur Rahman Nadim** [GitHub](https://github.com/nadim1992)
34 |
35 | ## License
36 |
37 | [CC0-1.0](./LICENSE)
38 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
36 |
37 |
38 |
39 |
Header
40 |
Header of body text
41 |
Tab text
42 |
Separator text
43 |
Software Key text
44 |
45 |
Primary text
46 |
Secondary text
47 |
Tertiary text
48 |
Body text
49 |
Hyperlink text
50 |
Button text
51 |
52 |
53 |
54 |
55 |
56 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
Separator Text
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
Left Key
74 | Select
75 | Right Key
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
This is a toast message.
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 | -
93 |
94 |
95 |
Primary text
96 |
Secondary text
97 |
98 |
99 | -
100 |
101 |
102 |
Primary text
103 |
Secondary text
104 |
105 |
106 | -
107 |
108 |
109 |
Primary text
110 |
Secondary text
111 |
112 |
113 | -
114 |
115 |
116 |
Primary text
117 |
Secondary text
118 |
119 |
120 |
121 |
122 |
123 |
124 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
176 |
177 |
178 |
179 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Creative Commons Legal Code
2 |
3 | CC0 1.0 Universal
4 |
5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
6 | LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
7 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
8 | INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
9 | REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
10 | PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
11 | THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
12 | HEREUNDER.
13 |
14 | Statement of Purpose
15 |
16 | The laws of most jurisdictions throughout the world automatically confer
17 | exclusive Copyright and Related Rights (defined below) upon the creator
18 | and subsequent owner(s) (each and all, an "owner") of an original work of
19 | authorship and/or a database (each, a "Work").
20 |
21 | Certain owners wish to permanently relinquish those rights to a Work for
22 | the purpose of contributing to a commons of creative, cultural and
23 | scientific works ("Commons") that the public can reliably and without fear
24 | of later claims of infringement build upon, modify, incorporate in other
25 | works, reuse and redistribute as freely as possible in any form whatsoever
26 | and for any purposes, including without limitation commercial purposes.
27 | These owners may contribute to the Commons to promote the ideal of a free
28 | culture and the further production of creative, cultural and scientific
29 | works, or to gain reputation or greater distribution for their Work in
30 | part through the use and efforts of others.
31 |
32 | For these and/or other purposes and motivations, and without any
33 | expectation of additional consideration or compensation, the person
34 | associating CC0 with a Work (the "Affirmer"), to the extent that he or she
35 | is an owner of Copyright and Related Rights in the Work, voluntarily
36 | elects to apply CC0 to the Work and publicly distribute the Work under its
37 | terms, with knowledge of his or her Copyright and Related Rights in the
38 | Work and the meaning and intended legal effect of CC0 on those rights.
39 |
40 | 1. Copyright and Related Rights. A Work made available under CC0 may be
41 | protected by copyright and related or neighboring rights ("Copyright and
42 | Related Rights"). Copyright and Related Rights include, but are not
43 | limited to, the following:
44 |
45 | i. the right to reproduce, adapt, distribute, perform, display,
46 | communicate, and translate a Work;
47 | ii. moral rights retained by the original author(s) and/or performer(s);
48 | iii. publicity and privacy rights pertaining to a person's image or
49 | likeness depicted in a Work;
50 | iv. rights protecting against unfair competition in regards to a Work,
51 | subject to the limitations in paragraph 4(a), below;
52 | v. rights protecting the extraction, dissemination, use and reuse of data
53 | in a Work;
54 | vi. database rights (such as those arising under Directive 96/9/EC of the
55 | European Parliament and of the Council of 11 March 1996 on the legal
56 | protection of databases, and under any national implementation
57 | thereof, including any amended or successor version of such
58 | directive); and
59 | vii. other similar, equivalent or corresponding rights throughout the
60 | world based on applicable law or treaty, and any national
61 | implementations thereof.
62 |
63 | 2. Waiver. To the greatest extent permitted by, but not in contravention
64 | of, applicable law, Affirmer hereby overtly, fully, permanently,
65 | irrevocably and unconditionally waives, abandons, and surrenders all of
66 | Affirmer's Copyright and Related Rights and associated claims and causes
67 | of action, whether now known or unknown (including existing as well as
68 | future claims and causes of action), in the Work (i) in all territories
69 | worldwide, (ii) for the maximum duration provided by applicable law or
70 | treaty (including future time extensions), (iii) in any current or future
71 | medium and for any number of copies, and (iv) for any purpose whatsoever,
72 | including without limitation commercial, advertising or promotional
73 | purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
74 | member of the public at large and to the detriment of Affirmer's heirs and
75 | successors, fully intending that such Waiver shall not be subject to
76 | revocation, rescission, cancellation, termination, or any other legal or
77 | equitable action to disrupt the quiet enjoyment of the Work by the public
78 | as contemplated by Affirmer's express Statement of Purpose.
79 |
80 | 3. Public License Fallback. Should any part of the Waiver for any reason
81 | be judged legally invalid or ineffective under applicable law, then the
82 | Waiver shall be preserved to the maximum extent permitted taking into
83 | account Affirmer's express Statement of Purpose. In addition, to the
84 | extent the Waiver is so judged Affirmer hereby grants to each affected
85 | person a royalty-free, non transferable, non sublicensable, non exclusive,
86 | irrevocable and unconditional license to exercise Affirmer's Copyright and
87 | Related Rights in the Work (i) in all territories worldwide, (ii) for the
88 | maximum duration provided by applicable law or treaty (including future
89 | time extensions), (iii) in any current or future medium and for any number
90 | of copies, and (iv) for any purpose whatsoever, including without
91 | limitation commercial, advertising or promotional purposes (the
92 | "License"). The License shall be deemed effective as of the date CC0 was
93 | applied by Affirmer to the Work. Should any part of the License for any
94 | reason be judged legally invalid or ineffective under applicable law, such
95 | partial invalidity or ineffectiveness shall not invalidate the remainder
96 | of the License, and in such case Affirmer hereby affirms that he or she
97 | will not (i) exercise any of his or her remaining Copyright and Related
98 | Rights in the Work or (ii) assert any associated claims and causes of
99 | action with respect to the Work, in either case contrary to Affirmer's
100 | express Statement of Purpose.
101 |
102 | 4. Limitations and Disclaimers.
103 |
104 | a. No trademark or patent rights held by Affirmer are waived, abandoned,
105 | surrendered, licensed or otherwise affected by this document.
106 | b. Affirmer offers the Work as-is and makes no representations or
107 | warranties of any kind concerning the Work, express, implied,
108 | statutory or otherwise, including without limitation warranties of
109 | title, merchantability, fitness for a particular purpose, non
110 | infringement, or the absence of latent or other defects, accuracy, or
111 | the present or absence of errors, whether or not discoverable, all to
112 | the greatest extent permissible under applicable law.
113 | c. Affirmer disclaims responsibility for clearing rights of other persons
114 | that may apply to the Work or any use thereof, including without
115 | limitation any person's Copyright and Related Rights in the Work.
116 | Further, Affirmer disclaims responsibility for obtaining any necessary
117 | consents, permissions or other rights required for any use of the
118 | Work.
119 | d. Affirmer understands and acknowledges that Creative Commons is not a
120 | party to this document and has no duty or obligation with respect to
121 | this CC0 or use of the Work.
122 |
--------------------------------------------------------------------------------
/css/normalize.css:
--------------------------------------------------------------------------------
1 | /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
2 |
3 | /* Document
4 | ========================================================================== */
5 |
6 | /**
7 | * 1. Correct the line height in all browsers.
8 | * 2. Prevent adjustments of font size after orientation changes in iOS.
9 | */
10 |
11 | html {
12 | line-height: 1.15; /* 1 */
13 | -webkit-text-size-adjust: 100%; /* 2 */
14 | }
15 |
16 | /* Sections
17 | ========================================================================== */
18 |
19 | /**
20 | * Remove the margin in all browsers.
21 | */
22 |
23 | body {
24 | margin: 0;
25 | }
26 |
27 | /**
28 | * Render the `main` element consistently in IE.
29 | */
30 |
31 | main {
32 | display: block;
33 | }
34 |
35 | /**
36 | * Correct the font size and margin on `h1` elements within `section` and
37 | * `article` contexts in Chrome, Firefox, and Safari.
38 | */
39 |
40 | h1 {
41 | font-size: 2em;
42 | margin: 0.67em 0;
43 | }
44 |
45 | /* Grouping content
46 | ========================================================================== */
47 |
48 | /**
49 | * 1. Add the correct box sizing in Firefox.
50 | * 2. Show the overflow in Edge and IE.
51 | */
52 |
53 | hr {
54 | box-sizing: content-box; /* 1 */
55 | height: 0; /* 1 */
56 | overflow: visible; /* 2 */
57 | }
58 |
59 | /**
60 | * 1. Correct the inheritance and scaling of font size in all browsers.
61 | * 2. Correct the odd `em` font sizing in all browsers.
62 | */
63 |
64 | pre {
65 | font-family: monospace, monospace; /* 1 */
66 | font-size: 1em; /* 2 */
67 | }
68 |
69 | /* Text-level semantics
70 | ========================================================================== */
71 |
72 | /**
73 | * Remove the gray background on active links in IE 10.
74 | */
75 |
76 | a {
77 | background-color: transparent;
78 | }
79 |
80 | /**
81 | * 1. Remove the bottom border in Chrome 57-
82 | * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
83 | */
84 |
85 | abbr[title] {
86 | border-bottom: none; /* 1 */
87 | text-decoration: underline; /* 2 */
88 | text-decoration: underline dotted; /* 2 */
89 | }
90 |
91 | /**
92 | * Add the correct font weight in Chrome, Edge, and Safari.
93 | */
94 |
95 | b,
96 | strong {
97 | font-weight: bolder;
98 | }
99 |
100 | /**
101 | * 1. Correct the inheritance and scaling of font size in all browsers.
102 | * 2. Correct the odd `em` font sizing in all browsers.
103 | */
104 |
105 | code,
106 | kbd,
107 | samp {
108 | font-family: monospace, monospace; /* 1 */
109 | font-size: 1em; /* 2 */
110 | }
111 |
112 | /**
113 | * Add the correct font size in all browsers.
114 | */
115 |
116 | small {
117 | font-size: 80%;
118 | }
119 |
120 | /**
121 | * Prevent `sub` and `sup` elements from affecting the line height in
122 | * all browsers.
123 | */
124 |
125 | sub,
126 | sup {
127 | font-size: 75%;
128 | line-height: 0;
129 | position: relative;
130 | vertical-align: baseline;
131 | }
132 |
133 | sub {
134 | bottom: -0.25em;
135 | }
136 |
137 | sup {
138 | top: -0.5em;
139 | }
140 |
141 | /* Embedded content
142 | ========================================================================== */
143 |
144 | /**
145 | * Remove the border on images inside links in IE 10.
146 | */
147 |
148 | img {
149 | border-style: none;
150 | }
151 |
152 | /* Forms
153 | ========================================================================== */
154 |
155 | /**
156 | * 1. Change the font styles in all browsers.
157 | * 2. Remove the margin in Firefox and Safari.
158 | */
159 |
160 | button,
161 | input,
162 | optgroup,
163 | select,
164 | textarea {
165 | font-family: inherit; /* 1 */
166 | font-size: 100%; /* 1 */
167 | line-height: 1.15; /* 1 */
168 | margin: 0; /* 2 */
169 | }
170 |
171 | /**
172 | * Show the overflow in IE.
173 | * 1. Show the overflow in Edge.
174 | */
175 |
176 | button,
177 | input { /* 1 */
178 | overflow: visible;
179 | }
180 |
181 | /**
182 | * Remove the inheritance of text transform in Edge, Firefox, and IE.
183 | * 1. Remove the inheritance of text transform in Firefox.
184 | */
185 |
186 | button,
187 | select { /* 1 */
188 | text-transform: none;
189 | }
190 |
191 | /**
192 | * Correct the inability to style clickable types in iOS and Safari.
193 | */
194 |
195 | button,
196 | [type="button"],
197 | [type="reset"],
198 | [type="submit"] {
199 | -webkit-appearance: button;
200 | }
201 |
202 | /**
203 | * Remove the inner border and padding in Firefox.
204 | */
205 |
206 | button::-moz-focus-inner,
207 | [type="button"]::-moz-focus-inner,
208 | [type="reset"]::-moz-focus-inner,
209 | [type="submit"]::-moz-focus-inner {
210 | border-style: none;
211 | padding: 0;
212 | }
213 |
214 | /**
215 | * Restore the focus styles unset by the previous rule.
216 | */
217 |
218 | button:-moz-focusring,
219 | [type="button"]:-moz-focusring,
220 | [type="reset"]:-moz-focusring,
221 | [type="submit"]:-moz-focusring {
222 | outline: 1px dotted ButtonText;
223 | }
224 |
225 | /**
226 | * Correct the padding in Firefox.
227 | */
228 |
229 | fieldset {
230 | padding: 0.35em 0.75em 0.625em;
231 | }
232 |
233 | /**
234 | * 1. Correct the text wrapping in Edge and IE.
235 | * 2. Correct the color inheritance from `fieldset` elements in IE.
236 | * 3. Remove the padding so developers are not caught out when they zero out
237 | * `fieldset` elements in all browsers.
238 | */
239 |
240 | legend {
241 | box-sizing: border-box; /* 1 */
242 | color: inherit; /* 2 */
243 | display: table; /* 1 */
244 | max-width: 100%; /* 1 */
245 | padding: 0; /* 3 */
246 | white-space: normal; /* 1 */
247 | }
248 |
249 | /**
250 | * Add the correct vertical alignment in Chrome, Firefox, and Opera.
251 | */
252 |
253 | progress {
254 | vertical-align: baseline;
255 | }
256 |
257 | /**
258 | * Remove the default vertical scrollbar in IE 10+.
259 | */
260 |
261 | textarea {
262 | overflow: auto;
263 | }
264 |
265 | /**
266 | * 1. Add the correct box sizing in IE 10.
267 | * 2. Remove the padding in IE 10.
268 | */
269 |
270 | [type="checkbox"],
271 | [type="radio"] {
272 | box-sizing: border-box; /* 1 */
273 | padding: 0; /* 2 */
274 | }
275 |
276 | /**
277 | * Correct the cursor style of increment and decrement buttons in Chrome.
278 | */
279 |
280 | [type="number"]::-webkit-inner-spin-button,
281 | [type="number"]::-webkit-outer-spin-button {
282 | height: auto;
283 | }
284 |
285 | /**
286 | * 1. Correct the odd appearance in Chrome and Safari.
287 | * 2. Correct the outline style in Safari.
288 | */
289 |
290 | [type="search"] {
291 | -webkit-appearance: textfield; /* 1 */
292 | outline-offset: -2px; /* 2 */
293 | }
294 |
295 | /**
296 | * Remove the inner padding in Chrome and Safari on macOS.
297 | */
298 |
299 | [type="search"]::-webkit-search-decoration {
300 | -webkit-appearance: none;
301 | }
302 |
303 | /**
304 | * 1. Correct the inability to style clickable types in iOS and Safari.
305 | * 2. Change font properties to `inherit` in Safari.
306 | */
307 |
308 | ::-webkit-file-upload-button {
309 | -webkit-appearance: button; /* 1 */
310 | font: inherit; /* 2 */
311 | }
312 |
313 | /* Interactive
314 | ========================================================================== */
315 |
316 | /*
317 | * Add the correct display in Edge, IE 10+, and Firefox.
318 | */
319 |
320 | details {
321 | display: block;
322 | }
323 |
324 | /*
325 | * Add the correct display in all browsers.
326 | */
327 |
328 | summary {
329 | display: list-item;
330 | }
331 |
332 | /* Misc
333 | ========================================================================== */
334 |
335 | /**
336 | * Add the correct display in IE 10+.
337 | */
338 |
339 | template {
340 | display: none;
341 | }
342 |
343 | /**
344 | * Add the correct display in IE 10.
345 | */
346 |
347 | [hidden] {
348 | display: none;
349 | }
350 |
--------------------------------------------------------------------------------
/css/kaiui.css:
--------------------------------------------------------------------------------
1 | /**
2 | * ===========================
3 | * **************** Agenda ***
4 | *
5 | * 01. Basic
6 | * 02. Alignment
7 | * 03. Color
8 | * 04. Font
9 | * 05. Header
10 | * 06. Separator
11 | * 07. Software key
12 | * 08. Toast
13 | * 09. List
14 | * 10. Options menu
15 | * 11. Button
16 | * 12. Input
17 | * 13. Table
18 | * 14. Progress
19 | * ===========================
20 | */
21 |
22 | /* ============== Basic ============== */
23 | h1, h2, h3, h4, h5, ul, p {
24 | margin: 0;
25 | padding: 0;
26 | }
27 |
28 | .statusbar-placeholder {
29 | background-color: #320374;
30 | height: 26px;
31 | }
32 |
33 | #kui-app {
34 | font-family: 'Open Sans';
35 | height: 100%;
36 | width: 100%;
37 | }
38 |
39 | .kui-content-area {
40 | overflow: hidden;
41 | position: relative;
42 | }
43 |
44 | .kui-overlay {
45 | background: rgba(0,0,0, .7);
46 | display: none;
47 | height: 100%;
48 | position: absolute;
49 | width: 100%;
50 | }
51 |
52 | .kui-text-upcase {
53 | text-transform: uppercase;
54 | }
55 |
56 | /* ============== Alignment ============== */
57 | .kui-text-left {
58 | text-align: left;
59 | }
60 |
61 | .kui-text-center {
62 | text-align: center;
63 | }
64 |
65 | .kui-text-right {
66 | text-align: right;
67 | }
68 |
69 | /* ============== Color ============== */
70 | .kui-color-purple {
71 | color: #8500dc;
72 | }
73 |
74 | .kui-color-rose {
75 | color: #cd006f;
76 | }
77 |
78 | .kui-color-red {
79 | color: #ff0e0e;
80 | }
81 |
82 | .kui-color-lime {
83 | color: #6b9a23;
84 | }
85 |
86 | .kui-color-cyan {
87 | color: #00b1b4;
88 | }
89 |
90 | .kui-color-blue {
91 | color: #0071dd;
92 | }
93 |
94 | .kui-color-orange {
95 | color: #ff4b00;
96 | }
97 |
98 | .kui-color-dark-gray {
99 | color: #323232;
100 | }
101 |
102 | /* ============== Font ============== */
103 | .kui-h1 {
104 | font-size: 17px;
105 | font-weight: 400;
106 | }
107 |
108 | .kui-h2 {
109 | font-size: 17px;
110 | font-style: italic;
111 | font-weight: 400;
112 | }
113 |
114 | .kui-h3,
115 | .kui-h4,
116 | .kui-sec {
117 | font-size: 14px;
118 | font-weight: 400;
119 | }
120 |
121 | .kui-h5 {
122 | font-size: 14px;
123 | font-weight: 300;
124 | }
125 |
126 | .kui-pri,
127 | .kui-text,
128 | .kui-btn {
129 | font-size: 17px;
130 | font-weight: 400;
131 | }
132 |
133 | .kui-thi {
134 | font-size: 12px;
135 | font-weight: 400;
136 | }
137 |
138 | .kui-link {
139 | font-size: 17px;
140 | font-weight: 700;
141 | }
142 |
143 | /* ============== Header ============== */
144 | .kui-header {
145 | background-color: #320374;
146 | color: #fff;
147 | height: 28px;
148 | line-height: 28px;
149 | text-align: center;
150 | }
151 |
152 | /* ============== Separator ============== */
153 | .kui-separator {
154 | background-color: #e6e6e6;
155 | color: #6a6a6a;
156 | height: 28px;
157 | line-height: 28px;
158 | padding-left: 10px;
159 | }
160 |
161 | /* ============== Software key ============== */
162 | .kui-software-key {
163 | align-items: center;
164 | background-color: #cccccc;
165 | color: #323232;
166 | display: flex;
167 | height: 30px;
168 | padding: 0 5px;
169 | }
170 |
171 | .kui-software-key h5 {
172 | font-style: italic;
173 | width: 33.3333333333%;
174 | }
175 |
176 | /* ============== Toast ============== */
177 | .kui-toast {
178 | background-color: #323232;
179 | color: #fff;
180 | height: 42px;
181 | line-height: 42px;
182 | text-align: center;
183 | }
184 |
185 | .kui-toast .kui-pri {
186 | margin: 0;
187 | }
188 |
189 | .kui-toast-shadow {
190 | background-image: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.4) 100%);
191 | height: 6px;
192 | }
193 |
194 | /* ============== List ============== */
195 | .kui-list {
196 | list-style: none;
197 | }
198 |
199 | .kui-list li {
200 | align-items: center;
201 | background-color: #fff;
202 | display: flex;
203 | height: 60px;
204 | padding: 0 10px;
205 | }
206 |
207 | .kui-list li .kui-list-img {
208 | background-color: #2f3235;
209 | border-radius: 10px;
210 | height: 32px;
211 | margin-right: 10px;
212 | width: 32px;
213 | }
214 |
215 | .kui-list-cont p {
216 | margin: 4px 0;
217 | }
218 |
219 | .kui-list-cont .kui-pri {
220 | color: #323232;
221 | }
222 |
223 | .kui-list-cont .kui-sec {
224 | color: #6a6a6a;
225 | }
226 |
227 | .kui-list li:focus {
228 | background-color: #873eff;
229 | outline: 0;
230 | }
231 |
232 | .kui-list li:focus .kui-pri,
233 | .kui-list li:focus .kui-sec {
234 | color: #fff;
235 | }
236 |
237 | /* ============== Options Menu ============== */
238 | .kui-option-menu {
239 | bottom: 0;
240 | display: none;
241 | overflow: hidden;
242 | position: absolute;
243 | width: 100%;
244 | }
245 |
246 | .kui-option-menu .kui-option-title {
247 | background-color: #d8d8d8;
248 | color: #323232;
249 | height: 28px;
250 | line-height: 28px;
251 | margin: 0;
252 | text-align: center;
253 | }
254 |
255 | .kui-options {
256 | list-style: none;
257 | margin: 0;
258 | overflow: hidden;
259 | padding: 0;
260 | }
261 |
262 | .kui-options li {
263 | background-color: #fff;
264 | height: 50px;
265 | line-height: 50px;
266 | padding-left: 10px;
267 | }
268 |
269 | .kui-options li:focus {
270 | background-color: #873eff;
271 | color: #fff;
272 | outline: 0;
273 | }
274 |
275 | /* ============== Button ============== */
276 | button.kui-btn {
277 | background: #fff;
278 | border: 0;
279 | border: 2px solid #8c8c8c;
280 | border-radius: 18px;
281 | color: #323232;
282 | display: block;
283 | height: 36px;
284 | margin: auto;
285 | text-align: center;
286 | width: 220px;
287 | }
288 |
289 | button.kui-btn:focus {
290 | background-color: #873eff;
291 | border-color: #873eff;
292 | color: #fff;
293 | outline: 0;
294 | }
295 |
296 | /* ============== Input ============== */
297 | .kui-input-holder {
298 | background-color: #fff;
299 | -moz-box-sizing: border-box;
300 | box-sizing: border-box;
301 | height: 76px;
302 | padding: 7px 10px;
303 | }
304 |
305 | .kui-input-holder.kui-focus-within {
306 | background-color: #873eff;
307 | outline: 0;
308 | }
309 |
310 | .kui-input-label {
311 | color: #323232;
312 | display: block;
313 | padding-bottom: 8px;
314 | }
315 |
316 | .kui-input-holder.kui-focus-within .kui-input-label {
317 | color: #fff;
318 | }
319 |
320 | .kui-input {
321 | border: 1px solid #aaaaaa;
322 | border-radius: 2px;
323 | -moz-box-sizing: border-box;
324 | box-sizing: border-box;
325 | height: 36px;
326 | padding-left: 10px;
327 | width: 100%;
328 | }
329 |
330 | .kui-input ::-moz-placeholder,
331 | .kui-input :-moz-placeholder {
332 | color: #323232;
333 | }
334 |
335 | .kui-input:focus {
336 | outline: 0;
337 | }
338 |
339 | /* ============== Table ============== */
340 | .kui-table,
341 | .kui-table th,
342 | .kui-table td {
343 | border: 1px solid #320374;
344 | border-collapse: collapse;
345 | }
346 |
347 | .kui-table {
348 | width: 100%;
349 | }
350 |
351 | .kui-table thead {
352 | background-color: #320374;
353 | color: #fff;
354 | }
355 |
356 | .kui-table tr:focus {
357 | background-color: #873eff;
358 | color: #fff;
359 | outline: 0;
360 | }
361 |
362 | .kui-table td {
363 | padding: 4px 5px;
364 | width: 50%;
365 | }
366 |
367 | .kui-table td:last-child {
368 | text-align: right;
369 | }
370 |
371 | /* ============== Progress ============== */
372 | .progress {
373 | background: #fff;
374 | box-sizing: border-box;
375 | height: 60px;
376 | padding: 10px 10px;
377 | }
378 |
379 | .progress:focus .progress-label {
380 | color: #fff;
381 | }
382 |
383 | .progress label {
384 | color: #332233;
385 | display: inline-block;
386 | width: 100%;
387 | }
388 |
389 | .progress-label {
390 | float: left;
391 | }
392 |
393 | .progress-value {
394 | float: right;
395 | padding-top: 3px;
396 | }
397 |
398 | .progress input {
399 | border-radius: 3px;
400 | height: 5px;
401 | outline: none;
402 | width: 100%;
403 | }
404 |
405 | .progress input::-moz-range-thumb {
406 | border: 3px solid #fff;
407 | border-radius: 50%;
408 | cursor: pointer;
409 | height: 13px;
410 | width: 13px;
411 | }
412 |
413 | .progress input,
414 | .progress input::-moz-range-thumb,
415 | .progress input::-moz-range-progress,
416 | .progress input::-moz-range-track {
417 | -moz-appearance: none;
418 | appearance: none;
419 | background: #873eff;
420 | }
421 |
422 | /* KaiOS portrait devices (240x320) */
423 | @media only screen and (orientation : portrait) {
424 | .fullscreen-app .kui-content-area {
425 | height: 262px;
426 | }
427 |
428 | .kui-content-area {
429 | height: 236px;
430 | }
431 |
432 | .kui-option-menu {
433 | height: 178px;
434 | }
435 |
436 | .kui-options {
437 | height: 150px;
438 | }
439 | }
440 |
441 | /* KaiOS landscape devices (320x240) */
442 | @media screen and (orientation: landscape) {
443 | .fullscreen-app .kui-content-area {
444 | height: 182px;
445 | }
446 |
447 | .kui-content-area {
448 | height: 156px;
449 | }
450 |
451 | .kui-option-menu {
452 | height: 128px;
453 | }
454 |
455 | .kui-options {
456 | height: 100px;
457 | }
458 | }
459 |
460 | /*** The End ******/
461 |
--------------------------------------------------------------------------------