/* =====================================================================
   WMS Damina — stratul de aspect (se încarcă după stilurile din base.html)
   Idee: un instrument de lucru liniștit. Fundal deschis, bara de sus albă,
   un singur verde (al firmei) pentru acțiuni, fără umbre și culori decorative.
   Singurul element „de identitate”: banda subțire cu culorile logoului, sus.
   Pentru a reveni la aspectul vechi: ștergeți linia <link ... theme.css> din base.html.
   ===================================================================== */
@import url("fonts/plex.css");

:root{
  --bg:#F3F5F3;      /* fundal pagină: gri-verzui foarte deschis */
  --card:#FFFFFF;
  --soft:#EDF1EE;    /* suprafețe secundare: antet tabel, hover */
  --tx:#17201C;      /* text */
  --mut:#5C6862;     /* text secundar */
  --bd:#DDE3DF;      /* linii */
  --bd2:#C9D2CC;     /* contur câmpuri (puțin mai vizibil decât liniile) */
  --pri:#1D6A46;     /* verdele firmei, mai sobru: butoane, linkuri, selecție */
  --pri2:#14553A;
  --onpri:#FFFFFF;
  --ok:#1C7A4B; --err:#B93A2C; --warn:#A35F08;
  --side:#173F2D; --side2:#1F5139;
  --logo-g:#3E9B3A; --logo-o:#EF8F1D; --logo-r:#D63F2A;
  --sh:none; --r:12px;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#0F1412; --card:#161D1A; --soft:#1C2521; --tx:#E3E9E5; --mut:#96A29B; --bd:#26302B; --bd2:#34403A;
  --pri:#62C08D; --pri2:#7DD0A2; --onpri:#0C1611;
  --ok:#5CC48E; --err:#F0806F; --warn:#E2AE55; --side:#12261C; --side2:#1A3527;
}}

/* ---------- tipografie ---------- */
body{font:14.5px/1.55 "IBM Plex Sans","Segoe UI",system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--tx);font-feature-settings:"kern"}
h1{font-size:26px;font-weight:600;letter-spacing:-.015em;line-height:1.2;margin:2px 0 20px}
h2{font-size:17px;font-weight:600;letter-spacing:-.005em;margin:28px 0 12px}
h3{font-weight:600}
a{color:var(--pri);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
p a,li a,.mut a{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--pri) 35%,transparent);text-underline-offset:3px}
td,.kpi b,.t b{font-variant-numeric:tabular-nums}
:focus-visible{outline:2px solid var(--pri);outline-offset:2px}

/* ---------- bara de sus: albă, cu banda logoului ---------- */
.hdr{background:var(--card);color:var(--tx);box-shadow:none;border-bottom:1px solid var(--bd)}
.hdr::before{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--logo-g) 0 33.3%,var(--logo-o) 33.3% 66.6%,var(--logo-r) 66.6%)}
.hdr .bar{padding:8px 24px;gap:10px;max-width:1500px}
.hdr .brand img{background:none;padding:0;height:32px;border-radius:0}
.apps{gap:2px}
.apps a{color:#3B4741;padding:7px 11px;border-radius:8px;font-size:14px;font-weight:500}
.apps a:hover{background:var(--soft);text-decoration:none}
.apps a.on{background:color-mix(in srgb,var(--pri) 11%,var(--card));color:var(--pri);box-shadow:none}
.apps .dm{border-radius:12px;border-color:var(--bd);box-shadow:0 12px 32px rgba(20,40,30,.14),0 2px 6px rgba(20,40,30,.06);padding:6px}
.apps .dm a{font-size:14px;color:var(--tx);padding:8px 12px;border-radius:8px}
.apps .dm a:hover{background:var(--soft)}
.apps .dm a.on{background:color-mix(in srgb,var(--pri) 11%,var(--card));color:var(--pri)}
.hdr .hl{color:var(--mut);border:0;padding:7px 10px;border-radius:8px;white-space:nowrap;font-size:13.5px}
.hdr .hl:hover,.hdr .hl.on{background:var(--soft);color:var(--tx);text-decoration:none}
.hdr select{background:var(--card);color:var(--tx);border-color:var(--bd2);font-size:13.5px;padding:6px 10px}
.hdr .tag{background:var(--soft);color:var(--tx);border-color:var(--bd)}
.hdr .who{color:var(--tx)}.hdr .who:hover{text-decoration:none}
.hdr .who small{color:var(--mut)}
.who .av{background:var(--pri);color:var(--onpri);font-weight:600}
.hdr button.sec{background:var(--card);color:var(--tx);border-color:var(--bd2);padding:6px 12px}
.hdr button.sec:hover{background:var(--soft)}
.nb{background:var(--logo-r)}
.hnav{background:var(--card);border-top:1px solid var(--bd)}
.hnav a{color:var(--mut)}.hnav a:hover{color:var(--tx);background:var(--soft)}
.hnav a.on{color:var(--pri);border-bottom-color:var(--pri);background:none}
@media (prefers-color-scheme:dark){.apps a{color:#C9D3CD}}

/* ---------- conținut ---------- */
main{padding-top:28px}
.card{border-radius:var(--r);box-shadow:none;padding:20px 22px}
.kpis{gap:14px}
.kpi,.kpi:nth-child(2),.kpi:nth-child(3),.kpi:nth-child(4){border:1px solid var(--bd);border-radius:var(--r);box-shadow:none;padding:16px 20px}
.kpi b{font-size:30px;font-weight:600;letter-spacing:-.02em}
.kpi span{font-size:13px}

/* tabele */
table{border-radius:var(--r);box-shadow:none}
th{font-size:12.5px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--mut);background:var(--soft)}
th,td{padding:10px 14px}
table tr:hover td{background:color-mix(in srgb,var(--soft) 70%,var(--card))}
td a{font-weight:500}

/* câmpuri și butoane */
input,select,textarea{border-color:var(--bd2);border-radius:8px}
input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--mut) 75%,transparent)}
input:focus,select:focus,textarea:focus{border-color:var(--pri);box-shadow:0 0 0 3px color-mix(in srgb,var(--pri) 18%,transparent)}
button,.btn{border-radius:8px;font-weight:500;color:var(--onpri)}
button:hover,.btn:hover{text-decoration:none}
button.sec,.btn.sec{background:var(--card);color:var(--tx);border-color:var(--bd2)}
button.sec:hover,.btn.sec:hover{background:var(--soft);border-color:var(--bd2)}
.row label{font-size:12.5px;color:var(--mut)}
input[type=file]::file-selector-button{background:var(--soft);border-color:var(--bd2);border-radius:6px}

/* mesaje, etichete */
.flash{border-radius:10px;font-weight:500}
.tag{border-radius:6px;background:var(--soft);border-color:var(--bd);font-size:12.5px}

/* antet document (aviz, recepție) */
.dhead{background:var(--side);border-radius:var(--r) var(--r) 0 0}
.dmeta{border-radius:0 0 var(--r) var(--r)}

/* stoc: bara de sortare și coșul devin discrete (prefixul main bate stilurile din pagină) */
main .uhd{background:var(--soft);border:1px solid var(--bd);border-bottom:0;border-radius:var(--r) var(--r) 0 0;color:var(--mut)}
main .uhd .usrt{color:var(--tx);background:transparent;font-weight:500}
main .uhd .usrt:hover{background:var(--card);text-decoration:none}
main .uhd .usrt.on{background:var(--card);color:var(--pri);box-shadow:0 0 0 1px var(--bd)}
main .uhd .cnt{color:var(--mut)}
main .uhd>span[style]{color:var(--mut)!important}   /* eticheta „Sortare:” era albă */
main .ucs{border-radius:var(--r)}
main .ucs h3{background:var(--soft);color:var(--tx);border-bottom:1px solid var(--bd);font-weight:600}
main .ur{border-left-width:3px}
main .ur.g{border-left-color:var(--ok)}main .ur.y{border-left-color:var(--logo-o)}main .ur.r{border-left-color:var(--err)}
main .utb a,main .usb{border-radius:10px}

/* calculator: rândul 1 = logo, depozit, cont; rândul 2 = meniul modulelor, pe toată lățimea */
@media (min-width:901px){
  .hdr .bar{flex-wrap:wrap;row-gap:0;padding:10px 24px 0}
  .hdr .apps{order:10;flex:1 0 100%;margin:6px 0 0 -11px;flex-wrap:wrap;gap:0}  /* fără overflow: ar tăia meniurile derulante */
  .hdr .apps a.top1{white-space:nowrap;border-radius:0;padding:10px 12px 11px;border-bottom:2px solid transparent;background:none}
  .hdr .apps a.top1:hover{background:none;color:var(--tx);border-bottom-color:var(--bd2)}
  .hdr .apps a.top1.on{background:none;color:var(--pri);border-bottom-color:var(--pri)}
  .hdr .apps .dm{margin-top:0}
  .apps .dd:hover .dm{display:block}
}

/* ---------- meniul lateral (calculator) ----------
   Pe ecrane > 900px modulele stau în stânga; bara de sus păstrează doar depozitul și contul.
   Restrâns (butonul de jos) rămân doar iconițele; starea se ține minte în browser. */
.snav{display:none}
@media (min-width:901px){
  :root{--sw:256px}
  html.snav-c{--sw:72px}
  body:not(.nologin){padding-left:var(--sw)}
  body:not(.nologin)::before{content:"";position:fixed;z-index:60;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--logo-g) 0 33.3%,var(--logo-o) 33.3% 66.6%,var(--logo-r) 66.6%)}
  .hdr::before{display:none}
  .hdr .brand,.hdr .apps{display:none!important}
  .hdr .bar{padding:12px 28px 12px;max-width:none;justify-content:flex-end}
  .hdr .sp{flex:1}

  .snav{display:flex;flex-direction:column;position:fixed;z-index:45;left:0;top:0;bottom:0;width:var(--sw);padding-top:3px;
        background:var(--card);border-right:1px solid var(--bd);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}
  .sbrand{display:block;padding:18px 22px 16px}.sbrand img{height:32px;width:auto;display:block}
  .slist{display:flex;flex-direction:column;gap:2px;padding:4px 0 12px}

  .smod>summary,.smod1,.scol{display:flex;align-items:center;gap:12px;margin:0 12px;padding:9px 12px;border-radius:10px;
        color:#36423C;font-size:14.5px;font-weight:500;cursor:pointer;list-style:none;text-decoration:none;white-space:nowrap;position:relative}
  .smod>summary::-webkit-details-marker{display:none}
  .snav svg{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .smod>summary:hover,.smod1:hover,.scol:hover{background:var(--soft);color:var(--tx);text-decoration:none}
  .smod.on>summary,.smod1.on{color:var(--pri);background:color-mix(in srgb,var(--pri) 9%,var(--card));font-weight:600}
  .sl{flex:1;overflow:hidden;text-overflow:ellipsis}
  .snav .nb{margin:0}
  .sc{width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(-45deg);opacity:.5;transition:transform .15s;margin-right:3px}
  .smod[open]>summary .sc{transform:rotate(45deg)}

  .sitems{margin:2px 12px 10px 33px;padding-left:12px;border-left:1px solid var(--bd);display:flex;flex-direction:column;gap:1px}
  .sitems a{padding:6px 10px;border-radius:8px;color:var(--mut);font-size:14px;line-height:1.35}
  .sitems a:hover{background:var(--soft);color:var(--tx);text-decoration:none}
  .sitems a.on{color:var(--pri);font-weight:600;background:color-mix(in srgb,var(--pri) 9%,var(--card))}
  .sadm{display:block;margin:10px 10px 2px;font-size:12.5px;font-weight:600;color:var(--mut)}

  .scol{margin-top:auto;margin-bottom:14px;background:none;border:0;color:var(--mut);font:inherit;font-size:13.5px;width:auto;text-align:left}
  .scol:hover{background:var(--soft)}

  /* restrâns: doar iconițe */
  html.snav-c .sl,html.snav-c .sc,html.snav-c .sitems{display:none}
  html.snav-c .smod>summary,html.snav-c .smod1,html.snav-c .scol{justify-content:center;padding:11px 0;margin:0 12px}
  html.snav-c .snav .nb{position:absolute;top:3px;right:6px;font-size:10px;min-width:16px;line-height:16px;padding:0 4px}
  html.snav-c .sbrand{display:none}
  html.snav-c .slist{padding-top:16px}
  html.snav-c .scol svg{transform:rotate(180deg)}
}
@media (min-width:901px) and (prefers-color-scheme:dark){
  .smod>summary,.smod1{color:#C9D3CD}
  .sbrand img{background:#fff;padding:4px 8px;border-radius:6px}
}

/* autentificare */
body.nologin main{background:var(--bg)}
body.nologin::before{content:"";position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--logo-g) 0 33.3%,var(--logo-o) 33.3% 66.6%,var(--logo-r) 66.6%)}
body.nologin .card{box-shadow:none!important;border-radius:16px}

/* ---------- telefon: aceleași culori ca pe calculator ---------- */
@media (max-width:900px){
  :root{--pri:#1D6A46;--pri2:#14553A;--r:10px;--bg:#F3F5F3;--bd:#DDE3DF}
  .hdr{background:var(--card)}
  .hdr .brand img{height:26px}
  .apps a{color:#3B4741}
  .apps a.on{background:var(--pri);color:#fff}
  .apps .dm{background:var(--soft);border-color:var(--bd)}
  .apps .dm a{color:var(--tx)}.apps .dm a:hover{background:var(--card);color:var(--tx)}
  .apps .dm a.on{background:var(--card);color:var(--pri)}
  .card,.kpi{border:1px solid var(--bd);border-radius:10px}
  button,.btn{border-radius:8px}
  input,select,textarea{border-radius:8px}
  button.sec,.btn.sec{background:var(--card);color:var(--pri);border-color:var(--bd2)}
  button.sec:hover,.btn.sec:hover{background:var(--soft)}
  .hmenu a:active,.hmenu button:active{background:var(--soft)}
}
@media (max-width:900px) and (prefers-color-scheme:dark){
  :root{--pri:#62C08D;--pri2:#7DD0A2;--bg:#0F1412;--bd:#26302B}
  .apps a{color:#C9D3CD}.apps a.on{color:var(--onpri)}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
/* logoul are fundal alb: în modul întunecat îl așezăm pe o plăcuță rotunjită */
@media (prefers-color-scheme:dark){.hdr .brand img{background:#fff;padding:3px 8px;border-radius:6px}}

/* ---------- căutare globală în bara de sus (Ctrl+G) ---------- */
.hdr .gs{position:relative;flex:0 1 460px;min-width:200px}
.hdr .gs input{width:100%;padding:8px 12px 8px 34px;border-radius:10px;background:var(--soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235C6862' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") no-repeat 11px 50%;border-color:transparent;font-size:14px}
.hdr .gs input:focus{background-color:var(--card);border-color:var(--pri)}
.hdr .gs ul{position:absolute;top:calc(100% + 6px);left:0;width:min(560px,92vw);max-height:70vh;overflow:auto;z-index:80;margin:0;padding:6px;list-style:none;background:var(--card);border:1px solid var(--bd);border-radius:12px;box-shadow:0 14px 36px rgba(20,40,30,.18)}
.hdr .gs li{padding:7px 10px;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:1px;color:var(--tx)}
.hdr .gs li b{font-weight:500;font-size:14px}.hdr .gs li small{color:var(--mut);font-size:12.5px}
.hdr .gs li:hover{background:var(--soft)}
.hdr .gs li.gh{cursor:default;padding:8px 10px 3px;font-size:12px;font-weight:600;color:var(--pri);background:none}
@media (max-width:900px){.hdr .gs{order:6;flex:1 1 100%;margin:2px 0 4px}}

@media (min-width:901px){.sitems a.sws{font-weight:600;color:var(--tx)}.sitems a.sws.on{color:var(--pri)}}
