body {
    background-color: #fafafa;
}

.hero-section {
    padding: 3rem 0 2rem;
}
.hero-row {
    gap: 0;
}
.hero-photo-col {
    padding-right: 0;
}
.hero-photo {
    width: 100%;
    height: auto;
    display: block;
}
.hero-text-col {
    padding-left: 2.5rem;
}
.index-title {
    color: rgba(0,0,0,.84);
    margin-top: 0;
    margin-bottom: 0.4rem;
}
.index-sub {
    color: rgba(0,0,0,.76);
    margin-bottom: 1rem;
}
.index-text {
    color: rgba(0,0,0,.54);
    font-size: 1rem;
    line-height: 1.7;
    margin-bottom: 0;
}
.hero-divider {
    border-top: 1px solid rgba(0,0,0,.12);
    margin: 1.5rem 0 1.25rem;
}
.hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}
.hero-btn {
    display: inline-block;
    padding: 0.45rem 1.3rem;
    border: 1.5px solid rgba(0,0,0,.22);
    border-radius: 999px;
    color: rgba(0,0,0,.64);
    font-size: 0.88rem;
    text-decoration: none;
    transition: border-color 0.15s, color 0.15s, background 0.15s;
    letter-spacing: 0.01em;
}
.hero-btn:hover {
    border-color: #1C9963;
    color: #1C9963;
    text-decoration: none;
    background: rgba(28,153,99,0.05);
}
.hero-btn-blog i { color: #1C9963; }
.hero-btn-linkedin i { color: #0A66C2; }
.hero-btn-instagram i { color: #C13584; }
.hero-btn-facebook i { color: #1877F2; }
@media (max-width: 767px) {
    .hero-photo-col {
        margin-bottom: 1.5rem;
    }
    .hero-text-col {
        padding-left: 1rem;
    }
    .hero-photo {
        max-width: 280px;
        margin: 0 auto;
    }
}
.social-icon{
    color: rgba(0,0,0,.44);
    font-size:1.5rem;
}
.clock{
    margin-left: 25px;
}
.jumbotron.fortags a {
    background: #1C9963 !important;
}
.error{
    text-align: center !important;
}
@media(min-width: 769px){
    .md-nopad-right{
        padding-right: 0px !important;
    }
    .md-nopad-left{
        padding-left: 0px !important;
    }
}

.PageNavigation a {
    color: rgba(0,0,0,.7);
    text-decoration: none;
}
.PageNavigation a:hover {
    color: #1C9963;
    text-decoration: none;
}

.listrecent .card {
    border: none !important;
    border-bottom: 1px solid #ebebeb !important;
    border-radius: 0 !important;
    background: transparent;
}
.listrecent .card-title a {
    transition: color 0.15s;
}
.listrecent .card-title a:hover {
    color: #1C9963 !important;
    text-decoration: none;
}

.article-post a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-color: rgba(0,0,0,.3);
    transition: text-decoration-color 0.15s, color 0.15s;
}
.article-post a:hover {
    color: #1C9963;
    text-decoration-color: #1C9963;
}

.copy-btn {
    position: absolute;
    top: 0.55rem;
    right: 0.6rem;
    background: rgba(255,255,255,0.08);
    color: #aaa;
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 4px;
    padding: 0.2rem 0.65rem;
    font-size: 0.72rem;
    font-family: 'JetBrains Mono', monospace;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
    line-height: 1.6;
}
.copy-btn:hover {
    background: rgba(255,255,255,0.2);
    color: #fff;
}
.copy-btn.copied {
    color: #a6e22e;
    border-color: #a6e22e;
}

.share-btn {
    background: none;
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 0.15rem 0.5rem;
    font-size: 0.82rem;
    color: rgba(0,0,0,.45);
    cursor: pointer;
    line-height: 1.6;
}
.share-btn:hover, .share-btn:focus {
    color: rgba(0,0,0,.7);
    border-color: #bbb;
    outline: none;
    box-shadow: none;
}
.share-dropdown .dropdown-menu {
    min-width: 140px;
    font-size: 0.9rem;
}
.share-dropdown .dropdown-item {
    padding: 0.4rem 1rem;
}

.draft-badge {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #b45309;
    background: rgba(180,83,9,0.1);
    border: 1px solid rgba(180,83,9,0.3);
    border-radius: 3px;
    padding: 0.1em 0.45em;
    margin-left: 0.5rem;
    vertical-align: middle;
}
html[data-theme="dark"] .draft-badge {
    color: #fbbf24;
    background: rgba(251,191,36,0.1);
    border-color: rgba(251,191,36,0.3);
}

.post-back-link {
    margin-bottom: 1rem;
    font-size: 0.88rem;
}
.post-back-link a {
    color: rgba(0,0,0,.44);
    text-decoration: none;
    transition: color 0.15s;
}
.post-back-link a:hover {
    color: #1C9963;
    text-decoration: none;
}
html[data-theme="dark"] .post-back-link a {
    color: rgba(255,255,255,.45);
}

.article-post {
    font-size: 1.2rem;
    line-height: 1.9;
}

.listrecent h4.card-text {
    font-size: 1.05rem;
}

code {
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.875em;
}

.highlight pre {
    background: #272822 !important;
    border: none !important;
    border-radius: 4px;
    padding: 1rem 1.2rem;
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.875rem;
    line-height: 1.6;
    overflow-x: auto;
}

.highlight pre code {
    background: none;
    padding: 0;
    color: inherit;
}

/* ============================================================
   Dark Theme
   Activated by JS setting data-theme="dark" on <html>.
   JS reads localStorage or system prefers-color-scheme.
   ============================================================ */

/* --- Navbar --- */
html[data-theme="dark"] .mediumnavigation,
html[data-theme="dark"] .mediumnavigation.bg-white {
    background: rgba(18,18,18,.97) !important;
    box-shadow: 0 2px 2px -2px rgba(0,0,0,.5);
}
html[data-theme="dark"] .navbar-light .navbar-brand,
html[data-theme="dark"] .navbar-light .navbar-brand span {
    color: rgba(255,255,255,.88) !important;
}
html[data-theme="dark"] .navbar-light .nav-link {
    color: rgba(255,255,255,.75) !important;
}
html[data-theme="dark"] .navbar-light .nav-link:hover {
    color: #1C9963 !important;
}
html[data-theme="dark"] .navbar-light .navbar-toggler {
    border-color: rgba(255,255,255,.15);
}
html[data-theme="dark"] .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.7%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
html[data-theme="dark"] .mediumnavigation .form-control {
    background: rgba(255,255,255,.07);
    border-color: rgba(255,255,255,.1);
    color: rgba(255,255,255,.8);
}
html[data-theme="dark"] .mediumnavigation .form-control::placeholder {
    color: rgba(255,255,255,.4);
}
html[data-theme="dark"] .mediumnavigation .dropdown-menu {
    background: #1e1e1e;
    border-color: rgba(255,255,255,.1);
}
html[data-theme="dark"] .mediumnavigation .dropdown-item {
    color: rgba(255,255,255,.8);
}
html[data-theme="dark"] .mediumnavigation .dropdown-item:hover {
    background: rgba(255,255,255,.07);
    color: rgba(255,255,255,.95);
}

/* --- Body & base --- */
html[data-theme="dark"] body {
    background-color: #141414;
    color: rgba(255,255,255,.88);
}
html[data-theme="dark"] pre {
    background: #1e1e1e;
    border-color: rgba(255,255,255,.1);
    color: rgba(255,255,255,.8);
}

/* --- Hero / index --- */
html[data-theme="dark"] .index-title {
    color: rgba(255,255,255,.88);
}
html[data-theme="dark"] .index-sub {
    color: rgba(255,255,255,.76);
}
html[data-theme="dark"] .index-text {
    color: rgba(255,255,255,.65);
}
html[data-theme="dark"] .hero-divider {
    border-top-color: rgba(255,255,255,.12);
}
html[data-theme="dark"] .hero-btn {
    border-color: rgba(255,255,255,.22);
    color: rgba(255,255,255,.7);
}
html[data-theme="dark"] .social-icon {
    color: rgba(255,255,255,.5);
}

/* --- Section titles --- */
html[data-theme="dark"] .section-title h2 {
    border-bottom-color: rgba(255,255,255,.1);
    color: rgba(255,255,255,.88);
}
html[data-theme="dark"] .section-title span {
    border-bottom-color: rgba(255,255,255,.3);
}

/* --- Card footer bg-white override --- */
html[data-theme="dark"] .card-footer,
html[data-theme="dark"] .card-footer.bg-white {
    background-color: transparent !important;
}

/* --- Cards & lists --- */
html[data-theme="dark"] .card {
    background: #1e1e1e;
    border-color: rgba(255,255,255,.1) !important;
}
html[data-theme="dark"] .card-title,
html[data-theme="dark"] .card-title a,
html[data-theme="dark"] .card-title a.text-dark {
    color: rgba(255,255,255,.88) !important;
}
html[data-theme="dark"] .listrecent .card {
    background: transparent;
    border-bottom-color: rgba(255,255,255,.1) !important;
}
html[data-theme="dark"] .listfeaturedtag {
    border-color: rgba(255,255,255,.1);
}
html[data-theme="dark"] .listfeaturedtag h4.card-text,
html[data-theme="dark"] .listrecent h4.card-text {
    color: rgba(255,255,255,.65);
}
html[data-theme="dark"] .listrelated .card {
    background: #1e1e1e;
    box-shadow: 0 1px 7px rgba(0,0,0,.3);
}

/* --- Post meta --- */
html[data-theme="dark"] .post-top-meta span,
html[data-theme="dark"] span.post-date,
html[data-theme="dark"] span.post-read,
html[data-theme="dark"] span.post-read-more a {
    color: rgba(255,255,255,.5);
}
html[data-theme="dark"] span.post-name a,
html[data-theme="dark"] span.post-read-more a:hover {
    color: rgba(255,255,255,.87);
}

/* --- Article content --- */
html[data-theme="dark"] .article-post p,
html[data-theme="dark"] .article-post blockquote {
    color: rgba(255,255,255,.82);
}
html[data-theme="dark"] blockquote {
    color: rgba(255,255,255,.6);
}
html[data-theme="dark"] .article-post h1,
html[data-theme="dark"] .article-post h2,
html[data-theme="dark"] .article-post h3,
html[data-theme="dark"] .article-post h4,
html[data-theme="dark"] .article-post h5,
html[data-theme="dark"] .article-post h6 {
    color: rgba(255,255,255,.92);
}
html[data-theme="dark"] .article-post a {
    text-decoration-color: rgba(255,255,255,.3);
}
html[data-theme="dark"] .link-dark {
    color: rgba(255,255,255,.87);
}
html[data-theme="dark"] .PageNavigation a {
    color: rgba(255,255,255,.75);
}

/* --- Tags --- */
html[data-theme="dark"] ul.tags li a {
    background: rgba(255,255,255,.08);
    color: rgba(255,255,255,.7);
}
html[data-theme="dark"] ul.tags li a:hover {
    background: rgba(255,255,255,.13);
}

/* --- Gray background sections --- */
html[data-theme="dark"] .graybg {
    background-color: #1a1a1a;
}
html[data-theme="dark"] .graybg.authorpage {
    border-top-color: rgba(255,255,255,.1);
}
html[data-theme="dark"] .authorpage .author-description {
    color: rgba(255,255,255,.7);
}

/* --- Footer --- */
html[data-theme="dark"] .footer {
    background: #141414;
    border-top-color: rgba(255,255,255,.1) !important;
    color: rgba(255,255,255,.5);
}

/* --- Share --- */
html[data-theme="dark"] .share,
html[data-theme="dark"] .share a {
    color: rgba(255,255,255,.5);
    fill: rgba(255,255,255,.5);
}
html[data-theme="dark"] .share ul li i.fa {
    border-color: rgba(255,255,255,.2);
}
html[data-theme="dark"] .share-btn {
    color: rgba(255,255,255,.55);
    border-color: rgba(255,255,255,.2);
}
html[data-theme="dark"] .share-btn:hover,
html[data-theme="dark"] .share-btn:focus {
    color: rgba(255,255,255,.8);
    border-color: rgba(255,255,255,.4);
    outline: none;
    box-shadow: none;
}
html[data-theme="dark"] .share-dropdown .dropdown-menu {
    background: #1e1e1e;
    border-color: rgba(255,255,255,.1);
}
html[data-theme="dark"] .share-dropdown .dropdown-item {
    color: rgba(255,255,255,.8);
}
html[data-theme="dark"] .share-dropdown .dropdown-item:hover {
    background: rgba(255,255,255,.07);
    color: rgba(255,255,255,.95);
}

/* --- Pagination --- */
html[data-theme="dark"] .bottompagination span.navigation {
    color: rgba(255,255,255,.5);
    border-top-color: rgba(255,255,255,.1);
}

/* --- Alertbar --- */
html[data-theme="dark"] .alertbar {
    background-color: #1a1a1a;
    box-shadow: 0 -3px 10px 0 rgba(0,0,0,.4);
}
html[data-theme="dark"] .alertbar input[type="email"] {
    background: #2a2a2a;
    border-color: rgba(255,255,255,.2);
    color: rgba(255,255,255,.8);
}

/* --- Theme toggle button --- */
.theme-toggle-btn {
    background: none;
    border: none;
    padding: 0.25rem 0.5rem;
    cursor: pointer;
    font-size: 1rem;
    color: rgba(0,0,0,.54) !important;
    line-height: 1;
    transition: color 0.15s;
}
.theme-toggle-btn:hover {
    color: #1C9963 !important;
}
html[data-theme="dark"] .theme-toggle-btn {
    color: rgba(255,255,255,.7) !important;
}
html[data-theme="dark"] .theme-toggle-btn:hover {
    color: #1C9963 !important;
}
