/* Video gallery */
.gallery-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 12px}
.gallery-head h3{margin:0;font:600 18px var(--display);letter-spacing:-.02em}
.gallery-head span{color:var(--accent);font:600 12px var(--display)}
.gallery-controls{display:flex;align-items:center;gap:9px;min-width:0}.gallery-controls select{max-width:165px;min-width:0;border:1px solid var(--palette-3b5340);border-radius:var(--radius-8px);background:var(--palette-1b261e);color:var(--text);padding:7px 9px;font:600 11px var(--display)}.gallery-controls select:focus-visible{border-color:var(--accent)}
.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.gallery-grid>.empty-jobs{grid-column:1/-1}
.gallery-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-9px);background:var(--panel);transition:border-color .2s,transform .2s}
.gallery-card:hover{border-color:var(--palette-739260);transform:translateY(-2px)}
.gallery-thumb{position:relative;width:100%;aspect-ratio:16/10;display:grid;place-items:center;overflow:hidden;border:0;padding:0;background:radial-gradient(circle,var(--palette-33462e),var(--palette-172019) 70%);cursor:pointer}
.gallery-thumb:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.gallery-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.88}
.gallery-play{position:relative;z-index:1;display:grid;place-items:center;width:45px;height:45px;border:1px solid var(--palette-d9f5b6);border-radius:var(--radius-circle);background:var(--palette-132017c9);color:var(--accent);font-size:17px;cursor:pointer;transition:background .2s,transform .2s}
.gallery-thumb:hover .gallery-play,.gallery-thumb:focus-visible .gallery-play{background:var(--palette-253b23);transform:scale(1.08)}
.gallery-details{display:grid;gap:6px;padding:11px;min-width:0}
.gallery-title{display:flex;align-items:center;gap:8px;min-width:0}
.gallery-title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 11px var(--display)}
.gallery-latest{flex:none;border:1px solid var(--palette-637c55);border-radius:var(--radius-4px);padding:2px 5px;color:var(--accent);font:600 9px var(--display)}
.gallery-meta{color:var(--accent);font:600 10px var(--display)}
.gallery-seed{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;min-width:0;color:var(--muted);font:500 11px var(--display);overflow-wrap:anywhere}
.seed-copy,.job-bottom .seed-copy{border:1px solid var(--palette-526b4f);border-radius:var(--radius-6px);background:var(--palette-243527);color:var(--accent);padding:4px 8px;min-height:27px;font:600 10px var(--display);white-space:nowrap;cursor:pointer}
.seed-copy:hover,.job-bottom .seed-copy:hover{border-color:var(--accent);background:var(--palette-31452d);text-decoration:none}
.gallery-details p{margin:0;min-width:0;color:var(--muted);font-size:11px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gallery-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:3px}
.gallery-actions button,.gallery-actions a{border:1px solid var(--palette-405845);border-radius:var(--radius-6px);background:var(--palette-233024);color:var(--accent);padding:6px 9px;text-decoration:none;font:600 10px var(--display);cursor:pointer}
.gallery-actions button:hover,.gallery-actions a:hover{border-color:var(--accent);background:var(--palette-304330)}
.gallery-actions .job-danger{border-color:var(--palette-6b4b45);background:var(--palette-302321);color:var(--palette-f0b5a8)}
.gallery-actions .gallery-edit{border-color:var(--palette-6b8d55);background:var(--palette-2b3b28);color:var(--palette-e5ffb6)}
.gallery-actions .gallery-edit:hover{background:var(--palette-3a5032);border-color:var(--accent)}
.gallery-actions button:disabled{cursor:wait;opacity:.58}
.qr-gallery-manage{min-height:35px;padding:7px 12px;border:1px solid var(--palette-8da76c);border-radius:var(--radius-9px);background:linear-gradient(145deg,var(--palette-29442e),var(--palette-162b20));color:var(--palette-e0ffac);font:700 11px var(--display);cursor:pointer}
.qr-gallery-manage:hover{border-color:var(--accent);background:var(--palette-315538)}
.gallery-curation-actions{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.gallery-curation-actions .qr-gallery-admin-manage{background:linear-gradient(145deg,var(--palette-1d3427),var(--palette-101e17));border-color:var(--palette-5c7958);color:var(--palette-d3e9c2)}.gallery-curation-actions .qr-gallery-admin-manage:hover{border-color:var(--accent);background:var(--palette-29442e)}.qr-gallery-personal-policy{display:block;max-width:100%;margin:0 0 16px;padding:10px 13px;border:1px solid var(--palette-87a869);border-radius:var(--radius-10px);background:var(--palette-223e2a);color:var(--palette-e1ffac);font:650 12px/1.4 var(--display);cursor:pointer}.qr-gallery-personal-policy:focus-visible{outline:2px solid var(--palette-d8ff9a);outline-offset:3px}
.qr-gallery-personal-status,.qr-gallery-entry-note{margin:0 0 15px;color:var(--palette-d0e4bf);font:600 12px/1.55 var(--font);overflow-wrap:break-word}.qr-gallery-entry-note{margin:12px 0 10px}.qr-login-mode-card.is-unavailable{cursor:default;border-color:var(--palette-5b6f5a);background:var(--palette-14241a)}.qr-login-mode-card.is-unavailable strong{color:var(--palette-afc3a8)}.gallery-login-notice{margin:0 0 18px;padding:13px 15px;border:1px solid var(--palette-7c9b65);border-radius:var(--radius-12px);background:var(--palette-1b3424);color:var(--palette-e2f2d4);font:600 13px/1.55 var(--font);overflow-wrap:break-word}
@media(max-width:590px){.gallery-curation-actions{flex-basis:100%;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-curation-actions:has(.qr-gallery-admin-manage[hidden]){grid-template-columns:minmax(0,1fr)}.gallery-curation-actions .qr-gallery-manage{width:100%;min-width:0;min-height:40px;padding:9px 10px}.gallery-controls>select{flex:1}.gallery-controls>#gallery-count{margin-left:auto}}
.qr-gallery-manage{max-width:100%;white-space:normal;line-height:1.4}.gallery-controls{flex-wrap:wrap}.qr-gallery-dialog-head button{flex-shrink:0}
.gallery-qr-badge{border-color:var(--palette-9dc765)!important;color:var(--palette-d8ff98)!important}
.qr-gallery-dialog{width:min(560px,calc(100vw - 24px));max-height:min(720px,calc(100dvh - 24px));padding:22px;border:1px solid var(--palette-88a66a);border-radius:var(--radius-19px);background:linear-gradient(145deg,var(--palette-1a3524),var(--palette-0d1d14));box-shadow:0 28px 90px var(--palette-000000cc);color:var(--palette-eaf8e3)}
.qr-gallery-dialog::backdrop{background:var(--palette-010804b8);backdrop-filter:blur(9px)}
.qr-gallery-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:18px}
.qr-gallery-dialog-head h3{margin:4px 0 0;font:700 clamp(20px,5vw,28px) var(--display)}
.qr-gallery-dialog-intro{margin:13px 0 18px;color:var(--palette-b9cdb6);font:500 13px/1.55 var(--font)}
.qr-gallery-options{display:grid;gap:8px;max-height:55dvh;overflow:auto;scrollbar-color:var(--palette-6e965c) var(--palette-14291c)}
.qr-gallery-option{display:flex;align-items:center;gap:12px;min-height:66px;padding:8px;border:1px solid var(--palette-435d44);border-radius:var(--radius-12px);background:var(--palette-13291be8);cursor:pointer}
.qr-gallery-option.is-selected{border-color:var(--palette-a3d36d);background:var(--palette-24402b)}
.qr-gallery-option img{width:62px;height:50px;border-radius:var(--radius-8px);object-fit:cover;background:var(--palette-05130d)}
.qr-gallery-option-title{display:grid;gap:4px;min-width:0;flex:1}.qr-gallery-option-title strong{font:700 13px var(--display)}.qr-gallery-option-title small{color:var(--palette-a9c3a1);font-size:11px}
.qr-gallery-option input{width:21px;height:21px;margin:0 5px;accent-color:var(--palette-c9ff76);cursor:pointer}
.qr-gallery-option input:focus-visible,.qr-gallery-manage:focus-visible{outline:2px solid var(--palette-d8ff9a);outline-offset:3px}
@media(max-width:560px){.qr-login-mode-options .qr-login-mode-grid{grid-template-columns:1fr}.qr-login-mode-card>span{flex:1}.qr-login-mode-card strong{overflow-wrap:break-word}}
.qr-gallery-option.is-readonly{cursor:default}.qr-gallery-option.is-readonly input{opacity:.65;cursor:default}.qr-gallery-option-title .qr-gallery-availability{color:var(--palette-cce2b0)}
/* Preview, version and creation facts inside Моя подборка and Управление подборками (v39). */
.qr-preview-button{position:relative;display:grid;place-items:center;flex:0 0 auto;width:62px;height:50px;padding:0;border:1px solid var(--palette-5f8457);border-radius:var(--radius-9px);background:linear-gradient(145deg,var(--palette-1e3a27),var(--palette-05130d));overflow:hidden;cursor:pointer;box-shadow:inset 0 1px 0 var(--palette-d9ff9a33),0 3px 0 var(--palette-07130b)}
.qr-gallery-option .qr-preview-button img,.qr-curation-item-head .qr-preview-button img{position:absolute;inset:0;width:100%;height:100%;border-radius:var(--radius-square);object-fit:cover}
.qr-curation-item-head .qr-preview-button{width:76px;height:58px;flex-shrink:0}
.qr-preview-play{position:relative;z-index:1;width:26px;height:26px;border:1px solid var(--palette-e4ffb0);border-radius:var(--radius-circle);background:radial-gradient(circle at 30% 25%,var(--palette-f4ffd5),var(--palette-c9ff76) 52%,var(--palette-5f8f2a));box-shadow:inset 0 1px 0 var(--palette-ffffff99),0 2px 8px var(--palette-000000bb);transition:transform .15s ease}
.qr-preview-play::before{content:"";position:absolute;left:52%;top:50%;border-style:solid;border-width:6px 0 6px 10px;border-color:var(--palette-transparent) var(--palette-transparent) var(--palette-transparent) var(--palette-17301a);transform:translate(-40%,-50%)}
.icon-atlas-ready .qr-preview-play::after{content:"";position:absolute;right:-7px;bottom:-7px;width:16px;height:16px;background:url('/static/icons/wan-studio-atlas.webp?v=20261029-42') 33.333% 66.667%/400% 400% no-repeat;filter:drop-shadow(0 1px 2px var(--palette-000000aa))}
.qr-preview-button:hover .qr-preview-play,.qr-preview-button:focus-visible .qr-preview-play{transform:scale(1.1)}
.qr-preview-button:focus-visible{outline:2px solid var(--palette-d8ff9a);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.qr-preview-play{transition:none}}
.qr-item-heading{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0}.qr-item-heading strong{overflow-wrap:break-word}
.qr-version-badge{display:inline-flex;align-items:center;min-height:20px;padding:1px 8px;border:1px solid var(--palette-d9fa91);border-radius:var(--radius-999px);background:linear-gradient(145deg,var(--palette-e5ffa0),var(--palette-bbf65c));color:var(--palette-183017);font:700 10px/1.2 var(--display);letter-spacing:.02em;white-space:nowrap}
.qr-gallery-option .data-details.qr-media-facts,.qr-curation-dialog .data-details.qr-media-facts{grid-template-columns:1fr;gap:2px;margin:0;font-size:11px;line-height:1.4}
.qr-gallery-option .data-details.qr-media-facts>div,.qr-curation-dialog .data-details.qr-media-facts>div{grid-template-columns:auto minmax(0,1fr);gap:2px 8px;min-width:0}.qr-gallery-option .data-details.qr-media-facts dt,.qr-curation-dialog .data-details.qr-media-facts dt{font-size:11px;color:var(--palette-9fb39a);letter-spacing:0}.qr-gallery-option .data-details.qr-media-facts dd,.qr-curation-dialog .data-details.qr-media-facts dd{margin:0;text-align:left;font-size:11px;line-height:1.4;color:var(--palette-dcead2)}.qr-gallery-option .data-details.qr-media-facts time,.qr-curation-dialog .data-details.qr-media-facts time{justify-content:flex-start;gap:0 6px}
.qr-gallery-option.is-foreign{border-style:dashed}.qr-gallery-option.is-foreign.is-selected{border-style:solid}
@media(max-width:400px){.qr-gallery-option{gap:9px;padding:7px}.qr-gallery-option .qr-preview-button{width:54px;height:46px}.qr-version-badge{font-size:9px;padding:1px 6px}}
.qr-curation-dialog{width:min(860px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--palette-58784d) var(--palette-102017)}
.qr-curation-dialog .qr-gallery-dialog-head{gap:16px}.qr-curation-dialog .qr-gallery-dialog-head>div{min-width:0}.qr-curation-dialog .qr-gallery-dialog-head h3{overflow-wrap:break-word}
.qr-curation-owner{display:grid;gap:8px;margin-top:20px;font-size:13px;font-weight:700;color:var(--palette-c6d7bb)}
.qr-curation-dialog select{width:100%;min-width:0;min-height:46px;padding:10px 32px 10px 13px;border:1px solid var(--palette-6d8661);border-radius:var(--radius-12px);background-color:var(--palette-0b2117);color:var(--palette-edf5e6);font:inherit;text-overflow:ellipsis}
.qr-curation-dialog select:focus-visible,.qr-curation-dialog button:focus-visible,.qr-curation-dialog input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.qr-curation-feedback{min-height:2.8em;margin:14px 0;font-size:13px;line-height:1.5;color:var(--palette-b7c9af);overflow-wrap:break-word}.qr-curation-feedback[data-tone=error]{color:var(--palette-ffb5a8)}.qr-curation-feedback[data-tone=pending]{color:var(--palette-d9ec97)}.qr-curation-feedback[data-tone=success]{color:var(--palette-c4f583)}
.qr-curation-excluded{padding:10px 12px;border:1px solid var(--palette-90814c);border-radius:var(--radius-10px);background:var(--palette-393c1c);color:var(--palette-e5dba1);font-size:12px;line-height:1.5}
.qr-curation-published{padding:13px;border:1px solid var(--palette-446245);border-radius:var(--radius-13px);background:var(--palette-0c2117)}
.qr-curation-dialog .data-details{margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 20px}.qr-curation-dialog .data-details>div{min-width:0}.qr-curation-dialog .data-details dt{font-size:11px;letter-spacing:.025em;color:var(--palette-9fb39a)}.qr-curation-dialog .data-details dd{margin-top:5px;font-size:13px;line-height:1.4;overflow-wrap:break-word}
.qr-curation-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.qr-curation-field{display:grid;align-content:start;gap:8px;min-width:0;font-size:13px}.qr-curation-label{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:30px;font-weight:700;color:var(--palette-d3dfc8)}.qr-curation-label .help-trigger{flex:0 0 29px;width:29px;height:29px;min-width:29px;padding:0;font-size:14px}
.qr-curation-dialog .qr-curation-totals{grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 0 16px;border-bottom:1px solid var(--palette-38523e)}
.qr-curation-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;max-height:42dvh;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:3px}
.qr-curation-item{display:flex;flex-direction:column;gap:12px;min-width:0;padding:14px;border:1px solid var(--palette-49634c);border-radius:var(--radius-14px);background:linear-gradient(135deg,var(--palette-1b3625),var(--palette-10261a))}.qr-curation-item.is-effective{border-color:var(--palette-8fa95b);box-shadow:inset 0 1px 0 var(--palette-d4ec7640)}
.qr-curation-item-head{display:flex;align-items:center;gap:12px;min-width:0}.qr-curation-item-head img{width:76px;height:58px;flex-shrink:0;object-fit:cover;border-radius:var(--radius-9px);background:var(--palette-09160f)}.qr-curation-item-head>div{display:grid;gap:6px;min-width:0}.qr-curation-item-head strong{font-size:14px;overflow-wrap:break-word}.qr-curation-item-head small,.qr-curation-personal-state small{font-size:11px;line-height:1.5;color:var(--palette-a9bca1)}
.qr-curation-personal-state{display:grid;gap:4px;margin:0;padding-top:10px;border-top:1px solid var(--palette-3a5440)}.qr-curation-personal-state strong{font-size:12px;font-weight:600;color:var(--palette-cbdabb)}.qr-curation-item-controls{display:grid;gap:9px;margin-top:auto}.qr-curation-item-controls label{display:flex;align-items:center;gap:10px;min-height:32px;font-size:12px;line-height:1.45;color:var(--palette-e1ebd8);cursor:pointer}.qr-curation-item-controls input{width:20px;height:20px;flex:0 0 20px;margin:0;accent-color:var(--accent)}.qr-curation-item-controls input:disabled{opacity:.6;cursor:default}
.qr-curation-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;position:sticky;bottom:-24px;padding:18px 0 3px;margin-top:16px;background:linear-gradient(0deg,var(--palette-0d1d14) 85%,var(--palette-0d1d1400))}
.qr-curation-actions button,.qr-curation-personal{display:flex;align-items:center;justify-content:center;min-width:0;min-height:46px;padding:10px 13px;border:1px solid var(--palette-6a8656);border-radius:var(--radius-12px);background:linear-gradient(145deg,var(--palette-2d4f34),var(--palette-173322));color:var(--palette-e4f1d8);font-size:12px;line-height:1.4;font-weight:700;text-align:center;cursor:pointer}.qr-curation-actions .primary-button{background:linear-gradient(145deg,var(--palette-e5ffa0),var(--palette-bbf65c));color:var(--palette-183017);border-color:var(--palette-d9fa91);box-shadow:inset 0 1px 0 var(--palette-ffffff88),0 3px 0 var(--palette-547c2b)}.qr-curation-actions button:disabled{opacity:.45;cursor:default;box-shadow:none}.qr-curation-actions #qr-curation-discard{background:var(--palette-11281b);color:var(--palette-b9ccb0)}.qr-curation-actions #qr-curation-reload{border-color:var(--palette-c99073);color:var(--palette-ffd3ba)}.qr-curation-personal{margin-top:14px;width:100%;background:var(--palette-10291b)}
.user-gallery-facts .user-gallery-summary{width:100%;margin:0 0 12px;grid-template-columns:repeat(2,minmax(0,1fr))}
.qr-curation-dialog[open]{display:flex;flex-direction:column;overflow:hidden}.qr-curation-dialog>.qr-gallery-dialog-head,.qr-curation-dialog>.qr-curation-owner,.qr-curation-dialog>.qr-curation-feedback,.qr-curation-dialog>.qr-curation-actions{flex-shrink:0}#qr-curation-content{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px 4px 3px 1px}.qr-curation-dialog .qr-curation-options{max-height:none;overflow:visible}.qr-curation-dialog .qr-curation-actions{position:static;padding-bottom:0}
@media(max-width:560px){.qr-curation-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:16px;border-radius:var(--radius-16px)}.qr-curation-settings{grid-template-columns:1fr;gap:14px}.qr-curation-options{grid-template-columns:1fr;max-height:37dvh}.qr-curation-dialog .qr-curation-totals{grid-template-columns:1fr;gap:10px}.qr-curation-dialog .qr-curation-totals>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.qr-curation-dialog .qr-curation-totals dd{margin:0}.qr-curation-actions{bottom:-16px;padding-top:14px;gap:8px}.qr-curation-actions button{padding:10px 7px;font-size:11px}.qr-curation-dialog .data-details{gap:12px}.qr-curation-dialog .qr-gallery-dialog-head h3{font-size:22px}.qr-gallery-option{gap:9px}.qr-gallery-option-title{min-width:0;overflow-wrap:break-word}.qr-gallery-option-title small{line-height:1.45}}
body.gallery-return .login-screen{animation:gallery-login-arrive .85s cubic-bezier(.18,.78,.2,1) both}
body.gallery-return .shell{visibility:hidden}
body.gallery-return.booting #boot-splash:not([hidden]){background:var(--palette-020304)}
body.gallery-return.booting #boot-splash .boot-mark,body.gallery-return.booting #boot-splash strong{display:none}
body.gallery-return.booting .login-screen{animation-play-state:paused}
body.gallery-departure{pointer-events:none}
body.gallery-departure::after{content:"";position:fixed;z-index:9999;inset:0;background:var(--palette-020304);opacity:0;animation:gallery-login-depart .6s ease-in forwards}
@keyframes gallery-login-depart{to{opacity:1}}
@keyframes gallery-login-arrive{from{opacity:0;transform:translateY(28px) scale(.97);filter:blur(7px)}to{opacity:1;transform:none;filter:none}}
@media(prefers-reduced-motion:reduce){body.gallery-return .login-screen{animation:none}}
.source-picker{min-width:0;margin:-5px 0 25px;padding:17px 18px;border:1px solid var(--palette-536a4b);border-radius:var(--radius-10px);background:linear-gradient(145deg,var(--palette-1d2c20),var(--palette-162219))}
.source-picker-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;min-width:0}
.source-picker-mark{flex:none;display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--palette-708a5c);border-radius:var(--radius-7px);color:var(--accent);font:700 17px var(--display)}
.source-picker-head>div{display:grid;gap:3px;min-width:0}.source-picker-head strong{color:var(--text);font:650 15px/1.2 var(--display)}.source-picker-head small{color:var(--soft);font-size:11px;line-height:1.4}
.source-picker label{display:block;margin-bottom:7px;color:var(--accent);font:600 10px var(--display);letter-spacing:.08em;text-transform:uppercase}
.source-picker select{display:block;width:100%;min-width:0;max-width:100%;min-height:43px;padding:9px 13px;border:1px solid var(--palette-5c7355);border-radius:var(--radius-7px);background:var(--palette-142018);color:var(--text);font:600 12px var(--display);text-overflow:ellipsis}
.source-picker select:focus-visible{border-color:var(--accent)}.source-picker select:disabled{opacity:.6}
.source-picker p{margin:9px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.source-picker .secondary-button{margin-top:13px;min-height:42px;padding:9px 14px;border:1px solid var(--palette-526a4d);border-radius:var(--radius-12px);background:linear-gradient(155deg,var(--palette-2a3b30),var(--palette-1a2920));box-shadow:inset 0 1px 0 var(--palette-ffffff1a),0 6px 14px var(--palette-00000033);color:var(--text);font:650 12px var(--display);cursor:pointer}
.source-picker .secondary-button:hover{border-color:var(--accent);color:var(--accent)}
.upload-zone.upload-locked{position:relative;cursor:default;border-color:var(--palette-51674d);box-shadow:inset 0 1px 0 var(--palette-ffffff13)}
.upload-zone.upload-locked::after{content:'Исходный кадр закреплён';position:absolute;right:12px;bottom:12px;padding:5px 9px;border:1px solid var(--palette-7b965e88);border-radius:var(--radius-999px);background:var(--palette-142319d9);color:var(--accent);font:650 10px var(--display);pointer-events:none}
@media(max-width:590px){.source-picker{padding:15px 14px}.source-picker-head strong{font-size:14px}.source-picker select{font-size:12px}}
@media(max-width:500px){.gallery-head{align-items:flex-start;flex-wrap:wrap}.gallery-controls{width:100%;justify-content:space-between}.gallery-controls select{max-width:calc(100% - 40px)}}
@media(max-width:380px){.gallery-grid{grid-template-columns:1fr}.gallery-thumb{aspect-ratio:16/8}}

.video-dialog{width:min(960px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:var(--radius-14px);background:var(--palette-111913);color:var(--text);box-shadow:0 28px 90px var(--palette-000000bb);overflow:auto}
.video-dialog::backdrop{background:var(--palette-050905d9);backdrop-filter:blur(8px)}
.video-dialog-head,.video-dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px}
.video-dialog-head{border-bottom:1px solid var(--line2)}
.video-dialog-head .eyebrow{margin:0 0 5px;color:var(--accent);font-size:10px}
.video-dialog-head h2{margin:0;font:600 21px var(--display)}
/* Without the studio player (script unavailable) the native player remains usable. */
.video-dialog-stage{display:grid;place-items:center;padding:16px 20px 18px;background:radial-gradient(ellipse 70% 90% at 50% 40%,var(--palette-16241a) 0%,var(--palette-0c140e) 70%)}
.video-dialog-stage>video{display:block;width:100%;max-height:calc(100dvh - 260px);min-height:180px;border-radius:var(--radius-14px);background:var(--palette-050705);object-fit:contain}
.video-dialog-error{margin:0;padding:12px 20px;color:var(--palette-ffb0a0);font-size:12px}
.generation-feedback{margin:14px 0 0;padding:12px 14px;border:1px solid var(--palette-597257);border-radius:var(--radius-7px);background:var(--palette-1b2b1e);color:var(--palette-d8f7ba);font-size:12px;line-height:1.45}
.generation-feedback[data-kind="error"]{border-color:var(--palette-8f514b);background:var(--palette-2a1d1c);color:var(--palette-ffb6aa)}
.generation-feedback[data-kind="pending"]{border-color:var(--palette-74805a);background:var(--palette-24291d);color:var(--palette-e5eabc)}
.image-feedback{margin:10px 0 0;padding:11px 13px;border:1px solid var(--palette-8f514b);border-radius:var(--radius-7px);background:var(--palette-2a1d1c);color:var(--palette-ffb6aa);font-size:12px;line-height:1.45;overflow-wrap:break-word}
.video-dialog-foot{border-top:1px solid var(--line2)}
.video-dialog-foot p{min-width:0;margin:0;color:var(--muted);font-size:12px;line-height:1.45;overflow-wrap:break-word}
.video-dialog-foot a{flex:none;font:600 12px var(--display)}
/* One symmetric version switcher: equal steps around a centred position, shown only when versions exist. */
.video-history{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:10px 20px;border-top:1px solid var(--line2);background:var(--palette-141e17)}
.video-history[hidden]{display:none}
/* The page behind an open viewer neither scrolls nor reserves a scrollbar over the full-width sheet. */
html:has(.video-dialog[open]){overflow:hidden}
/* Phones: the viewer fills the screen, so the video area takes all free height and centres the picture. */
@media(max-width:590px){.video-dialog[open]{display:flex;flex-direction:column}.video-dialog>*{flex:none}.video-dialog>.video-dialog-stage{flex:none;display:flex;align-items:center;justify-content:center;min-height:0}}
/* Larger screens: the viewer wraps the video. Its width follows the picture (stage padding and frame
   border add 44px), so square and wide videos alike leave no empty side fields. */
@media(min-width:591px){.video-dialog{--viewer-height:clamp(200px,min(64dvh,calc(100dvh - 340px)),960px);width:clamp(min(440px,calc(100vw - 32px)),calc(var(--viewer-height) * var(--viewer-aspect,1.7778) + 44px),calc(100vw - 32px))}}
.video-history-step{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:min(100%,220px);min-width:0;min-height:42px;padding:6px 14px;border:1px solid var(--palette-5b7453);border-radius:var(--radius-11px);background:linear-gradient(145deg,var(--palette-26402d),var(--palette-16271c));color:var(--accent);font:600 12px var(--display);cursor:pointer;transition:border-color .15s,background .15s}
.video-history-step.is-back{justify-self:start}.video-history-step.is-forward{justify-self:end}
.video-history-step:hover:not(:disabled){border-color:var(--accent);background:linear-gradient(145deg,var(--palette-31523a),var(--palette-1b3022))}
.video-history-step:focus-visible{outline:2px solid var(--wan-close-focus);outline-offset:3px}
.video-history-step:disabled{border-color:var(--palette-3d5040);background:var(--palette-18231b);color:var(--palette-7f9378);cursor:default}
.video-history-step:disabled .video-history-icon{opacity:.45;filter:grayscale(.9)}
.video-history-icon{flex:none;width:24px;height:24px;background:url('/static/icons/wan-studio-controls.webp?v=20261029-42') no-repeat 50% 0%/300% 300%;transform:translate(.6%,-13.3%);filter:drop-shadow(0 2px 3px var(--palette-00000088))}
.video-history-step.is-forward .video-history-icon{background-position:100% 0%;transform:translate(8.4%,-13.3%)}
.video-history-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.video-history-position{margin:0;padding:6px 12px;border:1px solid var(--palette-3f5642);border-radius:var(--radius-999px);background:var(--palette-0f1912);color:var(--soft);font:600 11px var(--display);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:center}

@media(max-width:590px){.video-dialog{width:100vw;max-height:100dvh;height:100dvh;border:0;border-radius:var(--radius-square)}.video-dialog-stage{padding:12px 12px 14px}.video-dialog-stage>video{max-height:calc(100dvh - 300px)}.video-dialog-head,.video-dialog-foot{padding:13px 16px}.video-dialog-foot{align-items:flex-start;flex-direction:column}}
@media(max-width:590px){.video-history{gap:8px;padding:9px 12px}.video-history-step{min-height:40px;padding:6px 10px;font-size:11px}.video-history-icon{width:22px;height:22px}}
@media(max-width:420px){.video-history{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.video-history-position{grid-column:1/-1;grid-row:1;justify-self:center}.video-history-step{grid-row:2;width:100%}}
@media(orientation:landscape) and (max-height:520px){.video-dialog{width:100vw;max-height:100dvh;height:100dvh;border:0;border-radius:var(--radius-square)}.video-dialog-head{padding:8px 16px}.video-dialog-head .eyebrow{display:none}.video-dialog-head h2{font-size:16px}.video-dialog-stage{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.gallery-card,.gallery-play{transition:none}}
.workspace-grid.viewer-mode{grid-template-columns:minmax(0,1fr)}
.help-trigger,.access-form .help-trigger,.invite-form .help-trigger,.user-row .help-trigger{display:inline-grid;place-items:center;flex:none;width:24px;height:24px;min-width:24px;margin:0 0 0 5px;padding:0;border:1px solid var(--palette-668268);border-radius:var(--radius-circle);background:var(--palette-223024);color:var(--palette-d8f8b7);font:700 12px/1 var(--display);vertical-align:middle;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.help-trigger:hover,.help-trigger:focus-visible{background:var(--palette-344b33);border-color:var(--accent);transform:translateY(-1px)}
.access-field{position:relative;display:grid;min-width:0}
.access-field>label{min-width:0}
.access-field>.help-trigger{position:absolute;top:0;right:0;margin:0}
.field-label-text{display:flex;align-items:center;min-height:28px;padding-right:32px;min-width:0;max-width:100%;overflow-wrap:break-word}
.summary-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;min-width:0}
.summary-card-heading>span{min-width:0;overflow-wrap:break-word}
.summary-table th .help-trigger{margin-left:5px}
.user-row>span,.user-usage>span{display:inline-flex;align-items:center;gap:3px;min-width:0}
.user-usage>span{white-space:normal}
.user-limit-note{margin:8px 0 2px;color:var(--muted);font-size:11px;line-height:1.4}
.help-dialog{width:min(440px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--palette-63805f);border-radius:var(--radius-14px);background:var(--palette-17211a);color:var(--text);box-shadow:0 24px 70px var(--palette-000000bb);overflow:auto}
.help-dialog::backdrop{background:var(--palette-07100bd9);backdrop-filter:blur(3px)}
.help-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.help-dialog h3{margin:0;font:600 20px/1.2 var(--display)}
.help-dialog-body{display:grid;gap:clamp(9px,1.1vw,13px);min-width:0;margin-top:clamp(14px,1.6vw,19px)}
.help-dialog-body p{min-width:0;margin:0;color:var(--palette-c5d0c4);font-size:clamp(13px,1.1vw,14px);line-height:1.55;overflow-wrap:break-word;word-break:normal;hyphens:manual}
.help-dialog-body p strong{color:var(--palette-e2edda);font-weight:700}
.help-warning{display:grid;gap:7px;min-width:0;margin-top:4px;padding:12px 14px;border:1px solid var(--palette-9b7952);border-left:3px solid var(--palette-e6ad69);border-radius:var(--radius-8px);background:var(--palette-362b20);color:var(--palette-ffe2bf);overflow-wrap:break-word}
.help-warning strong{color:var(--palette-ffd394);font:700 12px/1.3 var(--display);letter-spacing:.02em}
.help-dialog-body .help-warning p{margin:0;color:var(--palette-f3dac0);font-size:clamp(13px,1.1vw,14px)}
.help-dialog>a{display:inline-flex;margin-top:17px;padding:8px 11px;border:1px solid var(--palette-59755c);border-radius:var(--radius-7px);color:var(--accent);font:600 12px var(--display)}
.help-dialog>a:hover{background:var(--palette-253626);border-color:var(--accent)}
.metric>span>.help-trigger{margin-left:6px;vertical-align:middle}
.model-eyebrow{display:flex;align-items:center;gap:9px;max-width:100%}
.model-eyebrow .eyebrow-line{flex:none;margin-right:0}
.model-eyebrow>span:nth-child(2){min-width:0;overflow-wrap:break-word}
.model-eyebrow .help-trigger{width:24px;height:24px;min-width:24px;margin-left:3px;letter-spacing:0}
@media(max-width:590px){.help-dialog{padding:17px}.help-trigger,.access-form .help-trigger,.invite-form .help-trigger,.user-row .help-trigger{width:28px;height:28px;min-width:28px}}
@media(max-width:590px){.user-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.user-row>strong{grid-column:1/-1}.user-row>span{display:inline-flex;min-width:0;overflow-wrap:break-word}.user-row-actions{grid-column:1/-1}}

.seed-row{grid-template-columns:minmax(0,145px) minmax(120px,240px)}
.seed-row label{align-items:center}.seed-row .help-trigger{margin-left:1px;letter-spacing:0}
.selection-mode-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin:0 0 10px;padding:7px 12px;border:1px solid var(--palette-59745b);border-radius:var(--radius-8px);background:var(--palette-203025);color:var(--accent);font:600 11px var(--display)}
.selection-mode-button:hover,.selection-mode-button[aria-pressed="true"]{background:var(--palette-30462d);border-color:var(--accent)}
.user-name{display:flex;align-items:center;flex-wrap:wrap;gap:7px;min-width:0;overflow-wrap:break-word}
.user-presence{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--palette-46584b);border-radius:var(--radius-99px);padding:2px 7px;color:var(--muted);font:600 10px var(--display);white-space:nowrap}
.user-presence::before{content:'';width:6px;height:6px;border-radius:var(--radius-circle);background:var(--palette-758478)}.user-presence.is-online{color:var(--accent);border-color:var(--palette-6e8e5b)}.user-presence.is-online::before{background:var(--accent)}
.user-devices{grid-column:1/-1;min-width:0;border-top:1px solid var(--line);padding-top:8px}.user-devices summary{cursor:pointer;color:var(--accent);font:600 12px var(--display);padding:5px 0}
.device-setting{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:9px 0 12px;color:var(--text);font-size:12px}.device-setting input,.device-create-option input{width:17px;height:17px;accent-color:var(--accent)}
.device-list{display:grid;gap:7px;min-width:0}.device-list>p{color:var(--muted);margin:0 0 8px}.device-item{display:flex;align-items:center;flex-wrap:wrap;gap:7px;border:1px solid var(--line);border-radius:var(--radius-8px);padding:9px;background:var(--palette-17221b);min-width:0}.device-item-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;flex:1 1 180px;min-width:0}.device-item-main strong{overflow-wrap:break-word}.device-item-main span{color:var(--muted);font-size:11px}.device-item-main .device-online{color:var(--accent)}.device-item-main small{grid-column:1/-1;color:var(--muted);overflow-wrap:break-word}.device-item .device-revoke{background:var(--palette-422a29);color:var(--palette-ffd0c8)}
.access-form .device-create-option{display:flex;align-items:center;gap:7px;min-width:0;align-self:center}.device-create-option span{line-height:1.25}
.maintenance-panel{display:grid;gap:9px;padding:16px;margin:17px 0 20px;border:1px solid var(--palette-4d664c);border-radius:var(--radius-12px);background:var(--palette-19251d)}.maintenance-panel.is-active{border-color:var(--palette-d18d70);background:var(--palette-29211d)}.maintenance-panel-head{display:flex;align-items:start;justify-content:space-between;gap:14px}.maintenance-panel-head>div{display:grid;gap:5px}.maintenance-panel-head strong{font:600 16px var(--display)}.maintenance-panel-head span{color:var(--accent);font:600 11px var(--display)}.maintenance-panel.is-active .maintenance-panel-head span{color:var(--palette-f3ad91)}.maintenance-panel-head p{max-width:520px;margin:0;color:var(--muted);font-size:11px}.maintenance-panel label{font-size:11px;color:var(--soft)}.maintenance-panel textarea{width:100%;resize:vertical;min-height:64px;border:1px solid var(--line);border-radius:var(--radius-7px);padding:9px 11px;background:var(--palette-111b15);color:var(--text)}.maintenance-panel button{justify-self:start;min-height:36px;border:1px solid var(--palette-779769);border-radius:var(--radius-8px);padding:7px 13px;background:var(--palette-30482a);color:var(--accent);font:600 11px var(--display)}.maintenance-panel.is-active button{border-color:var(--palette-bf816e);background:var(--palette-3b2a22);color:var(--palette-ffd1bc)}
.maintenance-text-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.maintenance-count{color:var(--muted);font:600 10px var(--display);font-variant-numeric:tabular-nums}
.maintenance-count.is-invalid{color:var(--palette-ffb6aa)}
.maintenance-panel textarea:focus-visible{outline:2px solid var(--wan-close-focus);outline-offset:2px}
.maintenance-save-state{margin:0;color:var(--muted);font-size:11px;line-height:1.45}
.maintenance-save-state[data-state="dirty"]{color:var(--palette-f1e7a8)}
.maintenance-actions-row{display:flex;flex-wrap:wrap;gap:8px}
.maintenance-panel .maintenance-save,.maintenance-panel.is-active .maintenance-save{border-color:var(--palette-8fc276);background:linear-gradient(145deg,var(--palette-3c6236),var(--palette-26402a));color:var(--palette-e5ffc4)}
.maintenance-panel .maintenance-save:disabled{border-color:var(--palette-465c43);background:var(--palette-1f2c22);color:var(--palette-7f9378);cursor:default}
.maintenance-panel button:focus-visible{outline:2px solid var(--wan-close-focus);outline-offset:3px}
.maintenance-banner{display:grid;justify-items:start;gap:8px;margin:22px 0}.maintenance-symbol{font-size:29px;color:var(--accent)}.maintenance-banner h3{margin:0;font:600 22px var(--display)}.maintenance-banner p{margin:0;color:var(--soft);font-size:13px;line-height:1.5}.maintenance-banner button{margin-top:10px;border:1px solid var(--palette-61795c);border-radius:var(--radius-8px);background:var(--palette-283a2a);color:var(--accent);padding:8px 12px;font:600 11px var(--display)}
@media(max-width:590px){.seed-row{grid-template-columns:minmax(0,140px) minmax(0,1fr)}.selection-mode-button{width:100%}.user-name{grid-column:1/-1}.device-item-main{grid-template-columns:1fr}.device-item-main span,.device-item-main small{grid-column:1}}
@media(max-width:590px){.maintenance-panel-head{display:grid}.maintenance-panel button{width:100%}}

.access-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:26px 0 12px;min-width:0}
.access-mode-tab{display:flex;align-items:center;gap:15px;min-width:0;min-height:82px;padding:16px 18px;text-align:left;border:1px solid var(--line);border-radius:var(--radius-12px);background:var(--palette-19221b);color:var(--text);transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.access-mode-tab:hover{border-color:var(--palette-879b74);background:var(--palette-202d21);transform:translateY(-2px)}
.access-mode-tab[aria-selected="true"]{border-color:var(--accent);background:var(--palette-253322);box-shadow:inset 0 0 0 1px var(--palette-d8ff7a30)}
.access-mode-number{align-self:flex-start;color:var(--accent);font:700 11px var(--display);letter-spacing:.08em}
.access-mode-copy{display:grid;gap:4px;min-width:0}.access-mode-copy strong{font:600 17px/1.2 var(--display);letter-spacing:-.02em;overflow-wrap:break-word}.access-mode-copy small{font-size:12px;color:var(--muted);line-height:1.3}
.access-mode-arrow{margin-left:auto;align-self:flex-start;color:var(--accent);font:20px/1 var(--display)}
.access-method-panel{min-width:0;max-width:100%;border:1px solid var(--line);border-radius:var(--radius-12px);background:var(--palette-151c17);padding:24px;animation:access-panel-in .24s ease-out both}
.access-method-heading,.invitation-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.access-method-heading h3,.invitation-heading h3{font:600 23px var(--display);letter-spacing:-.035em;margin:0}.access-method-heading .eyebrow,.invitation-heading .eyebrow{margin:0 0 6px}.access-method-heading p:last-child,.invitation-heading p:last-child{max-width:380px;color:var(--muted);font-size:12px;margin:0;line-height:1.5}
.access-method-panel .access-form{margin:20px 0 0;padding-bottom:25px;border-bottom:1px solid var(--line2)}
.access-method-panel .access-form input,.access-method-panel .access-form select{background:var(--bg)}
.access-method-panel .user-row{background:var(--palette-1b261e)}
.access-method-panel.invitation-panel{margin:0;padding:24px}
.access-list-heading{margin:23px 0 13px;font:600 17px var(--display);letter-spacing:-.02em}
.invitation-panel .access-list-heading{padding-top:18px;border-top:1px solid var(--line2)}
@keyframes access-panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:850px){.access-method-heading,.invitation-heading{display:block}.access-method-heading p:last-child,.invitation-heading p:last-child{margin-top:8px}}
@media(max-width:590px){.access-mode-tab{min-height:76px;padding:13px;gap:9px}.access-mode-copy strong{font-size:14px}.access-mode-copy small{font-size:11px}.access-mode-arrow{font-size:16px}.access-method-panel,.access-method-panel.invitation-panel{padding:16px}}
@media(max-width:420px){.access-mode-switch{grid-template-columns:1fr;gap:7px}.access-mode-tab{min-height:62px}.access-mode-copy{gap:1px}}
@media(prefers-reduced-motion:reduce){.access-mode-tab{transition:none}.access-method-panel{animation:none}}


/* Preview cover: only the play mark, no extra icon badge. */
.qr-preview-play::after{content:none;display:none}
/* v47: the gallery header filters use the glass look of the gallery actions (shared lime chevron, centred text);
   on phones the header is one balanced two-column grid and the video counter is a chip in the title row. */
.gallery-head .gallery-controls select{min-height:35px;padding:7px 30px;border:1px solid var(--palette-8da76c);border-radius:var(--radius-9px);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23d8ff9d' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 11px center,linear-gradient(145deg,var(--palette-29442e),var(--palette-162b20));color:var(--palette-e0ffac);font:700 11px/1.3 var(--display);text-align:center;text-align-last:center;box-shadow:none;cursor:pointer}
.gallery-head .gallery-controls select:hover{border-color:var(--accent);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23d8ff9d' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 11px center,var(--palette-315538)}
.gallery-head .gallery-controls select:focus-visible{border-color:var(--accent);outline:2px solid var(--palette-d8ff9a);outline-offset:3px}
@media(max-width:590px){.gallery-head{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:10px 8px}.gallery-head>h3{grid-row:1;grid-column:1/-1;min-width:0;padding-right:56px}.gallery-head .gallery-controls{display:contents}.gallery-head #gallery-count{grid-row:1;grid-column:2;justify-self:end;display:inline-grid;place-items:center;min-width:38px;min-height:26px;margin:0;padding:3px 9px;border:1px solid var(--palette-8da76c);border-radius:var(--radius-999px);background:linear-gradient(145deg,var(--palette-29442e),var(--palette-162b20));color:var(--palette-e0ffac);font:700 12px/1 var(--display);font-variant-numeric:tabular-nums}.gallery-head #gallery-selection-mode,.gallery-head .gallery-curation-actions{grid-column:1/-1}.gallery-head .gallery-curation-actions:not(:has(>:not([hidden]))){display:none}.gallery-head .qr-gallery-manage,.gallery-head .gallery-controls select{min-height:44px}.gallery-head .gallery-controls select{width:100%;min-width:0;max-width:none;margin:0;font-size:11px}.gallery-head .gallery-controls:has(#gallery-archive-source:not([hidden])) #gallery-filter,.gallery-head .gallery-controls:not(:has(#gallery-filter:not([hidden]))) #gallery-lifecycle-filter{grid-column:1/-1}}
