:root{
  --paper:#FFF;--wash:#F1F5FE;--ink:#12193A;--ink-soft:#5C688C;
  --blue:#2B5BFF;--blue-dark:#1D3FBF;--blue-wash:#E7EDFF;--sun:#FFC24B;
  --edge:#DCE3F5;--alert:#D8462F;--ok:#12855C;--ok-wash:#E3F6EE;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--wash);color:var(--ink);font-family:'Manrope',system-ui,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Bricolage Grotesque','Manrope',sans-serif;letter-spacing:-.03em;line-height:1.1}
button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}
a{color:var(--blue)}
.wrap{max-width:1240px;margin:0 auto;padding:0 18px}

/* login */
.login{min-height:100dvh;display:grid;place-items:center;padding:20px}
.login-card{background:#fff;border:1px solid var(--edge);border-radius:22px;padding:32px;width:100%;max-width:390px;box-shadow:0 30px 70px -40px rgba(18,25,58,.5)}
.login-card h1{font-size:26px;font-weight:800;margin-bottom:6px}
.login-card p.sub{color:var(--ink-soft);font-size:14px;margin-bottom:22px}

.fld{margin-bottom:14px}
.fld label{display:block;font-weight:600;font-size:13.5px;margin-bottom:6px}
input[type=text],input[type=email],input[type=password],input[type=number],select,textarea{
  width:100%;padding:11px 13px;border:1.5px solid var(--edge);border-radius:10px;background:#fff;transition:.15s
}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(43,91,255,.14)}
textarea{resize:vertical;min-height:70px}

.btn{background:var(--blue);color:#fff;border:0;border-radius:99px;padding:12px 22px;font-weight:700;cursor:pointer;transition:.15s}
.btn:hover{background:var(--blue-dark)}
.btn:disabled{opacity:.55;cursor:default}
.btn.wide{width:100%}
.btn.ghost{background:#fff;color:var(--ink);border:1.5px solid var(--edge)}
.btn.ghost:hover{border-color:var(--blue);color:var(--blue);background:#fff}
.btn.sm{padding:8px 15px;font-size:13.5px}
.btn.danger{background:#fff;color:var(--alert);border:1.5px solid #F3C9C1}
.btn.danger:hover{background:#FEF5F3}
.msg{font-size:13.5px;margin-top:12px;padding:10px 12px;border-radius:10px;display:none}
.msg.show{display:block}
.msg.bad{background:#FEF5F3;color:var(--alert);border:1px solid #F3C9C1}
.msg.good{background:var(--ok-wash);color:var(--ok);border:1px solid #BFE5D5}

/* layout */
.app{display:none}
.app.show{display:block}
header.bar{background:#fff;border-bottom:1px solid var(--edge);position:sticky;top:0;z-index:30}
.bar-in{height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.logo{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:18px}
.logo span{color:var(--ink-soft);font-family:'Manrope';font-weight:500;font-size:14px;margin-left:8px}
.who{color:var(--ink-soft);font-size:13.5px}
.tabs{display:flex;gap:8px;padding:16px 0 0}
.tab{background:#fff;border:1.5px solid var(--edge);border-radius:99px;padding:9px 18px;font-weight:600;cursor:pointer;font-size:14px}
.tab.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.page{display:none;padding:22px 0 60px}
.page.on{display:block}

.panel{background:#fff;border:1px solid var(--edge);border-radius:18px;padding:20px;margin-bottom:16px}
.panel h2{font-size:20px;font-weight:800;margin-bottom:4px}
.panel .hint{color:var(--ink-soft);font-size:13.5px;margin-bottom:16px}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
@media(max-width:760px){.stats{grid-template-columns:1fr 1fr}}
.stat{background:#fff;border:1px solid var(--edge);border-radius:14px;padding:16px}
.stat b{display:block;font-family:'Bricolage Grotesque',sans-serif;font-size:26px;font-weight:800}
.stat span{color:var(--ink-soft);font-size:13px}

/* filtre */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;align-items:center}
.chip{background:#fff;border:1.5px solid var(--edge);border-radius:99px;padding:7px 14px;font-size:13.5px;font-weight:600;cursor:pointer}
.chip.on{background:var(--blue-wash);border-color:var(--blue);color:var(--blue)}
.search{margin-left:auto;max-width:260px}
@media(max-width:640px){.search{margin-left:0;max-width:none;width:100%}}

/* objednávky */
.order{background:#fff;border:1px solid var(--edge);border-radius:14px;margin-bottom:10px;overflow:hidden}
.order-head{display:grid;grid-template-columns:1.4fr 1.6fr 1fr .9fr auto;gap:14px;align-items:center;padding:14px 16px;cursor:pointer}
@media(max-width:900px){.order-head{grid-template-columns:1fr 1fr;gap:8px}}
.order-head .nm{font-weight:700}
.order-head .dt{color:var(--ink-soft);font-size:12.5px}
.order-head .cfg{font-size:13.5px;color:var(--ink-soft)}
.order-head .pr{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:17px}
.badge{display:inline-block;border-radius:99px;padding:4px 11px;font-size:12px;font-weight:700;white-space:nowrap}
.b-novy{background:var(--blue-wash);color:var(--blue)}
.b-kontaktovany{background:#FFF3D9;color:#8A6400}
.b-objednane{background:#DFF1F7;color:#0F6E85}
.b-naplanovane{background:#FFE9D6;color:#A85400}
.b-vybavene{background:var(--ok-wash);color:var(--ok)}
.term{display:inline-flex;align-items:center;gap:6px;background:#FFF3D9;color:#8A6400;border-radius:99px;padding:3px 10px;font-size:12px;font-weight:700;margin-top:4px}
.b-zrusene{background:#F2F4F8;color:var(--ink-soft)}
.b-call{background:#FFF3D9;color:#8A6400}
.order-body{display:none;border-top:1px solid var(--edge);padding:18px 16px;background:#FCFDFF}
.order.open .order-body{display:block}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:760px){.cols{grid-template-columns:1fr}}
.kv{font-size:14px}
.kv div{display:flex;justify-content:space-between;gap:14px;padding:5px 0;border-bottom:1px dashed var(--edge)}
.kv span{color:var(--ink-soft)}
.kv b{text-align:right;font-weight:600}
.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:16px}
.actions select{width:auto;min-width:170px}
.actions .sched{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);font-weight:600}
.actions .sched input{width:auto;padding:9px 11px;border-radius:10px}

/* kalendár */
.cal-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.cal-head h2{font-size:22px;font-weight:800;min-width:190px}
.cal-legend{margin-left:auto;display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-soft)}
.cal-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-dow{text-align:center;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);padding-bottom:4px}
.cal-day{background:#fff;border:1px solid var(--edge);border-radius:10px;min-height:104px;padding:7px 7px 8px;display:flex;flex-direction:column;gap:4px}
.cal-day.out{background:#FAFBFE;opacity:.6}
.cal-day.today{border-color:var(--blue);box-shadow:0 0 0 2px rgba(43,91,255,.15)}
.cal-day .dnum{font-size:12.5px;font-weight:700;color:var(--ink-soft)}
.cal-day.today .dnum{color:var(--blue)}
.cal-ev{border:0;text-align:left;width:100%;border-radius:7px;padding:5px 7px;font-size:11.5px;line-height:1.3;cursor:pointer;font-weight:600}
.cal-ev b{display:block;font-weight:800;font-size:11px}
.cal-ev.naplanovane{background:#FFE9D6;color:#8A4A00}
.cal-ev.vybavene{background:var(--ok-wash);color:var(--ok)}
.cal-ev.other{background:var(--wash);color:var(--ink-soft)}
.cal-ev:hover{filter:brightness(.95)}
.cal-empty{text-align:center;color:var(--ink-soft);padding:14px 0;font-size:13.5px}
@media(max-width:820px){
  .cal-grid{gap:4px}
  .cal-day{min-height:84px;padding:5px}
  .cal-ev{font-size:10.5px;padding:4px 5px}
  .cal-ev span{display:none}
}

/* tabuľky cenníka */
.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);padding:8px 8px;border-bottom:1px solid var(--edge);font-weight:700}
.tbl td{padding:7px 8px;border-bottom:1px solid var(--edge);vertical-align:middle}
.tbl input,.tbl select{padding:8px 10px;border-radius:8px}
.tbl input[type=number]{max-width:110px}
.tbl .num{max-width:100px}
.scroll{overflow-x:auto}
.tbl tr.off{opacity:.5}
.sw{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-soft);white-space:nowrap}
.sw input{width:17px;height:17px;accent-color:var(--blue)}
.addrow{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-top:14px;padding-top:14px;border-top:1px dashed var(--edge)}
.addrow .fld{margin:0;flex:1;min-width:130px}
.note{background:var(--wash);border-radius:10px;padding:11px 13px;color:var(--ink-soft);font-size:13px;margin-top:14px}
.empty{text-align:center;padding:44px 20px;color:var(--ink-soft)}

.logo{display:flex;align-items:center;gap:10px}.logo img{display:block;width:155px;height:auto}.logo span{margin-left:0}

/* dokumenty a fotografie v objednávke */
.order-files{margin-top:20px;padding-top:18px;border-top:1px solid var(--edge)}
.files-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}
.files-head h3{font-size:17px;font-weight:800;margin:0 0 3px}
.files-head p{color:var(--ink-soft);font-size:12.5px}
.files-upload{display:grid;grid-template-columns:minmax(150px,190px) 1fr auto;gap:8px;align-items:center;background:var(--wash);padding:12px;border-radius:12px}
.files-upload select,.files-upload input{width:100%;padding:9px 10px;border:1.5px solid var(--edge);border-radius:9px;background:#fff}
.files-msg{font-size:12.5px;color:var(--ok);font-weight:600;margin-top:7px}
.files-list{display:grid;gap:8px;margin-top:12px}
.file-item{display:grid;grid-template-columns:58px minmax(160px,1fr) 160px auto auto;gap:9px;align-items:center;border:1px solid var(--edge);border-radius:11px;padding:8px;background:#fff}
.file-preview{width:58px;height:48px;border-radius:8px;background:var(--wash);display:grid;place-items:center;font-size:22px;overflow:hidden}
.file-preview img{width:100%;height:100%;object-fit:cover;display:block}
.file-meta{min-width:0;display:flex;flex-direction:column}
.file-meta b{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.file-meta span{font-size:11.5px;color:var(--ink-soft)}
.file-item select{padding:7px 8px;border:1.5px solid var(--edge);border-radius:8px;background:#fff;font-size:12.5px}
.files-loading,.files-empty,.files-error{padding:14px;text-align:center;color:var(--ink-soft);font-size:12.5px;background:#fff;border:1px dashed var(--edge);border-radius:10px}
.files-error{color:var(--alert)}
@media(max-width:900px){
  .files-upload{grid-template-columns:1fr}
  .file-item{grid-template-columns:52px 1fr auto}
  .file-item select{grid-column:2/4}
  .file-item [data-file-open]{grid-column:2}
  .file-item [data-file-delete]{grid-column:3}
}

/* sklad */
.stock-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:16px}
.stock-toolbar h1{font-size:28px;margin-bottom:3px}.stock-toolbar p{color:var(--ink-soft);font-size:13.5px}.stock-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}
.stock-section-head,.stock-form-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.stock-section-head .search{min-width:240px}
.stock-movement-form{display:none;border-color:#BFCBFF;box-shadow:0 10px 30px -25px rgba(43,91,255,.7)}.stock-movement-form.open{display:block}
.stock-form-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr 2fr;gap:12px;align-items:end}.stock-form-grid .fld{margin-bottom:8px}.stock-form-note{min-width:180px}
.product-grid{grid-template-columns:2fr 1.2fr 1.2fr .8fr 1fr 1fr}.stock-check{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;margin:0 0 18px}.stock-check input{width:18px;height:18px;accent-color:var(--blue)}
.stock-table td:first-child small{display:block;color:var(--ink-soft);font-size:11.5px;font-weight:500}.stock-qty b{font-size:16px}.stock-actions{white-space:nowrap}.stock-actions .btn{margin-right:5px}
.stock-low{background:#FFF9ED}.stock-stat-warn b{color:#A85400}.stock-badge-low{background:#FFF0D6;color:#9B5800}.stock-badge-ok{background:var(--ok-wash);color:var(--ok)}
.stock-type-in{background:var(--ok-wash);color:var(--ok)}.stock-type-out{background:#FEF0ED;color:var(--alert)}.stock-type-adjustment{background:var(--blue-wash);color:var(--blue)}
.stock-loading{padding:22px!important;text-align:center;color:var(--ink-soft)}.stock-error{padding:22px!important;text-align:center;color:var(--alert)}
.stock-serial-add{margin-bottom:14px}
@media(max-width:900px){.stock-form-grid,.product-grid{grid-template-columns:1fr 1fr}.stock-toolbar{align-items:flex-start;flex-direction:column}.stock-section-head{flex-direction:column}.stock-section-head .search{width:100%;max-width:none}.stock-actions .btn{display:block;margin:4px 0}}
@media(max-width:560px){.stock-form-grid,.product-grid{grid-template-columns:1fr}.stock-toolbar-actions{width:100%}.stock-toolbar-actions .btn{flex:1}.stock-check{margin-bottom:10px}}

/* Automatická evidencia sériových čísel pri skladovom pohybe */
.stock-auto-serial{margin:12px 0 14px;padding:14px;border:1px solid #dce2f2;border-radius:12px;background:#f8faff}
.stock-auto-serial-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.stock-auto-serial-head .hint{margin:3px 0 0}
.stock-serial-label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
#movementSerialInput{width:100%;min-height:110px;resize:vertical;padding:10px 12px;border:1px solid #cfd6e6;border-radius:10px;font:inherit;background:#fff}
.stock-serial-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.stock-serial-choice{display:flex;gap:9px;align-items:center;padding:9px 10px;border:1px solid #dce2f2;border-radius:9px;background:#fff;cursor:pointer}
.stock-serial-choice input{width:auto;margin:0}
.stock-serial-empty{padding:10px;border-radius:9px;background:#fff3f3;color:#9d2525}
@media(max-width:560px){.stock-auto-serial-head{flex-direction:column}.stock-serial-choices{grid-template-columns:1fr}}

/* --- sklad priamo v objednavke --- */
.order-stock{margin-top:18px;padding-top:18px;border-top:1px solid var(--line,#e5e7eb)}
.order-stock-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.order-stock-head h3{margin:0;font-size:16px}
.order-stock-summary{font-size:13px;color:var(--ink-soft)}
.order-stock-list{border:1px solid var(--line,#e5e7eb);border-radius:12px;overflow:hidden;background:#fff}
.order-stock-row{display:grid;grid-template-columns:minmax(180px,1fr) 110px minmax(160px,1fr);gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line,#e5e7eb);font-size:13px}
.order-stock-row:last-child{border-bottom:0}
.order-stock-row small{display:block;color:var(--ink-soft);margin-top:2px}
.order-stock-empty{padding:12px;color:var(--ink-soft);font-size:13px}
.order-stock-form{display:none;margin-top:12px;padding:14px;border:1px solid var(--line,#e5e7eb);border-radius:12px;background:#fafafa}
.order-stock-form.open{display:block}
.order-stock-form-grid{display:grid;grid-template-columns:2fr 1fr 2fr auto;gap:10px;align-items:end}
.order-stock-form .fld{margin:0}
.order-stock-serials{margin-top:12px}
.order-stock-serial-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}
.order-stock-serial-choice{display:flex;align-items:center;gap:7px;border:1px solid var(--line,#e5e7eb);padding:8px 10px;border-radius:10px;background:#fff;font-size:13px}
.order-stock-msg{margin-top:9px;font-size:13px}
.order-stock-msg.bad{color:#b42318}.order-stock-msg.good{color:#067647}
@media(max-width:800px){.order-stock-form-grid{grid-template-columns:1fr 1fr}.order-stock-row{grid-template-columns:1fr 90px}.order-stock-row>div:last-child{grid-column:1/-1}}

/* sklad v3.16 - inventura, historia, minima */
.stock-low-panel{border-color:#f1d49b;background:#fffdf8}.stock-low-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:10px}
.stock-low-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 12px;border:1px solid #f1d49b;border-radius:11px;background:#fff}
.stock-low-item small{display:block;color:var(--ink-soft);margin-top:2px}.stock-low-item b:last-child{white-space:nowrap;color:#9B5800}
.stock-inventory-form,.stock-history-panel{display:none}.stock-inventory-form.open,.stock-history-panel.open{display:block}
.stock-inventory-current{margin:8px 0 12px;padding:10px 12px;border-radius:10px;background:var(--blue-wash);font-size:13px}
.stock-inventory-grid{grid-template-columns:2fr 1fr 1fr 2fr}.stock-history-panel{border-color:#dce2f2}
.stock-actions{min-width:260px}.stock-actions .btn{margin-bottom:4px}
@media(max-width:900px){.stock-inventory-grid{grid-template-columns:1fr 1fr}.stock-actions{min-width:210px}}
@media(max-width:560px){.stock-inventory-grid{grid-template-columns:1fr}.stock-low-list{grid-template-columns:1fr}}

/* sklad v3.17 - dodavatelia a nakupny zoznam */
.stock-purchase-panel{border-color:#cfd8ff;background:#fbfcff}.stock-purchase-panel td:first-child small{display:block;color:var(--ink-soft);font-size:11.5px;margin-top:2px}
.stock-purchase-settings{display:none}.stock-purchase-settings.open{display:block}.stock-purchase-settings-grid{grid-template-columns:2fr 1fr 2fr}
#movementForm .stock-form-grid{grid-template-columns:2fr .9fr 1.15fr 1.4fr 2fr}
.product-grid{grid-template-columns:2fr 1.1fr 1.1fr .7fr 1fr 1fr 1fr 1.4fr}
@media(max-width:900px){#movementForm .stock-form-grid,.stock-purchase-settings-grid,.product-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){#movementForm .stock-form-grid,.stock-purchase-settings-grid,.product-grid{grid-template-columns:1fr}}

/* financie */
.order-finance{margin-top:18px;padding-top:18px;border-top:1px solid var(--edge)}
.order-finance-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.order-finance-head h3{font-size:16px}.order-finance-sub{font-size:13px;color:var(--ink-soft);margin-top:2px}
.order-finance-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:10px}.order-finance-cards>div{padding:10px 11px;border:1px solid var(--edge);border-radius:10px;background:#fff}.order-finance-cards span{display:block;font-size:11.5px;color:var(--ink-soft);margin-bottom:3px}.order-finance-cards b{font-size:14px}.order-finance-cards .profit{background:var(--ok-wash);border-color:#BFE5D5}
.order-cost-list{border:1px solid var(--edge);border-radius:11px;overflow:hidden;background:#fff}.order-cost-row{display:grid;grid-template-columns:1fr 120px auto;gap:10px;align-items:center;padding:9px 11px;border-bottom:1px solid var(--edge);font-size:13px}.order-cost-row:last-child{border-bottom:0}.order-cost-row small{display:block;color:var(--ink-soft);font-size:11.5px;margin-top:2px}.order-cost-empty{padding:11px;color:var(--ink-soft);font-size:13px}.order-cost-empty.warn{color:#9B5800;background:#fff9ed}
.order-cost-form{display:none;margin-top:10px;padding:12px;border:1px solid var(--edge);border-radius:11px;background:#fafafa}.order-cost-form.open{display:block}.order-cost-grid{display:grid;grid-template-columns:1fr 2fr 1fr auto;gap:9px;align-items:end}.order-cost-grid .fld{margin:0}.order-cost-msg{font-size:12.5px;margin-top:7px}.order-cost-msg.good{color:var(--ok)}.order-cost-msg.bad{color:var(--alert)}
.finance-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:-6px 0 16px}.finance-mini>div{background:var(--wash);border-radius:12px;padding:12px 14px}.finance-mini b{display:block;font-size:17px}.finance-mini span{font-size:12px;color:var(--ink-soft)}.finance-table td:first-child small{display:block;color:var(--ink-soft);font-size:11.5px;margin-top:2px}
#financePeriod{padding:9px 12px;border:1.5px solid var(--edge);border-radius:99px;background:#fff}
@media(max-width:1000px){.order-finance-cards{grid-template-columns:repeat(3,1fr)}.finance-mini{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.order-finance-head{align-items:flex-start;flex-direction:column}.order-finance-cards{grid-template-columns:1fr 1fr}.order-cost-grid{grid-template-columns:1fr 1fr}.order-cost-row{grid-template-columns:1fr auto}.order-cost-row .btn{grid-column:1/-1}.finance-mini{grid-template-columns:1fr 1fr}}

/* Dashboard v3.19 */
.dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-bottom:18px}.dash-list{display:grid;gap:9px}.dash-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.dash-row:last-child{border-bottom:0}.dash-row b{display:block}.dash-row small{color:var(--ink-soft)}.dash-empty{padding:18px 0;color:var(--ink-soft)}.dash-alert{font-weight:700}.doc-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:800px){.dashboard-grid{grid-template-columns:1fr}.tabs{overflow-x:auto;white-space:nowrap}.dash-row{grid-template-columns:1fr}.doc-actions{width:100%}}

/* Mobile admin polish v3.20 */
@media(max-width:700px){
  body{font-size:14px}
  .wrap{padding-left:12px;padding-right:12px}
  header.bar{position:sticky;top:0}
  .bar-in{height:56px;gap:8px}
  .logo img{width:126px}.logo span{display:none}.who{display:none}
  .bar-in .btn{padding:8px 12px;font-size:12.5px}
  .tabs{margin:0 -12px;padding:10px 12px 2px;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tabs::-webkit-scrollbar{display:none}
  .tab{flex:0 0 auto;padding:8px 13px;font-size:13px}
  .page{padding-top:14px;padding-bottom:36px}
  .panel{padding:14px;border-radius:14px;margin-bottom:12px}
  .panel h2{font-size:18px}.panel .hint{margin-bottom:12px}
  .stats{gap:8px;margin-bottom:12px}.stat{padding:12px}.stat b{font-size:21px}.stat span{font-size:11.5px}
  .stock-toolbar{gap:10px;margin-bottom:12px}.stock-toolbar h1{font-size:24px}.stock-toolbar-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.stock-toolbar-actions .btn:last-child:nth-child(3){grid-column:1/-1}
  .btn{min-height:42px}.btn.sm{min-height:38px;padding:9px 13px}
  input[type=text],input[type=email],input[type=password],input[type=number],select,textarea{font-size:16px;padding:11px 12px}
  .filters{gap:6px}.chip{padding:7px 11px;font-size:12.5px}
  .order-head{grid-template-columns:1fr auto;padding:12px;gap:6px 10px}.order-head .cfg{grid-column:1/-1}.order-head .pr{text-align:right}.order-body{padding:14px 12px}.cols{gap:12px}
  .kv div{align-items:flex-start}.kv b{max-width:58%}
  .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.actions select,.actions .sched,.actions .btn,.actions a{width:100%;min-width:0}.actions .sched{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr}.actions .sched input{width:100%}.actions .danger{margin-left:0!important;grid-column:1/-1}
  .doc-actions{display:grid;grid-template-columns:1fr 1fr}.doc-actions .btn{width:100%}
  .files-upload{padding:10px}.file-item{padding:7px;gap:7px}
  .order-stock-head{align-items:flex-start;flex-direction:column}.order-stock-form-grid{grid-template-columns:1fr}.order-stock-form-grid .btn{width:100%}.order-stock-row{grid-template-columns:1fr auto;padding:9px 10px}
  .order-finance-cards{grid-template-columns:1fr 1fr;gap:6px}.order-finance-cards>div{padding:9px}.order-cost-grid{grid-template-columns:1fr}.order-cost-grid .btn{width:100%}
  .stock-actions{min-width:0;white-space:normal;display:grid;grid-template-columns:1fr 1fr;gap:5px}.stock-actions .btn{margin:0!important;width:100%;padding:8px 9px}
  .stock-auto-serial{padding:11px}.stock-serial-choice{min-height:44px}
  .addrow{display:grid;grid-template-columns:1fr}.addrow .fld{min-width:0}.addrow .btn{width:100%}
  .scroll{margin-left:-4px;margin-right:-4px;padding:0 4px;-webkit-overflow-scrolling:touch}
  .tbl{font-size:12.5px;min-width:680px}.tbl th,.tbl td{padding:7px 6px}.tbl input,.tbl select{font-size:14px;min-width:90px}
  .stock-table{min-width:850px}.finance-table{min-width:760px}
  .cal-head{gap:8px}.cal-head h2{min-width:0;font-size:19px;flex:1}.cal-legend{display:none}.cal-grid{min-width:650px}.cal-head+.cal-grid,.cal-grid#cal{overflow:visible}.page[data-page="1"] .panel{overflow-x:auto;-webkit-overflow-scrolling:touch}.cal-day{min-height:88px}
  .dashboard-grid{gap:12px}.dash-row{padding:9px 0;gap:7px}
  .finance-mini{gap:7px}.finance-mini>div{padding:10px}
}
@media(max-width:390px){
  .stats{grid-template-columns:1fr 1fr}.stat b{font-size:19px}
  .actions,.doc-actions,.stock-toolbar-actions{grid-template-columns:1fr}
  .stock-toolbar-actions .btn:last-child:nth-child(3){grid-column:auto}
  .order-finance-cards,.finance-mini{grid-template-columns:1fr 1fr}
}

/* Elektronicky podpis v3.21 */
.order-signature{margin-top:18px;padding-top:18px;border-top:1px solid var(--edge)}
.order-signature-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.order-signature-head h3{font-size:16px;margin:0}.order-signature-head p{font-size:13px;color:var(--ink-soft);margin:3px 0 0}
.signature-editor{display:none;margin-top:12px;padding:13px;border:1px solid var(--edge);border-radius:12px;background:#fafafa}.signature-editor.open{display:block}
.signature-pad-wrap{position:relative;margin:10px 0;background:#fff;border:1.5px solid #cfd6e4;border-radius:12px;overflow:hidden}.signature-pad-wrap canvas{display:block;width:100%;height:190px;touch-action:none;cursor:crosshair}.signature-pad-hint{position:absolute;left:0;right:0;bottom:9px;text-align:center;font-size:11.5px;color:#9aa3b2;pointer-events:none}
.signature-buttons{display:flex;gap:8px;flex-wrap:wrap}.signature-msg{font-size:12.5px;margin-top:8px}.signature-msg.good{color:var(--ok)}.signature-msg.bad{color:var(--alert)}
@media(max-width:700px){.order-signature-head{align-items:flex-start;flex-direction:column}.order-signature-head .btn{width:100%}.signature-pad-wrap canvas{height:220px}.signature-buttons{display:grid;grid-template-columns:1fr 1fr}.signature-buttons .btn:last-of-type{grid-column:1/-1}}

/* Dashboard v3.25 - jemne farebne rozlisenie */
.page[data-page="5"] .dash-stat{position:relative;overflow:hidden;border-width:1px;box-shadow:0 5px 18px rgba(15,35,75,.035)}
.page[data-page="5"] .dash-stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:4px}
.page[data-page="5"] .dash-stat-blue{background:linear-gradient(135deg,#fff 55%,#f0f6ff)}
.page[data-page="5"] .dash-stat-blue:before{background:#2f65ff}.page[data-page="5"] .dash-stat-blue b{color:#2456dd}
.page[data-page="5"] .dash-stat-violet{background:linear-gradient(135deg,#fff 55%,#f6f2ff)}
.page[data-page="5"] .dash-stat-violet:before{background:#7257e8}.page[data-page="5"] .dash-stat-violet b{color:#6046c8}
.page[data-page="5"] .dash-stat-green{background:linear-gradient(135deg,#fff 55%,#effaf4)}
.page[data-page="5"] .dash-stat-green:before{background:#25a56a}.page[data-page="5"] .dash-stat-green b{color:#188052}
.page[data-page="5"] .dash-stat-amber{background:linear-gradient(135deg,#fff 55%,#fff8e9)}
.page[data-page="5"] .dash-stat-amber:before{background:#e4a62b}.page[data-page="5"] .dash-stat-amber b{color:#b57a08}
.page[data-page="5"] .panel{box-shadow:0 6px 22px rgba(20,45,90,.035)}
.page[data-page="5"] .dash-alert{background:#fff0f0;color:#c53a3a;border:1px solid #ffd4d4;padding:5px 9px;border-radius:999px}
.page[data-page="5"] .dash-ok{background:#f1faf5;border:1px solid #d5f0e0;border-radius:12px;padding:14px 16px;color:#23744b}
.page[data-page="5"] .dash-ok b,.page[data-page="5"] .dash-ok small{display:block}.page[data-page="5"] .dash-ok small{margin-top:3px;color:#54806a}
