:root{--brand-red: #BF311F;--brand-blue: #003C56;--brand-white: #FFFFFF;--brand-blue-soft: #edf7fb;--brand-blue-softer: #f6fbfd;--app-bg: #f7f8fa;--header-bg: rgb(255 255 255 / .88);--surface: rgb(255 255 255 / .74);--surface-solid: #ffffff;--surface-soft: #f8fafc;--surface-hover: #f2f6f9;--surface-active: #e9f4f8;--glass-filter: saturate(205%) blur(32px);--glass-filter-strong: saturate(215%) blur(42px);--glass-highlight: inset 0 1px 0 rgb(255 255 255 / .7), inset 0 0 0 1px rgb(255 255 255 / .34);--text-strong: #202326;--text-muted: #69737d;--border: #dce3ea;--border-subtle: #e8edf2;--primary-action-text: var(--brand-white);--success-text: #1f6a2e;--success-bg: #e8f6eb;--success-border: #cce8d4;--warning-text: #865600;--warning-bg: #fff5dd;--danger-text: var(--brand-red);--danger-bg: #fdebea;--neutral-text: #536979;--neutral-bg: #f3f6f8;--control-hover-border: #c9d5df;--focus-border: #93b8c9;--destructive-border: #f0b4bc;--destructive-soft-border: #f3b7ae;--destructive-soft-bg: #fff8f7;--cart-presence-text: #476178;--notification-text: #174c1f;--notification-icon: #1e7a2e;--notification-close: #476178;--notification-bg: rgb(248 255 249 / .92);--notification-hover-bg: rgb(23 76 31 / .08);--shadow-xs: 0 1px 2px rgb(18 28 38 / .035);--shadow-sm: 0 1px 2px rgb(18 28 38 / .04), 0 10px 28px rgb(18 28 38 / .055);--shadow-md: 0 18px 48px rgb(18 28 38 / .13);--focus-ring: 0 0 0 3px rgb(0 60 86 / .14);--motion-fast: .14s;--motion-medium: .22s;--motion-slow: .36s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-standard: cubic-bezier(.2, 0, 0, 1);color-scheme:light;color:var(--text-strong);background:var(--app-bg);font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,ui-sans-serif,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}:root[data-theme=dark]{--brand-blue: #8bd7ef;--brand-blue-soft: rgb(139 215 239 / .12);--brand-blue-softer: rgb(139 215 239 / .07);--app-bg: #121416;--header-bg: rgb(20 23 26 / .92);--surface: rgb(27 31 35 / .74);--surface-solid: #1b1f23;--surface-soft: #22272d;--surface-hover: #282f36;--surface-active: rgb(139 215 239 / .15);--glass-highlight: inset 0 1px 0 rgb(255 255 255 / .08), inset 0 0 0 1px rgb(255 255 255 / .055);--text-strong: #f4f6f8;--text-muted: #a6b1bb;--border: #3a444d;--border-subtle: #303840;--primary-action-text: #081317;--success-text: #9be7a6;--success-bg: rgb(66 166 91 / .18);--success-border: rgb(128 221 145 / .32);--warning-text: #ffd37a;--warning-bg: rgb(245 158 11 / .18);--danger-text: #ff9f92;--danger-bg: rgb(191 49 31 / .2);--neutral-text: #c5d0da;--neutral-bg: rgb(255 255 255 / .075);--control-hover-border: #566675;--focus-border: var(--brand-blue);--destructive-border: rgb(255 159 146 / .42);--destructive-soft-border: rgb(255 159 146 / .34);--destructive-soft-bg: rgb(191 49 31 / .12);--cart-presence-text: var(--text-muted);--notification-text: #d8f8df;--notification-icon: #9be7a6;--notification-close: #b6d1bf;--notification-bg: rgb(18 52 30 / .82);--notification-hover-bg: rgb(155 231 166 / .13);--shadow-xs: 0 1px 2px rgb(0 0 0 / .24);--shadow-sm: 0 1px 2px rgb(0 0 0 / .2), 0 12px 32px rgb(0 0 0 / .26);--shadow-md: 0 18px 48px rgb(0 0 0 / .42);--focus-ring: 0 0 0 3px rgb(139 215 239 / .24);color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#fffc,#fff0 260px),var(--app-bg)}:root[data-theme=dark] body{background:linear-gradient(180deg,#ffffff09,#fff0 260px),var(--app-bg)}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard),opacity var(--motion-fast) var(--ease-standard)}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{min-height:100vh;background:transparent;animation:app-fade-in var(--motion-slow) var(--ease-out) both}.app-header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px;align-items:center;border-bottom:0;background:var(--header-bg);padding:10px 24px;box-shadow:0 18px 42px #121c2611;backdrop-filter:var(--glass-filter-strong);-webkit-backdrop-filter:var(--glass-filter-strong)}:root[data-theme=dark] .app-header{box-shadow:0 18px 42px #0000003d}.brand-lockup,.user-chip,.panel-title,.found-card{display:flex;align-items:center;gap:10px}.hospital-logo{display:block;width:46px;height:46px;aspect-ratio:1;flex:0 0 auto;object-fit:contain}.brand-lockup{min-width:0}.brand-lockup div{display:grid;min-width:0;gap:2px}.brand-lockup strong,.brand-lockup span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-lockup strong{color:var(--brand-blue);font-size:.93rem;font-weight:730}.brand-lockup svg,.panel-title svg{color:currentColor}.brand-lockup span,.muted,.cart-line span,.history-row span,.implant-cell p,.row-meta span,.stock-count small{color:var(--text-muted)}.header-page-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;align-items:center;justify-self:center}.header-nav,.mobile-nav button{display:flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text-strong);padding:8px 12px;text-align:left;font-size:.88rem;font-weight:680}.header-nav.active,.mobile-nav button.active{border-color:#003c5624;color:var(--brand-blue);background:var(--brand-blue-softer);box-shadow:var(--shadow-xs)}.header-nav:hover,.header-nav:focus-visible,.mobile-nav button:hover,.mobile-nav button:focus-visible{background:var(--surface-hover);color:var(--brand-blue);transform:translateY(-1px)}.user-menu-wrapper{position:relative;min-width:0;justify-self:end}.workspace{width:100%;max-width:1440px;margin:0 auto;padding:22px 24px 96px}.auth-screen{display:grid;min-height:100vh;place-items:center;padding:24px;background:var(--app-bg)}.auth-card{display:grid;width:min(520px,100%);gap:20px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface);padding:24px;box-shadow:var(--shadow-sm),var(--glass-highlight);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);animation:panel-enter var(--motion-slow) var(--ease-out) both}.auth-card h1{margin-bottom:10px}.auth-card p:last-child{margin-bottom:0}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.eyebrow{margin:0 0 4px;color:var(--brand-blue);font-size:.76rem;font-weight:700;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;color:var(--text-strong);font-size:1.5rem;font-weight:730}h2{color:var(--text-strong);font-size:1rem;font-weight:710}.user-chip,.filters,.admin-form,.admin-list,.inventory-row,.cart-panel,.scanner-frame,.scanner-form,.history-panel{background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:var(--shadow-xs),var(--glass-highlight);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter)}.filters,.admin-form,.admin-list,.cart-panel,.scanner-frame,.scanner-form,.history-panel{animation:panel-enter var(--motion-medium) var(--ease-out) both}.user-chip{display:flex;align-items:center;gap:10px;max-width:260px;padding:5px 11px 5px 5px;color:var(--text-strong);white-space:nowrap;box-shadow:var(--glass-highlight)}button.user-chip:hover,button.user-chip:focus-visible,button.user-chip[aria-expanded=true]{background:var(--brand-blue-softer);border-color:#003c5624}.user-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis}.user-avatar{width:31px;height:31px;flex:0 0 auto;border-radius:50%;object-fit:cover;background:var(--brand-blue-soft);box-shadow:inset 0 0 0 1px #ffffffd9}.user-menu-chevron{width:16px;height:16px;flex:0 0 auto;color:var(--text-muted)}.user-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:max-content;min-width:180px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-solid);padding:6px;box-shadow:var(--shadow-md);backdrop-filter:none;-webkit-backdrop-filter:none;transform-origin:top right;animation:popover-enter var(--motion-medium) var(--ease-out) both}.user-menu-role{display:grid;gap:3px;margin-bottom:6px;border-radius:6px;background:var(--surface-soft);padding:9px 10px}.user-menu-role span{color:var(--text-muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.user-menu-role strong{color:var(--text-strong);font-size:.9rem;font-weight:800;white-space:nowrap}.user-menu-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;min-height:40px;border-radius:6px;background:transparent;color:var(--text-strong);padding:0 10px;text-align:left;white-space:nowrap}.user-menu-item:hover,.user-menu-item:focus-visible{background:var(--surface-hover)}.theme-switch{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:42px;border-radius:6px;background:transparent;color:var(--text-strong);padding:0 10px;white-space:nowrap}.theme-switch:hover,.theme-switch:focus-visible{background:var(--surface-hover)}.theme-switch-label{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:760}.theme-switch-label svg{width:17px;height:17px;color:var(--brand-blue)}.theme-switch-track{position:relative;display:inline-flex;width:42px;height:24px;flex:0 0 auto;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.theme-switch-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--text-muted);box-shadow:var(--shadow-xs);transition:transform var(--motion-medium) var(--ease-out),background var(--motion-fast) var(--ease-standard)}.theme-switch[aria-checked=true] .theme-switch-track{border-color:var(--brand-blue);background:var(--brand-blue-soft)}.theme-switch[aria-checked=true] .theme-switch-thumb{background:var(--brand-blue);transform:translate(18px)}.logout-menu-item{color:var(--brand-red)}.floating-notification{position:fixed;top:16px;left:50%;z-index:90;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;width:min(560px,calc(100vw - 32px));gap:10px;border:1px solid var(--success-border);border-radius:8px;padding:10px 12px;color:var(--notification-text);background:var(--notification-bg);box-shadow:var(--shadow-md);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform:translate(-50%);animation:notification-slide-down var(--motion-medium) var(--ease-out)}.floating-notification>svg{width:18px;height:18px;color:var(--notification-icon)}.floating-notification span{min-width:0;overflow:hidden;font-size:.9rem;font-weight:750;line-height:1.35;text-overflow:ellipsis}.notification-close-button{display:grid;width:30px;height:30px;place-items:center;border-radius:6px;background:transparent;color:var(--notification-close)}.notification-close-button:hover,.notification-close-button:focus-visible{background:var(--notification-hover-bg);color:var(--notification-text)}.notification-close-button svg{width:16px;height:16px}@keyframes notification-slide-down{0%{opacity:0;transform:translate(-50%,-14px)}to{opacity:1;transform:translate(-50%)}}.catalog-screen{display:grid;gap:18px;animation:panel-enter var(--motion-slow) var(--ease-out) both}.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:18px;align-items:start}.filters{display:grid;grid-template-columns:minmax(260px,1.7fr) minmax(150px,.85fr) minmax(150px,.85fr) max-content max-content;gap:10px;align-items:end;padding:10px;width:100%}.desktop-filter-controls{display:contents}.filters .mobile-filter-button{display:none}.filter-button-count{display:inline-grid;min-width:20px;height:20px;place-items:center;border-radius:999px;background:var(--brand-blue);color:var(--brand-white);font-size:.75rem;font-weight:800}.filters label{gap:4px;font-size:.78rem;font-weight:700}.filters input,.filters select{min-height:36px;padding:0 10px;font-size:.86rem}.filters .ghost-button{min-height:36px;padding:0 11px;font-size:.84rem}.filters .ghost-button svg,.filters .mobile-filter-button svg{width:16px;height:16px}.filters .filter-toggle{min-height:36px;gap:7px;align-self:end;color:var(--text-strong);font-size:.82rem;line-height:1}.filters .filter-toggle input{width:16px;min-width:16px;height:16px;min-height:16px}label{display:grid;gap:6px;color:var(--text-strong);font-size:.88rem;font-weight:680}input,select,textarea{width:100%;min-width:0;min-height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;color:var(--text-strong);background:#ffffffb8;transition:border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}textarea{min-height:78px;padding-block:10px;line-height:1.35;resize:vertical}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:#ffffff09}input:hover,select:hover,textarea:hover{border-color:var(--control-hover-border);background:var(--surface-solid)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:none;border-color:var(--focus-border);box-shadow:var(--focus-ring)}input:focus-visible,select:focus-visible,textarea:focus-visible{transform:translateY(-1px)}input[type=checkbox]{width:18px;min-width:18px;height:18px;min-height:18px;flex:0 0 auto;padding:0;accent-color:var(--brand-blue)}.czech-date-input{position:relative;display:grid}.czech-date-input>input:first-child{padding-right:46px}.date-picker-button{position:absolute;top:4px;right:4px;display:grid;width:34px;height:34px;place-items:center;border-radius:7px;background:transparent;color:var(--text-strong)}.date-picker-button:hover,.date-picker-button:focus-visible{background:var(--surface-hover);color:var(--brand-blue)}.date-picker-button svg{width:18px;height:18px}.czech-calendar-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:70;display:grid;width:min(292px,calc(100vw - 32px));gap:8px;border:1px solid var(--border-subtle);border-radius:8px;padding:12px;background:var(--surface-solid);box-shadow:var(--shadow-md);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform-origin:top right;animation:popover-enter var(--motion-medium) var(--ease-out) both}.czech-calendar-header{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;gap:8px;align-items:center}.czech-calendar-header strong{color:var(--text-strong);font-size:.95rem;font-weight:850;text-align:center}.czech-calendar-nav,.czech-calendar-day,.czech-calendar-text-button{display:inline-grid;place-items:center;border-radius:6px;background:transparent;color:var(--text-strong)}.czech-calendar-nav{width:34px;height:34px}.czech-calendar-nav svg{width:18px;height:18px}.czech-calendar-nav:hover,.czech-calendar-nav:focus-visible,.czech-calendar-day:hover,.czech-calendar-day:focus-visible,.czech-calendar-text-button:hover,.czech-calendar-text-button:focus-visible{background:var(--brand-blue-soft);color:var(--brand-blue)}.czech-calendar-weekdays,.czech-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.czech-calendar-weekdays{color:var(--text-muted);font-size:.72rem;font-weight:850;text-align:center}.czech-calendar-weekdays span{line-height:24px}.czech-calendar-day{min-width:0;min-height:34px;font-size:.86rem;font-weight:750}.czech-calendar-day.is-outside{color:var(--text-muted);font-weight:650}.czech-calendar-day.is-today{box-shadow:inset 0 0 0 1px var(--brand-blue)}.czech-calendar-day.is-selected,.czech-calendar-day.is-selected:hover,.czech-calendar-day.is-selected:focus-visible{background:var(--brand-blue);color:var(--primary-action-text);box-shadow:none}.czech-calendar-footer{display:flex;justify-content:space-between;gap:8px;padding-top:2px}.czech-calendar-text-button{min-height:32px;padding:0 8px;color:var(--brand-blue);font-size:.82rem;font-weight:850}.search-field{position:relative}.search-field svg{position:absolute;left:10px;bottom:11px;color:var(--text-muted)}.search-field input{padding-left:38px}.filters .search-field svg{left:11px;bottom:10px;width:16px;height:16px}.filters .search-field input{padding-left:34px}.toggle-line{display:flex;align-items:center;min-height:42px;flex-direction:row;gap:8px;white-space:nowrap}.filters .ghost-button{white-space:nowrap}.modal-backdrop.filter-dialog-backdrop{align-items:center;justify-items:center;overflow:hidden;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overscroll-behavior:contain}.filter-dialog{display:grid;gap:16px;width:min(420px,calc(100vw - 32px));max-height:min(640px,calc(100vh - 48px));max-height:min(640px,calc(100dvh - 48px));overflow:auto;overscroll-behavior:contain;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-solid);padding:20px;box-shadow:var(--shadow-md);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);animation:modal-enter var(--motion-slow) var(--ease-out) both}.filter-dialog:focus{outline:none}.filter-dialog-controls{display:grid;gap:14px}.filter-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-screen{display:grid;gap:16px}.admin-header{display:flex;gap:12px;align-items:center;justify-content:space-between}.admin-header h1{margin-bottom:0}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px}.admin-tabs button{min-height:40px;border:1px solid var(--border);border-radius:999px;background:var(--surface-solid);color:var(--text-strong);padding:0 14px;font-weight:680}.admin-tabs button.active{border-color:#003c5624;background:var(--brand-blue-softer);color:var(--brand-blue);box-shadow:var(--shadow-xs)}.admin-tabs button:hover,.admin-tabs button:focus-visible{transform:translateY(-1px);background:var(--surface-hover)}.admin-grid{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:16px;align-items:start}.admin-form,.admin-list{display:grid;gap:14px;padding:16px}.admin-grid>.admin-form{position:sticky;top:96px;max-height:calc(100vh - 116px);overflow:auto}.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-form-wide{grid-column:1 / -1}.admin-list{align-content:start}.admin-empty-state{display:grid;min-height:300px;align-content:center;justify-items:center;gap:10px;border:1px dashed var(--border);border-radius:8px;padding:24px;background:var(--brand-blue-softer);color:var(--text-muted);text-align:center}.admin-empty-state img{width:min(220px,85%);height:auto}.admin-empty-state strong{color:var(--text-strong);font-size:1rem}.admin-empty-state p{max-width:420px;margin-bottom:0;font-size:.92rem;line-height:1.5}.admin-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;border:1px solid var(--border-subtle);border-radius:8px;padding:12px;background:#ffffffad;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard);animation:row-enter var(--motion-medium) var(--ease-out) both}:root[data-theme=dark] .admin-list-row{background:#ffffff06}.admin-list-row:hover{border-color:var(--border);background:var(--surface-solid);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.admin-list-row.is-editing{border-color:#003c5657;background:var(--brand-blue-softer);box-shadow:var(--shadow-sm),inset 4px 0 0 var(--brand-blue)}:root[data-theme=dark] .admin-list-row.is-editing{border-color:#8bd7ef57;background:var(--brand-blue-softer)}.admin-list-row.is-editing:hover{background:var(--brand-blue-softer)}.admin-inventory-row.is-editing{border-color:#003c5657;background:var(--brand-blue-softer);box-shadow:var(--shadow-sm),inset 4px 0 0 var(--brand-blue)}:root[data-theme=dark] .admin-inventory-row.is-editing{border-color:#8bd7ef57;background:var(--brand-blue-softer)}.admin-inventory-row.is-editing:hover{background:var(--brand-blue-softer)}.admin-list-row div{display:grid;gap:3px;min-width:0}.admin-list-row strong,.admin-list-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-list-row span{color:var(--text-muted);font-size:.84rem}.admin-mobile-form-button{justify-content:center}.admin-form-dialog{position:static;align-content:start;width:min(620px,calc(100vw - 24px));width:min(620px,calc(100dvw - 24px));max-width:calc(100vw - 24px);max-width:calc(100dvw - 24px);max-height:min(640px,calc(100vh - 24px));max-height:min(640px,calc(100dvh - 24px));overflow:auto;overscroll-behavior:contain;background:var(--surface-solid);box-shadow:var(--shadow-md),var(--glass-highlight);animation:modal-enter var(--motion-slow) var(--ease-out) both}.admin-form-dialog:focus{outline:none}.modal-backdrop.admin-form-dialog-backdrop{z-index:55;align-items:center;justify-items:center;overflow:hidden;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overscroll-behavior:contain}.admin-form-dialog .panel-title .ghost-button,.admin-form-dialog .panel-title .icon-button{width:auto;flex:0 0 auto}.inventory-list{display:grid;gap:8px}.list-pagination{display:flex;justify-content:center;padding:8px 0 4px}.list-pagination .ghost-button{min-width:160px}.catalog-main{display:grid;gap:8px}.catalog-list-summary{display:flex;align-items:baseline;justify-content:flex-end;gap:6px;min-height:26px;color:var(--text-muted);font-size:.82rem;font-weight:680}.catalog-list-summary strong{color:var(--text-strong);font-size:1rem;font-variant-numeric:tabular-nums}.inventory-row,.cart-panel,.scanner-frame,.scanner-form,.history-panel{padding:16px}.inventory-row{position:relative;display:grid;grid-template-columns:minmax(180px,1.55fr) minmax(82px,.55fr) minmax(82px,.55fr) minmax(92px,.62fr) 42px 96px 198px;gap:8px;align-items:center;min-height:58px;padding:10px 12px;background:#ffffffb8;transition:border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard);animation:row-enter var(--motion-medium) var(--ease-out) both}.inventory-row.note-open{z-index:5}:root[data-theme=dark] .inventory-row{background:#ffffff08}.inventory-row:hover{border-color:var(--border);background:var(--surface-solid);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.implant-cell{min-width:0}.implant-cell h2{margin-bottom:2px;overflow:hidden;font-size:.92rem;line-height:1.18;text-overflow:ellipsis;white-space:nowrap}.implant-cell p{margin-bottom:0;overflow:hidden;font-size:.76rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.mobile-implant-meta{display:none}.row-meta,.stock-count{display:grid;gap:1px;min-width:0}.row-meta span,.stock-count small{font-size:.68rem;line-height:1.15}.row-meta strong{overflow:hidden;font-size:.8rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.row-note{position:relative;display:grid;place-items:center;min-width:0}.note-info-button{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--border);border-radius:999px;color:var(--brand-blue);background:var(--surface-solid);box-shadow:var(--shadow-xs);transition:border-color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.note-info-button svg{width:15px;height:15px}.note-info-button:hover,.note-info-button:focus-visible,.note-info-button[aria-expanded=true]{border-color:#003c5647;background:var(--brand-blue-soft);transform:translateY(-1px)}.note-info-button:disabled{cursor:not-allowed;color:var(--text-muted);background:var(--surface-soft);opacity:.55;transform:none}.note-popover{position:absolute;top:50%;right:calc(100% + 10px);z-index:20;width:min(280px,68vw);transform:translateY(-50%);border:1px solid var(--border);border-radius:8px;background:var(--surface-solid);padding:10px 12px;color:var(--text-strong);font-size:.78rem;line-height:1.35;box-shadow:var(--shadow-md);overflow-wrap:anywhere;animation:popover-enter var(--motion-medium) var(--ease-out) both}.stock-count{align-items:start;justify-items:start}.stock-count strong{color:var(--text-strong);font-size:.98rem;line-height:1.1}.badge{align-self:flex-start;border-radius:999px;padding:3px 8px;font-size:.66rem;font-weight:760;white-space:nowrap}.badge.success{color:var(--success-text);background:var(--success-bg)}.badge.warning{color:var(--warning-text);background:var(--warning-bg)}.badge.danger{color:var(--danger-text);background:var(--danger-bg)}.badge.neutral{color:var(--neutral-text);background:var(--neutral-bg)}.warn-text{color:var(--warning-text)}.row-actions,.split-actions{display:flex;gap:8px;align-items:center}.row-actions{justify-content:flex-end;min-width:0}.admin-row-actions{flex-wrap:wrap}.admin-quantity-sync{flex:0 0 auto;border-radius:999px;padding:4px 8px;background:var(--neutral-bg);color:var(--neutral-text);font-size:.68rem;font-weight:760;line-height:1;white-space:nowrap}.admin-quantity-sync.queued,.admin-quantity-sync.saving{background:var(--warning-bg);color:var(--warning-text)}.admin-quantity-sync.saved{background:var(--success-bg);color:var(--success-text)}.admin-quantity-sync.error{background:var(--danger-bg);color:var(--danger-text)}.stepper{display:grid;grid-template-columns:32px 42px 32px;column-gap:0;width:106px;flex:0 0 auto;border:1px solid var(--border);border-radius:8px;background:#ffffffb8;overflow:hidden;min-height:34px;box-shadow:var(--shadow-xs)}.stepper button{display:grid;place-items:center;min-width:0;min-height:100%;border-radius:0;color:var(--brand-blue);background:var(--surface-soft);transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.stepper button:hover,.stepper button:focus-visible{background:var(--brand-blue-soft);transform:scale(1.04)}.stepper button svg{width:15px;height:15px}.stepper input{width:42px;min-width:42px;min-height:32px;border:0;border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);border-radius:0;background:var(--surface-solid);color:var(--text-strong);box-shadow:none;padding:0;font-size:.84rem;font-weight:700;text-align:center}.stepper input:hover{background:var(--surface-solid)}.stepper input:focus-visible{position:relative;z-index:1;box-shadow:inset 0 0 0 2px #003c562e}.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.stepper input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}:root[data-theme=dark] .stepper{border-color:#8bd7ef38;background:#ffffff0e}:root[data-theme=dark] .stepper button{color:var(--brand-blue);background:#11161beb}:root[data-theme=dark] .stepper button:hover,:root[data-theme=dark] .stepper button:focus-visible{background:#8bd7ef29}:root[data-theme=dark] .stepper input{border-left-color:#8bd7ef29;border-right-color:#8bd7ef29;background:#161b20;color:var(--text-strong)}:root[data-theme=dark] .stepper input:hover{background:#1a2026}:root[data-theme=dark] .stepper input:focus-visible{box-shadow:inset 0 0 0 2px #8bd7ef57}.primary-button,.confirm-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border-radius:8px;padding:0 14px;font-weight:710}.primary-button{background:var(--brand-blue);color:var(--primary-action-text);box-shadow:0 1px 2px #003c561f}.confirm-button{width:100%;background:var(--brand-red);color:var(--brand-white);box-shadow:0 1px 2px #bf311f1f}.primary-button:hover,.primary-button:focus-visible,.confirm-button:hover,.confirm-button:focus-visible{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.row-actions .primary-button,.row-actions .danger-button{flex:0 0 auto;min-height:34px;border-radius:8px;padding-inline:11px;font-size:.84rem;box-shadow:0 1px 2px #003c561f}.row-actions .primary-button svg,.row-actions .danger-button svg{width:15px;height:15px}.ghost-button{border:1px solid var(--border);background:#ffffffa3;color:var(--brand-blue)}:root[data-theme=dark] .ghost-button{background:#ffffff09}.ghost-button:hover,.ghost-button:focus-visible{border-color:var(--control-hover-border);background:var(--surface-hover);transform:translateY(-1px)}.danger-button{border-color:var(--destructive-border);color:var(--danger-text)}.row-actions .danger-button{border-color:var(--destructive-soft-border);background:var(--destructive-soft-bg);box-shadow:0 1px 2px #bf311f1a}.cart-presence{min-width:82px;color:var(--cart-presence-text);font-size:.78rem;font-weight:800;text-align:right;white-space:nowrap}.cart-panel{position:sticky;top:96px;height:max-content;max-height:calc(100vh - 116px);overflow:auto}.panel-title{justify-content:space-between;margin-bottom:14px}.panel-title h2{flex:1;margin:0}.cart-lines{display:grid;gap:12px;margin-bottom:14px}.cart-line{display:grid;grid-template-columns:minmax(0,1fr) 98px 32px;gap:8px;align-items:center;padding:8px 9px;border:1px solid var(--border-subtle);border-radius:8px;background:#ffffff9e;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard);animation:row-enter var(--motion-medium) var(--ease-out) both}:root[data-theme=dark] .cart-line{background:#ffffff06}.cart-line:hover{border-color:var(--border);background:var(--surface-solid);transform:translateY(-1px)}.cart-line div:first-child{display:grid;gap:2px;min-width:0}.cart-line strong,.cart-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-line strong{font-size:.88rem;line-height:1.15}.cart-line span{font-size:.74rem;line-height:1.15}.cart-line .stepper{grid-template-columns:30px 38px 30px;width:98px;min-height:32px}.cart-line .stepper input{width:38px;min-width:38px;min-height:30px;font-size:.8rem}.cart-line .stepper button svg{width:14px;height:14px}.cart-clear-button{width:fit-content;min-height:32px;margin:0 0 10px auto;padding:0 11px;font-size:.82rem}.cart-clear-button svg{width:15px;height:15px}.cart-panel .cart-remove-button{width:32px;height:32px;min-height:32px;align-self:center;border:1px solid var(--border);border-radius:8px;padding:0;color:var(--brand-red);background:var(--surface-solid)}.cart-panel .cart-remove-button svg{width:16px;height:16px}.scanner-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px}.scanner-frame video{width:100%;min-height:360px;background:#162638;border-radius:8px}.scanner-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:12px}.scanner-form{display:grid;gap:14px}.found-card{align-items:flex-start;padding:12px;border-radius:8px;background:#f3fbfb;color:#215d5f;animation:row-enter var(--motion-medium) var(--ease-out) both}.found-card div{display:grid;gap:2px}.history-panel{display:grid;gap:10px}.history-row{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(200px,1fr) auto auto;gap:14px;align-items:center;border:1px solid var(--border-subtle);border-radius:8px;padding:12px;background:#ffffffad;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard);animation:row-enter var(--motion-medium) var(--ease-out) both}:root[data-theme=dark] .history-row{background:#ffffff06}.history-row:hover{border-color:var(--border);background:var(--surface-solid);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.history-row div{display:grid;gap:3px}.movement-delta{display:flex!important;align-items:center;color:var(--brand-blue);font-weight:800}.empty-state{border:1px dashed var(--border);border-radius:8px;padding:20px;color:var(--text-muted);background:var(--brand-blue-softer)}.mobile-nav{display:none}.mobile-cart-fab{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(82px + env(safe-area-inset-bottom));z-index:45;display:none;width:58px;height:58px;place-items:center;border:1px solid rgb(255 255 255 / .42);border-radius:50%;background:var(--brand-blue);color:var(--primary-action-text);box-shadow:var(--shadow-md),inset 0 1px #ffffff2e;animation:fab-enter var(--motion-slow) var(--ease-out) both}.mobile-cart-fab:hover,.mobile-cart-fab:focus-visible{box-shadow:var(--shadow-md),var(--focus-ring);transform:translateY(-2px)}.mobile-cart-fab svg{width:25px;height:25px}.mobile-cart-count{position:absolute;top:-6px;right:-4px;display:inline-grid;min-width:24px;height:24px;place-items:center;border:2px solid var(--app-bg);border-radius:999px;background:var(--brand-red);color:var(--brand-white);padding:0 6px;font-size:.76rem;font-weight:850;font-variant-numeric:tabular-nums;line-height:1}.mobile-cart-backdrop{z-index:65;align-items:center;justify-items:center;overflow:hidden;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overscroll-behavior:contain}.mobile-cart-dialog{display:grid;width:min(430px,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:hidden;animation:modal-enter var(--motion-slow) var(--ease-out) both}.mobile-cart-dialog:focus{outline:none}.mobile-cart-panel{position:static;width:100%;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;background:var(--surface-solid)}.mobile-cart-panel .panel-title{grid-template-columns:auto minmax(0,1fr) auto auto}.mobile-cart-panel .panel-title .icon-button{width:36px;height:36px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:#1d1d1f6b;animation:backdrop-fade var(--motion-medium) var(--ease-out) both}.issue-confirm-backdrop{background:#1d1d1f66}.confirm-dialog{display:grid;gap:16px;width:min(920px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-solid);padding:20px;box-shadow:var(--shadow-md);animation:modal-enter var(--motion-slow) var(--ease-out) both}.dialog-header,.dialog-actions,.dialog-summary{display:flex;gap:12px;align-items:center;justify-content:space-between}.dialog-header h2{margin:0}.icon-button{display:grid;width:40px;height:40px;place-items:center;border:1px solid transparent;border-radius:8px;color:var(--text-strong);background:var(--surface-hover)}.icon-button:hover,.icon-button:focus-visible{border-color:var(--border);color:var(--brand-blue);background:var(--brand-blue-softer);transform:translateY(-1px)}.confirm-meta{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content minmax(0,1fr);gap:6px 12px;border-radius:8px;background:var(--surface-soft);padding:12px}.confirm-meta span,.confirm-line span,.dialog-summary span{color:var(--text-muted);font-size:.84rem}.confirm-lines{display:grid;gap:8px}.confirm-line{display:grid;grid-template-columns:minmax(220px,1.8fr) minmax(120px,.8fr) 90px 90px 100px;gap:12px;align-items:center;border:1px solid var(--border-subtle);border-radius:8px;padding:12px;background:var(--surface-solid);animation:row-enter var(--motion-medium) var(--ease-out) both}:root[data-theme=dark] .confirm-line{background:var(--surface-soft)}.confirm-line div,.confirm-item-title{display:grid;gap:3px;min-width:0}.confirm-line strong,.confirm-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-actions{justify-content:flex-end}.dialog-actions .ghost-button,.dialog-actions .confirm-button{width:auto}@media(max-width:1380px){.catalog-layout,.scanner-layout{grid-template-columns:1fr}.cart-panel{position:static}.filters{grid-template-columns:minmax(240px,1.6fr) minmax(145px,.85fr) minmax(145px,.85fr) max-content max-content}.inventory-row{grid-template-columns:minmax(180px,1.45fr) minmax(82px,.55fr) minmax(82px,.55fr) minmax(92px,.62fr) 42px 96px 198px}}@media(max-width:1080px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-search{grid-column:1 / -1}}@media(max-width:920px){.app-header{grid-template-columns:1fr;gap:12px}.header-page-nav{justify-self:center}.user-menu-wrapper{justify-self:end}.confirm-meta,.confirm-line{grid-template-columns:1fr 1fr}.confirm-item-title{grid-column:1 / -1}}@media(min-width:761px)and (max-width:920px)and (orientation:landscape){.app-header{grid-template-columns:minmax(0,1fr) auto auto;z-index:40;gap:10px;padding:8px 14px}.hospital-logo{width:38px;height:38px}.brand-lockup{gap:8px}.brand-lockup strong{font-size:.86rem}.brand-lockup span{font-size:.76rem}.header-page-nav{flex-wrap:nowrap;gap:6px;justify-self:center}.header-nav{min-height:36px;gap:6px;padding:7px 10px;font-size:.82rem}.user-chip{max-width:190px;padding:4px 9px 4px 4px}.user-avatar{width:29px;height:29px}}@media(max-width:760px){.app-shell{display:block}.workspace{padding:16px 16px 90px}.app-header{grid-template-columns:minmax(0,1fr) auto;position:relative;z-index:40;gap:10px;padding:14px 16px}.floating-notification{top:10px;width:calc(100vw - 24px)}.header-page-nav,.header-nav{display:none}.user-menu-wrapper{justify-self:end}.user-chip{width:42px;height:42px;justify-content:center;max-width:42px;border-radius:50%;padding:4px}.user-chip>span,.user-chip .user-menu-chevron{display:none}.user-menu{right:0;width:min(260px,calc(100vw - 32px))}.filters,.history-row{grid-template-columns:1fr}.filters{grid-template-columns:minmax(0,1fr) auto;gap:10px}.filter-search{grid-column:auto}.desktop-filter-controls{display:none}.filters .mobile-filter-button{display:inline-flex;white-space:nowrap}.modal-backdrop.filter-dialog-backdrop{align-items:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.filter-dialog{width:min(420px,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);padding:16px}.filter-dialog-actions{grid-template-columns:1fr}.admin-header{align-items:flex-start}.admin-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-tabs button{padding:0 8px}.admin-grid,.admin-form-grid,.admin-list-row{grid-template-columns:1fr}.admin-grid>.admin-form:not(.admin-form-dialog){position:static;max-height:none}.admin-form-dialog-backdrop{padding:12px}.admin-form-dialog .panel-title .ghost-button,.admin-form-dialog .panel-title .icon-button{width:auto;flex:0 0 auto}.admin-list-row .ghost-button,.admin-form .primary-button,.admin-form .ghost-button{width:100%}.inventory-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;min-height:auto;padding:10px 12px}.implant-cell{grid-column:1;align-self:start}.implant-cell h2{margin-bottom:2px;font-size:.95rem;line-height:1.18;white-space:nowrap}.desktop-implant-meta{display:none}.mobile-implant-meta{display:block;font-size:.78rem;white-space:nowrap}.row-meta{display:none;grid-column:1;justify-content:flex-start;gap:8px;border-top:0;padding-top:0}.row-meta span,.row-meta strong{font-size:.74rem;line-height:1.2}.row-meta strong{white-space:nowrap}.row-note{grid-column:1;grid-row:2 / 3;justify-self:start}.note-info-button{width:28px;height:28px}.note-popover{top:auto;right:auto;bottom:calc(100% + 8px);left:0;width:min(280px,calc(100vw - 40px));transform:none}.stock-count{grid-column:2;grid-row:1 / 2;grid-template-columns:1fr;align-self:start;justify-items:end;gap:2px;border-top:0;padding-top:0}.stock-count strong{font-size:.98rem;line-height:1.1}.stock-count small{display:none}.badge{padding:3px 7px;font-size:.68rem}.row-actions,.split-actions,.scanner-actions{align-items:stretch;flex-direction:column}.primary-button,.ghost-button{width:100%}.row-actions{grid-column:1 / -1;align-items:center;flex-direction:row;gap:8px;margin-top:2px}.row-actions .stepper{grid-template-columns:32px 44px 32px;width:108px;min-height:36px}.row-actions .stepper input{width:44px;min-width:44px;min-height:34px}.row-actions .primary-button,.row-actions .ghost-button{flex:1 1 auto;width:auto;min-height:36px}.admin-row-actions{align-items:center;justify-content:flex-start}.admin-row-actions .ghost-button{flex:1 1 120px}.admin-quantity-sync{margin-left:auto}.cart-presence{min-width:82px;text-align:left}.scanner-frame video{min-height:280px}.mobile-cart-fab{display:grid}.mobile-nav{position:fixed;left:0;right:0;bottom:0;display:grid;grid-auto-flow:column;justify-content:stretch;gap:4px;padding:8px;border-top:1px solid var(--border-subtle);background:var(--header-bg);z-index:10;box-shadow:0 -10px 28px #121c2614;backdrop-filter:var(--glass-filter-strong);-webkit-backdrop-filter:var(--glass-filter-strong);animation:mobile-nav-enter var(--motion-slow) var(--ease-out) both}.mobile-nav button{justify-content:center;flex-direction:column;gap:3px;font-size:.78rem}.modal-backdrop{align-items:end;padding:12px}.modal-backdrop.mobile-cart-backdrop{align-items:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.mobile-cart-panel .cart-line{grid-template-columns:minmax(0,1fr) 98px 32px}.confirm-dialog{max-height:calc(100vh - 24px);padding:16px}.confirm-meta,.confirm-line{grid-template-columns:1fr}.confirm-item-title{grid-column:auto}.confirm-line strong,.confirm-line span,.brand-lockup strong,.brand-lockup span{white-space:normal}.dialog-actions,.dialog-summary{align-items:stretch;flex-direction:column}.dialog-header{align-items:center;flex-direction:row;justify-content:space-between}.dialog-header .icon-button{flex:0 0 auto}.dialog-actions .ghost-button,.dialog-actions .confirm-button{width:100%}}@keyframes app-fade-in{0%{opacity:0}to{opacity:1}}@keyframes panel-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes row-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes popover-enter{0%{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sheet-enter{0%{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modal-enter{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes admin-dialog-enter{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px)) scale(.985)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes backdrop-fade{0%{opacity:0}to{opacity:1}}@keyframes mobile-nav-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fab-enter{0%{opacity:0;transform:translateY(10px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}.header-nav:hover,.header-nav:focus-visible,.mobile-nav button:hover,.mobile-nav button:focus-visible,input:focus-visible,select:focus-visible,.admin-tabs button:hover,.admin-tabs button:focus-visible,.admin-list-row:hover,.inventory-row:hover,.stepper button:hover,.stepper button:focus-visible,.primary-button:hover,.primary-button:focus-visible,.confirm-button:hover,.confirm-button:focus-visible,.ghost-button:hover,.ghost-button:focus-visible,.cart-line:hover,.history-row:hover,.icon-button:hover,.icon-button:focus-visible{transform:none}}
