:root{--ink:#16191C;--muted:#5B615F;--paper:#EAECEA;--surface:#FBFBFA;--surface-2:#F1F2F0;--border:#D6D9D5;--accent:#B8720F;--accent-ink:#5C3B08;--ok:#2F8F5B;--busy:#7A5CC0;--err:#D64545;--pending:#8B9198;--vk:#1D5FC2;--tg:#29A9E0;--max:#C23B7A;--tt:#111315;--tt-a:#25F4EE;--tt-b:#FE2C55;--okru:#EE8208;--dzen:#1C1C1C;--vkvideo:#8355E0;--radius-s:3px;--radius-m:8px;--font-display:"Archivo Narrow","Roboto Condensed","Arial Narrow",sans-serif;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;color-scheme:light}@media (prefers-color-scheme: dark){:root{--ink:#E7E8E4;--muted:#9AA098;--paper:#15181A;--surface:#1C2023;--surface-2:#20252A;--border:#2C3236;--accent:#D89434;--accent-ink:#F4CE94;--ok:#45B378;--busy:#9B82D9;--err:#E56464;--pending:#7D837F;--vk:#4C8CE8;--tg:#4FC0EE;--max:#D8598F;--tt:#0B0D0E;--tt-a:#3FF6EF;--tt-b:#FF5A79;--okru:#F2954A;--dzen:#E3E5E0;--vkvideo:#A688F0;color-scheme:dark}}:root[data-theme=dark]{--ink:#E7E8E4;--muted:#9AA098;--paper:#15181A;--surface:#1C2023;--surface-2:#20252A;--border:#2C3236;--accent:#D89434;--accent-ink:#F4CE94;--ok:#45B378;--busy:#9B82D9;--err:#E56464;--pending:#7D837F;--vk:#4C8CE8;--tg:#4FC0EE;--max:#D8598F;--tt:#0B0D0E;--tt-a:#3FF6EF;--tt-b:#FF5A79;--okru:#F2954A;--dzen:#E3E5E0;--vkvideo:#A688F0;color-scheme:dark}:root[data-theme=light]{--ink:#16191C;--muted:#5B615F;--paper:#EAECEA;--surface:#FBFBFA;--surface-2:#F1F2F0;--border:#D6D9D5;--accent:#B8720F;--accent-ink:#5C3B08;--ok:#2F8F5B;--busy:#7A5CC0;--err:#D64545;--pending:#8B9198;--vk:#1D5FC2;--tg:#29A9E0;--max:#C23B7A;--tt:#111315;--tt-a:#25F4EE;--tt-b:#FE2C55;--okru:#EE8208;--dzen:#1C1C1C;--vkvideo:#8355E0;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:14px;line-height:1.5}button{font-family:inherit}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.app{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.mobile-topbar{display:none}.mobile-menu-btn{width:34px;height:34px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;flex:none}.mobile-menu-btn svg{width:18px;height:18px}.sidebar{border-right:1px solid var(--border);padding:20px 16px;display:flex;flex-direction:column;gap:20px}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.brand{display:flex;align-items:center;gap:9px}.notif-wrap{position:relative;flex:none}.notif-btn{width:30px;height:30px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative}.notif-btn:hover{border-color:var(--accent);color:var(--accent)}.notif-btn svg{width:15px;height:15px}.notif-badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--err);color:#fff;font-size:9.5px;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);line-height:1}.notif-panel{position:absolute;top:calc(100% + 6px);left:0;width:320px;max-width:calc(100vw - 32px);max-height:420px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:0 10px 26px #0a0c0d29;padding:6px;z-index:40}.notif-panel-head{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 6px}.notif-panel-title{font-family:var(--font-display);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.notif-readall{font-size:11px;color:var(--accent);background:none;border:none;cursor:pointer;padding:0}.notif-item{display:flex;gap:9px;padding:9px 8px;border-radius:var(--radius-s);cursor:pointer;align-items:flex-start;width:100%;text-align:left;background:none;border:none}.notif-item:hover{background:var(--surface-2)}.notif-item.unread{background:color-mix(in srgb,var(--accent) 7%,transparent)}.notif-icon{width:26px;height:26px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;margin-top:1px}.notif-icon.error{background:color-mix(in srgb,var(--err) 18%,transparent);color:var(--err)}.notif-icon.warn{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-ink)}.notif-icon svg{width:13px;height:13px}.notif-body{flex:1;min-width:0}.notif-text{font-size:12.5px;line-height:1.4}.notif-meta{font-size:10.5px;color:var(--muted);margin-top:3px;font-family:var(--font-mono)}.notif-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none;margin-top:6px}.notif-empty{padding:24px 10px;text-align:center;font-size:12px;color:var(--muted)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.toggle-label{font-size:12.5px;font-weight:600}.toggle-desc{font-size:11px;color:var(--muted);margin-top:2px}.toggle{position:relative;width:38px;height:22px;flex:none;display:block}.toggle input{opacity:0;width:100%;height:100%;margin:0;cursor:pointer;position:absolute;z-index:1}.toggle-track{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border);border-radius:12px;transition:background .15s ease}.toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px #0003;transition:transform .15s ease}.toggle input:checked~.toggle-track{background:var(--accent)}.toggle input:checked~.toggle-thumb{transform:translate(16px)}.toggle input:focus-visible~.toggle-track{outline:2px solid var(--accent);outline-offset:2px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:22px;max-width:760px}.stat-tile{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);padding:14px 16px}.stat-tile-label{font-family:var(--font-display);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}.stat-tile-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:25px;font-weight:700;color:var(--ink);line-height:1}.stat-tile-value.ok{color:var(--ok)}.stat-tile-value.err{color:var(--err)}.stat-tile-sub{font-size:11px;color:var(--muted);margin-top:6px}.panel{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);padding:16px 18px;max-width:760px;margin-bottom:20px}.panel-title{font-family:var(--font-display);font-weight:700;font-size:13px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.chart-legend{display:flex;gap:14px;margin-bottom:2px}.chart-legend .item{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted)}.legend-swatch{width:9px;height:9px;border-radius:3px;flex:none}.legend-swatch.ok{background:var(--ok)}.legend-swatch.err{background:var(--err)}.bar-chart{display:flex;align-items:flex-end;gap:5px;height:132px;padding-top:8px;border-bottom:1px solid var(--border);overflow-x:auto}.bar-col{flex:1;min-width:9px;display:flex;flex-direction:column;justify-content:flex-end;height:100%}.bar-seg{width:100%;border-radius:0}.bar-seg.ok{background:var(--ok)}.bar-seg.ok.rounded{border-radius:4px 4px 0 0}.bar-seg.err{background:var(--err);border-radius:4px 4px 0 0}.bar-seg.empty{height:2px;background:var(--border);align-self:flex-end}.chart-axis{display:flex;justify-content:space-between;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:10.5px;color:var(--muted);margin-top:6px}.data-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:12px}.data-table th{text-align:left;font-family:var(--font-display);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--border)}.data-table td{padding:6px 8px;border-bottom:1px solid var(--border);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.data-table td:first-child{font-family:var(--font-body)}.chbk-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--border)}.chbk-row:first-child{border-top:none}.chbk-name{width:84px;flex:none;display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600}.chbk-bar{flex:1;height:8px;border-radius:4px;background:var(--surface-2);overflow:hidden;display:flex;gap:2px}.chbk-bar-seg.ok{background:var(--ok)}.chbk-bar-seg.err{background:var(--err)}.chbk-count{width:56px;flex:none;text-align:right;font-size:11px;color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.chbk-pct{width:44px;flex:none;text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:600}.audience-spacer{flex:1}.audience-count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700;color:var(--ink)}.error-list{display:flex;flex-direction:column;gap:6px}.error-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-s);cursor:pointer;background:var(--surface-2)}.error-row:hover{border-color:var(--err)}.error-row-text{flex:1;min-width:0;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-row-date{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11px;color:var(--muted);flex:none}.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.composer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--paper);z-index:50;display:none;flex-direction:column}.composer-overlay.open{display:flex}.composer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px;border-bottom:1px solid var(--border);flex:none;flex-wrap:wrap}.composer-title{font-family:var(--font-display);font-weight:700;font-size:17px}.composer-actions{display:flex;gap:8px;align-items:center}.composer-close{width:30px;height:30px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;flex:none}.composer-close:hover{border-color:var(--accent);color:var(--accent)}.composer-body{flex:1;overflow:hidden;display:grid;grid-template-columns:1.4fr 1fr;min-height:0}.composer-editor{padding:22px 28px;overflow-y:auto;border-right:1px solid var(--border)}.composer-preview{padding:22px 24px;overflow-y:auto;background:var(--surface-2)}.composer-section{margin-bottom:22px}.composer-label{font-family:var(--font-display);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}.media-strip{display:flex;gap:8px;flex-wrap:wrap}.media-item{width:76px;height:76px;border-radius:8px;position:relative;flex:none;display:flex;align-items:center;justify-content:center;color:var(--muted)}.media-item.photo{background:linear-gradient(135deg,var(--border),var(--surface))}.media-item.video{background:linear-gradient(135deg,var(--ink),var(--surface-2));color:var(--paper)}.media-item svg{width:20px;height:20px}.media-remove{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;background:var(--err);color:#fff;border:2px solid var(--surface);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:10px;line-height:1}.media-add{width:76px;height:76px;border-radius:8px;border:1px dashed var(--border);background:transparent;color:var(--muted);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:10.5px;font-family:inherit}.media-add:hover{border-color:var(--accent);color:var(--accent)}.media-add svg{width:18px;height:18px}.media-hint{font-size:11px;color:var(--muted);margin-top:8px}.composer-toolbar{display:flex;gap:4px;margin-bottom:6px}.composer-toolbar-btn{width:28px;height:28px;border-radius:var(--radius-s);border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex:none}.composer-toolbar-btn:hover{border-color:var(--accent);color:var(--accent)}.composer-toolbar-btn:disabled{opacity:.4;cursor:default;pointer-events:none}.composer-toolbar-btn svg{width:15px;height:15px}.composer-textarea{width:100%;min-height:170px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);color:var(--ink);font-family:var(--font-body);font-size:13.5px;line-height:1.5;resize:vertical}.composer-textarea:focus{outline:none;border-color:var(--accent)}.composer-charcount{font-size:11px;color:var(--muted);margin-top:4px;text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.ai-generate-panel{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);padding:10px;margin-bottom:8px}.ai-generate-prompt{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:13px;line-height:1.5;resize:vertical;margin-bottom:8px}.ai-generate-prompt:focus{outline:none;border-color:var(--accent)}.ai-generate-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ai-rewrite-quick{margin-bottom:8px}.ai-generate-controls select{padding:6px 8px;font-size:12.5px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--paper);color:var(--ink);font-family:var(--font-body)}.ai-generate-own-key{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);cursor:pointer}.ai-progress{margin:10px 0 2px}.ai-progress-bar{position:relative;height:3px;border-radius:2px;background:var(--border);overflow:hidden}.ai-progress-bar-fill{position:absolute;top:0;bottom:0;left:0;width:0;background:var(--accent);border-radius:2px;transition:width .45s ease}.ai-progress-bar.indeterminate .ai-progress-bar-fill{width:38%;animation:ai-progress-slide 1.25s ease-in-out infinite}@keyframes ai-progress-slide{0%{left:-38%}to{left:100%}}.ai-progress-meta{display:flex;flex-wrap:wrap;gap:2px 10px;margin-top:6px;font-size:12px}.ai-progress-label{color:var(--ink)}.ai-progress-hint{color:var(--muted)}@media (prefers-reduced-motion: reduce){.ai-progress-bar.indeterminate .ai-progress-bar-fill{left:0;width:100%;opacity:.35}}.content-plan-list{display:flex;flex-direction:column;gap:12px;margin-top:16px;max-width:640px}.content-plan-item{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);padding:12px}.content-plan-item-checkbox{margin-top:12px;flex:none}.content-plan-item-body{flex:1;display:flex;flex-direction:column;gap:8px}.content-plan-item-body .ai-generate-prompt{margin-bottom:0}.content-plan-topic-row{display:flex;gap:8px;margin-bottom:8px}.content-plan-topic-row input[type=text]{flex:1;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--paper);color:var(--ink);font-family:var(--font-body);min-width:0}.content-plan-topic-row input[type=text]:focus{outline:none;border-color:var(--accent)}.content-plan-topic-row .tag-input{flex:0 0 160px}.content-plan-topic-remove{flex:none;align-self:flex-start;margin-top:12px}.content-plan-tag-badge{display:inline-block;font-size:10.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--tag-color);background:color-mix(in srgb,var(--tag-color) 16%,transparent);border-radius:3px;padding:2px 6px;margin-bottom:6px}.tag-color-dot{width:10px;height:10px;border-radius:50%;flex:none;align-self:center}.channel-picker{display:flex;flex-wrap:wrap;gap:8px}.channel-chip{display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:20px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:12.5px;font-family:inherit}.channel-chip:hover{border-color:var(--accent)}.channel-chip.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.channel-chip.disabled{opacity:.5;cursor:not-allowed}.schedule-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.schedule-fields{display:flex;gap:10px}.schedule-fields input{padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);color:var(--ink);font-family:var(--font-mono)}.schedule-fields input:focus{outline:none;border-color:var(--accent)}.schedule-fields input:disabled{opacity:.5}.preview-card{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);padding:12px 14px;margin-bottom:12px}.preview-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:12.5px;font-weight:600}.preview-media{display:flex;gap:4px;margin-bottom:8px}.preview-media .media-item{width:44px;height:44px;border-radius:6px}.preview-media .media-item svg{width:14px;height:14px}.preview-caption{font-size:12.5px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.preview-warn{display:flex;gap:6px;align-items:flex-start;margin-top:9px;padding:8px 10px;border-radius:var(--radius-s);background:color-mix(in srgb,var(--accent) 12%,transparent);font-size:11.5px;color:var(--accent-ink);line-height:1.5}.preview-warn svg{width:14px;height:14px;flex:none;margin-top:1px}.preview-empty{text-align:center;padding:40px 10px;color:var(--muted);font-size:12.5px}@media (max-width:860px){.composer-body{grid-template-columns:1fr}.composer-editor{border-right:none;border-bottom:1px solid var(--border)}}.brand-mark{width:26px;height:26px;border-radius:6px;background:var(--accent);position:relative;flex:none}.brand-mark:after{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:1.5px solid var(--surface);border-radius:2px}.brand-name{font-family:var(--font-display);font-weight:700;font-size:19px;letter-spacing:.01em}.project-switcher{position:relative}.project-btn{flex:1;min-width:0;display:flex;align-items:center;gap:9px;padding:8px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--ink);text-align:left}.project-btn:hover{border-color:var(--accent)}.project-avatar{width:26px;height:26px;border-radius:6px;background:var(--surface-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:11px;flex:none}.project-btn-text{flex:1;min-width:0}.project-btn-name{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.project-btn-sub{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.chev{width:14px;height:14px;flex:none;color:var(--muted);transition:transform .15s ease}.project-switcher.open .chev{transform:rotate(180deg)}.project-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:0 10px 26px #0a0c0d29;padding:5px;z-index:15}.project-item{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--radius-s);cursor:pointer}.project-item:hover,.project-item.current{background:var(--surface-2)}.project-item-name{flex:1;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-item-dots{display:flex;gap:3px;flex:none}.project-new{display:flex;align-items:center;gap:7px;padding:7px 8px;border-radius:var(--radius-s);cursor:pointer;color:var(--accent);font-size:12.5px;font-weight:600;border-top:1px solid var(--border);margin-top:3px}.project-new:hover{background:var(--surface-2)}.project-new svg{width:14px;height:14px;flex:none}.nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-s);color:var(--muted);cursor:pointer;border:1px solid transparent;font-size:13.5px;text-decoration:none}.nav-item svg{width:16px;height:16px;flex:none}.nav-item.active{background:var(--surface);color:var(--ink);border-color:var(--border);font-weight:600}.nav-item:not(.active):hover{color:var(--ink)}.legend{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--border)}.legend-title{font-family:var(--font-display);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.legend-row{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.workspace{display:flex;align-items:center;gap:10px;padding-top:16px;border-top:1px solid var(--border);cursor:pointer}.workspace:hover .workspace-name{color:var(--accent)}.workspace-avatar{width:28px;height:28px;border-radius:50%;background:var(--surface-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:12px;flex:none}.workspace-name{font-size:12.5px;font-weight:600}.workspace-plan{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.main{padding:22px 28px 40px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;gap:16px;flex-wrap:wrap}.month-nav{display:flex;align-items:center;gap:10px}.month-btn{width:28px;height:28px;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:15px}.month-btn:hover{border-color:var(--accent);color:var(--accent)}.month-label{font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:.01em;min-width:230px}.today-btn{font-size:12px;padding:6px 10px;border-radius:var(--radius-s);border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer}.today-btn:hover{color:var(--accent);border-color:var(--accent)}.view-toggle{display:flex;gap:2px;border:1px solid var(--border);border-radius:var(--radius-s);padding:2px;background:var(--surface);margin-left:4px}.view-toggle button{padding:5px 10px;font-size:12px;border:none;background:transparent;color:var(--muted);cursor:pointer;border-radius:2px;font-family:inherit}.view-toggle button.active{background:var(--surface-2);color:var(--accent);font-weight:600}.view-toggle button:not(.active):hover{color:var(--ink)}.status-legend{display:flex;gap:14px;flex-wrap:wrap}.status-legend .item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.status-swatch{width:9px;height:9px;border-radius:3px;flex:none}.scope-note{font-size:12px;color:var(--muted);margin:10px 0 16px}.weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.weekdays div{font-family:var(--font-display);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:6px 8px}.weekdays div.weekend{color:var(--accent-ink)}.wd-date{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink);margin-left:4px}.grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:112px;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius-m);overflow:hidden}.grid.week{grid-auto-rows:min(560px,calc(100vh - 300px))}.grid.week .cell{overflow-y:auto}.grid.week .chips{overflow:visible}.cell{background:var(--surface);padding:6px 6px 8px;display:flex;flex-direction:column;gap:4px;cursor:pointer;position:relative;min-width:0}.cell.out{background:var(--paper);color:var(--muted)}.cell:hover{background:var(--surface-2)}.cell.drop-target{outline:2px dashed var(--accent);outline-offset:-2px}.cell-date{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--muted);align-self:flex-end}.cell.today .cell-date{color:var(--paper);background:var(--accent);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;align-self:flex-end}.cell-weekday{display:none}.chips{display:flex;flex-direction:column;gap:3px;overflow:hidden}.chip{display:flex;align-items:center;gap:4px;padding:2px 6px 2px 4px;border-radius:4px;background:var(--surface-2);border:1px solid var(--border);border-left:3px solid transparent;font-size:11px;cursor:grab;white-space:nowrap;overflow:hidden}.chip[draggable=false]{cursor:default}.chip:hover{border-color:var(--accent)}.chip.dragging{opacity:.4}.chip-time{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--muted);flex:none}.chip-tag{font-size:9.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--tag-color, var(--accent-ink));background:color-mix(in srgb,var(--tag-color, var(--accent)) 14%,transparent);border-radius:3px;padding:1px 4px;flex:none}.chip-dots{display:flex;gap:2px;flex:none}.dot{width:7px;height:7px;border-radius:50%;flex:none}.dot.vk{background:var(--vk)}.dot.tg{background:var(--tg)}.dot.max{background:var(--max)}.dot.tt{background:conic-gradient(var(--tt-a) 0turn .5turn,var(--tt-b) .5turn 1turn)}.dot.okru{background:var(--okru)}.dot.dzen{background:var(--dzen)}.dot.vkvideo{background:var(--vkvideo)}.chip-caption{overflow:hidden;text-overflow:ellipsis}.chip-status{width:6px;height:6px;border-radius:50%;flex:none;margin-left:auto}.chip-status.pending{background:var(--pending)}.chip-status.publishing{background:var(--busy);animation:pulse 1.4s infinite}.chip-status.published{background:var(--ok)}.chip-status.error{background:var(--err)}.chip-lock{flex:none;color:var(--muted);display:flex}.chip-lock svg{width:10px;height:10px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.more{font-size:11px;color:var(--muted);padding-left:4px;cursor:pointer}.media-icon{width:12px;height:12px;flex:none;color:var(--muted);display:flex}.media-icon svg{width:100%;height:100%}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f111252;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:20}.overlay.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;height:100vh;height:100dvh;width:min(400px,92vw);background:var(--surface);border-left:1px solid var(--border);transform:translate(100%);transition:transform .22s ease;z-index:21;display:flex;flex-direction:column}.drawer.open{transform:translate(0)}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border);flex:none}.drawer-title{font-family:var(--font-display);font-weight:700;font-size:16px;text-transform:capitalize}.drawer-close{width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--muted)}.drawer-close:hover{border-color:var(--accent);color:var(--accent)}.drawer-body{padding:14px 18px;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:10px;flex:1}.post-card{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface-2);overflow:hidden}.post-card-head{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer}.post-thumb{width:34px;height:34px;border-radius:6px;flex:none;display:flex;align-items:center;justify-content:center}.post-thumb svg{width:16px;height:16px}.post-thumb--photo{background:linear-gradient(135deg,var(--border),var(--surface));color:var(--muted)}.post-thumb--video{background:linear-gradient(135deg,var(--ink),var(--surface-2));color:var(--paper)}.post-thumb--none{background:var(--surface);border:1px dashed var(--border);color:var(--muted)}.post-head-text{flex:1;min-width:0}.post-caption-preview{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-meta{font-size:11px;color:var(--muted);display:flex;gap:6px;align-items:center;margin-top:2px;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.post-card-body{max-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;transition:max-height .2s ease}.post-card.expanded .post-card-body{max-height:4000px}.post-card-body-in{padding:0 12px 12px}.post-full-caption{font-size:13px;margin:0 0 10px}.target-row{display:flex;align-items:flex-start;flex-wrap:wrap;gap:6px 8px;padding:8px 0;border-top:1px solid var(--border)}.target-row:first-child{border-top:none}.target-info{flex:1 1 140px;min-width:0}.target-name{font-size:12.5px;font-weight:600}.target-error{font-size:11px;color:var(--err);margin-top:2px}.pill{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:20px;font-family:var(--font-display);flex:none}.pill.pending{background:color-mix(in srgb,var(--pending) 18%,transparent);color:var(--pending)}.pill.publishing{background:color-mix(in srgb,var(--busy) 18%,transparent);color:var(--busy)}.pill.published{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}.pill.error{background:color-mix(in srgb,var(--err) 18%,transparent);color:var(--err)}.retry-btn{font-size:11px;border:1px solid var(--border);background:transparent;color:var(--ink);border-radius:var(--radius-s);padding:3px 8px;cursor:pointer;flex:none}.retry-btn:hover{border-color:var(--accent);color:var(--accent)}.retry-btn:disabled{opacity:.5;cursor:default}.retry-btn.danger:hover{border-color:var(--err);color:var(--err)}.target-time{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11.5px;color:var(--muted);flex:none}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%) translateY(8px);background:var(--ink);color:var(--paper);font-size:12.5px;padding:9px 16px;border-radius:20px;opacity:0;transition:all .2s ease;pointer-events:none;z-index:70}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.empty-hint{font-size:12.5px;color:var(--muted);text-align:center;padding:30px 10px;line-height:1.6}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.btn-primary{font-family:var(--font-body);font-size:13px;font-weight:600;padding:9px 16px;border-radius:var(--radius-s);border:1px solid var(--accent);background:var(--accent);color:var(--surface);cursor:pointer}.btn-primary:hover{filter:brightness(1.06)}.btn-primary:disabled{opacity:.5;cursor:default;filter:none}.ch-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.ch-title{font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:.01em}.ch-subtitle{font-size:12.5px;color:var(--muted);margin-top:2px}.ch-list{display:flex;flex-direction:column;gap:8px;max-width:640px}.ch-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface)}.ch-avatar{width:36px;height:36px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:12px;flex:none;position:relative}.ch-avatar .dot{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;border:2px solid var(--surface)}.ch-info{flex:1;min-width:0}.ch-name{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-handle{font-family:var(--font-mono);font-size:11.5px;color:var(--muted);font-weight:400;margin-left:6px}.ch-platform{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:1px}.ch-id{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.ch-id:hover{color:var(--accent)}.ch-status{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex:none}.pill.restricted{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-ink)}.ch-note{font-size:10.5px;color:var(--muted);max-width:170px;text-align:right;line-height:1.4}.ch-menu{position:relative;flex:none}.ch-menu-btn{width:26px;height:26px;border-radius:var(--radius-s);border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;font-size:16px;line-height:1}.ch-menu-btn:hover{border-color:var(--border);color:var(--ink)}.ch-menu-panel{position:absolute;top:calc(100% + 4px);right:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);box-shadow:0 8px 22px #0a0c0d24;padding:4px;min-width:150px;z-index:12}.ch-menu-panel button{display:block;width:100%;text-align:left;padding:7px 9px;font-size:12.5px;border:none;background:transparent;border-radius:2px;cursor:pointer;color:var(--ink)}.ch-menu-panel button:hover{background:var(--surface-2)}.ch-menu-panel button.danger{color:var(--err)}.platform-picker-trigger{margin-top:14px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f111266;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:40}.modal-overlay.open{opacity:1;pointer-events:auto}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-48%) scale(.98);width:min(420px,92vw);max-height:86vh;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:0 24px 60px #0a0c0d3d;opacity:0;pointer-events:none;transition:all .18s ease;z-index:41;display:flex;flex-direction:column}.modal.wide{width:min(480px,92vw)}.modal.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.modal-head{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border);flex:none}.modal-back{width:24px;height:24px;border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:15px;flex:none}.modal-back:hover{color:var(--accent)}.modal-title{font-family:var(--font-display);font-weight:700;font-size:15px;flex:1}.modal-close{width:24px;height:24px;border-radius:50%;border:1px solid var(--border);background:transparent;cursor:pointer;color:var(--muted);flex:none}.modal-close:hover{border-color:var(--accent);color:var(--accent)}.modal-body{padding:16px;overflow-y:auto}.platform-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.platform-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 10px;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface-2);cursor:pointer;text-align:center}.platform-tile:hover{border-color:var(--accent)}.platform-tile .dot{width:16px;height:16px}.platform-tile-name{font-size:12.5px;font-weight:600}.platform-tile-note{font-size:10px;color:var(--accent-ink);line-height:1.35}.platform-tile.soon{opacity:.65}.oauth-loading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:30px 10px}.spinner{width:26px;height:26px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.oauth-loading-text{font-size:12.5px;color:var(--muted)}.bot-steps{margin:0 0 14px;padding-left:18px;font-size:12px;color:var(--muted);line-height:1.6}.bot-form label{display:block;font-size:12px;font-weight:600;margin-bottom:12px}.bot-form input{display:block;width:100%;margin-top:5px;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--paper);color:var(--ink);font-family:var(--font-mono)}.bot-form input:focus{outline:none;border-color:var(--accent)}.bot-form select{display:block;width:100%;margin-top:5px;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);color:var(--ink);font-family:var(--font-body)}.bot-form select:focus{outline:none;border-color:var(--accent)}.verify-status{font-size:12px;color:var(--muted);margin-top:8px;min-height:16px}.verify-status.err{color:var(--err)}.field-hint{display:block;margin-top:4px;font-size:11px;font-weight:400;color:var(--muted);line-height:1.5;font-family:var(--font-body)}.connect-guide{margin-bottom:14px}.connect-guide .bot-steps{margin-bottom:8px}.connect-guide-details{border:1px solid var(--border);border-radius:var(--radius-s);margin-bottom:8px;background:var(--surface)}.connect-guide-details>summary{cursor:pointer;padding:8px 12px;font-size:12px;font-weight:600;color:var(--accent-ink);list-style:none}.connect-guide-details>summary::-webkit-details-marker{display:none}.connect-guide-details>summary:before{content:"▸ ";color:var(--muted)}.connect-guide-details[open]>summary:before{content:"▾ "}.connect-guide-details .guide-body{padding:4px 12px 12px}.connect-guide-link{display:inline-block;font-size:12px;color:var(--accent)}.guide-section{margin:12px 0}.guide-section h4{margin:0 0 6px;font-size:13px;font-weight:700;color:var(--ink)}.guide-section ol{margin:0;padding-left:18px;font-size:12.5px;color:var(--ink);line-height:1.65}.guide-pitfalls{margin-top:14px;padding:10px 12px;border-radius:var(--radius-s);background:color-mix(in srgb,var(--err) 8%,transparent)}.guide-pitfalls h4{margin:0 0 6px;font-size:12.5px;font-weight:700;color:var(--err)}.guide-pitfalls ul{margin:0;padding-left:18px;font-size:12px;color:var(--ink);line-height:1.6}.guide-shot{margin:10px 0 0;max-width:640px}.guide-shot img{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:var(--radius-s)}.guide-shot-cap{display:block;margin-top:5px;font-size:11.5px;color:var(--muted);line-height:1.5}.guide-shot-missing{display:flex;flex-direction:column;gap:4px;align-items:flex-start;justify-content:center;min-height:96px;padding:14px;border:1px dashed var(--border);border-radius:var(--radius-s);background:var(--surface)}.guide-shot-missing-label{font-size:11.5px;font-weight:600;color:var(--muted)}.project-btn-row{display:flex;gap:6px}.project-settings-btn{width:34px;flex:none;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.project-settings-btn:hover{border-color:var(--accent);color:var(--accent)}.project-settings-btn svg{width:15px;height:15px}.settings-section{padding-top:16px;margin-top:16px;border-top:1px solid var(--border)}.settings-section:first-child{padding-top:0;margin-top:0;border-top:none}.settings-section-title{font-family:var(--font-display);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}.settings-section-title.danger{color:var(--err)}.tag-badge-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.tag-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 6px 4px 10px;border-radius:14px;font-size:12px;background:color-mix(in srgb,var(--tag-color) 16%,transparent);color:var(--tag-color);border:1px solid color-mix(in srgb,var(--tag-color) 40%,transparent)}.tag-badge button{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:none;background:transparent;color:inherit;cursor:pointer;font-size:13px;line-height:1;padding:0}.tag-badge button:hover{background:color-mix(in srgb,var(--tag-color) 25%,transparent)}.tag-add-row{display:flex;gap:8px;align-items:center;margin-bottom:10px;max-width:400px}.tag-add-row input{flex:1;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--paper);color:var(--ink);font-family:var(--font-body)}.tag-add-row input:focus{outline:none;border-color:var(--accent)}.member-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.member-name{font-size:13px;font-weight:600}.member-role{font-size:11px;color:var(--muted)}.settings-note{font-size:12px;color:var(--muted);line-height:1.5}.danger-box{border:1px solid color-mix(in srgb,var(--err) 35%,var(--border));background:color-mix(in srgb,var(--err) 6%,transparent);border-radius:var(--radius-s);padding:12px 14px}.danger-box p{font-size:12.5px;line-height:1.6;margin:0 0 12px}.danger-box label{display:block;font-size:12px;font-weight:600;margin-bottom:10px}.danger-box input{display:block;width:100%;margin-top:5px;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);color:var(--ink);font-family:var(--font-mono)}.danger-box input:focus{outline:none;border-color:var(--err)}.btn-danger:disabled{opacity:.45;cursor:default;filter:none}.onboarding{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--paper)}.onboarding-card{width:min(400px,100%);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:0 20px 50px #0a0c0d1a;padding:32px 30px}.onboarding-card .brand{margin-bottom:26px}.onboarding-title{font-family:var(--font-display);font-weight:700;font-size:20px;margin-bottom:6px}.onboarding-subtitle{font-size:12.5px;color:var(--muted);margin-bottom:22px;line-height:1.5}.onboarding-skip{display:block;text-align:center;margin-top:16px;font-size:12.5px;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px;background:none;border:none;width:100%;font-family:inherit}.onboarding-skip:hover{color:var(--accent)}.onboarding-foot{text-align:center;margin-top:18px;font-size:12px;color:var(--muted)}.onboarding-foot a{color:var(--accent);text-decoration:none}.onboarding-foot a:hover{text-decoration:underline}.consent-row{display:flex;align-items:flex-start;gap:8px;margin:-4px 0 16px;cursor:pointer}.consent-row input[type=checkbox]{margin-top:2px;flex:none;width:15px;height:15px;accent-color:var(--accent)}.consent-row span{font-size:11.5px;color:var(--muted);line-height:1.5}.consent-row a{color:var(--accent);text-decoration:none}.consent-row a:hover{text-decoration:underline}.confirm-text{font-size:13px;line-height:1.6;margin:0 0 16px}.confirm-actions{display:flex;gap:8px;justify-content:flex-end}.btn-ghost{font-size:12.5px;padding:8px 14px;border-radius:var(--radius-s);border:1px solid var(--border);background:transparent;color:var(--ink);cursor:pointer}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.btn-danger{font-size:12.5px;padding:8px 14px;border-radius:var(--radius-s);border:1px solid var(--err);background:var(--err);color:#fff;cursor:pointer}.btn-danger:hover{filter:brightness(1.08)}.key-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface)}.key-icon{width:36px;height:36px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);flex:none}.key-icon svg{width:16px;height:16px}.key-info{flex:1;min-width:0}.key-name{font-size:13.5px;font-weight:600}.key-value{font-family:var(--font-mono);font-size:12px;color:var(--muted);margin-top:2px}.key-meta{font-size:11px;color:var(--muted);margin-top:3px}.key-meta.unused{color:var(--accent-ink)}.key-revoke{flex:none;font-size:12.5px;padding:7px 12px;border-radius:var(--radius-s);border:1px solid var(--border);background:transparent;color:var(--err);cursor:pointer}.key-revoke:hover{border-color:var(--err);background:color-mix(in srgb,var(--err) 10%,transparent)}.key-reveal-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px;font-family:var(--font-display);font-weight:700}.key-reveal-value{font-family:var(--font-mono);font-size:13px;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-s);padding:10px 12px;word-break:break-all;margin-bottom:12px;cursor:text}.key-reveal-warn{font-size:11.5px;color:var(--err);margin:10px 0 14px;line-height:1.5}.snippet-block{margin-top:24px;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);padding:14px 16px;max-width:640px}.snippet-title{font-family:var(--font-display);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}.snippet-code{margin:0 0 12px;padding:12px;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-s);overflow-x:auto;font-family:var(--font-mono);font-size:12px;line-height:1.6;color:var(--ink);white-space:pre}.snippet-hint{margin-top:12px;font-size:12px;line-height:1.6;color:var(--muted)}.snippet-hint code{font-family:var(--font-mono);font-size:11.5px;background:var(--paper);border:1px solid var(--border);border-radius:4px;padding:1px 5px}@media (max-width:760px){.app{grid-template-columns:1fr;align-content:start}.mobile-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface);position:sticky;top:0;z-index:5}.sidebar{position:fixed;top:0;left:0;height:100vh;height:100dvh;width:min(280px,84vw);transform:translate(-100%);transition:transform .22s ease;z-index:21;background:var(--surface);overflow-y:auto;-webkit-overflow-scrolling:touch}.sidebar.mobile-open{transform:translate(0)}.main{padding:16px 16px 32px}.weekdays{display:none}.grid{grid-template-columns:1fr;grid-auto-rows:auto}.grid .cell.out{display:none}.cell{min-height:52px}.grid:not(.week) .chips{overflow:visible}.topbar{gap:10px}.cell-date{display:flex;align-items:center;gap:6px;align-self:flex-start;font-size:13px}.cell-weekday{display:inline;text-transform:uppercase;font-weight:700;font-size:11px;letter-spacing:.04em;color:var(--muted)}.cell.today .cell-date{width:auto;height:auto;border-radius:6px;padding:2px 9px;align-self:flex-start}.cell.today .cell-weekday{color:var(--paper)}.month-label{min-width:0;font-size:15px;letter-spacing:0}}.field{display:block;font-size:12px;font-weight:600;margin-bottom:14px}.field input,.field select{display:block;width:100%;margin-top:5px;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--paper);color:var(--ink);font-family:var(--font-body)}.field input:focus,.field select:focus{outline:none;border-color:var(--accent)}.field textarea{display:block;width:100%;margin-top:5px;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-s);background:var(--paper);color:var(--ink);font-family:var(--font-body);resize:vertical;min-height:56px}.field textarea:focus{outline:none;border-color:var(--accent)}.form-error{font-size:12px;color:var(--err);margin:-6px 0 14px;line-height:1.4}.password-field{position:relative}.password-field input{padding-right:36px}.password-toggle{position:absolute;right:4px;top:5px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:0;cursor:pointer;color:var(--muted)}.password-toggle:hover{color:var(--ink)}.password-toggle svg{width:18px;height:18px}.legal-page{max-width:760px;margin:0 auto;padding:48px 24px 80px;line-height:1.6;color:var(--ink)}.legal-header{margin-bottom:32px}.legal-page h1{font-family:var(--font-display);font-size:32px;margin:0 0 4px}.legal-page h2{font-family:var(--font-display);font-size:20px;margin:32px 0 10px}.legal-page p,.legal-page li{font-size:14.5px;color:var(--ink)}.legal-page ul{padding-left:20px}.legal-updated{color:var(--muted);font-size:13px;margin-bottom:24px}.legal-page a{color:var(--accent)}.help-page .help-toc{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 28px}.help-page .help-toc a{padding:5px 12px;border:1px solid var(--border);border-radius:999px;font-size:13px;text-decoration:none}.help-page .help-platform{scroll-margin-top:24px;padding-top:8px}.help-page .help-platform+.help-platform{border-top:1px solid var(--border);margin-top:28px}.help-page .guide-section ol{font-size:14px}.help-page .guide-section h4{font-size:15px}.verify-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:var(--radius-s);padding:10px 16px;margin-bottom:20px;font-size:13px;color:var(--accent-ink)}.verify-banner .btn-ghost{flex-shrink:0;padding:6px 14px;font-size:12.5px}.verify-banner+.verify-banner{margin-top:-12px}.plan-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.plan-name{font-family:var(--font-display);font-size:18px;font-weight:700}.usage-list{display:flex;flex-direction:column;gap:12px;max-width:420px}.usage-meter-head{display:flex;justify-content:space-between;font-size:12.5px;margin-bottom:4px}.usage-meter-head .usage-near{color:var(--accent-ink);font-weight:600}.usage-meter-head .usage-over{color:var(--err);font-weight:600}.usage-track{height:6px;border-radius:3px;background:var(--border);overflow:hidden}.usage-fill{height:100%;border-radius:3px;background:var(--accent);transition:width .3s ease}.usage-fill.near{background:var(--accent)}.usage-fill.over{background:var(--err)}.plan-lock{border:1px dashed var(--border);border-radius:var(--radius-s);padding:14px 16px;font-size:13px;color:var(--muted);background:color-mix(in srgb,var(--accent) 5%,transparent)}.plan-lock strong{color:var(--ink)}.limit-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;background:color-mix(in srgb,var(--err) 12%,transparent);border-radius:var(--radius-s);padding:10px 16px;margin-bottom:20px;font-size:13px;color:var(--err)}.limit-banner a{color:inherit;font-weight:600}.dormant-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--paper);display:flex;align-items:center;justify-content:center;padding:24px}.dormant-card{max-width:420px;text-align:center;display:flex;flex-direction:column;gap:14px}.dormant-card h2{margin:0;font-size:20px}.dormant-card p{margin:0;font-size:14px;color:var(--muted);line-height:1.5}.dormant-card .btn-primary{align-self:center;margin-top:4px}.invite-banner{background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:var(--radius-s);padding:12px 16px;margin-bottom:18px;font-size:13px;line-height:1.5;color:var(--accent-ink)}.landing{min-height:100vh;background:var(--paper);color:var(--ink)}.landing-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 40px;max-width:1120px;margin:0 auto;flex-wrap:wrap}.landing-header-actions{display:flex;align-items:center;gap:10px}.landing-hero{max-width:1120px;margin:0 auto;padding:56px 40px 20px}.landing-hero--text{text-align:center}.landing-hero--text .landing-subtitle{margin-left:auto;margin-right:auto}.landing-hero--text .landing-hero-cta{justify-content:center}.landing-title{font-family:var(--font-display);font-weight:700;font-size:38px;line-height:1.15;letter-spacing:.005em;margin:0 0 16px}.landing-subtitle{font-size:15px;line-height:1.6;color:var(--muted);margin:0 0 26px;max-width:560px}.landing-hero-cta{display:flex;align-items:center;gap:12px}.landing-hero-cta .btn-primary,.landing-hero-cta .btn-ghost{padding:11px 20px;font-size:13.5px}.landing-shots{max-width:1120px;margin:0 auto;padding:20px 40px 50px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.landing-shot{position:relative;display:block;text-align:left;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);overflow:hidden;cursor:zoom-in;padding:0;font-family:inherit;box-shadow:0 14px 34px #0a0c0d14}.landing-shot:hover{border-color:var(--accent)}.landing-shot img{display:block;width:100%;height:190px;object-fit:contain;object-position:center;background:var(--surface-2);padding:6px}.landing-shot-zoom-hint{position:absolute;top:8px;right:8px;background:#0f1112b8;color:#fff;font-size:10.5px;font-weight:600;padding:4px 8px;border-radius:12px;pointer-events:none}.landing-shot-label{padding:12px 14px;border-top:1px solid var(--border)}.landing-shot-title{font-family:var(--font-display);font-weight:700;font-size:13px;margin-bottom:4px}.landing-shot-desc{font-size:11.5px;color:var(--muted);line-height:1.5}.shot-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f111299;z-index:60;display:flex;align-items:center;justify-content:center;padding:28px}.shot-lightbox{position:relative;width:min(1240px,94vw);max-height:90vh;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);overflow:hidden;box-shadow:0 24px 60px #0a0c0d4d;display:flex;flex-direction:column}.shot-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);font-family:var(--font-display);font-weight:700;font-size:14px;flex:none}.shot-lightbox-close{width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:transparent;cursor:pointer;color:var(--muted);flex:none}.shot-lightbox-close:hover{border-color:var(--accent);color:var(--accent)}.shot-lightbox img{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain;background:var(--paper)}.landing-platforms{max-width:1120px;margin:0 auto;padding:0 40px 50px;text-align:center}.landing-platforms-row{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.platform-badge{display:flex;align-items:center;gap:7px;padding:7px 14px;border:1px solid var(--border);border-radius:20px;background:var(--surface);font-size:12.5px;font-weight:600}.landing-platforms-soon{font-size:12px;color:var(--muted)}.platform-badge.soon{opacity:.75;border-style:dashed}.landing-platforms-row--soon{margin-bottom:8px}.landing-features{max-width:1120px;margin:0 auto;padding:0 40px 60px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.landing-feature-card{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);padding:20px 18px}.landing-feature-card.soon{border-style:dashed;color:var(--muted)}.landing-feature-title{font-family:var(--font-display);font-weight:700;font-size:14.5px;margin-bottom:8px}.landing-feature-desc{font-size:12.5px;color:var(--muted);line-height:1.55}.landing-feature-card.soon .landing-feature-title{color:var(--muted)}.landing-steps{max-width:1120px;margin:0 auto;padding:0 40px 60px;text-align:center}.landing-steps-title{font-family:var(--font-display);font-weight:700;font-size:22px;margin-bottom:22px}.landing-steps-list{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;list-style:none;counter-reset:step;padding:0;max-width:760px;margin:0 auto}.landing-steps-list li{counter-increment:step;flex:1;min-width:160px;font-size:13px;font-weight:600;position:relative;padding-top:44px}.landing-steps-list li:before{content:counter(step);position:absolute;top:0;left:50%;transform:translate(-50%);width:32px;height:32px;border-radius:50%;background:var(--accent);color:var(--surface);font-family:var(--font-display);font-weight:700;display:flex;align-items:center;justify-content:center}.landing-cta-block{text-align:center;padding:60px 40px;background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.landing-cta-title{font-family:var(--font-display);font-weight:700;font-size:24px;margin-bottom:18px}.pricing-cards{max-width:1120px;margin:0 auto;padding:24px 40px 8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;align-items:start}.plan-card{position:relative;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);padding:24px 20px;display:flex;flex-direction:column;gap:10px}.plan-card--featured{border-color:var(--accent);box-shadow:0 6px 22px #b8720f24}.plan-card-badge{position:absolute;top:-11px;left:20px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px}.plan-card-name{font-family:var(--font-display);font-weight:700;font-size:20px}.plan-card-tagline{font-size:12.5px;color:var(--muted);min-height:2.2em}.plan-card-price{display:flex;align-items:baseline;gap:6px;margin-top:4px}.plan-card-amount{font-family:var(--font-display);font-weight:700;font-size:26px}.plan-card-period{font-size:13px;color:var(--muted)}.plan-card-note{font-size:12px;color:var(--muted);margin-top:-4px}.plan-card-list{list-style:none;padding:0;margin:6px 0 14px;display:flex;flex-direction:column;gap:6px;font-size:13px;flex:1}.plan-card-list li{padding-left:18px;position:relative}.plan-card-list li:before{content:"✓";position:absolute;left:0;color:var(--accent)}.plan-card .btn-primary,.plan-card .btn-ghost{text-align:center;text-decoration:none}.pricing-payment-note{max-width:1120px;margin:0 auto;padding:8px 40px 0;font-size:12.5px;color:var(--muted);text-align:center}.pricing-packs,.pricing-compare,.pricing-faq{max-width:1120px;margin:0 auto;padding:40px 40px 0}.pricing-packs h2,.pricing-compare h2,.pricing-faq h2{font-family:var(--font-display);font-weight:700;font-size:20px;margin:0 0 10px}.pricing-packs-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:14px}.pack-card{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);padding:18px;text-align:center}.pack-card-credits{font-family:var(--font-display);font-weight:700;font-size:16px}.pack-card-price{font-size:22px;font-weight:700;margin:6px 0 2px}.pack-card-per{font-size:12px;color:var(--muted)}.pricing-compare-scroll{overflow-x:auto}.pricing-compare .data-table{min-width:640px}.pricing-compare .data-table td:not(:first-child),.pricing-compare .data-table th:not(:first-child){text-align:center}.checkout-steps{text-align:left;max-width:520px;margin:8px auto 0;padding-left:22px;display:flex;flex-direction:column;gap:10px;font-size:14px;color:var(--ink)}.checkout-steps li{line-height:1.5}.pricing-faq-item{border-top:1px solid var(--border);padding:14px 0}.pricing-faq-q{font-weight:600;margin-bottom:4px}.pricing-faq-a{font-size:13px;color:var(--muted)}@media (max-width:820px){.pricing-cards,.pricing-payment-note,.pricing-packs,.pricing-compare,.pricing-faq{padding-left:20px;padding-right:20px}}.landing-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1120px;margin:0 auto;padding:24px 40px;flex-wrap:wrap}.landing-footer-links{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--muted)}.landing-footer-links a{color:var(--muted);text-decoration:none}.landing-footer-links a:hover{color:var(--accent)}.landing-footer-legal{flex-basis:100%;text-align:center;font-size:11px;color:var(--muted);opacity:.7}@media (max-width:820px){.landing-hero{padding:32px 24px 12px}.landing-header{padding:16px 24px}.landing-platforms,.landing-features,.landing-steps{padding-left:24px;padding-right:24px}.landing-shots{grid-template-columns:1fr;padding-left:16px;padding-right:16px}.landing-shot img{height:230px;padding:4px}.landing-shot-zoom-hint{font-size:11px}.landing-title{font-size:30px}.landing-steps-list{flex-direction:column;align-items:center}}
