.muted{color:var(--cc-muted)}
.text-right{text-align:right}

.qs-shell{display:grid;gap:18px}
.qs-hero,.qs-dashboard-hero{
  position:relative;overflow:hidden;border-radius:30px;padding:24px;
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.22), transparent 28%),
    radial-gradient(circle at 88% 10%, rgba(255,255,255,.18), transparent 26%),
    linear-gradient(135deg,#16253a 0%, #243b55 26%, #6b2b4c 58%, #ea580c 100%);
  color:#fff;box-shadow:0 26px 60px -28px rgba(15,23,42,.46);
}
.qs-hero::after,.qs-dashboard-hero::after{
  content:"";position:absolute;right:-80px;bottom:-100px;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.2), transparent 70%);
  pointer-events:none;
}
.qs-hero,.qs-dashboard-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr);gap:18px;align-items:stretch}
.qs-hero__main,.qs-dashboard-hero__main{position:relative;z-index:1;display:grid;gap:12px;align-content:start}
.qs-hero__eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.73rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.76)}
.qs-hero h1,.qs-dashboard-hero h1{margin:0;font-size:clamp(2rem,2.7vw,2.9rem);line-height:1.02;letter-spacing:-.03em;color:#fff;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.qs-hero p,.qs-dashboard-hero p{margin:0;color:rgba(255,255,255,.88);line-height:1.68;max-width:860px}
.qs-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.qs-btn-lift{transition:transform .18s ease, box-shadow .18s ease, filter .18s ease}
.qs-btn-lift:hover{transform:translateY(-2px);filter:saturate(1.03)}
.qs-hero__cards,.qs-dashboard-hero__side{position:relative;z-index:1;display:grid;gap:12px}
.qs-mini-card,.qs-dashboard-signal{
  border-radius:22px;padding:16px 17px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  color:#fff;text-decoration:none;transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.qs-mini-card:hover,.qs-dashboard-signal:hover{transform:translateY(-3px);box-shadow:0 18px 34px -26px rgba(15,23,42,.38);background:rgba(255,255,255,.17)}
.qs-mini-card small,.qs-dashboard-signal small{display:block;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:10px}
.qs-mini-card strong,.qs-dashboard-signal strong{display:block;font-size:1.52rem;line-height:1.05;color:#fff}
.qs-mini-card span,.qs-dashboard-signal span{display:block;margin-top:8px;font-size:.84rem;line-height:1.5;color:rgba(255,255,255,.84)}

.qs-kpi-strip{grid-template-columns:repeat(5,minmax(0,1fr))}
.qs-kpi-strip--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.qs-hover-card{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.qs-hover-card:hover{transform:translateY(-4px);box-shadow:0 28px 54px -34px rgba(15,23,42,.28);border-color:rgba(248,107,36,.26)}

.qs-filter-card{padding:18px}
.qs-filter-grid{display:grid;grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(220px,.8fr)) auto;gap:12px;align-items:end}
.qs-field{display:grid;gap:7px}
.qs-field label{font-size:.73rem;letter-spacing:.08em;text-transform:uppercase;font-weight:900;color:#94a3b8}
.qs-field input,.qs-field select,.qs-field textarea{
  width:100%;min-height:48px;border-radius:18px;border:1px solid rgba(15,23,42,.08);background:#fff;padding:12px 14px;
  font:inherit;color:#0f172a;outline:none;box-shadow:0 12px 24px -24px rgba(15,23,42,.18)
}
.qs-field textarea{min-height:128px;resize:vertical}
.qs-field input:focus,.qs-field select:focus,.qs-field textarea:focus{border-color:#f86b24;box-shadow:0 0 0 4px rgba(248,107,36,.12)}
.qs-col-full{grid-column:1 / -1}
.qs-filter-actions,.qs-form-actions,.qs-read-actions,.qs-row-actions,.qs-table-head-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.qs-module-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.qs-module-pill{
  display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(15,23,42,.08);
  color:#334155;text-decoration:none;font-weight:800;box-shadow:0 12px 24px -24px rgba(15,23,42,.22);transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease
}
.qs-module-pill:hover{transform:translateY(-2px);border-color:rgba(248,107,36,.24);box-shadow:0 18px 28px -24px rgba(248,107,36,.28)}
.qs-module-pill.is-active{background:linear-gradient(135deg,#fff7ed,#ffedd5);color:#9a3412;border-color:rgba(248,107,36,.18)}

.qs-form-card{padding:18px}
.qs-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.qs-detail-grid{grid-template-columns:1.15fr .85fr}
.qs-read-card{padding:18px}
.qs-read-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:8px}
.qs-read-grid div,.qs-meta-stack div{padding:14px;border-radius:18px;background:rgba(255,255,255,.9);box-shadow:inset 0 0 0 1px rgba(15,23,42,.05)}
.qs-read-grid small,.qs-note-block small,.qs-meta-stack small{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:900;color:#94a3b8;margin-bottom:8px}
.qs-read-grid strong,.qs-meta-stack strong{display:block;color:#0f172a;line-height:1.5}
.qs-note-block{margin-top:14px;padding:16px;border-radius:22px;background:linear-gradient(180deg,#fff8f2,#fff);border:1px solid rgba(248,107,36,.12)}
.qs-note-block p{margin:0;color:#334155;line-height:1.7}
.qs-meta-stack{display:grid;gap:12px;margin-top:14px}
.qs-btn-danger{background:linear-gradient(180deg,#fff1f2,#fff);color:#be123c;border:1px solid rgba(244,63,94,.14)}
.qs-btn-danger:hover{border-color:rgba(244,63,94,.24)}

.qs-table-card{padding:18px}
.qs-table tbody tr{transition:transform .16s ease}
.qs-table tbody tr:hover{transform:translateY(-1px)}
.qs-table-title{display:grid;gap:3px}
.qs-table-title strong{color:#0f172a}
.qs-table-title span{color:#64748b;font-size:.86rem;line-height:1.45}
.qs-empty-row{display:grid;gap:4px;padding:18px 12px;color:#64748b;text-align:center}
.qs-empty-row strong{color:#0f172a}
.qs-delete-pill{border:0;cursor:pointer;background:rgba(244,63,94,.08);color:#be123c}
.qs-delete-pill:hover{background:rgba(244,63,94,.12)}

.qs-status{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;font-size:.72rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;border:1px solid transparent;white-space:nowrap}
.qs-status--emerald{background:#ecfdf5;color:#166534;border-color:#bbf7d0}
.qs-status--amber{background:#fff7ed;color:#b45309;border-color:#fed7aa}
.qs-status--rose{background:#fef2f2;color:#b91c1c;border-color:#fecaca}
.qs-status--slate{background:#f1f5f9;color:#334155;border-color:#e2e8f0}

.qs-dashboard-charts{grid-template-columns:1.08fr 1.08fr .84fr}
.qs-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.qs-module-card{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;border-radius:26px;text-decoration:none;
  background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(249,250,251,.96));border:1px solid rgba(15,23,42,.06);box-shadow:0 18px 38px -28px rgba(15,23,42,.22);color:#0f172a;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.qs-module-card:hover{transform:translateY(-4px);border-color:rgba(248,107,36,.22);box-shadow:0 24px 42px -28px rgba(248,107,36,.28)}
.qs-module-card__icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(180deg,#fff7ed,#ffedd5);color:#c2410c;font-size:1.15rem;box-shadow:inset 0 0 0 1px rgba(248,107,36,.14)}
.qs-module-card__copy{display:grid;gap:4px;min-width:0}
.qs-module-card__copy small{font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8}
.qs-module-card__copy strong{font-size:1.1rem;line-height:1.2;color:#0f172a}
.qs-module-card__copy span{font-size:.87rem;line-height:1.55;color:#475569}
.qs-module-card__meta{text-align:right;display:grid;gap:6px}
.qs-module-card__meta b{color:#0f172a}
.qs-module-card__meta span{color:#64748b;font-size:.84rem}
.qs-activity-link{text-decoration:none;color:inherit}
.qs-activity-link:hover{border-color:rgba(248,107,36,.18)}
.qs-project-watch strong{display:block;color:#0f172a}
.qs-metric-row{transition:transform .16s ease, box-shadow .16s ease}
.qs-metric-row:hover{transform:translateY(-2px);box-shadow:0 16px 28px -26px rgba(248,107,36,.26)}

@media (max-width:1180px){
  .qs-hero,.qs-dashboard-hero{grid-template-columns:1fr}
  .qs-dashboard-charts,.qs-detail-grid,.qs-module-grid{grid-template-columns:1fr 1fr}
  .qs-kpi-strip,.qs-kpi-strip--4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .qs-filter-grid,.qs-form-grid,.qs-read-grid,.qs-module-grid,.qs-dashboard-charts,.qs-detail-grid{grid-template-columns:1fr}
  .qs-filter-actions,.qs-form-actions,.qs-read-actions,.qs-row-actions,.qs-table-head-actions{width:100%}
}
@media (max-width:640px){
  .qs-hero,.qs-dashboard-hero{padding:18px;border-radius:24px}
  .qs-hero h1,.qs-dashboard-hero h1{font-size:1.7rem}
  .qs-kpi-strip,.qs-kpi-strip--4{grid-template-columns:1fr}
  .qs-module-pills{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}
  .qs-module-pill{white-space:nowrap;flex:0 0 auto}
  .qs-table{min-width:920px}
}


/* QS dashboard responsive hardening */
.qs-dashboard-hero,
.qs-dashboard-charts,
.qs-dashboard-lower,
.qs-module-grid,
.qs-kpi-strip,
.qs-dashboard-hero__main,
.qs-dashboard-hero__side,
.qs-dashboard-charts > *,
.qs-dashboard-lower > *{min-width:0}

.qs-kpi-strip .cc-kpi-card{display:grid;gap:8px;align-content:start}
.qs-kpi-strip .cc-kpi-card__label{margin-bottom:0}
.qs-kpi-strip .cc-kpi-card__value{
  font-size:clamp(1.15rem,2.7vw,1.85rem);
  line-height:1.15;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.qs-kpi-strip .cc-kpi-card__meta{font-size:.84rem;line-height:1.45}

.qs-dashboard-charts .cc-panel-card,
.qs-dashboard-lower .cc-panel-card{min-width:0}
.qs-dashboard-charts .cc-panel-card__header,
.qs-dashboard-lower .cc-panel-card__header{align-items:flex-start}
.qs-dashboard-charts .cc-panel-card__header > div,
.qs-dashboard-lower .cc-panel-card__header > div{min-width:0}
.qs-dashboard-charts .cc-panel-card__header h3,
.qs-dashboard-lower .cc-panel-card__header h3{overflow-wrap:anywhere}
.qs-dashboard-charts .cc-panel-card__header p,
.qs-dashboard-lower .cc-panel-card__header p{line-height:1.45}

.qs-dashboard-charts .chart-wrap{height:200px}
.qs-dashboard-charts canvas{width:100% !important;max-width:100%;height:100% !important}

.qs-dashboard-charts .metric-row,
.qs-dashboard-lower .metric-row,
.qs-dashboard-lower .activity-item,
.qs-dashboard-lower .document-item{
  min-width:0;
}
.qs-dashboard-charts .metric-row > div,
.qs-dashboard-lower .metric-row > div,
.qs-dashboard-lower .activity-item > div,
.qs-dashboard-lower .document-item > div{min-width:0}
.qs-dashboard-charts .metric-row strong,
.qs-dashboard-lower .metric-row strong,
.qs-dashboard-lower .activity-item strong,
.qs-dashboard-lower .document-item strong{overflow-wrap:anywhere}

.qs-module-card{min-width:0}
.qs-module-card__meta{min-width:0}
.qs-module-card__meta b,
.qs-module-card__meta span{overflow-wrap:anywhere}

@media (max-width:1100px){
  .qs-dashboard-hero{grid-template-columns:1fr;gap:14px}
  .qs-dashboard-hero__side{grid-template-columns:repeat(3,minmax(0,1fr))}
  .qs-dashboard-charts,.qs-dashboard-lower{grid-template-columns:1fr 1fr}
  .qs-module-grid{grid-template-columns:1fr 1fr}
  .qs-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:760px){
  .qs-shell{gap:14px}
  .qs-dashboard-hero{padding:18px;border-radius:22px}
  .qs-dashboard-hero h1{font-size:1.45rem;line-height:1.08;gap:10px}
  .qs-dashboard-hero p{font-size:.92rem;line-height:1.55}
  .qs-dashboard-hero__actions{display:grid;grid-template-columns:1fr;gap:10px}
  .qs-dashboard-hero__actions > *{width:100%;justify-content:center}
  .qs-dashboard-hero__side{grid-template-columns:1fr}
  .qs-dashboard-signal{padding:14px 15px;border-radius:18px}

  .qs-kpi-strip{grid-template-columns:1fr;gap:12px}
  .qs-kpi-strip .cc-kpi-card{padding:14px 15px 15px;border-radius:20px}
  .qs-kpi-strip .cc-kpi-card__value{font-size:1.1rem;line-height:1.25}

  .qs-dashboard-charts,.qs-dashboard-lower,.qs-module-grid{grid-template-columns:1fr;gap:14px}
  .qs-dashboard-charts .cc-panel-card,
  .qs-dashboard-lower .cc-panel-card{padding:14px 15px;border-radius:20px}
  .qs-dashboard-charts .cc-panel-card__header,
  .qs-dashboard-lower .cc-panel-card__header{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:12px}
  .qs-dashboard-charts .chart-wrap{height:168px}

  .qs-dashboard-charts .metric-row,
  .qs-dashboard-lower .metric-row,
  .qs-dashboard-lower .activity-item,
  .qs-dashboard-lower .document-item{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
    padding:12px 13px;
  }
  .qs-dashboard-charts .badge,
  .qs-dashboard-lower .badge{align-self:flex-start}

  .qs-module-card{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px 15px;border-radius:20px}
  .qs-module-card__meta{grid-column:2 / -1;text-align:left}
}

@media (max-width:480px){
  .qs-dashboard-hero{padding:16px}
  .qs-dashboard-hero h1{font-size:1.28rem}
  .qs-dashboard-hero p{font-size:.88rem}
  .qs-dashboard-signal strong{font-size:1.18rem}
  .qs-kpi-strip .cc-kpi-card__label{font-size:.7rem;letter-spacing:.06em}
  .qs-kpi-strip .cc-kpi-card__value{font-size:1rem}
  .qs-kpi-strip .cc-kpi-card__meta{font-size:.78rem}
  .qs-dashboard-charts .chart-wrap{height:150px}
  .qs-dashboard-charts .cc-panel-card__header h3,
  .qs-dashboard-lower .cc-panel-card__header h3{font-size:1rem}
  .qs-module-card__icon{width:44px;height:44px;border-radius:14px}
  .qs-module-card__copy strong{font-size:1rem}
  .qs-module-card__copy span{font-size:.82rem}
}
