.dc-editor, .dc-public, .dc-modal { --dc-cyan: #59d4ef; --dc-violet: #a58af7; --dc-muted: #929bb0; font-weight: 400; }
.dc-editor *, .dc-public *, .dc-modal * { box-sizing: border-box; font-weight: 400; }
/* Keep shared controls, modal content and dragged groups in the same typeface. */
:is(.dc-editor, .dc-public, .dc-modal, .dc-editor-heading, .dc-admin-heading, .dc-admin-folders, .dc-folder-card, .dc-group),
:is(.dc-editor, .dc-public, .dc-modal, .dc-editor-heading, .dc-admin-heading, .dc-admin-folders, .dc-folder-card, .dc-group) :is(h1,h2,h3,p,a,span,strong,b,small,button,input,select,textarea,dt,dd,label,time,li) { font-family: "GothamPro", "Gotham Pro", sans-serif; font-weight: 400; }
.dc-editor svg, .dc-public svg, .dc-modal svg, .dc-back svg { width: 20px; height: 20px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.dc-button, .dc-icon-button {
	display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 11px 16px; min-height: 40px;
	font: inherit; font-size: 12px; font-weight: 400; line-height: 1.3; text-decoration: none; cursor: pointer;
	color: #c9bbef; background: rgba(140,108,255,.065); border: 1px solid rgba(140,108,255,.32); border-radius: 0;
	transition: color .2s, border-color .2s, background-color .2s, box-shadow .2s;
}
.dc-button:hover, .dc-icon-button:hover { color: #fff; border-color: #a58af7; background: rgba(140,108,255,.16); box-shadow: 0 0 18px rgba(140,108,255,.12); }
.dc-button:focus-visible, .dc-icon-button:focus-visible, .dc-upload:focus-visible, .dc-public a:focus-visible { outline: 1px solid #79daed; outline-offset: 4px; }
.dc-button--accent { color: #87dff2; border-color: rgba(89,212,239,.4); background: rgba(89,212,239,.08); box-shadow: inset 2px 0 #59d4ef; }
.dc-button--accent:hover { background: rgba(89,212,239,.16); border-color: #59d4ef; box-shadow: inset 2px 0 #59d4ef, 0 0 24px rgba(89,212,239,.12); }
.dc-button[hidden], .dc-icon-button[hidden] { display: none; }
.dc-button > svg { width: 18px; height: 18px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.7; }
.dc-editor-heading > .dc-button { white-space: nowrap; flex-shrink: 0; }
.dc-icon-button { width: 32px; min-height: 32px; padding: 7px; border-color: transparent; background: transparent; }
.dc-icon-button svg { width: 16px; height: 16px; }
.dc-danger { color: #c98298; }
.dc-danger:hover { border-color: rgba(248,105,133,.45); color: #ff9eae; background: rgba(248,105,133,.1); box-shadow: none; }
.dc-grip { color: #78839b; cursor: grab; touch-action: none; }
.dc-grip:active { cursor: grabbing; }
.dc-back { display: inline-flex; align-items: center; gap: 8px; color: #929bb0; font-size: 12px; text-decoration: none; transition: color .2s; }
.dc-back:hover { color: #fff; }
.dc-back svg { width: 15px; height: 15px; }
.dc-editor-heading { align-items: center; margin-bottom: 24px; gap: 20px; }
.dc-editor-heading h1 { margin-top: 14px; overflow-wrap: anywhere; }
.dc-admin-folders { position: relative; }
.dc-folder-card { padding-left: 38px; }
.dc-folder-card .admin-terms-card__drag-handle svg { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.dc-folder-card.is-sortable-placeholder { border-style: dashed; background: rgba(140,108,255,.045); box-shadow: none; }
.dc-folder-card.is-sortable-placeholder > * { visibility: hidden; }
.dc-folder-card.is-sortable-ghost { position: fixed; z-index: 1200; pointer-events: none; margin: 0; transition: none; box-shadow: 0 28px 72px #0008, 0 0 24px #8c6cff24; }
.dc-folder-card a { text-decoration: none; }
.dc-folder-card .admin-terms-card__copy { padding-right: 170px; }
.dc-hint { display: flex; align-items: flex-start; gap: 8px; margin: 8px 0 0; color: #929bb0; font-size: 11px; line-height: 1.65; }
.dc-hint svg { width: 15px; height: 15px; margin-top: 2px; }
.dc-editor .dc-slug { display: flex; align-items: center; min-width: 0; border: 1px solid rgba(89,212,239,.26); border-left: 2px solid #59d4ef; background: rgba(7,10,22,.65); }
.dc-slug > span { padding-left: 12px; color: #8693a9; font-size: 12px; }
.dc-editor .dc-slug input { min-width: 0; flex: 1; border: 0; background: transparent; box-shadow: none; padding-left: 3px; }
.dc-slug:focus-within { outline: 1px solid rgba(89,212,239,.4); box-shadow: 0 0 14px rgba(89,212,239,.1); }
.dc-editor .admin-settings-card__header h2 { font-weight: 400; }
.dc-files-body { display: grid; gap: 16px; }
.dc-upload {
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; min-height: 155px; padding: 24px;
	border: 1px dashed rgba(165,138,247,.45); background: linear-gradient(120deg,rgba(140,108,255,.075),rgba(89,212,239,.025));
	color: #d8cafa; font: inherit; font-size: 16px; font-weight: 400; cursor: pointer; transition: background .2s, border-color .2s, box-shadow .2s;
}
.dc-upload > svg { width: 32px; height: 32px; color: #af92f8; }
.dc-upload small { color: #929bb0; font-size: 11px; line-height: 1.7; text-align: center; }
.dc-upload:hover, .dc-upload.is-drop-target { border-color: #a58af7; background-color: rgba(140,108,255,.1); box-shadow: inset 0 0 36px rgba(140,108,255,.04); }
.dc-groups { display: grid; gap: 16px; min-width: 0; }
.dc-group { border: 1px solid rgba(139,153,185,.2); background: rgba(7,11,24,.42); transition: border-color .2s, box-shadow .2s; min-width: 0; }
.dc-group.is-drop-target { border-color: #59d4ef; box-shadow: 0 0 20px rgba(89,212,239,.12); }
.dc-group__header { display: flex; align-items: center; gap: 8px; min-height: 52px; padding: 8px 10px; border-bottom: 1px solid rgba(139,153,185,.16); background: linear-gradient(90deg,rgba(89,212,239,.045),transparent); }
.dc-group__header > svg { color: #6ecce0; width: 18px; height: 18px; }
.dc-group__name { min-width: 0; width: 100%; padding: 7px 6px; border: 1px solid transparent; outline: none; background: transparent; color: #dedfeb; font: inherit; font-size: 13px; font-weight: 400; }
.dc-group__name:focus { border-color: rgba(89,212,239,.4); box-shadow: 0 0 12px rgba(89,212,239,.08); }
.dc-group__name[readonly] { pointer-events: none; }
[data-dc-count] { color: #8d9bb4; font-size: 11px; padding: 3px 6px; background: rgba(89,212,239,.065); border: 1px solid rgba(89,212,239,.12); }
.dc-file-list { min-height: 72px; padding: 7px; }
.dc-empty { color: #67758f; text-align: center; font-size: 11px; padding: 15px 10px; }
.dc-file-list:has(> .dc-edit-file) > .dc-empty { display: none; }
.dc-edit-file { position: relative; display: flex; align-items: center; gap: 10px; padding: 11px 8px 11px 2px; min-height: 70px; border-left: 2px solid rgba(165,138,247,.5); background: rgba(140,108,255,.035); }
.dc-edit-file + .dc-edit-file { margin-top: 5px; }
.dc-edit-file.is-error { border-left-color: #ed7c97; background: rgba(237,124,151,.045); }
.dc-edit-file.is-dragging { opacity: .45; }
.dc-edit-file__copy { min-width: 0; flex: 1; display: grid; gap: 6px; }
.dc-edit-file__copy > span { font-size: 13px; color: #dcddec; overflow-wrap: anywhere; }
.dc-edit-file__copy > small { font-size: 10px; color: #8d9bb4; overflow-wrap: anywhere; }
.dc-edit-file.is-error small { color: #f192a9; }
.dc-edit-file progress { appearance: none; border: 0; width: 100%; height: 2px; background: rgba(89,212,239,.1); accent-color: #59d4ef; }
.dc-edit-file progress::-webkit-progress-bar { background: rgba(89,212,239,.1); }
.dc-edit-file progress::-webkit-progress-value { background: #59d4ef; box-shadow: 0 0 8px rgba(89,212,239,.5); }
.dc-edit-file progress::-moz-progress-bar { background: #59d4ef; }
.dc-file-actions { display: flex; gap: 2px; }
.dc-file-icon { display: flex; flex-direction: column; align-items: center; justify-content: center; flex-shrink: 0; gap: 5px; color: #94c5e3; background: linear-gradient(145deg,rgba(89,212,239,.09),rgba(140,108,255,.055)); border: 1px solid rgba(89,212,239,.2); width: 46px; height: 50px; }
.dc-file-icon svg { width: 25px; height: 25px; }
.dc-file-icon small { font-size: 9px; line-height: 1; letter-spacing: .05em; }
.dc-group.is-sortable-placeholder { opacity: .3; }
.dc-group.is-sortable-ghost { position: fixed; z-index: 9999; pointer-events: none; background: #0c1021; box-shadow: 0 16px 50px #0009; }
.dc-modal .site-modal__window { width: min(560px,calc(100vw - 32px)); }
.dc-modal .site-modal__content { padding: 26px; }
.dc-modal p { font-size: 14px; line-height: 1.7; color: #c0c5d7; margin: 0 0 20px; overflow-wrap: anywhere; }
.dc-confirm-files { max-height: 35vh; overflow: auto; margin: 0 0 24px; padding: 10px 12px; border-left: 2px solid #a58af7; background: linear-gradient(90deg,rgba(165,138,247,.09),transparent); list-style: none; }
.dc-confirm-files li { color: #c9badf; font-size: 12px; padding: 6px; overflow-wrap: anywhere; }
.dc-modal-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 26px; }
.dc-button:disabled { opacity: .4; cursor: default; box-shadow: none; }
.dc-settings-wide { grid-column: 1 / -1; min-width: 0; }
.dc-linked-products { display: flex; flex-wrap: wrap; gap: 8px; max-height: 260px; overflow: auto; padding: 2px; }
.dc-product-choice { display: inline-flex; align-items: center; gap: 10px; padding: 11px 13px; color: #aebcd0; border: 1px solid #59d4ef24; background: #59d4ef06; cursor: pointer; font-size: 12px; }
.dc-product-choice:has(input:checked) { color: #a1e8f5; border-color: #59d4ef70; background: #59d4ef12; }
.dc-product-choice input { accent-color: #59d4ef; width: 16px; height: 16px; margin: 0; }
.dc-editor .product-media-editor { margin-bottom: 16px; }
.dc-editor .product-media-editor__group[hidden] { display: none; }
.dc-folder-card .admin-terms-card__copy { padding-right: 255px; }
.dc-folder-card .admin-terms-card__badges { flex-wrap: wrap; }
.dc-public { position: relative; max-width: 1180px; margin: 42px auto 90px; padding: 0 24px; min-height: 50vh; }
.dc-public--index { max-width: 1320px; }
.dc-public__header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 25px 0 30px; margin-bottom: 28px; border-bottom: 1px solid rgba(89,212,239,.2); }
.dc-public h1 { display: flex; align-items: center; gap: 16px; color: #ebe9f8; font-size: clamp(24px,3vw,34px); line-height: 1.3; margin: 0; overflow-wrap: anywhere; }
.dc-public h1 > svg { color: #66cde4; width: 30px; height: 30px; }
.dc-public__header .dc-total { position: relative; display: flex; align-items: center; align-self: center; gap: 12px; max-width: 480px; padding: 14px 20px 14px 16px; color: #91adc4; font-size: 15px; line-height: 1.6; margin: 0; border: 1px solid #59d4ef30; background: linear-gradient(270deg,#59d4ef10,transparent),#0a1020b3; box-shadow: 0 4px 20px #00000024; }
.dc-total::after { content: ""; position: absolute; right: -1px; inset-block: -1px; width: 2px; background: #59d4ef; box-shadow: 0 0 9px #59d4ef70,0 0 18px #59d4ef26; }
.dc-total > svg { color: #59d4ef; }
.dc-total strong { color: #c3e8f2; white-space: nowrap; }
.dc-back--public { margin-bottom: 8px; color: #65d1ed; font-size: 10px; letter-spacing: .13em; line-height: 1.5; text-shadow: 0 0 12px #59d4ef33; transition: color .2s,text-shadow .2s; }
.dc-back--public:hover { color: #fff; text-shadow: 0 0 14px #59d4efbf; }
.dc-back--public svg { width: 17px; height: 17px; }
.dc-folder-heading { display: flex; align-items: center; min-width: 0; gap: 22px; }
.dc-folder-heading > div { min-width: 0; }
.dc-folder-heading h1 { margin-bottom: 14px; }
.dc-folder-heading .dc-folder-avatar { width: 110px; height: 110px; border: 1px solid #59d4ef40; border-left: 2px solid #59d4ef; box-shadow: -4px 0 14px -8px #59d4ef; }
.dc-metadata { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; font-size: 14px; line-height: 1.5; color: #91a7bd; }
.dc-metadata > span { display: inline-flex; align-items: center; gap: 7px; }
.dc-metadata svg { width: 16px; height: 16px; color: #68bbd4; }
.dc-public__header .dc-download-all { min-height: 54px; font-size: 12px; letter-spacing: .035em; text-decoration:none; backdrop-filter: blur(16px); transition:color .2s,border-color .2s,box-shadow .2s; }
.dc-public__header .dc-download-all:is(:hover,:focus-visible) { color:#fff; border-color:#59d4ef80; box-shadow:0 0 24px #59d4ef20; }
.dc-download-all svg { transition:color .2s,filter .2s; }
.dc-download-all:is(:hover,:focus-visible) svg { color:#fff; filter:drop-shadow(0 0 6px #ffffff80); }
.dc-archive { flex-shrink: 0; max-width:100%; }
.dc-archive [hidden] { display:none; }
.dc-archive-pending { color: #82bacb; border-color: rgba(89,212,239,.2); background: rgba(89,212,239,.035); cursor: default; min-height: 48px; }
.dc-archive-pending > svg { animation: dc-spin 3s linear infinite; }
.dc-archive-pending.is-error { color: #be9cb6; }
@keyframes dc-spin { to { transform: rotate(360deg); } }
.dc-public-group { margin-top: 30px; }
.dc-public-group > header { display: flex; gap: 10px; align-items: center; padding: 0 2px 14px; color: #7bbfd7; }
.dc-public-group h2 { margin: 0; font-size: 16px; color: #cdd6e4; overflow-wrap: anywhere; }
.dc-public-files { display: grid; gap: 10px; }
.dc-public-file { --dc-file-icon-size: 100px; position: relative; isolation: isolate; display: grid; grid-template-columns: var(--dc-file-icon-size) minmax(0,1fr) max-content; align-items: center; gap: 24px; min-height: 102px; border: 1px solid #6ba1c038; background: linear-gradient(90deg,#59d4ef09,transparent 65%),#090d1ce8; text-decoration: none; transition: border-color .22s,box-shadow .22s,background-color .22s; }
.dc-public-file::before, .dc-public-folder::before { content: ""; position: absolute; z-index: 3; left: -1px; inset-block: -1px; width: 2px; background: #65ddf6; box-shadow: 0 0 8px #59d4efa0,0 0 17px #59d4ef40; pointer-events: none; }
.dc-public-file:hover { border-color: #59d4ef8c; background-color: #101b2ce8; box-shadow: 0 0 24px #59d4ef12; }
.dc-public-file > :not(.dc-icon-pattern) { position: relative; z-index: 1; }
.dc-public-file .dc-file-icon { width: var(--dc-file-icon-size); height: 100%; min-height:var(--dc-file-icon-size); border: 0; border-right: 1px solid #59d4ef26; background: linear-gradient(135deg,#59d4ef0d,#0b122447); transition: border-color .22s,box-shadow .22s; }
.dc-public-file:is(:hover,:focus-visible) .dc-file-icon { border-right-color: #59d4ef; box-shadow: 6px 0 18px -8px #59d4ef80; }
.dc-public-file .dc-file-icon svg { width: 32px; height: 32px; color: #8fd8ed; filter: drop-shadow(0 0 10px #59d4ef40); }
.dc-public-file__copy { min-width: 0; display: grid; gap: 10px; padding-block:12px; }
.dc-public-file__name { display: block; color: #e1e5f3; font-size: 16px; line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dc-public-file__name > span { color: #8096b0; font-size: inherit; }
.dc-file-metadata { display: flex; flex-wrap: wrap; gap: 3px 18px; color: #8fa7bf; font-size: 13px; line-height: 1.5; }
.dc-public-file__date { min-width:0; }
.dc-file-metadata > span { display: inline-flex; align-items: center; gap: 7px; }
.dc-file-metadata svg { width: 15px; height: 15px; color: #638ea9; }
.dc-public-file__size { white-space: nowrap; color: #aec7d8; }
.dc-file-download { display: flex; align-items: center; justify-content: center; gap: 10px; padding-right: 20px; color: #80d8ed; font-size: 16px; line-height: 1.2; white-space: nowrap; text-shadow: 0 2px 4px #0009; transition: color .22s,text-shadow .22s; }
.dc-file-download svg { width: 20px; height: 20px; transition: filter .22s; }
.dc-public-file:is(:hover,:focus-visible) .dc-file-download { color: #fff; text-shadow: 0 2px 4px #0009,0 0 10px #ffffff80,0 0 20px #59d4ef40; }
.dc-public-file:is(:hover,:focus-visible) .dc-file-download svg { filter: drop-shadow(0 0 6px #ffffff80); }
.dc-public .dc-icon-pattern { position: absolute; z-index: 0; top: 0; bottom: 0; width: min(42%,350px); height: 100%; pointer-events: none; color: #59d4ef; opacity: .13; overflow: hidden; transition: opacity .25s; }
.dc-icon-pattern--left { left: var(--dc-file-icon-size); mask-image: linear-gradient(90deg,#000,transparent); }
.dc-icon-pattern--right { right: 0; mask-image: linear-gradient(270deg,#000,transparent); }
.dc-public-file:hover .dc-icon-pattern { opacity: .27; }
.dc-public-empty { display: grid; place-items: center; padding: 65px 24px; color: #6d9cba; border: 1px dashed rgba(89,212,239,.23); background: rgba(8,13,27,.6); }
.dc-public-empty > svg { width: 40px; height: 40px; margin-bottom: 16px; }
.dc-public-empty h2 { margin: 0; font-size: 20px; line-height: 1.6; text-align: center; color: #c3ccdd; }
.dc-public-empty p { font-size: 12px; color: #8a98b0; }
.dc-folder-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px; }
.dc-public-folder { --dc-folder-duration: 200ms; --dc-folder-avatar-size: 120px; position: relative; isolation: isolate; display: grid; grid-template-columns: var(--dc-folder-avatar-size) minmax(0,1fr); align-items: center; gap: 14px; width: calc(50% - 9px); min-height: calc(var(--dc-folder-avatar-size) + 2px); border: 1px solid #59d4ef40; background: linear-gradient(120deg,#59d4ef0b,transparent),#090d1ce0; text-decoration: none; transition: border-color .2s,box-shadow .2s; }
.dc-folder-avatar { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 120px; height: 120px; overflow: hidden; background: #59d4ef08; border-right: 1px solid #59d4ef30; position: relative; z-index: 1; transition: border-color .25s,box-shadow .25s; }
.dc-folder-avatar img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; image-rendering: auto; image-rendering: smooth; backface-visibility: hidden; transform: translate3d(0,0,0) scale(1.001); transform-origin: center; }
.dc-folder-avatar > svg { width: 34px; height: 34px; color: #72c9e1; }
.dc-public-folder > .dc-folder-avatar { width: 100%; height: auto; aspect-ratio: 1; }
.dc-public-folder > .dc-folder-avatar > img { position: absolute; inset: 0; }
.dc-folder-backdrop { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
/* Match the account license backdrop: left-origin zoom, blur, saturation and fade. */
.dc-folder-backdrop img { position: absolute; top: -18px; left: -18px; width: calc(50% + 18px); height: calc(100% + 36px); max-width: none; object-fit: cover; opacity: .17; filter: blur(7px) saturate(1.1); mask-image: linear-gradient(90deg,#000 0%,rgba(0,0,0,.62) 48%,transparent 100%); -webkit-mask-image: linear-gradient(90deg,#000 0%,rgba(0,0,0,.62) 48%,transparent 100%); transform: scale(1.03); transform-origin: left center; transition: opacity var(--dc-folder-duration) ease-in-out,filter var(--dc-folder-duration) ease-in-out,transform var(--dc-folder-duration) ease-in-out; }
.dc-public-folder__copy { min-width: 0; padding: 12px 16px 12px 0; position: relative; z-index: 1; }
.dc-public-folder .dc-metadata { gap:3px 10px; }
.dc-public-folder h2 { display: flex; flex-wrap:wrap; align-items: center; gap: 8px; font-size: 20px; color: #dce1f1; margin: 0 0 8px; overflow-wrap: anywhere; line-height: 1.3; }
.dc-public-folder h2 svg { color: #70bdd6; width: 18px; height: 18px; }
.dc-public-folder h2 > span:not(.dc-file-badge) { min-width: 0; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.dc-metadata > .dc-folder-updated { min-width: 0; flex-basis:100%; }
.dc-folder-updated > span { min-width: 0; }
.dc-folder-arrow { position: absolute; right: 12px; top: 12px; color: #5b89a4; width: 16px !important; height: 16px !important; }
.dc-public-folder:is(:hover,:focus-visible) { border-color: #59d4ef; box-shadow: 0 0 24px #59d4ef14; }
.dc-public-folder:is(:hover,:focus-visible) .dc-folder-avatar { border-right-color: #59d4ef; box-shadow: 6px 0 18px -8px #59d4ef80; }
.dc-public-folder:is(:hover,:focus-visible) .dc-folder-backdrop img { opacity: .24; filter: blur(8px) saturate(1.14); transform: scale(1.13); }
@media (max-width: 1050px) {
	.dc-file-download { font-size: 14px; }
}
@media (max-width: 1000px) {
	.dc-public__header { flex-wrap: wrap; }
	.dc-public-folder { gap: 15px; }
	.dc-public-folder h2 { font-size: 17px; }
	.dc-public-folder .dc-metadata { gap: 3px 12px; font-size: 13px; }
}
@media (max-width: 900px) {
	.dc-public-folder { width:100%; }
}
@media (max-width: 760px) {
	.dc-folder-card .admin-terms-card__copy { padding-right: 0; }
	.dc-folder-card .admin-terms-card__badges { position: static; margin-left: auto; }
}
@media (max-width: 600px) {
	.dc-editor-heading { flex-wrap: wrap; }
	.dc-editor .admin-settings-card__header { grid-template-columns: 36px minmax(0,1fr); }
	.dc-editor .admin-settings-card__header > .dc-button { grid-column: 1 / -1; }
	.dc-editor .admin-settings-card__body { padding: 16px 12px; }
	.dc-edit-file { flex-wrap: wrap; gap: 8px; }
	.dc-edit-file .dc-file-icon { width: 34px; height: 40px; }
	.dc-file-actions { margin-left: auto; }
	.dc-edit-file__copy { flex-basis: calc(100% - 92px); }
	.dc-group__header { gap: 3px; padding: 6px; }
	.dc-group__header > svg { display: none; }
	.dc-group__name { font-size: 12px; }
	.dc-upload { padding: 18px; }
	.dc-public { margin-top: 25px; padding: 0 14px; }
	.dc-public__header { gap: 20px; padding-top: 15px; }
	.dc-public__header .dc-total { max-width: 100%; font-size: 14px; padding: 12px 16px 12px 12px; }
	.dc-public h1 { gap: 10px; font-size: 24px; }
	.dc-public h1 > svg { width: 25px; height: 25px; }
	.dc-folder-heading { gap: 16px; }
	.dc-folder-heading .dc-folder-avatar { width: 78px; height: 78px; }
	.dc-folder-heading h1 { font-size: 21px; }
	.dc-metadata { font-size: 13px; gap: 8px 12px; }
	.dc-download-all { width: 100%; }
	.dc-archive, .dc-archive-pending { width: 100%; }
	.dc-public-file { --dc-file-icon-size: 80px; min-height: 126px; grid-template-columns: var(--dc-file-icon-size) minmax(0,1fr); gap: 8px 14px; }
	.dc-public-file .dc-file-icon { grid-row: 1 / 3; }
	.dc-public-file__copy { padding: 10px 12px 0 0; gap: 5px; align-self: end; }
	.dc-public-file__name { font-size: 14px; }
	.dc-file-metadata { font-size: 12px; gap: 4px 12px; }
	.dc-file-metadata svg { width: 13px; height: 13px; }
	.dc-file-download { grid-column: 2; align-self: start; justify-content: flex-start; padding: 0 10px 10px 0; }
	.dc-public-folder { --dc-folder-avatar-size: 104px; gap: 14px; }
	.dc-public-folder h2 { font-size: 16px; margin-bottom: 8px; }
	.dc-public-folder__copy { padding-right: 20px; }
}
@media (max-width: 420px) {
	.dc-file-download { font-size: 13px; gap: 8px; }
}
@media (max-width: 360px) {
	.dc-public-folder { --dc-folder-avatar-size: 84px; gap: 12px; }
	.dc-public-folder__copy { padding-right: 12px; }
	/* Keep the complete download label inside narrow cards without changing the square icon panel. */
	.dc-public-file { gap: 4px 8px; }
	.dc-public-file__copy { padding-top: 8px; }
	.dc-file-download { font-size: 12px; gap: 4px; padding-right: 6px; }
	.dc-file-download svg { width: 14px; height: 14px; }
}
.dc-public-file__title,.dc-edit-file__title { display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0; }
.dc-public-file__name { min-width:0;max-width:100%; }
.dc-file-badge {
	--dc-badge-rgb:89,167,255;--dc-badge-color:#d0eaff;--dc-badge-radius:4px;
	position:relative;display:inline-flex;align-items:center;gap:5px;max-width:100%;min-height:22px;padding:3px 5px;
	border:1px solid rgba(var(--dc-badge-rgb),.26);border-radius:var(--dc-badge-radius);color:var(--dc-badge-color);
	/* Follow the animated foreground color so a status change also blends the gradient. */
	background:linear-gradient(100deg,color-mix(in srgb,currentColor 14%,transparent),color-mix(in srgb,currentColor 3%,transparent));
	font:400 10px/14px GothamPro,sans-serif;letter-spacing:0;text-shadow:none;vertical-align:middle;
	transition:color .36s,border-color .36s,background-color .36s,box-shadow .36s;
}
.dc-file-badge[hidden] { display:none; }
.dc-file-badge svg,.dc-public-folder h2 .dc-file-badge svg { width:14px;height:14px;flex-shrink:0;color:inherit;filter:none; }
/* Gotham's capitals sit above the line-box centre; correct the glyphs, not the icon. */
.dc-badge__text { position:relative;top:1px;min-width:0; }
.dc-update-badge { box-sizing:border-box;overflow:hidden;isolation:isolate; }
.dc-status-content { display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;flex:none; }
.dc-status-content > span:first-child { display:flex;align-items:center;flex:none; }
.dc-status-content--previous { position:absolute;left:5px;top:3px;max-width:none;pointer-events:none; }
.dc-update-badge[data-dc-update-state="outdated"] { --dc-badge-rgb:244,200,91;--dc-badge-color:#f8e6b5; }
.dc-update-badge[data-dc-update-state="current"] { --dc-badge-rgb:56,214,137;--dc-badge-color:#b9f2d5; }
.dc-update-badge[data-dc-update-state="downloading"] { border-color:transparent;box-shadow:0 0 10px #59a7ff12; }
.dc-file-badge > .dc-status-border { display:none;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible; }
.dc-update-badge[data-dc-update-state="downloading"] > .dc-status-border { display:block; }
/* SVG occupies the padding box. Subtract the 1px badge border and half of the
   1px stroke so its outer curve follows the inner clipping radius exactly. */
.dc-status-border rect { rx:calc(var(--dc-badge-radius) - 1.5px);ry:calc(var(--dc-badge-radius) - 1.5px);width:calc(100% - 1px);height:calc(100% - 1px);fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round;stroke-dasharray:4 3;animation:dc-status-dash 1.35s linear infinite; }
@keyframes dc-status-dash { to { stroke-dashoffset:-14; } }
.dc-public-file .dc-file-download { min-width:0;flex-direction:column;align-items:flex-end;gap:6px;padding-block:12px; }
.dc-file-download__action { display:flex;align-items:center;gap:10px; }
.dc-file-download .dc-update-badge { flex-shrink:0;white-space:normal;max-width:min(215px,100%);text-align:left; }
.dc-public-file:is(:hover,:focus-visible) .dc-file-download .dc-update-badge svg { filter:none; }
.dc-icon-button[aria-pressed="true"] { color:#b9dfff;background:#59a7ff1a;border-color:#59a7ff42; }
.dc-quick { margin-bottom:24px; }
.dc-quick__actions { display:flex;gap:8px; }
.dc-quick__files { display:grid;gap:6px; }
.dc-quick__files:empty { display:none; }
.dc-quick .dc-edit-file { padding:10px; }
.dc-quick .dc-upload:disabled { opacity:.5;cursor:default; }
.dc-quick-modal .site-modal__window { width:min(700px,calc(100vw - 32px)); }
.dc-quick-plan { list-style:none;margin:0;padding:0;max-height:50vh;overflow:auto;display:grid;gap:8px; }
.dc-quick-plan li { display:flex;gap:10px;align-items:flex-start;padding:12px;border-left:2px solid #59d4ef;background:#59d4ef0a;color:#c3e8f2; }
.dc-quick-plan li.is-rejected { border-color:#ed7c97;background:#ed7c970a;color:#e7b6c1; }
.dc-quick-plan li > span { display:grid;gap:5px;min-width:0;overflow-wrap:anywhere;font-size:13px; }
.dc-quick-plan small { color:#929bb0;font-size:11px;line-height:1.6; }
@media(max-width:600px) {
	.dc-public-file .dc-file-download { align-items:flex-start;padding-top:0; }
	.dc-file-download__action { gap:7px; }
	.dc-quick .admin-settings-card__header { grid-template-columns:36px minmax(0,1fr); }
	.dc-quick__actions { grid-column:1 / -1;justify-content:flex-end; }
}
@media (prefers-reduced-motion: reduce) { .dc-editor *, .dc-public *, .dc-modal * { animation: none !important; transition: none !important; } }
