:root{
  --aqc-bg:#f5f8fc;
  --aqc-surface:#ffffff;
  --aqc-line:rgba(36,95,173,.14);
  --aqc-shadow:0 18px 45px rgba(21,48,86,.08);
  --aqc-text:#11253e;
  --aqc-muted:#61748a;
  --aqc-radius:22px;
  --aqc-radius-sm:16px;
  --aqc-brand:#245fad;
  --aqc-brand-dark:#1d4e8d;
  --aqc-brand-soft:rgba(36,95,173,.1);
  --aqc-pending:#f2a93b;
  --aqc-approved:#1d9f6e;
  --aqc-rejected:#d04f4f;
}

body.app-body{
  background:
    radial-gradient(circle at top right, rgba(36,95,173,.16), transparent 28%),
    linear-gradient(180deg, #f9fbfe 0%, #eef4fb 100%);
  color:var(--aqc-text);
}

.nav-aqc{
  gap:8px;
  flex-wrap:wrap;
}

.page-title{
  margin:0;
}

.page-sub{
  margin:6px 0 0;
  color:var(--aqc-muted);
}

.quick-actions-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:12px;
}

.dash-btn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:48px;
  padding:12px 18px;
  border-radius:16px;
  border:1px solid var(--aqc-line);
  background:#fff;
  color:var(--aqc-text);
  text-decoration:none;
  font-weight:600;
}

.dash-btn:hover{
  text-decoration:none;
  color:var(--aqc-brand-dark);
  border-color:rgba(36,95,173,.26);
}

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

.stack-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border:1px solid var(--aqc-line);
  border-radius:16px;
  text-decoration:none;
  color:inherit;
  background:#fff;
}

.stack-item-title{
  font-weight:700;
}

.stack-item-form{
  align-items:flex-start;
  flex-direction:column;
}

.compact-form{
  width:100%;
}

.apartment-master-form{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.compact-filter-row{
  margin-bottom:18px;
}

.master-data-note{
  margin:0 0 18px;
  color:var(--aqc-muted);
}

.unit-form-section{
  padding:18px;
  border:1px solid var(--aqc-line);
  border-radius:20px;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.unit-form-section-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  margin-bottom:14px;
}

.unit-form-section-head h3{
  margin:0;
  font-size:1.04rem;
}

.unit-form-section-head p{
  margin:0;
  max-width:360px;
  color:var(--aqc-muted);
  font-size:.92rem;
}

.master-sync-meta{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  padding:14px 16px;
  border:1px solid var(--aqc-line);
  border-radius:18px;
  background:#fff;
}

.master-sync-meta strong{
  display:block;
  margin-bottom:4px;
}

.master-sync-meta span{
  color:var(--aqc-muted);
  word-break:break-word;
}

.detail-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px 18px;
}

.detail-grid div{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:14px;
  border:1px solid var(--aqc-line);
  border-radius:16px;
  background:#fff;
}

.status-cluster{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

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

.timeline-item{
  border:1px solid var(--aqc-line);
  border-radius:18px;
  background:#fff;
  padding:16px;
}

.timeline-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}

.timeline-title{
  font-size:1.05rem;
  font-weight:800;
}

.timeline-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
  color:var(--aqc-muted);
  font-size:.92rem;
  margin-top:10px;
}

.timeline-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:12px;
}

.round-report-list{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.round-report-card{
  border:1px solid var(--aqc-line);
  border-radius:18px;
  background:#fff;
  padding:18px;
}

.round-report-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

.round-section-row{
  display:grid;
  grid-template-columns:180px 150px 1fr;
  gap:12px;
  padding:10px 0;
  border-top:1px solid rgba(17,37,62,.08);
}

.inspector-hero{
  display:grid;
  grid-template-columns:1fr auto;
  gap:20px;
  align-items:end;
  padding:24px;
  border-radius:28px;
  background:
    linear-gradient(135deg, rgba(36,95,173,.98), rgba(29,78,141,.92)),
    #245fad;
  color:#fff;
  box-shadow:var(--aqc-shadow);
}

.inspector-kicker,
.eyebrow{
  margin:0 0 8px;
  letter-spacing:.1em;
  font-size:.74rem;
  text-transform:uppercase;
  opacity:.76;
}

.inspector-hero h1,
.inspector-apartment-header h1{
  margin:0;
  font-size:2rem;
}

.inspector-hero p{
  margin:12px 0 0;
  max-width:620px;
}

.inspector-hero-action,
.inspector-primary-btn,
.inspector-secondary-btn,
.inspector-filter-btn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:52px;
  padding:0 18px;
  border-radius:18px;
  border:none;
  text-decoration:none;
  font-weight:700;
}

.inspector-hero-action,
.inspector-primary-btn,
.inspector-filter-btn{
  background:#fff;
  color:var(--aqc-brand-dark);
}

.inspector-secondary-btn{
  background:rgba(36,95,173,.08);
  color:var(--aqc-brand-dark);
}

.inspector-stats-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
  margin-top:18px;
}

.inspector-stat-card{
  background:#fff;
  border-radius:22px;
  border:1px solid var(--aqc-line);
  padding:18px;
  box-shadow:var(--aqc-shadow);
  display:block;
  text-decoration:none;
  color:inherit;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.inspector-stat-card:hover{
  transform:translateY(-2px);
  border-color:rgba(28,77,132,.28);
  box-shadow:0 20px 38px rgba(15,23,42,.12);
}

.inspector-stat-card.is-selected{
  border-color:rgba(28,77,132,.42);
  box-shadow:0 18px 34px rgba(28,77,132,.16);
}

.inspector-stat-card span{
  display:block;
  color:var(--aqc-muted);
  font-size:.9rem;
}

.inspector-stat-card strong{
  display:block;
  margin-top:12px;
  font-size:1.9rem;
}

.inspector-stat-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
}

.inspector-stat-actions a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:var(--aqc-brand-soft);
  color:var(--aqc-brand-dark);
  font-size:.82rem;
  font-weight:700;
  text-decoration:none;
}

.inspector-section{
  margin-top:22px;
}

.section-head-inline{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:end;
  margin-bottom:14px;
}

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

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

.inspector-apartment-card,
.inspector-inline-card,
.inspector-project-card{
  background:#fff;
  border:1px solid var(--aqc-line);
  border-radius:24px;
  padding:18px;
  box-shadow:var(--aqc-shadow);
}

.inspector-project-card{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  text-decoration:none;
  color:inherit;
}

.inspector-project-count{
  display:grid;
  place-items:center;
  min-width:64px;
  min-height:64px;
  border-radius:20px;
  background:var(--aqc-brand-soft);
  font-size:1.4rem;
  font-weight:800;
  color:var(--aqc-brand-dark);
}

.apartment-card-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
}

.apartment-card-top h3,
.inspector-project-card h3,
.inspector-inline-card h3{
  margin:0;
}

.apartment-card-meta,
.inspection-meta-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  margin:12px 0 16px;
  color:var(--aqc-muted);
  font-size:.92rem;
}

.inspection-mobile-shell{
  display:flex;
  flex-direction:column;
  gap:16px;
  padding-bottom:92px;
}

.inspection-mobile-header,
.inspection-status-panel,
.inspection-section-card,
.inspection-submit-card,
.review-section-card,
.inspector-apartment-header{
  background:#fff;
  border:1px solid var(--aqc-line);
  border-radius:24px;
  box-shadow:var(--aqc-shadow);
}

.inspection-mobile-header,
.inspector-apartment-header{
  padding:20px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
}

.inspection-progress-box{
  min-width:140px;
  padding:14px;
  border-radius:18px;
  background:var(--aqc-bg);
}

.inspection-progress-box strong{
  display:block;
  font-size:1.55rem;
  margin:6px 0;
}

.inspection-progress-bar{
  width:100%;
  height:8px;
  border-radius:999px;
  background:rgba(17,37,62,.08);
  overflow:hidden;
}

.inspection-progress-bar span{
  display:block;
  height:100%;
  background:linear-gradient(90deg, var(--aqc-brand), #4e88d9);
}

.inspection-status-panel{
  padding:18px;
}

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

.inspection-section-card{
  overflow:hidden;
}

.inspection-section-card summary{
  list-style:none;
  padding:18px;
  cursor:pointer;
}

.inspection-section-card summary::-webkit-details-marker{
  display:none;
}

.inspection-section-summary{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
}

.inspection-section-summary h2{
  margin:0;
  font-size:1.1rem;
}

.inspection-section-summary p{
  margin:6px 0 0;
  color:var(--aqc-muted);
}

.inspection-section-heading-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.inspection-section-body{
  padding:0 18px 18px;
}

.section-selection-pill{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  font-size:.8rem;
  font-weight:700;
  border:1px solid transparent;
}

.section-selection-pill.is-selected{
  background:rgba(29,159,110,.12);
  color:#11704c;
  border-color:rgba(29,159,110,.18);
}

.section-selection-pill.is-unselected{
  background:rgba(17,37,62,.06);
  color:#52667d;
  border-color:rgba(17,37,62,.08);
}

.section-include-toggle{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom:16px;
  padding:16px;
  border:1px solid var(--aqc-line);
  border-radius:18px;
  background:linear-gradient(180deg, #fff, #f8fbff);
}

.section-include-toggle input{
  margin-top:4px;
}

.section-include-toggle strong,
.section-include-toggle small{
  display:block;
}

.section-include-toggle small{
  margin-top:4px;
  color:var(--aqc-muted);
}

.section-inactive-note{
  padding:16px;
  border-radius:18px;
  background:rgba(17,37,62,.04);
  border:1px dashed rgba(17,37,62,.12);
  color:var(--aqc-muted);
}

.section-active-fields{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.section-guidance-card{
  padding:16px;
  border-radius:18px;
  background:var(--aqc-bg);
  color:var(--aqc-text);
}

.section-guidance-card strong{
  display:block;
  margin-bottom:8px;
}

.section-guidance-card p{
  margin:0;
  color:var(--aqc-muted);
}

.inspector-form-grid{
  margin-bottom:16px;
}

.inp-lg{
  min-height:52px;
}

.media-upload-card{
  margin-top:6px;
  padding:16px;
  background:var(--aqc-bg);
  border-radius:18px;
}

.section-comments-panel,
.section-legacy-panel{
  border:1px solid var(--aqc-line);
  border-radius:20px;
  padding:18px;
  background:#fff;
}

.section-comments-head,
.section-legacy-head,
.report-block-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:14px;
}

.section-comments-head h3,
.section-legacy-head h3,
.report-block-head h2,
.report-block-head h3{
  margin:0;
}

.section-comments-head p,
.section-legacy-head p{
  margin:6px 0 0;
  color:var(--aqc-muted);
}

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

.section-comments-empty,
.report-empty-state{
  padding:16px;
  border-radius:16px;
  background:rgba(17,37,62,.04);
  color:var(--aqc-muted);
  border:1px dashed rgba(17,37,62,.12);
}

.report-empty-state.compact{
  margin-top:12px;
}

.comment-entry-card,
.review-comment-card{
  border:1px solid var(--aqc-line);
  border-radius:18px;
  padding:16px;
  background:linear-gradient(180deg, #fff, #fbfdff);
}

.comment-entry-card-legacy,
.review-comment-card-legacy{
  background:rgba(17,37,62,.03);
}

.comment-entry-head,
.review-comment-card > strong{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}

.comment-entry-head h4{
  margin:0;
  font-size:1rem;
}

.comment-remove-btn{
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(208,79,79,.18);
  background:rgba(208,79,79,.06);
  color:#8d2d2d;
  font-weight:700;
}

.comment-upload-card{
  margin-top:12px;
  padding:14px;
  border-radius:16px;
  background:var(--aqc-bg);
}

.comment-file-preview{
  margin-top:10px;
}

.comment-file-chip-list,
.report-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.comment-file-chip,
.report-chip{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--aqc-line);
  color:var(--aqc-text);
  font-size:.88rem;
}

.report-chip-link{
  text-decoration:none;
}

.legacy-comment-text{
  margin-top:10px;
  white-space:pre-wrap;
  color:var(--aqc-text);
}

.legacy-attachments-block h4{
  margin:0 0 12px;
}

.section-media-grid,
.report-media-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:12px;
  margin-top:14px;
}

.media-preview-card,
.report-media-item{
  border:1px solid var(--aqc-line);
  border-radius:18px;
  padding:10px;
  background:#fff;
}

.media-preview-card img,
.media-preview-card video,
.report-media-item img{
  width:100%;
  height:140px;
  border-radius:12px;
  object-fit:cover;
  background:#eff3f8;
}

.media-preview-meta{
  margin-top:8px;
}

.media-name{
  font-size:.92rem;
  font-weight:700;
  word-break:break-word;
}

.media-delete-choice{
  display:flex;
  gap:8px;
  align-items:center;
  margin-top:8px;
  font-size:.88rem;
}

.inspection-sticky-actions{
  position:sticky;
  bottom:10px;
  z-index:50;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:12px;
  border-radius:22px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  border:1px solid var(--aqc-line);
  box-shadow:0 18px 45px rgba(14,30,56,.16);
}

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

.review-section-card{
  padding:18px;
}

.review-section-top{
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-bottom:10px;
}

.review-section-top h2{
  margin:0;
  font-size:1.05rem;
}

.review-section-card.is-muted{
  opacity:.92;
}

.review-section-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  margin-top:8px;
}

.review-comment-card{
  margin-top:12px;
}

.review-comment-card p{
  margin:10px 0 0;
  white-space:pre-wrap;
}

.review-media-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.review-media-chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:var(--aqc-bg);
  border:1px solid var(--aqc-line);
  text-decoration:none;
}

.inspector-filter-row{
  display:grid;
  grid-template-columns:1fr 180px 120px;
  gap:10px;
  margin-bottom:16px;
}

.inspector-search,
.inspector-filter-select{
  width:100%;
  min-height:52px;
  padding:0 16px;
  border-radius:18px;
  border:1px solid var(--aqc-line);
  background:#fff;
}

.dash-badge.status-approved{
  background:rgba(22, 178, 118, 0.12);
  color:#f6f6f6;
}

.dash-badge.status-rejected{
  background:rgba(208,79,79,.12);
  color:#fbfbfb;
}

.dash-badge.status-pending{
  background:rgba(242,169,59,.18);
  color:#92600b;
}

.dash-badge.status-waiting{
  background:rgba(36,95,173,.12);
  color:#000000;
}

.dash-badge.status-other{
  background:rgba(17,37,62,.08);
  color:#38516d;
}

.inline-form{
  display:flex;
  gap:8px;
  align-items:center;
}

.compact-input{
  max-width:170px;
}

.checkbox-field{
  display:flex;
  align-items:end;
}

.report-page{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.report-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.report-kicker,
.report-section-kicker{
  margin:0 0 6px;
  letter-spacing:.12em;
  font-size:.73rem;
  text-transform:uppercase;
  color:#ffffff;
}

.report-print-body{
  background:linear-gradient(180deg, #edf3fb 0%, #f8fbff 100%);
  color:#111;
  padding:22px;
  -webkit-print-color-adjust:exact;
  print-color-adjust:exact;
}

.report-document{
  display:flex;
  flex-direction:column;
  gap:18px;
  color:var(--aqc-text);
}

.report-masthead{
  position:relative;
  overflow:hidden;
  padding:24px 26px;
  border-radius:32px;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.24), transparent 28%),
    linear-gradient(135deg, #1e4f91 0%, #2769bf 48%, #4f8fdd 100%);
  color:#fff;
  box-shadow:0 28px 60px rgba(22,57,106,.18);
}

.report-masthead-top{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-start;
}

.report-brand-lockup{
  display:flex;
  gap:18px;
  align-items:center;
}

.report-brand-lockup img{
  width:78px;
  height:auto;
  padding:8px;
  border-radius:20px;
  background:rgba(255,255,255,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);
}

.report-brand-lockup h1{
  margin:0;
  font-size:1.8rem;
  line-height:1.15;
}

.report-brand-lockup p{
  margin:0;
}

.report-subline{
  margin-top:8px !important;
  font-size:1rem;
  color:rgba(255,255,255,.86);
}

.report-eyebrow{
  margin:0 0 8px;
  letter-spacing:.12em;
  font-size:.72rem;
  text-transform:uppercase;
  opacity:.84;
}

.report-masthead-side{
  display:flex;
  flex-direction:column;
  gap:14px;
  align-items:flex-end;
}

.report-generated-box{
  min-width:210px;
  padding:14px 16px;
  border-radius:20px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.16);
  text-align:right;
}

.report-generated-box span{
  display:block;
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.78;
}

.report-generated-box strong{
  display:block;
  margin-top:6px;
  font-size:1rem;
  line-height:1.35;
}

.report-badge-cluster{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.report-hero-band{
  display:flex;
  justify-content:space-between;
  gap:22px;
  margin-top:22px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.18);
}

.report-hero-copy{
  max-width:560px;
}

.report-hero-copy h2{
  margin:0;
  font-size:2.05rem;
  line-height:1.08;
}

.report-hero-copy p:last-child{
  margin:10px 0 0;
  color:rgba(255,255,255,.84);
  font-size:1rem;
}

.report-hero-stats{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  min-width:380px;
}

.report-stat-tile{
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
}

.report-stat-tile span{
  display:block;
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.8;
}

.report-stat-tile strong{
  display:block;
  margin-top:10px;
  font-size:1.22rem;
  line-height:1.25;
}

.report-panel,
.report-note-banner,
.report-highlight-band,
.report-round-panel{
  background:#fff;
  border:1px solid rgba(36,95,173,.11);
  border-radius:26px;
  padding:22px 24px;
  box-shadow:0 18px 42px rgba(21,48,86,.08);
}

.report-panel-muted{
  background:linear-gradient(180deg, #f7fbff 0%, #f1f6fc 100%);
}

.report-panel-head,
.report-round-panel-head,
.report-note-banner-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
}

.report-panel-head h3,
.report-round-panel-head h3,
.report-note-banner h3{
  margin:0;
  font-size:1.28rem;
}

.report-summary-pills{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.report-mini-pill{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  background:linear-gradient(180deg, #f8fbff 0%, #edf4fc 100%);
  border:1px solid rgba(36,95,173,.12);
  color:var(--aqc-brand-dark);
  font-size:.88rem;
}

.report-mini-pill strong{
  margin-right:6px;
}

.report-meta-board{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
  margin-top:18px;
}

.report-meta-item{
  padding:16px 18px;
  border-radius:20px;
  background:linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%);
  border:1px solid rgba(36,95,173,.11);
}

.report-meta-item span{
  display:block;
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--aqc-muted);
}

.report-meta-item strong{
  display:block;
  margin-top:8px;
  font-size:1rem;
  line-height:1.4;
  word-break:break-word;
}

.report-note-banner{
  background:linear-gradient(180deg, #fdfefe 0%, #eef5ff 100%);
  border-left:6px solid var(--aqc-brand);
}

.report-note-banner p{
  margin:14px 0 0;
  white-space:pre-wrap;
  line-height:1.65;
}

.report-note-banner-compact{
  margin-top:16px;
  padding:18px 20px;
}

.report-highlight-band{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  background:
    radial-gradient(circle at top right, rgba(36,95,173,.08), transparent 28%),
    linear-gradient(180deg, #f8fbff 0%, #edf4fc 100%);
}

.report-highlight-band h3{
  margin:0;
  font-size:1.45rem;
}

.report-highlight-band p:last-child{
  margin:10px 0 0;
  color:var(--aqc-muted);
}

.report-section-stack,
.report-round-stack{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.report-section-card,
.report-round-panel,
.report-round-overview-card{
  break-inside:avoid;
  page-break-inside:avoid;
}

.report-section-card{
  padding:20px;
  border-radius:24px;
  border:1px solid rgba(36,95,173,.11);
  background:linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.report-section-card-compact{
  padding:18px;
}

.report-section-card-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
}

.report-section-card-head h4{
  margin:0;
  font-size:1.24rem;
}

.report-section-card-meta{
  display:flex;
  gap:10px 18px;
  flex-wrap:wrap;
  margin-top:14px;
  padding:12px 14px;
  border-radius:16px;
  background:#f4f8fd;
  color:var(--aqc-muted);
}

.report-section-card-meta strong{
  color:var(--aqc-brand-dark);
}

.report-comment-flow{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:16px;
}

.report-comment-flow-compact{
  margin-top:14px;
}

.report-comment-box{
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(36,95,173,.1);
  background:#f9fbfe;
}

.report-comment-box-legacy{
  margin-top:14px;
  background:#f3f6fa;
}

.report-comment-box-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}

.report-comment-box-head strong{
  display:block;
  margin-top:8px;
  font-size:.92rem;
  color:var(--aqc-muted);
}

.report-comment-tag,
.report-round-chip{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(36,95,173,.1);
  color:var(--aqc-brand-dark);
  font-size:.82rem;
  font-weight:700;
}

.report-comment-text{
  margin-top:12px;
  padding:14px 16px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(17,37,62,.07);
  white-space:pre-wrap;
  line-height:1.65;
}

.report-attachment-block{
  margin-top:14px;
}

.report-attachment-title{
  margin-bottom:10px;
  font-size:.8rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--aqc-muted);
}

.report-attachment-gallery{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}

.report-attachment-gallery-compact{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.report-attachment-thumb{
  margin:0;
  padding:10px;
  border-radius:18px;
  border:1px solid rgba(36,95,173,.1);
  background:#fff;
}

.report-attachment-thumb-link{
  display:block;
  text-decoration:none;
}

.report-attachment-thumb img{
  width:100%;
  height:156px;
  object-fit:cover;
  border-radius:12px;
  background:#edf2f8;
}

.report-attachment-thumb figcaption{
  margin-top:8px;
  font-size:.82rem;
  line-height:1.45;
  color:var(--aqc-muted);
  word-break:break-word;
}

.report-attachment-thumb figcaption a,
.report-file-main a{
  color:inherit;
  text-decoration:none;
}

.report-attachment-thumb figcaption a:hover,
.report-file-main a:hover{
  color:var(--aqc-brand-dark);
  text-decoration:underline;
}

.report-file-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.report-file-browser-card{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.report-video-preview{
  width:100%;
  max-height:220px;
  border-radius:16px;
  background:#0f1f34;
}

.report-file-row{
  display:grid;
  grid-template-columns:96px 1fr;
  gap:14px;
  align-items:flex-start;
  padding:12px 14px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(36,95,173,.09);
}

.report-file-row-link{
  transition:border-color .15s ease, box-shadow .15s ease;
}

.report-file-row-link:hover{
  border-color:rgba(36,95,173,.22);
  box-shadow:0 10px 24px rgba(21,48,86,.08);
}

.report-file-type{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 10px;
  border-radius:12px;
  background:#eef4fb;
  color:var(--aqc-brand-dark);
  font-size:.82rem;
  font-weight:700;
}

.report-file-main strong{
  display:block;
  font-size:.94rem;
  line-height:1.45;
  word-break:break-word;
}

.report-file-main span{
  display:block;
  margin-top:4px;
  color:var(--aqc-muted);
  font-size:.83rem;
}

.report-empty-box{
  padding:16px 18px;
  border-radius:18px;
  border:1px dashed rgba(36,95,173,.18);
  background:linear-gradient(180deg, #fbfdff 0%, #f3f7fc 100%);
  color:var(--aqc-muted);
  line-height:1.55;
}

.report-legacy-card,
.report-round-excluded{
  margin-top:14px;
  padding:16px;
  border-radius:18px;
  background:#f4f7fb;
  border:1px solid rgba(17,37,62,.08);
}

.report-tag-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.report-tag-muted{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:#eef3f8;
  border:1px solid rgba(17,37,62,.08);
  color:#51657c;
  font-size:.86rem;
  font-weight:600;
}

.report-round-overview{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
  margin-top:18px;
}

.report-round-overview-card{
  padding:18px;
  border-radius:22px;
  background:linear-gradient(180deg, #ffffff 0%, #f6faff 100%);
  border:1px solid rgba(36,95,173,.11);
}

.report-round-overview-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}

.report-round-overview-card h4{
  margin:14px 0 0;
  font-size:1.08rem;
}

.report-round-overview-card p{
  margin:10px 0 0;
  color:var(--aqc-muted);
}

.report-round-overview-meta{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(17,37,62,.08);
  color:var(--aqc-muted);
  font-size:.88rem;
}

.report-round-panel{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.report-round-panel-meta{
  display:flex;
  flex-wrap:wrap;
  gap:12px 18px;
  color:var(--aqc-muted);
  font-size:.92rem;
}

.report-footer{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:16px 8px 0;
  border-top:1px solid rgba(17,37,62,.08);
  color:var(--aqc-muted);
  font-size:.84rem;
}

@media (max-width: 991.98px){
  .inspector-stats-grid,
  .detail-grid,
  .grid2,
  .grid3{
    grid-template-columns:1fr !important;
  }

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

  .report-meta-board,
  .report-round-overview,
  .report-hero-stats{
    grid-template-columns:1fr !important;
  }

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

@media (max-width: 767.98px){
  .app-main{
    padding-top:12px;
  }

  .inspector-hero,
  .inspection-mobile-header,
  .inspector-apartment-header,
  .section-head-inline,
  .unit-form-section-head{
    grid-template-columns:1fr;
    flex-direction:column;
  }

  .inspection-sticky-actions{
    grid-template-columns:1fr;
  }

  .section-comments-head,
  .section-legacy-head,
  .report-block-head,
  .report-round-section-head,
  .report-masthead-top,
  .report-hero-band,
  .report-panel-head,
  .report-round-panel-head,
  .report-section-card-head,
  .report-highlight-band{
    flex-direction:column;
  }

  .section-media-grid,
  .report-media-grid,
  .report-attachment-gallery{
    grid-template-columns:1fr 1fr;
  }

  .report-masthead,
  .report-panel,
  .report-round-panel,
  .report-note-banner,
  .report-highlight-band{
    padding:16px;
    border-radius:22px;
  }

  .report-generated-box,
  .report-hero-stats{
    min-width:0;
    width:100%;
  }

  .report-footer{
    flex-direction:column;
    align-items:flex-start;
  }

  .table-scroll-wrap{
    overflow:auto;
  }
}

@media (max-width: 480px){
  .inspector-hero h1,
  .inspector-apartment-header h1{
    font-size:1.6rem;
  }

  .section-media-grid,
  .report-media-grid,
  .report-attachment-gallery{
    grid-template-columns:1fr;
  }

  .inspection-section-card summary,
  .inspection-section-body,
  .inspection-status-panel,
  .review-section-card,
  .inspector-apartment-card,
  .inspector-inline-card,
  .inspector-project-card{
    padding:16px;
  }
}

@media print{
  .no-print,
  .app-header,
  .app-footer{
    display:none !important;
  }

  body,
  .report-print-body{
    background:#fff !important;
  }

  .report-masthead,
  .report-panel,
  .report-note-banner,
  .report-highlight-band,
  .report-section-card,
  .report-round-panel,
  .report-round-overview-card,
  .report-comment-box,
  .report-attachment-thumb,
  .report-file-row{
    box-shadow:none;
    border-color:#d8dde6;
  }

  .report-meta-item,
  .report-stat-tile,
  .report-section-card,
  .report-round-panel,
  .report-round-overview-card,
  .report-comment-box{
    break-inside:avoid;
  }
}

.assignment-chip-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:10px;
  margin-top:12px;
}

.assignment-chip{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border:1px solid var(--aqc-line);
  border-radius:16px;
  background:#fff;
}

.assignment-chip input{
  margin:0;
}

.section-add-subcategory-row{
  display:flex;
  justify-content:flex-end;
  margin-top:14px;
}

.inspection-bottom-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:8px;
}

.subcategory-entry-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.subcategory-compare-card{
  padding:14px;
  border-radius:16px;
  background:#f4f7fb;
  border:1px solid rgba(17,37,62,.08);
}

.subcategory-compare-card strong{
  display:block;
  margin-bottom:10px;
}

.subcategory-compare-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.subcategory-compare-grid span{
  display:block;
  color:var(--aqc-muted);
  font-size:.82rem;
  margin-bottom:4px;
}

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

.analytics-chart-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.6fr) minmax(300px, .9fr);
  gap:18px;
  margin-bottom:18px;
}

.analytics-chart-card{
  overflow:hidden;
}

.analytics-chart-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}

.analytics-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.analytics-chip{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  color:#fff;
  font-size:.78rem;
  font-weight:800;
  box-shadow:0 8px 18px rgba(15,23,42,.08);
}

.analytics-chart-wrap{
  position:relative;
  min-height:340px;
}

.analytics-donut-wrap{
  position:relative;
  min-height:340px;
  max-width:420px;
  margin:0 auto;
}

.analytics-chart-canvas{
  width:100% !important;
  height:100% !important;
}

.analytics-row{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:16px;
  border-radius:18px;
  border:1px solid var(--aqc-line);
  background:#fff;
  color:inherit;
}

.analytics-row-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}

.analytics-bar{
  display:flex;
  min-height:42px;
  overflow:hidden;
  border-radius:999px;
  background:#eef3f8;
}

.analytics-bar-segment{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 12px;
  color:#fff;
  font-weight:800;
  font-size:.82rem;
  white-space:nowrap;
}

.analytics-bar-links .analytics-bar-segment{
  text-decoration:none;
}

.status-approved{
  background-color:#1d9f6e !important;
}

.status-pending{
  background-color:#d89a14 !important;
}

.status-rejected{
  background-color:#c24141 !important;
}

.profile-subcategory-row{
  margin-bottom:10px;
}

.report-document-compact{
  gap:16px;
}

.report-masthead-compact{
  padding:22px;
}

.report-summary-band{
  display:grid;
  gap:12px;
  margin-top:18px;
}

.report-summary-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));
  gap:10px;
}

.report-summary-item{
  padding:14px 15px;
  border-radius:16px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(216,226,238,.92);
  color:#0f172a;
}

.report-summary-item span,
.report-comparison-comment-grid span,
.report-comparison-attachment-grid span{
  display:block;
  font-size:.76rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--aqc-muted);
}

.report-summary-item strong{
  display:block;
  margin-top:8px;
  font-size:1rem;
}

.report-section-card-compact{
  padding:18px;
}

.report-comment-box-tight{
  padding:14px;
}

.report-cycle-stack,
.report-comparison-stack{
  display:grid;
  gap:14px;
}

.report-cycle-card,
.report-comparison-card{
  border:1px solid var(--aqc-line);
  border-radius:22px;
  padding:16px;
  background:#fff;
}

.report-cycle-head,
.report-comparison-head,
.report-comparison-section-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}

.report-comparison-card.is-focus{
  border-color:rgba(28,77,132,.36);
  box-shadow:0 18px 34px rgba(28,77,132,.12);
}

.report-comparison-section-list{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.report-comparison-section{
  border:1px solid var(--aqc-line);
  border-radius:18px;
  padding:14px;
  background:#f8fbff;
}

.report-comparison-status-strip{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:10px;
  color:var(--aqc-muted);
  font-size:.9rem;
}

.report-comparison-sub-list{
  display:grid;
  gap:12px;
  margin-top:12px;
}

.report-comparison-sub-row{
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(216,226,238,.92);
  background:#fff;
}

.report-comparison-sub-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.report-comparison-comment-grid,
.report-comparison-attachment-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
  margin-top:12px;
}

.report-comparison-comment-grid p{
  margin:6px 0 0;
  white-space:pre-wrap;
}

.report-comparison-attachment-grid ul{
  margin:6px 0 0;
  padding-left:18px;
}

.report-page-pdf .no-print{
  display:none !important;
}

@media (max-width: 767.98px){
  .analytics-chart-grid{
    grid-template-columns:1fr;
  }

  .analytics-chart-wrap,
  .analytics-donut-wrap{
    min-height:280px;
  }

  .inspection-mobile-shell{
    padding-bottom:24px;
  }

  .inspection-bottom-actions{
    grid-template-columns:1fr;
    margin-top:18px;
  }

  .section-add-subcategory-row{
    justify-content:stretch;
  }

  .section-add-subcategory-row .section-add-comment-btn{
    width:100%;
  }

  .subcategory-compare-grid{
    grid-template-columns:1fr;
  }

  .report-comparison-comment-grid,
  .report-comparison-attachment-grid{
    grid-template-columns:1fr;
  }
}
