.inspections-root{min-width:0;width:100%}
.inspections{--insp-accent:#900968;color:#292329;max-width:1440px;margin:auto;min-width:0}.insp-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:24px}.insp-heading h1{font-size:clamp(30px,4vw,46px);margin:8px 0}.insp-heading p,.insp-muted{color:#817681;line-height:1.5}.insp-eyebrow{font-size:12px;letter-spacing:.15em;font-weight:800;color:var(--insp-accent)}.insp-responsible{font-size:13px;color:#847985;line-height:1.8}.insp-responsible strong{color:#342a35}.insp-tabs,.insp-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}.insp-tabs{padding:6px;border:1px solid #eadfe9;border-radius:16px;background:#fff}.insp-tabs button{flex:1;min-height:44px;white-space:normal}.insp-tabs button.active{background:var(--insp-accent);color:#fff}.insp-panel{padding:28px;border:1px solid #eadfe9;border-radius:20px;background:#fff;box-shadow:0 8px 30px #54384c08;min-width:0}.inspections h2{font-size:23px;margin:8px 0 20px}.inspections h3{font-size:17px;margin:8px 0}.inspections label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600;min-width:0}.inspections input,.inspections select,.inspections textarea,.insp-notice input{width:100%;min-width:0;box-sizing:border-box;font:inherit;border:1px solid #e1d5e0;border-radius:10px;padding:11px 12px;background:white;color:#292329}.inspections textarea{resize:vertical}.inspections small{font-weight:400;line-height:1.45;color:#857985}.inspections button{cursor:pointer;min-height:42px;max-width:100%;white-space:normal}.inspections button:disabled{cursor:default;opacity:.55}.insp-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.insp-wide{grid-column:1/-1}.insp-criteria{display:grid;gap:12px;margin:22px 0}.insp-criteria fieldset{border:1px solid #e9e0e8;border-radius:12px;padding:16px;min-width:0}.insp-criteria legend{font-size:15px;font-weight:700;padding:0 5px}.insp-criteria fieldset>div{display:flex;gap:18px;flex-wrap:wrap}.insp-criteria label{display:flex;flex-direction:row;align-items:center;font-weight:400;gap:7px}.insp-criteria input{width:18px;height:18px;accent-color:var(--insp-accent);flex-shrink:0}.insp-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end;padding-bottom:20px;border-bottom:1px solid #eee6ee}.insp-table-wrap{overflow:auto;max-width:100%}.insp-table{width:100%;border-collapse:collapse;font-size:14px}.insp-table th{text-align:left;color:#817681;font-size:12px;background:#faf7fa}.insp-table th,.insp-table td{padding:14px 12px;border-bottom:1px solid #eee6ee;vertical-align:middle}.insp-table small{display:block;margin-top:5px}.insp-badge{display:inline-block;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:700;background:#f1edf1;color:#6d636e;white-space:nowrap}.insp-badge.approved{background:#e6f5ee;color:#148354}.insp-badge.submitted{background:#f7ebf4;color:#900968}.insp-badge.returned{background:#fff3dc;color:#9c6511}.insp-store-grid,.insp-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.insp-store{padding:20px;border:1px solid #eadfe9;border-radius:14px;overflow-wrap:anywhere}.insp-store>span{font-size:12px;color:#817681}.insp-store>strong{font-size:27px;color:var(--insp-accent)}.insp-store p{font-size:14px;color:#817681;line-height:1.6}.insp-store button{margin-top:8px}.insp-score{display:flex;gap:20px;align-items:baseline;background:#fcf5fa;padding:22px;border-radius:14px}.insp-score strong{font-size:32px;color:var(--insp-accent)}.insp-answer-list,.insp-result dl{display:grid;gap:0}.insp-answer-list>div,.insp-result dl>div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #eee6ee}.insp-answer-list dd,.insp-result dd{margin:0;text-align:right;flex:0 0 35%;font-weight:600}.insp-comment,.insp-notice{padding:18px;background:#faf5fa;border-radius:12px;margin:16px 0;overflow-wrap:anywhere}.insp-notice{background:#fff6e8;color:#6a4b23}.insp-comment p,.insp-notice p{white-space:pre-wrap;line-height:1.5;margin-bottom:0}.insp-review{padding:22px;background:#faf7fa;border-radius:14px;display:grid;gap:16px;margin:22px 0}.insp-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.insp-metrics article{padding:20px;background:#faf6f9;border-radius:14px;display:grid;gap:10px}.insp-metrics span{color:#817681;font-size:13px}.insp-metrics strong{color:var(--insp-accent);font-size:32px}.insp-chart{width:100%;margin:16px 0}.insp-chart svg{display:block;width:100%;min-height:180px}.insp-chart text{font-size:12px;fill:#857a85}.insp-history,.insp-personal{margin:20px 0;border-top:1px solid #eee6ee;padding-top:18px}.insp-history p{font-size:13px;color:#817681}.inspections summary,.insp-personal summary{cursor:pointer;padding:12px 0;font-weight:600}.insp-personal>summary span{margin-left:10px;border-radius:20px;padding:3px 8px;background:#f4eaf2;color:#900968}.insp-personal>summary small{display:inline-block;margin-left:12px;color:#847584;font-weight:400}.insp-result{border:1px solid #ebdfeb;border-radius:12px;padding:0 15px;margin:12px 0;font-size:14px}.insp-result summary{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}.insp-result summary strong{color:#900968}.insp-empty{padding:48px 12px;text-align:center;color:#857985}.insp-saving{position:fixed;bottom:18px;right:18px;background:#342536;color:white;padding:10px 20px;border-radius:25px;z-index:10}.inspection-public{max-width:1200px;margin:0 auto;padding:40px 24px}.insp-actions label{flex:1;min-width:220px}.insp-notice input{margin:14px 0;font-size:12px}.insp-links{margin-top:28px}
@media(max-width:1050px){.insp-store-grid,.insp-links{grid-template-columns:repeat(2,minmax(0,1fr))}.insp-panel{padding:22px}.insp-tabs{gap:5px}.insp-tabs button{font-size:13px;padding:10px}.insp-metrics strong{font-size:27px}}
@media(max-width:700px){.insp-heading{align-items:flex-start;flex-direction:column;gap:4px}.insp-heading h1{font-size:32px}.insp-heading p{margin:6px 0}.insp-panel{padding:16px;border-radius:14px}.insp-grid,.insp-filters{grid-template-columns:1fr 1fr;gap:12px}.insp-filters label:first-child,.insp-filters label:nth-child(2),.insp-filters label:nth-child(3){grid-column:1/-1}.insp-tabs button{flex:1 1 40%}.insp-store-grid,.insp-links{grid-template-columns:1fr}.insp-metrics{grid-template-columns:1fr;gap:8px}.insp-metrics article{display:flex;align-items:center;justify-content:space-between;padding:15px}.insp-metrics strong{font-size:26px}.insp-criteria fieldset>div{gap:12px}.insp-criteria label:last-child{flex-basis:100%}.insp-score strong{font-size:28px}.insp-answer-list>div,.insp-result dl>div{display:block}.insp-answer-list dd,.insp-result dd{text-align:left;margin-top:7px;color:#900968}.insp-table{min-width:600px}.inspection-public{padding:22px 12px}.insp-actions{gap:10px}.insp-actions label{min-width:100%;flex-basis:100%}.insp-personal>summary small{display:block;margin:10px 0 0}.insp-chart svg{min-height:160px}.insp-chart text{font-size:15px}}

.insp-type-picker { display: block; max-width: 420px; margin: 18px 0; }
.insp-type-picker select { display:block; width:100%; margin-top:6px; }
.insp-template { margin-top:24px; }
.insp-template-group { padding:18px; margin:18px 0; border:1px solid #e8dce6; border-radius:16px; min-width:0; }
.insp-template-group-head { display:flex; gap:12px; align-items:end; margin-bottom:18px; }
.insp-template-group-head > label { flex:1; min-width:0; }
.insp-template-row { display:grid; grid-template-columns:minmax(0,1fr) 88px auto; align-items:end; gap:10px; margin-bottom:12px; }
.insp-template-row label { min-width:0; }
.insp-template-row input,.insp-template-group-head input { width:100%; min-width:0; box-sizing:border-box; }
.insp-template-group-head input { font-weight:700; }
.insp-criteria > h3 { margin-top:24px; }
@media(max-width:600px) { .insp-template-row { grid-template-columns:minmax(0,1fr) 88px; } .insp-template-row > label:first-child { grid-column:1/-1; } .insp-template-group-head { flex-wrap:wrap; align-items:stretch; } .insp-template-group-head > label { flex-basis:100%; } .insp-template-group { padding:12px; } }

/* Personal inspection results stay above both achievement collections. */
.insp-personal-card { margin:24px 0; padding:22px; border:1px solid #e8cddd; border-radius:18px; background:linear-gradient(145deg,#fff 0%,#fffafd 100%); box-shadow:0 14px 32px #3014270d; min-width:0; color:#292329; }
.insp-personal-card-head { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:18px; }
.insp-personal-card-title { display:flex; align-items:center; gap:14px; min-width:0; }
.insp-personal-icon { display:grid; place-items:center; width:44px; height:44px; flex:none; border-radius:14px; color:white; background:#900968; font-size:25px; font-weight:800; }
.insp-personal-eyebrow { color:#900968; font-size:11px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.insp-personal-card .insp-personal-card-title h3 { display:flex; gap:10px; align-items:center; margin:3px 0; font-size:24px; }
.insp-personal-card-title h3>span,.insp-personal-history>summary>span { padding:3px 8px; border-radius:20px; background:#f4eaf2; color:#900968; font-size:13px; }
.insp-personal-card .insp-personal-card-title p { margin:3px 0 0; color:#817681; font-size:13px; line-height:1.4; }
.insp-personal-average { display:grid; gap:5px; text-align:right; flex:none; }
.insp-personal-average>span { color:#817681; font-size:12px; }
.insp-personal-average>strong { color:#900968; font-size:28px; }
.insp-personal-latest,.insp-personal-history-list { display:grid; gap:10px; min-width:0; }
.insp-personal-card .insp-personal-result { margin:0; padding:0 16px; background:#fff; border:1px solid #eee1ea; border-radius:13px; min-width:0; }
.insp-personal-card .insp-personal-result summary { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px 20px; padding:15px 0; cursor:pointer; list-style:none; }
.insp-personal-result summary::-webkit-details-marker { display:none; }
.insp-personal-result-info { display:flex; gap:5px 12px; flex-wrap:wrap; align-items:baseline; min-width:0; overflow-wrap:anywhere; }
.insp-personal-result-info>strong { font-size:15px; color:#292329; }
.insp-personal-result-info>time { font-size:12px; color:#817681; white-space:nowrap; }
.insp-personal-result-info>span { flex-basis:100%; color:#817681; font-size:13px; line-height:1.4; }
.insp-personal-result-score { display:grid; gap:3px; text-align:right; }
.insp-personal-result-score>strong { color:#900968; font-size:22px; white-space:nowrap; }
.insp-personal-result-score>small { color:#817681; font-size:12px; white-space:nowrap; }
.insp-personal-result-bar { grid-column:1/-1; height:4px; border-radius:9px; overflow:hidden; background:#f1e7ee; }
.insp-personal-result-bar>span { display:block; height:100%; background:#a31576; border-radius:inherit; }
.insp-personal-result-hint { grid-column:1/-1; color:#900968; font-size:11px; display:flex; gap:8px; align-items:center; }
.insp-personal-result[open] .insp-personal-result-hint>span { transform:rotate(180deg); }
.insp-personal-card .insp-personal-result dl { margin-top:0; line-height:1.5; overflow-wrap:anywhere; }
.insp-personal-history { margin-top:18px; border-top:1px solid #eee1ea; padding-top:12px; }
.insp-personal-history>summary { cursor:pointer; color:#900968; font-size:14px; font-weight:700; padding:8px 0; }
.insp-personal-history>summary>span { margin-left:6px; }
.insp-personal-history-list { max-height:640px; overflow:auto; scrollbar-gutter:stable; padding-right:4px; }
.insp-personal-empty { margin:0; border-radius:12px; padding:18px; background:#faf5f9; color:#817681; line-height:1.5; }
@media(max-width:700px) {
  .insp-personal-card { padding:15px; margin:18px 0; border-radius:16px; }
  .insp-personal-card-head { display:grid; gap:12px; }
  .insp-personal-card .insp-personal-card-title h3 { font-size:21px; }
  .insp-personal-card-title { gap:10px; }
  .insp-personal-icon { width:38px; height:38px; border-radius:12px; font-size:23px; }
  .insp-personal-average { display:flex; align-items:center; justify-content:space-between; text-align:left; padding-top:10px; border-top:1px solid #f0e4ec; }
  .insp-personal-average>strong { font-size:23px; }
  .insp-personal-card .insp-personal-result { padding:0 12px; }
  .insp-personal-card .insp-personal-result summary { gap:10px; }
  .insp-personal-result-info>strong { font-size:14px; }
  .insp-personal-result-info>time { flex-basis:100%; }
  .insp-personal-result-info>span { font-size:12px; }
  .insp-personal-result-score>strong { font-size:19px; }
  .insp-personal-result-score>small { font-size:11px; }
  .insp-personal-history-list { max-height:520px; }
}

.insp-ranking { margin:24px 0; padding:20px 0; border-top:1px solid #eee6ee; border-bottom:1px solid #eee6ee; min-width:0; }
.insp-ranking-scroll { max-height:560px; scrollbar-gutter:stable; }
.insp-ranking .insp-table th { position:sticky; top:0; z-index:1; }
@media(max-width:700px) { .insp-filter-employee-status,.insp-filter-ranking { grid-column:1/-1; } }

.insp-manager-card { border-color:#caa5c0; background:#fffaff; }
.insp-upload-block { min-width:0; border:1px solid #e4d7e1; border-radius:14px; padding:18px; margin:0 0 18px; }
.insp-upload-block legend { padding:0 6px; font-weight:700; line-height:1.5; overflow-wrap:anywhere; max-width:100%; }
.insp-upload-block legend small { font-weight:400; color:#8c1670; }
.insp-upload-input { display:grid; gap:8px; margin:12px 0 6px; min-width:0; }
.insp-upload-input input { width:100%; min-width:0; max-width:100%; box-sizing:border-box; }
.insp-screenshots { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,220px)); gap:14px; }
.insp-screenshots figure { margin:0; min-width:0; display:grid; gap:8px; align-content:start; }
.insp-screenshot { display:block; padding:0!important; height:180px; width:100%; border:1px solid #e7d9e3!important; background:#f8f4f7!important; overflow:hidden; border-radius:8px; }
.insp-screenshot img { width:100%; height:100%; object-fit:contain; }
.insp-screenshots figcaption { overflow-wrap:anywhere; font-size:12px; color:#6f616d; }
.insp-image-preview { border:0; border-radius:14px; padding:16px; width:min(1100px,94vw); max-width:94vw; max-height:90vh; box-sizing:border-box; }
.insp-image-preview::backdrop { background:#0009; }
.insp-image-preview form { position:sticky; top:0; display:flex; justify-content:flex-end; margin-bottom:12px; }
.insp-image-preview img { display:block; max-width:100%; height:auto; margin:auto; }
@media(max-width:600px) { .insp-upload-block { padding:12px; } .insp-screenshots { grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); } }
