/* Approved PV LAB result deck. Deliberately scoped to the image viewer. */
#image-lightbox{--result-bg:#191b1c;--result-line:#ffffff19;--result-ivory:#edece5;font-family:var(--pv-text,'DM Sans',sans-serif)}
#image-lightbox .image-detail-layout{grid-template-columns:minmax(0,1fr) clamp(330px,24vw,390px)}
#image-lightbox .image-detail-media,#image-lightbox .image-lightbox-stage{background:#0d0f10}
#image-lightbox .image-detail-media{grid-template-rows:48px minmax(0,1fr) 24px}
#image-lightbox .image-detail-topbar{height:48px;padding:0 16px}
#image-lightbox .image-detail-bottomline{height:24px;padding:0 16px;font-size:10px}
#image-lightbox .image-lightbox-stage{padding:8px!important}
#image-lightbox #image-lightbox-close{position:absolute;top:10px;right:12px;z-index:30;width:44px;height:44px;min-width:44px;min-height:44px;margin:0;border:1px solid #ffffff19;border-radius:8px;background:#272a2b;color:#edece5}
#image-lightbox #image-lightbox-close:hover{background:#35393a;border-color:#ffffff38}
#image-lightbox #image-lightbox-close:focus-visible{outline:2px solid var(--result-ivory);outline-offset:2px}
#image-lightbox .image-detail-topbar,#image-lightbox .image-detail-bottomline{background:#131516;border-color:var(--result-line)}
#image-lightbox .image-detail-brand{font-size:14px;font-weight:550;letter-spacing:.16em;white-space:nowrap;padding-right:18px;border-right:1px solid var(--result-line)}
#image-lightbox .image-detail-inspector,#image-lightbox .image-detail-inspector-head,#image-lightbox .image-detail-inspector-scroll,#image-lightbox .image-detail-actions{background:var(--result-bg);border-color:var(--result-line)}
#image-lightbox .image-detail-inspector-head{min-height:64px;padding:0 68px 0 24px}
#image-lightbox .detail-kicker{font-family:inherit;font-size:18px;font-weight:550;letter-spacing:-.025em}
#image-lightbox .detail-state{border:0;padding:0;color:#b5bf96;font-size:11px}
#image-lightbox .detail-state::before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:7px;background:currentColor}
#image-lightbox .detail-state[data-status='failed'],#image-lightbox .detail-state[data-status='uncertain']{color:#daa49a}
#image-lightbox .image-detail-inspector-scroll{gap:0;padding:20px 24px 12px;scrollbar-color:#4b4e49 transparent}
#image-lightbox .image-detail-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid var(--result-line)}
#image-lightbox .image-detail-card:last-of-type{border-bottom:0;margin-bottom:0}
#image-lightbox .detail-card-header{margin-bottom:10px}
#image-lightbox .detail-label{font-size:13px;font-weight:500;color:#edece5}
#image-lightbox .detail-inline-button{background:transparent;border:0;padding:4px;font-size:11px;color:#bfc0bb}
#image-lightbox .image-detail-prompt{font-size:15px;line-height:1.6;font-weight:400;color:#dddeda}
#image-lightbox .image-detail-prompt.is-collapsible:not(.is-expanded){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;max-height:6.4em;overflow:hidden;mask-image:none;-webkit-mask-image:none}
#image-lightbox .image-detail-prompt.is-expanded{display:block;max-height:none;overflow:visible}
#image-lightbox .image-detail-expand{font-size:12px;font-weight:450;color:#b5bf96;padding:0;min-height:32px;margin-top:3px}
#image-lightbox .image-detail-expand[hidden]{display:none}
#image-lightbox .image-detail-reference-wrap{display:block;margin:16px 0 0;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;min-height:0}
#image-lightbox #image-detail-reference-caption{display:block;margin-bottom:10px;font-size:13px;font-weight:450;color:#d4d5d0}
#image-lightbox .image-detail-reference-strip{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:2px 2px 7px;scrollbar-width:thin;scrollbar-color:#626660 transparent}
#image-lightbox .image-detail-reference-item{position:relative;flex:0 0 58px;width:58px;height:68px;min-height:68px;padding:0;overflow:hidden;border:1px solid #ffffff2b;border-radius:8px;background:#272a2b;cursor:zoom-in}
#image-lightbox .image-detail-reference-item:hover{border-color:#c7ccb5}
#image-lightbox .image-detail-reference-item:focus-visible{outline:2px solid var(--result-ivory);outline-offset:1px}
#image-lightbox .image-detail-reference-item img,#image-lightbox #image-detail-reference-thumb{display:block;width:100%;min-width:0;height:100%;border:0;border-radius:0;object-fit:contain}
#image-lightbox .image-detail-reference-item img[hidden]{display:none}
#image-lightbox .image-detail-reference-item span{position:absolute;right:3px;bottom:3px;min-width:17px;padding:2px 3px;border-radius:4px;background:#151718d9;color:#edece5;font-size:10px;line-height:1.2}
#image-lightbox .image-detail-pixels{display:block;color:#adb1ad;font-size:12px;white-space:nowrap}
#image-lightbox .image-detail-data summary{font-family:inherit;font-size:13px;font-weight:500;letter-spacing:0}
#image-lightbox .image-detail-data dl{margin-top:8px}
#image-lightbox .image-detail-data dl>div{padding:9px 0;border-color:var(--result-line)}
#image-lightbox .image-detail-data dt,#image-lightbox .image-detail-data dd{font-size:13px;line-height:1.5;font-weight:400}
#image-lightbox .image-detail-data dt{color:#a4a7a5}
#image-lightbox .image-detail-data dd{color:#e2e3de}
#image-lightbox .image-detail-secondary-data{margin-top:12px}
#image-lightbox .image-detail-secondary-data summary{color:#939890;font-size:11px}
#image-lightbox .image-detail-mood-feature{border:0;border-radius:0;background:transparent;padding:0 0 16px;border-bottom:1px solid var(--result-line)}
#image-lightbox .image-detail-actions{position:relative;padding:20px 24px max(24px,env(safe-area-inset-bottom));gap:9px}
#image-lightbox .image-detail-actions button,#image-lightbox .image-detail-utility-row summary{display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:44px;padding:9px 10px;border:1px solid #ffffff1c;border-radius:8px;background:#272a2b;color:#e0e1dc;font-family:inherit;font-size:14px;font-weight:500;line-height:1.2;box-shadow:inset 0 1px 0 #ffffff04;transition:background .15s,border-color .15s}
#image-lightbox .image-detail-actions svg{width:19px;height:19px;flex:none}
#image-lightbox .image-detail-actions button:hover:not(:disabled),#image-lightbox .image-detail-utility-row summary:hover{background:#323637;border-color:#ffffff38;color:#fff}
#image-lightbox .image-detail-actions :is(button,summary):focus-visible{outline:2px solid var(--result-ivory);outline-offset:3px}
#image-lightbox .image-detail-actions .detail-primary{min-height:50px;background:var(--result-ivory)!important;border-color:var(--result-ivory)!important;color:#181a18!important;font-size:14px;font-weight:650}
#image-lightbox .image-detail-actions .detail-primary:hover:not(:disabled){background:#fff!important;border-color:#fff!important;color:#111!important}
#image-lightbox .image-detail-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#image-lightbox .image-detail-action-grid button{flex-direction:column;min-height:62px;padding:8px 4px;gap:5px;font-size:14px}
#image-lightbox .image-detail-mood-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#image-lightbox .image-detail-mood-actions button{font-size:14px;gap:7px;padding:8px 5px;min-height:42px}
#image-lightbox #image-detail-save-mood{grid-column:auto;background:#b2b98f12;border-color:#a5ad7e50;color:#c9cead;min-height:42px;font-size:14px}
#image-lightbox #image-detail-save-mood:hover:not(:disabled){background:#b2b98f22;border-color:#a5ad7e80}
#image-lightbox .image-detail-utility-row{display:grid;grid-template-columns:minmax(0,1fr) 46px 46px;gap:8px;margin-top:10px;padding-top:16px;border-top:1px solid var(--result-line)}
#image-lightbox .image-detail-utility-row>button,#image-lightbox .image-detail-utility-row summary{height:48px;min-height:48px}
#image-lightbox #image-lightbox-download{font-size:14px}
#image-lightbox #image-detail-favorite[aria-pressed='true']{color:#d0d6b0}
#image-lightbox #image-detail-favorite[aria-pressed='true'] svg{fill:currentColor}
#image-lightbox .detail-extra{position:relative;margin:0;padding:0;border:0;min-width:0}
#image-lightbox .detail-extra summary{list-style:none;cursor:pointer;padding:0}
#image-lightbox .detail-extra summary::after{content:none}
#image-lightbox .image-detail-more-menu{position:absolute;right:0;bottom:calc(100% + 10px);z-index:20;width:230px;max-width:calc(100vw - 36px);padding:7px;display:flex;flex-direction:column;gap:3px;background:#242727;border:1px solid #ffffff30;border-radius:8px;box-shadow:0 12px 32px #0007;max-height:min(420px,65dvh);overflow-y:auto}
#image-lightbox .image-detail-more-menu button{justify-content:flex-start;text-align:left;border:0;min-height:42px;white-space:normal}
#image-lightbox .detail-extra-list{padding:0;gap:3px}
#image-lightbox #image-detail-delete{color:#dba399;border-top:1px solid var(--result-line);border-radius:0;margin-top:4px}
@media(max-width:1100px) and (min-width:721px){
  #image-lightbox .image-detail-inspector-head{padding:0 64px 0 20px}
  #image-lightbox .image-detail-inspector-scroll{padding:18px 20px 10px}
  #image-lightbox .image-detail-actions{padding:16px 20px 20px}
}
@media(max-width:720px){
  #image-lightbox .image-detail-topbar{height:48px;padding:0 60px 0 12px;gap:6px}
  #image-lightbox #image-lightbox-close{top:2px;right:8px;background:#222526}
  #image-lightbox .image-lightbox-stage{padding:6px!important}
  #image-lightbox .image-detail-bottomline{height:24px;padding:0 12px}
  #image-lightbox .image-detail-brand{font-size:11px;padding-right:10px;letter-spacing:.12em}
  #image-lightbox .image-detail-inspector-head{padding:0 18px;min-height:60px}
  #image-lightbox .detail-kicker{font-size:17px}
  #image-lightbox .image-detail-inspector-scroll{padding:10px 18px max(24px,env(safe-area-inset-bottom))}
  #image-lightbox .image-detail-actions{padding:16px 18px 20px;border-top:0}
  #image-lightbox .image-detail-prompt{font-size:15px}
  #image-lightbox .image-detail-expand:not([hidden]){display:inline-flex}
}
@media(max-width:360px){
  #image-lightbox .image-detail-brand{padding-right:7px;font-size:10px}
  #image-lightbox .image-detail-actions{padding-left:12px;padding-right:12px}
  #image-lightbox .image-detail-mood-actions button{gap:5px}
}

/* Hong Kong Nights: compact, accessible 2×2 finishing deck. The inspector
   itself scrolls independently of the persistent image-action footer. */
#image-lightbox .image-detail-inspector-scroll{
  scroll-padding-bottom:36px;
  padding-bottom:max(36px,env(safe-area-inset-bottom));
  overscroll-behavior:contain;
}
#image-lightbox #image-film-finish{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:14px;row-gap:12px;align-items:start;min-width:0;
  scroll-margin-bottom:32px;
}
#image-lightbox #image-film-finish[hidden]{display:none!important}
#image-lightbox #image-film-finish>strong,
#image-lightbox #image-film-finish>.film-finish-summary,
#image-lightbox #image-film-finish>.film-finish-explanation,
#image-lightbox #image-film-finish>.film-finish-actions,
#image-lightbox #image-film-finish>.film-finish-status{grid-column:1/-1}
#image-lightbox #image-film-finish>strong{
  display:flex;align-items:center;gap:9px;color:#f3f2ee;font-size:14px;
  margin:0;letter-spacing:0;
}
#image-lightbox #image-film-finish>.film-finish-summary{
  color:#cdd1cd;font-size:12px;line-height:1.45;opacity:1;margin:0
}
#image-lightbox #image-film-finish>.film-finish-explanation:not([hidden]){
  color:#c5c9c5;font-size:12px;line-height:1.6;opacity:1;
  margin:0;padding:0 0 0 12px;border-left:1px solid #737872
}
#image-lightbox #image-film-finish>label{
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto 24px;gap:5px 6px;min-width:0;min-height:56px;
  align-items:center;margin:0;font-size:12px;color:#e4e6e1
}
#image-lightbox #image-film-finish>label>span{
  grid-row:1;grid-column:1;font-weight:550;color:#eef0e9
}
#image-lightbox #image-film-finish>label>output{
  grid-row:1;grid-column:2;font-size:12px;font-weight:550;
  color:#e1e4dc;opacity:1;text-align:right
}
#image-lightbox #image-film-finish>label>input[type=range]{
  grid-row:2;grid-column:1/-1;width:100%;min-width:0;cursor:pointer
}
/* Match the value exactly: at 100% the whole film-finish track is filled, including past the thumb. */
#image-lightbox #image-film-finish>label>input[type=range]{
  -webkit-appearance:none;appearance:none;display:block;
  height:24px;margin:0;padding:0;border:0;background:transparent;
  accent-color:#d6ef91;
}
#image-lightbox #image-film-finish>label>input[type=range]::-webkit-slider-runnable-track{
  height:7px;border:0;border-radius:999px;
  background:linear-gradient(to right,#d6ef91 0%,#d6ef91 var(--moods-progress,0%),#515457 var(--moods-progress,0%),#515457 100%);
}
#image-lightbox #image-film-finish>label>input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:16px;height:16px;margin-top:-4.5px;
  border:0;border-radius:50%;background:#d6ef91;
}
#image-lightbox #image-film-finish>label>input[type=range]::-moz-range-track{
  height:7px;border:0;border-radius:999px;
  background:linear-gradient(to right,#d6ef91 0%,#d6ef91 var(--moods-progress,0%),#515457 var(--moods-progress,0%),#515457 100%);
}
#image-lightbox #image-film-finish>label>input[type=range]::-moz-range-progress{
  height:7px;border:0;background:transparent;
}
#image-lightbox #image-film-finish>label>input[type=range]::-moz-range-thumb{
  width:16px;height:16px;border:0;border-radius:50%;background:#d6ef91;
}
#image-lightbox #image-film-finish>label>input[type=range]:focus-visible{
  outline:2px solid #d6ef91;outline-offset:3px;
}
#image-lightbox #image-film-finish>.film-finish-actions{
  display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:2px;
}
#image-lightbox #image-film-apply{
  display:flex;align-items:center;justify-content:center;width:100%;
  min-height:46px;padding:10px 12px;background:var(--result-ivory);
  border:1px solid var(--result-ivory);border-radius:8px;
  color:#171918;font-size:13px;font-weight:700
}
#image-lightbox #image-film-apply:hover:not(:disabled){
  background:#fff;border-color:#fff;color:#111
}
#image-lightbox #image-film-original{
  justify-self:start;min-height:36px;padding:6px 0;
  border:0;background:transparent;color:#d2d6d0;
  font-size:12px;font-weight:520
}
#image-lightbox #image-film-original:hover:not(:disabled){color:#fff}
#image-lightbox #image-film-finish>.film-finish-status{
  color:#b8bdb7;font-size:11px;line-height:1.5;opacity:1
}
@media(max-width:720px){
  #image-lightbox .image-detail-inspector-scroll{padding-bottom:max(36px,env(safe-area-inset-bottom))}
  #image-lightbox #image-film-finish{column-gap:12px;row-gap:10px}
}

/* Visible saved/unsaved state prevents 100% controls from being mistaken for a processed image. */
#image-lightbox #image-film-finish>strong>.film-finish-status{
  margin-left:auto;white-space:nowrap;min-width:0;
  color:#c8cdc7;font-size:10px;font-weight:550;letter-spacing:0;
}
#image-lightbox #image-film-finish[data-film-pending="true"]>strong>.film-finish-status{
  color:#e4cfaa;
}


/* Provider content refusals: the archive remains a fashion editorial, not an API log. */
#app #history .history-no-result.is-content-restricted{
  box-sizing:border-box;width:100%;height:100%;min-height:175px;padding:clamp(17px,2.6vw,30px) clamp(17px,2.7vw,32px) clamp(25px,3.2vw,42px);
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:0;
  border:0;border-top:1px solid #b7a99365;
  background:radial-gradient(circle at 90% 9%,#6a594a20,transparent 58%),linear-gradient(145deg,#252628,#1b1c1f 76%);
  text-align:left;color:#eeebe4;
}
#app #history .history-no-result.is-content-restricted .content-restriction-kicker{
  display:block;max-width:100%;color:#c5b8a5;
  font:500 10px/1.35 var(--pv-text,'DM Sans',sans-serif);
  letter-spacing:.14em;text-transform:uppercase;
}
#app #history .history-no-result.is-content-restricted strong{
  display:block;margin:11px 0 0;max-width:100%;color:#f1ede5;
  font-family:'Iowan Old Style',Baskerville,'Palatino Linotype',Georgia,serif;
  font-size:clamp(24px,1.95vw,32px);line-height:1.09;font-weight:400;letter-spacing:-.043em;
}
#app #history .history-no-result.is-content-restricted .content-restriction-copy{
  display:block!important;flex:none;margin:9px 0 0;max-width:39ch;max-height:none;overflow:visible;
  color:#c0bebb;font:400 clamp(11px,.96vw,13px)/1.5 var(--pv-text,'DM Sans',sans-serif);
  letter-spacing:0;overflow-wrap:break-word;
}
#app #history .history-no-result.is-content-restricted button.content-restriction-edit{
  display:inline-flex;align-items:center;min-height:28px;width:auto;padding:3px 0 4px;margin-top:11px;
  background:transparent!important;border:0!important;border-bottom:1px solid #c4b8a66e!important;border-radius:0!important;
  box-shadow:none!important;color:#eee6d9!important;cursor:pointer;
  font:500 12px/1.3 var(--pv-text,'DM Sans',sans-serif);letter-spacing:.01em;
}
#app #history .history-no-result.is-content-restricted button.content-restriction-edit:hover{
  color:#fff!important;border-bottom-color:#fff!important;
}
#app #history .history-no-result.is-content-restricted button.content-restriction-edit:focus-visible{
  outline:2px solid #e6d5b7;outline-offset:5px;
}
#app #history .history-no-result.is-content-restricted .content-restriction-foot{
  display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin-top:10px;
  font:400 10px/1.35 var(--pv-text,'DM Sans',sans-serif);color:#aaa8a1;
}
#app #history .history-no-result.is-content-restricted .content-restriction-credits,
#image-lightbox #image-lightbox-content-credits{
  display:inline-flex;align-items:center;width:max-content;padding:3px 7px;
  border:1px solid #a3ae8963;border-radius:30px;background:#a3ae8914;color:#c9d4ae;
  font:500 10px/1.4 var(--pv-text,'DM Sans',sans-serif);white-space:nowrap;
}
#image-lightbox .detail-state[data-status='restricted']{color:#d4baa0}
#image-lightbox .image-lightbox-stage.is-content-restricted{
  background:radial-gradient(ellipse at 50% 46%,#242426 0%,#141617 44%,#0d0f10 76%);
}
#image-lightbox #image-lightbox-content-notice{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;
  display:flex;flex-direction:column;align-items:flex-start;width:min(520px,calc(100% - 60px));
  padding:5px 0 5px clamp(17px,2vw,28px);box-sizing:border-box;
  border-left:1px solid #b9a9928a;text-align:left;color:#e9e6df;
}
#image-lightbox #image-lightbox-content-notice[hidden],
#image-lightbox #image-lightbox-content-credits[hidden]{display:none!important}
#image-lightbox #image-lightbox-content-notice .image-content-notice-kicker{
  color:#cbbba4;font:500 11px/1.3 var(--pv-text,'DM Sans',sans-serif);
  letter-spacing:.17em;text-transform:uppercase;
}
#image-lightbox #image-lightbox-content-notice h2{
  margin:17px 0 0;color:#f1ece4;
  font:400 clamp(34px,4vw,58px)/1.05 'Iowan Old Style',Baskerville,'Palatino Linotype',Georgia,serif;
  letter-spacing:-.045em;
}
#image-lightbox #image-lightbox-content-notice p{
  max-width:43ch;margin:17px 0 0;color:#bfc0bb;
  font:400 15px/1.68 var(--pv-text,'DM Sans',sans-serif);
}
#image-lightbox .image-content-notice-foot{
  display:flex;align-items:center;flex-wrap:wrap;gap:9px 14px;margin-top:19px;
  color:#989992;font:400 11px/1.4 var(--pv-text,'DM Sans',sans-serif);
}
#image-lightbox #image-lightbox-content-edit{
  display:inline-flex;align-items:center;gap:12px;width:auto;min-height:35px;margin:24px 0 0;padding:0 0 5px;
  border:0;border-bottom:1px solid #d0c0a37d;border-radius:0;background:transparent;
  color:#efeee8;font:500 14px/1.35 var(--pv-text,'DM Sans',sans-serif);cursor:pointer;
}
#image-lightbox #image-lightbox-content-edit:hover{border-color:#f6f1e7;color:#fff}
#image-lightbox #image-lightbox-content-edit:focus-visible{outline:2px solid #f6f1e7;outline-offset:5px}
#image-lightbox #image-lightbox-content-edit span{font-size:16px;line-height:1}
@media(max-width:720px){
  #app #history .history-no-result.is-content-restricted{padding:16px 18px}
  #app #history .history-no-result.is-content-restricted strong{margin-top:9px;font-size:clamp(22px,5vw,30px)}
  #app #history .history-no-result.is-content-restricted .content-restriction-copy{
    margin-top:8px;font-size:11px;line-height:1.45;
    display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;
  }
  #app #history .history-no-result.is-content-restricted button.content-restriction-edit{margin-top:9px;min-height:24px;font-size:11px}
  #app #history .history-no-result.is-content-restricted .content-restriction-foot{margin-top:8px}
  #app #history .history-no-result.is-content-restricted .content-restriction-foot small:not(.content-restriction-credits){display:none}
  #image-lightbox #image-lightbox-content-notice{width:calc(100% - 44px);padding-left:17px}
  #image-lightbox #image-lightbox-content-notice .image-content-notice-kicker{font-size:9px}
  #image-lightbox #image-lightbox-content-notice h2{margin-top:12px;font-size:clamp(32px,7.3vw,44px)}
  #image-lightbox #image-lightbox-content-notice p{margin-top:13px;font-size:13px;line-height:1.55}
  #image-lightbox .image-content-notice-foot{margin-top:12px}
  #image-lightbox #image-lightbox-content-edit{margin-top:17px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  #app #history .history-no-result.is-content-restricted button.content-restriction-edit{transition:none}
}
