
/*
Theme Name: La Rosa Negra – Dark Noir Clean
Theme URI: https://la-rosa-negra.com/
Author: Daniel Finke
Author URI: https://danielfinke.net/
Description: Dark-CI WordPress-Theme der Daniel-Finke-Buchwelten. Eigenständiger Charakter bei gemeinsamer Markenfamilie; ohne externe Fonts oder Tracking.
Version: 6.2.1
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: df-dark
License: GNU General Public License v2 or later
*/
:root{--bg:#090b0e;--bg2:#0f1318;--surface:#14191f;--surface2:#1a2027;--text:#f4f2ed;--muted:#adb4bc;--line:rgba(255,255,255,.12);--accent:#b8284f;--accent2:#e3a7b9;--radius:12px;--max:1180px;--shadow:0 24px 75px rgba(0,0,0,.42);--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:dark}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.68}a{color:inherit;text-underline-offset:.18em}a:hover{color:var(--accent2)}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:12px;z-index:1000;background:#fff;color:#000;padding:10px}.network{background:#050607;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.network .wrap{min-height:34px;display:flex;align-items:center;gap:18px;overflow:auto}.network strong{margin-right:auto}.network a{text-decoration:none;color:#aab0b6}.network a.active{color:#fff}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;background:#888}.dot.df{background:#b86c43}.dot.max{background:#8fb9d3}.dot.rosa{background:#b8284f}.dot.hari{background:#dc2638}.site-header{position:sticky;top:0;z-index:100;background:rgba(9,11,14,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.head{min-height:76px;display:flex;align-items:center;gap:28px}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;margin-right:auto}.mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--accent);border-radius:50%;font-family:var(--serif);color:var(--accent2)}body.brand-hari .mark{border-radius:2px}.brand strong{display:block;letter-spacing:.1em}.brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:.13em;text-transform:uppercase}.nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:0}.nav a{text-decoration:none;font-size:14px;font-weight:650}.menu{display:none;border:1px solid var(--line);background:none;color:#fff;padding:8px 11px}.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(circle at 78% 20%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 30%),linear-gradient(180deg,#0a0d11,#0d1116)}.hero-grid{min-height:72vh;display:grid;grid-template-columns:1.12fr .88fr;gap:60px;align-items:center;padding:78px 0}.kicker{font-size:12px;letter-spacing:.19em;text-transform:uppercase;color:var(--accent2);font-weight:850}.hero h1,.page-hero h1{font-family:var(--serif);font-size:clamp(48px,7vw,92px);line-height:.98;letter-spacing:-.04em;margin:14px 0 22px}.lead{font-size:clamp(18px,2vw,24px);color:#d7dce1;max-width:720px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border:1px solid rgba(255,255,255,.23);border-radius:999px;text-decoration:none;font-weight:780}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn:hover{transform:translateY(-1px)}body.brand-hari .btn{border-radius:2px}.hero-visual{min-height:520px;background:linear-gradient(145deg,var(--surface2),#050607);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;position:relative;box-shadow:var(--shadow)}.hero-visual img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-fallback{position:absolute;inset:0;padding:34px;display:flex;align-items:flex-end;background:linear-gradient(0deg,rgba(0,0,0,.74),transparent 58%)}.hero-fallback strong{font-family:var(--serif);font-size:34px}.section{padding:88px 0}.section.alt{background:var(--bg2)}.section-head{display:grid;grid-template-columns:.78fr 1.22fr;gap:44px;align-items:end;margin-bottom:42px}.section-head h2{font-family:var(--serif);font-size:clamp(38px,5vw,64px);line-height:1.02;margin:8px 0}.section-head p{margin:0;color:var(--muted);font-size:18px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:var(--surface);padding:26px;border-radius:var(--radius);min-height:230px;transition:.2s}.card:hover{background:var(--surface2);border-color:color-mix(in srgb,var(--accent) 52%,var(--line))}.card .label{font-size:11px;letter-spacing:.16em;color:var(--accent2);text-transform:uppercase}.card h3{font-family:var(--serif);font-size:28px;margin:18px 0 10px}.card p{color:var(--muted);margin:0}.card a{display:inline-block;margin-top:18px;font-weight:750}.page-hero{padding:72px 0 48px;background:linear-gradient(180deg,#0a0d11,#0e1217);border-bottom:1px solid var(--line)}.page-hero .lead{max-width:820px}.content{padding:64px 0 92px}.prose{max-width:900px}.content-section{padding:0 0 36px;margin:0 0 36px;border-bottom:1px solid var(--line)}.content-section h2{font-family:var(--serif);font-size:clamp(30px,4vw,46px);margin:0 0 16px}.content-section p{font-size:18px;color:#c6ccd2;max-width:78ch}.content-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.content-cards article{background:var(--surface);border:1px solid var(--line);padding:24px;border-radius:var(--radius)}.content-cards span{color:var(--accent2);font-size:11px;letter-spacing:.16em}.content-cards h3{font-family:var(--serif);font-size:28px;margin:12px 0}.content-cards p{color:var(--muted)}.notice,.contact-box{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);padding:22px;border-radius:var(--radius)}.book-media,.portrait-media{max-width:320px;margin:0 0 34px}.wide-media{margin:0 0 34px}.book-media img,.portrait-media img,.wide-media img{border-radius:var(--radius);box-shadow:var(--shadow)}.media-placeholder{min-height:240px;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--line));display:grid;place-items:center;color:var(--muted);padding:28px;border-radius:var(--radius);background:var(--surface)}.site-footer{background:#050607;border-top:1px solid var(--line);padding:52px 0 30px}.foot{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:40px}.foot h2{font-family:var(--serif);font-size:34px;margin:0 0 10px}.foot p,.foot li{color:var(--muted)}.foot ul{list-style:none;padding:0;margin:0}.foot li{margin:7px 0}.foot a{text-decoration:none}.copyright{margin-top:38px;padding-top:20px;border-top:1px solid var(--line);color:#8d949a;font-size:13px}.age-gate{position:fixed;inset:0;background:rgba(0,0,0,.91);z-index:9999;display:none;align-items:center;justify-content:center;padding:24px}.age-gate.open{display:flex}.age-box{max-width:620px;background:#0d1014;border:1px solid var(--line);border-top:3px solid var(--accent);padding:34px;box-shadow:var(--shadow)}.age-box h2{font-family:var(--serif);font-size:42px;margin:0 0 15px}.age-box p{color:#c6ccd2}.age-actions{display:flex;gap:10px;flex-wrap:wrap}.comments-area{margin-top:52px}.comments-area textarea,.comments-area input{width:100%;background:var(--surface);border:1px solid var(--line);color:#fff;padding:12px}.comments-area input[type=submit]{width:auto;background:var(--accent);border-color:var(--accent);font-weight:800}.comment-list{padding-left:22px}.comment-body{padding:18px 0;border-bottom:1px solid var(--line)}body.brand-max .hero{background:radial-gradient(circle at 76% 20%,rgba(143,185,211,.16),transparent 30%),linear-gradient(180deg,#091019,#0c151d)}body.brand-rosa{background:#080709}body.brand-rosa .hero{background:radial-gradient(circle at 80% 20%,rgba(184,40,79,.19),transparent 28%),linear-gradient(180deg,#09070a,#11090d)}body.brand-hari{background:#060708}body.brand-hari .hero{background:linear-gradient(90deg,rgba(220,38,56,.05),transparent 32%),radial-gradient(circle at 80% 22%,rgba(220,38,56,.16),transparent 25%),#07090b}body.brand-hari .card,body.brand-hari .content-cards article{background:#0d1013}body.brand-hari .hero h1{font-family:Arial Black,var(--sans);text-transform:uppercase;letter-spacing:-.055em}body.brand-hari .page-hero h1{font-family:Arial Black,var(--sans);text-transform:uppercase}@media(max-width:980px){.nav{display:none;position:absolute;left:20px;right:20px;top:72px;background:#0e1217;border:1px solid var(--line);padding:16px}.nav.open{display:block}.nav ul{display:block}.nav li{padding:7px}.menu{display:block}.hero-grid,.section-head{grid-template-columns:1fr}.hero-grid{min-height:auto}.hero-visual{min-height:420px}.cards{grid-template-columns:1fr 1fr}.foot{grid-template-columns:1fr 1fr}}@media(max-width:650px){.wrap{width:min(100% - 26px,var(--max))}.network strong{display:none}.head{min-height:66px}.brand small{display:none}.hero-grid{padding:52px 0}.hero-visual{min-height:340px}.section{padding:62px 0}.cards,.content-cards,.foot{grid-template-columns:1fr}.page-hero{padding:52px 0 36px}.content{padding:48px 0 72px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Visual enrichment 5.0 clean install */
.bundled-media img,.user-media img{width:100%;height:auto;display:block}.visual-section{padding-top:72px}.visual-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.visual-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;position:relative}.visual-media{aspect-ratio:4/5;background:#07090b;overflow:hidden}.visual-media img{width:100%;height:100%;object-fit:cover}.visual-copy{padding:18px 18px 22px}.visual-copy span{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent2)}.visual-copy h3{font-family:var(--serif);font-size:25px;margin:8px 0}.visual-copy p{color:var(--muted);font-size:14px;margin:0}.visual-copy a{display:inline-block;margin-top:12px;font-weight:750}.figure-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:0 0 36px}.figure-card{display:grid;grid-template-columns:160px 1fr;gap:22px;align-items:center;border:1px solid var(--line);background:var(--surface);padding:16px;border-radius:var(--radius);position:relative;overflow:hidden}.figure-card .portrait-media{max-width:none;margin:0}.figure-card .portrait-media img{width:160px;height:210px;object-fit:cover;border-radius:calc(var(--radius) * .65);box-shadow:none}.figure-card h3{font-family:var(--serif);font-size:27px;margin:5px 0}.figure-card span{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent2)}.figure-card p{margin:0;color:var(--muted);font-size:15px}.photo-panel{margin:0 0 34px;border:1px solid var(--line);background:var(--surface);padding:14px;border-radius:var(--radius)}.photo-panel img{width:100%;height:auto;object-fit:contain;filter:none!important;transform:none!important}.photo-caption{font-size:12px;color:var(--muted);padding:10px 2px 0}.series-rose-footer{text-align:center;margin:-20px 0 22px}.series-rose-footer img{width:38px;height:38px;opacity:.34;display:inline-block}.brand-max .site-header:after,.brand-rosa .site-header:after,.brand-hari .site-header:after{content:"";position:absolute;left:50%;top:50%;width:30px;height:30px;background:url("assets/media/black-rose.svg") center/contain no-repeat;opacity:.13;transform:translate(-50%,-50%);pointer-events:none}.brand-rosa .site-header:after{opacity:.2}.brand-max .hero:after,.brand-rosa .hero:after,.brand-hari .hero:after,.brand-max .page-hero:after,.brand-rosa .page-hero:after,.brand-hari .page-hero:after{content:"";position:absolute;right:4vw;bottom:-75px;width:290px;height:290px;background:url("assets/media/black-rose.svg") center/contain no-repeat;opacity:.035;pointer-events:none}.brand-rosa .hero:after,.brand-rosa .page-hero:after{opacity:.065}.page-hero{position:relative;overflow:hidden}.brand-hari .hero:after,.brand-hari .page-hero:after{opacity:.045}.brand-max .card,.brand-rosa .card,.brand-hari .card{position:relative;overflow:hidden}.brand-max .card:after,.brand-rosa .card:after,.brand-hari .card:after{content:"";position:absolute;right:-18px;bottom:-18px;width:80px;height:80px;background:url("assets/media/black-rose.svg") center/contain no-repeat;opacity:.018;pointer-events:none}.brand-rosa .card:after{opacity:.035}.brand-df .hero-visual{background:#050607}.brand-df .hero-visual img{object-fit:contain!important;filter:none!important;transform:none!important}.brand-df .wide-media img,.brand-df .portrait-media img,.brand-df .book-media img{object-fit:contain;filter:none!important;transform:none!important}.brand-df .photo-panel img{max-height:760px}.brand-df .visual-media{background:#050607}.brand-df .visual-media img{object-fit:contain!important;filter:none!important;transform:none!important}
@media(max-width:980px){.visual-grid{grid-template-columns:1fr 1fr}.figure-gallery{grid-template-columns:1fr}.brand-max .site-header:after,.brand-rosa .site-header:after,.brand-hari .site-header:after{display:none}}
@media(max-width:650px){.visual-grid{grid-template-columns:1fr}.figure-card{grid-template-columns:110px 1fr}.figure-card .portrait-media img{width:110px;height:150px}.brand-max .hero:after,.brand-rosa .hero:after,.brand-hari .hero:after,.brand-max .page-hero:after,.brand-rosa .page-hero:after,.brand-hari .page-hero:after{width:180px;height:180px;bottom:-55px}}

/* 5.3 – spoilerarme Figurenprofile */
.spoiler-note{margin:0 0 28px;padding:16px 18px;border:1px solid var(--line);border-left:3px solid var(--accent2);background:color-mix(in srgb,var(--surface) 92%,transparent);border-radius:var(--radius);color:#d7dce1}.profile-layout{display:grid;grid-template-columns:280px 1fr;gap:34px;align-items:start;margin:0 0 38px}.profile-layout .portrait-media{max-width:none;margin:0}.profile-layout .portrait-media img{width:100%;aspect-ratio:3/4;object-fit:cover}.profile-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0}.profile-meta div{background:var(--surface);border:1px solid var(--line);padding:14px 16px;border-radius:calc(var(--radius)*.75)}.profile-meta strong{display:block;color:var(--accent2);font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:5px}.profile-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:24px 0 42px}.profile-gallery .bundled-media,.profile-gallery .user-media{margin:0;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line);background:#07090b}.profile-gallery img{width:100%;height:100%;object-fit:cover!important;border-radius:0!important;box-shadow:none!important}.profile-back{margin:24px 0 0}.profile-back a{font-weight:750}@media(max-width:760px){.profile-layout{grid-template-columns:1fr}.profile-layout .portrait-media{max-width:330px}.profile-meta{grid-template-columns:1fr}.profile-gallery{grid-template-columns:1fr 1fr}}@media(max-width:520px){.profile-gallery{grid-template-columns:1fr}}

/* V5.4 accessibility: decorative brand initials stay visual only. */
.mark::before{content:attr(data-mark)}

/* V5.5 Projektstatus */
.project-status-strip{padding:18px 0;background:color-mix(in srgb,var(--accent) 8%,var(--bg2));border-bottom:1px solid var(--line)}.project-status-card{border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line));border-left:4px solid var(--accent);background:var(--surface);padding:18px 22px;border-radius:var(--radius)}.project-status-card span{display:block;color:var(--accent2);font-size:10px;letter-spacing:.15em;font-weight:850;margin-bottom:6px}.project-status-card strong{font-family:var(--serif);font-size:22px}.project-status-card p{margin:6px 0 0;color:var(--muted);max-width:90ch}

/* V5.9 · klare Projektkennzeichnung */
.project-status-card span{display:inline-flex;width:auto;padding:5px 9px;border:1px solid color-mix(in srgb,var(--accent) 65%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--accent) 11%,transparent);margin-bottom:9px}.project-status-card strong{display:block;font-size:clamp(22px,3vw,30px)}.project-status-card{box-shadow:0 14px 34px rgba(0,0,0,.18)}

/* V24 six-site network */
.network .wrap{flex-wrap:wrap}.network a{white-space:nowrap}
