* { margin: 0; padding: 0; box-sizing: border-box; }

.container {
    max-width: 900px;
    margin: 0 auto 60px;
    background: #fff;
    padding: 20px 30px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.back-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: #fff;
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    text-decoration: none;
    font-size: 0.88rem;
    font-weight: 700;
    padding: 0.5rem 1.2rem;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(37, 99, 235, 0.45);
    transition: transform 0.2s, box-shadow 0.2s;
    letter-spacing: 0.02em;
    margin-bottom: 1.5rem;
    display: inline-flex;
}
.back-link .back-arrow { display: inline-block; transition: transform 0.2s; }
.back-link:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(37, 99, 235, 0.6); color: #fff; }
.back-link:hover .back-arrow { transform: translateX(-4px); }
.back-link:active { transform: translateY(0); box-shadow: 0 4px 14px rgba(37, 99, 235, 0.45); }

h1 { color: #1565c0; border-bottom: 3px solid #1565c0; padding-bottom: 10px; margin-bottom: 16px; font-size: 1.8rem; }
h2 { color: #42a5f5; margin-top: 30px; margin-bottom: 8px; font-size: 1.3rem; }
h3 { color: #333; border-left: 5px solid #ccc; padding-left: 10px; margin: 20px 0 8px; font-size: 1.05rem; }

p { margin-bottom: 0.75rem; }
p strong { color: #1565c0; }

ul { margin: 0.5rem 0 1rem 1.5rem; }
ul li { margin-bottom: 0.3rem; }

hr { border: none; border-top: 1px solid #ddd; margin: 2rem 0; }

code {
    background: #e8eaf6;
    color: #1a237e;
    padding: 0.15rem 0.4rem;
    border-radius: 4px;
    font-size: 0.9rem;
    font-family: 'Courier New', Courier, monospace;
}

pre {
    background-color: #333;
    color: #f8f8f2;
    padding: 15px;
    border-radius: 5px;
    overflow-x: auto;
    font-size: 0.9em;
    font-family: 'Courier New', Courier, monospace;
    line-height: 1.6;
    margin: 0.75rem 0 1.25rem;
}

.keyword  { color: #66d9ef; }
.variable { color: #f8f8f2; }
.string   { color: #e6db74; }
.operator { color: #f92672; }
.function { color: #a6e22e; }
.type     { color: #55a5ff; }
.comment  { color: #75715e; font-style: italic; }
.tag      { color: #f78c6c; }
.static   { color: #96e22e; }

.code-block { position: relative; }
.copy-btn {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(255,255,255,0.15);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.3);
    border-radius: 5px;
    padding: 0.25rem 0.65rem;
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s, transform 0.15s;
    letter-spacing: 0.03em;
}
.copy-btn:hover { background: rgba(255,255,255,0.28); transform: translateY(-1px); }
.copy-btn:active { transform: translateY(0); }
.copy-btn.copied { background: rgba(74,222,128,0.25); border-color: rgba(74,222,128,0.6); }
