/*
Theme Name: Rubicon
Theme URI: https://rubicon.ro
Author: Rubicon
Description: Temă blog personală
Version: 5.5.0
License: GNU General Public License v2
Text Domain: rubicon
*/

/* =========================================================================
   RESET
   ========================================================================= */
*, *:before, *:after { box-sizing: border-box; outline: 0; }
article, aside, details, figcaption, footer, header, main, menu, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
[hidden], template { display: none; }
a { background-color: transparent; }
a:active, a:hover { outline: 0; }
img { border: 0; height: auto; max-width: 100%; }
hr { box-sizing: content-box; height: 0; }
pre { overflow: auto; }
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1.6rem; }
button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0; }
button { overflow: visible; }
button, select { text-transform: none; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
input { line-height: normal; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
input[type="search"] { -webkit-appearance: textfield; box-sizing: content-box; }
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 15px; }
legend { border: 0; padding: 0; }
textarea { overflow: auto; max-width: 100%; }
table { border-collapse: collapse; border-spacing: 0; margin: 0 0 15px; width: 100%; }
td, th { padding: 0; }
p { margin: 0; }
b, strong { font-weight: 700; }
dfn, cite, em, i { font-style: italic; }
blockquote { margin: 0 15px; }
address { margin: 0 0 15px; }
ul, ol { margin: 0 0 15px; }
ul { list-style: disc; }
ol { list-style: decimal; }
dt { font-weight: 700; }
dd { margin: 0 15px 15px; }

/* =========================================================================
   FONTS
   ========================================================================= */
@font-face {
    font-display: swap;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 100 900;
    src: url('font/Rubik-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-display: swap;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 100 900;
    src: url('font/Rubik-latinext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-display: swap;
    font-family: 'Merriweather 24pt';
    font-style: normal;
    font-weight: 400;
    src: url('font/Merriweather24pt-Regular.woff2') format('woff2');
}
@font-face {
    font-display: swap;
    font-family: 'Merriweather 24pt';
    font-style: normal;
    font-weight: 700;
    src: url('font/Merriweather24pt-Bold.woff2') format('woff2');
}

/* =========================================================================
   HEADINGS
   ========================================================================= */
h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 700; font-family: "Merriweather 24pt", serif; }
h1 { font-size: 3.6rem; }
h2 { font-size: 3.3rem; }
h3 { font-size: 3rem; }
h4 { font-size: 2.7rem; }
h5 { font-size: 2.4rem; }
h6 { font-size: 2rem; }

/* =========================================================================
   BUTTONS & INPUTS
   ========================================================================= */
button, input[type="button"], input[type="reset"], input[type="submit"] {
    background: #0e2738; border: 1px solid #0e2738; border-radius: 2px;
    color: #FFF; display: inline-block; font-size: 1.3rem; font-weight: 700;
    padding: 8px 20px; text-transform: uppercase;
}
button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
    background: #333; border: 1px solid #333; color: #fff;
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"],
input[type="search"], textarea {
    border: 1px solid #ddd; border-radius: 2px; box-sizing: border-box;
    font-size: 1.3rem; padding: 8px 10px; max-width: 100%;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus,
input[type="password"]:focus, input[type="search"]:focus, textarea:focus {
    color: #111; border: 1px solid #0e2738;
}

/* =========================================================================
   LINKS
   ========================================================================= */
a { color: #1b95e0; text-decoration: none; }
a:hover { color: rgba(0,0,0,0.8); }
a img { vertical-align: top; }

/* =========================================================================
   TRANSITIONS
   ========================================================================= */
.listingpost, .listingpost .post-image, #primary, #secondary,
button, input[type="button"], input[type="reset"], input[type="submit"],
input[type="text"], input[type="email"], input[type="url"], input[type="password"],
input[type="search"], textarea, a {
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

/* =========================================================================
   GENERAL STRUCTURE
   ========================================================================= */
html { font-size: 70%; text-rendering: optimizelegibility; }

body {
    font-family: 'Merriweather 24pt', serif;
    font-weight: 400;
    background: #e4e7eb;
    font-size: 15px;
    color: #000;
    overflow-x: clip;
    margin: 0;
    padding: 0;
    line-height: 1.6;
}


.site-content {
    overflow: hidden;
    display: flex;
    background: #FFF;
    margin-bottom: 30px;
    border-radius: 5px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05), 0 1px 2px rgba(0,0,0,0.04);
}

.container {
    margin: 0 auto;
    max-width: 1220px;
    min-width: 300px;
    padding: 0 10px;
    position: relative;
}

#primary {
    padding: 20px;
    width: 66%;
}

#secondary {
    width: 34%;
    padding: 20px;
    background: #f0f4f8;
}

/* =========================================================================
   HEADER & NAVIGATION
   ========================================================================= */
.site-header { clear: both; }

.topnav {
    background: #0e2738;
    height: 60px;
    width: 100%;
    position: sticky;
    top: 0;
    z-index: 999;
}

/* Desktop logged-in: stă sub bara admin WP fixed */
.admin-bar .topnav { top: 32px; }

/* Mobile logged-in: bara admin e absolute, scrolează cu pagina,
   deci topnav-ul stă la top: 0 (urmărește natural admin bar-ul în jos) */
@media screen and (max-width: 782px) {
    .admin-bar .topnav { top: 0; }
}

.topnav .container { height: 60px; }

.topnav .right-menu {
    line-height: 60px;
    position: absolute;
    right: 10px;
    top: 0;
    font-size: 1.3rem;
}
.topnav .right-menu ul { list-style: none; margin: 0; padding: 0; }
.topnav .right-menu li { float: left; margin-right: 5px; }
.topnav .right-menu li:last-of-type { margin-right: 0; }
.topnav .right-menu a {
    color: #FFF; float: left; line-height: 60px; padding: 0 10px; font-size: 20px;
}
.topnav .right-menu a:hover { color: #999; }
.topnav .right-menu .twitter  { color: #1da1f2; }
.topnav .right-menu .instagram { color: #c32aa3; }
.topnav .right-menu .youtube  { color: #ff0000; }
.topnav .right-menu .rss      { color: #ff8800; }
.topnav .right-menu .searchpop { cursor: pointer; color: #FFF; }

/* Search popup */
.searchtop {
    display: none;
    position: absolute;
    right: 10px;
    top: 60px;
    background: #0e2738;
    padding: 10px;
    border-radius: 0 0 4px 4px;
    z-index: 1000;
    min-width: 280px;
}
.searchtop.open { display: block; }
.searchtop form { display: flex; }
.searchtop input[type="search"] {
    flex: 1; background: #1a3c50; border: 1px solid #1a3c50; color: #fff;
    padding: 8px 10px; font-size: 1.4rem; border-radius: 3px 0 0 3px;
}
.searchtop input[type="search"]::placeholder { color: #aaa; }
.searchtop input[type="search"]::-webkit-search-cancel-button,
.searchtop input[type="search"]::-webkit-search-decoration,
.searchtop input[type="search"]::-webkit-search-results-button,
.searchtop input[type="search"]::-webkit-search-results-decoration { -webkit-appearance: none; appearance: none; display: none; }
.searchtop input[type="search"]::-ms-clear,
.searchtop input[type="search"]::-ms-reveal { display: none; width: 0; height: 0; }
.searchtop button {
    background: #1a3c50; border: none; color: #fff; padding: 8px 14px;
    border-radius: 0 3px 3px 0; font-size: 1.4rem;
}

.headinfo {
    min-height: 100px;
    position: relative;
    background: #e4e7eb;
    margin-top: 10px;
    margin-bottom: 10px;
}

.headinfo .container {
    width: 100%;
    min-height: 100px;
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex;
    align-items: center;
}

.site-branding {
    margin-left: 10px;
    position: relative;
}

.site-branding .description {
    color: #aaa;
    font-size: 1.2rem;
    font-weight: 600;
    position: absolute;
    top: 45px;
    white-space: nowrap;
}

.site-branding .site-title { font-size: 1px; margin: 0; }
.site-branding .site-title a { color: #FFF; }
.site-branding .site-title a:hover { opacity: 0.8; }
.site-branding .site-title a img { display: block; }

/* Custom logo upload-uit prin WordPress */
.site-branding .custom-logo-link { display: inline-block; line-height: 0; }
.site-branding .custom-logo-link:hover { opacity: 0.85; transition: opacity 0.2s; }
.site-branding .custom-logo { display: block; max-height: 80px; width: auto; height: auto; }

.headinfo .headled { float: right; margin-top: 10px; }

/* Nav */
#mobile-menu { display: none; }

.main-navigation { position: relative; }
.main-navigation ul { list-style: none; margin: 0; padding: 0; line-height: 60px; }
.main-navigation li { position: relative; display: inline-block; margin-right: 20px; }
.main-navigation li:last-of-type { margin-right: 0; }
.main-navigation a {
    color: #aaa; display: block; font-size: 1.2rem; font-weight: 600;
    text-transform: uppercase; line-height: 60px;
    font-family: 'Rubik', Arial, Helvetica, sans-serif;
}
.main-navigation a:hover { color: #fff; }
.main-navigation .current-menu-item > a { color: #FFF; }

/* =========================================================================
   POST LISTING
   ========================================================================= */
.twitter-update {
    clear: both;
    display: block;
    margin-bottom: 30px;
    position: relative;
}

.twupdate {
    color: #333;
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 10px;
    text-transform: uppercase;
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
}

.twitter-update .twupdate span { color: #54aaeb; font-size: 20px; }

.listingpost {
    border-bottom: 1px solid #dee8f3;
    margin-bottom: 40px;
    padding-bottom: 40px;
    position: relative;
}

.listingpost:hover { border-bottom: 1px solid #0e2738; }

.listingpost .post-meta {
    color: #999;
    font-size: 1.1rem;
    text-transform: uppercase;
    font-family: 'Rubik', Arial, Helvetica, sans-serif;
    margin-bottom: 8px;
}

.listingpost .post-meta .byline::before,
.listingpost .post-meta .views::before {
    content: "·"; display: inline-block; margin: 0 5px;
}

.listingpost .post-title {
    font-size: 2.6rem;
    margin-bottom: 10px;
}

.listingpost .post-title a { color: #0e2738; }
.listingpost .post-title a:hover { color: #333; }

.listingpost .post-summary {
    font-size: 1.45rem;
    line-height: 1.5;
    color: #444;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.listingpost .post-footer { clear: both; padding-top: 20px; }

.listingpost .post-footer .comments {
    bottom: 20px;
    font-size: 1.3rem;
    font-weight: 600;
    position: absolute;
    right: 0;
}

.listingpost .post-footer .comments a { color: #0e2738; }
.listingpost .post-footer .comments a:hover { color: #0e2738; }

.listingpost .post-image { margin-bottom: 15px; }
.listingpost .post-image:hover { opacity: 0.8; }
.listingpost .post-image img { border-radius: 3px; width: 100%; display: block; aspect-ratio: 1200 / 630; object-fit: cover; }
.post-featured-image img { width: 100%; display: block; aspect-ratio: 1200 / 630; object-fit: cover; border-radius: 3px; }
.post-featured-image { margin-bottom: 25px; }

/* Pagination */
.navigation { clear: both; display: block; text-align: center; margin-top: 20px; }
.navigation a { color: #000; }
.navigation span a {
    border: 1px solid #ddd; display: inline-block; font-size: 1.3rem;
    font-weight: 300; height: 30px; line-height: 26px;
    margin-right: 5px; padding: 0 10px;
}
.navigation .active a { border: 1px solid #0e2738; color: #0e2738; }
.navigation a:hover { border: 1px solid #0e2738; color: #0e2738; }
.navigation .nav-sep { display: inline-block; height: 30px; margin-right: 5px; }

/* =========================================================================
   SIDEBAR / WIDGETS
   ========================================================================= */
.widget {
    margin-bottom: 30px;
    font-size: 1.35rem;
    font-family: 'Rubik', Arial, Helvetica, sans-serif;
    position: relative;
}

.widget a { color: #0e2738; }
.widget a:hover { color: #777; }

.widget ul { margin: 0; padding-left: 15px; }
.widget li { word-wrap: break-word; }

.widget-title {
    border-bottom: 1px solid #ddd;
    color: #000;
    font-family: 'Rubik', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 20px;
    padding-bottom: 5px;
    position: relative;
    text-transform: uppercase;
}

.widget-title:after {
    background: #000;
    bottom: -1px;
    content: "";
    display: block;
    height: 1px;
    margin-top: 6px;
    position: absolute;
    width: 50px;
}

.listing_articole { display: block; clear: both; }
.listing_articole ul { list-style: none; margin: 0; padding: 0; }
.listing_articole li { margin-bottom: 20px; position: relative; overflow: hidden; }

.listing_articole .post-photo { float: left; margin-right: 10px; position: relative; }
.listing_articole .post-photo img { border-radius: 3px; max-width: 60px; }
.listing_articole .post-photo .no-thumb {
    width: 60px; height: 60px; border-radius: 3px;
    background: linear-gradient(135deg, #0e2738, #1a3c50);
}

.listing_articole .post-description { padding-left: 70px; }
.listing_articole .post-description .title {
    font-family: 'Rubik', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
}
.listing_articole .post-description .title a { color: #000; }
.listing_articole .post-description .title a:hover { color: #777; }
.listing_articole .widget-time { color: #999; font-size: 1rem; text-transform: uppercase; }

.widget_top_articole .post-description { padding-right: 44px; }
.widget_top_articole .cand {
    background: #0e2738;
    border-radius: 3px;
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    padding: 2px 10px;
    position: absolute;
    right: 0;
    top: 1px;
}
.listing_articole .pozitie {
    color: #999; font-size: 1.6rem; font-weight: 700;
    position: absolute; right: 0; top: 0;
}

.widget_blogroll ul { padding-left: 0; list-style: none; }
.widget_blogroll li { margin-bottom: 6px; }
.widget_blogroll a::before { content: "› "; }

.widget_pocket ul { padding-left: 0; list-style: none; }
.widget_pocket li { margin-bottom: 8px; line-height: 1.4; }
.widget_pocket .rss-date { color: #999; font-size: 1rem; display: block; }
.widget_pocket a { color: #0e2738; }

.widget_banners { font-size: 1.35rem; line-height: 1.6; margin-bottom: 30px; }
.widget_banners a { color: #0e2738; font-weight: 600; }

/* Youtube widget */
.widget ul li .rss-date { color: #999; font-size: 1rem; display: block; }

/* =========================================================================
   FOOTER
   ========================================================================= */
.site-footer {
    background: #e4e7eb;
    padding: 20px 0;
    color: #666;
    font-size: 1.2rem;
    font-family: 'Rubik', sans-serif;
    border-top: 1px solid #d0d4d8;
}
.site-footer p { margin-bottom: 5px; }
.site-footer a { color: #0e2738; font-weight: 600; }
.site-footer a:hover { color: #1a3c50; }
.site-footer .copy { margin-bottom: 0; }

/* Scroll to top */
.cd-top {
    border-radius: 5px 5px 0 0;
    bottom: 0;
    color: #4d6680;
    font-size: 4rem;
    line-height: 1;
    opacity: 0;
    padding: 2px;
    position: fixed;
    right: 20px;
    transition: opacity 0.3s;
}
.cd-top:hover { color: #fff; }
.cd-top.cd-is-visible { opacity: 1; }

/* =========================================================================
   SINGLE POST
   ========================================================================= */
.post-container .post-header { margin-bottom: 20px; }

.post-container .post-title {
    font-size: 3.2rem;
    margin-bottom: 10px;
    color: #0e2738;
}

.post-container .post-meta {
    font-family: 'Rubik', Arial, Helvetica, sans-serif;
    color: #999;
    font-size: 1.1rem;
    text-transform: uppercase;
    font-weight: 400;
}
.post-container .post-meta .byline { margin-right: 5px; }
.post-container .post-meta .byline a { color: #0e2738; }
.post-container .post-meta .post-date::before,
.post-container .post-meta .views::before,
.post-container .post-meta .comments::before { content: "·"; display: inline-block; margin: 0 5px; }
.post-container .post-meta .comments a { color: #0e2738; font-weight: 600; }

.post-content {
    border-bottom: 1px solid #dee8f3;
    margin-bottom: 20px;
    padding-bottom: 14px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.8;
}
.post-content p { padding-bottom: 25px; }
.post-content p:last-of-type { padding-bottom: 10px; }
.post-content a { color: #0e2738; word-break: break-word; }
.post-content a:hover { color: #0e2738; }
.post-content hr { border: 0; border-top: 1px solid #dee8f3; margin: 0 0 25px; }
.post-content blockquote {
    background: #eee; border-radius: 5px; font-style: normal; line-height: 1.6;
    margin-bottom: 25px; margin-left: 0; padding: 10px;
}
.post-content ol { padding-left: 50px; margin-bottom: 25px; }
.post-content ul { padding-left: 20px; margin-bottom: 25px; }
.post-content li { margin-bottom: 10px; }

.post-content .the-tags {
    display: block; margin-top: 10px; margin-bottom: 20px; padding-bottom: 0;
}
.post-content .the-tags a {
    border: 1px solid #aaa; border-radius: 4px; color: #999;
    font-size: 1.2rem; margin-bottom: 5px; margin-right: 5px;
    padding: 2px 10px; display: inline-block;
    font-family: 'Rubik', sans-serif;
}
.post-content .the-tags a:hover { border-color: #0e2738; color: #0e2738; }

/* Gallery */
.post-gallery { margin: 0 0 25px; display: flex; flex-wrap: wrap; gap: 6px; }
.gallery-item img {
    border-radius: 4px; display: block; cursor: pointer;
    transition: opacity 0.2s;
    width: 150px; height: 150px; object-fit: cover;
}
.gallery-item img:hover { opacity: 0.8; }

/* Patreon box */
.patreon {
    background: #f5f8fa;
    border: 1px solid #dee8f3;
    border-radius: 5px;
    padding: 15px 20px;
    margin-bottom: 30px;
    font-family: 'Rubik', Arial, Helvetica, sans-serif;
    font-size: 1.4rem;
}
.patreon p { padding-bottom: 0; margin-bottom: 0; }
.patreon a { color: #0e2738; font-weight: 600; }
.patreon a:hover { color: #0e2738; }

/* =========================================================================
   COMMENTS
   ========================================================================= */
#comments { font-family: 'Rubik', Arial, Helvetica, sans-serif; clear: both; }

.postcomments h3 {
    border-bottom: 1px solid #ddd; color: #000;
    font-family: 'Rubik', sans-serif; font-size: 1.4rem; font-weight: 700;
    margin-bottom: 20px; padding-bottom: 5px; position: relative; text-transform: uppercase;
}
.postcomments h3:after {
    background: #000; bottom: -1px; content: ""; display: block;
    height: 1px; position: absolute; width: 50px;
}

ol.commentlist { list-style: none; margin: 0; padding: 0; }
ol.commentlist ul.children { list-style: none; padding: 0; }

ol.commentlist > li,
ol.commentlist ul.children > li {
    border-bottom: 1px solid #ddd;
    margin-bottom: 20px;
    padding-bottom: 20px;
    position: relative;
}
ol.commentlist > li:last-of-type,
ol.commentlist ul.children > li:last-of-type { border-bottom: none; }

ol.commentlist li.comment ul.children {
    background: #F5F8FA; border-radius: 5px;
    margin-left: 10px; margin-top: 20px; position: relative;
    padding: 15px 15px 0;
    list-style: none;
}
ol.commentlist li.comment ul.children:before {
    border-bottom: 7px solid #F5F8FA;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    content: ""; display: inline-block; position: absolute; left: 30px; top: -7px;
}
ol.commentlist li.comment ul.children li:last-of-type { margin: 0; border-bottom: none; padding-bottom: 0; }

.comment-body { position: relative; }
.comment-meta { clear: both; margin-bottom: 15px; overflow: hidden; position: relative; }

.comment-meta .cmtnr {
    color: #ccc; font-size: 2rem; position: absolute; right: 0; top: 0; font-weight: 400;
}
.comment-author-avatar img {
    border-radius: 3px; float: left; margin-right: 7px; width: 35px; height: 35px;
}
.comment-metadata { margin-left: 42px; line-height: 1; }
.comment-metadata cite {
    display: block; font-size: 1.4rem; font-style: normal; font-weight: 700;
    line-height: 1; margin-top: 3px;
}
.comment-metadata cite a { color: #0e2738; }
.comment-metadata .comment-time { color: #999; font-size: 11px; margin-top: 4px; display: block; }
.comment-metadata .comment-time time { color: #999; }

.comment-content p { padding-bottom: 10px; font-size: 1.4rem; line-height: 1.6; }

/* Vote buttons */
.scr-votes-wrapper { display: flex; gap: 8px; margin-top: 5px; }
.scr-vote-btn {
    background: none; border: 1px solid #ddd; border-radius: 3px;
    color: #999; cursor: pointer; font-size: 1.2rem; padding: 3px 8px;
    display: inline-flex; align-items: center; gap: 4px;
}
.scr-vote-btn:hover { background: #0e2738; border-color: #0e2738; color: #fff; }
.scr-vote-up:hover { background: #27ae60; border-color: #27ae60; }
.scr-vote-down:hover { background: #e74c3c; border-color: #e74c3c; }
.scr-count-up, .scr-count-down { font-weight: 600; }

.comment-footer { display: block; height: 27px; margin-top: 15px; overflow: hidden; }
ol.commentlist li.comment div.reply a {
    border: 1px solid #ddd; border-radius: 3px; color: #999;
    display: inline-block; font-size: 11px; padding: 2px 5px;
}
ol.commentlist li.comment div.reply a:hover {
    background: #0e2738; border-color: #0e2738; color: #fff;
}

/* bypostauthor */
.bypostauthor cite, .bypostauthor cite a { color: #0e2738 !important; }

/* Comment form */
#respond {
    overflow: hidden; position: relative; padding-top: 20px;
    font-family: 'Rubik', Arial, Helvetica, sans-serif;
}
#respond .disclaimer { color: #0e2738; font-size: 1.3rem; margin-bottom: 15px; }
#respond h3 {
    border-bottom: 1px solid #ddd; color: #000; font-family: 'Rubik', sans-serif;
    font-size: 1.4rem; font-weight: 700; margin-bottom: 20px; padding-bottom: 5px;
    position: relative; text-transform: uppercase;
}
#respond h3:after {
    background: #000; bottom: -1px; content: ""; display: block;
    height: 1px; position: absolute; width: 50px;
}
#author, #email, #url { margin-bottom: 10px; padding: 10px; width: 100%; }
#commentform textarea { width: 100%; font-size: 15px; }
#commentform p { margin-bottom: 10px; }
.comment-notes { font-size: 13px; margin-bottom: 15px; color: #999; }

/* Reply form mutat de JS în interiorul unui <li> de comentariu */
ol.commentlist li.comment #respond {
    clear: both;
    margin-top: 15px;
    padding-top: 15px;
    padding-bottom: 5px;
    border-top: 1px solid #eee;
    overflow: visible;
    position: static;
}
ol.commentlist li.comment #respond h3 {
    font-size: 1.3rem;
    margin-bottom: 15px;
}
#cancel-comment-reply-link {
    font-size: 1.2rem;
    margin-left: 10px;
    color: #999;
    font-weight: 400;
    text-decoration: none;
}
#cancel-comment-reply-link:hover { color: #0e2738; }

/* =========================================================================
   LIGHTBOX
   ========================================================================= */
.lightbox-overlay {
    display: none; position: fixed; inset: 0;
    background: rgba(20,20,20,0.92); z-index: 9999;
    align-items: center; justify-content: center;
}
.lightbox-overlay.active { display: flex; }
.lightbox-img-wrap { max-width: 90vw; max-height: 90vh; }
.lightbox-img-wrap img { max-width: 90vw; max-height: 90vh; border-radius: 4px; display: block; }
.lightbox-close, .lightbox-prev, .lightbox-next {
    background: none; border: none; color: #fff; font-size: 2.4rem;
    cursor: pointer; position: fixed; padding: 10px;
}
.lightbox-close { top: 20px; right: 20px; }
.lightbox-prev { left: 20px; top: 50%; transform: translateY(-50%); }
.lightbox-next { right: 20px; top: 50%; transform: translateY(-50%); }
.lightbox-close:hover, .lightbox-prev:hover, .lightbox-next:hover { color: #0e2738; }

/* =========================================================================
   RESPONSIVE
   ========================================================================= */
@media (max-width: 768px) {
    #primary  { width: 100%; }
    #secondary { width: 100%; }
    .site-content { flex-direction: column; }

    .main-navigation { display: none; }
    .main-navigation.open { display: block; position: absolute; top: 60px; left: 0; right: 0; background: #0e2738; z-index: 998; }
    .main-navigation.open ul { line-height: 1; padding: 10px 0; }
    .main-navigation.open li { display: block; margin: 0; padding: 0 20px; border-bottom: 1px solid #1a3c50; }
    .main-navigation.open a { line-height: 44px; }

    #mobile-menu { display: block; position: absolute; left: 10px; top: 10px; }
    #mobile-menu button { background: none; border: none; color: #fff; font-size: 22px; padding: 5px 10px; line-height: 40px; }

    .site-branding .description { white-space: normal; font-size: 1rem; }
    .headinfo { height: auto; }

    .listingpost .post-title { font-size: 1.8rem; }
    .listingpost .post-footer .comments { position: static; display: block; padding-top: 10px; }

    .post-container .post-title { font-size: 2.2rem; line-height: 1.3; }
    .post-content { font-size: 16px; line-height: 1.65; }
    .post-content p { padding-bottom: 18px; }

    h1 { font-size: 2.6rem; }
    h2 { font-size: 2.3rem; }
    h3 { font-size: 2rem; }
    h4 { font-size: 1.8rem; }
    h5 { font-size: 1.6rem; }
    h6 { font-size: 1.4rem; }
}

