@font-face{font-family:RobotoCondensed;font-weight:100 900;font-display:swap;src:url('./assets/roboto-condensed-cyrillic.woff2') format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:RobotoCondensed;font-weight:100 900;font-display:swap;src:url('./assets/roboto-condensed-latin.woff2') format('woff2')}
:root{color-scheme:dark;--bg:#0c141c;--surface:#14202b;--panel:#182733;--hover:#203440;--line:#2a3e4b;--text:#e1e9ef;--muted:#91a6b5;--heading:#f1f5f6;--gold:#ffe33c;--link:#b9d9ec;--shadow:0 18px 65px #0007;--field:#0f1b24;--top:#121f28;--active:#ffe23112}
:root[data-theme=light]{color-scheme:light;--bg:#e8eef2;--surface:#f9fbfc;--panel:#f0f5f8;--hover:#e0eaf0;--line:#c5d3df;--text:#38566b;--muted:#6c8598;--heading:#27465c;--link:#256a99;--shadow:0 18px 65px #243d5333;--field:#fff;--top:#d8e2e9;--active:#fff2af}
*{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.6 Arial,Helvetica,sans-serif;min-height:100vh}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(var(--bg),transparent 200px,var(--bg) 760px),url('./assets/city.webp') center top/cover no-repeat;opacity:.07}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:default}a{color:inherit;text-decoration:none}button{color:inherit}svg{width:18px;height:18px;flex:none;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}button:focus-visible,a:focus-visible{outline:2px solid #e8c74a;outline-offset:3px}input:focus,textarea:focus,select:focus{outline:0;border-color:#c5a139;box-shadow:0 0 0 2px #cfb54218}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--heading)}[hidden]{display:none!important}
.topbar{background:linear-gradient(110deg,var(--top),var(--surface));border-bottom:1px solid var(--line);box-shadow:0 3px 22px #0002}.topbar-inner{max-width:1256px;margin:auto;min-height:83px;padding:0 28px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{width:166px;height:auto;max-height:60px;object-fit:contain;filter:drop-shadow(0 2px 2px #0005)}.topnav{display:flex;align-self:stretch;gap:27px;align-items:center}.topnav a{height:100%;display:flex;align-items:center;color:var(--muted);font-weight:700;border-bottom:2px solid transparent;padding-top:2px;white-space:nowrap}.topnav a:hover{color:var(--text)}.topnav a.active{color:var(--gold);border-bottom-color:var(--gold)}[data-theme=light] .topnav a.active{color:#756017;border-bottom-color:#caa92e}.top-actions{margin-left:auto;display:flex;align-items:center;gap:17px}.main-site{color:var(--muted);font-size:12px;white-space:nowrap}.main-site span{margin-left:6px}.icon-button{background:transparent;border:0;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:var(--muted);border-radius:4px}.icon-button:hover{background:var(--hover);color:var(--text)}.gold-button{border:1px solid #c69f24;border-radius:3px;background:linear-gradient(#fff7a1 0,#fff070 46%,#ffe42b 47%,#f4cb1d 100%);color:#3d340b;text-shadow:0 1px #fff7;font-weight:700;min-height:41px;padding:9px 17px;display:inline-flex;align-items:center;justify-content:center;gap:10px;box-shadow:inset 0 1px #fff9,0 2px 4px #0002;transition:filter .15s}.gold-button:hover{filter:brightness(1.06)}.login-button{min-height:34px;padding:5px 15px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.layout{max-width:1156px;margin:34px auto 65px;padding:0 28px;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:26px;align-items:start}.feed-column{min-width:0}.feed-tools{border:1px solid var(--line);background:var(--surface);padding:0 13px;height:51px;display:flex;align-items:center;gap:12px;border-radius:5px}.sort-tabs{display:flex;align-self:stretch;gap:20px}.sort-tabs button{position:relative;border:0;background:none;font-size:13px;font-weight:700;color:var(--muted);padding:0;white-space:nowrap}.sort-tabs button.active{color:var(--heading)}.sort-tabs button.active:after{content:"";position:absolute;bottom:-1px;height:2px;background:#ead039;left:0;right:0}.tool-actions{margin-left:auto;display:flex;align-items:center;min-width:0;gap:6px}.search{display:flex;align-items:center;gap:7px;color:var(--muted);min-width:0;width:138px}.search svg{width:16px;height:16px}.search input{background:transparent;border:0;width:100%;min-width:0;color:var(--text);font-size:13px;outline:0;box-shadow:none;padding:5px 0}.search input::placeholder{color:var(--muted)}.filter-bar{padding:12px 14px;border:1px solid var(--line);border-top:0;display:flex;align-items:center;gap:12px;background:var(--surface);font-size:12px}.filter-bar select{max-width:210px;padding:6px 10px}.filter-bar .text-button{margin-left:auto}.feed-label{display:flex;align-items:center;justify-content:space-between;padding:22px 2px 9px}.feed-label h1{font:600 19px RobotoCondensed,Arial,sans-serif;letter-spacing:.1px}.feed-label>span{color:var(--muted);font-size:11px}.post-list{background:var(--surface);border:1px solid var(--line);border-radius:5px;overflow:hidden}.post-row{padding:23px 22px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:15px}.post-row+.post-row{border-top:1px solid var(--line)}.post-row:hover{background:color-mix(in srgb,var(--hover) 33%,transparent)}.post-title{font-size:15px;line-height:1.5;font-weight:700;color:var(--heading);display:block;margin:0 0 7px;overflow-wrap:anywhere}.post-title:hover{color:var(--gold)}[data-theme=light] .post-title:hover{color:#966b13}.post-summary{color:var(--muted);font-size:13px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;overflow-wrap:anywhere}.post-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:13px;font-size:11px;color:var(--muted)}.avatar{width:23px;height:23px;border:1px solid #8f9ba440;border-radius:50%;background:linear-gradient(140deg,#355569,#1c2a36);color:#dce9ed;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0}.avatar.official{background:#242b30 url('./assets/icon.png') center/contain;border-color:#a59055}.post-meta .author{font-weight:700;color:var(--text)}.meta-sep{opacity:.5}.comments-count{display:flex;gap:5px;align-items:center;margin-left:auto}.comments-count svg{height:13px;width:13px}.vote-button{width:46px;min-height:49px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:1px solid var(--line);border-radius:4px;background:var(--panel);font-size:12px;font-weight:700;color:var(--muted)}.vote-button svg{width:16px;height:16px}.vote-button:hover{border-color:#9e8c46;color:#ebd77c}.vote-button.voted{background:#e5c34817;border-color:#c8ab48;color:#e8cf6a}.row-vote{display:flex;flex-direction:column;align-items:center;gap:8px}.pin-label{display:inline-flex;gap:5px;align-items:center;font-size:10px;color:#d3bc6d;margin-bottom:7px;letter-spacing:.2px}.pin-label svg{width:12px;height:12px}.status{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;border-radius:3px;padding:2px 6px;line-height:1.5;background:#7fa4bb18;color:#93afc1;white-space:nowrap}.status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.status-review{color:#bb9ade;background:#b389d414}.status-planned{color:#78b7de;background:#609ccc16}.status-progress{color:#e7c269;background:#cca34116}.status-done{color:#86c8a6;background:#78bc9a16}.status-closed{color:#9ba8b4;background:#8896a614}[data-theme=light] .status{color:#526c7d}[data-theme=light] .status-done{color:#35774b}.post-tags{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:9px}.category-label{font-size:11px;color:var(--muted);display:inline-flex;align-items:center;gap:5px}.category-label svg{width:13px;height:13px}.small{font-size:11px}.muted{color:var(--muted)}.loading-state,.empty-state{padding:48px 25px;text-align:center;color:var(--muted)}.empty-state svg{width:31px;height:31px;color:#b8a661;margin-bottom:14px}.empty-state h2{font-size:17px;margin-bottom:9px}.empty-state p{max-width:345px;margin:auto;font-size:13px}.empty-state button{margin-top:23px}.secondary-button{border:1px solid var(--line);border-radius:3px;background:linear-gradient(var(--panel),var(--surface));color:var(--text);padding:9px 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:700;font-size:12px}.secondary-button:hover{background:var(--hover)}.load-more{display:flex;margin:19px auto 0;min-width:160px}.sidebar{display:flex;flex-direction:column;gap:17px}.new-post{width:100%;height:51px;font-size:14px}.side-panel{border:1px solid var(--line);border-radius:5px;background:var(--surface);overflow:hidden}.side-panel>h2{font:600 17px RobotoCondensed,sans-serif;padding:11px 15px;border-bottom:1px solid var(--line);background:linear-gradient(var(--panel),var(--surface))}.boards nav{padding:5px 0}.boards a{display:flex;align-items:center;gap:9px;padding:11px 14px;font-size:12px;border-left:2px solid transparent}.boards a.active{background:var(--active);border-left-color:#e4c142}.boards a:hover{background:var(--hover)}.board-icon{display:flex;color:var(--muted)}.board-icon svg{width:16px;height:16px}.bug-color{color:#d99189}.idea-color{color:#e1c76f}.count{margin-left:auto;font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted)}.help-panel{padding:16px}.side-heading{display:flex;align-items:center;gap:8px}.side-heading svg{width:15px;height:15px;color:#b5a474}.side-heading h2{font:600 15px RobotoCondensed,sans-serif}.help-panel p{font-size:12px;line-height:1.8;color:var(--muted);margin:10px 0}.text-button{border:0;background:none;color:var(--link);padding:0;font-size:12px;cursor:pointer;display:inline-flex;gap:7px;align-items:center}.text-button:hover{text-decoration:underline}.contributors{padding:6px 15px 4px}.contributors .side-heading{margin-bottom:14px}.contributors>div>p{margin:0 0 7px}.leader-row{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:12px}.leader-row .count{font-size:12px}.side-footer{border-top:1px solid var(--line);padding:15px 12px;display:flex;flex-wrap:wrap;gap:7px 13px;font-size:11px;color:var(--muted)}.side-footer>span,.side-footer>div{flex-basis:100%;font-size:10px}.side-footer>span{margin-top:5px}.side-footer>div{display:flex;gap:10px}.side-footer a:hover{color:var(--text)}
.detail-back{margin-bottom:18px;color:var(--muted);display:inline-flex;gap:8px;align-items:center;font-size:12px}.detail-card{background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:25px}.detail-header{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:20px}.detail-header h1{font:600 27px/1.25 RobotoCondensed,Arial,sans-serif;overflow-wrap:anywhere;margin-bottom:13px}.detail-header .post-meta{margin-top:12px}.detail-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:24px 0;font-size:14px;line-height:1.85}.detail-body a,.comment-body a{color:var(--link);text-decoration:underline}.attachments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.attachments button{border:1px solid var(--line);background:var(--field);border-radius:3px;padding:0;overflow:hidden}.attachments img{width:100%;height:175px;object-fit:contain;display:block}.detail-bottom{border-top:1px solid var(--line);padding-top:14px;margin-top:20px;display:flex;gap:16px}.comments-panel{padding:23px 0}.comments-panel h2{font:600 21px RobotoCondensed,Arial,sans-serif;margin-bottom:16px}.comment{display:flex;gap:10px;padding:17px 0;border-bottom:1px solid var(--line)}.comment .avatar{width:29px;height:29px}.comment-content{flex:1;min-width:0}.comment-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.comment-meta strong{color:var(--text)}.comment-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8;margin:7px 0}.comment-time{margin-left:auto;font-size:10px}.comment-form{margin-top:20px}.comment-form textarea{min-height:105px}.comment-form .gold-button{margin-top:10px}.sign-in-prompt{display:flex;align-items:center;gap:15px;flex-wrap:wrap;border:1px solid var(--line);padding:18px;background:var(--surface);font-size:12px}.sign-in-prompt .gold-button{margin-left:auto}.admin-tools{border:1px solid var(--line);padding:12px 14px;margin-top:20px;background:var(--panel);border-radius:3px;font-size:12px}.admin-tools summary{cursor:pointer;font-weight:700}.admin-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:13px}.admin-controls select{width:auto}.admin-controls label{display:inline-flex;align-items:center;gap:5px}.admin-controls input{width:auto}.hidden-note{color:#d6a184;margin-top:8px;font-size:12px}
dialog{color:var(--text);background:var(--surface);border:1px solid #637783;border-radius:6px;box-shadow:var(--shadow);padding:0}dialog::backdrop{background:#04090fc9;backdrop-filter:blur(5px)}.modal{width:min(540px,calc(100vw - 28px));padding:30px;max-height:calc(100dvh - 34px);overflow:auto}.modal h2{font:600 28px/1.2 RobotoCondensed,sans-serif;margin:5px 30px 23px 0}.modal p{font-size:13px;color:var(--muted);line-height:1.75}.eyebrow{font-size:10px!important;letter-spacing:1.25px;text-transform:uppercase;color:#c6ac69!important}.close-button{position:absolute;right:12px;top:12px;border:1px solid var(--line);background:var(--panel);width:28px;height:28px;padding:4px;display:flex;align-items:center;justify-content:center;color:var(--muted);z-index:2;border-radius:3px}.close-button:hover{color:var(--text);background:var(--hover)}.close-button svg{width:16px;height:16px}.modal-emblem{margin-bottom:15px}.modal-emblem img{display:block;border:1px solid #ac974c75;border-radius:7px}.auth-modal{width:min(435px,calc(100vw - 28px))}.auth-modal h2{margin-bottom:14px}.auth-modal form{margin-top:22px}.auth-modal .full-width{margin-top:17px}.auth-note{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:11px!important}.auth-note a{color:var(--link);text-decoration:underline}.auth-switch{display:flex;justify-content:space-between;margin-top:17px;gap:14px}.form-error{color:#ecaa8b!important;font-size:12px!important;margin:12px 0 0!important}.create-modal{width:min(645px,calc(100vw - 28px))}label{display:block;font-size:12px;font-weight:700;color:var(--text)}form>label+label{margin-top:15px}input,select,textarea{display:block;width:100%;border:1px solid var(--line);border-radius:3px;background:var(--field);color:var(--text);padding:10px 12px;margin-top:6px;min-width:0}input::placeholder,textarea::placeholder{color:var(--muted);font-weight:400}textarea{resize:vertical;line-height:1.65}.full-width{width:100%}.upload-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}.attachment-button{cursor:pointer;border:1px dashed var(--line);padding:8px 10px;border-radius:3px;font-size:11px;color:var(--link);display:flex;align-items:center;gap:7px}.attachment-button:hover{background:var(--hover)}.attachment-button input{position:absolute;width:1px;height:1px;opacity:0;margin:0}.attachment-button svg{width:15px;height:15px}.upload-preview{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.upload-preview img{height:56px;width:78px;object-fit:cover;border:1px solid var(--line);border-radius:3px}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:20px;margin-top:20px;border-top:1px solid var(--line)}.image-dialog{max-width:calc(100vw - 30px);max-height:calc(100dvh - 30px);background:#080c11;padding:12px}.image-dialog img{max-width:100%;max-height:calc(100dvh - 60px);display:block;object-fit:contain}.image-dialog .close-button{background:#17232a}.guide-steps{padding-left:22px;margin:0 0 25px}.guide-steps li{padding-left:7px;margin-bottom:17px}.guide-steps li::marker{color:#d5bc69;font-weight:bold}.guide-steps p{margin-top:5px;font-size:12px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 28px);background:var(--panel);border:1px solid #a68b44;color:var(--text);box-shadow:var(--shadow);padding:12px 19px;border-radius:4px;z-index:10;font-size:13px}.code-input{font-size:26px;letter-spacing:8px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}.auth-modal .loading-state{padding:20px}
@media(min-width:1100px){.sidebar{position:sticky;top:24px}}@media(max-width:1020px){.topbar-inner{padding:0 20px;gap:23px}.topnav{gap:19px}.main-site{display:none}.layout{padding:0 20px;gap:20px;grid-template-columns:minmax(0,1fr) 240px}.sort-tabs{gap:14px}.search{width:105px}.feed-tools{gap:6px;padding:0 11px}.sort-tabs button{font-size:12px}}@media(max-width:800px){.layout{grid-template-columns:minmax(0,1fr);margin-top:19px;gap:16px}.feed-column{grid-row:2}.sidebar{grid-row:1;display:block}.sidebar .new-post{width:auto;min-width:170px;height:42px}.sidebar>.boards,.sidebar>.help-panel,.sidebar>.contributors,.sidebar>.side-footer{display:none}.topbar-inner{flex-wrap:wrap;gap:0;padding-top:12px}.brand img{width:150px;max-height:48px}.top-actions{gap:9px}.topnav{order:3;width:100%;height:49px;gap:27px;font-size:13px}.layout .feed-label{padding-top:18px}.feed-tools{height:51px}.search{width:155px}.sort-tabs{gap:22px}}@media(max-width:480px){.topbar-inner{padding:10px 16px 0}.layout{padding:0 12px;margin-bottom:35px}.topnav{gap:22px}.topnav a{font-size:12px}.brand img{width:139px}.login-button{max-width:130px}.feed-tools{flex-wrap:wrap;height:auto;padding:0 13px;gap:0}.sort-tabs{height:45px;width:100%;justify-content:space-between;gap:12px}.tool-actions{border-top:1px solid var(--line);width:100%;margin-left:0;padding:7px 0;gap:9px}.search{width:auto;flex:1}.search input{font-size:14px}.tool-actions>.icon-button{order:2;height:28px}.post-row{padding:19px 15px;gap:10px;grid-template-columns:minmax(0,1fr) 42px}.vote-button{width:41px;min-height:46px}.post-title{font-size:14px}.post-meta{font-size:10px;gap:6px}.post-summary{font-size:12px}.detail-card{padding:19px 16px}.detail-header{gap:10px}.detail-header h1{font-size:24px}.attachments{grid-template-columns:minmax(0,1fr)}.attachments img{height:190px}.modal{padding:24px 20px}.modal h2{font-size:26px}.upload-line{align-items:flex-start;flex-direction:column}.form-actions{gap:8px}.form-actions .gold-button{font-size:12px;padding:10px}.toast{width:max-content;text-align:center}.comment-time{font-size:9px}.comment-meta{flex-wrap:wrap}.filter-bar{gap:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.filter-bar{flex-wrap:wrap}.hidden-filter{display:inline-flex;align-items:center;gap:6px;font-size:11px}.hidden-filter input{width:auto;margin:0}form input:not([type=checkbox]),form textarea,form select{font-weight:400}
