diff --git a/assets/css/admin.css b/assets/css/admin.css index 764b841a8c9..7aea849fa41 100644 --- a/assets/css/admin.css +++ b/assets/css/admin.css @@ -1 +1 @@ -.woocommerce-message{position:relative;z-index:100;border:1px solid #b76ca9!important;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 0 15px rgba(0,0,0,0.04);-moz-box-shadow:inset 0 0 15px rgba(0,0,0,0.04);box-shadow:inset 0 0 15px rgba(0,0,0,0.04);overflow:hidden;padding:10px 0 10px!important;background:#cc99c2 url(../images/message.png) no-repeat right bottom!important}.woocommerce-message .squeezer{max-width:960px;margin:0;padding:0 10px;text-align:left;overflow:hidden}.woocommerce-message h4{margin:0 10px 0 0;font-size:18px;line-height:36px;font-family:"Helvetica Neue",Helvetica,Arial,"Lucida Grande",Verdana,"Bitstream Vera Sans",sans-serif;font-weight:normal;color:#fff;text-shadow:0 1px 1px #b574a8;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;float:left;vertical-align:middle}.woocommerce-message p{margin:0!important;padding:2px 0!important;float:left!important;line-height:32px;vertical-align:middle}.woocommerce-message p a.button-primary{font-size:16px!important;line-height:16px!important;margin:0 5px 0 0;padding:6px 15px;vertical-align:middle;color:#fff;text-align:center;text-decoration:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;border:1px solid #88537e;background:#a46497;-moz-box-shadow:inset 0 0 2px #fff,0 1px 1px rgba(0,0,0,0.1);-webkit-box-shadow:inset 0 0 2px #fff,0 1px 1px rgba(0,0,0,0.1);box-shadow:inset 0 0 2px #fff,0 1px 1px rgba(0,0,0,0.1);text-shadow:0 -1px 0 rgba(0,0,0,0.3);-webkit-transition-duration:.3s;-moz-transition-duration:.3s;cursor:pointer;font-family:"Helvetica Neue",Helvetica,Arial,"Lucida Grande",Verdana,"Bitstream Vera Sans",sans-serif}.woocommerce-message p a.button-primary:hover,.woocommerce-message p a.button-primary:active{background-color:#f0a000;border-color:#c87800;-webkit-transition-duration:.3s;outline:0;opacity:1}.woocommerce-message p a.skip,.woocommerce-message p a.docs{opacity:.5}.woocommerce-message .twitter-share-button{vertical-align:middle}#variable_product_options #message{margin:10px}#woocommerce_extensions{background:#f1f1f1 url(../images/icons/wc_icon.png) no-repeat 4px 4px;padding:4px 18px 4px 28px;-webkit-border-radius:4px;-moz-border-radius:4px;-o-border-radius:4px;border-radius:4px;width:220px;float:right;margin:9px 0 -40px;position:relative;text-shadow:0 1px 0 rgba(255,255,255,0.8);color:#555}#woocommerce_extensions a{color:#555}#woocommerce_extensions a.hide{color:#ccc;float:right;text-decoration:none;position:absolute;top:0;right:0;line-height:20px;padding:2px 8px;font-size:11px;text-align:center}#wc_get_started{position:relative;margin:1em 0 2em;padding:15px 15px 15px 90px;border:1px solid #d9d9d9;background:#f5f5f5 url(../images/gear.png) no-repeat 15px 15px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #fff;-moz-box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #fff;-webkit-box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #fff}#wc_get_started span{display:block;text-shadow:1px 1px 0 #fff;font-size:14px;line-height:22px;color:#595959}#wc_get_started span.main{margin-top:2px;font-weight:bold;font-size:16px}#wc_get_started .main-button{position:absolute;right:20px;top:27px}#wc_get_started p{margin:1em 0 .5em}#icon-woocommerce,.woocommerce_icon,.icon32-posts-product,.icon32-posts-shop_order,.icon32-posts-shop_coupon,.icon32-posts-product_variation{background-image:url(../images/icons/woocommerce-icons.png)!important;background-position:-11px -6px}.icon32-posts-product{background-position:-69px -6px!important}.icon32-posts-shop_order{background-position:-127px -6px!important}.icon32-attributes{background-position:-185px -6px!important}.icon32-woocommerce-settings{background-position:-359px -6px!important}.icon32-posts-shop_coupon{background-position:-475px -6px!important}.icon32-posts-product_variation{background-position:-533px -6px!important}.icon32-woocommerce-reports{background-position:-591px -6px!important}.icon32-woocommerce-status{background-position:-417px -6px!important}.icon32-woocommerce-delivery{background-position:-649px -6px!important}.icon32-woocommerce-compose{background-position:-708px -6px!important}.icon32-woocommerce-telephone{background-position:-766px -6px!important}.icon32-woocommerce-users{background-position:-824px -6px!important}.icon32-woocommerce-nav{background-position:-882px -6px!important}.wrap.woocommerce div.updated,.wrap.woocommerce div.error{margin-top:10px}mark.amount{background:transparent none;color:inherit}input.wc-error{color:#d8000c;background-color:#ffbaba}table.wc_status_table th{font-weight:bold}table.wc_status_table td{padding:5px 7px}table.wc_status_table td mark{background:transparent none}table.wc_status_table td mark.yes{color:green}table.wc_status_table td mark.no{color:#999}table.wc_status_table td mark.error{color:red}table.wc_status_table td ul{margin:0}#debug-report{font-family:monospace;display:none;width:100%;margin-bottom:20px;height:200px}.inline-edit-product.quick-edit-row .inline-edit-col-center,.inline-edit-product.quick-edit-row .inline-edit-col-right{float:right!important}#woocommerce-fields.inline-edit-col{clear:left}#woocommerce-fields.inline-edit-col label.featured,#woocommerce-fields.inline-edit-col label.manage_stock{margin-left:10px}#woocommerce-fields.inline-edit-col .dimensions div{display:block;margin:.2em 0}#woocommerce-fields.inline-edit-col .dimensions div span.title{display:block;float:left;width:5em}#woocommerce-fields.inline-edit-col .dimensions div span.input-text-wrap{display:block;margin-left:5em}#woocommerce-fields.inline-edit-col .text{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:99%;float:left;margin:1px 1% 1px 1px}#woocommerce-fields.inline-edit-col .length,#woocommerce-fields.inline-edit-col .width,#woocommerce-fields.inline-edit-col .height{width:32.33%}#woocommerce-fields-bulk.inline-edit-col label{clear:left}#woocommerce-fields-bulk.inline-edit-col .inline-edit-group label,#woocommerce-fields-bulk.inline-edit-col .inline-edit-group div.alignright{clear:none;width:49%;margin:.2em 0}#woocommerce-fields-bulk.inline-edit-col .regular_price,#woocommerce-fields-bulk.inline-edit-col .sale_price,#woocommerce-fields-bulk.inline-edit-col .weight,#woocommerce-fields-bulk.inline-edit-col .stock{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%}#woocommerce-fields-bulk.inline-edit-col .length,#woocommerce-fields-bulk.inline-edit-col .width,#woocommerce-fields-bulk.inline-edit-col .height{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:32%}#order_data{padding:0 10px 9px}#order_data .order_data_left{width:48%;float:left}#order_data .order_data_left h2{margin-top:11px;margin-bottom:0}#order_data .order_data_left p{padding:0!important}#order_data .order_data_left .form-field{float:left;width:48%;padding:0;margin:9px 0 0 0}#order_data .order_data_left .form-field label{display:block;padding:0 0 3px}#order_data .order_data_left .form-field input,#order_data .order_data_left .form-field textarea{width:100%}#order_data .order_data_left .form-field select{width:100%}#order_data .order_data_left .form-field #order_status_chzn .chzn-search{display:none}#order_data .order_data_left .form-field .chzn-container{width:100%!important}#order_data .order_data_left .form-field .date-picker-field{width:9em}#order_data .order_data_left .form-field .hour,#order_data .order_data_left .form-field .minute{width:2.5em}#order_data .order_data_left .form-field.last{float:right}#order_data .order_data_left .form-field-wide{width:100%;clear:both}#order_data .order_data_left .form-field-wide input,#order_data .order_data_left .form-field-wide textarea{width:100%}#order_data .order_data_left .form-field-wide select{width:100%}#order_data .order_data_right{width:48%;float:right}#order_data .order_data_right .order_data{overflow:hidden;zoom:1;width:49%;float:left}#order_data .order_data_right .order_data_alt{float:right}#order_data .order_data_right h2{margin-top:11px;margin-bottom:0}#order_data .order_data_right p{padding:0!important}#order_data .order_data_right p.none_set{color:#999}#order_data .order_data_right .form-field{float:left;width:50%;padding:0;margin:9px 0 0 0}#order_data .order_data_right .form-field label{display:block;padding:0 0 3px}#order_data .order_data_right .form-field input,#order_data .order_data_right .form-field select{width:95%}#order_data .order_data_right ._billing_company_field,#order_data .order_data_right ._shipping_company_field{clear:both;width:100%}#order_data .order_data_right ._billing_company_field input,#order_data .order_data_right ._shipping_company_field input{width:97.5%}#order_data .order_data_right ._billing_email_field{clear:left}#order_data .order_data_right div.edit_address{display:none;overflow:hidden;zoom:1}.order_actions{color:#999;font-size:11px;margin:0;overflow:hidden;zoom:1}.order_actions li{border-top:1px solid #fff;border-bottom:1px solid #ddd;padding:6px 0;margin:0;line-height:1.6em;float:left;width:50%;text-align:center}.order_actions li a{float:none;text-align:center}.order_actions li.wide{width:auto;float:none;clear:both;padding:6px;text-align:left}#woocommerce-order-items .inside{margin:0;padding:0;background:#fefefe}#woocommerce-order-items .buttons{float:left;padding-left:12px;vertical-align:top}#woocommerce-order-items .buttons .add_item_id,#woocommerce-order-items .buttons .chzn-container{margin-right:9px;vertical-align:top;float:left}#woocommerce-order-items .buttons .add_item_id .search-field input,#woocommerce-order-items .buttons .chzn-container .search-field input{min-width:100px}#woocommerce-order-items .buttons button{margin:2px 0 0 0}#woocommerce-order-items .buttons-alt{float:right;padding-right:12px}#woocommerce-order-items .add_meta{margin-left:0!important}#woocommerce-order-items h3 small{color:#999}#woocommerce-order-items .row-actions{float:right;padding:0;color:#999}#woocommerce-order-items .row-actions a{color:#999}#woocommerce-order-items .row-actions a.remove_row:hover{color:red}#woocommerce-order-downloads .buttons{float:left;padding:0;margin:0;vertical-align:top}#woocommerce-order-downloads .buttons .add_item_id,#woocommerce-order-downloads .buttons .chzn-container{width:400px!important;margin-right:9px;vertical-align:top;float:left}#woocommerce-order-downloads .buttons button{margin:2px 0 0 0}#woocommerce-order-downloads h3 small{color:#999}#woocommerce-order-totals h4{margin:0!important}#woocommerce-order-totals h4 a.add_tax_row{display:block;padding-bottom:10px}#woocommerce-order-totals .totals_group{border-top:1px solid white;border-bottom:1px solid #DDD;padding:10px 0 0}#woocommerce-order-totals .totals_group:first-child{border-top:0}#woocommerce-order-totals ul.totals{margin:6px 0 0;float:left}#woocommerce-order-totals ul.totals li{float:left;clear:both;width:100%;font-size:1.2em;font-weight:bold;line-height:1.2em;margin:0;padding:0 0 10px}#woocommerce-order-totals ul.totals li label{font-weight:normal;display:block;font-size:.8em;color:#333}#woocommerce-order-totals ul.totals li input{width:100%;vertical-align:middle;font-size:1em;margin:0!important;font-weight:normal;color:#555}#woocommerce-order-totals ul.totals li input.first{width:49%;float:left}#woocommerce-order-totals ul.totals li input.last{width:49%;float:right}#woocommerce-order-totals ul.totals li.left{float:left;width:49%;clear:left}#woocommerce-order-totals ul.totals li.left input{width:100%}#woocommerce-order-totals ul.totals li.right{float:right;width:49%;clear:none}#woocommerce-order-totals ul.totals li.right input{width:100%}#woocommerce-order-totals ul.totals .calculated{border-color:#ae8ca2;border-style:dotted}#woocommerce-order-totals #tax_rows{margin:6px 0 0}#woocommerce-order-totals .tax_row{margin:0 0 9px;border:1px solid #dfdfdf;background:#fff;padding:6px 6px 0;position:relative;opacity:.75}#woocommerce-order-totals .tax_row:hover,#woocommerce-order-totals .tax_row:focus{opacity:1}#woocommerce-order-totals .tax_row p{margin:0 0 6px}#woocommerce-order-totals .tax_row label{color:#555}#woocommerce-order-totals .tax_row label .checkbox{line-height:26px}#woocommerce-order-totals .tax_row p.first{float:left;width:49%;clear:left}#woocommerce-order-totals .tax_row p.first input,#woocommerce-order-totals .tax_row p.first select{width:100%}#woocommerce-order-totals .tax_row p.last{float:right;width:49%;clear:none}#woocommerce-order-totals .tax_row p.last input,#woocommerce-order-totals .tax_row p.last select{width:100%}#woocommerce-order-totals .tax_row a.delete_tax_row{padding:0;text-decoration:none;font-size:11px;line-height:16px;width:16px;height:16px;text-align:center;color:#999;float:right;background:#ddd;border:1px solid #eee;-webkit-box-shadow:0 0 0 1px #ccc;-webkit-border-radius:8px;-moz-border-radius:8px;-o-border-radius:8px;border-radius:8px;position:absolute;top:0;right:0;margin:-8px -8px 0 0;display:none}#woocommerce-order-totals .tax_row:hover a.delete_tax_row,#woocommerce-order-totals .tax_row:focus a.delete_tax_row{display:block}.woocommerce_order_items_wrapper{margin:0}.woocommerce_order_items_wrapper table.woocommerce_order_items{width:100%;background:#fff}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th{background:#ececec;padding:8px;font-size:11px;text-align:left}.woocommerce_order_items_wrapper table.woocommerce_order_items td{padding:8px;text-align:left;line-height:26px;vertical-align:top;border-bottom:1px dotted #ececec}.woocommerce_order_items_wrapper table.woocommerce_order_items td input,.woocommerce_order_items_wrapper table.woocommerce_order_items td textarea{width:100%}.woocommerce_order_items_wrapper table.woocommerce_order_items td select{width:50%}.woocommerce_order_items_wrapper table.woocommerce_order_items td input,.woocommerce_order_items_wrapper table.woocommerce_order_items td textarea{font-size:14px;padding:4px;color:#555}.woocommerce_order_items_wrapper table.woocommerce_order_items .name{min-width:200px}.woocommerce_order_items_wrapper table.woocommerce_order_items .center,.woocommerce_order_items_wrapper table.woocommerce_order_items .variation-id{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class{text-align:right}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost label,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax label,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity label,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total label,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal label,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class label{display:block;white-space:nowrap;color:#999;font-size:.833em}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class label input{display:inline}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class input{width:60px;vertical-align:middle;text-align:right}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost select,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax select,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity select,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total select,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal select,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class select{width:85px;height:26px;vertical-align:middle}.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity input{text-align:center;width:40px}.woocommerce_order_items_wrapper table.woocommerce_order_items td.tax_class,.woocommerce_order_items_wrapper table.woocommerce_order_items th.tax_class{text-align:left}.woocommerce_order_items_wrapper table.woocommerce_order_items .calculated{border-color:#ae8ca2;border-style:dotted}.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta{width:100%}.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td{padding:1px 4px 1px 0;border:0}.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td input{min-width:100px}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb a{display:block}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb img{padding:2px;margin:0;border:1px solid #dfdfdf;vertical-align:middle;width:46px;height:46px}.widefat .column-order_title time{display:block;color:#999;margin:3px 0}.widefat .column-order_actions a.button{float:left;margin:0 4px 2px 0}.widefat small.meta{display:block;color:#999;font-size:inherit;margin:3px 0}.widefat .column-total_cost,.widefat .column-order_date{width:9%}.widefat .column-order_status{width:90px;text-align:center}.widefat .column-order_status mark{display:block;text-align:center;white-space:nowrap;padding:0 2px;background:#999;border:1px solid #999;-webkit-box-shadow:inset 0 0 2px 1px rgba(255,255,255,0.5);-webkit-border-radius:4px;-moz-border-radius:4px;-o-border-radius:4px;border-radius:4px;margin:0;font-size:9px;text-transform:uppercase;color:#fff;font-weight:bold;text-shadow:0 1px 0 rgba(0,0,0,0.3)}.widefat .column-order_status mark.pending{background-color:#999;border-color:#999}.widefat .column-order_status mark.completed{background-color:#a0658b;border-color:#a0658b}.widefat .column-order_status mark.on-hold{background-color:#e66f00;border-color:#e66f00}.widefat .column-order_status mark.failed{background-color:red;border-color:red}.widefat .column-order_status mark.cancelled{background-color:#ccc;border-color:#ccc}.widefat .column-order_status mark.processing{background-color:#2184c2;border-color:#2184c2}.widefat .column-order_status mark.refunded{background-color:#ccc;border-color:#ccc}ul.subsubsub li.pending a{color:#e66f00}ul.subsubsub li.completed a{color:green}ul.subsubsub li.onhold a{color:red}ul.subsubsub li.cancelled a{color:#dfdfdf}ul.subsubsub li.refunded a{color:#ccc}ul.order_notes{padding:2px 0 0 0}ul.order_notes li .note_content{padding:10px;background:#efefef;position:relative}ul.order_notes li .note_content p{margin:0;padding:0}ul.order_notes li p.meta{padding:10px;color:#999;margin:0;font-size:11px}ul.order_notes li a.delete_note{color:#f00}ul.order_notes li .note_content:after{content:"";display:block;position:absolute;bottom:-15px;left:30px;width:0;height:0;border-width:15px 15px 0 0;border-style:solid;border-color:#efefef transparent}ul.order_notes li.customer-note .note_content{background:#d7cad2}ul.order_notes li.customer-note .note_content:after{border-color:#d7cad2 transparent}.add_note{border-top:1px solid #ddd;padding:10px}.add_note h4{margin-top:5px!important}.add_note input#add_order_note{width:50%}table.wp-list-table .column-thumb{width:52px;text-align:center;white-space:nowrap}table.wp-list-table .column-product_cat,table.wp-list-table .column-product_tag{width:11%!important}table.wp-list-table .column-sku,table.wp-list-table .column-product_cat,table.wp-list-table .column-product_tag,table.wp-list-table .column-is_in_stock,table.wp-list-table .column-price,table.wp-list-table .column-product_date{width:9%}table.wp-list-table .column-featured,table.wp-list-table .column-product_type{width:46px;text-align:left!important}table.wp-list-table .column-note{width:46px;text-align:center}table.wp-list-table .column-note img{margin:0 auto;padding-top:0!important}table.wp-list-table .column-order_comments{width:3em!important}table.wp-list-table .column-order_comments .post-com-count{float:left}table.wp-list-table th.column-note img,table.wp-list-table th.column-order_comments img{padding-top:1px!important}table.wp-list-table .manage-column.column-featured img,table.wp-list-table .manage-column.column-product_type img{padding-left:2px}table.wp-list-table img{margin:1px 2px}table.wp-list-table .column-thumb img{padding:2px;margin:0;border:1px solid #dfdfdf;vertical-align:middle;width:32px;height:32px}table.wp-list-table span.na{color:#999}table.wp-list-table .column-is_in_stock{text-align:left!important}table.wp-list-table span.product-type{width:16px;height:16px;margin:1px 2px;display:block;background:url(../images/product_types.png) no-repeat -16px 0}table.wp-list-table span.product-type.grouped{background:url(../images/product_types.png) no-repeat 0 0}table.wp-list-table span.product-type.external{background:url(../images/product_types.png) no-repeat -32px 0}table.wp-list-table span.product-type.variable{background:url(../images/product_types.png) no-repeat -48px 0}table.wp-list-table span.product-type.downloadable{background:url(../images/product_types.png) no-repeat -64px 0}table.wp-list-table span.product-type.virtual{background:url(../images/product_types.png) no-repeat -80px 0}table.wp-list-table mark.instock{font-weight:bold;color:green;background:transparent none;line-height:1}table.wp-list-table mark.outofstock{font-weight:bold;color:#a44;background:transparent none;line-height:1}ul.woocommerce_stats{overflow:hidden;zoom:1}ul.woocommerce_stats li{width:22%;padding:0 1.4%;float:left;font-size:.8em;border-left:1px solid #fff;border-right:1px solid #ececec;text-align:center}ul.woocommerce_stats li:first-child{border-left:0}ul.woocommerce_stats li:last-child{border-right:0}ul.woocommerce_stats strong{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-size:4em;line-height:1.2em;font-weight:normal;text-align:center;display:block}#woocommerce_dashboard_right_now p.sub,#woocommerce_dashboard_right_now .table,#woocommerce_dashboard_right_now .versions{margin:-12px}#woocommerce_dashboard_right_now .inside{font-size:12px;margin-bottom:0;padding-top:20px}#woocommerce_dashboard_right_now p.sub{padding:5px 0 15px;color:#8f8f8f;font-size:14px;position:absolute;top:-17px;left:15px}#woocommerce_dashboard_right_now .table{margin:0;padding:0;position:relative}#woocommerce_dashboard_right_now .table_shop_content{float:left;border-top:#ececec 1px solid;width:45%}#woocommerce_dashboard_right_now .table_orders{float:right;border-top:#ececec 1px solid;width:45%}#woocommerce_dashboard_right_now table td{padding:3px 0;white-space:nowrap}#woocommerce_dashboard_right_now table tr.first td{border-top:0}#woocommerce_dashboard_right_now td.b{padding-right:6px;text-align:right;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-size:14px;width:1%}#woocommerce_dashboard_right_now td.b a{font-size:18px}#woocommerce_dashboard_right_now td.b a:hover{color:#d54e21}#woocommerce_dashboard_right_now .t{font-size:12px;padding-right:12px;padding-top:6px;color:#777}#woocommerce_dashboard_right_now .t a{white-space:nowrap}#woocommerce_dashboard_right_now .on-hold a{color:red}#woocommerce_dashboard_right_now .pending a{color:#e66f00}#woocommerce_dashboard_right_now .completed a{color:green}#woocommerce_dashboard_right_now .versions{padding:6px 10px 12px;clear:both}#woocommerce_dashboard_right_now .versions .b{font-weight:bold}#woocommerce_dashboard_right_now a.button{float:right;clear:right;position:relative;top:-5px}#woocommerce_dashboard_sales h3 a{float:right;margin-left:8px}ul.recent-orders li,ul.stock_list li{overflow:hidden;zoom:1;border-bottom:#ececec 1px solid;padding:0 0 8px;margin:0 0 8px}ul.recent-orders li .order-status,ul.stock_list li .order-status{float:right}ul.recent-orders li small,ul.stock_list li small{color:#999}ul.recent-orders li .order-cost,ul.stock_list li .order-cost,ul.recent-orders li .order-customer,ul.stock_list li .order-customer{margin-left:8px}ul.recent-orders li .completed,ul.stock_list li .completed{color:green}ul.recent-orders li .on-hold,ul.stock_list li .on-hold{color:red}ul.recent-orders li .processing,ul.stock_list li .processing{color:#21759b}ul.recent-orders li .pending,ul.stock_list li .pending{color:#e66f00}ul.recent-orders li .refunded,ul.stock_list li .refunded,ul.recent-orders li .cancelled,ul.stock_list li .cancelled{color:#999}ul.recent-orders.stock_list small,ul.stock_list.stock_list small{float:right}ul.recent-orders.stock_list a,ul.stock_list.stock_list a{text-decoration:none}#woocommerce_dashboard_recent_reviews li{line-height:1.5em;margin-bottom:12px}#woocommerce_dashboard_recent_reviews h4.meta{line-height:1.4;margin:-0.2em 0 0 0;font-weight:normal;color:#999}#woocommerce_dashboard_recent_reviews blockquote{padding:0;margin:0}#woocommerce_dashboard_recent_reviews .avatar{float:left;margin:0 10px 5px 0}#woocommerce_dashboard_recent_reviews .star-rating{float:right;width:50px;height:10px;margin:3px 0 0 0;background:url(../images/admin-star.png) repeat-x left -10px}#woocommerce_dashboard_recent_reviews .star-rating span{background:url(../images/admin-star.png) repeat-x left 0;height:0;padding-top:10px;overflow:hidden;float:left}mark.notice{background:#fff;color:red;margin:0 0 0 10px}a.export_rates,a.import_rates{float:right;margin-left:3px;margin-top:-3px;margin-bottom:3px}.woocommerce table.shippingrows td,.woocommerce table.taxrows td,.woocommerce table.shippingrows th,.woocommerce table.taxrows th{vertical-align:top;line-height:25px;margin-bottom:9px}.woocommerce table.shippingrows a.remove,.woocommerce table.taxrows a.remove{margin:0!important}.woocommerce table.shippingrows .dupe,.woocommerce table.taxrows .dupe,.woocommerce table.shippingrows .remove,.woocommerce table.taxrows .remove{float:right;margin-left:9px}.woocommerce table.shippingrows tbody .check-column,.woocommerce table.taxrows tbody .check-column{padding-top:8px}.woocommerce table.shippingrows tbody .check-column input,.woocommerce table.taxrows tbody .check-column input{margin:0 0 0 8px}.woocommerce table.shippingrows input,.woocommerce table.taxrows input{width:auto}.woocommerce table.shippingrows td.apply_to_shipping,.woocommerce table.taxrows td.apply_to_shipping{padding-top:8px}.woocommerce table.shippingrows td.country,.woocommerce table.taxrows td.country{overflow:visible!important}.woocommerce table.shippingrows td.country p,.woocommerce table.taxrows td.country p{line-height:25px;margin:0;color:#666}.woocommerce table.shippingrows td.country button.edit_options,.woocommerce table.taxrows td.country button.edit_options{float:right}.woocommerce table.shippingrows td.country select,.woocommerce table.taxrows td.country select{margin:9px 0;width:100%;height:160px!important}.woocommerce table.shippingrows td.country p.edit,.woocommerce table.taxrows td.country p.edit,.woocommerce table.shippingrows td.country .options,.woocommerce table.taxrows td.country .options{min-width:400px}.woocommerce table.shippingrows td.country .chzn-container,.woocommerce table.taxrows td.country .chzn-container{width:100%!important;margin:9px 0 5px}.woocommerce table.shippingrows td.country .chzn-container .chzn-drop,.woocommerce table.taxrows td.country .chzn-container .chzn-drop{width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.woocommerce table.shippingrows td.country .chzn-container .search-field input,.woocommerce table.taxrows td.country .chzn-container .search-field input{width:150px!important}.woocommerce table.shippingrows td.local_country,.woocommerce table.taxrows td.local_country{overflow:visible!important;width:400px!important}.woocommerce table.shippingrows td.local_country select,.woocommerce table.taxrows td.local_country select{width:400px!important;margin-bottom:3px}.woocommerce table.shippingrows td.local_country textarea,.woocommerce table.taxrows td.local_country textarea{height:60px;width:400px;font-size:13px;line-height:16px;display:block}table.wc_gateways,table.wc_shipping{position:relative}table.wc_gateways td,table.wc_shipping td{vertical-align:middle;cursor:move;padding:4px 7px 2px}table.wc_gateways td p,table.wc_shipping td p{margin:0 0 2px}table.wc_gateways .radio,table.wc_shipping .radio{text-align:center}img.help_tip{vertical-align:middle;margin:0 0 0 9px}.postbox img.help_tip{margin-top:-4px}.woocommerce table.form-table{margin:0}.woocommerce table.form-table textarea.input-text{height:100%;min-width:150px}.woocommerce table.form-table textarea.wide-input{width:100%}.woocommerce table.form-table img.help_tip{padding:0;margin:-4px 0 0 5px;vertical-align:middle;cursor:help;line-height:1}.woocommerce table.form-table fieldset img.help_tip{margin:-3px 0 0 5px}.woocommerce table.form-table .color_box{border:1px solid #ccc;box-shadow:1px 1px 3px rgba(0,0,0,0.2);-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.2);-moz-box-shadow:1px 1px 3px rgba(0,0,0,0.2);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;padding:4px 6px;float:left;width:80px;margin:0 10px 0 0}.woocommerce table.form-table .color_box strong{text-align:left;display:block;padding:0 0 2px;font-size:.92em}.woocommerce table.form-table .color_box strong img{float:right;margin:1px 0 0 0}.woocommerce table.form-table .color_box input{width:100%;margin:0;font-family:monospace;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.woocommerce table.form-table .color_box .colorpickdiv{z-index:100;background:#eee;border:1px solid #ccc;position:absolute;display:none}.woocommerce table.form-table .color_box_clear{display:block;clear:both;padding-bottom:10px}.woocommerce #tabs-wrap table a.remove{margin-left:4px}.woocommerce #tabs-wrap table p{margin:0 0 4px!important;overflow:hidden;zoom:1}.woocommerce #tabs-wrap table p a.add{float:left}#product_variation-parent #parent_id{width:100%}#woocommerce-product-data ul.product_data_tabs,.woocommerce ul.tabs{background:#eaeaea;padding:3px 9px 0;margin:0;overflow:hidden;zoom:1;line-height:1em;-webkit-box-shadow:inset 0 -1px 0 0 #d5d5d5;-moz-box-shadow:inset 0 -1px 0 0 x #d5d5d5;box-shadow:inset 0 -1px 0 0 #d5d5d5}#woocommerce-product-data ul.product_data_tabs li,.woocommerce ul.tabs li{float:left;padding:0;margin:0 5px 0 0}#woocommerce-product-data ul.product_data_tabs li a,.woocommerce ul.tabs li a{padding:0;margin:0;border:0;border:1px solid #d5d5d5;border-bottom:0;float:left;padding:9px 9px;background:#ececec;text-decoration:none;color:#555;-moz-border-radius-topleft:3px;-moz-border-radius-topright:3px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;-webkit-box-shadow:inset 0 1px 0 1px rgba(255,255,255,0.5);-moz-box-shadow:inset 0 1px 0 1px rgba(255,255,255,0.5);box-shadow:inset 0 1px 0 1px rgba(255,255,255,0.5)}#woocommerce-product-data ul.product_data_tabs li.active a,.woocommerce ul.tabs li.active a{background:#f8f8f8;color:#555;background-image:linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-moz-linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-webkit-linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-ms-linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left bottom,left top,color-stop(0,#fff),color-stop(1,#f8f8f8))}#woocommerce-product-data ul.product_data_tabs li.general_options a,#woocommerce-product-data ul.product_data_tabs li.tax_options a,#woocommerce-product-data ul.product_data_tabs li.inventory_options a,#woocommerce-product-data ul.product_data_tabs li.related_product_options a,#woocommerce-product-data ul.product_data_tabs li.attribute_options a,#woocommerce-product-data ul.product_data_tabs li.grouping_options a,#woocommerce-product-data ul.product_data_tabs li.variation_options a{padding:9px 9px 9px 34px;line-height:16px;border-bottom:1px solid #d5d5d5;text-shadow:0 1px 1px #fff;color:#555;background:#ececec url(../images/icons/wc-tab-icons.png) no-repeat 9px 9px}#woocommerce-product-data ul.product_data_tabs li.general_options a{background-position:9px 9px}#woocommerce-product-data ul.product_data_tabs li.tax_options a{background-position:9px -51px}#woocommerce-product-data ul.product_data_tabs li.inventory_options a{background-position:9px -111px}#woocommerce-product-data ul.product_data_tabs li.related_product_options a{background-position:9px -171px}#woocommerce-product-data ul.product_data_tabs li.attribute_options a{background-position:9px -231px}#woocommerce-product-data ul.product_data_tabs li.grouping_options a{background-position:9px -291px}#woocommerce-product-data ul.product_data_tabs li.variation_options a{background-position:9px -411px}#woocommerce-product-data ul.product_data_tabs li.active a{background-color:#f8f8f8;border-bottom:1px solid #f8f8f8}#woocommerce-product-data .inside,#woocommerce-product-type-options .inside,#woocommerce-order-data .inside,#woocommerce-product-type .inside,#woocommerce-order-downloads .inside,#woocommerce-coupon-data .inside{padding:0;margin:0}.woocommerce_options_panel,.panel{padding:9px 9px 9px 9px;color:#555}.woocommerce_page_settings .woocommerce_options_panel,.panel,#woocommerce-product-type .woocommerce_options_panel{padding:0}#woocommerce-product-type-options .panel,#woocommerce-product-specs .inside{padding:9px;margin:0}.woocommerce_options_panel p,#woocommerce-product-type-options .panel p{margin:0 0 9px;font-size:12px;padding:5px 9px;line-height:24px}.woocommerce_options_panel p:after,#woocommerce-product-type-options .panel p:after{content:".";display:block;height:0;clear:both;visibility:hidden}.woocommerce_options_panel p{margin:9px 0 9px}.woocommerce_options_panel label{float:left;width:150px;padding:0}.woocommerce_options_panel label .req{font-weight:bold;font-style:normal;color:red}.woocommerce_options_panel .description{padding:0;margin:0 0 0 7px}.woocommerce_options_panel .description-block{margin-left:0;display:block}.woocommerce_options_panel textarea,.woocommerce_options_panel input,.woocommerce_options_panel select{margin:0}.woocommerce_options_panel textarea{vertical-align:top;height:3.5em;line-height:1.5em}.woocommerce_options_panel input{width:50%;float:left}.woocommerce_options_panel input.button{width:auto;margin-left:8px}.woocommerce_options_panel .checkbox,table.woocommerce_variable_attributes .checkbox{vertical-align:middle;margin:7px 0;width:auto}.woocommerce_options_panel select{float:left}.woocommerce_options_panel .short{width:20%}.woocommerce_options_panel .sized{width:auto!important;margin-right:6px}.woocommerce_options_panel .options_group{border-top:1px solid white;border-bottom:1px solid #dfdfdf}.woocommerce_options_panel .options_group:first-child{border-top:0}#woocommerce-product-data input.dp-applied{float:left}#grouped_product_options,#virtual_product_options,#simple_product_options{padding:12px;font-style:italic;color:#666}.wc-metaboxes-wrapper .expand_all,.wc-metaboxes-wrapper .close_all{float:right;margin-left:9px;line-height:22px}.wc-metaboxes-wrapper .expand_all{padding-left:14px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAI0lEQVQYV2PcvXv3fwY8gJEoBa6urozYDAFpBpswGBTg8yYA3kYtiYVhDhIAAAAASUVORK5CYII=) no-repeat left}.wc-metaboxes-wrapper .close_all{padding-left:14px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAHUlEQVQYV2NkIAAYd+/e/R+fGsIKCFpBUAHt3QAASf0MyQbFJwoAAAAASUVORK5CYII=) no-repeat left}.wc-metaboxes-wrapper .toolbar{margin:0!important;border-top:1px solid white;border-bottom:1px solid #dfdfdf;padding:9px 12px!important}.wc-metaboxes-wrapper p.toolbar{overflow:hidden;zoom:1}.wc-metaboxes-wrapper select.attribute_taxonomy,.wc-metaboxes-wrapper button.add_attribute,.wc-metaboxes-wrapper button.add_variable_attribute,.wc-metaboxes-wrapper .fr{float:right;margin:0 0 0 6px}.wc-metaboxes-wrapper .wc-metaboxes{border-bottom:1px solid #dfdfdf;padding:0 12px 0}.wc-metaboxes-wrapper .wc-metabox-sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;margin-bottom:9px;border-width:1px;border-style:dashed}.wc-metaboxes-wrapper .wc-metabox{background:#ececec;border:1px solid #ececec;margin:9px 0!important;-moz-border-radius-topleft:3px;-moz-border-radius-topright:3px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px}.wc-metaboxes-wrapper .wc-metabox.closed{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.wc-metaboxes-wrapper .wc-metabox h3{margin:0!important;padding:6px!important;font-size:1em!important;overflow:hidden;zoom:1;cursor:move}.wc-metaboxes-wrapper .wc-metabox h3 button{float:right}.wc-metaboxes-wrapper .wc-metabox h3 strong{font-weight:normal;line-height:24px}.wc-metaboxes-wrapper .wc-metabox h3 select{font-family:sans-serif}.wc-metaboxes-wrapper .wc-metabox h3 .handlediv{background-position:6px 5px!important;display:none;height:24px}.wc-metaboxes-wrapper .wc-metabox h3.fixed{cursor:pointer!important}.wc-metaboxes-wrapper .wc-metabox:hover h3 .handlediv{display:block}.wc-metaboxes-wrapper .wc-metabox table{width:100%;position:relative;background:#fff;padding:3px}.wc-metaboxes-wrapper .wc-metabox table td{text-align:left;padding:6px 6px;vertical-align:top;border:0}.wc-metaboxes-wrapper .wc-metabox table td label{text-align:left;display:block;line-height:21px}.wc-metaboxes-wrapper .wc-metabox table td input{float:left;min-width:200px}.wc-metaboxes-wrapper .wc-metabox table td input,.wc-metaboxes-wrapper .wc-metabox table td textarea{width:100%;margin:0;display:block;font-size:14px;padding:4px;color:#555}.wc-metaboxes-wrapper .wc-metabox table td select,.wc-metaboxes-wrapper .wc-metabox table td .chzn-container{width:100%!important}.wc-metaboxes-wrapper .wc-metabox table td input.short{width:200px}.wc-metaboxes-wrapper .wc-metabox table td input.checkbox{width:auto;min-width:inherit;vertical-align:middle;display:inline;float:none}.wc-metaboxes-wrapper .wc-metabox table td.attribute_name{width:200px}.wc-metaboxes-wrapper .wc-metabox table .plus,.wc-metaboxes-wrapper .wc-metabox table .minus{margin-top:6px}.wc-metaboxes-wrapper .wc-metabox table .fl{float:left}.wc-metaboxes-wrapper .wc-metabox table .fr{float:right}.wc-metaboxes-wrapper .plus{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAARklEQVQYGWP8//8/AzGACV3Rnj17/oMwujiGQnQFMD7RChlBbsRmFcwkEO3i4sJImonIumGmg0xBFifaRKIVgj2DbAUuNgCfThpracSKqwAAAABJRU5ErkJggg==) no-repeat 7px 5px}.wc-metaboxes-wrapper .minus{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAKUlEQVQYlWP8//8/Az7AhFeWGAUsDAwMDHv27MFqj4uLCyNBExhp70gAohwKC5KJ+HQAAAAASUVORK5CYII=) no-repeat 7px 6px}#variable_product_options p.toolbar strong{margin:0 6px 0 0;float:left;line-height:23px}#variable_product_options p.toolbar .button,#variable_product_options p.toolbar select{margin:0 6px 0 0;float:left}#variable_product_options p.toolbar a.set{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAARklEQVQYGWP8//8/AzGACV3Rnj17/oMwujiGQnQFMD7RChlBbsRmFcwkEO3i4sJImonIumGmg0xBFifaRKIVgj2DbAUuNgCfThpracSKqwAAAABJRU5ErkJggg==) no-repeat 7px 5px}#variable_product_options p.toolbar a.toggle{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAWUlEQVQYGY3QAQrAIAgFUB07mrfWu7kc+2JRsiA0fJnE7k5m5tQsEWFS1WGduh3mahpNLx3hOs4WAr2zfU8mRBGxorAJ4wAU+boS1g41x4UbScQdQJ3/fvgDtStDiI0qoDcAAAAASUVORK5CYII=) no-repeat 7px 5px}#variable_product_options p.toolbar a.delete_variations{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAKUlEQVQYlWP8//8/Az7AhFeWGAUsDAwMDHv27MFqj4uLCyNBExhp70gAohwKC5KJ+HQAAAAASUVORK5CYII=) no-repeat 7px 6px}#variable_product_options p.toolbar .add_variation,#variable_product_options p.toolbar .link_all_variations,#variable_product_options p.toolbar .fr{float:right;margin:0 0 0 6px}#variable_product_options .woocommerce_variation table{background:#f5f5f5;padding:6px}#variable_product_options .woocommerce_variation table td input{min-width:inherit!important}#variable_product_options .woocommerce_variation table td.dimensions_field input{width:32%;margin-right:2%}#variable_product_options .woocommerce_variation table td.dimensions_field .last{margin-right:0}#variable_product_options .woocommerce_variation table td.options{width:150px}#variable_product_options .woocommerce_variation table td.options label{margin-bottom:6px}#variable_product_options .woocommerce_variation table td.data{padding:0 0 0 12px}#variable_product_options .woocommerce_variation table td.data table{width:100%;padding:0 12px 0 12px;background:#fff;border:1px solid #dfdfdf;-moz-border-radius:3px;-webkit-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#variable_product_options .woocommerce_variation table td.data table td{width:50%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#variable_product_options .woocommerce_variation table td.data table:before{content:"";display:block;position:absolute;top:33px;left:0;margin:0 0 0 -1px;border:7px solid #dfdfdf;border-color:transparent transparent transparent #dfdfdf}#variable_product_options .woocommerce_variation table td.data table:after{content:"";display:block;position:absolute;top:34px;left:0;margin:0 0 0 -1px;border:6px solid #f5f5f5;border-color:transparent transparent transparent #f5f5f5}#variable_product_options .woocommerce_variation table td.upload_image{white-space:nowrap;width:75px}#variable_product_options .woocommerce_variation table td.upload_image img{float:none;width:73px;border:1px solid #dfdfdf}#variable_product_options .woocommerce_variation table td.upload_image .button{margin:0;padding:4px 10px;width:auto;float:none;vertical-align:middle}#variable_product_options .woocommerce_variation table td.upload_image .upload_image_button{display:block;position:relative}#variable_product_options .woocommerce_variation table td.upload_image .upload_image_button .overlay{display:none;width:75px;height:75px;position:absolute;top:0;left:0;margin:0;padding:0;opacity:.5;background:#eee url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAXklEQVQYGW2OUQrAMAhDFy8+dnKnwiuh2I+aJulDZebDkfSie1b28Q7EXWrfvSm60RQnkQUC8ja7owpmL6d4GdDZ0cNNHyIhZEj4QYCxze6orsluAh8AnR0xKPR07weXJi8JGd3qqwAAAABJRU5ErkJggg==) no-repeat center center}#variable_product_options .woocommerce_variation table td.upload_image .upload_image_button:hover .overlay{display:block}#variable_product_options .woocommerce_variation table td.upload_image .upload_image_button.remove .overlay{background:#eee url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAWElEQVQYGY2OUQ6AMAxCZdm9jSev65K3YKNm+6EFBlVEHDxJJ3Pi0C72xlBNyTs3jU7wEUTTIB51GCp2CL8HLpHEdaOLb/N2dfuq9NT0zOo/M9q6EaImsd/uViMLVuD4KAAAAABJRU5ErkJggg==) no-repeat center center}#variable_product_options .woocommerce_variation table td .file_path_field{position:relative;padding-right:40px}#variable_product_options .woocommerce_variation table td .file_path_field .upload_file_button{position:absolute;right:0;width:30px;padding:5px 0;margin:1px 0 0;text-align:center}.tips{cursor:help;text-decoration:none}img.tips{padding:5px 0 0 0}#tiptip_holder{display:none;position:absolute;top:0;left:0;z-index:99999}#tiptip_holder.tip_top{padding-bottom:5px}#tiptip_holder.tip_bottom{padding-top:5px}#tiptip_holder.tip_right{padding-left:5px}#tiptip_holder.tip_left{padding-right:5px}#tiptip_content{font-size:11px;color:#fff;padding:4px 8px;background:#a2678c;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;box-shadow:1px 1px 3px rgba(0,0,0,0.1);-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:1px 1px 3px rgba(0,0,0,0.1)}#tiptip_content code{background:#855c76;padding:1px}#tiptip_arrow,#tiptip_arrow_inner{position:absolute;border-color:transparent;border-style:solid;border-width:6px;height:0;width:0}#tiptip_holder.tip_top #tiptip_arrow_inner{margin-top:-7px;margin-left:-6px;border-top-color:#a2678c}#tiptip_holder.tip_bottom #tiptip_arrow_inner{margin-top:-5px;margin-left:-6px;border-bottom-color:#a2678c}#tiptip_holder.tip_right #tiptip_arrow_inner{margin-top:-6px;margin-left:-5px;border-right-color:#a2678c}#tiptip_holder.tip_left #tiptip_arrow_inner{margin-top:-6px;margin-left:-7px;border-left-color:#a2678c}img.ui-datepicker-trigger{vertical-align:middle;margin-top:-1px;cursor:pointer}.woocommerce_options_panel img.ui-datepicker-trigger,.wc-metabox-content img.ui-datepicker-trigger{float:left;margin-right:8px;margin-top:4px;margin-left:4px}#ui-datepicker-div{display:none}.woocommerce-reports-wrap{margin-left:300px;padding-top:18px}.woocommerce-reports-wrap.halved{margin:0;overflow:hidden;zoom:1}.woocommerce-reports-wrap .postbox h3{cursor:default!important}.woocommerce-reports-wrap .postbox .stat{font-size:1.5em!important;font-weight:bold;text-align:center}.woocommerce-reports-wrap .postbox .chart{padding:16px}.woocommerce-reports-wrap .woocommerce-reports-main{float:left;min-width:100%}.woocommerce-reports-wrap .woocommerce-reports-sidebar{display:inline;width:281px;margin-left:-300px;clear:both;float:left}.woocommerce-reports-wrap .woocommerce-reports-left{width:49.5%;float:left}.woocommerce-reports-wrap .woocommerce-reports-right{width:49.5%;float:right}#tooltip{color:#fff;font-size:12px;-moz-border-radius:4px;-webkit-border-radius:4px;-o-border-radius:4px;-khtml-border-radius:4px;border-radius:4px;opacity:.80}table.bar_chart{width:100%}table.bar_chart thead th{text-align:left;color:#ccc;padding:6px 0}table.bar_chart tbody th{padding:6px 0;width:25%;text-align:left!important;font-weight:normal!important;border-bottom:1px solid #fee}table.bar_chart tbody td{text-align:right;line-height:24px;padding:6px 6px 6px 0;border-bottom:1px solid #fee}table.bar_chart tbody td span{color:#8a4b75;display:block}table.bar_chart tbody td span.alt{color:#47a03e;margin-top:6px}table.bar_chart tbody td.bars{position:relative;text-align:left;padding:6px 6px 6px 0;border-bottom:1px solid #fee}table.bar_chart tbody td.bars span,table.bar_chart tbody td.bars a{text-decoration:none;clear:both;background:#8a4b75;float:left;display:block;line-height:24px;height:24px;-moz-border-radius:3px;-webkit-border-radius:3px;-o-border-radius:3px;-khtml-border-radius:3px;border-radius:3px}table.bar_chart tbody td.bars span.alt{clear:both;background:#47a03e}table.bar_chart tbody td.bars span.alt span{margin:0;color:#c5dec2!important;text-shadow:0 1px 0 #47a03e;background:transparent}#woocommerce_allowed_countries_chzn .chzn-search,#woocommerce_file_download_method_chzn .chzn-search{display:none}.chzn-container-single .chzn-single{height:24px;line-height:25px}.chzn-container-single .chzn-single div b{background:url('../images/chosen-sprite.png') no-repeat 0 0!important}.chzn-container-active .chzn-single-with-drop div b{background-position:-18px 1px!important}.chzn-container-single .chzn-search input{line-height:13px;width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.chzn-container .chzn-drop{width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.chzn-container-multi .chzn-choices .search-field input{height:21px!important}.woocommerce_options_panel .chzn-container-multi{width:50%!important;float:left}.woocommerce_options_panel .chzn-container-multi .search-field{min-width:50%}.woocommerce_options_panel .chzn-container-multi .search-field input{min-width:100%}.woocommerce-checkout .form-row .chzn-container{width:100%!important}.woocommerce-checkout .form-row .chzn-container-single .chzn-single{height:28px;line-height:29px}.woocommerce-checkout .form-row .chzn-container-single .chzn-single div b{background:url('../images/chosen-sprite.png') no-repeat 0 3px!important}.woocommerce-checkout .form-row .chzn-container-active .chzn-single-with-drop div b{background-position:-18px 4px!important}.woocommerce-checkout .form-row .chzn-container-single .chzn-search input{line-height:13px;width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.woocommerce-checkout .form-row .chzn-container .chzn-drop{width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.chzn-container{font-size:13px;position:relative;display:inline-block;zoom:1;*display:inline}.chzn-container .chzn-drop{background:#fff;border:1px solid #aaa;border-top:0;position:absolute;top:29px;left:0;-webkit-box-shadow:0 4px 5px rgba(0,0,0,0.15);-moz-box-shadow:0 4px 5px rgba(0,0,0,0.15);-o-box-shadow:0 4px 5px rgba(0,0,0,0.15);box-shadow:0 4px 5px rgba(0,0,0,0.15);z-index:999}.chzn-container-single .chzn-single{background-color:#fff;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff',endColorstr='#eeeeee',GradientType=0);background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(20%,#fff),color-stop(50%,#f6f6f6),color-stop(52%,#eee),color-stop(100%,#f4f4f4));background-image:-webkit-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-image:-moz-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-image:-o-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-image:-ms-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-image:linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #aaa;-webkit-box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,0.1);-moz-box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,0.1);box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,0.1);display:block;overflow:hidden;white-space:nowrap;position:relative;padding:0 0 0 8px;color:#444;text-decoration:none}.chzn-container-single .chzn-default{color:#999}.chzn-container-single .chzn-single span{margin-right:26px;display:block;overflow:hidden;white-space:nowrap;-o-text-overflow:ellipsis;-ms-text-overflow:ellipsis;text-overflow:ellipsis}.chzn-container-single .chzn-single abbr{display:block;position:absolute;right:26px;top:6px;width:12px;height:13px;font-size:1px;background:url('../images/chosen-sprite.png') right top no-repeat}.chzn-container-single .chzn-single abbr:hover{background-position:right -11px}.chzn-container-single .chzn-single div{position:absolute;right:0;top:0;display:block;height:100%;width:18px}.chzn-container-single .chzn-single div b{background:url('../images/chosen-sprite.png') no-repeat 0 0;display:block;width:100%;height:100%}.chzn-container-single .chzn-search{padding:3px 4px;position:relative;margin:0;white-space:nowrap;z-index:1010}.chzn-container-single .chzn-search input{background:#fff url('../images/chosen-sprite.png') no-repeat 100% -22px;background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-webkit-gradient(linear,0% 0,0% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-webkit-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-moz-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-o-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-ms-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat 100% -22px,linear-gradient(top,#eee 1%,#fff 15%);margin:1px 0;padding:4px 20px 4px 5px;outline:0;border:1px solid #aaa;font-family:sans-serif;font-size:1em}.chzn-container-single .chzn-drop{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.chzn-container-single-nosearch .chzn-search input{position:absolute;left:-9000px}.chzn-container-multi .chzn-choices{background-color:#fff;background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background-image:-webkit-linear-gradient(top,#eee 1%,#fff 15%);background-image:-moz-linear-gradient(top,#eee 1%,#fff 15%);background-image:-o-linear-gradient(top,#eee 1%,#fff 15%);background-image:-ms-linear-gradient(top,#eee 1%,#fff 15%);background-image:linear-gradient(top,#eee 1%,#fff 15%);border:1px solid #aaa;margin:0;padding:0;cursor:text;overflow:hidden;height:auto!important;height:1%;position:relative}.chzn-container-multi .chzn-choices li{float:left;list-style:none}.chzn-container-multi .chzn-choices .search-field{white-space:nowrap;margin:0;padding:0}.chzn-container-multi .chzn-choices .search-field input{color:#666;background:transparent!important;border:0!important;font-family:sans-serif;font-size:100%;height:15px;padding:5px;margin:1px 0;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;-o-box-shadow:none;box-shadow:none}.chzn-container-multi .chzn-choices .search-field .default{color:#999}.chzn-container-multi .chzn-choices .search-choice{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background-color:#e4e4e4;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#f4f4f4',endColorstr='#eeeeee',GradientType=0);background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-ms-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);-webkit-box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,0.05);-moz-box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,0.05);box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,0.05);color:#333;border:1px solid #aaa;line-height:13px;padding:3px 20px 3px 5px;margin:3px 0 3px 5px;position:relative;cursor:default}.chzn-container-multi .chzn-choices .search-choice-focus{background:#d4d4d4}.chzn-container-multi .chzn-choices .search-choice .search-choice-close{display:block;position:absolute;right:3px;top:4px;width:12px;height:13px;font-size:1px;background:url('../images/chosen-sprite.png') right top no-repeat}.chzn-container-multi .chzn-choices .search-choice .search-choice-close:hover{background-position:right -11px}.chzn-container-multi .chzn-choices .search-choice-focus .search-choice-close{background-position:right -11px}.chzn-container .chzn-results{margin:0 4px 4px 0;max-height:240px;padding:0 0 0 4px;position:relative;overflow-x:hidden;overflow-y:auto}.chzn-container-multi .chzn-results{margin:-1px 0 0;padding:0}.chzn-container .chzn-results li{display:none;line-height:15px;padding:5px 6px;margin:0;list-style:none}.chzn-container .chzn-results .active-result{cursor:pointer;display:list-item}.chzn-container .chzn-results .highlighted{background-color:#3875d7;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#3875d7',endColorstr='#2a62bc',GradientType=0);background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(20%,#3875d7),color-stop(90%,#2a62bc));background-image:-webkit-linear-gradient(top,#3875d7 20%,#2a62bc 90%);background-image:-moz-linear-gradient(top,#3875d7 20%,#2a62bc 90%);background-image:-o-linear-gradient(top,#3875d7 20%,#2a62bc 90%);background-image:-ms-linear-gradient(top,#3875d7 20%,#2a62bc 90%);background-image:linear-gradient(top,#3875d7 20%,#2a62bc 90%);color:#fff}.chzn-container .chzn-results li em{background:#feffde;font-style:normal}.chzn-container .chzn-results .highlighted em{background:transparent}.chzn-container .chzn-results .no-results{background:#f4f4f4;display:list-item}.chzn-container .chzn-results .group-result{cursor:default;color:#999;font-weight:bold}.chzn-container .chzn-results .group-option{padding-left:15px}.chzn-container-multi .chzn-drop .result-selected{display:none}.chzn-container .chzn-results-scroll{background:white;margin:0 4px;position:absolute;text-align:center;width:321px;z-index:1}.chzn-container .chzn-results-scroll span{display:inline-block;height:17px;text-indent:-5000px;width:9px}.chzn-container .chzn-results-scroll-down{bottom:0}.chzn-container .chzn-results-scroll-down span{background:url('../images/chosen-sprite.png') no-repeat -4px -3px}.chzn-container .chzn-results-scroll-up span{background:url('../images/chosen-sprite.png') no-repeat -22px -3px}.chzn-container-active .chzn-single{-webkit-box-shadow:0 0 5px rgba(0,0,0,0.3);-moz-box-shadow:0 0 5px rgba(0,0,0,0.3);-o-box-shadow:0 0 5px rgba(0,0,0,0.3);box-shadow:0 0 5px rgba(0,0,0,0.3);border:1px solid #5897fb}.chzn-container-active .chzn-single-with-drop{border:1px solid #aaa;-webkit-box-shadow:0 1px 0 #fff inset;-moz-box-shadow:0 1px 0 #fff inset;-o-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background-color:#eee;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#eeeeee',endColorstr='#ffffff',GradientType=0);background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(20%,#eee),color-stop(80%,#fff));background-image:-webkit-linear-gradient(top,#eee 20%,#fff 80%);background-image:-moz-linear-gradient(top,#eee 20%,#fff 80%);background-image:-o-linear-gradient(top,#eee 20%,#fff 80%);background-image:-ms-linear-gradient(top,#eee 20%,#fff 80%);background-image:linear-gradient(top,#eee 20%,#fff 80%);-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomleft:0;-moz-border-radius-bottomright:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.chzn-container-active .chzn-single-with-drop div{background:transparent;border-left:none}.chzn-container-active .chzn-single-with-drop div b{background-position:-18px 1px}.chzn-container-active .chzn-choices{-webkit-box-shadow:0 0 5px rgba(0,0,0,0.3);-moz-box-shadow:0 0 5px rgba(0,0,0,0.3);-o-box-shadow:0 0 5px rgba(0,0,0,0.3);box-shadow:0 0 5px rgba(0,0,0,0.3);border:1px solid #5897fb}.chzn-container-active .chzn-choices .search-field input{color:#111!important}.chzn-disabled{cursor:default;opacity:.5!important}.chzn-disabled .chzn-single{cursor:default}.chzn-disabled .chzn-choices .search-choice .search-choice-close{cursor:default}.chzn-rtl{text-align:right}.chzn-rtl .chzn-single{padding:0 8px 0 0;overflow:visible}.chzn-rtl .chzn-single span{margin-left:26px;margin-right:0;direction:rtl}.chzn-rtl .chzn-single div{left:3px;right:auto}.chzn-rtl .chzn-single abbr{left:26px;right:auto}.chzn-rtl .chzn-choices .search-field input{direction:rtl}.chzn-rtl .chzn-choices li{float:right}.chzn-rtl .chzn-choices .search-choice{padding:3px 5px 3px 19px;margin:3px 5px 3px 0}.chzn-rtl .chzn-choices .search-choice .search-choice-close{left:4px;right:auto;background-position:right top}.chzn-rtl.chzn-container-single .chzn-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chzn-rtl .chzn-results .group-option{padding-left:0;padding-right:15px}.chzn-rtl.chzn-container-active .chzn-single-with-drop div{border-right:0}.chzn-rtl .chzn-search input{background:#fff url('../images/chosen-sprite.png') no-repeat -38px -22px;background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-webkit-gradient(linear,0% 0,0% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-webkit-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-moz-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-o-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-ms-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat -38px -22px,linear-gradient(top,#eee 1%,#fff 15%);padding:4px 5px 4px 20px;direction:rtl} \ No newline at end of file +.woocommerce-message{position:relative;z-index:100;border:1px solid #b76ca9!important;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 0 15px rgba(0,0,0,0.04);-moz-box-shadow:inset 0 0 15px rgba(0,0,0,0.04);box-shadow:inset 0 0 15px rgba(0,0,0,0.04);overflow:hidden;padding:10px 0 10px!important;background:#cc99c2 url(../images/message.png) no-repeat right bottom!important}.woocommerce-message .squeezer{max-width:960px;margin:0;padding:0 10px;text-align:left;overflow:hidden}.woocommerce-message h4{margin:0 10px 0 0;font-size:18px;line-height:36px;font-family:"Helvetica Neue",Helvetica,Arial,"Lucida Grande",Verdana,"Bitstream Vera Sans",sans-serif;font-weight:normal;color:#fff;text-shadow:0 1px 1px #b574a8;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;float:left;vertical-align:middle}.woocommerce-message p{margin:0!important;padding:2px 0!important;float:left!important;line-height:32px;vertical-align:middle}.woocommerce-message p a.button-primary{font-size:16px!important;line-height:16px!important;margin:0 5px 0 0;padding:6px 15px;vertical-align:middle;color:#fff;text-align:center;text-decoration:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;border:1px solid #88537e;background:#a46497;-moz-box-shadow:inset 0 0 2px #fff,0 1px 1px rgba(0,0,0,0.1);-webkit-box-shadow:inset 0 0 2px #fff,0 1px 1px rgba(0,0,0,0.1);box-shadow:inset 0 0 2px #fff,0 1px 1px rgba(0,0,0,0.1);text-shadow:0 -1px 0 rgba(0,0,0,0.3);-webkit-transition-duration:.3s;-moz-transition-duration:.3s;cursor:pointer;font-family:"Helvetica Neue",Helvetica,Arial,"Lucida Grande",Verdana,"Bitstream Vera Sans",sans-serif}.woocommerce-message p a.button-primary:hover,.woocommerce-message p a.button-primary:active{background-color:#f0a000;border-color:#c87800;-webkit-transition-duration:.3s;outline:0;opacity:1}.woocommerce-message p a.skip,.woocommerce-message p a.docs{opacity:.5}.woocommerce-message .twitter-share-button{vertical-align:middle}#variable_product_options #message{margin:10px}#woocommerce_extensions{background:#f1f1f1 url(../images/icons/wc_icon.png) no-repeat 4px 4px;padding:4px 18px 4px 28px;-webkit-border-radius:4px;-moz-border-radius:4px;-o-border-radius:4px;border-radius:4px;width:220px;float:right;margin:9px 0 -40px;position:relative;text-shadow:0 1px 0 rgba(255,255,255,0.8);color:#555}#woocommerce_extensions a{color:#555}#woocommerce_extensions a.hide{color:#ccc;float:right;text-decoration:none;position:absolute;top:0;right:0;line-height:20px;padding:2px 8px;font-size:11px;text-align:center}#wc_get_started{position:relative;margin:1em 0 2em;padding:15px 15px 15px 90px;border:1px solid #d9d9d9;background:#f5f5f5 url(../images/gear.png) no-repeat 15px 15px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #fff;-moz-box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #fff;-webkit-box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #fff}#wc_get_started span{display:block;text-shadow:1px 1px 0 #fff;font-size:14px;line-height:22px;color:#595959}#wc_get_started span.main{margin-top:2px;font-weight:bold;font-size:16px}#wc_get_started .main-button{position:absolute;right:20px;top:27px}#wc_get_started p{margin:1em 0 .5em}#wc_get_started.mijireh{background:#5bc0de url(../images/mijireh-logo.png) no-repeat 15px 18px;border:1px solid #339bb9;padding:15px 15px 15px 152px;box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5),inset -1px -1px 0 rgba(255,255,255,0.5);-moz-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5),inset -1px -1px 0 rgba(255,255,255,0.5);-webkit-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5),inset -1px -1px 0 rgba(255,255,255,0.5)}#wc_get_started.mijireh span{color:#fff;text-shadow:0 1px 0 #4a94ac}#wc_get_started.mijireh span a{color:#fff}#wc_get_started.mijireh a.button{border-color:#fff;box-shadow:inset 1px 1px 0 rgba(255,255,255,0.1),inset -1px -1px 0 rgba(255,255,255,0.1),0 1px 3px #206d8b;-moz-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.1),inset -1px -1px 0 rgba(255,255,255,0.1),0 1px 3px #206d8b;-webkit-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.1),inset -1px -1px 0 rgba(255,255,255,0.1),0 1px 3px #206d8b}#wc_get_started.mijireh a.button-primary{background:#2b7e9f;border-color:#266e8b}#icon-woocommerce,.woocommerce_icon,.icon32-posts-product,.icon32-posts-shop_order,.icon32-posts-shop_coupon,.icon32-posts-product_variation{background-image:url(../images/icons/woocommerce-icons.png)!important;background-position:-11px -6px}.icon32-posts-product{background-position:-69px -6px!important}.icon32-posts-shop_order{background-position:-127px -6px!important}.icon32-attributes{background-position:-185px -6px!important}.icon32-woocommerce-settings{background-position:-359px -6px!important}.icon32-posts-shop_coupon{background-position:-475px -6px!important}.icon32-posts-product_variation{background-position:-533px -6px!important}.icon32-woocommerce-reports{background-position:-591px -6px!important}.icon32-woocommerce-status{background-position:-417px -6px!important}.icon32-woocommerce-delivery{background-position:-649px -6px!important}.icon32-woocommerce-compose{background-position:-708px -6px!important}.icon32-woocommerce-telephone{background-position:-766px -6px!important}.icon32-woocommerce-users{background-position:-824px -6px!important}.icon32-woocommerce-nav{background-position:-882px -6px!important}.wrap.woocommerce div.updated,.wrap.woocommerce div.error{margin-top:10px}mark.amount{background:transparent none;color:inherit}input.wc-error{color:#d8000c;background-color:#ffbaba}table.wc_status_table th{font-weight:bold}table.wc_status_table td{padding:5px 7px}table.wc_status_table td mark{background:transparent none}table.wc_status_table td mark.yes{color:green}table.wc_status_table td mark.no{color:#999}table.wc_status_table td mark.error{color:red}table.wc_status_table td ul{margin:0}#debug-report{font-family:monospace;display:none;width:100%;margin-bottom:20px;height:200px}.inline-edit-product.quick-edit-row .inline-edit-col-center,.inline-edit-product.quick-edit-row .inline-edit-col-right{float:right!important}#woocommerce-fields.inline-edit-col{clear:left}#woocommerce-fields.inline-edit-col label.featured,#woocommerce-fields.inline-edit-col label.manage_stock{margin-left:10px}#woocommerce-fields.inline-edit-col .dimensions div{display:block;margin:.2em 0}#woocommerce-fields.inline-edit-col .dimensions div span.title{display:block;float:left;width:5em}#woocommerce-fields.inline-edit-col .dimensions div span.input-text-wrap{display:block;margin-left:5em}#woocommerce-fields.inline-edit-col .text{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:99%;float:left;margin:1px 1% 1px 1px}#woocommerce-fields.inline-edit-col .length,#woocommerce-fields.inline-edit-col .width,#woocommerce-fields.inline-edit-col .height{width:32.33%}#woocommerce-fields-bulk.inline-edit-col label{clear:left}#woocommerce-fields-bulk.inline-edit-col .inline-edit-group label,#woocommerce-fields-bulk.inline-edit-col .inline-edit-group div.alignright{clear:none;width:49%;margin:.2em 0}#woocommerce-fields-bulk.inline-edit-col .regular_price,#woocommerce-fields-bulk.inline-edit-col .sale_price,#woocommerce-fields-bulk.inline-edit-col .weight,#woocommerce-fields-bulk.inline-edit-col .stock{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%}#woocommerce-fields-bulk.inline-edit-col .length,#woocommerce-fields-bulk.inline-edit-col .width,#woocommerce-fields-bulk.inline-edit-col .height{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:32%}#order_data{padding:0 10px 9px}#order_data .order_data_left{width:48%;float:left}#order_data .order_data_left h2{margin-top:11px;margin-bottom:0}#order_data .order_data_left p{padding:0!important}#order_data .order_data_left .form-field{float:left;width:48%;padding:0;margin:9px 0 0 0}#order_data .order_data_left .form-field label{display:block;padding:0 0 3px}#order_data .order_data_left .form-field input,#order_data .order_data_left .form-field textarea{width:100%}#order_data .order_data_left .form-field select{width:100%}#order_data .order_data_left .form-field #order_status_chzn .chzn-search{display:none}#order_data .order_data_left .form-field .chzn-container{width:100%!important}#order_data .order_data_left .form-field .date-picker-field{width:9em}#order_data .order_data_left .form-field .hour,#order_data .order_data_left .form-field .minute{width:2.5em}#order_data .order_data_left .form-field.last{float:right}#order_data .order_data_left .form-field-wide{width:100%;clear:both}#order_data .order_data_left .form-field-wide input,#order_data .order_data_left .form-field-wide textarea{width:100%}#order_data .order_data_left .form-field-wide select{width:100%}#order_data .order_data_right{width:48%;float:right}#order_data .order_data_right .order_data{overflow:hidden;zoom:1;width:49%;float:left}#order_data .order_data_right .order_data_alt{float:right}#order_data .order_data_right h2{margin-top:11px;margin-bottom:0}#order_data .order_data_right p{padding:0!important}#order_data .order_data_right p.none_set{color:#999}#order_data .order_data_right .form-field{float:left;width:50%;padding:0;margin:9px 0 0 0}#order_data .order_data_right .form-field label{display:block;padding:0 0 3px}#order_data .order_data_right .form-field input,#order_data .order_data_right .form-field select{width:95%}#order_data .order_data_right ._billing_company_field,#order_data .order_data_right ._shipping_company_field{clear:both;width:100%}#order_data .order_data_right ._billing_company_field input,#order_data .order_data_right ._shipping_company_field input{width:97.5%}#order_data .order_data_right ._billing_email_field{clear:left}#order_data .order_data_right div.edit_address{display:none;overflow:hidden;zoom:1}.order_actions{color:#999;font-size:11px;margin:0;overflow:hidden;zoom:1}.order_actions li{border-top:1px solid #fff;border-bottom:1px solid #ddd;padding:6px 0;margin:0;line-height:1.6em;float:left;width:50%;text-align:center}.order_actions li a{float:none;text-align:center}.order_actions li.wide{width:auto;float:none;clear:both;padding:6px;text-align:left}#woocommerce-order-items .inside{margin:0;padding:0;background:#fefefe}#woocommerce-order-items .buttons{float:left;padding-left:12px;vertical-align:top}#woocommerce-order-items .buttons .add_item_id,#woocommerce-order-items .buttons .chzn-container{margin-right:9px;vertical-align:top;float:left}#woocommerce-order-items .buttons .add_item_id .search-field input,#woocommerce-order-items .buttons .chzn-container .search-field input{min-width:100px}#woocommerce-order-items .buttons button{margin:2px 0 0 0}#woocommerce-order-items .buttons-alt{float:right;padding-right:12px}#woocommerce-order-items .add_meta{margin-left:0!important}#woocommerce-order-items h3 small{color:#999}#woocommerce-order-items .row-actions{float:right;padding:0;color:#999}#woocommerce-order-items .row-actions a{color:#999}#woocommerce-order-items .row-actions a.remove_row:hover{color:red}#woocommerce-order-downloads .buttons{float:left;padding:0;margin:0;vertical-align:top}#woocommerce-order-downloads .buttons .add_item_id,#woocommerce-order-downloads .buttons .chzn-container{width:400px!important;margin-right:9px;vertical-align:top;float:left}#woocommerce-order-downloads .buttons button{margin:2px 0 0 0}#woocommerce-order-downloads h3 small{color:#999}#woocommerce-order-totals h4{margin:0!important}#woocommerce-order-totals h4 a.add_tax_row{display:block;padding-bottom:10px}#woocommerce-order-totals .totals_group{border-top:1px solid white;border-bottom:1px solid #DDD;padding:10px 0 0}#woocommerce-order-totals .totals_group:first-child{border-top:0}#woocommerce-order-totals ul.totals{margin:6px 0 0;float:left}#woocommerce-order-totals ul.totals li{float:left;clear:both;width:100%;font-size:1.2em;font-weight:bold;line-height:1.2em;margin:0;padding:0 0 10px}#woocommerce-order-totals ul.totals li label{font-weight:normal;display:block;font-size:.8em;color:#333}#woocommerce-order-totals ul.totals li input{width:100%;vertical-align:middle;font-size:1em;margin:0!important;font-weight:normal;color:#555}#woocommerce-order-totals ul.totals li input.first{width:49%;float:left}#woocommerce-order-totals ul.totals li input.last{width:49%;float:right}#woocommerce-order-totals ul.totals li.left{float:left;width:49%;clear:left}#woocommerce-order-totals ul.totals li.left input{width:100%}#woocommerce-order-totals ul.totals li.right{float:right;width:49%;clear:none}#woocommerce-order-totals ul.totals li.right input{width:100%}#woocommerce-order-totals ul.totals .calculated{border-color:#ae8ca2;border-style:dotted}#woocommerce-order-totals #tax_rows{margin:6px 0 0}#woocommerce-order-totals .tax_row{margin:0 0 9px;border:1px solid #dfdfdf;background:#fff;padding:6px 6px 0;position:relative;opacity:.75}#woocommerce-order-totals .tax_row:hover,#woocommerce-order-totals .tax_row:focus{opacity:1}#woocommerce-order-totals .tax_row p{margin:0 0 6px}#woocommerce-order-totals .tax_row label{color:#555}#woocommerce-order-totals .tax_row label .checkbox{line-height:26px}#woocommerce-order-totals .tax_row p.first{float:left;width:49%;clear:left}#woocommerce-order-totals .tax_row p.first input,#woocommerce-order-totals .tax_row p.first select{width:100%}#woocommerce-order-totals .tax_row p.last{float:right;width:49%;clear:none}#woocommerce-order-totals .tax_row p.last input,#woocommerce-order-totals .tax_row p.last select{width:100%}#woocommerce-order-totals .tax_row a.delete_tax_row{padding:0;text-decoration:none;font-size:11px;line-height:16px;width:16px;height:16px;text-align:center;color:#999;float:right;background:#ddd;border:1px solid #eee;-webkit-box-shadow:0 0 0 1px #ccc;-webkit-border-radius:8px;-moz-border-radius:8px;-o-border-radius:8px;border-radius:8px;position:absolute;top:0;right:0;margin:-8px -8px 0 0;display:none}#woocommerce-order-totals .tax_row:hover a.delete_tax_row,#woocommerce-order-totals .tax_row:focus a.delete_tax_row{display:block}.woocommerce_order_items_wrapper{margin:0}.woocommerce_order_items_wrapper table.woocommerce_order_items{width:100%;background:#fff}.woocommerce_order_items_wrapper table.woocommerce_order_items thead th{background:#ececec;padding:8px;font-size:11px;text-align:left}.woocommerce_order_items_wrapper table.woocommerce_order_items td{padding:8px;text-align:left;line-height:26px;vertical-align:top;border-bottom:1px dotted #ececec}.woocommerce_order_items_wrapper table.woocommerce_order_items td input,.woocommerce_order_items_wrapper table.woocommerce_order_items td textarea{width:100%}.woocommerce_order_items_wrapper table.woocommerce_order_items td select{width:50%}.woocommerce_order_items_wrapper table.woocommerce_order_items td input,.woocommerce_order_items_wrapper table.woocommerce_order_items td textarea{font-size:14px;padding:4px;color:#555}.woocommerce_order_items_wrapper table.woocommerce_order_items .name{min-width:200px}.woocommerce_order_items_wrapper table.woocommerce_order_items .center,.woocommerce_order_items_wrapper table.woocommerce_order_items .variation-id{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class{text-align:right}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost label,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax label,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity label,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total label,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal label,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class label{display:block;white-space:nowrap;color:#999;font-size:.833em}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal label input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class label input{display:inline}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax input,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total input,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal input,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class input{width:60px;vertical-align:middle;text-align:right}.woocommerce_order_items_wrapper table.woocommerce_order_items .cost select,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax select,.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity select,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_total select,.woocommerce_order_items_wrapper table.woocommerce_order_items .line_subtotal select,.woocommerce_order_items_wrapper table.woocommerce_order_items .tax_class select{width:85px;height:26px;vertical-align:middle}.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .quantity input{text-align:center;width:40px}.woocommerce_order_items_wrapper table.woocommerce_order_items td.tax_class,.woocommerce_order_items_wrapper table.woocommerce_order_items th.tax_class{text-align:left}.woocommerce_order_items_wrapper table.woocommerce_order_items .calculated{border-color:#ae8ca2;border-style:dotted}.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta{width:100%}.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td{padding:1px 4px 1px 0;border:0}.woocommerce_order_items_wrapper table.woocommerce_order_items table.meta tr td input{min-width:100px}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb{text-align:center}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb a{display:block}.woocommerce_order_items_wrapper table.woocommerce_order_items .thumb img{padding:2px;margin:0;border:1px solid #dfdfdf;vertical-align:middle;width:46px;height:46px}.widefat .column-order_title time{display:block;color:#999;margin:3px 0}.widefat .column-order_actions a.button{float:left;margin:0 4px 2px 0}.widefat small.meta{display:block;color:#999;font-size:inherit;margin:3px 0}.widefat .column-total_cost,.widefat .column-order_date{width:9%}.widefat .column-order_status{width:90px;text-align:center}.widefat .column-order_status mark{display:block;text-align:center;white-space:nowrap;padding:0 2px;background:#999;border:1px solid #999;-webkit-box-shadow:inset 0 0 2px 1px rgba(255,255,255,0.5);-webkit-border-radius:4px;-moz-border-radius:4px;-o-border-radius:4px;border-radius:4px;margin:0;font-size:9px;text-transform:uppercase;color:#fff;font-weight:bold;text-shadow:0 1px 0 rgba(0,0,0,0.3)}.widefat .column-order_status mark.pending{background-color:#999;border-color:#999}.widefat .column-order_status mark.completed{background-color:#a0658b;border-color:#a0658b}.widefat .column-order_status mark.on-hold{background-color:#e66f00;border-color:#e66f00}.widefat .column-order_status mark.failed{background-color:red;border-color:red}.widefat .column-order_status mark.cancelled{background-color:#ccc;border-color:#ccc}.widefat .column-order_status mark.processing{background-color:#2184c2;border-color:#2184c2}.widefat .column-order_status mark.refunded{background-color:#ccc;border-color:#ccc}ul.subsubsub li.pending a{color:#e66f00}ul.subsubsub li.completed a{color:green}ul.subsubsub li.onhold a{color:red}ul.subsubsub li.cancelled a{color:#dfdfdf}ul.subsubsub li.refunded a{color:#ccc}ul.order_notes{padding:2px 0 0 0}ul.order_notes li .note_content{padding:10px;background:#efefef;position:relative}ul.order_notes li .note_content p{margin:0;padding:0}ul.order_notes li p.meta{padding:10px;color:#999;margin:0;font-size:11px}ul.order_notes li a.delete_note{color:#f00}ul.order_notes li .note_content:after{content:"";display:block;position:absolute;bottom:-15px;left:30px;width:0;height:0;border-width:15px 15px 0 0;border-style:solid;border-color:#efefef transparent}ul.order_notes li.customer-note .note_content{background:#d7cad2}ul.order_notes li.customer-note .note_content:after{border-color:#d7cad2 transparent}.add_note{border-top:1px solid #ddd;padding:10px}.add_note h4{margin-top:5px!important}.add_note input#add_order_note{width:50%}table.wp-list-table .column-thumb{width:52px;text-align:center;white-space:nowrap}table.wp-list-table .column-product_cat,table.wp-list-table .column-product_tag{width:11%!important}table.wp-list-table .column-sku,table.wp-list-table .column-product_cat,table.wp-list-table .column-product_tag,table.wp-list-table .column-is_in_stock,table.wp-list-table .column-price,table.wp-list-table .column-product_date{width:9%}table.wp-list-table .column-featured,table.wp-list-table .column-product_type{width:46px;text-align:left!important}table.wp-list-table .column-note{width:46px;text-align:center}table.wp-list-table .column-note img{margin:0 auto;padding-top:0!important}table.wp-list-table .column-order_comments{width:3em!important}table.wp-list-table .column-order_comments .post-com-count{float:left}table.wp-list-table th.column-note img,table.wp-list-table th.column-order_comments img{padding-top:1px!important}table.wp-list-table .manage-column.column-featured img,table.wp-list-table .manage-column.column-product_type img{padding-left:2px}table.wp-list-table img{margin:1px 2px}table.wp-list-table .column-thumb img{padding:2px;margin:0;border:1px solid #dfdfdf;vertical-align:middle;width:32px;height:32px}table.wp-list-table span.na{color:#999}table.wp-list-table .column-is_in_stock{text-align:left!important}table.wp-list-table span.product-type{width:16px;height:16px;margin:1px 2px;display:block;background:url(../images/product_types.png) no-repeat -16px 0}table.wp-list-table span.product-type.grouped{background:url(../images/product_types.png) no-repeat 0 0}table.wp-list-table span.product-type.external{background:url(../images/product_types.png) no-repeat -32px 0}table.wp-list-table span.product-type.variable{background:url(../images/product_types.png) no-repeat -48px 0}table.wp-list-table span.product-type.downloadable{background:url(../images/product_types.png) no-repeat -64px 0}table.wp-list-table span.product-type.virtual{background:url(../images/product_types.png) no-repeat -80px 0}table.wp-list-table mark.instock{font-weight:bold;color:green;background:transparent none;line-height:1}table.wp-list-table mark.outofstock{font-weight:bold;color:#a44;background:transparent none;line-height:1}ul.woocommerce_stats{overflow:hidden;zoom:1}ul.woocommerce_stats li{width:22%;padding:0 1.4%;float:left;font-size:.8em;border-left:1px solid #fff;border-right:1px solid #ececec;text-align:center}ul.woocommerce_stats li:first-child{border-left:0}ul.woocommerce_stats li:last-child{border-right:0}ul.woocommerce_stats strong{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-size:4em;line-height:1.2em;font-weight:normal;text-align:center;display:block}#woocommerce_dashboard_right_now p.sub,#woocommerce_dashboard_right_now .table,#woocommerce_dashboard_right_now .versions{margin:-12px}#woocommerce_dashboard_right_now .inside{font-size:12px;margin-bottom:0;padding-top:20px}#woocommerce_dashboard_right_now p.sub{padding:5px 0 15px;color:#8f8f8f;font-size:14px;position:absolute;top:-17px;left:15px}#woocommerce_dashboard_right_now .table{margin:0;padding:0;position:relative}#woocommerce_dashboard_right_now .table_shop_content{float:left;border-top:#ececec 1px solid;width:45%}#woocommerce_dashboard_right_now .table_orders{float:right;border-top:#ececec 1px solid;width:45%}#woocommerce_dashboard_right_now table td{padding:3px 0;white-space:nowrap}#woocommerce_dashboard_right_now table tr.first td{border-top:0}#woocommerce_dashboard_right_now td.b{padding-right:6px;text-align:right;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-size:14px;width:1%}#woocommerce_dashboard_right_now td.b a{font-size:18px}#woocommerce_dashboard_right_now td.b a:hover{color:#d54e21}#woocommerce_dashboard_right_now .t{font-size:12px;padding-right:12px;padding-top:6px;color:#777}#woocommerce_dashboard_right_now .t a{white-space:nowrap}#woocommerce_dashboard_right_now .on-hold a{color:red}#woocommerce_dashboard_right_now .pending a{color:#e66f00}#woocommerce_dashboard_right_now .completed a{color:green}#woocommerce_dashboard_right_now .versions{padding:6px 10px 12px;clear:both}#woocommerce_dashboard_right_now .versions .b{font-weight:bold}#woocommerce_dashboard_right_now a.button{float:right;clear:right;position:relative;top:-5px}#woocommerce_dashboard_sales h3 a{float:right;margin-left:8px}ul.recent-orders li,ul.stock_list li{overflow:hidden;zoom:1;border-bottom:#ececec 1px solid;padding:0 0 8px;margin:0 0 8px}ul.recent-orders li .order-status,ul.stock_list li .order-status{float:right}ul.recent-orders li small,ul.stock_list li small{color:#999}ul.recent-orders li .order-cost,ul.stock_list li .order-cost,ul.recent-orders li .order-customer,ul.stock_list li .order-customer{margin-left:8px}ul.recent-orders li .completed,ul.stock_list li .completed{color:green}ul.recent-orders li .on-hold,ul.stock_list li .on-hold{color:red}ul.recent-orders li .processing,ul.stock_list li .processing{color:#21759b}ul.recent-orders li .pending,ul.stock_list li .pending{color:#e66f00}ul.recent-orders li .refunded,ul.stock_list li .refunded,ul.recent-orders li .cancelled,ul.stock_list li .cancelled{color:#999}ul.recent-orders.stock_list small,ul.stock_list.stock_list small{float:right}ul.recent-orders.stock_list a,ul.stock_list.stock_list a{text-decoration:none}#woocommerce_dashboard_recent_reviews li{line-height:1.5em;margin-bottom:12px}#woocommerce_dashboard_recent_reviews h4.meta{line-height:1.4;margin:-0.2em 0 0 0;font-weight:normal;color:#999}#woocommerce_dashboard_recent_reviews blockquote{padding:0;margin:0}#woocommerce_dashboard_recent_reviews .avatar{float:left;margin:0 10px 5px 0}#woocommerce_dashboard_recent_reviews .star-rating{float:right;width:50px;height:10px;margin:3px 0 0 0;background:url(../images/admin-star.png) repeat-x left -10px}#woocommerce_dashboard_recent_reviews .star-rating span{background:url(../images/admin-star.png) repeat-x left 0;height:0;padding-top:10px;overflow:hidden;float:left}mark.notice{background:#fff;color:red;margin:0 0 0 10px}a.export_rates,a.import_rates{float:right;margin-left:3px;margin-top:-3px;margin-bottom:3px}.woocommerce table.shippingrows td,.woocommerce table.taxrows td,.woocommerce table.shippingrows th,.woocommerce table.taxrows th{vertical-align:top;line-height:25px;margin-bottom:9px}.woocommerce table.shippingrows a.remove,.woocommerce table.taxrows a.remove{margin:0!important}.woocommerce table.shippingrows .dupe,.woocommerce table.taxrows .dupe,.woocommerce table.shippingrows .remove,.woocommerce table.taxrows .remove{float:right;margin-left:9px}.woocommerce table.shippingrows tbody .check-column,.woocommerce table.taxrows tbody .check-column{padding-top:8px}.woocommerce table.shippingrows tbody .check-column input,.woocommerce table.taxrows tbody .check-column input{margin:0 0 0 8px}.woocommerce table.shippingrows input,.woocommerce table.taxrows input{width:auto}.woocommerce table.shippingrows td.apply_to_shipping,.woocommerce table.taxrows td.apply_to_shipping{padding-top:8px}.woocommerce table.shippingrows td.country,.woocommerce table.taxrows td.country{overflow:visible!important}.woocommerce table.shippingrows td.country p,.woocommerce table.taxrows td.country p{line-height:25px;margin:0;color:#666}.woocommerce table.shippingrows td.country button.edit_options,.woocommerce table.taxrows td.country button.edit_options{float:right}.woocommerce table.shippingrows td.country select,.woocommerce table.taxrows td.country select{margin:9px 0;width:100%;height:160px!important}.woocommerce table.shippingrows td.country p.edit,.woocommerce table.taxrows td.country p.edit,.woocommerce table.shippingrows td.country .options,.woocommerce table.taxrows td.country .options{min-width:400px}.woocommerce table.shippingrows td.country .chzn-container,.woocommerce table.taxrows td.country .chzn-container{width:100%!important;margin:9px 0 5px}.woocommerce table.shippingrows td.country .chzn-container .chzn-drop,.woocommerce table.taxrows td.country .chzn-container .chzn-drop{width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.woocommerce table.shippingrows td.country .chzn-container .search-field input,.woocommerce table.taxrows td.country .chzn-container .search-field input{width:150px!important}.woocommerce table.shippingrows td.local_country,.woocommerce table.taxrows td.local_country{overflow:visible!important;width:400px!important}.woocommerce table.shippingrows td.local_country select,.woocommerce table.taxrows td.local_country select{width:400px!important;margin-bottom:3px}.woocommerce table.shippingrows td.local_country textarea,.woocommerce table.taxrows td.local_country textarea{height:60px;width:400px;font-size:13px;line-height:16px;display:block}table.wc_gateways,table.wc_shipping{position:relative}table.wc_gateways td,table.wc_shipping td{vertical-align:middle;cursor:move;padding:4px 7px 2px}table.wc_gateways td p,table.wc_shipping td p{margin:0 0 2px}table.wc_gateways .radio,table.wc_shipping .radio{text-align:center}img.help_tip{vertical-align:middle;margin:0 0 0 9px}.postbox img.help_tip{margin-top:-4px}.woocommerce table.form-table{margin:0}.woocommerce table.form-table textarea.input-text{height:100%;min-width:150px}.woocommerce table.form-table textarea.wide-input{width:100%}.woocommerce table.form-table img.help_tip{padding:0;margin:-4px 0 0 5px;vertical-align:middle;cursor:help;line-height:1}.woocommerce table.form-table fieldset img.help_tip{margin:-3px 0 0 5px}.woocommerce table.form-table .color_box{border:1px solid #ccc;box-shadow:1px 1px 3px rgba(0,0,0,0.2);-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.2);-moz-box-shadow:1px 1px 3px rgba(0,0,0,0.2);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;padding:4px 6px;float:left;width:80px;margin:0 10px 0 0}.woocommerce table.form-table .color_box strong{text-align:left;display:block;padding:0 0 2px;font-size:.92em}.woocommerce table.form-table .color_box strong img{float:right;margin:1px 0 0 0}.woocommerce table.form-table .color_box input{width:100%;margin:0;font-family:monospace;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.woocommerce table.form-table .color_box .colorpickdiv{z-index:100;background:#eee;border:1px solid #ccc;position:absolute;display:none}.woocommerce table.form-table .color_box_clear{display:block;clear:both;padding-bottom:10px}.woocommerce #tabs-wrap table a.remove{margin-left:4px}.woocommerce #tabs-wrap table p{margin:0 0 4px!important;overflow:hidden;zoom:1}.woocommerce #tabs-wrap table p a.add{float:left}#product_variation-parent #parent_id{width:100%}#woocommerce-product-data ul.product_data_tabs,.woocommerce ul.tabs{background:#eaeaea;padding:3px 9px 0;margin:0;overflow:hidden;zoom:1;line-height:1em;-webkit-box-shadow:inset 0 -1px 0 0 #d5d5d5;-moz-box-shadow:inset 0 -1px 0 0 x #d5d5d5;box-shadow:inset 0 -1px 0 0 #d5d5d5}#woocommerce-product-data ul.product_data_tabs li,.woocommerce ul.tabs li{float:left;padding:0;margin:0 5px 0 0}#woocommerce-product-data ul.product_data_tabs li a,.woocommerce ul.tabs li a{padding:0;margin:0;border:0;border:1px solid #d5d5d5;border-bottom:0;float:left;padding:9px 9px;background:#ececec;text-decoration:none;color:#555;-moz-border-radius-topleft:3px;-moz-border-radius-topright:3px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;-webkit-box-shadow:inset 0 1px 0 1px rgba(255,255,255,0.5);-moz-box-shadow:inset 0 1px 0 1px rgba(255,255,255,0.5);box-shadow:inset 0 1px 0 1px rgba(255,255,255,0.5)}#woocommerce-product-data ul.product_data_tabs li.active a,.woocommerce ul.tabs li.active a{background:#f8f8f8;color:#555;background-image:linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-moz-linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-webkit-linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-ms-linear-gradient(bottom,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left bottom,left top,color-stop(0,#fff),color-stop(1,#f8f8f8))}#woocommerce-product-data ul.product_data_tabs li.general_options a,#woocommerce-product-data ul.product_data_tabs li.tax_options a,#woocommerce-product-data ul.product_data_tabs li.inventory_options a,#woocommerce-product-data ul.product_data_tabs li.related_product_options a,#woocommerce-product-data ul.product_data_tabs li.attribute_options a,#woocommerce-product-data ul.product_data_tabs li.grouping_options a,#woocommerce-product-data ul.product_data_tabs li.variation_options a{padding:9px 9px 9px 34px;line-height:16px;border-bottom:1px solid #d5d5d5;text-shadow:0 1px 1px #fff;color:#555;background:#ececec url(../images/icons/wc-tab-icons.png) no-repeat 9px 9px}#woocommerce-product-data ul.product_data_tabs li.general_options a{background-position:9px 9px}#woocommerce-product-data ul.product_data_tabs li.tax_options a{background-position:9px -51px}#woocommerce-product-data ul.product_data_tabs li.inventory_options a{background-position:9px -111px}#woocommerce-product-data ul.product_data_tabs li.related_product_options a{background-position:9px -171px}#woocommerce-product-data ul.product_data_tabs li.attribute_options a{background-position:9px -231px}#woocommerce-product-data ul.product_data_tabs li.grouping_options a{background-position:9px -291px}#woocommerce-product-data ul.product_data_tabs li.variation_options a{background-position:9px -411px}#woocommerce-product-data ul.product_data_tabs li.active a{background-color:#f8f8f8;border-bottom:1px solid #f8f8f8}#woocommerce-product-data .inside,#woocommerce-product-type-options .inside,#woocommerce-order-data .inside,#woocommerce-product-type .inside,#woocommerce-order-downloads .inside,#woocommerce-coupon-data .inside{padding:0;margin:0}.woocommerce_options_panel,.panel{padding:9px 9px 9px 9px;color:#555}.woocommerce_page_settings .woocommerce_options_panel,.panel,#woocommerce-product-type .woocommerce_options_panel{padding:0}#woocommerce-product-type-options .panel,#woocommerce-product-specs .inside{padding:9px;margin:0}.woocommerce_options_panel p,#woocommerce-product-type-options .panel p{margin:0 0 9px;font-size:12px;padding:5px 9px;line-height:24px}.woocommerce_options_panel p:after,#woocommerce-product-type-options .panel p:after{content:".";display:block;height:0;clear:both;visibility:hidden}.woocommerce_options_panel p{margin:9px 0 9px}.woocommerce_options_panel label{float:left;width:150px;padding:0}.woocommerce_options_panel label .req{font-weight:bold;font-style:normal;color:red}.woocommerce_options_panel .description{padding:0;margin:0 0 0 7px}.woocommerce_options_panel .description-block{margin-left:0;display:block}.woocommerce_options_panel textarea,.woocommerce_options_panel input,.woocommerce_options_panel select{margin:0}.woocommerce_options_panel textarea{vertical-align:top;height:3.5em;line-height:1.5em}.woocommerce_options_panel input{width:50%;float:left}.woocommerce_options_panel input.button{width:auto;margin-left:8px}.woocommerce_options_panel .checkbox,table.woocommerce_variable_attributes .checkbox{vertical-align:middle;margin:7px 0;width:auto}.woocommerce_options_panel select{float:left}.woocommerce_options_panel .short{width:20%}.woocommerce_options_panel .sized{width:auto!important;margin-right:6px}.woocommerce_options_panel .options_group{border-top:1px solid white;border-bottom:1px solid #dfdfdf}.woocommerce_options_panel .options_group:first-child{border-top:0}#woocommerce-product-data input.dp-applied{float:left}#grouped_product_options,#virtual_product_options,#simple_product_options{padding:12px;font-style:italic;color:#666}.wc-metaboxes-wrapper .expand_all,.wc-metaboxes-wrapper .close_all{float:right;margin-left:9px;line-height:22px}.wc-metaboxes-wrapper .expand_all{padding-left:14px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAI0lEQVQYV2PcvXv3fwY8gJEoBa6urozYDAFpBpswGBTg8yYA3kYtiYVhDhIAAAAASUVORK5CYII=) no-repeat left}.wc-metaboxes-wrapper .close_all{padding-left:14px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAHUlEQVQYV2NkIAAYd+/e/R+fGsIKCFpBUAHt3QAASf0MyQbFJwoAAAAASUVORK5CYII=) no-repeat left}.wc-metaboxes-wrapper .toolbar{margin:0!important;border-top:1px solid white;border-bottom:1px solid #dfdfdf;padding:9px 12px!important}.wc-metaboxes-wrapper p.toolbar{overflow:hidden;zoom:1}.wc-metaboxes-wrapper select.attribute_taxonomy,.wc-metaboxes-wrapper button.add_attribute,.wc-metaboxes-wrapper button.add_variable_attribute,.wc-metaboxes-wrapper .fr{float:right;margin:0 0 0 6px}.wc-metaboxes-wrapper .wc-metaboxes{border-bottom:1px solid #dfdfdf;padding:0 12px 0}.wc-metaboxes-wrapper .wc-metabox-sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;margin-bottom:9px;border-width:1px;border-style:dashed}.wc-metaboxes-wrapper .wc-metabox{background:#ececec;border:1px solid #ececec;margin:9px 0!important;-moz-border-radius-topleft:3px;-moz-border-radius-topright:3px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px}.wc-metaboxes-wrapper .wc-metabox.closed{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.wc-metaboxes-wrapper .wc-metabox h3{margin:0!important;padding:6px!important;font-size:1em!important;overflow:hidden;zoom:1;cursor:move}.wc-metaboxes-wrapper .wc-metabox h3 button{float:right}.wc-metaboxes-wrapper .wc-metabox h3 strong{font-weight:normal;line-height:24px}.wc-metaboxes-wrapper .wc-metabox h3 select{font-family:sans-serif}.wc-metaboxes-wrapper .wc-metabox h3 .handlediv{background-position:6px 5px!important;display:none;height:24px}.wc-metaboxes-wrapper .wc-metabox h3.fixed{cursor:pointer!important}.wc-metaboxes-wrapper .wc-metabox:hover h3 .handlediv{display:block}.wc-metaboxes-wrapper .wc-metabox table{width:100%;position:relative;background:#fff;padding:3px}.wc-metaboxes-wrapper .wc-metabox table td{text-align:left;padding:6px 6px;vertical-align:top;border:0}.wc-metaboxes-wrapper .wc-metabox table td label{text-align:left;display:block;line-height:21px}.wc-metaboxes-wrapper .wc-metabox table td input{float:left;min-width:200px}.wc-metaboxes-wrapper .wc-metabox table td input,.wc-metaboxes-wrapper .wc-metabox table td textarea{width:100%;margin:0;display:block;font-size:14px;padding:4px;color:#555}.wc-metaboxes-wrapper .wc-metabox table td select,.wc-metaboxes-wrapper .wc-metabox table td .chzn-container{width:100%!important}.wc-metaboxes-wrapper .wc-metabox table td input.short{width:200px}.wc-metaboxes-wrapper .wc-metabox table td input.checkbox{width:auto;min-width:inherit;vertical-align:middle;display:inline;float:none}.wc-metaboxes-wrapper .wc-metabox table td.attribute_name{width:200px}.wc-metaboxes-wrapper .wc-metabox table .plus,.wc-metaboxes-wrapper .wc-metabox table .minus{margin-top:6px}.wc-metaboxes-wrapper .wc-metabox table .fl{float:left}.wc-metaboxes-wrapper .wc-metabox table .fr{float:right}.wc-metaboxes-wrapper .plus{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAARklEQVQYGWP8//8/AzGACV3Rnj17/oMwujiGQnQFMD7RChlBbsRmFcwkEO3i4sJImonIumGmg0xBFifaRKIVgj2DbAUuNgCfThpracSKqwAAAABJRU5ErkJggg==) no-repeat 7px 5px}.wc-metaboxes-wrapper .minus{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAKUlEQVQYlWP8//8/Az7AhFeWGAUsDAwMDHv27MFqj4uLCyNBExhp70gAohwKC5KJ+HQAAAAASUVORK5CYII=) no-repeat 7px 6px}#variable_product_options p.toolbar strong{margin:0 6px 0 0;float:left;line-height:23px}#variable_product_options p.toolbar .button,#variable_product_options p.toolbar select{margin:0 6px 0 0;float:left}#variable_product_options p.toolbar a.set{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAARklEQVQYGWP8//8/AzGACV3Rnj17/oMwujiGQnQFMD7RChlBbsRmFcwkEO3i4sJImonIumGmg0xBFifaRKIVgj2DbAUuNgCfThpracSKqwAAAABJRU5ErkJggg==) no-repeat 7px 5px}#variable_product_options p.toolbar a.toggle{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAWUlEQVQYGY3QAQrAIAgFUB07mrfWu7kc+2JRsiA0fJnE7k5m5tQsEWFS1WGduh3mahpNLx3hOs4WAr2zfU8mRBGxorAJ4wAU+boS1g41x4UbScQdQJ3/fvgDtStDiI0qoDcAAAAASUVORK5CYII=) no-repeat 7px 5px}#variable_product_options p.toolbar a.delete_variations{padding-left:20px;background:#fefefe url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAKUlEQVQYlWP8//8/Az7AhFeWGAUsDAwMDHv27MFqj4uLCyNBExhp70gAohwKC5KJ+HQAAAAASUVORK5CYII=) no-repeat 7px 6px}#variable_product_options p.toolbar .add_variation,#variable_product_options p.toolbar .link_all_variations,#variable_product_options p.toolbar .fr{float:right;margin:0 0 0 6px}#variable_product_options .woocommerce_variation table{background:#f5f5f5;padding:6px}#variable_product_options .woocommerce_variation table td input{min-width:inherit!important}#variable_product_options .woocommerce_variation table td.dimensions_field input{width:32%;margin-right:2%}#variable_product_options .woocommerce_variation table td.dimensions_field .last{margin-right:0}#variable_product_options .woocommerce_variation table td.options{width:150px}#variable_product_options .woocommerce_variation table td.options label{margin-bottom:6px}#variable_product_options .woocommerce_variation table td.data{padding:0 0 0 12px}#variable_product_options .woocommerce_variation table td.data table{width:100%;padding:0 12px 0 12px;background:#fff;border:1px solid #dfdfdf;-moz-border-radius:3px;-webkit-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#variable_product_options .woocommerce_variation table td.data table td{width:50%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#variable_product_options .woocommerce_variation table td.data table:before{content:"";display:block;position:absolute;top:33px;left:0;margin:0 0 0 -1px;border:7px solid #dfdfdf;border-color:transparent transparent transparent #dfdfdf}#variable_product_options .woocommerce_variation table td.data table:after{content:"";display:block;position:absolute;top:34px;left:0;margin:0 0 0 -1px;border:6px solid #f5f5f5;border-color:transparent transparent transparent #f5f5f5}#variable_product_options .woocommerce_variation table td.upload_image{white-space:nowrap;width:75px}#variable_product_options .woocommerce_variation table td.upload_image img{float:none;width:73px;border:1px solid #dfdfdf}#variable_product_options .woocommerce_variation table td.upload_image .button{margin:0;padding:4px 10px;width:auto;float:none;vertical-align:middle}#variable_product_options .woocommerce_variation table td.upload_image .upload_image_button{display:block;position:relative}#variable_product_options .woocommerce_variation table td.upload_image .upload_image_button .overlay{display:none;width:75px;height:75px;position:absolute;top:0;left:0;margin:0;padding:0;opacity:.5;background:#eee url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAXklEQVQYGW2OUQrAMAhDFy8+dnKnwiuh2I+aJulDZebDkfSie1b28Q7EXWrfvSm60RQnkQUC8ja7owpmL6d4GdDZ0cNNHyIhZEj4QYCxze6orsluAh8AnR0xKPR07weXJi8JGd3qqwAAAABJRU5ErkJggg==) no-repeat center center}#variable_product_options .woocommerce_variation table td.upload_image .upload_image_button:hover .overlay{display:block}#variable_product_options .woocommerce_variation table td.upload_image .upload_image_button.remove .overlay{background:#eee url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAWElEQVQYGY2OUQ6AMAxCZdm9jSev65K3YKNm+6EFBlVEHDxJJ3Pi0C72xlBNyTs3jU7wEUTTIB51GCp2CL8HLpHEdaOLb/N2dfuq9NT0zOo/M9q6EaImsd/uViMLVuD4KAAAAABJRU5ErkJggg==) no-repeat center center}#variable_product_options .woocommerce_variation table td .file_path_field{position:relative;padding-right:40px}#variable_product_options .woocommerce_variation table td .file_path_field .upload_file_button{position:absolute;right:0;width:30px;padding:5px 0;margin:1px 0 0;text-align:center}.tips{cursor:help;text-decoration:none}img.tips{padding:5px 0 0 0}#tiptip_holder{display:none;position:absolute;top:0;left:0;z-index:99999}#tiptip_holder.tip_top{padding-bottom:5px}#tiptip_holder.tip_bottom{padding-top:5px}#tiptip_holder.tip_right{padding-left:5px}#tiptip_holder.tip_left{padding-right:5px}#tiptip_content{font-size:11px;color:#fff;padding:4px 8px;background:#a2678c;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;box-shadow:1px 1px 3px rgba(0,0,0,0.1);-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:1px 1px 3px rgba(0,0,0,0.1)}#tiptip_content code{background:#855c76;padding:1px}#tiptip_arrow,#tiptip_arrow_inner{position:absolute;border-color:transparent;border-style:solid;border-width:6px;height:0;width:0}#tiptip_holder.tip_top #tiptip_arrow_inner{margin-top:-7px;margin-left:-6px;border-top-color:#a2678c}#tiptip_holder.tip_bottom #tiptip_arrow_inner{margin-top:-5px;margin-left:-6px;border-bottom-color:#a2678c}#tiptip_holder.tip_right #tiptip_arrow_inner{margin-top:-6px;margin-left:-5px;border-right-color:#a2678c}#tiptip_holder.tip_left #tiptip_arrow_inner{margin-top:-6px;margin-left:-7px;border-left-color:#a2678c}img.ui-datepicker-trigger{vertical-align:middle;margin-top:-1px;cursor:pointer}.woocommerce_options_panel img.ui-datepicker-trigger,.wc-metabox-content img.ui-datepicker-trigger{float:left;margin-right:8px;margin-top:4px;margin-left:4px}#ui-datepicker-div{display:none}.woocommerce-reports-wrap{margin-left:300px;padding-top:18px}.woocommerce-reports-wrap.halved{margin:0;overflow:hidden;zoom:1}.woocommerce-reports-wrap .postbox h3{cursor:default!important}.woocommerce-reports-wrap .postbox .stat{font-size:1.5em!important;font-weight:bold;text-align:center}.woocommerce-reports-wrap .postbox .chart{padding:16px}.woocommerce-reports-wrap .woocommerce-reports-main{float:left;min-width:100%}.woocommerce-reports-wrap .woocommerce-reports-sidebar{display:inline;width:281px;margin-left:-300px;clear:both;float:left}.woocommerce-reports-wrap .woocommerce-reports-left{width:49.5%;float:left}.woocommerce-reports-wrap .woocommerce-reports-right{width:49.5%;float:right}#tooltip{color:#fff;font-size:12px;-moz-border-radius:4px;-webkit-border-radius:4px;-o-border-radius:4px;-khtml-border-radius:4px;border-radius:4px;opacity:.80}table.bar_chart{width:100%}table.bar_chart thead th{text-align:left;color:#ccc;padding:6px 0}table.bar_chart tbody th{padding:6px 0;width:25%;text-align:left!important;font-weight:normal!important;border-bottom:1px solid #fee}table.bar_chart tbody td{text-align:right;line-height:24px;padding:6px 6px 6px 0;border-bottom:1px solid #fee}table.bar_chart tbody td span{color:#8a4b75;display:block}table.bar_chart tbody td span.alt{color:#47a03e;margin-top:6px}table.bar_chart tbody td.bars{position:relative;text-align:left;padding:6px 6px 6px 0;border-bottom:1px solid #fee}table.bar_chart tbody td.bars span,table.bar_chart tbody td.bars a{text-decoration:none;clear:both;background:#8a4b75;float:left;display:block;line-height:24px;height:24px;-moz-border-radius:3px;-webkit-border-radius:3px;-o-border-radius:3px;-khtml-border-radius:3px;border-radius:3px}table.bar_chart tbody td.bars span.alt{clear:both;background:#47a03e}table.bar_chart tbody td.bars span.alt span{margin:0;color:#c5dec2!important;text-shadow:0 1px 0 #47a03e;background:transparent}#woocommerce_allowed_countries_chzn .chzn-search,#woocommerce_file_download_method_chzn .chzn-search{display:none}.chzn-container-single .chzn-single{height:24px;line-height:25px}.chzn-container-single .chzn-single div b{background:url('../images/chosen-sprite.png') no-repeat 0 0!important}.chzn-container-active .chzn-single-with-drop div b{background-position:-18px 1px!important}.chzn-container-single .chzn-search input{line-height:13px;width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.chzn-container .chzn-drop{width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.chzn-container-multi .chzn-choices .search-field input{height:21px!important}.woocommerce_options_panel .chzn-container-multi{width:50%!important;float:left}.woocommerce_options_panel .chzn-container-multi .search-field{min-width:50%}.woocommerce_options_panel .chzn-container-multi .search-field input{min-width:100%}.woocommerce-checkout .form-row .chzn-container{width:100%!important}.woocommerce-checkout .form-row .chzn-container-single .chzn-single{height:28px;line-height:29px}.woocommerce-checkout .form-row .chzn-container-single .chzn-single div b{background:url('../images/chosen-sprite.png') no-repeat 0 3px!important}.woocommerce-checkout .form-row .chzn-container-active .chzn-single-with-drop div b{background-position:-18px 4px!important}.woocommerce-checkout .form-row .chzn-container-single .chzn-search input{line-height:13px;width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.woocommerce-checkout .form-row .chzn-container .chzn-drop{width:100%!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.chzn-container{font-size:13px;position:relative;display:inline-block;zoom:1;*display:inline}.chzn-container .chzn-drop{background:#fff;border:1px solid #aaa;border-top:0;position:absolute;top:29px;left:0;-webkit-box-shadow:0 4px 5px rgba(0,0,0,0.15);-moz-box-shadow:0 4px 5px rgba(0,0,0,0.15);-o-box-shadow:0 4px 5px rgba(0,0,0,0.15);box-shadow:0 4px 5px rgba(0,0,0,0.15);z-index:999}.chzn-container-single .chzn-single{background-color:#fff;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff',endColorstr='#eeeeee',GradientType=0);background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(20%,#fff),color-stop(50%,#f6f6f6),color-stop(52%,#eee),color-stop(100%,#f4f4f4));background-image:-webkit-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-image:-moz-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-image:-o-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-image:-ms-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-image:linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #aaa;-webkit-box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,0.1);-moz-box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,0.1);box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,0.1);display:block;overflow:hidden;white-space:nowrap;position:relative;padding:0 0 0 8px;color:#444;text-decoration:none}.chzn-container-single .chzn-default{color:#999}.chzn-container-single .chzn-single span{margin-right:26px;display:block;overflow:hidden;white-space:nowrap;-o-text-overflow:ellipsis;-ms-text-overflow:ellipsis;text-overflow:ellipsis}.chzn-container-single .chzn-single abbr{display:block;position:absolute;right:26px;top:6px;width:12px;height:13px;font-size:1px;background:url('../images/chosen-sprite.png') right top no-repeat}.chzn-container-single .chzn-single abbr:hover{background-position:right -11px}.chzn-container-single .chzn-single div{position:absolute;right:0;top:0;display:block;height:100%;width:18px}.chzn-container-single .chzn-single div b{background:url('../images/chosen-sprite.png') no-repeat 0 0;display:block;width:100%;height:100%}.chzn-container-single .chzn-search{padding:3px 4px;position:relative;margin:0;white-space:nowrap;z-index:1010}.chzn-container-single .chzn-search input{background:#fff url('../images/chosen-sprite.png') no-repeat 100% -22px;background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-webkit-gradient(linear,0% 0,0% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-webkit-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-moz-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-o-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat 100% -22px,-ms-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat 100% -22px,linear-gradient(top,#eee 1%,#fff 15%);margin:1px 0;padding:4px 20px 4px 5px;outline:0;border:1px solid #aaa;font-family:sans-serif;font-size:1em}.chzn-container-single .chzn-drop{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box}.chzn-container-single-nosearch .chzn-search input{position:absolute;left:-9000px}.chzn-container-multi .chzn-choices{background-color:#fff;background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background-image:-webkit-linear-gradient(top,#eee 1%,#fff 15%);background-image:-moz-linear-gradient(top,#eee 1%,#fff 15%);background-image:-o-linear-gradient(top,#eee 1%,#fff 15%);background-image:-ms-linear-gradient(top,#eee 1%,#fff 15%);background-image:linear-gradient(top,#eee 1%,#fff 15%);border:1px solid #aaa;margin:0;padding:0;cursor:text;overflow:hidden;height:auto!important;height:1%;position:relative}.chzn-container-multi .chzn-choices li{float:left;list-style:none}.chzn-container-multi .chzn-choices .search-field{white-space:nowrap;margin:0;padding:0}.chzn-container-multi .chzn-choices .search-field input{color:#666;background:transparent!important;border:0!important;font-family:sans-serif;font-size:100%;height:15px;padding:5px;margin:1px 0;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;-o-box-shadow:none;box-shadow:none}.chzn-container-multi .chzn-choices .search-field .default{color:#999}.chzn-container-multi .chzn-choices .search-choice{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-background-clip:padding;-webkit-background-clip:padding-box;background-clip:padding-box;background-color:#e4e4e4;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#f4f4f4',endColorstr='#eeeeee',GradientType=0);background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-ms-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);-webkit-box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,0.05);-moz-box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,0.05);box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,0.05);color:#333;border:1px solid #aaa;line-height:13px;padding:3px 20px 3px 5px;margin:3px 0 3px 5px;position:relative;cursor:default}.chzn-container-multi .chzn-choices .search-choice-focus{background:#d4d4d4}.chzn-container-multi .chzn-choices .search-choice .search-choice-close{display:block;position:absolute;right:3px;top:4px;width:12px;height:13px;font-size:1px;background:url('../images/chosen-sprite.png') right top no-repeat}.chzn-container-multi .chzn-choices .search-choice .search-choice-close:hover{background-position:right -11px}.chzn-container-multi .chzn-choices .search-choice-focus .search-choice-close{background-position:right -11px}.chzn-container .chzn-results{margin:0 4px 4px 0;max-height:240px;padding:0 0 0 4px;position:relative;overflow-x:hidden;overflow-y:auto}.chzn-container-multi .chzn-results{margin:-1px 0 0;padding:0}.chzn-container .chzn-results li{display:none;line-height:15px;padding:5px 6px;margin:0;list-style:none}.chzn-container .chzn-results .active-result{cursor:pointer;display:list-item}.chzn-container .chzn-results .highlighted{background-color:#3875d7;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#3875d7',endColorstr='#2a62bc',GradientType=0);background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(20%,#3875d7),color-stop(90%,#2a62bc));background-image:-webkit-linear-gradient(top,#3875d7 20%,#2a62bc 90%);background-image:-moz-linear-gradient(top,#3875d7 20%,#2a62bc 90%);background-image:-o-linear-gradient(top,#3875d7 20%,#2a62bc 90%);background-image:-ms-linear-gradient(top,#3875d7 20%,#2a62bc 90%);background-image:linear-gradient(top,#3875d7 20%,#2a62bc 90%);color:#fff}.chzn-container .chzn-results li em{background:#feffde;font-style:normal}.chzn-container .chzn-results .highlighted em{background:transparent}.chzn-container .chzn-results .no-results{background:#f4f4f4;display:list-item}.chzn-container .chzn-results .group-result{cursor:default;color:#999;font-weight:bold}.chzn-container .chzn-results .group-option{padding-left:15px}.chzn-container-multi .chzn-drop .result-selected{display:none}.chzn-container .chzn-results-scroll{background:white;margin:0 4px;position:absolute;text-align:center;width:321px;z-index:1}.chzn-container .chzn-results-scroll span{display:inline-block;height:17px;text-indent:-5000px;width:9px}.chzn-container .chzn-results-scroll-down{bottom:0}.chzn-container .chzn-results-scroll-down span{background:url('../images/chosen-sprite.png') no-repeat -4px -3px}.chzn-container .chzn-results-scroll-up span{background:url('../images/chosen-sprite.png') no-repeat -22px -3px}.chzn-container-active .chzn-single{-webkit-box-shadow:0 0 5px rgba(0,0,0,0.3);-moz-box-shadow:0 0 5px rgba(0,0,0,0.3);-o-box-shadow:0 0 5px rgba(0,0,0,0.3);box-shadow:0 0 5px rgba(0,0,0,0.3);border:1px solid #5897fb}.chzn-container-active .chzn-single-with-drop{border:1px solid #aaa;-webkit-box-shadow:0 1px 0 #fff inset;-moz-box-shadow:0 1px 0 #fff inset;-o-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background-color:#eee;filter:progid:dximagetransform.microsoft.gradient(startColorstr='#eeeeee',endColorstr='#ffffff',GradientType=0);background-image:-webkit-gradient(linear,0% 0,0% 100%,color-stop(20%,#eee),color-stop(80%,#fff));background-image:-webkit-linear-gradient(top,#eee 20%,#fff 80%);background-image:-moz-linear-gradient(top,#eee 20%,#fff 80%);background-image:-o-linear-gradient(top,#eee 20%,#fff 80%);background-image:-ms-linear-gradient(top,#eee 20%,#fff 80%);background-image:linear-gradient(top,#eee 20%,#fff 80%);-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomleft:0;-moz-border-radius-bottomright:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.chzn-container-active .chzn-single-with-drop div{background:transparent;border-left:none}.chzn-container-active .chzn-single-with-drop div b{background-position:-18px 1px}.chzn-container-active .chzn-choices{-webkit-box-shadow:0 0 5px rgba(0,0,0,0.3);-moz-box-shadow:0 0 5px rgba(0,0,0,0.3);-o-box-shadow:0 0 5px rgba(0,0,0,0.3);box-shadow:0 0 5px rgba(0,0,0,0.3);border:1px solid #5897fb}.chzn-container-active .chzn-choices .search-field input{color:#111!important}.chzn-disabled{cursor:default;opacity:.5!important}.chzn-disabled .chzn-single{cursor:default}.chzn-disabled .chzn-choices .search-choice .search-choice-close{cursor:default}.chzn-rtl{text-align:right}.chzn-rtl .chzn-single{padding:0 8px 0 0;overflow:visible}.chzn-rtl .chzn-single span{margin-left:26px;margin-right:0;direction:rtl}.chzn-rtl .chzn-single div{left:3px;right:auto}.chzn-rtl .chzn-single abbr{left:26px;right:auto}.chzn-rtl .chzn-choices .search-field input{direction:rtl}.chzn-rtl .chzn-choices li{float:right}.chzn-rtl .chzn-choices .search-choice{padding:3px 5px 3px 19px;margin:3px 5px 3px 0}.chzn-rtl .chzn-choices .search-choice .search-choice-close{left:4px;right:auto;background-position:right top}.chzn-rtl.chzn-container-single .chzn-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chzn-rtl .chzn-results .group-option{padding-left:0;padding-right:15px}.chzn-rtl.chzn-container-active .chzn-single-with-drop div{border-right:0}.chzn-rtl .chzn-search input{background:#fff url('../images/chosen-sprite.png') no-repeat -38px -22px;background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-webkit-gradient(linear,0% 0,0% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-webkit-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-moz-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-o-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat -38px -22px,-ms-linear-gradient(top,#eee 1%,#fff 15%);background:url('../images/chosen-sprite.png') no-repeat -38px -22px,linear-gradient(top,#eee 1%,#fff 15%);padding:4px 5px 4px 20px;direction:rtl} \ No newline at end of file diff --git a/assets/css/admin.less b/assets/css/admin.less index a41468c04ce..6a3dc214776 100644 --- a/assets/css/admin.less +++ b/assets/css/admin.less @@ -116,6 +116,12 @@ #wc_get_started .main-button { position: absolute; right: 20px; top: 27px; } #wc_get_started p { margin: 1em 0 .5em; } +#wc_get_started.mijireh { background: #5bc0de url(../images/mijireh-logo.png) no-repeat 15px 18px; border: 1px solid #339bb9; padding: 15px 15px 15px 152px; box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.5 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.5 ); -moz-box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.5 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.5 ); -webkit-box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.5 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.5 ); } +#wc_get_started.mijireh span { color: #fff; text-shadow: 0 1px 0 #4a94ac; } +#wc_get_started.mijireh span a { color: #fff; } +#wc_get_started.mijireh a.button { border-color: #fff; box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.1 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.1 ), 0 1px 3px #206d8b; -moz-box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.1 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.1 ), 0 1px 3px #206d8b; -webkit-box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.1 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.1 ), 0 1px 3px #206d8b; } +#wc_get_started.mijireh a.button-primary { background: #2b7e9f; border-color: #266e8b; } + #icon-woocommerce, .woocommerce_icon, .icon32-posts-product, .icon32-posts-shop_order, .icon32-posts-shop_coupon, .icon32-posts-product_variation { background-image: url(../images/icons/woocommerce-icons.png) !important; background-position: -11px -6px; diff --git a/assets/images/mijireh-logo.png b/assets/images/mijireh-logo.png new file mode 100644 index 00000000000..39d5cb0f0cb Binary files /dev/null and b/assets/images/mijireh-logo.png differ diff --git a/classes/class-wc-order.php b/classes/class-wc-order.php index 770e656e43d..a3634a49b9c 100644 --- a/classes/class-wc-order.php +++ b/classes/class-wc-order.php @@ -758,7 +758,7 @@ class WC_Order { $this->update_status( $new_order_status ); - add_post_meta( $this->id, '_paid_date', $meta_value, $unique); + add_post_meta( $this->id, '_paid_date', current_time('mysql'), true ); $this_order = array( 'ID' => $this->id, diff --git a/classes/gateways/class-wc-bacs.php b/classes/gateways/bacs/class-wc-bacs.php similarity index 100% rename from classes/gateways/class-wc-bacs.php rename to classes/gateways/bacs/class-wc-bacs.php diff --git a/classes/gateways/class-wc-cheque.php b/classes/gateways/cheque/class-wc-cheque.php similarity index 100% rename from classes/gateways/class-wc-cheque.php rename to classes/gateways/cheque/class-wc-cheque.php diff --git a/classes/gateways/class-wc-cod.php b/classes/gateways/cod/class-wc-cod.php similarity index 100% rename from classes/gateways/class-wc-cod.php rename to classes/gateways/cod/class-wc-cod.php diff --git a/classes/gateways/mijireh/Mijireh.php b/classes/gateways/mijireh/Mijireh.php new file mode 100755 index 00000000000..1dd54b8914a --- /dev/null +++ b/classes/gateways/mijireh/Mijireh.php @@ -0,0 +1,116 @@ +get(''); + $data = array( + 'url' => $url, + 'html' => $html, + ); + $rest = new Mijireh_RestJSON(self::$url); + $rest->setupAuth(self::$access_key, ''); + $result = $rest->post('slurps', $data); + return $result['job_id']; + } + catch(Mijireh_Rest_Unauthorized $e) { + throw new Mijireh_Unauthorized("Unauthorized. Please check your api access key"); + } + catch(Mijireh_Rest_NotFound $e) { + throw new Mijireh_NotFound("Mijireh resource not found: " . $rest->last_request['url']); + } + catch(Mijireh_Rest_ClientError $e) { + throw new Mijireh_ClientError($e->getMessage()); + } + catch(Mijireh_Rest_ServerError $e) { + throw new Mijireh_ServerError($e->getMessage()); + } + catch(Mijireh_Rest_UnknownResponse $e) { + throw new Mijireh_Exception('Unable to slurp the URL: $url'); + } + } + + /** + * Return an array of store information + */ + public static function get_store_info() { + $rest = new Mijireh_RestJSON(self::$url); + $rest->setupAuth(self::$access_key, ''); + try { + $result = $rest->get('store'); + return $result; + } + catch(Mijireh_Rest_BadRequest $e) { + throw new Mijireh_BadRequest($e->getMessage()); + } + catch(Mijireh_Rest_Unauthorized $e) { + throw new Mijireh_Unauthorized("Unauthorized. Please check your api access key"); + } + catch(Mijireh_Rest_NotFound $e) { + throw new Mijireh_NotFound("Mijireh resource not found: " . $rest->last_request['url']); + } + catch(Mijireh_Rest_ClientError $e) { + throw new Mijireh_ClientError($e->getMessage()); + } + catch(Mijireh_Rest_ServerError $e) { + throw new Mijireh_ServerError($e->getMessage()); + } + } + + public static function preview_checkout_link() { + if(empty(Mijireh::$access_key)) { + throw new Mijireh_Exception('Access key required to view checkout preview'); + } + + return self::$base_url . 'checkout/' . self::$access_key; + } + +} diff --git a/classes/gateways/mijireh/Mijireh/Address.php b/classes/gateways/mijireh/Mijireh/Address.php new file mode 100755 index 00000000000..efa553a17bf --- /dev/null +++ b/classes/gateways/mijireh/Mijireh/Address.php @@ -0,0 +1,45 @@ +init(); + } + + public function init() { + $this->_data = array( + 'first_name' => '', + 'last_name' => '', + 'street' => '', + 'city' => '', + 'state_province' => '', + 'zip_code' => '', + 'country' => '', + 'company' => '', + 'apt_suite' => '', + 'phone' => '' + ); + } + + public function validate() { + $is_valid = $this->_check_required_fields(); + return $is_valid; + } + + /** + * Return true if all of the required fields have a non-empty value + * + * @return boolean + */ + private function _check_required_fields() { + $pass = true; + $fields = array('street', 'city', 'state_province', 'zip_code', 'country'); + foreach($fields as $f) { + if(empty($this->_data[$f])) { + $pass = false; + $this->add_error("$f is required"); + } + } + return $pass; + } + +} diff --git a/classes/gateways/mijireh/Mijireh/Item.php b/classes/gateways/mijireh/Mijireh/Item.php new file mode 100755 index 00000000000..a8e7149dc55 --- /dev/null +++ b/classes/gateways/mijireh/Mijireh/Item.php @@ -0,0 +1,57 @@ +_data = array( + 'name' => null, + 'price' => null, + 'quantity' => 1, + 'sku' => null + ); + } + + private function _check_required_fields() { + if(empty($this->_data['name'])) { + $this->add_error('item name is required.'); + } + + if(!is_numeric($this->_data['price'])) { + $this->add_error('price must be a number.'); + } + } + + private function _check_quantity() { + if($this->_data['quantity'] < 1) { + $this->add_error('quantity must be greater than or equal to 1'); + } + } + + public function __construct() { + $this->_init(); + } + + public function __get($key) { + $value = false; + if($key == 'total') { + $value = $this->_data['price'] * $this->_data['quantity']; + $value = number_format($value, 2, '.', ''); + } + else { + $value = parent::__get($key); + } + return $value; + } + + public function get_data() { + $data = parent::get_data(); + $data['total'] = $this->total; + return $data; + } + + public function validate() { + $this->_check_required_fields(); + $this->_check_quantity(); + return count($this->_errors) == 0; + } + +} \ No newline at end of file diff --git a/classes/gateways/mijireh/Mijireh/Model.php b/classes/gateways/mijireh/Mijireh/Model.php new file mode 100755 index 00000000000..7899ec79e71 --- /dev/null +++ b/classes/gateways/mijireh/Mijireh/Model.php @@ -0,0 +1,133 @@ +_data)) { + $this->_data[$key] = $value; + $success = true; + } + return $success; + } + + /** + * Get the value for the key from the private $_data array. + * + * Return false if the requested key does not exist + * + * @param string $key The key from the $_data array + * @return mixed + */ + public function __get($key) { + $value = false; + if(array_key_exists($key, $this->_data)) { + $value = $this->_data[$key]; + } + + /* + elseif(method_exists($this, $key)) { + $value = call_user_func_array(array($this, $key), func_get_args()); + } + */ + + return $value; + } + + /** + * Return true if the given $key in the private $_data array is set + * + * @param string $key + * @return boolean + */ + public function __isset($key) { + return isset($this->_data[$key]); + } + + /** + * Set the value of the $_data array to null for the given key. + * + * @param string $key + * @return void + */ + public function __unset($key) { + if(array_key_exists($key, $this->_data)) { + $this->_data[$key] = null; + } + } + + /** + * Return the private $_data array + * + * @return mixed + */ + public function get_data() { + return $this->_data; + } + + /** + * Return true if the given $key exists in the private $_data array + * + * @param string $key + * @return boolean + */ + public function field_exists($key) { + return array_key_exists($key, $this->_data); + } + + public function copy_from(array $data) { + foreach($data as $key => $value) { + if(array_key_exists($key, $this->_data)) { + $this->_data[$key] = $value; + } + } + } + + public function clear() { + foreach($this->_data as $key => $value) { + if($key == 'id') { + $this->_data[$key] = null; + } + else { + $this->_data[$key] = ''; + } + } + } + + public function add_error($error_message) { + if(!empty($error_message)) { + $this->_errors[] = $error_message; + } + } + + public function clear_errors() { + $this->_errors = array(); + } + + public function get_errors() { + return $this->_errors; + } + + public function get_error_lines($glue="\n") { + $error_lines = ''; + if(count($this->_errors)) { + $error_lines = implode($glue, $this->_errors); + } + return $error_lines; + } + + public function is_valid() { + return count($this->_errors) == 0; + } + +} diff --git a/classes/gateways/mijireh/Mijireh/Order.php b/classes/gateways/mijireh/Mijireh/Order.php new file mode 100755 index 00000000000..4eb041a7fcb --- /dev/null +++ b/classes/gateways/mijireh/Mijireh/Order.php @@ -0,0 +1,340 @@ +_data = array( + 'partner_id' => null, + 'order_number' => null, + 'mode' => null, + 'status' => null, + 'order_date' => null, + 'ip_address' => null, + 'checkout_url' => null, + 'total' => '', + 'return_url' => '', + 'items' => array(), + 'email' => '', + 'first_name' => '', + 'last_name' => '', + 'meta_data' => array(), + 'tax' => '', + 'shipping' => '', + 'discount' => '', + 'shipping_address' => array(), + 'billing_address' => array() + ); + } + + public function __construct($order_number=null) { + $this->_init(); + if(isset($order_number)) { + $this->load($order_number); + } + } + + public function load($order_number) { + if(strlen(Mijireh::$access_key) < 5) { + throw new Mijireh_Exception('missing mijireh access key'); + } + + $rest = new Mijireh_RestJSON(Mijireh::$url); + $rest->setupAuth(Mijireh::$access_key, ''); + try { + $order_data = $rest->get("orders/$order_number"); + $this->copy_from($order_data); + return $this; + } + catch(Mijireh_Rest_BadRequest $e) { + throw new Mijireh_BadRequest($e->getMessage()); + } + catch(Mijireh_Rest_Unauthorized $e) { + throw new Mijireh_Unauthorized("Unauthorized. Please check your api access key"); + } + catch(Mijireh_Rest_NotFound $e) { + throw new Mijireh_NotFound("Mijireh resource not found: " . $rest->last_request['url']); + } + catch(Mijireh_Rest_ClientError $e) { + throw new Mijireh_ClientError($e->getMessage()); + } + catch(Mijireh_Rest_ServerError $e) { + throw new Mijireh_ServerError($e->getMessage()); + } + } + + public function copy_from($order_data) { + foreach($order_data as $key => $value) { + if($key == 'items') { + if(is_array($value)) { + $this->clear_items(); // Clear current items before adding new items. + foreach($value as $item_array) { + $item = new Mijireh_Item(); + $item->copy_from($item_array); + $this->add_item($item); + } + } + } + elseif($key == 'shipping_address') { + if(is_array($value)) { + $address = new Mijireh_Address(); + $address->copy_from($value); + $this->set_shipping_address($address); + } + } + elseif($key == 'billing_address') { + if(is_array($value)) { + $address = new Mijireh_Address(); + $address->copy_from($value); + $this->set_billing_address($address); + } + } + elseif($key == 'meta_data') { + if(is_array($value)) { + $this->clear_meta_data(); // Clear current meta data before adding new meta data + $this->_data['meta_data'] = $value; + } + } + else { + $this->$key = $value; + } + } + + if(!$this->validate()) { + throw new Mijireh_Exception('invalid order hydration: ' . $this->get_errors_lines()); + } + + return $this; + } + + public function create() { + if(strlen(Mijireh::$access_key) < 5) { + throw new Mijireh_Exception('missing mijireh access key'); + } + + if(!$this->validate()) { + $error_message = 'unable to create order: ' . $this->get_error_lines(); + throw new Mijireh_Exception($error_message); + } + + $rest = new Mijireh_RestJSON(Mijireh::$url); + $rest->setupAuth(Mijireh::$access_key, ''); + try { + $result = $rest->post('orders', $this->get_data()); + $this->copy_from($result); + return $this; + } + catch(Mijireh_Rest_BadRequest $e) { + throw new Mijireh_BadRequest($e->getMessage()); + } + catch(Mijireh_Rest_Unauthorized $e) { + throw new Mijireh_Unauthorized("Unauthorized. Please check your api access key"); + } + catch(Mijireh_Rest_NotFound $e) { + throw new Mijireh_NotFound("Mijireh resource not found: " . $rest->last_request['url']); + } + catch(Mijireh_Rest_ClientError $e) { + throw new Mijireh_ClientError($e->getMessage()); + } + catch(Mijireh_Rest_ServerError $e) { + throw new Mijireh_ServerError($e->getMessage()); + } + } + + /** + * If meta_data or shipping_address are empty, exclude them altogether. + */ + public function get_data() { + $data = parent::get_data(); + if(count($data['meta_data']) == 0) { unset($data['meta_data']); } + if(count($data['shipping_address']) == 0) { unset($data['shipping_address']); } + if(count($data['billing_address']) == 0) { unset($data['billing_address']); } + return $data; + } + + /** + * Add the specified item and price to the order. + * + * Return the total number of items in the order (including the one that was just added) + * + * @return int + */ + public function add_item($name, $price=0, $quantity=1, $sku='') { + $item = ''; + if(is_object($name) && get_class($name) == 'Mijireh_Item') { + $item = $name; + } + else { + $item = new Mijireh_Item(); + $item->name = $name; + $item->price = $price; + $item->quantity = $quantity; + $item->sku = $sku; + } + + if($item->validate()) { + $this->_data['items'][] = $item->get_data(); + return $this->item_count(); + } + else { + $errors = implode(' ', $item->get_errors()); + throw new Mijireh_Exception('unable to add invalid item to order :: ' . $errors); + } + } + + public function add_meta_data($key, $value) { + if(!is_array($this->_data['meta_data'])) { + $this->_data['meta_data'] = array(); + } + $this->_data['meta_data'][$key] = $value; + } + + /** + * Return the value associated with the given key in the order's meta data. + * + * If the key does not exist, return false. + */ + public function get_meta_value($key) { + $value = false; + if(isset($this->_data['meta_data'][$key])) { + $value = $this->_data['meta_data'][$key]; + } + return $value; + } + + public function item_count() { + $item_count = 0; + if(is_array($this->_data['items'])) { + $item_count = count($this->_data['items']); + } + return $item_count; + } + + public function get_items() { + $items = array(); + foreach($this->_data['items'] as $item_data) { + $item = new Mijireh_Item(); + $item->copy_from($item_data); + } + } + + public function clear_items() { + $this->_data['items'] = array(); + } + + public function clear_meta_data() { + $this->_data['meta_data'] = array(); + } + + public function validate() { + $this->_check_total(); + $this->_check_return_url(); + $this->_check_items(); + return count($this->_errors) == 0; + } + + /** + * Alias for set_shipping_address() + */ + public function set_address(Mijireh_Address $address){ + $this->set_shipping_address($address); + } + + public function set_shipping_address(Mijireh_Address $address) { + if($address->validate()) { + $this->_data['shipping_address'] = $address->get_data(); + } + else { + throw new Mijireh_Exception('invalid shipping address'); + } + } + + public function set_billing_address(Mijireh_Address $address) { + if($address->validate()) { + $this->_data['billing_address'] = $address->get_data(); + } + else { + throw new Mijireh_Exception('invalid shipping address'); + } + } + + /** + * Alias for get_shipping_address() + */ + public function get_address() { + return $this->get_shipping_address(); + } + + public function get_shipping_address() { + $address = false; + if(is_array($this->_data['shipping_address'])) { + $address = new Mijireh_Address(); + $address->copy_from($this->_data['shipping_address']); + } + return $address; + } + + public function get_billing_address() { + $address = false; + if(is_array($this->_data['billing_address'])) { + $address = new Mijireh_Address(); + $address->copy_from($this->_data['billing_address']); + } + return $address; + } + + /** + * The order total must be greater than zero. + * + * Return true if valid, otherwise false. + * + * @return boolean + */ + private function _check_total() { + $is_valid = true; + if($this->_data['total'] <= 0) { + $this->add_error('order total must be greater than zero'); + $is_valid = false; + } + return $is_valid; + } + + /** + * The return url must be provided and must start with http. + * + * Return true if valid, otherwise false + * + * @return boolean + */ + private function _check_return_url() { + $is_valid = false; + if(!empty($this->_data['return_url'])) { + $url = $this->_data['return_url']; + if('http' == strtolower(substr($url, 0, 4))) { + $is_valid = true; + } + else { + $this->add_error('return url is invalid'); + } + } + else { + $this->add_error('return url is required'); + } + return $is_valid; + } + + /** + * An order must contain at least one item + * + * Return true if the order has at least one item, otherwise false. + * + * @return boolean + */ + private function _check_items() { + $is_valid = true; + if(count($this->_data['items']) <= 0) { + $is_valid = false; + $this->add_error('the order must contain at least one item'); + } + return $is_valid; + } + +} diff --git a/classes/gateways/mijireh/Mijireh/Rest.php b/classes/gateways/mijireh/Mijireh/Rest.php new file mode 100755 index 00000000000..5abbbe75f10 --- /dev/null +++ b/classes/gateways/mijireh/Mijireh/Rest.php @@ -0,0 +1,244 @@ + true, // return result instead of echoing + CURLOPT_SSL_VERIFYPEER => false, // stop cURL from verifying the peer's certificate + CURLOPT_MAXREDIRS => 10 // but dont redirect more than 10 times + ); + + public $base_url; + + public $last_response; + public $last_request; + + public $throw_exceptions = true; + + public function __construct($base_url, $curl_options=null) { + if (!function_exists('curl_init')) { + throw new Exception('CURL module not available! Mijireh_Rest requires CURL. See http://php.net/manual/en/book.curl.php'); + } + + if(isset($curl_options) && is_array($curl_options)) { + foreach($curl_options as $key => $value) { + + if($key == 'CURLOPT_FOLLOWLOCATION') { + // only enable CURLOPT_FOLLOWLOCATION if safe_mode and open_base_dir are not in use + if(ini_get('open_basedir') == '' && !ini_get('safe_mode')) { + $this->curl_opts['CURLOPT_FOLLOWLOCATION'] = true; + } + } + else { + $this->curl_opts[$key] = $value; + } + + } + } + + + $this->base_url = $base_url; + } + + // $auth can be 'basic' or 'digest' + public function setupAuth($user, $pass, $auth = 'basic') { + $this->curl_opts[CURLOPT_HTTPAUTH] = constant('CURLAUTH_'.strtoupper($auth)); + $this->curl_opts[CURLOPT_USERPWD] = $user . ":" . $pass; + } + + public function get($url) { + $curl = $this->prepRequest($this->curl_opts, $url); + $body = $this->doRequest($curl); + + $body = $this->processBody($body); + + return $body; + } + + public function post($url, $data, $headers=array()) { + $data = (is_array($data)) ? http_build_query($data) : $data; + + $curl_opts = $this->curl_opts; + $curl_opts[CURLOPT_CUSTOMREQUEST] = 'POST'; + $headers[] = 'Content-Length: '.strlen($data); + $curl_opts[CURLOPT_HTTPHEADER] = $headers; + $curl_opts[CURLOPT_POSTFIELDS] = $data; + + $curl = $this->prepRequest($curl_opts, $url); + $body = $this->doRequest($curl); + + $body = $this->processBody($body); + + return $body; + } + + public function put($url, $data, $headers=array()) { + $data = (is_array($data)) ? http_build_query($data) : $data; + + $curl_opts = $this->curl_opts; + $curl_opts[CURLOPT_CUSTOMREQUEST] = 'PUT'; + $headers[] = 'Content-Length: '.strlen($data); + $curl_opts[CURLOPT_HTTPHEADER] = $headers; + $curl_opts[CURLOPT_POSTFIELDS] = $data; + + $curl = $this->prepRequest($curl_opts, $url); + $body = $this->doRequest($curl); + + $body = $this->processBody($body); + + return $body; + } + + public function delete($url) { + $curl_opts = $this->curl_opts; + $curl_opts[CURLOPT_CUSTOMREQUEST] = 'DELETE'; + + $curl = $this->prepRequest($curl_opts, $url); + $body = $this->doRequest($curl); + + $body = $this->processBody($body); + + return $body; + } + + public function lastBody() { + return $this->last_response['body']; + } + + public function lastStatus() { + return $this->last_response['meta']['http_code']; + } + + protected function processBody($body) { + // Override this in classes that extend Mijireh_Rest. + // The body of every GET/POST/PUT/DELETE response goes through + // here prior to being returned. + return $body; + } + + protected function processError($body) { + // Override this in classes that extend Mijireh_Rest. + // The body of every erroneous (non-2xx/3xx) GET/POST/PUT/DELETE + // response goes through here prior to being used as the 'message' + // of the resulting Mijireh_Rest_Exception + return $body; + } + + + protected function prepRequest($opts, $url) { + if (strncmp($url, $this->base_url, strlen($this->base_url)) != 0) { + $url = $this->base_url . $url; + } + $curl = curl_init($url); + + foreach ($opts as $opt => $val) { + @curl_setopt($curl, $opt, $val); + } + + $this->last_request = array( + 'url' => $url + ); + + if (isset($opts[CURLOPT_CUSTOMREQUEST])) + $this->last_request['method'] = $opts[CURLOPT_CUSTOMREQUEST]; + else + $this->last_request['method'] = 'GET'; + + if (isset($opts[CURLOPT_POSTFIELDS])) + $this->last_request['data'] = $opts[CURLOPT_POSTFIELDS]; + + return $curl; + } + + private function doRequest($curl) { + + $body = curl_exec($curl); + $meta = curl_getinfo($curl); + + $this->last_response = array( + 'body' => $body, + 'meta' => $meta + ); + + curl_close($curl); + + $this->checkLastResponseForError(); + + return $body; + } + + protected function checkLastResponseForError() { + if ( !$this->throw_exceptions) + return; + + $meta = $this->last_response['meta']; + $body = $this->last_response['body']; + + if (!$meta) + return; + + $err = null; + switch ($meta['http_code']) { + case 400: + throw new Mijireh_Rest_BadRequest($this->processError($body)); + break; + case 401: + throw new Mijireh_Rest_Unauthorized($this->processError($body)); + break; + case 403: + throw new Mijireh_Rest_Forbidden($this->processError($body)); + break; + case 404: + throw new Mijireh_Rest_NotFound($this->processError($body)); + break; + case 405: + throw new Mijireh_Rest_MethodNotAllowed($this->processError($body)); + break; + case 409: + throw new Mijireh_Rest_Conflict($this->processError($body)); + break; + case 410: + throw new Mijireh_Rest_Gone($this->processError($body)); + break; + case 422: + // Unprocessable Entity -- see http://www.iana.org/assignments/http-status-codes + // This is now commonly used (in Rails, at least) to indicate + // a response to a request that is syntactically correct, + // but semantically invalid (for example, when trying to + // create a resource with some required fields missing) + throw new Mijireh_Rest_InvalidRecord($this->processError($body)); + break; + default: + if ($meta['http_code'] >= 400 && $meta['http_code'] <= 499) + throw new Mijireh_Rest_ClientError($this->processError($body)); + elseif ($meta['http_code'] >= 500 && $meta['http_code'] <= 599) + throw new Mijireh_Rest_ServerError($this->processError($body)); + elseif (!$meta['http_code'] || $meta['http_code'] >= 600) { + throw new Mijireh_Rest_UnknownResponse($this->processError($body)); + } + } + } +} + + +class Mijireh_Rest_Exception extends Exception { } +class Mijireh_Rest_UnknownResponse extends Mijireh_Rest_Exception { } + +/* 401-499 */ class Mijireh_Rest_ClientError extends Mijireh_Rest_Exception {} +/* 400 */ class Mijireh_Rest_BadRequest extends Mijireh_Rest_ClientError {} +/* 401 */ class Mijireh_Rest_Unauthorized extends Mijireh_Rest_ClientError {} +/* 403 */ class Mijireh_Rest_Forbidden extends Mijireh_Rest_ClientError {} +/* 404 */ class Mijireh_Rest_NotFound extends Mijireh_Rest_ClientError {} +/* 405 */ class Mijireh_Rest_MethodNotAllowed extends Mijireh_Rest_ClientError {} +/* 409 */ class Mijireh_Rest_Conflict extends Mijireh_Rest_ClientError {} +/* 410 */ class Mijireh_Rest_Gone extends Mijireh_Rest_ClientError {} +/* 422 */ class Mijireh_Rest_InvalidRecord extends Mijireh_Rest_ClientError {} + +/* 500-599 */ class Mijireh_Rest_ServerError extends Mijireh_Rest_Exception {} \ No newline at end of file diff --git a/classes/gateways/mijireh/Mijireh/RestJSON.php b/classes/gateways/mijireh/Mijireh/RestJSON.php new file mode 100755 index 00000000000..d7ed0f24e93 --- /dev/null +++ b/classes/gateways/mijireh/Mijireh/RestJSON.php @@ -0,0 +1,22 @@ +id = 'mijireh_checkout'; + $this->method_title = __( 'Mijireh Checkout', 'woocommerce' ); + $this->icon = apply_filters( 'woocommerce_mijireh_checkout_icon', $woocommerce->plugin_url() . '/classes/gateways/mijireh/images/credit_cards.png' ); + $this->has_fields = false; + + // Load the form fields. + $this->init_form_fields(); + + // Load the settings. + $this->init_settings(); + + // Define user set variables + $this->access_key = $this->settings['access_key']; + $this->title = $this->settings['title']; + $this->description = $this->settings['description']; + + if ( $this->enabled && is_admin() ) { + $this->install_slurp_page(); + + // Hooks + add_action( 'add_meta_boxes', array( &$this, 'add_page_slurp_meta' ) ); + add_action( 'wp_ajax_page_slurp', array( &$this, 'page_slurp' ) ); + add_action( 'woocommerce_update_options_payment_gateways', array( &$this, 'process_admin_options' ) ); + } + + // Payment listener/API hook + add_action( 'woocommerce_api_wc_mijireh_checkout', array( &$this, 'mijireh_notification' ) ); + } + + /** + * init_mijireh function. + * + * @access public + */ + public function init_mijireh() { + if ( ! class_exists( 'Mijireh' ) ) { + require_once 'Mijireh.php'; + + Mijireh::$access_key = $this->access_key; + } + } + + /** + * install_slurp_page function. + * + * @access public + */ + public function install_slurp_page() { + $slurp_page_installed = get_option( 'slurp_page_installed', false ); + if ( $slurp_page_installed != 1 ) { + if( ! get_page_by_path( 'mijireh-secure-checkout' ) ) { + $page = array( + 'post_title' => 'Mijireh Secure Checkout', + 'post_name' => 'mijireh-secure-checkout', + 'post_parent' => 0, + 'post_status' => 'private', + 'post_type' => 'page', + 'comment_status' => 'closed', + 'ping_status' => 'closed', + 'post_content' => "

Checkout

\n\n{{mj-checkout-form}}", + ); + wp_insert_post( $page ); + } + update_option( 'slurp_page_installed', 1 ); + } + } + + /** + * page_slurp function. + * + * @access public + * @return void + */ + public function page_slurp() { + + $this->init_mijireh(); + + $page = get_page( absint( $_POST['page_id'] ) ); + $url = get_permalink( $page->ID ); + wp_update_post( array( 'ID' => $page->ID, 'post_status' => 'publish' ) ); + $job_id = Mijireh::slurp( $url ); + wp_update_post( array( 'ID' => $page->ID, 'post_status' => 'private' ) ); + echo $job_id; + die; + } + + /** + * mijireh_notification function. + * + * @access public + * @return void + */ + public function mijireh_notification() { + global $woocommerce; + + $this->init_mijireh(); + + try { + $mj_order = new Mijireh_Order( esc_attr( $_GET['order_number'] ) ); + $wc_order_id = $mj_order->get_meta_value( 'wc_order_id' ); + $wc_order = new WC_Order( absint( $wc_order_id ) ); + + // Mark order complete + $wc_order->payment_complete(); + + // Empty cart and clear session + $woocommerce->cart->empty_cart(); + + wp_redirect( $this->get_return_url( $wc_order ) ); + exit; + + } catch (Mijireh_Exception $e) { + + $woocommerce->add_error( __( 'Mijireh error:', 'woocommerce' ) . $e->getMessage() ); + + } + } + + /** + * init_form_fields function. + * + * @access public + * @return void + */ + public function init_form_fields() { + $this->form_fields = array( + 'enabled' => array( + 'title' => __( 'Enable/Disable', 'woocommerce' ), + 'type' => 'checkbox', + 'label' => __( 'Enable Mijireh Checkout', 'woocommerce' ), + 'default' => 'no' + ), + 'access_key' => array( + 'title' => __('Access Key', 'woocommerce'), + 'type' => 'text', + 'description' => __('The Mijireh access key for your store.', 'woocommerce'), + 'default' => '' + ), + 'title' => array( + 'title' => __( 'Title', 'woocommerce' ), + 'type' => 'text', + 'description' => __( 'This controls the title which the user sees during checkout.', 'woocommerce' ), + 'default' => __( 'Credit Card', 'woocommerce' ) + ), + 'description' => array( + 'title' => __( 'Description', 'woocommerce' ), + 'type' => 'textarea', + 'default' => __( 'Pay securely with you credit card.', 'woocommerce' ), + 'description' => 'This controls the description which the user sees during checkout.' + ), + ); + } + + public function admin_options() { + ?> +

+ + access_key ) ) : ?> +
+ + Mijireh Checkout + +

+ +
+ +

Mijireh Checkout

+ + + + generate_settings_html(); ?> +
+ description ) + echo wpautop(wptexturize($this->description)); + } + + /** + * process_payment function. + * + * @access public + * @param mixed $order_id + */ + public function process_payment( $order_id ) { + global $woocommerce; + + $this->init_mijireh(); + + $mj_order = new Mijireh_Order(); + $wc_order = new WC_Order( $order_id ); + + // add items to order + $items = $wc_order->get_items(); + foreach($items as $item) { + $product = $wc_order->get_product_from_item( $item ); + $mj_order->add_item( $item['name'], $wc_order->get_item_subtotal($item), $item['qty'], $product->get_sku() ); + } + + // add billing address to order + $billing = new Mijireh_Address(); + $billing->first_name = $wc_order->billing_first_name; + $billing->last_name = $wc_order->billing_last_name; + $billing->street = $wc_order->billing_address_1; + $billing->apt_suite = $wc_order->billing_address_2; + $billing->city = $wc_order->billing_city; + $billing->state_province = $wc_order->billing_state; + $billing->zip_code = $wc_order->billing_postcode; + $billing->country = $wc_order->billing_country; + $billing->company = $wc_order->billing_company; + $billing->phone = $wc_order->billing_phone; + if ( $billing->validate() ) + $mj_order->set_billing_address( $billing ); + + // add shipping address to order + $shipping = new Mijireh_Address(); + $shipping->first_name = $wc_order->shipping_first_name; + $shipping->last_name = $wc_order->shipping_last_name; + $shipping->street = $wc_order->shipping_address_1; + $shipping->apt_suite = $wc_order->shipping_address_2; + $shipping->city = $wc_order->shipping_city; + $shipping->state_province = $wc_order->shipping_state; + $shipping->zip_code = $wc_order->shipping_postcode; + $shipping->country = $wc_order->shipping_country; + $shipping->company = $wc_order->shipping_company; + if ( $shipping->validate() ) + $mj_order->set_shipping_address( $shipping ); + + // set order name + $mj_order->first_name = $wc_order->billing_first_name; + $mj_order->last_name = $wc_order->billing_last_name; + $mj_order->email = $wc_order->billing_email; + + // set order totals + $mj_order->total = $wc_order->get_order_total(); + $mj_order->tax = $wc_order->get_total_tax(); + $mj_order->discount = $wc_order->get_total_discount(); + $mj_order->shipping = $wc_order->get_shipping(); + + // add meta data to identify woocommerce order + $mj_order->add_meta_data( 'wc_order_id', $order_id ); + + // Set URL for mijireh payment notificatoin - use WC API + $mj_order->return_url = str_replace( 'https:', 'http:', add_query_arg( 'wc-api', 'WC_Mijireh_Checkout', home_url( '/' ) ) ); + + // Identify woocommerce + $mj_order->partner_id = 'woo'; + + try { + $mj_order->create(); + $result = array( + 'result' => 'success', + 'redirect' => $mj_order->checkout_url + ); + return $result; + } catch (Mijireh_Exception $e) { + $woocommerce->add_error( __('Mijireh error:', 'woocommerce' ) . $e->getMessage() ); + } + } + + /** + * add_page_slurp_meta function. + * + * @access public + * @return void + */ + public function add_page_slurp_meta() { + global $woocommerce; + + if ( $this->is_slurp_page() ) { + wp_enqueue_style( 'mijireh_css', $woocommerce->plugin_url() . '/classes/gateways/mijireh/mijireh.css' ); + wp_enqueue_script( 'pusher', 'https://d3dy5gmtp8yhk7.cloudfront.net/1.11/pusher.min.js', null, false, true ); + wp_enqueue_script( 'page_slurp', $woocommerce->plugin_url() . '/classes/gateways/mijireh/page_slurp.js', array('jquery'), false, true ); + + add_meta_box( + 'slurp_meta_box', // $id + 'Mijireh Page Slurp', // $title + array( &$this, 'draw_page_slurp_meta_box' ), // $callback + 'page', // $page + 'normal', // $context + 'high' // $priority + ); + } + } + + /** + * is_slurp_page function. + * + * @access public + * @return void + */ + public function is_slurp_page() { + global $post; + $is_slurp = false; + if ( isset( $post ) && is_object( $post ) ) { + $content = $post->post_content; + if ( strpos( $content, '{{mj-checkout-form}}') !== false ) { + $is_slurp = true; + } + } + return $is_slurp; + } + + /** + * draw_page_slurp_meta_box function. + * + * @access public + * @param mixed $post + * @return void + */ + public function draw_page_slurp_meta_box( $post ) { + global $woocommerce; + + $this->init_mijireh(); + + echo "
"; + echo "

Slurp your custom checkout page!

"; + echo "

Get the page designed just how you want and when you're ready, click the button below and slurp it right up.

"; + echo ""; + echo "

Slurp This Page! "; + echo 'Preview Checkout Page

'; + echo "
"; + } +} + +/** + * Add the gateway to WooCommerce + **/ +function add_mijireh_gateway( $methods ) { + $methods[] = 'WC_Mijireh_Checkout'; return $methods; +} + +add_filter( 'woocommerce_payment_gateways', 'add_mijireh_gateway' ); \ No newline at end of file diff --git a/classes/gateways/mijireh/images/credit_cards.png b/classes/gateways/mijireh/images/credit_cards.png new file mode 100644 index 00000000000..1672f6c58ea Binary files /dev/null and b/classes/gateways/mijireh/images/credit_cards.png differ diff --git a/classes/gateways/mijireh/images/mijireh-checkout-logo.png b/classes/gateways/mijireh/images/mijireh-checkout-logo.png new file mode 100644 index 00000000000..85a72828ed4 Binary files /dev/null and b/classes/gateways/mijireh/images/mijireh-checkout-logo.png differ diff --git a/classes/gateways/mijireh/images/mijireh.png b/classes/gateways/mijireh/images/mijireh.png new file mode 100644 index 00000000000..5318d019002 Binary files /dev/null and b/classes/gateways/mijireh/images/mijireh.png differ diff --git a/classes/gateways/mijireh/mijireh.css b/classes/gateways/mijireh/mijireh.css new file mode 100644 index 00000000000..eb7b083a7b0 --- /dev/null +++ b/classes/gateways/mijireh/mijireh.css @@ -0,0 +1,155 @@ +#mijireh_notice { + background: #5bc0de url(../../../assets/images/mijireh-logo.png) no-repeat 15px 18px; + border: 1px solid #339bb9; + padding: 15px 15px 15px 152px !important; + box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.5 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.5 ); + -moz-box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.5 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.5 ); + -webkit-box-shadow: inset 1px 1px 0 rgba( 255, 255, 255, 0.5 ), inset -1px -1px 0 rgba( 255, 255, 255, 0.5 ); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + color: #fff; + text-shadow: 0 1px 0 #4a94ac; +} +#mijireh_notice.alert-danger, #mijireh_notice.alert-error { + background-color: #e0534e; + border: 1px solid #e0534e; + text-shadow: 0 1px 0 #e0534e; +} +#mijireh_notice.success { + background-color: #62c462; + border: 1px solid #62c462; + text-shadow: 0 1px 0 #4fbd4f; +} +#slurp_meta_box .inside { + padding:0 !important; + margin:0 !important; +} +#slurp_meta_box .alert-message { + margin:0 !important; +} +#slurp_meta_box h2 { + color:#fff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + margin: 0; +} +#slurp_meta_box a { + color: #fff; +} +#slurp_meta_box a.button-primary { + margin-right: 10px; +} +#slurp_meta_box p { + line-height: 22px; + margin-bottom: 1em; + margin-top: 0; +} + +/* Progress Bar Styles */ + .progress { + overflow: hidden; + line-height:18px!important; + height: 18px!important; + margin-bottom: 18px!important; + background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #f5f5f5), color-stop(100%, #f9f9f9)); + background: -webkit-linear-gradient(#f5f5f5, #f9f9f9); + background: -moz-linear-gradient(#f5f5f5, #f9f9f9); + background: -o-linear-gradient(#f5f5f5, #f9f9f9); + background: -ms-linear-gradient(#f5f5f5, #f9f9f9); + background: linear-gradient(#f5f5f5, #f9f9f9); + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.4); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.4); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.4); + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + -ms-border-radius: 4px; + -o-border-radius: 4px; + border-radius: 4px; + } + .progress .bar { + width: 0%; + height: 18px!important; + line-height: 18px!important; + color: white; + font-size: 12px; + text-align: center; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #149bdf), color-stop(100%, #0480be)); + background: -webkit-linear-gradient(#149bdf, #0480be); + background: -moz-linear-gradient(#149bdf, #0480be); + background: -o-linear-gradient(#149bdf, #0480be); + background: -ms-linear-gradient(#149bdf, #0480be); + background: linear-gradient(#149bdf, #0480be); + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15), inset 0 1px 2px rgba(0, 0, 0, 0.4); + -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15), inset 0 1px 2px rgba(0, 0, 0, 0.4); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15), inset 0 1px 2px rgba(0, 0, 0, 0.4); + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: width 0.6s ease; + -moz-transition: width 0.6s ease; + transition: width 0.6s ease; + } + .progress-striped .bar { + background-color: #62c462; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + -moz-background-size: 40px 40px; + -o-background-size: 40px 40px; + background-size: 40px 40px; + } + .progress.active .bar { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -moz-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; + } + .progress-danger .bar { + background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35)); + background: -webkit-linear-gradient(#ee5f5b, #c43c35); + background: -moz-linear-gradient(#ee5f5b, #c43c35); + background: -o-linear-gradient(#ee5f5b, #c43c35); + background: -ms-linear-gradient(#ee5f5b, #c43c35); + background: linear-gradient(#ee5f5b, #c43c35); + } + .progress-danger.progress-striped .bar { + background-color: #ee5f5b; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + } + .progress-success .bar { + background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #62c462), color-stop(100%, #57a957)); + background: -webkit-linear-gradient(#62c462, #57a957); + background: -moz-linear-gradient(#62c462, #57a957); + background: -o-linear-gradient(#62c462, #57a957); + background: -ms-linear-gradient(#62c462, #57a957); + background: linear-gradient(#62c462, #57a957); + } + .progress-success.progress-striped .bar { + background-color: #62c462; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + } + .progress.info .bar { + background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5bc0de), color-stop(100%, #339bb9)); + background: -webkit-linear-gradient(#5bc0de, #339bb9); + background: -moz-linear-gradient(#5bc0de, #339bb9); + background: -o-linear-gradient(#5bc0de, #339bb9); + background: -ms-linear-gradient(#5bc0de, #339bb9); + background: linear-gradient(#5bc0de, #339bb9); + } + .progress-info.progress-striped .bar { + background-color: #5bc0de; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + } \ No newline at end of file diff --git a/classes/gateways/mijireh/page_slurp.js b/classes/gateways/mijireh/page_slurp.js new file mode 100644 index 00000000000..4af157365d5 --- /dev/null +++ b/classes/gateways/mijireh/page_slurp.js @@ -0,0 +1,51 @@ +(function($) { + + $('#page_slurp').click(function() { + var page_id = $(this).attr('rel'); + var data = { + action: 'page_slurp', + page_id: page_id + }; + + $('#page_slurp').attr('disabled', 'disabled'); + $('#slurp_progress').show(); + $('#slurp_progress_bar').html('Starting up'); + + $.post(ajaxurl, data, function(job_id) { + // The job id is the id for the page slurp job or 0 if the slurp failed + if(job_id.substring(0, 4) === 'http') { + var msg = 'Your PHP configuration does not allow for Page Slurp from within WordPress. Please log into your Mijireh account and Slurp the page by pasting in the URL to this page as shown below.\ + \n\n' + job_id + '\n\nPlease set this page to be publicly accessible during the Slurp then set it back to private after the Slurp is complete.'; + alert(msg); + } + else { + pusher = new Pusher('7dcd33b15307eb9be5fb'); + channel_name = 'slurp-' + job_id; + channel = pusher.subscribe(channel_name); + + channel.bind('status_changed', function (data) { + // console.log(data); + if(data.level == 'info') { + $('#slurp_progress_bar').html(data.message); + $('#slurp_progress_bar').width(data.progress + '%'); + } + + if(data.progress == 100) { + pusher.unsubscribe(channel_name); + $('#slurp_progress').hide(); + $('#page_slurp').removeAttr('disabled'); + } + }); + } + + }) + .error(function(response) { + $('#slurp_progress').hide(); + $('#page_slurp').removeAttr('disabled'); + alert('Please make sure your Mijireh access key is correct'); + }); + + return false; + }); + +})(jQuery.noConflict()); \ No newline at end of file diff --git a/classes/gateways/class-wc-paypal.php b/classes/gateways/paypal/class-wc-paypal.php similarity index 100% rename from classes/gateways/class-wc-paypal.php rename to classes/gateways/paypal/class-wc-paypal.php diff --git a/readme.txt b/readme.txt index c7e389163d3..8088836715b 100644 --- a/readme.txt +++ b/readme.txt @@ -32,6 +32,7 @@ Seriously, WooCommerce has got more features than you can shake a stick at. But WooCommerce has enough power to be used straight out of the box and comes with the following payment gateways, shipping methods and third party integrations: * PayPal Standard +* Mijireh Checkout * BACS * Cheque * Cash on Delivery @@ -149,6 +150,7 @@ Yes you can! Join in on our [GitHub repository](http://github.com/woothemes/wooc == == +* Feature - Mijireh Checkout Integration * Feature - Menu count for orders requiring admin action * Feature - 'supports' function for gateways. * Tweak - EU states for tax diff --git a/uninstall.php b/uninstall.php index c2d6609ea70..edab9a1e49f 100644 --- a/uninstall.php +++ b/uninstall.php @@ -36,6 +36,10 @@ wp_delete_post( get_option('woocommerce_change_password_page_id'), true ); wp_delete_post( get_option('woocommerce_pay_page_id'), true ); wp_delete_post( get_option('woocommerce_thanks_page_id'), true ); +// mijireh checkout page +if ( $mijireh_page = get_page_by_path( 'mijireh-secure-checkout' ) ) + wp_delete_post( $mijireh_page->ID, true ); + // Tables $wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_attribute_taxonomies" ); $wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_downloadable_product_permissions" ); diff --git a/woocommerce.php b/woocommerce.php index 361e12fd003..8b87f75cb8e 100644 --- a/woocommerce.php +++ b/woocommerce.php @@ -117,10 +117,11 @@ class Woocommerce { // Include Core Payment Gateways include( 'classes/gateways/class-wc-payment-gateways.php' ); include( 'classes/gateways/class-wc-payment-gateway.php' ); - include( 'classes/gateways/class-wc-bacs.php' ); - include( 'classes/gateways/class-wc-cheque.php' ); - include( 'classes/gateways/class-wc-paypal.php' ); - include( 'classes/gateways/class-wc-cod.php' ); + include( 'classes/gateways/bacs/class-wc-bacs.php' ); + include( 'classes/gateways/cheque/class-wc-cheque.php' ); + include( 'classes/gateways/paypal/class-wc-paypal.php' ); + include( 'classes/gateways/cod/class-wc-cod.php' ); + include( 'classes/gateways/mijireh/class-wc-mijireh-checkout.php' ); // Include Core Shipping Methods include( 'classes/shipping/class-wc-shipping.php' );