/* Palettes and assets taken from the four official application sites. */
.app-card .app-art { height:320px; min-height:320px; padding:26px; display:block; background-image:none; }
.app-art::before { display:none; }
.banner-copy { position:absolute; z-index:3; left:26px; bottom:26px; max-width:62%; }
.app-art .art-word { display:block; max-width:none; font-size:1.85rem; line-height:1.15; letter-spacing:-.045em; text-shadow:none; font-weight:600; }
.art-word em { font-style:normal; }
.banner-caption { display:block; margin-top:16px; font-size:8px; font-weight:600; letter-spacing:.11em; line-height:1.6; }
.banner-wordmark { position:relative; z-index:3; width:150px; height:auto; }
.banner-emblem { position:absolute; object-fit:contain; z-index:1; }
.brand-orbits { position:absolute; width:260px; height:260px; border:1px solid #6366f121; border-radius:50%; right:-4px; top:23px; }
.brand-orbits::after { content:""; position:absolute; inset:26px; border:1px solid #22d3ee15; border-radius:50%; }
.app-card.ucdm .app-art { background:radial-gradient(ellipse at 85% 30%,#38215d40,transparent 65%),radial-gradient(ellipse at 0 100%,#06b6d417,transparent 65%),#070a12; color:#f8fafc; }
.ucdm-emblem { width:350px; height:350px; top:-62px; right:-36px; }
.ucdm .art-word em { background:linear-gradient(110deg,#22d3ee,#2563eb 55%,#a78bfa); background-clip:text; color:transparent; }
.ucdm .banner-caption { color:#67e8f9; }
.app-card.juip .app-art { background:linear-gradient(145deg,#1d1b30,#101019); color:#f6f4fb; }
.juip-wordmark { position:relative; z-index:3; display:flex; align-items:center; gap:10px; font-size:27px; font-weight:800; letter-spacing:-1.5px; }
.juip-wordmark>span { width:32px; height:32px; display:grid; place-items:center; background:#9371ff; border-radius:10px; font-size:24px; padding-bottom:4px; }
.juip .art-word em { color:#c6f36b; }
.juip .banner-caption { color:#a9a8bb; }
.brand-radar { position:absolute; width:252px; height:252px; right:-6px; top:22px; border-radius:50%; background:radial-gradient(circle,#9371ff0b,transparent 68%); }
.radar-ring { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); border:1px solid; border-radius:50%; aspect-ratio:1; }
.radar-outer { width:88%; border-color:#70cda52c; }.radar-middle { width:60%; border-color:#eabb6140; }.radar-inner { width:31%; border-color:#f2857945; }
.radar-axis { position:absolute; background:#9371ff25; }.horizontal { top:50%; left:6%; width:88%; height:1px; }.vertical { top:6%; left:50%; height:88%; width:1px; }
.radar-sweep { position:absolute; inset:6%; border-radius:50%; background:conic-gradient(from 135deg,transparent 290deg,#9371ff12 310deg,#c6f36b55 359deg,transparent 360deg); }
.radar-center { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:32px; height:32px; display:grid; place-items:center; border:1px solid #c6f36b60; border-radius:50%; background:#191925; color:#c6f36b; font-size:21px; font-weight:750; letter-spacing:-2px; padding-bottom:4px; }
.radar-point { position:absolute; width:8px; height:8px; border:2px solid #ffffffbd; border-radius:50%; background:currentColor; box-shadow:0 0 16px currentColor; }.radar-point::after { content:""; position:absolute; inset:-6px; border:1px solid currentColor; border-radius:50%; }
.radar-point.coral { top:45%; left:60%; color:#f28579; }.radar-point.amber { top:64%; left:31%; color:#eabb61; }.radar-point.green { top:24%; left:73%; color:#70cda5; }
.radar-range { position:absolute; left:52%; font-size:8px; color:#aaa5bf; }.range-90 { top:7%; }.range-45 { top:21%; }.range-15 { top:37%; }
.app-card.askweed .app-art { background:radial-gradient(ellipse at 95% 40%,#8549be18,transparent 68%),#0b0b10; color:#f2f0f5; }
.askweed-wordmark { position:relative; z-index:3; display:flex; align-items:center; gap:10px; font-size:23px; font-weight:750; letter-spacing:-.04em; line-height:1.2; }
.askweed-wordmark>img { width:35px; height:35px; border-radius:9px; }.askweed-wordmark small { display:block; margin-top:4px; color:#a9a5b5; letter-spacing:.16em; font-size:7px; font-weight:500; }
.askweed .art-word em { color:#b99cf7; }.askweed .banner-caption { color:#b99cf7; font-family:Consolas,monospace; }
.askweed-preview { position:absolute; top:24px; right:25px; width:190px; padding:10px 11px 20px; background:#111017; border:4px solid #27242e; border-radius:25px; transform:rotate(3deg); color:#f2f0f5; box-shadow:0 20px 40px #0005; }
.preview-island { width:52px; height:11px; margin:0 auto 12px; border-radius:20px; background:#070609; }
.preview-brand { display:flex; align-items:center; gap:5px; border-bottom:1px solid #ffffff15; padding-bottom:10px; font-size:10px; font-weight:700; }.preview-brand img { width:22px; height:22px; border-radius:6px; }.preview-brand small { display:block; font-size:5px; color:#a9a5b5; font-weight:400; }.preview-brand b { margin-left:auto; font-size:6px; color:#b99cf7; padding:3px 5px; border:1px solid #b99cf724; background:#b99cf717; border-radius:12px; }
.preview-title { display:block; margin:12px 0 9px; font-size:22px; letter-spacing:-1px; }.preview-title span { color:#b99cf7; }
.preview-tabs { display:flex; gap:12px; font-size:6px; color:#92909c; margin-bottom:10px; border-bottom:1px solid #ffffff15; }.preview-tabs span { padding-bottom:5px; }.preview-tabs span:first-child { color:#f2f0f5; border-bottom:2px solid #b99cf7; }
.preview-plant { padding:10px; border:1px solid #b99cf724; border-radius:12px; background:linear-gradient(145deg,#342145aa,#1d1728); }.preview-plant>span { font:5px Consolas,monospace; letter-spacing:1px; color:#b99cf7; }.preview-fingerprint { display:grid; place-items:center; width:65px; height:65px; margin:8px auto 11px; border:1px solid #b99cf71f; border-radius:50%; color:#b99cf7; }.preview-fingerprint svg { width:38px; height:38px; }
.preview-plant small { display:block; font:5px Consolas,monospace; color:#b99cf7; }.preview-plant strong { display:block; font-size:15px; margin-top:4px; }.preview-sector { display:flex; justify-content:space-between; border-top:1px solid #ffffff15; padding-top:7px; margin-top:8px; font-size:5px; color:#a9a5b5; }
.app-card.astramancia .app-art { background:radial-gradient(ellipse at 85% 50%,#38234835,transparent 65%),#080b16; color:#f1eadf; }
.astramancia-wordmark { position:relative; z-index:3; display:flex; align-items:center; gap:9px; font-family:Georgia,serif; font-size:17px; font-weight:600; letter-spacing:.075em; }.astramancia-wordmark img { width:32px; height:32px; }
.astra-emblem { width:245px; height:245px; right:12px; top:48px; }.astramancia .brand-orbits { border-color:#d7c7aa12; }.astramancia .brand-orbits::after { border-color:#d7c7aa12; }
.astramancia .art-word { font-family:Georgia,serif; font-weight:400; letter-spacing:-.03em; font-size:2rem; }.astramancia .art-word em { font-style:italic; color:#debf8f; }.astramancia .banner-caption { color:#debf8f; font-size:7px; letter-spacing:.08em; }
@media(max-width:650px) {
  .app-card .app-art { height:340px; min-height:340px; padding:22px; }
  .banner-copy { left:22px; bottom:23px; max-width:95%; }
  .app-art .art-word { font-size:1.65rem; }
  .banner-caption { font-size:7px; margin-top:12px; }
  .banner-wordmark { width:130px; }
  .ucdm-emblem { width:270px; height:270px; top:-5px; right:-10px; }
  .brand-orbits { width:205px; height:205px; top:50px; right:5px; }
  .brand-radar { width:208px; height:208px; top:56px; right:0; }
  .askweed-preview { width:158px; right:17px; top:67px; padding:8px; border-radius:20px; }
  .preview-title { font-size:18px; margin-top:8px; }
  .preview-fingerprint { width:43px; height:43px; margin:5px auto; }.preview-fingerprint svg { width:28px; height:28px; }
  .preview-plant { padding:7px; }.preview-plant strong { font-size:12px; }
  .askweed .banner-copy { max-width:48%; }.askweed .art-word { font-size:1.6rem; }.askweed .banner-caption { font-size:6px; }
  .astra-emblem { width:192px; height:192px; top:75px; right:2px; }.astramancia .art-word { font-size:1.8rem; }
}
