:root{--tg-theme-bg-color: #ffffff;--tg-theme-text-color: #000000;--tg-theme-hint-color: #999999;--tg-theme-link-color: #2481cc;--tg-theme-button-color: #2481cc;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #f1f1f1;--primary-color: #7e637c;--success-color: #7e637c;--danger-color: #d25a5a;--warning-color: #fdcb6e;--chart-text-color: #000000;--chart-grid-color: #e0e0e0;--stats-track-color: #e4e4e4;--header-outline-dark: rgba(0,0,0,.6);--header-outline-light: rgba(255,255,255,.85);--page-gutter: 12px;--page-vertical: 12px;--row-hover-bg: rgba(126, 99, 124, .08);--row-detail-bg: rgba(126, 99, 124, .06);--row-detail-border: rgba(126, 99, 124, .16)}body.tg-dark{--row-hover-bg: rgba(126, 99, 124, .22);--row-detail-bg: rgba(126, 99, 124, .16);--row-detail-border: rgba(126, 99, 124, .32);--tg-theme-bg-color: #0f1b2b;--tg-theme-text-color: #e5edf8;--tg-theme-hint-color: #98a8bd;--tg-theme-link-color: #9fc4ff;--tg-theme-button-color: #7e637c;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #233349;--chart-text-color: #e5edf8;--chart-grid-color: #3a4d67;--stats-track-color: #30455f}body.tg-light{--row-hover-bg: rgba(126, 99, 124, .08);--row-detail-bg: rgba(126, 99, 124, .06);--row-detail-border: rgba(126, 99, 124, .16);--tg-theme-bg-color: #ffffff;--tg-theme-text-color: #000000;--tg-theme-hint-color: #999999;--tg-theme-link-color: #2481cc;--tg-theme-button-color: #2481cc;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #f1f1f1;--chart-text-color: #000000;--chart-grid-color: #e0e0e0;--stats-track-color: #e4e4e4}body.theme-defender-day.tg-dark{--tg-theme-bg-color: #0f1b2b;--tg-theme-text-color: #e5edf8;--tg-theme-hint-color: #9caebb;--tg-theme-link-color: #8ca06b;--tg-theme-button-color: #4b5320;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #1d2a3b;--chart-text-color: #e5edf8;--chart-grid-color: #3a4d67;--stats-track-color: #2f445d;--row-hover-bg: rgba(140, 160, 107, .18);--row-detail-bg: rgba(140, 160, 107, .12);--row-detail-border: rgba(140, 160, 107, .24)}body.theme-defender-day.tg-light{--tg-theme-bg-color: #ffffff;--tg-theme-text-color: #333333;--tg-theme-hint-color: #999999;--tg-theme-link-color: #4b5320;--tg-theme-button-color: #4b5320;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #ffffff;--chart-text-color: #333333;--chart-grid-color: #e0e0e0;--stats-track-color: #dfe6cf;--row-hover-bg: rgba(75, 83, 32, .1);--row-detail-bg: rgba(75, 83, 32, .08);--row-detail-border: rgba(75, 83, 32, .2)}.theme-defender-day{--tg-theme-bg-color: #ffffff;--tg-theme-text-color: #333333;--tg-theme-hint-color: #999999;--tg-theme-link-color: #4b5320;--tg-theme-button-color: #4b5320;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #ffffff;--primary-color: #4b5320;--success-color: #4b5320;--danger-color: #e17055;--warning-color: #fdcb6e;--chart-text-color: #333333;--chart-grid-color: #e0e0e0;--stats-track-color: #dfe6cf;--row-hover-bg: rgba(75, 83, 32, .1);--row-detail-bg: rgba(75, 83, 32, .08);--row-detail-border: rgba(75, 83, 32, .2)}body.tg-light,body.theme-defender-day.tg-light{--chart-text-color: #000000 !important;--chart-grid-color: #d7d7d7 !important;--stats-track-color: #e4e4e4 !important}body.tg-dark,body.theme-defender-day.tg-dark{--chart-text-color: #e5edf8 !important;--chart-grid-color: #3a4d67 !important;--stats-track-color: #30455f !important}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{width:100%;max-width:100vw;overflow-x:hidden;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}html{scrollbar-gutter:stable}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--tg-theme-bg-color);color:var(--tg-theme-text-color);line-height:1.6;padding:var(--page-vertical) var(--page-gutter);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.theme-mode-control{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 8px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--tg-theme-hint-color) 22%,transparent);border-radius:14px;background:color-mix(in srgb,var(--tg-theme-secondary-bg-color) 86%,var(--tg-theme-bg-color) 14%)}.theme-mode-control-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.theme-mode-control-copy strong{color:var(--tg-theme-text-color);font-size:14px;line-height:1.2}.theme-mode-control-copy span{color:var(--tg-theme-hint-color);font-size:12px;line-height:1.3}.theme-mode-toggle{flex:0 0 auto;border:1px solid color-mix(in srgb,var(--tg-theme-hint-color) 42%,transparent);border-radius:999px;background:color-mix(in srgb,var(--tg-theme-secondary-bg-color) 82%,var(--tg-theme-bg-color) 18%);color:var(--tg-theme-text-color);font-size:12px;font-weight:600;padding:6px 10px;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 3px 10px #0000002e}.theme-mode-toggle:hover{filter:brightness(.97)}@media(max-width:420px){.theme-mode-control{align-items:stretch;flex-direction:column}.theme-mode-toggle{width:100%}}@media(max-width:480px){:root{--page-gutter: 14px;--page-vertical: 10px}}.container{max-width:600px;margin:0 auto}.container{width:100%;padding-left:0;padding-right:0;padding-bottom:92px}.header{text-align:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--tg-theme-secondary-bg-color)}.header.has-cover{margin-bottom:16px;padding:16px 12px;border-bottom:none;border-radius:16px;background-size:cover;background-position:center;background-repeat:no-repeat}.header.has-cover h1{color:#fff;text-shadow:-1px -1px 0 var(--header-outline-dark),1px -1px 0 var(--header-outline-dark),-1px 1px 0 var(--header-outline-dark),1px 1px 0 var(--header-outline-dark),0 1px 4px rgba(0,0,0,.22)}.header.has-cover p{color:#ffffffeb;text-shadow:-1px -1px 0 var(--header-outline-dark),1px -1px 0 var(--header-outline-dark),-1px 1px 0 var(--header-outline-dark),1px 1px 0 var(--header-outline-dark)}.theme-defender-day .header{margin-bottom:16px;padding-bottom:0;border-bottom:none}.header-title{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:4px}.header h1{font-size:clamp(18px,5vw,24px);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--primary-color);margin-bottom:8px;text-shadow:-1px -1px 0 rgba(255,255,255,.85),1px -1px 0 rgba(255,255,255,.85),-1px 1px 0 rgba(255,255,255,.85),1px 1px 0 rgba(255,255,255,.85)}.theme-defender-day .header h1{font-size:clamp(24px,6vw,32px);color:var(--primary-color);margin:0}.header p{color:var(--tg-theme-hint-color);font-size:clamp(12px,3.5vw,14px);text-shadow:-1px -1px 0 rgba(255,255,255,.85),1px -1px 0 rgba(255,255,255,.85),-1px 1px 0 rgba(255,255,255,.85),1px 1px 0 rgba(255,255,255,.85)}.theme-defender-day .header p{color:var(--tg-theme-text-color);font-size:clamp(14px,4vw,16px);opacity:.8}.defender-banner{display:none;background:#4b5320;border:none;border-radius:16px;padding:16px var(--page-gutter);align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px;box-shadow:0 1px 2px #0000000f}.defender-banner.is-visible{display:flex}.defender-banner span{color:#fff;font-weight:500;font-size:16px}.banner-icon{width:24px;height:24px;opacity:.8;filter:brightness(0) invert(1)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(100%,600px);background:var(--tg-theme-secondary-bg-color);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--tg-theme-hint-color);padding:var(--page-vertical) var(--page-gutter) calc(var(--page-vertical) + env(safe-area-inset-bottom));display:flex;justify-content:flex-start;align-items:center;gap:4px;z-index:50;overflow-x:hidden}.bottom-nav-btn{position:relative;border:none;background:transparent;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--tg-theme-hint-color);flex:1 1 0;min-width:0;cursor:pointer;padding:2px 0 6px}.bottom-nav-icon{width:24px;height:24px}.bottom-nav-icon-book{stroke:currentColor}.bottom-nav-icon-defender,.theme-defender-day .bottom-nav-icon-book{display:none}.theme-defender-day .bottom-nav-icon-defender{display:block}.bottom-nav-btn span{font-size:10px;font-weight:500;white-space:nowrap}.bottom-nav-line{position:absolute;bottom:-2px;left:0;right:0;height:2px;border-radius:999px;background:var(--primary-color);opacity:0}.bottom-nav-btn.active{color:var(--primary-color)}.bottom-nav-btn.active span{font-weight:500}.bottom-nav-btn.active .bottom-nav-line{opacity:1}.info-card{background-color:var(--tg-theme-secondary-bg-color);border-radius:12px;padding:14px}.info-card-title{font-size:16px;font-weight:600;margin-bottom:10px;color:var(--tg-theme-text-color)}.info-card-text{color:var(--tg-theme-text-color);margin-bottom:12px}.info-card-text a{color:var(--tg-theme-link-color);text-decoration:none;font-weight:500;word-break:break-all}.info-card-text a:hover{text-decoration:underline}.info-links{display:flex;flex-wrap:wrap;gap:8px}.info-link-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:8px;text-decoration:none;background:var(--primary-color);color:var(--tg-theme-button-text-color);font-size:13px;font-weight:500}.info-link-btn:hover{opacity:.9}@media(max-width:480px){.header{margin-bottom:12px;padding-bottom:12px}.header h1{font-size:18px;margin-bottom:4px}.header p{font-size:12px}.info-card{padding:10px;border-radius:8px}.info-card-title{font-size:14px}.info-link-btn{font-size:12px;padding:8px 10px}}.theme-defender-day .nav-tabs{background-color:#fff;border-color:#4b532042;box-shadow:0 2px 10px #4b532014}body.theme-defender-day.tg-dark .nav-tabs{background-color:var(--tg-theme-secondary-bg-color);border-color:#e5edf82e;box-shadow:none}.theme-defender-day .nav-tab{border-radius:16px;color:#333}body.theme-defender-day.tg-dark .nav-tab{color:var(--tg-theme-text-color)}@media(max-width:480px){.nav-tabs{margin-bottom:16px;padding:2px;gap:2px}.nav-tab{font-size:11px;padding:8px 6px;white-space:normal}}.nav-tab.active{background-color:var(--tg-theme-bg-color);color:var(--tg-theme-text-color);box-shadow:0 2px 8px #0000001a}.theme-defender-day .nav-tab.active{background-color:var(--primary-color);color:#fff;box-shadow:0 2px 8px #4b53204d}.admin-subtabs{display:flex;align-items:center;gap:6px;background:var(--tg-theme-secondary-bg-color);border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:4px;margin-bottom:14px}.admin-subtab{flex:1 1 0;border:none;border-radius:10px;padding:8px 10px;background:transparent;color:var(--tg-theme-hint-color);font-size:13px;font-weight:600;cursor:pointer}.admin-subtab.active{background:var(--primary-color);color:#fff}.content-section{display:none}.content-section.active{display:block}.category-frame{background-color:var(--tg-theme-secondary-bg-color);border-radius:12px;padding:14px;margin-bottom:12px;position:relative}@media(max-width:480px){.category-frame{padding:10px;margin-bottom:10px;border-radius:8px}}.theme-defender-day .category-frame{margin-bottom:18px;border:1px solid rgba(75,83,32,.26);background-color:#fff;padding:0;border-radius:18px;overflow:hidden;background-clip:padding-box;box-shadow:0 4px 14px #4b532014}body.theme-defender-day.tg-dark .category-frame{border-color:#e5edf82e;background-color:var(--tg-theme-secondary-bg-color);box-shadow:none}.theme-defender-day .category-frame-top,.theme-defender-day .category-frame-bottom{display:none}.theme-defender-day .frame-stars{background-color:#fff}body.theme-defender-day.tg-dark .frame-stars{background-color:var(--tg-theme-secondary-bg-color)}.theme-defender-day .category-content{background-color:#fff;margin:0;padding:4px 8px 8px;border-radius:inherit}body.theme-defender-day.tg-dark .category-content{background-color:var(--tg-theme-secondary-bg-color)}.theme-defender-day .category-header{margin:0;padding:10px 12px 12px;border-bottom:1px solid #f0f0f0}body.theme-defender-day.tg-dark .category-header{border-bottom-color:#e5edf824}.theme-defender-day .category-title{font-size:20px;font-weight:600;color:var(--tg-theme-text-color);margin-left:0}.theme-defender-day .subscription-list{display:flex;flex-direction:column}.theme-defender-day .subscription-item:not(:last-child),.theme-defender-day .subscription-item-simple:not(:last-child){border-bottom:1px solid #f0f0f0}body.theme-defender-day.tg-dark .subscription-item:not(:last-child),body.theme-defender-day.tg-dark .subscription-item-simple:not(:last-child){border-bottom-color:#e5edf824}.theme-defender-day .subscription-item,.theme-defender-day .subscription-item-simple{padding:12px;background-color:#fff;border-radius:0;margin-bottom:0}body.theme-defender-day.tg-dark .subscription-item,body.theme-defender-day.tg-dark .subscription-item-simple{background-color:var(--tg-theme-secondary-bg-color)}.category-count{font-size:clamp(10px,2.5vw,12px);color:var(--tg-theme-hint-color);background-color:var(--tg-theme-bg-color);padding:3px 6px;border-radius:12px}.theme-defender-day .category-count{color:#999;background-color:#4b53201a}@media(max-width:480px){.category-title{font-size:14px}.category-count{font-size:10px}}.subscription-list{display:flex;flex-direction:column;gap:8px}.theme-defender-day .subscription-list{gap:0;background-color:#fff;border-radius:14px;overflow:hidden;box-shadow:none}body.theme-defender-day.tg-dark .subscription-list{background-color:var(--tg-theme-secondary-bg-color)}.subscription-item-simple{display:flex;justify-content:flex-start;align-items:center;padding:10px 12px;background-color:var(--tg-theme-bg-color);border-radius:8px;transition:all .2s ease;min-height:auto;gap:8px;width:100%;min-width:0;max-width:100%;box-sizing:border-box;border-bottom:none}.theme-defender-day .subscription-item-simple{background-color:#fff;border-bottom:1px solid rgba(75,83,32,.2);border-radius:0}body.theme-defender-day.tg-dark .subscription-item-simple{border-bottom-color:#e5edf824}.theme-defender-day .subscription-item-simple:last-child{border-bottom:none}@media(max-width:480px){.subscription-item-simple{padding:8px;gap:6px}}@media(hover:hover){.subscription-item-simple:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.theme-defender-day .subscription-item-simple:hover{transform:none;box-shadow:none;background-color:var(--row-hover-bg)}}.subscription-item-simple .subscription-info{flex:1 1 auto;min-width:0;max-width:calc(100% - 80px)}.theme-defender-day .subscription-item-simple .subscription-info{max-width:calc(100% - 80px)}.subscription-controls{display:flex;align-items:center;gap:8px;margin-left:auto}.active-star{display:none;opacity:0;transform:scale(.5);transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.theme-defender-day .active-star{display:block;color:var(--primary-color)}.active-star.visible{opacity:1;transform:scale(1)}.subscription-item-simple .toggle-switch{margin-left:auto}.theme-defender-day .subscription-item-simple .toggle-switch{margin-left:0}.subscription-item-simple .subscription-name{font-weight:400;line-height:1.2;margin:0;text-align:left;font-size:clamp(14px,4vw,16px);color:var(--tg-theme-text-color)}.theme-defender-day .subscription-item-simple .subscription-name{font-weight:400;font-size:clamp(14px,4vw,16px);color:var(--tg-theme-text-color)}.subscription-item{display:flex;flex-direction:column;background-color:var(--tg-theme-bg-color);border-radius:8px;transition:all .2s ease;overflow:hidden;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.theme-defender-day .subscription-item{padding:0;background-color:#fff;border-bottom:1px solid rgba(75,83,32,.2);border-radius:0}.theme-defender-day .subscription-item:last-child{border-bottom:none}.subscription-stat-item{display:flex;align-items:center;gap:12px;width:100%;background-color:var(--tg-theme-bg-color);border:1px solid var(--tg-theme-secondary-bg-color);border-radius:8px;padding:10px 12px;margin-bottom:8px}.subscription-stat-item>div:first-child{flex:1 1 0;min-width:0}.subscription-stat-item>div:last-child{flex:0 0 auto;min-width:40px;text-align:right;margin-left:8px;color:var(--tg-theme-text-color)}@media(max-width:480px){.subscription-item{border-radius:6px}.subscription-item-header{padding:8px!important}.subscription-item-header .subscription-info{min-width:0;flex:1 1 0}.subscription-item-header .toggle-switch{flex:0 0 auto;margin-left:8px}}.subscription-item.has-details{cursor:pointer}@media(hover:hover){.subscription-item.has-details:hover{background-color:var(--row-hover-bg)}}.subscription-item-header{display:flex;justify-content:flex-start;align-items:center;padding:10px 12px;min-height:auto;flex-shrink:0;width:100%;min-width:0;max-width:100%;gap:8px;box-sizing:border-box;background-color:transparent}@media(max-width:480px){.subscription-item-header{padding:8px;gap:6px}}.subscription-item-header .subscription-info{flex:1 1 auto;display:flex;align-items:center;min-width:0;max-width:calc(100% - 80px);gap:8px}.subscription-name{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.toggle-switch{flex:0 0 auto}@media(max-width:420px){.toggle-switch{width:44px;height:24px;margin-left:8px}.toggle-switch:after{width:20px;height:20px;top:2px;left:2px}.toggle-switch.active:after{transform:translate(20px)}.category,.subscription-item-simple,.subscription-item-header{padding:8px}.header h1{font-size:20px}}.subscription-item-header .subscription-name{font-weight:400;line-height:1.2;margin:0;text-align:left;font-size:clamp(14px,4vw,16px);word-break:break-word;overflow-wrap:anywhere;color:var(--tg-theme-text-color)}.subscription-subscribers{font-size:clamp(10px,2.5vw,12px);color:var(--tg-theme-hint-color)}.subscription-details{max-height:0;overflow:hidden;transition:max-height .42s cubic-bezier(.22,.9,.14,1),padding .32s ease,opacity .26s ease 60ms,margin .32s ease;padding:0 12px;background:var(--row-detail-bg);width:100%;opacity:0;visibility:hidden;margin-top:0;will-change:max-height,opacity,margin}.subscription-item:not(.expanded)+.subscription-details{max-height:0!important;padding:0!important;margin-top:0!important;border-top:none!important;opacity:0;visibility:hidden}.subscription-item.expanded+.subscription-details{max-height:1000px;padding:12px;border-top:1px solid var(--row-detail-border);opacity:1;visibility:visible;margin-top:0}.subscription-detail-row{margin-bottom:10px}.subscription-detail-row:last-child{margin-bottom:0}.subscription-detail-label{font-size:clamp(10px,2.5vw,11px);color:var(--tg-theme-hint-color);font-weight:600;text-transform:uppercase;margin-bottom:4px}.subscription-detail-value{font-size:clamp(12px,3vw,13px);color:var(--tg-theme-text-color);line-height:1.4}.subscription-image{width:100%;max-width:180px;height:auto;border-radius:8px;margin-top:4px;box-shadow:0 2px 8px #0000001a}.subscription-readers{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;align-items:center}@media(max-width:480px){.subscription-detail-row{margin-bottom:8px}.subscription-detail-label{margin-bottom:3px}.subscription-image{max-width:150px}}.toggle-switch{position:relative;width:48px;height:28px;background-color:#ccc;border-radius:14px;cursor:pointer;transition:background-color .2s ease;flex-shrink:0;min-width:48px}.theme-defender-day .toggle-switch{background-color:#e0e0e0}body.theme-defender-day.tg-dark .toggle-switch{background-color:#31445e}.toggle-switch.active{background-color:var(--success-color)}.theme-defender-day .toggle-switch.active,body.theme-defender-day.tg-dark .toggle-switch.active{background-color:#4b5320}.toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:24px;height:24px;background-color:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 2px 4px #0003}.toggle-switch.active:after{transform:translate(20px)}@media(max-width:480px){.toggle-switch{width:44px;height:24px;min-width:44px;border-radius:12px}.toggle-switch:after{width:20px;height:20px;top:2px;left:2px}.toggle-switch.active:after{transform:translate(18px)}}@media(max-width:480px){.subscription-item-header .subscription-info{display:block;max-width:calc(100% - 52px)}.subscription-item-header .subscription-name,.subscription-item-simple .subscription-name{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;overflow-wrap:anywhere}}.chart-container{display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:0;background-color:transparent;border-radius:8px;margin-top:0;margin-bottom:8px;gap:12px;position:relative;overflow:hidden;width:100%}.admin-panel{margin-bottom:14px}.admin-stats-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.admin-stats-toolbar h3{margin:0}.admin-stats-actions{display:flex;align-items:center;gap:8px}.stats-period-label{color:var(--tg-theme-hint-color);font-size:12px}.stats-period{width:auto;min-width:92px;padding:6px 28px 6px 9px}@media(max-width:520px){.admin-stats-toolbar{align-items:stretch;flex-direction:column}.admin-stats-actions{justify-content:flex-end}}.admin-chart-block{display:flex;flex-direction:column;gap:8px;align-items:stretch;flex:1 1 100%;min-width:0;width:100%}.admin-chart-title{font-weight:600;margin:2px 0 6px;color:var(--tg-theme-text-color);text-align:center}.admin-chart-surface{width:100%;max-width:600px;margin:0 auto;padding:8px;border-radius:10px;border:1px solid var(--tg-theme-secondary-bg-color);background:color-mix(in srgb,var(--tg-theme-secondary-bg-color) 72%,var(--tg-theme-bg-color) 28%);overflow:hidden}.admin-panel>h3{margin-top:12px;margin-bottom:12px}.admin-panel>h3+.category-frame{margin-top:8px}.admin-chart-surface-pie{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;max-width:600px;margin:0 auto}.admin-chart-surface-pie .legend{flex:1 1 220px;width:100%;min-width:0}body.theme-defender-day.tg-dark .admin-chart-surface{border-color:#e5edf829;background:color-mix(in srgb,var(--tg-theme-secondary-bg-color) 88%,#000 12%)}#categoriesChart{display:block;width:100%;max-width:600px;height:auto;flex:0 0 auto;z-index:1}.chart-container .chartjs-legend,.chart-container .legend,.chart-container>.legend{flex:1 1 180px;min-width:120px;z-index:2}@media(max-width:480px){.chart-container{padding:0;flex-direction:column;gap:8px}.admin-chart-block{flex-basis:100%}.admin-chart-surface{padding:6px}.admin-chart-title{text-align:left}#categoriesChart{width:100%;max-width:100%}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;margin-bottom:12px}.stat-card{background-color:var(--tg-theme-bg-color);padding:16px 12px;border-radius:12px;text-align:center;border:1px solid var(--tg-theme-secondary-bg-color);transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-number{font-size:clamp(20px,6vw,28px);font-weight:700;color:var(--primary-color);margin-bottom:6px}.stat-label{font-size:clamp(11px,2.5vw,13px);color:var(--tg-theme-hint-color);font-weight:500}@media(max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card{padding:12px 10px}.stat-number{font-size:18px;margin-bottom:4px}.stat-label{font-size:10px}}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--tg-theme-secondary-bg-color);gap:8px}.category-total{font-size:clamp(10px,2.5vw,12px);color:var(--tg-theme-hint-color);background-color:var(--tg-theme-secondary-bg-color);padding:3px 6px;border-radius:12px;font-weight:500}@media(max-width:480px){.category-header{margin-bottom:10px}}.admin-panel .subscription-item{display:flex;justify-content:space-between;align-items:flex-start;padding:10px;background-color:var(--tg-theme-bg-color);border-radius:8px;margin-bottom:8px;transition:all .2s ease;gap:8px;flex-wrap:wrap}.admin-panel .subscription-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.admin-panel .subscription-info{flex:1;min-width:0;display:flex;flex-direction:column}.admin-panel .subscription-name{font-weight:500;margin-bottom:6px;font-size:clamp(12px,3vw,14px);text-align:left}.admin-panel .subscription-bar{width:100%}.subscription-bar{width:100%;height:3px;background-color:var(--tg-theme-secondary-bg-color);border-radius:2px;overflow:hidden}.subscription-bar,.admin-panel .subscription-bar{width:100%!important;min-width:0!important}.subscription-progress{height:100%;display:block;background:linear-gradient(90deg,var(--primary-color),var(--success-color));border-radius:2px;transition:width .3s ease;max-width:100%}.subscription-count{font-weight:600;color:var(--primary-color);font-size:clamp(14px,3vw,16px);min-width:35px;text-align:right;flex-shrink:0}@media(max-width:480px){.admin-panel .subscription-item{padding:8px;margin-bottom:6px}.admin-panel .subscription-name{margin-bottom:4px;font-size:12px}.subscription-count{font-size:13px}}@media(max-width:360px){.admin-panel .subscription-item{flex-direction:column;align-items:stretch;gap:6px;padding:8px}.admin-panel .subscription-info{order:1;width:100%}.subscription-count{order:2;width:100%;text-align:right;font-size:13px;margin-top:4px}.admin-panel .subscription-bar,.subscription-bar{height:10px}.subscription-progress{height:100%}.admin-panel .subscription-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@media(max-width:440px)and (min-width:361px){.admin-panel .subscription-item{flex-direction:row;align-items:center;gap:8px}.admin-panel .subscription-info{flex:1 1 auto;min-width:0}.subscription-count{flex:0 0 40px;text-align:right}}.form-group{margin-bottom:16px}.form-label{display:block;font-weight:500;margin-bottom:8px;color:var(--tg-theme-text-color)}.form-select,.form-textarea{width:100%;padding:12px;border:1px solid var(--tg-theme-secondary-bg-color);border-radius:8px;font-size:14px;background-color:var(--tg-theme-bg-color);color:var(--tg-theme-text-color)}.form-textarea{min-height:100px;resize:vertical}.btn{padding:10px 16px;border:none;border-radius:8px;font-size:clamp(12px,3vw,14px);font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;white-space:normal}.btn-primary{background-color:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color)}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-success{background-color:var(--success-color);color:#fff}.btn-danger{background-color:var(--danger-color);color:#fff}.btn-secondary{background-color:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-text-color)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:480px){.btn{padding:8px 12px;font-size:12px;gap:4px}}.refresh-btn{padding:6px 12px;background-color:var(--primary-color);color:#fff;border:none;border-radius:6px;font-size:clamp(11px,2.5vw,12px);font-weight:500;cursor:pointer;transition:all .2s ease}@media(max-width:480px){.subscription-stat-item,.admin-panel .subscription-stat-item{padding:6px!important;box-sizing:border-box!important}.subscription-stat-item>div{padding-left:6px!important;padding-right:6px!important;min-width:0!important}.subscription-stat-item>div+div{min-width:40px!important;text-align:right!important}}.refresh-btn:hover{background-color:var(--success-color);transform:translateY(-1px);box-shadow:0 2px 8px #00000026}@media(max-width:480px){.refresh-btn{padding:6px 10px;font-size:10px}}.loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--tg-theme-hint-color)}.spinner{width:20px;height:20px;border:2px solid var(--tg-theme-secondary-bg-color);border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#alerts{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:320px}@keyframes slideIn{0%{opacity:0;transform:translate(200%)}to{opacity:1;transform:translate(0)}}.manage-header{background-color:var(--tg-theme-secondary-bg-color);border-radius:12px;padding:20px;margin-bottom:12px;border:1px solid rgba(0,0,0,.05);display:flex;justify-content:space-between;align-items:center;gap:12px}@media(max-width:560px){.manage-header{flex-direction:column;align-items:stretch}.manage-theme-control,.manage-theme-select{min-width:0;max-width:100%;width:100%}}.manage-title{margin:0;color:var(--tg-theme-text-color);font-size:18px;font-weight:600}.theme-admin-menu .btn-add[disabled]{opacity:.55;cursor:not-allowed}@media(max-width:560px){.theme-admin-menu{flex-direction:column;align-items:stretch}}.manage-actions{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.manage-actions .btn-add{width:100%}[draggable=true]{cursor:grab;transition:all .2s ease;-webkit-user-select:none;user-select:none}[draggable=true]:active{cursor:grabbing}[draggable=true].dragging{opacity:.35!important;cursor:grabbing;transform:scale(.96) rotate(2deg);box-shadow:0 8px 24px #0000004d!important;border:2px dashed var(--tg-theme-link-color, #0088cc)!important;background-color:#74b9ff40!important}[draggable=true]:hover{background-color:#74b9ff1f!important;border-radius:4px;transform:translateY(-3px);box-shadow:0 4px 12px #74b9ff40}[draggable=true].drop-target{background-color:#74b9ff33!important;border:2px solid var(--tg-theme-link-color, #0088cc)!important;border-radius:4px;transform:scale(1.01);position:relative}[draggable=true].drop-target:after{content:"↓ Встанет здесь";position:absolute;left:50%;top:-22px;transform:translate(-50%);background:var(--tg-theme-link-color, #0088cc);color:#fff;padding:2px 8px;border-radius:3px;font-size:11px;font-weight:600;white-space:nowrap;pointer-events:none;z-index:100}.btn-reorder-active{background-color:var(--tg-theme-link-color, #0088cc)!important;color:#fff!important;box-shadow:inset 0 0 0 2px var(--tg-theme-link-color, #0088cc)}.btn-reorder-active:hover{background-color:#0088ccd9!important}@media(max-width:480px){body{padding:12px}.nav-tab{padding:10px 12px;font-size:13px}.category-title{font-size:16px}.stats-grid{grid-template-columns:repeat(2,1fr)}}.hidden{display:none!important}.toast-container{position:fixed;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:8px}.toast{padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 4px 12px #00000026;transform:translate(100%);opacity:0;transition:all .3s ease;max-width:300px;word-wrap:break-word}.toast.show{transform:translate(0);opacity:1}.toast-success{background-color:var(--success-color);color:#fff}.toast-error{background-color:var(--danger-color);color:#fff}.toast-info{background-color:var(--tg-theme-link-color);color:#fff}.editor-toolbar.show{display:flex;animation:slideDown .2s ease}.editor-toolbar.hide{animation:slideUp .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideUp{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-10px) scale(.95)}}.telegram-input .spoiler{background-color:var(--tg-theme-hint-color);color:var(--tg-theme-hint-color);border-radius:3px;cursor:pointer;transition:all .2s ease}.telegram-input .spoiler:hover{background-color:transparent;color:var(--tg-theme-text-color)}.char-counter.warning{color:var(--warning-color)}.char-counter.danger{color:var(--danger-color)}.format-btn.active{background-color:var(--primary-color);color:#fff}@media(max-width:480px){.toast-container{top:10px;right:10px;left:10px}.toast{max-width:none}.telegram-editor{border-radius:8px}.editor-toolbar{flex-wrap:wrap;gap:6px;padding:6px 8px;top:-60px}.format-btn{min-width:32px;padding:6px 8px;font-size:12px}.format-btn:after{display:none}.telegram-input{min-height:100px;font-size:16px;padding:12px}.input-actions{padding:6px 12px}.char-counter{font-size:11px}.image-preview img{max-height:150px}}@media(max-width:360px){.container{padding-left:12px;padding-right:12px}}.user-row{display:flex;align-items:center;gap:12px;padding:12px;background:var(--tg-theme-bg-color);border-radius:8px;border-left:3px solid var(--tg-theme-hint-color, #999)}.user-row .user-info{flex:1 1 0;min-width:0}.user-row .user-info strong{display:block;white-space:normal;overflow-wrap:anywhere}.user-row .user-info .user-id{font-size:12px;color:var(--tg-theme-hint-color)}.user-row .user-controls{flex:0 0 auto;display:flex;gap:6px;justify-content:flex-end;align-items:center;white-space:nowrap}.users-panel{padding:12px}.users-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.users-title{margin:0}.users-search{display:flex;gap:8px;align-items:center}.users-search-input{padding:6px 8px;border-radius:6px;border:1px solid var(--tg-theme-hint-color);min-width:0}@media(max-width:480px){.users-panel{padding:8px}.users-toolbar{flex-direction:column;align-items:stretch;gap:6px}.users-search{width:100%;flex-wrap:wrap}.users-search-input{flex:1 1 200px;width:100%}.users-search-btn{flex:0 0 auto}.user-row{padding:10px;flex-direction:column;align-items:stretch;gap:8px}.user-row .user-controls{gap:4px;white-space:normal;flex-wrap:wrap;justify-content:flex-start;width:100%}}.bottom-nav-btn .bottom-nav-icon,.bottom-nav-btn span{pointer-events:none}.theme-modal-actions-top{display:flex;justify-content:flex-end;margin-bottom:12px}.theme-cover-actions{display:flex;gap:8px;margin:8px 0;flex-wrap:wrap}.theme-cover-preview-box{position:relative;width:100%;height:128px;border-radius:16px;overflow:hidden;border:1px solid rgba(0,0,0,.12);margin-top:8px;background:var(--tg-theme-secondary-bg-color);touch-action:none}.theme-cover-preview-header{margin:0;height:100%;min-height:0;padding:16px 12px;border:none;border-radius:0;background-size:cover;background-repeat:no-repeat;background-position:50% 50%;text-align:center;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:none}.theme-cover-preview-header *{-webkit-user-select:none;user-select:none;pointer-events:none}.theme-cover-preview-header.is-dragging{cursor:grabbing}.theme-cover-preview-header .header-title{margin-bottom:4px}.theme-cover-preview-header h1{font-size:clamp(18px,5vw,24px);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.35)}.theme-cover-preview-header p{font-size:clamp(12px,3.5vw,14px);color:#ffffffeb;line-height:1.6}body.tg-dark .preview-apply-content{border-color:color-mix(in srgb,var(--tg-theme-hint-color) 45%,transparent);box-shadow:0 6px 18px #0000003d}.preview-apply-content .btn-add{background:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);border:1px solid transparent;box-shadow:none;transform:none}.preview-apply-content .btn-add:hover{filter:brightness(.96);box-shadow:none;transform:none}@media(max-width:480px){.preview-apply-content{flex-direction:column;align-items:stretch}.preview-apply-actions{justify-content:flex-end}}.form-checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--tg-theme-text-color)}.form-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-color)}:where([style*=display][style*=flex]){flex-wrap:wrap}@media(max-width:480px){.subscription-item-header{padding:8px!important}.subscription-item-header .toggle-switch{margin-left:8px!important}}html.modal-open,body.modal-open{overflow:hidden}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;pointer-events:none;transition:opacity .3s ease}.modal-overlay.show{opacity:1;pointer-events:all}.modal{background:var(--tg-theme-bg-color);border-radius:16px;padding:20px;max-width:500px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;transform:scale(.9) translateY(20px);transition:transform .3s ease}@media(max-width:480px){.modal{padding:16px;max-height:90vh;width:95%}}.modal-overlay.show .modal{transform:scale(1) translateY(0)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--tg-theme-secondary-bg-color);gap:8px}.modal-title{font-size:clamp(16px,4vw,20px);font-weight:600;color:var(--tg-theme-text-color)}.modal-close{width:28px;height:28px;border:none;background:var(--tg-theme-secondary-bg-color);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--tg-theme-hint-color);transition:all .2s ease;flex-shrink:0}.modal-close:hover{background:var(--danger-color);color:#fff;transform:rotate(90deg)}.modal-body{margin-bottom:16px}.modal-footer{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}@media(max-width:480px){.modal-header{margin-bottom:12px;padding-bottom:10px}.modal-title{font-size:16px}.modal-close{width:24px;height:24px;font-size:14px}.modal-body{margin-bottom:12px}}.form-group{margin-bottom:14px}.form-label{display:block;font-weight:500;margin-bottom:6px;color:var(--tg-theme-text-color);font-size:clamp(12px,3vw,14px)}.form-label .required{color:var(--danger-color);margin-left:4px}.form-input,.form-textarea{width:100%;padding:10px;border:2px solid var(--tg-theme-secondary-bg-color);border-radius:8px;font-size:clamp(12px,3vw,14px);background-color:var(--tg-theme-bg-color);color:var(--tg-theme-text-color);transition:border-color .2s ease}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color)}.form-textarea{min-height:70px;resize:vertical}.form-hint{font-size:clamp(10px,2.5vw,12px);color:var(--tg-theme-hint-color);margin-top:4px}@media(max-width:480px){.form-group{margin-bottom:12px}.form-label{font-size:12px;margin-bottom:4px}.form-input,.form-textarea{padding:8px;font-size:12px}.form-textarea{min-height:60px}}.category-card{background:var(--tg-theme-secondary-bg-color);border-radius:12px;padding:16px;margin-bottom:12px;transition:all .3s ease;border:2px solid transparent}.category-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #6c5ce71a}@media(max-width:480px){.category-card{padding:12px;margin-bottom:10px;border-radius:10px}}.category-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px;gap:8px}.category-info{flex:1;min-width:0}.category-name{font-size:clamp(16px,4vw,18px);font-weight:600;color:var(--tg-theme-text-color);margin-bottom:4px;word-break:break-word;overflow-wrap:anywhere}.category-meta{font-size:clamp(10px,2.5vw,12px);color:var(--tg-theme-hint-color);display:flex;gap:8px;flex-wrap:wrap;margin-top:6px;align-items:center}.category-meta span{display:inline-flex;align-items:center;gap:4px}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:12px;font-size:clamp(10px,2vw,11px);font-weight:500;margin-left:4px}@media(max-width:480px){.category-header{margin-bottom:12px}.category-name{font-size:16px}.category-meta{font-size:10px;gap:6px}}.badge-hidden{background:#e170551a;color:var(--danger-color)}.badge-deleted{background:#d630311a;color:#d63031}.badge-url{background:#0984e31a;color:#0984e3}.category-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center;margin-right:12px}.icon-btn{min-width:32px;height:32px;padding:0 8px;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:clamp(10px,2.5vw,12px);font-weight:500;transition:all .2s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn-edit{background:#6c5ce71a;color:var(--primary-color)}.icon-btn-edit:hover{background:var(--primary-color);color:#fff;transform:translateY(-1px)}.icon-btn-hide{background:#e170551a;color:var(--danger-color)}.icon-btn-hide:hover{background:var(--danger-color);color:#fff;transform:translateY(-1px)}.icon-btn-show{background:#00b8941a;color:var(--success-color)}.icon-btn-show:hover{background:var(--success-color);color:#fff;transform:translateY(-1px)}.icon-btn-delete{background:#d630311a;color:#d63031}.icon-btn-delete:hover{background:#d63031;color:#fff;transform:translateY(-1px)}.icon-btn-restore{background:#00b89414;color:var(--success-color)}.icon-btn-restore:hover{background:var(--success-color);color:#fff;transform:translateY(-1px)}@media(max-width:480px){.category-actions{gap:4px;margin-right:0;justify-content:flex-start;width:100%}.icon-btn{min-width:28px;height:28px;padding:0 6px;font-size:10px;border-radius:5px}}.projects-section{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.05)}.projects-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:8px}.projects-title{font-size:clamp(12px,3vw,14px);font-weight:600;color:var(--tg-theme-text-color)}.projects-count{font-size:clamp(10px,2.5vw,12px);color:var(--tg-theme-hint-color);background:var(--tg-theme-bg-color);padding:2px 6px;border-radius:12px;flex-shrink:0}@media(max-width:480px){.projects-section{margin-top:10px;padding-top:10px}.projects-header{margin-bottom:8px}}.project-item{background:var(--tg-theme-bg-color);border-radius:8px;margin-bottom:8px;transition:all .2s ease;border:1px solid transparent;overflow:hidden}@media(hover:hover){.project-item:hover{border-color:var(--primary-color)}}.project-item-header{display:flex;justify-content:space-between;align-items:center;padding:12px;cursor:pointer;transition:background .2s ease;flex-wrap:nowrap;gap:8px}@media(hover:hover){.project-item-header:hover{background:var(--row-hover-bg)}}.project-item.expanded .project-item-header{background:var(--row-detail-bg)}.project-details{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;padding:0 12px;background:var(--row-detail-bg)}.project-item.expanded .project-details{max-height:500px;padding:16px 12px;border-top:1px solid var(--tg-theme-secondary-bg-color)}.project-detail-row{margin-bottom:12px}.project-detail-row:last-child{margin-bottom:0}.project-detail-label{font-size:11px;color:var(--tg-theme-hint-color);font-weight:600;text-transform:uppercase;margin-bottom:4px}.project-detail-value{font-size:13px;color:var(--tg-theme-text-color);line-height:1.4}.project-image{width:100%;max-width:200px;height:auto;border-radius:8px;margin-top:4px;box-shadow:0 2px 8px #0000001a}.project-readers{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.reader-badge{display:inline-flex;align-items:center;padding:4px 10px;background:var(--primary-color);color:#fff;border-radius:12px;font-size:11px;font-weight:500;text-decoration:none;transition:all .2s ease}.reader-badge:hover{background:var(--success-color);transform:translateY(-1px);box-shadow:0 2px 8px #00b8944d}.project-info{flex:1;min-width:0}.project-name{font-weight:500;font-size:14px;color:var(--tg-theme-text-color);margin-bottom:4px}.project-meta{font-size:11px;color:var(--tg-theme-hint-color)}.project-actions{display:flex;gap:6px;margin-left:auto;flex:0 0 auto;align-items:center;white-space:nowrap}.icon-btn-sm{min-width:28px;height:28px;padding:0 10px;font-size:11px}.empty-state{text-align:center;padding:40px 20px;color:var(--tg-theme-hint-color)}.empty-state-icon{font-size:48px;margin-bottom:12px;opacity:.5}.empty-state-text{font-size:14px}.btn-add{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-add:hover{background:#5f4fd1;transform:translateY(-2px);box-shadow:0 4px 12px #6c5ce74d}.btn-add-sm{padding:6px 12px;font-size:12px}.btn-disabled{opacity:.6;cursor:default;transform:none}.manage-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px;background:var(--tg-theme-secondary-bg-color);border-radius:12px}.manage-title{font-size:24px;font-weight:600;color:var(--tg-theme-text-color)}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.category-card{animation:slideIn .3s ease}@media(max-width:480px){.modal{width:95%;padding:20px}.category-actions{flex-wrap:wrap}.manage-header{flex-direction:column;gap:16px;align-items:flex-start}.project-actions{width:100%;justify-content:flex-start;margin-left:0;flex-wrap:wrap;white-space:normal}.project-item-header{flex-wrap:wrap;align-items:flex-start}.category-header{flex-direction:column;align-items:stretch}}#manage .subscription-list{width:100%}#manage .subscription-item-header{display:flex;align-items:center;width:100%;gap:12px;padding:10px 12px;box-sizing:border-box}#manage .subscription-item-header .subscription-info{flex:1 1 0;min-width:0}#manage .subscription-item-header{justify-content:space-between;padding-left:12px;padding-right:12px}#manage .subscription-item-header .toggle-switch{flex:0 0 auto;margin-left:auto;margin-right:0!important}#manage .subscription-item.expanded+.subscription-details{width:100%;margin-top:8px;max-height:1000px!important;padding:12px!important;opacity:1;visibility:visible}#manage .subscription-details{width:auto!important;flex:0 0 auto;max-height:0;overflow:hidden;transition:max-height .42s cubic-bezier(.22,.9,.14,1),padding .32s ease,opacity .26s ease 60ms,margin .32s ease;padding:0 12px!important;opacity:0;visibility:hidden;margin-top:0;will-change:max-height,opacity,margin}#manage .subscription-item.expanded+.subscription-details{width:100%!important;flex:0 0 auto;max-height:1000px!important;padding:12px!important;opacity:1;visibility:visible}.subscription-stat-item>div:first-child{flex:1 1 auto;min-width:0}#manage .subscription-item-header .subscription-info{flex:1 1 auto;min-width:0}#manage .subscription-item .subscription-name{text-align:left!important;overflow:visible;text-overflow:unset;white-space:normal;word-break:break-word;max-width:100%}.project-item-header,#manage .subscription-item-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.project-item-header .project-info,#manage .subscription-item-header .subscription-info,.project-info,#manage .subscription-info{flex:1 1 0;min-width:0;overflow:visible;word-break:break-word}.project-actions,.category-actions{display:flex;gap:6px;align-items:center;flex:0 0 auto;margin-left:12px;white-space:nowrap}@media(max-width:480px){.project-actions{width:100%;justify-content:flex-end;margin-left:0}}#manage .subscription-item .subscription-bar{width:100%!important;min-width:0}.subscription-item .subscription-progress{max-width:100%;display:block}.subscription-item:not(.expanded)+.subscription-details{width:0!important;flex:0 0 0!important;padding:0!important;border:none!important;overflow:hidden!important}:root{--text-screen: 20px;--text-title: 17px;--text-section: 12px;--text-body: 15px;--text-control: 14px;--text-meta: 12px;--text-metric: 26px;--weight-strong: 600;--weight-medium: 500;--weight-normal: 400;--tracking-section: .06em;--tracking-metric: -.01em;--leading-tight: 1.3;--leading-body: 1.45;--leading-prose: 1.6;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--row-padding-y: 12px;--row-padding-x: 14px;--screen-padding: 16px;--radius-group: 12px;--radius-control: 9px;--radius-chip: 8px;--radius-pill: 999px;--control-height: 36px;--icon-button-size: 30px;--toggle-width: 44px;--toggle-height: 26px;--tap-target: 44px;--transition-fast: .15s ease;--transition-base: .2s ease;--skeleton-cycle: 1.4s}body.tg-light{--surface-page: var(--tg-theme-bg-color);--surface-group: #f4f4f6;--surface-control: #f0f0f3;--surface-control-active: #e3e3e7;--divider: #e3e3e7;--ink-primary: var(--tg-theme-text-color);--ink-secondary: #6b6b70;--ink-muted: #8a8a8e;--accent: var(--primary-color);--accent-ink: #7e637c;--accent-contrast: #ffffff;--danger: var(--danger-color);--danger-surface: #fbeaea;--toggle-off: #d8d8dd;--toggle-knob: #ffffff;--toggle-knob-shadow: 0 1px 2px rgba(0, 0, 0, .2);--chart-line: #7e637c;--chart-fill: rgba(126, 99, 124, .14);--skeleton-base: rgba(15, 12, 8, .08);--skeleton-sheen: rgba(255, 255, 255, .6)}body.tg-dark{--surface-page: var(--tg-theme-bg-color);--surface-group: #182a40;--surface-control: #16273c;--surface-control-active: #2b3f5a;--divider: #24374f;--ink-primary: var(--tg-theme-text-color);--ink-secondary: #98a8bd;--ink-muted: #7d8ea5;--accent: var(--primary-color);--accent-ink: #b79ab5;--accent-contrast: #ffffff;--danger: var(--danger-color);--danger-surface: #4a2b2b;--toggle-off: #33455e;--toggle-knob: #8ea0b7;--toggle-knob-shadow: none;--chart-line: #b79ab5;--chart-fill: rgba(183, 154, 181, .14);--skeleton-base: #24374f;--skeleton-sheen: rgba(255, 255, 255, .07)}.section-label{font-size:var(--text-section);font-weight:var(--weight-strong);letter-spacing:var(--tracking-section);text-transform:uppercase;color:var(--ink-secondary);margin:0 0 var(--space-2) 2px}.section-label-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:0 2px var(--space-2)}.group{background:var(--surface-group);border-radius:var(--radius-group);overflow:hidden;margin-bottom:var(--space-5)}.group-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--row-padding-y) var(--row-padding-x);min-height:var(--tap-target);box-sizing:border-box}.group-row+.group-row{border-top:1px solid var(--divider);margin-left:var(--row-padding-x);padding-left:0}.group-row-body{flex:1;min-width:0}.group-row-title{font-size:var(--text-body);line-height:var(--leading-body)}.group-row-meta{font-size:var(--text-meta);color:var(--ink-muted);margin-top:2px}.group-row-action{color:var(--accent-ink);font-size:var(--text-control);cursor:pointer}.segmented{display:flex;gap:2px;background:var(--surface-control);border-radius:var(--radius-chip);padding:2px}.segmented-item{flex:1;text-align:center;border:none;border-radius:6px;padding:7px 8px;background:transparent;color:var(--ink-secondary);font-size:13px;font-weight:var(--weight-medium);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.segmented-item.is-active{background:var(--surface-control-active);color:var(--ink-primary)}.btn-primary,.btn-secondary,.btn-quiet,.btn-danger{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;border-radius:var(--radius-control);padding:9px 14px;font-size:var(--text-control);font-weight:var(--weight-medium);line-height:1.2;cursor:pointer;transition:opacity var(--transition-fast),background var(--transition-fast)}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-secondary{background:transparent;border-color:var(--divider);color:var(--ink-primary)}.btn-quiet{background:transparent;color:var(--accent-ink);padding-left:6px;padding-right:6px}.btn-danger{background:transparent;border-color:var(--danger-surface);color:var(--danger)}.btn-block{display:flex;width:100%;justify-content:center}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:default}.icon-action{width:var(--icon-button-size);height:var(--icon-button-size);border:none;border-radius:var(--radius-chip);background:var(--surface-control);color:var(--ink-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast)}.icon-action-danger{color:var(--danger)}.icon-action-group{display:flex;gap:var(--space-1)}.switch{width:var(--toggle-width);height:var(--toggle-height);border-radius:var(--radius-pill);background:var(--toggle-off);border:none;padding:0;margin:0;appearance:none;-webkit-appearance:none;position:relative;flex:0 0 auto;cursor:pointer;transition:background var(--transition-base)}.switch:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.switch.is-on{background:var(--accent)}.switch:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--toggle-knob);box-shadow:var(--toggle-knob-shadow);transition:transform var(--transition-base),background var(--transition-base)}.switch.is-on:after{transform:translate(18px);background:#fff}.tag{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-secondary);border:1px solid var(--divider);border-radius:4px;padding:1px 5px;white-space:nowrap}.tag-danger{color:var(--danger);border-color:var(--danger-surface)}.metric{background:var(--surface-group);border-radius:var(--radius-group);padding:var(--space-4) var(--space-3)}.metric-value{font-size:var(--text-metric);font-weight:var(--weight-strong);letter-spacing:var(--tracking-metric);line-height:1.15}.metric-label{font-size:var(--text-meta);color:var(--ink-secondary);margin-top:2px}.screen-header{height:56px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:0 var(--screen-padding);border-bottom:1px solid var(--divider)}.screen-header-title{font-size:var(--text-title);font-weight:var(--weight-strong)}.screen-header-meta{font-size:var(--text-meta);color:var(--ink-secondary)}.app-shell{max-width:600px;margin:0 auto;padding-bottom:74px}.app-content{padding-bottom:var(--space-4)}.app-content>.screen-body{padding-left:calc(var(--screen-padding) + var(--safe-left, 0px));padding-right:calc(var(--screen-padding) + var(--safe-right, 0px))}.app-header{margin:0 0 var(--space-4);height:96px;border-radius:0 0 18px 18px;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-3) var(--screen-padding);background:var(--surface-group);background-size:cover;background-repeat:no-repeat;position:relative}.app-header-name{font-size:var(--text-title);font-weight:var(--weight-strong);color:var(--ink-primary)}.app-header-name.is-brand{letter-spacing:.08em;text-transform:uppercase}.app-header-sub{font-size:var(--text-meta);color:var(--ink-secondary);margin-top:1px}.app-header.has-cover .app-header-name{color:#fff}.app-header.has-cover .app-header-sub{color:#ffffffbf}.app-header-badge{position:absolute;top:var(--space-2);right:var(--screen-padding);font-size:11px;color:#fff;background:#00000059;border-radius:var(--radius-chip);padding:3px 8px}.screen-header+.app-content,.app-header+.app-content{padding-top:0}.screen-header{margin-bottom:var(--space-3)}.screen-body{padding-left:calc(var(--screen-padding) + var(--safe-left, 0px));padding-right:calc(var(--screen-padding) + var(--safe-right, 0px))}.admin-subtabs{margin-bottom:var(--space-5)}.group-row.is-expandable{cursor:pointer}.row-chevron{color:var(--ink-muted);flex:0 0 auto;transition:transform var(--transition-base)}.row-chevron.is-open{transform:rotate(90deg)}.row-details{padding:0 var(--row-padding-x) var(--space-3);border-top:1px solid var(--divider);margin-left:var(--row-padding-x);padding-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.row-details-image{max-width:140px;border-radius:var(--radius-chip)}.row-details-text{margin:0;font-size:var(--text-meta);line-height:var(--leading-prose);color:var(--ink-secondary)}.row-details-links{display:flex;flex-wrap:wrap;gap:var(--space-2)}.link-chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:var(--radius-chip);background:var(--surface-control);color:var(--accent-ink);font-size:var(--text-meta);text-decoration:none}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-6)}.panel{background:var(--surface-group);border-radius:var(--radius-group);padding:var(--space-4);margin-bottom:var(--space-5)}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.panel-title{font-size:13px;color:var(--ink-secondary)}.panel-note{font-size:13px;font-weight:var(--weight-medium);color:var(--accent-ink)}.section-label-inline{margin:0}.segmented-compact .segmented-item{flex:0 0 auto;padding:4px 10px;font-size:var(--text-meta)}.bar-list{display:flex;flex-direction:column;gap:var(--space-3)}.bar-head{display:flex;justify-content:space-between;font-size:var(--text-control);margin-bottom:6px}.bar-value{color:var(--ink-secondary)}.bar-track{height:6px;border-radius:3px;background:var(--surface-control);overflow:hidden}.bar-fill{height:100%;background:var(--chart-line);border-radius:3px}.rate-badge{font-size:var(--text-control);font-weight:var(--weight-medium);color:var(--ink-secondary);background:none;border:none;padding:0;flex:0 0 auto}.rate-badge.is-partial{color:var(--danger);text-decoration:underline;cursor:pointer}.hint-text{margin:0 2px var(--space-5);font-size:var(--text-meta)}.modal-summary{margin-bottom:var(--space-3);font-size:var(--text-body)}.failure-group{margin-top:var(--space-3);padding:var(--space-3);background:var(--surface-control);border-radius:var(--radius-chip)}.failure-reason{font-size:var(--text-meta);font-weight:var(--weight-strong);color:var(--danger);margin-bottom:6px;overflow-wrap:anywhere}.failure-users{font-size:var(--text-meta);color:var(--ink-secondary);display:flex;flex-direction:column;gap:2px;overflow-wrap:anywhere}.toolbar{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-5)}.toolbar-tail{margin-left:auto;display:flex;gap:var(--space-1)}.btn-secondary.is-active{background:var(--surface-control-active);border-color:transparent}.group-row-add{width:100%;border:none;background:transparent;color:var(--accent-ink);font-size:var(--text-control);font-weight:var(--weight-medium);text-align:left;cursor:pointer}.group-row-add+.group-row,.group-row+.group-row-add{border-top:1px solid var(--divider);margin-left:var(--row-padding-x);padding-left:0}.row-details-actions{margin-top:var(--space-1)}.group-row-title .tag,.section-label .tag{margin-left:var(--space-2);vertical-align:middle}.section-label .tag{text-transform:none;letter-spacing:0}.search-field{display:flex;align-items:center;gap:var(--space-2);background:var(--surface-control);border-radius:var(--radius-control);padding:9px 12px;margin-bottom:var(--space-5);color:var(--ink-muted)}.search-input{flex:1;min-width:0;border:none;background:transparent;color:var(--ink-primary);font-size:var(--text-control);outline:none;padding:0}.search-input::placeholder{color:var(--ink-muted)}.search-clear{border:none;background:transparent;color:var(--ink-muted);cursor:pointer;padding:2px;display:inline-flex}.avatar{width:34px;height:34px;border-radius:50%;background:var(--surface-control);color:var(--ink-secondary);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:var(--weight-medium);flex:0 0 auto}.avatar.is-admin{background:var(--surface-control-active);color:var(--ink-primary)}.group-row .avatar+.group-row-body{min-width:0}.group-row-add.is-danger{color:var(--danger)}.prose-card{background:var(--surface-group);border-radius:var(--radius-group);padding:var(--space-4);margin-bottom:var(--space-5)}.prose-text{font-size:var(--text-body);line-height:var(--leading-prose);color:var(--ink-primary)}.prose-text b,.prose-text strong{font-weight:var(--weight-strong)}.prose-text a{color:var(--accent-ink);text-decoration:none}.prose-links{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.skeleton{display:block;position:relative;overflow:hidden;flex:0 0 auto;background:var(--skeleton-base)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--skeleton-sheen),transparent);animation:skeleton-shimmer var(--skeleton-cycle) ease-in-out infinite}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.skeleton-group{pointer-events:none}.skeleton-lines{display:flex;flex-direction:column;gap:7px}.screen-body>.skeleton,[aria-busy=true]>.skeleton{margin:0 0 var(--space-2) 2px}.avatar{position:relative;overflow:hidden}.avatar-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.username-tag{color:var(--accent-ink);margin-right:6px}.muted-text{color:var(--tg-theme-hint-color);font-size:14px}.admin-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.subscription-stat-item{display:flex;align-items:center;gap:12px;width:100%}.subscription-stat-body{flex:1}.subscription-stat-body .subscription-name{text-align:left}.subscription-stat-body .subscription-bar{width:100%;background:var(--stats-track-color, var(--tg-theme-secondary-bg-color, #eee));border-radius:6px;height:10px;overflow:hidden;margin-top:6px}.subscription-stat-body .subscription-progress{height:100%;background:var(--primary-color)}.subscription-stat-count{min-width:56px;text-align:right;font-weight:600}.legend-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px}.legend-color{width:12px;height:12px;border-radius:3px;flex:0 0 auto}.legend-label{flex:1;min-width:0;overflow-wrap:anywhere}.legend-value{color:var(--tg-theme-hint-color);white-space:nowrap}.broadcast-list{display:flex;flex-direction:column;gap:12px}.broadcast-item{padding:12px;background:var(--tg-theme-bg-color);border-radius:8px;border-left:4px solid var(--primary-color)}.broadcast-item-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:8px}.broadcast-item-date{font-size:12px;color:var(--tg-theme-hint-color);margin-top:4px}.broadcast-item-rate{text-align:right}.broadcast-item-rate-value{font-size:18px;font-weight:600;color:var(--success-color)}.broadcast-item-rate-label{font-size:11px;color:var(--tg-theme-hint-color)}.broadcast-item-counts{display:flex;gap:16px;font-size:13px}.broadcast-ok{color:var(--success-color)}.broadcast-fail{color:var(--danger-color)}.broadcast-total{color:var(--tg-theme-hint-color)}.broadcast-errors-link{border:none;background:transparent;color:var(--danger-color);font-size:13px;padding:0;cursor:pointer;text-decoration:underline}.broadcast-errors-head{display:flex;flex-direction:column;gap:10px;font-size:12px;color:var(--tg-theme-hint-color)}.broadcast-errors-count{font-size:13px;color:var(--danger-color);font-weight:600}.broadcast-errors-empty{margin-top:10px;font-size:12px;color:var(--tg-theme-hint-color)}.broadcast-errors-group{margin-top:10px;padding:10px;background:var(--tg-theme-secondary-bg-color);border-radius:8px}.broadcast-errors-reason{font-size:12px;font-weight:600;color:var(--danger-color);margin-bottom:6px;overflow-wrap:anywhere}.broadcast-errors-users-label{font-size:12px;color:var(--tg-theme-hint-color);margin-bottom:4px}.broadcast-errors-users{margin:0;padding-left:18px;font-size:12px;color:var(--tg-theme-text-color)}.broadcast-errors-users li{margin:4px 0;overflow-wrap:anywhere}.image-source-switch{display:flex;gap:12px;align-items:center;margin-bottom:8px}.form-image-preview{max-width:100%;margin-top:8px;border-radius:8px}.readers-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.readers-list{display:flex;flex-direction:column;gap:8px}.reader-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:6px;border-left:3px solid var(--tg-theme-link-color, #0088cc)}.reader-row-body{flex:1;min-width:0}.reader-row-name{font-weight:500}.reader-row-url{font-size:12px;color:var(--tg-theme-hint-color);margin-top:2px;word-break:break-all}.reader-row-actions{display:flex;gap:4px;margin-left:8px}.empty-state-sm .empty-state-icon{font-size:32px}.empty-state-sm .empty-state-text{font-size:12px}.project-detail-link{color:var(--tg-theme-link-color)}.project-detail-empty{color:var(--tg-theme-hint-color);font-style:italic}.users-summary{margin-bottom:16px}.users-list{display:flex;flex-direction:column;gap:8px}.user-row{border-left:3px solid var(--tg-theme-hint-color, #999)}.user-row-admin{border-left-color:var(--tg-theme-link-color, #0088cc)}.user-badge{display:inline-block;color:#fff;padding:2px 6px;border-radius:3px;font-size:11px;margin-left:8px}.user-badge-admin{background:var(--tg-theme-link-color, #0088cc)}.user-badge-banned{background:var(--danger-color);margin-left:4px}.btn-sm{padding:6px 10px;font-size:12px}.user-subscriptions-group{margin-bottom:12px}.user-subscriptions-category{font-weight:600;margin-bottom:6px}.user-subscriptions-row{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:13px}.sub-on{color:var(--success-color)}.sub-off{color:var(--tg-theme-hint-color)}.state-screen{padding:24px}.state-card{max-width:720px;margin:40px auto;background:var(--tg-theme-bg-color);border-radius:8px;padding:24px;text-align:center}.state-card h2{margin-top:0}.state-card p{font-size:16px;color:var(--tg-theme-hint-color)}.state-card-accent{font-size:18px;font-weight:600;margin-top:18px;color:var(--tg-theme-text-color)}.state-card .btn-add{margin-top:18px}:root{--tg-viewport-height: 100dvh;--tg-viewport-stable-height: 100dvh;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}body{padding:0}.bottom-nav{padding-bottom:calc(var(--page-vertical) + max(var(--safe-bottom),env(safe-area-inset-bottom,0px)))}@media(max-width:360px){.admin-subtabs{gap:3px;padding:3px}.admin-subtab{padding:8px 4px;font-size:12px;letter-spacing:-.2px}.manage-actions .btn-add,.admin-stats-actions .refresh-btn{font-size:12px}.user-controls .btn{padding:6px 8px;font-size:11px}}@media(max-height:480px)and (orientation:landscape){.header,.header.has-cover{margin-bottom:8px;padding:8px 12px;min-height:0}.header h1{font-size:18px;margin-bottom:0;letter-spacing:2px}.header p,.defender-banner{display:none}.bottom-nav{padding-top:2px;padding-bottom:calc(2px + max(var(--safe-bottom),env(safe-area-inset-bottom,0px)))}.bottom-nav-btn{flex-direction:row;gap:6px;padding:6px 0}.bottom-nav-icon{width:18px;height:18px}.container{padding-bottom:64px}}.modal{display:flex;flex-direction:column;max-height:min(85vh,calc(var(--tg-viewport-height) - 32px));overflow:hidden}.modal-header{flex:0 0 auto}.modal-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:2px}.modal-footer{flex:0 0 auto;padding-top:12px;background:var(--tg-theme-bg-color)}@media(min-width:900px){.container{max-width:860px}.bottom-nav{width:min(100%,860px)}.chart-container{flex-direction:row;flex-wrap:wrap;gap:16px;align-items:flex-start}.admin-chart-block{flex:1 1 340px;width:auto;min-width:0}.stats-grid{gap:16px}}@media(max-height:560px){.chart-canvas-box{height:170px}.chart-canvas-box-pie{height:230px}}
