Add Hot Fuzz graphics across Doris family sites
Some checks failed
secret-guardrails / artifact-secret-scan (push) Has been cancelled
secret-guardrails / gitleaks (push) Has been cancelled

This commit is contained in:
Fizzlepoof
2026-05-25 03:54:44 +00:00
parent a27ed384e7
commit 13919cf4f7
15 changed files with 1411 additions and 96 deletions

View File

@@ -60,6 +60,173 @@ body {
flex: 0 1 320px;
min-width: min(100%, 280px);
}
.art-stack {
display: grid;
gap: 12px;
flex: 0 1 320px;
min-width: min(100%, 280px);
}
.art-stack .hot-fuzz-art {
flex: initial;
min-width: 0;
}
.photo-evidence-card {
position: relative;
margin: 0;
padding: 10px;
border-radius: 22px;
background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02));
border: 1px solid rgba(242, 239, 221, 0.14);
box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28);
overflow: hidden;
}
.photo-evidence-card::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(242, 193, 78, 0.08), transparent 28%, rgba(145, 15, 63, 0.16));
pointer-events: none;
}
.photo-evidence-card img {
width: 100%;
aspect-ratio: 16 / 10;
object-fit: cover;
display: block;
border-radius: 14px;
filter: saturate(0.82) sepia(0.18) contrast(1.02);
}
.photo-evidence-card figcaption {
position: absolute;
left: 18px;
right: 18px;
bottom: 16px;
z-index: 1;
margin: 0;
font-size: 0.72rem;
letter-spacing: 0.16em;
text-transform: uppercase;
color: #fff0cb;
text-shadow: 0 2px 10px rgba(0, 0, 0, 0.75);
}
.evidence-contact-grid {
display: grid;
grid-template-columns: minmax(0, 1.15fr) minmax(140px, 0.85fr);
gap: 12px;
align-items: stretch;
}
.evidence-note-card {
position: relative;
padding: 14px 16px;
border-radius: 22px;
background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.015)), rgba(15,18,25,0.96);
border: 1px solid rgba(242, 239, 221, 0.11);
box-shadow: 0 16px 30px rgba(0, 0, 0, 0.24);
overflow: hidden;
}
.evidence-note-card::before {
content: '';
position: absolute;
inset: 0 auto auto 0;
width: 100%;
height: 4px;
background: linear-gradient(90deg, var(--hf-red), var(--hf-amber), var(--hf-blue));
}
.case-contact-top {
display: flex;
justify-content: space-between;
gap: 10px;
align-items: center;
flex-wrap: wrap;
margin-bottom: 10px;
}
.case-contact-kicker,
.case-contact-badge {
display: inline-flex;
align-items: center;
border-radius: 999px;
padding: 6px 10px;
font-size: 0.74rem;
letter-spacing: 0.08em;
text-transform: uppercase;
}
.case-contact-kicker {
background: rgba(242, 193, 78, 0.12);
border: 1px solid rgba(242, 193, 78, 0.24);
color: #ffe6aa;
}
.case-contact-badge {
background: rgba(123, 143, 178, 0.16);
border: 1px solid rgba(123, 143, 178, 0.24);
color: #dbe5ff;
}
.contact-sheet-illustration {
width: 100%;
height: auto;
display: block;
margin-bottom: 10px;
filter: drop-shadow(0 14px 22px rgba(0, 0, 0, 0.24));
}
.contact-frame {
fill: rgba(11, 14, 20, 0.92);
stroke: rgba(242, 239, 221, 0.12);
stroke-width: 2;
}
.contact-photo {
fill: rgba(123, 143, 178, 0.22);
stroke: rgba(242, 239, 221, 0.16);
stroke-width: 1.5;
}
.contact-photo.alt {
fill: rgba(213, 54, 0, 0.18);
}
.contact-lines,
.contact-thread,
.village-lane,
.map-thread {
fill: none;
stroke-linecap: round;
stroke-linejoin: round;
}
.contact-lines {
stroke: rgba(242, 239, 221, 0.86);
stroke-width: 4;
}
.contact-thread,
.map-thread {
stroke: rgba(213, 54, 0, 0.82);
stroke-width: 3;
}
.village-lane {
stroke: rgba(242, 193, 78, 0.88);
stroke-width: 7;
}
.contact-marker {
fill: rgba(242, 193, 78, 0.18);
stroke: rgba(242, 193, 78, 0.84);
stroke-width: 2;
}
.contact-label {
fill: rgba(242, 239, 221, 0.9);
font-size: 15px;
font-weight: 800;
letter-spacing: 0.16em;
text-anchor: middle;
}
.case-contact-list {
margin: 0;
padding-left: 18px;
color: #d5dded;
display: grid;
gap: 8px;
line-height: 1.4;
}
.supporting-photo-card { min-height: 100%; }
.evidence-card,
.radio-body { fill: rgba(242, 239, 221, 0.92); }
.evidence-lines { fill: none; stroke: rgba(10, 12, 18, 0.82); stroke-width: 4; stroke-linecap: round; }
.marker-dot { fill: rgba(242, 193, 78, 0.94); }
.marker-dot-alt { fill: rgba(123, 143, 178, 0.9); }
.radio-antenna { fill: rgba(242, 193, 78, 0.9); }
.poster-illustration {
width: 100%;
height: auto;
@@ -223,6 +390,100 @@ button:hover { filter: brightness(1.06); }
@media (max-width: 768px) {
.site-header, .page-shell { padding: 18px; }
.evidence-contact-grid { grid-template-columns: 1fr; }
.stat-grid { grid-template-columns: 1fr; }
.hot-fuzz-art { flex-basis: 100%; min-width: 0; }
.casefile-title-row,
.brand-row { align-items: flex-start; }
}
.doris-family-shell .case-nav {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.doris-family-shell .case-nav-link,
.doris-family-shell .family-app-card {
text-decoration: none;
}
.doris-family-shell .case-nav-link {
display: inline-flex;
align-items: center;
padding: 0.58rem 0.9rem;
border-radius: 999px;
border: 1px solid rgba(242, 193, 78, 0.18);
background: rgba(13, 19, 33, 0.72);
color: var(--muted);
font-size: 0.88rem;
letter-spacing: 0.02em;
}
.doris-family-shell .case-nav-link:hover,
.doris-family-shell .case-nav-link.active {
color: var(--ink);
border-color: rgba(242, 193, 78, 0.48);
background: linear-gradient(135deg, rgba(213, 54, 0, 0.24), rgba(145, 15, 63, 0.24));
}
.doris-family-shell .nav-link.active {
color: var(--ink);
border-color: rgba(242, 193, 78, 0.58);
background: linear-gradient(135deg, rgba(213, 54, 0, 0.24), rgba(145, 15, 63, 0.24));
}
.family-portal {
display: grid;
gap: 14px;
}
.family-directory-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
gap: 12px;
}
.family-app-card {
display: grid;
gap: 6px;
padding: 14px;
border-radius: 16px;
border: 1px solid rgba(255, 255, 255, 0.08);
background: linear-gradient(180deg, rgba(17, 24, 39, 0.92), rgba(8, 12, 22, 0.96));
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 14px 28px rgba(0, 0, 0, 0.22);
color: var(--ink);
}
.family-app-card:hover,
.family-app-card.current-desk {
border-color: rgba(242, 193, 78, 0.4);
transform: translateY(-1px);
}
.family-app-kicker {
font-size: 0.72rem;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--hf-amber);
}
.family-app-card strong {
font-size: 1rem;
}
.family-app-card small {
color: var(--muted);
line-height: 1.45;
}
@media (max-width: 768px) {
.doris-family-shell .case-nav {
overflow-x: auto;
padding-bottom: 4px;
}
.family-directory-grid {
grid-template-columns: 1fr;
}
}