.signed-out>.sidebar,.signed-out>main{display:none}.auth-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;max-width:1200px;margin:auto;align-items:center;gap:70px;padding:55px}.auth-art{position:relative;min-height:480px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.auth-art>.brand-mark{margin-bottom:48px}.auth-art h1{font-size:36px;line-height:1.7;z-index:1}.auth-art>p:last-of-type{font-size:13px;color:#7f8895}.auth-orbit{font-size:290px;color:#d9dfe7;position:absolute;right:-18px;bottom:-24px;z-index:0}.auth-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:42px;box-shadow:0 15px 45px #2c384806}.auth-card h2{font-size:24px;font-weight:500;margin:18px 0}.auth-card>p{font-size:12px;line-height:1.9;color:#7f8996}.auth-card form{margin-top:27px}.auth-card label,.management-form label{font-size:12px;color:#556273;display:block;margin:18px 0 8px}.auth-card input,.management-form input,.management-form select,.member-card input,.model-card input{width:100%;border:1px solid #d7dde5;background:#f7f9fc;border-radius:6px;padding:11px 12px;font:inherit;font-size:12px;min-height:40px}.auth-card input:focus,.management-form input:focus{outline:2px solid #92a1b7;outline-offset:2px}.auth-foot{margin-top:22px!important;font-size:10px!important;text-align:center}.header-account{display:flex;gap:18px;align-items:center;font-size:11px;color:#5c6c82}.header-account button,.small-button{border:1px solid #d6dde6;border-radius:5px;background:#fff;color:#687587;padding:7px 10px;font-size:11px;cursor:pointer}.quote-box{display:flex;justify-content:space-between;background:#eef2f7;border-radius:6px;padding:12px;margin-top:18px;font-size:11px;color:#6b7789}.quote-box strong{color:#3e516b;font-size:14px}.manage-intro{margin:34px 0 24px}.manage-intro h1{font-size:25px}.manage-intro p{font-size:12px;color:#808996;line-height:1.8}.management-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.management-form,.manage-panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:24px;min-width:0}.management-form h2,.manage-panel h2{font-size:14px;margin:0 0 15px}.management-form .generate{max-width:240px}.management-form small,.manage-panel small{display:block;font-size:10px;line-height:1.8;color:#8a93a0;margin-top:8px}.management-table{border-collapse:collapse;width:100%;font-size:11px;text-align:left;white-space:nowrap}.management-table th{font-weight:500;color:#727f91;background:#f3f5f9}.management-table th,.management-table td{padding:13px 12px;border-bottom:1px solid #e6ebf1}.management-table td{color:#55606f}.table-wrap{overflow:auto;margin-top:20px;max-height:580px}.table-wrap .small-button{margin-right:6px}.stats-row{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:22px}.stat-card{flex:1;min-width:150px;background:#fff;border:1px solid var(--line);padding:24px;border-radius:9px}.stat-card span{font-size:11px;color:#7d8898}.stat-card strong{display:block;font-size:28px;color:#43556f;margin-top:10px;font-weight:500}.invite-result{padding:16px;background:#e4ebf5;border:1px solid #c1cfe2;border-radius:8px;margin:18px 0;word-break:break-all;color:#3c516e;font-size:12px;line-height:1.8}.invite-result input{display:block;width:100%;margin-top:9px;border:1px solid #bcc9dc;border-radius:4px;padding:9px;color:#3c506c;background:#fff;font-size:11px}.invite-result button{margin:10px 0 0}.model-card,.member-card{background:white;border:1px solid var(--line);border-radius:10px;padding:22px}.model-card h3,.member-card h3{margin:0 0 9px;font-size:14px}.model-card p,.member-card p{font-size:10px;color:#808da0}.price-fields{display:flex;gap:10px;margin:18px 0}.price-fields label{flex:1;min-width:0;font-size:10px;color:#69788e}.price-fields input{margin-top:7px;padding:9px}.toggle-label{display:flex;gap:8px;align-items:center;font-size:11px;color:#64758c;margin:12px 0}.toggle-label input{width:16px!important;min-height:16px;padding:0}.model-card .generate,.member-card .generate{padding:10px;font-size:11px;margin-top:15px}.model-checks{max-height:140px;overflow:auto;border:1px solid #e6ebf1;border-radius:5px;padding:7px;margin:12px 0}.model-checks label{font-size:10px}.manage-error{margin:15px 0}.audit-detail{max-width:430px;white-space:normal;word-break:break-word;font-size:10px;line-height:1.8}.empty-table{text-align:center;padding:35px;color:#949eac;font-size:12px}.member-card .quota-label{font-size:11px;display:block;color:#69788d}.member-card .quota-label input{margin-top:8px}.invite-link{font-size:11px;color:#546986}.auth-error-note{font-size:11px;color:#ad8462}.profile{position:relative}.workspace>div{min-width:0;overflow:hidden;text-overflow:ellipsis}.management-form .form-row{display:flex;gap:14px}.management-form .form-row>label{flex:1}.management-form .form-row input{margin-top:7px}.switch-view-note{padding:16px;border:1px dashed #cbd4e1;border-radius:8px;color:#718198;font-size:11px;line-height:1.8;margin-bottom:18px}@media(max-width:900px){.auth-screen{gap:25px;padding:30px}.auth-art h1{font-size:28px}.auth-card{padding:28px}.sidebar .nav{display:flex}.header-account{gap:10px}.management-grid{grid-template-columns:1fr}}@media(max-width:720px){.auth-screen{grid-template-columns:1fr;max-width:460px;padding:25px 18px;gap:12px}.auth-art{min-height:160px;justify-content:start}.auth-art>.brand-mark{margin-bottom:15px}.auth-art h1{font-size:23px;margin:0}.auth-art .eyebrow,.auth-art>p:last-of-type{display:none}.auth-orbit{font-size:130px;right:0;bottom:0}.auth-card{padding:25px}.sidebar nav{overflow:auto;max-width:calc(100% - 105px)}.sidebar .nav{min-width:32px}.header-account{font-size:9px}.header-account button{font-size:9px}.management-form,.manage-panel{padding:18px}.stat-card{padding:17px;min-width:100px}.stat-card strong{font-size:22px}.stats-row{gap:8px}.breadcrumb{font-size:9px;gap:6px}.manage-intro h1{font-size:22px}.management-form .form-row{display:block}}
.video-grid{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:24px}.video-field{display:block;margin:18px 0;color:#3a4453;font-size:13px}.video-field select,.video-field input,.video-field textarea{display:block;width:100%;box-sizing:border-box;margin-top:9px;padding:12px;border:1px solid #d7dde5;border-radius:7px;background:#f5f7fa;color:#2e3640;font:inherit}.video-field textarea{resize:vertical;line-height:1.7}.video-note{font-size:12px;line-height:1.8;color:#737c88}.video-empty{min-height:480px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#788495;padding:24px}.video-empty p{font-size:13px;line-height:1.8}.video-symbol{font-size:64px;color:#95a5bb}.video-grid .generate:disabled{opacity:.55;cursor:not-allowed}@media(max-width:800px){.video-grid{grid-template-columns:1fr}.video-empty{min-height:260px}}
.video-model-mode-field{width:220px;max-width:100%}.video-studio-page .video-controls .video-parameter-row .video-model-mode-field select{width:100%;max-width:100%}
.material-drop{display:block;padding:24px;border:1px dashed #8c99ab;border-radius:12px;background:#f0f3f7;cursor:pointer}.material-drop input{display:block;margin-top:14px}.material-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px}.material-card{border:1px solid #d9dee6;border-radius:12px;overflow:hidden;background:white}.material-preview{width:100%;height:220px;border:0;padding:8px;background:#eef1f5;cursor:zoom-in}.material-preview img{width:100%;height:100%;object-fit:contain}.material-actions{display:flex;justify-content:space-between;padding:12px;gap:8px}#detail-save-material{padding:10px;border:1px solid #d1d9e4;border-radius:7px;background:white;color:#485567;font-size:12px}.detail-actions{flex-wrap:wrap}
/* Shared dark surfaces for every management view. */
body:not(.signed-out) :is(.management-form,.manage-panel,.stat-card,.model-card,.member-card,.material-card){background:#1b2330;border-color:#93b1d333;color:#e1e8f2}
body:not(.signed-out) .member-remark{background:#26384d;color:#b9d2f2}body:not(.signed-out) .member-remark-edit{color:#9fc4ef}body:not(.signed-out) .member-remark-editor button{background:#26384d;border-color:#93b1d355;color:#c8ddf7}
body:not(.signed-out) :is(.manage-intro p,.management-form small,.manage-panel small,.stat-card span,.model-card p,.member-card p,.empty-table,.video-note,.video-empty,.history-summary,.history-pagination,.header-account){color:#9dafc6}
body:not(.signed-out) :is(.stat-card strong,.video-symbol){color:#bdd9ff}
body:not(.signed-out) .management-table td{color:#c8d5e7}
body:not(.signed-out) .management-table th{background:#202c3c;color:#a7bedc}
body:not(.signed-out) :is(.management-table td,.management-table th,.model-checks){border-color:#93b1d32b}
body:not(.signed-out) #platform-view :is(input,select,textarea){background:#101925;border-color:#93b1d33d;color:#dce7f6;accent-color:#91bff0}
body:not(.signed-out) #platform-view :is(input,select,textarea):focus{outline:2px solid #91bff088;outline-offset:2px}
body:not(.signed-out) #platform-view label{color:#b9cce4}
body:not(.signed-out) :is(.invite-result,.switch-view-note,.history-pending,.material-drop){background:#192638;border-color:#91bff044;color:#bfd5f0}
body:not(.signed-out) .material-preview{background:#101925}
body:not(.signed-out) :is(.small-button,.job-actions button,.download){background:#233044;border-color:#93b1d344;color:#cfdef1}
body:not(.signed-out) :is(.small-button,.job-actions button,.download):hover{background:#334965;border-color:#a8cfff88;color:#f1f7ff}
body:not(.signed-out) #platform-view .generate{background:#365a85;color:#edf5ff;box-shadow:none}
body:not(.signed-out) #platform-view .generate:hover:not(:disabled){background:#426e9e}
body:not(.signed-out) .status:not(.FAILED):not(.REVIEW){background:#293d57;color:#b9d7fc}
body:not(.signed-out) .video-duration-field input[type="range"]{height:28px;margin-top:7px;padding:0;border:0;background:transparent;accent-color:#91bff0;cursor:pointer}
body:not(.signed-out) .video-duration-field input[type="range"]::-webkit-slider-runnable-track{height:5px;border-radius:999px;background:#3b506b}
body:not(.signed-out) .video-duration-field input[type="range"]::-webkit-slider-thumb{width:16px;height:16px;margin-top:-5px;border:2px solid #dcecff;border-radius:50%;background:#78b7f2;box-shadow:0 0 0 3px #78b7f233;-webkit-appearance:none}
body:not(.signed-out) .video-duration-field input[type="range"]::-moz-range-track{height:5px;border-radius:999px;background:#3b506b}
body:not(.signed-out) .video-duration-field input[type="range"]::-moz-range-thumb{width:12px;height:12px;border:2px solid #dcecff;border-radius:50%;background:#78b7f2;box-shadow:0 0 0 3px #78b7f233}
.video-duration-field output{display:block;margin-top:4px;color:#bdd9ff;font-size:16px;font-weight:600;line-height:1.4}
.video-duration-field input[type="range"]:disabled{cursor:not-allowed;opacity:.55}
body:not(.signed-out) .toast{background:#263b57;border:1px solid #91bff055;color:#e1eeff}
body:not(.signed-out) #preview-download{background:#233044;color:#cfdef1;border:1px solid #93b1d344;border-radius:9px;padding:10px 14px}
body:not(.signed-out) #close-preview{background:#233044;color:#cfdef1}
/* Compact material library with an upload tile and wrapping selection toolbar. */
body:has(#platform-view:not([hidden])){overflow-y:auto}
#platform-view{min-width:0;padding-bottom:32px}
.material-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 18px}
#platform-view .material-toolbar select,#platform-view .material-toolbar input{width:180px;max-width:100%;min-height:36px}
.material-toolbar>span{font-size:12px;color:#a9c5e8}
.material-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;padding:4px;align-items:start}
.material-upload-card{min-height:280px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1px dashed #93b1d366;border-radius:12px;background:#18233380;color:#bed7f7}
.material-upload-card>span{font-size:36px}.material-upload-card small{font-size:10px;color:#9dafc6}
.material-upload-card:hover,.material-upload-card.drag-over{background:#293e58;border-color:#a8cfff}
.material-card{position:relative;min-width:0}.material-card.is-selected{outline:2px solid #91bff0;outline-offset:1px}
#platform-view .material-select{position:absolute;top:10px;left:10px;z-index:1;width:18px;height:18px;min-height:18px;margin:0;cursor:pointer}
.material-card .material-preview{height:220px;display:flex;align-items:center;justify-content:center;padding:10px}
.material-card .material-preview img{width:auto;height:auto;max-width:100%;max-height:100%;border-radius:8px}
.material-caption{padding:0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;color:#c8d8ed}
.material-actions{align-items:center;min-height:48px}.material-actions small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9dafc6}
@media(max-width:520px){.material-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.material-card .material-preview{height:180px}.material-upload-card{min-height:240px}.material-toolbar{gap:8px}}
/* Image-only material cards, aligned with the upload tile. */
.material-grid .material-card .material-preview{height:280px}
@media(max-width:520px){.material-grid .material-card .material-preview{height:240px}}
/* Material and upload tiles keep an exact 3:4 outer frame at every width. */
.material-grid .material-card,.material-grid .material-upload-card{aspect-ratio:3/4;height:auto;min-height:0;position:relative}
.material-grid .material-card .material-preview{position:absolute;inset:0;width:100%;height:100%;min-height:0}
.material-grid .material-upload-card{padding:12px 6px;gap:10px}
.material-grid .material-upload-card small{text-align:center;line-height:1.5}
/* History uses the same framed portrait tiles as the creation gallery. */
body:has(#platform-view:not([hidden]) .history-gallery)>main{max-width:none}
.history-gallery{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;align-items:start}
.history-gallery .history-thumbnail,.history-gallery .history-pending,.history-gallery>video{position:relative;display:block;width:100%;min-width:0;height:auto;min-height:0;aspect-ratio:3/4;border:1px solid #93b1d344;border-radius:12px;background:#10172080;overflow:hidden;box-sizing:border-box}
body:not(.signed-out) .history-gallery .history-thumbnail img{position:absolute;inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);max-width:none;max-height:none;margin:0;object-fit:contain;border:0;border-radius:9px;filter:none;box-shadow:none}
.history-gallery .history-pending{padding:16px;overflow:auto;line-height:1.7}
.history-gallery>video{object-fit:contain}
.history-pagination{flex-wrap:wrap;margin:22px 0 28px}
.history-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;flex-shrink:0}
.history-toolbar select{width:auto;flex:0 1 180px;min-width:150px;min-height:36px}
.history-date-wrap{position:relative}
.history-date-popover{position:absolute;z-index:12;top:calc(100% + 8px);left:0;width:min(340px,calc(100vw - 32px));padding:14px;border:1px solid #93b1d344;border-radius:12px;background:#182333;box-shadow:0 16px 40px #0008}
.history-date-popover .gallery-date-heading{margin:0}
.history-date-popover .gallery-date-hint{font-size:11px;line-height:1.5}
.history-date-popover .gallery-dates{max-height:70px;overflow:auto}
.history-restorable{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0}
.history-restorable>.history-thumbnail,.history-restorable>.history-pending,.history-restorable>video{flex:0 0 auto}
.history-restorable .history-restore{align-self:stretch}
@media(max-width:520px){.history-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.history-gallery .history-pending{padding:12px}}
/* Fill the viewport even when a management page has only a few cards. */
html:has(body:not(.signed-out)){background:#101319;min-height:100%}
body:not(.signed-out){min-height:100vh;min-height:100dvh}
body:not(.signed-out)>main{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
body:not(.signed-out) #platform-view:not([hidden]){flex:1}
body:not(.signed-out) main>.page-footer{margin-top:auto}
@media(max-width:720px){body:not(.signed-out)>main{min-height:calc(100dvh - 67px)}}
/* History is a viewport workspace: scroll records, keep pagination at the bottom. */
body:has(#platform-view:not([hidden]) .history-gallery){overflow:hidden}
body:has(#platform-view:not([hidden]) .history-gallery)>main{height:100dvh;min-height:0;overflow:hidden}
body:has(#platform-view:not([hidden]) .history-gallery)>main>header{flex-shrink:0}
body:not(.signed-out) #platform-view:has(.history-gallery){display:flex;flex-direction:column;flex:1;min-height:0;padding-bottom:0}
#platform-view:has(.history-gallery)>.manage-intro,#platform-view:has(.history-gallery)>.history-filters,#platform-view:has(.history-gallery)>.history-summary{flex-shrink:0}
.history-gallery{flex:0 1 auto;min-height:0;overflow-y:auto;align-content:start;grid-auto-rows:max-content;padding:2px 8px 2px 0;grid-template-columns:repeat(auto-fill,150px)}
.history-gallery .history-thumbnail::before{content:'';display:block;padding-top:calc(133.333333% - 0.666667px)}
.history-pagination{flex-shrink:0;margin:0;padding:16px 0;background:#101319;border-top:0}
body:has(#platform-view:not([hidden]) .history-gallery) main>.page-footer{display:none}
@media(max-width:720px){body:has(#platform-view:not([hidden]) .history-gallery)>main{height:calc(100dvh - 67px);min-height:0}}
@media(max-width:520px){.history-gallery{grid-template-columns:repeat(auto-fill,150px)}}
/* Empty space remains available for marquee selection below the cards. */
.material-grid{position:relative;min-height:55vh;align-content:start;outline:none}
.material-grid.is-selecting{user-select:none;cursor:crosshair}
.material-selection-box{position:absolute;z-index:5;pointer-events:none;border:1px solid #91bff0;background:#79b4ff22;border-radius:3px}
body:not(.signed-out) .material-toolbar button[aria-pressed="true"]{background:#b83244;border-color:#ef7a88;color:#fff}
body:not(.signed-out) .material-toolbar button[aria-pressed="true"]:hover{background:#ce3b4e;border-color:#ff9ca7;color:#fff}
.material-grid.selection-mode .material-preview{cursor:pointer}
.group-dialog{width:min(400px,calc(100vw - 32px));padding:26px;border:1px solid #93b1d344;border-radius:16px;background:#1b2533;color:#e1e8f2;box-shadow:0 24px 70px #0008}
.group-dialog::backdrop{background:#060b14b8;backdrop-filter:blur(4px)}
.group-dialog h2{font-size:18px;margin:0 0 24px}
.group-dialog label{display:block;margin-bottom:10px;font-size:12px}
.group-dialog input{width:100%;padding:12px;border-radius:8px;border:1px solid #93b1d344;background:#101925;color:#e1e8f2}
.group-dialog-error{min-height:18px;font-size:12px;color:#ffb4b4}
.group-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.group-dialog-actions button{padding:9px 20px;border-radius:8px}
.group-dialog-actions button[type=submit]{background:#365a85;color:#edf5ff;border-color:#91bff066}
.material-group-nav{display:flex;flex:1 1 320px;min-width:0;max-width:100%;gap:8px;align-items:center;margin-left:auto;padding:5px 2px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#435570 transparent}
.material-group-nav .small-button{flex:0 0 auto;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:8px;padding:9px 14px}
body:not(.signed-out) .material-group-nav button[aria-current="page"]{background:#365a85;border-color:#91bff077;color:#edf5ff}
@media(max-width:720px){.material-group-nav{flex-basis:100%;margin-left:0}}
/* Every workspace view uses the full available desktop width. */
body:not(.signed-out)>main{max-width:none;min-width:0}
/* Group navigation sits between the actions and the material grid. */
#platform-view>.material-group-nav{flex:none;width:100%;margin:0 0 16px;padding:5px 2px;min-height:44px}
.material-picker{width:min(900px,94vw);max-width:94vw;max-height:88dvh;padding:22px;border:1px solid #93b1d344;border-radius:18px;background:#18212e;color:#dce8f7;overflow:auto}
.material-picker::backdrop{background:#060b14ba;backdrop-filter:blur(5px)}
.image-prompt-picker .prompt-picker-search{display:block;width:100%;margin:20px 0 14px;padding:11px 12px;border:1px solid #93b1d344;border-radius:8px;background:#101925;color:#dce8f7}
.image-prompt-picker-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:12px;max-height:48dvh;min-height:100px;overflow:auto;padding:4px}
.image-prompt-choice{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:0;padding:14px;text-align:left;border:1px solid #93b1d344;border-radius:10px;background:#101925;color:#dce8f7}
.image-prompt-choice span{font-size:12px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow:auto;color:#b9cee8}
.image-prompt-choice strong{overflow-wrap:anywhere}
.image-prompt-choice[aria-pressed=true]{border-color:#91bff0;background:#233850}
.image-prompt-choice:focus-visible{outline:2px solid #bad8ff;outline-offset:2px}
.picker-heading,.picker-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}
.picker-heading h2{font-size:18px}.picker-heading button{font-size:22px;padding:2px 10px}
.material-picker .material-group-nav{flex:none;margin:16px 0;width:100%}
.picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;max-height:48dvh;overflow:auto;padding:4px;min-height:100px}
.picker-card{position:relative;aspect-ratio:3/4;border:1px solid #93b1d344;border-radius:10px;background:#101925;padding:8px;display:flex;align-items:center;justify-content:center;min-width:0}
.material-picker .picker-card img{width:auto;height:auto;max-width:100%;max-height:100%;margin:0;border-radius:8px;object-fit:contain}
.picker-card[aria-pressed=true]{border-color:#91bff0;outline:1px solid #91bff0;background:#233850}
.picker-check{position:absolute;top:7px;right:7px;background:#91bff0;color:#102038;border-radius:4px;padding:1px 4px;opacity:0}
.picker-card[aria-pressed=true] .picker-check{opacity:1}
.picker-status{font-size:12px;line-height:1.6;color:#b9cee8;min-height:18px}
.picker-footer{border-top:1px solid #93b1d322;padding-top:14px;font-size:12px}
.picker-footer button{background:#365a85;color:#edf5ff;padding:10px 16px;border:1px solid #91bff055;border-radius:8px}
@media(max-width:520px){.material-picker{padding:14px}.picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Clean single-border selection with a crisp circular check badge. */
.material-picker .picker-card[aria-pressed=true]{border:1px solid #91bff0;outline:none;background:#1b2b40;box-shadow:none}
.material-picker .picker-card:focus-visible{outline:2px solid #bad8ff;outline-offset:2px}
.material-picker .picker-check{top:7px;right:7px;width:19px;height:19px;padding:0;border:1px solid #cce3ff;border-radius:50%;background:#5489c4;color:#fff;font-size:0;display:grid;place-items:center;pointer-events:none}
.material-picker .picker-check::after{content:'';width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg)}
/* Square selection marker with a green check. */
.material-picker .picker-check{border-radius:3px;background:#f0f5f2;border:1px solid #b5c8bc;color:#248447}
.material-picker .picker-check::after{border-left-color:#248447;border-bottom-color:#248447}
/* Balanced, rounded SVG check instead of a rotated CSS corner. */
.material-picker .picker-check::after{content:none}
.material-picker .picker-check svg{display:block;width:17px;height:17px}
.material-picker .picker-check{background:#f5f8f6;border-color:#c4d3c9;color:#27824b}
/* Material preview: red close badge and no download footer. */
body:not(.signed-out) #close-preview{background:#dc3545;color:#fff;border:1px solid #ff9ca7;width:27px;height:27px;padding:0;display:grid;place-items:center;font-size:0;z-index:2}
body:not(.signed-out) #close-preview::before,body:not(.signed-out) #close-preview::after{content:'';position:absolute;left:50%;top:50%;width:12px;height:2px;background:#fff;border-radius:1px;transform:translate(-50%,-50%) rotate(45deg)}
body:not(.signed-out) #close-preview::after{transform:translate(-50%,-50%) rotate(-45deg)}
body:not(.signed-out) #close-preview:hover{background:#bd2130}
#preview #preview-download{display:none}
#preview #preview-image{margin-bottom:0}
/* Inset preview close control with room above the rounded image. */
body:not(.signed-out) #preview{padding:44px 20px 20px;border-radius:16px}
body:not(.signed-out) #close-preview{top:10px;right:12px;width:25px;height:25px;outline-offset:2px}
body:not(.signed-out) #close-preview:focus:not(:focus-visible){outline:none}
body:not(.signed-out) #close-preview:focus-visible{outline:2px solid #b9d9ff;outline-offset:2px}
#preview #preview-image{border-radius:12px;max-height:calc(90dvh - 66px)}
/* Position the close badge over the image's upper-right inset. */
body:not(.signed-out) #close-preview{top:64px;right:40px}
/* Close material previews through the backdrop or Escape. */
body:not(.signed-out) #preview #close-preview{display:none}
.video-grid textarea{width:100%;box-sizing:border-box;resize:vertical;border:1px solid #93b1d33d;border-radius:10px;padding:14px;font:inherit;line-height:1.7}
.video-grid .video-field{color:#c8d5e7}
.video-references{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.video-reference{width:78px;text-align:center}.video-reference img{width:78px;height:104px;object-fit:contain;border-radius:8px;background:#101925}.video-reference .small-button{padding:4px 8px}
.video-job{padding:18px 0;border-top:1px solid #93b1d333;overflow-wrap:anywhere}.video-job video{display:block;width:100%;max-height:560px;background:#0e131a;border-radius:12px;margin:14px 0}.video-job a{display:inline-block;text-decoration:none}
.video-library-actions{display:flex;gap:8px;align-items:center}.video-library-button{padding:10px 14px;border:1px solid #93b1d344;border-radius:8px;background:#233044;color:#cfdef1;white-space:nowrap}.video-library-button:hover:not(:disabled){background:#334965;border-color:#a8cfff88}.video-prompt-picker{width:min(680px,92vw);max-width:92vw;max-height:82dvh;padding:22px;border:1px solid #93b1d344;border-radius:16px;background:#18212e;color:#dce8f7}.video-prompt-picker::backdrop{background:#060b14ba;backdrop-filter:blur(5px)}.video-prompt-picker h2{font-size:18px;margin:0 0 16px}.video-prompt-picker>.small-button{float:right;margin-top:-36px}.video-prompt-picker-status{min-height:20px;color:#9dafc6;font-size:12px}.video-prompt-picker-list{display:grid;gap:10px;max-height:58dvh;overflow:auto}.video-prompt-choice{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:12px;border:1px solid #93b1d344;border-radius:9px;background:#101925;color:#dce8f7;text-align:left}.video-prompt-choice:hover{background:#233850;border-color:#91bff088}.video-prompt-choice strong{font-size:13px}.video-prompt-choice span{font-size:11px;line-height:1.6;color:#a9bed8;white-space:pre-wrap;overflow-wrap:anywhere}
.tenant-delete.small-button{background:#ae3044;color:#fff;border-color:#d75469}
.tenant-delete-dialog{width:min(440px,calc(100vw - 48px));box-sizing:border-box;padding:28px;border:1px solid #44566c;border-radius:16px;background:#1b2330;color:#e1e8f2}.tenant-delete-dialog::backdrop{background:#0009}.tenant-delete-dialog p{line-height:1.8}.tenant-delete-dialog input{display:block;box-sizing:border-box;width:100%;margin:12px 0 24px;padding:12px;background:#101925;color:#fff;border:1px solid #44566c;border-radius:8px}.tenant-delete-dialog button{margin-right:12px}
.management-grid + .tenant-list{margin-top:24px}
.credit-receipt{width:min(440px,calc(100vw - 40px));box-sizing:border-box;padding:30px;border:1px solid #44566c;border-radius:18px;background:#1b2330;color:#e1e8f2;text-align:center}.credit-receipt::backdrop{background:#0009}.credit-receipt-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border:1px solid #60d59b45;border-radius:50%;background:#60d59b14;color:#60d59b;font-size:0;box-sizing:border-box}.credit-receipt-icon::after{content:"";width:11px;height:21px;border:solid currentColor;border-width:0 3px 3px 0;transform:translateY(-3px) rotate(45deg);border-radius:1px}.credit-receipt h2{font-size:22px;margin:10px 0}.credit-receipt>p{color:#a7bedc;overflow-wrap:anywhere}.credit-receipt-values{margin:24px 0;text-align:left}.credit-receipt-values>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #93b1d326;font-size:13px}.credit-receipt-values dt{color:#a7bedc}.credit-receipt-values dd{margin:0;text-align:right;font-weight:600}.credit-receipt-values>div:last-child dd{color:#60d59b}.credit-receipt>.small-button{width:100%;padding:12px}
.model-category + .model-category{margin-top:36px;padding-top:28px;border-top:1px solid #93b1d326}.model-category>h2{font-size:20px;margin:0 0 8px}.model-category>p{font-size:13px;color:#9dafc6;margin:0 0 20px}
body:not(.signed-out) .model-card .model-duration{font-size:13px;color:#bdd9ff;line-height:1.7;padding:10px 12px;background:#101925;border-radius:8px}
.model-order-actions{display:flex;justify-content:flex-end;gap:8px;margin-bottom:14px}#platform-view>.small-button+.model-category{margin-top:20px}

/* Pixel avatars and personal account information. */
.members-grid{margin-top:24px;grid-template-columns:repeat(auto-fill,minmax(0,min(100%,420px)));align-items:start}
.sidebar .account-avatar-button{border:1px solid #98c8ff38;background:#253349;border-radius:12px;width:44px;height:44px;padding:0;align-self:center;flex-shrink:0;overflow:hidden;letter-spacing:0;box-shadow:0 2px 8px #0002;transition:transform .15s,border-color .15s}
.sidebar .account-avatar-button:hover{transform:translateY(-1px);border-color:#99bfff}
.account-avatar-image{display:block;width:100%;height:100%;object-fit:cover;image-rendering:pixelated}
.account-profile{display:flex;align-items:center;gap:24px;margin-bottom:24px}
.account-profile-avatar{flex-shrink:0;border-radius:16px;image-rendering:pixelated}
.account-profile-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 36px;margin:0;flex:1;min-width:0}
.account-profile-details dt{font-size:12px;color:var(--muted);margin-bottom:6px}
.account-profile-details dd{margin:0;font-size:14px;overflow-wrap:anywhere}
.account-password-note{font-size:12px;color:var(--muted)}
@media(max-width:720px){.sidebar .account-avatar-button{width:36px;height:36px;border-radius:10px}.account-profile{align-items:flex-start;gap:16px}.account-profile-details{grid-template-columns:1fr;gap:14px}.account-profile-avatar{width:64px;height:64px}}
@media(prefers-reduced-motion:reduce){.sidebar .account-avatar-button{transition:none}}
.member-delete-actions button{margin:0}body:not(.signed-out) .member-usage{border-color:#93b1d333}body:not(.signed-out) .member-usage strong{color:#e1e8f2}body:not(.signed-out) .member-status.is-active{background:#214d37;color:#a9e5bd}body:not(.signed-out) .member-status.is-paused{background:#553b25;color:#f3c28e}body:not(.signed-out) .member-toggle{background:#233247;color:#dce8f8;border-color:#93b1d355}body:not(.signed-out) .member-delete-dialog{border-color:#44566c;background:#1b2330;color:#e1e8f2}body:not(.signed-out) .member-delete-dialog .member-delete{background:#5d2932;color:#ffdadd;border-color:#b9646d}
.member-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:16px 20px}.member-card.is-pending{opacity:.7}.member-identity{padding-right:88px}.member-identity-heading{display:flex;align-items:center;gap:8px;min-width:0}.member-identity-heading h3{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:7px}.member-identity p{margin:0}.member-remark{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 7px;border-radius:999px;background:#edf2f8;color:#627590;font-size:10px}.member-remark-edit{flex:0 0 auto;border:0;background:transparent;color:#6682a4;font-size:10px;padding:3px 0;white-space:nowrap}.member-remark-editor{display:flex;gap:7px;align-items:center;margin-top:8px}.member-remark-editor input{flex:1;min-width:0}.member-remark-editor button{flex:0 0 auto;border:1px solid #cbd7e5;border-radius:6px;background:#f2f6fb;color:#536d8c;padding:8px 10px;font-size:10px}.member-remark-editor .member-remark-cancel{background:transparent}.member-status{position:absolute;right:22px;top:22px;border-radius:999px;padding:4px 9px;font-size:10px}.member-status.is-active{background:#dff3e7;color:#237342}.member-status.is-paused{background:#f4e7d9;color:#97602c}.member-usage{display:flex;align-items:baseline;gap:10px;padding:10px 0 0;border-top:1px solid #e6ebf1}.member-usage span,.member-usage small{font-size:10px;color:#7c8898}.member-usage strong{font-size:17px;font-weight:500;color:#43556f}.member-owner-note{margin:0;color:#7b8797;font-size:11px}.member-actions{display:flex;gap:9px;margin-top:auto}.member-actions button{flex:1}.member-toggle{background:#e7edf5}.member-delete,.member-delete-dialog .member-delete{background:#f9e4e5;color:#a23d49;border-color:#e7b4b7}.member-action-error{margin:0;color:#b53e48;font-size:11px;line-height:1.6}.member-delete-dialog{width:min(430px,calc(100vw - 48px));box-sizing:border-box;padding:26px;border:1px solid #d9dfe7;border-radius:14px;background:#fff;color:#27364b}.member-delete-dialog::backdrop{background:#0008}.member-delete-dialog h2{margin:0 0 12px;font-size:17px}.member-delete-dialog p{line-height:1.8;font-size:12px}.member-delete-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.member-delete-actions button{margin:0}
.member-images-dialog{width:min(1600px,96vw);max-width:96vw;height:min(92dvh,1100px);box-sizing:border-box;padding:22px;border:1px solid #93b1d344;border-radius:16px;background:#182333;color:#e1e8f2;overflow:hidden}.member-images-dialog[open]{display:flex;flex-direction:column}.member-images-dialog::backdrop,.member-image-preview::backdrop{background:#060b14b8;backdrop-filter:blur(4px)}.member-images-header{display:flex;align-items:center;gap:16px;margin-bottom:14px;flex-shrink:0}.member-images-header h2{margin:0;font-size:20px}.member-images-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:12px;flex-shrink:0}.member-images-toolbar input{min-height:36px}.member-images-dialog .history-summary{flex:none}.member-images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-auto-rows:max-content;align-items:start;gap:16px;overflow-y:auto;flex:1;min-height:0;height:auto;align-content:start;padding:2px 6px 16px 0}.member-images-grid .history-thumbnail{position:relative;display:block;width:100%;height:auto;min-height:0;aspect-ratio:3/4;box-sizing:border-box;border:1px solid #93b1d344;border-radius:12px;background:#10172080;overflow:hidden;padding:0}.member-images-grid .history-thumbnail img{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);object-fit:contain}.member-image-preview{width:min(900px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:18px;border:1px solid #93b1d344;border-radius:16px;background:#182333;color:#e1e8f2}.member-image-preview img{display:block;max-width:100%;max-height:calc(100dvh - 130px);margin:12px auto;object-fit:contain}.member-image-preview .small-button{display:inline-block;text-decoration:none}@media(max-width:520px){.member-images-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);padding:14px}.member-images-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.member-images-grid .history-thumbnail{min-width:0}}
.member-images-header{align-items:center}.member-images-toolbar{margin:0 0 0 auto}.member-images-dialog .history-pagination{display:none;padding:4px 0;background:transparent}.member-images-dialog .history-pagination:not(:empty){display:flex}.member-images-grid .history-thumbnail img,body:not(.signed-out) .member-images-grid .history-thumbnail img{border:0;box-shadow:none}.member-date-popover{left:auto!important}@media(max-width:520px){.member-images-header{flex-wrap:wrap}.member-images-toolbar{margin-left:0}}
.member-images-header{position:relative}.member-date-popover{position:absolute;z-index:20;top:calc(100% + 8px);right:0;width:min(340px,calc(100vw - 32px));padding:14px;border:1px solid #93b1d344;border-radius:12px;background:#182333;box-shadow:0 16px 40px #0008}.member-date-popover .gallery-date-heading{margin:0}.member-date-popover .gallery-date-hint{font-size:11px;line-height:1.5}
.price-fields .size-price-field{display:flex;flex-direction:column;gap:5px}.price-fields .size-price-field .size-enabled{width:16px!important;min-height:16px;padding:0;margin:0 0 2px}.price-fields .size-price-field input[type=number]{width:100%;box-sizing:border-box}
.model-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.model-card-header h3{min-width:0;margin:0}.model-card-header .model-order-actions{flex:0 0 auto;margin:0}.model-request-ids{margin:0 0 12px;font-size:10px;line-height:1.7;color:#808da0;overflow-wrap:anywhere}.model-request-ids>div{min-height:17px}.price-fields .size-price-field{flex:1;min-width:0;gap:7px}.price-fields .size-enable-row{display:flex;align-items:center;gap:8px;margin:0;font-size:10px;color:#69788e;white-space:nowrap}.price-fields .size-enable-row .size-enabled{flex:0 0 auto}.price-fields .size-price-input{display:block;margin:0;font-size:10px;color:#69788e}.price-fields .size-price-input input{display:block;min-width:0;margin-top:5px}
.model-card{display:flex;flex-direction:column;min-width:0}.model-card>.generate{margin-top:auto}
.member-identity{min-width:0;padding-right:0}.member-identity-heading{width:100%;align-items:center}.member-identity-heading h3{margin:0;line-height:1.25}.member-remark{flex:0 1 auto;min-width:0;max-width:min(140px,30%);text-align:center;line-height:1.25}.member-remark-edit{text-align:center;line-height:1.25}.member-status{position:static;flex:0 0 auto;margin-left:auto;line-height:1.25;text-align:center;white-space:nowrap}
.member-remark,.member-remark-edit,.member-status{box-sizing:border-box;border-radius:999px;padding:6px 12px}

/* Signed-out landing page: a quiet, design-led studio entrance. */
html:has(body.signed-out){background:#071426}
body.signed-out{min-height:100vh;min-height:100dvh;overflow-x:hidden;background:#071426;color:#f3f7ff}
body.signed-out .auth-screen{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);align-items:center;gap:clamp(56px,8vw,128px);width:min(1280px,100%);min-height:100vh;min-height:100dvh;margin:0 auto;padding:96px 56px 64px;box-sizing:border-box}
body.signed-out .auth-screen[hidden]{display:none!important}
body.signed-out .home-meta{position:absolute;top:32px;left:56px;display:flex;align-items:center;gap:12px;color:#a9c4e2;font-size:11px;letter-spacing:.2em;text-transform:uppercase}
body.signed-out .home-meta .brand-mark{display:grid;place-items:center;width:28px;height:30px;border-radius:9px 9px 9px 3px;background:linear-gradient(145deg,#dcefff,#73b7f0);color:#102944;font-size:12px;box-shadow:0 8px 24px #56a9ef2b}
body.signed-out .auth-art{position:relative;min-height:0;overflow:visible;padding:0}
body.signed-out .auth-art>.brand-mark{display:none}
body.signed-out .auth-art .eyebrow{margin:0 0 16px;color:#8db3d8;letter-spacing:.22em}
body.signed-out .auth-art h1{max-width:650px;margin:0;color:#f3f7ff;font-size:clamp(40px,5vw,52px);line-height:1.08;letter-spacing:-.045em;font-weight:600}
body.signed-out .auth-art h1::after{display:none}
body.signed-out .auth-art>p:last-of-type{max-width:520px;margin:22px 0 0;color:#a7bad0;font-size:15px;line-height:1.8}
body.signed-out .home-artwork{position:relative;width:min(100%,500px);height:160px;margin:50px 0 28px;isolation:isolate}
body.signed-out .home-artwork i{position:absolute;display:block;border-radius:26px;box-shadow:0 22px 44px #020a1829;transform:rotate(var(--tilt));transition:transform .35s ease,filter .35s ease}
body.signed-out .home-artwork i:nth-child(1){inset:12px 15% 20px 2%;--tilt:-7deg;background:linear-gradient(135deg,#2f87e7,#1552ad 72%);z-index:1}
body.signed-out .home-artwork i:nth-child(2){inset:24px 1% 8px 25%;--tilt:6deg;background:linear-gradient(135deg,#73c4ff,#2f78df 58%,#183a90);z-index:2;opacity:.92}
body.signed-out .home-artwork i:nth-child(3){inset:0 29% 28px 39%;--tilt:-1deg;background:linear-gradient(145deg,#d6efff,#72bdf2 53%,#2865c1);z-index:3;opacity:.9}
body.signed-out .home-artwork:hover i:nth-child(1){transform:rotate(-9deg) translate(-3px,2px)}
body.signed-out .home-artwork:hover i:nth-child(2){transform:rotate(8deg) translate(3px,-2px)}
body.signed-out .home-artwork:hover i:nth-child(3){transform:rotate(1deg) translateY(-3px)}
body.signed-out .home-features{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0;color:#89a7c7;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
body.signed-out .home-features span{position:relative;padding-left:12px}
body.signed-out .home-features span::before{content:"";position:absolute;left:0;top:50%;width:4px;height:4px;border-radius:50%;background:#5ba9ef;transform:translateY(-50%)}
body.signed-out .auth-card{position:relative;width:100%;max-width:440px;box-sizing:border-box;margin-left:auto;padding:clamp(30px,4vw,48px);overflow:hidden;background:#f4f7fb;border:1px solid #d9e2ed;border-radius:20px;color:#1a2b42;box-shadow:0 24px 70px #020b1c3b;animation:home-card-in .55s ease-out both}
body.signed-out .auth-card::before{display:none}
body.signed-out .auth-card .eyebrow{color:#6e85a0;letter-spacing:.18em}
body.signed-out .auth-card h2{margin:18px 0 8px;color:#14253b;font-weight:600;letter-spacing:-.025em}
body.signed-out .auth-card>p{color:#64758a}
body.signed-out .auth-card label{color:#42566e}
body.signed-out .auth-card input{border-color:#d2ddea;background:#fff;color:#172b43;box-shadow:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
body.signed-out .auth-card input::placeholder{color:#91a0b2}
body.signed-out .auth-card input:focus{outline:0;border-color:#3989e8;background:#fff;box-shadow:0 0 0 3px #3989e826}
body.signed-out .auth-card input:-webkit-autofill,body.signed-out .auth-card input:-webkit-autofill:hover,body.signed-out .auth-card input:-webkit-autofill:focus{-webkit-text-fill-color:#172b43;caret-color:#172b43;border-color:#3989e8;-webkit-box-shadow:0 0 0 1000px #fff inset,0 0 0 3px #3989e826;transition:background-color 9999s ease-in-out 0s}
body.signed-out .auth-card .generate{min-height:46px;margin-top:24px;border:1px solid #216fd1;border-radius:9px;background:#176bd1;color:#fff;box-shadow:0 10px 24px #176bd133;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
body.signed-out .auth-card .generate:hover:not(:disabled){background:#0f5fbe;transform:translateY(-1px);box-shadow:0 13px 28px #176bd14a}
body.signed-out .auth-card .generate:disabled{background:#9bb6d5;color:#edf4fc;box-shadow:none}
body.signed-out .auth-foot{color:#718198!important}
body.signed-out .auth-error-note,body.signed-out .auth-card .error{color:#b44f55}
@keyframes home-card-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:800px){body.signed-out .auth-art.infinity-photo{width:100%;height:100%;aspect-ratio:auto}body.signed-out .auth-screen{grid-template-columns:1fr;gap:42px;max-width:600px;padding:88px 28px 44px}body.signed-out .home-meta{left:28px}body.signed-out .auth-art{text-align:left}body.signed-out .auth-art .eyebrow,body.signed-out .auth-art>p:last-of-type{display:block}body.signed-out .home-artwork{margin-top:36px;margin-bottom:24px}body.signed-out .auth-card{max-width:none;margin:0}}
@media(max-width:520px){body.signed-out .auth-screen{gap:28px;padding:78px 18px 32px}body.signed-out .home-meta{top:24px;left:18px;font-size:10px}body.signed-out .auth-art h1{font-size:36px}body.signed-out .auth-art>p:last-of-type{font-size:13px;margin-top:16px}body.signed-out .home-artwork{height:120px;margin:28px 0 22px}body.signed-out .home-artwork i{border-radius:19px}body.signed-out .home-features{gap:9px 16px;font-size:9px}body.signed-out .auth-card{padding:27px 22px;border-radius:16px}}
@media(prefers-reduced-motion:reduce){body.signed-out .auth-card{animation:none}body.signed-out .home-artwork i{transition:none}}
body.signed-out .home-meta{right:56px;justify-content:space-between;letter-spacing:.08em}body.signed-out .home-meta>span:first-child{font-size:18px;color:#eef5ff;font-weight:600}body.signed-out .home-meta b{font-size:9px;letter-spacing:.2em;margin-left:12px;color:#829ab6;font-weight:400}body.signed-out .auth-art h1{line-height:1.3}body.signed-out .auth-art h1 span{color:#72b8ff}body.signed-out .home-artwork>span{position:absolute;left:34px;bottom:30px;z-index:4;font-size:20px;line-height:1.1;letter-spacing:.02em;font-weight:600;color:#f1f8ff}@media(max-width:520px){body.signed-out .home-meta{right:18px}body.signed-out .home-meta>span:last-child{display:none}body.signed-out .home-artwork>span{font-size:16px;bottom:26px}}

/* AI design studio entrance */
html:has(body.signed-out){background:#070c16}
body.signed-out{background:radial-gradient(ellipse at 24% 46%,#11254b 0,transparent 52%),#070c16}
body.signed-out .auth-screen{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);max-width:1380px;gap:clamp(48px,6vw,100px)}
body.signed-out .home-meta{padding-bottom:20px;border-bottom:1px solid #81b5f21a}
body.signed-out .auth-art .eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;color:#83b8fa}
body.signed-out .auth-art .eyebrow::before{content:"";width:6px;height:6px;background:#7edcfa;border-radius:50%;box-shadow:0 0 12px #71d8ff}
body.signed-out .auth-art h1{font-size:clamp(42px,4.6vw,64px);font-weight:600;line-height:1.2;letter-spacing:-.035em}
body.signed-out .auth-art h1 span{background:linear-gradient(100deg,#effaff,#72b9ff 55%,#5983ff);background-clip:text;-webkit-text-fill-color:transparent}
body.signed-out .auth-art>p:last-of-type{font-size:14px;line-height:1.9;color:#92a6c1;margin-top:22px}
.ai-showcase{margin:30px 0 24px;border:1px solid #7aa9e82b;border-radius:14px;overflow:hidden;background:#0b1426;box-shadow:0 24px 70px #00000035}
.ai-showcase-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #77a7e51a;font-size:8px;letter-spacing:.15em;color:#7d96b9}
.ai-showcase-bar i{display:inline-block;width:5px;height:5px;margin-right:6px;background:#7dcbff;border-radius:50%}
.ai-scene{position:relative;overflow:hidden}.ai-scene svg{display:block;width:100%;height:auto}
.ai-art-label,.ai-art-index{position:absolute;font:8px monospace;letter-spacing:.1em;color:#6a88af;bottom:14px;left:16px}.ai-art-index{left:auto;right:16px}
.ai-prompt{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#111e33;border-top:1px solid #7baaff1a;font-size:11px;color:#b6c9e2}.ai-prompt-icon{color:#87cdff;font-size:20px}.ai-prompt-tag{margin-left:auto;white-space:nowrap;font-size:9px;color:#7191b9;border:1px solid #648ac33d;border-radius:4px;padding:4px 6px}
.ai-ribbon{transform-origin:center;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.ai-showcase:hover .ai-ribbon{transform:translateY(-4px) rotate(-3deg)}
body.signed-out .auth-card{background:linear-gradient(145deg,#132035,#0c1424);border:1px solid #7ba7e330;box-shadow:0 30px 90px #0006,inset 0 1px #d4eaff0a;border-radius:18px;padding:38px}
body.signed-out .auth-card h2{color:#eaf3ff;font-size:25px}body.signed-out .auth-card .eyebrow{color:#6d9fd4}body.signed-out .auth-card>p{color:#8ea2be}body.signed-out .auth-card label{color:#afc0d5}
body.signed-out .auth-card input{background:#080f1d;border-color:#5f83af38;color:#edf6ff;min-height:46px;border-radius:7px}body.signed-out .auth-card input:focus{background:#0a1526;border-color:#5ca6ff;box-shadow:0 0 0 3px #3989e81f}
body.signed-out .auth-card input:-webkit-autofill,body.signed-out .auth-card input:-webkit-autofill:hover,body.signed-out .auth-card input:-webkit-autofill:focus{-webkit-text-fill-color:#e4efff;caret-color:#e4efff;-webkit-box-shadow:0 0 0 1000px #0a1526 inset,0 0 0 1px #4a78ae55;border-color:#527caf}
body.signed-out .auth-card .generate{background:linear-gradient(110deg,#267bee,#3b67ed);border-color:#568cf3;box-shadow:0 8px 28px #1b66ea30;min-height:48px}body.signed-out .auth-card .generate:hover:not(:disabled){background:linear-gradient(110deg,#368eff,#507cff)}body.signed-out .auth-foot{color:#7086a4!important}
@media(max-width:800px){body.signed-out .auth-art.infinity-photo{width:100%;height:100%;aspect-ratio:auto}body.signed-out .auth-screen{grid-template-columns:1fr;max-width:600px;gap:32px}.ai-showcase{margin-top:24px}body.signed-out .auth-card{max-width:none}}
@media(max-width:520px){body.signed-out .auth-art h1{font-size:42px}body.signed-out .auth-card{padding:28px 22px}.ai-showcase-bar>span:last-child{display:none}.ai-prompt{font-size:10px;padding:10px}.ai-prompt-tag{display:none}}
@media(prefers-reduced-motion:reduce){.ai-ribbon{transition:none}.ai-showcase:hover .ai-ribbon{transform:none}}


/* Original infinity artwork, layered behind the authentication card. */
html:has(body.signed-out),body.signed-out{background:#020504}
body.signed-out .auth-screen{position:relative;isolation:isolate;width:100%;max-width:none;min-height:100dvh;grid-template-columns:1fr minmax(320px,420px);gap:0;padding:100px max(7vw,28px) 70px;padding-right:23vw;background:transparent}
body.signed-out .home-meta{z-index:2;left:7vw;right:7vw}
body.signed-out .auth-art.infinity-photo{position:absolute;inset:auto;top:50%;left:50%;width:min(100%,177.7778dvh);aspect-ratio:16/9;transform:translate(-50%,-50%) scale(.75);z-index:-1;min-height:0;overflow:hidden;pointer-events:none;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent),linear-gradient(to bottom,transparent,#000 12%,#000 88%,transparent);mask-composite:intersect}
.infinity-photo-base,.infinity-photo-light{position:absolute;inset:0;background:url('/login-infinity-v1.webp') center/contain no-repeat;transform-origin:center}
body.signed-out .infinity-photo-base{animation:infinity-photo-breathe 7s ease-in-out infinite}

body.signed-out .auth-card{grid-column:2;z-index:1;width:100%;max-width:420px;margin:0;background:linear-gradient(145deg,#111d30eb,#0b1425f0);backdrop-filter:blur(18px);box-shadow:0 24px 80px #0008;border-color:#85b7e533}
@keyframes infinity-photo-breathe{0%,100%{filter:brightness(.65)}50%{filter:brightness(1.05)}}

@media(max-width:800px){body.signed-out .auth-art.infinity-photo{width:100%;height:100%;aspect-ratio:auto}body.signed-out .auth-screen{grid-template-columns:1fr;padding:100px 24px 40px;align-content:center}body.signed-out .auth-card{grid-column:1;justify-self:center}body.signed-out .infinity-photo-base,body.signed-out .infinity-photo-light{background-size:auto 85vh;background-position:center}body.signed-out .home-meta{left:24px;right:24px}}
@media(prefers-reduced-motion:reduce){body.signed-out .infinity-photo-base,body.signed-out .infinity-photo-light{animation:none}body.signed-out .infinity-photo-base{filter:brightness(.8)}body.signed-out .infinity-photo-light{display:none}}

body:not(.signed-out) .video-studio-page .video-controls .video-clear-button{background:#bd3544;color:#fff;border-color:#ef6470}body:not(.signed-out) .video-studio-page .video-controls .video-clear-button:hover:not(:disabled){background:#d13d4e}

.video-studio-page .video-controls .video-clear-button{box-sizing:border-box;width:81px;flex:0 0 81px;padding-inline:0}@media(max-width:720px){.video-studio-page .video-controls .video-clear-button{width:69px;flex-basis:69px}}

/* Video reference cards float above the composer, matching image creation. */
.video-studio-page .video-composer .video-references{position:absolute;bottom:calc(100% + 10px);left:16px;right:16px;display:flex;flex-wrap:nowrap;gap:26px;margin:0;padding:6px 4px;overflow-x:auto;overflow-y:hidden;max-height:126px}
.video-studio-page .video-composer .video-references:empty{display:none}
.video-references .video-reference{position:relative;flex:0 0 78px;width:78px;height:104px;box-sizing:border-box;border:1px solid #93b1d366;border-radius:10px;background:#101925;overflow:hidden;box-shadow:0 3px 12px #0005}
.video-references .video-reference img{display:block;width:100%;height:100%;object-fit:contain;border-radius:9px}
.video-references .video-reference small{position:absolute;bottom:4px;left:4px;background:#10283ed9;color:#e6f3ff;border-radius:3px;padding:1px 3px;font-size:9px}
.video-references .video-reference .small-button{position:absolute;top:3px;right:3px;width:20px;height:20px;padding:0;border-radius:50%;background:#152335df;color:#fff;opacity:0}
.video-references .video-reference:hover .small-button,.video-references .video-reference:focus-within .small-button{opacity:1}
@media(hover:none){.video-references .video-reference .small-button{opacity:1}}
@media(max-width:720px){.video-studio-page .video-composer .video-references{left:12px;right:12px;gap:12px}.video-references .video-reference{flex-basis:66px;width:66px;height:88px}}
/* Match the bright image-reference cards. */
.video-studio-page .video-composer .video-references{gap:8px;padding:10px 8px 8px;max-height:136px}
.video-references .video-reference{border:3px solid #182b40;background:#08b5ed;border-radius:10px;overflow:visible;box-shadow:0 0 0 1px #6284a4,0 0 8px #70baff55}
.video-references .video-reference img{border-radius:7px}
.video-references .video-reference small{display:none}
.video-references .video-reference .small-button{top:-9px;right:-9px;width:21px;height:21px;border:1px solid #ffb4b4;background:#dc3545;color:#fff;z-index:2;font-size:18px;line-height:18px;display:grid;place-items:center}
.video-references .video-reference .small-button:hover{background:#bd2130}
.video-references .video-reference{transition:scale .16s ease;scale:1;transform-origin:center}
.video-references .video-reference-uploading{opacity:.72}
.video-references .video-reference-failed{border-color:#dc3545;background:#351b25}
.video-references .video-reference .video-reference-status{display:block;position:absolute;left:4px;right:4px;bottom:4px;padding:3px 4px;border-radius:4px;background:#10283ee8;color:#f2d7d7;font-size:9px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}
.video-references .video-reference-uploading .video-reference-status{color:#d6eaff}
.video-references .video-reference .video-reference-retry{position:absolute;left:4px;right:4px;top:50%;width:auto;height:24px;padding:0 7px;border:1px solid #ffb4b4;border-radius:5px;background:#dc3545;color:#fff;font-size:10px;z-index:2}
.video-references .video-reference .video-reference-retry:hover:not(:disabled){background:#bd2130}
.video-references .video-reference:hover,.video-references .video-reference:focus-within{scale:1.07;z-index:3}
.video-studio-page .video-composer .video-references{padding-top:14px;padding-bottom:12px;max-height:144px}
@media(prefers-reduced-motion:reduce){.video-references .video-reference{transition:none}}
.video-reference[draggable=true]{cursor:grab}.video-reference.dragging{opacity:.45;scale:1;cursor:grabbing}.video-reference.reorder-target{outline:2px solid #8cdcff;outline-offset:3px}

.video-composer .video-timing-header{margin-bottom:10px}.video-timing-header .video-library-actions{margin-left:auto;flex-shrink:0}.video-timing-header .video-timing-row{padding-left:91px}.video-timing-header .video-library-button{background:#1c293b;border-radius:9px}@media(max-width:720px){.video-timing-header .video-timing-row{padding-left:0}}

/* Compact duration toolbar above the prompt. */
.video-studio-page .video-composer .video-timing-header{margin:0 0 10px;padding:0;gap:0}
.video-studio-page .video-timing-header .video-timing-row{padding:0;gap:16px;min-height:40px;align-items:center}
.video-studio-page .video-controls.video-timing-header .video-field.duration-field{margin:0;flex:0 1 380px;width:380px;min-width:180px;height:38px;padding:0 0 10px;gap:10px}
.video-studio-page .video-timing-header .video-duration-ticks{bottom:0;height:12px}
.video-studio-page .video-timing-header .video-duration-tick{font-size:8px;color:#879bb4}
.video-studio-page .video-timing-header .video-field.duration-field output{font-size:12px;font-weight:500;color:#bed6ef}
body:not(.signed-out) .video-studio-page .video-timing-header input[type=range]{appearance:none;-webkit-appearance:none;outline-offset:2px}
body:not(.signed-out) .video-studio-page .video-timing-header input[type=range]::-webkit-slider-runnable-track{height:3px;background:#526980;border-radius:4px}
body:not(.signed-out) .video-studio-page .video-timing-header input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:12px;height:12px;margin-top:-4.5px;border:2px solid #cee7ff;background:#80b8e8;box-shadow:0 0 0 3px #80b8e81a}
body:not(.signed-out) .video-studio-page .video-timing-header .video-library-button{height:30px;min-height:30px;padding:0 13px;font-size:11px;border-radius:8px;border:1px solid #829fbe36;background:#172332;color:#c8d8eb;transition:background .15s,border-color .15s}
body:not(.signed-out) .video-studio-page .video-timing-header .video-library-button:hover:not(:disabled){background:#26394e;border-color:#8ab2db77}
@media(max-width:600px){.video-studio-page .video-controls.video-timing-header .video-field.duration-field{flex:1 1 180px;width:auto}.video-studio-page .video-timing-header .video-timing-row{gap:8px}}
.video-studio-page .video-timing-header .video-field.duration-field input[type=range]{box-sizing:border-box;padding-inline:10px}
.video-studio-page .video-timing-header .video-duration-ticks{left:16px;right:68px}
/* Tick endpoints match the 10px inset, 1px border and 6px thumb radius. */
body:not(.signed-out) .video-studio-page .video-controls.video-timing-header .video-field.duration-field input[type=range]{box-sizing:border-box;padding:0 10px;border:1px solid #8dbbe052;border-radius:999px;background:#0e1924;box-shadow:inset 0 1px 0 #d5ecff0d;min-width:0}
body:not(.signed-out) .video-studio-page .video-timing-header input[type=range]::-webkit-slider-thumb{box-sizing:border-box;border-radius:50%}
body:not(.signed-out) .video-studio-page .video-timing-header input[type=range]::-moz-range-thumb{box-sizing:border-box;width:12px;height:12px;border:2px solid #cee7ff;border-radius:50%;background:#80b8e8}
.video-studio-page .video-timing-header .video-duration-ticks{left:17px;right:69px}
.video-studio-page .video-timing-header .video-duration-tick{font-variant-numeric:tabular-nums}
/* A single capsule encloses both track and ticks; the value stays outside. */
.video-studio-page .video-controls.video-timing-header .video-field.duration-field{height:42px;padding:0;align-items:flex-start;isolation:isolate}
.video-studio-page .video-controls.video-timing-header .duration-field:not(.duration-compact)::before{content:'';position:absolute;z-index:-1;inset:0 52px 0 0;border:1px solid #8dbbe052;border-radius:999px;background:#0e1924;box-shadow:inset 0 1px 0 #d5ecff0d;pointer-events:none}
body:not(.signed-out) .video-studio-page .video-controls.video-timing-header .video-field.duration-field input[type=range]{height:24px;min-height:24px;padding:0 11px;border:0;background:transparent;box-shadow:none}
.video-studio-page .video-timing-header .video-duration-ticks{bottom:5px;left:17px;right:69px;height:12px}
.video-studio-page .video-timing-header .video-field.duration-field output{line-height:42px}
/* Outline only the slider; keep the aligned ticks below it. */
.video-studio-page .video-controls.video-timing-header .duration-field:not(.duration-compact)::before{display:none}
body:not(.signed-out) .video-studio-page .video-controls.video-timing-header .video-field.duration-field input[type=range]{height:28px;min-height:28px;padding:0 10px;border:1px solid #8dbbe080;border-radius:999px;background:#0e1924;box-shadow:inset 0 1px 0 #d5ecff18}
.video-studio-page .video-timing-header .video-duration-ticks{bottom:0;height:12px}
.video-studio-page .video-timing-header .video-field.duration-field output{line-height:28px}
.video-mention-editor{position:relative;flex:1;min-width:0;border:1px solid #93b1d33d;border-radius:10px;background:#0e1925;color:#eee}
.video-mention-editor:focus-within{outline:2px solid #88b5df80;outline-offset:2px}
.video-mention-content{height:108px;box-sizing:border-box;overflow-y:auto;padding:8px;font:14px/1.7 Inter,"Segoe UI","Microsoft YaHei",sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;outline:none}
.video-mention-content:empty::before{content:attr(data-placeholder);color:#929ba6;pointer-events:none}
.video-mention-chip{display:inline-flex;align-items:center;gap:3px;vertical-align:middle;margin:0 2px;padding:1px 4px;border:1px solid #80b9ea66;border-radius:5px;background:#233d54;color:#addbff;line-height:24px;user-select:all}
.video-mention-chip img{width:24px;height:24px;object-fit:cover;border-radius:3px}
.video-mention-menu{position:absolute;bottom:calc(100% + 8px);left:0;z-index:20;width:min(320px,100%);max-height:220px;overflow:auto;padding:6px;border:1px solid #749aba66;border-radius:10px;background:#152231;box-shadow:0 8px 28px #0006}
.video-mention-menu[hidden]{display:none}.video-mention-option{display:flex;align-items:center;gap:10px;width:100%;padding:7px;border:0;border-radius:6px;background:transparent;color:#d8e7f4;text-align:left;cursor:pointer}.video-mention-option img{width:34px;height:34px;object-fit:cover;border-radius:4px}.video-mention-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-mention-option[aria-selected=true],.video-mention-option:hover{background:#2b455f}.video-mention-empty{display:block;padding:10px;color:#9fb2c7;font-size:12px}
@media(max-width:720px){.video-mention-content{height:92px}}
.studio-grid .composer #prompt.image-mention-editor{padding:0;overflow:visible}.image-mention-editor .video-mention-content{height:100%;min-height:0}.image-mention-editor .video-mention-menu{z-index:30}
/* Let reference suggestions escape the composer and cover the floating thumbnails. */
.studio-grid .composer:has(.image-mention-editor .video-mention-menu:not([hidden])){overflow:visible;z-index:4}

.video-mention-chip.invalid{border-color:#e66c78;background:#532d37;color:#ffb3bb}.video-mention-chip.invalid::after{content:"需重选";font-size:10px;margin-left:3px}.video-mention-chip>span{font-size:11px}
.video-mention-chip.invalid[data-ref-url^="pending-image:"]{border-color:#72839d;background:#263446;color:#c9d5e5}
.video-mention-chip.invalid[data-ref-url^="pending-image:"]::after{content:none}
.video-mention-chip{cursor:grab;touch-action:none;user-select:none}
.video-mention-chip.mention-dragging{opacity:.55;cursor:grabbing}
.mention-drag-ghost{position:fixed!important;z-index:2147483647;pointer-events:none!important;opacity:.9!important;box-shadow:0 6px 22px #0008;transform:scale(1.08)}
.mention-insert-marker{position:fixed;z-index:2147483646;width:3px;background:#73c9ff;box-shadow:0 0 7px #73c9ff;pointer-events:none}

.video-mention-chip.text-only{display:inline;padding:1px 4px;line-height:inherit;vertical-align:baseline}.studio-grid .floating-references .reference-file .reference-order{display:block;position:absolute;top:auto;bottom:4px;left:4px;z-index:2;width:auto;height:auto;padding:1px 4px;border-radius:4px;background:#10283ee6;color:#e1f2ff;font-size:9px;line-height:14px;pointer-events:none}

/* Align controls to the track center; ticks occupy a separate lower row. */
.video-studio-page .video-timing-header .video-timing-row{align-items:flex-start}
.video-studio-page .video-controls.video-timing-header .video-field.duration-field{height:44px}
body:not(.signed-out) .video-studio-page .video-controls.video-timing-header .video-field.duration-field input[type=range]{height:30px;min-height:30px;margin:0}
.video-studio-page .video-timing-header .video-field.duration-field output{height:30px;line-height:30px;margin:0}
.video-studio-page .video-timing-header .video-library-actions{align-self:flex-start;margin-top:0}

/* Enlarge the two library actions by 15%, centered on the 30px timing track. */
body:not(.signed-out) .video-studio-page .video-timing-header .video-library-button{height:34.5px;min-height:34.5px;padding:0 14.95px;font-size:12.65px;border-radius:9.2px}
.video-studio-page .video-timing-header .video-library-actions{margin-top:-2.25px}

/* Login composition: introduction in the left loop, form in the right loop. */
body.signed-out .auth-screen{grid-template-columns:minmax(0,1fr) clamp(320px,16vw,420px);padding-left:24vw;padding-right:23vw;column-gap:clamp(40px,8vw,180px);align-items:center}
.login-intro{position:relative;z-index:1;min-width:0;color:#f6fbff}
.login-intro h1{font-size:clamp(32px,3.1vw,72px);font-weight:650;letter-spacing:-.05em;line-height:1.12;white-space:nowrap;margin:0 0 22px}
.login-intro h2{font-size:clamp(25px,2.2vw,50px);font-weight:650;line-height:1.3;letter-spacing:-.025em;margin:0 0 20px}
.login-intro p{font-size:clamp(10px,.65vw,14px);line-height:1.5;color:#9babaf;margin:0;max-width:560px}
.login-dot-grid,.login-dot-glow{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(ellipse 3px .6px at 12px 12px,#91adbb16 90%,transparent 100%),radial-gradient(ellipse .6px 3px at 12px 12px,#91adbb16 90%,transparent 100%);background-size:24px 24px;background-position:0 0}
.login-dot-grid{z-index:0;overflow:hidden}
.login-dot-glow{background-image:radial-gradient(ellipse 3px .6px at 12px 12px,#d3edffdd 90%,transparent 100%),radial-gradient(ellipse .6px 3px at 12px 12px,#d3edffdd 90%,transparent 100%);mask-image:radial-gradient(circle 170px at var(--dot-x,-999px) var(--dot-y,-999px),#000,transparent);opacity:0;transition:opacity .25s}
.auth-screen.pointer-active .login-dot-glow{opacity:1}
@media(min-width:801px) and (max-width:1400px){body.signed-out .auth-screen{padding-left:16vw;padding-right:14vw;column-gap:7vw;grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:800px){body.signed-out .auth-screen{grid-template-columns:minmax(0,1fr);padding:110px 24px 44px;gap:32px}.login-intro{width:100%;max-width:420px;justify-self:center}.login-intro h1{font-size:clamp(30px,7vw,48px);white-space:normal}.login-intro h2{font-size:28px}.login-intro p{font-size:11px}body.signed-out .auth-card{grid-column:1;width:100%;max-width:420px}.login-dot-grid{background-size:24px 24px}}
@media(prefers-reduced-motion:reduce){.login-dot-glow{transition:none}}

.login-intro,.login-intro h1,.login-intro h2,.login-intro p{text-shadow:none}.login-intro p{color:#bdcdd3}

/* Translucent frosted login card. */
body.signed-out .auth-card{background:linear-gradient(145deg,rgba(35,57,76,.54),rgba(9,20,37,.66));backdrop-filter:blur(26px) saturate(135%);-webkit-backdrop-filter:blur(26px) saturate(135%);border:1px solid rgba(182,217,244,.28);box-shadow:0 24px 70px #0006,inset 0 1px 0 #e6f6ff26,inset 0 -1px 0 #96bddd0d}
body.signed-out .auth-card input{background:rgba(6,17,32,.68)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body.signed-out .auth-card{background:linear-gradient(145deg,#172c40f2,#0b1628f5)}}

/* Login controls: restrained teal glass to match the frosted card and infinity mark. */
.login-intro .login-brand{display:block;margin:0 0 18px;color:#fff;font-size:clamp(64px,5.8vw,140px);font-weight:300;letter-spacing:-.04em;line-height:1.08}
body.signed-out .auth-card .generate{box-sizing:border-box;width:100%;min-height:48px;margin-top:24px;padding:12px 18px;border:1px solid rgba(104,190,184,.48);border-radius:10px;background:linear-gradient(135deg,rgba(35,112,111,.94),rgba(18,69,76,.97) 58%,rgba(11,40,52,.98));color:#e8fbfa;font-weight:600;letter-spacing:.01em;cursor:pointer;box-shadow:inset 0 1px 0 rgba(225,255,251,.16),0 8px 20px rgba(2,28,35,.24);transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
body.signed-out .auth-card .generate:hover:not(:disabled){background:linear-gradient(135deg,rgba(44,132,128,.98),rgba(21,83,88,.98) 58%,rgba(13,49,61,.99));border-color:rgba(126,220,207,.68);box-shadow:inset 0 1px 0 rgba(235,255,252,.2),0 10px 24px rgba(2,31,37,.3);transform:translateY(-1px)}
body.signed-out .auth-card .generate:focus-visible{outline:2px solid #8adbd1;outline-offset:3px;box-shadow:inset 0 1px 0 rgba(235,255,252,.2),0 0 0 4px rgba(111,211,201,.18),0 10px 24px rgba(2,31,37,.3)}
body.signed-out .auth-card .generate:active:not(:disabled){transform:translateY(0);box-shadow:inset 0 2px 4px rgba(3,30,35,.25),0 5px 14px rgba(2,28,35,.22)}
body.signed-out .auth-card .generate:disabled{border-color:rgba(137,169,173,.28);background:linear-gradient(135deg,rgba(63,86,92,.72),rgba(34,54,63,.8));color:#aabfc0;box-shadow:none;cursor:not-allowed;opacity:.78}
@media(max-width:800px){.login-intro .login-brand{margin-bottom:14px;font-size:clamp(56px,12vw,84px);letter-spacing:-.04em}}
@media(max-width:520px){.login-intro .login-brand{margin-bottom:12px;font-size:clamp(56px,12vw,84px);letter-spacing:-.04em}}
@media(prefers-reduced-motion:reduce){body.signed-out .auth-card .generate{transition:none}body.signed-out .auth-card .generate:hover:not(:disabled){transform:none}}

/* Moving cyan, blue and violet aura around the login action. */
@property --login-glow-angle{syntax:"<angle>";inherits:false;initial-value:0deg}
body.signed-out .auth-card .generate{position:relative;isolation:isolate;overflow:visible}
body.signed-out .auth-card .generate::before,
body.signed-out .auth-card .generate::after{content:"";position:absolute;pointer-events:none;border-radius:inherit}
body.signed-out .auth-card .generate::before{inset:-2px;padding:2px;background:conic-gradient(from var(--login-glow-angle),#35f4de,#398bff,#9e52ff,#35f4de);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;z-index:0;animation:login-glow-spin 4.8s linear infinite}
body.signed-out .auth-card .generate::after{inset:-7px;background:conic-gradient(from var(--login-glow-angle),#35f4de,#398bff,#9e52ff,#35f4de);filter:blur(11px);opacity:.42;z-index:-1;animation:login-glow-spin 4.8s linear infinite}
@keyframes login-glow-spin{to{--login-glow-angle:360deg}}
body.signed-out .auth-card .generate:disabled::before,body.signed-out .auth-card .generate:disabled::after{animation:none;opacity:0}
@media(prefers-reduced-motion:reduce){body.signed-out .auth-card .generate::before{animation:none}body.signed-out .auth-card .generate::after{animation:none;opacity:.25}}

.history-toolbar .history-remove-failed{height:30px;padding:0 10px;border:1px solid #dc6269;border-radius:6px;background:#be3945;color:#fff;font-size:11px;white-space:nowrap}.history-toolbar .history-remove-failed:hover:not(:disabled){background:#d04753}.history-toolbar .history-remove-failed:disabled{opacity:.45;cursor:default}

.history-heading{display:flex;align-items:center;flex-wrap:wrap;gap:18px}.history-heading h1{margin:0}.history-kind-tabs{display:flex;gap:10px}.history-heading .history-toolbar{margin:0 0 0 auto}.history-kind-tabs button[aria-pressed=true]{background:#355b84;border-color:#8db9e8;color:#fff}
.tenant-feature-toggles{display:flex;flex-wrap:wrap;gap:6px}.tenant-feature-toggle{min-width:68px;padding-inline:8px}.tenant-feature-toggle.tenant-feature-off{border-color:#75859a;color:#9aa9ba;background:#172230}
body:not(.signed-out) .history-heading .history-toolbar .history-remove-failed{background:#be3945;border-color:#dc6269;color:#fff}body:not(.signed-out) .history-heading .history-toolbar .history-remove-failed:hover:not(:disabled){background:#d04753}
@media(max-width:650px){.history-heading .history-toolbar{margin-left:0;width:100%}.history-kind-tabs{flex-wrap:wrap}}

body:not(.signed-out) .history-heading .history-kind-tabs button[aria-pressed=true]{background:#355b84;border-color:#8db9e8;color:#fff}

.history-heading .history-toolbar{margin-left:0}

/* Password visibility control remains inside the input without submitting the form. */
.auth-password-field{position:relative}
.auth-card .auth-password-field input{padding-right:64px}
.auth-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);min-width:44px;min-height:36px;padding:4px 8px;border:0;border-radius:5px;background:transparent;color:#a9c7ed;font:inherit;font-size:12px;cursor:pointer}
.auth-password-toggle:hover{background:#5ca6ff20;color:#edf6ff}
.auth-password-toggle:focus-visible{outline:2px solid #5ca6ff;outline-offset:1px}
.auth-password-field input::-ms-reveal{display:none}

.auth-password-toggle{display:flex;align-items:center;justify-content:center}
.auth-password-toggle svg{display:block;pointer-events:none}
.auth-password-toggle .auth-password-slash{display:none}
.auth-password-toggle[aria-pressed="true"] .auth-password-slash{display:block}
.management-form label>input,.management-form label>select{display:block;margin-top:8px}

.edited-image-card{min-width:0;display:flex;flex-direction:column;gap:8px}
.edited-image-card>.picker-card{width:100%}
.edited-image-actions{display:flex;gap:6px;justify-content:center}
.edited-image-actions>a{text-decoration:none;text-align:center}
.edited-image-preview{width:min(1000px,92vw);max-height:90dvh;padding:16px;border:1px solid #93b1d344;border-radius:12px;background:#18212e;color:#dce8f7;overflow:auto}
.edited-image-preview::backdrop{background:#060b14cc}
.edited-image-preview>img{display:block;max-width:100%;max-height:75dvh;object-fit:contain;margin:auto}
/* The edited-image view reuses the gallery grid while keeping the composer and result panel in place. */
.edited-image-list{padding-top:14px;grid-template-columns:repeat(auto-fill,250px);grid-auto-rows:calc(250px * 4 / 3);align-items:start}
.edited-image-list>.job{height:calc(250px * 4 / 3);aspect-ratio:3/4;min-height:0;position:relative;overflow:hidden;border:1px solid #93b1d344;border-radius:12px;background:#10172080}
.edited-image-list .job-visual{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:10px;background:transparent}
.edited-image-list .job-visual img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border:0;border-radius:8px;cursor:zoom-in}
.edited-image-list .edited-image-add{left:10px;right:auto;bottom:10px;border:1px solid #b9d5f8;background:#f8fbff;color:#2766a5}
.edited-image-list .card-download{position:absolute;right:10px;bottom:10px;z-index:2;display:grid;place-items:center;width:30px;height:30px;border:1px solid #9cbde15c;border-radius:9px;background:#152333e8;color:#e5efff;font-size:21px;line-height:1;box-shadow:0 2px 8px #0003}
.edited-image-list .card-download:hover,.edited-image-list .card-download:focus-visible{background:#365272;border-color:#b8d6ff}
.edited-image-list .edited-image-add:hover,.edited-image-list .edited-image-add:focus-visible{background:#fff;color:#174f8d;border-color:#8db9eb}
.gallery-date-trigger#open-edited-images[aria-pressed="true"]{background:#f8fbff;color:#2766a5;border-color:#b9d5f8}
.studio-grid .results>.panel-heading :is(#remove-failed-jobs,#select-images,#delete-images,#batch-download-images,#gallery-date-trigger,#open-edited-images){box-sizing:border-box;width:100px;min-width:100px;max-width:100px;flex:0 0 100px;padding-left:8px;padding-right:8px}
.edited-gallery-message{grid-column:1/-1;margin:24px 20px;color:#93a7bd;font-size:12px;line-height:1.7}
#edited-image-list .image-selectable{cursor:pointer;user-select:none}
#edited-image-list .image-selected{border-color:#91bff0;box-shadow:inset 0 0 0 2px #91bff0;background:#24364b}
@media(max-width:900px){.edited-image-list{grid-template-columns:repeat(auto-fill,210px);grid-auto-rows:280px}.edited-image-list>.job{height:280px}}
@media(max-width:720px){.edited-image-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-auto-rows:auto}.edited-image-list>.job{height:auto;aspect-ratio:3/4}}
.member-usage{align-items:center;flex-wrap:wrap}.member-actions{display:flex;flex:1 1 auto;justify-content:flex-end;gap:7px;margin-left:auto;min-width:0;flex-wrap:wrap}.member-actions button{flex:0 0 auto;white-space:nowrap}
