blob: d874ee56b6234135df7c6616c789b48aaeeea81e [file] [log] [blame]
Roman Nurikd9ca90b2012-03-06 12:25:34 -08001/* color definitions */
2
3$text_color: #555;
4$text_color_dark: #333;
5$text_color_light: #777;
6$text_color_lighter: #999;
7
8$ics_blue: #33b5e5;
9$ics_blue_dark: #09c;
10$ics_blue_darkest: #069;
11$ics_blue_desaturated: #7aa1b0;
12
13$panel_background: rgba(0, 0, 0, 0.03);
14$panel_background_dark: rgba(0, 0, 0, 0.05);
15
16$light_shadow_color: rgba(0,0,0,0.25);
17$lighter_shadow_color: rgba(0,0,0,0.12);
18
19$tiny_text_size: 12px;
20$small_text_size: 14px;
21$large_text_size: 16px;
22$default_line_height: 20px;
23$tiny_line_height: 15px;
24
25$thinweight: 100;
26$normalweight: 400;
27$boldweight: 500;
28
29/* 16 column layout */
30
31$col_width: 40px;
32$gutter_width: 20px;
33
34@function gridwidth($n) {
35 @return $n * $col_width + ($n - 1) * $gutter_width;
36}
37
38/* clearfix idiom */
39
40@mixin clearfix {
41 display: inline-block;
42 &:after {
43 content: ".";
44 display: block;
45 height: 0;
46 clear: both;
47 visibility: hidden;
48 }
49 * html & { height: 1px }
50}
51
52/* common mixins */
53
54@mixin fontheight($font_size, $line_height) {
55 font-size: $font_size;
56 line-height: $line_height;
57}
58
59@mixin prefixed($property, $value) {
60 -webkit-#{$property}: $value;
61 -moz-#{$property}: $value;
62 #{$property}: $value;
63}
64
65/* page layout + top-level styles */
66
67::-webkit-selection,
68::-moz-selection,
69::selection {
70 background-color: $ics_blue_dark;
71 color: #fff;
72}
73
74html, body {
75 height: 100%;
76 margin: 0;
77 padding: 0;
78 background: #eee none no-repeat fixed top left;
79 background-image: -webkit-gradient(linear, 100% 0%, 100% 100%, from(#ddd), color-stop(25%, #f2f2f2), color-stop(75%, #f2f2f2), to(#ddd));
80 background-image: -moz-linear-gradient(top, #ddd, #f2f2f2, #f2f2f2, #ddd);
81 -webkit-font-smoothing: antialiased; /* prevent subpixel antialiasing, which thickens the text */
Roman Nurik5eed15e2012-03-29 13:28:37 -070082 /* text-rendering: optimizeLegibility; */ /* turned off ligatures due to bug 5945455 */
Roman Nurikd9ca90b2012-03-06 12:25:34 -080083}
84
85body {
86 color: $text_color;
87 font: #{$small_text_size}/#{$default_line_height} Roboto,sans-serif;
88 font-weight: $normalweight;
89}
90
91#page-container {
92 width: gridwidth(16);
93 margin: 0 40px;
94}
95
96#page-header {
97 height: 80px;
98 margin-bottom: 20px;
99 @include fontheight(48px, 48px);
100 font-weight: $thinweight;
101 padding-left: $gutter_width / 2;
102
103 a {
104 display: block;
105 position: relative;
106 top: 20px;
107 text-decoration :none;
108 color: $text_color !important;
109 }
110}
111
112#main-row {
113 @include clearfix;
114}
115
116#page-footer {
117 margin-left: gridwidth(3) + $gutter_width + 10;
118 margin-top: 80px;
119 color: $text_color_lighter;
120 padding-bottom: 40px;
121 @include fontheight($tiny_text_size, $tiny_line_height);
122
123 a {
124 color: $text_color_light;
125 }
126
127 #copyright {
128 margin-bottom: 10px;
129 }
130}
131
132#nav-container {
133 width: gridwidth(3);
134 min-height: 10px;
135 margin-right: $gutter_width;
136 float: left;
137}
138
139#nav {
140 width: gridwidth(3);
141}
142
143#nav.fixed {
144 position: fixed;
145 top: 40px;
146}
147
148#content {
149 width: gridwidth(13);
150 float: left;
151}
152
153a,
154a:visited {
155 color: $text_color_dark;
156}
157
158a:hover,
159acronym:hover {
160 color: $ics_blue_desaturated !important;
161}
162
163a:focus,
164a:active {
165 color: $ics_blue !important;
166}
167
168img {
169 border: none;
170}
171
172ul {
173 margin: 0;
174 padding: 0;
175}
176
177strong {
178 font-weight: $boldweight;
179}
180
181em {
182 font-style: italic;
183}
184
185code {
186 font-family: Courier New, monospace;
187}
188
189acronym {
190 border-bottom: 1px dotted $text_color;
191 cursor: help;
192}
193
194acronym:hover {
195 border-bottom-color: $ics_blue_desaturated;
196}
197
198img.with-shadow,
199video.with-shadow {
200 box-shadow: 0 2px 4px $light_shadow_color;
201}
202
203/* disclosures mixin */
204
205@mixin disclosure($type) {
206 content: '';
207 background: transparent url(disclosure_#{$type}.png) no-repeat scroll top left;
208 width: 10px;
209 height: 10px;
210}
211
212/* content layout */
213
214.layout-content-row {
215 @include clearfix;
216 margin-bottom: 10px;
217}
218
219.layout-content-col {
220 float: left;
221 margin-left: $gutter_width;
222
223 &:first-child {
224 margin-left: 0;
225 }
226}
227
228@for $n from 1 through 13 {
229 .layout-content-col.span-#{$n} { width: gridwidth($n); }
230}
231
232@for $n from 1 through 16 {
233 .vspace.size-#{$n} { height: 10px * $n; }
234}
235
236/* nav */
237
238#nav {
239 li {
240 list-style-type: none;
241 @include fontheight($small_text_size, 10px);
242 }
243
244 a {
245 color: $text_color;
246 text-decoration: none;
247 }
248
249 li.selected > a,
250 li.selected .nav-section-header a {
251 font-weight: $boldweight;
252 color: $ics_blue_dark !important;
253 }
254
255 /* section header divs */
256
257 .nav-section-header {
258 position: relative;
259 padding: 10px;
260 margin-bottom: 1px;
261
262 /* section header links */
263
264 a {
265 color: $text_color_dark;
266 font-weight: $boldweight;
267 text-transform: uppercase;
268 }
269
270 &:after {
271 @include disclosure(down);
272 display: block;
273 position: absolute;
274 top: 10px;
275 right: 10px;
276 }
277
278 &.empty:after {
279 display: none;
280 }
281 }
282
283 /* expanded section header divs */
284
285 li.expanded .nav-section-header {
286 background: $panel_background_dark;
287
288 &:after {
289 @include disclosure(up);
290 }
291 }
292
293 /* sublinks */
294
295 & > li > ul {
296 height: 0;
297 overflow: hidden;
298 margin-bottom: 0;
299
300 &.animate-height {
301 @include prefixed(transition, height 0.25s ease-in);
302 }
303
304 li {
305 padding: 10px 10px (10px + 1) 10px;
306 }
307 }
308
309 & > li.expanded > ul {
310 height: auto;
311
312 li {
313 background: $panel_background;
314 }
315 }
316
317 #back-dac-section {
318 padding: 10px;
319 border-top: 1px solid #ddd;
320
321 a {
322 color: $text_color_dark;
323 font-weight: $boldweight;
324 text-transform: uppercase;
325 }
326 }
327}
328
329/* content header */
330
331$content_header_height: 30px;
332
333.content-header {
334 border-bottom: 1px solid $ics_blue;
335 height: $content_header_height;
336
337 h2 {
338 border-bottom: 0;
339 }
340
341 &.just-links {
342 border-bottom: 0;
343 }
344}
345
346.content-footer {
347 border-top: 1px solid $ics_blue;
348 margin-top: 10px;
349 height: $content_header_height;
350}
351
352.paging-links {
353 position: relative;
354
355 a {
356 position: absolute;
357 font-size: $small_text_size;
358 line-height: $content_header_height;
359 color: $text_color;
360 text-decoration: none;
361 text-transform: uppercase;
362 }
363
364 .prev-page-link {
365 display: none;
366 left: -5px;
367
368 &:before {
369 @include disclosure(left);
370 display: inline-block;
371 margin-right: 5px;
372 }
373 }
374
375 .next-page-link {
376 display: none;
377 right: 10px;
378
379 &:after {
380 @include disclosure(right);
381 display: inline-block;
382 margin-left: 5px;
383 }
384 }
385}
386
387/* content body */
388
389@-webkit-keyframes glowheader {
390 from { background-color: rgb(51, 181, 229); color: #000; border-bottom-color: #000; }
391 to { background-color: transparent; color: $ics_blue; border-bottom-color: $ics_blue; }
392}
393@-moz-keyframes glowheader {
394 from { background-color: rgb(51, 181, 229); color: #000; border-bottom-color: #000; }
395 to { background-color: transparent; color: $ics_blue; border-bottom-color: $ics_blue; }
396}
397@keyframes glowheader {
398 from { background-color: rgb(51, 181, 229); color: #000; border-bottom-color: #000; }
399 to { background-color: transparent; color: $ics_blue; border-bottom-color: $ics_blue; }
400}
401
402#content {
403 p,
404 ul,
405 ol,
406 h3 {
407 margin: 0 10px 10px 10px;
408 }
409
410 h2 {
411 padding-left: 10px;
412 padding-right: 10px;
413 margin-bottom: 10px;
414 font-size: $large_text_size;
415 line-height: $content_header_height;
416 font-weight: $boldweight;
417 color: $ics_blue;
418 border-bottom: 1px solid $ics_blue;
419 height: $content_header_height;
420
421 &:target {
422 @include prefixed(animation-name, glowheader);
423 @include prefixed(animation-duration, 0.7s);
424 @include prefixed(animation-timing-function, ease-out);
425 }
426 }
427
428 hr {
429 border: 0;
430 border-bottom: 1px solid $ics_blue;
431 margin-bottom: 20px;
432 }
433
434 h3 {
435 color: $ics_blue;
436 text-transform: uppercase;
437 @include fontheight($small_text_size, $default_line_height);
438 font-weight: $boldweight;
439 }
440
441 h4 {
442 margin: 0 10px;
443 color: $text_color_dark;
444 font-weight: $boldweight;
445 @include fontheight($small_text_size, $default_line_height);
446 }
447
448 strong {
449 color: $text_color_dark;
450 }
451
452 ul li,
453 ol li {
454 margin-left: 20px;
455
456 h4 {
457 margin: 0;
458 }
459
460 p {
461 margin-left: 0;
462 }
463 }
464
465 ul li {
466 list-style-type: square;
467 list-style-type: none;
468 position: relative;
469
470 &:before {
471 content: '\2022';
472 font-family: verdana;
473 @include fontheight($small_text_size, $default_line_height);
474 position: absolute;
475 left: -20px;
476 top: -1px;
477 }
478 }
479
480 ol {
481 counter-reset: item;
482
483 li {
484 @include fontheight($small_text_size, $default_line_height);
485 list-style-type: none;
486 position: relative;
487
488 &:before {
489 content: counter(item) '. ';
490 counter-increment: item;
491 position: absolute;
492 left: -20px;
493 top: 0;
494 }
495
496 @for $n from 1 through 10 {
497 &.value-#{$n}:before {
498 content: '#{$n}. ';
499 }
500 }
501 }
502 }
503
504 .with-callouts ol li {
505 list-style-position: inside;
506 margin-left: 0;
507
508 &:before {
509 position: static;
510 display: inline;
511 left: 0;
512 float: left;
513 width: 17px;
514 color: $ics_blue;
515 font-weight: $boldweight;
516 }
517 }
518}
519
520/* special list items */
521
522li.no-bullet {
523 list-style-type: none !important;
524}
525
526#content li.with-icon {
527 position: relative;
528 margin-left: 40px;
529 min-height: 30px;
530
531 p {
532 margin-left: 0 !important;
533 }
534
535 &:before {
536 position: absolute;
537 left: -40px;
538 top: 0;
539 content: '';
540 width: 30px;
541 height: 30px;
542 }
543
544 &.tablet:before {
545 background-image: url(ico_phone_tablet.png);
546 }
547
548 &.web:before {
549 background-image: url(ico_web.png);
550 }
551
552 &.checklist:before {
553 background-image: url(ico_checklist.png);
554 }
555
556 &.action:before {
557 background-image: url(ico_action.png);
558 }
559
560 &.use:before {
561 background-image: url(ico_use.png);
562 }
563}
564
565/* figures and callouts */
566
567.figure {
568 position: relative;
569
570 &.pad-below {
571 margin-bottom: 20px;
572 }
573
574 .figure-callout {
575 position: absolute;
576 color: #fff;
577 font-weight: $boldweight;
578 @include fontheight($large_text_size, 23px);
579 text-align: center;
580 background: transparent url(callout.png) no-repeat scroll 50% 50%;
581 padding-right: 2px;
582 width: 30px;
583 height: 29px;
584 z-index: 1000;
585
586 &.top {
587 top: -9px;
588 }
589
590 &.right {
591 right: -5px;
592 }
593 }
594}
595
596.figure-caption {
597 margin: 0 10px 20px 10px;
598 @include fontheight($small_text_size, $default_line_height);
599 font-style: italic;
600}
601
602/* rows of figures */
603
604.figure-row {
605 @include fontheight(0, 0); /* to prevent space between figures */
606
607 .figure {
608 display: inline-block;
609 vertical-align: top;
610 }
611
612 .figure + .figure {
613 margin-left: 10px; /* reintroduce space between figures */
614 }
615}
616
617/* video containers */
618
619.framed-galaxynexus-land-span-13 {
Roman Nurik5eed15e2012-03-29 13:28:37 -0700620 background: transparent url(device_galaxynexus_blank_land_span13.png) no-repeat scroll top left;
Roman Nurikd9ca90b2012-03-06 12:25:34 -0800621 padding: 42px 122px 62px 126px;
622 overflow: hidden;
623
624 &,
625 & video,
626 & img {
627 width: 512px;
628 height: 286px;
629 }
630}
631
632.framed-galaxynexus-port-span-9 {
Roman Nurik5eed15e2012-03-29 13:28:37 -0700633 background: transparent url(device_galaxynexus_blank_port_span9.png) no-repeat scroll top left;
Roman Nurikd9ca90b2012-03-06 12:25:34 -0800634 padding: 95px 122px 107px 124px;
635 overflow: hidden;
636
637 &,
638 & video,
639 & img {
640 width: 274px;
641 height: 488px;
642 }
643}
644
645.framed-galaxynexus-port-span-5 {
Roman Nurik5eed15e2012-03-29 13:28:37 -0700646 background: transparent url(device_galaxynexus_blank_port_span5.png) no-repeat scroll top left;
Roman Nurikd9ca90b2012-03-06 12:25:34 -0800647 padding: 75px 31px 76px 33px;
648 overflow: hidden;
649
650 &,
651 & video,
652 & img {
653 width: 216px;
654 height: 384px;
655 }
656}
657
658/* landing page disclosures */
659
660.landing-page-link {
661 text-decoration: none;
662 font-weight: $boldweight;
663 color: $text_color_dark;
664
665 &:after {
666 @include disclosure(right);
667 display: inline-block;
668 margin-left: 5px;
669 }
670}
671
672/* tooltips */
673
674$tooltip_back_color: rgba(0,0,0,0.9);
675
676.tooltip-box {
677 position: absolute;
678 background-color: $tooltip_back_color;
679 border-radius: 2px;
680 @include fontheight($small_text_size, $default_line_height);
681 color: #fff;
682 padding: 6px 10px;
683 max-width: 250px;
684 z-index: 10000;
685
686 &.below:after {
687 position: absolute;
688 content: '';
689 line-height: 0;
690 display: block;
691 top: -10px;
692 left: 5px;
693 border: 5px solid transparent;
694 border-bottom-color: $tooltip_back_color;
695 }
696}
697
698/* video note */
699
700.video-instructions {
701 margin-top: 10px;
702 margin-bottom: 10px;
703
704 &:before {
705 content: '';
706 background: transparent url(ico_movie_inline.png) no-repeat scroll top left;
707 display: inline-block;
708 width: 12px;
709 height: 12px;
710 margin-right: 8px;
711 }
712
713 &:after {
714 content: 'Click to replay movie.';
715 }
716}
717
718/* download buttons */
719
720.download-button {
721 display: block;
722 margin-bottom: 5px;
723 text-decoration: none;
724 background-color: $ics_blue;
725 color: #fff !important;
726 font-weight: $boldweight;
727 box-shadow: 0 1px 1px $lighter_shadow_color;
728 padding: 6px 12px;
729 border-radius: 2px;
730
731 &:hover,
732 &:focus {
733 background-color: $ics_blue_dark;
734 color: #fff !important;
735 }
736
737 &:active {
738 background-color: $ics_blue_darkest;
739 }
Roman Nurik5eed15e2012-03-29 13:28:37 -0700740}
741
742/* UI tables and other things found in Writing style and Settings pattern */
743
744.ui-table {
745 width: 100%;
746 background: #282828;
747 color: #fff;
748 border-radius: 2px;
749 box-shadow: 0 2px 4px rgba(0,0,0,0.25);
750 border-collapse: separate;
751
752 th,
753 td {
754 padding: 5px 10px;
755 }
756
757 thead th {
758 font-weight: 600;
759 }
760
761 tfoot td {
762 border-top: 1px solid #494949;
763 border-right: 1px solid #494949;
764 text-align: center;
765
766 &:last-child {
767 border-right: 0;
768 }
769 }
770}
771
772.layout-with-list-item-margins {
773 margin-left: 30px !important;
774}
775
776.emulate-content-left-padding {
777 margin-left: 10px;
778}
779
780.do-dont-label {
781 margin-bottom: 10px;
782 padding-left: 20px;
783 background: transparent none no-repeat scroll 0px 3px;
784
785 &.bad {
786 background-image: url(ico_wrong.png);
787 }
788
789 &.good {
790 background-image: url(ico_good.png);
791 }
Roman Nurikd9ca90b2012-03-06 12:25:34 -0800792}