/* Cockpitul salesmanului: ACELASI limbaj vizual ca site-ul public (Archivo + Public Sans, accent amber, raze 12/20/26, pastile).
   Regula: un singur lucru important pe ecran, restul sub "Detalii". Totul e gandit intai pentru telefon (closerul suna de pe telefon).
   Logica ramane in vanzari.js; aici e doar prezentarea. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/archivo-ro-latin.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF,U+0131,U+0152-0153,U+2013-2014,U+2018-201E,U+2022,U+2026,U+20AC,U+2190,U+2192,U+2122,U+2212,U+2248,U+2605}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/archivo-ro-ext.woff2) format('woff2');unicode-range:U+0102-0103,U+015E-0163,U+0218-021B}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/public-sans-ro-latin.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF,U+0131,U+0152-0153,U+2013-2014,U+2018-201E,U+2022,U+2026,U+20AC,U+2190,U+2192,U+2122,U+2212,U+2248,U+2605}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/public-sans-ro-ext.woff2) format('woff2');unicode-range:U+0102-0103,U+015E-0163,U+0218-021B}

:root{
  --void:#08090A;--s1:#0E1113;--s2:#131719;--s3:#181C1F;
  --line:rgba(255,255,255,.09);--line-2:rgba(255,255,255,.16);--line-hi:rgba(255,255,255,.24);
  --tx:#f5f5f7;--tx2:#a1a1a6;--tx3:#8e8e93;
  --am:#FFB020;--am2:#ffd27a;--am-lift:#FFC44F;
  --p0:#FF6B6B;--p1:#E0915C;--p2:#7B93AD;--p3:#8e8e93;--ok:#8FD19E;--err:#FF6B6B;
  --fb:'Public Sans',system-ui,-apple-system,'Segoe UI',sans-serif;--fh:'Archivo',system-ui,sans-serif;--fm:ui-monospace,SFMono-Regular,Menlo,monospace;
  --r:12px;--r2:20px;--r3:26px;--ease:cubic-bezier(.23,1,.32,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--void);color:var(--tx);font:400 16px/1.55 var(--fb);-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:clip}
a{color:var(--am);text-decoration:none}
h1,h2,h3{margin:0 0 .4rem;font-family:var(--fh);font-weight:700;letter-spacing:-.03em;line-height:1.15}
h1{font-size:1.25rem}h2{font-size:1.125rem}h3{font-size:1rem}
p{color:var(--tx2);margin:0 0 .8rem}
:focus-visible{outline:2px solid var(--am);outline-offset:3px;border-radius:12px}
[hidden]{display:none!important}
html.ses-salvata #login{display:none}

/* formulare */
input,select,textarea{width:100%;background:var(--s2);border:1px solid var(--line-2);border-radius:var(--r);color:var(--tx);padding:.75rem .85rem;font-family:inherit;font-size:16px;transition:border-color .25s var(--ease),background .25s var(--ease)}
input:focus,select:focus,textarea:focus{border-color:var(--am);background:var(--s3);outline:none}
textarea{resize:vertical;min-height:4.4rem}
label{display:block;font-size:.8125rem;color:var(--tx3);margin:0 0 .35rem}
.field{margin-bottom:.9rem}

/* butoane: aceleasi pastile ca pe site */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:0 1.15rem;border:0;border-radius:999px;cursor:pointer;font:600 .9375rem var(--fb);background:linear-gradient(180deg,var(--am2),var(--am));color:#1a1200;box-shadow:0 10px 26px -14px rgba(255,160,0,.8);transition:transform .2s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease)}
.btn:active{transform:scale(.97)}
.btn:disabled{opacity:.5;cursor:default;box-shadow:none}
.btn.sec{background:rgba(255,255,255,.06);color:var(--tx);box-shadow:inset 0 0 0 1px var(--line-2)}
.btn.sm{min-height:40px;padding:0 .9rem;font-size:.875rem}
.btn.bad{background:rgba(255,107,107,.12);color:var(--err);box-shadow:inset 0 0 0 1px rgba(255,107,107,.4)}
.btn.call{min-height:54px;font-size:1.0625rem;font-family:var(--fh);font-weight:700;letter-spacing:-.01em;width:100%}
@media (hover:hover){.btn:hover{background:linear-gradient(180deg,#ffe3a8,var(--am-lift))}.btn.sec:hover{background:rgba(255,255,255,.1)}.btn.bad:hover{background:rgba(255,107,107,.18)}}
.msg{font-size:.875rem;margin-top:.7rem;min-height:1.2em;color:var(--tx2)}.msg.err{color:var(--err)}.msg.ok{color:var(--ok)}
.lnk{display:block;width:100%;margin-top:.7rem;padding:.4rem 0;background:none;border:0;color:var(--tx3);font:500 .875rem var(--fb);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media (hover:hover){.lnk:hover{color:var(--tx2)}}

/* structura */
.wrap{max-width:1180px;margin:0 auto;padding:1.1rem 1rem 2.5rem}
.wrap.pipe{padding-bottom:0}   /* Pipeline: board-ul tine tot ecranul, fara scroll vertical de pagina in gol */
#login{max-width:400px;margin:clamp(3rem,12vh,7rem) auto;padding:0 1.1rem}
#login h1{font-size:1.75rem}
.card{background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r3);padding:1.2rem 1.3rem;margin-bottom:.9rem}

/* structura de aplicatie: continut la stanga, meniu vertical la DREAPTA (ca in admin) */
.shell{display:flex;align-items:flex-start;min-height:100vh}
.main{order:1;flex:1;min-width:0}
.side{order:2;flex:none;width:15rem;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;
  background:rgba(255,255,255,.02);box-shadow:inset 1px 0 0 var(--line);padding:1rem .75rem .9rem}
.side-top{display:flex;flex-direction:column;gap:.3rem;padding:.2rem .5rem 1rem;min-width:0}
.side-top img{height:20px;width:auto;align-self:flex-start;max-width:100%}
.side-top .who{font-size:.8125rem;color:var(--tx3);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.side-bottom{margin-top:auto;display:flex;align-items:center;gap:.6rem;padding-top:.8rem;box-shadow:inset 0 1px 0 var(--line);color:var(--tx3);font-size:.875rem}
.side-bd{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:29}
.side-bd[hidden]{display:none}

/* bara de sus: sticla, ca pe site */
.top{position:sticky;top:0;z-index:20;background:rgba(10,11,13,.82);-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);box-shadow:0 1px 0 var(--line)}
.top-in{max-width:1180px;margin:0 auto;padding:.7rem 1rem;display:flex;align-items:center;gap:.7rem}
.top .search{flex:1;min-width:0;max-width:none;margin:0;padding:0}
.icobtn.menu{display:none}
.top .acts{display:flex;gap:.4rem;align-items:center;flex:none}
.icobtn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:999px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--tx2);cursor:pointer;font-size:1rem;transition:color .25s var(--ease),background .25s var(--ease)}
@media (hover:hover){.icobtn:hover{color:var(--tx);background:rgba(255,255,255,.1)}}
.icobtn.load{animation:spin .9s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.ins{color:var(--tx3);font-size:.8125rem}

/* meniu vertical: un rand per sectiune, fara incarcatura */
.tabs{display:flex;flex-direction:column;gap:.15rem;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain}
.tabs button{position:relative;display:flex;align-items:center;gap:.65rem;width:100%;min-height:42px;background:none;border:0;box-shadow:none;
  border-radius:var(--r);color:var(--tx2);padding:.5rem .7rem;font:600 .9375rem var(--fb);cursor:pointer;text-align:left;
  transition:color .2s var(--ease),background .2s var(--ease)}
/* iconite SVG reale (Lucide, grila 24x24, stroke 2px), nu glife text - tehnica mask-image + background-color,
   ca iconita sa-si ia culoarea din starea butonului (normal/hover/activ), fara un al doilea set de asseturi. */
.tabs button::before{content:"";flex:none;width:19px;height:19px;background-color:var(--tx3);
  -webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat;transition:background-color .2s var(--ease)}
.tabs button.on{color:var(--tx);background:rgba(255,255,255,.07)}
.tabs button.on::before{background-color:var(--am)}
@media (hover:hover){.tabs button:hover::before{background-color:var(--tx2)}}
.tabs button[data-t="pipeline"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M9 3v18'/%3E%3Cpath d='M15 3v18'/%3E%3C/svg%3E")}
.tabs button[data-t="dealuri"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z'/%3E%3Cpath d='M14 2v5a1 1 0 0 0 1 1h5'/%3E%3Cpath d='M10 9H8'/%3E%3Cpath d='M16 13H8'/%3E%3Cpath d='M16 17H8'/%3E%3C/svg%3E")}
.tabs button[data-t="calc"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 2-7 20-4-9-9-4Z'/%3E%3Cpath d='M22 2 11 13'/%3E%3C/svg%3E")}
.tabs button[data-t="dash"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='7' height='9' x='3' y='3' rx='1'/%3E%3Crect width='7' height='5' x='14' y='3' rx='1'/%3E%3Crect width='7' height='9' x='14' y='12' rx='1'/%3E%3Crect width='7' height='5' x='3' y='16' rx='1'/%3E%3C/svg%3E")}
.tabs button[data-t="cont"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")}
.tabs button[data-t="res"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z'/%3E%3C/svg%3E")}
@media (hover:hover){.tabs button:hover{color:var(--tx);background:rgba(255,255,255,.04)}}
.tabs .n{margin-left:auto;padding:0 .45rem;border-radius:999px;background:var(--p0);color:#1a0505;font:700 .75rem var(--fb)}
.tabs .sep{margin:.5rem .7rem;height:1px;background:var(--line);flex:none}

/* cautare */
.search{max-width:1040px;margin:0 auto .2rem;padding:0 1rem}
.search input{background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line);border:0;border-radius:999px;padding:.6rem 1rem;font-size:15px}
.search input:focus{box-shadow:inset 0 0 0 1.5px var(--am)}

/* KPI: cifre mari, fara cutii inghesuite */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.7rem;margin-bottom:1.4rem}
.kpi{background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r2);padding:.9rem 1rem}
.kpi .et{display:block;font-size:.8125rem;color:var(--tx2)}
.kpi .val{font:800 1.75rem/1.1 var(--fh);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.kpi .sub{display:block;margin-top:.15rem;font-size:.8125rem;color:var(--tx3)}
.kpi.urgent .val{color:var(--am)}

/* titluri de sectiune */
.sec-t{display:flex;align-items:center;gap:.55rem;margin:1.6rem 0 .7rem;font:700 .75rem var(--fh);letter-spacing:.14em;text-transform:uppercase;color:var(--tx3)}
.sec-t.now{color:var(--p0)}.sec-t.today{color:var(--am)}
.sec-t::after{content:"";flex:1;height:1px;background:var(--line)}

/* carduri de lucru */
.item{background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r3);padding:1rem 1.1rem;margin-bottom:.6rem;display:flex;gap:.9rem;align-items:flex-start;justify-content:space-between;transition:box-shadow .3s var(--ease),background .3s var(--ease)}
@media (hover:hover){.item:hover{background:rgba(255,255,255,.045)}}
.item.hot{box-shadow:inset 0 0 0 1.5px rgba(255,107,107,.5);background:linear-gradient(180deg,rgba(255,107,107,.07),rgba(255,255,255,.02))}
.item .l{min-width:0;flex:1}.item .r{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-end;flex:none}
.nm{font:700 1.0625rem/1.25 var(--fh);letter-spacing:-.02em;color:var(--tx)}
a.nm{color:var(--tx)}
.mt{font-size:.9375rem;color:var(--tx2);line-height:1.5}
.mt a{color:var(--tx2);text-decoration:underline;text-underline-offset:3px}
.pill{display:inline-block;padding:.14rem .6rem;border-radius:999px;font:700 .75rem var(--fb);letter-spacing:.04em;margin-right:.4rem;vertical-align:2px}
.p-P0{background:rgba(255,107,107,.16);color:var(--p0)}.p-P1{background:rgba(224,145,92,.16);color:var(--p1)}
.p-P2{background:rgba(123,147,173,.16);color:var(--p2)}.p-P3,.p-D{background:rgba(142,142,147,.16);color:var(--p3)}
.flag{color:var(--err);font-weight:600}
.timer{font-size:.9375rem;color:var(--tx2);font-variant-numeric:tabular-nums;white-space:nowrap}
.timer.late{color:var(--err);font-weight:600}
.gol{color:var(--tx3);font-size:.9375rem;padding:1rem 0}
.gol b{color:var(--tx2);display:block;font-weight:600;margin-bottom:.2rem}

/* cardul principal de lucru: o linie mare, o linie de context, actiunea urmatoare, restul sub Detalii */
.wc{flex-direction:column;align-items:stretch;gap:.55rem}
.wc-h{display:flex;justify-content:space-between;align-items:baseline;gap:.7rem;flex-wrap:wrap}
.tag{font-size:.875rem;color:var(--am)}
.wc .next{display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:baseline;padding:.6rem .8rem;border-radius:var(--r);background:rgba(255,255,255,.04);font-size:.9375rem;color:var(--tx2)}
.wc .next b{color:var(--tx);font-weight:600}
.wc .next.missing{background:rgba(255,107,107,.1);color:var(--err)}
.wc-b{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center;margin-top:.15rem}
.wc-b a.btn{text-decoration:none}
.det{margin-top:.1rem}
.det>summary{cursor:pointer;list-style:none;color:var(--tx3);font-size:.875rem;padding:.35rem 0;display:flex;align-items:center;gap:.4rem}
.det>summary::-webkit-details-marker{display:none}
.det>summary::before{content:"+";color:var(--am);font-size:1rem;line-height:1}
.det[open]>summary::before{content:"−"}
.wc-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.5rem .9rem;margin:.35rem 0 .1rem}
.wc-g div{font-size:.9375rem;color:var(--tx2);line-height:1.45}
.wc-g span{display:block;font-size:.75rem;color:var(--tx3);letter-spacing:.08em;text-transform:uppercase}

/* filtre, board, tabele */
.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
.filters select,.filters input{width:auto;min-width:8.5rem;font-size:15px;padding:.5rem .8rem;border-radius:999px}
/* pipeline: aceeasi structura ca pipeline-ul cunoscut (etape cu punct colorat, contor, editare, carduri simple, „+ Adauga lead”) */
.pipe-top{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
.pipe-top h1{margin:0;font-size:1.25rem}
.pipe-top .sp{flex:1}
.board{display:flex;gap:.8rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.35rem;align-items:stretch;min-height:22rem}
.col{flex:0 0 17.5rem;background:var(--s1);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r2);display:flex;flex-direction:column;height:auto;transition:box-shadow .2s var(--ease),background .2s var(--ease)}
.col.over{box-shadow:inset 0 0 0 1.5px var(--am);background:rgba(255,176,32,.05)}
.ch{display:flex;align-items:center;gap:.55rem;padding:.85rem 1rem .5rem}
.dot{display:inline-block;flex:none;width:.7rem;height:.7rem;border-radius:50%;background:var(--line-hi)}
.ch .nm{flex:1;min-width:0;font:700 .9375rem var(--fh);letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ch .win{color:var(--am);font-size:.85rem}
.ch .cnt{font-size:.8125rem;color:var(--tx3);white-space:nowrap}
.ch .ed{background:none;border:0;color:var(--tx3);cursor:pointer;width:28px;height:28px;border-radius:8px;font-size:.9rem}
@media (hover:hover){.ch .ed{opacity:0;transition:opacity .2s var(--ease)}.col:hover .ch .ed{opacity:1}.ch .ed:hover{background:rgba(255,255,255,.08);color:var(--tx)}}
.lista{flex:1;overflow-y:auto;padding:.3rem .6rem .5rem;display:flex;flex-direction:column;gap:.5rem;min-height:3rem}
.pc{position:relative;background:var(--s2);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r);padding:.7rem .8rem;cursor:grab;transition:box-shadow .2s var(--ease),background .2s var(--ease)}
@media (hover:hover){.pc:hover{box-shadow:inset 0 0 0 1px var(--line-hi);background:var(--s3)}}
.pc:active{cursor:grabbing}.pc.drag{opacity:.4}
.pc.fresh{box-shadow:inset 3px 0 0 var(--am),inset 0 0 0 1px var(--line)}
.pc .firma{font:700 .9375rem/1.25 var(--fh);letter-spacing:-.01em;color:var(--tx);margin-bottom:.15rem;padding-right:2.6rem}
.pc .contact{color:var(--tx3);font-size:.8125rem;margin-bottom:.4rem}
.pc .rj{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.chips{display:flex;gap:.3rem;flex-wrap:wrap}
.chip{display:inline-block;padding:.1rem .5rem;border-radius:999px;background:rgba(255,255,255,.07);color:var(--tx2);font:600 .6875rem var(--fb);white-space:nowrap}
.chip.ads{background:rgba(224,145,92,.16);color:var(--p1)}.chip.warn{background:rgba(255,176,32,.16);color:var(--am)}.chip.sum{background:transparent;color:var(--am);padding-left:0}
.pc .age{font-size:.75rem;color:var(--tx3);white-space:nowrap}
.pc .mv{display:none;position:absolute;top:.5rem;right:.5rem;background:rgba(255,255,255,.07);border:0;border-radius:50%;color:var(--tx2);width:32px;height:32px;padding:0;align-items:center;justify-content:center;line-height:0;cursor:pointer}
.pc .mv svg{display:block;flex:none}
.add{margin:0 .6rem .6rem;background:none;border:1px dashed var(--line-2);border-radius:var(--r);color:var(--tx3);padding:.5rem;font:600 .8125rem var(--fb);cursor:pointer;transition:color .2s var(--ease),border-color .2s var(--ease)}
@media (hover:hover){.add:hover{color:var(--am);border-color:var(--am)}}
.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:.9375rem}
.tbl th{text-align:left;color:var(--tx3);font-weight:500;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;padding:.5rem .6rem;border-bottom:1px solid var(--line)}
.tbl td{padding:.7rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}
.scrollx{overflow-x:auto}

/* modal */
.ov{position:fixed;inset:0;background:rgba(0,0,0,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding:1rem;z-index:50;overflow-y:auto}
.ov[hidden]{display:none}
.modal{background:var(--s2);box-shadow:inset 0 0 0 1px var(--line-2),0 40px 80px -30px #000;border-radius:var(--r3);padding:1.4rem;width:100%;max-width:500px;margin:auto;animation:pop .35s var(--ease)}
@keyframes pop{from{opacity:0;transform:translate3d(0,14px,0) scale(.98)}to{opacity:1;transform:none}}
.modal .x{float:right;background:none;border:0;color:var(--tx3);font-size:1.3rem;cursor:pointer;line-height:1}
.tl{border-left:2px solid var(--line-2);margin:.5rem 0 1rem .3rem;padding-left:.9rem}
.tl div{font-size:.9375rem;margin-bottom:.55rem;color:var(--tx2)}
.tl time{color:var(--tx3);font-size:.75rem;display:block}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.resgrid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.resgrid .btn{min-height:52px}

/* subsol + notificare */
.toast{position:fixed;left:50%;bottom:4.5rem;transform:translate3d(-50%,20px,0);opacity:0;z-index:60;padding:.7rem 1.1rem;border-radius:999px;background:rgba(20,22,25,.96);box-shadow:inset 0 0 0 1px var(--line-2),0 20px 40px -20px #000;font-size:.9375rem;transition:opacity .3s var(--ease),transform .3s var(--ease);pointer-events:none;max-width:90vw}
.toast.on{opacity:1;transform:translate3d(-50%,0,0)}
.toast.ok{color:var(--ok)}.toast.err{color:var(--err)}

/* oferta */
.ofsum{box-shadow:inset 0 0 0 1px var(--line-2);border-radius:var(--r2);padding:.9rem 1rem;margin:.3rem 0 1rem;background:rgba(255,255,255,.02);display:grid;gap:.3rem;font-size:.9375rem}
.ofsum div{display:flex;justify-content:space-between;gap:1rem}.ofsum span{color:var(--tx3)}.ofsum b{font-weight:600;text-align:right}
.ofsum .tot{font:800 1.3rem var(--fh);color:var(--am);letter-spacing:-.03em}
.ofsum.bad{color:var(--err);display:block}
.cmp{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin:.3rem 0 1rem}
.cmp>div{box-shadow:inset 0 0 0 1px var(--line-2);border-radius:var(--r);padding:.6rem;font-size:.8125rem;background:rgba(255,255,255,.02);min-width:0}
.cmp>div.sel{box-shadow:inset 0 0 0 1.5px var(--am)}
.cmp b{display:block;font:700 .75rem var(--fh);color:var(--am);letter-spacing:.06em;text-transform:uppercase}
.cmp .v{font-size:1rem;color:var(--tx);font-variant-numeric:tabular-nums}
.inc{font-size:.875rem;color:var(--tx2);margin:.2rem 0 1rem;border-left:2px solid var(--line-2);padding-left:.8rem}
.inc ul{margin:.25rem 0 0;padding-left:1.1rem}

/* resurse */
.fold{margin-top:1.4rem;border-top:1px solid var(--line);padding-top:.7rem}
.fold summary{cursor:pointer;color:var(--tx3);font-size:.9375rem;padding:.45rem 0}
.resbanner{font-size:.875rem;color:var(--tx2);border-radius:var(--r2);background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px var(--line);padding:.7rem 1rem;margin-bottom:1rem}
.rsnav{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.2rem}
.rsnav button{background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line);color:var(--tx2);border:0;border-radius:999px;padding:.45rem .9rem;font:600 .875rem var(--fb);cursor:pointer}
.rsnav button.on{background:rgba(255,255,255,.14);color:var(--tx);box-shadow:inset 0 0 0 1px var(--line-hi)}
.pkgs3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:1rem}
.pkc{position:relative;background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r2);padding:1.1rem;min-width:0}
.pkc.hi{box-shadow:inset 0 0 0 1.5px var(--am);background:linear-gradient(180deg,rgba(255,176,32,.1),rgba(255,255,255,.02))}
.pkc .rec{position:absolute;top:-.65rem;left:1rem;background:linear-gradient(180deg,var(--am2),var(--am));color:#1a1200;font:700 .6875rem var(--fb);padding:.2rem .6rem;border-radius:999px;letter-spacing:.06em;text-transform:uppercase}
.pkc h3{margin:0;font:700 .75rem var(--fh);letter-spacing:.14em;text-transform:uppercase;color:var(--am)}
.pkp{font:800 1.6rem var(--fh);letter-spacing:-.04em;margin:.3rem 0}
.pkp small{font:400 .8125rem var(--fb);color:var(--tx3)}
.pkg{font-size:.9375rem;color:var(--tx);margin-bottom:.45rem}.pkt{font-size:.9375rem;color:var(--tx2);margin:0 0 .45rem}
.pki{font-size:.8125rem;color:var(--tx3);margin:0 0 .35rem}
.pkc ul{margin:0;padding-left:1.15rem;font-size:.9375rem;color:var(--tx2)}.pkc li{margin:.2rem 0}
.cpb{background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r2);padding:1rem 1.1rem;margin-bottom:.7rem}
.cpb-h{display:flex;justify-content:space-between;align-items:center;gap:.7rem;margin-bottom:.5rem}
.cpb-t{font-size:.9375rem;color:var(--tx2);line-height:1.6}

/* bare de derulare subtiri */
.board,.scrollx,.ov,.lista,.pd-prev{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}
.board::-webkit-scrollbar,.scrollx::-webkit-scrollbar,.ov::-webkit-scrollbar,.lista::-webkit-scrollbar,.pd-prev::-webkit-scrollbar{height:6px;width:6px}
.board::-webkit-scrollbar-track,.scrollx::-webkit-scrollbar-track,.ov::-webkit-scrollbar-track,.lista::-webkit-scrollbar-track,.pd-prev::-webkit-scrollbar-track{background:transparent}
.board::-webkit-scrollbar-thumb,.scrollx::-webkit-scrollbar-thumb,.ov::-webkit-scrollbar-thumb,.lista::-webkit-scrollbar-thumb,.pd-prev::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:999px}
.board::-webkit-scrollbar-button,.scrollx::-webkit-scrollbar-button,.ov::-webkit-scrollbar-button,.lista::-webkit-scrollbar-button,.pd-prev::-webkit-scrollbar-button{display:none;width:0;height:0}
/* Board-ul e singurul loc unde derularea pe orizontala e o UNEALTA (etapele nu incap in ecran), nu un efect
   secundar: acolo bara trebuie sa se vada, nu doar sa existe. Cu valorile discrete de mai sus (alb 16% peste
   pista transparenta) nu se distinge pe fundal negru - semnalat de fondator: "tot nu vad niciun scroll bar".
   scrollbar-color/-width standard au prioritate peste ::-webkit-scrollbar in Chrome recent, deci se schimba
   amandoua, nu doar pseudo-elementele. */
.board{scrollbar-width:none}
.board::-webkit-scrollbar{height:0;display:none}
.hbar{position:relative;height:10px;margin:.15rem .1rem 0;border-radius:999px;background:rgba(255,255,255,.07);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none}
.hbar span{position:absolute;top:0;bottom:0;border-radius:999px;background:rgba(255,255,255,.32);transition:background .2s var(--ease)}
@media (hover:hover){.hbar:hover span{background:rgba(255,255,255,.46)}}

/* sub 920px meniul devine sertar, intra din dreapta (ca in admin) */
@media (max-width:920px){
  .side{position:fixed;top:0;right:0;bottom:0;height:100dvh;width:16rem;z-index:30;background:var(--s1);
    box-shadow:-24px 0 60px -30px #000,inset 1px 0 0 var(--line-2);transform:translate3d(100%,0,0);transition:transform .3s var(--ease)}
  .side.open{transform:none}
  .icobtn.menu{display:inline-flex}
  .pc{cursor:default}
  .pc .mv{display:inline-flex}
}

/* telefon: cel mai important ecran */
@media (max-width:640px){
  .top .search input{font-size:16px}
  .wrap{padding:.9rem .9rem 2.5rem}
  .kpis{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1.1rem}
  .kpi{padding:.7rem .8rem;border-radius:var(--r)}
  .kpi .val{font-size:1.4rem}
  .item{padding:.9rem;border-radius:var(--r2)}
  .item:not(.wc){flex-direction:column}.item:not(.wc) .r{justify-content:flex-start;width:100%}
  .item .r .btn{flex:1 1 auto}
  .wc-g{grid-template-columns:1fr 1fr;gap:.45rem .7rem}
  .grid2,.resgrid,.pkgs3,.cmp{grid-template-columns:1fr}
  .top-in{padding:.6rem .9rem}
  .brand .who,.ins{display:none}
  .brand img{height:18px}

  h1{font-size:1.0625rem}
  .btn.call{min-height:52px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- componente noi: card de lead, editor de etape, dashboard, oferta ---------- */
.btn.win{background:linear-gradient(180deg,var(--am2),var(--am))}
.btn.cur{box-shadow:inset 0 0 0 1.5px var(--am)}
.resgrid .btn .dot{margin-right:.2rem}
.card.mini{padding:.8rem 1rem;margin:.7rem 0}
.kv{display:flex;justify-content:space-between;gap:1rem;padding:.3rem 0;font-size:.9375rem;border-bottom:1px solid var(--line)}
.kv:last-child{border-bottom:0}.kv span{color:var(--tx3)}.kv b{font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}.kv a{color:var(--tx)}
.cta{display:flex;gap:.45rem;flex-wrap:wrap;margin:.6rem 0}
.cta .btn{flex:1 1 auto}
a.btn{text-decoration:none}
.task{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.55rem 0;border-bottom:1px solid var(--line);font-size:.9375rem;color:var(--tx2)}
.task b{color:var(--tx)}.task .tb{display:flex;gap:.35rem;flex:none}
.badge{display:inline-block;padding:.12rem .6rem;border-radius:999px;font:600 .75rem var(--fb);background:rgba(255,255,255,.07);color:var(--tx2);white-space:nowrap}
.badge.confirmed{background:rgba(143,209,158,.16);color:var(--ok)}.badge.pending_confirmation{background:rgba(255,176,32,.16);color:var(--am)}.badge.rejected{background:rgba(255,107,107,.16);color:var(--err)}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.two .card{margin:0}
.bl{display:flex;align-items:center;gap:.6rem;padding:.35rem 0;font-size:.9375rem}
.bl .bn{flex:0 0 38%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tx2)}
.bl .bt{flex:1;height:6px;background:rgba(255,255,255,.06);border-radius:999px;overflow:hidden}.bl .bt i{display:block;height:100%;border-radius:999px;min-width:0}
.bl b{min-width:1.6rem;text-align:right}
.kpi .val.nil{color:var(--tx3)}
.kpi .val{white-space:normal;overflow-wrap:anywhere}
.tbl tr.sel td{background:rgba(255,176,32,.08)}
.badge,.kpi .sub{font-variant-numeric:tabular-nums}

/* editor de etape */
.stl{display:flex;flex-direction:column;gap:.45rem;margin-top:.7rem}
.str{display:flex;align-items:center;gap:.4rem}
.str input{flex:1;min-width:0;padding:.55rem .8rem;border-radius:var(--r)}
.str .dotb{flex:none;width:28px;height:28px;padding:0;border-radius:50%;border:2px solid rgba(255,255,255,.25);background:none;cursor:pointer;-webkit-appearance:none;appearance:none;overflow:hidden}
.str .dotb::-webkit-color-swatch-wrapper{padding:0}
.str .dotb::-webkit-color-swatch{border:0;border-radius:50%}
.str .dotb::-moz-color-swatch{border:0;border-radius:50%}
.ib{flex:none;width:34px;height:34px;border:0;border-radius:10px;background:rgba(255,255,255,.06);color:var(--tx2);cursor:pointer;font-size:.9rem}
.ib:disabled{opacity:.3;cursor:default}.ib.on{background:rgba(255,176,32,.2);color:var(--am)}.ib.bad{color:var(--err)}
@media (hover:hover){.ib:not(:disabled):hover{background:rgba(255,255,255,.12);color:var(--tx)}}

/* fereastra larga (oferta) si documentul de oferta */
.modal.wide{max-width:820px}
.pd-prev{margin-top:.8rem;border-radius:var(--r);overflow:hidden;max-height:60vh;overflow-y:auto}
.pdoc{background:#fff;color:#1a1d21;font:400 14px/1.5 var(--fb);max-width:780px;margin:0 auto}
.pdoc .pd-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#0b0d0f;color:#fff;padding:20px 28px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.pdoc .pd-head img{height:26px;width:auto}
.pdoc .pd-head div{text-align:right}.pdoc .pd-head b{display:block;font:700 16px var(--fh)}.pdoc .pd-head span{font-size:12px;color:#b7bcc2}
.pdoc .pd-body{padding:24px 28px 8px}
.pdoc .pd-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}
.pdoc .pd-meta span{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.pdoc .pd-meta b{font-weight:600}
.pdoc .pd-t{width:100%;border-collapse:collapse;margin:0 0 20px}
.pdoc .pd-t th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#6b7280;text-align:left;padding:8px 6px;border-bottom:2px solid #1a1d21}
.pdoc .pd-t td{padding:10px 6px;border-bottom:1px solid #e5e7eb;vertical-align:top;color:#1a1d21}.pdoc .pd-t td small{display:block;color:#6b7280;font-size:12px}
.pdoc .pd-t .n{text-align:right;white-space:nowrap}.pdoc .pd-t tr.adj td{color:#6b7280;font-size:12px}
.pdoc .pd-t tfoot td{font:800 18px var(--fh);border-bottom:0;padding-top:12px;color:#0b0d0f}
.pdoc h4{margin:16px 0 6px;font:700 13px var(--fh);letter-spacing:.06em;text-transform:uppercase;color:#0b0d0f}
.pdoc ul{margin:0 0 4px;padding-left:18px}.pdoc li{margin:3px 0;color:#1a1d21}.pdoc p{color:#1a1d21}
.pdoc .pd-foot{margin-top:18px;padding:14px 28px;border-top:1px solid #e5e7eb;font-size:12px;color:#6b7280;text-align:center}
#printRoot{display:none}
@media print{
  body>*:not(#printRoot){display:none!important}
  #printRoot{display:block!important}
  html,body{background:#fff!important;color:#1a1d21!important}
  @page{margin:10mm}
}
@media (max-width:640px){
  .two{grid-template-columns:1fr}
  .col{flex-basis:84vw}
  /* Pipeline pe telefon: chenarele (coloanele) tin tot ecranul pana jos, pagina NU deruleaza; se deruleaza doar cardurile dintr-o coloana (sus-jos) si board-ul (stanga-dreapta, coloana se opreste exact in ecran) */
  html.pipe-lock,html.pipe-lock body{overflow:hidden;height:100%;overscroll-behavior:none}
  .wrap.pipe{padding-bottom:0}
  .board{min-height:0;scroll-snap-type:x mandatory;scroll-padding:0 .9rem;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;gap:.6rem}
  .col{flex-basis:86vw;scroll-snap-align:center}
  .lista{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .hbar{display:none}
  .pdoc .pd-meta{grid-template-columns:1fr}
  .pdoc .pd-body,.pdoc .pd-head,.pdoc .pd-foot{padding-left:16px;padding-right:16px}
  .task{flex-direction:column;align-items:flex-start}
}
@media (max-width:920px){
  .pc .mv{width:40px;height:40px;top:.4rem;right:.4rem}
  .pc .firma{padding-right:3.4rem}
  .ch .ed{display:none}
  .ib{width:40px;height:40px}
  .str .dotb{width:34px;height:34px}
  .add{min-height:40px}
}
