bc59ec39f4ebee7628970ca16d79b2363e343243
[moodle.git] / theme / boost / scss / moodle / modules.scss
1 /* modules.less */
3 // The home for small tweaks to modules that don't require
4 // changes drastic enough to pull in the full module css
5 // and replace it completely
6 // Plus some misc. odds and ends
8 select {
9     width: auto;
10 }
12 // Feedback module
13 .path-mod-feedback .itemactions {
14     float: right;
15 }
16 .path-mod-feedback .itemhandle {
17     position: absolute;
18     right: 1rem;
19 }
21 // Forum module
23 .path-mod-forum .forumsearch {
24     input,
25     .helptooltip {
26         margin: 0 3px;
27     }
28 }
30 .path-mod-forum .forumheaderlist,
31 .path-mod-forum .forumheaderlist td {
32     border: none;
33 }
35 .path-mod-forum {
36     .forumheaderlist {
37         thead .header,
38         tbody .discussion td {
39             white-space: normal;
40             vertical-align: top;
41             padding-left: 0.5em;
42             padding-right: 0.5em;
43         }
45         thead .header {
46             white-space: normal;
47             vertical-align: top;
48         }
50         thead .header.replies {
51             text-align: center;
52         }
54         thead .header.lastpost {
55             text-align: right;
56         }
58         thead .header th,
59         tbody .discussion td {
60             &.discussionsubscription {
61                 width: 16px;
62                 padding-left: 0.5em;
63                 padding-right: 0.5em;
64             }
65         }
67         .discussion {
68             .author,
69             .replies,
70             .lastpost {
71                 white-space: normal;
72             }
74             .discussionsubscription,
75             .replies {
76                 text-align: center;
77             }
79             .topic,
80             .discussionsubscription,
81             .topic.starter,
82             .picture,
83             .author,
84             .replies,
85             .lastpost {
86                 vertical-align: top;
87             }
88         }
89     }
90 }
92 .forumpost {
93     @extend .card;
94     padding: 6px;
96     .header {
97         margin-bottom: 3px;
98     }
100     .picture img {
101         margin: 3px;
103         &.userpicture {
104             margin-left: 3px;
105             margin-right: 10px;
106         }
107     }
109     .content {
110         .posting.fullpost {
111             margin-top: 8px;
112         }
113     }
115     .row {
116         .topic,
117         .content-mask,
118         .options {
119             margin-left: 48px;
120         }
122         &.side {
123             clear: both;
124         }
125     }
128 .forumpost .row .left {
129     width: 48px;
132 .forumpost .options .commands {
133     margin-left: 0;
136 .forumpost .subject {
137     font-weight: bold;
140 // Override hardcoded forum modules styling
141 .forumsearch input[type=text] {
142     margin-bottom: 0;
145 #page-mod-forum-discuss .discussioncontrols {
146     width: auto;
147     margin: 0;
150 .maincalendar .calendarmonth td,
151 .maincalendar .calendarmonth th {
152     border: 1px dotted $table-border-color;
155 .path-grade-report-grader h1 {
156     text-align: inherit;
159 #page-mod-chat-gui_basic input#message {
160     max-width: 100%;
163 #page-mod-data-view #singleimage {
164     width: auto;
167 .path-mod-data form {
168     margin-top: 10px;
171 .template_heading {
172     margin-top: 10px;
175 .breadcrumb-button {
176     float: right;
177     margin-top: 4px;
180 .breadcrumb-button .singlebutton {
181     float: left;
182     margin-left: 4px;
185 .navbar-fixed-top,
186 .navbar-fixed-bottom {
187     z-index: 4030;
190 .ie .row-fluid .desktop-first-column {
191     margin-left: 0;
194 .langmenu form {
195     margin: 0;
197 // contributed by Paul Hibbitts, see http://msdn.microsoft@mixin com/en-us/library/ie/jj583807(v=vs.85).aspx
198 canvas {
199     -ms-touch-action: auto;
202 div#dock {
203     display: none;
206 // Choice module
208 .path-mod-choice {
209     .horizontal  .choices {
210         margin: 0;
212         .option {
213             display: inline-block;
214             padding: 10px;
215         }
216     }
218     .results .data {
219         white-space: normal;
220     }
223 // Lesson module
225 /** General styles (scope: all of lesson) **/
226 .path-mod-lesson .invisiblefieldset.fieldsetfix {
227     display: block;
230 .path-mod-wiki .wiki_headingtitle,
231 .path-mod-wiki .midpad,
232 .path-mod-wiki .wiki_headingtime {
233     text-align: inherit;
236 .path-mod-wiki .wiki_contentbox {
237     width: 100%;
240 // Dropdown styling.
241 .dropdown-menu {
242     margin-top: 11px;
245 // Survey module
247 .path-mod-survey {
248     .surveytable {
249         > tbody > tr:nth-of-type(odd) {
250             background-color: $table-bg;
251         }
253         > tbody > tr:nth-of-type(even) {
254             background-color: $table-bg-accent;
255         }
257         .rblock label {
258             text-align: center;
259         }
260     }
262     .resultgraph,
263     .reportsummary,
264     .studentreport,
265     .reportbuttons,
266     .centerpara {
267         text-align: center;
268     }
271 .nav .caret {
272     margin-left: 4px;
275 // Dividers
276 .nav {
277     .divider {
278         overflow: hidden;
279         width: 0;
280     }
283 // Usermenu
284 .usermenu {
285     float: right;
287     .login {
288         line-height: 2.25rem;
290         a {
291             color: $link-color;
292             &:hover,
293             &:focus {
294                 color: $link-hover-color;
295                 text-decoration: underline;
296             }
297         }
298     }
301 .userloggedinas,
302 .userswitchedrole {
303     .usermenu {
304         .usertext {
305             float: left;
306             text-align: right;
307             margin-right: $spacer / 2;
308             height: 35px;
309             .meta {
310                 display: block;
311                 font-size: $font-size-sm;
312             }
313         }
314         .avatar {
315             img {
316                 margin: 0;
317             }
318         }
319     }
322 .userloggedinas .usermenu {
323     .userbutton .avatars {
324         position: relative;
325         display: inline-block;
326         .avatar {
327             &.current {
328                 display: inline-block;
329                 position: absolute;
330                 bottom: 0;
331                 right: 0;
332                 width: 20px;
333                 height: 20px;
334                 border-radius: 50%;
335                 img {
336                     vertical-align: baseline;
337                 }
338             }
339             img {
340                 width: inherit;
341                 height: inherit;
342             }
343         }
344         .realuser {
345             width: 35px;
346             height: 35px;
347             display: inline-block;
348         }
349     }
352 @include media-breakpoint-down(sm) {
353     .usertext {
354         display: none;
355     }
358 // Quiz module
360 // Question navigation block.
361 .path-mod-quiz #mod_quiz_navblock {
362     .qnbutton {
363         text-decoration: none;
364         font-size: 14px;
365         line-height: 20px;
366         font-weight: normal;
367         background-color: $body-color;
368         background-image: none;
369         height: 40px;
370         width: 30px;
371         border-radius: 3px;
372         border: 0;
373         overflow: visible;
374         margin: 0 6px 6px 0;
375     }
377     span.qnbutton {
378         cursor: default;
379         background-color: $input-bg-disabled;
380         color: $gray;
381     }
383     a.qnbutton:hover,
384     a.qnbutton:active,
385     a.qnbutton:focus {
386         text-decoration: underline;
387     }
389     .qnbutton .thispageholder {
390         border: 1px solid;
391         border-radius: 3px;
392         z-index: 1;
393     }
395     .qnbutton.thispage .thispageholder {
396         border-width: 3px;
397     }
399     .allquestionsononepage .qnbutton.thispage .thispageholder {
400         border-width: 1px;
401     }
403     .qnbutton.flagged .thispageholder {
404         background: transparent url([[pix:theme|mod/quiz/flag-on]]) 15px 0 no-repeat;
405     }
407     .qnbutton .trafficlight {
408         border: 0;
409         background: $body-color none center / 10px no-repeat scroll;
410         height: 20px;
411         margin-top: 20px;
412         border-radius: 0 0 3px 3px;
413     }
415     .qnbutton.notyetanswered .trafficlight,
416     .qnbutton.invalidanswer .trafficlight {
417         background-color: $body-color;
418     }
420     .qnbutton.invalidanswer .trafficlight {
421         background-image: url([[pix:theme|mod/quiz/warningtriangle]]);
422     }
424     .qnbutton.correct .trafficlight {
425         background-image: url([[pix:theme|mod/quiz/checkmark]]);
426         background-color: $state-success-text;
427     }
429     .qnbutton.blocked .trafficlight {
430         background-image: url([[pix:core|t/locked]]);
431         background-color: $input-bg-disabled;
432     }
434     .qnbutton.notanswered .trafficlight,
435     .qnbutton.incorrect .trafficlight {
436         background-color: $state-danger-text;
437     }
439     .qnbutton.partiallycorrect .trafficlight {
440         background-image: url([[pix:theme|mod/quiz/whitecircle]]);
441         background-color: $state-warning-text;
442     }
444     .qnbutton.complete .trafficlight,
445     .qnbutton.answersaved .trafficlight,
446     .qnbutton.requiresgrading .trafficlight {
447         background-color: $gray-light;
448     }
451 /**
452  * Assign.
453  */
454 .path-mod-assign [data-region="grade-actions-panel"] [data-region="grade-actions"] .collapse-buttons {
455     top: auto;
457 .path-mod-assign .no-overflow {
458     overflow: initial;
461 .path-mod-assign [data-region="grade-panel"] .has-popout {
462     background-color: $card-bg;
464     @include border-radius($card-border-radius);
465     border: $card-border-width solid $card-border-color;
468 .path-mod-assign [data-region="grade-panel"] .popout {
469     background-color: $modal-content-bg;
472 .path-mod-assign [data-region="grade-panel"] .col-md-3 {
473     width: 100%;
476 .path-mod-assign [data-region="grade-panel"] .popout > .col-md-3 {
477     @extend .modal-header;
478     font-size: 1.5rem;
481 .path-mod-assign [data-region="grade-panel"] [data-region="popout-button"] {
482     margin-top: 0.5rem;
485 .path-mod-assign [data-region="grade-panel"] .popout [data-region="popout-button"] {
486     margin-top: 0;
489 .path-mod-assign [data-region="grade-panel"] h3 {
490     margin: 10px 0;
491     line-height: 40px;
494 .path-mod-assign [data-region="assignment-info"] {
495     overflow-y: hidden;
498 .path-mod-assign [data-region="grading-navigation"] {
499     padding: 6px;
500     overflow-y: hidden;
503 .path-mod-assign [data-region="grade-actions"] {
504     padding: 10px;
507 .path-mod-assign [data-region="user-info"] .img-rounded {
508     margin-top: 0;
511 .path-mod-assign [data-region="grading-navigation-panel"] {
512     height: 85px;
515 .path-mod-assign [data-region="grading-navigation"] [data-region="input-field"] input {
516     width: auto;
517     display: inline-block;
520 /**
521  * Assign feedback.
522  */
523 .assignfeedback_editpdf_widget * {
524     box-sizing: content-box;
527 .assignfeedback_editpdf_widget button {
528     box-sizing: border-box;
531 .assignfeedback_editpdf_widget .commentcolourbutton img {
532     border-width: 0;
535 .assignfeedback_editpdf_widget .label {
536     @extend .tag;
537     @extend .tag-info;
540 .assignfeedback_editpdf_menu {
541     padding: 0;