.free-admin-actions,.free-row-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.free-section{margin:26px 0 46px}
.free-switch{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit}
.free-switch>span{width:31px;height:18px;padding:3px;border-radius:12px;background:#545763;box-sizing:border-box}
.free-switch>span:before{content:"";display:block;width:12px;height:12px;background:#fff;border-radius:50%}
.free-switch[aria-checked=true]>span{background:#ffffff}.free-switch[aria-checked=true]>span:before{transform:translateX(13px)}
.free-cat-list>div>strong{flex:1;min-width:0}.free-switch:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.free-pages{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;margin:24px auto 0}
.free-pages span{color:#d7d5dc;font-variant-numeric:tabular-nums}.free-pages button:disabled{opacity:.4;cursor:default}
.free-total{scroll-margin-top:90px}
.free-grid{columns:clamp(150px,18vw,215px);column-gap:12px}
.free-thumbnail{display:block;width:100%;height:auto;margin:0;padding:0;border:1px solid #ffffff22;border-radius:14px;overflow:hidden;background:#191b1f;cursor:pointer}
.free-grid .free-thumbnail-card{position:relative;break-inside:avoid;page-break-inside:avoid;margin-bottom:12px;border-radius:14px}
.free-thumbnail-card .free-thumbnail{margin:0}
.free-quick-save{position:absolute;z-index:2;top:10px;right:10px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #bb82fa55;border-radius:50%;background:#0a0a0de8;color:#b77bff;box-shadow:0 3px 12px #0008;cursor:pointer;transition:background .18s,color .18s,transform .18s,border-color .18s}
.free-quick-save .icon{display:block;width:18px;height:18px;stroke:currentColor;stroke-width:1.8;fill:none}
.free-quick-save:hover{background:#171020;color:#d7adff;border-color:#c592ff;transform:translateY(-1px)}
.free-quick-save.is-active{color:#d1a1ff;background:#190e29;border-color:#b77bff}
.free-quick-save.is-active .icon{fill:#9c58ed77}
.free-quick-save:focus-visible{outline:2px solid #c28bff;outline-offset:3px}
.free-quick-save:disabled{opacity:.55;cursor:wait}
.free-thumbnail img{display:block;width:100%;height:auto}
.free-thumbnail{position:relative}
.free-caption{position:absolute;inset:auto 0 0;display:grid;gap:4px;align-content:end;padding:24px 14px 12px;background:linear-gradient(transparent,#0b0b10ed 68%);color:#fff;text-align:left;pointer-events:none;opacity:0}
.free-caption small{font-size:11px;font-weight:700;letter-spacing:.05em;color:#ffffff}.free-caption strong{font-size:15px;line-height:1.3;overflow-wrap:anywhere}
@media(hover:hover){.free-thumbnail:hover .free-caption{opacity:1}}
.free-thumbnail:focus-visible .free-caption{opacity:1}
@media(prefers-reduced-motion:no-preference){.free-caption{transition:opacity .18s ease}}
.free-thumbnail:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
.free-rows{list-style:none;padding:0;margin:0;border:1px solid #ffffff20;border-radius:14px;overflow:hidden;background:#18191e}
.free-row{display:grid;grid-template-columns:70px minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:12px 16px}
.free-row+.free-row{border-top:1px solid #ffffff1a}.free-row>img{max-width:100%;max-height:56px;width:auto;height:auto;justify-self:center;border-radius:6px}
.free-row-info{display:grid;gap:4px;overflow-wrap:anywhere}.free-row-info small,.free-detail dt{color:#bab9c1}
.free-row-actions{gap:6px}.free-row .status{justify-self:start;white-space:nowrap}
.free-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.free-detail-media{display:grid;align-content:start;gap:18px;min-width:0}
.free-detail-preview{width:100%;height:auto;max-height:54vh;object-fit:contain;border-radius:10px;background:#18191e}
.free-detail-info{min-width:0;overflow-wrap:anywhere}.free-detail-info>p{margin:10px 0}
.free-detail-info dl{display:grid;gap:8px}.free-detail-info dl>div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:8px}.free-detail-info dd{margin:0}
.free-detail-prompt{white-space:pre-wrap;background:#141519;border-radius:8px;padding:12px}
.free-detail-action{margin-top:16px}.free-detail-action .primary{display:inline-flex;align-items:center;gap:8px}
.free-empty{padding:20px;border:1px dashed #ffffff30;border-radius:12px}
@media(max-width:600px){
 .free-detail{grid-template-columns:1fr;gap:14px}.free-detail-preview{max-height:34vh}
 .free-row{grid-template-columns:48px minmax(0,1fr) auto;gap:4px 10px;padding:10px}
 .free-row>img{max-height:44px;grid-row:1/3}.free-row-info{grid-column:2;grid-row:1}
 .free-row .status{grid-column:2;grid-row:2}.free-row-actions{grid-column:3;grid-row:1/3;flex-direction:column;gap:2px}
}
[data-free-source]{padding:12px;margin:10px 0;border:1px solid #ffffff27;border-radius:9px}[data-free-source][hidden]{display:none}
@media(prefers-reduced-motion:no-preference){.free-thumbnail{transition:border-color .2s ease}.free-thumbnail:hover{border-color:var(--amber)}}
@media(max-width:1100px) and (min-width:701px){.storefront .store-nav a{padding-inline:8px}}
@media(max-width:700px){.storefront .store-nav{width:calc(100vw - 14px);justify-content:space-around}.storefront .store-nav a{min-width:0;flex:1 1 auto;padding-inline:2px;white-space:normal;text-align:center}.free-grid{columns:150px;column-gap:9px}.free-grid .free-thumbnail-card{margin-bottom:9px}.free-quick-save{top:7px;right:7px;width:32px;height:32px}}

.free-controls,.free-home{display:flex;align-items:end;flex-wrap:wrap;gap:14px;padding:clamp(14px,2.4vw,26px);border:1px solid #ffffff20;border-radius:16px;background:linear-gradient(115deg,#242126,#18191e 80%)}
.free-controls>label{margin:0;display:grid;gap:7px;font-size:13px;color:#d7d5dc;min-width:128px}.free-controls .free-search{flex:1 1 230px}.free-controls select,.free-search>span:last-child,.free-home label{min-height:42px;border:1px solid #ffffff28;border-radius:10px;background:#131419;color:#f5f4f6}
.free-controls select{padding:7px 12px;max-width:100%;text-overflow:ellipsis}.free-search>span:last-child,.free-home label{display:flex;gap:10px;align-items:center;padding:0 12px}.free-search input,.free-home input{width:100%;padding:7px 0;border:0;background:transparent;color:inherit;font:inherit;min-width:0}.free-search .icon,.free-home .icon{flex-shrink:0}.free-total{font-size:13px;color:#bbb8c2;margin:18px 0 12px}.free-category{color:#ffffff;font-weight:600}.free-cat-list>div,.free-save-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.free-cat-list>div{padding:6px 0;border-bottom:1px solid #ffffff18;overflow-wrap:anywhere}.free-cat-list{max-height:35vh;overflow:auto}.free-save-actions{justify-content:flex-end}.free-save-actions button{width:auto}
.free-home{align-items:center;justify-content:space-between}.free-home h2{margin:0 0 4px}.free-home a{color:var(--amber);display:inline-flex;align-items:center;gap:6px}.free-home form{display:flex;align-items:center;gap:8px;flex:0 1 490px}.free-home label{flex:1;min-width:0;margin:0}.free-home button{white-space:nowrap}
@media(max-width:700px){.free-home form{flex:1 1 100%}.free-controls>label:not(.free-search){flex:1 1 110px;min-width:0}.free-controls .free-search{flex-basis:100%}.free-save-actions{flex-wrap:wrap}}

.taxonomy-tags,.taxonomy-picker{display:flex;flex-wrap:wrap;gap:10px}.taxonomy-picker .check{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #ffffff20;border-radius:8px}.taxonomy-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:8px;background:#ffffff0b;font-size:12px}.taxonomy-icon{width:22px;height:22px;object-fit:contain;border-radius:4px}.taxonomy-tag .icon{width:16px;height:16px}.free-caption .taxonomy-tag{margin:0 5px 6px 0}

.tools .avatar{position:relative;overflow:visible}.student-avatar-badge{position:absolute;right:-7px;bottom:-4px;width:21px;height:21px;border-radius:50%;background:#242018;border:1px solid #e8bd55;display:grid;place-items:center;color:#ffd46b;pointer-events:none}.student-avatar-badge svg{width:15px;height:15px}

.tools .header-contact,.tools .header-contact svg{color:#fff}.free-controls{flex-wrap:wrap}.free-controls>label:has(select[name="accessAudience"]){min-width:130px}
.tools .header-contact svg{color:#fff!important;stroke:#fff!important}

/* Compact Studio editors: retain a readable single column on small screens. */
#modal.compact-upload-editor{width:min(760px,calc(100vw - 32px));max-height:88dvh;padding:20px}
#modal.compact-upload-editor form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;align-items:start}
#modal.compact-upload-editor form>*{margin:0;min-width:0}
#modal.compact-upload-editor form>fieldset,#modal.compact-upload-editor form>.note,#modal.compact-upload-editor form>.muted,#modal.compact-upload-editor form>.free-save-actions,#modal.compact-upload-editor form>button,#modal.compact-upload-editor form>[id],#modal.compact-upload-editor form>label:has(textarea[name=prompt]),#modal.compact-upload-editor form>label:has(input[type=file]){grid-column:1/-1}
#modal.compact-upload-editor textarea{min-height:70px;height:80px}
#modal.compact-upload-editor textarea[name=prompt]{height:155px}
#modal.compact-upload-editor fieldset{padding:10px 12px}
#modal.compact-upload-editor [data-photo] .photo-preview{width:70px;height:70px;object-fit:contain}
#modal.compact-upload-editor .taxonomy-picker{gap:6px;max-height:130px;overflow:auto}
#modal.compact-upload-editor .audience-picker input{accent-color:#b5a1ff}
#modal.compact-upload-editor form>.free-save-actions{position:sticky;bottom:-20px;background:#1e2025;padding:10px 0;z-index:2}
@media(max-width:600px){#modal.compact-upload-editor form{grid-template-columns:1fr}#modal.compact-upload-editor{padding:16px}}
.tools .avatar .student-avatar-badge{top:-6px;right:-7px;bottom:auto;background:#e5ad28;border-color:#f3c653;color:#fff}.tools .avatar .student-avatar-badge svg{color:#fff!important;stroke:#fff!important}
