/* ═══════════════════════════════════════════════════════════════ DRACULA PRO ULTRA — info-board.win The definitive dark theme. Built for focus, built for coders. ═══════════════════════════════════════════════════════════════ */ /* ── CUSTOM PROPERTIES ── */ .d-header, #main-outlet, html body { --dp-bg: #282a36; --dp-bg-deep: #1e1f29; --dp-surface: #21222c; --dp-surface2: #2d2f3f; --dp-border: #44475a; --dp-border2: #363849; --dp-fg: #f8f8f2; --dp-comment: #6272a4; --dp-purple: #bd93f9; --dp-purple-dim: rgba(189,147,249,0.12); --dp-pink: #ff79c6; --dp-pink-dim: rgba(255,121,198,0.1); --dp-cyan: #8be9fd; --dp-green: #50fa7b; --dp-yellow: #f1fa8c; --dp-orange: #ffb86c; --dp-red: #ff5555; --dp-radius: 8px; --dp-radius-lg: 12px; --dp-transition: 0.15s ease; } /* ── LAYOUT ── */ #main-outlet .wrap, .d-header .wrap { max-width: 1420px; padding: 0 36px; } body { font-family: -apple-system, "Inter", "Segoe UI", system-ui, sans-serif; font-size: 15px; line-height: 1.6; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* ── HEADER ── */ .d-header { background: var(--dp-bg-deep) !important; border-bottom: 1px solid var(--dp-border) !important; box-shadow: 0 1px 0 rgba(189,147,249,0.12), 0 4px 24px rgba(0,0,0,0.4) !important; height: 62px; } .d-header .wrap { display: flex; align-items: center; } .d-header-icons .btn.icon, .d-header .icons .btn.icon { color: var(--dp-comment) !important; border-radius: var(--dp-radius); padding: 7px; transition: color var(--dp-transition), background var(--dp-transition); } .d-header-icons .btn.icon:hover, .d-header .icons .btn.icon:hover { color: var(--dp-purple) !important; background: var(--dp-purple-dim) !important; } /* ── NAVIGATION PILLS ── */ .nav-pills .nav-item a { color: var(--dp-comment) !important; border-radius: var(--dp-radius); font-weight: 500; font-size: 0.875rem; padding: 6px 14px; transition: color var(--dp-transition), background var(--dp-transition); } .nav-pills .nav-item.active a, .nav-pills .nav-item a:hover { color: var(--dp-purple) !important; background: var(--dp-purple-dim) !important; } /* ── SIDEBAR ── */ .sidebar-wrapper { background: var(--dp-bg) !important; border-right: 1px solid var(--dp-border2) !important; } .sidebar-sections .sidebar-section-header-wrapper button { color: var(--dp-comment) !important; font-size: 0.67rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; } .sidebar-sections .sidebar-section-link-wrapper a { color: var(--dp-comment) !important; border-radius: var(--dp-radius); font-size: 0.875rem; font-weight: 500; padding: 6px 10px; border-left: 2px solid transparent; transition: all var(--dp-transition); } .sidebar-sections .sidebar-section-link-wrapper a:hover { color: var(--dp-fg) !important; background: var(--dp-surface2) !important; } .sidebar-sections .sidebar-section-link-wrapper a.active { color: var(--dp-purple) !important; background: var(--dp-purple-dim) !important; border-left-color: var(--dp-purple); font-weight: 600; } /* ── TOPIC LIST ── */ .topic-list thead th { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: var(--dp-comment) !important; border-bottom: 1px solid var(--dp-border) !important; background: transparent !important; padding: 10px 12px; } .topic-list tbody .topic-list-item { border-bottom: 1px solid var(--dp-border2) !important; transition: background var(--dp-transition); } .topic-list tbody .topic-list-item:hover { background: var(--dp-surface) !important; } .topic-list .main-link a.title, .topic-list .link-top-line a.title { color: var(--dp-fg) !important; font-weight: 600; font-size: 0.925rem; line-height: 1.4; transition: color var(--dp-transition); } .topic-list .main-link a.title:hover, .topic-list .link-top-line a.title:hover { color: var(--dp-purple) !important; } .topic-list .link-bottom-line { margin-top: 5px; } .topic-list .topic-excerpt { color: var(--dp-comment) !important; font-size: 0.8rem; line-height: 1.5; margin-top: 4px; } .topic-list .num a, .topic-list .num { color: var(--dp-comment) !important; font-size: 0.82rem; } .topic-list .posters .avatar { border-radius: 50%; } /* ── CATEGORY LIST ── */ .category-list thead th { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: var(--dp-comment) !important; border-bottom: 1px solid var(--dp-border) !important; background: transparent !important; padding: 10px 12px; } .category-list tbody tr { border-bottom: 1px solid var(--dp-border2) !important; transition: background var(--dp-transition); } .category-list tbody tr:hover { background: var(--dp-surface) !important; } .category-list td.category .category-name a { color: var(--dp-fg) !important; font-weight: 700; font-size: 0.975rem; transition: color var(--dp-transition); } .category-list td.category .category-name a:hover { color: var(--dp-purple) !important; } .category-list td.category .category-description, .category-list td.category p { color: var(--dp-comment) !important; font-size: 0.82rem; margin-top: 4px; line-height: 1.5; } .subcategories .subcategory-list .category-name a { color: var(--dp-comment) !important; font-size: 0.82rem; transition: color var(--dp-transition); } .subcategories .subcategory-list .category-name a:hover { color: var(--dp-purple) !important; } /* ── POST CONTENT ── */ .cooked { font-size: 0.95rem; line-height: 1.82; color: var(--dp-fg) !important; } .cooked p { margin: 0 0 1em; } .cooked a { color: var(--dp-cyan) !important; text-decoration: none; border-bottom: 1px solid rgba(139,233,253,0.3); transition: border-color var(--dp-transition), color var(--dp-transition); } .cooked a:hover { color: var(--dp-cyan) !important; border-bottom-color: var(--dp-cyan); } .cooked h1, .cooked h2, .cooked h3, .cooked h4, .cooked h5, .cooked h6 { font-weight: 700; line-height: 1.3; margin: 1.75em 0 0.65em; padding-bottom: 8px; border-bottom: 1px solid var(--dp-border); } .cooked h1 { font-size: 1.7rem; color: var(--dp-pink) !important; font-weight: 800; } .cooked h2 { font-size: 1.35rem; color: var(--dp-purple) !important; } .cooked h3 { font-size: 1.1rem; color: var(--dp-cyan) !important; } .cooked h4 { font-size: 0.975rem; color: var(--dp-yellow) !important; border-bottom: none; } .cooked h5, .cooked h6 { font-size: 0.9rem; color: var(--dp-orange) !important; border-bottom: none; } .cooked code:not(pre code) { background: var(--dp-surface) !important; color: var(--dp-pink) !important; border: 1px solid var(--dp-border) !important; border-radius: 5px; font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", "Consolas", monospace; font-size: 0.84em; padding: 2px 7px; font-variant-ligatures: contextual; } .cooked pre { background: var(--dp-bg-deep) !important; border: 1px solid var(--dp-border) !important; border-left: 4px solid var(--dp-purple) !important; border-radius: 0 var(--dp-radius) var(--dp-radius) 0; padding: 20px 22px; margin: 18px 0; overflow-x: auto; position: relative; } .cooked pre code { background: transparent !important; border: none !important; padding: 0 !important; color: var(--dp-green) !important; font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", "Consolas", monospace; font-size: 0.875rem; line-height: 1.7; font-variant-ligatures: contextual; } .cooked blockquote { border-left: 4px solid var(--dp-purple) !important; background: var(--dp-purple-dim) !important; border-radius: 0 var(--dp-radius) var(--dp-radius) 0; padding: 14px 20px; margin: 18px 0; color: var(--dp-fg) !important; font-style: italic; } .cooked blockquote p { margin: 0; } .cooked ul, .cooked ol { padding-left: 1.5em; margin: 0.75em 0; } .cooked li { margin: 0.35em 0; } .cooked table { border-collapse: collapse; width: 100%; margin: 18px 0; border-radius: var(--dp-radius); overflow: hidden; border: 1px solid var(--dp-border); } .cooked table th { background: var(--dp-surface) !important; color: var(--dp-purple) !important; font-size: 0.78rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; padding: 11px 16px; border-bottom: 2px solid var(--dp-border) !important; text-align: left; } .cooked table td { padding: 10px 16px; border-bottom: 1px solid var(--dp-border2) !important; vertical-align: top; } .cooked table tr:last-child td { border-bottom: none !important; } .cooked table tr:nth-child(even) td { background: rgba(68,71,90,0.25) !important; } .cooked hr { border: none; border-top: 1px solid var(--dp-border); margin: 24px 0; } /* ── TOPIC TITLE ── */ .fancy-title, #topic-title h1, .title-wrapper h1 { font-size: 1.55rem; font-weight: 800; line-height: 1.28; letter-spacing: -0.02em; color: var(--dp-fg) !important; } /* ── BUTTONS ── */ .btn { border-radius: var(--dp-radius) !important; font-weight: 600; font-size: 0.875rem; transition: all var(--dp-transition); } .btn-primary { background: var(--dp-purple) !important; color: var(--dp-bg) !important; border: none !important; box-shadow: 0 2px 12px rgba(189,147,249,0.35); } .btn-primary:hover { background: #c9a8fc !important; box-shadow: 0 4px 20px rgba(189,147,249,0.5) !important; } .btn-default { background: var(--dp-surface) !important; border: 1px solid var(--dp-border) !important; color: var(--dp-fg) !important; } .btn-default:hover { background: var(--dp-surface2) !important; border-color: var(--dp-purple) !important; color: var(--dp-purple) !important; } .btn-danger { background: var(--dp-red) !important; border: none !important; color: var(--dp-fg) !important; } /* ── POST ACTIONS ── */ .post-controls .actions .btn { color: var(--dp-comment) !important; background: transparent !important; border-radius: var(--dp-radius) !important; padding: 5px 10px; font-size: 0.82rem; transition: all var(--dp-transition); } .post-controls .actions .btn:hover { color: var(--dp-purple) !important; background: var(--dp-purple-dim) !important; } .post-controls .actions .btn.like-button.has-like .d-icon { color: var(--dp-pink) !important; } .post-controls .actions .btn.like-button.has-like:hover { background: var(--dp-pink-dim) !important; } /* ── TAGS ── */ .discourse-tag { background: var(--dp-purple-dim) !important; color: var(--dp-purple) !important; border: 1px solid rgba(189,147,249,0.3) !important; border-radius: 20px !important; font-size: 0.72rem; font-weight: 600; padding: 3px 10px !important; transition: all var(--dp-transition); } .discourse-tag:hover { background: rgba(189,147,249,0.22) !important; border-color: var(--dp-purple) !important; } /* ── BADGE ── */ .badge-notification { background: var(--dp-purple) !important; color: var(--dp-bg) !important; border-radius: 10px; font-size: 0.68rem; font-weight: 700; padding: 2px 7px; min-width: 18px; } .badge-notification.new-posts, .badge-notification.unread-posts { background: var(--dp-pink) !important; } /* ── COMPOSER ── */ .d-editor-textarea-wrapper { border-radius: var(--dp-radius) !important; border-color: var(--dp-border) !important; background: var(--dp-surface) !important; overflow: hidden; } .d-editor-input { font-family: "JetBrains Mono", "Fira Code", "Consolas", monospace !important; font-size: 0.9rem !important; line-height: 1.65 !important; color: var(--dp-fg) !important; background: var(--dp-surface) !important; } .d-editor-preview { background: var(--dp-bg-deep) !important; border-left: 1px solid var(--dp-border) !important; } /* ── FORM INPUTS ── */ input[type="text"], input[type="email"], input[type="password"], input[type="search"], textarea, select { border-radius: var(--dp-radius) !important; padding: 8px 12px !important; border-color: var(--dp-border) !important; transition: border-color var(--dp-transition), box-shadow var(--dp-transition); } input:focus, textarea:focus, select:focus { border-color: var(--dp-purple) !important; box-shadow: 0 0 0 3px rgba(189,147,249,0.15) !important; outline: none !important; } /* ── NOTIFICATIONS ── */ .notification-item.unread, .notification.unread { background: rgba(189,147,249,0.06) !important; border-left: 2px solid var(--dp-purple) !important; } /* ── STATUS ── */ .topic-status .d-icon-thumbtack { color: var(--dp-yellow) !important; } .topic-status .d-icon-lock { color: var(--dp-comment) !important; } .topic-status .d-icon-far-eye { color: var(--dp-cyan) !important; } /* ── USER CARD ── */ .user-card, .group-card { border-radius: var(--dp-radius-lg) !important; box-shadow: 0 12px 40px rgba(0,0,0,0.55) !important; border: 1px solid var(--dp-border) !important; overflow: hidden; } /* ── SEARCH ── */ .search-menu-container input[type="text"] { border-radius: var(--dp-radius) !important; padding: 9px 14px !important; font-size: 0.9rem; } /* ── TOPIC POST ── */ .topic-post article.boxed, .post-stream .topic-post { border-bottom: 1px solid var(--dp-border2) !important; padding: 20px 0; } /* ── SCROLLBAR ── */ ::-webkit-scrollbar { width: 6px; height: 6px; } ::-webkit-scrollbar-track { background: var(--dp-bg-deep); } ::-webkit-scrollbar-thumb { background: var(--dp-border); border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: var(--dp-comment); } /* ── RESPONSIVE ── */ @media (max-width: 1100px) { #main-outlet .wrap, .d-header .wrap { padding: 0 20px; } } @media (max-width: 768px) { body { font-size: 14px; } .fancy-title, #topic-title h1 { font-size: 1.2rem; } .cooked { font-size: 0.9rem; } #main-outlet .wrap, .d-header .wrap { padding: 0 14px; } }