        * { margin: 0; padding: 0; box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
            line-height: 1.7;
            color: #333;
            background: linear-gradient(135deg, #f5f7fa 0%, #e4e8f0 100%);
            max-width: 1400px;
            margin: 0 auto;
            padding: 0 15px;
        }
        a { color: #2c5aa0; text-decoration: none; transition: color 0.3s; }
        a:hover { color: #e74c3c; }
        img { max-width: 100%; height: auto; display: block; }
        header { background: #2c3e50; color: white; padding: 1.5rem 0; border-radius: 0 0 12px 12px; margin-bottom: 2rem; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
        .header-container { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
        .my-logo a { font-size: 2.2rem; font-weight: 900; color: #1abc9c; letter-spacing: -1px; display: flex; align-items: center; }
        .my-logo a i { margin-right: 10px; color: #e74c3c; }
        .my-logo a:hover { color: #16a085; }
        nav ul { display: flex; list-style: none; gap: 1.8rem; }
        nav a { color: #ecf0f1; font-weight: 600; padding: 0.5rem 0.8rem; border-radius: 5px; }
        nav a:hover { background: rgba(255,255,255,0.1); }
        .hamburger { display: none; font-size: 1.8rem; background: none; border: none; color: white; cursor: pointer; }
        .breadcrumb { padding: 1rem 0; font-size: 0.9rem; color: #7f8c8d; margin-bottom: 1.5rem; border-bottom: 1px solid #eee; }
        .breadcrumb a { color: #7f8c8d; }
        .breadcrumb a:hover { color: #3498db; }
        .main-content { display: grid; grid-template-columns: 1fr 300px; gap: 2.5rem; margin-bottom: 3rem; }
        @media (max-width: 992px) { .main-content { grid-template-columns: 1fr; } }
        article { background: white; padding: 2.5rem; border-radius: 12px; box-shadow: 0 6px 20px rgba(0,0,0,0.07); }
        h1 { color: #2c3e50; font-size: 2.8rem; margin-bottom: 1.5rem; line-height: 1.2; border-left: 5px solid #1abc9c; padding-left: 1rem; }
        h2 { color: #2c5aa0; font-size: 2rem; margin: 2.5rem 0 1.2rem; padding-bottom: 0.5rem; border-bottom: 2px dashed #eee; }
        h3 { color: #34495e; font-size: 1.6rem; margin: 2rem 0 1rem; }
        h4 { color: #7f8c8d; font-size: 1.3rem; margin: 1.8rem 0 0.8rem; }
        p { margin-bottom: 1.5rem; font-size: 1.1rem; text-align: justify; }
        .lead { font-size: 1.3rem; color: #2c3e50; font-weight: 500; padding: 1rem; background: #f8f9fa; border-left: 4px solid #3498db; border-radius: 0 8px 8px 0; }
        strong { color: #e74c3c; }
        em { color: #27ae60; }
        .highlight-box { background: linear-gradient(to right, #fff8e1, #fff); border: 1px solid #ffd54f; padding: 1.5rem; border-radius: 10px; margin: 2rem 0; }
        .article-img { width: 100%; max-width: 800px; margin: 2rem auto; border-radius: 10px; overflow: hidden; box-shadow: 0 8px 25px rgba(0,0,0,0.15); }
        .article-img img { width: 100%; }
        .img-caption { text-align: center; font-style: italic; color: #666; padding: 0.8rem; background: #f9f9f9; font-size: 0.95rem; }
        aside { background: white; padding: 1.8rem; border-radius: 12px; box-shadow: 0 5px 15px rgba(0,0,0,0.05); align-self: start; position: sticky; top: 20px; }
        .sidebar-widget { margin-bottom: 2.5rem; }
        .sidebar-widget h3 { font-size: 1.4rem; color: #2c3e50; margin-bottom: 1.2rem; padding-bottom: 0.5rem; border-bottom: 1px solid #eee; }
        .search-form { display: flex; }
        .search-form input { flex: 1; padding: 0.9rem; border: 2px solid #ddd; border-radius: 6px 0 0 6px; font-size: 1rem; }
        .search-form button { background: #3498db; color: white; border: none; padding: 0 1.5rem; border-radius: 0 6px 6px 0; cursor: pointer; transition: background 0.3s; }
        .search-form button:hover { background: #2980b9; }
        .rating-stars { color: #f1c40f; font-size: 1.8rem; margin: 1rem 0; text-align: center; }
        .rating-stars .fa-regular { color: #ccc; }
        .rating-form label { display: block; margin: 1rem 0 0.5rem; font-weight: 600; }
        .rating-form select, .rating-form textarea { width: 100%; padding: 0.8rem; border: 1px solid #ccc; border-radius: 6px; margin-bottom: 1rem; }
        .rating-form button { background: #27ae60; color: white; border: none; padding: 0.9rem 1.8rem; border-radius: 6px; cursor: pointer; width: 100%; font-weight: bold; }
        .rating-form button:hover { background: #219653; }
        .comments-section { background: white; padding: 2rem; border-radius: 12px; box-shadow: 0 6px 20px rgba(0,0,0,0.07); margin-bottom: 3rem; }
        .comment-form textarea { width: 100%; padding: 1rem; border: 2px solid #ddd; border-radius: 8px; min-height: 120px; margin-bottom: 1rem; font-family: inherit; }
        .comment-form button { background: #9b59b6; color: white; border: none; padding: 1rem 2rem; border-radius: 8px; cursor: pointer; font-weight: bold; }
        .comment-form button:hover { background: #8e44ad; }
        .comment-list { margin-top: 2.5rem; }
        .comment { border-bottom: 1px solid #eee; padding: 1.5rem 0; }
        .comment-author { font-weight: bold; color: #2c3e50; }
        .comment-date { color: #95a5a6; font-size: 0.9rem; }
        footer { background: #2c3e50; color: #ecf0f1; padding: 3rem 0 2rem; border-radius: 12px 12px 0 0; margin-top: 3rem; }
        .footer-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 2rem; }
        .footer-widget h4 { color: #1abc9c; font-size: 1.3rem; margin-bottom: 1.5rem; }
        .footer-widget ul { list-style: none; }
        .footer-widget li { margin-bottom: 0.8rem; }
        .footer-widget a { color: #bdc3c7; }
        .footer-widget a:hover { color: #1abc9c; }
        friend-link { display: block; background: rgba(255,255,255,0.05); padding: 1rem; border-radius: 6px; margin: 0.5rem 0; }
        .copyright { text-align: center; padding-top: 2rem; margin-top: 2rem; border-top: 1px solid #34495e; color: #95a5a6; font-size: 0.95rem; }
        @media (max-width: 768px) {
            .header-container { flex-direction: column; align-items: flex-start; }
            nav ul { flex-direction: column; gap: 0.5rem; width: 100%; display: none; margin-top: 1rem; }
            nav ul.active { display: flex; }
            .hamburger { display: block; }
            h1 { font-size: 2.2rem; }
            article, aside { padding: 1.5rem; }
        }
        .text-center { text-align: center; }
        .mt-3 { margin-top: 3rem; }
        .mb-3 { margin-bottom: 3rem; }
        .emoji { font-size: 1.2em; margin: 0 3px; }
        .last-updated { font-style: italic; color: #7f8c8d; background: #f8f9fa; padding: 0.8rem; border-radius: 6px; margin: 2rem 0; }
