/* Оболочка и несколько своих мелочей поверх Bootstrap 5.3 */
:root{--sidebar-w:250px}
body{background:var(--bs-tertiary-bg)}
.app{min-height:100vh}
@media(min-width:992px){
  .app{display:flex}
  .sidebar{position:sticky;top:0;height:100vh;width:var(--sidebar-w);flex:none;overflow-y:auto}
}
.sidebar{--bs-offcanvas-width:280px;background:#121829!important}
.sidebar .nav{--bs-nav-link-color:rgba(255,255,255,.72);--bs-nav-link-hover-color:#fff;--bs-nav-pills-link-active-bg:rgba(255,255,255,.13);--bs-nav-pills-link-active-color:#fff}
.sidebar .nav-link{border-radius:.6rem}
.sidebar .nav-link:hover{background:rgba(255,255,255,.07)}
.sidebar .nav-link.active{box-shadow:inset 3px 0 0 #f0a90b}
.brand-ico{width:30px;height:30px;border-radius:9px;background:#f0a90b;display:grid;place-items:center;font-size:15px}
.main{flex:1;min-width:0;padding:1.25rem 1rem 4rem}
@media(min-width:992px){.main{padding:2rem 2.25rem 4rem}}
.main h1{font-size:1.65rem;font-weight:650;letter-spacing:-.01em}
.main h2{font-size:1.15rem;font-weight:600;margin:2rem 0 .8rem}
.progress-line{position:fixed;left:0;top:0;height:3px;width:0;background:#f0a90b;z-index:2000;transition:width .25s,opacity .3s;opacity:0}
.progress-line.on{opacity:1}
.table>:not(caption)>*>*{padding:.7rem 1rem}
.table th{font-weight:550;color:var(--bs-secondary-color);font-size:.875rem}
td.num{white-space:nowrap;font-variant-numeric:tabular-nums}
.secret{font:600 1.05rem ui-monospace,Menlo,Consolas,monospace;letter-spacing:.06em;background:var(--bs-tertiary-bg);padding:.75rem;border-radius:.5rem;word-break:break-all}
input[readonly].form-control{font:.875rem ui-monospace,Menlo,Consolas,monospace}

/* предпросмотр сообщения Telegram и редактор */
.ed-bar{display:flex;gap:.4rem;flex-wrap:wrap;margin:.35rem 0}
.ed-bar button{min-width:2.2rem}
.ed-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem}
@media(max-width:991px){.ed-grid{grid-template-columns:1fr}}
.tg-prev{background:#dfe9f3;border-radius:.9rem;padding:.9rem;min-height:140px}
[data-bs-theme=dark] .tg-prev{background:#17212b}
.tg-bubble{background:#fff;color:#18203a;border-radius:.9rem .9rem .9rem .25rem;padding:.6rem .75rem;max-width:380px;box-shadow:0 1px 1px rgba(0,0,0,.08);overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.4}
[data-bs-theme=dark] .tg-bubble{background:#182533;color:#e9eef5}
.tg-bubble img{display:block;max-width:100%;border-radius:.5rem;margin:-2px 0 .5rem}
.tg-bubble blockquote{margin:.25rem 0;padding-left:.6rem;border-left:3px solid #2f5bea}
.tg-bubble code,.tg-bubble pre{font:.8rem ui-monospace,Menlo,Consolas,monospace;background:rgba(127,127,127,.18);border-radius:4px;padding:0 4px}
.tg-spoiler{background:#8a93a6;color:transparent;border-radius:4px;cursor:pointer}.tg-spoiler.open{background:rgba(127,127,127,.2);color:inherit}
tg-spoiler{background:#8a93a6;color:transparent;border-radius:4px}
.codes{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0 1rem}
.codes button{font:.8rem ui-monospace,Menlo,Consolas,monospace}
.mail-bar{height:8px;min-width:90px}
.page-snip{max-width:60ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:1rem;background:#121829}
.min-w-0{min-width:0}
.qr{width:208px;max-width:100%;background:#fff;padding:.5rem;border-radius:.6rem;border:1px solid var(--bs-border-color)}.qr svg{display:block;width:100%;height:auto}
