:root{
  --corte-bg:#f5f7fb;
  --corte-panel:#ffffff;
  --corte-ink:#111827;
  --corte-muted:#6b7280;
  --corte-line:#e5e7eb;
  --corte-black:#0b0f19;
  --corte-blue:#2563eb;
  --corte-soft:#eef2ff;
  --corte-danger:#dc2626;
  --corte-radius:20px;
  --corte-shadow:0 18px 45px rgba(15,23,42,.08);
}
body:has(.corte-app-shell){background:var(--corte-bg)}
body:has(.corte-app-shell),body:has(.corte-login-wrap){background:var(--corte-bg)!important}
body:has(.corte-app-shell) header:not(.topbar):not(.quote-hero):not(.panel-head):not(.diag-head):not(.doc-card-head),
body:has(.corte-app-shell) footer:not(.quote-footer),
body:has(.corte-login-wrap) header,
body:has(.corte-login-wrap) footer,
body:has(.corte-app-shell) #masthead,body:has(.corte-app-shell) #colophon,
body:has(.corte-app-shell) .site-header,body:has(.corte-app-shell) .site-footer,
body:has(.corte-app-shell) .elementor-location-header,body:has(.corte-app-shell) .elementor-location-footer,
body:has(.corte-app-shell) .hfe-before-footer-wrap,body:has(.corte-app-shell) .hfe-flyout-wrapper,body:has(.corte-app-shell) .hfe-nav-menu,
body:has(.corte-app-shell) .ast-above-header-wrap,body:has(.corte-app-shell) .ast-primary-header-bar,body:has(.corte-app-shell) .ast-builder-layout-element,
body:has(.corte-app-shell) .main-header-bar,body:has(.corte-app-shell) .main-navigation,body:has(.corte-app-shell) .site-below-footer-wrap,
body:has(.corte-login-wrap) #masthead,body:has(.corte-login-wrap) #colophon,
body:has(.corte-login-wrap) .site-header,body:has(.corte-login-wrap) .site-footer,
body:has(.corte-login-wrap) .elementor-location-header,body:has(.corte-login-wrap) .elementor-location-footer,
body:has(.corte-login-wrap) .hfe-before-footer-wrap,body:has(.corte-login-wrap) .hfe-flyout-wrapper,body:has(.corte-login-wrap) .hfe-nav-menu,
body:has(.corte-login-wrap) .ast-above-header-wrap,body:has(.corte-login-wrap) .ast-primary-header-bar,body:has(.corte-login-wrap) .ast-builder-layout-element,
body:has(.corte-login-wrap) .main-header-bar,body:has(.corte-login-wrap) .main-navigation,body:has(.corte-login-wrap) .site-below-footer-wrap{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important}
body:has(.corte-app-shell) #page,body:has(.corte-login-wrap) #page,body:has(.corte-app-shell) .site,body:has(.corte-login-wrap) .site,body:has(.corte-app-shell) #content,body:has(.corte-login-wrap) #content,body:has(.corte-app-shell) .site-content,body:has(.corte-login-wrap) .site-content{margin:0!important;padding-top:0!important}

.corte-app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh;margin:0;background:var(--corte-bg);color:var(--corte-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;align-items:start}
.corte-sidebar{background:linear-gradient(180deg,#0b0f19 0%,#111827 100%);color:#fff;min-height:100vh;padding:24px;position:sticky;top:0;align-self:start}
.brand{display:flex;gap:14px;align-items:center;margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.1)}
.brand img{width:52px;height:52px;object-fit:contain;background:#fff;border-radius:16px;padding:8px}
.brand strong{display:block;font-size:18px;letter-spacing:-.02em}.brand small{display:block;color:#b7c0d1;margin-top:2px}
.corte-sidebar nav{display:flex;flex-direction:column;gap:8px}.nav-item{appearance:none;border:0;background:transparent;color:#cbd5e1;text-align:left;padding:13px 14px;border-radius:14px;font-weight:700;cursor:pointer;display:flex;gap:12px;align-items:center;transition:.15s ease}.nav-item:hover{background:rgba(255,255,255,.08);color:#fff}.nav-item.active{background:#fff;color:#111827;box-shadow:0 12px 30px rgba(0,0,0,.16)}.nav-item span{width:22px;text-align:center}.sidebar-foot{position:absolute;bottom:24px;left:24px;right:24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:16px}.sidebar-foot small{display:block;color:#b7c0d1}.sidebar-foot strong{display:block;margin:5px 0;font-size:16px}
.corte-main{padding:34px;max-width:calc(100vw - 280px)}.topbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:26px}.topbar h1{margin:0;font-size:34px;letter-spacing:-.04em}.topbar p{margin:6px 0 0;color:var(--corte-muted)}
.panel{background:var(--corte-panel);border:1px solid var(--corte-line);border-radius:var(--corte-radius);box-shadow:var(--corte-shadow);padding:24px;margin-bottom:24px}.panel h2{margin:0 0 16px;font-size:20px;letter-spacing:-.02em}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.panel-head h2{margin:0}.danger-panel{border-color:#fecaca;background:#fff7f7}.alert{background:#fee2e2;color:#991b1b;border-radius:12px;padding:12px 14px;font-weight:700}
.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.metric{background:#fff;border:1px solid var(--corte-line);border-radius:20px;padding:22px;box-shadow:var(--corte-shadow)}.metric small{display:block;color:var(--corte-muted);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.08em}.metric strong{display:block;font-size:28px;margin:8px 0;letter-spacing:-.04em}.metric span{color:var(--corte-muted)}.sar-status{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.sar-status div{background:#f8fafc;border:1px solid var(--corte-line);border-radius:16px;padding:14px;min-width:0}.sar-status small{display:block;color:var(--corte-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.sar-status strong{display:block;margin-top:5px;word-break:break-word}.quick-actions{display:flex;gap:14px}
button,.mini,a.mini{font-family:inherit}.primary,.secondary,.ghost,.mini{border:0;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;line-height:1.1}.primary{background:var(--corte-black);color:#fff}.secondary{background:var(--corte-soft);color:#1e3a8a}.ghost{background:#fff;color:#111827;border:1px solid var(--corte-line)}.big{padding:16px 20px;border-radius:16px}.mini{font-size:12px;padding:8px 10px;background:#f3f4f6;color:#111827}.primary-mini{background:#111827;color:#fff}.danger{background:#fee2e2!important;color:#991b1b!important}.row-actions{display:flex;flex-wrap:wrap;gap:6px}.badge{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eef2ff;color:#3730a3;font-weight:800;font-size:12px}.danger-badge{background:#fee2e2;color:#991b1b}.hint{color:var(--corte-muted);margin-top:-6px}.empty{color:var(--corte-muted);background:#f8fafc;border:1px dashed var(--corte-line);border-radius:16px;padding:22px;text-align:center}
.split{display:grid;grid-template-columns:360px 1fr;gap:24px;align-items:start}.form-card label{display:block;font-weight:800;margin-bottom:13px;color:#374151}.form-card input,.form-card select,.form-card textarea,.quote-builder input,.quote-builder select,.quote-builder textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--corte-line);background:#fff;border-radius:12px;padding:11px 12px;color:#111827;font:inherit;font-weight:500}.form-card textarea,.quote-builder textarea{min-height:82px;resize:vertical}.form-grid{display:grid;gap:14px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}.actions{display:flex;gap:10px;align-items:center;margin-top:8px}.wide{max-width:1080px}.table-wrap{overflow:auto}table{width:100%;border-collapse:separate;border-spacing:0}th{background:#f8fafc;color:#475569;font-size:12px;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:13px;border-bottom:1px solid var(--corte-line)}td{padding:14px 13px;border-bottom:1px solid var(--corte-line);vertical-align:top}tr:hover td{background:#fcfcfd}td small{color:var(--corte-muted)}
.quote-builder{overflow:hidden}.items-editor{margin:18px 0}.editor-table th,.editor-table td{padding:10px}.editor-table textarea{min-height:58px}.editor-table td:first-child{min-width:190px}.editor-table td:nth-child(2){min-width:260px}.quote-total{display:flex;justify-content:flex-end;gap:18px;margin:18px 0;background:#f8fafc;border:1px solid var(--corte-line);border-radius:16px;padding:16px}.quote-total span{color:#475569}.quote-total strong{color:#111827}.toast{position:fixed;right:24px;bottom:24px;background:#111827;color:#fff;padding:14px 18px;border-radius:14px;font-weight:800;box-shadow:0 18px 45px rgba(0,0,0,.22);z-index:99999}.corte-loading,.corte-error,.corte-public-message,.corte-validation{max-width:720px;margin:60px auto;background:#fff;border:1px solid var(--corte-line);border-radius:24px;padding:34px;box-shadow:var(--corte-shadow);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.corte-error{color:#991b1b}.corte-validation{text-align:center}.validation-card{text-align:left;background:#f8fafc;border:1px solid var(--corte-line);border-radius:16px;padding:20px}.corte-validation.valid h1{color:#15803d}.corte-validation.warning h1{color:#b45309}.corte-validation.invalid h1{color:#991b1b}
@media (max-width:1100px){.corte-app-shell{grid-template-columns:1fr}.corte-sidebar{position:relative;min-height:auto}.sidebar-foot{position:static;margin-top:18px}.corte-main{max-width:none;padding:20px}.metric-grid,.sar-status,.split,.form-grid.four,.form-grid.two{grid-template-columns:1fr}.quick-actions{flex-direction:column}.topbar{flex-direction:column;gap:12px}.corte-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
.preset-bar{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:end;background:#f8fafc;border:1px solid var(--corte-line);border-radius:16px;padding:14px;margin:16px 0}.preset-bar label{font-weight:800;color:#374151}.hint.warning{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:14px;padding:12px 14px;margin:0 0 16px}.danger-panel .panel-head h2{color:#991b1b}.table-panel .row-actions .mini{white-space:nowrap}
@media (max-width:800px){.preset-bar{grid-template-columns:1fr}.preset-bar .secondary{width:100%}}
.upload-box{background:#f8fafc;border:1px solid var(--corte-line);border-radius:16px;padding:18px}.upload-box strong{display:block;margin-bottom:8px}.upload-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ok-text{color:#15803d;font-weight:800}.warn-text{color:#b45309;font-weight:800}
.diagnostic-box{background:#f8fafc;border:1px solid var(--corte-line);border-radius:16px;padding:18px;margin-top:4px}.diagnostic-box strong{display:block}.diagnostic-box p{margin:4px 0 0;color:var(--corte-muted)}.diag-ready{border-color:#bbf7d0;background:#f0fdf4}.diag-warning{border-color:#fed7aa;background:#fff7ed}.diag-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.diag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diag-item{display:flex;align-items:flex-start;gap:10px;background:#fff;border:1px solid var(--corte-line);border-radius:14px;padding:12px}.diag-item span{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:900}.diag-ok span{background:#dcfce7;color:#15803d}.diag-bad span{background:#fee2e2;color:#991b1b}.diag-item small{display:block;margin-top:3px;color:var(--corte-muted);font-weight:500;word-break:break-word}
@media (max-width:800px){.diag-head{flex-direction:column;align-items:flex-start}.diag-grid{grid-template-columns:1fr}.upload-actions{flex-direction:column;align-items:stretch}.upload-actions .secondary,.upload-actions .ghost{width:100%}}

body:has(.corte-login-wrap){background:var(--corte-bg)}
.corte-login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;background:radial-gradient(circle at top left,#e8eefc 0,#f5f7fb 42%,#fff 100%);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--corte-ink)}
.corte-login-card{width:min(460px,100%);background:#fff;border:1px solid var(--corte-line);border-radius:28px;box-shadow:0 24px 70px rgba(15,23,42,.14);padding:34px}
.corte-login-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--corte-line)}
.corte-login-brand img{width:58px;height:58px;object-fit:contain;background:#fff;border:1px solid var(--corte-line);border-radius:18px;padding:8px}
.corte-login-brand strong{display:block;font-size:20px;letter-spacing:-.03em}.corte-login-brand small{display:block;color:var(--corte-muted);margin-top:3px;font-weight:700}
.corte-login-card h1{margin:0;font-size:32px;letter-spacing:-.045em}.corte-login-subtitle{margin:8px 0 22px;color:var(--corte-muted);line-height:1.45}
.corte-login-alert{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;border-radius:14px;padding:12px 14px;margin-bottom:16px;font-weight:800;line-height:1.35}
.corte-login-form{display:grid;gap:14px}.corte-login-form label{display:grid;gap:7px;font-weight:800;color:#374151}.corte-login-form input[type="text"],.corte-login-form input[type="password"]{border:1px solid var(--corte-line);border-radius:14px;padding:13px 14px;font:inherit;color:#111827;background:#fff;outline:none}.corte-login-form input:focus{border-color:#111827;box-shadow:0 0 0 4px rgba(17,24,39,.08)}
.corte-login-check{display:flex!important;grid-template-columns:none!important;flex-direction:row;align-items:center;gap:10px!important;margin:2px 0 4px;color:#111827!important}.corte-login-check input{width:17px;height:17px}.corte-login-form button{border:0;border-radius:14px;padding:14px 18px;font:inherit;font-weight:900;background:#0b0f19;color:#fff;cursor:pointer;box-shadow:0 14px 30px rgba(15,23,42,.18)}
.corte-login-links{margin-top:18px;text-align:center}.corte-login-links a{color:#374151;font-weight:800;text-decoration:none}.corte-login-links a:hover{text-decoration:underline}
.sidebar-logout{display:inline-flex;margin-top:12px;color:#fff;text-decoration:none;font-weight:900;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:9px 11px}.sidebar-logout:hover{background:#fff;color:#111827}
@media (max-width:640px){.corte-login-wrap{padding:18px;align-items:flex-start}.corte-login-card{padding:24px;border-radius:22px}.corte-login-card h1{font-size:27px}}


/* v0.3.4 - Mobile/responsive pass for Corte App */
.corte-app-shell,.corte-app-shell *,.corte-login-wrap,.corte-login-wrap *{box-sizing:border-box}
#corte-app-root{max-width:none!important}
.corte-main,.panel,.table-panel,.table-wrap,.items-editor,.quote-builder,.form-card{min-width:0}
.table-wrap,.items-editor{max-width:100%;-webkit-overflow-scrolling:touch}
.form-card input,.form-card select,.form-card textarea,.quote-builder input,.quote-builder select,.quote-builder textarea{max-width:100%}

@media (max-width:900px){
  html,body{overflow-x:hidden}
  body:has(.corte-app-shell){background:var(--corte-bg)!important}
  .corte-app-shell{display:block;width:100%;min-height:100dvh;margin:0!important;background:var(--corte-bg)}
  .corte-sidebar{position:sticky;top:0;z-index:90;min-height:auto;padding:14px 14px 12px;border-radius:0 0 22px 22px;box-shadow:0 14px 30px rgba(15,23,42,.18)}
  .brand{margin-bottom:12px;padding-bottom:12px;gap:10px}
  .brand img{width:42px;height:42px;border-radius:14px;padding:6px}
  .brand strong{font-size:16px}.brand small{font-size:12px}
  .corte-sidebar nav{display:flex!important;flex-direction:row;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding:0 0 3px;scrollbar-width:none}
  .corte-sidebar nav::-webkit-scrollbar{display:none}
  .nav-item{flex:0 0 auto;min-height:44px;padding:11px 13px;border-radius:999px;white-space:nowrap;font-size:13px;gap:8px}
  .nav-item span{width:auto;min-width:16px}
  .sidebar-foot{position:static;margin-top:12px;padding:12px 13px;border-radius:16px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}
  .sidebar-foot small{font-size:11px}.sidebar-foot small:last-of-type{display:none}.sidebar-foot strong{font-size:13px;margin:2px 0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sidebar-logout{margin-top:0;padding:9px 10px;font-size:12px;white-space:nowrap}
  .corte-main{max-width:none!important;padding:18px 14px 28px}
  .topbar{margin-bottom:16px;gap:10px}.topbar h1{font-size:28px;line-height:1.05}.topbar p{font-size:14px;line-height:1.35}.topbar .ghost{align-self:flex-start}
  .panel{padding:18px;border-radius:18px;margin-bottom:16px;box-shadow:0 12px 28px rgba(15,23,42,.07)}
  .panel h2{font-size:18px}.panel-head{align-items:flex-start;flex-direction:column;gap:10px}.panel-head .primary,.panel-head .secondary,.panel-head .ghost{width:100%}
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}
  .metric{padding:16px;border-radius:16px}.metric strong{font-size:22px}.metric small{font-size:10px}
  .sar-status{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sar-status div{padding:12px;border-radius:14px}
  .quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-actions .big{width:100%;padding:14px 12px}
  .split{display:grid;grid-template-columns:1fr!important;gap:16px}.form-grid.four,.form-grid.two{grid-template-columns:1fr!important}.wide{max-width:none}
  .actions{flex-wrap:wrap}.actions .primary,.actions .secondary,.actions .ghost{min-height:44px}
  .table-wrap{overflow-x:auto;margin-left:-18px;margin-right:-18px;padding:0 18px 10px}.table-wrap table{min-width:760px}
  .row-actions{gap:8px}.row-actions .mini{min-height:36px}
  .items-editor{overflow-x:auto;margin:16px -18px;padding:0 18px 10px}.editor-table{min-width:900px}.editor-table input,.editor-table select,.editor-table textarea{font-size:16px}
  .quote-total{display:grid;grid-template-columns:1fr;gap:8px;justify-content:stretch;padding:14px;margin:14px 0}.quote-total span,.quote-total strong{display:block}.quote-total strong{text-align:left}
  .preset-bar{grid-template-columns:1fr!important}.preset-bar .secondary{width:100%;min-height:44px}
  .upload-actions{align-items:stretch}.upload-actions input[type=file]{width:100%}
  .diag-grid{grid-template-columns:1fr!important}
  .toast{left:14px;right:14px;bottom:14px;text-align:center}
}

@media (max-width:640px){
  .corte-app-shell{width:100vw;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
  .corte-main{padding:14px 12px 24px}
  .topbar{flex-direction:column;align-items:stretch}.topbar h1{font-size:25px}.topbar .ghost{width:100%}
  .panel{padding:15px;border-radius:16px}.panel h2{font-size:17px}
  .metric-grid,.sar-status,.quick-actions{grid-template-columns:1fr!important}
  .form-card label{font-size:14px;margin-bottom:12px}
  .form-card input,.form-card select,.form-card textarea,.quote-builder input,.quote-builder select,.quote-builder textarea{font-size:16px;min-height:46px;padding:12px 13px;border-radius:13px}
  .form-card textarea,.quote-builder textarea{min-height:92px}
  .actions{display:grid;grid-template-columns:1fr;gap:9px}.actions .primary,.actions .secondary,.actions .ghost{width:100%}
  .primary,.secondary,.ghost,.mini,a.mini{min-height:42px}.mini{font-size:12px;padding:10px 11px}
  .row-actions{display:grid;grid-template-columns:1fr 1fr}.row-actions .mini{width:100%}
  .table-wrap{margin-left:-15px;margin-right:-15px;padding:0 15px 10px}.table-wrap table{min-width:700px}th{font-size:11px;padding:11px 10px}td{padding:12px 10px}
  .items-editor{margin-left:-15px;margin-right:-15px;padding:0 15px 10px}.editor-table{min-width:860px}
  .diagnostic-box,.upload-box{padding:14px;border-radius:14px}.diag-head{flex-direction:column;align-items:stretch}.diag-head .secondary{width:100%}
  .corte-login-wrap{min-height:100dvh;padding:18px 14px;align-items:center}.corte-login-card{border-radius:22px;padding:22px}.corte-login-card h1{font-size:26px}.corte-login-brand img{width:48px;height:48px}.corte-login-form input[type="text"],.corte-login-form input[type="password"]{font-size:16px;min-height:46px}.corte-login-form button{min-height:48px}
}

/* Better mobile viewing for public invoice/quote screens without affecting print */
@media screen and (max-width:900px){
  .corte-standalone-doc .print-toolbar,.print-toolbar{justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:8px;padding:10px 12px}.print-toolbar button,.print-toolbar .print-edit-link{flex:0 0 auto;white-space:nowrap;min-height:40px}
  .quote-print,.invoice-print{padding:12px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;background:#f3f4f6!important}
  .quote-page,.invoice-page,.pagos-page{margin-left:0!important;margin-right:12px!important;box-shadow:0 12px 30px rgba(15,23,42,.12)}
}


/* v0.3.5 — App shell limpia, móvil simplificado y sesión minimalista */
body:has(#corte-app-root), body:has(.corte-login-wrap){background:var(--corte-bg)!important}
body:has(#corte-app-root) #wpadminbar{display:none!important}
body:has(#corte-app-root) header:not(.topbar):not(.quote-hero),
body:has(#corte-app-root) footer:not(.quote-footer),
body:has(.corte-login-wrap) header,
body:has(.corte-login-wrap) footer,
body:has(#corte-app-root) .site-header,
body:has(#corte-app-root) .site-footer,
body:has(#corte-app-root) #masthead,
body:has(#corte-app-root) #colophon,
body:has(#corte-app-root) .elementor-location-header,
body:has(#corte-app-root) .elementor-location-footer,
body:has(#corte-app-root) .wp-site-blocks > header,
body:has(#corte-app-root) .wp-site-blocks > footer,
body:has(.corte-login-wrap) .site-header,
body:has(.corte-login-wrap) .site-footer,
body:has(.corte-login-wrap) #masthead,
body:has(.corte-login-wrap) #colophon,
body:has(.corte-login-wrap) .elementor-location-header,
body:has(.corte-login-wrap) .elementor-location-footer{display:none!important}
body:has(#corte-app-root) .entry-header,
body:has(#corte-app-root) .page-header,
body:has(#corte-app-root) .entry-title,
body:has(.corte-login-wrap) .entry-header,
body:has(.corte-login-wrap) .page-header,
body:has(.corte-login-wrap) .entry-title{display:none!important}
body:has(#corte-app-root) main,
body:has(.corte-login-wrap) main{margin-top:0!important;padding-top:0!important}
body:has(#corte-app-root) .site,
body:has(#corte-app-root) .site-content,
body:has(#corte-app-root) .content-area,
body:has(#corte-app-root) .entry-content,
body:has(.corte-login-wrap) .site,
body:has(.corte-login-wrap) .site-content,
body:has(.corte-login-wrap) .content-area,
body:has(.corte-login-wrap) .entry-content{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
.corte-app-shell{margin:0!important;width:100%;min-height:100dvh}
.compact-session{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px!important;border-radius:16px!important}
.compact-session .session-dot{width:9px;height:9px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.13)}
.compact-session .session-copy{min-width:0}.compact-session small{font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.08em}.compact-session strong{font-size:13px!important;line-height:1.15;margin:3px 0 0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-logout{color:#fff;text-decoration:none;font-size:12px;font-weight:800;background:rgba(255,255,255,.12);padding:7px 9px;border-radius:10px;white-space:nowrap}.sidebar-logout:hover{background:rgba(255,255,255,.2)}
.sar-config-status{background:#f8fafc;border:1px solid var(--corte-line);border-radius:18px;padding:16px;margin:0 0 18px}.sar-config-status .panel-head{margin-bottom:12px}.sar-config-status .panel-head h2{font-size:17px}.sar-config-status.danger-panel{background:#fff7f7;border-color:#fecaca}
.mobile-doc-list{display:none}.doc-card{background:#fff;border:1px solid var(--corte-line);border-radius:16px;padding:14px;box-shadow:0 10px 24px rgba(15,23,42,.06);margin-bottom:10px}.doc-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.doc-card-head strong{display:block;font-size:14px;letter-spacing:-.02em}.doc-card-head small{display:block;margin-top:4px;color:var(--corte-muted);font-size:12px}.doc-card-body{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0}.doc-card-body span{font-weight:700;color:#374151;min-width:0;overflow:hidden;text-overflow:ellipsis}.doc-card-body strong{white-space:nowrap;font-size:16px}.doc-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.doc-card-actions .mini{width:100%;min-height:38px}
@media (max-width:800px){
  .topbar{display:none!important}
  .corte-sidebar{padding:14px 12px 10px!important;background:#0b0f19!important;border-radius:0 0 22px 22px!important}
  .brand{margin-bottom:12px!important;padding-bottom:12px!important}.brand img{width:38px!important;height:38px!important;border-radius:12px!important;padding:6px!important}.brand strong{font-size:16px!important}.brand small{font-size:11px!important}
  .corte-sidebar nav{display:flex!important;flex-direction:row!important;gap:8px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;padding:2px 0 8px!important;scrollbar-width:none}.corte-sidebar nav::-webkit-scrollbar{display:none}.nav-item{flex:0 0 auto!important;padding:10px 12px!important;border-radius:999px!important;font-size:13px!important;gap:7px!important}.nav-item span{width:auto!important}
  .sidebar-foot.compact-session{margin-top:8px!important;background:transparent!important;border:0!important;padding:5px 2px!important;grid-template-columns:auto 1fr auto!important}.compact-session .session-dot{width:7px;height:7px}.compact-session small{display:none!important}.compact-session strong{font-size:12px!important;color:#cbd5e1!important}.sidebar-logout{font-size:11px!important;padding:6px 8px!important;background:rgba(255,255,255,.09)!important}
  .corte-main{padding:14px 12px 24px!important}.panel{margin-bottom:12px!important}.panel.table-panel>h2{margin-bottom:10px!important}
  .desktop-doc-table{display:none!important}.mobile-doc-list{display:block!important}.doc-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.metric{padding:14px!important}.metric strong{font-size:20px!important}.metric span{display:none!important}
  .quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;display:grid!important}.quick-actions .big{min-height:42px!important;font-size:13px!important;padding:12px 10px!important}
}
@media (max-width:420px){.doc-card-actions{grid-template-columns:1fr 1fr!important}.metric-grid,.quick-actions{grid-template-columns:1fr!important}}

body:has(.corte-app-shell),body:has(.corte-login-wrap){margin:0!important;padding:0!important}
body:has(.corte-app-shell) .entry-content,body:has(.corte-login-wrap) .entry-content,body:has(.corte-app-shell) article,body:has(.corte-login-wrap) article{margin-top:0!important;padding-top:0!important}
.corte-sidebar,.corte-main{margin-top:0!important;transform:none!important}
.corte-main{padding-top:26px!important}.topbar{margin-top:0!important;padding-top:0!important}.topbar h1{line-height:1.08}
@media (max-width:1100px){.corte-app-shell{margin:0!important}.corte-main{padding-top:18px!important}}

.corte-app-shell,.corte-login-wrap{transition:margin-top .12s ease-out}

/* v0.3.9: Corte App full-screen isolation. The WordPress theme can still reserve a top gap
   even when its header is hidden. Fixed positioning removes that dead area completely. */
html:has(.corte-app-shell),html:has(.corte-login-wrap),
body:has(.corte-app-shell),body:has(.corte-login-wrap){width:100%!important;min-height:100%!important;overflow:hidden!important;background:var(--corte-bg)!important;margin:0!important;padding:0!important}
body:has(.corte-app-shell) .corte-app-shell,
body:has(.corte-login-wrap) .corte-login-wrap{position:fixed!important;inset:0!important;z-index:2147483000!important;width:100vw!important;height:100vh!important;height:100dvh!important;margin:0!important;padding:0!important;transform:none!important;overflow:hidden!important;background:var(--corte-bg)!important}
body:has(.corte-app-shell) .corte-sidebar{height:100vh!important;height:100dvh!important;min-height:100vh!important;min-height:100dvh!important;overflow-y:auto!important;position:relative!important;top:auto!important}
body:has(.corte-app-shell) .corte-main{height:100vh!important;height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;padding:26px 34px 80px!important;margin:0!important;max-width:none!important;box-sizing:border-box!important}
body:has(.corte-app-shell) .topbar{position:relative!important;top:auto!important;margin-top:0!important}
@media (max-width:1100px){
  body:has(.corte-app-shell) .corte-app-shell{display:flex!important;flex-direction:column!important}
  body:has(.corte-app-shell) .corte-sidebar{height:auto!important;min-height:0!important;max-height:42vh!important;overflow:visible!important;flex:0 0 auto!important}
  body:has(.corte-app-shell) .corte-main{height:auto!important;min-height:0!important;flex:1 1 auto!important;overflow-y:auto!important;padding:18px 14px 90px!important}
}
@media print{
  html:has(.corte-print-page),body:has(.corte-print-page){overflow:visible!important}
  body:has(.corte-print-page) .corte-print-page{position:static!important;inset:auto!important;z-index:auto!important;width:auto!important;height:auto!important;overflow:visible!important}
}


/* v0.4.0: full-screen app with internal scroll fixed */
html:has(.corte-app-shell),
body:has(.corte-app-shell){
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:var(--corte-bg)!important;
}
body:has(.corte-app-shell) .corte-app-shell{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:280px minmax(0,1fr)!important;
  grid-template-rows:1fr!important;
  align-items:stretch!important;
  overflow:hidden!important;
  background:var(--corte-bg)!important;
}
body:has(.corte-app-shell) .corte-sidebar{
  height:100vh!important;
  height:100dvh!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  position:relative!important;
  top:auto!important;
  align-self:stretch!important;
}
body:has(.corte-app-shell) .corte-main{
  min-width:0!important;
  min-height:0!important;
  height:100vh!important;
  height:100dvh!important;
  max-height:100dvh!important;
  overflow-y:scroll!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  padding:26px 34px 110px!important;
  margin:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
body:has(.corte-app-shell) .corte-main::after{content:'';display:block;height:40px;flex:0 0 40px}
@media (max-width:1100px){
  body:has(.corte-app-shell) .corte-app-shell{
    display:flex!important;
    flex-direction:column!important;
    height:100vh!important;
    height:100dvh!important;
    overflow:hidden!important;
  }
  body:has(.corte-app-shell) .corte-sidebar{
    flex:0 0 auto!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
  }
  body:has(.corte-app-shell) .corte-main{
    flex:1 1 auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:scroll!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    padding:18px 14px 110px!important;
  }
}
@media print{
  html:has(.corte-print-page),body:has(.corte-print-page){overflow:visible!important;height:auto!important}
}

/* v0.4.1: Full-screen app with real internal scroll */
html:has(.corte-app-shell),
body:has(.corte-app-shell){
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  overflow:hidden!important;
  overscroll-behavior:none!important;
}
body:has(.corte-app-shell) #corte-app-root{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  overflow:hidden!important;
  background:var(--corte-bg)!important;
  margin:0!important;
  padding:0!important;
}
body:has(.corte-app-shell) .corte-app-shell{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:280px minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
}
body:has(.corte-app-shell) .corte-sidebar{
  height:100%!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
body:has(.corte-app-shell) .corte-main{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-y:contain!important;
  touch-action:pan-y!important;
  padding-bottom:140px!important;
}
@media (max-width:1100px){
  body:has(.corte-app-shell) .corte-app-shell{
    display:flex!important;
    flex-direction:column!important;
  }
  body:has(.corte-app-shell) .corte-sidebar{
    flex:0 0 auto!important;
    height:auto!important;
    max-height:42vh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  body:has(.corte-app-shell) .corte-main{
    flex:1 1 auto!important;
    height:auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    padding-bottom:150px!important;
  }
}


/* v0.4.2: Safari/Magic Mouse scroll passthrough */
body:has(.corte-app-shell) #corte-app-root,
body:has(.corte-app-shell) .corte-app-shell,
body:has(.corte-app-shell) .corte-main{
  pointer-events:auto!important;
}
body:has(.corte-app-shell) .corte-main{
  overflow-y:scroll!important;
  overscroll-behavior:auto!important;
  will-change:scroll-position;
}
body:has(.corte-app-shell) .corte-main,
body:has(.corte-app-shell) .corte-sidebar{
  scrollbar-gutter:stable;
}


/* v0.4.3: mouse/trackpad scroll repair */
body:has(.corte-app-shell) .corte-main{
  overflow-y:scroll!important;
  overflow-x:hidden!important;
  touch-action:auto!important;
  overscroll-behavior-y:auto!important;
  pointer-events:auto!important;
  scrollbar-width:auto!important;
}
body:has(.corte-app-shell) .panel,
body:has(.corte-app-shell) .quote-builder,
body:has(.corte-app-shell) .form-card,
body:has(.corte-app-shell) .table-panel{
  touch-action:auto!important;
}


/* v0.4.4: standalone /app document. Uses native browser scroll instead of fixed internal scroll. */
html.corte-app-standalone,
html.corte-app-standalone body.corte-app-standalone-body{
  width:100%!important;
  height:auto!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:auto!important;
  background:var(--corte-bg)!important;
}
html.corte-app-standalone body.corte-app-standalone-body #corte-app-root.corte-app-shell{
  position:relative!important;
  inset:auto!important;
  z-index:auto!important;
  width:100%!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  display:grid!important;
  grid-template-columns:280px minmax(0,1fr)!important;
  grid-template-rows:auto!important;
  align-items:start!important;
  background:var(--corte-bg)!important;
}
html.corte-app-standalone body.corte-app-standalone-body .corte-sidebar{
  position:sticky!important;
  top:0!important;
  align-self:start!important;
  height:100vh!important;
  height:100dvh!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
html.corte-app-standalone body.corte-app-standalone-body .corte-main{
  position:relative!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  min-height:100vh!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  padding:26px 34px 90px!important;
  margin:0!important;
  box-sizing:border-box!important;
}
html.corte-app-standalone body.corte-app-standalone-body .corte-main::after{display:none!important}
@media (max-width:1100px){
  html.corte-app-standalone body.corte-app-standalone-body #corte-app-root.corte-app-shell{
    display:block!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    overflow:visible!important;
  }
  html.corte-app-standalone body.corte-app-standalone-body .corte-sidebar{
    position:sticky!important;
    top:0!important;
    z-index:20!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  html.corte-app-standalone body.corte-app-standalone-body .corte-main{
    min-height:auto!important;
    height:auto!important;
    overflow:visible!important;
    padding:18px 14px 80px!important;
  }
}
@media print{
  html.corte-app-standalone,html.corte-app-standalone body.corte-app-standalone-body{overflow:visible!important;height:auto!important}
}


/* v0.4.5 aesthetic refinements */
body:has(.corte-app-shell) .corte-main{padding:38px 42px 96px!important}
body:has(.corte-app-shell) .topbar{margin-bottom:30px!important;align-items:flex-start!important}
body:has(.corte-app-shell) .topbar>div:first-child{padding-left:6px!important}
body:has(.corte-app-shell) .topbar h1{font-size:32px!important;line-height:1.08!important;letter-spacing:-.045em!important;margin:0 0 4px!important}
body:has(.corte-app-shell) .topbar p{margin:4px 0 0!important;font-size:14px!important;color:#667085!important}
body:has(.corte-app-shell) .metric-grid{gap:20px!important;margin-bottom:28px!important}
body:has(.corte-app-shell) .metric{padding:22px 22px 20px!important;min-height:148px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;border-radius:22px!important}
body:has(.corte-app-shell) .metric small{margin-bottom:10px!important;font-size:11px!important;line-height:1.25!important}
body:has(.corte-app-shell) .metric strong{margin:0 0 8px!important;line-height:1.02!important}
body:has(.corte-app-shell) .metric span{display:block!important;line-height:1.35!important}
body:has(.corte-app-shell) .quick-actions{gap:12px!important;align-items:center!important;flex-wrap:wrap!important;padding-left:2px!important}
body:has(.corte-app-shell) .quick-actions .big{min-height:46px!important;padding:13px 18px!important;border-radius:14px!important}
body:has(.corte-app-shell) .panel{padding:26px!important;border-radius:22px!important}
body:has(.corte-app-shell) .panel h2{margin:0 0 18px!important;padding-left:2px!important}
body:has(.corte-app-shell) .table-panel>h2, body:has(.corte-app-shell) .form-card>h2{padding-left:2px!important}
body:has(.corte-app-shell) .panel-head{margin-bottom:18px!important}
body:has(.corte-app-shell) .panel.table-panel,body:has(.corte-app-shell) .panel.form-card,body:has(.corte-app-shell) .quote-builder{box-shadow:0 16px 36px rgba(15,23,42,.06)!important}
body:has(.corte-app-shell) .form-grid{gap:16px!important}
body:has(.corte-app-shell) .form-card label{margin-bottom:14px!important}
body:has(.corte-app-shell) .form-card input,body:has(.corte-app-shell) .form-card select,body:has(.corte-app-shell) .form-card textarea,body:has(.corte-app-shell) .quote-builder input,body:has(.corte-app-shell) .quote-builder select,body:has(.corte-app-shell) .quote-builder textarea{margin-top:8px!important;min-height:48px!important;padding:12px 14px!important}
body:has(.corte-app-shell) .quote-builder textarea,body:has(.corte-app-shell) .form-card textarea{min-height:100px!important}
@media (max-width:1100px){body:has(.corte-app-shell) .corte-main{padding:22px 18px 96px!important}body:has(.corte-app-shell) .topbar>div:first-child{padding-left:0!important}body:has(.corte-app-shell) .metric{min-height:132px!important;padding:18px!important}}
@media (max-width:800px){body:has(.corte-app-shell) .corte-main{padding:16px 12px 88px!important}body:has(.corte-app-shell) .topbar{display:block!important;margin-bottom:18px!important}body:has(.corte-app-shell) .topbar>div:first-child{padding-left:0!important}body:has(.corte-app-shell) .topbar h1{font-size:28px!important}body:has(.corte-app-shell) .topbar p{font-size:13px!important}body:has(.corte-app-shell) .metric-grid{gap:12px!important}body:has(.corte-app-shell) .metric{min-height:118px!important;padding:16px!important}body:has(.corte-app-shell) .panel{padding:18px!important;border-radius:18px!important}body:has(.corte-app-shell) .quick-actions{padding-left:0!important}}


/* v0.4.6 layout polish */
body:has(.corte-app-shell) .corte-main{display:flex!important;flex-direction:column!important;gap:24px!important;padding:42px 46px 96px!important}
body:has(.corte-app-shell) .corte-main > .topbar,
body:has(.corte-app-shell) .corte-main > .panel,
body:has(.corte-app-shell) .corte-main > .split,
body:has(.corte-app-shell) .corte-main > section{width:min(100%,1380px)!important;margin-left:auto!important;margin-right:auto!important}
body:has(.corte-app-shell) .topbar{padding-left:10px!important;padding-right:4px!important;margin-bottom:0!important}
body:has(.corte-app-shell) .topbar h1{font-size:34px!important;margin:0 0 6px!important}
body:has(.corte-app-shell) .topbar p{max-width:720px!important;margin:0!important}
body:has(.corte-app-shell) .metric-grid{gap:22px!important;margin-bottom:0!important}
body:has(.corte-app-shell) .metric{padding:26px 24px!important;min-height:156px!important;justify-content:flex-start!important}
body:has(.corte-app-shell) .metric small{margin-bottom:12px!important}
body:has(.corte-app-shell) .metric strong{font-size:29px!important;margin-bottom:10px!important}
body:has(.corte-app-shell) .panel{padding:28px 28px 26px!important}
body:has(.corte-app-shell) .panel h2{font-size:18px!important;margin:0 0 18px!important}
body:has(.corte-app-shell) .split{grid-template-columns:minmax(360px,420px) minmax(0,1fr)!important;gap:28px!important}
body:has(.corte-app-shell) .table-wrap{border-radius:16px!important;overflow:auto!important}
body:has(.corte-app-shell) table{background:#fff!important}
body:has(.corte-app-shell) th{padding:15px 14px!important}
body:has(.corte-app-shell) td{padding:16px 14px!important}
body:has(.corte-app-shell) .row-actions{gap:8px!important}
body:has(.corte-app-shell) .mini{padding:8px 11px!important;border-radius:11px!important}
body:has(.corte-app-shell) .form-grid.four{grid-template-columns:repeat(4,minmax(170px,1fr))!important}
body:has(.corte-app-shell) .form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))!important}
body:has(.corte-app-shell) .editor-table td:first-child{min-width:220px!important}
body:has(.corte-app-shell) .editor-table td:nth-child(2){min-width:300px!important}
body:has(.corte-app-shell) .quote-total{padding:18px 20px!important;border-radius:18px!important}
body:has(.corte-app-shell) .sidebar-foot{padding:14px 16px!important}
@media (max-width:1280px){body:has(.corte-app-shell) .corte-main{padding:32px 26px 90px!important}body:has(.corte-app-shell) .corte-main > .topbar,body:has(.corte-app-shell) .corte-main > .panel,body:has(.corte-app-shell) .corte-main > .split,body:has(.corte-app-shell) .corte-main > section{width:100%!important}body:has(.corte-app-shell) .split{grid-template-columns:380px minmax(0,1fr)!important}}
@media (max-width:1100px){body:has(.corte-app-shell) .corte-main{padding:22px 18px 88px!important;gap:18px!important}body:has(.corte-app-shell) .topbar{padding-left:0!important}body:has(.corte-app-shell) .metric{min-height:136px!important;padding:20px 18px!important}body:has(.corte-app-shell) .panel{padding:22px!important}body:has(.corte-app-shell) .split{grid-template-columns:1fr!important}}
@media (max-width:800px){body:has(.corte-app-shell) .corte-main{padding:16px 12px 86px!important;gap:14px!important}body:has(.corte-app-shell) .topbar{padding:0!important}body:has(.corte-app-shell) .topbar h1{font-size:28px!important}body:has(.corte-app-shell) .metric-grid{grid-template-columns:1fr!important;gap:12px!important}body:has(.corte-app-shell) .metric{min-height:0!important;padding:18px 16px!important}body:has(.corte-app-shell) .panel{padding:18px 16px!important}body:has(.corte-app-shell) .form-grid.four,body:has(.corte-app-shell) .form-grid.two{grid-template-columns:1fr!important}}


/* v0.4.7 fixed desktop sidebar */
@media (min-width: 901px){
  body:has(.corte-app-shell) #corte-app-root,
  html.corte-app-standalone body.corte-app-standalone-body #corte-app-root{width:100%!important;max-width:none!important}
  body:has(.corte-app-shell) .corte-app-shell,
  html.corte-app-standalone body.corte-app-standalone-body #corte-app-root.corte-app-shell{display:block!important;position:relative!important;min-height:100vh!important;background:var(--corte-bg)!important}
  body:has(.corte-app-shell) .corte-sidebar,
  html.corte-app-standalone body.corte-app-standalone-body .corte-sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:238px!important;height:100vh!important;min-height:100vh!important;max-height:100vh!important;overflow-y:auto!important;overflow-x:hidden!important;z-index:120!important;display:flex!important;flex-direction:column!important;align-self:auto!important;padding:22px 18px!important;border-radius:0!important;box-shadow:none!important}
  body:has(.corte-app-shell) .corte-sidebar nav,
  html.corte-app-standalone body.corte-app-standalone-body .corte-sidebar nav{display:flex!important;flex-direction:column!important;gap:8px!important;overflow:visible!important;padding:0!important;flex:1 1 auto!important}
  body:has(.corte-app-shell) .sidebar-foot,
  html.corte-app-standalone body.corte-app-standalone-body .sidebar-foot{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;margin-top:auto!important}
  body:has(.corte-app-shell) .corte-main,
  html.corte-app-standalone body.corte-app-standalone-body .corte-main{margin-left:238px!important;width:calc(100vw - 238px)!important;max-width:calc(100vw - 238px)!important;min-height:100vh!important;height:auto!important;overflow:visible!important;padding:42px 44px 96px!important;box-sizing:border-box!important}
}
@media (max-width: 900px){
  body:has(.corte-app-shell) .corte-sidebar,
  html.corte-app-standalone body.corte-app-standalone-body .corte-sidebar{position:sticky!important;left:auto!important;bottom:auto!important;width:auto!important;height:auto!important;max-height:none!important}
  body:has(.corte-app-shell) .corte-main,
  html.corte-app-standalone body.corte-app-standalone-body .corte-main{margin-left:0!important;width:100%!important;max-width:none!important}
}

/* v0.5.1 email diagnostics */
body:has(.corte-app-shell) .table-wrap small{line-height:1.35;display:block}


/* v0.5.2 FluentSMTP status refinements */
body:has(.corte-app-shell) .diagnostic-box .row-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
body:has(.corte-app-shell) .diag-head .ghost{min-height:38px}


.tidy-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:360px}
.tidy-actions .action-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tidy-actions .action-group-primary .mini{min-width:118px}
.success-mini{background:#dcfce7!important;color:#166534!important}
.soft-danger{background:#fff1f2!important;color:#be123c!important}
.table-panel .tidy-actions .mini{white-space:nowrap}
.tidy-mobile-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width: 1024px){
  .tidy-actions{min-width:0}
}
@media (max-width: 767px){
  .tidy-actions{display:grid;grid-template-columns:1fr}
  .tidy-actions .action-group{display:grid;grid-template-columns:1fr 1fr}
  .tidy-actions .action-group .mini,
  .tidy-actions .action-group a.mini{width:100%}
}


/* v0.5.4 invoice action cleanup - desktop visible */
.desktop-doc-table td:last-child{min-width:420px!important}
.desktop-doc-table .tidy-actions{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:9px!important;min-width:420px!important}
.desktop-doc-table .tidy-actions .action-group{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
.desktop-doc-table .tidy-actions .mini{height:34px!important;padding:8px 12px!important;border-radius:999px!important;font-size:12px!important;letter-spacing:-.01em!important}
.desktop-doc-table .tidy-actions .action-group-primary{padding-bottom:2px!important}
.desktop-doc-table .tidy-actions .action-group-primary .mini{min-width:120px!important}
.desktop-doc-table .tidy-actions .action-group-secondary .mini{background:#f8fafc!important;color:#334155!important;border:1px solid #e5e7eb!important}
.desktop-doc-table .tidy-actions .action-group-danger{border-top:1px dashed #e5e7eb!important;padding-top:8px!important;width:100%!important}
.desktop-doc-table .tidy-actions .success-mini{background:#dcfce7!important;color:#166534!important;border:1px solid #bbf7d0!important}
.desktop-doc-table .tidy-actions .soft-danger{background:#fff1f2!important;color:#be123c!important;border:1px solid #fecdd3!important}

/* Órdenes de compra */
.po-editor td:first-child{min-width:280px}
.po-editor td:nth-child(2),.po-editor td:nth-child(3){min-width:70px;width:84px}
body:has(.corte-app-shell) .po-editor td:nth-child(2){min-width:70px!important}
.po-editor td:nth-child(4){min-width:120px}
.po-editor .po-line-total{white-space:nowrap;font-weight:700;text-align:right;color:#111827}

/* Dashboard de contratos v0.9.0 */
@media (max-width:1200px){ .dash-three{grid-template-columns:1fr 1fr!important} }
@media (max-width:1000px){ .dash-two,.dash-three{grid-template-columns:1fr!important} }
.nav-count{display:inline-block;min-width:18px;text-align:center;background:#d64545;color:#fff;border-radius:9px;font-size:11px;font-weight:700;padding:0 5px;margin-left:6px;line-height:18px}
.contract-tabs{display:flex;gap:4px;flex-wrap:wrap;border-top:1px solid var(--corte-line);margin-top:14px;padding-top:12px}
.ctab{background:transparent;border:1px solid transparent;border-radius:10px;padding:8px 14px;font:inherit;font-weight:600;color:#6b6b66;cursor:pointer}
.ctab:hover{background:#f1f4f9}
.ctab.active{background:#2a6fdb;color:#fff}
.proj-subnav{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:16px;overflow-x:auto}
.proj-subnav .ctab{white-space:nowrap}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-dow{font-size:11px;font-weight:700;text-transform:uppercase;color:#9a9a94;text-align:center;padding:6px 0}
.cal-cell{min-height:94px;border:1px solid var(--corte-line);border-radius:10px;padding:6px;background:#fff;overflow:hidden}
.cal-empty{background:transparent;border:none}
.cal-today{border-color:#2a6fdb;box-shadow:0 0 0 1px #2a6fdb}
.cal-day{font-size:12px;font-weight:700;color:#6b6b66;margin-bottom:4px}
.cal-ev{font-size:10.5px;line-height:1.25;border-radius:4px;padding:2px 5px;margin-bottom:3px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
@media (max-width:700px){.cal-cell{min-height:58px}.cal-ev{display:none}.cal-grid{gap:3px}}
@media (max-width:820px){.cx-card{grid-template-columns:1fr 1fr!important;gap:10px!important}.cx-card>div:first-child{grid-column:1/-1}}
/* Aire arriba del título / topbar */
body:has(.corte-app-shell) .corte-main{padding-top:34px!important}
body:has(.corte-app-shell) .topbar{margin-bottom:22px!important}
@media (max-width:800px){ body:has(.corte-app-shell) .corte-main{padding-top:20px!important} }
