/* Kitchen second screen: large type, read-only, same palette and fonts as the order monitor. */
@font-face{font-family:Desk;src:url('assets/dm-sans.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Desk;src:url('assets/manrope.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{color-scheme:light;--paper:#f5f3ed;--white:#fffefa;--ink:#193b30;--muted:#6c776e;--line:#dde2d7;--soft:#edf1e8;--accent:#a64a32;--red:#a63b2f;--shadow:0 8px 28px #193b3005;font-family:Desk,Arial,sans-serif;background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}body{margin:0;min-height:100dvh}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:wait;opacity:.55}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ac553b;outline-offset:3px}a{color:inherit}p{line-height:1.6;margin-top:0}h1,h2,h3{margin-top:0;letter-spacing:-.035em;font-family:Manrope,Arial,sans-serif}[hidden]{display:none!important}
.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}
.skip-link{position:fixed;left:-9999px;top:12px;z-index:100;padding:12px 18px;border-radius:8px;background:var(--ink);color:white}.skip-link:focus{left:12px}
label{display:block;font-weight:700;font-size:13px;margin-bottom:8px}input{width:100%;min-width:0;border:1px solid #c3ccbf;border-radius:8px;padding:12px 14px;background:var(--white);color:var(--ink);font-size:17px;line-height:1.45}
.eyebrow{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.8px;color:var(--muted);margin:0 0 12px}
.small-muted{font-size:12px;color:var(--muted);line-height:1.65;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;border-radius:8px;padding:13px 18px;min-height:50px;font-weight:700;font-size:15px;line-height:1.45;width:100%;margin-top:14px}
.primary{background:var(--ink);color:var(--white)}
.quiet-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 14px;min-height:44px;background:var(--white);color:var(--ink);font-size:13px;border:1px solid var(--line);border-radius:7px;line-height:1.35}
.quiet-button[aria-pressed=true]{background:var(--ink);color:var(--white);border-color:var(--ink)}
.logout-button{border-color:#d9a373;color:#7a3e1a}
.logout-confirm{margin:0 0 16px;padding:16px 18px;border:1px solid #d9a373;border-radius:10px;background:#fbf1e8;font-size:15px}
.logout-confirm p{margin:0 0 12px;line-height:1.55}
.logout-confirm-actions{display:flex;gap:8px;flex-wrap:wrap}
.global-error{margin:0 0 22px;background:#f8e8df;border:1px solid #dfbaa7;padding:14px 18px;border-radius:8px;color:#7d2c20;font-size:15px;line-height:1.6}
.form-error{font-size:14px;color:var(--red);line-height:1.6;margin:13px 0 0}
.kitchen-header{min-height:82px;padding:14px clamp(16px,3vw,40px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px;background:var(--white);flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Manrope,Arial,sans-serif;font-size:22px;font-weight:800;line-height:1.2;letter-spacing:-.8px;flex-shrink:0}
.brand small{display:block;font-family:Desk,Arial,sans-serif;font-weight:400;font-size:12px;letter-spacing:0;color:var(--muted)}
.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--ink);color:var(--white);border-radius:50% 50% 8px 50%;font-family:Georgia,serif;font-size:29px;font-style:italic}
.header-end{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end;flex:1}
.connection-badge{display:inline-flex;align-items:center;gap:7px;font-size:13px;padding:8px 12px;border-radius:30px;background:#edf3e9;white-space:nowrap}
.connection-badge::before{content:'';width:9px;height:9px;border-radius:50%;background:#9aa59c}
.connection-badge[data-state=online]::before{background:#448456}
.connection-badge[data-state=offline]{background:#faebe5;color:var(--red)}
.connection-badge[data-state=offline]::before{background:var(--red)}
.kitchen-clock{font-family:Manrope,Arial,sans-serif;font-size:28px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
#kitchen-tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
#kitchen-content{padding:22px clamp(16px,3vw,40px) 60px;max-width:1500px;margin:0 auto}
.login-wrap{min-height:calc(100dvh - 200px);display:grid;place-items:center;padding:20px 0}
.login-card{width:min(440px,100%);background:var(--white);border:1px solid var(--line);border-top:3px solid var(--ink);border-radius:14px;padding:34px;box-shadow:var(--shadow)}
.login-card h1{font-size:26px;margin-bottom:8px}.login-card p{font-size:15px;color:var(--muted)}
.kitchen-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.kitchen-filters{display:inline-flex;border:1px solid var(--line);border-radius:10px;background:var(--white);overflow:hidden}
.kitchen-filters button{background:transparent;color:var(--ink);font-size:16px;font-weight:700;padding:12px 20px;min-height:50px;border-right:1px solid var(--line)}
.kitchen-filters button:last-child{border-right:0}
.kitchen-filters button[aria-pressed=true]{background:var(--ink);color:var(--white)}
.kitchen-summary{margin:0;font-size:16px;color:var(--muted)}
.kitchen-audience{display:flex;align-items:center;gap:10px;min-width:0}.kitchen-audience label{font-size:15px;margin:0}.kitchen-audience select{max-width:100%;min-height:48px;padding:10px;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:8px;font-size:16px}
.kitchen-notices{border:3px solid var(--red);border-radius:12px;padding:18px;margin-bottom:20px;background:#fff3eb;overflow-wrap:anywhere}.kitchen-notices h2{font-size:24px;margin-bottom:6px}.kitchen-notices>p{font-size:15px;margin-bottom:10px}.team-notice{padding:16px;border-top:1px solid #d9a373}.team-notice h3{font-size:22px;margin-bottom:8px}.team-notice p{font-size:18px;margin-bottom:8px}.team-notice button{min-height:48px;padding:12px 18px;font-size:17px;font-weight:700;color:white;background:var(--red);border-radius:8px}.team-notice[data-type=cancel]{background:#ffe2d6}.kitchen-pause{border:2px solid var(--red)}
.kitchen-notice{margin:0 0 16px;padding:14px 18px;border-radius:10px;background:#faebe5;color:var(--red);font-size:17px;font-weight:700}
.sound-banner{width:100%;margin:0 0 16px;padding:16px;border-radius:10px;background:var(--red);color:var(--white);font-size:18px;font-weight:700;text-align:center}
.kitchen-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px}
.kitchen-empty{grid-column:1/-1;padding:40px 20px;text-align:center;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:20px}
.ticket{background:var(--white);border:1px solid var(--line);border-left:8px solid var(--ink);border-radius:14px;padding:18px 20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}
.ticket[data-method=delivery]{border-left-color:var(--accent)}
.ticket[data-urgency=high]{border-color:var(--red);border-left-color:var(--red);background:#fff7f4}
.ticket[data-urgency=medium]{background:#fffaf0}
.ticket[data-new=true]{box-shadow:0 0 0 4px #d9a373,var(--shadow)}
.ticket[data-done=true]{opacity:.55;border-left-color:#9aa59c}
.ticket[data-done=true] .ticket-time{text-decoration:line-through}
.ticket-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.ticket-number{font-size:16px;color:var(--muted);margin:0;font-variant-numeric:tabular-nums}
.ticket-method{display:inline-block;margin-top:6px;padding:5px 10px;border-radius:30px;background:var(--soft);font-size:14px;font-weight:700}
.ticket[data-method=delivery] .ticket-method{background:#fbe9e3;color:var(--accent)}
.ticket-time{font-family:Manrope,Arial,sans-serif;font-size:36px;font-weight:700;line-height:1;letter-spacing:-.03em;margin:0;text-align:right;font-variant-numeric:tabular-nums}
.ticket-countdown{display:block;font-family:Desk,Arial,sans-serif;font-size:20px;font-weight:700;letter-spacing:0;margin-top:6px;color:var(--muted)}
.ticket[data-urgency=medium] .ticket-countdown{color:#8a5a1d}
.ticket[data-urgency=high] .ticket-countdown{color:var(--red)}
.ticket-guest{margin:0;font-size:18px}
.ticket-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ticket-item{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);cursor:pointer}
.ticket-item input{width:26px;min-width:26px;height:26px;padding:0;margin-top:3px;accent-color:var(--ink)}
.ticket-item>div{flex:1;min-width:0;overflow-wrap:anywhere}
.ticket-item[data-checked=true]{opacity:.5}
.ticket-item[data-checked=true] .item-name{text-decoration:line-through}
.item-name{display:block;font-size:22px;font-weight:700;line-height:1.3}
.item-variant{display:block;font-size:20px;color:var(--ink)}
.item-extras{display:block;font-size:20px;color:#5a4a1f}
.item-note{display:block;font-size:20px;font-weight:700;color:var(--red);margin-top:4px}
.ticket-actions{display:flex;justify-content:flex-end}
.ticket-done{min-height:50px;padding:10px 22px;font-size:17px;font-weight:700;border-radius:10px;background:var(--ink);color:var(--white)}
.ticket[data-done=true] .ticket-done{background:var(--white);color:var(--ink);border:1px solid var(--line)}
@media(max-width:740px){
  .kitchen-header{padding:12px 16px;gap:10px}.brand{font-size:20px}.kitchen-clock{font-size:24px}
  .header-end{width:100%;justify-content:space-between}
  #kitchen-tools{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .quiet-button{font-size:12px;padding:8px;min-height:42px}
  #kitchen-content{padding:16px 16px 50px}
  .kitchen-list{grid-template-columns:minmax(0,1fr)}
  .kitchen-filters{width:100%}.kitchen-filters button{flex:1;padding:12px 8px}
  .kitchen-audience{width:100%;flex-wrap:wrap}.kitchen-audience select{flex:1}.kitchen-notices{padding:12px}.team-notice{padding:14px 0}.team-notice button{width:100%}
  .login-card{padding:26px}
  .ticket-time{font-size:30px}
}
@media(max-width:900px){
  .kitchen-header{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}
  .brand{min-width:0;width:100%;font-size:21px}.brand small{font-size:13px}
  .header-end{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;min-width:0;flex:none;justify-content:stretch}
  .connection-badge{justify-self:start;max-width:100%;font-size:13px;white-space:normal}
  .kitchen-clock{justify-self:end;font-size:26px}
  #kitchen-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-column:1/-1;width:100%;gap:6px;justify-content:stretch}
  #kitchen-tools .quiet-button{min-width:0;width:100%;min-height:48px;font-size:13px;padding:10px 6px;line-height:1.35;text-align:center;white-space:normal;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:no-preference){
  .ticket[data-new=true]{animation:ticket-pop 1.2s ease-out 3}
  @keyframes ticket-pop{0%,100%{box-shadow:0 0 0 4px #d9a373,var(--shadow)}50%{box-shadow:0 0 0 10px #d9a37380,var(--shadow)}}
}
