:root{--bg: #f4f5f6;--panel: #ffffff;--ink: #15191c;--muted: #707b83;--line: #e6e9ec;--line-2: #eef1f3;--accent: #14181b;--accent-c: #ffffff;--tg: #2f8fd6;--mail: #c98a14;--green: #1f9d5b;--amber: #c2871a;--red: #c14a3c;--radius: 12px;--shadow: 0 1px 2px rgba(20,24,27,.04), 0 4px 16px rgba(20,24,27,.05)}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;letter-spacing:-.005em}button{cursor:pointer;font:inherit;color:inherit}kbd{font:inherit;font-size:11px;background:#ffffff1f;border:1px solid currentColor;opacity:.8;border-radius:4px;padding:0 4px}input,textarea,select{background:#fff;border:1px solid var(--line);color:var(--ink);border-radius:9px;padding:9px 11px;font:inherit;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent)}.muted{color:var(--muted)}.small{font-size:12px}.center{text-align:center}.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.btn-primary{background:var(--accent);color:var(--accent-c);border:none;border-radius:9px;padding:9px 16px;font-weight:600}.btn-primary:hover{opacity:.9}.link{background:none;border:none;color:var(--tg);font-size:13px;padding:0}.page-title{font-size:22px;font-weight:700;margin:0 0 4px;letter-spacing:-.01em}.ell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cnt{color:var(--muted);font-weight:600}.tag{font-size:10px;padding:1px 6px;border-radius:5px;background:var(--line-2);color:var(--muted)}.chip{font-size:10px;padding:1px 6px;border-radius:5px}.chip.tg{background:#2f8fd624;color:var(--tg)}.chip.mail{background:#c98a1429;color:var(--mail)}.chip.viber{background:#7360f226;color:#6a5ae0}.chip.site{background:#1f9d5b21;color:var(--green);text-decoration:none}.chip.site:hover{background:#1f9d5b40}.site-link{color:var(--tg);text-decoration:none}.site-link:hover{text-decoration:underline}.cl-site{display:inline-block;font-size:12px;color:var(--tg);text-decoration:none;margin-top:2px}.cl-site:hover{text-decoration:underline}.chip.ord{background:#14181b14;color:var(--ink)}.chip.rem{background:#c14a3c1f;color:var(--red)}.act{font-size:11px;padding:2px 9px;border-radius:20px;font-weight:500;white-space:nowrap}.act-active{background:#1f9d5b24;color:var(--green)}.act-cooling{background:#c2871a29;color:var(--amber)}.act-dormant{background:#c14a3c24;color:var(--red)}.act-none{background:var(--line-2);color:var(--muted)}.app{display:flex;height:100vh}.rail{width:80px;flex-shrink:0;background:var(--accent);color:#fff;display:flex;flex-direction:column;align-items:center;padding:14px 8px;gap:4px}.rail-logo{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#fff;color:var(--accent);border-radius:11px;font-weight:700;font-size:20px;letter-spacing:-.03em;margin:2px 0 16px}.rail-nav{display:flex;flex-direction:column;gap:4px;width:100%}.rail-nav button{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;background:transparent;border:none;color:#ffffffb3;border-radius:10px;padding:9px 4px;font-size:10.5px;font-weight:500}.rail-nav button .ic{font-size:18px;line-height:1}.rail-nav button:hover{background:#ffffff14;color:#fff}.rail-nav button.active{background:#fff;color:var(--accent);font-weight:600}.rail-nav .badge{position:absolute;top:4px;right:12px;background:var(--red);color:#fff;border-radius:10px;padding:0 5px;font-size:10px}.rail-search{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:3px;background:#ffffff12;border:none;color:#ffffffb3;border-radius:10px;padding:9px 4px;font-size:10.5px;width:100%}.rail-search:hover{background:#ffffff1f;color:#fff}.rail-search kbd{font-size:9px}.rail-logout{display:flex;flex-direction:column;align-items:center;gap:3px;background:transparent;border:none;color:#ffffff80;border-radius:10px;padding:8px 4px;font-size:10.5px;width:100%;margin-top:4px}.rail-logout:hover{background:#ffffff14;color:#fff}.demo-badge{font-size:10px;color:#ffffff80;margin-top:8px}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(1100px 600px at 50% -10%,#2a343a,#181d21 45%,#0f1316)}.login-box{background:#fffffffa;border:1px solid rgba(255,255,255,.12);border-radius:20px;box-shadow:0 30px 70px #00000073,0 2px 8px #0003;padding:40px 34px 32px;width:340px;display:flex;flex-direction:column;align-items:center;gap:16px}.login-logo{width:60px;height:60px;display:grid;place-items:center;background:var(--accent);color:#fff;border-radius:16px;font-weight:700;font-size:28px;letter-spacing:-.04em;box-shadow:0 8px 20px #14181b59}.login-title{font-weight:600;font-size:15px;color:var(--muted);letter-spacing:.02em;margin-bottom:4px}.login-box input{width:100%;text-align:center;padding:11px}.login-box .btn-primary{width:100%;padding:11px}.content{flex:1;min-width:0;overflow-y:auto;padding:24px}.empty{display:grid;place-items:center;height:60%;color:var(--muted)}.dashboard{max-width:1200px;margin:0 auto}.kpi-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:18px 0 22px}.kpi{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s;overflow:hidden}.kpi:hover{transform:translateY(-2px);box-shadow:0 6px 22px #14181b17}.kpi-val{font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1.15}.kpi-label{color:var(--muted);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.kpi-sub{color:var(--green);font-size:12px;font-weight:600;margin-top:4px}.kpi-hero{background:linear-gradient(150deg,#1d2429,#14181b);border-color:var(--accent);color:#fff}.kpi-hero .kpi-label{color:#fff9}.kpi-hero .kpi-val{font-size:26px}.kpi-hero .kpi-sub{color:#6ee7a8}.dash-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;align-items:start}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.card h3{margin:0 0 18px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.chart{display:flex;align-items:flex-end;gap:10px;height:240px;padding-top:8px}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;gap:8px;cursor:default}.bar{width:100%;max-width:36px;background:linear-gradient(180deg,#2c363c,#14181b);border-radius:6px 6px 2px 2px;min-height:3px;transition:filter .15s,transform .15s}.bar-col:hover .bar{filter:brightness(1.6)}.bar-x{font-size:11px;color:var(--muted)}.mini-table{width:100%;border-collapse:collapse;font-size:13px}.mini-table th{text-align:left;color:var(--muted);font-weight:500;font-size:11px;text-transform:uppercase;padding:6px 8px;border-bottom:1px solid var(--line)}.mini-table td{padding:8px;border-bottom:1px solid var(--line-2)}.mini-table .ell{max-width:160px}.clickable{cursor:pointer}.mini-table tr.clickable:hover td,.clients-table tr.clickable:hover td{background:var(--line-2)}.clients-page{max-width:1300px;margin:0 auto}.clients-toolbar{display:flex;align-items:center;gap:14px}.clients-toolbar .search{flex:1;max-width:420px}.filters{display:flex;gap:6px;margin:16px 0}.filters button{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:6px 14px;font-size:13px;color:var(--muted)}.filters button.on{background:var(--accent);color:var(--accent-c);border-color:var(--accent)}.add-form-row{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.add-form-row input{flex:1;min-width:150px}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.clients-table{width:100%;border-collapse:collapse;font-size:14px}.clients-table th{text-align:left;color:var(--muted);font-weight:500;font-size:12px;padding:12px;border-bottom:1px solid var(--line);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.clients-table th.num{text-align:right}.clients-table th:hover,.clients-table th.sorted{color:var(--ink)}.clients-table td{padding:11px 12px;border-bottom:1px solid var(--line-2)}.clients-table tr:last-child td{border-bottom:none}.cl-name{font-weight:600}.cl-tags{display:flex;gap:4px;margin-top:3px;flex-wrap:wrap}.chan{white-space:nowrap}.chan .chip{margin-right:3px}.pipeline{max-width:1400px;margin:0 auto}.board{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px;align-items:start}.board-col{background:var(--line-2);border-radius:var(--radius);padding:10px;min-height:200px}.board-head{padding:6px 8px 10px}.bh-title{font-weight:700}.bh-title .cnt{margin-left:6px}.bh-sub{font-size:12px;color:var(--muted);margin-top:2px}.board-cards{display:flex;flex-direction:column;gap:8px}.pcard{background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 12px;cursor:pointer;box-shadow:var(--shadow)}.pcard:hover{border-color:var(--accent)}.pcard-name{font-weight:600;font-size:14px}.pcard-tags{display:flex;gap:4px;margin-top:4px;flex-wrap:wrap}.pcard-metrics{display:flex;gap:10px;margin-top:7px;font-size:12px;font-weight:600}.pcard-contact{font-size:11px;font-weight:500;margin-top:7px}.cl-contact{font-size:11px;font-weight:500;margin-top:3px}.ct-none{color:var(--muted)}.ct-sent{color:var(--tg)}.ct-reply{color:var(--amber)}.board-more{padding:6px 8px}.record{max-width:1400px;margin:0 auto;height:100%;display:flex;flex-direction:column;min-height:0}.record-top{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}.back{background:transparent;border:1px solid var(--line);border-radius:8px;color:var(--muted);padding:7px 12px;font-size:13px}.back:hover{color:var(--ink)}.rt-main h2{margin:0 0 6px;font-size:20px;display:flex;align-items:center;gap:10px}.contacts{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:13px}.record-grid2{display:grid;grid-template-columns:1fr 320px;gap:16px;flex:1;min-height:0}.rec-side{display:flex;flex-direction:column;gap:14px;overflow-y:auto}.rec-main{display:flex;flex-direction:column;min-height:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.pinned-bar{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.pinned{display:flex;align-items:center;gap:10px;background:#fff7e6;border:1px solid #f0d8a0;border-radius:10px;padding:10px 14px}.pin-ic{font-size:15px}.pin-text{flex:1;font-weight:500}.pin-check{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.composer-tabs{display:flex;gap:6px;margin-bottom:8px}.composer-tabs button{background:transparent;border:1px solid var(--line);border-radius:8px;padding:5px 12px;font-size:13px;color:var(--muted)}.composer-tabs button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.link.danger{color:var(--red)}.chip.note{background:#785ac821;color:#6b54b0}.attach-btn{background:transparent;border:1px solid var(--line);border-radius:9px;width:40px;font-size:16px;cursor:pointer;align-self:stretch}.attach-btn:hover{border-color:var(--accent)}.attach-chips{display:flex;flex-wrap:wrap;gap:6px}.attach-chip{display:inline-flex;align-items:center;gap:6px;background:var(--line-2);border-radius:7px;padding:4px 8px;font-size:12px}.attach-chip button{background:none;border:none;color:var(--muted);font-size:15px;line-height:1;cursor:pointer}.attach-chip button:hover{color:var(--red)}.tl-attach{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}.tl-attach img{max-width:140px;max-height:120px;border-radius:8px;border:1px solid var(--line);display:block}.att-file{display:inline-flex;align-items:center;gap:5px;background:var(--line-2);border-radius:7px;padding:5px 9px;font-size:12px;color:var(--ink);text-decoration:none}.att-file:hover{background:var(--line)}.tl-filter{display:flex;gap:6px;padding:10px 18px;border-bottom:1px solid var(--line);flex-wrap:wrap}.tl-filter button{background:transparent;border:1px solid var(--line);border-radius:16px;padding:4px 12px;font-size:12px;color:var(--muted)}.tl-filter button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.tl-note .tl-dot{background:#8a6fd0}.tl-body.note{background:#faf8ff;border-color:#e7e0f5}.rec-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow)}.rec-card h4{margin:0 0 10px;font-size:13px}.rc-head{display:flex;justify-content:space-between;align-items:center}.kv{display:flex;justify-content:space-between;gap:8px;padding:5px 0;font-size:13px;border-bottom:1px solid var(--line-2)}.kv:last-child{border-bottom:none}.kv span{color:var(--muted)}.rc-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}.rc-notes{margin-top:10px;font-size:13px;color:var(--ink);white-space:pre-wrap;line-height:1.4;max-height:160px;overflow-y:auto}.kv-phone{align-items:flex-start}.phones{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.phone-item{display:flex;align-items:center;gap:6px}.ph-num{color:var(--ink);text-decoration:none;font-variant-numeric:tabular-nums}.ph-num:hover{text-decoration:underline}.ch-ic{width:21px;height:21px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;font-size:11px;font-weight:700;text-decoration:none;flex:0 0 auto}.ch-ic.tg{background:#2f8fd629;color:var(--tg)}.ch-ic.vb{background:#7360f229;color:#6a5ae0}.ch-ic:hover{filter:brightness(1.08)}.link-merge{display:block;margin-top:12px;padding-top:10px;border-top:1px solid var(--line-2);width:100%;text-align:left}.link-picker{margin-top:12px;padding-top:10px;border-top:1px solid var(--line-2)}.link-picker input{width:100%;font-size:13px}.link-picker ul{list-style:none;margin:6px 0;padding:0;max-height:180px;overflow-y:auto}.link-picker li{padding:7px 9px;border-radius:7px;cursor:pointer;font-size:13px}.link-picker li:hover{background:var(--line-2)}.link-picker li.muted{cursor:default}.archived-bar{display:flex;align-items:center;gap:12px;background:#f0f1f2;border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin-bottom:14px;color:var(--muted)}.archived-bar .ab-text{flex:1;font-weight:500;color:var(--ink)}.link-archive{display:block;margin-top:10px;padding-top:10px;border-top:1px solid var(--line-2);width:100%;text-align:left;color:var(--muted)}.link-archive:hover{color:var(--red)}.archive-form{margin-top:10px;padding-top:10px;border-top:1px solid var(--line-2)}.archive-form input{width:100%;font-size:13px}.af-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.af-actions .btn-primary{padding:7px 14px}.ord-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:6px 0;font-size:13px;border-bottom:1px solid var(--line-2)}.ord-row:last-child{border-bottom:none}.composer{border-top:1px solid var(--line);padding:12px 16px;display:flex;flex-direction:column;gap:8px;background:#fafbfb;flex-shrink:0}.composer-row{display:flex;gap:8px;align-items:flex-start}.composer textarea{flex:1;resize:vertical;min-height:38px}.composer .subj{width:160px}.composer button[type=submit]{background:var(--accent);color:var(--accent-c);border:none;border-radius:9px;padding:0 18px;font-weight:600;align-self:stretch}.error{color:var(--red);font-size:13px}.timeline{flex:1;overflow-y:auto;padding:16px 18px}.tl{display:grid;grid-template-columns:16px 1fr;gap:12px;padding-bottom:16px;position:relative}.tl:before{content:"";position:absolute;left:7px;top:16px;bottom:0;width:2px;background:var(--line)}.tl:last-child:before{display:none}.tl-dot{width:12px;height:12px;border-radius:50%;margin-top:4px;background:var(--muted);border:2px solid #fff;box-shadow:0 0 0 1px var(--line);z-index:1}.tl-msg.out .tl-dot{background:var(--accent)}.tl-msg.in .tl-dot{background:var(--tg)}.tl-order .tl-dot{background:var(--green)}.tl-reminder .tl-dot{background:var(--red)}.tl-body{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:9px 12px}.tl-msg.out .tl-body{background:#f6f7f8}.tl-meta{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted);flex-wrap:wrap}.tl-meta b{color:var(--ink)}.tl-time{margin-left:auto}.tl-text{white-space:pre-wrap;line-height:1.45;margin-top:5px;font-size:14px}.tl-reminder.done .tl-text{text-decoration:line-through;color:var(--muted)}.reminder-add{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.reminder-add>input{width:100%;font-size:13px}.rem-quick{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.rem-quick button{background:#fff;border:1px solid var(--line);border-radius:16px;padding:5px 11px;font-size:12px;color:var(--muted)}.rem-quick button:hover{border-color:var(--accent);color:var(--ink)}.rem-quick button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.rem-quick input[type=date]{font-size:12px;padding:5px 8px;flex:1;min-width:120px}.reminder-add .btn-primary{width:100%}.reminders{list-style:none;margin:0;padding:0}.reminders li{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--line-2);font-size:13px}.reminders li:last-child{border-bottom:none}.reminders li.done .r-title{text-decoration:line-through;color:var(--muted)}.r-title{flex:1}.r-due{color:var(--muted);font-size:12px;white-space:nowrap}.info-form{display:flex;flex-direction:column;gap:8px}.info-form input,.info-form textarea{font-size:13px}.rem-page{max-width:760px;margin:0 auto}.rem-page h1{margin-bottom:16px}.section{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.5px;margin:18px 0 8px}.reminders.big li{padding:12px 0}.r-main{display:flex;flex-direction:column;gap:2px;flex:1}.r-client{color:var(--tg);font-size:12px;cursor:pointer}.r-client:hover{text-decoration:underline}.reminders.big li.overdue .r-due{color:var(--red);font-weight:600}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14181b59;display:flex;justify-content:center;align-items:flex-start;padding-top:12vh;z-index:100}.cmdk{width:560px;max-width:92vw;background:#fff;border-radius:14px;box-shadow:0 20px 60px #00000040;overflow:hidden}.cmdk-input{width:100%;border:none;border-bottom:1px solid var(--line);border-radius:0;padding:16px 18px;font-size:16px}.cmdk-input:focus{border-color:var(--line)}.cmdk-list{list-style:none;margin:0;padding:6px;max-height:360px;overflow-y:auto}.cmdk-list li{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:8px;cursor:pointer}.cmdk-list li.on{background:var(--line-2)}.ck-name{font-weight:500}.ck-meta{font-size:12px;color:var(--muted)}.cmdk-foot{padding:10px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);display:flex;gap:10px}.cmdk-foot kbd{border-color:var(--line);color:var(--muted)}@media (max-width: 1200px){.kpi-row{grid-template-columns:repeat(3,1fr)}.dash-grid{grid-template-columns:1fr}.board{grid-template-columns:repeat(2,1fr)}.record-grid2{grid-template-columns:1fr;overflow-y:auto}.rec-side{overflow:visible}.rec-main{min-height:460px}}@media (max-width: 760px){.app{flex-direction:column}.rail{position:fixed;left:0;right:0;bottom:0;top:auto;width:100%;height:auto;flex-direction:row;align-items:stretch;justify-content:space-around;padding:6px 4px calc(6px + env(safe-area-inset-bottom));gap:0;z-index:50;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -4px 16px #0000002e}.rail-logo,.rail-search,.demo-badge{display:none}.rail-nav{flex-direction:row;flex:1;justify-content:space-around;gap:0;width:auto}.rail-nav button{flex:1;flex-direction:column;gap:3px;padding:7px 2px;font-size:10px;border-radius:8px}.rail-nav button .ic{font-size:20px}.rail-nav button.active{background:#ffffff24;color:#fff}.rail-nav .badge{position:absolute;top:3px;right:50%;margin-right:-20px}.rail-logout{flex:0 0 auto;width:auto;margin:0;padding:7px 10px;font-size:10px}.content{padding:calc(14px + env(safe-area-inset-top)) 14px 90px}.kpi-row{grid-template-columns:repeat(2,1fr);gap:10px}.kpi-hero{grid-column:span 2}.board{grid-template-columns:1fr}.page-title{font-size:19px}.record-grid2{display:flex;flex-direction:column}.rec-main{order:2;min-height:70vh}.rec-side{order:1}.record-top{flex-wrap:wrap}.metrics-strip{gap:0}.clients-table th:nth-child(2),.clients-table td:nth-child(2),.clients-table th:nth-child(5),.clients-table td:nth-child(5),.clients-table th:nth-child(6),.clients-table td:nth-child(6),.clients-table th:nth-child(7),.clients-table td:nth-child(7){display:none}.clients-table th,.clients-table td{padding:11px 8px}.clients-toolbar{flex-wrap:wrap}.clients-toolbar .search{order:3;width:100%;max-width:none}.filters{flex-wrap:wrap}.cmdk{width:94vw}.cmdk-overlay{padding-top:8vh}}
