.dp-site{--navy:#0a1539;--ink:#13264b;--pink:#ff467d;--gold:#ffd77a;--line:#e6e9f7;max-width:none;width:100%;margin:0 auto;color:var(--ink);font-family:inherit;line-height:1.55;isolation:isolate}.dp-site *{box-sizing:border-box}.dp-site a{text-decoration:none}.dp-site button{cursor:pointer}.dp-topnav{background:#071438;color:white;display:flex;align-items:center;justify-content:space-between;padding:14px max(3%,calc((100% - 1440px)/2));gap:20px;min-height:76px}.dp-topnav a{color:white}.dp-brand{display:flex;align-items:center;font-weight:900;font-size:22px;line-height:1.1;white-space:nowrap}.dp-brand small{display:block;font-size:12px;letter-spacing:1px;font-weight:500;color:#bdc8eb}.dp-navlinks{display:flex;gap:clamp(12px,2.3vw,35px);font-weight:750}.dp-navlinks a:hover{color:#ff93b8}.dp-signin{border:1px solid #8296d4;border-radius:30px;padding:10px 18px;font-size:13px;white-space:nowrap}.dp-cosmos{position:relative;overflow:hidden;min-height:570px;background:radial-gradient(circle at 14% 40%,#794ac9a8,transparent 34%),radial-gradient(circle at 82% 20%,#176cb2b5,transparent 38%),radial-gradient(circle at 50% 88%,#d342a654,transparent 35%),linear-gradient(115deg,#071339,#172765 50%,#071c49);color:#fff}.dp-cosmos:before,.dp-cosmos:after{content:'✦';position:absolute;font-size:200px;color:#ffdc8e18;top:90px;left:2%;transform:rotate(-12deg)}.dp-cosmos:after{left:auto;right:3%;top:5px;font-size:260px;color:#8acbff22}.dp-stars{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(#fff 1px,transparent 1.7px),radial-gradient(#ffd2f1 1px,transparent 2px),radial-gradient(#9cdbff 1.5px,transparent 2px);background-size:97px 109px,151px 167px,229px 199px;background-position:11px 17px,64px 37px,95px 89px;opacity:.65;animation:dp-shimmer 9s ease-in-out infinite alternate}.dp-orbit{position:absolute;width:420px;height:420px;border:2px solid #f9ce8e25;border-radius:50%;transform:rotate(-24deg);pointer-events:none}.dp-orbit-a{left:-230px;bottom:-190px}.dp-orbit-b{right:-210px;top:-210px}.dp-hero-inner{position:relative;max-width:1440px;margin:auto;text-align:center;padding:42px 24px 54px}.dp-eyebrow{font-size:12px;letter-spacing:3px;font-weight:800;color:#ffe2a6}.dp-year{font-size:28px;letter-spacing:13px;margin:17px 0 -22px;font-weight:800}.dp-logo{font-size:clamp(64px,10.8vw,155px);line-height:1.12;letter-spacing:-7px;margin:12px 0 0;font-weight:950;font-style:italic;background:linear-gradient(105deg,#ff68bc 12%,#fdbf7b 29%,#dba7ff 45%,#69e2fc 60%,#ffe091 76%,#ff78b4 90%);color:transparent;background-clip:text;-webkit-background-clip:text;filter:drop-shadow(0 7px 15px #0007)}.dp-contest{font-size:clamp(16px,2.5vw,32px);font-weight:800;letter-spacing:11px;color:white;margin-top:-9px}.dp-hero-inner h2{font-size:clamp(23px,3vw,36px);margin:22px 0 2px;color:#e2efff;font-weight:900}.dp-hero-inner>p{color:#d5e5ff;margin:4px 0;font-size:17px}.dp-hero-inner .dp-hero-description{font-size:14px;opacity:.85;margin-top:16px}.dp-hero-ctas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1050px;gap:15px;margin:35px auto 0}.dp-hero-ctas a{background:linear-gradient(125deg,#263c85,#111e4a);border:1px solid #9cacf0;border-radius:13px;padding:21px 22px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:17px;font-weight:900;box-shadow:0 12px 35px #07122c77;transition:transform .2s,filter .2s}.dp-hero-ctas a:hover{transform:translateY(-4px);filter:brightness(1.1)}.dp-hero-ctas .dp-pink{background:linear-gradient(120deg,#f82f79,#fd5c86);border-color:#ff9ab7}.dp-hero-ctas .dp-teal{background:linear-gradient(120deg,#006b83,#02a99e);border-color:#76e4d6}.dp-main{background:linear-gradient(180deg,#d9e5ff 0%,#f4f6ff 34%,#f9faff 100%);padding:0 max(3%,calc((100% - 1440px)/2)) 50px}.dp-category-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;position:relative;top:-20px;z-index:1;padding:15px;border:1px solid #fff9;border-radius:20px;background:#ffffff9e;box-shadow:0 14px 34px #173b7c25;backdrop-filter:blur(12px)}.dp-category-pill{display:flex;align-items:center;gap:12px;padding:18px 24px;border-radius:16px;min-height:88px;transition:transform .2s}.dp-category-pill:hover{transform:translateY(-3px)}.dp-category-pill span{font-size:32px}.dp-category-pill strong{font-size:20px}.dp-category-pill small{margin-left:auto;font-size:11px}.dp-pill-0{background:linear-gradient(120deg,#ffc6d9,#f7a9cb);color:#8a164a}.dp-pill-1{background:linear-gradient(120deg,#cdd9ff,#aebfff);color:#283da5}.dp-pill-2{background:linear-gradient(120deg,#c4f9e0,#9fe9c7);color:#116b61}.dp-gallery-panel{background:#fff;border-radius:20px;box-shadow:0 14px 40px #253c7a16;padding:28px;margin:6px 0 20px;scroll-margin-top:15px}.dp-section-title{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:25px}.dp-kicker{font-size:11px;font-weight:900;color:#6077c3;letter-spacing:2px}.dp-section-title h2{font-size:30px;margin:2px 0 4px;color:#14254d;font-weight:900}.dp-section-title em{font-style:normal;font-size:14px;background:#e9edff;border-radius:25px;padding:3px 10px}.dp-section-title p{font-size:13px;color:#6e7b99;margin:0}.dp-tools{display:flex;gap:10px}.dp-tools input,.dp-tools select{border:1px solid #d6dcef;border-radius:30px;padding:12px 16px;font-size:13px;background:#fff;color:#27375c}.dp-tools input{width:260px}.dp-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.dp-art{background:#fff;border:1px solid #e8ebf4;border-radius:14px;overflow:hidden;min-width:0;box-shadow:0 7px 22px #1c30610c;transition:transform .2s,box-shadow .2s}.dp-art:hover{transform:translateY(-5px);box-shadow:0 16px 35px #1c30612b}.dp-art[hidden]{display:none}.dp-art-cover{border:0;display:block;width:100%;position:relative;padding:0;background:#edf1ff}.dp-art-cover img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.dp-image-count{position:absolute;bottom:10px;right:10px;border-radius:20px;background:#0b1c43d9;color:white;padding:4px 10px;font-size:11px}.dp-art-info{padding:13px}.dp-art-category{font-size:11px;font-weight:800;background:#f9e5f0;color:#b22868;border-radius:12px;padding:3px 9px}.dp-art-info h3{font-size:16px;font-weight:900;color:#1d2e58;margin:10px 0 4px}.dp-art-info>p{font-size:12px;color:#66748e;min-height:35px;margin:0 0 8px}.dp-art-actions{display:flex;justify-content:space-between;align-items:center;gap:7px;border-top:1px solid #edf0f8;padding-top:9px}.dp-art-actions button{border:0;background:transparent;font-size:12px;color:#344b84;padding:5px}.dp-art-actions .dp-vote{color:#d82f74;font-weight:900}.dp-vote-muted{font-size:11px;color:#8b94a8}.dp-comments{border-top:1px solid #e7ebf5;margin-top:10px;padding-top:10px}.dp-comments h4{font-size:13px;margin:0 0 10px}.dp-comment{background:#f5f7ff;border-radius:9px;padding:9px;margin:8px 0}.dp-comment strong{font-size:11px}.dp-comment p{font-size:12px;margin:4px 0}.dp-comment-text{width:100%;border:1px solid #d4dbed;border-radius:8px;padding:8px;font-size:12px}.dp-comment-send{width:100%;border:0;background:#213d7d;color:#fff;border-radius:8px;padding:9px;font-size:12px}.dp-no-results{text-align:center;padding:40px}.dp-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;scroll-margin-top:20px}.dp-info{border-radius:17px;padding:22px;min-height:210px;border:1px solid #fff;box-shadow:0 7px 24px #142b6a12}.dp-info h3{font-size:19px;margin:0 0 16px;font-weight:900}.dp-info h3 small{font-size:11px;font-weight:500}.dp-info p{font-size:13px;margin:8px 0}.dp-info small{font-size:12px;line-height:1.7}.dp-info a{display:block;background:#fff;border-radius:10px;margin:7px 0;padding:9px 11px;font-size:12px;font-weight:800;color:#1d3c80}.dp-info-blue{background:#e4efff;color:#164294}.dp-info-pink{background:#ffe4f0;color:#a92963}.dp-info-yellow{background:#fff1ce;color:#785019}.dp-info-mint{background:#dcf7ef;color:#0b706a}.dp-footer{background:#0c1b40;color:#c9d5ef;padding:28px max(3%,calc((100% - 1440px)/2));font-size:12px;display:flex;justify-content:space-between;gap:15px}.dp-simple{min-height:65vh;max-width:900px;margin:auto;padding:70px 24px}.dp-simple h1{font-size:34px;color:#1c315d}.dp-simple p{color:#52627d}.dp-simple .dp-btn,.dp-parent-form button{display:inline-block;border:0;background:#203e86;color:#fff;border-radius:9px;padding:12px 18px;font-weight:800}.dp-parent-form{max-width:500px;display:grid;gap:15px}.dp-parent-form label{display:grid;gap:8px}.dp-parent-form input{padding:14px;border:1px solid #b9c7e6;border-radius:8px}.dp-my-votes{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0}.dp-my-votes>div{padding:22px;border:1px solid #d9e2f6;border-radius:12px}.dp-lightbox[hidden]{display:none}.dp-lightbox{position:fixed;inset:0;z-index:999999;background:#050b1bf2;display:flex;align-items:center;justify-content:center;gap:10px;padding:55px 15px;color:#fff}.dp-lightbox img{max-width:calc(100vw - 150px);max-height:78vh;object-fit:contain}.dp-lightbox button{border:1px solid #ffffff77;border-radius:10px;background:#ffffff20;color:white;font-size:35px;padding:0 12px}.dp-lightbox-close{position:absolute;top:15px;right:20px}.dp-lightbox-caption{position:absolute;bottom:15px;font-size:14px}.dp-modal-open{overflow:hidden}@keyframes dp-shimmer{from{opacity:.35}to{opacity:.85}}@media(max-width:1100px){.dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dp-info-grid{grid-template-columns:repeat(2,1fr)}.dp-navlinks{gap:10px;font-size:13px}.dp-category-pill{padding:12px}.dp-category-pill small{display:none}}@media(max-width:720px){.dp-topnav{flex-wrap:wrap;padding:12px 16px;gap:12px}.dp-brand{font-size:16px}.dp-brand small{font-size:10px}.dp-navlinks{order:3;overflow:auto;width:100%;justify-content:space-between}.dp-signin{font-size:11px;padding:8px 10px}.dp-cosmos{min-height:490px}.dp-hero-inner{padding:40px 14px 60px}.dp-logo{font-size:clamp(49px,12vw,84px);letter-spacing:-3px}.dp-year{font-size:18px;margin-bottom:-10px}.dp-contest{letter-spacing:5px}.dp-hero-inner h2{font-size:23px}.dp-hero-inner>p{font-size:13px}.dp-hero-ctas{grid-template-columns:1fr;gap:9px;margin-top:23px}.dp-hero-ctas a{padding:12px 18px;font-size:14px}.dp-main{padding:0 12px 30px}.dp-category-strip{gap:7px;padding:7px}.dp-category-pill{flex-direction:column;gap:2px;text-align:center;min-height:65px;padding:8px 3px}.dp-category-pill span{font-size:20px}.dp-category-pill strong{font-size:12px}.dp-gallery-panel{padding:14px}.dp-section-title{align-items:start;flex-direction:column}.dp-section-title h2{font-size:23px}.dp-tools{width:100%}.dp-tools input{width:100%;min-width:0}.dp-tools select{max-width:120px}.dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dp-art-info{padding:9px}.dp-art-info h3{font-size:13px}.dp-art-info>p{font-size:11px}.dp-art-actions{flex-wrap:wrap}.dp-info-grid{grid-template-columns:1fr}.dp-info{min-height:0}.dp-footer{flex-direction:column;padding:24px}.dp-my-votes{grid-template-columns:1fr}.dp-lightbox img{max-width:calc(100vw - 105px)}.dp-lightbox button{font-size:23px;padding:2px 7px}}

/* Annual festival themes: full-bleed background with centered content */
.dp-annual { width:100%; min-height:100vh; background:radial-gradient(ellipse at 50% 0%,#2e337b 0%,#111b3a 54%,#0b1230 100%); }
.dp-annual .dp-site { max-width:none; width:100%; background:transparent; }
.dp-annual .dp-main { max-width:1440px; width:calc(100% - 48px); margin:0 auto; }
.dp-annual .dp-cosmos { width:100%; }
.dp-annual.dp-theme-garden { background:radial-gradient(ellipse at 50% 0%,#a95696 0%,#46305e 52%,#1a2144 100%); }
.dp-theme-garden .dp-cosmos { background:linear-gradient(120deg,#592c65,#ba649c 53%,#e5ad86); }
.dp-theme-garden .dp-year { color:#ffdeae; }
.dp-annual.dp-theme-aurora { background:radial-gradient(ellipse at 50% 0%,#206b79 0%,#17274e 60%,#0b142c 100%); }
.dp-theme-aurora .dp-cosmos { background:linear-gradient(115deg,#10274d,#1c817e 55%,#3d478d); }
.dp-year-nav { padding:22px 0; }
.dp-archive { color:#fff; }
.dp-archive h2 { font-size:1.15rem; margin:0 0 14px; }
.dp-archive-grid { display:flex; flex-wrap:wrap; gap:12px; }
.dp-archive-card { min-width:170px; flex:1 1 170px; display:flex; flex-direction:column; gap:6px; text-decoration:none; color:white; border:1px solid rgba(255,255,255,.24); border-radius:16px; padding:16px 20px; background:linear-gradient(135deg,#263e8b,#543b87); }
.dp-archive-card.dp-theme-garden { background:linear-gradient(135deg,#8e438d,#e59b8e); }
.dp-archive-card.dp-theme-aurora { background:linear-gradient(135deg,#165a74,#316a9a); }
.dp-archive-card strong { font-size:1.65rem; }
.dp-archive-card span { font-weight:700; }
.dp-archive-card small { opacity:.85; }
@media(max-width:767px){.dp-annual .dp-main{width:calc(100% - 28px)}}

/* v0.4.0: single artwork view */
.dp-art-info h3 a{color:inherit;text-decoration:none}.dp-art-info h3 a:hover{text-decoration:underline}.dp-detail-link{font-weight:700;text-decoration:underline;text-underline-offset:3px}.dp-work-detail{max-width:1100px;margin:0 auto}.dp-work-detail h1{line-height:1.25}.dp-detail-images{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin:28px 0}.dp-detail-images figure{margin:0;text-align:center}.dp-detail-image{max-width:100%;width:auto;height:auto;max-height:none;object-fit:contain;border-radius:14px;box-shadow:0 10px 40px #0003}.dp-detail-description,.dp-detail-actions,.dp-detail-comments{margin:28px 0;padding:22px;border-radius:16px;background:#ffffff12}.dp-detail-comments .dp-comment{padding:12px 0;border-bottom:1px solid #ffffff25}.dp-detail-comments .dp-comments{display:block;margin-top:20px}.dp-detail-comments textarea{width:100%;min-height:90px}.dp-detail-comments button{margin-top:10px}@media(max-width:640px){.dp-detail-description,.dp-detail-actions,.dp-detail-comments{padding:14px}.dp-detail-images{gap:16px}}

.dp-hall-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:22px;margin:20px 0 36px}.dp-hall-card{border:1px solid rgba(255,255,255,.15);border-radius:16px;overflow:hidden;background:#202b4e}.dp-hall-card a{display:block;padding:12px;color:white;text-decoration:none}.dp-hall-card img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:10px}.dp-hall-card span{display:block;color:#eac47b;margin-top:12px}.dp-hall-card h3{margin:5px 0 0}.dp-hall h1{color:#f5d38c}

/* Astra integration (scoped only to DreamPoster shortcode pages).
   Astra site header/footer remain available; plugin duplicate nav/footer are hidden. */
body.dp-astra-page { overflow-x:clip; }
body.dp-astra-page #primary, body.dp-astra-page .site-content #primary { width:100%; float:none; margin:0; padding:0; max-width:none; }
body.dp-astra-page #secondary { display:none; }
body.dp-astra-page .site-content .ast-container,
body.dp-astra-page .site-content .ast-container-fluid,
body.dp-astra-page .site-content .content-area,
body.dp-astra-page .site-content .site-main,
body.dp-astra-page .site-content article.page,
body.dp-astra-page .site-content article.type-page,
body.dp-astra-page .site-content .entry-content { max-width:none; width:100%; margin-left:0; margin-right:0; padding-left:0; padding-right:0; }
body.dp-astra-page .site-content .entry-header,
body.dp-astra-page .site-content article.type-page > .entry-header > .entry-title { display:none; }
body.dp-astra-page .site-content .entry-content > .wp-block-group { max-width:none; }
body.dp-astra-page .site-content .entry-content > .dp-annual,
body.dp-astra-page .site-content .entry-content > .dp-site,
body.dp-astra-page .site-content .entry-content > .dp-archive { width:100%; max-width:none; }
body.dp-astra-page .dp-annual, body.dp-astra-page .entry-content > .dp-site { width:100vw; max-width:none; position:relative; left:50%; margin-left:-50vw; }
body.dp-astra-page .dp-site .dp-topnav, body.dp-astra-page .dp-site .dp-footer { display:none; }
body.dp-astra-page .dp-annual .dp-main { width:calc(100% - 48px); max-width:1440px; }
body.dp-astra-page .dp-annual .dp-simple { width:calc(100% - 48px); }
body.dp-astra-page .dp-annual a, body.dp-astra-page .dp-annual button { transition-duration:.18s; }
@media(max-width:767px){body.dp-astra-page .dp-annual .dp-main,body.dp-astra-page .dp-annual .dp-simple{width:calc(100% - 28px)}}

/* v0.8 front editor */
.dp-front-editor{max-width:1440px;margin:auto;padding:32px 24px;color:#24324b;background:#f7f9ff}.dp-front-editor h1,.dp-front-editor h2,.dp-front-editor h3{color:#233b70}.dp-editor-layout{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:24px}.dp-editor-sidebar,.dp-editor-panel{background:#fff;border:1px solid #dce4f4;border-radius:16px;padding:20px}.dp-editor-worklist{max-height:70vh;overflow:auto;display:grid;gap:6px}.dp-editor-worklist a{padding:9px;border-radius:8px;color:#254276;text-decoration:none;background:#f4f6fb}.dp-editor-worklist a.active{background:#dce8ff}.dp-editor-worklist small{display:block;opacity:.6}.dp-editor-new,.dp-edit-entry a{display:inline-block;padding:10px 15px;margin-bottom:12px;border-radius:9px;background:#264985;color:white;text-decoration:none}.dp-editor-panel form{display:grid;gap:17px}.dp-editor-panel label{display:grid;gap:7px;font-weight:700}.dp-editor-panel input,.dp-editor-panel textarea,.dp-editor-panel select{width:100%;padding:10px;border:1px solid #c9d4e9;border-radius:8px}.dp-editor-images{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:0}.dp-editor-images li{position:relative;cursor:grab;background:#edf2fc;padding:8px;border-radius:10px;display:grid;gap:4px}.dp-editor-images img{width:110px;height:140px;object-fit:contain}.dp-editor-images button{position:absolute;right:4px;top:4px;background:#a12c43;color:#fff;border:0;border-radius:50%;width:26px;height:26px;cursor:pointer}.dp-editor-save{padding:13px 20px;background:#1b4d95;color:white;border:0;border-radius:10px;font-weight:800;cursor:pointer}.dp-editor-note{font-size:13px}.dp-editor-ok{background:#e4f8e9;padding:12px;border-radius:8px}@media(max-width:720px){.dp-editor-layout{grid-template-columns:1fr}.dp-front-editor{padding:16px}.dp-editor-worklist{max-height:220px}}

/* v0.8.2: Scope Astra resets to page shell; never stretch gallery cards. */
body.dp-astra-page .dp-gallery-grid{display:grid;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
body.dp-astra-page .dp-gallery-grid > article.dp-art{width:auto;max-width:none;min-width:0;margin:0;padding:0;float:none;display:block;overflow:hidden}
body.dp-astra-page .dp-gallery-grid .dp-art-cover{display:block;width:100%;min-width:0;overflow:hidden}
body.dp-astra-page .dp-gallery-grid .dp-art-cover img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
body.dp-astra-page .dp-gallery-grid .dp-art-info{min-width:0;padding:13px;overflow-wrap:anywhere}
body.dp-astra-page .dp-gallery-grid .dp-art-info h3{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:1.5}
body.dp-astra-page .dp-gallery-grid .dp-art-info h3 a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.dp-astra-page .dp-gallery-grid .dp-art-actions{flex-wrap:wrap;justify-content:flex-start}
@media(max-width:1100px){body.dp-astra-page .dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){body.dp-astra-page .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:420px){body.dp-astra-page .dp-gallery-grid{grid-template-columns:minmax(0,1fr)}}

/* v0.8.3 mobile-first card resilience and metadata */
.dp-annual .dp-gallery-grid{min-width:0;grid-template-columns:repeat(4,minmax(0,1fr))}
.dp-annual .dp-art{min-width:0;max-width:100%;overflow:hidden}
.dp-annual .dp-art-cover{width:100%;min-width:0;aspect-ratio:3/4;overflow:hidden}
.dp-annual .dp-art-cover img{width:100%;height:100%;object-fit:cover;display:block}
.dp-annual .dp-art-info h3{overflow-wrap:normal;word-break:keep-all;line-height:1.45}
.dp-annual .dp-art-info .dp-team,.dp-annual .dp-art-info .dp-subject{margin:3px 0;color:#cbd7f7;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dp-work-byline{display:flex;gap:16px;flex-wrap:wrap;margin:12px 0;color:#e6eafa}
.dp-work-byline p{margin:0}
.dp-work-byline strong{margin-right:8px}
@media(max-width:1100px){.dp-annual .dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.dp-annual .dp-gallery-grid,body.dp-astra-page .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dp-annual .dp-art-info{padding:10px}.dp-annual .dp-art-actions button,.dp-annual .dp-art-actions a{min-height:40px;touch-action:manipulation}.dp-editor-panel input,.dp-editor-panel textarea,.dp-editor-panel select{font-size:16px}}
@media(max-width:360px){.dp-annual .dp-gallery-grid,body.dp-astra-page .dp-gallery-grid{grid-template-columns:minmax(0,1fr)}}

/* v0.8.4 optional gallery cover editor */
.dp-featured-control{margin:20px 0;padding:18px;border:1px solid #cbd5e1;border-radius:12px}
.dp-featured-control p{font-size:14px;line-height:1.6}
.dp-featured-preview{display:flex;align-items:center;gap:14px;margin:12px 0}
.dp-featured-preview img{width:100px;height:130px;object-fit:contain;border-radius:8px;background:#eef2ff}
.dp-featured-reset{display:flex;align-items:center;gap:8px;margin-top:12px}
.dp-featured-reset input{width:auto}

/* v0.8.5: hard reset for theme/grid inherited shrink-to-fit. */
body.dp-astra-page .dp-annual .dp-main, .dp-annual .dp-main {display:block;box-sizing:border-box;min-width:0;max-width:1440px;width:calc(100% - 48px);margin-left:auto;margin-right:auto;}
.dp-annual .dp-main > .dp-year-nav,.dp-annual .dp-main > .dp-category-strip,.dp-annual .dp-main > .dp-gallery-panel,.dp-annual .dp-main > .dp-info-grid{width:100%;max-width:none;min-width:0;box-sizing:border-box;clear:both;}
.dp-annual .dp-category-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
.dp-annual .dp-gallery-panel{display:block;}
.dp-annual .dp-gallery-grid{display:grid;width:100%;min-width:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.dp-annual .dp-gallery-grid > .dp-art{width:100%;min-width:0;max-width:none;display:block;float:none;writing-mode:horizontal-tb;}
.dp-annual .dp-gallery-grid .dp-art-info,.dp-annual .dp-gallery-grid .dp-art-info *{writing-mode:horizontal-tb;}
.dp-annual .dp-gallery-grid .dp-art-cover{width:100%;aspect-ratio:3/4;}
.dp-annual .dp-gallery-grid .dp-art-cover img{display:block;width:100%;height:100%;object-fit:cover;}
.dp-bulk-category{background:white;border:1px solid #dce4f4;border-radius:16px;padding:20px;margin:16px 0 24px;}
.dp-bulk-category h2{margin:0 0 8px}.dp-bulk-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin:14px 0}.dp-bulk-toolbar label{display:grid;gap:6px}.dp-bulk-toolbar select{min-width:180px;padding:9px;border:1px solid #c9d4e9;border-radius:8px}.dp-bulk-toolbar .dp-bulk-all{display:flex;align-items:center;gap:7px}.dp-bulk-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:280px;overflow:auto}.dp-bulk-list label{display:flex;align-items:center;gap:7px;min-width:0;padding:9px;background:#f4f6fb;border-radius:7px;cursor:pointer}.dp-bulk-list span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dp-bulk-list small{color:#667085;white-space:nowrap}
@media(max-width:1100px){.dp-annual .dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dp-bulk-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){body.dp-astra-page .dp-annual .dp-main,.dp-annual .dp-main{width:calc(100% - 24px)}.dp-annual .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dp-annual .dp-category-strip{gap:6px}.dp-bulk-list{grid-template-columns:1fr}.dp-bulk-category{padding:12px}}

/* v0.8.6: Blocksy-friendly immersive exhibition hero and unified approved cheer feed */
.dp-site .dp-immersive-hero{isolation:isolate;position:relative;background:radial-gradient(circle at 15% 20%,#70409c88,transparent 40%),radial-gradient(circle at 90% 65%,#285eae88,transparent 45%),linear-gradient(125deg,#10152c,#232956 60%,#12172e);}
.dp-site .dp-hero-backdrop{position:absolute;inset:-60px;z-index:-2;background-position:center;background-size:cover;background-repeat:no-repeat;filter:blur(var(--dp-hero-blur,30px));transform:scale(1.07);pointer-events:none;}
.dp-site .dp-immersive-hero.dp-has-hero-image:before{content:'';position:absolute;inset:0;z-index:-1;background:rgba(7,12,30,var(--dp-hero-dim,.55));pointer-events:none;}
.dp-site .dp-immersive-hero .dp-hero-inner{z-index:1;position:relative;}
.dp-site .dp-immersive-hero .dp-stars{z-index:0;opacity:.27;animation:none;}
.dp-site .dp-immersive-hero .dp-orbit{opacity:.3;}
.dp-site .dp-cheer-panel{margin:20px 0;background:#fff;border-radius:20px;padding:clamp(16px,3vw,28px);box-shadow:0 14px 40px #253c7a16;}
.dp-site .dp-cheer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.dp-site .dp-cheer-item{min-width:0;padding:18px;border:1px solid #e4e9f5;background:#f7f9ff;border-radius:14px;}
.dp-site .dp-cheer-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:#65718d;}
.dp-site .dp-cheer-team{background:#e7e9ff;color:#263d84;padding:4px 10px;border-radius:20px;font-weight:800;overflow-wrap:anywhere;}
.dp-site .dp-cheer-item p{font-size:14px;color:#263454;margin:12px 0;overflow-wrap:anywhere;}
.dp-site .dp-cheer-work{font-size:12px;color:#5169a1;}
.dp-site .dp-cheer-empty{grid-column:1/-1;color:#64748b;}
@media(max-width:720px){.dp-site .dp-cheer-list{grid-template-columns:1fr}.dp-site .dp-immersive-hero .dp-hero-backdrop{inset:-35px;filter:blur(min(var(--dp-hero-blur,30px),24px))}}
@media(prefers-reduced-motion:reduce){.dp-site .dp-immersive-hero .dp-stars{animation:none}}

/* v0.8.7: Blocksy full-width DreamPoster pages, without altering other pages */
body.dp-fullwidth-page .ct-container:has(.dp-site),
body.dp-fullwidth-page .site-main:has(.dp-site),
body.dp-fullwidth-page .entry-content:has(.dp-site),
body.dp-fullwidth-page .content-area:has(.dp-site),
body.dp-fullwidth-page .wp-block-post-content:has(.dp-site){width:100%;max-width:none;margin-left:0;margin-right:0;padding-left:0;padding-right:0;}
body.dp-fullwidth-page .entry-content > .dp-annual,body.dp-fullwidth-page .entry-content > .dp-site{width:100%;max-width:none;}
body.dp-fullwidth-page .dp-annual .dp-main{max-width:1440px;width:calc(100% - 48px);margin-inline:auto;}
body.dp-fullwidth-page .dp-annual .dp-cosmos{width:100%;max-width:none;}
body.dp-fullwidth-page .dp-annual .dp-cheer-panel{width:100%;}
@media(max-width:720px){body.dp-fullwidth-page .dp-annual .dp-main{width:calc(100% - 24px);}}

/* 0.9.6: Blocksy integration; bounded to DreamPoster containers. */
body.dp-blocksy-page .dp-annual { width:100%; max-width:100%; margin:0; }
body.dp-blocksy-page .dp-annual .dp-site { width:100%;max-width:100%; }
body.dp-blocksy-page .entry-content > .dp-annual { margin-inline:auto; }
.dp-catalog-list { padding:clamp(20px,4vw,48px) 12px; max-width:1100px; margin:auto; }
.dp-catalog-item { margin:20px auto 36px; min-width:0; max-width:100%; }
.dp-catalog-item iframe { max-width:100%; }


/* v0.9.7: Blocksy full-bleed exhibition layout, scoped to the DreamPoster page.
   Overrides the legacy .dp-annual .dp-main width:calc(...) rule. */
body.dp-blocksy-page.dp-fullwidth-page #main,
body.dp-blocksy-page.dp-fullwidth-page .site-main,
body.dp-blocksy-page.dp-fullwidth-page .ct-container:has(.dp-annual),
body.dp-blocksy-page.dp-fullwidth-page .entry-content:has(.dp-annual),
body.dp-blocksy-page.dp-fullwidth-page .wp-block-post-content:has(.dp-annual) {
  max-width:none;
  padding-top:0;
  padding-bottom:0;
  margin-top:0;
}
body.dp-blocksy-page.dp-fullwidth-page .ct-container:has(.dp-annual),
body.dp-blocksy-page.dp-fullwidth-page .entry-content:has(.dp-annual),
body.dp-blocksy-page.dp-fullwidth-page .wp-block-post-content:has(.dp-annual){
  width:100%;
  padding-left:0;
  padding-right:0;
}
body.dp-blocksy-page.dp-fullwidth-page .entry-header:has(+ .entry-content .dp-annual),
body.dp-blocksy-page.dp-fullwidth-page .hero-section:has(+ .ct-container .dp-annual){display:none;}
body.dp-blocksy-page.dp-fullwidth-page .entry-content .dp-annual {
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  margin-right:0;
  position:relative;
  display:block;
  min-width:0;
}
body.dp-blocksy-page.dp-fullwidth-page .dp-annual > .dp-site {width:100%;max-width:none;}
body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-main {
  width:100%;
  max-width:none;
  min-width:0;
  margin:0;
  padding:0 clamp(16px,3.5vw,64px) 64px;
  display:flow-root;
}
body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-category-strip,
body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-gallery-panel,
body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-info-grid {
  width:100%;max-width:none;min-width:0;
}
body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-category-strip{grid-template-columns:repeat(3,minmax(0,1fr));}
body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
@media(max-width:1100px){body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){
 body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-main{padding:0 12px 40px;}
 body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-category-strip{grid-template-columns:1fr;}
 body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
 body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-gallery-panel{padding:16px;}
}
@media(max-width:430px){body.dp-blocksy-page.dp-fullwidth-page .dp-annual .dp-gallery-grid{grid-template-columns:minmax(0,1fr);}}


/* v0.9.8 Exhibition UI: home/gallery only. All account/voting/server functionality remains unchanged. */
.dp-annual:has(.dp-exhibition-v098){background:#f5f7fc;color:#1d2b49;min-width:0}
.dp-exhibition-v098{--dp-ui-ink:#1b2943;--dp-ui-muted:#60708b;--dp-ui-border:#e6eaf3;--dp-ui-accent:#e94382;color:var(--dp-ui-ink)}
.dp-exhibition-v098 .dp-cosmos.dp-immersive-hero{min-height:0;padding:clamp(36px,5.8vw,82px) 22px clamp(44px,6vw,88px);background:radial-gradient(circle at 16% 35%,#654c9a80,transparent 36%),radial-gradient(circle at 83% 52%,#2363a080,transparent 45%),linear-gradient(115deg,#191d47,#283968 60%,#19305b)}
.dp-exhibition-v098 .dp-hero-inner{width:100%;max-width:1040px;margin-inline:auto;text-align:center}
.dp-exhibition-v098 .dp-year{font-size:clamp(14px,2vw,22px);letter-spacing:.35em;margin:3px 0 4px}
.dp-exhibition-v098 .dp-logo{font-size:clamp(52px,8vw,112px);letter-spacing:-.055em;line-height:1.03;margin:6px 0 0}
.dp-exhibition-v098 .dp-contest{letter-spacing:.55em;font-size:clamp(10px,1.2vw,16px);margin:0 0 14px}
.dp-exhibition-v098 .dp-cosmos h2{font-size:clamp(19px,2.5vw,30px);line-height:1.35;margin:8px 0}
.dp-exhibition-v098 .dp-hero-description{font-size:clamp(12px,1.1vw,15px);line-height:1.75;color:#dce5f7;max-width:580px;margin:10px auto 20px}
.dp-exhibition-v098 .dp-hero-ctas{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:22px auto 0}
.dp-exhibition-v098 .dp-hero-ctas a{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:166px;min-height:46px;border-radius:11px;padding:12px 17px;box-shadow:none;font-size:13px;font-weight:750;transition:transform .16s,box-shadow .16s}
.dp-exhibition-v098 .dp-hero-ctas a:hover{transform:translateY(-2px);box-shadow:0 12px 22px #050e2d30}
.dp-exhibition-v098 .dp-main{color:var(--dp-ui-ink);padding-bottom:72px}
.dp-exhibition-v098 .dp-year-nav{padding:22px 0 10px}
.dp-exhibition-v098 .dp-year-nav .dp-archive{color:var(--dp-ui-ink)}
.dp-exhibition-v098 .dp-year-nav .dp-archive h2{color:var(--dp-ui-ink)}
.dp-exhibition-v098 .dp-exhibition-intro{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:24px 0 16px}
.dp-exhibition-v098 .dp-exhibition-intro h2{font-size:clamp(21px,2.7vw,34px);line-height:1.25;letter-spacing:-.04em;color:var(--dp-ui-ink);margin:5px 0 8px}
.dp-exhibition-v098 .dp-exhibition-intro p{color:var(--dp-ui-muted);font-size:14px;margin:0}
.dp-exhibition-v098 .dp-exhibition-jump{flex:none;border:1px solid #d8dfec;padding:10px 16px;border-radius:10px;background:#fff;color:#2b4475;font-size:13px;font-weight:750}
.dp-exhibition-v098 .dp-category-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 32px}
.dp-exhibition-v098 .dp-category-strip .dp-category-pill{display:flex;flex-direction:row;text-align:left;gap:14px;align-items:center;min-width:0;min-height:94px;border:1px solid #dee4f1;border-radius:17px;padding:18px;box-shadow:0 5px 22px #2437590a;writing-mode:horizontal-tb}
.dp-exhibition-v098 .dp-category-pill span{flex:none;display:grid;place-items:center;min-width:43px;height:43px;border-radius:12px;background:#ffffff7a;font-size:23px}
.dp-exhibition-v098 .dp-category-pill strong{flex:1;min-width:0;font-size:clamp(14px,1.45vw,20px);line-height:1.4;overflow-wrap:break-word;writing-mode:horizontal-tb}
.dp-exhibition-v098 .dp-category-pill small{display:block;flex:none;margin-left:0;font-size:11px;opacity:.76;white-space:nowrap}
.dp-exhibition-v098 .dp-gallery-panel{background:#fff;border:1px solid var(--dp-ui-border);border-radius:24px;padding:clamp(18px,3vw,36px);box-shadow:0 18px 46px #273a5a0c}
.dp-exhibition-v098 .dp-section-title{gap:18px;flex-wrap:wrap;margin-bottom:23px}
.dp-exhibition-v098 .dp-section-title h2{color:var(--dp-ui-ink);letter-spacing:-.035em;font-size:clamp(22px,2.4vw,30px)}
.dp-exhibition-v098 .dp-section-title p{color:var(--dp-ui-muted)}
.dp-exhibition-v098 .dp-tools{display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.dp-exhibition-v098 .dp-tools input,.dp-exhibition-v098 .dp-tools select{border:1px solid #d7deeb;border-radius:10px;background:#fafbff;min-height:42px;max-width:100%;font-size:14px;color:var(--dp-ui-ink)}
.dp-exhibition-v098 .dp-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,22px);min-width:0;width:100%}
.dp-exhibition-v098 .dp-gallery-grid>.dp-art{min-width:0;width:100%;max-width:none;border-radius:16px;border:1px solid #e4e8f1;background:white;box-shadow:0 6px 16px #20325b0a;overflow:hidden;transition:transform .18s,box-shadow .18s}
.dp-exhibition-v098 .dp-gallery-grid>.dp-art:hover{transform:translateY(-3px);box-shadow:0 18px 34px #20325b17}
.dp-exhibition-v098 .dp-art-cover{display:block;width:100%;aspect-ratio:3/4;overflow:hidden;position:relative;border:0;border-radius:0;background:#ebeff7}
.dp-exhibition-v098 .dp-art-cover img{width:100%;height:100%;object-fit:cover;display:block}
.dp-exhibition-v098 .dp-art-info{min-width:0;padding:15px;color:var(--dp-ui-ink)}
.dp-exhibition-v098 .dp-art-info h3{font-size:clamp(15px,1.22vw,18px);line-height:1.4;white-space:normal;overflow:visible;margin:8px 0}
.dp-exhibition-v098 .dp-art-info h3 a{color:var(--dp-ui-ink);white-space:normal;overflow-wrap:anywhere}
.dp-exhibition-v098 .dp-art-info p{color:var(--dp-ui-muted);font-size:12px;line-height:1.6}
.dp-exhibition-v098 .dp-art-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:7px;margin-top:13px}
.dp-exhibition-v098 .dp-art-actions>*{min-height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;font-size:12px;padding:7px 10px;max-width:100%}
.dp-exhibition-v098 .dp-art-actions .dp-vote{background:#e94382;color:white;font-weight:750;flex:1 0 110px}
.dp-exhibition-v098 .dp-art-actions .dp-detail-link{background:#f1f4fa;color:#28457d;text-decoration:none;font-weight:700}
.dp-exhibition-v098 .dp-art-actions .dp-vote-muted{background:#f4f6fa;color:#68758b}
.dp-exhibition-v098 .dp-cheer-panel,.dp-exhibition-v098 .dp-info-grid .dp-info{border-radius:20px}
.dp-exhibition-v098 .dp-gallery-grid>[hidden]{display:none}
.dp-exhibition-v098 a:focus-visible,.dp-exhibition-v098 button:focus-visible,.dp-exhibition-v098 input:focus-visible,.dp-exhibition-v098 select:focus-visible{outline:3px solid #ffbc60;outline-offset:3px}
@media(max-width:1100px){.dp-exhibition-v098 .dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dp-exhibition-v098 .dp-category-pill small{display:none}}
@media(max-width:760px){.dp-exhibition-v098 .dp-cosmos.dp-immersive-hero{padding:40px 17px 48px}.dp-exhibition-v098 .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dp-exhibition-v098 .dp-category-strip{grid-template-columns:1fr;gap:10px}.dp-exhibition-v098 .dp-category-strip .dp-category-pill{min-height:69px;padding:12px 15px}.dp-exhibition-v098 .dp-exhibition-intro{align-items:start;flex-direction:column}.dp-exhibition-v098 .dp-gallery-panel{padding:16px}.dp-exhibition-v098 .dp-hero-ctas a{min-width:145px;flex:1 1 145px}.dp-exhibition-v098 .dp-tools{width:100%}.dp-exhibition-v098 .dp-tools input{flex:1 1 170px}}
@media(max-width:430px){.dp-exhibition-v098 .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dp-exhibition-v098 .dp-art-info{padding:10px}.dp-exhibition-v098 .dp-art-actions .dp-comment-toggle{display:none}}
@media(prefers-reduced-motion:reduce){.dp-exhibition-v098 .dp-gallery-grid>.dp-art,.dp-exhibition-v098 .dp-hero-ctas a{transition:none}}

/* 0.9.9: fix galleries narrowed by nested theme/editor containers.
   Full-bleed root is anchored to the viewport; the inner content is constrained
   only for readability and never shrinks into the theme's text column. */
body.dp-fullwidth-page .dp-annual:has(> .dp-site.dp-home),
body.dp-blocksy-page .dp-annual:has(> .dp-site.dp-home) {
  box-sizing:border-box;
  display:block;
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  margin-right:0;
  float:none;
  clear:both;
  position:relative;
}
body.dp-fullwidth-page .dp-annual > .dp-site.dp-home,
body.dp-blocksy-page .dp-annual > .dp-site.dp-home{
  width:100%;
  max-width:none;
  min-width:0;
  display:block;
}
body.dp-fullwidth-page .dp-annual .dp-site.dp-home > .dp-main,
body.dp-blocksy-page .dp-annual .dp-site.dp-home > .dp-main{
  box-sizing:border-box;
  display:flow-root;
  width:100%;
  max-width:none;
  min-width:0;
  margin:0;
  padding:0 clamp(16px,3.2vw,64px) 64px;
}
body.dp-fullwidth-page .dp-site.dp-home .dp-main > .dp-category-strip,
body.dp-fullwidth-page .dp-site.dp-home .dp-main > .dp-gallery-panel,
body.dp-blocksy-page .dp-site.dp-home .dp-main > .dp-category-strip,
body.dp-blocksy-page .dp-site.dp-home .dp-main > .dp-gallery-panel{
  box-sizing:border-box;
  display:flow-root;
  width:100%;
  max-width:none;
  min-width:0;
  margin-left:0;
  margin-right:0;
}
body.dp-fullwidth-page .dp-site.dp-home .dp-main > .dp-category-strip,
body.dp-blocksy-page .dp-site.dp-home .dp-main > .dp-category-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
body.dp-fullwidth-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid,
body.dp-blocksy-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid{
  display:grid;
  width:100%;
  min-width:0;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
@media(max-width:1100px){
 body.dp-fullwidth-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid,
 body.dp-blocksy-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
 body.dp-fullwidth-page .dp-annual .dp-site.dp-home > .dp-main,
 body.dp-blocksy-page .dp-annual .dp-site.dp-home > .dp-main{padding:0 12px 40px;}
 body.dp-fullwidth-page .dp-site.dp-home .dp-main > .dp-category-strip,
 body.dp-blocksy-page .dp-site.dp-home .dp-main > .dp-category-strip{grid-template-columns:minmax(0,1fr);}
 body.dp-fullwidth-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid,
 body.dp-blocksy-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* v0.9.10: Scoped final layout rules, with no priority overrides.
   Blocksy manages surrounding page; DreamPoster manages its own gallery. */
body.dp-blocksy-page .dp-annual:has(> .dp-site.dp-home),
body.dp-fullwidth-page .dp-annual:has(> .dp-site.dp-home) {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw) 0;
  position: relative;
  clear: both;
}
body.dp-blocksy-page .dp-annual > .dp-site.dp-home,
body.dp-fullwidth-page .dp-annual > .dp-site.dp-home {
  display: block;
  width: 100%;
  max-width: none;
  min-width: 0;
}
body.dp-blocksy-page .dp-annual .dp-site.dp-home > .dp-main,
body.dp-fullwidth-page .dp-annual .dp-site.dp-home > .dp-main {
  display: flow-root;
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  padding: 0 clamp(16px, 3.2vw, 64px) 64px;
}
body.dp-blocksy-page .dp-site.dp-home .dp-main > .dp-category-strip,
body.dp-fullwidth-page .dp-site.dp-home .dp-main > .dp-category-strip {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
body.dp-blocksy-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid,
body.dp-fullwidth-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid {
  display: grid;
  width: 100%;
  max-width: none;
  min-width: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
/* The HTML hidden attribute must remain authoritative even on grid elements. */
.dp-site.dp-home .dp-gallery-grid > [hidden] { display: none; }
@media (max-width: 1100px) {
  body.dp-blocksy-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid,
  body.dp-fullwidth-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  body.dp-blocksy-page .dp-annual .dp-site.dp-home > .dp-main,
  body.dp-fullwidth-page .dp-annual .dp-site.dp-home > .dp-main { padding: 0 12px 40px; }
  body.dp-blocksy-page .dp-site.dp-home .dp-main > .dp-category-strip,
  body.dp-fullwidth-page .dp-site.dp-home .dp-main > .dp-category-strip { grid-template-columns: minmax(0, 1fr); }
  body.dp-blocksy-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid,
  body.dp-fullwidth-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 430px) {
  body.dp-blocksy-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid,
  body.dp-fullwidth-page .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* v0.9.11: scoped standalone Gutenberg/Blocksy pages, no !important. */
body.dp-content-page .entry-content:has(> .dp-annual),
body.dp-content-page .entry-content:has(> .dp-intro-page) { max-width: none; }
body.dp-content-page .dp-annual { width: 100%; max-width: none; }
body.dp-content-page .dp-annual > .dp-site { width: 100%; max-width: none; }
body.dp-content-page .dp-annual .dp-site > .dp-main { width: 100%; max-width: 1480px; margin-inline: auto; padding-inline: clamp(12px, 2vw, 32px); box-sizing: border-box; }
body.dp-content-page .dp-site .dp-gallery-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.dp-intro-page { box-sizing: border-box; padding: clamp(50px,7vw,110px) clamp(22px,5vw,80px); border-radius: 20px; background: linear-gradient(125deg,#182951,#354a83 65%,#805a91); color: #fff; max-width: 1480px; margin: 0 auto 32px; }
.dp-intro-page h1 { color: inherit; font-size: clamp(46px,7vw,92px); line-height:1.1; margin: 12px 0; }
.dp-intro-page p { color: #e5eaf5; }
.dp-intro-eyebrow { letter-spacing:.16em; font-size:13px; }
.dp-intro-slogan { font-size: clamp(20px,3vw,32px); font-weight:700; }
.dp-intro-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.dp-intro-actions a { display:inline-flex; padding:12px 18px; border:1px solid #b2c1db; border-radius:9px; color:#fff; text-decoration:none; }
.dp-intro-actions .dp-intro-primary { background:#fff; color:#172952; border-color:#fff; font-weight:700; }
.dp-intro-below,.dp-guide-page,.dp-news-list { max-width:1200px; margin: 24px auto; }
.dp-news-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.dp-news-item { border:1px solid #dfe5ed; border-radius:12px; padding:20px; background:#fff; }
.dp-news-item time { font-size:12px; color:#68758a; }
.dp-news-item h3 { font-size:17px; margin:10px 0; }
.dp-news-item p { font-size:14px; }
@media(max-width:1024px){body.dp-content-page .dp-site .dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.dp-news-list{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:680px){body.dp-content-page .dp-site .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}.dp-news-list{grid-template-columns:1fr;}}


/* v0.9.29: unified 1440px gallery; keep all academic-poster pixels visible.
   This deliberately overrides old 100vw/cover rules using scoped selectors, without !important. */
body.dp-standalone .dps-content .dps-wrap,
body.dp-standalone .dp-annual:has(> .dp-site.dp-home),
body.dp-standalone .dp-annual > .dp-site.dp-home,
body.dp-standalone .dp-annual .dp-site.dp-home > .dp-main {
  box-sizing:border-box;
  width:100%;
  max-width:1440px;
  min-width:0;
  margin-inline:auto;
}
body.dp-standalone .dp-annual .dp-site.dp-home > .dp-main {padding-inline:0;}
body.dp-standalone .dp-annual .dp-site.dp-home .dp-gallery-panel {
  width:100%;max-width:100%;box-sizing:border-box;margin-inline:auto;
}
body.dp-standalone .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid {
  display:grid;width:100%;max-width:100%;min-width:0;
  grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;
}
body.dp-standalone .dp-site.dp-home .dp-art-cover,
body.dp-standalone .dp-site.dp-home .dp-gallery-framed .dp-art-cover {
  display:flex;align-items:center;justify-content:center;
  box-sizing:border-box;aspect-ratio:940 / 1800;
  width:100%;height:auto;padding:12px;
  overflow:hidden;background:#eef2f6;
}
body.dp-standalone .dp-site.dp-home .dp-art-cover img,
body.dp-standalone .dp-site.dp-home .dp-gallery-framed .dp-art-cover img {
  display:block;width:100%;height:100%;max-width:100%;max-height:100%;
  object-fit:contain;object-position:center;
}
body.dp-standalone .dp-site.dp-home .dp-image-count {z-index:1;}
@media(max-width:1100px){body.dp-standalone .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(max-width:760px){body.dp-standalone .dp-site.dp-home .dp-gallery-panel > .dp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body.dp-standalone .dp-site.dp-home .dp-art-cover{padding:7px}}
/* When the independent template is disabled, the gallery still respects the same width. */
body.dp-blocksy-page .dp-annual:has(> .dp-site.dp-home),
body.dp-fullwidth-page .dp-annual:has(> .dp-site.dp-home){
  box-sizing:border-box;width:calc(100% - 32px);max-width:1440px;
  margin-inline:auto;position:relative;left:auto;transform:none;
}
body.dp-blocksy-page .dp-annual .dp-site.dp-home > .dp-main,
body.dp-fullwidth-page .dp-annual .dp-site.dp-home > .dp-main{
  box-sizing:border-box;width:100%;max-width:1440px;margin-inline:auto;padding-inline:0;
}
body.dp-blocksy-page .dp-site.dp-home .dp-art-cover,
body.dp-fullwidth-page .dp-site.dp-home .dp-art-cover{
  display:flex;justify-content:center;align-items:center;box-sizing:border-box;
  width:100%;height:auto;aspect-ratio:940 / 1800;padding:10px;overflow:hidden;
}
body.dp-blocksy-page .dp-site.dp-home .dp-art-cover img,
body.dp-fullwidth-page .dp-site.dp-home .dp-art-cover img{
  display:block;width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center;
}
@media(max-width:760px){body.dp-blocksy-page .dp-annual:has(> .dp-site.dp-home),body.dp-fullwidth-page .dp-annual:has(> .dp-site.dp-home){width:calc(100% - 24px)}}
