:root{--ink:#17202a;--muted:#67727e;--line:#dfe4e8;--paper:#fff;--canvas:#f3f5f4;--nav:#18231f;--nav2:#25352f;--green:#187357;--green-soft:#e9f4ef;--amber:#b26a00;--amber-soft:#fff4dc;--red:#b6413b;--red-soft:#fbeceb;--blue:#2a639d;--blue-soft:#eaf2fb;--shadow:0 8px 24px rgba(30,42,38,.09);font-family:"Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif;color:var(--ink);background:var(--canvas)}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);letter-spacing:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}.loading{height:100vh;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.spinner{width:20px;height:20px;border:2px solid #c9d3ce;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--nav);color:#eef5f1;padding:20px 14px;display:flex;flex-direction:column}.brand{padding:4px 10px 22px;border-bottom:1px solid rgba(255,255,255,.1)}.brand strong{display:block;font-size:18px}.brand small{display:block;color:#aebdb6;margin-top:5px}.nav{padding-top:15px;display:grid;gap:5px}.nav button{height:42px;border:0;border-radius:6px;background:transparent;color:#becbc5;text-align:left;padding:0 12px;display:flex;align-items:center;gap:10px}.nav button:hover,.nav button.active{background:var(--nav2);color:#fff}.nav .ico{width:18px;text-align:center}.sidebar-foot{margin-top:auto;padding:14px 10px 2px;color:#91a49b;font-size:12px;line-height:1.6}
.main{min-width:0}.topbar{height:66px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.topbar h1{font-size:20px;margin:0}.top-actions{display:flex;align-items:center;gap:10px}.save-state{font-size:12px;color:var(--muted)}.user-switch{height:36px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:0 10px}.icon-btn{width:36px;height:36px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:17px}.content{padding:24px 28px 40px;max-width:1500px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}.page-head h2{font-size:22px;margin:0 0 5px}.page-head p{margin:0;color:var(--muted);font-size:14px}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn{min-height:36px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);padding:7px 13px}.btn:hover{border-color:#aeb9b4}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.danger{color:var(--red);border-color:#e5bbb8}.btn.small{min-height:30px;padding:4px 9px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.metric{background:#fff;border:1px solid var(--line);border-radius:8px;padding:17px}.metric .label{font-size:13px;color:var(--muted)}.metric .value{font-size:28px;font-weight:700;margin-top:8px}.metric .note{font-size:12px;color:var(--muted);margin-top:5px}.metric.danger .value{color:var(--red)}.metric.success .value{color:var(--green)}
.grid-2{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:8px;margin-bottom:16px}.panel-head{padding:15px 17px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-head h3{font-size:16px;margin:0}.panel-body{padding:17px}.empty{padding:42px 20px;text-align:center;color:var(--muted)}
.toolbar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:14px}.input,.select,.textarea{width:100%;border:1px solid #cfd6d2;border-radius:6px;background:#fff;padding:9px 10px;outline:none}.input,.select{height:38px}.input:focus,.select:focus,.textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(24,115,87,.1)}.toolbar .input{max-width:280px}.toolbar .select{width:auto;min-width:130px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:780px}.table th{background:#f7f8f7;color:#56615c;font-size:12px;font-weight:600;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:11px 12px;border-bottom:1px solid #edf0ee;font-size:13px;vertical-align:middle}.table tr:hover td{background:#fafcfb}.table tr:last-child td{border-bottom:0}.link{color:var(--blue);font-weight:600;cursor:pointer}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.badge{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700}.grade-S{background:#e8f3ed;color:#116346}.grade-A{background:#fce9e7;color:#b03630}.grade-B{background:#fff0d4;color:#9c5c00}.grade-C{background:#e8f1fb;color:#27629b}.grade-D{background:#eef0f1;color:#5c6870}.status-overdue{color:var(--red);font-weight:700}.status-today{color:var(--amber);font-weight:700}.status-upcoming{color:var(--green)}
.task-list{display:grid;gap:10px}.task-row{display:grid;grid-template-columns:1fr 110px 80px;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf0ee}.task-row:last-child{border:0}.progress{height:7px;background:#edf0ee;border-radius:99px;overflow:hidden}.progress span{display:block;height:100%;background:var(--green)}.grade-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.grade-card{border:1px solid var(--line);border-radius:6px;padding:12px;background:#fff;text-align:center}.grade-card b{font-size:22px;display:block}.grade-card small{color:var(--muted)}
.focus-panel{border-color:#cbded5}.panel-urgent{border-color:#e8b6b2}.panel-urgent .panel-head{background:#fff7f6}.panel-today{border-color:#ecd5a9}.panel-today .panel-head{background:#fffaf0}.task-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.task-cards.compact{gap:10px}.task-card{border:1px solid var(--line);border-radius:8px;padding:13px;background:#fff;display:grid;gap:8px;min-height:116px;text-align:left;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.task-card:hover{border-color:#9bb4aa;box-shadow:0 6px 18px rgba(30,42,38,.08);transform:translateY(-1px)}.task-card.done{background:#f4fbf7;border-color:#b9decf}.task-card.todo{background:#fffdf9;border-color:#ead9bd}.task-card.today{background:#fff8e8;border-color:#e5bd72}.task-card.urgent{background:#fff3f2;border-color:#e0aaa6}.task-card.urgent .task-card-value{color:var(--red)}.task-card.today .task-card-value{color:var(--amber)}.task-card.done .task-card-value{color:var(--green)}.task-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.task-card-value{font-size:24px;font-weight:700}.task-card-value span{font-size:12px;font-weight:500;color:var(--muted);margin-left:3px}.progress-board{display:grid;gap:12px}.progress-row{display:grid;grid-template-columns:180px minmax(160px,1fr) 86px;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid #edf0ee}.progress-row:last-child{border:0}.owner-progress{display:grid}.owner-row{display:grid;grid-template-columns:150px repeat(5,minmax(112px,1fr));gap:10px;align-items:center;padding:14px 17px;border-bottom:1px solid #edf0ee}.owner-row:last-child{border:0}.owner-name{display:grid;gap:3px}.owner-cell{display:grid;gap:6px}.owner-cell span:first-child{font-size:12px;color:var(--muted)}.customer-actions{display:grid}.customer-action{display:grid;grid-template-columns:minmax(220px,1fr) 62px 100px 110px minmax(180px,.9fr);gap:12px;align-items:center;padding:13px 17px;border-bottom:1px solid #edf0ee}.customer-action:last-child{border:0}.priority{display:inline-flex;align-items:center;justify-content:center;min-height:26px;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:700}.priority.danger{background:var(--red-soft);color:var(--red)}.priority.warning{background:var(--amber-soft);color:var(--amber)}.priority.info{background:var(--blue-soft);color:var(--blue)}.priority.ok{background:var(--green-soft);color:var(--green)}
.channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.channel-option{border:1px solid var(--line);border-radius:8px;padding:12px;display:flex;gap:10px;align-items:center;background:#fff}.channel-option input{width:18px;height:18px;accent-color:var(--green)}.channel-option span{display:grid;gap:3px}.channel-option small{color:var(--muted)}
.assistant-card{border:1px solid #cbded5;background:#fbfefd;border-radius:8px;padding:16px;margin-bottom:16px}.assistant-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.assistant-card-head h3{font-size:16px;margin:0 0 4px}.assistant-card-head p{margin:0;color:var(--muted);font-size:13px}.assistant-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.assistant-grid>div{background:#fff;border:1px solid var(--line);border-radius:6px;padding:10px}.assistant-grid label,.assistant-advice label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.assistant-grid b{font-size:13px;line-height:1.5}.assistant-advice{background:#fff;border:1px solid #dce7e1;border-radius:6px;padding:11px;margin-bottom:12px}.assistant-advice p{margin:0;line-height:1.65}.assistant-modal{display:grid;gap:14px}.ai-mini{display:grid;gap:5px;align-items:center}.ai-mini small{font-size:12px;color:var(--muted);line-height:1.45}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:13px;color:#4f5c55;font-weight:600}.field .hint{font-size:12px;color:var(--muted)}.textarea{min-height:88px;resize:vertical}.section-title{font-size:14px;margin:20px 0 10px;color:#435048;border-left:3px solid var(--green);padding-left:8px}
.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,20,.48);z-index:20;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#fff;border-radius:8px;width:min(860px,96vw);max-height:92vh;overflow:auto;box-shadow:var(--shadow)}.modal.wide{width:min(1120px,97vw)}.modal-head{position:sticky;top:0;background:#fff;z-index:2;padding:17px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-head h3{margin:0;font-size:18px}.modal-close{border:0;background:transparent;font-size:25px;line-height:1;color:var(--muted)}.modal-body{padding:20px}.modal-foot{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:14px 20px;display:flex;justify-content:flex-end;gap:8px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:18px;margin-bottom:16px}.tab{border:0;background:transparent;padding:10px 1px;color:var(--muted);border-bottom:2px solid transparent}.tab.active{color:var(--green);border-bottom-color:var(--green);font-weight:700}.timeline{display:grid;gap:12px}.timeline-item{border-left:2px solid #d7e3dd;padding:2px 0 10px 14px}.timeline-item .time{font-size:12px;color:var(--muted)}.timeline-item p{margin:5px 0;line-height:1.6}.analysis-box{white-space:pre-wrap;line-height:1.75;background:#f7faf8;border:1px solid #dce7e1;border-radius:6px;padding:14px}.warning{background:var(--amber-soft);color:#79511a;border:1px solid #edd7ad;border-radius:6px;padding:10px 12px;font-size:13px}.notice{background:var(--blue-soft);color:#285980;border:1px solid #c9dcef;border-radius:6px;padding:10px 12px;font-size:13px}.danger-note{background:var(--red-soft);color:#8d3531;border:1px solid #ecc9c6;border-radius:6px;padding:10px 12px;font-size:13px}
.training-layout{display:grid;grid-template-columns:380px minmax(0,1fr);gap:16px}.chat{height:540px;display:flex;flex-direction:column}.chat-log{flex:1;overflow:auto;padding:16px;background:#f7f9f8;border:1px solid var(--line);border-radius:6px}.bubble{max-width:82%;padding:10px 12px;border-radius:8px;margin-bottom:10px;line-height:1.55;white-space:pre-wrap}.bubble.ai{background:#fff;border:1px solid var(--line)}.bubble.user{background:var(--green);color:#fff;margin-left:auto}.chat-send{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.chat-send textarea{min-height:68px}.deduction-total{font-size:24px;color:var(--red);font-weight:700}.settings-block{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.settings-block:last-child{border:0}.list-editor{display:flex;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;gap:6px;align-items:center;background:#eef2f0;border-radius:4px;padding:6px 8px;font-size:13px}.chip button{border:0;background:transparent;color:var(--red);padding:0}.toast{position:fixed;right:24px;bottom:24px;background:#1b2823;color:#fff;padding:11px 15px;border-radius:6px;box-shadow:var(--shadow);z-index:50;animation:toast .2s ease}.toast.error{background:#8f342f}@keyframes toast{from{transform:translateY(8px);opacity:0}}
@media(max-width:1180px){.task-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.owner-row{grid-template-columns:1fr 1fr 1fr}.assistant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-action{grid-template-columns:minmax(220px,1fr) 62px 100px minmax(150px,1fr)}.customer-action span:nth-child(4){display:none}}
@media(max-width:1000px){.metrics{grid-template-columns:repeat(2,1fr)}.grid-2,.training-layout{grid-template-columns:1fr}.form-grid.three{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.nav{grid-template-columns:repeat(3,1fr)}.sidebar-foot{display:none}.topbar{position:static;padding:0 14px}.content{padding:18px 14px}.metrics,.form-grid,.form-grid.three,.task-cards,.channel-grid,.assistant-grid{grid-template-columns:1fr}.grade-grid{grid-template-columns:repeat(5,76px);overflow:auto}.page-head{flex-direction:column}.task-row{grid-template-columns:1fr 80px}.task-row .progress{grid-column:1/-1}.progress-row{grid-template-columns:1fr 78px}.progress-row .progress{grid-column:1/-1;grid-row:2}.owner-row{grid-template-columns:1fr}.customer-action{grid-template-columns:1fr 60px}.customer-action span:nth-child(4){display:none}.ai-mini{grid-column:1/-1}.topbar h1{font-size:17px}.save-state{display:none}}

/* Fresh visual layer */
:root{--ink:#22312d;--muted:#7b8984;--line:#dfeee8;--paper:#fff;--canvas:#f4faf7;--nav:#16322a;--nav2:#21483d;--green:#2a9d77;--green-soft:#e9f8f2;--amber:#c18422;--amber-soft:#fff7e8;--red:#c85b55;--red-soft:#fff0ef;--blue:#4f8fbb;--blue-soft:#edf7ff;--shadow:0 14px 34px rgba(53,91,78,.09)}
body{background:linear-gradient(180deg,#f8fcfa 0,#eff8f4 420px,#f4faf7 100%);color:var(--ink)}
.sidebar{background:linear-gradient(180deg,#17352d 0,#102720 100%);box-shadow:12px 0 30px rgba(28,63,53,.08)}
.brand{border-bottom-color:rgba(255,255,255,.12)}.brand strong{font-size:19px;letter-spacing:.2px}.brand small,.sidebar-foot{color:#b8d3ca}
.nav button{border-radius:10px;color:#cce1da}.nav button:hover,.nav button.active{background:rgba(255,255,255,.12);box-shadow:inset 3px 0 0 #83d9bd;color:#fff}
.topbar{height:64px;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border-bottom:1px solid rgba(206,225,216,.75)}
.topbar h1{font-size:18px;color:#25342f}.content{max-width:1260px;padding:28px 30px 48px}
.page-head{align-items:center;margin-bottom:22px}.page-head h2{font-size:24px;line-height:1.25;color:#1f2d29}.page-head p{font-size:14px;color:#788883;margin-top:6px}
.btn,.user-switch,.icon-btn,.input,.select,.textarea{border-color:#d7e7df;border-radius:10px;background:#fff;box-shadow:0 1px 0 rgba(33,71,60,.03)}
.btn{min-height:38px;padding:8px 15px;font-weight:600;color:#31433d}.btn:hover{border-color:#a7d8c6;box-shadow:0 7px 18px rgba(42,157,119,.1);transform:translateY(-1px)}
.btn.primary{background:linear-gradient(135deg,#24a87c,#238968);border-color:#238968;box-shadow:0 9px 20px rgba(35,137,104,.18)}
.btn.primary:hover{box-shadow:0 12px 24px rgba(35,137,104,.22)}
.btn:disabled,.punch-btn.done{background:#f1f6f3;color:#95a49f;border-color:#e1ece7;opacity:1;box-shadow:none}
.panel,.metric{border:1px solid rgba(210,232,222,.95);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:var(--shadow)}
.panel{overflow:hidden;margin-bottom:18px}.panel-head{padding:17px 20px;background:linear-gradient(180deg,#fff 0,#fbfefd 100%);border-bottom-color:#e7f1ec}.panel-head h3{font-size:17px;color:#21332d}.panel-body{padding:20px}
.focus-panel{border-color:#c3e7d8;background:linear-gradient(180deg,#ffffff 0,#fbfffd 100%)}
.task-cards{gap:14px}.task-card{border-radius:14px;min-height:126px;padding:17px;border-color:#dcece5;background:linear-gradient(180deg,#fff 0,#fbfefd 100%);box-shadow:0 8px 22px rgba(60,95,84,.07)}
.task-card:hover{border-color:#b5e0d0;box-shadow:0 14px 28px rgba(55,108,91,.12);transform:translateY(-2px)}
.task-card.todo{background:linear-gradient(180deg,#fff 0,#fffdf7 100%);border-color:#f1dfbb}.task-card.done{background:linear-gradient(180deg,#f8fffb 0,#eefaf4 100%);border-color:#bfe7d6}.task-card.today{background:linear-gradient(180deg,#fffdf6 0,#fff6df 100%);border-color:#efcf89}.task-card.urgent{background:linear-gradient(180deg,#fff9f8 0,#fff0ef 100%);border-color:#e8b6b2}
.task-card-head b{font-size:16px}.task-card-value{font-size:28px;line-height:1;color:#1f2d29}.task-card-value span{font-size:13px;color:#83908c}.badge,.priority{border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)}
.progress{height:8px;background:#edf4f1}.progress span{background:linear-gradient(90deg,#2a9d77,#65c7a6);border-radius:99px}
.progress-row{padding:14px 0;grid-template-columns:170px minmax(160px,1fr) 92px}.progress-row b{font-size:16px}
.empty{color:#8a9994;background:linear-gradient(180deg,#fff 0,#fbfefd 100%);border-radius:12px;margin:14px;padding:46px 20px}
.customer-actions{background:#fff}.customer-action{padding:16px 20px;border-bottom-color:#eaf2ee}.customer-action:hover{background:#fbfffd}
.input:focus,.select:focus,.textarea:focus{border-color:#73cdae;box-shadow:0 0 0 4px rgba(42,157,119,.12)}
.save-state{color:#8a9994}.toast{border-radius:12px;background:#17352d;box-shadow:0 12px 28px rgba(23,53,45,.18)}
.academy-tabs{display:flex;gap:10px;flex-wrap:wrap}.academy-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}.academy-course .panel-body{display:grid;gap:18px}.academy-summary{font-size:15px;line-height:1.75;color:#50625c;background:#f7fcfa;border:1px solid #dceee6;border-radius:12px;padding:14px;margin:0}.academy-section{border-bottom:1px solid #edf4f1;padding-bottom:16px}.academy-section:last-child{border-bottom:0}.academy-section h4{font-size:16px;margin:0 0 10px;color:#203a33}.academy-section ul{margin:0;padding-left:20px;display:grid;gap:8px;color:#41534d;line-height:1.65}.checklist{display:grid;gap:10px}.check-item{display:flex;gap:10px;align-items:flex-start;border:1px solid #e1eee8;border-radius:12px;background:#fbfffd;padding:11px;line-height:1.55}.check-item input{width:18px;height:18px;margin-top:2px;accent-color:var(--green)}.check-item:has(input:checked){background:#eefaf4;border-color:#bfe7d6}.check-item:has(input:disabled){opacity:.75}
.academy-gallery{border:1px solid #dceee6;background:linear-gradient(180deg,#fbfffd,#f6fbf8);border-radius:14px;padding:14px}.academy-gallery-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin-bottom:12px}.academy-gallery-head h4{margin:0;color:#203a33;font-size:16px}.academy-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.academy-image{margin:0;border:1px solid #e0ece7;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 10px 24px rgba(22,60,48,.06)}.academy-image img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#f4f8f6}.academy-image figcaption{display:grid;gap:4px;padding:10px 11px;color:#53655f;line-height:1.45}.academy-image figcaption b{color:#19352d;font-size:14px}.academy-image figcaption span{font-size:12px}
@media(max-width:1000px){.academy-layout{grid-template-columns:1fr}}
@media(max-width:720px){.academy-media-grid{grid-template-columns:1fr}.academy-gallery-head{display:grid}.academy-image img{aspect-ratio:16/10}}
@media(max-width:720px){.content{padding:18px 14px 36px}.page-head h2{font-size:21px}.panel,.metric,.task-card{border-radius:12px}}

/* KAZIK AI prospecting center */
.sidebar{overflow-y:auto}.nav{padding-bottom:16px}.user-pill{display:inline-flex;align-items:center;min-height:34px;padding:5px 11px;border-radius:999px;background:#edf8f3;color:#286b54;font-size:13px;font-weight:700}
.page-tabs,.page-section-nav{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 18px;padding:6px;border:1px solid #dcece5;border-radius:12px;background:#f7fcfa}
.page-tabs button,.page-section-nav a{min-height:38px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:8px 16px;background:transparent;color:#53655f;font-weight:700;text-decoration:none;cursor:pointer}
.page-tabs button:hover,.page-section-nav a:hover{background:#fff;color:#24765a}
.page-tabs button.active{background:#fff;color:#1f7f60;box-shadow:0 4px 14px rgba(42,157,119,.12)}
.section-anchor{display:block;position:relative;top:-12px}
.ai-prompt-panel .panel-head>div{display:grid;gap:4px}.ai-prompt-chat{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:flex-start}.ai-chat-avatar{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#24a87c,#207a5e);color:#fff;font-size:15px;font-weight:900;box-shadow:0 8px 18px rgba(35,137,104,.2)}.ai-chat-bubble{position:relative;border:1px solid #d6e9e0;border-radius:4px 16px 16px 16px;background:linear-gradient(180deg,#fbfffd,#f4fbf8);padding:14px}.ai-chat-bubble:before{content:"";position:absolute;left:-7px;top:13px;width:12px;height:12px;background:#fbfffd;border-left:1px solid #d6e9e0;border-bottom:1px solid #d6e9e0;transform:rotate(45deg)}.ai-prompt-text{position:relative;min-height:360px;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;padding:0;resize:vertical;font-family:"Microsoft YaHei UI",Consolas,sans-serif;font-size:14px;line-height:1.75;color:#30443d}.ai-prompt-empty{position:relative;min-height:150px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted);text-align:center}.ai-prompt-empty b{color:#435750}.ai-prompt-actions{justify-content:flex-end;margin-top:14px}
.inline-loading{height:240px}.funnel-strip{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));gap:10px}.funnel-strip>div{position:relative;border:1px solid #dcece5;border-radius:12px;background:#fbfffd;padding:16px;text-align:center}.funnel-strip>div:not(:last-child):after{content:"›";position:absolute;right:-9px;top:50%;transform:translateY(-50%);color:#8ab9a8;font-size:24px;z-index:1}.funnel-strip b{display:block;font-size:25px;color:#21775b}.funnel-strip span{display:block;color:var(--muted);font-size:12px;margin-top:5px}
  .check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.city-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.check-grid label{border:1px solid #dfebe6;border-radius:10px;padding:9px 11px;background:#fbfefd;font-size:13px;font-weight:500}.check-grid input{accent-color:var(--green)}
.code-area{min-height:260px;font-family:Consolas,"Microsoft YaHei UI",monospace;font-size:12px;line-height:1.55}.candidate-list{display:grid;gap:16px}.candidate-card .panel-head h3{margin-bottom:5px}.score-row{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:8px;margin-bottom:18px}.score-row span,.score-row strong{border:1px solid #dcece5;border-radius:10px;padding:10px 11px;background:#f8fcfa;font-size:13px}.score-row strong{background:#eaf8f2;color:#1d7457}.candidate-columns{display:grid;grid-template-columns:1fr 1.2fr;gap:22px;margin-bottom:14px}.candidate-columns p{line-height:1.55}.candidate-columns a,.modal-body a{color:var(--blue);word-break:break-all}
.intelligence-page{display:grid;gap:16px}.intelligence-section{border:1px solid var(--line);border-radius:10px;background:#fbfefd;padding:16px}.intelligence-section h3{margin:0 0 12px;font-size:16px}.section-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.section-title h3{margin:0 0 4px}.section-title p{margin:0;color:var(--muted);font-size:13px}.intelligence-actions{justify-content:flex-end}.intelligence-contacts,.intelligence-sources,.intelligence-signals{display:grid;gap:10px}.intelligence-contact,.intelligence-source,.intelligence-signal{display:grid;gap:5px;border:1px solid #dce8e2;background:#fff;border-radius:8px;padding:12px}.intelligence-contact span,.intelligence-source span,.intelligence-signal span{color:var(--muted);font-size:12px}.intelligence-source>div,.intelligence-signal{position:relative}.intelligence-source>div{display:flex;justify-content:space-between;gap:12px}.intelligence-source p,.intelligence-signal p{margin:3px 0;line-height:1.6}.keyword-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.keyword-card{border:1px solid #dce8e2;border-radius:8px;background:#fff;padding:12px}.keyword-card>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.keyword-card .textarea{min-height:112px;font-family:Consolas,"Microsoft YaHei UI",monospace;font-size:12px}.analysis-citations{margin-top:8px;font-size:12px;line-height:1.7}.customer-row{cursor:pointer}.customer-row:hover td{background:#f5fbf8}
.account-summary{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:10px;margin-bottom:16px}.account-summary>div{display:grid;gap:5px;border:1px solid #dcece5;border-radius:10px;padding:11px;background:#fbfefd}.account-summary label{font-size:12px;color:var(--muted)}.contact-cards{display:grid;gap:10px;margin-bottom:12px}.contact-card{display:grid;grid-template-columns:1fr minmax(220px,.6fr);gap:16px;border:1px solid #dcece5;border-radius:12px;padding:12px;background:#fbfefd}.contact-card>div{display:grid;gap:4px}.contact-card small{color:var(--muted)}.contact-card p{margin:2px 0}.compact-select{height:34px;padding:4px 8px}
.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,#dff6ed,transparent 35%),linear-gradient(135deg,#102b23,#1b4a3d)}.login-card{width:min(430px,94vw);background:#fff;border-radius:20px;padding:34px;box-shadow:0 25px 70px rgba(5,24,18,.3)}.login-brand{display:flex;align-items:center;gap:12px;color:#235c49}.login-brand b{font-size:23px;letter-spacing:1.5px}.login-brand span{font-size:13px;color:var(--muted)}.login-card h1{font-size:25px;margin:24px 0 6px}.login-card>p{color:var(--muted);margin:0 0 20px}.login-card form{display:grid;gap:15px}.login-submit{width:100%;margin-top:5px}.login-hint{margin-top:18px;padding:11px;border-radius:10px;background:#f3f8f6;color:#64736e;font-size:12px;line-height:1.7}
  @media(max-width:1180px){.funnel-strip{grid-template-columns:repeat(4,1fr)}.account-summary{grid-template-columns:repeat(3,1fr)}.city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.funnel-strip,.check-grid,.score-row,.candidate-columns,.account-summary,.contact-card,.keyword-grid{grid-template-columns:1fr}.section-title,.intelligence-source>div{display:grid}.funnel-strip>div:after{display:none}.user-pill{display:none}.top-actions .btn{padding:6px 8px}.nav{grid-template-columns:repeat(2,1fr)}.page-tabs,.page-section-nav{display:grid;grid-template-columns:1fr}.page-tabs button,.page-section-nav a{width:100%}.ai-prompt-chat{grid-template-columns:1fr}.ai-chat-avatar{width:38px;height:38px;border-radius:12px}.ai-chat-bubble{border-radius:14px}.ai-chat-bubble:before{display:none}.ai-prompt-text{min-height:300px}.ai-prompt-actions .btn{flex:1}}

.material-toolbar{display:grid;grid-template-columns:minmax(240px,1.35fr) repeat(3,minmax(150px,.7fr)) auto;gap:10px;align-items:center}
.check-inline{min-height:38px;display:flex;gap:8px;align-items:center;color:#53655f;font-weight:700;white-space:nowrap}
.check-inline input{width:17px;height:17px;accent-color:var(--green)}
.product-layout{display:grid;grid-template-columns:390px minmax(0,1fr);gap:18px;align-items:start}
.product-grid{display:grid;gap:12px;padding:16px;max-height:960px;overflow:auto}
.product-card{width:100%;border:1px solid #dcece5;border-radius:14px;background:linear-gradient(180deg,#fff,#fbfefd);padding:14px;text-align:left;color:var(--ink);display:grid;gap:10px;box-shadow:0 8px 20px rgba(60,95,84,.06)}
.product-card:hover,.product-card.active{border-color:#8bd6bd;box-shadow:0 14px 28px rgba(55,108,91,.12);transform:translateY(-1px)}
.product-card.active{background:linear-gradient(180deg,#f5fffb,#ebfaf3)}
.product-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.product-card-head b{display:block;font-size:16px;color:#1e312c}.product-card-head span{display:block;margin-top:3px;color:#70817b;font-size:13px}
.product-meta{display:flex;gap:8px;flex-wrap:wrap;color:#5c6f68;font-size:12px}
.product-meta span{background:#eef7f3;border-radius:999px;padding:4px 8px}
.product-card p{margin:0;color:#42564f;line-height:1.55}.product-card small{color:#778782;line-height:1.5}
.material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:16px}
.material-card{border:1px solid #dcece5;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 8px 22px rgba(60,95,84,.07);display:flex;flex-direction:column;min-width:0}
.material-preview{border:0;border-bottom:1px solid #e6f1ec;background:#f7fcfa;height:160px;width:100%;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden}
.material-preview img{width:100%;height:100%;object-fit:cover;display:block}.file-icon{width:78px;height:78px;border-radius:18px;background:linear-gradient(135deg,#e7f4ef,#f7fbf9);border:1px solid #d8ebe3;display:flex;align-items:center;justify-content:center;color:#3c6d5c;font-weight:800;text-transform:uppercase}
.material-body{padding:13px;display:grid;gap:8px;min-width:0}.material-title{font-weight:800;color:#1f2d29;line-height:1.35;word-break:break-word}
.material-tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center;color:#75847f;font-size:12px}
.material-tags>span:not(.badge){background:#f0f6f3;border-radius:999px;padding:3px 7px}
.material-path{font-size:12px;color:#87958f;line-height:1.45;word-break:break-all;background:#f7fbf9;border:1px solid #e5f0eb;border-radius:10px;padding:8px}
.material-actions{display:flex;gap:8px;flex-wrap:wrap}.material-large{max-width:100%;max-height:70vh;border-radius:14px;border:1px solid var(--line);display:block;margin:auto}.material-preview-modal{display:grid;gap:12px}
.product-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.product-check{border:1px solid #dcece5;border-radius:12px;background:#fff;padding:12px;display:flex;gap:10px;align-items:flex-start}.product-check input{width:18px;height:18px;margin-top:2px;accent-color:var(--green)}.product-check span{display:grid;gap:4px}.product-check small{color:var(--muted);line-height:1.35}
@media(max-width:1180px){.product-layout{grid-template-columns:1fr}.material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.material-toolbar{grid-template-columns:1fr 1fr}.product-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.material-grid,.material-toolbar,.product-check-grid{grid-template-columns:1fr}.material-preview{height:190px}}

/* Customer funnel and grade browser */
.customer-funnel-panel .panel-body{overflow:auto}.customer-funnel{display:flex;align-items:stretch;gap:8px;min-width:900px}.funnel-step{flex:1;min-width:142px;min-height:142px;border:1px solid #dbe9e3;border-top:4px solid #96aaa2;border-radius:8px;background:#fff;padding:14px;display:grid;grid-template-rows:auto auto auto 1fr;gap:5px;text-align:left;color:var(--ink);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.funnel-step:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(43,83,70,.11)}.funnel-step.active{border-color:#49b78f;box-shadow:0 0 0 3px rgba(42,157,119,.15),0 12px 26px rgba(43,83,70,.12)}.funnel-step.grade-D{border-top-color:#899792}.funnel-step.grade-C{border-top-color:#5598c4}.funnel-step.grade-B{border-top-color:#d29a39}.funnel-step.grade-A{border-top-color:#d26660}.funnel-step.grade-S{border-top-color:#27926e}.funnel-grade{font-size:13px;font-weight:800}.funnel-step>b{font-size:30px;line-height:1}.funnel-step>small{color:#62736d;line-height:1.35}.funnel-step>div{align-self:end;display:grid;gap:3px;color:var(--muted);font-size:12px}.funnel-arrow{align-self:center;color:#9fb0aa;font-size:22px;font-weight:700}
.customer-toolbar-panel{position:relative}.customer-toolbar{display:grid;grid-template-columns:minmax(260px,1.7fr) repeat(4,minmax(145px,.7fr));gap:10px}.customer-toolbar .input,.customer-toolbar .select{min-width:0}.customer-grade-section{margin-top:22px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:12px}.section-heading h3{margin:0;font-size:20px}.section-heading p{margin:5px 0 0;color:var(--muted);font-size:13px}
.customer-grades{display:grid;gap:10px}.customer-grade{border:1px solid #dce9e3;border-radius:8px;background:#fff;overflow:hidden;box-shadow:0 6px 18px rgba(48,81,70,.05)}.customer-grade.open{border-color:#b9dacc;box-shadow:0 10px 24px rgba(48,81,70,.08)}.customer-grade-head{width:100%;min-height:76px;border:0;border-left:5px solid #8d9b96;background:#fff;padding:13px 17px;display:grid;grid-template-columns:48px minmax(180px,1fr) auto 34px;align-items:center;gap:14px;text-align:left;color:var(--ink);transition:background .16s ease}.customer-grade-head:hover,.customer-grade.open .customer-grade-head{background:#f8fcfa}.customer-grade-head.grade-S{border-left-color:#27926e}.customer-grade-head.grade-A{border-left-color:#d26660}.customer-grade-head.grade-B{border-left-color:#d29a39}.customer-grade-head.grade-C{border-left-color:#5598c4}.customer-grade-head.grade-D{border-left-color:#899792}.grade-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#edf5f1;font-size:18px;font-weight:900}.grade-name{display:grid;gap:4px}.grade-name b{font-size:16px}.grade-name small{color:var(--muted)}.grade-alerts{display:flex;gap:8px}.grade-alerts em{font-style:normal;font-size:12px;color:#8e514c;background:#fff1f0;border-radius:999px;padding:5px 9px}.grade-alerts em+em{color:#8c661f;background:#fff7e7}.grade-chevron{font-size:24px;color:#70817b;text-align:center}.customer-grade-body{border-top:1px solid #e8f1ed;animation:gradeOpen .16s ease}@keyframes gradeOpen{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.customer-table{min-width:1160px}.customer-row{cursor:pointer}.customer-row:hover td{background:#f4fbf7}.customer-need{max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.follow-chip{display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.follow-chip.overdue{color:#a9413c;background:#fff0ef}.follow-chip.today{color:#8b610d;background:#fff4d9}.follow-chip.due2{color:#2d658f;background:#edf7ff}.follow-chip.normal{color:#287457;background:#eaf7f1}.follow-chip.unset{color:#697670;background:#eef2f0}.customer-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 17px;color:var(--muted);font-size:13px}.customer-pagination>div{display:flex;align-items:center;gap:10px}.customer-pagination b{color:#475851}.customer-state{min-height:180px;padding:34px 20px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:var(--muted);background:#fff}.customer-state b{font-size:17px;color:#34463f}.customer-state .actions{justify-content:center}.customer-state.error-state{color:#98423d;background:#fffafa}
.customer-table.grade-table-S{min-width:1740px}.customer-table.grade-table-A,.customer-table.grade-table-C{min-width:1380px}.customer-table.grade-table-B{min-width:1480px}.customer-table.grade-table-D{min-width:1050px}.customer-sequence{color:var(--muted);text-align:center}.customer-avatar{width:34px;height:34px;border-radius:50%;display:inline-grid;place-items:center;background:#e8f5ef;color:#246d56;font-weight:800}.grade-specific[hidden]{display:none}
.customer-table.grade-table-D{min-width:1280px;table-layout:fixed}.customer-table.grade-table-D tbody tr{height:94px}.customer-table.grade-table-D td{height:94px;overflow:hidden;vertical-align:middle}.customer-table.grade-table-D td:nth-child(1){width:54px}.customer-table.grade-table-D td:nth-child(2){width:68px}.customer-table.grade-table-D td:nth-child(3){width:220px}.customer-table.grade-table-D td:nth-child(4){width:150px}.customer-table.grade-table-D td:nth-child(5){width:190px}.customer-table.grade-table-D td:nth-child(6),.customer-table.grade-table-D td:nth-child(7){width:130px}.customer-table.grade-table-D td:nth-child(3) .link,.customer-table.grade-table-D td:nth-child(3) .muted{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.customer-table.grade-table-D td:nth-child(3) .link{-webkit-line-clamp:2;line-clamp:2}.customer-table.grade-table-D td:nth-child(3) .muted{-webkit-line-clamp:1;line-clamp:1}.customer-table.grade-table-D .customer-list-summary-cell{width:auto}.customer-list-summary{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;line-height:1.55;max-height:3.1em;color:#3d4e47;word-break:break-word}.customer-table.grade-table-D td:last-child{width:106px;white-space:nowrap}.customer-table.grade-table-D td:last-child .btn{white-space:nowrap}
.customer-table.grade-table-C{min-width:1500px;table-layout:fixed}.customer-table.grade-table-C tbody tr{height:94px}.customer-table.grade-table-C td{height:94px;overflow:hidden;vertical-align:middle}.customer-table.grade-table-C td:nth-child(1){width:54px}.customer-table.grade-table-C td:nth-child(2){width:68px}.customer-table.grade-table-C td:nth-child(3){width:210px}.customer-table.grade-table-C td:nth-child(4){width:150px}.customer-table.grade-table-C td:nth-child(5){width:180px}.customer-table.grade-table-C td:nth-child(6){width:120px}.customer-table.grade-table-C td:nth-child(7){width:250px}.customer-table.grade-table-C td:nth-child(8),.customer-table.grade-table-C td:nth-child(9){width:130px}.customer-table.grade-table-C td:nth-child(3) .link,.customer-table.grade-table-C td:nth-child(3) .muted{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.customer-table.grade-table-C td:nth-child(3) .link{-webkit-line-clamp:2;line-clamp:2}.customer-table.grade-table-C td:nth-child(3) .muted{-webkit-line-clamp:1;line-clamp:1}.customer-table.grade-table-C .customer-need{display:-webkit-box;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;line-height:1.5;max-height:3em}.customer-table.grade-table-C .customer-list-summary-cell{width:auto}.customer-table.grade-table-C td:last-child{width:106px;white-space:nowrap}.customer-table.grade-table-C td:last-child .btn{white-space:nowrap}
.candidate-add-whatsapp{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px;margin-top:12px}.candidate-gate-hint{margin-top:14px;padding:9px 12px;border-radius:8px;background:#fff7e7;color:#845f1d;font-size:13px}.candidate-card .candidate-add-whatsapp+.hint{margin-top:6px}
.customer-skeleton{padding:17px;display:grid;gap:12px}.customer-skeleton>div{height:52px;border-radius:7px;background:#f1f6f3;display:grid;grid-template-columns:1.2fr .8fr .6fr;gap:18px;padding:14px}.customer-skeleton span{border-radius:5px;background:linear-gradient(90deg,#e8f0ec 25%,#f7faf8 50%,#e8f0ec 75%);background-size:200% 100%;animation:customerShimmer 1.2s linear infinite}@keyframes customerShimmer{to{background-position:-200% 0}}
.back-link{border:0;background:transparent;color:var(--green);font-weight:700;padding:0;margin-bottom:10px}.back-link:hover{text-decoration:underline}.customer-grade-page-head h2{display:flex;align-items:center;gap:10px}.grade-page-mark{width:38px;height:38px;border-radius:50%;display:inline-grid;place-items:center;font-size:17px;font-weight:900}.customer-grade-list-panel>.table-wrap{min-height:90px}.customer-grade-list-panel>.customer-state,.customer-grade-list-panel>.customer-skeleton{min-height:240px}
@media(max-width:1180px){.customer-toolbar{grid-template-columns:repeat(2,minmax(180px,1fr))}.customer-toolbar #customer-search{grid-column:1/-1}}
@media(max-width:720px){.customer-toolbar{grid-template-columns:1fr}.customer-toolbar #customer-search{grid-column:auto}.customer-grade-head{grid-template-columns:42px 1fr 28px;padding:12px}.grade-alerts{grid-column:2/-1;grid-row:2}.customer-pagination{align-items:flex-start;flex-direction:column}.customer-pagination>div{width:100%;justify-content:space-between}}

/* AI-assisted customer entry: preview first, then manual fill */
.customer-ai-organizer{margin-bottom:20px;border:1px solid #bfe4d5;border-radius:14px;background:linear-gradient(180deg,#f7fffb,#effaf5);padding:16px}
.customer-ai-head,.customer-ai-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.customer-ai-head h4{margin:0 0 4px;font-size:17px;color:#1d493b}.customer-ai-head p{margin:0;color:#64766f;font-size:13px}
.customer-ai-input-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:14px;margin-top:14px}.customer-ai-input-grid .textarea{min-height:132px;background:#fff}
.customer-ai-upload{display:grid;align-content:start;gap:10px}.customer-ai-upload-button{min-height:74px;border:1px dashed #78bda4;border-radius:12px;background:#fff;display:grid;place-items:center;align-content:center;gap:4px;color:#27785c;cursor:pointer;text-align:center;padding:12px}.customer-ai-upload-button:hover{background:#f2fbf7}.customer-ai-upload-button span{color:#7a8b85;font-size:12px;font-weight:500}
.customer-ai-image-list{display:grid;grid-template-columns:repeat(3,minmax(70px,1fr));gap:8px;min-height:72px;align-items:center}.customer-ai-image-list>.muted{grid-column:1/-1;text-align:center;font-size:12px}
.customer-ai-thumb{position:relative;border:1px solid #d7e8e0;border-radius:9px;background:#fff;overflow:hidden;min-width:0}.customer-ai-thumb img{display:block;width:100%;height:72px;object-fit:cover}.customer-ai-thumb span{display:block;padding:4px 6px;color:#64766f;font-size:11px;text-align:center}.customer-ai-thumb button{position:absolute;right:4px;top:4px;width:23px;height:23px;border:0;border-radius:50%;background:rgba(26,42,36,.78);color:#fff;font-size:17px;line-height:20px;padding:0}
.customer-ai-consent{margin-top:12px;color:#6a746f;font-size:12px;line-height:1.55}.customer-ai-actions{justify-content:flex-end;margin-top:10px}
.customer-chat-composer{margin-top:14px;border:1px solid #b8d9cd;border-radius:8px;background:#fff;overflow:hidden;transition:border-color .16s,box-shadow .16s}.customer-chat-composer.is-dragging{border-color:#249b75;box-shadow:0 0 0 3px rgba(36,155,117,.12)}.customer-chat-composer>.textarea{min-height:190px;width:100%;border:0;border-radius:0;resize:vertical;box-shadow:none}.customer-chat-composer>.textarea:focus{outline:0;box-shadow:inset 0 0 0 2px rgba(36,155,117,.14)}.customer-chat-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e2ece8;padding:10px 12px;background:#f8fbfa}.customer-chat-tools .btn{cursor:pointer}.customer-chat-attachments{border-top:1px solid #edf2f0;padding:10px 12px;min-height:54px;background:#fff}.customer-chat-file{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid #d9e4e0;border-radius:8px;padding:10px 38px 10px 10px;background:#f8faf9}.customer-chat-file>b{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;background:#e4f3ed;color:#147655;font-size:12px}.customer-chat-file>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.customer-chat-file>small{color:#75817c}.customer-chat-file>button{position:absolute;right:8px;top:50%;translate:0 -50%;border:0;background:transparent;font-size:20px;color:#6d7874;cursor:pointer}.customer-import-summary{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.customer-ai-preview{margin-top:16px;border-top:1px solid #cfe8de;padding-top:16px}.customer-ai-preview-head>div{display:grid;gap:3px}.customer-ai-preview-head span,.customer-ai-preview-head small{color:#6f8079;font-size:12px}.customer-ai-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}.customer-ai-preview-field{border:1px solid #d8e9e2;border-radius:9px;background:#fff;padding:9px 10px;min-width:0}.customer-ai-preview-field.wide{grid-column:span 3}.customer-ai-preview-field label{display:block;color:#71817b;font-size:11px;margin-bottom:4px}.customer-ai-preview-field p{margin:0;color:#263e36;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.customer-ai-preview .warning ul{margin:7px 0 0;padding-left:20px}.customer-ai-missing{margin-top:10px;color:#687972;font-size:12px}.customer-ai-preview-actions{justify-content:flex-end;margin-top:12px}
.customer-edit-organizer .customer-chat-composer>.textarea{min-height:150px}.customer-ai-compare{display:grid;gap:8px;margin:14px 0}.customer-ai-compare-row{display:grid;grid-template-columns:22px 130px minmax(0,1fr) minmax(0,1fr);align-items:start;gap:10px;padding:10px;border:1px solid #d8e9e2;border-radius:8px;background:#fff;cursor:pointer}.customer-ai-compare-row.empty{opacity:.58}.customer-ai-compare-row>input{margin-top:18px}.customer-ai-compare-label{font-weight:800;color:#2e443c;padding-top:15px}.customer-ai-compare-row>span:not(.customer-ai-compare-label){display:grid;gap:4px;min-width:0}.customer-ai-compare-row small{color:#788780;font-size:11px}.customer-ai-compare-row b{font-size:13px;line-height:1.5;white-space:pre-wrap;word-break:break-word}
@media(max-width:760px){.customer-ai-input-grid,.customer-ai-preview-grid{grid-template-columns:1fr}.customer-ai-preview-field.wide{grid-column:auto}.customer-ai-head,.customer-ai-preview-head{display:grid}.customer-ai-image-list{grid-template-columns:repeat(2,1fr)}.customer-chat-tools{align-items:flex-start;display:grid}.customer-chat-tools .actions{display:grid;grid-template-columns:1fr 1fr}.customer-ai-compare-row{grid-template-columns:22px 1fr}.customer-ai-compare-label{padding-top:0}.customer-ai-compare-row>span:not(.customer-ai-compare-label){grid-column:2}}

/* V1.3 customer workbench: complete data, simple default view */
.customer-workbench{display:grid;gap:16px}.workbench-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.workbench-head h2{margin:0;font-size:25px;display:flex;align-items:center;gap:10px}.workbench-head p{margin:7px 0 0;color:var(--muted)}
.workbench-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#fff;border:1px solid #d8e9e2;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}.workbench-summary>div{border-right:1px solid #e6f0ec}.workbench-summary>div:last-child{border-right:0}.workbench-summary .field{min-height:76px;padding:13px 16px;border-bottom:1px solid #edf4f1}.workbench-summary .field:last-child{border-bottom:0}.workbench-summary .field label{font-size:12px;color:#75867f}.workbench-summary .field div{font-size:15px;line-height:1.5;color:#263a33;word-break:break-word}
.workbench-status-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #d9e9e2;border-radius:12px;background:#f8fcfa;overflow:hidden}.workbench-status-strip span{padding:11px 14px;border-right:1px solid #e4efea;color:#445951}.workbench-status-strip span:last-child{border-right:0}.workbench-status-strip b{display:block;font-size:11px;color:#7c8b86;margin-bottom:4px}
.workbench-main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.75fr);gap:16px;align-items:start}.workbench-history,.workbench-assistant{background:#fff;border:1px solid #d8e9e2;border-radius:14px;padding:18px;box-shadow:var(--shadow)}.workbench-history>.section-title,.workbench-assistant .section-title{border:0;padding:0;margin:0 0 16px}.assistant-sticky{position:sticky;top:84px}
.workbench-message,.workbench-event{margin:0 0 12px;border:1px solid #dfebe6;border-radius:12px;padding:12px 14px;background:#fbfefd;transition:box-shadow .2s ease,border-color .2s ease}.workbench-message.inbound{border-left:4px solid #4f8fbb;background:#f7fbff}.workbench-message.outbound{border-left:4px solid #2a9d77;background:#f5fcf8}.workbench-message.note{border-left:4px solid #95a39e}.workbench-event{border-left:4px solid #c18422;background:#fffaf1}.workbench-item-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.workbench-item-head span,.workbench-message small,.workbench-event small{font-size:12px;color:var(--muted)}.workbench-message p,.workbench-event p{margin:8px 0;line-height:1.65;white-space:pre-wrap}.evidence-highlight{border-color:#e0aa49!important;box-shadow:0 0 0 4px rgba(224,170,73,.22)}
.analysis-result{display:grid;gap:13px}.analysis-title{display:flex;justify-content:space-between;align-items:center}.confidence,.memory-status{font-size:11px;border-radius:999px;background:#edf7f3;color:#29775c;padding:4px 8px}.analysis-conclusion{margin:0;padding:12px;border-radius:10px;background:#f5faf8;line-height:1.7;font-weight:600}.analysis-evidence,.analysis-block,.analysis-replies,.analysis-suggestions{display:grid;gap:7px;border-top:1px solid #e8f1ed;padding-top:12px}.analysis-evidence.insufficient{color:#9a5c27;background:#fff9ef;border:1px solid #f0dfbd;border-radius:10px;padding:10px}.evidence-link{border:0;border-left:3px solid #74b99f;background:#f7fbf9;padding:8px 10px;text-align:left;color:#3f5a51;border-radius:0 8px 8px 0}.analysis-block p,.analysis-replies p{margin:0;line-height:1.65;white-space:pre-wrap}.analysis-replies summary,.workbench-details summary{cursor:pointer;font-weight:700;color:#315c4d}.analysis-replies>div{display:grid;gap:6px;margin-top:10px}.analysis-replies b{font-size:12px;color:var(--muted)}.ai-suggestion{display:grid;gap:8px;border:1px solid #dceae4;border-radius:10px;padding:10px;background:#fbfefd}.ai-suggestion>div{display:flex;gap:6px}.assistant-empty{padding:28px 10px;text-align:center;color:var(--muted)}.assistant-empty b{color:#3b524a}
.workbench-details{background:#fff;border:1px solid #d8e9e2;border-radius:14px;padding:15px 18px;box-shadow:var(--shadow)}.workbench-details>summary{font-size:15px}.workbench-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:16px}.workbench-detail-grid h3{font-size:15px;margin:0 0 10px}.contact-chip,.memory-item,.source-line{display:grid;gap:5px;padding:10px 0;border-bottom:1px solid #edf3f0}.contact-chip:last-child,.memory-item:last-child,.source-line:last-child{border-bottom:0}.contact-chip span,.memory-item small{color:var(--muted);font-size:12px}.memory-item>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.memory-item p,.source-line p{margin:0;line-height:1.55}
.workbench-attachments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px;padding:12px;border-radius:12px;background:#f7fbf9}.workbench-attachments h4{grid-column:1/-1;margin:0}.attachment-card{display:grid;gap:6px;min-width:0}.attachment-card img{width:100%;height:110px;object-fit:cover;border-radius:8px;border:1px solid #d9e7e1}.attachment-card span{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-deleted{height:110px;display:grid;place-items:center;text-align:center;border:1px dashed #cfded7;border-radius:8px;color:var(--muted);font-size:12px}
.customer-ai-image-item{position:relative;display:grid;gap:4px}.customer-ai-image-item img{width:100%;height:72px;object-fit:cover;border-radius:8px}.customer-ai-image-item button{position:absolute;right:4px;top:4px;border:0;border-radius:50%;width:23px;height:23px;background:rgba(23,53,45,.8);color:#fff}.customer-ai-image-item span{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-upload-row{display:grid}.chat-preview-card{margin-top:10px;border:1px solid #d9e9e2;border-radius:10px;background:#f8fcfa;padding:12px}.chat-preview-card p{display:grid;grid-template-columns:48px 1fr;gap:8px;margin:8px 0;line-height:1.55}.chat-preview-card p span{font-size:11px;color:var(--green);font-weight:800}.warning-list{display:grid;gap:4px;color:#9b6721;font-size:12px}
.customer-chat-preview,.customer-memory-preview{margin-top:14px;padding:14px;border:1px solid #d9e9e2;border-radius:8px;background:#f8fcfa}.customer-chat-preview-head,.chat-session-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.customer-chat-preview-head span,.chat-session-head span{font-size:12px;color:var(--muted)}.customer-chat-summary,.chat-session-summary{margin:10px 0;color:#35554b;line-height:1.65}.customer-chat-preview-message,.chat-preview-bilingual{display:grid;grid-template-columns:64px 1fr;gap:4px 10px;padding:9px 0;border-top:1px solid #e5efeb}.customer-chat-preview-message>span,.chat-preview-bilingual>span{grid-row:1/3;font-size:11px;font-weight:800;color:var(--green)}.customer-chat-preview-message small,.chat-preview-bilingual small{grid-column:2;color:var(--muted);font-size:12px;line-height:1.5}.customer-chat-preview-message.key,.chat-preview-bilingual.key{background:#fffaf0}.customer-memory-preview{display:grid;gap:6px}.customer-memory-preview span{font-size:13px;line-height:1.55;color:#476158}.workbench-chat-session{margin:0 0 16px;padding:15px;border:1px solid #d8e9e2;border-radius:8px;background:#fff}.chat-session-head>div{display:grid;gap:3px}.chat-session-key-messages{margin-top:10px}.chat-session-full{margin-top:10px;border-top:1px solid #e5efeb;padding-top:10px}.chat-session-full>summary{cursor:pointer;color:var(--green);font-weight:750}.chat-session-full>div{margin-top:10px}.workbench-message.key-message{border-color:#e3bd72;background:#fffaf0}.message-translation{font-size:15px;font-weight:650;color:#1e332d}.message-original{font-size:12px;color:var(--muted);line-height:1.5}.key-reason{display:block;color:#9b6721!important}.memory-actions{display:flex!important;justify-content:flex-start!important;flex-wrap:wrap;margin-top:5px}
.ai-action-table{display:grid;overflow:auto}.ai-action-head,.ai-action-row{display:grid;grid-template-columns:100px minmax(190px,.9fr) 62px minmax(180px,.9fr) minmax(280px,1.35fr) 100px;gap:14px;align-items:center;min-width:1050px}.ai-action-head{padding:10px 18px;background:#f7fbf9;color:#71817b;font-size:12px;font-weight:700;border-bottom:1px solid #e6f0ec}.ai-action-row{position:relative;padding:13px 18px;border-bottom:1px solid #eaf2ee}.ai-action-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px}.ai-action-row.urgency-critical:before{background:var(--red)}.ai-action-row.urgency-today:before{background:var(--amber)}.ai-action-row.urgency-normal:before{background:#4e9da1}.ai-action-row:last-child{border-bottom:0}.urgency-chip{display:inline-flex;justify-content:center;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:800}.urgency-critical .urgency-chip{color:var(--red);background:var(--red-soft)}.urgency-today .urgency-chip{color:var(--amber);background:var(--amber-soft)}.urgency-normal .urgency-chip{color:#287479;background:#e8f6f6}.ai-action-customer,.ai-action-advice{display:grid;gap:4px}.ai-customer-link{border:0;background:transparent;padding:0;text-align:left;color:var(--blue);font-weight:800}.ai-action-customer small,.ai-action-advice small{color:var(--muted);line-height:1.45}.ai-action-reason,.ai-action-advice b,.ai-action-advice small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}
.must-follow-wrap{max-width:100%}.must-follow-table{min-width:1740px;table-layout:fixed}.must-follow-table tbody tr{height:92px}.must-follow-table td{height:92px;vertical-align:middle;overflow:hidden}.must-follow-table th:nth-child(1),.must-follow-table td:nth-child(1){width:54px}.must-follow-table th:nth-child(2),.must-follow-table td:nth-child(2){width:64px}.must-follow-table th:nth-child(3),.must-follow-table td:nth-child(3){width:220px}.must-follow-table th:nth-child(4),.must-follow-table td:nth-child(4){width:145px}.must-follow-table th:nth-child(5),.must-follow-table td:nth-child(5){width:180px}.must-follow-table th:nth-child(6),.must-follow-table td:nth-child(6){width:130px}.must-follow-table th:nth-child(7),.must-follow-table td:nth-child(7){width:220px}.must-follow-table th:nth-child(8),.must-follow-table td:nth-child(8){width:110px}.must-follow-table th:nth-child(9),.must-follow-table td:nth-child(9){width:180px}.must-follow-table th:nth-child(10),.must-follow-table td:nth-child(10){width:150px}.must-follow-table th:nth-child(11),.must-follow-table td:nth-child(11){width:220px}.must-follow-table th:nth-child(12),.must-follow-table td:nth-child(12){width:105px}.must-follow-table th:nth-child(13),.must-follow-table td:nth-child(13){width:170px}.must-follow-status{display:grid;justify-items:start;gap:6px}.must-follow-status small{color:var(--muted)}
.candidate-card{overflow:hidden}.candidate-summary{list-style:none;display:grid;grid-template-columns:minmax(260px,1.4fr) 110px 150px 120px 90px 26px;gap:12px;align-items:center;padding:15px 18px;cursor:pointer;background:#fff}.candidate-summary::-webkit-details-marker{display:none}.candidate-summary:hover{background:#f8fcfa}.candidate-summary-company{display:grid;gap:4px}.candidate-summary-company b{font-size:16px}.candidate-summary-company span{color:var(--muted);font-size:13px}.candidate-summary-score{font-weight:800;color:#2b5f50}.candidate-chevron{font-size:22px;color:#72837d;transition:transform .16s ease}.candidate-card[open] .candidate-chevron{transform:rotate(180deg)}.candidate-review-body{border-top:1px solid var(--line)}.candidate-review-section{min-width:0}.candidate-review-section h4{margin:0 0 12px;font-size:15px}.candidate-action-bar{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;padding-top:14px;border-top:1px solid #e7f0ec}.candidate-action-bar .candidate-assignee{width:auto;min-width:210px}.candidate-action-bar>.muted{margin-right:auto}
.material-connection{display:grid;gap:12px;margin-bottom:16px;padding:14px 16px;border:1px solid #d9e9e2;border-radius:8px;background:#fff}.material-connection.connected{border-left:4px solid var(--green)}.material-connection.disconnected{border-left:4px solid var(--amber);background:#fffdf8}.material-connection>div:first-child{display:grid;gap:4px}.material-connection>div:first-child span,.material-connection small{color:var(--muted);font-size:13px}.material-root-controls{display:grid;grid-template-columns:minmax(320px,1fr) auto auto;gap:8px}.material-preview:disabled{cursor:not-allowed;opacity:.72}
@media(max-width:1100px){.workbench-main{grid-template-columns:1fr}.assistant-sticky{position:static}.workbench-detail-grid{grid-template-columns:1fr 1fr}.candidate-summary{grid-template-columns:minmax(230px,1fr) repeat(2,auto) 26px}.candidate-summary-score{display:none}.candidate-summary>.badge:nth-of-type(3){display:none}.material-root-controls{grid-template-columns:1fr auto}.material-root-controls .btn.primary{grid-column:1/-1}}
@media(max-width:760px){.workbench-head{display:grid}.workbench-summary,.workbench-status-strip,.workbench-detail-grid{grid-template-columns:1fr}.workbench-summary>div,.workbench-status-strip span{border-right:0;border-bottom:1px solid #e6f0ec}.workbench-status-strip span:last-child{border-bottom:0}.workbench-attachments{grid-template-columns:1fr 1fr}.ai-action-head{display:none}.ai-action-row{min-width:0;grid-template-columns:1fr auto;padding:14px}.ai-action-row>*{grid-column:1/-1}.ai-action-row>.badge{grid-column:2;grid-row:1}.ai-action-row>.urgency-chip{grid-column:1;grid-row:1;justify-self:start}.ai-action-row>.btn{justify-self:start}.candidate-summary{grid-template-columns:1fr auto;padding:13px}.candidate-summary>.badge,.candidate-summary-score{display:none}.candidate-chevron{grid-column:2;grid-row:1}.candidate-columns{grid-template-columns:1fr}.candidate-action-bar{justify-content:flex-start}.candidate-action-bar .candidate-assignee{width:100%}.material-root-controls{grid-template-columns:1fr}.material-root-controls .btn.primary{grid-column:auto}}

/* V1.4 customer workbench: one page scroll, paired daily history and AI */
.content:has(.customer-workbench){max-width:1680px;width:100%;padding-left:24px;padding-right:24px}
.workbench-timeline-head{display:flex;align-items:flex-end;justify-content:space-between;padding:10px 2px 0}.workbench-timeline-head h3{margin:0;color:#20352e;font-size:20px}.workbench-timeline-head p{margin:5px 0 0;color:var(--muted)}
.workbench-days{position:relative;display:grid;gap:22px;padding:0 0 4px 34px}.workbench-days:before{content:"";position:absolute;left:11px;top:18px;bottom:18px;width:2px;background:#cde3da}
.deepseek-key-row{display:grid;grid-template-columns:minmax(280px,1fr) auto auto auto;gap:8px;align-items:center}.deepseek-key-row .input{min-width:0}@media(max-width:760px){.deepseek-key-row{grid-template-columns:1fr}.deepseek-key-row .btn{width:100%}}
.workbench-day{position:relative;border:1px solid #d7e9e1;border-radius:14px;background:#fff;box-shadow:0 12px 32px rgba(31,83,65,.08);scroll-margin-top:82px;overflow:visible}.workbench-day:before{content:"";position:absolute;left:-30px;top:25px;width:14px;height:14px;border:4px solid #eff8f4;border-radius:50%;background:#2a9d77;box-shadow:0 0 0 1px #8bc9b2}
.workbench-day-head{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 18px;border-bottom:1px solid #deece6;background:#f8fcfa;border-radius:14px 14px 0 0}.workbench-day-head>div:first-child{display:flex;align-items:center;gap:10px}.workbench-day-head time{font-size:20px;font-weight:850;color:#203830}.today-mark{display:inline-flex;padding:3px 8px;border-radius:999px;background:#dff4eb;color:#167354;font-size:12px;font-weight:800}.day-metrics{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.day-metrics span{padding:4px 8px;border-radius:999px;background:#eef4f1;color:#5a6d66;font-size:12px}.day-metrics .replied,.day-metrics .counted{background:#e5f5ee;color:#217356}.day-metrics .no-reply{background:#fff3dd;color:#91661f}
.workbench-day-head{width:100%;border-left:0;border-right:0;border-top:0;text-align:left;cursor:pointer;color:inherit}.workbench-day.is-collapsed .workbench-day-head{border-bottom:0;border-radius:14px}.day-chevron{font-size:24px;line-height:1;color:#278d6d;transition:transform .16s}.workbench-day.is-expanded .day-chevron{transform:rotate(90deg)}.workbench-day-body[hidden]{display:none}.chat-preview-identity{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.chat-preview-identity .select{width:auto;min-width:96px;padding:5px 28px 5px 8px}
.workbench-day-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(360px,1fr);align-items:stretch}.workbench-day-history,.workbench-day-assistant{min-width:0;padding:18px}.workbench-day-history{border-right:1px solid #e2ece8}.workbench-day-assistant{background:#fbfefd;border-radius:0 0 14px 0}.daily-section-title{margin-bottom:14px}.daily-section-title h3,.workbench-day-assistant h3{margin:0;color:#20352e;font-size:17px}.daily-section-title p,.daily-section-head span{display:block;margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.daily-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.daily-section-head>div{min-width:0}.daily-section-head b{color:#263a33}.daily-empty{display:grid;place-items:center;min-height:100px;margin-bottom:14px;border:1px dashed #ccddd6;border-radius:10px;background:#fbfdfc;color:var(--muted)}
.daily-chat-composer{margin-top:16px;border:1px solid #badbce;border-radius:12px;background:#f6fcf9;padding:14px}.daily-chat-composer form{display:grid;gap:11px}.daily-chat-dropzone{overflow:hidden;border:1px solid #b8d9cd;border-radius:10px;background:#fff;transition:border-color .16s,box-shadow .16s}.daily-chat-dropzone.is-dragging{border-color:#249b75;box-shadow:0 0 0 4px rgba(36,155,117,.12)}.daily-chat-dropzone>.textarea{display:block;width:100%;min-height:170px;border:0;border-radius:0;resize:vertical;background:#fff;box-shadow:none}.daily-chat-dropzone>.textarea:focus{outline:0;box-shadow:inset 0 0 0 2px rgba(36,155,117,.12)}.daily-chat-input-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e6efeb;padding:8px 10px 8px 13px;color:#7a8984;font-size:12px;background:#fbfefd}.daily-attach-control{width:34px;height:34px;display:grid;place-items:center;border:1px solid #d4e4dd;border-radius:7px;background:#fff;color:#24785b;font-size:22px;line-height:1;cursor:pointer}.daily-attach-control:hover{border-color:#87c9b0;background:#f0faf6}.daily-chat-files{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.daily-chat-footer{display:flex;align-items:end;justify-content:space-between;gap:14px}.daily-chat-footer>label{display:grid;gap:5px;min-width:260px;color:#52645d;font-size:12px;font-weight:700}.daily-composer-actions{display:flex;justify-content:flex-end;gap:8px}.daily-chat-composer .chat-preview-card{max-height:460px;overflow:auto;background:#fff}
.candidate-paste-panel .panel-head{align-items:center}.candidate-import-dropzone{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;transition:border-color .16s,box-shadow .16s,background .16s}.candidate-import-dropzone.is-dragging{border-color:#269b76;background:#f2fbf7;box-shadow:0 0 0 4px rgba(38,155,118,.13)}.candidate-import-dropzone .candidate-paste-textarea{display:block;width:100%;min-height:240px;border:0;border-radius:0;box-shadow:none;line-height:1.7;font-family:inherit}.candidate-import-dropzone .candidate-paste-textarea:focus{outline:0;box-shadow:inset 0 0 0 2px rgba(38,155,118,.1)}.candidate-import-drop-hint{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 12px;border-top:1px solid #e4eee9;background:#f9fcfb;color:#60726b;font-size:12px}.candidate-import-drop-hint span:first-child{font-weight:800;color:#28765c}.candidate-paste-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px}.candidate-source-warning{color:#9a6813;background:#fff7e6;border:1px solid #f0d6a6;border-radius:6px;padding:10px 12px}
.candidate-contact-check{display:grid;grid-template-columns:minmax(160px,1fr) minmax(240px,1fr);gap:14px;padding:12px 0;border-bottom:1px solid #e4efe9}.candidate-contact-check:last-child{border-bottom:0}.candidate-contact-check small,.candidate-contact-check p{display:block;margin:3px 0;color:var(--muted)}.candidate-wa-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.candidate-wa-actions>small{flex-basis:100%}.wa-confirm-check{display:inline-flex;align-items:center;gap:7px;font-weight:700;color:#236d55}.candidate-assignee{width:auto;min-width:190px}.resource-filters{display:grid;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) minmax(160px,.8fr) auto;gap:10px;margin-bottom:16px}.resource-tabs{margin-top:0}
.candidate-wa-actions{display:grid;justify-items:start;align-content:center;gap:7px}.candidate-wa-actions>small{font-size:12px;line-height:1.4}.candidate-add-whatsapp{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:12px}.candidate-add-whatsapp .btn{white-space:nowrap}
@media(max-width:760px){.candidate-contact-check,.resource-filters{grid-template-columns:1fr}.candidate-assignee{width:100%}.candidate-import-drop-hint{align-items:flex-start;flex-direction:column;gap:3px}}

.candidate-table{margin-top:16px;overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(31,91,72,.06)}
.candidate-table-inner{min-width:1360px}
.candidate-table-head,.candidate-review-row{display:grid;grid-template-columns:minmax(190px,1.25fr) minmax(105px,.72fr) minmax(125px,.86fr) minmax(160px,1fr) minmax(150px,.9fr) minmax(120px,.76fr) minmax(230px,1.45fr) minmax(130px,.82fr);gap:14px;align-items:center}
.candidate-table-head{padding:12px 16px;background:#f4faf7;border-bottom:1px solid var(--line);color:#52665f;font-size:12px;font-weight:800}
.candidate-empty-row{display:flex;align-items:center;justify-content:center;min-height:150px;padding:28px;color:var(--muted);background:#fff}
.candidate-table-card{margin:0;border:0;border-radius:0;box-shadow:none;border-bottom:1px solid #e4eee9}
.candidate-table-card:last-child{border-bottom:0}
.candidate-review-row{min-height:88px;padding:13px 16px;background:#fff}
.candidate-table-card[open] .candidate-review-row{background:#f8fcfa}
.candidate-cell{min-width:0;display:flex;flex-direction:column;gap:4px;color:#263d35;font-size:13px;line-height:1.45;overflow:hidden}
.candidate-cell b{font-size:14px;color:#203a31}
.candidate-cell span,.candidate-cell b,.candidate-cell a{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-break:break-word}
.candidate-cell small{display:block;color:var(--muted);font-size:11px}
.candidate-cell a{color:var(--blue);text-decoration:none}
.candidate-cell a:hover{text-decoration:underline}
.candidate-company-cell span{color:var(--muted)}
.candidate-contact-cell>span,.candidate-cell:nth-child(4)>span{-webkit-line-clamp:1}
.candidate-social-cell a,.candidate-social-cell>span{width:max-content;max-width:100%;-webkit-line-clamp:1}
.candidate-signal-cell span{color:#42574f}
.candidate-note-cell{position:relative;align-items:flex-start;padding-right:22px;overflow:visible}
.candidate-table-head>span:last-child,.candidate-review-row>.candidate-note-cell{position:sticky;right:0;z-index:2;background:#fff;padding-left:12px;box-shadow:-10px 0 16px rgba(43,90,74,.08)}
.candidate-table-head>span:last-child{z-index:3;background:#f4faf7;align-self:stretch;display:flex;align-items:center}
.candidate-table-card[open] .candidate-review-row>.candidate-note-cell{background:#f8fcfa}
.candidate-note-cell .candidate-chevron{position:absolute;right:0;top:50%;transform:translateY(-50%)}
.candidate-table-card[open] .candidate-note-cell .candidate-chevron{transform:translateY(-50%) rotate(180deg)}
.candidate-note-text{-webkit-line-clamp:2!important;color:#42574f}
.wa-status{display:inline-flex!important;width:max-content;max-width:100%;align-items:center;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;-webkit-line-clamp:1!important}
.wa-status.verified{background:#e8f7f0;color:#167052}.wa-status.pending{background:#fff4d9;color:#8a6213}.wa-status.missing{background:#eef1f0;color:#66746f}
.candidate-table-card .candidate-review-body{padding:20px 22px 18px;background:#fbfdfc}
.candidate-review-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.candidate-review-title h4,.candidate-review-title p{margin:0}.candidate-review-title p{margin-top:4px}
.candidate-review-badges{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.candidate-detail-note{margin-bottom:18px;padding:14px 16px;border:1px solid #deebe5;border-radius:8px;background:#fff}.candidate-detail-note h4,.candidate-detail-note p{margin:0}.candidate-detail-note p{margin-top:8px;line-height:1.65;white-space:pre-wrap;word-break:break-word}
@media(max-width:760px){.candidate-table{margin-left:-2px;margin-right:-2px}.candidate-table-inner{min-width:1360px}.candidate-review-title{display:grid}}
.daily-summary{margin-top:16px;border-top:1px solid #e2ece8;padding-top:15px}.daily-summary>.textarea{min-height:112px;resize:vertical;background:#fbfefd;line-height:1.65}
.workbench-day-assistant .assistant-empty{min-height:220px;display:grid;place-items:center;align-content:center;border:1px dashed #d3e2dc;border-radius:10px;background:#fff}.workbench-day-assistant .analysis-result{position:relative}.legacy-analysis-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.legacy-analysis-list>.analysis-result{padding:14px;border:1px solid #dceae4;border-radius:10px;background:#fbfefd}
.workbench-day-assistant .daily-section-head .btn{flex:0 0 auto;min-width:112px;white-space:nowrap}
.workbench-session-attachments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.workbench-session-attachments .attachment-card{padding:8px;border:1px solid #e1ece7;border-radius:9px;background:#f8fbfa}.workbench-session-attachments .attachment-card img,.workbench-session-attachments .attachment-deleted{height:92px}
.message-attachments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.message-attachment{min-width:0;border:1px solid #dce9e3;border-radius:8px;background:#f8fbfa;color:#24483c;text-decoration:none;overflow:hidden}.message-attachment.image{display:grid}.message-attachment.image img{display:block;width:100%;height:150px;object-fit:contain;background:#fff}.message-attachment.image span,.message-attachment.file span{padding:7px;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachment.file{display:flex;align-items:center;gap:8px;padding:10px}.message-attachment.file b{padding:5px;border-radius:5px;background:#e2f2ec;color:#167354}.message-attachment.missing{padding:9px;color:#8a5e19;background:#fff9ec;border-color:#ead6a7;font-size:12px}.workbench-session-attachments h4{grid-column:1/-1;margin:0}.import-file-thumb{width:42px;height:42px;object-fit:cover;border-radius:6px}
@media(max-width:1180px){.content:has(.customer-workbench){padding-left:20px;padding-right:20px}.workbench-day-grid{grid-template-columns:minmax(0,1.5fr) minmax(330px,1fr)}.daily-chat-files{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){.workbench-day-grid{grid-template-columns:1fr}.workbench-day-history{border-right:0;border-bottom:1px solid #e2ece8}.workbench-day-assistant{border-radius:0 0 14px 14px}.legacy-analysis-list{grid-template-columns:1fr}}
@media(max-width:760px){.content:has(.customer-workbench){padding-left:14px;padding-right:14px}.workbench-days{padding-left:20px}.workbench-days:before{left:5px}.workbench-day:before{left:-21px;width:11px;height:11px}.workbench-day-head{align-items:flex-start;display:grid}.day-metrics{justify-content:flex-start}.workbench-day-history,.workbench-day-assistant{padding:14px}.daily-section-head,.daily-chat-footer{display:grid}.daily-chat-files,.workbench-session-attachments{grid-template-columns:1fr}.daily-chat-footer>label{min-width:0}.daily-composer-actions{display:grid;grid-template-columns:1fr}.daily-composer-actions .btn{width:100%}}

/* Candidate review: use the available desktop workspace without changing its data or workflow. */
.content:has(.candidate-paste-panel){width:100%;max-width:1680px;padding-left:24px;padding-right:24px}
.candidate-paste-textarea{min-height:200px}
.candidate-table{box-shadow:0 8px 22px rgba(31,91,72,.05)}
.candidate-table-head{font-size:13px}
.candidate-cell{font-size:14px}
.candidate-cell b{font-size:15px}
.candidate-empty-row{min-height:140px}

@media(min-width:1680px){
  .candidate-table-inner{min-width:0}
  .candidate-table-head,.candidate-review-row{grid-template-columns:minmax(180px,1.18fr) minmax(105px,.7fr) minmax(130px,.82fr) minmax(165px,1fr) minmax(150px,.88fr) minmax(125px,.75fr) minmax(220px,1.35fr) minmax(140px,.86fr)}
}

/* Resource-pool qualification workspace: compact and sales-facing. */
.resource-qualification-body{padding:18px 22px 16px!important;background:#f8fcfa!important}
.resource-workspace-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.resource-workspace-heading h4{margin:0;color:#173f31;font-size:20px;line-height:1.35}
.resource-workspace-heading p{margin:4px 0 0;color:#71837b;font-size:13px;line-height:1.5}
.resource-lead-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:16px;border:1px solid #dcece5;border-radius:10px;overflow:hidden;background:#dcece5}
.resource-lead-field{display:grid;gap:5px;min-width:0;padding:11px 13px;background:#fff}
.resource-lead-field.wide{grid-column:span 2}
.resource-lead-field span{color:#7b8d86;font-size:12px;font-weight:700}
.resource-lead-field b{min-width:0;color:#29473c;font-size:14px;font-weight:600;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.resource-lead-field.wide b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.resource-qualification-body .candidate-columns{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px}
.resource-qualification-body .candidate-review-section{padding:16px;background:#fff}
.resource-qualification-body .candidate-review-section h4{font-size:17px}
.resource-qualification-body .candidate-contact-check{grid-template-columns:minmax(150px,.85fr) minmax(300px,1.15fr);padding:11px 0}
.resource-qualification-body .candidate-contact-check p{margin:4px 0 0;color:#496359;font-size:15px}
.resource-qualification-body .candidate-contact-check b{font-size:15px}
.resource-wa-status-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.resource-wa-status-row .btn{white-space:nowrap}
.resource-qualification-body .candidate-wa-actions{padding:7px 9px;background:#f2faf6}
.resource-qualification-body .candidate-add-whatsapp{margin-top:12px;padding-top:12px}
.resource-qualification-body .candidate-detail-note{margin-bottom:0;padding:13px 15px}
.resource-qualification-body .candidate-detail-note p{font-size:14px;line-height:1.55}
.resource-qualification-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid #deebe5}
.resource-qualification-main{order:2;margin-left:auto}
.resource-qualification-main .btn{min-width:170px;min-height:42px;font-weight:800}
.resource-qualification-secondary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.resource-qualification-secondary .is-favorite{color:#167052;border-color:#8bcdb0;background:#edf9f2}
.resource-qualification-body .candidate-gate-hint{margin-top:14px}
.resource-copy-action{display:flex;align-items:center;justify-content:flex-start;margin-top:12px;padding-top:12px;border-top:1px solid #e0ebe6}
.resource-copy-action .btn{min-height:34px;padding:7px 14px;font-size:13px;color:#355c4c}
.resource-qualification-actions{padding-top:14px;margin-top:18px}
.resource-qualification-secondary .btn{min-height:36px}

@media(max-width:760px){
  .content:has(.candidate-paste-panel){padding-left:14px;padding-right:14px}
  .candidate-paste-textarea{min-height:220px}
}

/* 内容发布：纵向执行卡片，平台说明长度不同也保持稳定结构。 */
.content-publish-page{width:100%;max-width:1200px;margin:0 auto;padding-bottom:20px}
.content-publish-head{align-items:flex-start;gap:16px;margin-bottom:14px}
.content-publish-head .back-link{display:inline-flex;margin-bottom:8px}
.content-publish-head h2{font-size:32px;line-height:1.2;margin-bottom:4px}
.content-publish-head p{font-size:14px;color:#7a8a85}
.content-publish-overview{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0 14px;padding:13px 18px;background:#fff;border:1px solid #e3ebe7;border-radius:12px;box-shadow:0 4px 12px rgba(34,61,49,.04)}
.content-publish-overview h3{margin:2px 0 3px;color:#20382f;font-size:18px}
.content-publish-overview p{margin:0;color:#71827a;font-size:13px}
.content-publish-overview .eyebrow{color:#18815f;font-size:11px;font-weight:800;letter-spacing:.04em}
.content-publish-progress{display:flex;align-items:baseline;gap:9px;min-width:132px;padding:9px 14px;border-radius:10px;background:#f0f3f1;color:#596a63}
.content-publish-progress b{font-size:26px;line-height:1}
.content-publish-progress span{font-size:12px;margin:0}
.content-publish-progress.progress-1{background:#fff6dd;color:#a16c08}
.content-publish-progress.progress-2{background:#eef5ff;color:#3978af}
.content-publish-progress.progress-3{background:#e7f7ef;color:#18815f}
.content-publish-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:14px}
.content-channel-card{display:flex;flex-direction:column;min-width:0;height:100%;padding:18px;background:#fff;border:1px solid #e3ebe7;border-radius:16px;box-shadow:0 4px 12px rgba(34,61,49,.04)}
.content-channel-card.status-uploaded{border-color:#e8c36b}
.content-channel-card.status-done{border-color:#9bd7bd}
.content-channel-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}
.content-channel-card-head>div{display:flex;align-items:center;gap:12px;min-width:0}
.content-channel-card-head h3{margin:0;color:#20382f;font-size:18px;line-height:1.3}
.content-channel-order{color:#9aa7a1;font-size:11px}
.content-channel-status{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;background:#f0f3f1;color:#697872;font-size:11px;font-weight:800;white-space:nowrap}
.content-channel-status.uploaded{background:#fff6dd;color:#a16c08}
.content-channel-status.done{background:#e7f7ef;color:#18815f}
.content-channel-instructions{display:grid;grid-template-columns:1fr;align-content:start;gap:8px;height:220px;min-height:220px;overflow-y:auto;padding:13px 14px;background:#f8fbf9;border-radius:10px}
.content-channel-instructions h4{margin:0;color:#50665c;font-size:12px}
.content-channel-instructions ul{display:grid;gap:4px;margin:0;padding-left:17px;color:#61766c;font-size:13px;line-height:1.55}
.content-channel-topic{display:grid;grid-template-columns:1fr;align-items:stretch;gap:7px;min-height:67px;margin-top:12px}
.content-channel-topic label{color:#50665c;font-size:12px;font-weight:800}
.content-channel-topic .select{height:40px;width:100%}
.content-proof-zone{position:relative;display:grid;place-items:center;height:180px;min-height:180px;margin-top:12px;overflow:hidden;border:1px dashed #a7d7c2;border-radius:12px;background:#fbfefc;outline:none;flex:none;transition:border-color .15s ease,background .15s ease}
.content-proof-zone.is-dragging{border-color:#1e9b70;background:#eefaf4}
.content-proof-zone input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}
.content-proof-empty{display:grid;justify-items:center;gap:7px;color:#7c9087;pointer-events:none}
.content-proof-empty strong{color:#378367;font-size:15px}
.content-proof-empty span{font-size:12px}
.content-proof-preview{display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;height:100%;padding:12px}
.content-proof-preview img{width:86px;height:128px;object-fit:contain;border-radius:8px;background:#eef3f0}
.content-proof-meta{display:grid;gap:6px;min-width:0;color:#50665c;font-size:13px}
.content-proof-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.content-proof-meta span{color:#8b9993}
.content-channel-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:13px;border-top:1px solid #edf1ef}
.content-channel-hint{color:#7b8c84;font-size:12px;line-height:1.45}
.content-channel-footer .btn{min-height:38px;padding:8px 18px;border-radius:8px;white-space:nowrap}
.content-channel-card.status-done .content-channel-hint{color:#18815f}
.content-publish-footnote{margin:10px 2px;color:#8b9993;font-size:12px}
.content-publish-user{min-width:160px}
@media(max-width:920px){
  .content-publish-list{grid-template-columns:1fr}
  .content-channel-card{height:auto}
}
@media(max-width:700px){
  .content-publish-page{padding:0 12px 22px}
  .content-publish-head h2{font-size:28px}
  .content-publish-overview{align-items:flex-start;flex-direction:column;padding:15px}
  .content-publish-progress{width:100%;grid-template-columns:auto 1fr;justify-items:start;align-items:center;gap:10px}
  .content-publish-progress span{margin-top:0}
  .content-channel-card{padding:18px 16px}
  .content-channel-card-head>div{align-items:flex-start;flex-direction:column;gap:7px}
  .content-channel-instructions{height:auto;min-height:0;max-height:none;overflow:visible}
  .content-channel-topic{grid-template-columns:1fr;gap:8px;min-height:0}
  .content-proof-preview{grid-template-columns:86px minmax(0,1fr);padding:10px}
  .content-proof-preview img{width:86px;height:120px}
  .content-proof-preview .btn{grid-column:1/-1;width:100%}
  .content-channel-footer{align-items:stretch;flex-direction:column}
  .content-channel-footer .btn{width:100%}
}

/* Shared page widths: dense work surfaces use the desktop canvas; forms and learning stay readable. */
.content:is(
  .page-dashboard,
  .page-prospectingTasks,
  .page-candidateReview,
  .page-resourcePool,
  .page-myProspects,
  .page-customers,
  .page-customerGrade,
  .page-customerWorkbench,
  .page-tasks,
  .page-materials,
  .page-attendance
){width:100%;max-width:1680px;padding-left:24px;padding-right:24px}

.content:is(.page-academy,.page-training,.page-team){width:100%;max-width:1400px}

.resource-unified-table{margin-top:20px}
.resource-account-row{min-height:88px;border-bottom:1px solid #e2ece8;background:#fff}
.resource-account-row:last-child{border-bottom:0}
.resource-account-row .candidate-cell{align-content:center}
.resource-account-actions{margin-top:7px;gap:5px;flex-wrap:wrap}
.resource-account-actions .btn{white-space:nowrap}

/* Use a quiet zebra pattern so adjacent resource rows are easier to scan. */
.resource-unified-table .candidate-table-inner>.resource-account-row:nth-child(even),
.resource-unified-table .candidate-table-inner>.resource-candidate-card:nth-child(even)>.candidate-summary,
.resource-unified-table .candidate-table-inner>.resource-candidate-card:nth-child(even)>.candidate-summary .resource-summary-card{background:#f8fbfa}
.resource-unified-table .candidate-table-inner>.resource-account-row:nth-child(odd),
.resource-unified-table .candidate-table-inner>.resource-candidate-card:nth-child(odd)>.candidate-summary,
.resource-unified-table .candidate-table-inner>.resource-candidate-card:nth-child(odd)>.candidate-summary .resource-summary-card{background:#fff}
.resource-unified-table .candidate-table-inner>.resource-account-row,
.resource-unified-table .candidate-table-inner>.resource-candidate-card{border-bottom:1px solid #e2ece8}

/* Resource account detail: keep the decision path focused on WhatsApp confirmation. */
.resource-account-modal{display:grid;gap:16px}
.resource-account-summary{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.1fr;gap:10px}
.resource-account-summary>div,.resource-source-brief,.resource-wa-panel,.resource-convert-panel{border:1px solid #dcebe5;border-radius:10px;background:#fbfefd;padding:13px 15px}
.resource-account-summary>div{display:grid;gap:5px;min-width:0}
.resource-account-summary label,.resource-source-brief label{display:block;color:var(--muted);font-size:12px;font-weight:700}
.resource-account-summary b{font-size:15px;line-height:1.45;overflow-wrap:anywhere}
.resource-account-summary span,.resource-source-brief span{color:var(--muted);line-height:1.45;overflow-wrap:anywhere}
.resource-source-brief{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:16px}
.resource-source-brief>div{display:grid;align-content:start;gap:5px;min-width:0}
.resource-source-brief a{color:var(--blue);overflow-wrap:anywhere}
.resource-wa-panel{background:#fff}
.resource-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}
.resource-section-head h4,.resource-section-head p{margin:0}.resource-section-head p{margin-top:4px;color:var(--muted);font-size:13px}
.resource-wa-list{display:grid;gap:0;margin-bottom:10px}
.resource-wa-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.75fr);gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid #e5efe9}
.resource-wa-contact:last-child{border-bottom:0}
.resource-wa-contact>div{display:grid;gap:4px;min-width:0}.resource-wa-contact p,.resource-wa-contact small{margin:0;color:var(--muted)}
.resource-wa-contact p{color:#29453b;font-size:15px;overflow-wrap:anywhere}.resource-wa-check{justify-items:start}.resource-wa-check small{font-size:12px}
.resource-convert-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#f0faf6;border-color:#bfe0d1}.resource-convert-panel b{font-size:16px}.resource-convert-panel p{margin:4px 0 0;color:var(--muted);font-size:13px}
.resource-evidence{border:1px solid #e1ece7;border-radius:8px;padding:10px 13px;color:#38564b}.resource-evidence summary{cursor:pointer;font-weight:700}.resource-evidence p{margin:10px 0 0;line-height:1.6}.resource-secondary-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:2px}
@media(max-width:760px){.resource-account-summary,.resource-source-brief,.resource-wa-contact{grid-template-columns:1fr}.resource-convert-panel{align-items:stretch;flex-direction:column}.resource-convert-panel .btn{width:100%}.resource-section-head{display:grid}.resource-secondary-actions{justify-content:flex-start}}

@media(max-width:760px){
  .content:is(
    .page-dashboard,
    .page-prospectingTasks,
    .page-candidateReview,
    .page-resourcePool,
    .page-myProspects,
    .page-customers,
    .page-customerGrade,
    .page-customerWorkbench,
    .page-tasks,
    .page-materials,
    .page-attendance
  ){padding-left:14px;padding-right:14px}
}

/* Candidate review detail: clear hierarchy without changing the review workflow. */
.candidate-table-card .candidate-review-body{padding:24px 26px 22px;background:#f7fbf9}
.candidate-review-title{align-items:center;margin-bottom:16px}
.candidate-review-title h4{font-size:20px;line-height:1.35;color:#183c30;letter-spacing:0}
.candidate-review-title p{font-size:13px;line-height:1.55;color:#7a8b85}
.candidate-review-badges{gap:6px}
.candidate-detail-note{margin-bottom:20px;padding:15px 18px;border:1px solid #dcece5;border-left:4px solid #8ac9af;border-radius:10px;background:#fff}
.candidate-detail-note h4{font-size:13px;color:#62766d}
.candidate-detail-note p{font-size:16px;line-height:1.65;color:#29453b}
.candidate-columns{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:22px;margin-bottom:0}
.candidate-review-section{padding:18px 18px 16px;border:1px solid #e0ece6;border-radius:10px;background:#fff}
.candidate-review-section h4{margin-bottom:8px;font-size:17px;line-height:1.35;color:#203d32}
.candidate-review-section>p.muted{margin:0 0 14px;font-size:13px;line-height:1.55;color:#71837b}
.candidate-review-aside{display:grid;align-content:start;gap:16px;min-width:0}
.candidate-review-aside .candidate-detail-note{margin-bottom:0}
.candidate-whatsapp-section{min-width:0}
.candidate-contact-check{grid-template-columns:minmax(0,1.05fr) minmax(215px,.95fr);gap:18px;padding:14px 0}
.candidate-contact-check b{font-size:16px;line-height:1.4;color:#213e33}
.candidate-contact-check p{font-size:16px;line-height:1.4;color:#294d3f}
.candidate-contact-check small{font-size:12px;line-height:1.45;color:#85938d}
.candidate-wa-actions{padding:8px 10px;border-radius:8px;background:#f3faf6}
.wa-confirm-check{font-size:14px;color:#167052}
.candidate-add-whatsapp{margin-top:16px;padding-top:14px;border-top:1px solid #e5efe9}
.candidate-add-whatsapp .input{height:40px;font-size:14px}
.candidate-add-whatsapp .btn{height:40px}
.candidate-gate-hint{font-size:13px;line-height:1.5}
.candidate-action-bar{margin-top:18px;padding-top:16px;border-top:1px solid #deebe5}
.daily-candidate-queue{margin-top:16px;border-color:#cfe7dc;background:#fbfefd}.daily-queue-progress{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:14px;margin-bottom:14px}.daily-queue-progress>div:first-child{display:grid;gap:3px}.daily-candidate-queue .table-wrap{margin:0}.candidate-no-wa-button{border-color:#e7c7a2;color:#9a6813;background:#fffaf1}.candidate-no-wa-button:hover{border-color:#d8a86e;background:#fff4df}

@media(max-width:760px){
  .candidate-table-card .candidate-review-body{padding:18px 16px}
  .candidate-review-title{align-items:flex-start}
  .candidate-columns,.candidate-contact-check{grid-template-columns:1fr}
  .candidate-wa-actions{padding:9px 10px}
  .daily-queue-progress{grid-template-columns:1fr}.daily-queue-progress .progress{grid-row:auto}
  .resource-workspace-heading{display:grid}
  .resource-lead-grid{grid-template-columns:1fr 1fr}
  .resource-lead-field.wide{grid-column:span 2}
  .resource-qualification-body .candidate-columns,.resource-qualification-body .candidate-contact-check{grid-template-columns:1fr}
  .resource-qualification-actions{align-items:stretch;flex-direction:column}
  .resource-qualification-main{order:0;margin-left:0}
  .resource-qualification-main .btn{width:100%}
}

/* Resource-pool detail visual refresh: summary card, dense information columns and workflow bar. */
.content:has(.resource-candidate-card){max-width:1680px}
.resource-candidate-card{overflow:visible;border-radius:14px;background:#fff;border-color:#e2e9e6;box-shadow:0 12px 30px rgba(34,53,46,.07)}
.resource-candidate-card>.candidate-summary{display:block;padding:0;background:#fff;cursor:pointer}
.resource-candidate-card>.candidate-summary:hover{background:#fff}
.resource-summary-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,1fr) auto;align-items:center;gap:24px;padding:24px 28px;background:#fff}
.resource-summary-main{min-width:0}
.resource-summary-kicker{display:block;margin-bottom:7px;color:#7a8983;font-size:12px;font-weight:700;letter-spacing:.02em}
.resource-summary-main h3{margin:0;color:#1e332b;font-size:28px;line-height:1.2;overflow-wrap:anywhere}
.resource-summary-location{margin-top:7px;color:#64766e;font-size:15px}
.resource-summary-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.resource-tag,.resource-state-chip{display:inline-flex;align-items:center;min-height:26px;padding:4px 10px;border:1px solid #dce9e3;border-radius:999px;background:#f5f9f7;color:#526760;font-size:12px;font-weight:700}
.resource-tag.positive,.resource-state-chip.positive{border-color:#b9e2d0;background:#eaf8f1;color:#197454}
.resource-tag.warning,.resource-state-chip.warning{border-color:#efd4a4;background:#fff7e8;color:#a26913}
.resource-summary-contact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0}
.resource-summary-contact>div{display:grid;gap:5px;min-width:0;padding-left:14px;border-left:1px solid #e8efec}
.resource-summary-contact span{color:#8a9892;font-size:12px;font-weight:700}
.resource-summary-contact b{color:#304b40;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.resource-summary-action{display:flex;justify-content:flex-end}
.resource-summary-primary{min-width:170px;min-height:44px;padding:10px 18px;font-size:15px}
.resource-list-summary{display:grid;grid-template-columns:minmax(190px,1.25fr) minmax(105px,.72fr) minmax(125px,.86fr) minmax(160px,1fr) minmax(150px,.9fr) minmax(120px,.76fr) minmax(230px,1.45fr) minmax(130px,.82fr);gap:14px;align-items:center;min-height:88px;padding:13px 16px;background:inherit}
.resource-list-summary>.candidate-cell{min-width:0;align-self:stretch;display:grid;align-content:center;gap:4px}
.resource-list-summary .candidate-cell>a,.resource-list-summary .candidate-cell>span{min-width:0;overflow-wrap:anywhere}
.resource-list-summary .candidate-company-cell b{color:#2b4a3e;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.resource-list-summary .candidate-company-cell span,.resource-list-summary .candidate-cell small{color:#7a8b84;font-size:12px;line-height:1.4}
.resource-list-summary .candidate-contact-cell .wa-status{justify-self:start}
.resource-list-summary .candidate-social-cell,.resource-list-summary .candidate-signal-cell{align-content:start;padding-top:4px}
.resource-list-summary .candidate-social-cell a,.resource-list-summary .candidate-signal-cell span{display:block;line-height:1.45}
.resource-list-summary .candidate-note-cell{position:relative;padding-right:18px}
.resource-list-summary .candidate-note-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#526760;line-height:1.45}
.resource-list-summary .candidate-chevron{position:absolute;right:0;top:50%;transform:translateY(-50%);color:#8a9892;font-size:18px}
.resource-candidate-card>.candidate-summary .resource-summary-card{display:none}
.resource-candidate-card[open]>.candidate-summary .resource-list-summary{display:none}
.resource-candidate-card[open]>.candidate-summary .resource-summary-card{display:grid}
.resource-candidate-card .resource-qualification-body{padding:20px 28px 94px!important;background:#f6f8f7!important}
.resource-detail-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:18px;align-items:start}
.resource-main-stack,.resource-side-stack{display:grid;gap:16px;min-width:0}
.resource-side-card,.resource-wa-card{min-width:0;padding:18px 20px;border:1px solid #e2e9e6;border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(44,67,58,.045)}
.resource-info-card{padding:18px 20px!important}
.resource-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.resource-card-heading h4{margin:0;color:#243a31;font-size:18px;line-height:1.35}
.resource-card-heading span{color:#87958f;font-size:12px;line-height:1.5}
.resource-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid #e5ede9;border-radius:10px;overflow:hidden;background:#e5ede9}
.resource-fact{display:grid;gap:6px;min-width:0;padding:12px 14px;background:#fbfdfc}
.resource-fact.wide{grid-column:1/-1}
.resource-fact span{color:#899790;font-size:12px;font-weight:700}
.resource-fact b{color:#30493f;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.resource-wa-card{padding-bottom:16px!important}
.resource-wa-card .resource-card-heading{margin-bottom:8px}
.resource-wa-count{color:#208260!important;font-weight:700}
.resource-wa-list{display:grid;gap:9px;margin:0}
.resource-wa-number-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.8fr);gap:16px;align-items:center;padding:13px 14px;border:1px solid #e3ece7;border-radius:12px;background:#fbfdfc}
.resource-wa-number-main{display:flex;align-items:center;gap:12px;min-width:0}
.resource-wa-number-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:34px;height:34px;border-radius:10px;background:#e8f7f0;color:#19805f;font-size:12px;font-weight:800}
.resource-wa-number-main>div{display:grid;gap:3px;min-width:0}
.resource-wa-number-main b{color:#233e33;font-size:15px;line-height:1.35}
.resource-wa-number-main small{color:#8a9892;font-size:12px}
.resource-wa-number-main p{margin:0;color:#476157;font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.resource-wa-number-status{display:grid;justify-items:start;gap:5px;min-width:0}
.resource-wa-number-status small{color:#889790;font-size:12px;line-height:1.45}
.resource-wa-number-status .resource-wa-status-row{gap:7px}
.resource-wa-number-status .resource-wa-status-row .btn{min-height:34px;padding:6px 10px}
.resource-wa-card .candidate-add-whatsapp{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:13px;padding-top:13px}
.resource-wa-card .candidate-add-whatsapp+.hint{margin-top:8px;color:#81918a;font-size:12px}
.resource-business-card p,.resource-note-card p{margin:0;color:#40584d;font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.resource-note-card{border-left:4px solid #7bc8a9}
.resource-note-card h4{margin:0 0 8px;color:#526a60;font-size:14px}
.resource-evidence-card p{margin:0 0 10px;line-height:1.55}
.resource-evidence-card p:last-child{margin-bottom:0}
.resource-evidence-card a{color:var(--blue);font-weight:700;overflow-wrap:anywhere}
.resource-evidence-card .muted{font-size:13px}
.resource-shortcut-card{padding-bottom:16px}
.resource-shortcut-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.resource-shortcut-grid .btn,.resource-shortcut-grid a.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;white-space:nowrap}
.resource-workflow-card{border-color:#b9dfcf;background:#f7fcf9}
.resource-workflow-card .resource-qualification-actions{display:grid;grid-template-columns:1fr;gap:9px;margin:0;padding:0;border:0}
.resource-workflow-card .resource-qualification-main{order:2;margin:0}
.resource-workflow-card .resource-qualification-main .btn{width:100%;min-height:44px;font-size:15px}
.resource-workflow-card .resource-qualification-secondary{order:1;display:block}
.resource-workflow-card .resource-qualification-secondary .btn{width:100%;min-height:40px}
.resource-bottom-bar{position:sticky;bottom:0;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin:18px -28px -94px;padding:14px 28px;background:rgba(255,255,255,.96);border-top:1px solid #dfe9e4;box-shadow:0 -10px 24px rgba(33,56,46,.08);backdrop-filter:blur(10px)}
.resource-action-hint{display:flex;align-items:center;gap:9px;color:#5c7167;font-size:13px;line-height:1.45}
.resource-action-check{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#e7f7ef;color:#18815f;font-weight:800}
.resource-bottom-bar .resource-qualification-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:0;padding:0;border:0}
.resource-bottom-bar .resource-qualification-main{order:2;margin:0}
.resource-bottom-bar .resource-qualification-main .btn{min-width:190px;min-height:44px;font-size:15px}
.resource-bottom-bar .resource-qualification-secondary{order:1;display:flex;align-items:center;gap:8px}
.resource-bottom-bar .resource-qualification-secondary .btn{min-height:44px}

.my-prospect-search-panel{padding:14px 16px}
.my-prospect-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center}
.my-prospect-search-form .input{min-width:0}
.my-prospect-search-panel .hint{margin-top:9px}
.my-prospect-resource-panel .candidate-table{margin:0;border:0;box-shadow:none}

@media(max-width:1100px){
  .resource-summary-card{grid-template-columns:minmax(0,1fr) auto}
  .resource-summary-contact{grid-column:1/-1}
  .resource-summary-action{grid-column:2;grid-row:1;align-self:center}
}
@media(max-width:900px){
  .resource-detail-layout{grid-template-columns:1fr}
  .resource-shortcut-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}
  .resource-bottom-bar{grid-template-columns:1fr;gap:12px}
  .resource-bottom-bar .resource-qualification-actions{justify-content:flex-start}
}
@media(max-width:760px){
  .resource-summary-card{grid-template-columns:1fr;gap:16px;padding:20px 18px}
  .resource-summary-action{grid-column:auto;grid-row:auto;justify-content:stretch}
  .resource-summary-primary{width:100%}
  .resource-summary-contact{grid-template-columns:1fr 1fr;gap:10px}
  .resource-summary-contact>div{padding-left:10px}
  .resource-candidate-card .resource-qualification-body{padding:16px 14px 132px!important}
  .resource-facts{grid-template-columns:1fr}
  .resource-fact.wide{grid-column:auto}
  .resource-wa-number-card{grid-template-columns:1fr;gap:10px}
  .resource-wa-number-status{padding-left:46px}
  .resource-wa-card .candidate-add-whatsapp{grid-template-columns:1fr}
  .resource-shortcut-grid{grid-template-columns:1fr}
  .resource-bottom-bar{margin:16px -14px -132px;padding:12px 14px}
  .resource-bottom-bar .resource-qualification-actions{align-items:stretch;flex-direction:column}
  .resource-bottom-bar .resource-qualification-secondary{order:2;width:100%}
  .resource-bottom-bar .resource-qualification-secondary .btn{flex:1}
  .resource-bottom-bar .resource-qualification-main{order:1;width:100%}
  .resource-bottom-bar .resource-qualification-main .btn{width:100%}
}

@media(max-width:720px){
  .my-prospect-search-form{grid-template-columns:1fr}
}
