@charset "UTF-8";
/* Download area page (/download). Loads after styles.css and theme.css and uses their colours and fonts. */

.download-main{padding-bottom:30px}
.download-hero{padding-top:64px}
.download-hero .section-heading{align-items:flex-end}
.download-title{margin:0 0 12px;font-size:clamp(30px,3.4vw,44px);line-height:1.5;letter-spacing:2px;font-weight:400;color:#4f2f3f}
.download-title>span{background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.download-hero .section-description{margin:0}

/* ---------- Owner upload panel ---------- */
.resource-admin{margin-top:36px;padding:26px 28px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.8);
  box-shadow:0 26px 54px -38px rgba(170,70,115,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.resource-admin[hidden]{display:none}
.resource-admin-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.resource-admin-head .cloud-symbol{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:#ffe6ef;color:var(--rose-deep)}
.resource-admin-head h2{margin:0;font-size:24px;line-height:1.4}
.resource-admin-head p{margin:2px 0 0;font-size:14px;color:var(--muted);overflow-wrap:anywhere}
.resource-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px 22px;align-items:start}
.resource-file input[type="file"]{width:100%;padding:22px 16px;background:#fff3f7;border:1.5px dashed #ecb7cc}
.resource-file small{color:#a3808f;line-height:1.7}
.resource-fields{display:grid;gap:14px}
.resource-progress,.resource-form>.form-error,.resource-submit-row{grid-column:1 / -1}
.resource-progress>p{font-size:14px}
.resource-submit-row{display:flex;align-items:center;gap:14px 20px;flex-wrap:wrap}
.resource-submit-row>.button{flex-shrink:0}
.resource-submit-row>.storage-note{flex:1 1 320px}
.resource-submit-row .button[disabled]{opacity:.6;cursor:progress;transform:none}

/* ---------- File list ---------- */
.downloads{padding:40px 0 24px}
.list-title{margin:0 0 18px;font-size:clamp(22px,2.2vw,28px)}
.resource-status{margin:0 0 16px;font-size:14px;color:#a27c8f;text-align:center}
.resource-status[hidden]{display:none}
.resource-list{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.resource-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px 22px;padding:20px 24px;
  border:1px solid var(--line);border-radius:22px;background:var(--card);box-shadow:var(--shadow);
  transition:transform .35s cubic-bezier(.3,1.4,.5,1),box-shadow .35s}
.resource-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}
.resource-type{position:relative;width:58px;height:68px;border-radius:12px 20px 12px 12px;display:grid;place-items:center;
  background:linear-gradient(160deg,#ffe0ec,#fff0e4);color:var(--rose-deep);font:600 14px/1 var(--latin);letter-spacing:1px;overflow:hidden}
.resource-type::before{content:"";position:absolute;top:0;right:0;width:18px;height:18px;border-radius:0 0 0 8px;background:linear-gradient(225deg,#fff7f9 50%,#f3c2d6 50%)}
.resource-type>span{max-width:54px;overflow:hidden;text-overflow:clip}
.resource-info{min-width:0}
.resource-title{margin:0 0 4px;font-size:19px;line-height:1.5;font-weight:400;color:#4f2f3f;overflow-wrap:anywhere}
.resource-desc{margin:0 0 6px;font-size:14.5px;line-height:1.8;color:#8f6878;white-space:pre-line;overflow-wrap:anywhere}
.resource-meta{display:flex;flex-wrap:wrap;gap:2px 0;margin:0;font-size:13px;color:#a3808f}
.resource-meta>span:not(:last-child)::after{content:"·";margin:0 9px;color:#e2b3c7}
.resource-filename{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.resource-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.resource-count{font-size:13px;color:#a3798d;white-space:nowrap}
.resource-count>b{font:500 24px/1 var(--latin);font-variant-numeric:lining-nums;color:var(--rose-deep);margin-right:2px}
.resource-download{text-decoration:none;white-space:nowrap}
.delete-resource{font-size:13px;color:#b0567f;padding:2px 0}
.delete-resource:hover{color:#8f2f57}
.delete-resource[disabled]{opacity:.5}
.download-page .empty-state{padding:56px 20px;border:1px dashed #efc6d6;border-radius:22px;background:rgba(255,255,255,.6)}
.download-page .empty-state p{font-size:14px}
.footer-link{color:#a66a87;font-size:14px}
.footer-link:hover{color:var(--rose-deep)}

@media(max-width:800px){
  .download-hero{padding-top:44px}
  .download-hero .section-heading{display:block}
  .resource-form{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:620px){
  .download-hero{padding-top:32px}
  .download-title{font-size:clamp(24px,7.4vw,32px);letter-spacing:1px}
  .resource-admin{margin-top:24px;padding:20px 18px;border-radius:20px}
  .resource-admin-head h2{font-size:20px}
  .resource-admin-head p{font-size:13px}
  .downloads{padding-top:28px}
  .resource-card{grid-template-columns:auto minmax(0,1fr);gap:12px 14px;padding:16px;border-radius:18px}
  .resource-type{width:46px;height:54px;font-size:12px}
  .resource-type::before{width:14px;height:14px}
  .resource-title{font-size:17px}
  .resource-desc{font-size:13.5px}
  .resource-meta{font-size:12px}
  .resource-actions{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;
    padding-top:10px;border-top:1px dashed #f0d0dd}
  .resource-actions>.resource-download{margin-left:auto}
  .footer-link{font-size:13px}
}
