/* Tasarım dili zed. panelinden gelir: obsidian zemin, 8 px köşe, yalnızca ikonlu menü, her şey küçük harf. Vurgu bosa turuncusudur. */
@font-face{font-family:Geist;src:url('/brand/fonts/geist-regular.ttf');font-weight:400;font-display:swap}
@font-face{font-family:Geist;src:url('/brand/fonts/geist-semibold.ttf');font-weight:600;font-display:swap}
@font-face{font-family:'Geist Mono';src:url('/brand/fonts/geist-mono-regular.ttf');font-display:swap}
@font-face{font-family:Ubuntu;src:url('/brand/fonts/Ubuntu-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Ubuntu;src:url('/brand/fonts/Ubuntu-Medium.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Ubuntu;src:url('/brand/fonts/Ubuntu-Bold.ttf') format('truetype');font-weight:700;font-display:swap}

/* Tema işletim sistemini izler; --signal turuncu dolgu, --accent temaya uygun metin ve ikon vurgusudur. */
:root{color-scheme:dark;--bg:#101114;--surface:#16171a;--line:#ffffff12;--line-strong:#ffffff20;--line-hover:#ffffff50;--hover:#ffffff0a;--muted:#96979c;--soft:#b8b9bf;--dim:#787a81;--placeholder:#73747b;--accent:#f68a1f;--signal:#f68a1f;--signal-hover:#f89d43;--on-signal:#111111;--text:#fafafa;--radius:8px}
@media(prefers-color-scheme:light){:root{color-scheme:light;--bg:#fafafa;--surface:#fff;--line:#1011141a;--line-strong:#10111429;--line-hover:#10111459;--hover:#1011140a;--muted:#62636a;--soft:#4a4b52;--dim:#6d6e75;--placeholder:#6d6e75;--accent:#b55d08;--text:#101114}}

*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 Ubuntu,Arial,sans-serif;text-transform:lowercase}
button,input,select,textarea{font:inherit;text-transform:lowercase}
button,a,input{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}
[hidden]{display:none!important}
:is(button,a,input):focus-visible{outline:2px solid var(--accent);outline-offset:0}
h1,h2,p{margin:0}
h2{font-size:16px;font-weight:600;letter-spacing:-.3px}
.muted{color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.icon{display:inline-block;width:18px;height:18px;flex-shrink:0;background:currentColor;mask:var(--icon) center/contain no-repeat}
/* Font Awesome Free 6.7.2, Fonticons, Inc. — CC BY 4.0; /brand/icons/fontawesome/LICENSE.txt */
.fa-arrow-right{--icon:url('/brand/icons/fontawesome/arrow-right.svg')}.fa-house{--icon:url('/brand/icons/fontawesome/house.svg')}
.fa-right-from-bracket{--icon:url('/brand/icons/fontawesome/right-from-bracket.svg')}.fa-rotate{--icon:url('/brand/icons/fontawesome/rotate.svg')}
.fa-user{--icon:url('/brand/icons/fontawesome/user.svg')}.fa-users{--icon:url('/brand/icons/fontawesome/users.svg')}
.fa-lock{--icon:url('/brand/icons/fontawesome/lock.svg')}

.fa-industry{--icon:url('/brand/icons/fontawesome/industry.svg')}
.fa-calendar-days{--icon:url('/brand/icons/fontawesome/calendar-days.svg')}
.fa-user-shield{--icon:url('/brand/icons/fontawesome/user-shield.svg')}.fa-user-tie{--icon:url('/brand/icons/fontawesome/user-tie.svg')}.fa-magnifying-glass{--icon:url('/brand/icons/fontawesome/magnifying-glass.svg')}.fa-plus{--icon:url('/brand/icons/fontawesome/plus.svg')}.fa-pen{--icon:url('/brand/icons/fontawesome/pen.svg')}.fa-circle-minus{--icon:url('/brand/icons/fontawesome/circle-minus.svg')}.fa-sort{--icon:url('/brand/icons/fontawesome/sort.svg')}.fa-sort-up{--icon:url('/brand/icons/fontawesome/sort-up.svg')}.fa-sort-down{--icon:url('/brand/icons/fontawesome/sort-down.svg')}.fa-phone{--icon:url('/brand/icons/fontawesome/phone.svg')}.fa-envelope{--icon:url('/brand/icons/fontawesome/envelope.svg')}.fa-location-dot{--icon:url('/brand/icons/fontawesome/location-dot.svg')}.fa-key{--icon:url('/brand/icons/fontawesome/key.svg')}.fa-circle-check{--icon:url('/brand/icons/fontawesome/circle-check.svg')}.fa-at{--icon:url('/brand/icons/fontawesome/at.svg')}.fa-id-badge{--icon:url('/brand/icons/fontawesome/id-badge.svg')}.fa-receipt{--icon:url('/brand/icons/fontawesome/receipt.svg')}.fa-hashtag{--icon:url('/brand/icons/fontawesome/hashtag.svg')}.fa-layer-group{--icon:url('/brand/icons/fontawesome/layer-group.svg')}.fa-truck{--icon:url('/brand/icons/fontawesome/truck.svg')}.fa-xmark{--icon:url('/brand/icons/fontawesome/xmark.svg')}.fa-scale-balanced{--icon:url('/brand/icons/fontawesome/scale-balanced.svg')}.fa-filter{--icon:url('/brand/icons/fontawesome/filter.svg')}.fa-clock{--icon:url('/brand/icons/fontawesome/clock.svg')}.fa-file-pdf{--icon:url('/brand/icons/fontawesome/file-pdf.svg')}.fa-trash{--icon:url('/brand/icons/fontawesome/trash.svg')}.fa-calculator{--icon:url('/brand/icons/fontawesome/calculator.svg')}.fa-check{--icon:url('/brand/icons/fontawesome/check.svg')}.fa-clipboard-list{--icon:url('/brand/icons/fontawesome/clipboard-list.svg')}.fa-file-invoice-dollar{--icon:url('/brand/icons/fontawesome/file-invoice-dollar.svg')}.fa-pen-to-square{--icon:url('/brand/icons/fontawesome/pen-to-square.svg')}.fa-file-lines{--icon:url('/brand/icons/fontawesome/file-lines.svg')}.fa-list{--icon:url('/brand/icons/fontawesome/list.svg')}.fa-palette{--icon:url('/brand/icons/fontawesome/palette.svg')}.fa-note-sticky{--icon:url('/brand/icons/fontawesome/note-sticky.svg')}.fa-dollar-sign{--icon:url('/brand/icons/fontawesome/dollar-sign.svg')}.fa-euro-sign{--icon:url('/brand/icons/fontawesome/euro-sign.svg')}.fa-money-bill{--icon:url('/brand/icons/fontawesome/money-bill.svg')}.fa-coins{--icon:url('/brand/icons/fontawesome/coins.svg')}.fa-ruler{--icon:url('/brand/icons/fontawesome/ruler.svg')}.fa-gem{--icon:url('/brand/icons/fontawesome/gem.svg')}.fa-folder-open{--icon:url('/brand/icons/fontawesome/folder-open.svg')}.fa-file-excel{--icon:url('/brand/icons/fontawesome/file-excel.svg')}.fa-puzzle-piece{--icon:url('/brand/icons/fontawesome/puzzle-piece.svg')}

/* Marka: logo yazısı Geist, slogan Geist Mono. */
.brand{display:flex;align-items:center;gap:10px;width:fit-content}
.brand img{border-radius:50%;flex-shrink:0}
.brand span,.page-footer>span:first-child{font-family:Geist,Arial,sans-serif}
.brand span{font-size:32px;font-weight:600;letter-spacing:-1.9px}
.tagline,.page-footer>span:last-child{font-family:'Geist Mono',monospace}
.tagline{font-size:11px;color:var(--muted);line-height:1.9}

.primary{border:0;background:var(--signal);color:var(--on-signal);padding:15px 18px;border-radius:7px;display:flex;justify-content:space-between;align-items:center;font-weight:600;width:100%}
.primary:hover{background:var(--signal-hover)}
.primary .icon{width:20px;height:20px}

/* Açılış: veri gelene kadar dönen simge; görünüm gölgeden belirir. */
.boot{position:fixed;inset:0;z-index:100;display:grid;place-items:center;min-height:100dvh;background:var(--bg);color:var(--accent)}
.boot .boot-spinner{width:clamp(72px,10vw,112px);height:clamp(72px,10vw,112px);animation:boot-spin 1.4s linear infinite}
@keyframes boot-spin{to{transform:rotate(360deg)}}
#view{opacity:0;filter:blur(8px);transform:translateY(6px)}
#view.shown{opacity:1;filter:none;transform:none;transition:opacity .35s ease,filter .45s ease,transform .35s ease}

/* Giriş */
#login{min-height:100dvh;display:grid;place-items:center;padding:40px 24px}
.login-form{width:100%;max-width:360px}
.login-form>.brand{margin:0 auto}.login-form>.brand span{font-size:42px;letter-spacing:-2px}
.login-form>.tagline{text-align:center;color:var(--accent);margin:20px 0 36px;font-size:13px}
.login-form .input-field+.input-field{margin-top:16px}.login-form .primary{margin-top:24px}
.login-form input{width:100%;padding:13px 14px 13px 44px;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius);color:var(--text)}
input::placeholder{color:var(--placeholder)}
/* Form alanları: solda ikon, görünür etiket veya yer tutucu yok. */
.input-field{position:relative;min-width:0}
.input-field>.icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}

/* Üst bar: logo, yuvarlatılmış ikon sekmeler, sağda kullanıcı ve çıkış. */
.app{min-height:100dvh;max-width:1560px;margin:0 auto;padding:32px 42px 0}
.panel-header{display:flex;align-items:center;gap:20px;padding-bottom:8px}
.panel-tabs{display:flex;gap:4px;padding:4px;margin-left:12px;margin-right:auto;min-width:0;overflow-x:auto;scrollbar-width:none;border-radius:var(--radius);background:var(--surface)}
.panel-tabs::-webkit-scrollbar{display:none}
.panel-tabs a{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:var(--radius);color:var(--muted)}
.panel-tabs a[aria-current=page]{color:var(--on-signal);background:var(--signal)}
.panel-tabs a:not([aria-current=page]):hover{color:var(--text);background:var(--hover)}
.panel-actions{display:flex;align-items:center;gap:14px;flex-shrink:0}
.logout-button{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:var(--radius);background:var(--text);color:var(--bg)}
.logout-button:hover{background:var(--signal);color:var(--on-signal)}
.new-order-button{background:var(--signal);color:var(--on-signal)}.new-order-button:hover{background:var(--signal-hover)}
.content{padding:32px 0 0}
.page-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:30px;padding:20px 0;font-size:14px}
.page-footer>span:last-child{font-size:13px}

/* Kutular ve sayaçlar */
.box{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.metric{padding:20px 21px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;height:120px;overflow:hidden}
.metric-label{display:flex;justify-content:space-between;gap:10px;color:var(--soft);font-size:11px}
.metric-label>.icon{color:var(--dim)}
a.metric{display:block}a.metric:hover{border-color:color-mix(in srgb,var(--accent) 35%,transparent)}
a.metric:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.metric strong{display:block;font-size:38px;font-weight:400;letter-spacing:-2px;margin:19px 0 0;line-height:1.1;font-variant-numeric:tabular-nums}
.metrics.sales{margin-top:20px}.metric strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric strong small{font-size:13px;letter-spacing:0;color:var(--soft)}

.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}
.section-head h2{display:flex;align-items:center;gap:10px;font-size:14px}
.section-head h2 .icon{width:15px;height:15px;color:var(--dim)}
.section-head .muted{font-size:12px;font-variant-numeric:tabular-nums}

/* Üretim hattı: aşamalar soldan sağa; çubuk aşamanın aktif içindeki payıdır. */
.pipeline{margin-top:20px}
.stages{display:grid;grid-template-columns:repeat(8,minmax(0,1fr))}
.stage{padding:18px 20px 20px;border-right:1px solid var(--line);min-width:0}
.stage:last-child{border-right:0}
.stage-name{color:var(--soft);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stage strong{display:block;margin-top:10px;font-size:26px;font-weight:400;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.stage.empty strong{color:var(--dim)}
.stage-bar{height:3px;margin-top:12px;border-radius:2px;background:var(--line-strong);overflow:hidden}
.stage-bar>span{display:block;height:100%;width:var(--share,0%);background:var(--accent);border-radius:inherit}

.secondary{border:1px solid var(--line-strong);background:var(--surface);color:var(--text);border-radius:6px;padding:9px 14px;display:flex;gap:10px;align-items:center}
.secondary:hover:not(:disabled){border-color:var(--line-hover)}
/* Admin olmayan oturumda düzenleme öğeleri gizlenir; sunucu da yazmayı reddeder. */
body:not([data-role=admin]) .admin-only{display:none!important}

/* Listeler: arama, simge filtreleri, toplam; tablo, sıralama ve sayfalama (zed. kişiler düzeni). */
.list-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.list-heading>.input-field{width:260px;flex-shrink:1}
.list-heading input{width:100%;height:40px;padding:0 14px 0 44px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:12px}
.list-total{margin-left:auto;font-size:22px;font-weight:600;font-variant-numeric:tabular-nums}
.filter-group{display:flex;gap:8px;flex-shrink:0}
.filter-button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--muted);flex-shrink:0}
.filter-button:hover{color:var(--text);border-color:var(--line-hover)}
.filter-button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 9%,transparent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent)}
/* Kaydırma kutusu konumlanır; içindeki .sr-only (absolute) metinler sayfayı yana taşırmaz. */
.table-wrap{overflow:auto;position:relative}
table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left}
th{padding:14px 22px;font-weight:400;font-size:10px;color:var(--muted);border-bottom:1px solid var(--line);text-align:left}
td{padding:16px 22px;border-bottom:1px solid var(--line);font-size:12px}
tbody tr:last-child td{border-bottom:0}
.number{text-align:right;font-variant-numeric:tabular-nums}
th.number .sort-button{margin-left:auto}
.sort-button{display:inline-flex;align-items:center;gap:8px;border:0;padding:0;background:none;color:inherit;font:inherit;white-space:nowrap}
.sort-button:hover,th[aria-sort=ascending],th[aria-sort=descending]{color:var(--text)}
.sort-arrow{width:11px;height:11px}
th .icon:not(.sort-arrow){width:14px;height:14px}
.list-table{scroll-margin-top:20px}
.list-row{cursor:pointer}.list-row:hover td{background:var(--hover)}
.item-title{font-size:12px;font-weight:600}
.item-meta{margin-top:3px;color:var(--muted);font-size:10px}
a.item-meta{display:block;width:fit-content}
a.cell-link:hover{color:var(--accent)}
/* Durum etiketi: her durumun rengi legacy rozetlerini izler; yazı rengi temaya göre metinle karışır. */
.status-label{--c:var(--dim);display:inline-flex;align-items:center;height:24px;padding:0 10px;border:1px solid color-mix(in srgb,var(--c) 35%,transparent);border-radius:999px;background:color-mix(in srgb,var(--c) 14%,transparent);color:color-mix(in srgb,var(--c) 70%,var(--text));font-size:11px;font-weight:600;white-space:nowrap;cursor:pointer}
.status-label:hover{background:color-mix(in srgb,var(--c) 24%,transparent)}
.status-label.pending{--c:#e0a800}.status-label.approved{--c:#3b82f6}.status-label.machine_3d{--c:#8b8f98}.status-label.wax_ready{--c:#06b6d4}
.status-label.casting{--c:#f68a1f}.status-label.bench{--c:#a8744f}.status-label.polish_zero{--c:#6366f1}.status-label.feather_polish{--c:#14b8a6}
.status-label.completed{--c:#22c55e}.status-label.cancelled{--c:#ef4444}.status-label.in_progress{--c:#8b8f98}
/* Ayar düz metindir; tıklanınca o ayara süzer. */
.karat-button{padding:0;border:0;background:none;color:inherit;font-size:12px;cursor:pointer}
.karat-button:hover{color:var(--accent)}
/* Sipariş kodları her yerde büyük harftir (ör. ORD-0308). */
.order-code{text-transform:uppercase}
.chip-group{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.chip-group:empty{display:none}
/* Üretim hattı aşamaları ilgili siparişleri açan bağlantılardır. */
a.stage{display:block}a.stage:hover{background:var(--hover)}a.stage:hover .stage-name{color:var(--text)}
a.stage:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
/* Listede seçim kutusu: arama alanıyla aynı yükseklik, solda ikon, sağda ok. */
.list-heading>.select-field{width:200px;flex-shrink:0}
.list-heading select{width:100%;height:40px;padding-left:44px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:12px;cursor:pointer}
.list-heading select:focus-visible{outline:2px solid var(--accent);outline-offset:0}
.filter-chip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 6px 0 14px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent);font-size:12px;min-width:0;max-width:260px}
.filter-chip>span:not(.icon){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.filter-chip .icon{width:14px;height:14px;flex-shrink:0}
.chip-clear{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:inherit;flex-shrink:0}
.chip-clear:hover{background:color-mix(in srgb,var(--accent) 15%,transparent)}
.type-badge{display:inline-flex;align-items:center;gap:8px;color:var(--soft);font-size:11px}
.type-badge .icon{width:13px;height:13px;color:var(--dim)}
.type-badge.admin .icon{color:var(--accent)}
td.actions{width:1%;padding-left:0}
.row-actions{display:flex;gap:4px;justify-content:flex-end}
.item-button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted)}
.item-button:hover:not(:disabled){background:var(--hover);color:var(--text)}
.item-button .icon{width:15px;height:15px}
.empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 20px;color:var(--muted);font-size:13px;text-align:center}
.empty-state .icon{width:26px;height:26px;color:var(--dim)}
.list-paging{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:16px;font-size:12px;color:var(--muted)}
.list-paging label{margin-right:auto;position:relative}
.list-paging select{height:40px;min-width:64px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}
.list-paging .secondary{width:40px;height:40px;justify-content:center;padding:0}
.previous-icon{transform:rotate(180deg)}
.page-input{width:64px;height:40px;padding:0 6px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:12px;text-align:center;appearance:textfield}
.page-input::-webkit-inner-spin-button,.page-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* Form penceresi ve onay: ortada modal, arka plan kararır; dışına tıklamak veya Escape kapatır. */
.form-dialog,.confirm{padding:24px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--text)}
.form-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px)}
.form-dialog::backdrop,.confirm::backdrop{background:#000000a6}
.form-dialog[open],.confirm[open]{animation:dialog-in .2s ease-out}
@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}}
.form-dialog form{display:grid;gap:14px}
.form-dialog h2{font-size:15px;margin-bottom:4px}
.form-dialog :is(input,select),.panel-form .input-field :is(input,select){width:100%;height:46px;padding:0 14px 0 44px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:13px}
.form-dialog select{cursor:pointer}
.form-dialog :is(input,select):focus-visible,.panel-form .input-field :is(input,select):focus-visible,.list-heading input:focus-visible,.list-paging select:focus-visible{outline:2px solid var(--accent);outline-offset:0}
.dialog-error{color:var(--accent);font-size:12px}
.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}
.dialog-actions .primary{width:auto;gap:14px;padding:0 18px;height:40px}
.dialog-actions .primary .icon{width:16px;height:16px}
.dialog-actions .secondary{height:40px}
.confirm{width:min(420px,calc(100vw - 32px))}
.confirm[open]{display:grid;gap:22px}
.confirm p{font-size:15px;overflow-wrap:anywhere}
.confirm-actions{display:flex;justify-content:flex-end;gap:8px}
.confirm-actions button{height:40px;padding:0 18px;border-radius:var(--radius);font-weight:600;font-size:13px}
.confirm-no{border:1px solid var(--line-strong);background:transparent;color:var(--soft)}.confirm-no:hover{border-color:var(--line-hover);color:var(--text)}
.confirm-yes{border:0;background:var(--signal);color:var(--on-signal)}.confirm-yes:hover{background:var(--signal-hover)}

/* Seçim kutuları (zed. düzeni): tarayıcı oku yerine chevron; okun sağ boşluğu alanın soldaki ikon boşluğunu izler. */
.input-field{--control-inset:15px}
.list-paging label:has(>select){--control-inset:10px}
:is(.list-heading,.form-dialog,.list-paging,.panel-form) select{appearance:none;-webkit-appearance:none;padding-right:calc(var(--control-inset) + 24px)}
.list-paging select{padding-left:var(--control-inset)}
.input-field:has(>select)::after,.list-paging label:has(>select)::after{content:'';position:absolute;right:var(--control-inset);top:50%;transform:translateY(-50%);width:12px;height:12px;background:currentColor;color:var(--muted);mask:url('/brand/icons/fontawesome/chevron-down.svg') center/contain no-repeat;pointer-events:none}

/* Filtre düğmesindeki etkin filtre sayısı. */
.filter-button{position:relative}
.filter-count{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--signal);color:var(--on-signal);font-size:10px;font-weight:700;line-height:18px;text-align:center}

/* Anahtar (zed.): açık = onaylandı. */
.switch{position:relative;display:block;width:34px;height:20px;padding:0;border:1px solid var(--line-strong);border-radius:999px;background:var(--hover);transition:background .15s,border-color .15s}
.switch::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--muted);transition:transform .15s,background .15s}
.switch[aria-checked=true]{background:var(--accent);border-color:var(--accent)}.switch[aria-checked=true]::after{transform:translateX(14px);background:var(--bg)}
.switch:hover{border-color:var(--line-hover)}.switch:disabled{opacity:.5;cursor:wait}

.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dialog-meta{color:var(--muted);font-size:12px;margin:6px 0 14px}
.status-label.static{cursor:default}.status-label.static:hover{background:color-mix(in srgb,var(--c) 14%,transparent)}

/* Tarih aralığı alanı: seçim kutusu görünümünde düğme, altında satır içi takvim (zed. air-datepicker teması). */
.range-field{position:relative}
.range-button{display:flex;align-items:center;gap:14px;width:100%;height:46px;padding:0 44px 0 15px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:13px;text-align:left}
.range-button .icon{color:var(--muted)}
.range-text.placeholder{color:var(--placeholder)}
.range-button:focus-visible{outline:2px solid var(--accent);outline-offset:0}
.range-clear{position:absolute;right:9px;top:9px;color:var(--muted)}
.range-popup{margin-top:8px;padding:8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}
.range-popup .air-datepicker{--adp-font-family:Ubuntu,Arial,sans-serif;--adp-width:100%;--adp-background-color:var(--bg);--adp-background-color-hover:var(--hover);--adp-background-color-active:var(--line-strong);--adp-background-color-in-range:color-mix(in srgb,var(--accent) 14%,transparent);--adp-background-color-in-range-focused:color-mix(in srgb,var(--accent) 22%,transparent);--adp-color:var(--text);--adp-color-secondary:var(--muted);--adp-accent-color:var(--accent);--adp-color-current-date:var(--accent);--adp-color-other-month:var(--dim);--adp-color-other-month-hover:var(--muted);--adp-border-color:transparent;--adp-border-color-inner:var(--line);--adp-border-color-inline:transparent;--adp-border-radius:8px;--adp-cell-border-radius:8px;--adp-day-name-color:var(--muted);--adp-cell-background-color-selected:var(--signal);--adp-cell-background-color-selected-hover:var(--signal-hover);--adp-color-selected:var(--on-signal);--adp-day-cell-height:34px;text-transform:lowercase}
.form-dialog{overflow:auto}

/* Müşteri / ayar / gram özeti. */
.summary-dialog{width:min(920px,calc(100vw - 32px))}
.summary-wrap{max-height:calc(100dvh - 180px);border:1px solid var(--line);border-radius:var(--radius)}
.summary-table th{position:sticky;top:0;background:var(--surface);z-index:1}
.summary-cell{vertical-align:top}
.summary-cell strong{display:block;font-weight:600}
.summary-cell .item-meta{display:block}
.summary-total td{border-top:1px solid var(--line-strong);background:var(--hover)}

/* Sağ sipariş paneli: sağdan açılan modal; dışına tıklamak veya Escape kapatır. */
.side-panel{position:fixed;inset:0 0 0 auto;width:min(480px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-left:1px solid var(--line-strong);background:var(--surface);color:var(--text);display:none;flex-direction:column}
.side-panel[open]{display:flex;animation:panel-in .22s ease-out}
.side-panel::backdrop{background:#00000080}
@keyframes panel-in{from{transform:translateX(24px);opacity:0}}
.side-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:22px 22px 18px;border-bottom:1px solid var(--line)}
.side-panel-head h2{font-size:20px;letter-spacing:-.5px;margin-top:2px}
.side-panel-actions{display:flex;align-items:center;gap:10px}
.side-panel-body{flex:1;overflow:auto;padding:20px 22px 28px;display:grid;gap:24px;align-content:start}
.panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.panel-field{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:13px;overflow-wrap:anywhere}
.panel-field.wide{grid-column:1/-1}
.status-cell{display:flex;align-items:center;gap:10px}
.side-panel-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--line);background:var(--surface)}
.foot-button{width:40px;height:40px;border:1px solid var(--line-strong)}.foot-button .icon{width:16px;height:16px}
.foot-button.danger{margin-right:auto;color:#ef4444;border-color:color-mix(in srgb,#ef4444 35%,transparent)}
.foot-button.danger:hover:not(:disabled){background:color-mix(in srgb,#ef4444 12%,transparent);color:#ef4444}
.foot-button.primary-icon{border:0;background:var(--signal);color:var(--on-signal)}.foot-button.primary-icon:hover:not(:disabled){background:var(--signal-hover);color:var(--on-signal)}
/* Çoklu seçim listesi (filtre penceresi). */
.multi-popup{display:grid;gap:8px}
/* Penceredeki genel alan kuralı (solda ikon boşluğu) arama ve onay kutularına uygulanmaz. */
.form-dialog .multi-search{width:100%;height:38px;padding:0 12px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--text);font-size:12px}
.multi-list{display:grid;gap:2px;max-height:220px;overflow:auto}
.multi-option{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:6px;font-size:13px;cursor:pointer}
.multi-option:hover{background:var(--hover)}
.form-dialog .multi-option input{width:16px;height:16px;padding:0;accent-color:var(--accent);margin:0;flex-shrink:0}
.multi-option .item-meta{margin:0 0 0 auto}
.summary-table th .icon{width:13px;height:13px;vertical-align:-2px}
.summary-table th span:not(.icon):not(.sr-only){margin-left:6px}
.summary-counts{display:inline-flex!important;align-items:center;justify-content:flex-end;gap:5px;margin-top:3px}
.summary-counts .icon{width:10px;height:10px;color:var(--dim)}.summary-counts span+.icon{margin-left:6px}
.summary-total .icon{width:14px;height:14px;color:var(--muted)}

.filter-note{display:flex;align-items:center;gap:10px;margin:0;padding:8px 8px 8px 15px;border:1px solid var(--line);border-radius:var(--radius);color:var(--soft);font-size:12px}
.filter-note .icon{width:14px;height:14px;color:var(--muted)}.filter-note .chip-clear{margin-left:auto}
.thumb-button{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.thumb-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.panel-section h3{font-size:12px;font-weight:600;color:var(--soft);margin:0 0 10px}
.panel-items{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.panel-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}
.panel-thumb{width:48px;height:48px;border-radius:6px;background:#fff;display:grid;place-items:center;overflow:hidden;color:var(--dim)}
.panel-thumb img{width:100%;height:100%;object-fit:contain}
/* Ürün kodları her yerde büyük harftir (panel, Fancybox açıklaması). */
.product-code,.fancybox__container .f-caption{text-transform:uppercase}
.item-note{font-style:italic}
.panel-item-side{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:13px;font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){.side-panel[open]{animation:none}}


/* Tooltip (zed.): yalnız data-tooltip taşıyan düğmelerde; öğenin üstünde, sığmazsa altında. */
.tooltip{position:fixed;z-index:110;max-width:240px;padding:6px 10px;border-radius:6px;background:var(--text);color:var(--bg);font-size:12px;line-height:1.4;text-align:center;pointer-events:none;animation:tooltip-in .15s ease-out}
.tooltip::after{content:'';position:absolute;left:var(--arrow,50%);width:0;height:0;margin-left:-5px;border:5px solid transparent}
.tooltip[data-placement=top]::after{top:100%;border-top-color:var(--text)}
.tooltip[data-placement=bottom]::after{bottom:100%;border-bottom-color:var(--text)}
@keyframes tooltip-in{from{opacity:0}}

/* Üretim raporu penceresi: koçan ve kilit tabloları. */
.report-dialog{width:min(760px,calc(100vw - 32px))}
.report-body{display:grid;gap:18px;max-height:calc(100dvh - 220px);overflow:auto;margin-bottom:14px}
.report-body.scrolling{padding-right:12px}
.report-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}
.report-head h3{font-size:13px;font-weight:600;margin:0}
.report-table{border:1px solid var(--line);border-radius:var(--radius)}
.report-table td,.report-table th{padding:9px 14px}
/* Rapor satırları sıktır; kod grupları alt çizgiyle ayrılır. */
.report-table td{padding-top:5px;padding-bottom:5px}
.report-table tr:not(.group-end) td{border-bottom-color:transparent;padding-bottom:1px}
.report-table tr:not(.group-start) td{padding-top:1px}

/* Proforma penceresi: üstte para birimi ve ödeme türü, altta alan ızgarası. */
.proforma-dialog{width:min(760px,calc(100vw - 32px))}
.segment-row{display:flex;gap:10px;flex-wrap:wrap}
.segment{display:flex;gap:4px;padding:4px;border-radius:var(--radius);background:var(--bg)}
.segment button{height:32px;padding:0 12px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:12px;font-weight:600}
.segment button[aria-pressed=true]{background:var(--signal);color:var(--on-signal)}
.segment button:not([aria-pressed=true]):hover{background:var(--hover);color:var(--text)}
.proforma-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.proforma-grid[hidden]{display:none}
.proforma-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field-box{display:flex;align-items:center;height:42px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);overflow:hidden}
.field-box:focus-within{outline:2px solid var(--accent);outline-offset:0}
.form-dialog .field-box input,.form-dialog .field-box select{height:100%;padding:0 12px;border:0;border-radius:0;background:transparent;outline:none}
.form-dialog .field-box input{flex:1;min-width:0;width:auto}
.form-dialog .field-box select{width:auto;flex-shrink:0;padding-right:12px;border-right:1px solid var(--line)}
.field-unit{padding:0 12px;color:var(--muted);font-size:11px;white-space:nowrap}
@media(max-width:600px){.proforma-grid{grid-template-columns:1fr 1fr}}

/* Fancybox (zed. tarzı): düğmelerde arka plan yok, kendi SVG'leri yerine Font Awesome maske ikonları. */
.fancybox__container{--f-button-bg:transparent;--f-button-hover-bg:transparent;--f-button-active-bg:transparent;--f-button-shadow:none;--f-button-color:var(--soft);--f-button-hover-color:var(--accent);--f-arrow-bg:transparent;--f-arrow-hover-bg:transparent;--f-arrow-color:var(--soft);--f-arrow-hover-color:var(--accent)}
.fancybox__container .f-button{background:none!important;box-shadow:none!important;color:var(--soft)}
.fancybox__container .f-button:hover:not([disabled]){color:var(--accent)}
.fancybox__container .f-button:focus-visible{outline:2px solid var(--accent);outline-offset:0}
.fancybox__container .f-button svg{display:none}
.fancybox__container .f-button::before{content:'';width:20px;height:20px;background:currentColor;mask:var(--icon) center/contain no-repeat}
.fancybox__container .f-button.is-arrow::before{width:26px;height:26px}
.fancybox__container [data-panzoom-action=zoomIn]{--icon:url('/brand/icons/fontawesome/magnifying-glass-plus.svg')}
.fancybox__container [data-panzoom-action=zoomOut]{--icon:url('/brand/icons/fontawesome/magnifying-glass-minus.svg')}
.fancybox__container [data-panzoom-action=toggleFull]{--icon:url('/brand/icons/fontawesome/expand.svg')}
.fancybox__container [data-thumbs-action]{--icon:url('/brand/icons/fontawesome/table-cells.svg')}
.fancybox__container [data-fancybox-close]{--icon:url('/brand/icons/fontawesome/xmark.svg')}
.fancybox__container .is-arrow{--icon:url('/brand/icons/fontawesome/arrow-right.svg')}
.fancybox__container .is-arrow.is-prev::before{transform:rotate(180deg)}
.fancybox__container .f-counter{font-family:'Geist Mono',monospace;color:var(--soft)}

/* Sipariş formu (/orders/new, /orders/edit). */
.form-heading h1{font-size:22px;font-weight:600;letter-spacing:-.6px;margin-right:auto}
.form-heading .save-button{width:auto;gap:14px;padding:0 18px;height:40px}
.form-error{padding:14px 18px;margin-bottom:16px;color:var(--accent);font-size:13px}
.order-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px;margin-bottom:20px}
.order-form .wide{grid-column:1/-1}
.order-form textarea:not(.wide){min-height:46px}
.order-form .range-button{background:var(--bg)}
.order-form .form-row{display:flex;align-items:center}
.order-form .input-field select{width:100%;height:46px;padding:0 39px 0 44px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:13px;appearance:none}
:is(.order-form,.panel-form) textarea{width:100%;min-height:46px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:13px;resize:vertical;field-sizing:content}
:is(.order-form,.panel-form) :is(select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:0}
.order-form .range-popup{position:absolute;z-index:5;left:0;right:0;top:calc(100% + 6px);margin:0;box-shadow:0 16px 48px #0000004d}
.items-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-bottom:1px solid var(--line)}
.order-items td{vertical-align:middle}
.thumb-cell{width:1%}.note-cell{white-space:normal;max-width:220px;font-size:11px}
.select-thumb{display:grid;place-items:center;width:36px;height:36px;border-radius:6px;background:#fff;overflow:hidden;flex-shrink:0}
.select-thumb img{width:100%;height:100%;object-fit:contain}
.select-option{width:100%;border:0;background:none;color:var(--text);text-align:left}
.select-option[aria-selected=true]{background:color-mix(in srgb,var(--accent) 12%,transparent)}
.select-empty{padding:8px}
.segment.inline{background:transparent;padding:0 4px 0 0}.segment.inline button{height:30px;padding:0 10px}
.proforma-grid.two{grid-template-columns:1fr 1fr}
.form-dialog form>.segment{width:fit-content}
@media(max-width:600px){.order-form{grid-template-columns:1fr}.form-heading h1{font-size:18px}}

/* Fancybox: önceki/sonraki okları yok; geçiş klavye, kaydırma ve küçük resimlerle. */
.fancybox__container .is-arrow{display:none!important}
.proforma-field.wide{grid-column:1/-1}
.segment-row{justify-content:space-between;margin-bottom:4px}
.segment.icons button{width:40px;padding:0;display:grid;place-items:center}.segment.icons .icon{width:15px;height:15px}
/* Peşinat türü seçimi koyu zeminde kalır; açılan liste de tema renginde. */
.form-dialog .field-box select{background-color:transparent;color:var(--text);color-scheme:inherit}
.form-dialog select option{background:var(--surface);color:var(--text)}
.report-table th .icon{width:13px;height:13px;color:var(--muted)}
.report-head .summary-counts{margin:0}

/* Proforma altın düzeni: üst satır yarım, alt satır üçte bir (legacy). */
.proforma-grid.gold{grid-template-columns:repeat(6,minmax(0,1fr))}
.proforma-grid.gold>*{grid-column:span 2}.proforma-grid.gold>:nth-child(-n+2){grid-column:span 3}
/* Özet penceresi sütundur: tablo kalan yüksekliğe sığar, düğmeler hep görünür. */
.summary-dialog[open]{display:flex;flex-direction:column;overflow:hidden}
.summary-dialog .summary-wrap{margin:24px 0;flex:1;min-height:0;max-height:none}
@media(max-width:600px){.proforma-grid.gold>*,.proforma-grid.gold>:nth-child(-n+2){grid-column:span 3}}

/* Sipariş formu düzeni: ayar tam genişlik; müşteri/sorumlu, durum/teslim iki sütun; kaydet en altta. */
.order-form{grid-template-columns:repeat(2,minmax(0,1fr))}
.segment.full{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.segment.full button{height:38px}
.order-form .input-field input{width:100%;height:46px;padding:0 14px 0 44px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:13px}
.order-form .input-field input:focus-visible{outline:2px solid var(--accent);outline-offset:0}
.order-form .input-field select:disabled{opacity:.6;cursor:default}
.form-actions{display:flex;justify-content:flex-end;margin-top:16px}
.form-actions .primary{width:auto;padding:0 24px;height:42px}
.dialog-actions .primary{justify-content:center}
button.select-thumb{padding:0;border:0;cursor:zoom-in}
.items-head .summary-counts{margin:0;font-size:12px}
.items-head .summary-counts .icon{width:12px;height:12px}
@media(max-width:600px){.order-form{grid-template-columns:1fr}}

/* Ürün seçiminde kod büyük harftir (düğme ve liste). */
.product-select .range-text:not(.placeholder){text-transform:uppercase}
/* Liste içi arama kutusu her yerde aynıdır (pencere ve sipariş formu). */
.multi-search{width:100%;height:38px;padding:0 12px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--text);font-size:12px}
.multi-search:focus-visible{outline:2px solid var(--accent);outline-offset:0}
.order-form .range-popup .multi-search{background:var(--surface)}
.form-heading .new-order{width:auto;height:40px;padding:0 18px;justify-content:center;font-size:13px}

/* Dashboard: kartların altında tam genişlik yeni sipariş. */
.new-order-wide{justify-content:center;margin-top:20px;font-size:14px}
/* Sipariş formu kalem özeti (legacy): satır, adet, bileklik, kolye, diğer, ağırlık. */
.items-stats{display:flex;flex-wrap:wrap;gap:6px 22px}
.items-stat{display:flex;flex-direction:column;gap:2px}.items-stat .item-meta{margin:0}.items-stat strong{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}

/* Uyarılar ortada modal gibi görünür; karartmaya tıklamak kapatır. */
.alerts{position:fixed;left:50%;top:50%;z-index:100;display:flex;flex-direction:column;align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 32px);transform:translate(-50%,-50%);pointer-events:none}
.alert{margin:0;padding:18px 24px;min-width:min(320px,calc(100vw - 32px));max-width:min(480px,calc(100vw - 32px));border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--accent);font-size:14px;text-align:center;box-shadow:0 16px 48px #0000004d;overflow-wrap:anywhere;pointer-events:auto;animation:alert-in .25s ease-out}
.alert:empty{display:none}
body:has(.alerts .alert:not([hidden]):not(:empty))::after{content:"";position:fixed;inset:0;z-index:99;background:#000000a6;animation:backdrop-in .2s ease-out}
@keyframes backdrop-in{from{opacity:0}}
@keyframes alert-in{from{opacity:0;transform:scale(.96)}}

@media(min-width:1600px){.metric{padding:26px;height:140px}.metric strong{font-size:46px}}
@media(max-width:1300px){.stages{grid-template-columns:repeat(4,minmax(0,1fr))}.stage:nth-child(4){border-right:0}.stage:nth-child(-n+4){border-bottom:1px solid var(--line)}}
@media(max-width:1150px){th,td{padding-left:18px;padding-right:18px}.app{padding:25px 25px 0}.content{padding-top:30px}.metric{padding:18px 14px;height:108px}.metric strong{font-size:31px}.metric-label{font-size:10px}}
@media(max-width:600px){
  .app{padding:20px 16px 0}.panel-header{gap:12px}.panel-header .brand span{font-size:28px}.panel-header .brand img{width:27px;height:27px}
  .panel-tabs{margin-left:0}.content{padding-top:25px}
  .metrics.sales{margin-top:12px}.metrics{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.metrics>.metric:last-child{grid-column:1/-1}.metric{padding:17px 14px}.metric strong{font-size:32px;margin-top:20px}
  .stages{grid-template-columns:repeat(2,minmax(0,1fr))}.stage{padding:14px 16px 16px}.stage:nth-child(odd){border-right:1px solid var(--line)}.stage:nth-child(even){border-right:0}.stage:nth-child(-n+6){border-bottom:1px solid var(--line)}
  .list-heading{flex-wrap:wrap}.list-heading>.input-field{flex-basis:100%;width:100%}.list-heading>.select-field{flex-basis:auto;width:auto;flex:1}th,td{padding:14px 16px}
  .section-head{padding:16px}.page-footer{margin-top:22px;font-size:12px}.page-footer>span:last-child{font-size:11px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}#view{filter:none;transform:none}}

/* Ürünler: sağ panelde büyük görsel ve küçük tablolar, pencerede kilit anahtarı ve taş satırları. */
.product-hero-image{display:grid;place-items:center;width:100%;height:100%}.product-hero-image img{width:100%;height:100%;object-fit:contain}
.product-hero-image>.icon{width:28px;height:28px}
.panel-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.panel-section-head .item-meta{margin:0;font-weight:400}
.mini-table th,.mini-table td{padding:9px 14px}
.lock-mark{width:13px;height:13px;color:var(--accent)}
.switch-row{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--soft)}
/* Düzenleme modu sağ panelin içindedir; alanlar form penceresindeki kutularla aynıdır. */
.product-form,.panel-form{display:grid;gap:14px;align-content:start}
.product-form .field-box input,.product-form .field-box select{flex:1;min-width:0;height:100%;padding:0 12px;border:0;background:transparent;color:var(--text);font-size:13px;outline:none}
.product-form .field-box select{appearance:none;cursor:pointer}
/* Ürün ve ortak parça kodları yazılırken de büyük harf görünür. */
.product-form .code-input{text-transform:uppercase}
.product-form .panel-section-head{align-items:center;margin-bottom:8px}
.side-panel.wide{width:min(760px,100vw)}
.panel-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.panel-grid:empty{display:none}
.product-main-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 42px 42px;gap:10px;align-items:end}
.icon-toggle{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);color:var(--dim)}
.icon-toggle:hover{border-color:var(--line-hover);color:var(--text)}
.icon-toggle[aria-pressed=true]{border-color:var(--signal);background:var(--signal);color:var(--on-signal)}
.icon-toggle .icon{width:15px;height:15px}
.edit-table td{padding:4px 6px;vertical-align:middle}.edit-table th{padding:9px 10px}
.edit-table td.actions{width:1%;padding-right:8px}
.cell-input{width:100%;min-width:60px;height:34px;padding:0 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);font:inherit;font-size:12px}
.cell-input:hover{border-color:var(--line)}.cell-input:focus{outline:none;border-color:var(--accent);background:var(--bg)}
.cell-input.number{text-align:right}.cell-input.invalid{border-color:#ef4444}
select.cell-input{appearance:none;cursor:pointer}select.cell-input:disabled{opacity:.4;cursor:default}
.empty-cell{padding:12px 10px!important;margin:0}
@media(max-width:600px){.product-main-row{grid-template-columns:1fr 42px 42px}.product-main-row>:first-child{grid-column:1/-1}}
.side-panel-foot.dialog-actions{margin-top:0}
.side-panel-foot.dialog-actions .secondary{height:40px}

/* Ürün görseli (düzenleme modu) ve içe aktarma penceresi. */
.image-edit{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:center}
.image-edit .product-hero-image{width:96px;height:96px;border-radius:var(--radius);background:#fff;overflow:hidden;color:var(--dim)}
.image-edit-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.image-edit-actions .secondary{height:40px;font-size:12px;cursor:pointer}
.file-pick-button:focus-within{outline:2px solid var(--accent);outline-offset:0}
.file-pick{position:relative;display:flex;align-items:center;gap:12px;height:46px;padding:0 15px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--bg);color:var(--muted);font-size:13px;cursor:pointer;overflow:hidden}
.file-pick:hover,.file-pick:focus-within{border-color:var(--line-hover);color:var(--text)}
.file-pick input{position:absolute;inset:0;opacity:0;cursor:pointer}
.file-pick span:not(.icon){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.import-help{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.import-help a{color:var(--accent)}
.import-result{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);font-size:12px;display:grid;gap:6px}
.import-result ul{margin:0;padding-left:18px;color:var(--muted);max-height:160px;overflow:auto}
.import-dialog form>.segment{width:auto}.import-dialog .segment button{flex:1;white-space:nowrap;padding:0 8px}
