@charset "UTF-8";

/*
Quick tips
==========

Add a background header, append to this file:

    #header {background: url('../images/logo.png') no-repeat; height:100px}

Change theme color, append to this file

    a { color: green }
    body { background-color: yellow }

Change page width, append to this file

    #wrapper {width: 900px;}

What's in this file?
====================

This file is contains the following sections:

- The new revision contains:
- Html5, good practice and normalization support.
- Diferent hacks.
- The normalization and some tags come from
  diferent sites so i keep the credits and comments.
  but the base of support html5 come from:
  http://html5boilerplate.com/

- ez.css (http://www.ez-css.org/layouts)
- reset common tags
- choose default fonts
- choose link style
- add bottom line to table rows
- labels bold and occasionally centered
- make all input fields the same size
- add proper separation between h1-h6 and text
- always indent the first line and add space below paragraphs
- bullets and numbers style and indent
- form and table padding
- code blocks
- left and right padding to quoted text
- page layout alignment, width and padding (change this for spaces)
- column widths (change this to use left_sidebar and right_sidebar)
- backrgound images and colors (change this for colors)
- web2py specific (.flash, .error)

Notice
======
- even if you use a different layout/css you may need classes .flash and .error
- this is all color neutral except for links #275b90

License
=======

This file is released under BSD and MIT

Version
=======

Based on Revision: 20101102 by Martin Mulone, modified on 20110822

Credits
=======

credit is left where credit is due.
additionally, much inspiration was taken from these projects:
yui.yahooapis.com/2.8.1/build/base/base.css
camendesign.com/design/
praegnanz.de/weblog/htmlcssjs-kickstart
*/

/*
html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
v1.4 2009-07-27 | Authors: Eric Meyer & Richard Clark
html5doctor.com/html-5-reset-stylesheet/
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display:block;
}

nav ul { list-style:none; }

blockquote, q { quotes:none; }

blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none; }

a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }
a:hover { text-decoration: underline }

ins { background-color:#ff9; color:#000; text-decoration:none; }

mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom:1px dotted #000; cursor:help; }

/* tables still need cellspacing="0" in the markup */
table { border-collapse:collapse; border-spacing:0; }

hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }

input, select { vertical-align:middle; }
/* END RESET CSS */


/*
fonts.css from the YUI Library: developer.yahoo.com/yui/
    Please refer to developer.yahoo.com/yui/fonts/ for font sizing percentages

There are three custom edits:
    * remove arial, helvetica from explicit font stack
    * make the line-height relative and unit-less
    * remove the pre, code styles
*/
body { font:13px/1.231 sans-serif; *font-size:small; } /* hack retained to preserve specificity */

/*table { font-size:inherit; font:100%; }*/

select, input, textarea, button { font:99% sans-serif; }
textarea { width: 600px; }

/* normalize monospace sizing
    * en.wikipedia.org/wiki/MediaWiki_talk:Common.css/Archive_11#Teletype_style_fix_for_Chrome
    */
pre, code, kbd, samp { font-family: monospace, sans-serif; }

/*
    * minimal base styles
    */

/* #444 looks better than black: twitter.com/H_FJ/statuses/11800719859 */
body, select, input, textarea { color:#444; }

/* Headers (h1,h2,etc) have no default font-size or margin,
    you'll want to define those yourself. */

/* www.aestheticallyloyal.com/public/optimize-legibility/ */
h1,h2,h3,h4,h5,h6 { font-weight: bold; }

/* always force a scrollbar in non-IE */
html { overflow-y: scroll; }

/* Accessible focus treatment: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: none; }

a { color: #275b90 }

ul, ol { margin-left: 1.8em; }
ol { list-style-type: decimal; }

/* Remove margins for navigation lists */
nav ul, nav li { margin: 0; }

small { font-size:85%; }
strong, th { font-weight: bold; }

td, td img { vertical-align: top;}
td { text-align: left }

sub { vertical-align: sub; font-size: smaller; }
sup { vertical-align: super; font-size: smaller; }

pre {
    padding: 15px;
}

pre, code {
    /* www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap/ */
    white-space: pre; /* CSS2 */
    white-space: pre-wrap; /* CSS 2.1 */
    white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
    word-wrap: break-word; /* IE */
}

textarea { overflow: auto; } /* thnx ivannikolic! www.sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars/ */

.ie6 legend, .ie7 legend { margin-left: -7px; } /* thnx ivannikolic! */

/* align checkboxes, radios, text inputs with their label
    by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css  */
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }

/* hand cursor on clickable input elements */
label, input[type=button], input[type=submit], button { cursor: pointer; }

/* webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea { margin: 0; }

/* colors for form validity */
input:valid, textarea:valid   {  }
input:invalid, textarea:invalid {
    border-radius: 1px;
    -moz-box-shadow: 0px 0px 5px red;
    -webkit-box-shadow: 0px 0px 5px red;
    box-shadow: 0px 0px 5px red;
}
.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid { background-color: #f0dddd; }


/* These selection declarations have to be separate.
    No text-shadow: twitter.com/miketaylr/status/12228805301
    Also: hot pink. */
::-moz-selection{ background: #555; color:#fff; text-shadow: none; }
::selection { background:#555; color:#fff; text-shadow: none; }

/*  j.mp/webkit-tap-highlight-color */
a:link { -webkit-tap-highlight-color: #555; }
a { text-decoration: none}
a:hover {text-decoration: underline}

/* make buttons play nice in IE:
    www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
button {  width: auto; overflow: visible; }

/* bicubic resizing for non-native sized IMG:
    code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
.ie7 img { -ms-interpolation-mode: bicubic; }

/*
    * Non-semantic helper classes
    */

/* for image replacement */
.ir { display:block; text-indent:-999em; overflow:hidden; background-repeat: no-repeat; }

/* Hide for both screenreaders and browsers
    css-discuss.incutio.com/wiki/Screenreader_Visibility */
.hidden { display:none; }

/* Hide only visually, but have it available for screenreaders
    www.webaim.org/techniques/css/invisiblecontent/
    Solution from: j.mp/visuallyhidden - Thanks Jonathan Neal! */
.visuallyhidden { position:absolute !important;
    clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px); }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* >> The Magnificent CLEARFIX: Updated to prevent margin-collapsing on child elements << j.mp/bestclearfix */
.clearfix:before, .clearfix:after {
    content: "\0020"; display: block; height: 0; visibility: hidden;
}

.clearfix:after { clear: both; }
/* Fix clearfix: blueprintcss.lighthouseapp.com/projects/15318/tickets/5-extra-margin-padding-bottom-of-page */
.clearfix { zoom: 1; }


/*********** layout info (ez.css) ***********/
/* 2009 -2010 (c) | ez-css.org
    * ez-plug-min.css :: version 1.1 :: 01182010
    */
.ez-wr:after,.ez-box:after{content:".";display:block;height:0;clear:both;visibility:hidden}.ez-wr,.ez-box,.ez-last{display:inline-block;min-height:0}/* \*/ * html .ez-wr,* html .ez-box,* html .ez-last{height:1%}.ez-wr,.ez-box,.ez-last{display:block}/* */.ez-oh{overflow:hidden}* html .ez-oh{overflow:visible}.ez-oa{overflow:auto}.ez-dt{display:table}.ez-it{display:inline-table}.ez-tc{display:table-cell}.ez-ib{display:inline-block}.ez-fl{float:left}* html .ez-fl{margin-right:-3px}.ez-fr{float:right}* html .ez-fr{margin-left:-3px}.ez-25{width:25%}.ez-33{width:33.33%}.ez-50{width:50%}.ez-66{width:66.66%}.ez-75{width:75%}.ez-negmr{margin-right:-1px}* html .ez-negmr{margin-right:-4px}.ez-negmx{margin-right:-1px}.ez-negml{margin-left:-1px}* html .ez-negml{margin-left:-4px}


/*********** add bottom line to table rows ***********/
th, td { padding: 0.1em 0.5em 0.1em 0.5em;}

/*********** labels bold and occasionally centered ***********/
label {
    white-space: nowrap;
}
label, b, th {
    font-weight: bold;
}
thead th {
    text-align: left;
    border-bottom: 1px solid #444;
    background-color: #e1e1e1;
}
.right {
    text-align:right;
}

/*********** forms and table padding ***********/
form, table {
    padding: 5px 10px 5px 10px;
}

/*********** code blocks ***********/
code {
    padding: 3px 5px;
    font-family: Andale Mono, monospace;
    font-size: 0.9em;
}

/*********** left and right padding to quoted text ***********/
blockquote {
    background: #cccccc;
    border-left: 30px transparent;
    border-right: 30px transparent;
    /*padding: 5px;*/
}

input[type=text], input[type=password], textarea, select {
    margin: 2px 15px 2px 5px;
    width: 280px;
    background: #fff;
    color: #555;
    border: 1px solid #dedede;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    font-size: 12px;
}

input[type=text], input[type=password] {
    height: 16px;
}

select[multiple=multiple] {
    height: 90px;
}

input[type=submit], input[type=button], button {
    margin: 0px;
    /*width: 85px;*/
    height: 22px;
    background: #eaeaea;
    color: #555;
    border: 1px solid #dedede;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

fieldset { border: 1px solid #dedede; padding: 6px; }
legend { font-weight: bold; }

input:focus, textarea:focus { background: #fafafa; }

p { text-indent:0px;}

p, blockquote {
    margin-bottom: 10px;
}

h1,h2,h3,h4,h5,h6 { padding-top: 0.5em; padding-bottom: 0.33em; }
h1 {font-size: 2.0em;}
h2 {font-size: 1.8em;}
h3 {font-size: 1.4em;}
h4 {font-size: 1.2em;}
h5 {font-size: 1.0em;}
h6 {font-size: 0.8em;}

/*********** page layout alignment, width and padding ***********/
/*body {background-color: #000;}*/
#header h1 {  padding: 1.33em 0.66em 0.66em 0.66em; }
#container, #header, #page, #content, #statusbar,
#footer, #wrapper { display:block; line-height: 170%}
#wrapper {width: 930px;}
#container {
    margin: 0 auto;
    padding: 0;
}
#page { padding: 20px 0 30px 0; }
#wrapper {margin: 0 auto;}
#wrapper {background-color: #fff; padding: 0}
#statusbar { margin: 0 }
#footer {
    padding: 5px;
}
#statusbar, #footer {
    background: #eaeaea;
    border-top: 1px #aaa solid;
}
#logo {
    width: 68px;
    height: 62px;
    background: url(../images/logo.png);
}
#appname {
    color: #cccccc;
}

#right_sidebar { width: 160px; float:right; display: none; }
#left_sidebar { width: 160px; float:left; display: none; }
#content { float: left; /*width: 740px;*//*width: 63%;*/ /*width: 640px; float:left;*/ } /* uncomment this if you are going to use sidebars */

.auth_navbar {
    top: 0px;
    float: right;
    width: 100%;
    background-color: white;
    opacity: 0.80;
    text-align: right;
    color: black;
    line-height: 1.4em;
}

/*********** web2py specific ***********/
div.flash {
    font-weight: bold;
    display: none;
    position: fixed;
    padding: 10px;
    top: 40px;
    right: 10px;
    min-width: 280px;
    opacity: 0.85;
    margin: 0px 0px 10px 10px;
    color: #fff;
    vertical-align: middle;
    cursor: pointer;
    background: #000;
    border: 2px solid #fff;
	border-radius: 5px;
    z-index: 2;
}
div.error {
	padding: 3px 8px;
    border: 1px solid #FFB865;
    color: #321B00;
    background-color: #FEE7CC;
}

/***************************
    * CSS 3 Buttons
    * http://github.com/michenriksen/css3buttons
    * created by Michael Henriksen
    * License: Unlicense
    *
    * *******************/

a.button, button { display: inline-block; padding: 5px; font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 12px; color: #3C3C3D; text-shadow: 1px 1px 0 #FFFFFF; background: #ECECEC url('../images/css3buttons_backgrounds.png') 0 0 no-repeat; white-space: nowrap; overflow: visible; cursor: pointer; text-decoration: none; border: 1px solid #CACACA; -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; outline: none; position: relative; zoom: 1; line-height: 1.11; *display: inline; *vertical-align: middle; }
button { margin-left: 0; margin-right: 0; *padding: 5px 5px 3px 5px; }
a.button { -moz-user-select: none; -webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-user-select: none; -webkit-touch-callout: none;}
button::-moz-focus-inner { border: 0; padding:0px; }
a.button.primary, button.primary { font-weight: bold }
/*button:focus,a.button:hover,
button:hover { border-color: #388AD4; text-decoration: none; text-shadow: -1px -1px 0 rgba(0,0,0,0.3); background-position: 0 -40px;  }*/
/*a.button:active, button:active,
a.button.active, button.active { background-position: 0 -81px; border-color: #347BBA; background-color: #0F5EA2; color: #FFFFFF; text-shadow: none; }
a.button:active, button:active { top: 1px }*/
a.button.negative:hover, button.negative:hover { color: #FFFFFF; background-position: 0 -121px; background-color: #D84743; border-color: #911D1B; }
a.button.negative:active, button.negative:active,
a.button.negative.active, button.negative.active { background-position: 0 -161px; background-color: #A5211E; border-color: #911D1B; }
a.button.positive:hover, button.positive:hover { background-position: 0 -280px; background-color: #96ED89; border-color: #45BF55; }
a.button.positive:active, button.positive:active,
a.button.positive.active, button.positive.active { background-position: 0 -320px; background-color: #45BF55; }
a.button.pill, button.pill { -webkit-border-radius: 19px; -moz-border-radius: 19px; border-radius: 19px; padding: 5px 10px 4px 10px; *padding: 4px 10px; }
a.button.left, button.left { -webkit-border-bottom-right-radius: 0px; -webkit-border-top-right-radius: 0px; -moz-border-radius-bottomright: 0px; -moz-border-radius-topright: 0px; border-bottom-right-radius: 0px; border-top-right-radius: 0px; margin-right: 0px; border-right: none; }
a.button.middle, button.middle { margin-right: 0px; margin-left: 0px; -webkit-border-radius: 0px; -moz-border-radius: 0px; border-radius: 0px; border-right: none; }
a.button.right, button.right { -webkit-border-bottom-left-radius: 0px; -webkit-border-top-left-radius: 0px; -moz-border-radius-bottomleft: 0px; -moz-border-radius-topleft: 0px; border-top-left-radius: 0px; border-bottom-left-radius: 0px; margin-left: 0px; }
a.button.left:active, button.left:active,
a.button.middle:active, button.middle:active,
a.button.right:active, button.right:active { top: 0px }
a.button.big, button.big { font-size: 16px; padding-left: 14px; padding-right: 17px; }
button.big { *padding: 4px 17px 2px 17px; }
a.button span.icon, button span.icon { display: inline-block; width: 14px; height: 12px; margin: auto 7px auto auto; position: relative; top: 0; *top: 0px; background-image: url('../images/css3buttons_icons.png'); background-repeat: no-repeat; }
a.big.button span.icon, button.big span.icon { top: 0px }
a.button span.icon.book, button span.icon.book { background-position: 0 0 }
/*a.button:hover span.icon.book, button:hover span.icon.book { background-position: 0 -15px }*/
a.button span.icon.calendar, button span.icon.calendar { background-position: 0 -30px }
/*a.button:hover span.icon.calendar, button:hover span.icon.calendar { background-position: 0 -45px }*/
a.button span.icon.chat, button span.icon.chat { background-position: 0 -60px }
/*a.button:hover span.icon.chat, button:hover span.icon.chat { background-position: 0 -75px }*/
a.button span.icon.check, button span.icon.check { background-position: 0 -90px }
/*a.button:hover span.icon.check, button:hover span.icon.check { background-position: 0 -103px }*/
a.button span.icon.clock, button span.icon.clock { background-position: 0 -116px }
/*a.button:hover span.icon.clock, button:hover span.icon.clock { background-position: 0 -131px }*/
a.button span.icon.cog, button span.icon.cog { background-position: 0 -146px }
/*a.button:hover span.icon.cog, button:hover span.icon.cog { background-position: 0 -161px }*/
a.button span.icon.comment, button span.icon.comment { background-position: 0 -176px }
/*a.button:hover span.icon.comment, button:hover span.icon.comment { background-position: 0 -190px }*/
a.button span.icon.cross, button span.icon.cross { background-position: 0 -204px }
/*a.button:hover span.icon.cross, button:hover span.icon.cross { background-position: 0 -219px }*/
a.button span.icon.downarrow, button span.icon.downarrow { background-position: 0 -234px }
/*a.button:hover span.icon.downarrow, button:hover span.icon.downarrow { background-position: 0 -249px }*/
a.button span.icon.fork, button span.icon.fork { background-position: 0 -264px }
/*a.button:hover span.icon.fork, button:hover span.icon.fork { background-position: 0 -279px }*/
a.button span.icon.heart, button span.icon.heart { background-position: 0 -294px }
/*a.button:hover span.icon.heart, button:hover span.icon.heart { background-position: 0 -308px }*/
a.button span.icon.home, button span.icon.home { background-position: 0 -322px }
/*a.button:hover span.icon.home, button:hover span.icon.home { background-position: 0 -337px }*/
a.button span.icon.key, button span.icon.key { background-position: 0 -352px }
/*a.button:hover span.icon.key, button:hover span.icon.key { background-position: 0 -367px }*/
a.button span.icon.leftarrow, button span.icon.leftarrow { background-position: 0 -382px }
/*a.button:hover span.icon.leftarrow, button:hover span.icon.leftarrow { background-position: 0 -397px }*/
a.button span.icon.lock, button span.icon.lock { background-position: 0 -412px }
/*a.button:hover span.icon.lock, button:hover span.icon.lock { background-position: 0 -427px }*/
a.button span.icon.loop, button span.icon.loop { background-position: 0 -442px }
/*a.button:hover span.icon.loop, button:hover span.icon.loop { background-position: 0 -457px }*/
a.button span.icon.magnifier, button span.icon.magnifier { background-position: 0 -472px }
/*a.button:hover span.icon.magnifier, button:hover span.icon.magnifier { background-position: 0 -487px }*/
a.button span.icon.mail, button span.icon.mail { background-position: 0 -502px }
/*a.button:hover span.icon.mail, button:hover span.icon.mail { background-position: 0 -514px }*/
a.button span.icon.move, button span.icon.move { background-position: 0 -526px }
/*a.button:hover span.icon.move, button:hover span.icon.move { background-position: 0 -541px }*/
a.button span.icon.pen, button span.icon.pen { background-position: 0 -556px }
/*a.button:hover span.icon.pen, button:hover span.icon.pen { background-position: 0 -571px }*/
a.button span.icon.pin, button span.icon.pin { background-position: 0 -586px }
/*a.button:hover span.icon.pin, button:hover span.icon.pin { background-position: 0 -601px }*/
a.button span.icon.plus, button span.icon.plus { background-position: 0 -616px }
/*a.button:hover span.icon.plus, button:hover span.icon.plus { background-position: 0 -631px }*/*/
a.button span.icon.reload, button span.icon.reload { background-position: 0 -646px }
/*a.button:hover span.icon.reload, button:hover span.icon.reload { background-position: 0 -660px }*/
a.button span.icon.rightarrow, button span.icon.rightarrow { background-position: 0 -674px }
/*a.button:hover span.icon.rightarrow, button:hover span.icon.rightarrow { background-position: 0 -689px }*/
a.button span.icon.rss, button span.icon.rss { background-position: 0 -704px }
/*a.button:hover span.icon.rss, button:hover span.icon.rss { background-position: 0 -719px }*/
a.button span.icon.tag, button span.icon.tag { background-position: 0 -734px }
/*a.button:hover span.icon.tag, button:hover span.icon.tag { background-position: 0 -749px }*/
a.button span.icon.trash, button span.icon.trash { background-position: 0 -764px }
/*a.button:hover span.icon.trash, button:hover span.icon.trash { background-position: 0 -779px }*/
a.button span.icon.unlock, button span.icon.unlock { background-position: 0 -794px }
/*a.button:hover span.icon.unlock, button:hover span.icon.unlock { background-position: 0 -809px }*/
a.button span.icon.uparrow, button span.icon.uparrow { background-position: 0 -824px }
/*a.button:hover span.icon.uparrow, button:hover span.icon.uparrow { background-position: 0 -839px }*/
a.button span.icon.user, button span.icon.user { background-position: 0 -854px }
/*a.button:hover span.icon.user, button:hover span.icon.user { background-position: 0 -869px }*/

a.buttontext span.icon{ margin:auto;}

/*****************************************************
*  HERE YOU CAN START TO WRITE YOUR OWN CSS
*/

#statusbar, #page {
	overflow: hidden;
	width: 100%;
}
#footer {
	text-align: center;
}
.email span + span {
	display: none;
}

/*
 * Media queries for responsive design
 */
@media all and (orientation:portrait) {
    /* Style adjustments for portrait mode goes here */

}

@media all and (orientation:landscape) {
    /* Style adjustments for landscape mode goes here */

}

/* Grade-A Mobile Browsers (Opera Mobile, iPhone Safari, Android Chrome)
    Consider this: www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/ */
@media screen and (max-device-width: 480px) {
}


/*
    * print styles
    * inlined to avoid required HTTP connection www.phpied.com/delay-loading-your-print-css/
    */
@media print {
    * { background: transparent !important; color: #444 !important; text-shadow: none !important; }
    a, a:visited { color: #444 !important; text-decoration: underline; }
    a:after { content: " (" attr(href) ")"; }
    abbr:after { content: " (" attr(title) ")"; }
    .ir a:after { content: ""; }  /* Don't show links for images */
    pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
    thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
    tr, img { page-break-inside: avoid; }
    @page { margin: 0.5cm; }
    p, h2, h3 { orphans: 3; widows: 3; }
    h2, h3{ page-break-after: avoid; }
}

/*
*Grid
*
* The default style for SQLFORM.grid even using jquery-ui or another ui framework
* will look better with the declarations below
* if needed to remove base.css consider keeping these following lines in some css file.
*/
.web2py_grid a { text-decoration:none;}
.web2py_grid table { width: 100% }
.web2py_grid td { white-space:nowrap; }
.web2py_grid th { background-color:#EAEAEA; }
.web2py_grid tbody th,
.web2py_grid tbody td {
    padding: 5px 10px 5px;
    line-height: 13.5px;
    vertical-align: top;
}
.web2py_grid input:focus,
.web2py_grid textarea:focus,
.web2py_grid select:focus {
        border: 1px solid #ffffff;
        -webkit-box-shadow: 0px 0px 6px #007eff;
        -moz-box-shadow: 0px 0px 5px #007eff;
        box-shadow: 0px 0px 5px #007eff;
    }

.web2py_grid thead th {
    padding-top: 9px;
    font-weight: bold;
    border-bottom: 1px solid #DDD;
}
.web2py_grid tr.odd {background-color: #F9F9F9;}
.web2py_grid tr:hover {background-color: #F5F5F5; }

.web2py_breadcrumbs a {
    line-height: 20px; margin-right: 5px; display: inline-block;
    padding: 3px 5px 3px 5px;
    font-family: 'lucida grande', tahoma, verdana, arial, sans-serif;
    color: #3C3C3D;
    text-shadow: 1px 1px 0 #FFFFFF;
    background:#ECECEC url('../images/css3buttons_backgrounds.png') 0 0 no-repeat;
    white-space: nowrap; overflow: visible; cursor: pointer;
    text-decoration: none; border: 1px solid #CACACA;
    -webkit-border-radius: 2px; -moz-border-radius: 2px;
    -webkit-background-clip: padding-box; border-radius: 2px;
    outline: none; position: relative; zoom: 1; *display: inline;
}

.web2py_console {
    background-color: #f2f2f2; padding: 5px; border-bottom: 1px solid #DDD;
    min-height: 60px;
    text-align:center;
}


.web2py_search_actions{
    width:40%;
    float:left;
    text-align:left;

}
.web2py_grid .row_buttons{
    min-height:25px;
}
.web2py_grid>.row_buttons a{
    margin:10px;
}

.web2py_grid .row_buttons a,
.web2py_paginator ul li a,
.web2py_search_actions a,
.web2py_console input[type=submit],
.web2py_console input[type=button],
.web2py_console button,
a.button {
    line-height: 13.5px; margin-right: 5px; display: inline-block;
    padding: 3px 5px 3px 5px;
    font-family: 'lucida grande', tahoma, verdana, arial, sans-serif;
    font-size: 12px;
    color: #3C3C3D !important;
    font-weight:normal !important;
    text-shadow: 1px 1px 0 #FFFFFF;
    background:#ECECEC url('../images/css3buttons_backgrounds.png') 0 0 no-repeat;
    white-space: nowrap; overflow: visible;
    cursor: pointer; text-decoration: none;
    border: 1px solid #CACACA;
    -webkit-border-radius: 2px; -moz-border-radius: 2px;
    -webkit-background-clip: padding-box; border-radius: 2px;
    outline: none; position: relative; zoom: 1; *display: inline;
}
.web2py_grid .row_buttons a:hover,
.web2py_search_actions a:hover,
.web2py_console input[type=submit]:hover,
.web2py_console input[type=button]:hover,
.web2py_paginator ul li a:hover,
a.button:hover {
    color: #FFFFFF;
    /*border-color: #e5e4e4; text-decoration: none;
    text-shadow: -1px -1px 0 rgba(0,0,0,0.3);
    background-position: 0 -40px;
    background-color: #e5e4e4;
    font-weight:normal !important;*/

    border: 1px solid #fafafa;
    -webkit-box-shadow: 0px 0px 10px #007eff;
    -moz-box-shadow: 0px 0px 9px #007eff;
    box-shadow: 0px 0px 9px #007eff;
}
.web2py_counter {
    margin-top: 5px;
    margin-right:5px;
    width:35%;
    float:right;
    text-align:right;
}

.web2py_table, .web2py_form {
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
    border-top: 1px solid #CCC;
}

.web2py_paginator {
    padding: 5px;
    color: #333;
    text-align:right;
    background-color: #f2f2f2; padding: 5px; border-bottom: 1px solid #DDD;

}
.web2py_paginator ul {
    list-style-type: none;
    margin: 0px;
    padding: 0px;
}
.web2py_paginator ul li {
    display: inline;
}
.web2py_paginator ul li.current a {
    font-weight: bold !important;
}

.email::after {
    font-weight: bold;
    content: "@ncl.ac.uk";
}
