/* Scoped Premium SaaS theme. No global element selectors. */
.lss-app{--lss-navy:#101d32;--lss-accent:#13a89e;--lss-bg:#f5f7fb;--lss-border:#e6eaf0;--lss-text:#19273c;display:flex;min-height:100vh;background:var(--lss-bg);color:var(--lss-text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}
.lss-app *{box-sizing:border-box}.lss-sidebar{width:258px;flex:none;background:var(--lss-navy);color:#dce6f2;padding:24px 16px}.lss-brand{display:flex;align-items:center;gap:12px;padding:8px 12px 28px;font-size:19px;font-weight:750;color:white}.lss-brand-mark{display:grid;place-items:center;width:36px;height:36px;background:var(--lss-accent);border-radius:11px}.lss-nav{display:grid;gap:5px}.lss-nav button{width:100%;text-align:left;padding:12px 14px;border:0;border-radius:10px;background:transparent;color:inherit;font:inherit;cursor:pointer}.lss-nav button:hover,.lss-nav button[aria-current=page]{background:#233a53;color:white}.lss-main{flex:1;min-width:0;padding:32px;max-width:1500px;margin:auto}.lss-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}.lss-eyebrow{color:#75849a;font-size:13px}.lss-title{font-size:29px;letter-spacing:-.8px;margin:5px 0}.lss-pill{display:inline-block;padding:8px 12px;border-radius:999px;background:#e0f7f2;color:#087d73;font-size:12px;font-weight:700}.lss-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.lss-card{background:white;border:1px solid var(--lss-border);border-radius:16px;padding:22px;box-shadow:0 5px 18px #10243b08}.lss-stat-label{color:#718097;font-size:13px}.lss-stat{font-size:31px;font-weight:750;margin:12px 0 5px}.lss-muted{color:#7c8ba0;font-size:13px}.lss-section{margin-top:22px}.lss-section-title{font-size:17px;margin:0 0 15px}.lss-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.lss-table th,.lss-table td{padding:14px;border-bottom:1px solid var(--lss-border)}.lss-table th{color:#75849a;font-weight:600}.lss-action{border:0;background:var(--lss-accent);color:white;border-radius:10px;padding:11px 16px;font:inherit;font-weight:650;cursor:pointer}.lss-panel[hidden]{display:none}.lss-two{display:grid;grid-template-columns:2fr 1fr;gap:18px}.lss-progress{height:9px;border-radius:20px;background:#e9eff3;overflow:hidden;margin-top:8px}.lss-progress span{display:block;height:100%;background:var(--lss-accent);border-radius:20px}.lss-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:14px 0}.lss-search{padding:11px 13px;border:1px solid var(--lss-border);border-radius:10px;max-width:100%;width:260px;font:inherit}.lss-empty{padding:26px;text-align:center;color:#7b8799}.lss-mobile-toggle{display:none}@media(max-width:1050px){.lss-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lss-two{grid-template-columns:1fr}}@media(max-width:720px){.lss-app{display:block}.lss-sidebar{width:100%;padding:14px}.lss-brand{padding:5px 8px 12px}.lss-mobile-toggle{display:inline-block}.lss-nav{display:none}.lss-sidebar.lss-open .lss-nav{display:grid}.lss-main{padding:20px 14px}.lss-grid{grid-template-columns:1fr 1fr;gap:9px}.lss-card{padding:15px}.lss-stat{font-size:25px}.lss-title{font-size:23px}.lss-header{align-items:flex-start}.lss-table{font-size:12px}.lss-table th,.lss-table td{padding:9px 5px}}

.lss-app .lss-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 20; height: 100vh; display: flex; flex-direction: column; overflow-y: auto; border: 0; }
.lss-app .lss-sidebar .brand { color: #fff; }
.lss-app .lss-sidebar .brand small { color: #aab9ca; }
.lss-app .lss-sidebar .workspace-label,
.lss-app .lss-sidebar .nav-group-label { color: #91a1b6; }
.lss-app .lss-sidebar .unit-select { border-color: #314259; color: #edf3fa; background: #1b2b42; }
.lss-app .lss-sidebar .unit-copy small { color: #aab9ca; }
.lss-app .lss-sidebar .nav-link { min-height: 42px; margin: 0; border-radius: 10px; color: #c1ccda; font-size: 13px; }
.lss-app .lss-sidebar .nav-link:hover,
.lss-app .lss-sidebar .nav-link.active,
.lss-app .lss-nav button[aria-current=page] { color: #fff; background: #233a53; }
.lss-app .lss-sidebar .nav-count { color: #d3eee9; background: #294d5c; }
.lss-app .lss-sidebar .help-card { color: #e7eef7; background: #1b2b42; }
.lss-app .lss-sidebar .help-card p { color: #aab9ca; }
.lss-app .lss-sidebar .help-icon { border-color: #40546b; color: #80d5ca; }
.lss-app .lss-sidebar .help-link { color: #80d5ca; }
.lss-app .lss-sidebar .profile-button { border-color: #314259; color: #edf3fa; }
.lss-app .lss-sidebar .profile-info small,
.lss-app .lss-sidebar .profile-menu { color: #aab9ca; }
.lss-app .lss-main { width: calc(100% - 258px); max-width: none; padding: 0; margin: 0 0 0 258px; }
.lss-app .lss-header { height: 72px; padding: 0 4%; margin: 0; border-color: var(--lss-border); background: #fff; }
.lss-app .content { max-width: 1500px; padding: 34px 4%; }
.lss-app .lss-title,
.lss-app h1 { color: var(--lss-text); font-family: inherit; font-size: clamp(24px, 2.45vw, 32px); font-weight: 750; letter-spacing: -.8px; }
.lss-app .lss-eyebrow { color: #75849a; font-size: 11px; }
.lss-app .eyebrow-dot { background: var(--lss-accent); }
.lss-app .page-subtitle,
.lss-app .section-heading p,
.lss-app .panel-header p,
.lss-app .readiness-caption { color: #7c8ba0; }
.lss-app .button-primary,
.lss-app .lss-action { border-color: var(--lss-accent); color: #fff; background: var(--lss-accent); border-radius: 10px; }
.lss-app .button-primary:hover,
.lss-app .lss-action:hover { border-color: #0c8e86; background: #0c8e86; }
.lss-app .button-outline { border-color: var(--lss-border); border-radius: 10px; color: #42536a; }
.lss-app .nav-count.warn { color: #8b5a28; background: #fff0dd; }
.lss-app .lss-card,
.lss-app .panel,
.lss-app .stat-card,
.lss-app .summary-strip,
.lss-app .table-wrap,
.lss-app .inspection-card,
.lss-app .quality-card,
.lss-app .risk-card,
.lss-app .task-card,
.lss-app .document-card,
.lss-app .management-card { border-color: var(--lss-border); border-radius: 16px; background: #fff; box-shadow: 0 5px 18px #10243b08; }
.lss-app .stat-card { min-height: 144px; padding: 20px; }
.lss-app .lss-stat { color: var(--lss-text); font-family: inherit; font-size: 31px; letter-spacing: -.5px; }
.lss-app .lss-stat-label { color: #718097; font-size: 13px; }
.lss-app .stat-foot,
.lss-app .lss-muted,
.lss-app .quality-meta { color: #7c8ba0; }
.lss-app .dashboard-grid { grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr); gap: 18px; }
.lss-app .panel { padding: 22px; }
.lss-app .activity-panel,
.lss-app .deadlines-panel { padding-bottom: 12px; }
.lss-app .panel-header h2,
.lss-app .section-heading h2 { color: var(--lss-text); font-family: inherit; font-size: 16px; }
.lss-app .nav-link.active { color: #fff; background: #233a53; }
.lss-app .period-select,
.lss-app .list-toolbar select,
.lss-app .search-wrap,
.lss-app .inspection-fields select,
.lss-app .inspection-fields input,
.lss-app .inspection-fields textarea { border-color: var(--lss-border); border-radius: 10px; }
.lss-app .search-wrap { width: min(320px, 100%); }
.lss-app .table-wrap { overflow-x: auto; }
.lss-app .lss-table { white-space: nowrap; }
.lss-app .lss-table th { color: #75849a; font-size: 10px; }
.lss-app .lss-table td { color: #526178; font-size: 12px; }
.lss-app .lss-table td strong { color: var(--lss-text); font-size: 12px; }
.lss-app .status-pill { border-radius: 999px; }
.lss-app .risk-banner,
.lss-app .deviation-callout { border-color: #d5efeb; border-radius: 12px; background: #eef9f7; }
.lss-app .risk-banner-icon,
.lss-app .deviation-callout > span { color: #087d73; }
.lss-app .readiness-progress { height: 9px; border-radius: 20px; background: #e9eff3; }
.lss-app .readiness-progress::-webkit-progress-bar { border-radius: 20px; background: #e9eff3; }
.lss-app .readiness-progress::-webkit-progress-value,
.lss-app .readiness-progress::-moz-progress-bar { border-radius: 20px; background: var(--lss-accent); }
.lss-app .modal { border: 1px solid var(--lss-border); border-radius: 16px; }
.lss-app .modal input,
.lss-app .modal select,
.lss-app .modal textarea { border-color: var(--lss-border); border-radius: 10px; }
.lss-app .modal input:focus,
.lss-app .modal select:focus,
.lss-app .modal textarea:focus { border-color: var(--lss-accent); box-shadow: 0 0 0 3px #13a89e20; }
.lss-app .text-button,
.lss-app .full-width-link,
.lss-app .help-link { color: #087d73; }
.lss-app .quick-action:hover,
.lss-app .management-card:hover { border-color: #b6dfda; background: #f7fcfb; }
.lss-app .auth-screen { --lss-accent: #13a89e; --lss-bg: #f5f7fb; }
.auth-screen .brand-mark { background: #13a89e; }
.auth-screen .button-primary { border-radius: 10px; background: #13a89e; }
.auth-screen .button-primary:hover { background: #0c8e86; }

@media (max-width: 1050px) {
  .lss-app .lss-main { width: calc(100% - 220px); margin-left: 220px; }
  .lss-app .lss-sidebar { width: 220px; }
}
@media (max-width: 780px) {
  .lss-app { display: block; }
  .lss-app .lss-sidebar { width: 258px; transform: translateX(-101%); transition: transform .2s ease; box-shadow: 8px 0 25px #10243b20; }
  .lss-app .lss-sidebar.sidebar-open { transform: translateX(0); }
  .lss-app .lss-sidebar .lss-nav { display: grid; }
  .lss-app .lss-main { width: 100%; margin: 0; }
  .lss-app .lss-mobile-toggle { display: inline-block; }
}
@media (max-width: 540px) {
  .lss-app .lss-sidebar { width: min(320px, 85vw); }
  .lss-app .lss-header { padding: 0 14px; }
  .lss-app .content { padding: 23px 15px; }
  .lss-app .lss-two { grid-template-columns: 1fr; }
  .lss-app .lss-title,
  .lss-app h1 { font-size: 23px; }
}
@media print {
  .lss-app .lss-sidebar { display: none !important; }
  .lss-app .lss-main { width: 100%; margin: 0; }
}
