/* YG UI 0.2. Every rule is opt-in; /company never receives data-yg-ui.
   Keep Frappe and business widgets intact, share only presentation tokens. */
html[data-yg-ui] {
  --yg-primary:#245bdb; --yg-brand:#173b62; --yg-text:#202938;
  --yg-muted:#637083; --yg-canvas:#f5f6f8; --yg-surface:#fff;
  --yg-border:#dfe3e8; --yg-selected:#edf3ff;
  --yg-success:#23734d; --yg-warning:#945a08; --yg-danger:#b93838;
  --yg-sidebar:208px; --yg-header:56px; --yg-font:"Microsoft YaHei","PingFang SC","Segoe UI",sans-serif;
  --st-brand:var(--yg-brand)!important; --st-primary:var(--yg-primary)!important;
  --st-accent:var(--yg-primary)!important; --primary:var(--yg-primary)!important;
  --st-page-bg:var(--yg-canvas)!important; --bg-color:var(--yg-canvas)!important;
  --st-card-bg:var(--yg-surface)!important; --fg-color:var(--yg-surface)!important;
  --card-bg:var(--yg-surface)!important; --modal-bg:var(--yg-surface)!important;
  --st-text:var(--yg-text)!important; --st-text-primary:var(--yg-text)!important;
  --text-color:var(--yg-text)!important; --heading-color:var(--yg-text)!important;
  --st-text-muted:var(--yg-muted)!important; --text-muted:var(--yg-muted)!important;
  --border-color:var(--yg-border)!important; --st-border:var(--yg-border)!important;
  --st-sidebar-bg:#fafbfd!important; --st-navbar-bg:var(--yg-surface)!important;
  --st-toolbar-bg:var(--yg-surface)!important; --st-toolbar-text:var(--yg-text)!important;
  --st-sidebar-text:#4c596a!important; --st-sidebar-text-muted:var(--yg-muted)!important;
  --st-sidebar-hover:#f0f3f7!important; --st-sidebar-active:var(--yg-selected)!important;
  --st-sidebar-active-text:var(--yg-primary)!important; --st-sidebar-icon:var(--yg-muted)!important;
  --st-sidebar-width:208px!important; --sidebar-width:208px!important;
  --st-header-height:56px!important; --navbar-height:56px!important;
  --st-radius:8px!important; --st-radius-sm:6px!important;
  --st-shadow-sm:none!important; --st-shadow-md:0 8px 24px #20293814!important;
  --control-bg:var(--yg-surface)!important; --input-bg:var(--yg-surface)!important;
  --st-input-bg:var(--yg-surface)!important; --subtle-accent:var(--yg-selected)!important;
  --color-primary:var(--yg-primary)!important; --color-primary-light:var(--yg-primary)!important;
  font-size:14px!important; color-scheme:light;
}
/* An existing, explicitly selected dark preference remains usable. */
html[data-yg-ui][data-theme="dark"] {
  --yg-text:#e6ebf2; --yg-muted:#a7b2c2; --yg-canvas:#171c24; --yg-surface:#222934;
  --yg-border:#465163; --yg-selected:#263d64; --yg-primary:#8bb4ff;
  --st-sidebar-bg:#1d2430!important; --st-sidebar-text:#cbd4e2!important;
  --st-sidebar-hover:#2c3544!important; color-scheme:dark;
}
html[data-yg-ui] body {margin:0;font:14px/1.55 var(--yg-font)!important;font-variant-numeric:tabular-nums;color:var(--yg-text)!important;background:var(--yg-canvas)!important;}
html[data-yg-ui] *,html[data-yg-ui] *::before,html[data-yg-ui] *::after {box-sizing:border-box;}
/* ERPNext Banking uses its own React shell and published ink/surface tokens. */
html[data-yg-surface="banking"] {
  --default-font-family:var(--yg-font);--ink-gray-8:var(--yg-text);--ink-gray-7:var(--yg-text);
  --ink-gray-5:var(--yg-muted);--ink-gray-6:var(--yg-muted);
  --ink-blue-3:var(--yg-primary);--ink-blue-4:var(--yg-primary);--ink-blue-link:var(--yg-primary);
  --surface-white:var(--yg-surface);--surface-cards:var(--yg-surface);--surface-modal:var(--yg-surface);
  --surface-gray-1:var(--yg-canvas);--surface-gray-2:var(--yg-canvas);--surface-menu-bar:#fafbfd;
  --surface-blue-5:var(--yg-primary);--surface-blue-6:var(--yg-primary);--surface-blue-2:var(--yg-selected);
  --outline-gray-1:var(--yg-border);--outline-gray-2:var(--yg-border);--focus-shadow-blue:0 0 0 2px #245bdb40;
}
html[data-yg-surface="banking"] :is(button,[role="button"],input:not([type="checkbox"]):not([type="radio"]),select) {min-height:36px;border-radius:6px;}
@media(max-width:767px) {
  html[data-yg-surface="banking"] :is(button,[role="button"],input:not([type="checkbox"]):not([type="radio"]),select) {min-height:44px;}
}
html[data-yg-ui] :is(button,input,select,textarea) {font-family:var(--yg-font)!important;font-size:14px!important;font-variant-numeric:tabular-nums;}
html[data-yg-ui] :is(button,a,input,select,textarea,summary) {touch-action:manipulation;}
html[data-yg-ui] :focus-visible {outline:2px solid var(--yg-primary)!important;outline-offset:3px!important;}
/* Native breadcrumbs reuse title-text inside page-title. They are navigation,
   so exclude their descendants from the heading treatment. */
html[data-yg-ui] :is(h1,.st-sh-greeting,.page-title .title-text):not(.navbar-breadcrumbs *,.yg-breadcrumb *,.breadcrumb *,.breadcrumb-area *,#navbar-breadcrumbs *) {font-family:var(--yg-font)!important;font-size:24px!important;font-weight:600!important;line-height:1.4!important;letter-spacing:0!important;color:var(--yg-text)!important;}
html[data-yg-ui] :is(h2,.section-head,.form-section .section-head) {font-size:16px!important;font-weight:600!important;color:var(--yg-text)!important;}
html[data-yg-ui] :is(h3,h4,.control-label) {font-size:14px!important;}
html[data-yg-ui] :is(.text-muted,.help-box,.description,.form-dashboard-section .text-muted) {color:var(--yg-muted)!important;}
html[data-yg-ui] :is(.btn,.pl-btn,.pd-btn,.brand-production button,.yg-button) {min-height:36px;border-radius:6px!important;font-size:14px!important;font-weight:400!important;line-height:1.4;padding:7px 12px;box-shadow:none!important;}
html[data-yg-ui] :is(.btn-default,.btn-secondary,.pl-btn,.pd-btn,.brand-production button,.yg-button) {background:var(--yg-surface)!important;color:var(--yg-text)!important;border:1px solid var(--yg-border)!important;}
html[data-yg-ui] :is(.btn-primary,.pl-primary,.pd-btn-primary,.brand-production .bp-primary,.yg-button-primary) {background:var(--yg-primary)!important;color:#fff!important;border-color:var(--yg-primary)!important;}
html[data-yg-ui] :is(.btn-primary,.pl-primary,.pd-btn-primary,.brand-production .bp-primary):hover {filter:brightness(.94);}
html[data-yg-ui] :is(.form-control,.input-with-feedback,.pl-filters input,.pl-filters select,.pl-create-fields input,.pl-create-fields select,.brand-production input,.brand-production select) {height:36px;min-height:36px;border:1px solid var(--yg-border)!important;border-radius:6px!important;background:var(--yg-surface)!important;color:var(--yg-text)!important;box-shadow:none!important;}
html[data-yg-ui] :is(textarea.form-control,.control-input textarea) {height:auto;min-height:80px;}
html[data-yg-ui] :is(input[type="checkbox"],input[type="radio"]) {height:18px!important;min-height:18px!important;width:18px;accent-color:var(--yg-primary);}
html[data-yg-ui] :is(.yg-breadcrumb,.breadcrumb,.breadcrumb-area,.navbar-breadcrumbs,#navbar-breadcrumbs) {font-size:14px!important;font-weight:400!important;}
html[data-yg-ui] :is(.yg-breadcrumb,.breadcrumb,.breadcrumb-area,.navbar-breadcrumbs,#navbar-breadcrumbs) :is(a,span,li,strong,b,.title-text,.title-text-form) {font-size:14px!important;font-weight:400!important;color:var(--yg-muted)!important;}
html[data-yg-ui] :is(.yg-breadcrumb,.breadcrumb,.breadcrumb-area,.navbar-breadcrumbs,#navbar-breadcrumbs) :is([aria-current="page"],.title-text-form),
html[data-yg-ui] :is(.navbar-breadcrumbs,#navbar-breadcrumbs) :is(li:last-child,li.disabled) :is(a,span) {color:var(--yg-text)!important;}
html[data-yg-ui] :is(table,.list-row,.datatable,.grid-row) {font-size:13px!important;font-variant-numeric:tabular-nums;}
html[data-yg-ui] :is(table,.datatable) :is(th,td,.dt-cell__content) {font-size:13px!important;}
html[data-yg-ui] :is(table th,.list-row-head,.grid-heading-row,.dt-row-header .dt-cell) {background:var(--yg-canvas)!important;color:var(--yg-muted)!important;font-weight:500!important;}
html[data-yg-ui] :is(table th,table td) {border-color:var(--yg-border)!important;}
html[data-yg-ui] :is(.text-right,.text-end,.num,.numeric) {font-variant-numeric:tabular-nums;}
html[data-yg-ui] :is(.modal-content,dialog,.dropdown-menu,.awesomplete>ul) {border:1px solid var(--yg-border)!important;border-radius:8px!important;background:var(--yg-surface)!important;color:var(--yg-text)!important;box-shadow:0 12px 40px #20293826!important;}
html[data-yg-ui] :is(.modal-header,.modal-footer) {border-color:var(--yg-border)!important;}
html[data-yg-ui] :is(.indicator-pill,.indicator,.pd-badge,.pl-state,.bp-status) {font-size:12px!important;border-radius:4px!important;}
html[data-yg-ui] .yg-skip {position:fixed;left:16px;top:-80px;z-index:2000;background:var(--yg-surface);padding:10px 16px;border:1px solid var(--yg-primary);border-radius:6px;}
html[data-yg-ui] .yg-skip:focus {top:8px;}
/* Shared website shell. Page templates keep their content and account macros. */
html[data-yg-ui][data-yg-surface="web"] body:has(.yg-web-sidebar) {padding-left:var(--yg-sidebar);padding-top:var(--yg-header);min-width:0;}
html[data-yg-ui] .yg-web-sidebar {position:fixed;inset:0 auto 0 0;width:208px;z-index:1040;display:flex;flex-direction:column;padding:0 12px;background:var(--st-sidebar-bg);border-right:1px solid var(--yg-border);overflow-y:auto;overflow-x:hidden;}
html[data-yg-ui] .yg-web-brand {display:flex;align-items:center;gap:10px;min-height:80px;padding:12px 8px;color:var(--yg-brand);font-size:17px;font-weight:600;text-decoration:none;white-space:nowrap;}
html[data-yg-ui] .yg-web-brand img {width:128px;height:40px;object-fit:contain;flex:none;}
html[data-yg-ui] .yg-web-brand>span {display:none;}
html[data-yg-ui] .yg-web-brand small {display:block;font-size:12px;font-weight:400;color:var(--yg-muted);}
html[data-yg-ui] .yg-web-links {display:grid;gap:4px;}
html[data-yg-ui] .yg-web-links a {display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 12px;border-radius:6px;color:var(--st-sidebar-text);font-size:14px;white-space:nowrap;text-decoration:none;}
html[data-yg-ui] .yg-web-links a>span:first-child {width:18px;font-size:18px;text-align:center;flex:none;}
html[data-yg-ui] .yg-web-links a:hover {background:var(--st-sidebar-hover);}
html[data-yg-ui] .yg-web-links a[aria-current="page"] {background:var(--yg-selected);color:var(--yg-primary);font-weight:600;}
html[data-yg-ui] .yg-web-all {margin-top:auto;padding:16px 12px;color:var(--yg-muted);font-size:13px;white-space:nowrap;}
html[data-yg-ui] .yg-web-top {position:fixed;top:0;right:0;left:var(--yg-sidebar);height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px;border-bottom:1px solid var(--yg-border);background:var(--yg-surface);z-index:1035;}
html[data-yg-ui] .yg-web-location {display:flex;align-items:center;gap:12px;min-width:0;font-size:14px;}
html[data-yg-ui] .yg-web-location>span {white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
html[data-yg-ui] :is(#yg-web-toggle,#yg-desk-toggle) {width:36px;flex:none;padding:6px!important;line-height:1;}
html[data-yg-ui] .yg-account-tools {display:flex;justify-content:flex-end;min-width:0;background:transparent;padding:0;color:var(--yg-text);font:14px/1.55 var(--yg-font);}
html[data-yg-ui] .yg-account-tools>.navbar-nav {display:flex;flex-direction:row;align-items:center;gap:4px;margin:0;}
html[data-yg-ui] .yg-account-tools .nav-link {color:var(--yg-text);padding:8px;}
html[data-yg-ui] .yg-account-tools .dropdown-menu {position:absolute;right:0;left:auto;}
html[data-yg-ui] .yg-account-tools .dropdown-item {color:var(--yg-text);}
html[data-yg-ui] .yg-account-tools {gap:8px;}
html[data-yg-ui] .yg-desk-link {color:var(--yg-primary);font-size:14px;white-space:nowrap;padding:8px;}
html[data-yg-ui] .yg-account-fallback {position:relative;}
html[data-yg-ui] .yg-account-fallback[hidden] {display:none!important;}
html[data-yg-ui] .yg-account-fallback summary {padding:8px;cursor:pointer;white-space:nowrap;font-size:14px;}
html[data-yg-ui] .yg-account-popup {position:absolute;right:0;top:100%;display:grid;min-width:150px;background:var(--yg-surface);border:1px solid var(--yg-border);border-radius:8px;box-shadow:0 8px 24px #20293826;padding:6px;}
html[data-yg-ui] .yg-account-popup a {padding:8px 12px;color:var(--yg-text);white-space:nowrap;}
html[data-yg-ui] .yg-account-popup a:hover {background:var(--yg-selected);}
html[data-yg-ui][data-yg-surface="web"] :is(.page-content-wrapper,body>.container) {width:100%;max-width:none;min-width:0;}
html[data-yg-ui][data-yg-surface="web"] .page-content-wrapper {padding:24px;}
html[data-yg-ui][data-yg-surface="web"] .page-content-wrapper>main {padding:0;max-width:none;min-width:0;}
html[data-yg-ui][data-yg-surface="web"] :is(.page-header-wrapper,.page-breadcrumbs,.page-footer):empty {display:none;}
html[data-yg-ui][data-yg-web-collapsed] {--yg-sidebar:64px;}
html[data-yg-ui][data-yg-web-collapsed] .yg-web-sidebar {width:64px;padding:0 6px;}
html[data-yg-ui][data-yg-web-collapsed] :is(.yg-web-brand>span,.yg-web-links a>span:last-child,.yg-web-all) {display:none;}
html[data-yg-ui][data-yg-web-collapsed] .yg-web-brand {padding:12px 9px;}
html[data-yg-ui][data-yg-web-collapsed] .yg-web-links a {padding:10px 17px;}
html[data-yg-ui] .yg-scrim {position:fixed;inset:56px 0 0;z-index:1038;border:0;background:#20293866;}
html[data-yg-ui] .yg-scrim[hidden] {display:none!important;}
/* Existing Desk sidebar and toolbar: preserve their controls and listeners. */
html[data-yg-ui][data-yg-surface="desk"] :is(.main-section,.page-container,.layout-main-section-wrapper) {background:var(--yg-canvas)!important;}
html[data-yg-ui][data-yg-surface="desk"] :is(.layout-main-section,.frappe-card,.form-page,.form-section) {background:var(--yg-surface)!important;box-shadow:none!important;border-color:var(--yg-border)!important;}
html[data-yg-ui] #st-top-toolbar {height:56px!important;min-height:56px!important;left:var(--yg-sidebar)!important;right:0!important;width:auto!important;box-sizing:border-box;background:var(--yg-surface)!important;background-image:none!important;border-bottom:1px solid var(--yg-border)!important;padding:0 24px!important;box-shadow:none!important;}
html[data-yg-ui] #st-top-toolbar :is(a,button,span) {color:var(--yg-text)!important;}
html[data-yg-ui] #st-top-toolbar :is(.st-tb-left,.st-tb-right) {gap:8px;min-width:0;}
html[data-yg-ui] #st-top-toolbar :is(#st-tb-search,#st-options-btn,#st-lang-btn,.st-tb-qn-btn,#st-user-btn) {height:36px!important;min-height:36px!important;font-size:14px!important;border-radius:6px!important;background:transparent!important;box-shadow:none!important;border-color:var(--yg-border)!important;}
html[data-yg-ui] #st-top-toolbar #st-tb-search {width:208px;background:var(--yg-canvas)!important;}
html[data-yg-ui] #st-top-toolbar .st-tb-sep {background:var(--yg-border)!important;}
html[data-yg-ui] #st-top-toolbar :is(#st-tb-clock,#st-sh-link) {font-size:13px;color:var(--yg-muted)!important;}
html[data-yg-ui] #st-top-toolbar .st-user-av {background:var(--yg-selected)!important;color:var(--yg-primary)!important;}
html[data-yg-ui] #st-icon-rail {display:none!important;}
html[data-yg-ui] .body-sidebar-container {width:var(--yg-sidebar)!important;flex:0 0 var(--yg-sidebar)!important;}
html[data-yg-ui] :is(.body-sidebar-container,.body-sidebar-placeholder) {max-width:var(--yg-sidebar)!important;}
html[data-yg-ui] .body-sidebar-container .body-sidebar-placeholder {width:var(--yg-sidebar)!important;}
html[data-yg-ui] .body-sidebar-container .body-sidebar {width:var(--yg-sidebar)!important;margin-top:0!important;top:0!important;height:100dvh!important;background:var(--st-sidebar-bg)!important;border-right:1px solid var(--yg-border)!important;}
html[data-yg-ui] #st-company-header {height:80px;min-height:80px;border-bottom:0;padding:16px;gap:10px;}
html[data-yg-ui] #st-company-header img {width:144px;height:40px;object-fit:contain;flex:none;}
html[data-yg-ui] #st-company-header .st-company-name {display:none;}
html[data-yg-ui] .body-sidebar-container .body-sidebar .standard-sidebar-item .item-anchor {border-radius:6px!important;min-height:36px!important;padding:6px 10px!important;font-size:14px!important;}
html[data-yg-ui] .body-sidebar-container .body-sidebar .sidebar-item-label {font-size:14px!important;}
html[data-yg-ui] .body-sidebar-container .body-sidebar .standard-sidebar-item.active-sidebar .item-anchor {border-left:0!important;color:var(--yg-primary)!important;background:var(--yg-selected)!important;}
html[data-yg-ui] .body-sidebar :is(.section-break,.section-item) .sidebar-item-label {font-size:12px!important;color:var(--yg-muted)!important;}
html[data-yg-ui] body.st-has-toolbar .page-container {padding-top:56px!important;}
html[data-yg-ui][data-yg-surface="desk"] .page-head {top:56px!important;background:var(--yg-canvas)!important;border-color:var(--yg-border)!important;}
html[data-yg-ui][data-yg-surface="desk"] .page-head>.container {padding:16px 24px!important;}
html[data-yg-ui][data-yg-surface="desk"] .page-body {padding:0 24px 24px!important;}
html[data-yg-ui][data-yg-surface="desk"] :is(.page-head>.container,.page-body>.container) {max-width:none;width:100%;}
html[data-yg-ui] :is(.list-row-container,.list-row) {min-height:44px;}
html[data-yg-ui] .list-row-head {min-height:36px;}
html[data-yg-ui] .form-section {padding:16px!important;}
html[data-yg-ui] .form-dashboard-section {padding:16px!important;}
html[data-yg-ui] .form-grid {border-color:var(--yg-border)!important;border-radius:6px!important;}
html[data-yg-ui] :is(.grid-row,.grid-heading-row) {color:var(--yg-text)!important;}
html[data-yg-ui] :is(.st-sh-role-task,.st-sh-card) {border:1px solid var(--yg-border)!important;background:var(--yg-surface)!important;border-radius:8px!important;box-shadow:none!important;}
html[data-yg-ui] .st-smart-home {width:100%;max-width:none;padding:24px;}
html[data-yg-ui] .st-sh-header {margin-bottom:24px;}
html[data-yg-ui] .st-sh-role-grid {grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;}
html[data-yg-ui] .st-sh-role-task {padding:16px!important;min-height:100px!important;}
html[data-yg-ui] .st-sh-role-task strong {font-size:16px!important;color:var(--yg-text)!important;font-weight:600!important;}
html[data-yg-ui] .st-sh-role-task>span {font-size:13px!important;color:var(--yg-muted)!important;}
html[data-yg-ui] :is(.st-sh-role-task .st-sh-role-arrow,.st-sh-eyebrow,.st-sh-name) {color:var(--yg-primary)!important;}
/* Page families use the same tokens without replacing their business markup. */
html[data-yg-ui] :is(.pl-wrap,.pd-wrap,.brand-production,#pb-root,#project-documents-app) {max-width:none;width:100%;min-width:0;margin:0;padding:0;background:var(--yg-canvas);color:var(--yg-text);font-family:var(--yg-font);}
html[data-yg-ui] .brand-production {--bp-blue:var(--yg-primary);--bp-ink:var(--yg-text);--bp-muted:var(--yg-muted);--bp-line:var(--yg-border);--bp-soft:var(--yg-selected);padding:16px 0 24px;}
html[data-yg-ui] :is(.bp-panel,.pd-section,.pl-filters,.pl-table-wrap,.pl-empty) {border-color:var(--yg-border)!important;border-radius:8px!important;box-shadow:none!important;background:var(--yg-surface)!important;}
html[data-yg-ui] :is(.pl-wrap h1,.pd-wrap h1,.brand-production h1) {font-size:24px!important;font-weight:600!important;}
html[data-yg-ui] :is(.pl-filters,.pd-section) {padding:16px;}
html[data-yg-ui] :is(.pl-header,.pd-topbar,.bp-intro) {margin-bottom:24px;}
html[data-yg-ui] :is(.pl-table td,.pd-table td) {height:44px;padding:10px 14px;}
html[data-yg-ui] :is(.pl-table th,.pd-table th) {height:36px;padding:8px 14px;}
html[data-yg-ui] :is(.pl-title,.pl-open,.pd-wrap a) {color:var(--yg-primary);}
html[data-yg-ui] .pl-status-filter summary {min-height:36px;padding:6px 10px;border-color:var(--yg-border);border-radius:6px;}
html[data-yg-ui] .pl-filters input {padding:6px 10px;}
html[data-yg-ui] :is(.pd-wrap,.pd-modal) {--pd-ink:var(--yg-text);--pd-muted:var(--yg-muted);--pd-border:var(--yg-border);--pd-primary:var(--yg-primary);}
html[data-yg-ui] .pd-field :is(input,select,textarea) {font-size:14px;min-height:36px;border-color:var(--yg-border);border-radius:6px;}
html[data-yg-ui] .brand-production :is(.bp-panel,.bp-steps) {margin-bottom:24px;border-radius:8px;}
html[data-yg-ui] .brand-production :is(.bp-panelhead,.bp-panelbody) {padding:16px 18px;}
html[data-yg-ui] .brand-production .bp-steps button {border:0!important;border-right:1px solid var(--yg-border)!important;border-radius:0!important;min-height:44px;}
html[data-yg-ui] .brand-production .bp-steps button:last-child {border-right:0!important;}
html[data-yg-ui] .brand-production .bp-steps b {color:var(--yg-primary);border-color:var(--yg-border);}
html[data-yg-ui] .brand-production .bp-tabs button[aria-selected="true"] {background:var(--yg-selected)!important;color:var(--yg-primary)!important;}
html[data-yg-ui] .brand-production .bp-input-table :is(input,select) {font-size:14px!important;}
html[data-yg-ui] .brand-production .bp-changed input {background:#fff7ea!important;border-color:#c28a37!important;}
html[data-yg-ui] .brand-production :is(button:disabled,input:disabled,select:disabled) {opacity:.55;cursor:not-allowed;}
html[data-yg-ui] :is(.pl-table-wrap,.pd-table-wrap,.bp-tablewrap,.table-responsive,.dt-scrollable,.form-grid-container) {max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;}
html[data-yg-ui] #pb-root {--color-primary:var(--yg-primary);--color-primary-light:var(--yg-primary);--bg-page:var(--yg-canvas);--bg-card:var(--yg-surface);--text-primary:var(--yg-text);--text-secondary:var(--yg-muted);--text-muted:var(--yg-muted);--border:var(--yg-border);--shadow:none;--radius:8px;overflow-x:visible;}
html[data-yg-ui] #pb-root .wrap {max-width:none;}
html[data-yg-ui] #pb-root .pb-nav {display:none;}
html[data-yg-ui] #pb-root .hero {background:transparent;border-radius:0;padding:0;margin-bottom:24px;box-shadow:none;}
html[data-yg-ui] #pb-root .hero :is(h1,.sub,.time) {color:var(--yg-text);}
html[data-yg-ui] #pb-root .hero h1 {font-size:24px!important;font-weight:600!important;}
html[data-yg-ui] #pb-root .hero :is(.sub,.time) {color:var(--yg-muted);font-size:12px;}
html[data-yg-ui] #pb-root .hero::before,html[data-yg-ui] #pb-root .hero::after,html[data-yg-ui] #pb-root .hero .dot {display:none;}
html[data-yg-ui] #pb-root :is(.btn-refresh,.pf-reset,.bar-toggle) {border:1px solid var(--yg-border);background:var(--yg-surface);color:var(--yg-text);min-height:36px;padding:7px 12px;border-radius:6px;font-size:14px;box-shadow:none;transform:none;}
html[data-yg-ui] #pb-root .pb-filter {background:var(--yg-surface);border:1px solid var(--yg-border);border-radius:8px;padding:12px 16px;}
html[data-yg-ui] #pb-root .pb-filter select {min-height:36px;border:1px solid var(--yg-border);border-radius:6px;background:var(--yg-surface);color:var(--yg-text);font-size:14px;}
html[data-yg-ui] #pb-root .kpi-grid {gap:12px;}
html[data-yg-ui] #pb-root :is(.kpi,.panel) {border:1px solid var(--yg-border);border-radius:8px;box-shadow:none;padding:16px;transform:none;}
html[data-yg-ui] #pb-root .kpi .accent {width:3px;}
html[data-yg-ui] #pb-root .kpi .num {font-size:28px;line-height:1.3;}
html[data-yg-ui] #pb-root :is(.kpi .sub,.kpi-mini,.kpi-trend-empty,.hint) {font-size:12px;}
html[data-yg-ui] #pb-root .kpi-mini {flex-direction:column;align-items:flex-start;gap:4px;min-width:0;white-space:normal;}
html[data-yg-ui] #pb-root .kpi-mini>span {width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.5;}
html[data-yg-ui] #pb-root .grid-2 {gap:20px;margin-bottom:20px;}
html[data-yg-ui] #pb-root .tbl-scroll {max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;}
html[data-yg-ui] #project-documents-app {--navy:var(--yg-primary);--navy-deep:var(--yg-brand);--accent:var(--yg-primary);--canvas:var(--yg-canvas);--paper:var(--yg-surface);--ink:var(--yg-text);--muted:var(--yg-muted);--line:var(--yg-border);--soft:var(--yg-selected);--shadow:none;}
html[data-yg-ui] #project-documents-app .app-shell {display:block;min-height:0;}
html[data-yg-ui] #project-documents-app .sidebar {position:static;height:auto;min-height:0;padding:0;margin-bottom:16px;display:block;background:transparent;color:var(--yg-text);border-bottom:1px solid var(--yg-border);}
html[data-yg-ui] #project-documents-app .sidebar :is(.brand,.sidebar-label,.sidebar-note) {display:none;}
html[data-yg-ui] #project-documents-app .sidebar nav {display:flex;gap:20px;overflow-x:auto;}
html[data-yg-ui] #project-documents-app .nav-button {width:auto;min-width:max-content;padding:10px 0;min-height:44px;border:0;border-bottom:2px solid transparent;border-radius:0;box-shadow:none;color:var(--yg-muted);background:transparent;font-size:14px;font-weight:400;}
html[data-yg-ui] #project-documents-app .nav-button.active {color:var(--yg-primary);border-bottom-color:var(--yg-primary);font-weight:600;background:transparent;}
html[data-yg-ui] #project-documents-app .main {padding:0;}
html[data-yg-ui] #project-documents-app .topbar {min-height:40px;border:0;}
html[data-yg-ui] #project-documents-app .page-header {margin:16px 0 24px;}
html[data-yg-ui] #project-documents-app h1 {font-size:24px!important;font-weight:600!important;}
html[data-yg-ui] #project-documents-app :is(input,select,textarea,.btn) {font-size:14px!important;border-radius:6px!important;}
html[data-yg-ui] #project-documents-app .btn.primary {background:var(--yg-primary);border-color:var(--yg-primary);color:white;}
html[data-yg-ui] #project-documents-app .data-table {font-size:13px;}
html[data-yg-ui] :is(.wr-shell,.pwr-shell,.mwb-shell,.cl-shell) {padding:0;margin:0 auto;min-height:0;font-size:14px;}
html[data-yg-ui] {--pwr-ink:var(--yg-text);--pwr-muted:var(--yg-muted);--pwr-line:var(--yg-border);--pwr-paper:var(--yg-surface);--pwr-blue:var(--yg-primary);--wr-porcelain:var(--yg-canvas);--wr-paper:var(--yg-surface);--wr-graphite:var(--yg-text);--wr-steel:var(--yg-primary);--wr-muted:var(--yg-muted);--wr-line:var(--yg-border);--mwb-ink:var(--yg-text);--mwb-muted:var(--yg-muted);--mwb-paper:var(--yg-canvas);--mwb-card:var(--yg-surface);--mwb-line:var(--yg-border);--mwb-site:var(--yg-primary);--mwb-measure:var(--yg-primary);--mwb-workshop:var(--yg-primary);}
html[data-yg-ui] .cl-shell {--color-primary:var(--yg-primary);--text-primary:var(--yg-text);--text-secondary:var(--yg-muted);--border-default:var(--yg-border);}
html[data-yg-ui] :is(.wr-shell,.pwr-shell,.mwb-shell,.cl-shell) :is(h1,.title) {font-size:24px!important;font-weight:600!important;}
html[data-yg-ui] :is(.wr-shell,.pwr-shell,.cl-shell) :is(input:not([type="checkbox"]):not([type="range"]),select,textarea) {border-color:var(--yg-border);border-radius:6px;font-size:14px;}
html[data-yg-ui] :is(.wr-shell,.pwr-shell,.cl-shell) :is(button,.btn) {border-radius:6px;font-size:14px;}
html[data-yg-ui] :is(.mwb-card,.wr-ticket,.pwr-ticket,.mwb-head,.cl-shell .nav) {box-shadow:none;border-radius:8px;border-color:var(--yg-border);}
/* Login stays a compact authentication page; the existing hash flows remain. */
html[data-yg-ui][data-yg-surface="login"] body {background:var(--yg-canvas)!important;animation:none!important;}
html[data-yg-ui][data-yg-surface="login"] body::before {display:none!important;}
html[data-yg-ui][data-yg-surface="login"] :is(.for-login,.for-forgot,.for-signup,.for-email-login,.for-login-with-email-link) {padding:32px 16px!important;}
/* The legacy login theme forces the password section to flex!important.
   Honor Frappe's own hidden state without taking over its auth/hash routing. */
html[data-yg-ui][data-yg-surface="login"] :is(.for-login,.for-forgot,.for-signup,.for-email-login,.for-login-with-email-link):is([hidden],.hide,[style*="display: none"],[style*="display:none"]) {display:none!important;}
html[data-yg-ui][data-yg-surface="login"] .page-card {width:min(420px,100%)!important;max-width:420px!important;padding:28px!important;border:1px solid var(--yg-border)!important;border-radius:8px!important;box-shadow:none!important;background:var(--yg-surface)!important;animation:none!important;}
html[data-yg-ui][data-yg-surface="login"] .page-card-head {padding:0!important;animation:none!important;}
html[data-yg-ui][data-yg-surface="login"] .page-card-head h4 {font-size:24px!important;font-weight:600!important;color:var(--yg-text)!important;}
html[data-yg-ui][data-yg-surface="login"] .page-card .form-control {height:44px!important;min-height:44px!important;border:1px solid var(--yg-border)!important;border-radius:6px!important;color:var(--yg-text)!important;background:var(--yg-surface)!important;font-size:14px!important;}
html[data-yg-ui][data-yg-surface="login"] .page-card .btn-primary {min-height:44px!important;background:var(--yg-primary)!important;background-image:none!important;border-radius:6px!important;font-size:14px!important;font-weight:400!important;box-shadow:none!important;}
/* Frappe labels the actual password submit as btn-default btn-login. */
html[data-yg-ui][data-yg-surface="login"] .page-card .btn-login {background:var(--yg-primary)!important;background-image:none!important;border-color:var(--yg-primary)!important;color:#fff!important;box-shadow:none!important;}
html[data-yg-ui][data-yg-surface="login"] :is(.st-login-custom-footer,.sign-up-message) {color:var(--yg-muted)!important;}
html[data-yg-ui][data-yg-surface="login"] :is(.st-login-company-logo,.app-logo) {max-height:52px!important;}
@media(max-width:767px) {
  html[data-yg-ui][data-yg-surface="login"] .page-card .btn-login-option {min-height:44px!important;display:flex;align-items:center;justify-content:center;}
  html[data-yg-ui] #project-documents-app .sidebar nav {gap:16px;}
  html[data-yg-ui] #project-documents-app :is(.topbar,.page-header) {flex-wrap:wrap;}
  html[data-yg-ui] #project-documents-app .top-actions {width:100%;justify-content:space-between;}
  html[data-yg-ui] #project-documents-app :is(.btn,input,select) {min-height:44px;}
  html[data-yg-ui] #pb-root .hero .right {flex-wrap:wrap;gap:8px;}
  html[data-yg-ui] #pb-root .hero .time {width:100%;}
  html[data-yg-ui] #pb-root .kpi-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  html[data-yg-ui] #pb-root .grid-2 {grid-template-columns:minmax(0,1fr);}
  html[data-yg-ui] #pb-root :is(.btn-refresh,.pf-reset,select) {min-height:44px;}
  html[data-yg-ui] :is(.pl-wrap,.pd-wrap) {padding:0;}
  html[data-yg-ui] .pl-table td {height:auto;padding:0;}
  html[data-yg-ui] .pl-status-filter summary {min-height:44px;padding:10px;}
  html[data-yg-ui] .brand-production :is(.bp-panelbody,.bp-panelhead) {padding:12px;}
  html[data-yg-ui] .yg-web-sidebar {width:208px;transform:translateX(-100%);top:56px;}
  html[data-yg-ui][data-yg-mobile-open] body {overflow:hidden;}
  html[data-yg-ui][data-yg-mobile-open] .yg-web-sidebar {transform:none;}
  html[data-yg-ui] .yg-web-top {left:0;padding:0 12px;}
  html[data-yg-ui] .yg-web-brand {min-height:68px;}
  html[data-yg-ui] .yg-web-links a {min-height:44px;}
  html[data-yg-ui][data-yg-surface="web"] .page-content-wrapper {padding:16px 12px;}
  html[data-yg-ui] .yg-account-tools .nav-link {min-height:44px;display:flex;align-items:center;}
  html[data-yg-ui] .yg-account-tools .navbar-nav {flex-wrap:nowrap;}
  html[data-yg-ui] .yg-account-tools .website-search {max-width:110px;}
  html[data-yg-ui] #st-top-toolbar {left:0!important;padding:0 12px!important;gap:8px;flex-wrap:nowrap;align-items:center;}
  html[data-yg-ui] #st-top-toolbar :is(#st-tb-clock,#st-sh-link,.st-tb-sep,#st-tb-quicknav,#st-dark-toggle,#st-lang-wrapper) {display:none!important;}
  html[data-yg-ui] #st-top-toolbar #st-tb-search {width:44px!important;min-width:44px!important;}
  html[data-yg-ui] #st-top-toolbar #st-tb-search :is(.st-tb-search-text,.st-tb-search-kbd) {display:none!important;}
  html[data-yg-ui] #st-top-toolbar .st-tb-left {flex:0 0 44px!important;}
  html[data-yg-ui] #st-top-toolbar .st-tb-right {flex:0 0 auto!important;gap:6px;margin-left:auto;align-items:center;}
  html[data-yg-ui] #st-top-toolbar :is(button,#st-user-btn) {height:44px!important;min-height:44px!important;white-space:nowrap;}
  html[data-yg-ui] #st-top-toolbar :is(#yg-desk-toggle,#st-user-btn,#st-notif-bell,.desktop-notifications .btn-reset,.desktop-notifications .nav-link) {width:44px!important;min-width:44px!important;height:44px!important;padding:0!important;flex-shrink:0;justify-content:center;}
  /* Older polish.css made this an icon-only 28px button. YG keeps its text,
     so restore an intrinsic horizontal width rather than wrapping it. */
  html[data-yg-ui] #st-top-toolbar #st-options-btn {width:auto!important;min-width:max-content!important;padding:0 8px!important;gap:6px;font-size:14px!important;white-space:nowrap!important;flex-shrink:0;}
  html[data-yg-ui] .body-sidebar-container {width:0!important;flex-basis:0!important;}
  html[data-yg-ui] .body-sidebar-container .body-sidebar {position:fixed!important;width:208px!important;top:56px!important;left:0!important;height:calc(100dvh - 56px)!important;transform:translateX(-100%)!important;z-index:1040!important;visibility:hidden!important;}
  html[data-yg-ui][data-yg-mobile-open] .body-sidebar-container .body-sidebar {transform:none!important;visibility:visible!important;}
  html[data-yg-ui] .body-sidebar-container .body-sidebar-placeholder {display:none!important;}
  html[data-yg-ui][data-yg-surface="desk"] .page-head>.container {padding:12px!important;}
  html[data-yg-ui][data-yg-surface="desk"] .page-body {padding:0 12px 16px!important;}
  html[data-yg-ui] .st-smart-home {padding:16px 12px;}
  html[data-yg-ui] .st-sh-role-grid {grid-template-columns:1fr!important;}
  html[data-yg-ui] .st-sh-role-task {min-height:90px!important;}
  html[data-yg-ui] :is(.btn,.pl-btn,.pd-btn,.brand-production button,.yg-button) {min-height:44px;}
  html[data-yg-ui] :is(.form-control,.pl-filters input,.pl-filters select,.brand-production input,.brand-production select) {min-height:44px;}
}
@media(prefers-reduced-motion:reduce) {
  html[data-yg-ui] *,html[data-yg-ui] *::before,html[data-yg-ui] *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}
@media print {
  html[data-yg-ui] {--yg-text:#000;--yg-muted:#444;--yg-canvas:#fff;--yg-surface:#fff;--yg-border:#aaa;color-scheme:light;}
  html[data-yg-ui] body {background:#fff!important;}
  html[data-yg-ui][data-yg-surface="web"] body {padding:0!important;}
  html[data-yg-ui] :is(.yg-web-sidebar,.yg-web-top,.yg-skip,.yg-scrim,#yg-desk-toggle) {display:none!important;}
}
