@charset "utf-8";

BODY {
  background-image: url('http://demo710.univ-lyon1.fr/TOMUSS/favicon.ico');
  background-repeat: no-repeat;
  background-position: center -10px;
  --widthleft: 77px;
  --widthright: 77px;
  --widthspace: 3px;
  --widthaverage: 231px;
  --widthleft2: 120px;
}

/* BODY.themeP DIV.import_export */

/* GREY THEME */

.themeG, .themeG TABLE.colored TD, .themeG .BodyRight, .themeG>SPAN.BodyRight
{ background-color: #F8F8F8 }
.themeG TH, .themeG TH INPUT, .themeG .table_title,
.themeG .tab_selected, .themeG>SPAN.tab_selected
{ background-color: #E8E8E8 }
.themeG .sorted, TH.themeG>SPAN.toggled
{ background-color: #DDD }
.themeG .toggled { background-color: #FFF }
.themeG .border, TH.themeG.border
{ border: 1px solid #888 ; }
.themeG .table_title
{ border-bottom: 1px solid #888 ; }


/* PRINTEMPS THEME */

.themeP, .themeP TABLE.colored TD, .themeP .BodyRight, .themeP>SPAN.BodyRight
{ background-color: #F9FFF6 }
.themeP TH, .themeP TH INPUT, .themeP .table_title,
.themeP .tab_selected, .themeP>SPAN.tab_selected
{ background-color: #DFD ; }
.themeP .sorted, .themeP .toggled, TH.themeP>SPAN.toggled
{ background-color: #BFB ; }
.themeP .border, TH.themeP.border
{ border: 1px solid #0F0 ; }
.themeP .table_title
{ border-bottom: 1px solid #0F0 ; }

/* AUTOMNE THEME */

.themeA, .themeA TABLE.colored TD, .themeA .BodyRight, .themeA>SPAN.BodyRight
{ background-color: #FFF5E0 }
.themeA TH, .themeA TH INPUT, .themeA .table_title,
.themeA .tab_selected, .themeA>SPAN.tab_selected
{ background-color: #FDC ; }
.themeA .sorted, .themeA .toggled, TH.themeA>SPAN.toggled
{ background-color: #FCB ; }
.themeA .border, TH.themeA.border
{ border: 1px solid #FA6 ; }
.themeA .table_title
{ border-bottom: 1px solid #FA6 ; }

/* Dossier THEME */

.themeD, .themeD TABLE.colored TD, .themeD .BodyRight, .themeD>SPAN.BodyRight
{ background-color: #FFF7FD }
.themeD TH, .themeD TH INPUT, .themeD .table_title,
.themeD .tab_selected, .themeD>SPAN.tab_selected
{ background-color: #FFDDF6 ; }
.themeD .sorted, .themeD .toggled, TH.themeD>SPAN.toggled
{ background-color: #FFC5EF ; }
.themeD .border, TH.themeD.border
{ border: 1px solid #FF7CDB ; }
.themeD .table_title
{ border-bottom: 1px solid #FF7CDB ; }

/* Referent THEME */

.themeR, .themeR TABLE.colored TD, .themeR .BodyRight, .themeR>SPAN.BodyRight
{ background-color: #F0FFFF }
.themeR TH, .themeR TH INPUT, .themeR .table_title,
.themeR .tab_selected, .themeR>SPAN.tab_selected
{ background-color: #CFFEFF ; }
.themeR .sorted, .themeR .toggled, TH.themeR>SPAN.toggled
{ background-color: #99FDFF ; }
.themeR .border, TH.themeR.border
{ border: 1px solid #00E9F1 ; }
.themeR .table_title
{ border-bottom: 1px solid #00E9F1 ; }

/* BLACK AND WHITE THEME */

.themeBW, .themeBW TABLE.colored TD, .themeBW .BodyRight,
TH.themeBW>SPAN.BodyRight, TH.themeBW>SPAN.tab_selected
{ background-color: #FFF ; color: #000 }

.themeBW .border, .themeBW.border
{ border: 1px solid #000 ; }
.themeBW .table_title
{ border-bottom: 1px solid #000 ; }

.themeBW #cellbox_tip:hover,
.themeBW DIV.import_export
{
    border: 1px solid black ;
    opacity: 1 ;
}

.themeBW TABLE.colored TH,
.themeBW TABLE.colored CAPTION,
.themeBW .table_title
.themeBW .toggled
{
    background: #FFF ;
    color: #000 ;
    font-weight: bold ;
}

.themeBW A, .themeBW [onclick] { color: #000 }
.themeBW [onclick][disabled] { color: #888 }

BODY.compact_0 .titles > SPAN {
  padding-top: 0.15em ;
  padding-right: 0.4em ;
  padding-left: 0.4em ;
}
BODY.compact_0 .titles > SPAN.tab_selected {
  padding-bottom: 0.15em ;
}
BODY.compact_0 .contents {
  padding: 0.5em ;
}
BODY.compact_0 #menutop DIV.tabs .one_line {
  margin-top: 0em ;
  margin-bottom: 0.2em ;
  margin-left: 0em ;
  margin-right: 0em ;
  height: 1.8em ;
}
BODY.compact_0 .one_line * {
  vertical-align: baseline ;
}

BODY.compact_0 DIV.tabs DIV.contents {
  height: 9.4em ;
}
BODY.compact_0 DIV.tabs .gui_button {
  font-size: 110% ;
  padding-left: 0.2em ;
  padding-right: 0.2em ;
  padding-top: 0.1em ;
  padding-bottom: 0.1em ;
  margin-left: 0.3em ;
  margin-right: 0.3em ;
}
BODY.compact_0 #menutop SELECT {
  font-size: 100% ;
  padding-left: 0.2em ;
  padding-right: 0.2em ;
}
BODY.compact_0 #menutop .cell_values {
  padding-left: 0.5em ;
}
BODY.compact_0 #menutop DIV.tabs IMG.phot {
  width: 7.5em ;
}
BODY.compact_0 DIV.tabs DIV.titles SPAN {
  margin-right: 0.3em ;
}
BODY.compact_0 #menutop DIV.tabs INPUT {
  padding: 1px ;
}

BODY, TABLE TD, #current_input, TR.filter INPUT {
  border: none ;
  font-family: sans-serif ;
  cursor: text ;
}
INPUT[type=text] {
    cursor: text ;
    border: 1px solid #888 ;
}
INPUT[type=radio], INPUT[type=checkbox] { height: 1em;  width: 1em; }

INPUT {
    box-sizing: border-box ;
}

SELECT {
    border: 1px solid #888 ;
    border-radius: 0.5em ;
    vertical-align: top ;
}

A { text-decoration: none; }

.clickable {
    cursor: pointer ;
}
.clickable:hover {
    text-decoration: underline ;
}

*[onclick] {
  user-select: none;
}
INPUT[onclick], TEXTAREA[onclick],
#table_to_print *[onclick] /* Needed for table copy/paste */
{
  user-select: initial;
}

TEXTAREA { resize: vertical }

BODY H1 { font-size: 90% }

IMG { cursor: default; }

BODY, BODY TABLE INPUT, BODY TABLE TD, BODY TH, BODY P, BODY H1 { 
  padding: 0px ;
  margin: 0px;
}

BODY TABLE INPUT { padding-left: 2px } /* Fix not visible cursor on Chrome */

.identity {
  float: right ;
  margin-left:2em;
}

.identity TD {
    font-size: 80% ;
    white-space: nowrap ;
    text-align: right;
}

.identity .icons {
    font-weight:bold ;
    font-size:170% ;
}

.identity IMG { height: 0.8em }


DIV.import_export.top_right {
    top: 2em ;
    right: 0px ;
    left: auto ;
    max-width: 35em ;
    border: 1px solid black ;
    opacity: 0.9 ;
    background-color: #FFF ;
}

DIV.import_export.help_popup {
    bottom: 0px ;
    padding-right: 0px ;
    overflow: hidden ;
}

.zoom_buttons {
  position:absolute ;
  right:0px ;
  background:#EEE ;
  border:2px outset #FFF ;
}
.zoom_buttons:hover { background: #DDD }

DIV.top_right P { margin-top: 0.8em ; }

DIV.scrollable {
    overflow: auto ;
    max-height: 97% ;
}

#updating { display:none; background-color: orange }

.table_ro { background-color: #F00; color: #FFF }

.title_pointers {
  font-size: 70% ;
}

.title_pointers DIV.tipped {
  padding-top: 1em;
}

.shortcut {
  background-color: #0F0 ;
  float: right;
  margin-top: -3px;
}


TABLE.colored { 
  background-color: #FFF ;
  border-spacing: 0px ;
  empty-cells:show;
  border-left: 1px solid #999 ;
  border-top: 1px solid #999 ;
  font-weight: normal ;
}

TABLE.colored TD, TABLE.colored TH {
    border-bottom: 1px solid #CCC ;
    border-right: 1px solid #CCC ;
}

TR.separator TD {
  border-top: 1px solid #CCC ;
}

TABLE.colored TR.highlight_current TD {
  border-bottom-color: #000;
}

/* To find if the cursor is inside the table */
DIV#divtable:hover DIV#hover { 
  left: -20px;
}
DIV#divtable DIV#hover { 
  position:absolute;
  left: -10px;
}

DIV#divtable { 
  width: 100% ;
}

TABLE#thetable {
  table-layout: fixed;
  width: 100%;
}

/*
TABLE#menutop SELECT:focus { right: 0px ;  }
*/

TABLE#thetable TD, TABLE#thetable TH, TABLE#thetable TH SPAN, TABLE#thetable INPUT, #current_input { 
  white-space: nowrap;
  overflow: hidden ;
  vertical-align: top ;
  text-align: left;
  padding: 0px ;
  margin: 0px;
}

/* Rotate column titles */
TABLE#thetable TR.column_title TH INPUT {
  transition: transform 0.1s, background 0.1s ;
  transform-origin: top left ;
  border: 0px;
  pointer-events: none;
  width: 20em ;
  background: none;
}
TABLE#thetable TR.column_title TH:hover,
TABLE#thetable TR.column_title TH:focus-within
{ overflow: visible ; }
TABLE#thetable TR.column_title TH:hover INPUT,
TABLE#thetable TR.column_title TH INPUT:focus {
  overflow: visible ;
  transform: rotate(-15deg) ;
  position: absolute ;
  z-index: 1 ; /* above next title */
  filter: drop-shadow(0.1em 0px #FFFFFFAA) drop-shadow(-0.1em 0px #FFFFFFAA) drop-shadow(0px 0.1em #FFFFFFAA) drop-shadow(0px -0.1em #FFFFFFAA) drop-shadow(0.1em 0.1em #FFFFFFAA) drop-shadow(-0.1em -0.1em #FFFFFFAA) drop-shadow(-0.1em 0.1em #FFFFFFAA) drop-shadow(0.1em -0.1em #FFFFFFAA) ;
  /* pointer-events: none ; /* Needed to hide when exiting TH */
}
TABLE#thetable TR.column_title TH INPUT:focus {
  background: rgba(255, 255, 255, 1);
  pointer-events: all;
}

TABLE#thetable TD {
  height: 1.28em;  /* 1.1 was not good for Chrome */
  position: relative;
}

TABLE#thetable TBODY.autowidth TR.column_title TH {
  overflow: visible ;
}
TABLE#thetable TBODY.autowidth TR.column_title TH INPUT {
  transform: rotate(-30deg) ;
  position: absolute ;
  filter: drop-shadow(0.1em 0px #FFFFFFAA) drop-shadow(-0.1em 0px #FFFFFFAA) drop-shadow(0px 0.1em #FFFFFFAA) drop-shadow(0px -0.1em #FFFFFFAA) drop-shadow(0.1em 0.1em #FFFFFFAA) drop-shadow(-0.1em -0.1em #FFFFFFAA) drop-shadow(-0.1em 0.1em #FFFFFFAA) drop-shadow(0.1em -0.1em #FFFFFFAA) ;
  /* pointer-events: none ; */
  z-index: 9;
}

TABLE#thetable TBODY.autowidth TR.column_title TH:first-child INPUT {
  position: relative ;
  transform: rotate(0deg) ;
}


.sorted_value {
    font-size: 60% ;
    line-height: 1em ;
    color: #66F ;
    position:absolute;
}

DIV#current_input_div { 
  position: absolute ;
  border: 3px solid grey ;
}

DIV#current_input_div INPUT#current_input {
  width: 100% ;
  height: 100% ;
  outline: none ;
}


TH, TH INPUT, TH P {
  font-weight: 500 ;
}

TH SELECT { 
  background-color: #CDC ;
}
TABLE INPUT, #current_input {
  font-size: 100% ;
}

THEAD TR TD { 
  white-space: normal;
}

.empty {
  background-repeat: no-repeat ;
  background-position: 2px 2px;
  background-size: auto 0.9em ;
}

/* TR.filter TH INPUT.notempty { background-color: #DFD ; } */
TR.filter TH INPUT.empty {
  background-color: transparent ;
}

TR.filter TH INPUT {
  background-color: #FF0 ;
}



TR.filter TH INPUT.freezed { border-bottom: 1px solid black; }

#linefilter, #columns_filter, #fullfilter {
  background-color: #FFF ;
  border: 1px solid black ;
}

#menutop #linefilter, #menutop #columns_filter, #menutop #fullfilter,
#menutop #linefilter.empty:focus, #menutop #columns_filter.empty:focus, #menutop #fullfilter.empty:focus
{
  background-color: #FF0 ;
}

#menutop #linefilter.empty, #menutop #columns_filter.empty, #menutop #fullfilter.empty {
  background-color: white ;
}

TR.tablefilter INPUT { width: 10em ; }


TR.ok TD, #current_input.ok, SPAN.ok {  }
BODY TABLE.colored TR.non TD, #current_input.non, SPAN.non, LI.non { background-color: #FBB; }

TR.column_title TH, #tip LI.just_ro, TR.column_title TH INPUT { color: #00F; }
TR.column_title TH.ro { color: #88F; }
TR.column_title DIV { position: relative; width:100% }
TR.column_title DIV SPAN { float: left; width:100% }
TR.column_title DIV IMG { position: absolute; right: 0px; top: 0px }


TR.ro, TD.ro, #current_input.ro, TH.ro, TH.ro INPUT, TH.ro SELECT, .ro { 
  color: #555 ;
}
TD.transparent, TH.transparent {
  opacity: 0.5;
}

.some_abj { text-decoration: dotted underline #0008 3px; }
.is_an_abj, .is_not_an_abj { text-decoration: underline #F00 2px; }
.is_not_an_abi, .ro.is_not_an_abi, .greentext.is_not_an_abi { color: #F00 ; }

TABLE#thetable TD.number, TD.number, #current_input.number { 
  text-align: right ;
}

.override:after {
  content: '✍' ;
  font-family: emoji;
  font-size: 90% ;
  margin-left: -1.1em ;
  opacity: 0.6 ;
}

/* Tiers temps */
P.tierstemps { background-color: #BBF ; }
BODY TABLE.colored TR.tierstemps TD, #current_input.tierstemps, SPAN.tt { background-color: #BBF ; }
BODY TABLE.colored TR.tierstemps.non TD { background-color: #FBF ; }

BODY TABLE.colored TR.tierstemps TD.color_green.color_red,
BODY TABLE.colored TR TD.color_green.color_red,
#current_input.color_green.color_red,
.color_green.color_red,
.color_green.color_red SELECT {
  background-color: #FC0 ;
}

BODY TABLE.colored TR.tierstemps TD.color_red,
BODY TABLE.colored TR TD.color_red,
#current_input.color_red,
.color_red,
.color_red SELECT {
  background-color: #F88 ;
}

BODY TABLE.colored TR.tierstemps TD.color_green,
BODY TABLE.colored TR TD.color_green,
#current_input.color_green,
.color_green,
.color_green SELECT {
  background-color: #8F8 ;
}

.greentext.redtext, .greentext.redtext SELECT { color: #D60 ; }
.redtext          , .redtext           SELECT { color: #A00 ; }
.greentext        , .greentext         SELECT { color: #0A0 ; }

.emoji { font-family: emoji; }


BODY TABLE.colored TR TD.filtered, #current_input.filtered, BODY TABLE.colored TR.non TD.filtered, BODY TABLE.colored TR.tierstemps TD.filtered, SPAN.filtered { 
  background-color: #FF0 ;
}

.dispense_assiduite TD:nth-child(2), SPAN.dispense_assiduite {
  background-image: url(ok.png) ;
  background-repeat: no-repeat;
  background-position: right top ;
  background-size: 0.6em 0.6em ;
}

.dispense_assiduite.DA TD:nth-child(2), SPAN.dispense_assiduite.DA {
  background-size: 1.2em 1.2em ;
}

TABLE#thetable TH.sorted { 
  font-weight: bold ;
}

TR.column_title DIV {
    position: relative ;
}

TR.column_title DIV DIV { /* Sorting triangle */
    position: absolute ;
    right: 0px ;
    top: 0px ;
    width: auto ;
    height: 1.2em ; /* Bad height on Chrome on Windows */
    z-index: 2 ; /* Above rotated title */
}

TR.column_title TH:hover DIV.icon_hidden {
    display: block ;
    color: #888 ;
}

TR.column_title DIV.icon_hidden {
    display: none ;
}

TABLE#thetable TH.hidden_to_student,
TABLE#thetable TH.hidden_to_student INPUT,
.help_popup SPAN.hidden_to_student,
#tip LI.hidden_to_student,
DIV#horizontal_scrollbar A.hidden_to_student {
  color: #B83 ;
}

TABLE#thetable TH.modifiable_by_student,
TABLE#thetable TH.modifiable_by_student INPUT,
.help_popup SPAN.modifiable_by_student,
#tip LI.modifiable_by_student,
DIV#horizontal_scrollbar A.modifiable_by_student {
  color: #F55 ;
}

TABLE#thetable TH.public_display,
TABLE#thetable TH.public_display INPUT,
#tip LI.public_display,
DIV#horizontal_scrollbar A.public_display {
  color: #080 ;
}

TABLE#thetable TH.private_column {
  background: #FFF ;
}

IMG.server { 
  width: 7px ;
  height: 7px ;
  background-color: orange ;
  border: 0px ;
}

INPUT#comment {
  border: 1px solid black ;
  background-color: white ;
}

TABLE INPUT, TABLE SELECT { 
  width: 100% ;
}

DIV.tipped, DIV.tipped DIV.text { display: inline;}
/* Fix Firefox bug with empty SPAN */
#menutop > TBODY > TR > TD:first-child > DIV > DIV.contents > DIV:nth-child(n+2) DIV.text
{ display: inline-block ; vertical-align: top;}

DIV.tipped DIV.help { display: none; }

DIV#tip DIV.more { 
  white-space: normal;
  font-weight: bold;
  background-color: inherit ;
  border-top: 1px solid black ;
}

DIV#tip { 
  position: absolute;
  border: 1px solid black;
  border-radius: 7px;
  background: rgba(235, 255, 255, 0.9);
  max-height: 50vh;
  min-width: 10em;
  max-width: 45vw;
  overflow: hidden;
  visibility: hidden;
  z-index: 40;
  font-size: 70%;
  transition: left 0.2s, top 0.2s;
}

DIV#tip DIV#scroll_tip {
  max-height: 45vh;
  max-width: 40vw;
  padding-bottom: 2px;
  padding-top: 2px;
  padding-left: 3px;
  padding-right: 3px;
  user-select: auto;
  overflow: auto;
}

DIV#scroll_tip li {
  max-width: fit-content;
  user-select: auto;
}

DIV.debug_label {
  margin-top: 2px;
  margin-right: -3px;
  margin-left: -3px;
  margin-bottom: 2px;
}

DIV.debug_label:first-child { margin-top: -2px; }

DIV.help > * { font-size: 80%; }

DIV#tip HR {
   width: 20em ; /* Needed for IE, else it is the full screen width */
}

DIV#tip SPAN.title { background-color: #CCF ; }

.cursor IMG {
  vertical-align: middle ;
  border: 0px ;
}

#highlighter {
  position: absolute;
  background-image: linear-gradient(#0FF6, #FF06);
  pointer-events: none;
  display: none;
  z-index: 1000;
}

DIV#tip_open {
  background: transparent;
  font-weight: bold;
  pointer-events: all;
  position: absolute;
  height: fit-content;
  margin: 0px;
  visibility: hidden;
  z-index: 35;
}

DIV#tip_open:hover {
  cursor: pointer;
}

DIV#tip_open:hover div {
  background: #FFF;
  border: 1px solid darkblue;
  opacity: 0.9;
}

DIV#tip_open div {
  background: transparent;
  border: 1px solid black;
  border-radius: 50%;
  line-height: 19px;
  min-height: 18px;
  min-width: 18px;
  max-height: 18px;
  max-width: 18px;
  margin: auto;
  opacity: 0.5;
  pointer-events: all;
  text-align: center;
}

DIV#tip_close {
  background: #FFF;
  border: 1px solid black;
  border-radius: 7px;
  font-size: 140%;
  font-weight: bold;
  line-height: 15px;
  top: -1px;
  right: -1px;
  pointer-events: all;
  position: absolute;
  max-height: 16px;
  max-width: 16px;
  min-height: 16px;
  min-width: 16px;
  text-align: center;
  z-index: 50;
}

DIV#tip_close:hover {
  background: #FFC;
  cursor: pointer;
}

DIV.shortcuts {
    background-color: #888 ;
    }
DIV.shortcuts TD {
    background-color: #EEE
    }
DIV.shortcuts TD.key {
    text-align: center ;
    }
DIV.shortcuts TD.modifier {
    text-align:right
    }

IMG.photo { 
  width: 100px ;
}

.no_private_data {
  color: #F00 ;
  max-width: 30em ;
  display: block ;
}

TD.comment, .comment { 
  background: url('cell_comment.png');
  background-repeat:no-repeat;
  background-position:right top;
}

TD.comment, #current_input.comment { 
  background-color: white;
}

TD.today, #current_input.today, .today { 
  font-weight: bolder ;
}

TD.default { color: #BBB;
	     position: relative ; /* Needed for cell merging */
	   }

TD.suivi_hidden:before, .suivi_hidden:before {
  content: '►' ;
  float: left ;
  color: #DA0 ;
  margin-left: -4px;
}

TD.suivi_modifiable:before, .suivi_modifiable:before {
  content: '►' ;
  float: left ;
  color: #F55 ;
  margin-left: -4px;
}

SPAN#teachers { font-weight: bold ; }

#student_data { border: 0px ; width: 1px ; height: 1px ; }


.t7, .t8 { display: none ; }

.copyright {
  color: #AAA ;
}

TABLE.tablehelp { border: none; }
TABLE.tablehelp TR TH { text-align: right; background-color: #EEEEEE; }


IMG.icone { height: 16px; border: none;   vertical-align: bottom ;
 }
IMG.bigicone { width: 100px; border: none; }

.stroked { background-color: #BFB; font-weight: bold }

#menutop A.linkstroked { text-decoration: line-through }


#authenticate { 
  display: none ;
  position: absolute;
  left: 10%;
  width: 80% ;
  top: 10%;
  height: 80% ;
  border: 4px solid red ;
  background-color: white ;
  z-index: 300 ;
}

DIV#horizontal_scrollbar {
  font-size: 75% ;
  display: inline;
  padding-bottom: 6px ;
}

DIV.horizontal_scrollbar {
  margin-bottom: 1em;
}
DIV.horizontal_scrollbar P {
  border-top: 1px solid black;
  border-bottom: 1px solid black;
}
DIV.horizontal_scrollbar P:last-child {
  border-left: 1px solid #AAA;
  border-right: 1px solid black;
}
DIV.horizontal_scrollbar P, DIV#vertical_scrollbar P {
  background-color: #00F;
  color: #FFF;
  cursor: pointer;
  font-size: 0.9rem;
  line-height: 14px;
  position: absolute;
  text-align: center;
}
DIV.horizontal_scrollbar P:hover, DIV#vertical_scrollbar P:hover {
  background-color: #00C;
}

DIV#horizontal_scrollbar A {
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  border-left: 1px solid #AAA;
  position: absolute;
  text-decoration: none;
  margin: 0px;
  padding: 0px;
  overflow: hidden;
  white-space: nowrap;
}

DIV#horizontal_scrollbar A.column_visible:not(.fixed, .cursor) {
  background-color: #CCC;
  box-shadow: inset 0px 2px #FFF, inset 0px -2px #FFF;
  cursor: default;
}
DIV#horizontal_scrollbar A.hovered:not(.cursor) {
  background-color: #AAA;
}

DIV#horizontal_scrollbar A.column_invisible {
  background-color: #FFF;
}

DIV#horizontal_scrollbar A.fixed {
  box-shadow: inset 0px -1px black;
}

DIV#horizontal_scrollbar A.cursor { 
  background-color: #0F0;
  box-shadow: inset 0px 2px #FFF, inset 0px -2px #FFF;
}

DIV#horizontal_scrollbar A.sorted { 
  color: #080;
}

@keyframes blinker {
  0% {  color: #FF0; background-color: #000; }
  50% {  color: #000; background-color: #FF0; }
}
DIV#horizontal_scrollbar A.column_invisible.filtered {
  animation: blinker 1s steps(1, end) infinite;
}

DIV#vertical_scrollbar { 
  font-size: 70%;
  background-color: #FFF;
  border: 1px solid black;
  position: absolute;
  overflow: hidden;
}
DIV#vertical_scrollbar SPAN { position: absolute ; left: 1px; }
DIV#vertical_scrollbar SPAN.position {
  left: 0px;
  right: 0px;
  background-color: #CCC;
  box-shadow: inset 2px 0px #FFF, inset -2px 0px #FFF;
  cursor: default;
  width: 100% ; /* For IE */
}
DIV#vertical_scrollbar SPAN.position:hover {
  background-color: #AAA;
}
DIV#vertical_scrollbar SPAN B.letter {
   color: #00F ;
}
DIV#vertical_scrollbar SPAN B.hide {
  color: #AAA ;
}
DIV#vertical_scrollbar SPAN.cursor {
  position: absolute ;
  background-color: #0F0 ;
  height: 0px ;
}


#feedback {
  position:absolute ;
  left: 45% ;
  top: 45% ;
  z-index: 2;
}

P.da {  background-color: #0F0 ; }


DIV.loading_bar {
  position: absolute ;
  left: 10% ;
  right: 10% ;
  top: 45% ;
  bottom: 45% ;
  background-color: white ;
  border: 2px solid black ;
  z-index: 1001;
}

DIV.loading_bar DIV {
  background-color: #4F4 ;
  height: 100% ;
}


.login_list, .login_list OPTION { 
  font-family: monospace;
  white-space: pre;
}

.attribute_error {
    color: red ;
    font-weight: bold
    }

/*****************************************************************************/
/* MENUTOP */
/*****************************************************************************/

#menutop {
  table-layout: fixed;
  border-spacing: 0px;
  margin-bottom: 0px ;
  width: 100% ;
  margin-top: 0em;
}
#menutop div.title {
  background-color: #8F8 ;
  display: inline;
  border-top: 1px solid black ;
  border-left: 1px solid black ;
  border-right: 1px solid black ;
  border-bottom: 0px ;
  font-size: 120%;
  padding-left: 0.2em ;
  padding-right: 0.2em ;
}

#menutop TD.blocktop {
  border-top: 1px solid black ;
  border-left: 1px solid black ;
  border-right: 1px solid black ;
}
#menutop TD.blockbottom {
  border-bottom: 1px solid black ;
  border-left: 1px solid black ;
  border-right: 1px solid black ;
}
#menutop TD.space { width: 2px ; }

#menutop TD.blocktop { width: 30% ; overflow: hidden;}
#menutop TD { vertical-align: bottom ; }
#t_student_picture {
  float: left;
  margin-bottom: 5px;
}
#t_value { font-weight: bold; }
INPUT#comment { width: 100% ; clear: both; }
#menutop IMG.phot { border-width: 0 ; width: 5.6em }

#menutop .one_line {
  white-space: nowrap ;
  overflow: hidden;
}

.insert_spaces > * { margin: var(--widthspace); }
BODY.compact_1 > * { margin: 1px; }


/* #menutop SELECT { position:relative; top: -3px } */

#t_date, #t_author { font-size: 80%; }

.highlight { animation: highlight 1s; }

@keyframes highlight {
  from { background-color: #FF0; }
  to { background-color: #FFF; }
}

#menutop INPUT {
  width: 96% ;
  margin: 1px ;
  background-color: white ; 
  border: 1px solid black;
}
#menutop INPUT:focus { border: 1px solid #00F }

#menutop SELECT { width: 25% ; font-size: 80%; }

.gui_button {
  margin: 0px ;
  background: #EEE ;
  border: 1px outset #AAA ;
  font-size: 70% ;
  padding: 0px ;
  cursor: pointer;
}

/* #menutop .gui_button:hover { background: #EFE ; } */

H1 {  margin: 0px  }
.testmessage { margin: 0px }

TR#dates TD { padding: 3px ;
}

.hidden_on_paper {  background: #FF8; margin: 0px; }
.printable_introduction {
  float: right;
  border: 1px solid black;
  font-size: smaller ;
  background: #FF0 ;
}

.button_toggle { 
  border: 2px solid #AAA ;
  padding: 0px ;
  white-space: nowrap ;
  vertical-align: middle ;
  border-spacing: 0px ;
  cursor: pointer ;
  color: black ;
  background: inherit ;
  margin: 1px ;
}

.button_toggle.toggled {
  border: 2px solid #000 ;
}

TABLE.hidden_on_paper span.button_toggle { font-size: 70% ; }

.nowrap, TABLE.nowrap TD, TABLE.tdnowrap TD { white-space: nowrap ; }

.small { font-size: 80% }
.smaller { font-size: 60% }

A[href]:hover { text-decoration: underline }

.big_border_left {
  border-left: 3px solid #000;
}

/*****************************************************************************/
/* New new interface */
DIV.tabs DIV.titles {
    white-space: nowrap ;
}
DIV.tabs DIV.titles SPAN {
  border: 1px solid black ;
  margin-right: -1px ;
  cursor: pointer ;
  border-top-right-radius: 0.4em ;
  border-top-left-radius: 0.4em ;
  opacity: 0.7 ;
}

DIV.tabs DIV.titles SPAN:first-child {
  font-weight: bold ;
}

DIV.tabs DIV.titles SPAN.tab_selected, DIV.tabs DIV.titles SPAN:hover {
  opacity: 1 ;
}

DIV.tabs DIV.titles SPAN.tab_selected {
  border-bottom: 0px ;
}

DIV.tabs DIV.contents {
  border: 1px solid black;
  height: 7.6em;
  overflow: hidden ;
}

#menutop DIV.tabs IMG.phot {
height: auto;
width: 5.5em;
}

DIV.tabs DIV.contents DIV.content { height: 100% }
DIV.tabs {
  margin: 3px ;
  font-size: 80% ;
}

DIV.tabs .gui_button {font-size: 90% ; vertical-align: bottom }


TABLE.tabbed_headers { width: 100%; }
TD.tabbed_headers { width: 20%; }

TABLE.cell { border-spacing: 0px ; width: 100% }
TABLE.cell TD.cell_values { width: 100%; }


#menutop DIV.tabs .one_line {
  height: 1.43em ;
  margin: 1px ;
}

#menutop DIV.tabs INPUT{ width: 100% ; margin: 0px }

#menutop DIV.tabs SPAN.widthleft,
#menutop DIV.tabs SPAN.widthleft2,
#menutop DIV.tabs SPAN.widthright {
  display: inline-block;
  text-align: right;
  padding-right: var(--widthspace);
}
#menutop DIV.tabs SPAN.widthleft {
  width: var(--widthleft); }
#menutop DIV.tabs SPAN.widthright {
  width: var(--widthright); }
#menutop DIV.tabs SPAN.widthleft2 {
  width: var(--widthleft2); }


DIV.tabs .scroll_auto { overflow: auto; height: 100% }

DIV.tabs #t_history, DIV.tabs #t_details  { overflow: scroll; width: max-content}

BODY.compact_0 #t_editor {
  width: calc(33% - 20px) ;
  height: 9em ;
  margin-top: 0px ;
}

BODY.compact_1 #t_editor {
  width: calc(33% - 10px) ;
  height: 6.5em ;
}

BODY.compact_0 #t_editor:hover { width: calc(100% - 20px) }
BODY.compact_1 #t_editor:hover { width: calc(100% - 13px) }

#t_editor {
    position: absolute ;
    z-index: 3 ;
    transition: width 0.5s 0.5s ;
    font-size: 140% ;
}

#t_editor:hover {
    transition: width 1s ;
}

DIV.tabs #t_history:hover, DIV.tabs #t_details:hover {
    position: absolute ;
    z-index: 3 ;
    max-height: 50% ;
    max-width: 99% ;
    background: #FFF;
}

.table_messages_0 { background: #FFF }
.table_messages_1 { background: #DFD }
.table_messages_2 { background: #FDB }
.table_messages_3 { background: #FAA }
.table_messages_t1 { opacity: 0.6 }
.table_messages_t2 { opacity: 0.4 }
.table_messages_t3 { opacity: 0.1 }


/*
DIV.tipped { background:red;}
.one_line { background:green  }
*/

DIV.howto {
    background: white ;
    border: 2px solid black ;
    }
DIV.howto.import_export {
    padding: 0px ;
    bottom: 0px ;
    right: 0px;
    top: auto ;
    left: auto ;
    max-height: 100% ;
    max-width: 100% ;
}

.howto IFRAME {
    width: 1000px ;
    height: 576px ;
    border: 0px ;
    }


.filter_editor {  }
.filter_editor > DIV {  }
.filter_editor > DIV > DIV {
  background: #FFF ;
  border: 1px solid #888 ;
  display: inline-block ;
  padding: 0.2em ;
  margin-left: 0.5em ;
  margin-right: 0.5em ;
}

.line_resume { table-layout: fixed; position: relative }
.line_resume TD { vertical-align: top }
.line_resume TD DIV { width: 30em ; height: 1.2em; margin: 0px; padding: 0px }
.line_resume TD DIV:hover {
   background: inherit ;
   position: absolute; height: auto;
   filter: drop-shadow(0px 0px 5px) ;
}

.an_observation {
  display: inline-block;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  margin-right: 1px;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
  vertical-align: middle;
}
/*****************************************************************************/
/* PRINT */
/*****************************************************************************/

@media print {

BODY { 
    margin: 5mm ;
}

BODY, TABLE TD, TH, P, H1 {
    background-color: white ;
}

.title_pointers {
  display: none;
}

.hidden_on_paper {
  display: none;
}

/* 'display: none' does not work because JavaScript change it */
DIV#tip {
    display: none ; /* Do not work for all */
    border: 0px ;
    font-size: 0px ; /* Can't hide under background when printing */
    z-index: -1 ;
    opacity: 0 ;
    }    

}
/* ------ General ---------------------------- */

.import_export.competences_content {
    top: 194px;
    right: 0;
    bottom: 0px;
    left: auto;
    width: 60vw;
    border: 2px solid #303030;
    padding: 0;
}

.competences_content P {
    min-height: 1.2em
}

.competences_content H2 {
    height: 30px;
    background-color: #AAA;
    border-bottom: 1px solid #333;
    overflow: hidden;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    font-size: 20px;
    text-align: center;
}

/* ------ Competences table head --------------------------------------------------------------- */
.comp_head_content {
    display: flex;
    height: 100%;
}

.comp_head_area {
    padding: 2px;
    display: flex;
    overflow: hidden;
    flex-direction: column;
    align-items: center;
}

.comp_head_area BUTTON {
    white-space: nowrap;
    min-width: 50%;
}

.comp_head_title {
    font-size: 1em;
    text-align: center;
}

.comp_head_weights {
    max-width: 300px;
    width: 100%;
    min-width: 4.5cm;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.comp_head_grade_area {
    margin: 2px;
}

.comp_head_grade_area BUTTON {
    margin: 1px;
    white-space: nowrap;
    overflow: hidden;
}

.comp_head_observation {
    height: 23px;
    width: 23px;
    margin-bottom: 3px;
    box-shadow: inset 1px 1px 3px rgba(0, 0, 0, 0.35);
}

#menutop DIV.tabs .comp_head_weights INPUT {
    height: 23px;
    width: 23px;
    text-align: center;
}

#content_Stats {
    display: flex;
}
.stats_table {
    border-collapse: collapse;
    height: 100%;
}
.stats_table TD {
    box-shadow: 1px 1px 0 #CCC inset;
    padding: 0 1px;
}

/* ------ Observations popup ------------------------------------------------------------------- */

#competences_head {
    border-bottom: 1px solid #303030;
    background-color: #b0b0bd;
    display: flex;
    justify-content: space-between;
    overflow: hidden;
}

#comp_searchbar_area {
    margin-right: 2cm;
}

#comp_searchbar {
    width: max-content;
    height: 1.5em;
    margin: 5px;
}

.sort_area {
    display: flex;
    height: 1.3em;
}

.sort_area P {
    padding: 2px;
    font-size: 0.8em;
    white-space: nowrap;
}

.toggle_FUC {
    position: static;
    height: 27px;
    min-height: 2em;
    max-width: 70px;
    padding: 0 5px 0 5px;
    display: flex;
    font-size: 0.7em;
    text-align: center;
    border-right: 1px black solid;
    transition: height 200ms;
}

.FUC_input_area {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 30px;
}

.toggle_FUC INPUT:checked {
    background: #000;
}

/* ------ Competences Table ------------------ */
#competences_table {
    height: calc(100vh - 275px);
    overflow-y: auto;
}

#competences_table .comp_line:nth-child(even) {
    background-color: #EEE;     /* Zebra */
}

.comp_line {
    min-height: 2em;
    position: relative;
    display: flex;
    align-items: center;
}

.subcomps_content .comp_line {
    overflow: visible;
}

.line_desc {
    padding: 3px 10px 3px 10px;
    flex: 1;
    margin-left: 20px;
    color: #00F;
}

.observations_content .line_desc {
    cursor: pointer;
}

.depth2 .line_desc {
    margin-left: 40px;
    color: #000;
}

.title_edit_btn {
    height: 20px;
    width: 20px;
    min-width: 20px;
    margin: 4px;
    padding: 0;
}

P.editable {
    padding: 3px 10px 3px 10px;
}

/* ------ Subcompetences Popup --------------- */
#competences_table H3 {
    text-align: center;
    border-top: 1px #333 solid;
    margin: 0;
    padding: 5px 0 10px 0;
    background: #AAA;
}

.subcompetence-add {
    width: 25px;
    height: 25px;
    margin: 1px 0 1px 8px;
    padding: 0;
    font-size: 20px;
    position: relative;
}

.subcompetence-remove {
    width: 25px;
    height: 25px;
    margin: 1px 0 1px 8px;
    padding: 0;
    font-size: 20px;
}

.subcompetence-delete {
    width: 25px;
    height: 25px;
    margin-left: 48px;
    padding: 0;
    font-size: 20px;
}


.comp-selector {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    height: fit-content;
    width: fit-content;
    border: 1px solid #333;
    border-radius: 3px;
    background: white;
    display: flex;
    flex-direction: column;
    align-items: end;
}

.comp-selector>DIV {
    max-height: 230px;
    overflow-x: auto;
}

.comp-selector BUTTON {
    width: 500px;
    margin: 2px;
    border: 1px #777 solid;
    border-radius: 3px;
}

.comp-selector .cancel_button {
    width: 25px;
    background: #F88;
    border-color: #333;
}

/* ------ Grades details --------------------- */
.grades_container {
    max-width: calc(100% - 100px);
    margin-left: 15px;
}

.grade_line {
    width: fit-content;
    max-width: 100%;
    display: flex;
    align-items: center;
    position: relative;
}

.grade_line P {
    min-width: 1cm;
    margin: 0 35px 0 5px;
    color: black;
    font-size: 0.85em;
    white-space: nowrap;
    overflow: hidden;
}

.desc_edit_btn {
    position: absolute;
    top: 1px;
    right: 10px;
    height: 20px;
    width: 20px;
    padding: 0;
    display: none;
}

.grade_line:hover .desc_edit_btn {
    display: block;
}

.observations_title {
    width: 133px;
    padding-top: 5px;
    text-align: center;
}

.toggle_observations {
    position: static;
    display: flex;
    height: 2em;
    transition: height 200ms;
}

/* ------ Checkboxes ------------------------- */
.competences_content INPUT[type="checkbox"] {
    appearance: none;
    cursor: pointer;
}

.competences_content INPUT[disabled] {
    opacity: 0.2;
    cursor: default;
}

.comp_line .grade_input {
    display: grid;
    place-content: center;
    margin: 0;
    width: 2em;
    min-width: 2em;
    height: 2em;
    border: 1px solid #333;
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.3);
}

INPUT.grade_input::before {
    content: "";
    width: 1.95em;
    height: 1.95em;
    transform: scale(0);
    background-color: black;
    transition: 120ms transform ease-in-out;
    transform-origin: center;
    clip-path: polygon(0 5%, 5% 0, 50% 45%,
            95% 0, 100% 5%, 55% 50%,
            100% 95%, 95% 100%, 50% 55%,
            5% 100%, 0 95%, 45% 50%);
    /* cross  path */
}

INPUT.grade_input:checked::before {
    transform: scale(1);
}

INPUT.FUC_input {
    width: 21px;
    height: 21px;
    margin: 3px;
    border: 2px solid #303030;
    background: #0000;
}

/* ------ Aggregations popup ------------------------------------------------------------------- */
DIV.import_export.aggregate_content {
    left: 20%;
    width: auto;
}

DIV.import_export.subcomps_aggregate_content {
    left: 10%;
    width: auto;
}

DIV.import_export.catalog_aggregate_content {
    left: 20%;
    width: auto;
}

.aggr_popup_area {
    height: calc(100% - 32px);
    overflow-y: auto;
}

.aggr_popup_area H3 {
    margin: 8px;
}

.comp_aggr_register {
    margin: 2px 60px 2px 0;
    border: 1px solid #333;
    padding: 3px;
    cursor: pointer;
}

.comp_aggr_register[disabled] {
    opacity: 0.3;
}

.comp_aggr_method {
    margin: 15px;
}

.competences_content .comp_aggr_method INPUT[disabled] {
    opacity: 0.7;
}

.aggr_title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

/* ----- Table of aggregations --------------- */
.comp_table_head {
    border-collapse: collapse;
    font-size: 0.86em;
}

.comp_table_head TH {
    border: 1px solid #333;
    border-width: 1px;
}

.comp_table_head TR {
    height: 100%;
    background: none;
}

.comp_table_list {
    overflow-y: auto;
}

#comp_aggr_table {
    border-collapse: collapse;
    font-size: 0.86em;
    height: 1px;
}

#comp_aggr_table THEAD {
    position: sticky;
    top: 0;
}

#comp_aggr_table THEAD TH {
    padding: 2px;
    border: none;
    box-shadow: 1px -1px 0 black inset;
}

#comp_aggr_table TH {
    border: 1px solid #333;
}

#comp_aggr_table THEAD TR {
    height: 100%;
    background-color: #DDD;

}

#comp_aggr_table .aggr_line {
    border-width: 0 1px 0 0;
    background: none;
}

THEAD TH.comp_weight {
    word-break: break-all;
    font-weight: bold;
}

#comp_aggr_table INPUT {
    background: none;
}

#comp_aggr_table INPUT[type=text] {
    background-color: #FFF;
}

#comp_aggr_table INPUT:read-only[type=number] {
    -moz-appearance: textfield;
}

#comp_aggr_table INPUT:read-only::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

#comp_aggr_table TR {
    height: 100%;
    background-color: #DDD;
}

#comp_aggr_table TR:nth-child(even) {
    background-color: #EEE;
}

#comp_aggr_table TH {
    height: 100%;
}

.comp_aggr_description {
    padding: 2px 5px 2px 5px;
    text-align: justify;
    overflow: hidden;
    flex: 1;
}

.comp_aggr_description.depth2 {
    margin-left: 30px;
}

.comp_aggr_preview {
    display: flex;
    height: 100%;
}

.comp_aggr_preview>DIV {
    flex: 1;
}

.comp_weight {
    width: 70px;
    word-break: break-all;
}

.comp_weight P {
    width: 100%;
    text-align: center;
    font-weight: bold;
}

.comp_weight INPUT {
    width: 100%;
    height: 100%;
    border: none;
    text-align: center;
    font-weight: bold;
}

.aggr_preview_area {
    width: 120px;
}

/* ----- Spacials formula -------------------- */
#aggr_formula_template {
    width: fit-content;
    border: 1px solid #333;
    background-color: #FFF;
    margin: 10px;
    padding: 5px;
}

.comp_aggr_add_formula {
    margin: 5px;
}

.comp_aggr_formula {
    white-space: nowrap;
    margin: 5px;
}

.comp_aggr_formula BUTTON {
    margin-right: 15px;
}

.aggr_import_export {
    position: relative;
}

.copy_bubble {
    position: absolute;
    top: 1.7em;
    left: 0;
    border-radius: 5px;
    padding: 2px 5px;
    background: #AAA;
}

.copy_bubble:after {
    content: '';
    position: absolute;
    top: 0;
    left: 15px;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-bottom-color: #AAA;
    border-top: 0;
    margin-left: -5px;
    margin-top: -5px;
}

/* ----- Catalog Aggregation ----------------- */
#aggr_layer_area {
    width: 25%;
    min-height: 2.5cm;
    padding: 5px;
    overflow: hidden;
}
#aggr_layer_area P {
    white-space: nowrap;
}

.aggr_comp_selector {
    display: flex;
    justify-content: space-between;
}

.aggr_comp_selector BUTTON {
    border: none;
    background: none;
}

.aggr_comp_selector BUTTON:hover {
    color: #FFF;
}

.aggr_add_ue {
    max-width: 5cm;
    background-color: #FFF;
}

/* ----- line pie chart ---------------------- */
.line_pie_chart {
    display: flex;
    background-color: #444;
    height: max-content;
    min-height: 1em;
    border: 1px solid #333;
}

.line_pie_chart>DIV {
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.3);
}

#comp_aggr_table .line_pie_chart {
    border: none;
    height: 100%;
}

/* ----- Competences Recap ------------------- */

/* - recap table - */
#popup_id.competences_recap_popup {
    left: 0;
    top: 0;
    right: 21em;
    height: 100vh;
    min-width: 500px;
    border: 1px #333 solid;
    padding: 0;
    background-color: white;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    z-index: 0;
}
.hide_right_column_1 #popup_id.competences_recap_popup {
   right: 0; 
}

#competences_recap_table {
    flex: 1;
    overflow-y: auto;
}

.competences_recap_popup H2 .recap_weight {
    writing-mode: sideways-lr;
    font-weight: normal;
    font-size: 0.6em;
}

.competences_recap_popup .recap_weight {
    width: 40px;
    height: 100%;
    border-left: 1px black solid;
    text-align: center;
}

.competences_recap_popup H2 {
    height: 2em;
    border-bottom: 1px #333 solid;
    background-color: #DDD;
    display: flex;
    align-items: center;
}

.competences_recap_popup H2 P {
    flex: 1;
    text-align: center;
}

.competences_recap_popup H3 {
    text-align: center;
}

DIV.import_export.competences_recap_popup BUTTON.close {
    right: var(--grade-area);
}

.competences_recap_popup .compstats_label {
    font-size: 0.5em;
    font-weight: normal;
    color: #70E;
}

DIV.import_export.competences_recap_popup {
    overflow: visible;
}

.competences_recap_popup .comp_area {
    height: auto;
}

.competences_recap_popup .comp_area.closed {
    display: none;
}

.competences_recap_popup .comp_line {
    height: 2.2em;
    margin-bottom: 1px;
    outline: 1px #333 solid;
    cursor: pointer;
}
.competences_recap_popup .comp_line:hover {
    box-shadow: inset 5px 2px 5px rgba(0, 0, 0, 0.2);
}
.competences_recap_popup .comp_line.detailed {
    outline: 3px #333 solid;
    box-shadow: inset 0 0 20px rgba(0, 0, 0, 0.2);
    z-index: 1;
}

.competences_recap_popup .comp_line .symbol {
    flex: unset;
    padding-left: 8px;
}
.competences_recap_popup .comp_line P {
    flex: 1;
    padding-left: 1em;
    overflow: hidden;
    max-height: 100%;
    z-index: 1;
}
.competences_recap_popup .comp_area {
    margin-left: 30px;
}
.detail_histogram {
    width: 80%;
}
.details_grades_area {
    width: 20%;
    padding: 20px 5px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: right;
    font-size: 0.75em;
}
.details_evals_area {
    height: 70px;
    margin-left: calc(20% + 10px);
    display: flex;
    justify-content: space-around;
}
.details_evals_area P {
    width: 110px;
    word-break: break-word;
    text-align: center;
    font-size: 0.75em;
}

.competences_recap_popup .grades_area {
    --grade-area: 175px;
    height: 100%;
    width: var(--grade-area);
    display: flex;
    position: relative;
}

.competences_recap_popup .grade_box {
    height: 100%;
    width: inherit;
    border-left: 1px #333 solid;
    display: flex;
    text-align: center;
    align-items: center;
}

.competences_recap_popup H2 .grade_box {
    font-size: 10px;
    font-weight: normal;
}

.competences_recap_popup .grade_box P {
    padding: 0;
}

.competences_recap_popup .grade_box {
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.3);
}

.competences_recap_popup .grades_area .why {
    display: none;
    position: absolute;
    overflow: visible;
    padding: 5px;
    background: #FFE;
    border: 1px solid #880;
    z-index: 5;
    right: var(--grade-area);
    width: 45vw;
    min-width: 350px;
}

.competences_recap_popup .grades_area:hover .why {
    display: block;
}
.competences_recap_preference {
  font-size: 12px;
  display: flex;
  max-width: 200px;
  min-width: 160px;
  font-weight: normal;
  align-items: center;
  text-align: end;
}

.grades_area .compstats {
    position: absolute;
    top: 0;
    height: 100%;
    border-width: 0 3px;
    border-color: #70E;
    border-style: solid;
    opacity: 0.5;
}
.grades_area .compstats:hover {
    top: -2px;
    border-width: 2px 4px;
    opacity: 1;
}

.competences_recap_popup .grade_separator {
    outline: 2px #333 dashed;
}

.line_area {
    padding: 1px 0;
    border-bottom: 1px #AAA solid;
    cursor: pointer;
}
.line_area:hover {
    background-color: rgb(0, 0, 0, 0.1);
}
.comp_tip_line {
    display: flex;
}
.comp_tip_line P {
    width: 15px;
    min-width: 15px;
}
.comp_tip_line_detail {
    padding: 5px 10px;
}
.comp_tip_line_detail.closed {
    display: none;
}
.explain_result_table TH {
    background: none;
    padding: 1px 5px;
    border: 1px #333 solid;
    border-width: 1px 0 0 1px;
}
.explain_result_table THEAD TH {
    font-weight: bold;
}
.explain_result_table .title {
    text-align: left;
}

.tip_separator {
    border-top: 1px #333 solid;
}

.comp_import_area {
    display: flex;
    color: blue;
}

.comp_import_area A {
    cursor: pointer;
}

/* - Sunburst - */
#DisplaySunburst.hidden {
    display: none;
}

.comp_result_content .line_desc {
    margin: 0;
    text-align: center;
    font-size: 1.1em;
    background-color: #DDD;
}
.comp_line_area {
    background-color: #EEE;
    border-top: 1px #333 solid;
}
.comp_result_grade {
    min-width: 200px;
    max-width: 200px;
    margin: 0 6px 0 2px;
    padding: 5px;
    border: 1px #333 solid;
    text-align: center;
    font-size: 1em;
}

#popup_id.open_semesters_sunburst {
    left: 50vw;
    top: 41px;
    right: 0;
    border: 1px #333 solid;
    padding: 0;
    background-color: white;
    overflow: hidden;
}
#popup_id.open_semesters_sunburst H2 {
    height: 1.2em;
    border-bottom: 1px #333 solid;
    background-color: #DDD;
    text-align: center;
}

/* - Multi semester competences bilan - */
#popup_id.competence_bilan_popup {
    left: 0;
    top: 0;
    right: 21em;
    min-width: 500px;
    border: 1px #333 solid;
    padding: 0;
    background-color: white;
    overflow: hidden;
}
.competence_bilan_popup H2 {
  height: 2em;
  border-bottom: 1px #333 solid;
  background-color: #DDD;
  display: flex;
  align-items: center;
}

.bilan-competence-selector {
    background: #DDD;
    padding: 2px 10px;
    margin: 3px;

    user-select: none;          /* Standard */
    -webkit-user-select: none;  /* Safari */
    -ms-user-select: none;      /* IE 10 and IE 11 */
}
.bilan-competence-selector INPUT{
    display: none;
}
.bilan-competence-selector:hover {
    background: #BBB;
    cursor: pointer;
}
.bilan-competence-selector:has(INPUT:checked) {
    background: #999;
}
#competences_bilan_selector {
    padding: 5px 0;
}
#ue-names-loader {
    display: none;
}
#menutop DIV.tabs #t_table_attr_teachers { width: calc(100% - var(--widthleft2) - var(--widthspace));}

.tableform {
   position: absolute ;
   background: #DDD ;
   border: 2px solid black;
   overflow: hidden ;
   z-index: 30 ; /* Above tips, but under completion list */
}

.tableform DIV.formtable {
   overflow: auto ;
}

.tableform TABLE {
   width: 100% ;
   border-spacing: 0px ;
}
.tableform TABLE TR {
  vertical-align: top ;
}

.tableform TABLE TD {
  border-top: 1px solid black ;
}

.tableform .ctitle {
  width: 25% ;
}

.tableform TR.ro TEXTAREA, .tableform TR.ro INPUT {
   background-color: #DDD ;
}

.tableform TR.default TEXTAREA, .tableform TR.default INPUT {
   color: #BBB ;
}

.tableform TEXTAREA:focus, .tableform INPUT:focus {
  border: 3px solid #00F ;
  padding: 0px ;
}

.tableform TEXTAREA, .tableform INPUT {
  border: 1px solid black ;
  padding: 2px ;
  margin: 1px ;
}

.tableform TD IMG {
   float: right;
   height: 1em;
   width: 1em;
   right: 0px;
 }

.tableform TEXTAREA, .tableform INPUT {
   background: white ;
   width: 99% ;
}
BODY.tomuss .tableform H1 { text-align: center; font-size: 140%; }

DIV.tableform BUTTON.close { float: right ; font-size: 100% }

TABLE#thetable TR.currentformline TD {
    background-color: #000 ;
    color: #FFF ;
 }


DIV.tabs #t_column_type { min-width: 10em; font-weight: bold }
.type_chooser_div { border: 3px solid black; max-height: 70% }
.type_chooser_div TABLE TR { vertical-align:top }
.type_chooser_div TABLE TD { white-space: nowrap;}
.type_chooser_div TABLE TH { font-weight: bold }
DIV.type_chooser_div.import_export TABLE { width: 10% }
DIV.type_chooser_div.import_export TABLE TD { padding: 4px }

#menutop DIV.tabs #t_column_worst { width: 1.5em ; }
#t_column_annotate_pdf:before { content: '/ '; color: #000 }
#menutop SELECT#t_table_attr_hiddens { width: 12em ; }
#menutop DIV.tabs #t_column_url_title { width: calc(50% - var(--widthleft) - var(--widthspace)) }


TD { overflow: hidden ; }
    
.s_td {
position: relative ;
padding-top: 0.6em ;
padding-bottom: 0.6em ;
padding-left: 0.2em ;
padding-right: 0.2em ;
min-height: 1em ;
position: relative;
left: 0;
right: 0;
}


.s_center {
left:0 ;
right:0 ;
top: .5em ;
bottom: 0 ;
position: absolute ;
text-align: center ;
white-space: nowrap ;
}
    
.s_mediane {
font-size: 60% ;
vertical-align: middle ;
}

.s_minimum {position: absolute;left:0  ;bottom: 0;font-size:60%;z-index:1;}
.s_maximum {position: absolute;left:0  ;top: 0   ;font-size:60%;z-index:1;}
.s_stddev  {position: absolute;right:0 ;bottom: 0;font-size:60%;z-index:1;}
.s_nr      {position: absolute;right:0 ;top: 0   ;font-size:60%;z-index:1;}


TH DIV.s_td { min-width: 7em ; min-height: 1.7em ; }

TD DIV.s_td:hover { background: #FFA ; }

DIV.stat_enum { font-size: 60% ; }

SPAN.s_histogram {
position: absolute ;
bottom: 0 ;
left: 25% ;
font-size:60%;
}

DIV.s_histogram {
position: absolute ;
left: 50% ;
right: 0 ;
bottom: 0 ;
height: 1em ;
z-index: 0;
}

DIV.s_histogram DIV {
position: absolute ;
bottom: 0;
width: 2px ;
font-size:0px; /* For IE */
}

.s_stat_red { background: #FAA }
.s_stat_green { background: #AFA }



/* Kludge to make the SVG object clickable */
DIV.s_graph { position: relative; }
DIV.s_graph DIV.s_clickable {
position: absolute;
left:0;
top:0;
right:0;
bottom:0;
}


DIV.s_stat_tip TABLE TD { font-size: 70% }

DIV.s_stat_tip TABLE TR { vertical-align: top ; }

.s_stat_tip { margin: 0px ; }

/* =================== ZOOMED TIP ========================== */

DIV.s_zoomed_histogram {
position: relative ;
width: 100% ;
height: 8em ;
width: 40em;
margin: 1em ;
}

.s_enumeration { border-left: 4px solid #888 }

DIV.s_zoomed_histogram DIV {
position: absolute ;
bottom: 0;
width: 2em ;
vertical-align: bottom;
border: 1px solid #888 ;
}

DIV.s_zoomed_histogram DIV SPAN {
position: absolute ;
bottom: 0px ;
text-align: center ;
width: 100% ;
}

DIV.s_zoomed_histogram DIV DIV {
position: absolute ;
font-size: 80% ;
bottom: -1.4em ;
text-align: center;
border: 0px ;
}

DIV.s_zoomed_histogram_note DIV DIV {
left: -1em ;
}

DIV.s_zoomed_histogram_enum DIV DIV {
width: 100%;
}



DIV.import_div { border: 4px solid red ; }

DIV.facebook {
  border: 1px solid #888 ;
  display: block ;
  float: left;
  padding: 1px ;
  border-spacing: 0px ;
  background-color: inherit ;
  height: 12.5em;
  width: 8em ;
  margin: 2px ;
  overflow: hidden;
  position: relative;
  page-break-inside: avoid;
  white-space: pre;
}
DIV.facebook DIV.items {
    position: absolute;
    top: 0em;
    right: 0em ;
    left: 0em ;
    }
DIV.facebook DIV.content {
    bottom: 0px ;
    position: absolute;
    }
DIV.facebook DIV.item { opacity: 0.5; right: 0; height: 1em; border: 0px  }
DIV.facebook DIV.selecteditem { opacity: 0.8; border: 0.1em solid #000 }
DIV.facebook SPAN { float: left }
DIV.facebook SPAN IMG { width: 0.5em; height: 0.5em }
DIV.facebook IMG.pic {
  width: 8em ;
  border: 0 ;
}

DIV.import_export.phone_facebook { left: 5%; right: 5% ; top: 5% ; height: 90%; }

@media print { DIV.facebook { font-size: 75% ; } }


    #popup DIV.import_zip { border: 4px solid red ; overflow:scroll ;
                            left: 10%; right: 10%; bottom: 10% ; top: 10% ;
                          }
    #popup DIV.import_zip H2 { margin-top: 0.5em ; }
    #t_column_import_zip { background: #FAA ; }

#menutop DIV.tabs #t_column_private { width: 50% }

#menutop DIV.tabs #t_column_visibility { margin-right: var(--widthspace) ; }

#menutop DIV.tabs INPUT#t_column_title { font-weight: bold ; width: calc(100% - 7em) }

#menutop #t_table_attr_default_nr_columns { width: 3em ; }
#menutop #t_table_attr_hide_empty { width: 49% }

DIV.import_export TEXTAREA.mails {
  width: 100% ;
  height: 10em ;
  font-size: 70%;
}

DIV.mails_div .unknown_mails { background: #FF0 ; }
DIV.mails_div, DIV.personal_mailing_div  { border: 4px solid black ; }

DIV.mails_div .popup_input { display: none }

.personal_mailing_fb IFRAME {
    padding: 0px;
    border: 1px solid black;
    display: block ;
    width:100%;
    height:60px;
    margin: 0px ;
}


#menutop DIV.tabs #t_column_speak { width: 8em }

#autosavelog { color: red ; display: none; }
    

    #popup DIV.fill_column_div { border: 4px solid red ; overflow:scroll ;
                          left: 5%; right: 5%; bottom: 5% ; top: 5%}
    #stop_the_auto_save { font-size:70%; border:1px solid red}
    .fill_menu {
    line-height: 1.7em ;
    width: 18em; /* copy/paste */
    }
    .fill_column_right { height: 0px }
    #fill_table { margin-top: 0.3em ; border-spacing: 0px }
    #fill_table TR { vertical-align: top ; }
    #fill_table TH {
    padding: 1px ;
    border-left: 1px solid black;
    border-top: 1px solid black;
    }
    #fill_table TH DIV.tipped { width: 100%; display: block }
    .room_cb, .room_used { border-bottom: 1px solid #CCC }
    .room_line { height: 1.1em }
    .room_cb { width: 1em }
    .room_used { width: 3em }
    .room_places { width: 30% }
    .room_name { width: 70% }
    .room_comment {
         width: 15em ;
         position: absolute ;
         left: 40% ;
         margin-top: 1.2em ;
         border:1px solid #888 ;
         display: none ;
         background: rgba(255,255,255,0.9) ;
         z-index: 1000 ;
    }
    #popup DIV.fill_column_div INPUT { padding-left: 2px }
    TABLE.simulation { border: 1px solid black }
    TD.old_value { text-align: right }
    TD.old_value, TD.new_value { white-space: pre; width: 50% }
    .room_name:hover .room_comment {
         display: inline-block ;
        }
    TD.fill_result {
        overflow: visible ;
        width: 18em; /* copy/paste */
        line-height: 1em ;
        padding-left: 0.2em ;
    }
    DIV.fill_important, DIV.fill_warning, DIV.fill_error, DIV.fill_replace {
    margin-bottom: 0.5em ;
    border: 1px solid black ;
    }
    .fill_result H3 { margin-bottom: 0.4em ; font-size: 100% }
    .fill_result #stop_the_auto_save { margin-bottom: 1em }
    .fill_error { background: #F88; }
    .fill_important { color: #000 ; background: #8F8 }
    .fill_warning { background: orange ; }
    .fill_replace { background: #F8F ; }
    .room_enumeration INPUT { background: #EFF }
    .room_predefined INPUT { background: #FFE }
    .room_created_empty INPUT { background: #FFF }
    .room_yet_used INPUT { background: #EEF }
    .show_in_comment TR.only_value, .show_in_value TR.only_comment
        { display: none }
    .fill_result BUTTON { width: 100% ; }

  .pulsing {
  /* display: inline-block ; */
  animation-duration: 2s;
  animation-name: keys_pulsing;
  animation-iteration-count: infinite;
  -webkit-animation-duration: 2s;
  -webkit-animation-name: keys_pulsing;
  -webkit-animation-iteration-count: infinite;
    }
 @keyframes keys_pulsing {
    0% { background: #EEE }
    50% { background: #BBB }
    100% { background: #EEE }
  }
 @-webkit-keyframes keys_pulsing {
    0% { background: #EEE }
    50% { background: #BBB }
    100% { background: #EEE }
  }

    
#menutop #t_table_attr_bookmark { width: 49% }

    #menutop DIV.tabs #t_column_columns { width: calc(100% - var(--widthleft) - var(--widthspace)) }
    

#menutop #t_table_attr_rounding { width: 50% }
#menutop #t_table_attr_rounding OPTION { background: #DDD }

#menutop DIV.tabs #t_table_attr_dates { width: calc(100% - var(--widthleft) - var(--widthspace));}
#menutop DIV.tabs #t_table_attr_masters { width: calc(100% - var(--widthleft2) - var(--widthspace));}

#menutop DIV.tabs INPUT#t_column_empty_is { width: calc(100% - var(--widthleft) - var(--widthspace)) ; }


    #menutop DIV.tabs #t_column_normalize { width: 4em ; margin-right: 4px}
    

    #menutop #t_column_minmax { width: 4em ; }
    

.the_calendar { position: relative; font-size: 70%}
.calendar_big:hover { position: absolute; z-index: 20; background: #FFF} /* For Safari */
.the_calendar DIV { position: absolute; box-sizing: border-box; }
.the_calendar DIV[onmousemove] { cursor: pointer }
.calendar_big .slots, .calendar_big .slotS { border: 1px solid #0A0; }
.calendar_big .slotu, .calendar_big .slotU { border: 1px solid #A00; }
.calendar_big .slotx { border: 1px solid #000; }
.the_calendar .slots, .the_calendar .slotS { background: #0F0 }
.the_calendar .slotu, .the_calendar .slotU { background: #F00; color: #FFF }
.the_calendar .slotx { background: #BBB }
.the_calendar .slotS, .the_calendar .slotU { opacity: 0.2; pointer-events: none }
#t_value[type='Calendar'] { background: #000 }
.calendar_div DIV { display: inline-block }
.calendar_div .feedback { width: 5em }
DIV.import_div.calendar_popup { top: 10% ; bottom: 5%}


#menutop DIV.tabs #t_column_visibility_date { width: calc(100% - var(--widthleft) - var(--widthspace)) }

#menutop DIV.tabs #t_column_best { width: 1.5em ; }
#menutop #t_column_upload_max { width: 4em ; }

#menutop SELECT#t_column_grade_session { width: 4.5em ; font-weight: bold}

#menutop SELECT#t_table_attr_nr_lines { width: 6em ; }

    #menutop #t_column_test_filter { width: 4em ; }
    #menutop DIV.tabs #t_column_test_filter { width: 40% ; margin-right: 4px }
    

    #menutop #t_column_mcq { width: 4em ; }
    #menutop DIV.tabs #t_column_mcq { width: 40% ; }
    
#menutop DIV.tabs #t_table_attr_table_title { width: calc(100% - var(--widthleft) - var(--widthspace));}
#menutop DIV.tabs #t_column_url_base { width: calc(50% - var(--widthleft) - var(--widthspace)) }

    #menutop DIV.tabs #t_column_modifiable { width: 60px }
    #menutop DIV.tabs #t_column_locked { width: 120px }
    #menutop DIV.tabs #t_column_cell_writable { width: calc(100% - 60px - 120px);
    transition: margin-left 0.5s, width 0.5s }
    #menutop DIV.tabs #t_column_cell_writable:focus { width: 100% ; margin-left: -120px }
    
#menutop DIV.tabs #t_column_repetition { width: calc(50% - var(--widthleft) - var(--widthspace)) ; }

    #menutop #t_column_enumeration { width: 40% ; }
    #menutop DIV.tabs #t_column_enumeration { width: 65% ; }
    

#menutop #t_column_weight {
  background-image: url('weight.png');
  background-position: right ;
  background-repeat: no-repeat ;
}

#menutop DIV.tabs #t_column_weight { width: calc(50% - var(--widthleft) - var(--widthspace)) ; }



DIV.textual_table TEXTAREA {
   /* white-space: nowrap; */
   overflow-x:scroll;
   }

DIV.textual_table { border: 4px solid green ;}

TD.urlimg { height: 100% }


    #menutop #t_column_test_if { width: 4em ; }
    #menutop DIV.tabs #t_column_test_if { width: 40% ; margin-right: 4px}
    

#menutop DIV.tabs INPUT#t_column_groupcolumn { width: calc(50% - var(--widthleft) - var(--widthspace)) ; }

#menutop SELECT#t_table_attr_nr_columns { width: 6em ; }
#t_column_notation_import { background: #FAA ; }

#menutop DIV.tabs #t_column_red, #menutop DIV.tabs #t_column_green,
#menutop DIV.tabs #t_column_redtext, #menutop DIV.tabs #t_column_greentext,
#menutop DIV.tabs #t_column_position
{
 width: calc(50% - var(--widthleft) - var(--widthspace)) ;
}

#menutop DIV.tabs #t_column_freezed,
#menutop DIV.tabs #t_column_hidden {
  display: inline-block;
}


#menutop DIV.tabs INPUT#t_column_rounding { width: calc(50% - var(--widthleft) - var(--widthspace)) ; }


DIV.import_export TABLE.table_copy_diagram {
 width: 35em; border-spacing:0.4em; margin: auto; background: #CCC }
TABLE.table_copy_diagram TD { text-align: center; vertical-align: middle; }
TABLE.table_copy_diagram TH { background: white ; border: 1px solid #888; }
    
#menutop SELECT#t_column_width { width: 4em }
#tablemodifiableFB {color: #F00; border:0}


DIV.export_div { 
  border: 4px solid green ;
}

/* Also used by 'import' */

DIV.import_export { 
  position: absolute;
  left: 10%;
  right: 10%;
  top: 25%;
  padding: 0.5em ;
  z-index: 10;
  overflow: auto ;
}
DIV.import_export TEXTAREA { 
  width: 100%;
}

DIV.import_export, DIV#import_export P  { 
  background-color: #DDD ;
}

DIV.import_export H2 { margin: 0px ; }

DIV.import_export BUTTON.close { 
  position:absolute;
  right:0px;
  top: 0px;
  height: 30px;
  width: 30px;
  font-size: 100% ;
  border: 1px solid #333 ;
  z-index: 1 ;
  background: #FFF ;
  cursor: pointer ;
}
DIV.import_export BUTTON.close:hover {
  background: #F88 ; 
}

DIV.import_export UL { 
margin-top: 0px ;
margin-bottom: 0px ;
 }

DIV.import_export PRE { 
margin: 0px ;
margin-left: 1em ;
 }

/* DIV.import_export TD { width: 50% } */
DIV.import_export TABLE { width: 100% ; }

DIV.export_div TH { line-height: 1.5em }

TABLE.columnexport {
    table-layout: fixed ;
}

TABLE.columnexport TR.content DIV, TABLE.columnexport TR.content TEXTAREA {
    height: 10em ;
    border: 0px ;
   font-size: 100% ;
   font-family: monospace ;
 overflow-x:  scroll;
 overflow: scroll ;
}

TABLE.columnexport TR.content DIV {
   overflow: auto ;
}

TEXTAREA#columnexport_output {
 background: #DDD ;
}


#t_column_position { width: calc(50% - var(--widthleft)); }

.urlimg { height: 95% ; vertical-align:top; transition: transform 1s }
.DisplayTypeURL .urlimg { height: 1.2em ; }

#menutop DIV.tabs #t_column_replace_in_avg { margin-top: 0px; margin-bottom: 0px; }

#t_column_histogram, #t_column_stats {
  height: 1.5em ;
  display: inline-block;
  white-space: nowrap;
  vertical-align: bottom ;
}

#t_column_histogram {
  width: calc(100% - 5em - 20px);
  background: #FFF;
}

#t_column_graph {
  width: 100px;
  height: 100px;
  cursor: pointer;
  border: 2px solid #FFF;
}
.one_line:hover #t_column_graph {
  border-color: #00F;
}

DIV.import_export.column_zoomed_graph {
  left: 0px;
  top:0px;
  bottom: 0px;
  width: calc(var(--graph-size) + var(--graph-menu-width));
  padding: 0px;
  padding-right: 0.4em;
  overflow: hidden;
  white-space: pre;
  background-color: #FAFAFA;
  --graph-menu-width: 22em;
  --graph-size: calc(min(100vh, 100vw - var(--graph-menu-width)));
}

DIV.import_export.column_zoomed_graph CANVAS {
  width: var(--graph-size);
  height: var(--graph-size);
}

DIV.import_export.column_zoomed_graph > CANVAS, DIV.import_export.column_zoomed_graph > DIV {
  display: inline-block;
  vertical-align: top;
}

DIV.import_export.column_zoomed_graph > DIV {
  line-height: 1.5em;
  height: 100%;
}

DIV.import_export.column_zoomed_graph > DIV > DIV {
  position: absolute;
  overflow: auto;
  bottom: 0px;
  height: calc(100% - 4.5em);
  width: var(--graph-menu-width);
}

DIV.import_export.column_zoomed_graph > DIV > DIV > P {
  margin-top: 0.5em;
}
DIV.import_export.column_zoomed_graph TD, DIV.import_export.column_zoomed_graph TH {
  text-align: right;
}
DIV.import_export.column_zoomed_graph TABLE.colored.selector TR:hover TD {
    background: #FF0
}

#t_column_stats {
  width: 5em;
}


    #menutop #t_column_replace { width: 4em ; }
    #menutop DIV.tabs #t_column_replace { width: 40% ; margin-right: 4px}
    
#menutop DIV.tabs #t_column_course_dates { width: calc(100% - var(--widthleft)  - var(--widthspace)) }

#menutop DIV.tabs #t_column_url_import
{
 width: calc(100% - var(--widthleft) - var(--widthspace));
}

#menutop DIV.tabs #t_column_abj_is { width: calc(50% - var(--widthleft)); }

#menutop SELECT#t_column_grade_type { width: 3.7em ; font-weight: bold }

#menutop DIV.tabs #t_column_abi_is { width: auto }


.abj_table A:hover { background: #BFB ; }
TABLE.abj_table TR TD { cursor: pointer }
TABLE.abj_table_tt TR TD { vertical-align: top ; }
TABLE.abj_table_da TR TD { vertical-align: top ; }


#menutop DIV.tabs #t_column_clamp { width: auto }

    #menutop #t_column_author { font-size: 80% ; }
    #menutop DIV.tabs #t_column_author { font-size: 100% ; }
    

TR#dates TD {
  text-align: center ;
  vertical-align: middle ;
}
TR#ampm TD { text-align: center ; }

TABLE.colored TD.weekend { background-color: #FBB; }

TABLE.display_abjs TH { text-align: center ; }
TABLE.display_abjs TD, TABLE.display_da TD { background-color: #EEE ; }
TABLE.display_abjs TH, TABLE.display_abjs TD, TABLE.display_da TD, TABLE.display_da TH { padding: 1px }

IFRAME#datasend {
  height: 15em ;
  width: 100% ;
}

DIV#student_display IMG {
  width: 10% ;
  float: right ;
}

INPUT#sendabj { width: 15em ; }
INPUT#sendmessage { width: auto ; text-align: left }

INPUT#sendabj, INPUT#sendmessage { 
  background: #EEE; 
}

SPAN.arrow { 
  color: blue ;
  font-size: 200% ;
}

BODY#BODY P, BODY#BODY H1 { margin: 0px ; }

BODY.abj_body { background: #EEE }

P.wait { background-color: #8F8 ; }

DIV.abj_comments { border: 3px solid black; line-height: 1.5em; top:6em }
.abj_comments A { border: 1px solid black ; }

#abjcomment, #dateda { background: white; }

