/* Object inspection and cleaning share the carousel clock, not free-running CSS timers. */
.hc-object-scene,.hc-clean-scene{container-type:inline-size;container-name:hc-object;margin:0!important;min-width:0;min-height:0;color:#203e32;animation:none!important}
.hc-object-scene{background:#fafbf7}
.hc-object-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);width:100%;height:100%;min-width:0;min-height:0}
.hc-object-view{position:relative;min-width:0;min-height:0;height:100%;overflow:hidden;background:radial-gradient(ellipse at 55% 34%,#fafbf7 0%,#edf0e4 75%)}
.hc-object-canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:pan-y;outline-offset:-5px!important}
.hc-object-canvas:focus-visible{outline:2px solid #9abd51}
.hc-object-scene.is-dragging .hc-object-canvas{cursor:grabbing}
.hc-object-view-tag{position:absolute;top:21px;left:21px;display:flex;align-items:center;gap:7px;pointer-events:none;font-size:12px;line-height:1;font-weight:750;color:#5d7055}
.hc-object-view-tag .icon{width:17px;height:17px}
.hc-object-view-caption{position:absolute;left:20px;right:18px;bottom:18px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;pointer-events:none;color:#69795f;font-size:10px;line-height:1.4}
.hc-object-view-caption>span{display:flex;align-items:center;gap:5px}
.hc-object-view-caption .icon{width:13px;height:13px}
.hc-object-record{display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:0;padding:28px 23px 25px;border-left:1px solid #e3e8db}
.hc-object-room{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;font-weight:700;color:#77846f;letter-spacing:.15px}
.hc-object-room>span{font-weight:500;color:#93a08d;font-variant-numeric:tabular-nums}
.hc-object-record h3{margin:12px 0 6px!important;font-size:clamp(21px,3cqw,27px);line-height:1.15;letter-spacing:-.8px;font-weight:700;color:#203e32}
.hc-object-heading p{margin:0!important;font-size:12px;color:#79856f;line-height:1.45}
.hc-object-versions{display:flex;width:100%;background:#eef1e7;border:1px solid #e2e7d9;border-radius:9px;padding:3px;margin-top:23px;gap:2px}
.hc-carousel .hc-object-versions button{min-width:0;flex:1;min-height:44px;padding:7px 6px;border:0;border-radius:6px;background:transparent;color:#728067;font-size:11px;line-height:1.25;font-weight:650}
.hc-carousel .hc-object-versions button.is-selected{color:#203e32;background:white;box-shadow:0 1px 4px #203e3212}
.hc-object-condition{display:flex;align-items:flex-start;gap:10px;margin-top:22px;min-width:0}
.hc-object-condition-icon{display:flex;align-items:center;justify-content:center;flex:none;width:29px;height:29px;background:#e5efdb;border:1px solid #d9e6cd;border-radius:50%;color:#5b7850}
.hc-object-condition-icon svg{width:16px;height:16px}
.hc-object-condition>div{min-width:0;display:flex;flex-direction:column;gap:5px;padding-top:1px}
.hc-object-condition strong{font-size:13px;line-height:1.3;font-weight:700}
.hc-object-condition>div>span{font-size:11px;line-height:1.45;color:#78846f}
.hc-object-evidence{margin-top:23px;padding-top:14px;border-top:1px solid #e3e7db;display:flex;align-items:center;gap:7px;min-width:0;font-size:10px;line-height:1.4;color:#748169}
.hc-object-evidence>.icon{width:14px;height:14px;margin-left:auto;flex:none}
.hc-object-evidence-dot{width:5px;height:5px;border-radius:50%;background:#7d946a;flex:none}
.hc-object-scene.is-exit .hc-object-condition-icon{background:#f9ebd1;border-color:#eed4a4;color:#a86d2b}
.hc-object-scene.is-exit .hc-object-condition strong{color:#94612a}
.hc-object-scene.is-exit .hc-object-evidence-dot{background:#bc813a}

.hc-clean-scene{background:#fafbf7}
.hc-clean-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);width:100%;height:100%;min-width:0;min-height:0}
.hc-clean-image{position:relative;min-width:0;min-height:0;overflow:hidden;background:#d6dcd2}
.hc-clean-visual{display:block;width:100%;height:100%;position:absolute;inset:0}
.hc-clean-image-label{position:absolute;left:16px;right:12px;top:16px;display:flex;gap:6px;align-items:center;font-size:11px;font-weight:600;line-height:1.4;color:white;text-shadow:0 1px 10px #203e3260}
.hc-clean-image-label span{opacity:.65}
.hc-clean-photo-state{position:absolute;left:15px;bottom:16px;background:#fafbf2ed;border:1px solid #ffffff9c;box-shadow:0 3px 10px #203e320d;border-radius:6px;min-height:29px;display:inline-flex;align-items:center;padding:5px 10px;color:#3e5535;font-size:11px;font-weight:700;line-height:1.3;max-width:calc(100% - 30px)}
.hc-clean-workflow{padding:27px 22px 22px;display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:0}
.hc-clean-service-label{font-size:11px;font-weight:650;color:#77846f;line-height:1.4}
.hc-clean-workflow h3{font-size:clamp(21px,3.5cqw,29px);line-height:1.16;letter-spacing:-.8px;font-weight:700;margin:12px 0 0!important;color:#203e32}
.hc-clean-steps{margin:25px 0 0!important;padding:0!important;list-style:none;display:flex;flex-direction:column;gap:22px}
.hc-clean-steps li{display:flex;align-items:center;gap:10px;position:relative;color:#a0aa98;font-size:11px;line-height:1.4;font-weight:600;min-width:0}
.hc-clean-steps li:not(:last-child)::after{content:'';position:absolute;left:14px;top:32px;height:14px;width:1px;background:#dfe5d8}
.hc-clean-step-icon{width:30px;height:30px;border:1px solid #e0e6d9;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;background:#f2f4ed;color:#a0ad96;transition:background .25s,color .25s,border-color .25s}
.hc-clean-step-icon svg{width:16px;height:16px}
.hc-clean-steps li.is-current{color:#203e32}
.hc-clean-steps li.is-current .hc-clean-step-icon{background:#d9f3a5;border-color:#d1e99d;color:#405d29}
.hc-clean-steps li.is-complete{color:#667b56}
.hc-clean-steps li.is-complete .hc-clean-step-icon{background:#eaf0e0;color:#697f59;border-color:#dce6d0}
.hc-carousel .hc-clean-replay{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:24px;width:100%;min-height:40px;border:1px solid #dce3d4;background:transparent;border-radius:8px;font-size:11px;font-weight:650;color:#526846;padding:7px 9px}
.hc-clean-replay .icon{width:14px;height:14px}
.hc-clean-example{display:block;margin-top:10px;text-align:center;font-size:10px;line-height:1.3;color:#8a9681}
.hc-clean-scene[data-phase="2"] .hc-clean-photo-state{background:#dff5bcf2;border-color:#dff1bd}

@container hc-object (max-width:460px){
  .hc-object-record{padding:22px 16px}
  .hc-object-record h3{font-size:23px;letter-spacing:-.6px}
  .hc-object-view-tag{left:15px;top:17px}
  .hc-object-view-caption{left:14px;right:10px;bottom:15px;flex-direction:column;align-items:flex-start;font-size:10px;gap:4px}
  .hc-object-versions{margin-top:19px}
  .hc-carousel .hc-object-versions button{min-height:44px;padding-left:4px;padding-right:4px}
  .hc-object-condition{gap:7px;margin-top:20px}
  .hc-object-condition-icon{width:25px;height:25px}
  .hc-object-condition strong{font-size:12px}
  .hc-object-evidence{margin-top:18px}
  .hc-clean-workflow{padding:22px 15px 18px}
  .hc-clean-workflow h3{font-size:23px;letter-spacing:-.6px}
  .hc-clean-steps{gap:20px;margin-top:22px!important}
  .hc-clean-steps li{gap:8px;font-size:11px}
  .hc-clean-step-icon{width:27px;height:27px}
  .hc-clean-steps li:not(:last-child)::after{left:13px;top:29px;height:13px}
  .hc-carousel .hc-clean-replay{min-height:44px;margin-top:20px;font-size:11px}
  .hc-clean-image-label{font-size:10px;left:12px;top:15px;right:8px;flex-wrap:wrap;gap:3px}
  .hc-clean-photo-state{font-size:10px;left:11px;bottom:14px;padding:5px 8px;max-width:calc(100% - 22px)}
}

@container hc-object (max-width:390px){
  .hc-object-layout,.hc-clean-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}
  .hc-object-view{border-bottom:1px solid #e0e5d8}
  .hc-object-view-tag{top:15px;left:17px}
  .hc-object-view-caption{flex-direction:row;bottom:13px;left:17px;right:17px;font-size:10px}
  .hc-object-record{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;align-content:center;gap:15px 16px;border:0;padding:19px 18px 17px}
  .hc-object-room{font-size:10px;max-width:95px}
  .hc-object-record h3{margin:8px 0 5px!important;font-size:20px;line-height:1.15}
  .hc-object-desktop-break{display:none}
  .hc-object-heading p{font-size:11px}
  .hc-object-versions{grid-column:2;grid-row:1;align-self:start;margin-top:0;flex-wrap:wrap;padding:3px;gap:2px}
  .hc-carousel .hc-object-versions button{flex-basis:100%;min-height:44px}
  .hc-object-condition{margin-top:0;grid-column:1 / -1;grid-row:2;align-items:center;gap:9px}
  .hc-object-condition>div{flex-direction:row;flex-wrap:wrap;column-gap:8px;row-gap:2px;align-items:center}
  .hc-object-condition strong{font-size:12px}
  .hc-object-condition>div>span{font-size:11px}
  .hc-object-evidence{display:none}
  .hc-clean-workflow{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:16px 10px;padding:17px 17px 16px}
  .hc-clean-heading{grid-column:1;grid-row:1}
  .hc-clean-service-label{font-size:11px}
  .hc-clean-workflow h3{font-size:20px;margin:6px 0 0!important;line-height:1.15}
  .hc-clean-workflow h3 br{display:none}
  .hc-clean-steps{grid-column:1 / -1;grid-row:2;flex-direction:row;gap:8px;margin:0!important;align-items:flex-start}
  .hc-clean-steps li{width:33.333%;gap:6px;flex-direction:column;align-items:flex-start;font-size:10px;line-height:1.35}
  .hc-clean-steps li:not(:last-child)::after{width:calc(100% - 35px);height:1px;left:33px;top:14px}
  .hc-clean-step-icon{width:28px;height:28px}
  .hc-carousel .hc-clean-replay{grid-column:2;grid-row:1;align-self:center;width:44px;height:44px;margin:0;padding:0;font-size:0;gap:0;overflow:hidden}
  .hc-clean-replay .icon{width:16px;height:16px;flex:none}
  .hc-clean-example{display:none}
  .hc-clean-image-label{font-size:11px;left:17px;top:16px}
  .hc-clean-photo-state{left:16px;bottom:15px;font-size:11px;min-height:29px}
}

@media(prefers-reduced-motion:reduce){
  .hc-object-scene *,.hc-clean-scene *{transition:none!important;animation:none!important}
}
