:root{--ink:#111;--bg:#f8f8f6;--card:#fff;--line:#e6e1d3;--accent:#bfa14a;}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);background:var(--bg);font:14px system-ui,-apple-system,Segoe UI,Roboto,Arial}
.shell{max-width:1100px;margin:auto;padding:12px}
header{position:sticky;top:0;background:linear-gradient(#fff,rgba(255,255,255,.92));backdrop-filter:saturate(1.1) blur(3px);border-bottom:1px solid var(--line);z-index:5}
.brand h1{margin:0 0 4px;font-size:20px}
.tag{color:#555;margin-bottom:8px}
.controls,.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0}
label{display:flex;flex-direction:column;font-weight:600}
input,select,button{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}
button{background:var(--accent);border-color:var(--accent);color:#111;font-weight:700;cursor:pointer}
button.ghost{background:#fff}
.pill{border-radius:999px;padding:4px 10px;border:1px solid var(--line);background:#fff}
.quick{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}
.tableWrap{border:1px solid var(--line);border-radius:10px;overflow:auto;height:70vh;background:#fff}
table{width:100%;border-collapse:collapse}
th,td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top}
thead th{position:sticky;top:126px;background:#fff;z-index:4}
tr.sabbath{background:#f9f6ec}
tr.feast{background:#f2f8ed}
.small{font-size:12px;color:#555}
.footNote{margin:8px 0}
td[contenteditable="true"]{outline:none}
