:root{--bg:#F2EFE4;--card:#fff;--ink:#12233F;--ink2:rgba(18,35,63,.72);--ink3:rgba(18,35,63,.52);--muted:rgba(18,35,63,.38);--brass:#A4762F;--patina:#3E5C50;--wine:#8B4A52;--line:rgba(18,35,63,.15);--grid:rgba(18,35,63,.03)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background-color:var(--bg);background-image:linear-gradient(var(--grid) .5px,transparent .5px),linear-gradient(90deg,var(--grid) .5px,transparent .5px);background-size:36px 36px;background-attachment:fixed;color:var(--ink);font-family:'Lora',serif;position:relative;overflow-x:hidden}
a{color:inherit;text-decoration:none}
::selection{background:var(--brass);color:#fff}
.wrap{max-width:1140px;margin:0 auto;padding:0 32px}

.g-card{position:relative;background:linear-gradient(rgba(255,255,255,.62),rgba(255,255,255,.4));backdrop-filter:blur(14px) saturate(140%);border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 34px rgba(18,35,63,.08);transition:transform .3s,box-shadow .3s}
.g-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(18,35,63,.12)}
.g-card-accent{border:1px solid rgba(164,118,47,.35)}

.rv,.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.rv.in,.rv.visible,.reveal.visible{opacity:1;transform:none}
.d1{transition-delay:.15s}.d2{transition-delay:.3s}
@media(prefers-reduced-motion:reduce){.rv,.reveal{opacity:1;transform:none;transition:none}}

.drop-cap::first-letter{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:58px;float:left;line-height:.85;padding:6px 12px 0 0;color:var(--brass)}

nav,#nav{position:fixed;top:0;left:0;right:0;z-index:80;background:rgba(242,239,228,.68);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
nav .inner,#nav .inner{display:flex;justify-content:space-between;align-items:center;padding:17px 32px;max-width:1140px;margin:0 auto}
.logo{font-family:'Fraunces',serif;font-style:italic;font-size:19px;color:var(--ink)}
.logo span{font-family:'Space Grotesk',sans-serif;font-style:normal;font-weight:600;color:var(--brass)}
nav .links,#nav .links{display:flex;gap:28px;align-items:center;font-family:'IBM Plex Mono',monospace;font-size:12.5px}
nav .links a,#nav .links a{color:var(--ink3);transition:color .2s}
nav .links a:hover,#nav .links a:hover{color:var(--ink)}
nav .links a.active{color:var(--brass);border-bottom:1px solid var(--brass);padding-bottom:4px}

.hero{min-height:76vh;display:flex;align-items:center;padding:150px 32px 40px;text-align:center}
.hero .inner,.hinner{max-width:1140px;margin:0 auto;width:100%}
.kicker{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:11.5px;text-transform:uppercase;letter-spacing:.16em;font-weight:600;color:var(--brass);border-bottom:2px solid var(--brass);padding-bottom:5px;margin-bottom:30px}
/* Drumul de intoarcere la nodul din care s-a navigat. Adaugat de JS doar cand
   exista o origine reala, deci nu se vede la intrare directa din Google. */
/* Etichetele de categorie sunt linkuri permanente catre nodul lor din grafic
   (scrise in HTML la build, deci functioneaza si fara JS). */
.kicker-cat{color:inherit;text-decoration:none;cursor:pointer;transition:opacity .18s ease}
.kicker-cat:hover{opacity:.62;text-decoration:underline;text-underline-offset:3px}
.kicker-cat:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:2px}
.kicker-back{color:inherit;text-decoration:none;cursor:pointer;transition:opacity .18s ease}
.kicker-back::before{content:"\2190";margin-right:6px;opacity:.65}
.kicker-back:hover{opacity:.62;text-decoration:underline;text-underline-offset:3px}
.kicker-back:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:2px}
h1.title,.hero h1{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(42px,7vw,84px);line-height:1.04;letter-spacing:-.02em;margin-bottom:26px}
h1.title em,.hero h1 em{font-style:italic;font-weight:500;color:var(--brass)}
.sub,.hsub{font-size:19px;font-style:italic;color:var(--ink3);margin-bottom:44px}
.cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;font-family:'IBM Plex Mono',monospace}
.cta a{padding:15px 30px;border-radius:999px;font-weight:600;font-size:13.5px;transition:transform .2s}
.cta a:hover{transform:translateY(-2px)}
.cta .primary{background:var(--ink);color:#F2EFE4}
.cta .ghost{border:1px solid var(--line);background:rgba(255,255,255,.5);backdrop-filter:blur(10px);color:var(--ink)}
.scroll-cue{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);animation:bob 2.4s infinite}
@keyframes bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,8px)}}

section{padding:100px 0;position:relative}
.despre,.despre-wrap{max-width:720px;margin:0 auto;padding:0 32px}
.despre-card{padding:34px 40px}
.despre-card .label{font-family:'IBM Plex Mono',monospace;font-size:11.5px;text-transform:uppercase;letter-spacing:.14em;color:var(--brass);text-align:center;margin-bottom:20px}
.despre p,.despre-card p{font-size:18px;line-height:1.8;color:var(--ink2)}
.titleblock{margin-top:24px;font-family:'IBM Plex Mono',monospace;font-size:10px;display:inline-grid;grid-template-columns:auto auto;gap:2px 16px;color:var(--ink3);border-top:1px solid var(--line);padding-top:16px}

.stats{padding:70px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.stat{padding:30px 38px;text-align:center;display:flex;flex-direction:column;justify-content:center}
.stat .n{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:44px;line-height:1;margin-bottom:8px;color:var(--brass)}
.stat .l{font-family:'IBM Plex Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3)}
.organic{grid-column:1/3;padding:28px 34px;background:none;border:none;box-shadow:none;backdrop-filter:none}
.organic-head{font-family:'IBM Plex Mono',monospace;font-size:11.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--brass);margin-bottom:2px}
.organic-hint{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--muted);margin-bottom:10px}
.solar-wrap{position:relative;width:100%}
.solar-stage{position:relative;width:100%;height:clamp(320px,44vw,500px);border-radius:16px;overflow:visible;cursor:default}
.solar-stage svg{width:100%;height:100%;display:block}
/* Un singur chip de informatie pentru satelitul aflat sub cursor -- nu N etichete
   radiale (la 12 articole pe aceeasi raza suprapunerea e garantata). */
.solar-chip{position:absolute;left:0;top:0;transform:translate(-50%,-100%);max-width:260px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 13px;box-shadow:0 10px 26px rgba(18,35,63,.14);pointer-events:none;z-index:3}
.solar-chip .t{font-family:'Fraunces',serif;font-style:italic;font-size:14.5px;line-height:1.3;color:var(--ink)}
.solar-chip .e{font-family:'Lora',serif;font-size:12px;line-height:1.45;color:var(--ink3);margin-top:5px}
/* Graficul tip Obsidian: sisteme solare inlocuite cu o retea SVG 2D, noduri
   balon de sapun (gradient radial, brass/patina/vişiniu), click centreaza
   nodul ca soare al unei "galaxii" cu tag-urile-vecine pe orbita si satelitii
   = articolele reale ale temei. Corelat bidirectional cu #themeSolarPanels. */
.tg-node{cursor:pointer}
.tg-circle{transition:cx .6s cubic-bezier(.3,.7,.3,1),cy .6s cubic-bezier(.3,.7,.3,1),r .3s ease}
.tg-rim{fill:none;stroke-width:1;transition:cx .6s cubic-bezier(.3,.7,.3,1),cy .6s cubic-bezier(.3,.7,.3,1),r .3s ease,stroke-opacity .3s ease,stroke-width .2s ease}
.tg-hit{fill:transparent;transition:cx .6s cubic-bezier(.3,.7,.3,1),cy .6s cubic-bezier(.3,.7,.3,1)}
.tg-label{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:600;fill:var(--ink);pointer-events:none;transition:opacity .3s ease,fill .3s ease,x .6s cubic-bezier(.3,.7,.3,1),y .6s cubic-bezier(.3,.7,.3,1)}
.tg-count{font-family:'IBM Plex Mono',monospace;font-size:10.5px;fill:var(--ink3);pointer-events:none;transition:opacity .3s ease,x .6s cubic-bezier(.3,.7,.3,1),y .6s cubic-bezier(.3,.7,.3,1)}
.tg-edge{fill:none;transition:x1 .6s cubic-bezier(.3,.7,.3,1),y1 .6s cubic-bezier(.3,.7,.3,1),x2 .6s cubic-bezier(.3,.7,.3,1),y2 .6s cubic-bezier(.3,.7,.3,1),opacity .3s ease,stroke-width .2s ease}
.tg-node.is-dim{opacity:.28}
.tg-edge.is-dim{opacity:.08}
.tg-node.is-active .tg-label{fill:var(--brass)}
.tg-node.is-active .tg-rim{stroke-opacity:.95;stroke-width:2.2}
.tg-node.is-focused .tg-rim{stroke-opacity:1;stroke-width:2.6}
.tg-edge.is-active{stroke:var(--brass)!important;stroke-width:2.4}
.tg-sat{opacity:0;transition:opacity .4s ease}
.tg-sat.in{opacity:.85}
.tg-sat-dot{fill:var(--ink);fill-opacity:.35;transition:r .2s ease}
.tg-sat-link{stroke:rgba(18,35,63,.18);stroke-width:1}
.tg-float{animation:tgdrift var(--dur) ease-in-out infinite alternate}
@keyframes tgdrift{from{transform:translate(0,0)}to{transform:translate(var(--dx),var(--dy))}}
@media(prefers-reduced-motion:reduce){.tg-float{animation:none}.tg-circle,.tg-rim,.tg-hit,.tg-label,.tg-count,.tg-edge{transition:none}}
/* `hidden` nu are efect pe un element caruia CSS-ul ii da `display` -- regula
   din UA stylesheet e mai slaba decat orice regula de autor. Fara asta, panouri
   marcate hidden din JS rămâneau vizibile in browser (dar pareau ascunse in
   testele headless, care nu aplica cascada CSS). */
[hidden]{display:none!important}
/* Panouri pliate, unul per tema: singura lista de articole din pagina (inainte
   apareau doua, una peste alta). <details> ca sa mearga fara JS/WebGL. */
.solar-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:10px;margin-top:12px;align-items:start}
.fb-theme{background:rgba(255,255,255,.62);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .25s,box-shadow .25s,background .25s}
.fb-theme[open]{background:rgba(255,255,255,.85);border-color:color-mix(in srgb,var(--c) 55%,var(--line));box-shadow:0 8px 24px rgba(18,35,63,.10)}
.fb-theme.is-active{border-color:var(--c);box-shadow:0 10px 28px rgba(18,35,63,.14)}
.fb-theme summary{display:flex;align-items:center;gap:8px;padding:12px 14px;cursor:pointer;list-style:none;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13px;color:var(--ink)}
.fb-theme summary::-webkit-details-marker{display:none}
.fb-theme summary:hover .fb-name{color:var(--c)}
.fb-theme summary:focus-visible{outline:2px solid var(--c);outline-offset:-2px}
.fb-dot{width:11px;height:11px;border-radius:50%;background:var(--c);flex:none}
.fb-name{flex:1;min-width:0}
.fb-n{font-family:'IBM Plex Mono',monospace;font-weight:400;font-size:11px;color:var(--c)}
.fb-chev{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--ink3);transition:transform .25s}
.fb-theme[open] .fb-chev{transform:rotate(180deg)}
.fb-links{display:flex;flex-direction:column;gap:1px;padding:0 8px 8px}
.fb-links a{display:block;padding:7px 8px;border-radius:9px;text-decoration:none;transition:background .18s}
.fb-links a .t{font-family:'IBM Plex Mono',monospace;font-size:11.5px;line-height:1.4;color:var(--ink2);display:block}
.fb-links a .e{font-family:'Lora',serif;font-size:11.5px;line-height:1.45;color:var(--ink3);display:block;margin-top:2px}
.fb-links a:hover,.fb-links a:focus-visible,.fb-links a.is-active{background:color-mix(in srgb,var(--c) 13%,transparent);outline:none}
.fb-links a:hover .t,.fb-links a:focus-visible .t,.fb-links a.is-active .t{color:var(--c)}
@media(prefers-reduced-motion:reduce){.fb-theme,.fb-chev,.fb-links a{transition:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.sec-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:52px;flex-wrap:wrap;gap:14px}
.sec-head h2{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(28px,4vw,40px)}
.sec-head p{color:var(--ink3);margin-top:10px;font-family:'Lora',serif}
.sec-head .link{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--brass);display:flex;align-items:center;gap:6px}

.essays{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:auto auto;gap:22px}
.essay{padding:32px}
.essay.big{grid-row:span 2;display:flex;flex-direction:column;justify-content:center}
.essay.big h3{font-size:27px}
.essay .row{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.essay .cat{font-family:'IBM Plex Mono',monospace;font-size:11px;padding:5px 12px;border-radius:999px;border:1px solid;background:rgba(255,255,255,.4)}
.essay .cat.brass{color:var(--brass);border-color:rgba(164,118,47,.35)}
.essay .cat.wine{color:var(--wine);border-color:rgba(139,74,82,.35)}
.essay .cat.patina{color:var(--patina);border-color:rgba(62,92,80,.35)}
.essay .date{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--muted)}
.essay h3{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:20px;margin-bottom:12px;transition:color .2s}
.essay-title{display:block}
.essay-title:hover h3{color:var(--brass)}
.essay p{font-family:'Lora',serif;font-size:14.5px;line-height:1.65;color:var(--ink3)}
.card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:18px;flex-wrap:wrap;gap:10px}
.more{font-family:'IBM Plex Mono',monospace;font-size:12.5px;font-weight:600;color:var(--patina)}
.cat-expand{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:rgba(255,255,255,.5);border-radius:999px;padding:5px 13px 5px 7px;cursor:pointer;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--ink3);transition:border-color .2s,color .2s}
.cat-expand:hover{border-color:var(--brass);color:var(--brass)}
.cat-expand .mini-sketch{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.4;flex-shrink:0}
.cat-expand .chev{font-size:9px;transition:transform .25s}
.cat-expand[aria-expanded="true"] .chev{transform:rotate(180deg)}
.subtree{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:9px}
.subtree[hidden]{display:none}
.subtree a{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ink3);display:flex;justify-content:space-between;gap:10px}
.subtree a:hover{color:var(--brass)}
.subtree a::after{content:"→";flex-shrink:0}

.lamps-scroll{display:flex;gap:26px;overflow-x:auto;padding:0 32px 34px;scrollbar-width:none;-ms-overflow-style:none}
.lamps-scroll::-webkit-scrollbar{display:none;width:0;height:0}
.lamp{flex:0 0 300px;aspect-ratio:3/4;border-radius:20px;overflow:hidden;position:relative;box-shadow:0 12px 34px rgba(18,35,63,.14);background:var(--card)}
.lamp img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}
.lamp:hover img{transform:scale(1.08)}
.lamp .cap,.lamp .name{position:absolute;left:10px;right:10px;bottom:10px;border-radius:14px;background:rgba(242,239,228,.72);backdrop-filter:blur(16px);border:1px solid var(--line);padding:14px 18px;opacity:0;transform:translateY(6px);transition:opacity .4s,transform .4s}
.lamp:hover .cap,.lamp:hover .name{opacity:1;transform:none}
.lamp .cap h4,.lamp .name{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:15px;color:var(--ink)}
.lamp .cap p{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--ink3);margin-top:4px}
.lamps-hint{padding:0 32px;text-align:right;font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-top:6px}
.noimg{width:100%;height:100%;background:radial-gradient(circle at 50% 35%,rgba(164,118,47,.25),var(--bg) 70%)}

.archive{max-width:860px;margin:0 auto;padding:150px 28px 90px}
.phead{text-align:center;margin-bottom:70px}
.phead h1{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(32px,4.6vw,48px);line-height:1.15}
.phead .sub{color:var(--muted);font-style:italic;margin-top:12px;font-family:'Lora',serif}
/* Fiecare an e un <section>, deci prindea regula globala section{padding:100px 0}
   -- 200px intre ani, plus marginea titlului. Anulam padding-ul si lasam doar
   marginea titlului sa separe anii. */
.year{padding:0}
.year:first-of-type h2{margin-top:0}
.year h2{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:24px;color:var(--brass);margin:34px 0 12px}
.year ul{list-style:none}
.year li a{display:flex;justify-content:space-between;gap:18px;padding:13px 6px;border-bottom:1px solid var(--line);text-decoration:none;align-items:baseline}
.year li a:hover .t{color:var(--brass)}
.year .t{font-size:17px;transition:color .2s;font-family:'Lora',serif}
.year .d{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--muted);white-space:nowrap}
.ggrid{display:flex;gap:24px;overflow-x:auto;padding:0 2px 12px;scrollbar-width:none;-ms-overflow-style:none}
.ggrid::-webkit-scrollbar{display:none;width:0;height:0}
.gcard{flex:0 0 260px;border-radius:18px;overflow:hidden;position:relative;aspect-ratio:3/4;box-shadow:0 10px 30px rgba(18,35,63,.12);text-decoration:none;background:var(--bg)}
.gcard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.gcard:hover img{transform:scale(1.06)}
.gcard .gname{position:absolute;left:0;right:0;bottom:0;padding:50px 16px 14px;background:linear-gradient(transparent,rgba(18,35,63,.72));color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:18px}

.progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:99;background:transparent}
.progress div{height:100%;width:0;background:linear-gradient(90deg,var(--brass),var(--patina))}
.article{max-width:700px;margin:0 auto;padding:150px 26px 90px}
.ahead{text-align:center;margin-bottom:56px}
.ahead h1{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(30px,4.6vw,42px);line-height:1.18;margin:10px 0 14px}
.ahead .meta{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--muted)}
.content p{margin-bottom:24px;font-size:18.5px;line-height:1.8;color:var(--ink2)}
.content h2,.content h3{font-family:'Space Grotesk',sans-serif;font-weight:600;margin:40px 0 16px;line-height:1.25}
.content img{max-width:100%;height:auto;border-radius:12px;margin:14px auto;display:block}
.content p:has(>img),.content p:has(>a>img){text-align:center}
.content p:has(>img)>img,.content p:has(>a>img)>a{margin-bottom:8px}
.content img[class*="align"]{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:0 10px 30px rgba(18,35,63,.10)}
.content img.alignleft{float:left;max-width:46%;margin:6px 24px 16px 0!important}
.content img.alignright{float:right;max-width:46%;margin:6px 0 16px 24px!important}
.content img.aligncenter{display:block;float:none;margin:24px auto!important}
.content img.alignnone{float:none;margin:16px 0!important}
.content:after{content:"";display:table;clear:both}
.igrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:22px 0;clear:both}
.igrid img{margin:0;width:100%;height:170px;object-fit:cover;border-radius:12px;box-shadow:0 6px 18px rgba(18,35,63,.10)}
.igrid img:hover{opacity:.92}
.content blockquote{border-left:3px solid var(--patina);padding:6px 0 6px 24px;font-style:italic;font-size:19px;color:var(--ink2);margin:30px 0}
.content a{color:var(--brass)}
.content ul,.content ol{margin:0 0 24px 26px;color:var(--ink2)}
.tags{margin:44px 0 10px;display:flex;flex-wrap:wrap;gap:10px}
.pn-row{display:flex;justify-content:space-between;gap:16px;margin:50px 0 8px;font-family:'IBM Plex Mono',monospace;font-size:12.5px}
.pn{color:var(--brass);text-decoration:none;max-width:46%}
.back{margin-top:28px;font-family:'IBM Plex Mono',monospace;font-size:12.5px}
.back a{color:var(--muted);text-decoration:none}
.arh-badge{font-family:'IBM Plex Mono',monospace;font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:7px 16px;display:inline-block;margin:0 auto 30px;text-align:center}
.ahead .arh-badge{display:inline-block}
em.arh{font-style:normal;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px;margin-left:8px;vertical-align:middle}

footer{padding:64px 0;border-top:1px solid var(--line)}
.finner{max-width:1140px;margin:0 auto;padding:0 32px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px}
.fname{font-family:'Fraunces',serif;font-style:italic;font-size:19px;color:var(--ink);margin-bottom:8px}
.fcopy{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--muted)}
footer a{color:var(--ink3);text-decoration:none;font-family:'IBM Plex Mono',monospace;font-size:12.5px}
footer a:hover{color:var(--brass)}

@media(max-width:860px){.essays{grid-template-columns:1fr}.essay.big{grid-row:auto}.stats-grid{grid-template-columns:1fr}.organic{grid-column:1/2}nav .links,#nav .links{gap:16px}nav .links a,#nav .links a{font-size:11.5px}}
/* Pagina /despre/: portretul incadrat de text (float), cu paragraful curgand in jurul lui */
.portret{float:left;width:190px;height:auto;margin:4px 26px 14px 0;border-radius:14px;box-shadow:0 10px 28px rgba(18,35,63,.16)}
.despre-card .drop-cap{overflow:visible}
.despre-doors{clear:both;display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.despre-doors a{padding:11px 20px;border-radius:999px;font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.06em;text-decoration:none}
.despre-doors .primary{background:var(--ink);color:#F2EFE4}
.despre-doors .ghost{border:1px solid var(--line);background:rgba(255,255,255,.5);color:var(--ink)}
.despre-doors a:hover{opacity:.88}
@media(max-width:640px){.portret{float:none;display:block;width:150px;margin:0 auto 20px}}
/* Sistemul planetar sus pe /psihologie/ */
.solar-section{padding:0 0 40px;border-bottom:1px solid var(--line);margin-bottom:20px}
.solar-section .organic{padding:0}

/* ===== Cautare (lupa in nav + panou overlay) ===== */
.nav-search-btn{display:inline-flex;align-items:center;gap:7px;background:none;border:0;padding:0;cursor:pointer;font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ink3);transition:color .2s}
.nav-search-btn:hover{color:var(--brass)}
.nav-search-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
.nav-search-btn:focus-visible{outline:2px solid var(--brass);outline-offset:4px;border-radius:3px}
html.search-open{overflow:hidden}
.search-overlay{position:fixed;inset:0;z-index:200;background:rgba(18,35,63,.34);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding:12vh 20px 20px}
.search-overlay[hidden]{display:none}
.search-box{width:100%;max-width:620px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px rgba(18,35,63,.24);overflow:hidden;display:flex;flex-direction:column;max-height:70vh}
.search-field{display:flex;align-items:center;gap:11px;padding:15px 17px;border-bottom:1px solid var(--line);flex:none}
.search-ico{width:17px;height:17px;fill:none;stroke:var(--muted);stroke-width:1.9;stroke-linecap:round;flex:none}
#searchInput{flex:1;min-width:0;border:0;background:none;outline:none;font-family:'Lora',serif;font-size:16.5px;color:var(--ink)}
#searchInput::placeholder{color:var(--muted)}
#searchInput::-webkit-search-cancel-button{display:none}
.search-close{background:none;border:0;cursor:pointer;color:var(--muted);font-size:15px;padding:2px 4px;flex:none;transition:color .2s}
.search-close:hover{color:var(--ink)}
.search-status{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--ink3);padding:9px 18px 0;flex:none}
.search-status:empty{display:none}
.search-results{list-style:none;margin:0;padding:8px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.search-hit{display:block;padding:10px 12px;border-radius:10px;text-decoration:none;transition:background .15s}
.search-hit:hover,.search-hit.is-sel{background:rgba(164,118,47,.10)}
.search-hit.is-sel{box-shadow:inset 0 0 0 1px rgba(164,118,47,.42)}
.sh-t{display:block;font-family:'Lora',serif;font-size:15.5px;color:var(--ink);line-height:1.35}
.search-hit:hover .sh-t,.search-hit.is-sel .sh-t{color:var(--brass)}
.sh-m{display:flex;gap:9px;align-items:baseline;margin-top:3px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--muted)}
.sh-sec{color:var(--patina);white-space:nowrap}
.sh-tags{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sh-tags:empty{display:none}
@media(max-width:860px){
  .nav-search-btn span{display:none}
  .search-overlay{padding:8vh 12px 12px}
  .search-box{max-height:80vh}
}
@media(prefers-reduced-motion:reduce){.nav-search-btn,.search-hit,.search-close{transition:none}}

/* ===== Graficul de teme pe telefon =====
   SVG-ul se scaleaza uniform, deci pe ecran ingust JS-ul trece pe un viewBox
   portret (620x900 in loc de 1000x600): mai putine unitati pe latime => fiecare
   unitate e mai mare in pixeli reali. Fonturile fiind si ele in unitati SVG,
   trebuie crescute in acelasi ritm, altfel rămân la fel de mici.
   Scena creste in inaltime ca sa incapa formatul portret. */
@media(max-width:760px){
  .solar-stage{height:min(132vw,620px)}
  .tg-label{font-size:25px}
  .tg-count{font-size:18px}
  .tg-sat-dot{r:7}
  .organic{padding:20px 4px}
  .solar-chip{max-width:210px}
  .solar-chip .t{font-size:13.5px}
  .solar-chip .e{font-size:11.5px}
}
@media(max-width:420px){
  .solar-stage{height:min(140vw,600px)}
  .tg-label{font-size:29px}
  .tg-count{font-size:21px}
}

/* Capul cardului sa nu intre sub navul fix cand JS il deruleaza cu block:'start'. */
#themeSolarPanels details.fb-theme{scroll-margin-top:80px}
@media(max-width:860px){#themeSolarPanels details.fb-theme{scroll-margin-top:68px}}
