/*
 * Portal UPT PSDA Wilayah I — UI Refresh 2026
 * Theme: Tirta Digital (institutional, water-inspired, accessible)
 */
:root{
  --ui-navy-950:#08263d;
  --ui-navy-900:#0b314d;
  --ui-blue-700:#0b68b2;
  --ui-blue-600:#0d7ccc;
  --ui-blue-100:#e9f4ff;
  --ui-teal-700:#087f78;
  --ui-teal-100:#e7f7f4;
  --ui-amber-500:#f3a33b;
  --ui-amber-100:#fff4df;
  --ui-canvas:#f4f8fb;
  --ui-surface:#ffffff;
  --ui-text:#102337;
  --ui-muted:#5f7181;
  --ui-border:#d9e3ea;
  --ui-border-strong:#c5d3dd;
  --ui-shadow-sm:0 8px 24px rgba(15,48,72,.07);
  --ui-shadow-md:0 22px 56px rgba(15,48,72,.13);
  --ui-radius-sm:10px;
  --ui-radius-md:16px;
  --ui-radius-lg:24px;
}

.portal-public{background:var(--ui-canvas);color:var(--ui-text)}
.portal-public :focus-visible{outline:3px solid rgba(13,124,204,.32);outline-offset:3px}
.portal-public .container{width:min(calc(100% - 40px),1180px)}
.portal-public .section{padding:82px 0}
.portal-public .section h2{color:var(--ui-text);font-weight:780;letter-spacing:-.035em}
.portal-public .section-subtitle{color:var(--ui-muted);font-size:15px;line-height:1.72}
.portal-public .section-kicker{color:var(--ui-blue-700);font-weight:850;letter-spacing:.04em}
.portal-public .section-kicker::before{background:var(--ui-amber-500);width:28px}

/* Navigation */
.portal-home .site-nav{
  background:rgba(255,255,255,.91);
  border-bottom:1px solid rgba(197,211,221,.78);
  box-shadow:0 6px 26px rgba(8,38,61,.035);
  backdrop-filter:blur(18px) saturate(150%);
}
.portal-home .site-nav.is-scrolled{box-shadow:0 10px 32px rgba(8,38,61,.09)}
.portal-home .nav-inner{min-height:76px}
.portal-home .brand-mark{
  width:44px;height:44px;border-radius:14px;
  background:linear-gradient(145deg,var(--ui-blue-600),var(--ui-navy-950));
  box-shadow:0 10px 24px rgba(13,124,204,.22)
}
.portal-home .brand-mark::after{height:3px;background:var(--ui-amber-500);border-radius:0 0 14px 14px}
.portal-home .brand-copy strong{font-size:14.5px;color:var(--ui-text)}
.portal-home .brand-copy span{color:#6a7f90}
.portal-home .nav-links{gap:3px}
.portal-home .nav-links a{
  color:#516676;font-size:12.5px;font-weight:750;padding:10px 11px;border-radius:10px
}
.portal-home .nav-links a:hover,.portal-home .nav-links a.active{color:var(--ui-blue-700);background:var(--ui-blue-100)}
.portal-home .icon-btn{border-color:var(--ui-border);border-radius:12px;color:var(--ui-navy-900)}
.portal-home .btn{border-radius:11px;font-weight:800}
.portal-home .btn-primary{
  background:linear-gradient(135deg,var(--ui-blue-700),var(--ui-blue-600));
  box-shadow:0 10px 24px rgba(11,104,178,.18)
}
.portal-home .btn-primary:hover{background:linear-gradient(135deg,#095b9e,#0b73bd);box-shadow:0 14px 30px rgba(11,104,178,.24);transform:translateY(-1px)}

/* Hero */
.portal-home .hero{
  padding:148px 0 86px;
  background:
    radial-gradient(circle at 83% 18%,rgba(65,178,236,.32),transparent 25%),
    radial-gradient(circle at 18% 88%,rgba(22,171,151,.20),transparent 27%),
    linear-gradient(122deg,#07263e 0%,#0a3657 48%,#0b6091 100%)
}
.portal-home .hero::before{
  opacity:.18;
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.78),transparent 94%)
}
.portal-home .hero-grid{gap:58px;grid-template-columns:minmax(0,1.16fr) minmax(320px,.72fr)}
.portal-home .eyebrow{
  border:1px solid rgba(255,255,255,.17);border-left:3px solid #f3b35c;border-radius:999px;
  padding:8px 12px;background:rgba(255,255,255,.07);font-size:11px;font-weight:800;letter-spacing:.045em
}
.portal-home .hero h1{font-size:clamp(42px,5.25vw,66px);line-height:1.025;letter-spacing:-.052em;font-weight:820;margin-top:23px}
.portal-home .hero h1 .soft{color:#a9d8f3}
.portal-home .hero-copy{color:#d7e8f3;font-size:17px;line-height:1.78;max-width:720px}
.portal-home .hero-search{
  margin-top:30px;padding:7px 7px 7px 16px;border-radius:16px;
  background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.34);
  box-shadow:0 20px 44px rgba(0,0,0,.16)
}
.portal-home .hero-search svg{left:18px;color:#6d8498}
.portal-home .hero-search input{height:48px;padding-left:36px;color:var(--ui-text);font-size:14px}
.portal-home .hero-search input::placeholder{color:#8294a2}
.portal-home .hero-search button{min-width:132px}
.portal-home .hero-topic-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.portal-home .hero-topic-chip{
  min-height:34px;padding:0 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;
  color:#d9e8f2;background:rgba(255,255,255,.07);font-size:10.5px;font-weight:750
}
.portal-home .hero-topic-chip:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3)}
.portal-home .hero-meta{margin-top:29px;color:#cbdce6;font-size:12px}
.portal-home .hero-meta svg{color:#74d8c5}

.portal-home .quick-panel{
  padding:18px;border-radius:22px;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.8);
  box-shadow:0 28px 70px rgba(2,22,39,.28);color:var(--ui-text)
}
.portal-home .quick-head{padding:2px 3px 13px;margin-bottom:6px;border-bottom:1px solid var(--ui-border)}
.portal-home .quick-head strong{font-size:14px}.portal-home .quick-head span{color:#768a99}
.portal-home .quick-list{gap:3px}
.portal-home .quick-item{padding:10px;border-radius:12px;background:transparent;border:1px solid transparent}
.portal-home .quick-item:hover{transform:none;background:#f1f7fb;border-color:#e0ebf2}
.portal-home .quick-item.featured{background:var(--ui-blue-100);border-color:#d5eafb}
.portal-home .quick-item.report-quick{background:#fff8f2;border-color:#f7e0cf}
.portal-home .quick-icon{width:38px;height:38px;border-radius:11px;color:var(--ui-blue-700);background:#e8f2f8}
.portal-home .quick-item.report-quick .quick-icon{color:#b54708;background:#fff0df}
.portal-home .quick-copy strong{font-size:12.5px;color:var(--ui-text)}
.portal-home .quick-copy span{font-size:10.5px;color:#718594;line-height:1.4}
.portal-home .quick-arrow{color:#8395a3}

/* Content rhythm */
.portal-home .bulletin-bar{background:#fff;border-bottom:1px solid var(--ui-border)}
.portal-home .bulletin-inner{min-height:48px}
.portal-home .bulletin-label{border-radius:999px;background:var(--ui-amber-100);color:#9a5c0a}
.portal-home .featured-apps-section,.portal-home .section-white{background:#fff}
.portal-home .featured-apps-grid{gap:16px}
.portal-home .featured-app{
  border-radius:20px;border-color:var(--ui-border);box-shadow:var(--ui-shadow-sm);min-height:310px
}
.portal-home .featured-app:hover{transform:translateY(-4px);box-shadow:var(--ui-shadow-md);border-color:#b9d3e5}
.portal-home .featured-app-primary{background:linear-gradient(150deg,var(--ui-navy-950),#0c4771 64%,#0c6f98)}
.portal-home .featured-app-badge{border-radius:999px}

.portal-home .technical-hub{background:linear-gradient(180deg,#f4f8fb,#f8fbfd)}
.portal-home .technical-card{border-radius:20px;border-color:var(--ui-border);box-shadow:var(--ui-shadow-sm)}
.portal-home .technical-card:hover{transform:translateY(-3px);box-shadow:var(--ui-shadow-md)}
.portal-home .technical-card h3{font-size:25px}
.portal-home .technical-card > p{font-size:13px;color:var(--ui-muted)}
.portal-home .data-ribbon{background:#fff;border-block:1px solid var(--ui-border)}
.portal-home .data-ribbon-shell{border-radius:18px;border:1px solid var(--ui-border);overflow:hidden;background:#fff}

.portal-home .portal-news-section{background:#f4f8fb}
.portal-home .portal-news-feature,.portal-home .portal-news-card{border-color:var(--ui-border);border-radius:20px;box-shadow:var(--ui-shadow-sm)}
.portal-home .portal-news-feature:hover,.portal-home .portal-news-card:hover{box-shadow:var(--ui-shadow-md)}
.portal-home .portal-news-meta span{color:var(--ui-blue-700)}
.portal-home .portal-admin-link{border-color:var(--ui-border);border-radius:10px}
.portal-home .portal-admin-link:hover{color:var(--ui-blue-700);border-color:#b9d3e5}
.portal-home .news-section{background:#fff}
.portal-home .news-feature,.portal-home .news-card{border-color:var(--ui-border)}
.portal-home .news-tab{border-radius:999px}
.portal-home .news-tab.active{background:var(--ui-navy-900);color:#fff;border-color:var(--ui-navy-900)}
.portal-home .knowledge-strip{background:#eef5f8;border-color:var(--ui-border)}
.portal-home .knowledge-link{border-color:var(--ui-border);border-radius:16px;box-shadow:0 4px 14px rgba(15,48,72,.04)}

/* App directory */
.portal-home #systems{background:#fff}
.portal-home .search-input{height:48px;border-color:var(--ui-border-strong);border-radius:12px}
.portal-home .search-input:focus{outline:3px solid rgba(13,124,204,.12);border-color:#74acd1}
.portal-home .filter-chip{height:39px;border-radius:999px;border-color:var(--ui-border);font-weight:750;color:#536878}
.portal-home .filter-chip:hover{border-color:#aac4d6;color:var(--ui-blue-700)}
.portal-home .filter-chip.active{background:var(--ui-navy-900);border-color:var(--ui-navy-900);color:#fff}
.portal-home .systems-grid{gap:16px}
.portal-home .system-card{
  min-height:278px;padding:21px;border-radius:18px;border:1px solid var(--ui-border);box-shadow:var(--ui-shadow-sm)
}
.portal-home .system-card::before{width:100%;height:4px}
.portal-home .system-card:hover{transform:translateY(-4px);box-shadow:var(--ui-shadow-md);border-color:#b7cddb}
.portal-home .card-icon{border-radius:13px}
.portal-home .card-badge{border-radius:999px}
.portal-home .system-card h3{font-size:20px}.portal-home .system-card p{color:var(--ui-muted);font-size:13px}
.portal-home .card-action .circle{border-radius:11px}

/* Profile, map, participation */
.portal-home .profile-section{background:#f4f8fb}
.portal-home .profile-intro,.portal-home .profile-identity-card,.portal-home .profile-card{border-radius:20px}
.portal-home .profile-intro{background:linear-gradient(145deg,var(--ui-navy-950),#0b466c 68%,#0c6687);box-shadow:var(--ui-shadow-md)}
.portal-home .profile-identity-card,.portal-home .profile-card{border-color:var(--ui-border);box-shadow:var(--ui-shadow-sm)}
.portal-home .map-section{background:#fff}
.portal-home .map-shell{border-color:var(--ui-border);border-radius:22px;box-shadow:var(--ui-shadow-md)}
.portal-home .map-tool-btn,.portal-home .map-search input{border-radius:10px}
.portal-home .map-status-pill{border-radius:999px}
.portal-home .di-map-item{border-radius:12px}
.portal-home .participation-section{background:#f4f8fb}
.portal-home .tuntura-report-card{border-radius:22px;background:radial-gradient(circle at 92% 8%,rgba(255,185,134,.28),transparent 28%),linear-gradient(145deg,#7f251b,#b83a24 62%,#ce5b2c)}
.portal-home .feedback-channel{border-radius:18px;border-color:var(--ui-border);box-shadow:var(--ui-shadow-sm)}
.portal-home .contact-section{background:linear-gradient(145deg,var(--ui-navy-950),#0a456b 58%,#0a6484)}
.portal-home .contact-intro,.portal-home .contact-card-main{border-radius:18px}
.portal-home .footer{background:#061f32}
.portal-home .footer-copy{color:#bfd2df}
.portal-home .footer-bottom{color:#9fb9c8}

/* Floating back-to-top */
.ui-backtop{
  position:fixed;right:22px;bottom:22px;z-index:90;width:44px;height:44px;border:1px solid rgba(255,255,255,.5);
  border-radius:14px;background:rgba(8,49,77,.92);color:#fff;display:grid;place-items:center;
  box-shadow:0 14px 30px rgba(8,38,61,.2);opacity:0;pointer-events:none;transform:translateY(10px);
  transition:.2s ease;backdrop-filter:blur(10px)
}
.ui-backtop.show{opacity:1;pointer-events:auto;transform:none}
.ui-backtop:hover{background:var(--ui-blue-700);transform:translateY(-2px)}
.ui-backtop svg{width:19px;height:19px}

/* Article + archive shared public chrome */
.portal-article,.portal-archive{background:var(--ui-canvas)}
.portal-article .nav,.portal-archive .nav{
  height:76px;background:rgba(255,255,255,.92);border-color:var(--ui-border);
  box-shadow:0 6px 24px rgba(8,38,61,.045);backdrop-filter:blur(16px)
}
.portal-article .brand-mark{background:linear-gradient(145deg,var(--ui-blue-600),var(--ui-navy-950));border-radius:13px}
.portal-article .back,.portal-archive .back{border-color:var(--ui-border);border-radius:10px;color:var(--ui-blue-700)}
.portal-article .back:hover,.portal-archive .back:hover{background:var(--ui-blue-100);border-color:#b8d5e7}
.portal-article .hero{background:linear-gradient(180deg,#fff,#f4f8fb);padding-top:58px}
.portal-article .category{background:var(--ui-blue-100);color:var(--ui-blue-700)}
.portal-article .article-header h1{color:var(--ui-text);font-weight:820}
.portal-article .lead{color:var(--ui-muted)}
.portal-article .cover{border-radius:24px;box-shadow:var(--ui-shadow-md)}
.portal-article .share-panel,.portal-article .engagement-panel,.portal-article .article-body,.portal-article .side-card,.portal-article .comment-form-card,.portal-article .comment-list-card{
  border-color:var(--ui-border);box-shadow:var(--ui-shadow-sm)
}
.portal-article .article-body,.portal-article .comment-form-card,.portal-article .comment-list-card{border-radius:20px}
.portal-article .article-body{color:#405666}
.portal-article .article-body blockquote{background:var(--ui-blue-100);border-left-color:var(--ui-blue-700)}
.portal-article .contact-card{background:linear-gradient(145deg,var(--ui-navy-950),#0b648d)}

.portal-archive .hero{padding:54px 0;background:linear-gradient(125deg,var(--ui-navy-950),#0b466d 58%,#0b6d91)}
.portal-archive .hero h1{font-weight:820;letter-spacing:-.045em}
.portal-archive .hero p{color:#d7e8f1}
.portal-archive .search{border-color:var(--ui-border-strong);border-radius:12px}
.portal-archive .search:focus{outline:3px solid rgba(13,124,204,.12);border-color:#74acd1}
.portal-archive .search-button{border-radius:12px;background:var(--ui-blue-700)}
.portal-archive .filters a{border-color:var(--ui-border);color:#536878}
.portal-archive .filters a.active{background:var(--ui-navy-900);border-color:var(--ui-navy-900)}
.portal-archive .card{border-color:var(--ui-border);border-radius:18px;box-shadow:var(--ui-shadow-sm);transition:.22s ease}
.portal-archive .card:hover{transform:translateY(-3px);box-shadow:var(--ui-shadow-md)}
.portal-archive .footer{background:#061f32}

@media(max-width:1100px){
  .portal-home .nav-links a{padding-inline:8px;font-size:11.5px}
  .portal-home .hero-grid{gap:38px}
}
@media(max-width:980px){
  .portal-home .hero-grid{grid-template-columns:1fr}
  .portal-home .quick-panel{max-width:700px}
}
@media(max-width:780px){
  .portal-public .container{width:min(calc(100% - 28px),1180px)}
  .portal-home .nav-inner{min-height:68px}
  .portal-home .nav-links{
    top:76px;left:14px;right:14px;padding:10px;border-radius:16px;border:1px solid var(--ui-border);
    box-shadow:var(--ui-shadow-md);max-height:calc(100vh - 96px);overflow:auto
  }
  .portal-home .nav-links a{font-size:13px;padding:12px 13px}
  .portal-home .hero{padding:118px 0 68px}
  .portal-home .hero-search{flex-direction:column;align-items:stretch;padding:10px}
  .portal-home .hero-search input{width:100%;padding-left:40px}
  .portal-home .hero-search button{width:100%}
  .portal-home .hero-topic-chips{margin-top:12px}
  .portal-public .section{padding:68px 0}
  .ui-backtop{right:14px;bottom:14px}
}
@media(max-width:620px){
  .portal-public .container{width:min(calc(100% - 24px),1180px)}
  .portal-home .brand-mark{width:40px;height:40px;border-radius:12px}
  .portal-home .hero h1{font-size:clamp(38px,12vw,52px)}
  .portal-home .hero-copy{font-size:15px;line-height:1.7}
  .portal-home .hero-topic-chip{font-size:10px;min-height:32px}
  .portal-home .quick-panel{border-radius:18px}
  .portal-home .system-card{min-height:250px}
  .portal-article .article-body{padding:24px}
  .portal-archive .hero h1{font-size:36px}
}
@media(prefers-reduced-motion:reduce){.ui-backtop{transition:none}}

/* =========================================================
 * Brand Theme v7.2 — UPT PSDA Wilayah 1
 * Palette derived from approved logo: water blue, civic yellow,
 * charcoal and white. Loaded last to preserve application logic.
 * ========================================================= */
:root{
  --brand-blue:#0087c5;
  --brand-blue-deep:#006eaa;
  --brand-blue-soft:#eaf7fc;
  --brand-yellow:#f6c515;
  --brand-yellow-deep:#d8a900;
  --brand-yellow-soft:#fff8d9;
  --brand-charcoal:#262a2d;
  --brand-charcoal-soft:#3f474d;
  --ui-navy-950:#08283d;
  --ui-navy-900:#0b354f;
  --ui-blue-700:var(--brand-blue-deep);
  --ui-blue-600:var(--brand-blue);
  --ui-blue-100:var(--brand-blue-soft);
  --ui-amber-500:var(--brand-yellow);
  --ui-amber-100:var(--brand-yellow-soft);
  --ui-canvas:#f5f9fb;
  --ui-text:var(--brand-charcoal);
  --ui-muted:#61727f;
  --ui-border:#d9e5eb;
  --ui-border-strong:#c4d5df;
  --ui-shadow-sm:0 8px 24px rgba(8,40,61,.065);
  --ui-shadow-md:0 22px 56px rgba(8,40,61,.13);
}

.portal-public{background:var(--ui-canvas);color:var(--brand-charcoal)}
.portal-public :focus-visible{outline-color:rgba(0,135,197,.35)}
.portal-public .section-kicker{color:var(--brand-blue-deep)}
.portal-public .section-kicker::before{background:var(--brand-yellow)}

/* Institutional mark */
.portal-public .brand-mark.brand-logo-mark,
.portal-article .brand-mark.brand-logo-mark,
.portal-archive .brand-mark.brand-logo-mark{
  width:50px;height:48px;min-width:50px;padding:0;border-radius:0;background:transparent!important;
  box-shadow:none!important;display:grid;place-items:center;overflow:visible;color:inherit
}
.portal-public .brand-mark.brand-logo-mark::after,
.portal-article .brand-mark.brand-logo-mark::after,
.portal-archive .brand-mark.brand-logo-mark::after{display:none!important}
.portal-public .brand-mark.brand-logo-mark img,
.portal-article .brand-mark.brand-logo-mark img,
.portal-archive .brand-mark.brand-logo-mark img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(8,40,61,.09))}
.portal-home .brand-copy strong{color:var(--brand-charcoal);font-weight:850}
.portal-home .brand-copy span{color:#6b7d89}

/* Navigation */
.portal-home .site-nav{
  background:rgba(255,255,255,.94);border-bottom:1px solid rgba(196,213,223,.9);
  box-shadow:0 7px 26px rgba(8,40,61,.045)
}
.portal-home .site-nav::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;
  background:linear-gradient(90deg,transparent 0 9%,var(--brand-yellow) 9% 17%,var(--brand-blue) 17% 35%,transparent 35% 100%);
  opacity:.78;pointer-events:none
}
.portal-home .nav-links a{color:#536570}
.portal-home .nav-links a:hover,.portal-home .nav-links a.active{color:var(--brand-blue-deep);background:var(--brand-blue-soft)}
.portal-home .btn-primary{
  background:linear-gradient(135deg,var(--brand-blue-deep),var(--brand-blue));
  box-shadow:0 10px 24px rgba(0,135,197,.21)
}
.portal-home .btn-primary:hover{background:linear-gradient(135deg,#005f96,#0087c5);box-shadow:0 14px 30px rgba(0,135,197,.27)}

/* Hero: blue technical field with a restrained yellow identity accent */
.portal-home .hero{
  background:
    radial-gradient(circle at 82% 17%,rgba(61,190,239,.26),transparent 25%),
    radial-gradient(circle at 15% 92%,rgba(0,135,197,.22),transparent 28%),
    linear-gradient(121deg,#07263a 0%,#0a3d5b 48%,#006eaa 100%)
}
.portal-home .hero::before{
  opacity:.16;background-image:
    linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:62px 62px
}
.portal-home .hero::after{
  content:"";position:absolute;width:520px;height:520px;right:-215px;bottom:-335px;border-radius:50%;
  border:2px solid rgba(246,197,21,.58);box-shadow:0 0 0 72px rgba(246,197,21,.035),0 0 0 145px rgba(255,255,255,.018)
}
.portal-home .eyebrow{border-left-color:var(--brand-yellow);color:#edf8fd}
.portal-home .eyebrow-dot{background:var(--brand-yellow);box-shadow:0 0 0 5px rgba(246,197,21,.15)}
.portal-home .hero h1 .soft{color:#a9e2f7}
.portal-home .hero-meta svg{color:#ffdb4f}
.portal-home .hero-topic-chip:hover{border-color:rgba(246,197,21,.55);background:rgba(246,197,21,.12)}
.portal-home .hero-search{box-shadow:0 22px 48px rgba(0,0,0,.18)}

/* Main action hub */
.portal-home .quick-panel{border:1px solid rgba(255,255,255,.3);box-shadow:0 26px 70px rgba(3,26,41,.30)}
.portal-home .quick-item.featured{border-left:3px solid var(--brand-yellow);background:linear-gradient(90deg,var(--brand-yellow-soft),#fff 38%)}
.portal-home .quick-item.featured .quick-icon{background:var(--brand-blue);color:#fff}
.portal-home .quick-item.report-quick{border-left:3px solid #d92d20}

/* Feature / technical / directory cards */
.portal-home .featured-app-primary{
  background:
    linear-gradient(150deg,#08283d,#0b4a69 62%,#007daf);
  border-top:4px solid var(--brand-yellow)
}
.portal-home .featured-app-badge{background:rgba(246,197,21,.15);border-color:rgba(246,197,21,.38);color:#ffe881}
.portal-home .technical-card:nth-child(1){border-top:4px solid var(--brand-blue)}
.portal-home .technical-card:nth-child(2){border-top:4px solid #0a8f71}
.portal-home .technical-card:nth-child(3){border-top:4px solid var(--brand-yellow)}
.portal-home .filter-chip.active,.portal-home .news-tab.active{background:var(--brand-charcoal);border-color:var(--brand-charcoal)}
.portal-home .system-card:hover{border-color:#9bcfe5}
.portal-home .card-action .circle{background:var(--brand-blue-soft);color:var(--brand-blue-deep)}

/* Profile branding */
.portal-home .profile-intro{background:linear-gradient(145deg,#08283d,#0a4564 66%,#00739f);border-top:4px solid var(--brand-yellow)}
.portal-home .profile-identity-card{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#f8fcfe)}
.portal-home .profile-identity-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(var(--brand-yellow),var(--brand-blue))}
.portal-home .identity-brand-mark{width:92px;height:84px;object-fit:contain;margin:9px 0 12px;filter:drop-shadow(0 8px 12px rgba(8,40,61,.08))}
.portal-home .identity-name{color:var(--brand-charcoal)}
.portal-home .identity-rule{background:linear-gradient(90deg,var(--brand-yellow) 0 34%,var(--brand-blue) 34% 100%)}

/* Map and public participation */
.portal-home .map-status-pill{background:var(--brand-yellow-soft);color:#7e6500;border-color:#f2d766}
.portal-home .contact-section{background:linear-gradient(145deg,#08283d,#0a4261 58%,#006e99)}
.portal-home .contact-section .section-kicker{color:#ffe47a}
.portal-home .contact-card-main.email{background:linear-gradient(145deg,rgba(0,135,197,.75),rgba(4,72,107,.9))}
.portal-home .footer{background:#071f30;border-top:4px solid var(--brand-yellow)}
.portal-home .footer .brand-mark.brand-logo-mark img{filter:drop-shadow(0 6px 10px rgba(0,0,0,.18))}

/* Article and archive chrome */
.portal-article .nav,.portal-archive .nav{border-bottom:2px solid rgba(246,197,21,.72)}
.portal-article .brand,.portal-archive .brand{display:flex;align-items:center;gap:11px}
.portal-article .brand strong,.portal-archive .brand strong{display:block;color:var(--brand-charcoal);font-size:14px}
.portal-article .brand > span:last-child span,.portal-archive .brand > span:last-child span{display:block;color:#70828e;font-size:11px;margin-top:2px}
.portal-article .back,.portal-archive .back{color:var(--brand-blue-deep)}
.portal-article .category{background:var(--brand-yellow-soft);color:#8a6d00}
.portal-article .article-body blockquote{background:var(--brand-blue-soft);border-left-color:var(--brand-yellow)}
.portal-archive .hero{background:linear-gradient(125deg,#08283d,#0a4564 58%,#0077a4);border-bottom:4px solid var(--brand-yellow)}
.portal-archive .search-button{background:var(--brand-blue-deep)}
.portal-archive .filters a.active{background:var(--brand-charcoal);border-color:var(--brand-charcoal)}
.portal-archive .footer{background:#071f30;border-top:4px solid var(--brand-yellow)}

@media(max-width:620px){
  .portal-public .brand-mark.brand-logo-mark,.portal-article .brand-mark.brand-logo-mark,.portal-archive .brand-mark.brand-logo-mark{width:44px;height:42px;min-width:44px}
  .portal-home .site-nav::after{background:linear-gradient(90deg,var(--brand-yellow) 0 24%,var(--brand-blue) 24% 58%,transparent 58%)}
  .portal-home .hero::after{width:330px;height:330px;right:-190px;bottom:-190px}
}
