/* KlikSto v44 UX and accessibility layer. Business logic is intentionally untouched. */
:root{
  --ux-ink:#102c26;
  --ux-green:#174c3e;
  --ux-gold:#b77732;
  --ux-cream:#f7f4ec;
  --ux-focus:#1677ff;
  --ux-danger:#a9312a;
  --ux-muted:#586963;
  --ux-radius:16px;
  --ux-shadow:0 14px 36px rgba(10,33,27,.08);
}

[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{font-family:Manrope,Arial,sans-serif;color:var(--ux-ink);text-rendering:optimizeLegibility}
button,a,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
.skip-link{position:fixed;z-index:200;top:10px;left:50%;padding:11px 16px;border-radius:10px;background:#fff;color:var(--ux-ink);font-weight:850;text-decoration:none;transform:translate(-50%,-160%);transition:transform .15s}
.skip-link:focus{transform:translate(-50%,0)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid var(--ux-focus)!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 5px rgba(22,119,255,.17)!important;
}
:where(input,select,textarea):focus-visible{outline-offset:1px!important}

/* Clearer desktop information architecture */
@media(min-width:761px){
  .sidebar{width:268px;padding:25px 17px 18px}
  .staff-main{margin-left:268px;width:calc(100% - 268px);max-width:calc(100vw - 268px);padding:38px clamp(26px,3vw,48px) 76px}
  .sidebar nav{gap:0;margin-top:19px;padding-right:5px}
  .sidebar .nav-group{display:flex;flex-direction:column;gap:3px;margin:0 0 14px}
  .sidebar .nav-group-label{display:block;padding:0 12px 5px;color:#88a69c;font-size:10px;font-weight:800;letter-spacing:.15em}
  .sidebar nav button{min-height:42px;padding:9px 11px;font-size:13px}
  .sidebar nav button svg{width:19px;height:19px}
  .side-user{padding-top:15px}
  .side-user strong{font-size:13px}.side-user small{font-size:11px}.side-user button{min-width:42px;min-height:42px;border-radius:11px}
}

/* Readability and consistent action sizes */
.staff-shell{font-size:14px}
.staff-shell .page-intro,.staff-shell p{line-height:1.62}
.staff-shell .page-intro{font-size:14px;color:var(--ux-muted)}
.staff-shell .stats span,.staff-shell .report-kpis span,.staff-shell .workforce-kpis span{font-size:11px;line-height:1.35}
.staff-shell .stats small,.staff-shell .report-kpis small,.staff-shell .order-top small,.staff-shell .order-bottom,.staff-shell td small{font-size:11px;line-height:1.45;color:var(--ux-muted)}
.staff-shell .status-label,.staff-shell .tag{font-size:10px;line-height:1.25}
.staff-shell .order-items div{font-size:13px;line-height:1.45}
.staff-shell .order-note{font-size:12px;line-height:1.5}
.staff-shell .order-actions .btn,.staff-shell .station-item-actions .btn{min-height:44px;font-size:12px}
.staff-shell .btn{min-height:44px;padding:10px 16px}
.staff-shell .edit-btn,.staff-shell .availability{min-height:42px;min-width:42px;padding:9px 11px;border-radius:9px;font-size:12px}
.staff-shell label{font-size:13px;line-height:1.45}
.staff-shell input:not([type="checkbox"]):not([type="radio"]),.staff-shell select,.staff-shell textarea{min-height:46px;font-size:15px;line-height:1.45}
.staff-shell textarea{min-height:96px}
.data-card{border-radius:var(--ux-radius);box-shadow:var(--ux-shadow)}
.data-card th{padding:14px 17px;font-size:10px;color:#5d6d67}
.data-card td{font-size:13px;line-height:1.45}
.modal-head>button{display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:12px;font-size:25px}
.modal{box-shadow:0 25px 80px rgba(3,20,16,.28)}

/* Settings become one predictable workspace with visible shortcuts. */
.settings-nav{position:sticky;z-index:15;top:12px;display:flex;gap:8px;margin:0 0 22px;padding:10px;overflow-x:auto;border:1px solid rgba(16,44,38,.1);border-radius:16px;background:rgba(255,253,248,.96);box-shadow:0 10px 30px rgba(10,33,27,.08);scrollbar-width:thin;backdrop-filter:blur(14px)}
.settings-nav a{flex:0 0 auto;min-height:40px;display:flex;align-items:center;padding:8px 14px;border-radius:11px;color:#425751;font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap}
.settings-nav a:hover{background:#edf4f0;color:var(--ux-green)}
.settings-anchor{scroll-margin-top:92px}
.settings-anchor+.settings-anchor{margin-top:28px;padding-top:2px}

/* Five-slot mobile navigation and a large, readable overflow drawer. */
.mobile-more-backdrop{display:none}
.mobile-more-panel{display:none}
@media(max-width:760px){
  html{scroll-padding-top:84px}
  .staff-main{padding:86px 14px 98px}
  .page-head{align-items:flex-start;gap:12px}.page-head h1{font-size:30px;line-height:1.08}.page-head .eyebrow{font-size:10px}
  .staff-shell p,.staff-shell .page-intro{font-size:13px}
  .staff-shell input:not([type="checkbox"]):not([type="radio"]),.staff-shell select,.staff-shell textarea{font-size:16px}
  .staff-shell .btn{min-height:46px}
  .mobile-nav{height:76px;padding:0 max(4px,env(safe-area-inset-left)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-right));overflow:hidden;justify-content:stretch}
  .mobile-nav button{flex:1 1 20%;min-width:0;max-width:none;min-height:64px;padding:6px 2px;gap:4px}
  .mobile-nav svg{width:22px;height:22px}.mobile-nav small{font-size:10px;font-weight:750;max-width:66px}
  .mobile-nav button>b{top:5px;right:calc(50% - 27px);font-size:9px}
  .mobile-more-backdrop{position:fixed;z-index:47;inset:0;background:rgba(2,19,15,.5);backdrop-filter:blur(3px)}
  .mobile-more-backdrop:not([hidden]){display:block}
  .mobile-more-panel{position:fixed;z-index:48;display:block;inset:auto 8px calc(76px + env(safe-area-inset-bottom));max-height:min(72vh,620px);overflow:auto;padding:0 14px 18px;border:1px solid rgba(16,44,38,.13);border-radius:24px 24px 18px 18px;background:#fffdf8;box-shadow:0 -18px 60px rgba(2,24,18,.25);animation:ux-drawer-in .2s ease both}
  .mobile-more-panel header{position:sticky;z-index:1;top:0;display:flex;align-items:center;justify-content:space-between;padding:17px 2px 13px;background:#fffdf8;border-bottom:1px solid #ece8de}
  .mobile-more-panel header small{font-size:9px;font-weight:900;letter-spacing:.16em;color:var(--ux-gold)}
  .mobile-more-panel header h2{margin:2px 0 0;font:700 26px 'Playfair Display',Georgia,serif}
  .mobile-more-panel header button{width:44px;height:44px;border:0;border-radius:13px;background:#edf2ef;color:var(--ux-ink);font-size:25px}
  .mobile-more-panel nav>section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:15px}
  .mobile-more-panel nav>section>small{grid-column:1/-1;color:#687a74;font-size:10px;font-weight:900;letter-spacing:.13em}
  .mobile-more-panel nav button{position:relative;min-height:58px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e4e7e2;border-radius:14px;background:#fff;color:#30483f;text-align:left}
  .mobile-more-panel nav button.active{border-color:#d6ad72;background:#fff7ea;color:#7e4b18}
  .mobile-more-panel nav button svg{width:20px;height:20px;flex:0 0 auto}.mobile-more-panel nav button span{font-size:12px;font-weight:800}.mobile-more-panel nav button b{margin-left:auto;min-width:21px;height:21px;display:grid;place-items:center;padding:0 5px;border-radius:99px;background:var(--ux-danger);color:#fff;font-size:9px}
  body.mobile-menu-open{overflow:hidden}
  .settings-nav{top:72px;margin-inline:-4px;padding:7px}.settings-nav a{min-height:42px;padding:8px 12px;font-size:11px}.settings-anchor{scroll-margin-top:130px}
  .admin-license-warning,.central-update-offer,.billing-dashboard-alert,.onboarding-banner{margin-bottom:14px}

  /* Tables are cards on phones: no hidden columns and no sideways scrolling. */
  .data-card:has(>table){overflow:visible;border:0;background:transparent;box-shadow:none}
  table.responsive-table{display:block;min-width:0;width:100%}
  table.responsive-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  table.responsive-table tbody{display:grid;gap:12px}
  table.responsive-table tr{display:block;overflow:hidden;border:1px solid #e1e5df;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(10,33,27,.06)}
  table.responsive-table td,table.responsive-table td:first-child{min-height:46px;display:grid;grid-template-columns:minmax(105px,38%) minmax(0,1fr);align-items:center;gap:10px;padding:11px 13px;border-top:1px solid #edf0eb;font-size:13px;overflow-wrap:anywhere}
  table.responsive-table td:first-child{border-top:0}
  table.responsive-table td::before{content:attr(data-label);grid-column:1;grid-row:1/-1;color:#65756f;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
  table.responsive-table td>*{grid-column:2}
  table.responsive-table td[colspan]{display:block;padding:18px;text-align:center}
  table.responsive-table td[colspan]::before{display:none}
  table.responsive-table .table-emoji{grid-column:2;grid-row:auto;width:44px;height:44px}
  table.responsive-table .edit-btn,table.responsive-table .availability{justify-self:start}
}

@keyframes ux-drawer-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){
  :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}
  .tag,.live-status,.availability{border:1px solid currentColor}
}
/* KlikSto Menu licencni paket */
.product-card.menu-read-only{padding-right:16px}.product-card.menu-read-only .product-copy strong{font-size:17px}.featured-recommendation.read-only{grid-template-columns:auto 1fr}.admin-license-warning.menu-plan-active{border-color:rgba(70,157,119,.35);background:linear-gradient(135deg,#ecfaf3,#f8fbf9);color:#173c2d}.admin-license-warning.menu-plan-active>span{background:#2b8b64;color:white}
@media(max-width:600px){.featured-recommendation.read-only{grid-template-columns:74px 1fr}}

/* Ručno kadriranje fotografije proizvoda */
.product-editor-modal .modal{width:min(920px,calc(100vw - 28px));max-height:calc(100vh - 28px);overflow:auto}
.product-crop-editor{grid-column:1/-1;margin-top:12px;padding:18px;border:1px solid rgba(181,129,57,.28);border-radius:18px;background:linear-gradient(145deg,#fffaf0,#f7f2e8);box-shadow:0 14px 34px rgba(64,43,17,.08)}
.product-crop-copy{display:grid;gap:4px;margin-bottom:14px}.product-crop-copy strong{font-size:16px;color:#253e35}.product-crop-copy small{max-width:650px;color:#61716b;line-height:1.55}
.product-crop-layout{display:grid;grid-template-columns:minmax(250px,360px) minmax(220px,1fr);gap:22px;align-items:center}
.product-crop-stage{position:relative;width:100%;aspect-ratio:1;overflow:hidden;border-radius:18px;background:#dfddd6;box-shadow:0 12px 30px rgba(23,38,32,.18);cursor:grab;user-select:none}
.product-crop-stage:active{cursor:grabbing}.product-crop-stage canvas{display:block;width:100%;height:100%;touch-action:none}
.product-crop-frame{position:absolute;pointer-events:none;inset:9px;border:3px solid #e2b663;border-radius:13px;box-shadow:0 0 0 999px rgba(4,16,12,.13),inset 0 0 0 1px rgba(255,255,255,.72)}
.product-crop-frame::before,.product-crop-frame::after{content:"";position:absolute;inset:33.333% 0;border-top:1px solid rgba(255,255,255,.58);border-bottom:1px solid rgba(255,255,255,.58)}
.product-crop-frame::after{inset:0 33.333%;border:0;border-left:1px solid rgba(255,255,255,.58);border-right:1px solid rgba(255,255,255,.58)}
.product-crop-controls{display:grid;gap:14px;align-content:center}.product-crop-controls>label{display:grid;grid-template-columns:1fr auto;gap:7px;color:#344c43;font-weight:800}.product-crop-controls output{color:#9a652a}.product-crop-controls input[type="range"]{grid-column:1/-1;width:100%;min-height:30px;accent-color:#b47b34}
.product-crop-nudges{display:grid;grid-template-columns:repeat(3,48px);grid-template-areas:"blank up blank2" "left center right" "blank3 down blank4";justify-content:center;gap:7px}.product-crop-nudges button{min-width:48px;min-height:42px;border:1px solid #d9d7ce;border-radius:11px;background:#fff;color:#29463c;font-weight:900;cursor:pointer}.product-crop-nudges button:hover{border-color:#c79650;background:#fff8ec}.product-crop-nudges [data-crop-move="up"]{grid-area:up}.product-crop-nudges [data-crop-move="left"]{grid-area:left}.product-crop-nudges [data-crop-center]{grid-area:center;min-width:104px}.product-crop-nudges [data-crop-move="right"]{grid-area:right}.product-crop-nudges [data-crop-move="down"]{grid-area:down}
.product-crop-confirm{width:100%}.product-crop-status{display:block;min-height:20px;color:#7a6650;text-align:center;line-height:1.45}.product-crop-status.ready{color:#267454;font-weight:800}
@media(max-width:680px){.product-editor-modal .modal{width:calc(100vw - 14px);max-height:calc(100dvh - 14px)}.product-crop-editor{margin-inline:-4px;padding:13px}.product-crop-layout{grid-template-columns:1fr;gap:16px}.product-crop-stage{max-width:330px;margin:auto}.product-crop-controls{gap:11px}.product-crop-nudges{grid-template-columns:repeat(3,44px)}.product-crop-nudges button{min-width:44px;min-height:42px}.product-crop-nudges [data-crop-center]{min-width:96px}}

/* Ručno kadriranje široke pozadine menija */
.background-crop-editor{grid-column:1/-1;display:grid;gap:15px;margin-top:2px;padding:18px;border:1px solid rgba(181,129,57,.3);border-radius:18px;background:linear-gradient(145deg,#fffaf0,#f4efe5);box-shadow:0 15px 38px rgba(47,33,15,.08)}
.background-crop-copy{display:grid;gap:4px}.background-crop-copy strong{font-size:17px;color:#254037}.background-crop-copy small{max-width:760px;color:#66766f;line-height:1.55}
.background-crop-stage{position:relative;width:min(100%,760px);aspect-ratio:16/9;margin:auto;overflow:hidden;border-radius:17px;background:#16372f;box-shadow:0 14px 38px rgba(4,24,18,.22);cursor:grab;user-select:none}.background-crop-stage:active{cursor:grabbing}.background-crop-stage canvas{display:block;width:100%;height:100%;touch-action:none}
.background-desktop-frame{position:absolute;pointer-events:none;inset:9px;border:3px solid #e5b65f;border-radius:11px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.background-phone-guide{position:absolute;pointer-events:none;top:9px;bottom:9px;left:34%;right:34%;display:flex;align-items:flex-end;justify-content:center;padding:8px;border:1px dashed rgba(255,255,255,.92);border-radius:8px;background:rgba(255,255,255,.04);color:#fff;font-size:9px;font-weight:900;letter-spacing:.14em;text-shadow:0 1px 5px #000}
.background-crop-tools{display:grid;gap:12px}.background-crop-tools>label{display:grid;grid-template-columns:1fr auto;gap:7px;font-weight:800;color:#344c43}.background-crop-tools output{color:#9a652a}.background-crop-tools input[type="range"]{grid-column:1/-1;width:100%;min-height:30px;padding:0;accent-color:#b47b34}.background-crop-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.background-crop-actions .btn{min-height:40px;padding:8px 12px}.background-crop-status{display:block;min-height:20px;color:#7a6650;text-align:center}.background-crop-status.ready{color:#267454;font-weight:800}

/* Editor boja i pregled uživo */
.menu-theme-editor{margin:24px 0;padding-top:22px;border-top:1px solid #ece7dc}.menu-theme-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.menu-theme-heading h3{margin:0 0 5px;font:700 24px 'Playfair Display',Georgia,serif}.menu-theme-heading p{margin:0;color:#66766f;line-height:1.55}.menu-theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.menu-theme-grid>label{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid #e2e4dd;border-radius:13px;background:#fff}.menu-color-control{display:flex;align-items:center;gap:8px}.menu-color-control input[type="color"]{width:46px!important;height:38px!important;min-height:38px!important;padding:3px!important;border-radius:9px!important;cursor:pointer}.menu-color-control code{min-width:68px;color:#65726d;font-size:11px;text-transform:uppercase}
.menu-theme-preview{--preview-primary:#102c26;--preview-accent:#ed7046;--preview-page:#f5f1e8;--preview-surface:#fff;--preview-text:#102c26;--preview-on-primary:#fff;--preview-on-accent:#fff;overflow:hidden;border:1px solid rgba(10,33,27,.13);border-radius:18px;background:var(--preview-page);box-shadow:0 14px 38px rgba(13,34,27,.09)}.menu-theme-preview>header{display:grid;gap:3px;padding:17px 20px;background:var(--preview-primary);color:var(--preview-on-primary)}.menu-theme-preview>header small{color:var(--preview-accent);font-weight:900;letter-spacing:.15em}.menu-theme-preview>header strong{font:700 25px 'Playfair Display',Georgia,serif}.menu-theme-preview>div{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:15px}.menu-theme-preview article{display:flex;align-items:center;gap:12px;padding:12px;border-radius:13px;background:var(--preview-surface);color:var(--preview-text);box-shadow:0 6px 18px rgba(12,34,27,.07)}.menu-theme-preview article>i{font-style:normal;font-size:27px}.menu-theme-preview article>span{display:grid;flex:1}.menu-theme-preview article small{opacity:.65}.menu-theme-preview article strong{color:var(--preview-accent)}.menu-theme-preview article button{width:38px;height:38px;border:0;border-radius:50%;background:var(--preview-primary);color:var(--preview-on-primary);font-weight:900}.theme-cart-preview{min-height:48px;padding:10px 18px;border:0;border-radius:12px;background:var(--preview-accent);color:var(--preview-on-accent);font-weight:900}

/* Sačuvane boje važe samo u gostujućem delu. */
#app.menu-custom-theme{min-height:100vh;background:var(--menu-page);color:var(--menu-text)}#app.menu-custom-theme .customer-head{background:color-mix(in srgb,var(--menu-surface) 94%,transparent)}#app.menu-custom-theme .menu-hero{background:var(--menu-primary);color:var(--menu-on-primary)}#app.menu-custom-theme .menu-hero .eyebrow,#app.menu-custom-theme .product-copy strong,#app.menu-custom-theme .featured-copy>strong{color:var(--menu-accent)}#app.menu-custom-theme .category.active,#app.menu-custom-theme .add-btn,#app.menu-custom-theme .stepper button{background:var(--menu-primary);color:var(--menu-on-primary);border-color:var(--menu-primary)}#app.menu-custom-theme .product-card,#app.menu-custom-theme .guest-actions button,#app.menu-custom-theme .cart-card,#app.menu-custom-theme .entry-card,#app.menu-custom-theme .success-card{background:var(--menu-surface);color:var(--menu-text)}#app.menu-custom-theme .product-copy h3,#app.menu-custom-theme .product-copy p,#app.menu-custom-theme .product-copy small{color:var(--menu-text)}#app.menu-custom-theme .cart-dock button,#app.menu-custom-theme .btn.primary,#app.menu-custom-theme .featured-add{background:var(--menu-accent);color:var(--menu-on-accent)}#app.menu-custom-theme .cart-badge{color:var(--menu-accent)}#app.menu-custom-theme .featured-recommendation{background:color-mix(in srgb,var(--menu-surface) 88%,var(--menu-accent));color:var(--menu-text)}
@supports not (background:color-mix(in srgb,#fff,#000)){#app.menu-custom-theme .customer-head{background:var(--menu-surface)}#app.menu-custom-theme .featured-recommendation{background:var(--menu-surface)}}
@media(max-width:680px){.background-crop-editor{padding:13px;margin-inline:-4px}.background-phone-guide{left:31%;right:31%}.background-crop-actions .btn{flex:1 1 29%;font-size:11px}.menu-theme-heading{display:grid}.menu-theme-heading .btn{width:100%}.menu-theme-grid{grid-template-columns:1fr}.menu-theme-preview>div{grid-template-columns:1fr}.theme-cart-preview{width:100%}}
