
*{box-sizing:border-box}body{margin:0;font:14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#263344;background:#f3f5f8}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #99baff;outline-offset:2px}button{border:0;background:none;color:inherit}aside{width:214px;background:#182332;color:#93a2b8;position:fixed;inset:0 auto 0 0;padding:30px 18px;display:flex;flex-direction:column}.brand{color:white;font-size:23px;font-weight:700;letter-spacing:-1px;padding:0 9px}.brand b{color:#75a0ff}.brand small{display:block;font-size:10px;letter-spacing:2.3px;color:#778ca6;margin-top:9px;font-weight:500}.nav{margin-top:48px;display:grid;gap:8px}.nav button{text-align:left;padding:13px 15px;border-radius:8px;display:flex;align-items:center;gap:13px}.nav button.active{background:#2d4261;color:#fff}.nav button:hover{background:#26374f;color:white}.nav i{font-style:normal;font-size:18px;width:22px}.nav em{font-style:normal;margin-left:auto;font-size:11px;background:#455f84;border-radius:5px;padding:2px 6px}.bottom{margin-top:auto;font-size:12px}.server{border-top:1px solid #2b3849;padding:21px 10px}.dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:#50c99e;margin-right:7px}.profile{display:flex;gap:10px;padding:10px;align-items:center;color:#e9edf4}.avatar{width:34px;height:34px;background:#e6edff;color:#5a74b6;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:650;flex-shrink:0}.profile small{display:block;color:#8e9db1;margin-top:4px}main{margin-left:214px}.top{height:77px;background:white;border-bottom:1px solid #e5e9f0;padding:0 32px;display:flex;align-items:center;justify-content:space-between}.crumb{color:#8e98a8;font-size:12px}.crumb span{color:#3a4759;margin-left:10px}.topright{display:flex;gap:18px;align-items:center}.demo{font-size:11px;color:#8090a5;border:1px solid #e0e6ed;border-radius:20px;padding:6px 10px}.workspace{padding:29px 30px}.heading{display:flex;justify-content:space-between;align-items:center;gap:15px}h1{font-size:27px;letter-spacing:-.8px;margin:0 0 8px;font-weight:650}.subtitle{font-size:12px;color:#8a96a7}.primary{background:#4679ed;color:white;border-radius:7px;padding:11px 17px;font-weight:600;box-shadow:0 3px 7px #4679ed19}.primary:hover{background:#3568db}.stats{display:flex;gap:36px;margin:27px 0 24px;padding:19px 23px;background:white;border:1px solid #e6eaf0;border-radius:10px}.metric{padding-right:35px;border-right:1px solid #edf0f5}.metric:last-child{border:0}.metric small{display:block;color:#8b96a6;font-size:11px;margin-bottom:8px}.metric strong{font-size:21px;letter-spacing:-.4px;font-weight:600}.metric em{font-style:normal;font-size:10px;color:#459b7c;margin-left:9px}.tools{display:flex;gap:10px;align-items:center;margin-bottom:23px;flex-wrap:wrap}.control{padding:10px 12px;border:1px solid #dfe5ee;border-radius:7px;background:white;color:#536177;font-size:12px}.pipeline{font-weight:600;min-width:205px;color:#34445e}.search{margin-left:auto;width:218px}.view{display:flex;background:#e7ecf3;border-radius:7px;padding:3px}.view button{padding:7px 11px;border-radius:5px;font-size:12px}.view .selected{background:#fff;box-shadow:0 1px 4px #17253812}.board{display:flex;gap:15px;overflow:auto;min-height:480px;padding-bottom:20px}.column{min-width:247px;flex:1;background:#edf0f5;border-radius:9px;padding:0 7px 12px;border-top:3px solid var(--stage)}.column.dragover{background:#dde7fa}.columnhead{padding:15px 7px 16px}.columnhead>div{display:flex;align-items:center;font-size:12px;font-weight:650;gap:8px}.count{color:#8b97a8;font-size:10px;background:#e1e6ee;padding:2px 6px;border-radius:4px}.columnhead small{display:block;color:#8c98aa;font-size:11px;margin-top:8px}.columnhead button{margin-left:auto;color:#8b98ac}.card{background:white;border:1px solid #e4e9f1;border-radius:8px;padding:15px 13px;margin-bottom:9px;cursor:pointer;box-shadow:0 2px 3px #21324c03;transition:transform .15s,box-shadow .15s}.card:hover{transform:translateY(-2px);box-shadow:0 5px 17px #2033530c}.card .meta{display:flex;justify-content:space-between;color:#a2acbb;font-size:10px;margin-bottom:10px}.card h3{font-size:13px;line-height:1.5;margin:0 0 5px;font-weight:600}.client{font-size:11px;color:#8b97a7;margin-bottom:13px}.price{font-size:15px;font-weight:650;margin-bottom:13px}.tag{display:inline-block;font-size:9px;padding:4px 7px;border-radius:4px;background:#f0edfb;color:#8873b0;margin-right:4px}.tag.serial{background:#eaf3f9;color:#6892ac}.task{border-top:1px solid #f0f2f6;margin-top:14px;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:10px;color:#8190a3}.task.late{color:#d77c71}.task .avatar{width:23px;height:23px;font-size:8px}.add{font-size:11px;color:#91a0b4;width:100%;text-align:left;padding:10px}.footnote{color:#9aa5b4;font-size:11px;margin-top:3px}.empty{color:#9ba6b7;text-align:center;padding:30px 10px;font-size:12px}.overlay{position:fixed;inset:0;background:#18273c55;display:none;justify-content:flex-end;z-index:10}.overlay.open{display:flex}.panel{background:#fafbfe;width:min(800px,100%);height:100%;overflow:auto;box-shadow:-15px 0 60px #15233922}.panelhead{background:white;padding:25px 28px;border-bottom:1px solid #e1e7ef;display:flex;justify-content:space-between;align-items:start}.panelhead h2{margin:7px 0;font-size:21px}.close{font-size:25px;color:#8c99ac}.panelbody{padding:26px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.section{background:white;border:1px solid #e5eaf2;border-radius:9px;padding:20px}.section h3{font-size:13px;margin:0 0 20px}.field{display:block;color:#8894a5;font-size:11px;margin:15px 0}.field input,.field select,.field textarea{display:block;margin-top:7px;width:100%;padding:10px;border:1px solid #dde4ed;border-radius:6px;background:white;color:#34445b}.event{border-left:2px solid #e4eafa;padding:0 0 25px 15px;font-size:12px;line-height:1.7}.event small{display:block;color:#9aa5b6;font-size:10px}.notice{background:#edf3ff;color:#6483b6;font-size:11px;line-height:1.6;padding:12px;border-radius:6px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#263750;color:white;padding:12px 22px;border-radius:8px;z-index:30;display:none;font-size:12px}table{border-collapse:collapse;width:100%;background:white;font-size:12px}th,td{text-align:left;padding:16px;border-bottom:1px solid #edf0f5}th{color:#8d99aa;font-weight:500}tbody tr{cursor:pointer}tbody tr:hover{background:#f7f9fd}@media(max-width:1000px){aside{width:76px;padding:30px 10px}.brand{font-size:0;padding:0;text-align:center}.brand b{font-size:26px}.brand small,.nav span,.nav em,.bottom{display:none}.nav button{padding:14px;justify-content:center}.nav i{width:auto}.workspace{padding:24px 18px}main{margin-left:76px}.stats{gap:20px}.metric{padding-right:20px}.top{padding:0 20px}}@media(max-width:650px){.stats{flex-wrap:wrap;gap:20px}.metric{min-width:40%;border:0}.search{margin-left:0;width:100%}.panelbody{grid-template-columns:1fr}.heading{align-items:start}.heading .primary{font-size:11px}.topright .demo{display:none}.subtitle{line-height:1.5}h1{font-size:23px}}
.loading{padding:80px;text-align:center;color:#718198}.auth{max-width:430px;margin:9vh auto;padding:32px;background:white;border:1px solid #e0e6ef;border-radius:16px;box-shadow:0 20px 60px #2035530a}.auth .brand{color:#263344;padding:0;font-size:28px}.auth h1{font-size:24px;margin-top:28px}.auth p{color:#8190a4;font-size:12px;line-height:1.7}.auth .primary{width:100%;margin-top:10px}.field{font-size:12px;line-height:1.5}.field textarea{resize:vertical;min-height:78px}.field input:disabled,.field select:disabled,.field textarea:disabled{background:#f5f7fa;color:#6d7a8c}.error{color:#bd4c4c;font-size:12px;line-height:1.6;margin:12px 0;white-space:pre-wrap}.error:empty{display:none}.tools{margin-top:25px}.heading-actions{display:flex;gap:9px;flex-wrap:wrap}.nav svg{width:19px;height:19px;flex-shrink:0}.brand small{letter-spacing:1.3px}.profile{cursor:pointer}.logout{width:100%;text-align:left;padding:10px;color:#bac6d7}.workspace{max-width:2400px}.board{min-height:65vh}.column{min-width:255px}.columnhead .stage-title{overflow-wrap:anywhere;max-width:190px}.columnhead button{margin-left:auto}.card h3{overflow-wrap:anywhere}.task{line-height:1.5}.card.readonly{cursor:pointer}.empty{line-height:1.8}.empty.large{background:#fff;border:1px dashed #d8e0ec;border-radius:10px;padding:60px 25px;flex:1}.empty.large h2{color:#566982;font-size:20px}.empty .primary{margin-top:16px}.table-wrap{overflow:auto;background:white;border-radius:10px;border:1px solid #e2e8f0}table{min-width:660px}td{line-height:1.6}td button.link{font-weight:600;padding:0;text-align:left;color:#436fc7}.badge{font-size:10px;display:inline-block;padding:3px 7px;border-radius:5px;background:#edf2fb;color:#6d85a9}.pill{font-size:11px;color:#70839e;border-radius:20px;background:#edf2fa;padding:5px 10px}.status-line{font-size:11px;color:#8194af}.status-line.offline{color:#bc6c54}.panel{width:min(1050px,100%)}.panel.small{width:min(560px,100%)}.panelhead{position:sticky;top:0;z-index:1}.panelbody{grid-template-columns:1.05fr 1fr;padding:24px;align-items:start}.form-body{padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:20px}.danger{color:#b55c57}.right-stack{display:grid;gap:16px}.section{padding:18px}.section h3{margin-bottom:15px}.event{overflow-wrap:anywhere;white-space:pre-wrap}.note{background:#f5f7fb;border-radius:7px;padding:12px;font-size:12px;margin-bottom:10px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.note small{display:block;color:#93a0b2;font-size:10px;margin-top:5px}.task-row{display:flex;align-items:start;gap:10px;border-bottom:1px solid #eef1f5;padding:12px 0;font-size:12px}.task-row .task-text{flex:1}.task-row small{display:block;color:#93a0b2;margin-top:5px}.task-row.overdue small{color:#c47767}.task-row.done .task-text{text-decoration:line-through;color:#99a4b3}.square{border:1px solid #d1dceb;border-radius:5px;width:24px;height:24px;flex-shrink:0;color:#537ec2}.square.checked{background:#e6efff}.files{display:grid;gap:10px}.files a{color:#527bc5;overflow-wrap:anywhere;font-size:12px}.file-form{margin-top:12px}.file-form input{font-size:11px;max-width:100%}.file-form button{margin-top:10px}.settings-tabs{display:flex;gap:10px;margin:25px 0;flex-wrap:wrap}.settings-tabs button{border-bottom:2px solid transparent;padding:10px 12px;color:#8190a5}.settings-tabs button.active{border-color:#4679ed;color:#4679ed}.settings-list{display:grid;gap:13px;max-width:1100px}.settings-row{background:white;border:1px solid #e1e7ef;border-radius:9px;padding:19px;display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-row h3{font-size:14px;margin:0 0 7px}.settings-row p{font-size:12px;color:#8c99ab;margin:0}.settings-row .actions{display:flex;gap:9px;flex-wrap:wrap}.stage-edit-row{border:1px solid #e3e8f1;border-radius:8px;background:white;padding:13px;margin-bottom:10px;display:grid;grid-template-columns:35px 1fr 110px;gap:10px;align-items:center}.stage-edit-row input,.stage-edit-row select{min-width:0;width:100%;padding:9px;border:1px solid #dde4ee;border-radius:5px}.stage-edit-row input[type=color]{height:36px;padding:2px}.stage-edit-row .row-actions{grid-column:2/-1;display:flex;gap:10px;justify-content:flex-end}.stage-edit-row button{font-size:12px}.grant-row{background:#f4f7fb;border-radius:8px;padding:13px;margin:12px 0}.grant-row h4{margin:0;font-size:13px}.grant-row .form-grid{gap:10px}.notice{margin-top:14px}.archive-label{background:#eceff3;color:#8894a5}.refresh{font-size:12px}.form-busy{opacity:.65;pointer-events:none}a{color:#4679ed}button:disabled{opacity:.45;cursor:default}.blank-line{border:0;border-top:1px solid #e7edf4;margin:25px 0}.task-group{max-width:1000px;background:white;padding:20px;border:1px solid #e2e8ef;border-radius:10px}.task-group .task-row .link{padding:0;text-align:left;color:#476caa}.topright{font-size:12px}.settings-intro{max-width:900px;color:#8090a5;font-size:12px;line-height:1.8}.auth small{color:#8e9aac}.search{min-width:160px}.columnhead small{margin-top:7px}.client-link{margin-top:5px;color:#4679ed;font-size:11px;padding:0}.title-row{display:flex;justify-content:space-between;gap:10px}.download{display:inline-block;padding:10px;border:1px solid #dfe5ee;border-radius:7px;text-decoration:none;font-size:12px}.hidden{display:none!important}@media(max-width:1000px){.brand b{font-size:26px}.nav button{padding:14px 8px}.profile{padding:0}.panelbody{grid-template-columns:1fr}.bottom{display:block}.bottom .server,.bottom .profile,.bottom .logout span{display:none}.logout{padding:10px;text-align:center}.heading{flex-wrap:wrap}}@media(max-width:650px){.auth{margin:25px 15px;padding:25px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.topright .status-line{display:none}.settings-row{align-items:start;flex-direction:column}.panelbody{padding:15px}.form-body{padding:18px}.heading-actions{width:100%}.stage-edit-row{grid-template-columns:30px 1fr}.stage-edit-row select{grid-column:2}.stage-edit-row .row-actions{grid-column:1/-1}.crumb{font-size:11px}.table-wrap{max-width:100%}}
/* WhatsApp integration */
.whatsapp-page .nav button.active{background:#128c7e;color:#fff;box-shadow:0 8px 22px rgba(18,140,126,.22)}
.whatsapp-page .heading .primary,.whatsapp-page .wa-compose .primary{background:#25d366;box-shadow:0 5px 14px rgba(37,211,102,.22)}
.whatsapp-page .heading .primary:hover,.whatsapp-page .wa-compose .primary:hover{background:#1fbd5b}
.whatsapp-page button:focus-visible,.whatsapp-page input:focus-visible{outline-color:#74e5a0}
.wa-layout{display:grid;grid-template-columns:320px minmax(0,1fr);height:calc(100vh - 190px);min-height:520px;border:1px solid #dfe5ee;border-radius:22px;overflow:hidden;background:#fff}
.wa-list{overflow:auto;border-right:1px solid #dfe5ee;background:#f4faf6;padding:10px}
.wa-contact{width:100%;display:flex;gap:12px;align-items:center;text-align:left;border:0;background:transparent;padding:13px;border-radius:16px;color:inherit;cursor:pointer}
.wa-contact:hover,.wa-contact.active{background:#fff;box-shadow:0 6px 20px rgba(18,140,126,.11)}.wa-contact.active{box-shadow:inset 3px 0 #25d366,0 6px 20px rgba(18,140,126,.11)}
.wa-contact>span:last-child{display:grid;min-width:0;flex:1}.wa-contact b,.wa-contact small,.wa-contact em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-contact small{color:#8190a4;margin-top:2px}.wa-contact em{font-style:normal;color:#8190a4;font-size:12px;margin-top:7px}
.wa-avatar{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:linear-gradient(145deg,#075e54,#25d366);color:#fff;font-weight:700}
.wa-chat{display:flex;min-width:0;flex-direction:column;background:linear-gradient(145deg,#f7fbf8,#eaf5ee)}
.wa-chat-head{display:flex;align-items:center;gap:12px;padding:14px 18px;background:rgba(255,255,255,.86);border-bottom:1px solid #dfe5ee}.wa-chat-head>div:last-child{display:grid}.wa-chat-head small{color:#8190a4;margin-top:3px}
.wa-messages{display:flex;flex:1;flex-direction:column;gap:10px;overflow:auto;padding:22px}
.wa-message{align-self:flex-start;max-width:min(72%,620px);padding:11px 14px;border-radius:17px 17px 17px 5px;background:#fff;box-shadow:0 5px 18px rgba(18,140,126,.08);white-space:pre-wrap;overflow-wrap:anywhere}.wa-message.outgoing{align-self:flex-end;border-radius:17px 17px 5px 17px;background:#d9fdd3}.wa-message small{display:block;text-align:right;color:#5f7f70;font-size:10px;margin-top:6px}
.wa-compose{display:flex;gap:10px;padding:14px;background:rgba(255,255,255,.92);border-top:1px solid #d8e8dd}.wa-compose input{flex:1;min-width:0;padding:11px 13px;border:1px solid #cfe1d5;border-radius:8px}
@media(max-width:800px){.wa-layout{grid-template-columns:120px minmax(0,1fr)}.wa-contact{padding:10px}.wa-contact .wa-avatar{display:none}.wa-contact em{display:none}.wa-message{max-width:88%}}
