:root{--bg:#f4f6f8;--surface:#fff;--ink:#17202a;--ink-soft:#5b6b7c;--accent:#1b6ea8;--accent-soft:#e8f2f9;--ok:#1f8a5b;--warn:#b6741a;--err:#c0392b;--shadow:0 1px 2px #17202a0d, 0 8px 24px #17202a12;--shadow-lift:0 2px 4px #17202a0f, 0 16px 40px #17202a1a;--radius:14px}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:15px/1.55 -apple-system,Segoe UI,Roboto,Inter,sans-serif}.wrap{max-width:1080px;margin:0 auto;padding:32px 20px 80px}header h1{letter-spacing:-.02em;margin:0 0 4px;font-size:24px}header p{color:var(--ink-soft);margin:0 0 28px}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;padding:22px}.field{margin-bottom:18px;display:block}.field>span{margin-bottom:8px;font-size:14px;font-weight:600;display:block}textarea,input[type=datetime-local]{background:var(--bg);width:100%;font:inherit;color:inherit;resize:vertical;border:none;border-radius:10px;outline:2px solid #0000;padding:12px 14px;transition:outline-color .15s}textarea:focus,input[type=datetime-local]:focus{outline-color:var(--accent)}textarea{min-height:170px}.targets{flex-wrap:wrap;gap:12px;display:flex}.target{background:var(--bg);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;align-items:center;gap:10px;padding:12px 18px 12px 14px;transition:background .15s,box-shadow .15s,transform .1s;display:flex}.target:hover:not(.off){box-shadow:var(--shadow)}.target:active:not(.off){transform:translateY(1px)}.target.on{background:var(--accent-soft);box-shadow:var(--shadow)}.target.off{opacity:.5;cursor:not-allowed}.target input{width:18px;height:18px;accent-color:var(--accent);cursor:inherit}.target b{font-weight:600}.target small{color:var(--ink-soft);font-size:12px;display:block}.target small.over{color:var(--err);font-weight:600}.drop{background:var(--bg);text-align:center;color:var(--ink-soft);cursor:pointer;border-radius:12px;padding:20px;transition:background .15s}.drop.hot{background:var(--accent-soft);color:var(--accent)}.files{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.files li{background:var(--bg);border-radius:10px;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex}.files li span.grow{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.files li em{color:var(--ink-soft);font-size:12px;font-style:normal}.files button{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 6px;font-size:18px;line-height:1}.files button:hover{color:var(--err);background:#fff}.actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}button.primary{background:var(--accent);color:#fff;cursor:pointer;box-shadow:var(--shadow);border:none;border-radius:11px;padding:13px 26px;font:600 15px/1 inherit;transition:box-shadow .15s,transform .1s}button.primary:hover:not(:disabled){box-shadow:var(--shadow-lift)}button.primary:active:not(:disabled){transform:translateY(1px)}button.primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}button.ghost{background:var(--bg);color:var(--ink-soft);cursor:pointer;border:none;border-radius:11px;padding:13px 18px;font:500 14px/1 inherit}button.ghost:hover{color:var(--ink)}.result{gap:8px;margin-top:16px;display:grid}.result div{background:var(--bg);border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:14px;display:flex}.dot{border-radius:50%;flex:none;width:8px;height:8px}.dot.ok{background:var(--ok)}.dot.error{background:var(--err)}.result a{color:var(--accent);margin-left:auto;text-decoration:none}.result a:hover{text-decoration:underline}.history h2{margin:0 0 14px;font-size:17px}.post{padding:14px 0}.post+.post{box-shadow:inset 0 1px #17202a0f}.post p{white-space:pre-wrap;margin:0 0 8px}.post .meta{color:var(--ink-soft);flex-wrap:wrap;gap:10px;font-size:13px;display:flex}.badge{background:var(--bg);border-radius:20px;padding:2px 9px;font-size:12px}.badge.ok{color:var(--ok);background:#e7f4ee}.badge.error{color:var(--err);background:#fdeceb}.hint{color:var(--ink-soft);margin:10px 0 0;font-size:13px}.error-box{color:var(--err);background:#fdeceb;border-radius:10px;margin-top:14px;padding:12px 14px;font-size:14px}.login-wrap{place-items:center;min-height:100vh;padding:24px;display:grid}.login{width:100%;max-width:380px}.login h1{margin:0 0 4px;font-size:22px}.login .hint{margin-top:0}.login .field{margin-top:18px}input[type=text],input[type=password]{background:var(--bg);width:100%;font:inherit;color:inherit;border:none;border-radius:10px;outline:2px solid #0000;padding:12px 14px;transition:outline-color .15s}input[type=text]:focus,input[type=password]:focus{outline-color:var(--accent)}button.primary.wide{width:100%;margin-top:8px}button.primary.small,button.ghost.small{padding:8px 14px;font-size:13px}.hint.small{font-size:12px}.top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.top h1{letter-spacing:-.02em;margin:0 0 4px;font-size:24px}.top p{color:var(--ink-soft);margin:0 0 24px}.who{color:var(--ink-soft);align-items:center;gap:10px;font-size:14px;display:flex}.companies{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;display:flex}.chip{background:var(--surface);color:var(--ink-soft);cursor:pointer;box-shadow:var(--shadow);border:none;border-radius:20px;padding:9px 16px;font:500 14px/1 inherit;transition:color .15s,background .15s}.chip:hover{color:var(--ink)}.chip.on{background:var(--accent);color:#fff}.chip.add{box-shadow:none;background:0 0}.chip.add:hover{background:var(--surface);box-shadow:var(--shadow)}.chip-form{align-items:center;gap:8px;display:flex}.chip-form input{background:var(--surface);font:inherit;box-shadow:var(--shadow);border:none;border-radius:20px;outline:none;width:200px;padding:9px 16px}.empty b{margin-bottom:6px;display:block}.empty .hint{margin:0}.section-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-head h2{margin:0;font-size:17px}.channels{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;display:grid}.channel-group{background:var(--bg);border-radius:12px;padding:14px}.channel-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.channel-head b{font-size:15px}.channel-group .hint{margin:4px 0 0}.conn{background:var(--surface);border-radius:9px;align-items:center;gap:8px;margin-top:6px;padding:8px 12px;font-size:14px;display:flex}.link-danger{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.link-danger:hover{color:var(--err)}.vk-form{gap:8px;margin-top:10px;display:grid}.vk-form input{background:var(--surface);font:inherit;border:none;border-radius:9px;outline:none;width:100%;padding:10px 12px}.group-pick{margin-top:8px}.conn.pick{color:var(--ink);cursor:pointer;text-decoration:none}.conn.pick:hover{box-shadow:var(--shadow)}.link-manual{color:var(--ink-soft);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:8px 0 0;font-size:12px}.link-manual:hover{color:var(--accent)}a.ghost.small{text-decoration:none;display:inline-block}.conn.waiting{background:#fff8e8}.conn.waiting em{color:var(--ink-soft);font-size:12px;font-style:normal}.link-adopt{color:var(--accent);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:13px}.link-adopt:hover{text-decoration:underline}button.ghost:disabled{opacity:.6;cursor:default}.post-error{color:var(--err);background:#fdeceb;border-radius:9px;margin:8px 0 0;padding:10px 12px;font-size:13px;line-height:1.45}.post-error b{font-weight:600}.dot.warn{background:var(--warn)}.badge.warn{color:var(--warn);background:#fdf3e2}.post-warning{color:var(--warn);background:#fdf3e2;border-radius:9px;margin:8px 0 0;padding:10px 12px;font-size:13px;line-height:1.45}.post-warning b{font-weight:600}.howto{color:var(--ink-soft);margin-top:12px;font-size:13px}.howto summary{cursor:pointer;color:var(--ink);-webkit-user-select:none;user-select:none;font-weight:600;list-style:none}.howto summary::-webkit-details-marker{display:none}.howto summary:before{content:"▸";color:var(--ink-soft);margin-right:6px;transition:transform .15s;display:inline-block}.howto[open] summary:before{transform:rotate(90deg)}.howto ol{margin:8px 0 0;padding-left:20px;line-height:1.5}.howto li+li{margin-top:4px}.howto .hint{margin:8px 0 0}.hint.done{color:var(--ok)}.who .role{color:var(--accent);font-style:normal}.who button.ghost.active{background:var(--accent-soft);color:var(--accent)}.chip.foreign{background:var(--bg);box-shadow:inset 0 0 0 1px #17202a14}.chip.foreign.on{background:var(--accent);box-shadow:none}.chip-owner{opacity:.7;font-weight:400}.company-delete{margin-left:auto;font-size:13px}.foreign-note{background:var(--accent-soft);color:var(--accent);padding:14px 18px;font-size:14px}.journal-tools{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toggle{color:var(--ink-soft);cursor:pointer;align-items:center;gap:6px;font-size:14px;display:flex}.toggle input{accent-color:var(--accent)}.journal-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.link-company{cursor:pointer;color:var(--ink);background:0 0;border:none;padding:0;font:600 15px/1.3 inherit}.link-company:hover{color:var(--accent);text-decoration:underline}.badge.status-done{color:var(--ok);background:#e7f4ee}.badge.status-partial{color:var(--warn);background:#fdf3e2}.badge.status-failed{color:var(--err);background:#fdeceb}.badge.status-scheduled,.badge.status-publishing{background:var(--accent-soft);color:var(--accent)}a.badge{text-decoration:none}a.badge:hover{text-decoration:underline}@media (max-width:640px){.top{flex-direction:column}.company-delete{margin-left:0}}
