} @-o-keyframes markAnim { 0% { opacity: 0; -o-transform: scaleX(0.5) scaleY(0.5); } 30% { opacity: 1; -o-transform: scaleX(1) scaleY(1); } 100% { opacity: 0; -o-transform: scaleX(1) scaleY(1); } } @-ms-keyframes markAnim { 0% { opacity: 0; -ms-transform: scaleX(0.5) scaleY(0.5); } 30% { opacity: 1; -ms-transform: scaleX(1) scaleY(1); } 100% { opacity: 0; -ms-transform: scaleX(1) scaleY(1); } } @-webkit-keyframes bounceIn { 0%, 20%, 40%, 60%, 80%, 100% { -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } 0% { opacity: 0; -webkit-transform: scale3d(0.3, 0.3, 0.3); transform: scale3d(0.3, 0.3, 0.3); } 20% { -webkit-transform: scale3d(1.1, 1.1, 1.1); transform: scale3d(1.1, 1.1, 1.1); } 40% { -webkit-transform: scale3d(0.9, 0.9, 0.9); transform: scale3d(0.9, 0.9, 0.9); } 60% { opacity: 1; -webkit-transform: scale3d(1.03, 1.03, 1.03); transform: scale3d(1.03, 1.03, 1.03); } 80% { -webkit-transform: scale3d(0.97, 0.97, 0.97); transform: scale3d(0.97, 0.97, 0.97); } 100% { opacity: 1; -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); } } @keyframes bounceIn { 0%, 20%, 40%, 60%, 80%, 100% { -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } 0% { opacity: 0; -webkit-transform: scale3d(0.3, 0.3, 0.3); transform: scale3d(0.3, 0.3, 0.3); } 20% { -webkit-transform: scale3d(1.1, 1.1, 1.1); transform: scale3d(1.1, 1.1, 1.1); } 40% { -webkit-transform: scale3d(0.9, 0.9, 0.9); transform: scale3d(0.9, 0.9, 0.9); } 60% { opacity: 1; -webkit-transform: scale3d(1.03, 1.03, 1.03); transform: scale3d(1.03, 1.03, 1.03); } 80% { -webkit-transform: scale3d(0.97, 0.97, 0.97); transform: scale3d(0.97, 0.97, 0.97); } 100% { opacity: 1; -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); } } /************** MIXINS for ANIMATIONS *************/ /************** USAGE of ANIMATIONS *************/ .o_wow_thumbs:after { position: absolute; top: 20%; left: 40%; font-size: 300px; font-family: "FontAwesome"; content: "\f164"; color: #21b799; animation: markAnim ease-in-out 1s; animation-iteration-count: 1; transform-origin: 50% 50%; animation-fill-mode: forwards; /*when the spec is finished*/ -webkit-animation: markAnim ease-in-out 1s; -webkit-animation-iteration-count: 1; -webkit-transform-origin: 50% 50%; -webkit-animation-fill-mode: forwards; /*Chrome 16+, Safari 4+*/ -moz-animation: markAnim ease-in-out 1s; -moz-animation-iteration-count: 1; -moz-transform-origin: 50% 50%; -moz-animation-fill-mode: forwards; /*FF 5+*/ -o-animation: markAnim ease-in-out 1s; -o-animation-iteration-count: 1; -o-transform-origin: 50% 50%; -o-animation-fill-mode: forwards; /*Not implemented yet*/ -ms-animation: markAnim ease-in-out 1s; -ms-animation-iteration-count: 1; -ms-transform-origin: 50% 50%; -ms-animation-fill-mode: forwards; /*IE 10+*/ } @media (max-width: 992px) { .o_wow_thumbs:after { left: 40%; font-size: 30vw; } } .o_wow_peace:after { position: absolute; top: 20%; left: 40%; font-size: 300px; font-family: "FontAwesome"; content: "\f118"; color: #21b799; animation: markAnim ease-in-out 1s; animation-iteration-count: 1; transform-origin: 50% 50%; animation-fill-mode: forwards; /*when the spec is finished*/ -webkit-animation: markAnim ease-in-out 1s; -webkit-animation-iteration-count: 1; -webkit-transform-origin: 50% 50%; -webkit-animation-fill-mode: forwards; /*Chrome 16+, Safari 4+*/ -moz-animation: markAnim ease-in-out 1s; -moz-animation-iteration-count: 1; -moz-transform-origin: 50% 50%; -moz-animation-fill-mode: forwards; /*FF 5+*/ -o-animation: markAnim ease-in-out 1s; -o-animation-iteration-count: 1; -o-transform-origin: 50% 50%; -o-animation-fill-mode: forwards; /*Not implemented yet*/ -ms-animation: markAnim ease-in-out 1s; -ms-animation-iteration-count: 1; -ms-transform-origin: 50% 50%; -ms-animation-fill-mode: forwards; /*IE 10+*/ } @media (max-width: 992px) { .o_wow_peace:after { left: 40%; font-size: 30vw; } } .o_wow_heart:after { position: absolute; top: 20%; left: 40%; font-size: 300px; font-family: "FontAwesome"; content: "\f004"; color: #21b799; animation: markAnim ease-in-out 1s; animation-iteration-count: 1; transform-origin: 50% 50%; animation-fill-mode: forwards; /*when the spec is finished*/ -webkit-animation: markAnim ease-in-out 1s; -webkit-animation-iteration-count: 1; -webkit-transform-origin: 50% 50%; -webkit-animation-fill-mode: forwards; /*Chrome 16+, Safari 4+*/ -moz-animation: markAnim ease-in-out 1s; -moz-animation-iteration-count: 1; -moz-transform-origin: 50% 50%; -moz-animation-fill-mode: forwards; /*FF 5+*/ -o-animation: markAnim ease-in-out 1s; -o-animation-iteration-count: 1; -o-transform-origin: 50% 50%; -o-animation-fill-mode: forwards; /*Not implemented yet*/ -ms-animation: markAnim ease-in-out 1s; -ms-animation-iteration-count: 1; -ms-transform-origin: 50% 50%; -ms-animation-fill-mode: forwards; /*IE 10+*/ } @media (max-width: 992px) { .o_wow_heart:after { left: 40%; font-size: 30vw; } } /*! 317074dd-a1c7-4391-9140-bfc5519b07d9 */ /**************** FONTS ****************/ @font-face { font-family: 'Simple-Line-Icons'; src: url('/web_planner/static/src/fonts/Simple-Line-Icons.eot'); src: url('/web_planner/static/src/fonts/Simple-Line-Icons.eot?#iefix') format('embedded-opentype'), url('/web_planner/static/src/fonts/Simple-Line-Icons.woff') format('woff'), url('/web_planner/static/src/fonts/Simple-Line-Icons.ttf') format('truetype'), url('/web_planner/static/src/fonts/Simple-Line-Icons.svg#Simple-Line-Icons') format('svg'); font-weight: normal; font-style: normal; } /**************** ICON ****************/ [data-icon]:before { font-family: 'Simple-Line-Icons'; content: attr(data-icon); speak: none; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; font-style: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /**************** MENU PROGRESS BAR ****************/ .o_planner_systray { width: 100px; } .o_planner_systray > .progress { height: 13px; cursor: pointer; margin-top: 16px; margin-bottom: -16px; margin-right: 10px; margin-left: 10px; } .o_planner_systray > .progress > .progress-bar { background-color: #21b799; } #oe_main_menu_navbar .o_planner_systray > .progress { margin-top: 10px; margin-bottom: -10px; } #PlannerDialog { font-family: "Lato", serif; z-index: 1051; -webkit-box-shadow: 0 3px 9px #666666; box-shadow: 0 3px 9px #666666; outline: none; } #PlannerDialog .modal-dialog { height: 100%; padding: 30px 0; margin: 0 auto; } #PlannerDialog .modal-dialog .modal-content { height: 100%; display: -ms-flexbox; display: -moz-box; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-flow: column nowrap; -moz-flex-flow: column nowrap; -webkit-flex-flow: column nowrap; flex-flow: column nowrap; } #PlannerDialog .modal-dialog .modal-content .modal-header { -ms-flex: 0 0 auto; -moz-flex: 0 0 auto; -webkit-flex: 0 0 auto; flex: 0 0 auto; background-color: #a24689; color: white; padding: 15px; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_title_block { display: inline-block; vertical-align: top; width: 25%; padding-left: 15px; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_title_block > h4 { font-size: 22px; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_progress_block { display: inline-block; vertical-align: top; margin-top: 10px; width: 65%; font-size: 15px; font-weight: 900; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_progress_block > .progress { display: inline-block; margin-bottom: -5px; margin-left: 15px; width: 120px; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_progress_block > .progress > .progress-bar { background-color: #20b698; box-shadow: none; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_progress_block .o_progress_text { display: inline-block; padding-left: 10px; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_close_block { display: inline-block; vertical-align: top; margin-top: 10px; width: 10%; text-align: right; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_close_block > span { cursor: pointer; } #PlannerDialog .modal-dialog .modal-content .modal-header .o_planner_close_block > button { color: white; opacity: 1; text-shadow: none; } #PlannerDialog .modal-dialog .modal-content .modal-footer { -ms-flex: 0 0 auto; -moz-flex: 0 0 auto; -webkit-flex: 0 0 auto; flex: 0 0 auto; text-align: left; padding: 5px; } #PlannerDialog .modal-dialog .modal-content .modal-footer .o_planner_header_left { display: inline-block; margin-left: 25%; padding-left: 23px; width: 25%; } #PlannerDialog .modal-dialog .modal-content .modal-footer .o_planner_header_right { display: inline-block; width: 50%; padding-right: 20px; } #PlannerDialog .modal-dialog .modal-content .modal-body { padding-bottom: 30px; overflow: auto; -ms-flex: 1 0 0; -moz-flex: 1 0 0; -webkit-flex: 1 0 0; flex: 1 0 0; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper { position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: -ms-flexbox; display: -moz-box; display: -webkit-box; display: -webkit-flex; display: flex; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu { -ms-flex: 0 0 25%; -moz-flex: 0 0 25%; -webkit-flex: 0 0 25%; flex: 0 0 25%; -webkit-box-shadow: 3px 0px 3px 0px rgba(50, 50, 50, 0.3); -moz-box-shadow: 3px 0px 3px 0px rgba(50, 50, 50, 0.3); box-shadow: 3px 0px 3px 0px rgba(50, 50, 50, 0.3); height: 100%; overflow: auto; line-height: 1.6; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu > ul { padding-top: 10px; padding-left: 18px; padding-right: 18px; list-style-type: none; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu > ul > li { text-indent: -18px; padding-left: 18px; position: relative; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu > ul > li > a { color: #666666; padding-left: 18px; font-weight: 600; font-size: 14px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu > ul > li > a:hover { color: #1fb597; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu > ul > li > a > .fa { position: absolute; left: 1px; top: 4px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu > ul > li.active > a { color: #1fb597; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu > ul > h4 { padding-left: 27px; font-size: 12px; color: #a8a8a8; border-top: 1px solid #e6e6e6; margin-left: -15px; margin-bottom: 15px; padding-top: 20px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_menu > ul > h4 > i.fa { margin-right: 10px; font-size: 14px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page { -ms-flex: 0 0 75%; -moz-flex: 0 0 75%; -webkit-flex: 0 0 75%; flex: 0 0 75%; display: none; padding-left: 25px; padding-right: 25px; height: 100%; overflow: auto; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page > h1 { font-size: 2.5em; font-weight: 300; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_intro { font-size: 120%; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .label > a { color: inherit; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .well, #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .panel, #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .alert { box-shadow: none; border-radius: 0; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .well { padding: 30px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .well .label { font-size: 12px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .alert { padding: 30px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .fa-lightbulb-o { padding-top: 5px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .fa-lightbulb-o:before { float: left; font-size: 20px; padding-right: 10px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page.marked:after { position: absolute; top: 0; left: 360px; font-size: 300px; font-family: "FontAwesome"; content: "\f00c"; color: #21b799; animation: markAnim ease-in-out 1s; animation-iteration-count: 1; transform-origin: 50% 50%; animation-fill-mode: forwards; /*when the spec is finished*/ -webkit-animation: markAnim ease-in-out 1s; -webkit-animation-iteration-count: 1; -webkit-transform-origin: 50% 50%; -webkit-animation-fill-mode: forwards; /*Chrome 16+, Safari 4+*/ -moz-animation: markAnim ease-in-out 1s; -moz-animation-iteration-count: 1; -moz-transform-origin: 50% 50%; -moz-animation-fill-mode: forwards; /*FF 5+*/ -o-animation: markAnim ease-in-out 1s; -o-animation-iteration-count: 1; -o-transform-origin: 50% 50%; -o-animation-fill-mode: forwards; /*Not implemented yet*/ -ms-animation: markAnim ease-in-out 1s; -ms-animation-iteration-count: 1; -ms-transform-origin: 50% 50%; -ms-animation-fill-mode: forwards; /*IE 10+*/ } @media (max-width: 992px) { #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page.marked:after { left: 40%; font-size: 30vw; } } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container { margin: 20px 0; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook { color: #555; padding: 0 !important; font-family: courier, monospace; border: 1px solid #faebcc; color: #8a6d3b; position: relative; background-color: #fcf8e3; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook textarea, #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook input[type="text"] { background: #fcf8e3; border: none; width: 100%; max-width: 100%; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook input[type="radio"], #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook input[type="checkbox"] { margin-right: 5px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook > li { list-style: none; border-bottom: 1px dashed #C1D6DA; padding: 10px 10px 5px 55px; text-transform: capitalize; margin: 0; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook > li .indented { padding-left: 32px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook > li span { position: absolute; left: 9px; color: #c7b492; font-size: 20px; font-weight: bold; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook > li.row span { left: -50px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook > li:last-child { border-bottom: 0; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook .o_planner_notebook_header div.dropdown { display: inline; float: right; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook .o_planner_notebook_header a { color: #C4A87A; position: absolute; top: 13px; right: 13px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook .o_planner_notebook_header a:hover { text-decoration: none; color: #9C855D; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook .o_planner_notebook_header select { margin-bottom: 10px; font-family: sans-serif; font-size: 16px; border: none; background: #F5E7CF; padding: 3px; width: auto; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook > li:not(.o_planner_notebook_header):hover { background-color: #F5EFD0; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_notebook_container .o_planner_notebook .o_planner_notebook_line_separator { border-left: 1px solid #ffaa9f; border-right: 1px solid #ffaa9f; background: transparent; position: absolute; width: 3px; height: 100%; top: 0; left: 42px; border-bottom: 0; border-top: 0; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_white_box .panel { height: 200px; width: 100%; font-size: 1.1em; padding-top: 40px; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_white_box .panel a:hover { text-decoration: none; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_trophy { font-size: 11em; color: #A24689; margin-top: .5em; -webkit-animation-name: bounceIn; animation-name: bounceIn; -webkit-animation-duration: 1.75s; animation-duration: 1.75s; -webkit-animation-fill-mode: both; animation-fill-mode: both; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .info_icon { position: relative; padding-left: 5em; min-height: 6em; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .info_icon .fa { position: absolute; font-size: 5em; left: 0.2em; opacity: 0.6; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .odoo_purple, #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page a.btn.odoo_purple, #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .btn.odoo_purple:hover { background-color: #A24689; color: white; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_paragraphs .icon { text-align: center; font-size: 2em; color: #21b799; } #PlannerDialog .modal-dialog .modal-content .modal-body .o_planner_content_wrapper .o_planner_page .o_planner_row_apps .col-md-4 { margin-top: 20px; } /*! efce3d31-1031-4f43-93f4-ce51b5f90c46 */ .mt128 { margin-top: 128px !important; } .mb128 { margin-bottom: 128px !important; } .ml128 { margin-left: 128px !important; } .mr128 { margin-right: 128px !important; } .mt96 { margin-top: 96px !important; } .mb96 { margin-bottom: 96px !important; } .ml96 { margin-left: 96px !important; } .mr96 { margin-right: 96px !important; } .mt92 { margin-top: 92px !important; } .mb92 { margin-bottom: 92px !important; } .ml92 { margin-left: 92px !important; } .mr92 { margin-right: 92px !important; } .mt64 { margin-top: 64px !important; } .mb64 { margin-bottom: 64px !important; } .ml64 { margin-left: 64px !important; } .mr64 { margin-right: 64px !important; } .mt48 { margin-top: 48px !important; } .mb48 { margin-bottom: 48px !important; } .ml48 { margin-left: 48px !important; } .mr48 { margin-right: 48px !important; } .mt32 { margin-top: 32px !important; } .mb32 { margin-bottom: 32px !important; } .ml32 { margin-left: 32px !important; } .mr32 { margin-right: 32px !important; } .mt24 { margin-top: 24px !important; } .mb24 { margin-bottom: 24px !important; } .ml24 { margin-left: 24px !important; } .mr24 { margin-right: 24px !important; } .mt16 { margin-top: 16px !important; } .mb16 { margin-bottom: 16px !important; } .ml16 { margin-left: 16px !important; } .mr16 { margin-right: 16px !important; } .mt8 { margin-top: 8px !important; } .mb8 { margin-bottom: 8px !important; } .ml8 { margin-left: 8px !important; } .mr8 { margin-right: 8px !important; } .mt4 { margin-top: 4px !important; } .mb4 { margin-bottom: 4px !important; } .ml4 { margin-left: 4px !important; } .mr4 { margin-right: 4px !important; } .mt0 { margin-top: 0px !important; } .mb0 { margin-bottom: 0px !important; } .ml0 { margin-left: 0px !important; } .mr0 { margin-right: 0px !important; } a.o_underline { text-decoration: underline; } a.o_underline:hover { text-decoration: underline; } Unable to interpret argument clean-css - if it is a plugin (less-plugin-clean-css), make sure that it is installed under or at the same level as less This error occured while compiling the bundle 'web.assets_common' containing: - /web/static/src/less/mimetypes.less - /web/static/src/less/animation.less - /web_planner/static/src/less/web_planner_common.less - /web_editor/static/src/less/web_editor.less Traceback (most recent call last): File "/usr/lib/python2.7/logging/__init__.py", line 859, in emit msg = self.format(record) File "/usr/lib/python2.7/logging/__init__.py", line 732, in format return fmt.format(record) File "/home/mc/OCB/openerp/netsvc.py", line 108, in format return DBFormatter.format(self, record) File "/home/mc/OCB/openerp/netsvc.py", line 102, in format return logging.Formatter.format(self, record) File "/usr/lib/python2.7/logging/__init__.py", line 474, in format s = self._fmt % record.__dict__ UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 190960: ordinal not in range(128) Logged from file ir_qweb.py, line 1376 2015-11-23 09:33:12,176 1662 INFO Test_MCO werkzeug: 127.0.0.1 - - [23/Nov/2015 09:33:12] "GET /web/ HTTP/1.1" 500 - 2015-11-23 09:33:12,218 1662 ERROR Test_MCO werkzeug: Error on request: Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 177, in run_wsgi execute(self.server.app) File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 165, in execute application_iter = app(environ, start_response) File "/home/mc/OCB/openerp/service/server.py", line 245, in app return self.app(e, s) File "/home/mc/OCB/openerp/service/wsgi_server.py", line 184, in application return application_unproxied(environ, start_response) File "/home/mc/OCB/openerp/service/wsgi_server.py", line 170, in application_unproxied result = handler(environ, start_response) File "/home/mc/OCB/openerp/http.py", line 1416, in __call__ return self.dispatch(environ, start_response) File "/home/mc/OCB/openerp/http.py", line 1390, in __call__ return self.app(environ, start_wrapped) File "/usr/lib/python2.7/dist-packages/werkzeug/wsgi.py", line 588, in __call__ return self.app(environ, start_response) File "/home/mc/OCB/openerp/http.py", line 1580, in dispatch result = ir_http._dispatch() File "/home/mc/OCB/addons/web_editor/models/ir_http.py", line 16, in _dispatch return super(ir_http, self)._dispatch() File "/home/mc/OCB/openerp/addons/base/ir/ir_http.py", line 176, in _dispatch return self._handle_exception(e) File "/home/mc/OCB/openerp/addons/base/ir/ir_http.py", line 147, in _handle_exception return request._handle_exception(exception) File "/home/mc/OCB/openerp/http.py", line 737, in _handle_exception return super(HttpRequest, self)._handle_exception(exception) File "/home/mc/OCB/openerp/addons/base/ir/ir_http.py", line 172, in _dispatch result = request.dispatch() File "/home/mc/OCB/openerp/http.py", line 768, in dispatch r = self._call_function(**self.params) File "/home/mc/OCB/openerp/http.py", line 315, in _call_function return checked_call(self.db, *args, **kwargs) File "/home/mc/OCB/openerp/service/model.py", line 118, in wrapper return f(dbname, *args, **kwargs) File "/home/mc/OCB/openerp/http.py", line 311, in checked_call result.flatten() File "/home/mc/OCB/openerp/http.py", line 1367, in flatten self.response.append(self.render()) File "/home/mc/OCB/openerp/http.py", line 1360, in render context=request.context) File "/home/mc/OCB/openerp/api.py", line 232, in wrapper return old_api(self, *args, **kwargs) File "/home/mc/OCB/addons/web_editor/models/ir_ui_view.py", line 29, in render return super(view, self).render(cr, uid, id_or_xml_id, values=values, engine=engine, context=context) File "/home/mc/OCB/openerp/api.py", line 232, in wrapper return old_api(self, *args, **kwargs) File "/home/mc/OCB/openerp/addons/base/ir/ir_ui_view.py", line 1065, in render return self.pool[engine].render(cr, uid, id_or_xml_id, qcontext, loader=loader, context=context) File "/home/mc/OCB/openerp/api.py", line 232, in wrapper return old_api(self, *args, **kwargs) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 253, in render return self.render_node(element, qwebcontext, generated_attributes=qwebcontext.pop('generated_attributes', '')) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 296, in render_node result = self.render_element(element, template_attributes, generated_attributes, qwebcontext) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 319, in render_element generated_attributes= name == "t" and generated_attributes or '')) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 294, in render_node result = self._render_tag[t_render](self, element, template_attributes, generated_attributes, qwebcontext) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 447, in render_tag_call d[0] = self.render_element(element, template_attributes, generated_attributes, d) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 319, in render_element generated_attributes= name == "t" and generated_attributes or '')) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 294, in render_node result = self._render_tag[t_render](self, element, template_attributes, generated_attributes, qwebcontext) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 488, in render_tag_set qwebcontext[template_attributes["set"]] = self.render_element(element, template_attributes, generated_attributes, qwebcontext) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 324, in render_element raise_qweb_exception(message="Could not render element %r" % element.tag, node=element, template=template) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 319, in render_element generated_attributes= name == "t" and generated_attributes or '')) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 294, in render_node result = self._render_tag[t_render](self, element, template_attributes, generated_attributes, qwebcontext) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 480, in render_tag_call_assets return bundle.to_html(css=css, js=js, debug=bool(qwebcontext.get('debug')), async=async) File "/home/mc/OCB/openerp/addons/base/ir/ir_qweb.py", line 1196, in to_html return sep + sep.join(response) QWebException: 'ascii' codec can't decode byte 0xef in position 208946: ordinal not in range(128) ^[[5~^[[5~^[[5~