*{
  box-sizing:border-box;
}

.page-head.split,.section-head-inline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.page-head p,.muted{
  color:var(--muted);
}

.grid{
  display:grid;
  gap:18px;
}

.grid.two{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.grid.four{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.compact-grid{
  margin-bottom:18px;
}

.anchor-card{
  scroll-margin-top:82px;
}

.stack{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.checks-row{
  display:flex;
  flex-wrap:wrap;
  gap:20px;
  margin:12px 0 17px;
}

.button.small{
  min-height:34px;
  padding:6px 11px;
  font-size:12px;
}

.alert.success{
  background:#eaf7ef;
  border:1px solid #b8e0c5;
}

.alert.error{
  background:#fff0f0;
  border:1px solid #efc2c2;
}

.alert code{
  padding:7px 9px;
  background:#fff;
  border-radius:7px;
  overflow-wrap:anywhere;
}

.token-alert code{
  user-select:all;
}

.status-pill.ok{
  background:#e7f6ed;
  color:var(--success);
}

.status-dot{
  display:inline-block;
  width:8px;
  height:8px;
  margin-right:7px;
  border-radius:50%;
}

.status-dot.ok{
  background:var(--success);
}

.status-dot.bad{
  background:var(--danger);
}

.kv code{
  overflow-wrap:anywhere;
}

.clean-list{
  margin:0;
  padding-left:20px;
  line-height:2;
}

.table-wrap{
  overflow:auto;
}

table{
  width:100%;
  border-collapse:collapse;
}

td strong,td small{
  display:block;
}

.field-table input.tiny{
  width:76px;
}

.field-table input[type=checkbox]{
  width:auto;
}

.field-table select{
  width:70px;
}

.tabs a:hover{
  background:#111;
  color:#fff;
}

.repeat-list{
  display:flex;
  flex-direction:column;
  gap:9px;
  margin:14px 0;
}

.repeat-row{
  display:grid;
  gap:8px;
  align-items:center;
}

.facet-row{
  grid-template-columns:1fr 1fr 38px;
}

.featured-row{
  grid-template-columns:1.2fr .8fr 1.4fr 1.4fr 38px;
}

.sort-row{
  grid-template-columns:.7fr 1.2fr 1.6fr 38px;
}

.synonym-row{
  grid-template-columns:.8fr 1fr 2fr .5fr 38px;
}

.curation-row{
  grid-template-columns:.7fr 1fr .55fr 1.2fr 1fr 1fr 1.2fr 1.2fr 38px;
}

.icon-button:hover{
  border-color:var(--danger);
  color:var(--danger);
}

.ranking-list{
  margin:12px 0 0;
  padding:0;
  list-style:none;
}

.ranking-list li{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-top:1px solid var(--line);
  font-size:13px;
}

.ranking-list strong{
  font-variant-numeric:tabular-nums;
}

.section-head-inline p{
  margin:0;
}

.hidden{
  display:none!important;
}

.grid.three{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.account-link{
  display:flex;
  flex-direction:column;
  color:#fff;
  text-decoration:none;
  text-align:right;
  line-height:1.2;
}

.login-note{
  margin:18px 0 0;
  color:var(--muted);
  font-size:12px;
}

.alert.warning{
  background:#fff7e8;
  border:1px solid #f0d19b;
  color:#6f4b0b;
}

.narrow-card{
  width:min(620px,100%);
}

.permission-fieldset{
  min-width:0;
  margin:0;
  padding:0;
  border:0;
}

.permission-fieldset:disabled{
  opacity:.72;
}

.permission-fieldset:disabled .button,.permission-fieldset:disabled .icon-button{
  cursor:not-allowed;
  transform:none;
}

.panel-title{
  margin:0 0 8px!important;
}

.role-chip{
  display:inline-flex;
  margin:2px 4px 2px 0;
  padding:5px 8px;
  border-radius:999px;
  background:#f1f1ef;
  font-size:11px;
  font-weight:600;
}

.inline-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.membership-grid{
  display:flex;
  flex-direction:column;
  gap:9px;
}

.membership-row{
  display:grid;
  grid-template-columns:minmax(190px,1.4fr) minmax(180px,1fr) 140px auto;
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
}

.membership-row strong{
  font-size:12px;
  overflow-wrap:anywhere;
}

.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.login-links{
  margin-top:14px;
}

.login-links a{
  color:var(--black);
  font-size:13px;
  font-weight:700;
}

.billing-summary-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:16px;
  margin-bottom:18px;
}

.billing-summary{
  margin-bottom:0;
}

.billing-end{
  font-size:16px;
  font-weight:700;
}

.free-install-badge{
  display:inline-flex;
  align-items:center;
  padding:7px 11px;
  border-radius:999px;
  background:#e7f6ed;
  color:var(--success);
  font-size:12px;
  font-weight:700;
}

.billing-section{
  margin-top:18px;
}

.membership-current{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 0;
  border-bottom:1px solid var(--line);
}

.membership-add{
  margin-top:20px;
}

.alert.success strong+span{
  margin-left:4px;
}

.no-margin{
  margin:0;
}

.period-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:-6px 0 18px;
}

.period-chip{
  display:inline-flex;
  padding:8px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:#222;
  text-decoration:none;
  font-size:12px;
  font-weight:700;
}

.period-chip.active{
  border-color:#111;
  background:#111;
  color:#fff;
}

.analytics-stats{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.table-wrap a{
  color:#111;
  text-decoration:none;
}

.table-wrap a:hover{
  text-decoration:underline;
}

.lab-search-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:end;
}

.lab-search-form .button{
  min-width:180px;
}

.lab-publish-row{
  padding-top:14px;
  border-top:1px solid var(--line);
}

.lab-publish-row form{
  margin:0;
}

.weight-readonly{
  display:inline-flex;
  min-width:48px;
  justify-content:center;
  padding:8px 10px;
  border-radius:9px;
  background:var(--soft);
  font-weight:700;
}

.lab-compare{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}

.lab-compare.has-draft{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.lab-column{
  padding:0;
  overflow:hidden;
}

.lab-results{
  margin:0;
  padding:0;
  list-style:none;
}

.lab-results>li{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  padding:16px 20px;
  border-top:1px solid var(--line);
}

.lab-position{
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:10px;
  background:#111;
  color:#fff;
  font-weight:700;
}

.lab-product strong,.lab-product small{
  display:block;
}

.lab-product small{
  margin-top:4px;
  color:var(--muted);
}

.lab-highlights{
  margin:8px 0 0;
  padding-left:18px;
  color:#555;
  font-size:12px;
}

.lab-highlights mark{
  padding:1px 3px;
  border-radius:4px;
  background:#fff0c9;
}

.issue-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:14px;
}

.issue-row{
  display:grid;
  grid-template-columns:90px minmax(0,1fr);
  gap:14px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:13px;
}

.issue-row.warning{
  border-color:#f0d19b;
  background:#fffaf0;
}

.issue-row.error{
  border-color:#efc2c2;
  background:#fff4f4;
}

.issue-row p{
  margin:5px 0 0;
  color:var(--muted);
}

.issue-severity{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:28px;
  border-radius:999px;
  background:#eee;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
}

.issue-row.warning .issue-severity{
  background:#f6dfad;
  color:#684500;
}

.issue-row.error .issue-severity{
  background:#ffd4d4;
  color:#8a1111;
}

.audit-filter-card{
  margin-bottom:18px;
}

.audit-filters{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  align-items:end;
}

.audit-search{
  grid-column:span 2;
}

.audit-filter-actions{
  margin:0;
  align-self:end;
}

.audit-table-card{
  margin-top:0;
}

.audit-table{
  min-width:1160px;
}

.audit-date{
  white-space:nowrap;
}

.audit-details{
  min-width:110px;
}

.audit-details summary{
  cursor:pointer;
  font-weight:700;
  color:#111;
}

.audit-details[open]{
  min-width:360px;
}

.audit-details pre{
  max-width:520px;
  max-height:260px;
  margin:8px 0 14px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#f7f7f5;
  overflow:auto;
  font:11px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.audit-details h4{
  margin:14px 0 5px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#666;
}

.audit-detail-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-top:12px;
}

.audit-detail-grid div{
  display:grid;
  gap:3px;
}

.audit-detail-grid span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.07em;
  color:var(--muted);
}

.audit-detail-grid code{
  max-width:520px;
  overflow-wrap:anywhere;
}

.audit-pagination{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:18px;
}

.section-head p{
  margin:5px 0 0;
}

.analytics-filter-form{
  display:grid;
  grid-template-columns:repeat(3,minmax(150px,1fr)) auto auto;
  gap:12px;
  align-items:end;
}

.analytics-filters-card{
  margin-bottom:18px;
}

.analytics-stats-wide{
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.lab-control-grid{
  align-items:start;
}

.lab-test-form{
  display:grid;
  grid-template-columns:minmax(180px,1.4fr) minmax(160px,1fr) 110px auto;
  gap:10px;
  align-items:end;
  margin:14px 0 18px;
}

.lab-control-grid .card{
  padding:0;
  overflow:hidden;
}

.lab-control-grid .card>.section-head,.lab-control-grid .card>form{
  padding-left:22px;
  padding-right:22px;
}

.lab-control-grid .card>.table-wrap{
  margin-top:8px;
}

.lab-control-grid .muted{
  margin:4px 0 0;
}

.button.small.danger{
  min-height:34px;
  padding:7px 10px;
}

.status-pill.bad{
  background:#feecec;
  color:var(--danger);
}

.metric-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}

.metric-grid.compact .metric{
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fafaf8;
}

.metric-grid .metric span{
  display:block;
  color:var(--muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.metric-grid .metric strong{
  display:block;
  margin-top:5px;
  font-size:18px;
}

.status{
  display:inline-flex;
  margin:2px;
  padding:4px 7px;
  border-radius:999px;
  font-size:11px;
  font-weight:600;
}

.status.good{
  background:#e7f6ed;
  color:var(--success);
}

.status.bad{
  background:#feecec;
  color:var(--danger);
}

.status.warn{
  background:#fff3d6;
  color:#805900;
}

.notice-inline.warning{
  border-left-color:#d29a13;
  background:#fff8e6;
  color:#6b4a16;
}

.zero-results-card .section-head{
  align-items:flex-start;
}

.zero-actions-cell{
  min-width:150px;
}

.zero-actions summary{
  cursor:pointer;
  font-weight:700;
}

.zero-actions[open]{
  min-width:360px;
}

.zero-action-stack{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:10px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fafaf8;
}

.zero-action-form{
  display:grid;
  grid-template-columns:minmax(160px,1fr) auto;
  gap:8px;
  align-items:end;
}

.zero-action-form label{
  min-width:0;
}

.ignored-zero-card{
  margin-top:18px;
}

.notice-inline.success{
  border-left-color:var(--success);
  background:#eef9f2;
  color:#125d3c;
}

.lab-page-notice{
  margin:0 0 18px;
}

.lab-regression-warning{
  margin:16px 0 0;
}

.lab-publish-form{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}

.regression-confirm{
  max-width:580px;
  padding:10px 12px;
  border:1px solid #e5c36d;
  border-radius:10px;
  background:#fffaf0;
}

.lab-test-summary{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(125px,1fr));
  gap:8px;
  padding:0 22px 14px;
}

.lab-test-summary>div{
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fafaf8;
}

.lab-test-summary span{
  display:block;
  color:var(--muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.lab-test-summary strong{
  display:block;
  margin-top:5px;
  font-size:16px;
}

.lab-test-summary .bad{
  border-color:#efc2c2;
  background:#fff4f4;
}

.lab-test-summary .bad strong{
  color:var(--danger);
}

.lab-test-summary .ok{
  border-color:#b8e0c5;
  background:#f0faf4;
}

.lab-test-summary .ok strong{
  color:var(--success);
}

.lab-test-tools{
  padding:0 22px;
  margin:0 0 14px;
}

.lab-import-details{
  position:relative;
}

.lab-import-details summary{
  list-style:none;
}

.lab-import-details summary::-webkit-details-marker{
  display:none;
}

.lab-import-details[open] .lab-import-form{
  display:flex;
}

.lab-import-form{
  position:absolute;
  z-index:12;
  top:42px;
  left:0;
  width:min(520px,80vw);
  padding:16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  box-shadow:0 18px 50px rgba(0,0,0,.14);
}

.movement-badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 7px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.movement-badge.up{
  background:#e7f6ed;
  color:var(--success);
}

.movement-badge.down{
  background:#feecec;
  color:var(--danger);
}

.movement-badge.same{
  background:#eee;
  color:#555;
}

.lab-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.lab-title-row strong{
  min-width:0;
}

.lab-score{
  margin-top:8px;
  font:11px ui-monospace,SFMono-Regular,Menlo,monospace;
  color:#555;
  overflow-wrap:anywhere;
}

.storage-stats{
  margin-bottom:18px;
}

.storage-table{
  min-width:1120px;
}

.analytics-aggregate-note{
  margin:-4px 0 18px;
}

.storage-table td,.storage-table th{
  white-space:nowrap;
}

.storage-table td:first-child{
  white-space:normal;
}

.feature-list{
  margin:14px 0 0;
  padding-left:20px;
}

.feature-list li{
  margin:7px 0;
}

.alert.danger{
  background:#fff0f0;
  border:1px solid #efc2c2;
  color:#7e1717;
}

.release-overview{
  align-items:start;
}

.release-current{
  position:relative;
  overflow:hidden;
}

.release-current:after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-100px;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(231,146,34,.18),rgba(231,146,34,0) 68%);
  pointer-events:none;
}

.release-meta{
  position:relative;
  z-index:1;
}

.compact-fields{
  gap:10px;
}

.release-table{
  min-width:1120px;
}

.checksum-short{
  display:block;
  margin-top:7px;
  color:#5d6268;
  font-size:11px;
}

.release-table details{
  margin-top:9px;
}

.release-table summary{
  cursor:pointer;
  font-size:12px;
  font-weight:600;
}

.release-table pre{
  max-width:360px;
  max-height:180px;
  margin:8px 0 0;
  padding:10px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#f7f7f5;
  overflow:auto;
  white-space:pre-wrap;
  font:11px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;
}

.status-badge.status-published{
  background:#e7f6ed;
  color:var(--success);
}

.status-badge.status-draft{
  background:#fff3d6;
  color:#7a5500;
}

.status-badge.status-archived{
  background:#ececef;
  color:#50545a;
}

.ok-text{
  color:var(--success);
  font-size:12px;
  font-weight:600;
}

.danger-text{
  color:var(--danger);
  font-size:12px;
  font-weight:600;
}

.release-actions{
  margin-top:0;
  gap:7px;
}

.release-actions form{
  margin:0;
}

.empty-state{
  padding:28px;
  color:var(--muted);
  text-align:center;
}

.release-table td:nth-child(1){
  min-width:220px;
}

.release-table td:nth-child(6){
  min-width:250px;
}

:root{
  --black:#171717;
  --white:#fff;
  --soft:#f4f4f1;
  --soft2:#fafaf8;
  --line:#deded7;
  --muted:#676c72;
  --accent:#d77d0c;
  --danger:#b42318;
  --success:#18794e;
  --line-strong:#c7c7bf;
  --warning:#875900;
  --font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font-mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --radius-sm:7px;
  --radius-md:10px;
  --radius-lg:13px;
  --shadow-sm:0 1px 2px rgba(17,17,17,.04);
  --shadow-popover:0 18px 45px rgba(17,17,17,.16);
  --topbar-height:64px;
}

html{
  scroll-behavior:smooth;
  font-size:16px;
}

body{
  margin:0;
  background:var(--soft);
  color:var(--black);
  font-family:var(--font-sans);
  font-size:14px;
  line-height:1.5;
  letter-spacing:0;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

button,input,textarea,select{
  font-family:inherit;
}

button{
  font-size:inherit;
}

.topbar{
  position:sticky;
  top:0;
  z-index:20;
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:var(--topbar-height);
  padding:0 24px;
  background:var(--black);
  color:#fff;
  border-bottom:1px solid #282828;
  min-height:var(--topbar-height);
}

.brand{
  color:#fff;
  text-decoration:none;
  font-size:16px;
  font-weight:700;
  letter-spacing:-.015em;
  white-space:nowrap;
}

.topbar-actions{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.topnav{
  display:flex;
  align-items:center;
  gap:3px;
  min-width:0;
  overflow:visible;
}

.topnav::-webkit-scrollbar{
  display:none;
}

.topnav a{
  padding:8px 10px;
  border-radius:var(--radius-sm);
  color:#c9c9c9;
  text-decoration:none;
  font-size:12.5px;
  font-weight:600;
  line-height:1.2;
  white-space:nowrap;
}

.topnav a:hover{
  background:#292929;
  color:#fff;
}

.topnav a.active{
  background:#fff;
  color:var(--black);
}

.account-link strong{
  font-size:12px;
  font-weight:600;
}

.account-link span{
  margin-top:3px;
  color:#aaa;
  font-size:11px;
}

.link-button{
  border:0;
  background:none;
  color:#fff;
  cursor:pointer;
  padding:7px 0;
  font-size:12.5px;
  font-weight:600;
}

.language-form select{
  width:auto;
  min-width:108px;
  border-color:#444;
  background:#1b1b1b;
  color:#fff;
  padding:6px 26px 6px 9px;
  min-height:36px;
  border-radius:var(--radius-sm);
  font-size:12px;
}

.page{
  width:min(1280px,calc(100% - 40px));
  margin:28px auto 64px;
}

.page-head{
  margin-bottom:20px;
}

.page-head h1{
  margin:3px 0 7px;
  font-size:clamp(28px,3.2vw,40px);
  letter-spacing:-.035em;
  font-weight:700;
  line-height:1.08;
}

.page-head p{
  max-width:820px;
  margin:0;
  font-size:14px;
  line-height:1.55;
}

.eyebrow{
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  color:var(--accent);
}

.card,.stat,.login-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-sm);
  border-color:var(--line);
}

.card{
  padding:20px;
  margin-bottom:16px;
}

.card h2{
  margin:0 0 6px;
  font-size:18px;
  font-weight:700;
  line-height:1.25;
  letter-spacing:-.015em;
}

.card h3{
  margin:22px 0 10px;
  font-size:14px;
  font-weight:700;
}

.section-head{
  display:flex;
  justify-content:space-between;
  padding:16px 20px;
  align-items:center;
  gap:16px;
}

.section-head h2{
  margin:0;
  font-size:18px;
  font-weight:700;
}

.section-head.compact{
  padding:0 0 14px;
}

.section-head.compact p{
  margin:4px 0 0;
  font-size:13px;
}

.section-head-inline h2{
  margin-bottom:4px;
  font-size:18px;
  font-weight:700;
}

.login-card{
  width:min(440px,100%);
  margin:10vh auto;
  padding:26px;
}

.login-card h1{
  margin:5px 0;
  font-size:32px;
  font-weight:700;
  letter-spacing:-.035em;
}

label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:13px;
  font-weight:600;
  line-height:1.35;
}

label small{
  color:var(--muted);
  font-weight:400;
  font-size:12px;
}

input,textarea,select{
  width:100%;
  border:1px solid #d1d1ce;
  border-radius:var(--radius-md);
  background:#fff;
  padding:9px 11px;
  font:inherit;
  color:var(--black);
  min-height:40px;
  border-color:#cecec8;
  font-size:14px;
  line-height:1.35;
  transition:border-color .15s ease,box-shadow .15s ease;
}

textarea{
  font-family:var(--font-mono);
  font-size:12.5px;
  line-height:1.55;
  resize:vertical;
}

input:focus,textarea:focus,select:focus{
  outline:0;
  border-color:#ad6c16;
  box-shadow:0 0 0 3px rgba(217,130,22,.14);
}

input:disabled,textarea:disabled,select:disabled{
  cursor:not-allowed;
  background:#f1f1ef;
  color:#8b8e91;
}

.check{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:8px;
  font-weight:600;
}

.check input{
  width:auto;
  min-height:0;
}

.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:9px 14px;
  border:1px solid var(--black);
  border-radius:var(--radius-sm);
  background:#fff;
  color:var(--black);
  font-weight:600;
  text-decoration:none;
  cursor:pointer;
  font-size:13px;
  line-height:1.1;
  letter-spacing:0;
  box-shadow:none;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease;
}

.button:hover{
  transform:none;
  border-color:#555;
  background:#f4f4f2;
}

.button:active{
  transform:translateY(1px);
}

.button:focus-visible,.link-button:focus-visible,.topnav a:focus-visible,.mobile-nav-toggle:focus-visible{
  outline:3px solid rgba(217,130,22,.28);
  outline-offset:2px;
}

.button.primary{
  background:#151515;
  color:#fff;
  border-color:#151515;
}

.button.primary:hover{
  background:#2a2a2a;
  border-color:#2a2a2a;
}

.button.danger{
  border-color:#d5a09c;
  color:var(--danger);
}

.button.danger:hover{
  background:#fff4f3;
  border-color:var(--danger);
}

.button.small,.button.small.danger{
  min-height:34px;
  padding:7px 10px;
  font-size:12px;
}

.button[disabled]{
  cursor:not-allowed;
  opacity:.5;
  transform:none;
}

.button-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}

.page-actions{
  margin-top:0;
}

.page-actions form{
  margin:0;
}

.alert{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  padding:13px 15px;
  margin:0 0 18px;
  border-radius:var(--radius-md);
  margin-bottom:16px;
  font-size:13px;
}

.stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}

.stat{
  padding:16px;
}

.stat span{
  display:block;
  color:var(--muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.075em;
  font-weight:600;
}

.stat strong{
  display:block;
  margin-top:6px;
  font-size:22px;
  font-weight:700;
  line-height:1.15;
}

.stat small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:12px;
}

.stat-date{
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:600!important;
}

.status-pill{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:600;
  background:#eee;
}

.status-badge{
  display:inline-flex;
  align-items:center;
  padding:5px 8px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.045em;
}

.kv{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:14px;
  padding:9px 0;
  border-bottom:1px solid var(--line);
  font-size:13px;
}

.kv span{
  color:var(--muted);
}

.kv strong{
  font-weight:600;
}

.kv code,code{
  font-family:var(--font-mono);
  font-size:12px;
}

.panel-soft{
  padding:16px;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:var(--soft2);
}

.table-card{
  padding:0;
  overflow:hidden;
  border-radius:var(--radius-lg);
}

th,td{
  padding:12px 14px;
  border-top:1px solid var(--line);
  text-align:left;
  font-size:13px;
  vertical-align:middle;
  line-height:1.4;
}

th{
  background:#fafafa;
  color:#555;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.055em;
  font-weight:600;
}

td strong{
  font-weight:600;
}

td small{
  color:var(--muted);
  margin-top:3px;
  font-size:12px;
}

.tabs{
  position:sticky;
  top:var(--topbar-height);
  z-index:15;
  display:flex;
  gap:5px;
  margin:0 0 18px;
  padding:5px;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(10px);
  overflow:auto;
}

.tabs a{
  flex:0 0 auto;
  padding:8px 10px;
  border-radius:6px;
  color:#333;
  text-decoration:none;
  font-size:12px;
  font-weight:600;
  border:1px solid transparent;
}

.icon-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:1px solid #d5d5d2;
  border-radius:var(--radius-sm);
  background:#fff;
  color:#555;
  font-size:18px;
  cursor:pointer;
}

.notice-inline{
  margin-top:14px;
  padding:11px 13px;
  border-left:3px solid var(--accent);
  background:#fff8ec;
  color:#6b4a16;
  font-size:12.5px;
  line-height:1.5;
}

.form-grid{
  display:grid;
  gap:12px;
}

.form-grid.two{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.form-grid.three{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.feature-list.compact-list{
  margin-top:8px;
}

.feature-list.compact-list li{
  margin:5px 0;
}

.page-footnote{
  margin-top:14px;
  font-size:12px;
}

.health-text.ok{
  color:var(--success);
}

.health-text.bad{
  color:var(--danger);
}

.backup-stats,.notification-stats{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.backup-table{
  min-width:1050px;
}

.compact-details summary{
  cursor:pointer;
  font-size:12px;
  font-weight:600;
}

.compact-details pre{
  max-width:420px;
  max-height:180px;
  margin:8px 0 0;
  padding:10px;
  border:1px solid var(--line);
  border-radius:var(--radius-sm);
  background:#f7f7f5;
  overflow:auto;
  white-space:pre-wrap;
  font:11px/1.45 var(--font-mono);
}

.mobile-nav-toggle{
  display:none;
  width:44px;
  height:44px;
  padding:8px;
  border:1px solid #3b3b3b;
  border-radius:var(--radius-sm);
  background:#1d1d1d;
  cursor:pointer;
}

.mobile-nav-toggle span:not(.sr-only){
  display:block;
  height:2px;
  margin:4px 0;
  border-radius:2px;
  background:#fff;
}

.release-version{
  margin:14px 0 18px;
  font-size:clamp(34px,4.6vw,52px);
  font-weight:700;
  letter-spacing:-.045em;
  line-height:1;
}

.release-list-version{
  font-size:15px;
  font-weight:700;
}

.movement-badge,.issue-severity,.free-install-badge,.role-chip,.status{
  font-weight:700;
}

.section-head > span{
  color:var(--muted);
  font-size:12px;
  font-weight:600;
}

@media (max-width:1180px){
  .analytics-stats-wide{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .analytics-filter-form{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .analytics-filter-form .button{
    width:100%;
  }

  .lab-test-form{
    grid-template-columns:1fr 1fr;
  }

  .account-link{
    display:none;
  }

  .topbar{
    padding:0 18px;
  }

  .topnav a{
    padding-left:7px;
    padding-right:7px;
    font-size:12px;
  }

}

@media (max-width:1100px){
  .grid.four{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .curation-row{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .curation-row .icon-button{
    grid-column:2;
    justify-self:end;
  }

  .featured-row{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .featured-row .icon-button{
    grid-column:2;
    justify-self:end;
  }

  .audit-filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .audit-search{
    grid-column:span 2;
  }

}

@media (max-width:1000px){
  .analytics-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .lab-compare.has-draft{
    grid-template-columns:1fr;
  }

}

@media (max-width:980px){
  .mobile-nav-toggle{
    display:block;
    margin-left:auto;
  }

  .topbar-actions{
    gap:8px;
  }

  .topnav{
    display:none;
    position:fixed;
    z-index:40;
    top:60px;
    left:12px;
    right:12px;
    max-height:calc(100vh - 84px);
    padding:8px;
    border:1px solid #303030;
    border-radius:12px;
    background:#171717;
    box-shadow:var(--shadow-popover);
    overflow:auto;
  }

  .topnav.is-open{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px;
  }

  .topnav a{
    padding:11px 12px;
    font-size:13px;
  }

  .topnav a.active{
    background:#fff;
    color:#151515;
  }

  .nav-open{
    overflow:hidden;
  }

  .language-form select{
    min-width:100px;
  }

  .logout-form{
    display:none;
  }

}

@media (max-width:900px){
  .topnav{
    display:none;
  }

  .grid.three{
    grid-template-columns:1fr;
  }

  .membership-row{
    grid-template-columns:1fr 1fr;
  }

  .membership-row strong{
    grid-column:1/-1;
  }

}

@media (max-width:760px){
  .grid.two,.grid.four,.stats{
    grid-template-columns:1fr;
  }

  .topbar{
    padding:0 15px;
  }

  .page-head.split,.section-head-inline{
    align-items:flex-start;
    flex-direction:column;
  }

  .tabs{
    top:var(--topbar-height);
  }

  .facet-row,.featured-row,.sort-row,.synonym-row,.curation-row{
    grid-template-columns:1fr;
  }

  .repeat-row .icon-button,.featured-row .icon-button,.curation-row .icon-button{
    grid-column:auto;
    justify-self:end;
  }

  .language-form select{
    min-width:50px;
    max-width:110px;
  }

  .billing-summary-grid{
    grid-template-columns:1fr;
  }

  .analytics-stats{
    grid-template-columns:1fr;
  }

  .lab-search-form{
    grid-template-columns:1fr;
  }

  .lab-search-form .button{
    width:100%;
  }

  .issue-row{
    grid-template-columns:1fr;
  }

  .issue-severity{
    width:max-content;
    padding:0 10px;
  }

  .audit-filters{
    grid-template-columns:1fr;
  }

  .audit-search{
    grid-column:auto;
  }

  .audit-filter-actions{
    width:100%;
  }

  .audit-filter-actions .button{
    flex:1;
  }

  .audit-pagination .button{
    flex:1;
    text-align:center;
  }

  .audit-details[open]{
    min-width:280px;
  }

  .analytics-stats-wide{
    grid-template-columns:1fr;
  }

  .analytics-filter-form,.lab-test-form{
    grid-template-columns:1fr;
  }

  .lab-control-grid .card>.section-head,.lab-control-grid .card>form{
    padding-left:16px;
    padding-right:16px;
  }

  .zero-actions[open]{
    min-width:260px;
  }

  .zero-action-form{
    grid-template-columns:1fr;
  }

  .lab-test-summary{
    grid-template-columns:1fr;
    padding-left:16px;
    padding-right:16px;
  }

  .lab-test-tools{
    padding-left:16px;
    padding-right:16px;
  }

  .lab-import-form{
    position:fixed;
    left:10px;
    right:10px;
    top:90px;
    width:auto;
    max-height:70vh;
    overflow:auto;
  }

  .lab-publish-form{
    align-items:stretch;
    flex-direction:column;
  }

  .lab-publish-form .button{
    width:100%;
  }

  .storage-stats{
    grid-template-columns:1fr;
  }

  .compact-fields{
    grid-template-columns:1fr;
  }

  .release-current .kv{
    grid-template-columns:1fr;
  }

  .release-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .release-actions .button{
    width:100%;
  }

  .page{
    width:min(100% - 24px,1280px);
    margin-top:20px;
  }

  .page-head h1{
    font-size:28px;
  }

  .page-head p{
    font-size:13.5px;
  }

  .page-head.split{
    gap:14px;
  }

  .page-actions{
    width:100%;
  }

  .page-actions form{
    flex:1;
  }

  .page-actions .button{
    width:100%;
  }

  .card{
    padding:16px;
  }

  .section-head{
    padding:14px 16px;
  }

  .section-head.compact{
    padding:0 0 12px;
  }

  .form-grid.two,.form-grid.three{
    grid-template-columns:1fr;
  }

  .backup-stats,.notification-stats{
    grid-template-columns:1fr;
  }

  .topnav.is-open{
    grid-template-columns:1fr;
  }

  .kv{
    grid-template-columns:1fr;
    gap:4px;
  }

  .button{
    min-height:44px;
  }

  .table-wrap{
    -webkit-overflow-scrolling:touch;
  }

  .release-version{
    font-size:36px;
  }

  .button.small,.button.small.danger{
    min-height:40px;
    padding:8px 11px;
  }

  .button.small.danger{
    min-height:40px;
  }

  .icon-button{
    width:44px;
    height:44px;
  }

}

@media (max-width:700px){
  .metric-grid{
    grid-template-columns:1fr;
  }

  .form-grid.three{
    grid-template-columns:1fr;
  }

}

@media (max-width:600px){
  .topbar{
    height:var(--topbar-height);
    min-height:var(--topbar-height);
    padding-top:0;
    padding-bottom:0;
  }

  .topbar-actions{
    gap:10px;
  }

  .account-link{
    display:none;
  }

  .membership-row{
    grid-template-columns:1fr;
  }

  .membership-row strong{
    grid-column:auto;
  }

}

/* Dayava Manager 1.6.3 — consolidated interface system */
button,input,textarea,select{font-family:inherit}
button{font-size:inherit}
.lead{color:var(--muted)}
.page-head.split,.section-head-inline{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.page-actions{margin:0;align-self:flex-start}
.card>.section-head:first-child{margin:-20px -20px 18px;border-bottom:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:#fcfcfa}
.table-card>.section-head:first-child,.lab-control-grid .card>.section-head:first-child{margin:0}
.card>.section-head.compact:first-child{margin:0;padding:0 0 14px;border:0;background:transparent}
.section-head h2,.section-head p{min-width:0}
.section-head p{margin:4px 0 0}
.tabs a:hover{border-color:#d8d8d1;background:#f2f2ef;color:var(--black)}
.tabs a.active{border-color:var(--black);background:var(--black);color:#fff}
.site-tabs{scrollbar-width:thin;scrollbar-color:#c5c5be transparent}
.site-tabs::-webkit-scrollbar{height:5px}
.site-tabs::-webkit-scrollbar-thumb{border-radius:999px;background:#c5c5be}
.nav-more{position:relative}
.nav-more>summary{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:var(--radius-sm);color:#c9c9c9;font-size:12.5px;font-weight:600;line-height:1.2;list-style:none;cursor:pointer;white-space:nowrap}
.nav-more>summary::-webkit-details-marker{display:none}
.nav-more>summary:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.nav-more>summary:hover{background:#292929;color:#fff}
.nav-more>summary.active{background:#fff;color:var(--black)}
.nav-more[open]>summary:after{transform:rotate(225deg) translate(-1px,-1px)}
.nav-more-menu{position:absolute;z-index:60;top:calc(100% + 9px);right:0;display:grid;min-width:220px;padding:7px;border:1px solid #343434;border-radius:11px;background:#1a1a1a;box-shadow:var(--shadow-popover)}
.nav-more-menu a{display:block;padding:10px 11px}
.nav-more-menu a.active{background:#fff;color:var(--black)}
.mobile-account{display:none}
.mobile-account-link{display:flex;flex-direction:column;gap:3px;color:#fff;text-decoration:none}
.mobile-account-link strong{font-size:13px;font-weight:600;overflow-wrap:anywhere}
.mobile-account-link span{color:#a9a9a9;font-size:11px;overflow-wrap:anywhere}
.mobile-logout-form{margin:0}
.mobile-logout-button{width:100%;border-color:#4b4b4b;background:#242424;color:#fff}
.mobile-logout-button:hover{border-color:#676767;background:#303030;color:#fff}
.mobile-nav-toggle[aria-expanded="true"] span:not(.sr-only):nth-child(2){transform:translateY(6px) rotate(45deg)}
.mobile-nav-toggle[aria-expanded="true"] span:not(.sr-only):nth-child(3){opacity:0}
.mobile-nav-toggle[aria-expanded="true"] span:not(.sr-only):nth-child(4){transform:translateY(-6px) rotate(-45deg)}
.mobile-nav-toggle span:not(.sr-only){transition:transform .15s ease,opacity .15s ease}

@media(max-width:980px){
  .topnav{position:fixed;z-index:50;top:var(--topbar-height);left:12px;right:12px;display:none;max-height:calc(100dvh - var(--topbar-height) - 24px);padding:8px;border:1px solid #343434;border-radius:12px;background:#171717;box-shadow:var(--shadow-popover);overflow:auto}
  .topnav.is-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .topnav>a,.nav-more>summary{min-height:44px;padding:12px;font-size:13px}
  .nav-more{display:block}
  .nav-more>summary{justify-content:space-between}
  .nav-more-menu{position:static;grid-column:1/-1;margin-top:5px;min-width:0;padding:5px;border-color:#2e2e2e;border-radius:9px;background:#111;box-shadow:none}
  .nav-more-menu a{min-height:42px;padding:11px 12px}
  .mobile-account{display:grid;grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(130px,auto);gap:12px;align-items:center;margin-top:4px;padding:13px;border-top:1px solid #303030}
  .logout-form,.account-link{display:none}
  .nav-open{overflow:hidden}
}

@media(max-width:760px){
  .page-head.split,.section-head-inline{flex-direction:column;align-items:stretch}
  .page-actions{width:100%}
  .page-actions form{flex:1}
  .page-actions .button{width:100%}
  .card>.section-head:first-child{margin:-16px -16px 16px}
  .table-card>.section-head:first-child,.lab-control-grid .card>.section-head:first-child{margin:0}
  .topnav.is-open{grid-template-columns:1fr}
  .mobile-account{grid-template-columns:1fr}
  .language-form select{min-width:54px;max-width:104px}
  th,td{padding:12px;font-size:13px}
  th{font-size:11.5px}
}

/* Dayava Manager 1.7.0 — all-store operations dashboard */
.dashboard-page-head{
  margin-bottom:18px;
}

.dashboard-service-status{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  max-width:430px;
}

.dashboard-service-status small{
  flex-basis:100%;
  color:var(--muted);
  text-align:right;
  font-size:12px;
}

.dashboard-kpis{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
}

.dashboard-kpi{
  min-width:0;
  padding:17px 18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}

.dashboard-kpi>span{
  display:block;
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.dashboard-kpi>strong{
  display:block;
  margin-top:8px;
  font-size:26px;
  line-height:1.05;
  font-variant-numeric:tabular-nums;
}

.dashboard-kpi>small{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}

.dashboard-kpi.attention{
  border-color:#e9c978;
  background:#fffaf0;
}

.dashboard-kpi.attention>strong{
  color:#7d5600;
}

.dashboard-attention-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
  padding:14px 16px;
  border:1px solid #e8cc88;
  border-radius:13px;
  background:#fff9ea;
}

.dashboard-attention-bar.error{
  border-color:#efbcbc;
  background:#fff3f3;
}

.dashboard-attention-bar strong,
.dashboard-attention-bar span{
  display:block;
}

.dashboard-attention-bar span{
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
}

.dashboard-filter-card{
  margin-bottom:18px;
  padding:16px 18px;
}

.dashboard-filter-form{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(170px,.35fr) auto auto;
  gap:10px;
  align-items:end;
}

.dashboard-filter-form label{
  min-width:0;
}

.dashboard-filter-summary{
  margin-top:10px;
  color:var(--muted);
  font-size:12px;
}

.dashboard-table-card{
  margin-bottom:18px;
}

.dashboard-table{
  min-width:1240px;
}

.dashboard-table th{
  white-space:nowrap;
}

.dashboard-table td{
  vertical-align:top;
}

.dashboard-site-row.status-error td:first-child{
  box-shadow:inset 3px 0 0 var(--danger);
}

.dashboard-site-row.status-warning td:first-child{
  box-shadow:inset 3px 0 0 #d79b12;
}

.dashboard-site-row.status-syncing td:first-child{
  box-shadow:inset 3px 0 0 #2563eb;
}

.dashboard-site-row.status-disabled{
  opacity:.72;
}

.dashboard-store-cell{
  min-width:205px;
}

.dashboard-store-cell>a,
.dashboard-store-cell>small{
  display:block;
  max-width:260px;
  margin-top:4px;
  overflow:hidden;
  color:var(--muted);
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.dashboard-status-cell{
  min-width:190px;
}

.dashboard-status{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:27px;
  padding:4px 9px;
  border-radius:999px;
  background:#eef0f2;
  color:#30343a;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.dashboard-status>span{
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
}

.dashboard-status.healthy{
  background:#e7f6ed;
  color:var(--success);
}

.dashboard-status.warning{
  background:#fff2cf;
  color:#765100;
}

.dashboard-status.error{
  background:#feecec;
  color:var(--danger);
}

.dashboard-status.syncing{
  background:#eaf1ff;
  color:#174da8;
}

.dashboard-status.disabled{
  background:#ececec;
  color:#666;
}

.dashboard-reasons{
  max-width:240px;
  margin:7px 0 0;
  padding-left:16px;
  color:var(--muted);
  font-size:11.5px;
  line-height:1.45;
}

.dashboard-status-cell>small,
.dashboard-table td>small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:11.5px;
  line-height:1.4;
}

.dashboard-table td>strong{
  font-variant-numeric:tabular-nums;
}

.dashboard-table .metric-bad{
  color:#8a4f00;
}

.dashboard-action-cell{
  text-align:right;
  white-space:nowrap;
}

.dashboard-empty{
  padding:32px 20px!important;
  color:var(--muted);
  text-align:center;
}

.dashboard-admin-tools{
  align-items:start;
}

.dashboard-create-card{
  padding:0;
  overflow:hidden;
}

.dashboard-create-card>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:20px;
  cursor:pointer;
  list-style:none;
}

.dashboard-create-card>summary::-webkit-details-marker{
  display:none;
}

.dashboard-create-card>summary h2{
  margin:3px 0 0;
}

.dashboard-create-card>summary>span{
  color:var(--muted);
  font-size:12px;
  font-weight:700;
}

.dashboard-create-card[open]>summary{
  border-bottom:1px solid var(--line);
}

.dashboard-create-form{
  padding:20px;
}

.dashboard-management-card h2{
  margin:5px 0 8px;
}

.dashboard-management-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:17px;
}

.dashboard-management-links a{
  min-width:0;
  padding:14px;
  border:1px solid var(--line);
  border-radius:12px;
  color:#111;
  text-decoration:none;
}

.dashboard-management-links a:hover{
  border-color:#111;
  background:#fafaf8;
}

.dashboard-management-links strong,
.dashboard-management-links span{
  display:block;
}

.dashboard-management-links span{
  margin-top:4px;
  color:var(--muted);
  font-size:11.5px;
  line-height:1.4;
}

@media (max-width:1180px){
  .dashboard-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .dashboard-page-head,
  .dashboard-attention-bar{
    align-items:flex-start;
    flex-direction:column;
  }

  .dashboard-service-status{
    justify-content:flex-start;
    max-width:none;
  }

  .dashboard-service-status small{
    text-align:left;
  }

  .dashboard-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }

  .dashboard-kpi{
    padding:14px;
  }

  .dashboard-kpi>strong{
    font-size:23px;
  }

  .dashboard-filter-form{
    grid-template-columns:1fr;
  }

  .dashboard-filter-form .button{
    width:100%;
  }

  .dashboard-management-links{
    grid-template-columns:1fr;
  }
}

@media (max-width:430px){
  .dashboard-kpis{
    grid-template-columns:1fr;
  }
}

/* Dayava Manager 1.8.0 — Search Relevance 2.0 */
.relevance-page-head{margin-bottom:14px}
.relevance-query-card{padding-bottom:16px}
.relevance-production-parity{margin:10px 0 0;font-size:12px;line-height:1.5}
.relevance-quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}
.relevance-quality-card{min-width:0}
.relevance-quality-card.quality-regression{border-color:#efc3c3;box-shadow:inset 0 3px 0 #bb2d3b}
.relevance-quality-card.quality-improvement{border-color:#bddfc8;box-shadow:inset 0 3px 0 #1d7a45}
.relevance-profile-badge{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:#f7f7f5;font-size:11px;font-weight:700;white-space:nowrap}
.relevance-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.relevance-metrics>div{min-width:0;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fafaf8}
.relevance-metrics span,.relevance-metrics strong,.relevance-metrics small{display:block}
.relevance-metrics span{color:var(--muted);font-size:11px;font-weight:600}
.relevance-metrics strong{margin-top:5px;font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}
.relevance-metrics small{margin-top:4px;font-size:11px;font-weight:700}
.relevance-presets-card,.relevance-config-card,.relevance-benchmark-card,.relevance-suggestions-card{margin-top:14px}
.relevance-preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:17px}
.relevance-preset{display:flex;min-width:0;min-height:168px;flex-direction:column;justify-content:space-between;gap:14px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff}
.relevance-preset.selected{border-color:#111;box-shadow:inset 0 0 0 1px #111}
.relevance-preset strong{font-size:14px}
.relevance-preset p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.relevance-preset form,.relevance-preset .button{width:100%}
.relevance-preset .button{justify-content:center}
.relevance-benchmark-card .benchmark-best td{background:#f1f8f3}
.relevance-benchmark-card td:first-child .status-pill{margin-left:7px}
.relevance-field-table th,.relevance-field-table td{text-align:center;vertical-align:middle}
.relevance-field-table th:first-child,.relevance-field-table td:first-child{text-align:left}
.relevance-field-table td:first-child{min-width:180px}
.relevance-field-table td small{display:block;margin-top:4px;color:var(--muted);font-size:10.5px;line-height:1.35}
.relevance-field-table .tiny{width:72px;text-align:center}
.tiny-select{width:64px;min-height:38px;padding:7px 9px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:#111;font:inherit}
.switch-compact{display:inline-flex;align-items:center;justify-content:center}
.switch-compact input{width:17px;height:17px;margin:0}
.relevance-global-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fafaf8}
.relevance-global-controls label{min-width:0;font-size:12px;font-weight:700}
.relevance-global-controls input[type=number]{margin-top:7px}
.relevance-global-controls small{display:block;margin-top:6px;color:var(--muted);font-size:10.5px;font-weight:400;line-height:1.45}
.relevance-stock-control>span:first-child{display:block;margin-bottom:10px}
.relevance-stock-control .check{min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;font-weight:600}
.relevance-control-grid{align-items:start}
.relevance-test-summary{grid-template-columns:repeat(5,minmax(0,1fr))}
.relevance-suggestion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
.relevance-suggestion-grid article{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:11px}
.relevance-suggestion-grid article>div{min-width:0}
.relevance-suggestion-grid strong,.relevance-suggestion-grid p,.relevance-suggestion-grid small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.relevance-suggestion-grid p{margin:5px 0 0;color:var(--muted);font-size:12px}
.relevance-suggestion-grid small{margin-top:4px;color:var(--muted);font-size:10.5px}
.relevance-result-summary{grid-template-columns:repeat(6,minmax(0,1fr))}
.relevance-diagnostics{display:flex;flex-wrap:wrap;gap:7px;padding:0 0 13px;border-bottom:1px solid var(--line);color:var(--muted);font-size:10.5px}
.relevance-diagnostics span{padding:4px 7px;border-radius:6px;background:#f4f4f1}
.relevance-diagnostics code{font-size:10.5px}
.lab-title-row{gap:7px;flex-wrap:wrap}
.lab-product .status-pill{min-height:23px;padding:3px 7px;font-size:9.5px}

@media (max-width:1100px){
  .relevance-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .relevance-global-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
  .relevance-result-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:760px){
  .relevance-quality-grid{grid-template-columns:1fr}
  .relevance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .relevance-preset-grid,.relevance-global-controls,.relevance-suggestion-grid{grid-template-columns:1fr}
  .relevance-preset{min-height:auto}
  .relevance-test-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .relevance-result-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .relevance-suggestion-grid article{align-items:flex-start;flex-direction:column}
  .relevance-suggestion-grid form,.relevance-suggestion-grid .button{width:100%}
  .relevance-suggestion-grid .button{justify-content:center}
}

/* Dayava Manager 1.9.0 — Recommendations 2.0 */
.recommendation-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.recommendation-main-grid{align-items:start}.recommendation-weight-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.recommendation-weight-grid label{display:grid;gap:7px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--soft2)}.recommendation-weight-grid label span{font-size:12px;font-weight:600;color:var(--muted)}.recommendation-preview-card{position:sticky;top:76px}.recommendation-diagnostics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.recommendation-diagnostics-grid code{font-size:10px;overflow-wrap:anywhere}.score-components{display:flex;flex-wrap:wrap;gap:5px}.score-components span{display:inline-flex;gap:4px;align-items:center;padding:3px 6px;border:1px solid var(--line);border-radius:6px;font-size:10px;background:var(--soft2)}.score-components b{text-transform:uppercase;color:var(--muted)}.compact-row{margin-top:12px}.compact-empty{min-height:130px}.details-body{padding-top:14px}@media(max-width:1100px){.recommendation-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.recommendation-weight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.recommendation-preview-card{position:static}.recommendation-diagnostics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.recommendation-overview,.recommendation-weight-grid,.recommendation-diagnostics-grid{grid-template-columns:1fr}}

/* Dayava Manager 1.10.0 — account security */
.security-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .75fr);
  gap: 18px;
  margin-bottom: 18px;
}
.security-card { min-width: 0; }
.security-required { margin-bottom: 18px; }
.security-facts { display: grid; gap: 0; margin: 18px 0; }
.security-facts > div { display: flex; justify-content: space-between; gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.security-facts dt { color: var(--muted); }
.security-facts dd { margin: 0; font-weight: 600; text-align: right; }
.security-action { border-top: 1px solid var(--line); padding: 14px 0 0; margin-top: 14px; }
.security-action summary { cursor: pointer; font-weight: 600; }
.security-action[open] summary { margin-bottom: 14px; }
.compact-form { max-width: 520px; }
.danger-zone summary { color: #a11515; }
.enrollment-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 26px; align-items: start; margin: 18px 0; }
.qr-frame { display: grid; place-items: center; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.qr-frame img { display: block; width: 196px; height: 196px; }
.setup-steps { margin: 12px 0 18px; padding-left: 22px; }
.setup-steps li + li { margin-top: 8px; }
.manual-secret { display: grid; gap: 6px; }
.manual-secret span { color: var(--muted); font-size: 12px; }
.manual-secret code { display: block; max-width: 100%; overflow-wrap: anywhere; padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; background: #f7f7f5; font-size: 13px; letter-spacing: .08em; }
.enrollment-confirm { max-width: 420px; }
.otp-input { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .18em; font-size: 18px; }
.security-checklist { display: grid; gap: 12px; margin-top: 18px; }
.security-check { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; align-items: start; padding: 12px; border: 1px solid var(--line); border-radius: 10px; }
.security-check > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #f0f0ed; font-weight: 700; }
.security-check.done > span { background: #e4f5e9; color: #176a35; }
.security-check strong, .security-check small { display: block; }
.security-check small { margin-top: 3px; color: var(--muted); line-height: 1.45; }
.sessions-card { padding: 0; overflow: hidden; }
.sessions-card > .section-head { padding: 20px; margin: 0; border-bottom: 1px solid var(--line); }
.session-list { display: grid; }
.session-row { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.session-row:last-child { border-bottom: 0; }
.session-row.current { background: #fbfcf8; }
.session-icon { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 10px; font-size: 22px; }
.session-main { min-width: 0; }
.session-title { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.session-meta { display: flex; gap: 12px 18px; flex-wrap: wrap; margin-top: 5px; color: var(--muted); font-size: 12px; }
.session-agent { margin-top: 5px; color: var(--muted); font-size: 11px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.status.danger { color: #9e1b1b; background: #fff0f0; border-color: #efb9b9; }
.backup-codes-card { max-width: 720px; }
.backup-code-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 20px 0; }
.backup-code-grid code { display: block; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: #f7f7f5; text-align: center; font-size: 15px; letter-spacing: .08em; }
.security-login-card { max-width: 440px; }
.security-admin-grid { margin-top: 18px; }
.button[disabled] { opacity: .45; cursor: not-allowed; }

@media (max-width: 860px) {
  .security-grid { grid-template-columns: 1fr; }
  .enrollment-layout { grid-template-columns: 1fr; }
  .qr-frame { width: fit-content; }
  .session-row { grid-template-columns: 40px minmax(0, 1fr); }
  .session-row > form { grid-column: 2; }
}

@media (max-width: 560px) {
  .backup-code-grid { grid-template-columns: 1fr; }
  .session-row { padding: 16px; }
  .security-facts > div { display: grid; gap: 4px; }
  .security-facts dd { text-align: left; }
}

/* Dayava Manager 1.10.0 — rate limiting and signed releases */
.security-admin-metrics { margin-bottom: 20px; }
.security-admin-grid { align-items: start; }
.security-admin-grid .security-facts { margin-top: 16px; }
.compact-table-wrap { max-height: 460px; }
.compact-table-wrap table small { display: block; margin-top: 3px; color: var(--muted); font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.status-warning { background: #fff5db; color: #7a5100; border-color: #ecd18d; }
.release-table .status-badge { margin-top: 7px; }
.security-admin-grid code { overflow-wrap: anywhere; }

@media (max-width: 900px) {
  .security-admin-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
  .security-admin-metrics { grid-template-columns: 1fr; }
}
