@import url('https://fonts.googleapis.com/css2?family=Ubuntu+Mono:wght@400;700&family=JetBrains+Mono:wght@400;500&display=swap');
:root{--font-main:'Ubuntu Mono',monospace;--font-code:'JetBrains Mono',monospace;--bg-light:#f4f5f7;--text-light:#172b4d;--card-bg-light:#fff;--border-light:#dfe1e6;--primary-light:#0052cc;--primary-hover-light:#0065ff;--header-bg-light:rgba(255,255,255,.8);--code-bg-light:#f7f7f7;--bg-dark:#0d1117;--text-dark:#c9d1d9;--card-bg-dark:#161b22;--border-dark:#30363d;--primary-dark:#58a6ff;--primary-hover-dark:#79c0ff;--header-bg-dark:rgba(22,27,34,.8);--code-bg-dark:#161b22}[data-theme="light"]{--bg:var(--bg-light);--text:var(--text-light);--card-bg:var(--card-bg-light);--border:var(--border-light);--primary:var(--primary-light);--primary-hover:var(--primary-hover-light);--header-bg:var(--header-bg-light);--code-bg:var(--code-bg-light)}[data-theme="dark"]{--bg:var(--bg-dark);--text:var(--text-dark);--card-bg:var(--card-bg-dark);--border:var(--border-dark);--primary:var(--primary-dark);--primary-hover:var(--primary-hover-dark);--header-bg:var(--header-bg-dark);--code-bg:var(--code-bg-dark)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%}body{display:flex;flex-direction:column;font-family:var(--font-main);background-color:var(--bg);color:var(--text);transition:background-color .3s ease,color .3s ease;font-size:14px;line-height:1.6}.container{flex:1 0 auto;max-width:800px;margin:0 auto;padding:20px;width:100%}.main-header{position:sticky;top:0;z-index:10;background-color:var(--header-bg);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);padding:10px 20px}.nav-container{display:flex;justify-content:space-between;align-items:center;max-width:800px;margin:0 auto}.logo-area{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text)}.logo-area img{height:32px;width:auto;object-fit:contain}.logo-area h1{font-size:1.2rem;font-weight:700}.nav-links{display:flex;align-items:center;gap:8px}.btn-header{text-decoration:none;background-color:var(--primary);color:#fff;padding:6px 12px;border-radius:5px;font-size:.85rem;transition:background-color .2s ease}.btn-header:hover{background-color:var(--primary-hover)}.theme-switcher{background:0 0;border:none;cursor:pointer;color:var(--text);padding:4px;display:flex;align-items:center}.theme-switcher svg{width:18px;height:18px}.hero-banner{width:100%;height:200px;object-fit:cover;border-radius:8px;margin-bottom:24px}.site-intro{text-align:center;margin-bottom:32px}.site-intro h2{font-size:1.5rem;margin-bottom:8px}.site-intro p{font-size:.9rem;opacity:.8;max-width:600px;margin:0 auto 16px}.intro-buttons{display:flex;justify-content:center;gap:12px}.search-container{position:relative;margin-bottom:24px}.search-container input{width:100%;padding:10px 12px 10px 36px;background-color:var(--card-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:var(--font-main);font-size:.9rem}.search-container svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;opacity:.6}.snippet-grid{display:grid;gap:16px}.snippet-card{background-color:var(--card-bg);border:1px solid var(--border);border-radius:6px;text-decoration:none;color:var(--text);transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;overflow:hidden}.snippet-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border)}.card-header h2{font-size:1rem;color:var(--primary)}.card-author{display:flex;align-items:center;gap:6px;font-size:.8rem;opacity:.8}.author-avatar-small{width:20px;height:20px;border-radius:50%;object-fit:cover}.card-body{padding:16px;display:flex;flex-direction:column;gap:12px;flex-grow:1}.card-description{font-size:.85rem;opacity:.9;flex-grow:1}.view-code-button{text-align:center;padding:8px;background-color:var(--bg);border:1px solid var(--border);border-radius:4px;font-weight:700;font-size:.8rem;transition:background-color .2s ease,color .2s ease}.snippet-card:hover .view-code-button{background-color:var(--primary);color:#fff;border-color:var(--primary)}.card-footer{display:flex;justify-content:space-between;font-size:.8rem;opacity:.7;padding:12px 16px;border-top:1px solid var(--border);background-color:var(--bg)}.snippet-detail-header{margin-bottom:24px}.snippet-title-area{margin-bottom:20px}.snippet-title-area h1.gradient-title{font-size:2rem;background:linear-gradient(90deg,var(--primary),var(--text));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent}.meta-info{display:flex;align-items:center;gap:16px;font-size:.85rem;opacity:.8;margin-top:8px}.meta-info .author,.meta-info .view-count{display:flex;align-items:center;gap:6px}.author-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;border:2px solid var(--border)}.meta-info svg{width:14px;height:14px}.action-buttons{display:flex;gap:8px}.action-btn{display:flex;align-items:center;gap:6px;background-color:var(--card-bg);border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:5px;font-size:.8rem;cursor:pointer;transition:background-color .2s ease,border-color .2s ease;text-decoration:none;font-family:var(--font-main)}.action-btn:hover{background-color:var(--bg);border-color:var(--primary)}.action-btn svg{width:14px;height:14px}.copy-btn .copied-icon{display:none}.copy-btn.copied .copy-icon{display:none}.copy-btn.copied .copied-icon{display:block}.copy-btn.copied{color:#28a745;border-color:#28a745}.snippet-content h3{font-size:1.1rem;margin-top:24px;margin-bottom:8px;border-bottom:1px solid var(--border);padding-bottom:4px}.snippet-content p,.snippet-content ul{font-size:.9rem;opacity:.9}.snippet-content a{color:var(--primary);text-decoration:underline}.snippet-content ul{list-style-position:inside;padding-left:4px}.snippet-content li{margin-bottom:4px}.code-window{margin-top:24px;background-color:var(--code-bg);border-radius:8px;border:1px solid var(--border);box-shadow:0 8px 24px rgba(0,0,0,.1);overflow:hidden}.window-header{display:flex;align-items:center;padding:8px 12px;background-color:var(--bg);border-bottom:1px solid var(--border)}.traffic-lights{display:flex;gap:6px}.dot{width:12px;height:12px;border-radius:50%}.dot.red{background:#ff5f56}.dot.yellow{background:#ffbd2e}.dot.green{background:#27c93f}.window-title{flex-grow:1;text-align:center;font-size:.8rem;opacity:.6}.window-header .copy-btn{margin-left:auto}.code-window pre{margin:0;overflow-x:auto}.code-window code.hljs{padding:16px;font-family:var(--font-code);font-size:.8rem;line-height:1.5;background:0 0!important}.back-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--text);margin-bottom:24px;font-size:.9rem}.back-link:hover{color:var(--primary)}.back-link svg{width:16px;height:16px}.form-container{background-color:var(--card-bg);border:1px solid var(--border);padding:24px;border-radius:8px}.form-header{text-align:center;margin-bottom:24px}.form-header h1{font-size:1.5rem}.form-header p{font-size:.9rem;opacity:.7}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:.85rem;font-weight:700}.form-control{width:100%;padding:8px 10px;background-color:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:var(--font-main);font-size:.9rem;transition:border-color .2s ease,box-shadow .2s ease}.form-control:focus{outline:0;border-color:var(--primary)}textarea.form-control{min-height:120px;resize:vertical}.btn{width:100%;padding:10px;border:none;border-radius:4px;background-color:var(--primary);color:#fff;font-family:var(--font-main);font-weight:700;font-size:.9rem;cursor:pointer;transition:background-color .2s ease}.btn:hover{background-color:var(--primary-hover)}.alert{padding:12px;border-radius:4px;margin-bottom:16px;font-size:.9rem;text-align:center}.alert-success{background-color:rgba(40,167,69,.2);color:#155724;border:1px solid rgba(40,167,69,.4)}.alert-danger{background-color:rgba(220,53,69,.2);color:#721c24;border:1px solid rgba(220,53,69,.4)}[data-theme="dark"] .alert-success{color:#d4edda}[data-theme="dark"] .alert-danger{color:#f8d7da}.main-footer{flex-shrink:0;text-align:center;padding:16px;font-size:.8rem;color:var(--text);opacity:.6;border-top:1px solid var(--border)}.btn-shimmer{position:relative;overflow:hidden}.btn-shimmer::after{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to right,rgba(255,255,255,0) 0%,rgba(255,255,255,.2) 50%,rgba(255,255,255,0) 100%);transform:rotate(30deg);animation:shimmer 2.5s infinite linear}@keyframes shimmer{0%{transform:translateX(-100%) rotate(30deg)}100%{transform:translateX(100%) rotate(30deg)}}

/* Error Page Styles */
.error-container {
    text-align: center;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.error-image {
    max-width: 250px;
    margin-bottom: 24px;
}
.error-title {
    font-size: 1.8rem;
    margin-bottom: 8px;
    color: var(--primary);
}
.error-message {
    font-size: 1rem;
    opacity: 0.8;
    margin-bottom: 24px;
}
