:root{--o-primary: #714b67;--o-primary-dark: #5d3e55;--o-accent: #017e84;--o-bg: #f9fafb;--o-white: #fff;--o-text: #1f2328;--o-muted: #6b7280;--o-border: #d8dadd;--o-border-soft: #e8eaed;--o-hover: #f3f4f6;--o-success: #28a745;--o-warning: #e8a21a;--o-danger: #dc3545;--o-info: #17a2b8;--o-radius: 4px;color-scheme:light}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;background:var(--o-bg);color:var(--o-text);font:14px/1.5 Inter,Roboto,-apple-system,Segoe UI,sans-serif}a{color:var(--o-accent);text-decoration:none;cursor:pointer}a:hover{text-decoration:underline}button{font:inherit}code{background:var(--o-hover);padding:1px 5px;border-radius:3px;font-size:12px}.o_navbar{height:46px;background:var(--o-primary);color:#fff;display:flex;align-items:center;padding:0 8px;position:sticky;top:0;z-index:20}.o_navbar .o_app_icon{width:34px;height:34px;display:grid;place-items:center;border-radius:4px;margin-right:6px}.o_navbar .o_app_icon:hover{background:#ffffff26}.o_navbar .o_brand{font-weight:700;margin-right:14px;letter-spacing:.2px}.o_navbar .o_menu a{color:#ffffffe6;padding:0 12px;height:46px;display:inline-flex;align-items:center;font-weight:500}.o_navbar .o_menu a:hover{background:#ffffff1f;text-decoration:none}.o_navbar .o_menu a.router-link-active{background:#0000002e;color:#fff}.o_navbar .o_spacer{flex:1}.o_navbar .o_user{display:flex;align-items:center;gap:8px;padding:0 8px}.o_navbar .o_avatar{width:28px;height:28px;border-radius:50%;background:#fff;color:var(--o-primary);display:grid;place-items:center;font-weight:700;font-size:13px}.o_navbar button.o_logout{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;padding:4px 10px;border-radius:var(--o-radius);cursor:pointer}.o_navbar button.o_logout:hover{background:#ffffff26}.o_control_panel{background:var(--o-white);border-bottom:1px solid var(--o-border);padding:10px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-height:56px}.o_breadcrumb{display:flex;align-items:center;gap:6px;font-size:18px;flex:1;min-width:200px}.o_breadcrumb .sep{color:var(--o-muted)}.o_breadcrumb .current{font-weight:500}.o_cp_buttons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.o_cp_search{flex:1 1 280px;max-width:520px}.o_pager{color:var(--o-muted);white-space:nowrap}.btn{display:inline-flex;align-items:center;gap:6px;border-radius:var(--o-radius);border:1px solid var(--o-border);background:var(--o-white);color:var(--o-text);padding:5px 12px;cursor:pointer;line-height:1.5}.btn:hover{background:var(--o-hover)}.btn-primary{background:var(--o-primary);border-color:var(--o-primary);color:#fff}.btn-primary:hover{background:var(--o-primary-dark);border-color:var(--o-primary-dark)}.btn-link{border:none;background:none;color:var(--o-accent);padding:5px 6px}.btn-danger{color:var(--o-danger);border-color:var(--o-danger)}.btn-danger:hover{background:#fdeceb}.btn:disabled{opacity:.55;cursor:not-allowed}.o_content{padding:16px}.o_view_nocontent{text-align:center;color:var(--o-muted);padding:60px 20px}.o_list{background:var(--o-white);border:1px solid var(--o-border-soft);border-radius:var(--o-radius);overflow-x:auto}.o_list table{width:100%;border-collapse:collapse}.o_list th{text-align:left;font-weight:700;padding:8px 12px;border-bottom:2px solid var(--o-border);background:var(--o-white);white-space:nowrap;font-size:13px}.o_list td{padding:7px 12px;border-bottom:1px solid var(--o-border-soft);vertical-align:middle}.o_list tr.o_data_row{cursor:pointer}.o_list tr.o_data_row:hover td{background:var(--o-hover)}.o_list td.o_num,.o_list th.o_num{text-align:right}.o_muted{color:var(--o-muted)}.o_badge{display:inline-block;padding:1px 10px;border-radius:10px;font-size:12px;font-weight:600;background:#e9ecef;color:#495057}.o_badge.success{background:#d6f0dc;color:#1c7430}.o_badge.warning{background:#fdefc9;color:#8a5a00}.o_badge.danger{background:#fbdcdf;color:#a71d2a}.o_badge.info{background:#d1ecf1;color:#0c5460}.o_form_statusbar{background:var(--o-white);border-bottom:1px solid var(--o-border);padding:6px 16px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.o_form_statusbar .grow{flex:1}.o_statusbar_status{display:flex}.o_statusbar_status span{padding:4px 16px 4px 22px;background:var(--o-hover);color:var(--o-muted);font-size:13px;position:relative;border:1px solid var(--o-border-soft);margin-left:-1px;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%,10px 50%)}.o_statusbar_status span:first-child{padding-left:14px;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%)}.o_statusbar_status span.on{background:var(--o-primary);color:#fff;font-weight:600}.o_form_sheet_bg{padding:16px}.o_form_sheet{background:var(--o-white);border:1px solid var(--o-border-soft);box-shadow:0 1px 3px #00000014;max-width:1180px;margin:0 auto;padding:24px 28px 28px;border-radius:2px}.o_button_box{display:flex;justify-content:flex-end;gap:0;margin:-24px -28px 16px;border-bottom:1px solid var(--o-border-soft);flex-wrap:wrap}.oe_stat_button{display:flex;align-items:center;gap:8px;padding:8px 18px;border:none;border-left:1px solid var(--o-border-soft);background:var(--o-white);cursor:pointer;text-align:left;min-width:130px}.oe_stat_button:hover{background:var(--o-hover)}.oe_stat_button.on{box-shadow:inset 0 -2px 0 var(--o-primary)}.oe_stat_button .ico{color:var(--o-muted);font-size:18px}.oe_stat_button b{display:block;line-height:1.1;font-size:15px}.oe_stat_button span.t{color:var(--o-muted);font-size:12px}.o_form_title h1{font-size:28px;font-weight:500;margin:0}.o_form_title .sub{color:var(--o-muted);margin-top:2px}.o_group{display:grid;grid-template-columns:1fr 1fr;gap:0 48px;margin-top:18px}.o_group.one{grid-template-columns:1fr}.o_inner_group h3{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--o-primary);border-bottom:1px solid var(--o-border-soft);padding-bottom:4px}.o_row{display:grid;grid-template-columns:170px 1fr;align-items:start;gap:8px;margin-bottom:6px}.o_row>label{font-weight:700;padding-top:5px;color:#374151}.o_row .hint{grid-column:2;color:var(--o-muted);font-size:12px;margin-top:-2px}input.o_input,select.o_input,textarea.o_input{width:100%;font:inherit;color:inherit;background:transparent;border:none;border-bottom:1px solid var(--o-border);border-radius:0;padding:4px}input.o_input:hover,select.o_input:hover,textarea.o_input:hover{border-bottom-color:#9aa0a6}input.o_input:focus,select.o_input:focus,textarea.o_input:focus{outline:none;border-bottom:2px solid var(--o-primary);padding-bottom:3px;background:#fbf7fa}input.o_input:disabled{color:var(--o-muted);border-bottom-style:dotted}textarea.o_input{min-height:70px;resize:vertical;border:1px solid var(--o-border);padding:6px 8px}.o_checkbox{display:inline-flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer}.o_checkbox input{width:16px;height:16px;accent-color:var(--o-primary)}.o_notebook{margin-top:22px}.o_notebook_headers{display:flex;border-bottom:1px solid var(--o-border);gap:2px;flex-wrap:wrap}.o_notebook_headers button{background:none;border:none;border-bottom:2px solid transparent;padding:8px 16px;cursor:pointer;color:var(--o-muted);font-weight:500;margin-bottom:-1px}.o_notebook_headers button:hover{color:var(--o-text)}.o_notebook_headers button.active{color:var(--o-primary);border-bottom-color:var(--o-primary);font-weight:700}.o_notebook_content{padding-top:18px}.o_progressbar{height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.o_progressbar>div{height:100%;background:var(--o-success)}.o_progressbar.over>div{background:var(--o-danger)}.o_secret{font-family:ui-monospace,Menlo,monospace;background:#fff8e1;border:1px dashed var(--o-warning);border-radius:var(--o-radius);padding:10px 12px;word-break:break-all}.o_dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px}.o_stat{background:var(--o-white);border:1px solid var(--o-border-soft);border-left:4px solid var(--o-primary);border-radius:var(--o-radius);padding:12px 16px}.o_stat b{display:block;font-size:26px;line-height:1.15}.o_stat span{color:var(--o-muted)}.o_stat.success{border-left-color:var(--o-success)}.o_stat.warning{border-left-color:var(--o-warning)}.o_stat.danger{border-left-color:var(--o-danger)}.o_card{background:var(--o-white);border:1px solid var(--o-border-soft);border-radius:var(--o-radius);padding:16px 18px;margin-bottom:16px}.o_card h2{font-size:15px;margin:0 0 8px}.o_notification{position:fixed;top:54px;right:16px;z-index:50;background:var(--o-white);border:1px solid var(--o-border);border-left:4px solid var(--o-success);border-radius:var(--o-radius);box-shadow:0 4px 14px #00000026;padding:10px 16px;max-width:380px}.o_notification.err{border-left-color:var(--o-danger)}.o_login{min-height:100%;background:var(--o-bg);display:grid;place-items:center;padding:20px}.o_login_box{width:100%;max-width:360px;background:var(--o-white);border:1px solid var(--o-border-soft);border-radius:6px;box-shadow:0 2px 10px #00000014;padding:28px}.o_login_logo{text-align:center;font-size:26px;font-weight:800;color:var(--o-primary);margin-bottom:4px}.o_login_box p{text-align:center;color:var(--o-muted);margin:0 0 18px}.o_login_box label{font-weight:700;display:block;margin-bottom:4px}.o_login_box .field{margin-bottom:14px}.o_login_box input{width:100%;font:inherit;border:1px solid var(--o-border);border-radius:var(--o-radius);padding:7px 10px}.o_login_box input:focus{outline:none;border-color:var(--o-primary);box-shadow:0 0 0 2px #714b6733}.o_login_box .btn-primary{width:100%;justify-content:center;padding:8px}.o_error{color:var(--o-danger);margin-bottom:12px}@media(max-width:800px){.o_group,.o_row{grid-template-columns:1fr}.o_row .hint{grid-column:1}.o_navbar .o_menu a{padding:0 8px}.o_form_sheet{padding:16px}.o_button_box{margin:-16px -16px 12px}}
