﻿/*************************************************************
    Blackboard CSS Reset

    <copyright file="BaseReset.css" company="Transact Campus Inc.">
        Copyright (c) blackboard.com.  All rights reserved.
    </copyright>

**************************************************************/

/* BaseReset Start */

/* Bi-directionality settings taken from CSS 2.1 default stylesheet. */

bdo[dir="ltr"]
{   
	direction: ltr;
    unicode-bidi: bidi-override;
}

bdo[dir="rtl"]
{
    direction: rtl;
    unicode-bidi: bidi-override;
}

*[dir="ltr"]
{
    direction: ltr; 
    unicode-bidi: embed;
}

*[dir="rtl"]
{
    direction: rtl; 
    unicode-bidi: embed;
}

/* Each property in this definition block applies to all elements.
The selector is the list of elements.
Form control elements must not be included here or some functionality will break. */
address, blockquote, body, dd, div, dl, dt, form, h1, h2, h3, h4, h5, h6, hr, html, noscript, ol, p, pre, ul, a, abbr, acronym, area, b, base, bdo, big, br, cite, code, del, dfn, em, i, img, ins, kbd, label, legend, link, map, meta, object, param, q, samp, script, small, span, strong, style, sub, sup, title, tt, var, li, head, table, caption, td, th, col, colgroup, tfoot, thead, tr, tbody
{
    background-attachment: scroll;
    background-color: transparent;
    background-image: none;
    background-position: 0% 0%;
    background-repeat: repeat;
    border-style: none;
    border-width: medium;
    clip: auto; /* Only applies if the position property is later set to absolute. */
    cursor: auto; /* Accept the browser default. Setting it manually for each element would require too many exceptions later. */
    display: inline; /* The initial value for display is inline. Block elements will be redefined later. */
    float: none;
    outline-color: invert;
    outline-style: none;
    outline-width: medium;
    page-break-after: auto;
    page-break-before: auto;
    
    /* The intial value for position is static.
    The bottom/top/left/right properties do not apply unless the value of position is later redefined. */
    position: static; 
    bottom: auto;
    top: auto;
    left: auto;
    right: auto;
    
    text-decoration: none; /* Text decoration is not inherited but it will inherit from the color property. */

    vertical-align: baseline;
    visibility: visible;
    
    /* Bi-directionality is defined above with a high specificity. 
    The specificity here is lower but sets the default for all elements. */
    unicode-bidi: normal;
    direction: ltr;
    
    /* The following properties do not apply to all elements.
    It is left to the user agent to determine where they do and do not apply. 
    Margin and padding usuallly have a unit of measure, however, according to the CSS 2.1 specification, 
    the initial value is 0 with no specified unit. */
    margin: 0;
    max-height: none;
    min-height: none;
    max-width: none;
    min-width: none;
    padding: 0;
    
    /* The following properties apply to some elements and not others. 
    Resetting them here is the most complete but requires the user agent to ignore them when not applicable. */
    height: auto;
    width: auto;
    visibility: visible;
}

/* Inherited properties can only be set using the html or body element selector. 
Any other selector could potentially break the inheritance. */
body
{
    color: rgb(0, 0, 0); /* The user agent decides the default color. Override it to black. Some user agents ignore this for some elements (ie the button aspect of the file upload form control).*/
    font-family: Arial, Helvetica, sans-serif;
    font-size: 100.01%; /* Set the font size to 100.01% to account for rounding errors in some browsers. */
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    letter-spacing: normal;
    line-height: normal;
    
    /* The list-style properties apply when display is set to list-item. */
    list-style-image: none;
    list-style-position: outside;
    list-style-type: disc;
    
    page-break-inside: auto;
    /* quotes: none; */ /* Quotation marks can be added for individual elements later. 
    There is a known issue in IE 8 beta 2 where the quotes property causes IE to crash. This will be fixed in the next release. */
    text-indent: 0;
    text-transform: none;
    white-space: normal; 
    
    /* The following properties do not apply to most elements, however defining them here maintains inheritance. */
    widows: 2;
    orphans: 2;
    border-collapse: separate;
    border-spacing: 0;
    caption-side: top;
    empty-cells: show;   
}

/* Hide elements that should not be displayed. */
head, meta, title, link, style, script
{
    display: none;
}

/* Define block level elements as display: block.
See http: //htmlhelp.com/reference/html40/block.html for the list of block elements. */

address, blockquote, body, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, hr, html, noscript, ol, p, pre, ul
{
    display: block;
    
    /* Define other properties that only apply to a block element. */
    clear: none;
}

/* Define the styles for a table related element. */

table
{
    display: table;
    table-layout: auto;
}

tr
{
    display: table-row;
}

thead
{
    display: table-header-group;
}

tbody
{
    display: table-row-group;
}

tfoot
{
    display: table-footer-group;
}
col
{
    display: table-column;
}

colgroup
{
    display: table-column-group;
}
   
td, th
{
    display: table-cell;
}

caption
{
    display: table-caption;
}

/* h1 - h6 property values match the Firefox and Safari default.
The default user agent font size is 16 px. */

h1
{
    font-size: 2em; /* 32 px */
    font-weight: bold;
    margin: .67em 0;
}

h2
{
    font-size: 1.5em; /* 24 px */
    font-weight: bold;
    margin: .83em 0;
}

h3
{
    font-size: 1.17em; /* 18.72 px, used value is likely 19 px. */
    font-weight: bold;
    margin: 1em 0;
}

h4
{
    font-size: 1em; /* 16 px - Not set in user agent default CSS. */
    font-weight: bold;
    margin: 1.33em 0;
}

h5
{
    font-size: 0.83em; /* 13.28 px, used value is likely 13 px. */
    font-weight: bold;
    margin: 1.67em 0;
}

h6
{
    font-size: 0.67em;
    font-weight: bold;
    margin: 2.33em 0;
}

/* Make the hr element render. */
hr
{
    height: 1px;
    background-color: rgb(200, 200, 200);
}

/* The li (list item) element must render in a list format. */
li
{
    display: list-item;
}

/* Define how hyperlinks are rendered. */
a /* Default hyperlink state. */
{	
	text-decoration: underline;
}

a: active /* Mouse button is depressed over hyperlink. */
{
	outline-width: 1px;
	outline-color: black;
	outline-style: dashed;
}

a: visited /* Link has been previously visited. */
{
	color: rgb(128, 0, 128);
}

a: hover /* Mouse is over the link, button is not depressed. */
{
    color: rgb(0, 0, 255);
}

/* Form control elements must be more selectively reset. */
input, select, textarea, option, fieldset, button
{
    clip: auto; /* Only applies if the position property is later set to absolute. */
    cursor: auto; /* Accept the browser default. Setting it manually for each element would require too many exceptions later. */
    display: inline; /* The initial value for display is inline. Block elements will be redefined later. */
    float: none;
    page-break-after: auto;
    page-break-before: auto;
    
    /* The intial value for position is static.
    The bottom/top/left/right properties do not apply unless the value of position is later redefined. */
    position: static; 
    bottom: auto;
    top: auto;
    left: auto;
    right: auto;
     
    text-decoration: none; /* Text decoration is not inherited but it will inherit from the color property. */

    vertical-align: baseline;
    visibility: visible;
    
    /* Bi-directionality is defined above with a high specificity. 
    The specificity here is lower but sets the default for all elements. */
    unicode-bidi: normal;
    direction: ltr;
    
    /* The following properties do not apply to all elements.
    It is left to the user agent to determine where they do and do not apply. 
    Margin and padding usuallly have a unit of measure, however, according to the CSS 2.1 specification, 
    the initial value is 0 with no specified unit. */
    margin: 0;
    max-height: none;
    min-height: none;
    max-width: none;
    min-width: none;
    padding: 0;
}

/* Hide hidden form control. */
input[type="hidden"]
{
    display: none;
}

/* Firefox requires that option have a block display.
Without it, options are rendered horizontally instead of vertically.
Safari requires that Fieldset have a block display for proper positioning. */
option, fieldset
{
    display: block;
}

/* BaseResetStart */