/* Value Energy - Mobile Responsiveness Fix */
@media screen and (max-width: 768px) {
  .body-sidebar-container {
    position: fixed !important;
    left: -260px !important;
    top: 0 !important;
    bottom: 0 !important;
    z-index: 1050 !important;
    width: 250px !important;
    transition: left 0.3s ease !important;
    box-shadow: none !important;
  }
  .body-sidebar-container.expanded {
    left: -260px !important;
    width: 250px !important;
  }
  .body-sidebar-container.mobile-open {
    left: 0 !important;
    box-shadow: 4px 0 20px rgba(0,0,0,0.3) !important;
  }
  .body-sidebar-placeholder {
    display: none !important;
    width: 0 !important;
  }
  .body-sidebar {
    width: 250px !important;
  }
  .mobile-sidebar-overlay {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1049;
    display: none;
  }
  .mobile-sidebar-overlay.active {
    display: block;
  }
  #body {
    width: 100% !important;
    min-width: 100% !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  .page-container {
    width: 100% !important;
    padding: 0 !important;
  }
  .container {
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .page-head .container {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .page-head .page-title {
    max-width: 60% !important;
  }
  .navbar-breadcrumbs li {
    font-size: 13px !important;
  }
  .page-head .btn-primary-dark,
  .page-head .btn-primary {
    font-size: 12px !important;
    padding: 6px 10px !important;
  }
  .list-row .list-row-col {
    padding: 8px 4px !important;
  }
  .list-row-col.ellipsis {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  .level-left {
    flex-wrap: wrap !important;
  }
  .form-section .section-body {
    flex-direction: column !important;
  }
  .form-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  .section-body .form-column {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  input.input-with-feedback,
  select.input-with-feedback,
  textarea.input-with-feedback {
    font-size: 14px !important;
    padding: 8px !important;
    min-height: 40px !important;
  }
  .frappe-control .control-label {
    font-size: 12px !important;
  }
  .form-page .page-head .page-actions .btn {
    padding: 6px 10px !important;
    font-size: 12px !important;
  }
  .modal-dialog {
    margin: 10px !important;
    max-width: calc(100% - 20px) !important;
  }
  .btn {
    min-height: 38px !important;
    min-width: 38px !important;
  }
  .list-row {
    min-height: 48px !important;
  }
  .dropdown-menu {
    max-height: 60vh !important;
    overflow-y: auto !important;
  }
  .workspace-sidebar-wrapper {
    display: none !important;
  }
  .workspace-main-section {
    width: 100% !important;
    max-width: 100% !important;
  }
  .report-wrapper {
    overflow-x: auto !important;
  }
  .print-preview-wrapper {
    padding: 0 !important;
  }
}
@media screen and (max-width: 400px) {
  .page-head .page-title .title-text {
    font-size: 14px !important;
  }
  .page-head .btn-primary-dark,
  .page-head .btn-primary {
    font-size: 11px !important;
    padding: 5px 8px !important;
  }
  .list-row .list-row-col {
    padding: 6px 2px !important;
    font-size: 12px !important;
  }
  .container {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
}
/* === VE BRAND THEME v1 === */
/* Value Energy brand theme: navy titles & section heads, sky-blue labels/placeholders/help, black typed values, navy buttons/links. Mandatory/error reds preserved. */
:root{--ve-navy:#1E2A8A;--ve-sky:#3FB3E8;}

/* Page titles / breadcrumbs */
.page-title .title-text,.page-head .title-area .title-text,.page-head .title-text,.page-title h1,.page-title h2,.page-title h3,.navbar-brand,.app-title,h1.title,h2.title,h3.title{color:var(--ve-navy)!important;}

/* Section heads / collapsibles inside forms */
.form-section .section-head,.form-section.visible-section .section-head,.section-head,.form-tabs-list .form-tab,.form-dashboard-section .section-head,fieldset legend,.frappe-card .card-head,.frappe-card .head-title{color:var(--ve-navy)!important;font-weight:600;}

/* Field labels (the guiding words) */
.frappe-control .control-label,.control-label,label.control-label,.like-disabled-input.for-description,.form-group label,.form-control-label,.field-label,.input-with-feedback .control-label{color:var(--ve-sky)!important;}

/* Help / description text */
.help-box,.form-message,.text-muted.small,.help-text,.field-description{color:var(--ve-sky)!important;}

/* Placeholder text in all inputs */
input::placeholder,textarea::placeholder,select::placeholder,.form-control::placeholder,.like-disabled-input::placeholder,.awesomplete > input::placeholder{color:var(--ve-sky)!important;opacity:1!important;}
input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--ve-sky)!important;}
input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--ve-sky)!important;}

/* Typed text in fields - black */
.form-control,input.form-control,textarea.form-control,select.form-control,.like-disabled-input,.frappe-control input,.frappe-control textarea,.frappe-control select,.input-with-feedback,.ql-editor{color:#000!important;}

/* Links */
a,a:link,.link-text,.btn-link{color:var(--ve-navy);}
a:hover,a:focus{color:var(--ve-sky);}

/* Primary buttons get the navy; secondary gets sky */
.btn-primary,.btn.btn-primary,button.btn-primary{background-color:var(--ve-navy)!important;border-color:var(--ve-navy)!important;color:#fff!important;}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active{background-color:var(--ve-sky)!important;border-color:var(--ve-sky)!important;color:#fff!important;}
.btn-secondary,.btn.btn-secondary{background-color:#fff!important;border-color:var(--ve-sky)!important;color:var(--ve-navy)!important;}
.btn-secondary:hover,.btn-secondary:focus{background-color:var(--ve-sky)!important;color:#fff!important;}

/* Preserve mandatory red and error red */
.frappe-control.has-error .control-label,.has-error .control-label,.reqd,label.reqd::after,.control-label.reqd,.text-danger{color:#e24c4c!important;}
.has-error .form-control{border-color:#e24c4c!important;}

/* HRMS Frontend (Vue app at /hrms) - placeholders & labels */
#app input::placeholder,#app textarea::placeholder{color:var(--ve-sky)!important;opacity:1!important;}
#app .form-label,#app label{color:var(--ve-sky)!important;}
#app input,#app textarea,#app select{color:#000!important;}
#app h1,#app h2,#app h3,#app .page-title,#app .section-title{color:var(--ve-navy)!important;}
#app a{color:var(--ve-navy);}
#app .btn-primary,#app button.bg-gray-900,#app button.bg-black{background-color:var(--ve-navy)!important;color:#fff!important;}
/* === END VE BRAND THEME === */
