/* Staff site: base styles and the sign-in screen. Editor styles are in editor-base.css
   (copied from the public site so the editor looks the same). */
[hidden]{display:none!important}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{background:var(--ink);color:var(--ivory);font-family:var(--sans);font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--serif);font-weight:300;line-height:1.15}
button{font:inherit}
a{color:inherit}
:focus-visible{outline:2px solid var(--ember-hot);outline-offset:2px}

/* sign-in, new password, no-access and loading screens */
.gate{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.gate form,.gate .card{width:min(420px,100%);display:grid;gap:16px;padding:40px 32px;background:var(--ink-2);border:1px solid var(--line-dark)}
.gate .mark{font-family:var(--serif);font-size:2.4rem;letter-spacing:.34em;text-align:center}
.gate .mark span{display:block;font-family:var(--sans);font-size:.62rem;letter-spacing:.34em;text-transform:uppercase;color:var(--ember-hot);margin-top:4px}
.gate p{font-size:.92rem;color:var(--soft-dark)}
.gate label{display:grid;gap:6px;font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:var(--soft-dark)}
.gate input{font:inherit;font-size:1rem;letter-spacing:0;text-transform:none;padding:11px 12px;border:1px solid rgba(243,238,229,.25);background:transparent;color:var(--ivory);border-radius:2px}
.gate input:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.gate .primary{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;padding:14px 18px;border:1px solid var(--ember);background:var(--ember);color:var(--ivory);cursor:pointer}
.gate .primary:hover{background:var(--ember-hot);color:var(--ink)}
.gate .primary:disabled{opacity:.5;cursor:default}
.gate .row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.gate .link{background:none;border:0;padding:0;color:var(--ember-hot);cursor:pointer;font-size:.88rem}
.gate .msg{min-height:1.3em;color:var(--ember-hot);font-size:.9rem}

/* staff app shell: the editor fills the screen */
.ed{position:relative;inset:auto;height:100%}
.ed-nav{display:flex;gap:4px;flex-wrap:wrap}
.ed-nav button{background:none;border:0;border-bottom:1px solid transparent;color:var(--soft-dark);padding:6px 10px;font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;cursor:pointer}
.ed-nav button[aria-current="true"]{color:var(--ivory);border-bottom-color:var(--ember-hot)}
.ed-nav button:disabled{opacity:.4;cursor:default}
.ed-who{font-size:.72rem;color:var(--soft-dark);text-align:right;line-height:1.3}
.ed-who b{display:block;font-weight:400;color:var(--ivory)}
.ed-actions a.ed-btn{text-decoration:none;display:inline-flex;align-items:center}
.ed-banner{margin:0 0 26px;padding:18px 20px;border:1px solid var(--ember);background:#fbf6ef;display:grid;gap:12px;max-width:760px}
.ed-banner p{color:var(--text)}
.ed-banner .ed-btn{justify-self:start}
.ed-readonly{margin:0 0 20px;padding:10px 14px;background:var(--ivory);border-left:3px solid var(--stone);color:var(--text);font-size:.88rem;max-width:760px}
@media (max-width:820px){.ed-who{display:none}}

/* wine pairing suggestions (by-the-glass list) */
.ed-ac{position:relative}
.ed-ac-list{position:absolute;left:0;right:0;top:100%;z-index:30;margin-top:4px;max-height:320px;overflow:auto;background:#fff;border:1px solid var(--line);box-shadow:0 14px 34px rgba(15,18,21,.16)}
.ed-ac-list span,.ed-ac-list div{letter-spacing:0!important;text-transform:none!important}
.ed-ac-list .ed-ac-head{position:sticky;top:0;padding:8px 12px;background:var(--ivory);border-bottom:1px solid var(--line);font-size:.58rem;letter-spacing:.26em!important;text-transform:uppercase!important;color:var(--ember)}
.ed-ac-opt{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 14px;padding:9px 12px;cursor:pointer;border-bottom:1px solid rgba(15,18,21,.06)}
.ed-ac-opt.on{background:#fbf6ef;box-shadow:inset 3px 0 0 var(--ember)}
.ed-ac-list .ed-ac-name{font-family:var(--serif);font-size:1.02rem;line-height:1.3;color:var(--ink)!important}
.ed-ac-list .ed-ac-price{font-family:var(--serif);font-size:1rem;color:var(--ink)!important;white-space:nowrap}
.ed-ac-list .ed-ac-price::after{content:" glass";font-family:var(--sans);font-size:.7rem;color:var(--stone)}
.ed-ac-list .ed-ac-meta{grid-column:1/-1;font-size:.72rem;color:var(--stone)!important}

/* ---------- top navigation links ---------- */
.ed-nav a{color:var(--soft-dark);padding:6px 10px;font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid transparent}
.ed-nav a[aria-current="true"]{color:var(--ivory);border-bottom-color:var(--ember-hot)}
.ed-nav a:hover{color:var(--ivory)}
.view{flex:1;min-height:0;overflow:auto;background:var(--paper);color:var(--ink)}

/* ---------- home ---------- */
.home-in{max-width:1080px;margin:0 auto;padding:56px 32px 80px}
.home-eyebrow{font-size:.66rem;letter-spacing:.3em;text-transform:uppercase;color:var(--ember)}
.home-title{font-size:clamp(2.4rem,5vw,3.6rem);margin:8px 0 36px}
.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.tile{display:grid;gap:8px;align-content:start;padding:26px 24px 22px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:border-color .2s,box-shadow .2s,transform .2s}
a.tile:hover,a.tile:focus-visible{border-color:var(--ember);box-shadow:0 12px 30px rgba(15,18,21,.08);transform:translateY(-2px)}
.tile-k{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ember)}
.tile-t{font-family:var(--serif);font-size:1.7rem;line-height:1.15}
.tile-d{font-size:.9rem;color:#4a4e53;line-height:1.55}
.tile-m{margin-top:6px;font-size:.72rem;letter-spacing:.06em;color:var(--stone)}
.tile-m:empty{display:none}
.tile.soon{background:transparent;border-style:dashed;color:var(--stone)}
.tile.soon .tile-k{color:var(--stone)}
.tile.soon .tile-d{color:var(--stone)}
.home-links{margin-top:34px;display:flex;gap:24px;flex-wrap:wrap}
.home-links a{font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--ember);text-decoration:none;border-bottom:1px solid rgba(176,112,63,.35);padding-bottom:3px}

/* ---------- schedule ---------- */
.sc-in{max-width:1400px;margin:0 auto;padding:28px 32px 80px}
.sc-titlebar{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}
.sc-eyebrow{font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:var(--ember)}
.sc-week{font-size:clamp(1.7rem,3.4vw,2.4rem);margin-top:4px}
.sc-weeknav{display:flex;gap:6px}
.sc-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:22px 0 18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.sc-tabs{display:flex;gap:2px}
.sc-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:8px 12px;font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone);cursor:pointer}
.sc-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ember)}
.sc-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sc-pill{display:inline-block;padding:4px 10px;border:1px solid var(--line);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone);white-space:nowrap;background:#fff}
.sc-pill.ok{color:#2f6b3a;border-color:rgba(47,107,58,.35);background:#f1f7f0}
.sc-pill.warn{color:#9a5a1c;border-color:rgba(176,112,63,.45);background:#fbf3ea}
.sc-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);background:#fff}
.sc-grid{width:100%;border-collapse:collapse;min-width:980px}
.sc-grid th{position:sticky;top:0;background:var(--ivory);font-weight:400;text-align:left;padding:10px 10px;border-bottom:1px solid var(--line);vertical-align:bottom}
.sc-grid th.today{box-shadow:inset 0 -2px 0 var(--ember)}
.sc-dn{display:block;font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone)}
.sc-dd{display:block;font-family:var(--serif);font-size:1.15rem}
.sc-name-h,.sc-hrs-h{font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone)}
.sc-group td{padding:14px 12px 6px;font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ember);background:#fcfbf8;border-bottom:1px solid var(--line)}
.sc-grid td{border-bottom:1px solid rgba(15,18,21,.07);vertical-align:top}
.sc-name{padding:12px;min-width:170px;border-right:1px solid rgba(15,18,21,.07)}
.sc-ename{display:block;font-family:var(--serif);font-size:1.12rem;line-height:1.25}
.sc-warn{display:block;font-size:.7rem;color:#a3392b;margin-top:2px}
.sc-warn:empty{display:none}
.sc-cell{padding:6px;min-width:112px;border-right:1px solid rgba(15,18,21,.05)}
.sc-shift{display:block;width:100%;text-align:left;margin-bottom:4px;padding:6px 8px;background:#fbf6ef;border:1px solid rgba(176,112,63,.3);border-left:3px solid var(--ember);cursor:pointer;font:inherit;color:var(--ink)}
.sc-shift:hover{background:#f6ece0}
.sc-st{display:block;font-size:.86rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.sc-sr,.sc-sn{display:block;font-size:.7rem;color:var(--stone);line-height:1.3}
.sc-add{display:block;width:100%;padding:4px 0;background:none;border:1px dashed transparent;color:var(--stone);cursor:pointer;font-size:1rem;line-height:1}
.sc-cell:hover .sc-add,.sc-add:focus-visible,.sc-cell.empty .sc-add{border-color:rgba(15,18,21,.15)}
.sc-add:hover{color:var(--ember);border-color:var(--ember)}
.sc-cell:not(.empty) .sc-add{opacity:.55}
.sc-hrs{padding:12px;font-family:var(--serif);font-size:1.05rem;white-space:nowrap;text-align:right}
.sc-foot td{padding:10px;font-size:.78rem;color:var(--stone);background:#fcfbf8;text-align:center}
.sc-foot td:first-child{text-align:left;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase}
tr.inactive .sc-ename,tr.inactive input{opacity:.55}
.sc-help{margin-top:14px;font-size:.84rem;color:var(--stone)}
.sc-empty{padding:26px 4px;color:var(--stone)}

/* employees tab */
.sc-ptools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.sc-file{position:relative;overflow:hidden;cursor:pointer}
.sc-file input{position:absolute;inset:0;opacity:0;cursor:pointer}
.sc-link{font-size:.84rem;color:var(--ember)}
.sc-ptable{width:100%;border-collapse:collapse;min-width:760px}
.sc-ptable th{text-align:left;font-weight:400;font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone);padding:10px 12px;background:var(--ivory);border-bottom:1px solid var(--line)}
.sc-ptable td{padding:8px 12px;border-bottom:1px solid rgba(15,18,21,.07)}
.sc-ptable td.c{text-align:center}.sc-ptable td.r{text-align:right}
.sc-ptable input[type=text],.sc-ptable input[type=tel]{width:100%;font:inherit;font-size:.95rem;padding:8px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.sc-ptable input:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.sc-ptable input[type=checkbox],.sc-check input{width:18px;height:18px;accent-color:var(--ember)}

/* dialogs */
.sc-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px 16px;background:rgba(15,18,21,.55);overflow:auto}
.sc-card{width:min(520px,100%);background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:0 30px 70px rgba(0,0,0,.3)}
.sc-modal.wide .sc-card{width:min(860px,100%)}
.sc-card-h{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;background:var(--ink);color:var(--ivory)}
.sc-card-h h2{font-size:1.5rem}
.sc-x{background:none;border:0;color:var(--soft-dark);font-size:1.1rem;cursor:pointer;padding:4px 8px}
.sc-card-b{padding:20px 22px;display:grid;gap:14px}
.sc-card-f{display:flex;gap:8px;align-items:center;padding:14px 22px;border-top:1px solid var(--line);background:#fff}
.sc-sp{flex:1}
.sc-sub{font-size:.9rem;color:#4a4e53}
.sc-f{display:grid;gap:5px}
.sc-f span{font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone)}
.sc-f input{font:inherit;font-size:1rem;padding:10px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%}
.sc-f input:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.sc-f input:disabled{background:#f1eee8;color:var(--stone)}
.sc-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sc-check{display:flex;gap:10px;align-items:center;font-size:.92rem}
.sc-quick{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.sc-quick > span{font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone);margin-right:4px}
.sc-msg{min-height:1.2em;color:#a3392b;font-size:.88rem}
.sc-texts{display:grid;gap:12px}
.sc-text{border:1px solid var(--line);background:#fff}
.sc-text-h{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid rgba(15,18,21,.07)}
.sc-text-h b{font-family:var(--serif);font-weight:400;font-size:1.15rem;margin-right:10px}
.sc-ph{font-size:.82rem;color:var(--stone)}
.sc-pre{margin:0;padding:12px 14px;font-family:var(--sans);font-size:.88rem;line-height:1.55;white-space:pre-wrap;color:var(--text);background:#fcfbf8}
.sc-text-f{display:flex;justify-content:flex-end;gap:8px;padding:10px 14px}
.sc-text-f a.ed-btn{text-decoration:none}
@media (max-width:820px){
  .home-in{padding:34px 16px 60px}
  .sc-in{padding:20px 16px 60px}
  .sc-actions{margin-left:0;width:100%}
}

/* print: just the week grid */
@media print{
  .ed-bar,.sc-weeknav,.sc-bar,.sc-help,.sc-add,.sc-modal{display:none!important}
  body,.ed,.view{background:#fff;height:auto;overflow:visible}
  .ed{display:block}
  .sc-in{padding:0;max-width:none}
  .sc-scroll{overflow:visible;border:0}
  .sc-grid{min-width:0;font-size:11px}
  .sc-grid th{position:static}
  .sc-shift{border:1px solid #999;background:#fff;padding:3px 5px}
  #viewHome,#viewMenu{display:none!important}
}
.sc-ptable{min-width:1040px}
.sc-ptable input[type=email]{width:100%;font:inherit;font-size:.95rem;padding:8px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.sc-login{font-size:.78rem;color:var(--stone);white-space:nowrap}
.sc-login.ok{color:#2f6b3a}
.sc-teamlink{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 18px;align-items:center;margin:0 0 18px;padding:14px 18px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--ember)}
.sc-teamlink a{display:block;font-family:var(--serif);font-size:1.15rem;color:var(--ink);word-break:break-all}
.sc-teamlink p{grid-column:1;font-size:.84rem;color:var(--stone)}
.sc-teamlink .ed-btn{grid-column:2;grid-row:1/3;align-self:center}
@media (max-width:820px){.sc-teamlink{grid-template-columns:1fr}.sc-teamlink .ed-btn{grid-column:1;grid-row:auto;justify-self:start}}

/* ---------- week / month toggle ---------- */
.sc-weeknav{align-items:center;flex-wrap:wrap}
.sc-viewtog{display:inline-flex;border:1px solid var(--line);margin-right:10px;background:#fff}
.sc-viewtog button{background:none;border:0;padding:7px 14px;font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone);cursor:pointer}
.sc-viewtog button[aria-pressed="true"]{background:var(--ink);color:var(--ivory)}
.sc-count{display:inline-block;min-width:18px;margin-left:6px;padding:1px 6px;border-radius:9px;background:var(--ember);color:#fff;font-size:.62rem;letter-spacing:0;text-align:center}
.sc-barnote{font-size:.82rem;color:var(--stone)}

/* month calendar */
.sc-calwrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.sc-cal{display:grid;grid-template-columns:repeat(7,minmax(118px,1fr));border-left:1px solid var(--line);border-top:1px solid var(--line);background:#fff;min-width:840px}
.sc-cal-h{padding:8px 10px;font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone);background:var(--ivory);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.sc-cal-d{position:relative;display:flex;flex-direction:column;gap:2px;align-items:stretch;min-height:118px;padding:8px 8px 10px;text-align:left;background:#fff;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;font:inherit;color:var(--ink)}
.sc-cal-d:hover{background:#fcf8f2}
.sc-cal-d.out{background:#faf8f4;color:var(--stone)}
.sc-cal-d.today{box-shadow:inset 0 0 0 2px var(--ember)}
.sc-cal-d.draft .sc-cal-s{font-style:italic;color:#6b6f73}
.sc-cal-n{font-family:var(--serif);font-size:1.15rem;line-height:1;margin-bottom:4px}
.sc-cal-st{position:absolute;top:8px;right:8px;font-size:.52rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone)}
.sc-cal-st.ok{color:#2f6b3a}
.sc-cal-s{font-size:.74rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sc-cal-s b{font-weight:500;font-variant-numeric:tabular-nums}
.sc-cal-more{font-size:.7rem;color:var(--stone)}
.sc-cal-off{font-size:.7rem;line-height:1.3;color:#7a4a1e;background:#f6ece0;padding:1px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sc-cal-off.pending{background:none;border:1px dashed rgba(176,112,63,.6)}

/* time off on the weekly grid */
.sc-cell.is-off{background:repeating-linear-gradient(135deg,#faf5ee 0 8px,#f4ece1 8px 16px)}
.sc-off{display:block;margin-bottom:4px;padding:5px 7px;background:#f6ece0;border:1px solid rgba(176,112,63,.35);font-size:.72rem;line-height:1.3;color:#7a4a1e}
.sc-off b{display:block;font-weight:500;letter-spacing:.06em;text-transform:uppercase;font-size:.6rem}
.sc-off.pending{background:#fff;border-style:dashed}

/* time off tab */
.sc-tsec{margin:22px 0 8px}
.sc-th{font-family:var(--sans);font-weight:400;font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ember);padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:10px}
.sc-treq{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;align-items:center;padding:14px 16px;background:#fff;border:1px solid var(--line);margin-bottom:8px}
.sc-treq.pending{border-left:3px solid var(--ember)}
.sc-treq.denied{opacity:.75}
.sc-treq-m b{font-family:var(--serif);font-weight:400;font-size:1.2rem;margin-right:10px}
.sc-treq-d{margin-top:4px;font-size:.9rem}
.sc-treq-r{margin-top:3px;font-size:.84rem;color:var(--stone)}
.sc-treq-a{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.sc-tnote{font:inherit;font-size:.86rem;padding:7px 9px;border:1px solid var(--line);min-width:220px}
.sc-f select,.sc-access{font:inherit;font-size:.95rem;padding:8px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%}
.sc-perm-help{margin-top:14px;padding:12px 16px;background:#fff;border:1px solid var(--line);display:grid;gap:4px;font-size:.84rem;color:#4a4e53;max-width:900px}
.sc-ptable{min-width:1160px}
@media (max-width:820px){.sc-treq{grid-template-columns:1fr}.sc-treq-a{justify-content:flex-start}.sc-tnote{min-width:0;width:100%}}
@media print{.sc-viewtog{display:none!important}.sc-cal{min-width:0}.sc-cal-d{min-height:90px}}

/* ---------- prep list ---------- */
.pp-in{max-width:1500px;margin:0 auto;padding:28px 32px 80px}
.pp-controls{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}
.pp-ctl{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.pp-ctl .sc-f input{width:auto;padding:8px 10px;font-size:.95rem}
.pp-ctl .sc-viewtog{margin-right:0}
.pp-help{margin:12px 0 22px;font-size:.86rem;color:var(--stone);max-width:80ch}

/* the sheet: a landscape page; each section is a panel; three columns */
.pp-sheet{background:#fff;border:1px solid var(--line);padding:26px 28px 30px;color:#111;box-shadow:0 10px 30px rgba(15,18,21,.06)}
.pp-head{display:flex;justify-content:space-between;align-items:end;gap:20px;border-bottom:3px double #111;padding-bottom:12px;margin-bottom:16px}
.pp-head-l{display:flex;align-items:baseline;gap:18px}
.pp-brand{font-family:var(--serif);font-size:2rem;letter-spacing:.34em;line-height:1}
.pp-title{font-size:.66rem;letter-spacing:.3em;text-transform:uppercase}
.pp-meta{display:grid;grid-template-columns:auto auto auto;gap:6px 26px;align-items:end}
.pp-meta div{display:grid;gap:2px}
.pp-meta span{font-size:.56rem;letter-spacing:.24em;text-transform:uppercase;color:#555}
.pp-meta b{font-weight:500;font-size:.92rem}
.pp-meta i{display:block;width:120px;border-bottom:1px solid #111;height:1.2em}
.pp-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.pp-col{display:flex;flex-direction:column;gap:18px;min-width:0}
.pp-sec,.pp-notes{border:1.5px solid #111;background:#fff;break-inside:avoid}
.pp-sec-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;background:#111;color:#f3eee5;padding:7px 10px 6px}
.pp-sec-h h2{font-family:var(--serif);font-weight:500;font-size:1.3rem;letter-spacing:.04em;line-height:1.1}
.pp-sec-h span{font-size:.56rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(243,238,229,.72);white-space:nowrap}
.pp-basics{border-style:solid;border-width:1.5px 1.5px 1.5px 6px}
.pp-table{width:100%;border-collapse:collapse;font-size:.88rem;table-layout:fixed}
.pp-table th{font-size:.52rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:#555;text-align:left;padding:5px 5px 4px;border-bottom:1px solid #111;background:#f4f1eb}
.pp-table td{padding:4px 5px;border-bottom:1px solid #dcd8d0;vertical-align:middle}
.pp-table tr,.pp-group{break-inside:avoid}
.pp-chk{width:24px;text-align:center!important}
.pp-box{display:inline-block;width:12px;height:12px;border:1.5px solid #111;vertical-align:middle}
.pp-item span{display:inline}
.pp-item small{font-size:.7rem;color:#666;margin-left:6px}
.pp-num{width:13%;text-align:center!important;border-left:1px solid #e3dfd7}
.pp-ini{width:9%;border-left:1px solid #e3dfd7}
.pp-tool{width:26px;text-align:right}
.pp-table .pp-par{width:100%;height:auto;min-height:0;margin:0;box-shadow:none;border-radius:0;border:0;border-bottom:1px dashed transparent;background:transparent;font:inherit;text-align:center;padding:2px 0;color:#111}
.pp-table .pp-par:hover,.pp-table .pp-par:focus{border-bottom-color:#999;outline:none;background:#faf7f1}
.pp-parv{display:block;text-align:center}
.pp-x{background:none;border:0;color:#999;cursor:pointer;font-size:.8rem;padding:2px 4px;opacity:0;transition:opacity .15s}
.pp-table tr:hover .pp-x,.pp-x:focus{opacity:1}
.pp-x:hover{color:#a33}
.pp-dish td{padding:8px 5px 3px;border-bottom:1px solid #999;background:#faf8f4}
.pp-dish b{font-weight:500;font-size:.9rem}
.pp-dish span{margin-left:8px;font-size:.68rem;color:#666}
.pp-group:first-of-type .pp-dish td{padding-top:6px}
.pp-shared .pp-item span,.pp-main .pp-item span{font-weight:500}
.pp-main .pp-item small,.pp-extra .pp-item small{font-style:italic}
.pp-none{padding:12px 10px;color:#777;font-size:.85rem}
.pp-add{display:flex;gap:8px;padding:8px}
.pp-addin{flex:1;min-width:0;font:inherit;font-size:.82rem;padding:6px 9px;border:1px dashed var(--line);background:transparent;color:var(--ink)}
.pp-addin:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-style:solid}
.pp-notes{flex:1;display:flex;flex-direction:column;min-height:120px}
.pp-lines{flex:1;min-height:90px;margin:4px 10px 10px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 23px,#bbb 23px,#bbb 24px)}
.pp-barbtn{min-width:96px}
.pp-printbtn{min-width:110px}
@media (hover:none){.pp-x{opacity:1}}
@media (max-width:1100px){.pp-body{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .pp-in{padding:20px 16px 60px}
  .pp-sheet{padding:16px 12px}
  .pp-head{flex-direction:column;align-items:start}
  .pp-meta{grid-template-columns:1fr 1fr}
  .pp-body{grid-template-columns:minmax(0,1fr)}
}

/* paper layout (print and preview): compact, three columns, landscape letter */
.pp-paper{zoom:var(--pp-zoom,1);font-size:7.5pt;line-height:1.15;border:0;padding:0;box-shadow:none}
.pp-paper .pp-head{padding-bottom:5px;margin-bottom:8px;border-bottom-width:3px}
.pp-paper .pp-head-l{gap:12px}
.pp-paper .pp-brand{font-size:17pt}
.pp-paper .pp-title{font-size:6pt}
.pp-paper .pp-meta{gap:4px 18px}
.pp-paper .pp-meta b{font-size:8.5pt}
.pp-paper .pp-meta span{font-size:5.5pt}
.pp-paper .pp-meta i{width:1.15in}
.pp-paper .pp-body{grid-template-columns:repeat(3,minmax(0,1fr));gap:.16in}
.pp-paper .pp-col{gap:.12in}
.pp-paper .pp-sec,.pp-paper .pp-notes{border-width:1.2px}
.pp-paper .pp-basics{border-left-width:4px}
.pp-paper .pp-sec-h{padding:3px 6px 2px}
.pp-paper .pp-sec-h h2{font-size:11pt}
.pp-paper .pp-sec-h span{font-size:5pt;letter-spacing:.16em}
.pp-paper .pp-table{font-size:7.5pt}
.pp-paper .pp-table th{font-size:4.8pt;letter-spacing:.12em;padding:2px 3px}
.pp-paper .pp-table td{padding:2px 3px;height:13px}
.pp-paper .pp-dish td{padding:3px 3px 1px;height:auto}
.pp-paper .pp-dish b{font-size:7.5pt}
.pp-paper .pp-dish span{font-size:6pt;margin-left:5px}
.pp-paper .pp-item small{font-size:6pt;margin-left:4px}
.pp-paper .pp-chk{width:13px}
.pp-paper .pp-box{width:7.5px;height:7.5px;border-width:1px}
.pp-paper .pp-tool{width:0;padding:0!important;border:0}
.pp-paper .pp-tool *,.pp-paper .pp-add{display:none!important}
.pp-paper .pp-table .pp-par{font-size:7.5pt;padding:0}
.pp-paper .pp-notes{min-height:.9in}
.pp-paper .pp-lines{margin:2px 6px 6px;min-height:.5in;background:repeating-linear-gradient(to bottom,transparent 0,transparent 17px,#aaa 17px,#aaa 18px)}

/* print preview */
.pp-preview{position:fixed;inset:0;z-index:1000;background:rgba(15,18,21,.97);display:flex;flex-direction:column}
.pp-pbar{display:flex;align-items:center;gap:12px;padding:14px 22px;background:#0f1215;border-bottom:1px solid rgba(243,238,229,.14)}
.pp-pbar-t{flex:1;display:grid;gap:2px;color:#f3eee5;min-width:0}
.pp-pbar-t b{font-family:var(--serif);font-weight:500;font-size:1.25rem}
.pp-pbar-t span{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(243,238,229,.6)}
.pp-pbar .ed-btn.ghost{color:#f3eee5;border-color:rgba(243,238,229,.35)}
.pp-confirm{padding-left:26px;padding-right:26px}
.pp-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:24px}
.pp-holder{position:relative;flex:none}
.pp-page{position:absolute;left:0;top:0;width:11in;height:8.5in;background:#fff;transform-origin:0 0;box-shadow:0 18px 50px rgba(0,0,0,.45)}
.pp-page-in{position:absolute;inset:.35in;overflow:hidden}
@media (max-width:700px){.pp-pbar{flex-wrap:wrap}.pp-pbar-t{flex-basis:100%}}

@media print{
  @page prep{size:letter landscape;margin:.35in}
  #viewPrep{page:prep}
  html,body{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .pp-controls,.pp-help,.pp-add,.pp-preview{display:none!important}
  .pp-tool *{display:none!important}
  .pp-in{padding:0;max-width:none}
  .pp-table .pp-par{border:0!important;background:none!important}
}

/* ---------- shift end: set time, 1st cut, 2nd cut, close ---------- */
.sc-endtog{display:flex;flex-wrap:wrap;margin-right:0;width:100%}
.sc-endtog button{flex:1 1 auto;padding:9px 10px;border-right:1px solid var(--line)}
.sc-endtog button:last-child{border-right:0}
.sc-small{font-size:.78rem;color:var(--stone);margin-top:-4px}
.sc-hrs small{font-family:var(--sans);font-size:.62rem;letter-spacing:.06em;color:var(--stone)}

/* ---------- inventory ---------- */
.iv-in{max-width:1280px;margin:0 auto;padding:28px 32px 80px}
.iv-titlebar{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}
.iv-tools{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.iv-date input{width:auto;padding:8px 10px;font-size:.95rem}
.iv-tabs{margin:20px 0 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.iv-summary{display:flex;flex-wrap:wrap;gap:0;margin:18px 0 16px;background:#fff;border:1px solid var(--line)}
.iv-stat{flex:1 1 150px;padding:12px 18px;border-right:1px solid var(--line);display:grid;gap:3px}
.iv-stat:last-child{border-right:0}
.iv-stat span{font-size:.58rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone)}
.iv-stat b{font-family:var(--serif);font-weight:500;font-size:1.35rem;color:var(--ink)}
.iv-bar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.iv-find{flex:0 1 320px;min-width:0;font:inherit;font-size:.95rem;padding:9px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.iv-find:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.iv-hint{font-size:.8rem;color:var(--stone)}
.iv-table{width:100%;border-collapse:collapse;min-width:820px;font-size:.95rem}
.iv-table th{text-align:left;font-weight:400;font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone);padding:10px 12px;background:var(--ivory);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1}
.iv-table td{padding:6px 12px;border-bottom:1px solid rgba(15,18,21,.07);vertical-align:middle}
.iv-table .r{text-align:right}
.iv-sec td{background:#f4f1eb;padding:12px 12px 7px;border-bottom:1px solid var(--line)}
.iv-sec b{font-family:var(--serif);font-weight:500;font-size:1.15rem}
.iv-sec span{margin-left:10px;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone)}
.iv-name{min-width:240px}
.iv-namebtn{background:none;border:0;padding:0;font:inherit;color:var(--ink);cursor:pointer;text-align:left}
.iv-namebtn:hover{color:var(--ember);text-decoration:underline;text-underline-offset:3px}
.iv-name small{display:block;font-size:.74rem;color:var(--stone);margin-top:1px}
.iv-unit{color:#4a4e53;font-size:.88rem}
.iv-last{color:var(--stone)}
.iv-ohh{color:var(--ink)!important}
.iv-ohc{width:110px}
.iv-oh{width:90px;font:inherit;font-size:1rem;text-align:right;padding:7px 9px;border:1px solid var(--line);background:#fffdf8;color:var(--ink);border-radius:2px}
.iv-oh:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent;background:#fff}
.iv-oh.bad{border-color:#b33;background:#fff4f2}
.iv-order.need{color:#9a4a12;font-weight:500}
.iv-cost,.iv-val{font-variant-numeric:tabular-nums;white-space:nowrap}
.iv-tool{width:36px;text-align:right}
.iv-edit{background:none;border:0;color:var(--stone);cursor:pointer;font-size:1rem;padding:4px 6px}
.iv-edit:hover{color:var(--ember)}
.iv-table tfoot td{padding:12px;font-family:var(--serif);font-size:1.15rem;background:var(--ivory);border-top:1px solid var(--line)}
.iv-more{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}
.iv-empty{background:#fff;border:1px dashed var(--line);padding:34px 30px;text-align:center}
.iv-empty h2{font-size:1.7rem}
.iv-empty p{color:#4a4e53;max-width:60ch;margin:8px auto 18px}
.iv-empty-a{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap}
.iv-setup{max-width:640px}
.iv-setup p{margin-top:10px;color:#4a4e53}
.iv-ovendor h3{font-family:var(--serif);font-weight:500;font-size:1.2rem;border-bottom:1px solid var(--line);padding-bottom:4px;margin-bottom:6px}
.iv-olist{list-style:none;display:grid;gap:4px;margin:0;padding:0}
.iv-olist b{font-weight:500;display:inline-block;min-width:70px}
.iv-olist small{color:var(--stone)}
.iv-printhead{display:none}
@media (max-width:760px){.iv-in{padding:20px 16px 60px}.iv-stat{flex-basis:45%}.iv-hint{display:none}}
@media print{
  #viewInventory .iv-tools,#viewInventory .iv-tabs,#viewInventory .iv-bar,#viewInventory .iv-more,#viewInventory .iv-summary,#viewInventory .iv-titlebar,#viewInventory .iv-tool{display:none!important}
  #viewInventory .iv-in{padding:0;max-width:none}
  #viewInventory .iv-printhead{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #111;padding-bottom:6px;margin-bottom:8px;font-size:11pt}
  #viewInventory .iv-scroll{overflow:visible;border:0}
  #viewInventory .iv-table{min-width:0;font-size:9pt}
  #viewInventory .iv-table th{position:static}
  #viewInventory .iv-table td{padding:3px 6px}
  #viewInventory .iv-oh{border:0;border-bottom:1px solid #999;background:none;width:60px;padding:1px 4px;font-size:9pt}
  #viewInventory .iv-group{break-inside:auto}
  #viewInventory .iv-row{break-inside:avoid}
}

/* ---------- menu editor ↔ inventory ---------- */
.ed-inv-list .ed-ac-tag{font-size:.6rem!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--ember)!important;white-space:nowrap;align-self:center}
.ed-ac-opt.is-on{cursor:default;opacity:.55}
.ed-ac-opt.is-on .ed-ac-tag{color:var(--stone)!important}
.ed-ac-add{background:#fbf8f2}
.ed-ac-add .ed-ac-name{font-family:var(--sans)!important;font-size:.9rem!important;color:var(--ember)!important}
.ed-ac-empty{padding:12px;font-size:.82rem;color:var(--stone)}
.ed-invbtn{margin-left:8px}
.ed-inv{border-top:1px solid var(--line);background:#fff;padding:14px 16px 16px}
.ed-inv-top{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.ed-inv-top input[type=search]{flex:1 1 260px;min-width:0;font:inherit;font-size:.95rem;padding:9px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.ed-inv-top input[type=search]:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.ed-inv-all{font-size:.85rem;color:#4a4e53;display:flex;gap:6px;align-items:center}
.ed-inv-all input{accent-color:var(--ember)}
.ed-inv-note{font-size:.82rem;color:var(--stone);margin:10px 0 6px}
.ed-inv-note a{color:var(--ember)}
.ed-inv-list2{max-height:340px;overflow:auto}
.ed-inv-row{display:flex;align-items:center;gap:12px;padding:8px 2px;border-bottom:1px solid rgba(15,18,21,.07)}
.ed-inv-name{flex:1;min-width:0}
.ed-inv-name b{font-family:var(--serif);font-weight:500;font-size:1.05rem;display:block}
.ed-inv-name small{font-size:.74rem;color:var(--stone)}
.ed-inv-row.is-on{opacity:.55}
.ed-inv-tag{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--stone);white-space:nowrap}
.ed-inv-all{white-space:nowrap}
.ed-inv-list{min-width:min(420px,80vw)}

/* ---------- menu editor: Quick add ---------- */
.ed-qa{border:1px solid var(--ink);background:#fff;margin:0 0 28px;box-shadow:0 8px 24px rgba(15,18,21,.06)}
.ed-qa-h{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;padding:10px 16px;background:var(--ink);color:var(--ivory)}
.ed-qa-h h3{font-family:var(--serif);font-weight:500;font-size:1.25rem}
.ed-qa-h span{font-size:.78rem;color:rgba(243,238,229,.7)}
.ed-qa-row{display:grid;grid-template-columns:minmax(180px,2fr) minmax(140px,1.1fr) minmax(120px,1fr) minmax(160px,1.6fr) 90px auto;gap:10px;align-items:end;padding:14px 16px 6px}
.ed-qa-row.is-wine{grid-template-columns:minmax(220px,2.4fr) minmax(140px,1.1fr) minmax(110px,1fr) minmax(110px,1fr) 100px 100px auto}
.ed-qa-sec select{font:inherit;font-size:.95rem;padding:10px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%;min-width:0}
.ed-qa-sec select:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.ed-qa-go{height:42px;padding:0 22px}
.ed-qa-msg{min-height:1.4em;padding:0 16px 10px;font-size:.82rem;color:#2f6b3a}
.ed-qa-msg.err{color:#a33}
.ed-item.ed-flash{animation:edflash 2.2s ease-out}
@keyframes edflash{0%,30%{background:#fbefd9;box-shadow:inset 4px 0 0 var(--ember)}100%{background:transparent;box-shadow:none}}
@media (max-width:1100px){.ed-qa-row,.ed-qa-row.is-wine{grid-template-columns:1fr 1fr}.ed-qa-name,.ed-qa-row .desc{grid-column:1/-1}.ed-qa-go{grid-column:1/-1}}

/* ---------- top bar: To-do and Notes on the far right ---------- */
.ed-nav-r{align-items:center}
.ed-nav .ed-notesbtn{color:var(--ivory);border:1px solid rgba(243,238,229,.35);border-radius:2px;padding:6px 14px;margin-left:4px}
.ed-nav .ed-notesbtn:hover{border-color:var(--ember-hot);color:var(--ember-hot)}

body.nt-open{overflow:hidden}

/* ---------- Notes window ---------- */
.nt{position:fixed;inset:0;z-index:950;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font-family:var(--sans)}
.nt-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:calc(10px + env(safe-area-inset-top,0px)) 16px 10px;background:var(--ink);color:var(--ivory)}
.nt-title{flex:1 1 220px;min-width:0;font-family:var(--serif);font-size:1.45rem;background:transparent;border:0;border-bottom:1px solid rgba(243,238,229,.25);color:var(--ivory);padding:4px 2px}
.nt-title::placeholder{color:rgba(243,238,229,.45)}
.nt-title:focus{outline:none;border-bottom-color:var(--ember-hot)}
.nt-mode{display:inline-flex;border:1px solid rgba(243,238,229,.3)}
.nt-mode button{background:none;border:0;color:rgba(243,238,229,.7);padding:9px 14px;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;cursor:pointer}
.nt-mode button[aria-pressed="true"]{background:var(--ivory);color:var(--ink)}
.nt-state{font-size:.78rem;color:rgba(243,238,229,.6);min-width:60px}
.nt-state.ok{color:#9fd3a8}.nt-state.err{color:#f0a48f}
.nt-acts{display:flex;gap:6px;flex-wrap:wrap}
.nt-b{background:none;border:1px solid rgba(243,238,229,.32);color:var(--ivory);padding:9px 14px;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;border-radius:2px}
.nt-b:hover{border-color:var(--ember-hot)}
.nt-b.small{padding:6px 10px}
.nt-close{background:var(--ember);border-color:var(--ember)}
.nt-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 16px;background:#fff;border-bottom:1px solid var(--line)}
.nt-tools .nt-b{color:var(--ink);border-color:var(--line)}
.nt-tools .nt-convert{background:var(--ink);color:var(--ivory);border-color:var(--ink)}
.nt-tools .nt-convert:disabled{opacity:.7}
.nt-sw{width:30px;height:30px;border-radius:50%;border:2px solid #fff;background:var(--c);box-shadow:0 0 0 1px var(--line);cursor:pointer}
.nt-sw[aria-pressed="true"]{box-shadow:0 0 0 2px var(--ink)}
.nt-sz,.nt-t{background:none;border:1px solid var(--line);padding:7px 11px;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:#4a4e53;cursor:pointer;border-radius:2px;min-width:36px}
.nt-sz[aria-pressed="true"],.nt-t[aria-pressed="true"]{background:var(--ink);color:var(--ivory);border-color:var(--ink)}
.nt-sep{width:1px;height:24px;background:var(--line);margin:0 4px}
.nt-grow{flex:1}
.nt.is-text .nt-tools>*:not(.nt-convert):not(.nt-grow){visibility:hidden}
.nt.is-text .nt-tools{display:none}
.nt-body{flex:1;min-height:0;display:flex;position:relative}
.nt-list{width:270px;flex:none;overflow:auto;background:#f4f1eb;border-right:1px solid var(--line);padding:12px}
.nt-listbtn{display:none}
.nt-list-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.nt-list-h b{font-family:var(--serif);font-weight:500;font-size:1.2rem}
.nt-list-h .nt-b{color:var(--ink);border-color:var(--line)}
.nt-list-note{font-size:.8rem;color:var(--stone);margin:8px 2px}
.nt-item{display:flex;align-items:stretch;border-bottom:1px solid rgba(15,18,21,.08)}
.nt-item.on{background:#fff;box-shadow:inset 3px 0 0 var(--ember)}
.nt-item-open{flex:1;min-width:0;text-align:left;background:none;border:0;padding:9px 8px;cursor:pointer;color:var(--ink)}
.nt-item-open b{display:block;font-weight:500;font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nt-item-open span{font-size:.72rem;color:var(--stone)}
.nt-item-del{background:none;border:0;color:#aaa;cursor:pointer;padding:0 8px}
.nt-item-del:hover{color:#a33}
.nt-page{flex:1;min-width:0;display:flex;flex-direction:column}
.nt-paper{flex:1;min-height:0;overflow:auto;background:#fffdf8}
.nt.is-text .nt-paper{display:none}
.nt-canvas{display:block;touch-action:none;cursor:crosshair;background-color:#fffdf8;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#d9e3ef 39px,#d9e3ef 40px),linear-gradient(to right,transparent 0,transparent 64px,#f1c7c0 64px,#f1c7c0 65px,transparent 65px);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.nt-canvas.erasing{cursor:cell}
.nt-textwrap{display:none;flex:1;min-height:0;flex-direction:column}
.nt.is-text .nt-textwrap{display:flex}
.nt-text{flex:1;min-height:0;resize:none;border:0;padding:20px 28px 20px 80px;font:inherit;font-size:1.15rem;line-height:40px;color:var(--ink);background-color:#fffdf8;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#d9e3ef 39px,#d9e3ef 40px),linear-gradient(to right,transparent 0,transparent 64px,#f1c7c0 64px,#f1c7c0 65px,transparent 65px);background-attachment:local;background-position:0 20px}
.nt-text:focus{outline:none}
.nt-hint{font-size:.74rem;color:var(--stone);padding:6px 16px;background:#fff;border-top:1px solid var(--line)}
.nt-prev{margin:0;padding:10px 12px 10px 28px;max-height:220px;overflow:auto;background:#fff;border:1px solid var(--line);font-size:.9rem}
.nt-modal{z-index:1000}
@media (max-width:900px){
  .nt-listbtn{display:inline-block}
  .nt-list{position:absolute;left:0;top:0;bottom:0;z-index:5;transform:translateX(-100%);transition:transform .2s;box-shadow:8px 0 30px rgba(0,0,0,.15)}
  .nt.show-list .nt-list{transform:none}
}

/* ---------- To-do page ---------- */
.td-in{max-width:860px;margin:0 auto;padding:28px 32px 80px}
.td-title{display:flex;justify-content:space-between;align-items:end;gap:12px}
.td-add{display:flex;gap:8px;margin:20px 0 6px;flex-wrap:wrap}
.td-new{flex:1 1 300px;min-width:0;font:inherit;font-size:1.05rem;padding:12px 14px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.td-due{font:inherit;font-size:.95rem;padding:10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.td-new:focus,.td-due:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.td-count{font-size:.8rem;color:var(--stone);margin:10px 0}
.td-list{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--line)}
.td-list:empty{display:none}
.td-item{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-bottom:1px solid rgba(15,18,21,.07)}
.td-item:last-child{border-bottom:0}
.td-cb input{width:22px;height:22px;accent-color:var(--ember);margin-top:2px;cursor:pointer}
.td-main{flex:1;min-width:0}
.td-t{background:none;border:0;padding:0;font:inherit;font-size:1.02rem;color:var(--ink);text-align:left;cursor:pointer}
.td-t:hover{color:var(--ember)}
.td-d{font-size:.85rem;color:#4a4e53;white-space:pre-wrap;margin-top:3px}
.td-meta{display:block;font-size:.72rem;color:var(--stone);margin-top:3px}
.td-item.over .td-meta{color:#a33}
.td-item.done .td-t{text-decoration:line-through;color:var(--stone)}
.td-x{background:none;border:0;color:#bbb;cursor:pointer;font-size:.9rem;padding:2px 4px}
.td-x:hover{color:#a33}
.td-donebtn{background:none;border:0;color:var(--ember);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;margin:18px 0 8px;padding:0}
.td-list.is-done{opacity:.85}
.td-clear{margin-top:10px}
.td-det textarea{font:inherit;font-size:.95rem;padding:10px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%;resize:vertical}
@media (max-width:760px){.td-in{padding:20px 16px 60px}}
.td-add .td-due{width:auto;flex:0 0 auto}.td-add .ed-btn{flex:0 0 auto}

/* Notes on iPad: nothing behind or around the page can be selected or copied */
body.nt-open #app{visibility:hidden!important}
.nt,.nt *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
.nt input,.nt textarea{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
.nt-paper{overscroll-behavior:contain}

/* Notes: check the conversion */
.nt-review .sc-card{width:min(900px,100%)}
.nt-rv-list{display:grid;gap:10px;max-height:60vh;overflow:auto}
.nt-rv-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px;align-items:center;padding:8px;border:1px solid var(--line);background:#fff}
.nt-rv-row.unsure{border-color:#d9a25b;background:#fffaf2}
.nt-rv-shot{overflow:hidden;background:#fff;border-right:1px solid var(--line);padding-right:8px}
.nt-rv-img{display:block;max-width:100%;max-height:70px;height:auto;width:auto}
.nt-rv-txt{display:grid;gap:4px}
.nt-rv-txt input{font:inherit;font-size:1.05rem;padding:9px 11px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%}
.nt-rv-txt input:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.nt-rv-txt span{font-size:.72rem;color:#9a5a12}
@media (max-width:700px){.nt-rv-row{grid-template-columns:1fr}.nt-rv-shot{border-right:0;padding-right:0}}

/* Notes: Write page (Scribble) is the main page */
.nt-text{font-size:1.35rem;line-height:48px;padding:24px 32px 24px 84px;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 47px,#d9e3ef 47px,#d9e3ef 48px),linear-gradient(to right,transparent 0,transparent 66px,#f1c7c0 66px,#f1c7c0 67px,transparent 67px);background-position:0 24px;caret-color:var(--ember)}
.nt-text::placeholder{color:#a9a39a}
.nt-hint{display:flex;gap:6px 18px;flex-wrap:wrap;justify-content:space-between}
.nt-hint-off{color:var(--stone)}

/* Notes: dictation */
.nt-mic{display:inline-flex;align-items:center;gap:8px}
.nt-mic-dot{width:9px;height:9px;border-radius:50%;background:#e06b5b;box-shadow:0 0 0 0 rgba(224,107,91,.6)}
.nt-mic.on{background:#b3261e;border-color:#b3261e}
.nt-mic.on .nt-mic-dot{background:#fff;animation:ntpulse 1.2s infinite}
@keyframes ntpulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.7)}100%{box-shadow:0 0 0 9px rgba(255,255,255,0)}}
.nt-live{padding:8px 16px;background:#fdf1ee;border-top:1px solid #f0c9c2;color:#8a2a1e;font-size:.9rem}

/* ---------- Recipes ---------- */
.rc-in{max-width:1280px;margin:0 auto;padding:28px 32px 80px}
.rc-title{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap}
.rc-status{min-height:1.2em;font-size:.82rem;color:#2f6b3a;margin:6px 0}
.rc-status.err{color:#a33}
.rc-body{display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;margin-top:14px;align-items:start}
.rc-side{background:#fff;border:1px solid var(--line);position:sticky;top:12px;max-height:calc(100vh - 140px);display:flex;flex-direction:column}
.rc-find{display:grid;gap:8px;padding:12px;border-bottom:1px solid var(--line)}
.rc-find input,.rc-find select{font:inherit;font-size:.95rem;padding:9px 11px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%}
.rc-list{overflow:auto;padding:4px 0 10px}
.rc-cat{font-size:.58rem;letter-spacing:.24em;text-transform:uppercase;color:var(--ember);padding:12px 14px 4px}
.rc-item{display:block;width:100%;text-align:left;background:none;border:0;padding:8px 14px;cursor:pointer;color:var(--ink);border-left:3px solid transparent}
.rc-item b{display:block;font-family:var(--serif);font-weight:500;font-size:1.08rem}
.rc-item span{font-size:.74rem;color:var(--stone)}
.rc-item:hover{background:#faf7f1}
.rc-item.on{background:#fbf6ef;border-left-color:var(--ember)}
.rc-none,.rc-pick p{color:var(--stone);padding:14px;font-size:.9rem}
.rc-pick{background:#fff;border:1px dashed var(--line);padding:30px;text-align:center}
.rc-card{background:#fff;border:1px solid var(--line);padding:26px 30px 30px}
.rc-head{display:flex;justify-content:space-between;align-items:start;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:16px}
.rc-head h2{font-size:2rem;line-height:1.1}
.rc-catline{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--ember);margin-bottom:4px}
.rc-meta{font-size:.85rem;color:#4a4e53;margin-top:6px}
.rc-acts{display:flex;gap:8px;flex-wrap:wrap}
.rc-scale{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:end;padding:14px 16px;background:var(--ivory);border:1px solid var(--line)}
.rc-scl{display:grid;gap:5px}
.rc-scl>span{font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone)}
.rc-mult{margin-right:0}
.rc-mult button{min-width:44px}
.rc-x{width:96px;font:inherit;font-size:.95rem;padding:7px 9px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.rc-x:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.rc-make{display:flex;align-items:center;gap:6px}
.rc-make em{font-style:normal;font-size:.9rem;color:#4a4e53}
.rc-smart{align-self:center;font-size:.88rem}
.rc-yield{font-family:var(--serif);font-size:1.15rem;margin:14px 0 4px}
.rc-sec{margin-top:18px}
.rc-sec h3{font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:var(--ember);font-family:var(--sans);font-weight:400;border-bottom:1px solid var(--line);padding-bottom:6px;margin-bottom:8px}
.rc-ings{width:100%;border-collapse:collapse;font-size:1rem}
.rc-ings td{padding:7px 8px;border-bottom:1px solid rgba(15,18,21,.06);vertical-align:baseline}
.rc-amt{width:84px;text-align:right;font-family:var(--serif);font-size:1.15rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.rc-unit{width:70px;color:#4a4e53;white-space:nowrap}
.rc-ing small{color:var(--stone);margin-left:6px}
.rc-ing small::before{content:'— '}
.rc-ihead td{padding-top:14px;font-family:var(--serif);font-size:1.1rem;font-style:italic;border-bottom:1px solid var(--line)}
.rc-steps{margin:0;padding-left:22px;display:grid;gap:8px;line-height:1.55}
.rc-steps li::marker{color:var(--ember);font-family:var(--serif)}
.rc-notes{white-space:pre-wrap;line-height:1.55;color:#33373b}
.rc-fine{font-size:.76rem;color:var(--stone);margin-top:12px}
/* editor */
.rc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.rc-grid .rc-wide{grid-column:1/-1}
.rc-grid input{font:inherit;font-size:1rem;padding:10px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%}
.rc-yrow{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px}
.rc-erows{display:grid;gap:6px}
.rc-erow{display:grid;grid-template-columns:90px 100px minmax(0,2fr) minmax(0,1.3fr) auto;gap:6px;align-items:center}
.rc-ehdr span{font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone)}
.rc-erow input{font:inherit;font-size:.95rem;padding:8px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%;min-width:0}
.rc-erow input:focus,.rc-ed textarea:focus,.rc-grid input:focus{outline:2px solid var(--ember-hot);outline-offset:-1px;border-color:transparent}
.rc-erow input.bad{border-color:#b33;background:#fff4f2}
.rc-ehead{grid-template-columns:minmax(0,1fr) auto}
.rc-ehead input{font-family:var(--serif);font-style:italic;font-size:1.05rem;background:#faf8f4}
.rc-etools{display:flex;gap:2px}
.rc-mini{background:none;border:1px solid var(--line);width:30px;height:32px;cursor:pointer;color:#4a4e53;border-radius:2px}
.rc-mini:hover{border-color:var(--ink)}
.rc-del:hover{color:#a33;border-color:#a33}
.rc-eadd{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.rc-paste{margin-top:10px;display:grid;gap:8px}
.rc-paste-a{display:flex;gap:8px;justify-content:flex-end}
.rc-ed textarea{font:inherit;font-size:.98rem;line-height:1.5;padding:10px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%;resize:vertical}
.rc-efoot{display:flex;gap:8px;align-items:center;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
@media (max-width:900px){
  .rc-body{grid-template-columns:minmax(0,1fr)}
  .rc-side{position:static;max-height:none}
  .rc-body.has-cur .rc-list{max-height:220px}
}
@media (max-width:640px){
  .rc-in{padding:20px 16px 60px}.rc-card{padding:18px 16px}
  .rc-grid{grid-template-columns:minmax(0,1fr)}
  .rc-erow{grid-template-columns:70px 76px minmax(0,1fr) auto}
  .rc-erow input[aria-label=Note]{grid-column:1/4}
  .rc-ehdr span:nth-child(4){display:none}
}
@media print{
  #viewRecipes .rc-side,#viewRecipes .rc-title,#viewRecipes .rc-acts,#viewRecipes .rc-scale input,#viewRecipes .rc-scale,.tm-bar,.tm-recipes .rc-side,.tm-recipes .rc-title{display:none!important}
  #viewRecipes .rc-in,.tm-recipes .rc-in{padding:0;max-width:none}
  #viewRecipes .rc-body,.tm-recipes .rc-body{display:block}
  .rc-card{border:0;padding:0}
}
.rc-scale .rc-x{width:96px!important;max-width:96px}

/* ---------- Calendar ---------- */
.cl-in{max-width:1400px;margin:0 auto;padding:28px 32px 80px}
.cl-title{display:flex;justify-content:space-between;align-items:end;gap:14px;flex-wrap:wrap}
.cl-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cl-tog{margin-right:4px}
.cl-add{margin-left:6px}
.cl-hint{font-size:.8rem;color:var(--stone);margin-top:10px}
.cl-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:18px;font-size:.76rem;color:#4a4e53}
.cl-legend span{display:inline-flex;align-items:center;gap:6px}
.cl-legend i{width:10px;height:10px;border-radius:2px;display:inline-block}
/* event chip (week) */
.cl-ev{display:grid;gap:1px;width:100%;text-align:left;background:#fff;border:0;border-left:3px solid var(--c);padding:7px 10px;margin:0;cursor:pointer;color:var(--ink);border-bottom:1px solid rgba(15,18,21,.06);font:inherit}
.cl-ev:hover{background:#faf7f1}
.cl-ev-t{font-size:.72rem;color:var(--c);font-weight:500}
.cl-ev b{font-weight:500;font-size:.92rem;line-height:1.25}
.cl-ev-m{font-size:.72rem;color:var(--stone)}
.cl-ev-w{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#a33}
.cl-ev.clash{background:#fff6f4}
/* week */
.cl-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:16px}
.cl-wcol{background:#fff;border:1px solid var(--line);min-height:160px;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.cl-wcol:hover,.cl-wcol:focus-visible{border-color:var(--ember);box-shadow:0 6px 18px rgba(15,18,21,.08);outline:none}
.cl-wcol.today{border-top:3px solid var(--ember)}
.cl-whead{padding:10px 10px 8px;border-bottom:1px solid var(--line);background:var(--ivory)}
.cl-whead span{display:block;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone)}
.cl-whead b{font-family:var(--serif);font-weight:500;font-size:1.35rem}
.cl-whead em{display:block;font-style:normal;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ember);margin-top:2px}
.cl-none{padding:12px 10px;color:var(--stone);font-size:.8rem}
@media (max-width:1000px){.cl-week{grid-template-columns:minmax(0,1fr)}.cl-wcol{min-height:0}}
/* month */
.cl-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:16px;border-left:1px solid var(--line);border-top:1px solid var(--line);background:#fff}
.cl-mh{padding:8px;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone);text-align:center;background:var(--ivory);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.cl-md{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-height:110px;padding:6px;background:#fff;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font:inherit;color:var(--ink);text-align:left;cursor:pointer;min-width:0}
.cl-md:hover{background:#fbf8f2}
.cl-md.out{background:#faf8f4;color:var(--stone)}
.cl-md.today{box-shadow:inset 0 0 0 2px var(--ember)}
.cl-mn{font-family:var(--serif);font-size:1.15rem;margin-bottom:2px}
.cl-mev{display:flex;align-items:center;gap:5px;font-size:.7rem;line-height:1.25;min-width:0;padding:1px 4px;border-radius:2px;background:color-mix(in srgb,var(--c) 10%,#fff)}
.cl-mev i{flex:none;width:6px;height:6px;border-radius:50%;background:var(--c)}
.cl-mev span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-mev.clash{outline:1px solid #d77}
.cl-more{font-size:.64rem;color:var(--stone)}
.cl-mc{display:none;font-size:.64rem;color:var(--ember)}
@media (max-width:700px){.cl-md{min-height:64px;padding:4px}.cl-mev,.cl-more{display:none}.cl-mc{display:block}}
/* day timeline (same look as staff shifts) */
.cl-day{margin-top:16px}
.cl-emptyday{background:#fff;border:1px dashed var(--line);padding:26px;text-align:center;color:var(--stone)}
.cl-emptyday .ed-btn{margin-top:10px}
.cl-allday{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;background:#fff;border:1px solid var(--line);padding:10px;margin-bottom:10px}
.cl-allday .cl-ev{width:auto;min-width:200px;border:1px solid var(--line);border-left:3px solid var(--c)}
.cl-ad-l{align-self:center;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone);margin-right:6px}
.cl-tl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid var(--line)}
.cl-tl{--who:220px;position:relative;min-width:calc(var(--who) + var(--hours) * 64px)}
.cl-tl-ruler,.cl-tl-row{display:grid;grid-template-columns:var(--who) minmax(0,1fr)}
.cl-tl-ruler{background:var(--ivory);border-bottom:1px solid var(--line)}
.cl-tl-who{position:sticky;left:0;z-index:3;background:#fff;padding:8px 12px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;min-width:0}
.cl-tl-ruler .cl-tl-who{background:var(--ivory)}
.cl-tl-ruler .cl-tl-who span{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone)}
.cl-tl-who b{font-weight:500;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-tl-who span{font-size:.72rem;color:var(--stone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-tl-scale{position:relative;height:34px}
.cl-tl-tick{position:absolute;top:10px;transform:translateX(-50%);font-size:.66rem;color:#4a4e53;white-space:nowrap}
.cl-tl-tick:first-child{transform:none;margin-left:4px}
.cl-tl-tick:last-child{transform:translateX(-100%);margin-left:-4px}
.cl-tl-row{border-bottom:1px solid rgba(15,18,21,.06)}
.cl-tl-lane{position:relative;min-height:48px}
.cl-tl-bar{position:absolute;top:8px;bottom:8px;z-index:1;display:flex;align-items:center;min-width:6px;padding:0 9px;border:0;border-radius:3px;background:var(--c);color:#fff;font:inherit;font-size:.74rem;white-space:nowrap;overflow:hidden;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.cl-tl-bar span{overflow:hidden;text-overflow:ellipsis}
.cl-tl-bar.open{background:linear-gradient(to right,var(--c) 0,var(--c) calc(100% - 46px),color-mix(in srgb,var(--c) 25%,transparent) 100%)}
.cl-tl-bar.clash{outline:2px solid #d14a3a;outline-offset:1px}
.cl-tl-grid{position:absolute;top:0;bottom:0;left:var(--who);right:0;pointer-events:none}
.cl-tl-grid i{position:absolute;top:34px;bottom:0;width:1px;background:rgba(15,18,21,.07)}
.cl-tl-now{position:absolute;top:26px;bottom:0;width:2px;margin-left:-1px;background:#c0392b;z-index:2}
@media (max-width:640px){.cl-in{padding:20px 16px 60px}.cl-tl{--who:130px}}
/* event details */
.cl-dtype{display:flex;align-items:center;gap:8px;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--c)}
.cl-dtype i{width:10px;height:10px;border-radius:2px;background:var(--c)}
.cl-dl{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px 12px;margin:0}
.cl-dl dt{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone);padding-top:3px}
.cl-dl dd{margin:0}
.cl-notes{white-space:pre-wrap}
.cl-warn{background:#fff3f1;border:1px solid #f0c2bb;color:#8a2a1e;padding:8px 10px;font-size:.88rem}
.sc-f select{font:inherit;font-size:.95rem;padding:10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%}
.sc-f textarea{font:inherit;font-size:.95rem;padding:10px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px;width:100%;resize:vertical}
@media print{#viewCalendar .cl-tools,.tm-recipes .cl-tools{display:none!important}}

/* ---------- header: account row on top (far right), sections below ---------- */
.ed-bar{flex-direction:column;align-items:stretch;gap:10px;flex-wrap:nowrap}
.ed-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ed-top .ed-brand{margin-right:auto}
.ed-acct{display:flex;gap:8px;align-items:center}
.ed-acct .ed-btn.small{color:var(--ivory);border-color:rgba(243,238,229,.35);background:none}
.ed-acct .ed-btn.small:hover{border-color:var(--ember-hot);color:var(--ember-hot);background:none}
.ed-row2{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ed-row2 .ed-status{flex:1;min-width:140px}
.ed-row2 .ed-actions{margin-left:auto}
@media (max-width:640px){.ed-top{gap:8px}.ed-acct .ed-btn.small{padding:6px 9px}}
.sc-copyone{display:block;margin-top:5px;background:none;border:0;padding:0;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ember);cursor:pointer;text-align:left}
.sc-copyone:hover{text-decoration:underline;text-underline-offset:3px}
@media print{.sc-copyone{display:none!important}}

/* ---------- History ---------- */
.hi-in{max-width:1200px;margin:0 auto;padding:28px 32px 80px}
.hi-title{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap}
.hi-sub{max-width:62ch;font-size:.86rem;color:var(--stone)}
.hi-filters{display:flex;gap:10px 14px;flex-wrap:wrap;align-items:end;margin:18px 0 12px;padding:14px 16px;background:var(--ivory);border:1px solid var(--line)}
.hi-filters select,.hi-filters input{font:inherit;font-size:.92rem;padding:8px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.hi-q{flex:1 1 220px}.hi-q input{width:100%}
.hi-list{background:#fff;border:1px solid var(--line)}
.hi-day{padding:10px 16px 6px;font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--ember);background:#faf8f4;border-bottom:1px solid var(--line)}
.hi-row{display:grid;grid-template-columns:72px 82px minmax(0,1fr) minmax(0,220px) 64px;gap:12px;align-items:center;padding:9px 16px;border-bottom:1px solid rgba(15,18,21,.06)}
.hi-row.open{background:#fbf8f2}
.hi-time{font-variant-numeric:tabular-nums;font-size:.85rem;color:#4a4e53}
.hi-act{font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;padding:3px 7px;border-radius:2px;justify-self:start}
.hi-insert{background:#e8f2ea;color:#2f6b3a}.hi-update{background:#f6eee4;color:#8a5a2b}.hi-delete{background:#f8e7e4;color:#a33}
.hi-what{min-width:0}
.hi-what b{display:block;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hi-what span{display:block;font-size:.74rem;color:var(--stone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hi-who{min-width:0;text-align:right}
.hi-who b{display:block;font-weight:500;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hi-who span{display:block;font-size:.72rem;color:var(--stone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hi-more{background:none;border:0;color:var(--ember);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;justify-self:end}
.hi-changes{padding:4px 16px 12px 182px;background:#fbf8f2;border-bottom:1px solid var(--line);display:grid;gap:4px}
.hi-ch{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:.86rem}
.hi-ch span{min-width:120px;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--stone)}
.hi-ch s{color:#a05a4a;text-decoration-color:rgba(160,90,74,.6);word-break:break-word}
.hi-ch i{color:var(--stone);font-style:normal}
.hi-ch em{font-style:normal;color:#2f5f3a;word-break:break-word}
.hi-foot{display:flex;gap:12px;align-items:center;margin-top:12px}
.hi-count{font-size:.8rem;color:var(--stone)}
@media (max-width:760px){
  .hi-in{padding:20px 16px 60px}
  .hi-row{grid-template-columns:60px minmax(0,1fr) 56px;grid-template-areas:"t w m" "a who who"}
  .hi-time{grid-area:t}.hi-what{grid-area:w}.hi-more{grid-area:m}.hi-act{grid-area:a}.hi-who{grid-area:who;text-align:left}
  .hi-changes{padding-left:16px}
}
.hi-v{min-width:0;flex:1;display:grid;gap:3px}
.hi-ch{align-items:flex-start}
.hi-ch.add>span{color:#2f6b3a}.hi-ch.del>span{color:#a33}
.hi-grp{padding:4px 0}
.hi-grp .hi-v>b{font-weight:500}
.hi-grp .hi-ch span{min-width:90px}
.hi-diff{margin:0;line-height:1.55;white-space:pre-wrap;word-break:break-word}
.hi-diff del,.hi-ch s{background:#fbe3df;color:#8a2a1e;text-decoration:line-through}
.hi-diff ins,.hi-ch ins{background:#e2f1e4;color:#1f5a2a;text-decoration:none}
.hi-ch em{word-break:break-word}
.hi-cap{font-size:.74rem;color:var(--stone);margin:6px 0 2px}
.hi-none{font-size:.82rem;color:var(--stone)}
.hi-pre{white-space:pre-wrap;margin:0}
.hi-inline{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.hi-inline s,.hi-inline em{padding:0 3px;border-radius:2px}.hi-inline em{background:#e2f1e4;color:#1f5a2a}.hi-diff del{margin-right:3px}.hi-diff del,.hi-diff ins{padding:0 2px;border-radius:2px}

/* ---------- Analytics ---------- */
.an-in{max-width:1240px;margin:0 auto;padding:28px 32px 80px}
.an-head{display:flex;justify-content:space-between;align-items:end;gap:16px 28px;flex-wrap:wrap;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.an-tabs{display:flex;gap:4px}
.an-tabs a{padding:8px 14px;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;color:var(--stone);border-bottom:2px solid transparent}
.an-tabs a:hover{color:var(--ink)}
.an-tabs a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--ember)}
.an-pane .hi-in{padding:0;max-width:none}
.an-h2{font-size:1.6rem}
.an-bar{display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;margin-bottom:16px}
.an-sub{max-width:70ch;font-size:.84rem;color:var(--stone);line-height:1.5}
.an-seg{display:inline-flex;border:1px solid var(--line);background:#fff;border-radius:2px;flex:none}
.an-seg button{font:inherit;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;padding:8px 12px;border:0;border-left:1px solid var(--line);background:none;color:var(--stone);cursor:pointer;white-space:nowrap}
.an-seg button:first-child{border-left:0}
.an-seg button[aria-pressed="true"]{background:var(--ink);color:var(--ivory)}
.an-busy{opacity:.55;transition:opacity .15s}
.an-loading{padding:30px 0;color:var(--stone);font-size:.9rem}
.an-err{padding:14px 16px;background:#f8e7e4;color:#8a2e22;font-size:.88rem}
.an-note{margin:-4px 0 16px;padding:10px 14px;background:var(--ivory);border-left:3px solid var(--ember);font-size:.86rem;color:var(--text)}
.an-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.an-kpi{background:#fff;border:1px solid var(--line);padding:14px 16px;display:grid;gap:2px;min-width:0}
.an-k{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone)}
.an-kpi b{font-family:var(--serif);font-weight:400;font-size:2.3rem;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}
.an-delta{font-size:.74rem;color:var(--stone);line-height:1.35}
.an-card{background:#fff;border:1px solid var(--line);padding:14px 16px 16px;margin-bottom:16px;min-width:0}
.an-card-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.an-card-h h2{font-size:1.3rem;font-weight:400}
.an-chart{position:relative;width:100%}
.an-chart svg{display:block;max-width:100%;height:auto}
.an-grid{stroke:rgba(15,18,21,.08);stroke-width:1}
.an-axis{stroke:rgba(15,18,21,.28);stroke-width:1}
.an-tick{font-family:var(--sans);font-size:11px;fill:#6f6a62;font-variant-numeric:tabular-nums}
.an-hl{fill:rgba(176,112,63,.08)}
.an-hit{cursor:default}
.an-map{position:relative;width:100%;background:#fbfaf7;border:1px solid rgba(15,18,21,.06)}
.an-map svg{display:block;max-width:100%;height:auto;cursor:grab;touch-action:none}
.an-map svg:active{cursor:grabbing}
.an-land path{stroke:#fff;stroke-width:.6;stroke-linejoin:round}
.an-land path:hover{stroke:var(--ink);stroke-width:1}
.an-borders{fill:none;stroke:#fff;stroke-width:.8;pointer-events:none}
.an-dots circle{fill:rgba(15,18,21,.78);stroke:#fff;stroke-width:1.5}
.an-dots circle:hover{fill:var(--ink)}
.an-zoom{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;gap:4px;align-items:flex-end}
.an-zoom button{font:inherit;min-width:34px;height:34px;padding:0 10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:1.05rem;cursor:pointer;border-radius:2px}
.an-zoom .an-zoom-r{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase}
.an-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;padding:10px 12px;border-top:1px solid rgba(15,18,21,.06);background:#fff}
.an-lg-item{display:flex;align-items:center;gap:7px;font-size:.76rem;color:var(--text)}
.an-lg-k{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--stone);margin-right:4px}
.an-lg-n{font-variant-numeric:tabular-nums;color:var(--stone)}
.an-lg-ramp{display:inline-block;width:120px;height:10px;border-radius:2px}
.an-lg-sw0{display:inline-block;width:14px;height:10px;background:#e7e4de;border-radius:2px}
.an-lg-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:rgba(15,18,21,.78);box-shadow:0 0 0 1.5px #fff,0 0 0 2.5px rgba(15,18,21,.15)}
.an-lg-hint{flex-basis:100%;font-size:.72rem;color:var(--stone)}
.an-lists{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.an-lists .an-card{margin:0}
.an-unit{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--stone)}
.an-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.an-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;row-gap:4px;align-items:baseline}
.an-li-t{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.an-li-n{font-size:.9rem;color:var(--ink)}
.an-li-s{font-size:.74rem;color:var(--stone);margin-left:6px}
.an-list b{font-weight:500;font-size:.88rem;font-variant-numeric:tabular-nums;color:var(--ink)}
.an-li-bar{grid-column:1/-1;height:4px;background:rgba(15,18,21,.05);border-radius:2px;overflow:hidden}
.an-li-bar i{display:block;height:100%;background:#b0703f;border-radius:2px}
.an-li-empty{font-size:.86rem;color:var(--stone)}
.an-li-more{margin-top:8px;font-size:.74rem;color:var(--stone)}
.an-tip{position:fixed;z-index:2000;pointer-events:none;background:var(--ink);color:var(--ivory);padding:8px 11px;border-radius:3px;font-size:.78rem;line-height:1.45;display:grid;box-shadow:0 8px 24px rgba(15,18,21,.25);max-width:260px}
.an-tip[hidden]{display:none}
.an-tip b{font-weight:500}
.an-tip span{color:rgba(243,238,229,.82);font-variant-numeric:tabular-nums}
@media (max-width:1000px){.an-lists{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .an-in{padding:20px 16px 60px}
  .an-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .an-kpi b{font-size:1.8rem}
  .an-lists{grid-template-columns:minmax(0,1fr)}
  .an-seg button{padding:8px 9px;letter-spacing:.1em}
}

/* ---------- Catering & BEOs: inquiries ---------- */
.cq-in{max-width:1240px;margin:0 auto;padding:28px 32px 80px}
.cq-title{display:flex;justify-content:space-between;align-items:end;gap:12px 28px;flex-wrap:wrap}
.cq-sub{max-width:60ch;font-size:.86rem;color:var(--stone);line-height:1.5}
.cq-bar{display:flex;gap:10px 16px;align-items:center;flex-wrap:wrap;margin:18px 0 14px}
.cq-bar input[type=search]{font:inherit;font-size:.92rem;padding:8px 10px;border:1px solid var(--line);background:#fff;border-radius:2px;flex:1 1 220px;max-width:340px}
.cq-seg{display:flex;flex-wrap:wrap;border:1px solid var(--line);background:#fff;border-radius:2px}
.cq-seg button{font:inherit;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;padding:9px 12px;border:0;border-left:1px solid var(--line);background:none;color:var(--stone);cursor:pointer;display:flex;gap:6px;align-items:center}
.cq-seg button:first-child{border-left:0}
.cq-seg button[aria-pressed="true"]{background:var(--ink);color:var(--ivory)}
.cq-n{display:inline-block;min-width:18px;padding:1px 5px;border-radius:9px;background:var(--ember);color:#fff;font-size:.6rem;letter-spacing:0;text-align:center}
.cq-body{display:grid;grid-template-columns:minmax(260px,380px) minmax(0,1fr);gap:16px;align-items:start}
.cq-list{display:grid;gap:6px;max-height:calc(100vh - 290px);overflow:auto;padding-right:2px}
.cq-row{display:grid;gap:3px;text-align:left;font:inherit;padding:12px 14px;background:#fff;border:1px solid var(--line);border-left:3px solid transparent;cursor:pointer;color:var(--ink)}
.cq-row:hover{border-color:rgba(15,18,21,.28)}
.cq-row.on{border-left-color:var(--ember);background:#fbf6ef}
.cq-r1{display:flex;justify-content:space-between;gap:10px;align-items:center}
.cq-r1 b{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cq-r2{font-size:.84rem;color:var(--text)}
.cq-r3{display:flex;justify-content:space-between;gap:10px;font-size:.74rem;color:var(--stone)}
.cq-chip{flex:none;font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;padding:3px 7px;border-radius:2px;background:#eee;color:#555}
.cq-new{background:#f6eee4;color:#8a5a2b}.cq-link_sent{background:#e6eef6;color:#2f5f8a}.cq-received{background:#efe6f4;color:#6a3f86}.cq-beo{background:#e8f2ea;color:#2f6b3a}
.cq-completed,.cq-declined{background:#efefed;color:#6b6f74}.cq-spam{background:#f8e7e4;color:#a33}
.cq-empty,.cq-pick{padding:22px 4px;color:var(--stone);font-size:.9rem}
.cq-detail{background:#fff;border:1px solid var(--line);padding:20px 22px 24px;min-width:0}
.cq-dh{display:grid;gap:4px;margin-bottom:12px}
.cq-dh h2{font-size:1.8rem}
.cq-when{font-size:.8rem;color:var(--stone)}
.cq-st{display:flex;gap:10px;align-items:center;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--stone);margin-top:6px}
.cq-st select{font:inherit;font-size:.9rem;letter-spacing:0;text-transform:none;padding:7px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:2px}
.cq-back{display:none;background:none;border:0;padding:0;color:var(--ember);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;justify-self:start}
.cq-flags{margin:0 0 12px;padding:10px 14px;background:#fbefec;border-left:3px solid #a33;font-size:.86rem;color:var(--text)}
.cq-flags.soft{background:#f6f4ef;border-left-color:var(--stone)}
.cq-flags ul{margin:4px 0 0;padding-left:18px}
.cq-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:4px 0 6px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.cq-acts a.ed-btn{text-decoration:none}
.cq-del{margin-left:auto;background:none;border:0;color:#a33;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.cq-sec{padding:14px 0 4px}
.cq-sec h3{font-family:var(--sans);font-weight:400;font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--ember);margin-bottom:6px}
.cq-kv{display:grid;grid-template-columns:110px minmax(0,1fr);gap:4px 14px;margin:0;font-size:.92rem}
.cq-kv dt{color:var(--stone);font-size:.82rem}
.cq-kv dd{margin:0;word-break:break-word}
.cq-kv a{color:var(--ink)}
.cq-ul{margin:0;padding-left:18px;font-size:.92rem;display:grid;gap:2px}
.cq-msg{white-space:pre-wrap;font-size:.92rem;background:#faf8f4;padding:10px 12px;border:1px solid rgba(15,18,21,.06)}
.cq-sec textarea{width:100%;font:inherit;font-size:.92rem;padding:9px 10px;border:1px solid var(--line);border-radius:2px;resize:vertical}
@media (max-width:900px){
  .cq-in{padding:20px 16px 60px}
  .cq-body{grid-template-columns:minmax(0,1fr)}
  .cq-list{max-height:none}
  .cq-body.has-sel .cq-list{display:none}
  .cq-body:not(.has-sel) .cq-detail{display:none}
  .cq-back{display:inline-block}
  .cq-kv{grid-template-columns:90px minmax(0,1fr)}
}
.cq-health{margin:14px 0 0;padding:10px 14px;font-size:.86rem;border-left:3px solid var(--stone);background:#f6f4ef;color:var(--text)}
.cq-health.on{border-left-color:#2f6b3a;background:#eef5ef}
.cq-health.off{border-left-color:#a33;background:#fbefec}
.cq-health[hidden]{display:none}

.cq-n.muted{background:#b9b4ab}
.cq-row.cq-beo{grid-template-columns:64px minmax(0,1fr);display:grid;gap:12px;align-items:start;background:#fff}
.cq-row.cq-beo.on{background:#fbf6ef}
.cq-date{display:grid;text-align:center;padding:6px 0;border:1px solid var(--line);background:#faf8f4}
.cq-date b{font-family:var(--serif);font-weight:400;font-size:1.15rem;line-height:1.1}
.cq-date span{font-size:.6rem;letter-spacing:.06em;color:var(--stone)}
.cq-bmain{min-width:0;display:grid;gap:2px}
.cq-bmain>b{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cq-steps{list-style:none;margin:10px 0 2px;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px;font-size:.74rem;color:var(--stone)}
.cq-steps li{display:flex;align-items:center;gap:6px}
.cq-steps i{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid var(--line);font-style:normal;font-size:.66rem}
.cq-steps li.done i{background:#e8f2ea;border-color:#b9d6bf;color:#2f6b3a}
.cq-steps li.now{color:var(--ink);font-weight:500}
.cq-steps li.now i{background:var(--ember);border-color:var(--ember);color:#fff}
.cq-steps.off{opacity:.45}
.cq-next{margin:6px 0 4px;padding:14px 16px;background:#fbf6ef;border:1px solid #ecdcc8}
.cq-next p{margin:0 0 10px;font-size:.92rem}
.cq-next .cq-acts{margin:0;padding:0;border:0}
.cq-muted{color:var(--stone);font-size:.88rem}
.cq-choice{margin:0 0 8px}
.cq-choice b{display:block;font-weight:500;font-size:.86rem}
.cq-thread{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:8px;max-height:520px;overflow:auto}
.cq-ev{display:flex;justify-content:space-between;gap:10px;font-size:.76rem;color:var(--stone);padding:2px 4px;border-bottom:1px dashed rgba(15,18,21,.08)}
.cq-m{padding:10px 12px;border:1px solid var(--line);background:#fff;max-width:92%}
.cq-m.cq-out{justify-self:end;background:#fbf6ef;border-color:#ecdcc8}
.cq-m.cq-in{justify-self:start;background:#f4f7fa;border-color:#dbe4ec}
.cq-m.cq-note{justify-self:center;background:#f6f4ef;border-style:dashed;max-width:100%}
.cq-m.failed{border-color:#d9a39a;background:#fbefec}
.cq-mh{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.74rem;color:var(--stone)}
.cq-mh b{color:var(--ink);font-weight:500}
.cq-ms{font-weight:500;font-size:.88rem;margin-top:4px}
.cq-mb{white-space:pre-wrap;font-size:.9rem;margin-top:4px;word-break:break-word}
.cq-compose{display:grid;gap:8px;padding:12px;border:1px solid var(--line);background:#faf8f4}
.cq-ct{font-weight:500;font-size:.9rem}
.cq-compose input,.cq-compose select,.cq-compose textarea{font:inherit;font-size:.92rem;padding:8px 10px;border:1px solid var(--line);border-radius:2px;background:#fff;width:100%}
.cq-crow{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:8px}
.cq-hint{font-size:.76rem;color:var(--stone);margin:0}
.cq-err{color:#a33;font-size:.84rem;margin:0}
.cq-err:empty{display:none}
.cq-compose .cq-acts{margin:0;padding:0;border:0}
.cq-more{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);border-bottom:0}
@media (max-width:900px){.cq-crow{grid-template-columns:1fr}.cq-m{max-width:100%}}

/* ---------- Passwords (js/account.js): change password, temporary passwords ---------- */
.sc-acct{display:inline-flex;flex-direction:column;gap:2px;align-items:flex-start}
.sc-resetpw{background:none;border:0;padding:0;font:inherit;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ember);cursor:pointer}
.sc-resetpw:hover{text-decoration:underline;text-underline-offset:3px}
.acct-back{position:fixed;inset:0;z-index:3000;background:rgba(15,18,21,.55);display:grid;place-items:center;padding:16px}
.acct-card{width:min(440px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;color:#0f1215;border-radius:4px;padding:24px 24px 20px;box-shadow:0 24px 60px rgba(15,18,21,.35);font-family:var(--sans);text-align:left}
.acct-card h2{font-family:var(--serif);font-weight:400;font-size:1.6rem;margin:0 0 10px;color:#0f1215}
.acct-card p{font-size:.92rem;line-height:1.5;margin:0 0 12px;color:#24282c}
.acct-sub{font-size:.8rem!important;color:#7f7a71!important}
.acct-f{display:grid;gap:5px;margin:0 0 12px;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#7f7a71}
.acct-f input{font:inherit;font-size:1rem;letter-spacing:0;text-transform:none;padding:10px 12px;border:1px solid rgba(15,18,21,.2);border-radius:2px;color:#0f1215;background:#fff}
.acct-f input:focus{outline:2px solid #b0703f;outline-offset:-1px}
.acct-temp{font-family:ui-monospace,Menlo,monospace!important;letter-spacing:.04em!important}
.acct-big{font-family:ui-monospace,Menlo,monospace;font-size:1.25rem!important;letter-spacing:.04em;padding:10px 12px;background:#faf6ef;border:1px solid #ecdcc8;color:#0f1215!important;user-select:all}
.acct-check{display:flex;gap:9px;align-items:flex-start;font-size:.86rem;line-height:1.4;margin:2px 0 12px;color:#24282c;cursor:pointer}
.acct-check input{margin-top:3px;accent-color:#b0703f;flex:none}
.acct-msg{min-height:1.2em;color:#a33!important;font-size:.86rem!important}
.acct-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}
.acct-primary,.acct-ghost{font-family:var(--sans);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;padding:11px 18px;border:1px solid #b0703f;cursor:pointer;border-radius:2px}
.acct-primary{background:#b0703f;color:#fff}
.acct-primary:disabled{opacity:.6;cursor:default}
.acct-ghost{background:#fff;color:#b0703f}

/* ---------- Payroll (Owner only) ---------- */
.pr-in{max-width:1400px}
.pr-weekbar{display:flex;justify-content:space-between;align-items:center;gap:10px 20px;flex-wrap:wrap;margin-bottom:6px}
.pr-nav,.pr-jump,.pr-acts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pr-wk{font-size:1.5rem;min-width:11ch;text-align:center}
.pr-intro{margin:6px 0 16px}
.pr-toolbar{display:flex;justify-content:space-between;align-items:end;gap:12px 20px;flex-wrap:wrap;padding:14px 16px;background:#fff;border:1px solid var(--line)}
.pr-pool{display:grid;gap:4px;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone)}
.pr-dollar{display:inline-flex;align-items:center;gap:3px;color:var(--stone);font-size:.9rem;letter-spacing:0;text-transform:none}
.pr-pool .pr-money{width:9em;font-size:1rem}
.pr-poolnote{font-size:.82rem;color:var(--stone);margin:8px 2px 14px;min-height:1.2em}
.pr-warn{color:#9a5a1c}
.pr-err{color:#8a2a1e;margin-bottom:12px}
.pr-pane input[type=text],.pr-pane select,.pr-notes{font:inherit;font-size:.88rem;color:var(--ink);background:#fff;border:1px solid var(--line);padding:6px 8px;border-radius:2px}
.pr-pane input:disabled,.pr-notes:disabled{background:transparent;border-color:transparent;color:var(--ink)}
.pr-pane input:focus,.pr-pane select:focus,.pr-notes:focus{outline:2px solid var(--ember);outline-offset:-1px;border-color:transparent}
.pr-scroll{overflow-x:auto;border:1px solid var(--line);background:#fff}
.pr-table{border-collapse:collapse;width:100%;font-size:.86rem;font-variant-numeric:tabular-nums}
.pr-table th,.pr-table td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:nowrap}
.pr-table thead th{font-family:var(--sans);font-weight:400;font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--stone);background:#faf8f4;position:sticky;top:0}
.pr-table th.pr-day{text-align:center}.pr-table th.pr-day small{display:block;letter-spacing:.05em;font-size:.7rem;text-transform:none}
.pr-table .pr-name{position:sticky;left:0;background:#fff;z-index:1;min-width:160px;font-weight:300}
.pr-table thead .pr-name{background:#faf8f4;z-index:2}
.pr-table .pr-name b{display:block;font-weight:500}
.pr-table .pr-name small{display:block;font-size:.72rem;color:var(--stone)}
.pr-table small.pr-warn{color:#9a5a1c}
.pr-num{text-align:right!important}
.pr-dayc{text-align:center;padding:4px!important}
.pr-h{width:4.2em;text-align:center}
.pr-dayc.chg .pr-h{background:#fbf3ea;border-color:rgba(176,112,63,.55)}
.pr-dayc.approx{box-shadow:inset 0 -3px 0 #c9b8a2}
.pr-ot{color:#9a5a1c;font-weight:500}
.pr-gross{font-weight:500}
.pr-adj{display:flex;gap:6px}
.pr-adj .pr-money{width:6.5em;text-align:right}
.pr-note{width:12em}
.pr-total th,.pr-total td{border-top:2px solid var(--ink);border-bottom:0;font-weight:500;background:#faf8f4}
.pr-total .pr-name{background:#faf8f4}
.pr-key{font-size:.74rem;color:var(--stone);margin:8px 2px 18px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;white-space:pre}
.pr-sw{display:inline-block;width:14px;height:12px;border:1px solid var(--line);background:#fff}
.pr-sw.chg{background:#fbf3ea;border-color:rgba(176,112,63,.55)}
.pr-sw.approx{box-shadow:inset 0 -3px 0 #c9b8a2}
.pr-notesf{display:grid;gap:6px;max-width:720px;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone)}
.pr-notes{width:100%;resize:vertical;letter-spacing:0;text-transform:none}
.pr-fine{max-width:80ch;font-size:.76rem;color:var(--stone);line-height:1.5;margin-top:16px}
.pr-rates td{white-space:normal}
.pr-rates select{min-width:7em}
.pr-amt{display:flex;align-items:center;gap:8px}
.pr-amt .pr-money{width:7em;text-align:right}
.pr-unit{font-size:.78rem;color:var(--stone)}
.pr-c{text-align:center!important}
.pr-c input{width:18px;height:18px;accent-color:var(--ember)}
.pr-rates .pr-note{width:100%;min-width:12em}
.pr-rates tr.inactive{opacity:.6}
.pr-setup{max-width:640px;padding:24px;background:#fff;border:1px solid var(--line)}
.pr-setup ol{margin:12px 0 12px 20px;line-height:1.8}
@media (max-width:820px){.pr-wk{font-size:1.2rem}.pr-toolbar{padding:12px}.pr-table .pr-name{min-width:120px}}
#prPrint{display:none}
@media print{
  body.pr-printing>*:not(#prPrint){display:none!important}
  body.pr-printing{background:#fff;color:#000}
  body.pr-printing #prPrint{display:block;font:10pt/1.4 Georgia,serif;color:#000}
  #prPrint h1{font-size:16pt;margin:0 0 4px}#prPrint h2{font-size:12pt;margin:14px 0 4px}
  #prPrint table{width:100%;border-collapse:collapse;margin:10px 0;font-size:9pt}
  #prPrint th,#prPrint td{border-bottom:1px solid #bbb;padding:3px 5px;text-align:right}
  #prPrint th:first-child,#prPrint td:first-child{text-align:left}
  #prPrint tfoot td{border-top:2px solid #000;font-weight:bold}
  #prPrint small{color:#555}
  #prPrint .pp-pre{white-space:pre-wrap}
  #prPrint .pp-fine{font-size:8pt;color:#555}
  @page{size:landscape;margin:.5in}
}
