
.ob-adm-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
#ob-adisyon{position:fixed;inset:0;z-index:2147483635;background:#f5f7fb;color:#14243e;overflow-y:auto;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
#ob-adisyon *{box-sizing:border-box}
#ob-adisyon .ob-shell{max-width:1280px;margin:auto;padding:20px 16px 70px}
#ob-adisyon .ob-head,#ob-adisyon .ob-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
#ob-adisyon .ob-head{margin-bottom:18px}
#ob-adisyon h2{font-size:23px;margin:3px 0}
#ob-adisyon h3{font-size:17px;margin:0 0 12px}
#ob-adisyon p{margin:9px 0 15px}
#ob-adisyon .ob-muted{font-size:12px;color:#67778d}
#ob-adisyon .ob-tabs{display:flex;gap:8px;overflow:auto;margin:16px 0}
#ob-adisyon .ob-btn{background:white;border:1px solid #dbe3ef;border-radius:10px;padding:11px 13px;color:#14243e;font-weight:700;cursor:pointer}
#ob-adisyon .ob-btn.active,#ob-adisyon .ob-btn.primary{background:#172a46;border-color:#172a46;color:white}
#ob-adisyon .ob-btn.danger{color:#b12a41}
#ob-adisyon .ob-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
#ob-adisyon .ob-card{border:1px solid #e3e9f2;background:white;border-radius:16px;padding:18px;min-width:0}
#ob-adisyon .ob-card strong.metric{font-size:22px;display:block;margin-top:6px;overflow-wrap:anywhere}
#ob-adisyon .ob-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}
#ob-adisyon .ob-table{border:1px solid #dbe3ec;background:white;border-radius:13px;padding:15px 5px;min-height:92px;text-align:center;color:#253348;cursor:pointer}
#ob-adisyon .ob-table b,#ob-adisyon .ob-table small{display:block}
#ob-adisyon .ob-table b{margin:6px 0}
#ob-adisyon .ob-table small{font-size:11px;color:#637a8d}
#ob-adisyon .ob-table.open{background:#e8f9ef;border-color:#66bb90}
#ob-adisyon .ob-cols{display:grid;grid-template-columns:1.1fr .9fr;gap:12px;margin-top:14px}
#ob-adisyon .ob-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:470px;overflow:auto}
#ob-adisyon .ob-products .ob-btn{text-align:left}
#ob-adisyon .ob-entry{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 0;border-bottom:1px solid #edf1f6}
#ob-adisyon .ob-entry:last-child{border:0}
#ob-adisyon .ob-field{display:grid;gap:5px;margin:10px 0;color:#42536a;font-size:12px;font-weight:700}
#ob-adisyon .ob-field input,#ob-adisyon .ob-field select,#ob-adisyon .ob-field textarea{border:1px solid #cbd5e1;border-radius:9px;padding:10px;color:#14243e;background:white;width:100%;font:inherit}
#ob-adisyon .ob-empty{padding:24px;text-align:center;border:1px dashed #d4dce8;border-radius:12px;color:#718198;font-size:13px}
#ob-adisyon .ob-total{font-size:23px;font-weight:800;margin:15px 0}
#ob-adisyon .ob-product-form{position:fixed;z-index:11;inset:auto 12px 12px;max-width:490px;max-height:85vh;overflow:auto;margin:auto;box-shadow:0 15px 65px #142a4660}
#ob-adisyon-message{position:fixed;z-index:2147483647;bottom:18px;left:50%;transform:translateX(-50%);background:#173959;color:white;padding:12px 16px;border-radius:10px;max-width:90vw}
#ob-adisyon-message.error{background:#ae304c}
@media(max-width:900px){#ob-adisyon .ob-grid{grid-template-columns:repeat(5,minmax(0,1fr))}#ob-adisyon .ob-cols{grid-template-columns:1fr}}
@media(max-width:550px){#ob-adisyon .ob-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}#ob-adisyon .ob-shell{padding:12px 9px 55px}#ob-adisyon .ob-card{padding:12px}#ob-adisyon .ob-stats{gap:6px}#ob-adisyon .ob-card strong.metric{font-size:17px}#ob-adisyon h2{font-size:19px}}

/* Tek alan: role-specific operational layout */
.ob-portal-home{min-height:70vh;max-width:960px;margin:36px auto;padding:22px;background:#f5f7fb;border-radius:22px;color:#152841;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.ob-portal-home header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:30px}
.ob-portal-home header h1{font-size:clamp(24px,5vw,36px);margin:8px 0}
.ob-portal-home header small{font-size:12px;letter-spacing:.09em;color:#67778d;font-weight:800}
.ob-portal-venues{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.ob-portal-venue{background:#fff;text-align:left;border:1px solid #dce4ef;border-radius:18px;padding:25px;cursor:pointer;box-shadow:0 6px 20px #0e243908;color:#14243e}
.ob-portal-venue span,.ob-portal-venue strong{display:block;font-size:17px;margin:8px 0}
.ob-portal-venue strong{color:#165a9e}
#ob-adisyon .ob-workspace-title{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid #e3e9f2;border-radius:16px;padding:16px;margin:12px 0}
#ob-adisyon .ob-workspace-title h3{font-size:22px;margin:6px 0 0}
#ob-adisyon .ob-workspace-title small{font-size:11px;font-weight:800;letter-spacing:.08em;color:#697e9a}
#ob-adisyon .ob-live-label{font-size:12px;color:#14714a;font-weight:700}
#ob-adisyon .ob-kds-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:20px 0}
#ob-adisyon .ob-kds-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
#ob-adisyon .ob-kds-column{min-height:320px;border:1px solid #e1e7ef;background:#eff2f7;border-radius:18px;padding:12px}
#ob-adisyon .ob-kds-column-head{display:flex;justify-content:space-between;align-items:center;padding:10px 6px 14px}
#ob-adisyon .ob-kds-column-head h4{font-size:18px;margin:0}
#ob-adisyon .ob-kds-column-head b{min-width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#fff}
#ob-adisyon .ob-stage-new .ob-kds-column-head{color:#a24616}
#ob-adisyon .ob-stage-preparing .ob-kds-column-head{color:#174f8c}
#ob-adisyon .ob-stage-ready .ob-kds-column-head{color:#147346}
#ob-adisyon .ob-kds-ticket{background:#fff;border-radius:14px;padding:18px;margin-bottom:10px;border:1px solid #dae3ee;box-shadow:0 4px 12px rgba(8,30,52,.04)}
#ob-adisyon .ob-kds-ticket-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px}
#ob-adisyon .ob-kds-ticket-head small{font-size:12px;color:#758397}
#ob-adisyon .ob-kds-product{font-size:21px;font-weight:800;line-height:1.3;margin:17px 0}
#ob-adisyon .ob-kds-note{background:#fff5dc;color:#694400;padding:10px;border-radius:9px;overflow-wrap:anywhere}
#ob-adisyon .ob-kds-action{width:100%;min-height:52px;font-size:15px}
#ob-adisyon .ob-kds-delayed{border:2px solid #e9a040}
#ob-adisyon .ob-tabs{scrollbar-width:thin;padding:3px 0}
#ob-adisyon .ob-tabs .ob-btn{white-space:nowrap;min-height:43px}
#ob-adisyon button:focus-visible,.ob-portal-venue:focus-visible{outline:3px solid #2680c6;outline-offset:2px}
@media(max-width:1100px){#ob-adisyon .ob-kds-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:690px){#ob-adisyon .ob-kds-grid{grid-template-columns:1fr}#ob-adisyon .ob-kds-column{min-height:160px}#ob-adisyon .ob-kds-ticket{padding:16px}#ob-adisyon .ob-kds-product{font-size:19px}#ob-adisyon .ob-workspace-title h3{font-size:19px}.ob-portal-home{margin:10px;padding:15px}.ob-portal-home header{flex-wrap:wrap}}

#ob-adisyon .ob-tool-form{display:grid;gap:13px;margin-top:16px;padding:20px;background:#f7f9fd;border:1px solid #e3e9f2;border-radius:16px;max-width:680px}
#ob-adisyon .ob-tool-form h4{font-size:19px;margin:0}
#ob-adisyon .ob-tool-form label{display:grid;gap:6px;font-size:14px;font-weight:700;color:#43536a}
#ob-adisyon .ob-tool-form select,#ob-adisyon .ob-tool-form input{width:100%;min-height:50px;border-radius:10px;border:1px solid #c6d2e2;background:white;padding:10px;font:inherit}
#ob-adisyon .ob-tool-form button[type=submit]{min-height:51px}
#ob-adisyon #ob-split-results{background:white;border-radius:12px;padding:6px 12px}
@media(max-width:600px){#ob-adisyon .ob-tool-form{padding:13px}}

#ob-pin-admin{position:fixed;inset:0;z-index:2147483644;background:#f6f8fb;color:#1b2b44;overflow-y:auto;font-family:system-ui,-apple-system,sans-serif}
#ob-pin-admin *{box-sizing:border-box}
#ob-pin-admin .ob-pin-admin-shell{max-width:920px;margin:20px auto 70px;padding:24px;background:#fff;border-radius:20px;box-shadow:0 8px 40px #162a4116}
#ob-pin-admin header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:24px}
#ob-pin-admin small{font-weight:800;font-size:12px;color:#708198}
#ob-pin-admin h2{font-size:25px;margin:4px 0}
#ob-pin-admin h3{font-size:18px}
#ob-pin-admin .ob-btn{border:1px solid #d5deea;background:#fff;color:#1b2b44;padding:12px 16px;border-radius:10px;font-weight:700;cursor:pointer}
#ob-pin-admin .ob-btn.primary{background:#172a46;color:#fff}
#ob-pin-admin .ob-btn.danger{color:#b32c48}
#ob-pin-admin .ob-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
#ob-pin-admin .ob-pin-admin-status{display:flex;gap:18px;flex-wrap:wrap;background:#f6f8fc;border-radius:15px;padding:10px 20px;margin:15px 0}
#ob-pin-admin .ob-pin-create,#ob-pin-admin .ob-pin-devices{border-top:1px solid #e3e9f2;margin:24px 0;padding-top:18px}
#ob-pin-admin select{min-height:44px;border:1px solid #cbd5e1;border-radius:9px;padding:10px;background:#fff}
#ob-pin-admin .ob-pin-generated{padding:20px;border-radius:16px;background:#edf9f3;margin:16px 0}
#ob-pin-admin .ob-pin-code{font-family:ui-monospace,monospace;font-weight:900;letter-spacing:.1em;font-size:clamp(16px,4vw,28px);margin:15px 0;overflow-wrap:anywhere}
#ob-pin-admin .ob-entry{display:flex;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid #edf2f7;flex-wrap:wrap}
#ob-pin-admin .ob-pin-hint{color:#6a7b91;font-size:13px}
@media(max-width:580px){#ob-pin-admin .ob-pin-admin-shell{padding:16px;margin:8px;border-radius:14px}}

/* Registered OynaBak accounts: one workspace for waiter, kitchen and bar. */
#ob-adisyon .ob-loop-alarm{background:#fff0ed;border:2px solid #ce3c42;color:#8f242a;
  padding:16px 20px;border-radius:15px;display:flex;justify-content:space-between;
  align-items:center;gap:15px;flex-wrap:wrap;margin:16px 0;
  animation:ob-loop-pulse 1.5s infinite}
#ob-adisyon .ob-loop-alarm>div{display:grid;gap:4px}
#ob-adisyon .ob-loop-alarm b{font-size:19px}
#ob-adisyon .ob-loop-alarm small{font-size:12px}
#ob-adisyon .ob-loop-alarm button{background:#ae3037;color:#fff;min-width:150px;
  min-height:48px;border:none;font-size:15px}
@keyframes ob-loop-pulse{50%{box-shadow:0 0 0 5px rgba(206,60,66,.12)}}
#ob-adisyon .ob-entry button[data-ob-waiter-done]{min-height:48px}
#ob-adisyon .ob-tabs{position:sticky;top:0;z-index:6;background:#f5f7fc;
  padding:9px 0;flex-wrap:nowrap;overflow-x:auto}
#ob-adisyon .ob-btn:focus-visible{outline:3px solid #2a76b8;outline-offset:2px}
.menu-admin-cat .menu-cat-station,.menu-admin-item .menu-item-station{
  width:100%;min-height:44px;padding:9px;border:1px solid #ced7e1;
  border-radius:9px;background:#fff;color:#25344b;font:inherit}
@media(max-width:690px){
 #ob-adisyon .ob-loop-alarm button{width:100%}
 #ob-adisyon .ob-loop-alarm b{font-size:17px}
 #ob-adisyon .ob-entry:has([data-ob-waiter-done]){align-items:flex-start}
}

/* Per-business table floor plan: drag, approve, preserve table numbers. */
#ob-adisyon .ob-floor{background:#fff;border:1px solid #e1e7ef;border-radius:17px;padding:16px}
#ob-adisyon .ob-floor-header{display:flex;justify-content:space-between;align-items:flex-start;
 gap:16px;flex-wrap:wrap;margin-bottom:14px}
#ob-adisyon .ob-floor-header h3{margin:0 0 6px;font-size:19px}
#ob-adisyon .ob-floor-header .ob-muted{margin:0;max-width:540px}
#ob-adisyon .ob-floor-actions{display:flex;gap:9px;flex-wrap:wrap}
#ob-adisyon .ob-floor-actions>.ob-btn{min-height:46px}
#ob-adisyon .ob-floor-scroll{max-width:100%;overflow-x:auto;overflow-y:hidden;border-radius:15px}
#ob-adisyon .ob-floor-canvas{--ob-floor-table-size:106px;position:relative;
 min-width:625px;width:100%;border:2px solid #d9e2ec;border-radius:15px;
 background-color:#f2f5f9;
 background-image:linear-gradient(to right,rgba(119,143,173,.11) 1px,transparent 1px),
 linear-gradient(to bottom,rgba(119,143,173,.11) 1px,transparent 1px);
 background-size:28px 28px;overflow:hidden;touch-action:pan-y}
#ob-adisyon .ob-floor-canvas.is-editing{border-style:dashed;border-color:#427dc2}
#ob-adisyon .ob-floor-entrance{position:absolute;left:18px;bottom:0;z-index:1;
 background:#dce8f5;color:#38516e;border-radius:10px 10px 0 0;
 padding:6px 15px;font-size:11px;font-weight:800;pointer-events:none}
#ob-adisyon .ob-floor-table{position:absolute;z-index:2;width:var(--ob-floor-table-size);
 height:var(--ob-floor-table-size);min-height:0;border:2px solid #c8d7e6;border-radius:16px;
 background:#fff;color:#253b55;display:flex;flex-direction:column;align-items:center;
 justify-content:center;gap:6px;box-shadow:0 3px 12px rgba(22,41,70,.08);
 cursor:pointer;user-select:none;-webkit-user-select:none;padding:8px;font:inherit}
#ob-adisyon .ob-floor-table b{font-size:15px;line-height:1.1}
#ob-adisyon .ob-floor-table small{font-size:11px;line-height:1.2;color:#64788d;
 text-align:center;overflow-wrap:anywhere}
#ob-adisyon .ob-floor-table.open{background:#e9f9f0;border-color:#46ab78}
#ob-adisyon .ob-floor-table.is-draggable{cursor:grab;touch-action:none;
 border-style:dashed;border-color:#407dc8;background:#f8fcff}
#ob-adisyon .ob-floor-table.is-moving{cursor:grabbing;z-index:10;
 border-style:solid;box-shadow:0 8px 30px rgba(23,73,143,.30);transform:scale(1.04)}
#ob-adisyon .ob-floor-table:focus-visible{outline:3px solid #257fc6;outline-offset:3px}
@media(max-width:650px){
 #ob-adisyon .ob-floor{padding:11px}
 #ob-adisyon .ob-floor-header{gap:11px}
 #ob-adisyon .ob-floor-actions{width:100%}
 #ob-adisyon .ob-floor-actions .ob-btn{flex:1;min-height:48px;padding:9px}
 #ob-adisyon .ob-floor-canvas{min-width:625px}
}
/* Alarm controls must stay visible while an incoming order is waiting. */
#ob-adisyon .ob-head [data-ob-enable-alerts]{min-height:48px}
#ob-adisyon .ob-loop-alarm{position:sticky;top:0;z-index:8}


/* 27 Oct 2026: unified accessible operations design */
#ob-adisyon .ob-ops-tools{margin-top:15px;border-left:4px solid #e76a32}
#ob-adisyon .ob-ops-tools .ob-row{justify-content:flex-start}
#ob-adisyon .ob-report-actions{justify-content:flex-start;margin:18px 0 6px}
#ob-adisyon #ob-extra-results:empty{display:none}
#ob-adisyon #ob-extra-results:not(:empty){margin-top:17px;border-top:1px solid #e6eaf1;padding-top:15px}
#ob-adisyon .ob-btn{min-height:44px;transition:background-color .15s,border-color .15s,box-shadow .15s}
#ob-adisyon .ob-btn:not(:disabled):hover{border-color:#a7bad2;box-shadow:0 3px 10px #17263c0e}
#ob-adisyon .ob-btn.primary:not(:disabled):hover{background:#284d74}
#ob-adisyon .ob-btn:disabled{opacity:.62;cursor:wait}
#ob-adisyon .ob-stats .ob-card{box-shadow:0 3px 14px #15284008}
#ob-adisyon .ob-kds-ticket{border-left:4px solid #cbd5e1}
#ob-adisyon .ob-stage-new .ob-kds-ticket{border-left-color:#e76a32}
#ob-adisyon .ob-stage-preparing .ob-kds-ticket{border-left-color:#3678b7}
#ob-adisyon .ob-stage-ready .ob-kds-ticket{border-left-color:#188158}
#ob-adisyon .ob-kds-ticket.ob-kds-delayed{border-color:#d19b50;border-left-color:#b74820;background:#fffaf1}
@media(max-width:600px){
 #ob-adisyon .ob-ops-tools .ob-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 #ob-adisyon .ob-ops-tools .ob-btn{padding:12px 8px;min-height:49px}
 #ob-adisyon .ob-report-actions .ob-btn{flex:1}
 #ob-adisyon .ob-head .ob-btn{min-height:48px}
}
