:root{--bg:#f6f3ed;--panel:#fff;--panel2:#fbfaf7;--text:#5c503b;--muted:#8c7d65;--line:#ded6c7;--gold:#bfa56a;--gold2:#a88e54;--soft:#f4edde;--ok:#4e8962;--danger:#b35b57}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}button,input,select{font:inherit}.top{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);padding:18px 22px}.brand{display:flex;justify-content:space-between;gap:16px;align-items:end}.brand h1{font-size:28px;margin:0}.sub{color:var(--muted);font-size:13px;margin-top:5px}.tabs,.modes,.actions{display:flex;flex-wrap:wrap;gap:8px}.tabs{margin-top:16px}.btn{border:1px solid var(--line);background:#fff;color:var(--text);padding:9px 13px;border-radius:10px;cursor:pointer}.btn.active,.btn.primary{background:var(--gold);border-color:var(--gold);color:#fff}.btn.primary:not(.active){background:var(--soft);color:var(--text)}.btn:hover{border-color:var(--gold2)}.btn.danger{border-color:#d8aaa6;color:var(--danger)}.btn.small{padding:7px 9px;font-size:12px}main{padding:22px;max-width:1500px;margin:auto}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.toolbar h2{margin:0;font-size:24px}.notice{padding:12px 14px;background:var(--soft);border:1px solid #e5d8bb;border-radius:12px;font-size:13px;margin-bottom:18px}.notice.error{background:#fff2f1;border-color:#e1b8b5;color:#84403c}.notice.ok{background:#eff8f1;border-color:#bcd5c3;color:#356344}.upload{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:18px}.upload h3{margin:0 0 6px}.drop{margin-top:14px;border:2px dashed var(--gold);border-radius:14px;padding:22px;text-align:center;background:var(--panel2)}.drop.drag{background:var(--soft)}.drop input{max-width:100%}.folderbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.folderbtn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;cursor:pointer}.folderbtn.active{background:var(--soft);border-color:var(--gold)}.category{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin-bottom:16px;overflow:hidden}.head{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.head h3{font-size:18px;margin:0}.count{font-size:12px;color:var(--muted);margin-top:3px}.cards{padding:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.card{background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:12px}.preview{height:175px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}.preview img{width:100%;height:100%;object-fit:contain}.preview.photo img{object-fit:cover}.preview.loader-preview{height:460px}.loader-cards{grid-template-columns:1fr}.preview iframe{width:100%;height:100%;border:0}.name{font-weight:700;margin:10px 0 4px;word-break:break-word}.path{font-size:11px;color:var(--muted);word-break:break-all}.status{font-size:11px;color:var(--muted);margin-top:8px}.photo-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.photo-actions select{min-width:0;border:1px solid var(--line);border-radius:9px;padding:7px;background:#fff}.empty-state{padding:30px;border:1px dashed var(--line);border-radius:14px;text-align:center;color:var(--muted);background:#fff}.gallery-note{font-size:12px;color:var(--muted);margin-bottom:12px}.badge{display:inline-block;padding:4px 7px;border-radius:999px;background:var(--soft);font-size:11px}.badge.main{background:#efe2bd;font-weight:700}.spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px;margin-left:6px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}@media(max-width:700px){.top,main{padding:14px}.brand{display:block}.modes{margin-top:12px}.toolbar{align-items:flex-start;flex-direction:column}.cards{grid-template-columns:1fr}.photo-actions{grid-template-columns:1fr}.preview.loader-preview{height:360px}}


.risc-pro-loader-overlay{
  position:fixed;
  inset:0;
  z-index:9000;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(246,243,237,.72);
  backdrop-filter:blur(2px);
}
.risc-pro-loader-overlay[hidden]{display:none}
.risc-pro-loader-frame{
  width:min(94vw,470px);
  height:min(88vh,410px);
  border:0;
  border-radius:24px;
  background:transparent;
  box-shadow:0 18px 48px rgba(92,80,59,.16);
}
body.risc-loader-active{overflow:hidden}
@media(max-width:600px){
  .risc-pro-loader-overlay{padding:10px}
  .risc-pro-loader-frame{width:min(96vw,430px);height:min(86vh,380px)}
}
@media(prefers-reduced-motion:reduce){
  .risc-pro-loader-overlay{backdrop-filter:none}
}
