:root{--bg:#fbf6ea;--surface:#ffffff;--surface-soft:#f5ead7;--text:#2d2119;--muted:#6f6257;--border:#e4d3bd;--accent:#147349;--accent-strong:#0d4f34;--tomato:#b83f2f;--tomato-strong:#8f2f24;--gold:#bf842c;--cream:#fff8ec;--danger:#a43a32;--shadow:0 16px 40px rgba(74,42,19,0.11)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(90deg,rgba(20,115,73,.08),transparent 22%,transparent 78%,rgba(184,63,47,.08)),repeating-linear-gradient(135deg,rgba(191,132,44,.05) 0 1px,transparent 1px 18px),var(--bg);color:var(--text);font-family:Georgia,Times New Roman,serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.eyebrow,.role-badge,.role-switcher,button,input,nav,select,small,textarea{font-family:Arial,Helvetica,sans-serif}:focus-visible{outline:3px solid rgba(35,107,74,.35);outline-offset:3px}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px clamp(18px,4vw,48px);background:rgba(255,248,236,.94);border-bottom:1px solid var(--border);border-top:4px solid transparent;border-image:linear-gradient(90deg,#147349 0 33%,#f8f3e8 33% 66%,#b83f2f 66% 100%) 1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:inline-flex;align-items:baseline;gap:10px;font-weight:800;color:var(--accent-strong)}.brand:before{content:"";width:18px;height:18px;border-radius:50%;background:conic-gradient(from 90deg,#147349 0 33%,#fff8ec 33% 66%,#b83f2f 66% 100%);border:1px solid var(--border)}.brand small{font-weight:600}.brand small,nav{color:var(--muted)}nav{display:flex;align-items:center;gap:18px;font-size:14px}nav a:hover{color:var(--tomato-strong)}.main-nav{padding-right:18px;border-right:1px solid var(--border)}.header-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end}.role-badge,.role-switcher{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.role-switcher{padding:6px;background:rgba(255,255,255,.7);border:1px solid var(--border);border-radius:8px}.role-switcher-label{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.role-switcher-current{color:var(--accent-strong);font-size:13px;white-space:nowrap}.role-switcher-controls{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.role-switcher form{margin:0}.role-button{min-height:30px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--accent-strong);padding:0 9px;font-size:12px;font-weight:800;cursor:pointer}.role-button.active{background:var(--tomato);color:#fff;border-color:var(--tomato);cursor:default}.role-button:disabled{opacity:1}.reset-role-button{color:var(--tomato-strong);background:var(--cream)}.page-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:36px 0 64px}.narrow{width:min(900px,calc(100% - 32px))}.closed-state,.page-title,.shop-hero{margin-bottom:28px}.shop-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;grid-gap:24px;gap:24px;align-items:end;padding:34px;background:linear-gradient(90deg,rgba(20,115,73,.14) 0 8px,transparent 8px calc(100% - 8px),rgba(184,63,47,.16) calc(100% - 8px)),linear-gradient(135deg,#fffdf8,#f4ead8 52%,#edf4ef);border:1px solid var(--border);border-radius:8px}.shop-hero-content{display:grid;grid-gap:12px;gap:12px}.shop-hero-content h1,.shop-hero-content p{margin-bottom:0}.product-search{position:relative;width:min(560px,100%);margin-top:8px;color:var(--muted);font-family:Arial,Helvetica,sans-serif}.product-search>label{margin-bottom:5px;color:var(--accent-strong);font-size:12px;font-weight:800}.product-search-box{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;min-height:42px;padding:0 10px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 24px rgba(74,42,19,.08);color:var(--accent-strong)}.product-search-box input{min-height:38px;padding:0;border:0;background:transparent;font-size:14px}.product-search-box input:focus{outline:0}.search-clear-button{display:inline-grid;place-items:center;width:28px;height:28px;background:var(--cream);color:var(--tomato-strong);cursor:pointer}.search-clear-button,.search-suggestions{border:1px solid var(--border);border-radius:8px}.search-suggestions{position:relative;display:grid;margin-top:5px;max-height:240px;overflow:auto;padding:4px;background:#fff;box-shadow:var(--shadow)}.search-suggestions button{display:grid;grid-gap:2px;gap:2px;width:100%;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.search-suggestions button:focus-visible,.search-suggestions button:hover{background:var(--surface-soft)}.search-suggestions span{color:var(--muted);font-size:11px}.eyebrow{margin:0 0 8px;color:var(--gold);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0}h1,h2,p{margin-top:0}h1{max-width:760px;margin-bottom:12px;font-size:clamp(34px,5vw,54px);line-height:1.05;color:var(--accent-strong)}h2{margin-bottom:14px;font-size:22px}p{color:var(--muted);line-height:1.6}.campaign-window,.cart-panel,.closed-state,.detail-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.campaign-window{display:grid;grid-gap:4px;gap:4px;padding:18px}.campaign-window strong{color:var(--tomato-strong)}.campaign-window span{color:var(--muted);font-size:13px}.shop-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:24px;gap:24px;align-items:start}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.no-products{grid-column:1/-1;padding:22px;background:var(--surface)}.no-products,.product-card{border:1px solid var(--border);border-radius:8px}.product-card{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0,var(--cream) 100%)}.product-image-wrap{position:relative}.product-image,.product-image-wrap{background:linear-gradient(180deg,#fff 0,var(--surface-soft) 100%)}.product-image{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;object-position:center}.product-image-placeholder{display:grid;place-items:center;color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:700}.favorite-button{position:absolute;top:10px;right:10px;display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid rgba(74,42,19,.14);border-radius:999px;background:rgba(255,255,255,.94);color:var(--accent-strong);box-shadow:0 8px 18px rgba(74,42,19,.14);cursor:pointer}.favorite-button:focus-visible,.favorite-button:hover{background:#fff;color:var(--tomato-strong)}.favorite-button.is-favorite{background:var(--tomato-strong);color:#fff}.favorite-button.is-favorite svg{fill:currentColor}.favorite-button:disabled{opacity:.6;cursor:wait}.product-body{display:grid;grid-gap:16px;gap:16px;padding:18px}.limit-text,.product-origin{margin:0;font-size:13px;color:var(--tomato-strong);font-weight:700}.product-body h2{margin-bottom:8px;font-size:21px}.product-body p{margin-bottom:0}.product-description{display:grid;grid-gap:8px;gap:8px;color:var(--muted);line-height:1.6}.product-description ol,.product-description p,.product-description ul{margin:0}.product-description ol,.product-description ul{padding-left:20px}.campaign-description{display:grid;grid-gap:8px;gap:8px;color:var(--muted);line-height:1.6}.campaign-description ol,.campaign-description p,.campaign-description ul{margin:0}.campaign-description ol,.campaign-description ul{padding-left:20px}.campaign-description a,.product-description a{color:var(--tomato-strong);font-weight:800;text-decoration:underline;text-underline-offset:3px}.cart-total,.order-row,.panel-heading,.product-meta,.quantity-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.muted,.product-meta span,small{color:var(--muted)}.quantity-row{justify-content:flex-start;min-height:42px}.quantity-row output{min-width:44px;text-align:center;font-weight:800}.icon-button{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--accent-strong);cursor:pointer}.icon-button:hover{background:var(--surface-soft)}.icon-button:disabled{opacity:.4;cursor:not-allowed}.cart-panel{position:-webkit-sticky;position:sticky;top:82px;padding:20px}.panel-heading{justify-content:flex-start;color:var(--tomato-strong)}.panel-heading h2{margin:0}.cart-lines{display:grid;grid-gap:12px;gap:12px;margin:18px 0}.cart-line{display:grid;grid-gap:10px;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--border)}.cart-line-main{display:grid;grid-gap:3px;gap:3px}.cart-line-title{color:var(--text);line-height:1.3}.cart-line-controls,.cart-quantity-control{display:flex;align-items:center;gap:8px}.cart-line-controls{justify-content:space-between}.cart-quantity-control .icon-button,.cart-remove-button{width:32px;height:32px}.cart-quantity-input{width:58px;min-height:32px;padding:6px 4px;text-align:center;font-weight:800}.cart-remove-button{display:inline-grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--tomato-strong);cursor:pointer}.cart-remove-button:focus-visible,.cart-remove-button:hover{background:var(--surface-soft)}.cart-total{margin:18px 0;font-size:20px}.checkout-form,.form-panel{display:grid;grid-gap:14px;gap:14px}label{display:grid;grid-gap:7px;gap:7px;color:var(--muted);font-size:14px;font-weight:700}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:11px 12px;background:#fff;color:var(--text);font-weight:400}.rich-editor-label{display:grid;grid-gap:7px;gap:7px;color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:700}.rich-editor{overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#fff}.rich-editor-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px;background:var(--surface-soft);border-bottom:1px solid var(--border)}.rich-editor-toolbar .icon-button{width:34px;height:34px;border-radius:8px}.color-tool,.link-tool{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 8px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--accent-strong)}.link-tool{padding-right:4px}.color-tool select{width:108px;min-height:28px;padding:2px 6px;border:0}.color-tool input[type=color]{width:34px;height:28px;padding:0;border:0;background:transparent}.link-tool input{width:138px;min-height:28px;padding:2px 6px;border:0;font-size:12px}.link-tool .icon-button{width:28px;height:28px}.rich-editor-surface{min-height:118px;padding:12px;color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:400;line-height:1.55;outline:0}.rich-editor-surface b,.rich-editor-surface strong{font-weight:800}.rich-editor-surface em,.rich-editor-surface i{font-style:italic}.rich-editor-surface:empty:before{content:"Napište popis produktu";color:var(--muted);font-weight:400}.rich-editor-surface ol,.rich-editor-surface p,.rich-editor-surface ul{margin:0 0 8px}.rich-editor-surface ol,.rich-editor-surface ul{padding-left:22px}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid transparent;border-radius:8px;font-weight:800;cursor:pointer}.primary-button{background:var(--accent);color:#fff}.primary-button:hover{background:var(--tomato-strong)}.primary-button:disabled{opacity:.45;cursor:not-allowed}.secondary-button{background:#fff;border-color:var(--border);color:var(--accent-strong)}.closed-state{padding:42px}.order-list{display:grid;grid-gap:12px;gap:12px}.order-row{padding:18px;background:#fff;border:1px solid var(--border);border-radius:8px}.order-row span{display:grid;grid-gap:5px;gap:5px}.client-favorites{display:grid;grid-gap:14px;gap:14px;margin-bottom:18px}.favorite-list{display:grid;grid-gap:10px;gap:10px}.favorite-row{display:grid;grid-template-columns:62px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;padding:10px;background:#fff;border:1px solid var(--border);border-radius:8px}.favorite-image-placeholder,.favorite-row img{width:62px;aspect-ratio:1;object-fit:contain;background:var(--surface-soft);border-radius:8px}.favorite-image-placeholder{display:grid;place-items:center;color:var(--muted);font-size:10px;font-weight:700;text-align:center}.favorite-row span{display:grid;grid-gap:4px;gap:4px}.admin-grid,.detail-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.detail-panel{padding:22px}.workbench-shell{width:min(1440px,calc(100% - 24px));padding-top:22px}.workbench-title{display:grid;grid-gap:4px;gap:4px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border)}.workbench-title h1{margin-bottom:0;font-size:clamp(30px,3vw,42px)}.compact-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.compact-panel{padding:16px;box-shadow:0 8px 24px rgba(74,42,19,.07)}.admin-section h2,.compact-panel h2,.metric-card h2{margin-bottom:10px;font-size:18px}.admin-shell .form-panel{gap:10px}.admin-shell .rich-editor-label,.admin-shell label{gap:5px;font-size:12px}.admin-shell input,.admin-shell select,.admin-shell textarea{min-height:36px;padding:8px 10px;font-size:13px}.admin-shell textarea{min-height:76px}.admin-shell .primary-button,.admin-shell .secondary-button{min-height:36px;padding:0 12px;font-size:13px}.admin-shell .rich-editor-toolbar{padding:6px;gap:4px}.admin-shell .rich-editor-toolbar .icon-button{width:30px;height:30px}.admin-shell .rich-editor-surface{min-height:86px;padding:10px;font-size:13px;line-height:1.45}.merchant-summary.compact-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card{display:grid;grid-gap:4px;gap:4px;min-height:92px;padding:14px 16px}.metric-card strong{color:var(--accent-strong);font-size:22px;line-height:1.2}.admin-section{overflow:hidden}.merchant-workbench .workbench-title p:last-child{max-width:920px;margin:0}.merchant-cycle{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.merchant-cycle span{display:grid;grid-gap:4px;gap:4px;padding-left:12px;border-left:3px solid var(--accent)}.merchant-cycle strong{color:var(--accent-strong)}.campaign-control-panel,.section-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.campaign-control-panel h2,.section-heading-row h2{margin-bottom:4px}.campaign-control-panel p,.section-heading-row p{margin-bottom:0}.campaign-select-form{display:grid;grid-template-columns:minmax(260px,360px) auto;grid-gap:10px;gap:10px;align-items:end;min-width:min(100%,470px)}.campaign-settings-panel{gap:12px}.campaign-settings-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.preparation-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-gap:18px;gap:18px;align-items:start}.preparation-grid h3{margin:0 0 10px;color:var(--accent-strong);font-size:16px}.preparation-product-row{grid-template-columns:minmax(220px,1fr) auto auto}.client-preparation-list{display:grid;grid-gap:0;gap:0}.client-prep-row{border-top:1px solid var(--border)}.client-prep-row:first-child{border-top:0}.client-prep-row summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;min-height:42px;padding:8px 0;cursor:pointer;list-style:none}.client-prep-row summary::-webkit-details-marker{display:none}.client-prep-row summary:before{content:"+";display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--accent-strong);font-family:Arial,Helvetica,sans-serif;font-weight:800}.client-prep-row[open] summary:before{content:"-"}.client-prep-row summary span{display:grid;grid-gap:3px;gap:3px}.client-prep-row ul{display:grid;grid-gap:6px;gap:6px;margin:0;padding:0 0 12px 34px;list-style:none}.client-prep-row li{display:flex;justify-content:space-between;gap:12px;padding-bottom:6px;border-bottom:1px solid rgba(228,211,189,.65)}.payment-panel{text-align:center}.qr-box svg{width:220px;max-width:100%;height:auto}.help-panel li{margin-bottom:12px;line-height:1.55}.admin-shell{width:min(1440px,calc(100% - 24px))}.checkbox-row{display:flex;align-items:center;justify-content:flex-start;flex-direction:row}.checkbox-row input{width:auto}.full-width-panel{margin-top:18px}.admin-campaign-row,.catalog-product-form{border-top:1px solid var(--border)}.admin-campaign-row:first-of-type,.catalog-product-form:first-child{border-top:0}.admin-campaign-row summary,.catalog-product-heading{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;grid-gap:12px;gap:12px;align-items:center;min-height:44px;padding:8px 0;color:var(--muted);cursor:pointer;list-style:none}.admin-campaign-row summary{grid-template-columns:auto minmax(220px,1fr) auto auto}.admin-campaign-row summary::-webkit-details-marker,.catalog-product-heading::-webkit-details-marker{display:none}.admin-campaign-row summary:before,.catalog-product-heading:before{content:"+";display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--accent-strong);font-family:Arial,Helvetica,sans-serif;font-weight:800}.admin-campaign-row[open] summary:before,.catalog-product-form[open] .catalog-product-heading:before{content:"-"}.admin-campaign-row summary>span:first-child,.catalog-product-heading strong{display:grid;grid-gap:3px;gap:3px;color:var(--text)}.status-pill{justify-self:start;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--cream);color:var(--muted);font-size:12px;font-weight:800}.status-pill.is-live{background:rgba(20,115,73,.1);color:var(--accent-strong);border-color:rgba(20,115,73,.2)}.compact-product-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px 18px;gap:6px 18px;margin:0;padding:8px 0 14px;list-style:none}.compact-product-list li{display:grid;grid-gap:2px;gap:2px;padding:6px 0;border-bottom:1px solid rgba(228,211,189,.7)}.merchant-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.merchant-summary strong{font-size:24px}.table-list{display:grid;grid-gap:10px;gap:10px}.table-row{display:grid;grid-template-columns:1.4fr 1fr auto auto;grid-gap:12px;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--border)}.table-row:last-child{border-bottom:0}.table-row span{display:grid;grid-gap:4px;gap:4px}.role-row{grid-template-columns:1.4fr minmax(180px,240px) auto}.campaign-product-row{grid-template-columns:minmax(220px,1.3fr) minmax(120px,160px) minmax(110px,140px) auto auto}.catalog-list{display:grid;grid-gap:0;gap:0}.catalog-product-form{padding:0}.catalog-product-fields{display:grid;grid-gap:12px;gap:12px;padding:6px 0 16px}.catalog-product-heading,.form-actions-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.catalog-product-heading{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;justify-content:stretch}.catalog-product-heading span{color:var(--muted);font-size:13px;font-weight:800}.catalog-product-media{display:grid;grid-template-columns:120px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:center}.catalog-product-media img,.catalog-product-media span{width:120px;aspect-ratio:4/3;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);object-fit:contain}.catalog-product-media span{display:grid;place-items:center;padding:8px;color:var(--muted);font-size:12px;text-align:center}.catalog-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}@media (max-width:940px){.admin-grid,.campaign-settings-grid,.compact-form-grid,.compact-product-list,.detail-layout,.merchant-cycle,.merchant-summary,.preparation-grid,.shop-grid,.shop-hero{grid-template-columns:1fr}.cart-panel{position:static}.campaign-product-row,.catalog-edit-grid,.catalog-product-media,.role-row,.table-row{grid-template-columns:1fr}.campaign-control-panel,.section-heading-row{flex-direction:column}.campaign-select-form{grid-template-columns:1fr;width:100%}}@media (max-width:680px){.site-header{align-items:flex-start;flex-direction:column}nav{flex-wrap:wrap}.main-nav{padding-right:0;border-right:0}.role-switcher{align-items:flex-start;flex-direction:column}.product-grid{grid-template-columns:1fr}.cart-panel,.closed-state,.detail-panel,.shop-hero{padding:18px}.admin-shell,.workbench-shell{width:min(100% - 16px,1440px)}.admin-campaign-row summary,.catalog-product-heading{grid-template-columns:auto minmax(0,1fr);gap:8px}.admin-campaign-row summary .status-pill,.admin-campaign-row summary>span:last-child,.catalog-product-heading>span{grid-column:2;justify-self:start}h1{font-size:34px}}