////
/// @group root/osbp-common
////

@import "../valo/valo.scss";

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)

@import "external/reset.scss"
*/
@import "external/dragdrop.scss";
@import "external/charts.scss";	//os-charts

/* style definitions derived from vaadin addons 
*/
@import "addons/designer.scss";			//os-designer
@import "addons/absolutelayout.scss";	//os-absolute-layout
@import "addons/grid-renderers-collection.scss"; // os-grid-render-coll


/* variables used in components related to POS/cash register 
*/
@import "common/cash-variables.scss";   //POS

/* style definitions under /layout reference these mixins. 
*  components are not included directly in @mixin <mainStyleName>
*/
@import "components/color-palette.scss";
@import "components/textfield.scss";
@import "components/button.scss";
@import "components/typeface.scss";
@import "components/focus.scss";
@import "components/checkbox.scss";
@import "components/bits.scss";
@import "components/popup.scss";
@import "components/group.scss";
@import "components/statemachine.scss";     //os-cash-register, os-entrance
@import "components/stretch.scss";     //os-cash-register, os-entrance
@import "addons/suggesttext.scss";		//os-suggesttext


/* scss under /layout have to be encased in a @mixin to be used below 
*  @mixin <mainStyleName>
*  else, the prefix .mainStyleName will not be included in the resulting 
*  css file. 
*  also, valo has to be included before adding custom styles.
*/ 
@import "layout/login.scss";	//os-login, os-login-basic, os-login-bgimage
@import "layout/pageframe.scss";		//os-pageframe
@import "layout/header.scss";	//os-heaeder
@import "layout/dialog.scss";    //os-dialog
@import "layout/table.scss";	//os-table
@import "layout/tabsheet.scss"; //os-tabsheet
@import "layout/user.scss";		//os-user, os-user-accordion
@import "layout/responsive.scss";	//os-responsive
@import "layout/sidebar.scss";  //os-sidebar, os-sidebar-table-variant
@import "layout/iconfont.scss"; 	//os-icons
@import "layout/gridview.scss"; 	//os-gridview
@import "layout/oconfigdialog.scss"; 	//os-configdialog 
@import "layout/gridutil.scss";    //os-grid-util
@import "layout/cash-register.scss"; 	//os-cash-register
@import "layout/entrance.scss";    //os-entrance

