/* Creative playground, scoped to media destinations. Authorization stays server-side. */
.portal-media-theme{--media-paper:#f5f5e9;--media-ink:#191e19;--media-lime:#d1fc50;--media-purple:#b6a0f0;background:var(--media-paper);color:var(--media-ink)}
.portal-media-theme .portal-topbar,.portal-media-theme .portal-header{background:var(--media-lime);border-color:#191e1933}
.portal-media-theme .portal-sidebar{background:#f8f8ef;border-color:#191e1926}
.portal-media-theme .portal-sidebar a[aria-current=page]{background:var(--media-lime);color:var(--media-ink)}
.portal-media-theme main{background:var(--media-paper)}
.portal-media-theme h1,.portal-media-theme h2,.portal-media-theme h3{letter-spacing:-.045em}
.portal-media-theme .btn-primary{border:1.5px solid var(--media-ink);border-radius:10px;background:var(--media-ink);color:var(--media-lime);box-shadow:3px 3px 0 #b6a0f0;font-weight:750}
.portal-media-theme .btn-primary:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 #b6a0f0}
.portal-media-theme .btn-secondary{border:1.5px solid #191e1940;border-radius:10px;background:#fffdf5;color:var(--media-ink)}
.portal-media-theme .card,.portal-media-theme .workbench-card,.portal-media-theme .workbench-primary-card{border:1px solid #20252035;border-radius:15px;box-shadow:3px 3px 0 #191e1912;background:#fffef8}
.portal-media-theme .form-control{border:1.5px solid #191e1945;border-radius:9px;background:#fffef8;color:var(--media-ink);box-shadow:none}
.portal-media-theme .form-control:focus{border-color:#7862b0;outline:3px solid #b6a0f045;outline-offset:2px}
.portal-media-theme :where(.text-blue-600,.text-blue-700){color:#58428f}
.portal-media-theme :where(.bg-blue-50,.bg-campus-ice){background:#ece6fa;color:#43356a}
.media-creative-hero{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:center;border:1.5px solid var(--media-ink);border-radius:20px;background:var(--media-lime);padding:clamp(25px,4vw,54px);margin-top:18px;overflow:hidden}
.media-creative-copy{position:relative;z-index:1;min-width:0}.media-creative-copy>p:first-child{font-size:10px;font-weight:700;letter-spacing:.15em;color:#343d28}
.media-creative-copy h1{font-size:clamp(32px,4vw,58px);line-height:1.12;letter-spacing:-.07em;font-weight:850;margin:22px 0 18px;overflow-wrap:anywhere}
.media-creative-copy .media-description{font-size:14px;line-height:1.9;color:#3f4c32;max-width:600px}
.media-creative-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;align-items:center}.media-creative-actions a{display:inline-flex}
.media-play-art{height:285px;position:relative;isolation:isolate;pointer-events:none}
.media-play-art .media-satellite{position:absolute;inset:26px 0;border-radius:48% 52% 40% 60%;background:var(--media-purple);border:2px solid #191e19;transform:rotate(-13deg)}
.media-play-art .media-smile{position:absolute;width:180px;height:180px;border:2px solid #191e19;border-radius:50%;background:var(--media-lime);top:54px;left:calc(50% - 90px);transform:rotate(8deg);box-shadow:8px 7px 0 #191e1912}
.media-smile:before{content:"";position:absolute;left:49px;top:43px;width:12px;height:31px;border-radius:50%;background:#191e19;box-shadow:59px 0 0 #191e19}
.media-smile:after{content:"";position:absolute;left:39px;top:77px;width:98px;height:58px;border-bottom:5px solid #191e19;border-radius:0 0 65% 65%}
.media-art-label{position:absolute;bottom:14px;left:0;background:#fffef8;border:1.5px solid #191e19;padding:11px 16px;font-size:11px;font-weight:750;transform:rotate(-6deg);box-shadow:4px 4px #191e19}
.media-art-star{position:absolute;right:4px;top:2px;color:#191e19;font-size:58px;line-height:1}
.media-creative-subbar{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:18px 2px 0;font-size:10px;letter-spacing:.08em;color:#5b6353}
.media-collection-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:42px 0 18px}.media-collection-title h2{font-size:26px;font-weight:750}.media-collection-title p{font-size:12px;color:#66705c}
.media-project-card{overflow:hidden;min-width:0;transition:transform .2s}.media-project-card:hover{transform:translateY(-3px)}.media-project-card .media-project-index{display:flex;justify-content:space-between;align-items:center;margin:-24px -24px 24px;padding:20px 24px;background:#e6edcd;border-bottom:1px solid #191e1925;color:#38462d}.media-project-card .media-project-index strong{font:44px/.9 Georgia,serif;letter-spacing:-.05em}.media-project-card:nth-child(3n + 2) .media-project-index{background:#e9e3f5;color:#51416e}.media-project-card:nth-child(3n + 3) .media-project-index{background:#eee9d9;color:#5b503a}.media-project-card .media-project-index span{font-size:10px;font-weight:700;letter-spacing:.12em}
.portal-media-theme .workbench-hero{background:var(--media-lime);color:var(--media-ink);border:1.5px solid #191e19;box-shadow:5px 5px 0 #b6a0f040;border-radius:18px}.portal-media-theme .workbench-hero p{color:#3f4c32}.portal-media-theme .workbench-hero .pointer-events-none{display:none}.portal-media-theme .workbench-hero h1{font-size:clamp(30px,4vw,54px);font-weight:850}.portal-media-theme .workbench-hero a{color:#191e19;border-color:#191e1960}.portal-media-theme .workbench-department-logo{background:#fffef8;border:1px solid #191e1925}.portal-media-theme .workbench-department-logo img{filter:none}
.media-theme-department .media-creative-copy .prose{font-size:14px;line-height:1.9;color:#3f4c32}.media-theme-department .media-creative-copy .prose a{text-decoration:underline}
@media(max-width:900px){.media-creative-hero{grid-template-columns:1fr .65fr;gap:20px}.media-play-art{height:230px}.media-play-art .media-smile{width:145px;height:145px;top:48px;left:calc(50% - 72px)}.media-smile:before{left:36px;top:32px;width:10px;height:26px;box-shadow:49px 0 0 #191e19}.media-smile:after{left:32px;top:58px;width:77px;height:50px}.media-art-label{font-size:9px;padding:9px}.media-art-star{font-size:43px}}
@media(max-width:640px){.media-creative-hero{display:block;padding:25px}.media-creative-copy h1{font-size:36px}.media-play-art{height:170px;width:75%;max-width:260px;margin:28px auto 0}.media-play-art .media-smile{top:13px}.media-play-art .media-satellite{inset:6px -10px}.media-art-label{bottom:-10px;left:-30px}.media-art-star{top:-8px;right:-8px}.media-creative-subbar{font-size:9px;gap:10px}.media-collection-title{align-items:start}.media-collection-title h2{font-size:23px}.media-collection-title p{max-width:135px;text-align:right}.media-project-card .media-project-index{margin:-20px -20px 20px;padding:18px 20px}}
@media(prefers-reduced-motion:reduce){.portal-media-theme *{transition:none!important;animation:none!important}}
