*{outline:0!important}.subtitle-city{text-align:center;font-size:1em;color:#666;margin-top:.2em;margin-bottom:.5em;font-weight:400}.buttons button.week-current{background:#f0e7d6}.buttons button.week-next{background:#cab7a291}:root{--week-accent-color:#444444;--today-outline-color:#c37c7c;--open-good-color:#3e9444;--open-warn-color:#a07d2a;--open-bad-color:#b23a3a;--restaurant-link-bg:#F6F1E9;--restaurant-link-bg-hover:rgba(255, 255, 255, 1);--restaurant-link-border:#e0e0e0;--restaurant-link-color:#666;--restaurant-link-color-hover:#333;--restaurant-link-button-size:30px;--restaurant-link-icon-size:16px;--restaurant-bg:#FFF8F0;--restaurant-padding-vertical:15px;--restaurant-padding-horizontal:20px;--restaurant-margin-bottom:20px;--restaurant-border-radius:20px;--restaurant-box-shadow:0 4px 12px rgba(0,0,0,0.05);--restaurant-title-font-size:1.2em;--restaurant-title-border-width:2px;--restaurant-title-border-color:#F6F1E9;--restaurant-title-padding-bottom:8px;--restaurant-outline:2px solid #ddd;--restaurant-outline:3px dashed #007bff;--restaurant-outline:1px solid rgba(255, 255, 255, 0.5);--restaurant-outline:4px double #ff6b6b;--restaurant-outline:2px outset #4ecdc4;--restaurant-outline:1px solid #5e2b0218}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Arial,sans-serif;background:linear-gradient(135deg,#f6f1e948,#fff8f05d);color:#1b1b1b;max-width:900px;margin:0 auto;padding:20px 15px}body.loading{cursor:wait}.header-sticky{position:sticky;top:0;z-index:150;padding:6px 0 6px 0;margin:0 0 10px 0;width:100%;box-sizing:border-box;background:0 0;border-bottom:none;backdrop-filter:none;border-radius:0 0 24px 24px;overflow:hidden;display:flex;justify-content:center;align-items:center;transition:background .25s ease,backdrop-filter .25s ease,box-shadow .25s ease,border-color .25s ease}.header-sticky.fixed-fallback{position:fixed;left:0;right:0;top:0;margin:0}body.has-header-offset{padding-top:var(--header-height,180px)}@supports not ((backdrop-filter:blur(6px))){.header-sticky{background:#f6f1e9f2}}.header-sticky.scrolled{background:linear-gradient(135deg,#fff,#fff);backdrop-filter:blur(6px);border-bottom:1px solid #9c9c9caf;box-shadow:0 2px 6px #0c0c0c4d}.main-title{text-align:center;font-size:2.4em;font-weight:800;margin-top:18px;margin-bottom:.1em;color:#1b1b1b;letter-spacing:.01em}.week-info{text-align:center;font-size:1.1em;color:var(--week-accent-color);margin-top:.05em;margin-bottom:1.2em;font-weight:400}.buttons{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;margin:0;padding:0}.buttons button{border:none;background:#f6f1e9;color:#1b1b1b;padding:10px 15px;margin:4px;border-radius:20px;font-size:.9em;cursor:pointer;transition:background-color .1s ease,color .1s ease,box-shadow .1s ease;min-width:80px;min-height:36px;box-sizing:border-box;font-weight:400;outline:0;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.buttons button.active.today,.buttons button.today,.buttons button.today:focus{outline:2px solid var(--today-outline-color)!important;outline-offset:3px}.buttons button:hover{background:#5c5547;color:#fff}.buttons button.active{background:#3a3529;color:#fff;font-weight:400;box-shadow:0 2px 5px rgba(0,0,0,.2)}.buttons button.today{outline:2px solid var(--today-outline-color);outline-offset:3px}.buttons button:focus{outline:0;box-shadow:0 0 0 2px rgba(142,124,195,.3)}.restaurant{background:var(--restaurant-bg);padding:var(--restaurant-padding-vertical) var(--restaurant-padding-horizontal);margin-bottom:var(--restaurant-margin-bottom);border-radius:var(--restaurant-border-radius);box-shadow:var(--restaurant-box-shadow);outline:var(--restaurant-outline)}.restaurant h2{margin-top:0;font-size:var(--restaurant-title-font-size);font-weight:600;border-bottom:var(--restaurant-title-border-width) solid var(--restaurant-title-border-color);padding-bottom:var(--restaurant-title-padding-bottom);margin-bottom:0;color:#1b1b1b;text-align:center}.lunch-time{text-align:center;font-size:.85em;color:#666;margin:0}.restaurant pre{color:#1b1b1b;background-color:transparent;padding:0;border-radius:0;font-family:inherit;font-size:1.05em;white-space:pre-wrap;word-wrap:break-word;overflow-x:auto;max-width:100%;text-align:center;letter-spacing:.01em;line-height:1.7;box-shadow:none;margin:0}.lunch-status{text-align:center;font-size:.85em;color:#666;margin:2px 0 12px}.lunch-status.status-good{color:var(--open-good-color)}.lunch-status.status-warn{color:var(--open-warn-color)}.lunch-status.status-bad{color:var(--open-bad-color)}.notice{text-align:center;font-size:.8em;color:#a15d00;margin-top:6px}.notice.notice-stale{color:#b23a3a;font-weight:600}.pp-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;justify-content:center;justify-items:center;align-items:start}.pp-location{margin:0;width:100%;max-width:420px;text-align:center}.pp-location:last-child{margin:0}.pp-address{display:inline-block;background:0 0;color:#1b1b1b;padding:0;border-radius:0;font-weight:700;font-size:.85em;margin:0 0 7px 0}.pp-location .lunch-time{margin:0}.pp-location .lunch-status{margin:2px 0 10px}#last-update{position:relative;text-align:center;color:#2e2e2e;margin-top:15px;font-size:.9em}#view-counter{position:absolute;right:0;top:50%;transform:translateY(-50%);opacity:.85;font-weight:500}#dice-button.dice-btn{position:absolute;left:0;top:50%;transform:translateY(-50%);background:0 0;border:none;color:#2e2e2e;cursor:pointer;padding:4px;border-radius:6px}#dice-button.dice-btn:hover{background:rgba(0,0,0,.05)}#dice-button.dice-btn:focus{outline:2px solid rgba(0,0,0,.2);outline-offset:2px}.modal.hidden{display:none}.modal{position:fixed;inset:0;z-index:1000}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.35)}.modal-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.2);width:min(90vw,560px);padding:18px 18px 16px}.modal-card h3{margin:0 0 6px 0;text-align:center;font-size:1.1em}.modal-card .modal-time{text-align:center;color:#666;font-size:.9em;margin:0}.modal-card .modal-status{text-align:center;color:#666;font-size:.9em;margin:2px 0 10px}.modal-card .modal-status.status-good{color:var(--open-good-color)}.modal-card .modal-status.status-warn{color:var(--open-warn-color)}.modal-card .modal-status.status-bad{color:var(--open-bad-color)}.modal-card pre.modal-menu{font-family:inherit;white-space:pre-wrap;margin:0;text-align:center;line-height:1.6}.modal-close{position:absolute;right:8px;top:6px;border:none;background:0 0;font-size:1.6em;cursor:pointer;color:#666}.modal-close:hover{color:#000}@media (max-width:600px){body{padding:15px 10px}.header-sticky{padding:8px 10px 6px}.main-title{font-size:1.6em}.week-info{font-size:.95em}.buttons{gap:6px;flex-wrap:wrap;justify-content:center}.buttons button{padding:8px 10px;margin:2px;font-size:.8em;min-width:50px;min-height:36px;flex:1 1 auto;max-width:70px}.buttons button:nth-child(-n+4){flex-basis:calc(25% - 8px)}.buttons button:nth-child(n+5){flex-basis:calc(33.333% - 8px)}.restaurant{padding:12px 15px}.restaurant h2{font-size:1.1em}.restaurant pre{font-size:.85em}.pp-row{grid-template-columns:1fr}}.restaurant-link{position:absolute;top:12px;right:12px;width:var(--restaurant-link-button-size);height:var(--restaurant-link-button-size);display:flex;align-items:center;justify-content:center;background:0 0;border:1px solid transparent;border-radius:50%;color:var(--restaurant-link-color);text-decoration:none;transition:all .15s ease;z-index:10;box-shadow:none;outline:0!important;will-change:transform,background,border,box-shadow}.restaurant-copy{position:absolute;top:12px;right:52px;width:var(--restaurant-link-button-size);height:var(--restaurant-link-button-size);display:flex;align-items:center;justify-content:center;background:0 0;border:1px solid transparent;border-radius:50%;color:var(--restaurant-link-color);cursor:pointer;transition:background 120ms ease,color 120ms ease,transform 120ms ease,box-shadow 120ms ease;z-index:10;-webkit-tap-highlight-color:transparent}.restaurant-copy.copied,.restaurant-copy:hover{background:var(--restaurant-link-bg);border:1px solid var(--restaurant-link-border);color:var(--restaurant-link-color-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.restaurant-copy.copied{background-color:rgba(0,0,0,.12);transition:background 140ms ease}.restaurant-copy:focus-visible{outline:2px solid var(--today-outline-color);outline-offset:2px}.restaurant-copy:focus{outline:0}.restaurant-copy svg{width:var(--restaurant-link-icon-size);height:var(--restaurant-link-icon-size)}.restaurant-copy:not(:hover):not(.copied):focus{outline:0!important;border:1px solid transparent!important;box-shadow:none!important}.restaurant-link:hover{background:var(--restaurant-link-bg);border:1px solid var(--restaurant-link-border);color:var(--restaurant-link-color-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15);outline:0!important}@media (hover:none) and (pointer:coarse){.restaurant-link:hover{background:0 0;border:1px solid transparent;color:var(--restaurant-link-color);transform:none;box-shadow:none}.restaurant-copy:active,.restaurant-copy:focus,.restaurant-copy:hover{background:0 0!important;border:1px solid transparent!important;color:var(--restaurant-link-color)!important;transform:none!important;box-shadow:none!important}.restaurant-copy.copied{background-color:rgba(0,0,0,.12);border:1px solid var(--restaurant-link-border);color:var(--restaurant-link-color-hover);transform:none!important;box-shadow:none!important}}@media (max-width:768px){.restaurant-link:hover{background:0 0!important;border:1px solid transparent!important;color:var(--restaurant-link-color)!important;transform:none!important;box-shadow:none!important}.restaurant-copy:active,.restaurant-copy:focus,.restaurant-copy:hover{background:0 0!important;border:1px solid transparent!important;color:var(--restaurant-link-color)!important;transform:none!important;box-shadow:none!important}.restaurant-copy.copied{background-color:rgba(0,0,0,.12)!important;border:1px solid var(--restaurant-link-border)!important;color:var(--restaurant-link-color-hover)!important;transform:none!important;box-shadow:none!important}}.restaurant-link:focus-visible{outline:0!important;background:var(--restaurant-link-bg);border:1px solid var(--restaurant-link-border);color:var(--restaurant-link-color-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15);will-change:transform,background,border,box-shadow}.restaurant-link:active{transform:translateY(-.5px);box-shadow:0 2px 6px rgba(0,0,0,.1);outline:0!important;will-change:transform,box-shadow}.restaurant-link svg{width:var(--restaurant-link-icon-size);height:var(--restaurant-link-icon-size);stroke-width:2}.restaurant-link.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.restaurant-link.disabled:hover{background:0 0;border:none;color:var(--restaurant-link-color);transform:none;box-shadow:none}.restaurant{position:relative}.restaurant-copy{position:absolute;top:12px;right:52px;width:var(--restaurant-link-button-size);height:var(--restaurant-link-button-size);display:flex;align-items:center;justify-content:center;background:0 0;border:1px solid transparent;border-radius:50%;color:var(--restaurant-link-color);cursor:pointer;transition:all .15s ease;z-index:10;-webkit-tap-highlight-color:transparent}.restaurant--bg-1{background:#f6f1e9}.hidden{display:none!important}.text-center{text-align:center!important}.unavailable-list{list-style-type:none;padding:0;text-align:center}.last-update{margin-bottom:.5em}.footer-note{text-align:center;margin:.5em 0 0 0;color:#555;font-size:1.05em}:root{--open-good-color:#3e9444;--open-warn-color:#a07d2a;--open-bad-color:#b23a3a}body.status-tester{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;margin:0;padding:16px;color:#1b1b1b;background:#faf7f2}.status-tester .card{background:#fff;border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.08);padding:16px;max-width:720px;margin:0 auto}.status-tester .row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.status-tester .row+.row{margin-top:12px}.status-tester .label{width:140px;color:#444;font-size:.95rem}.status-tester input[type=range]{width:280px}.status-tester input[type=color]{width:40px;height:28px;padding:0;border:none;background:0 0}.status-tester .preview{margin-top:16px;padding:14px 12px;border-radius:10px;text-align:center;background:#fff8f0;border:1px solid #f1eadf}.status-tester .lunch-time{text-align:center;color:#666;font-size:.9rem;margin:0}.status-tester .lunch-status{text-align:center;font-size:.95rem;margin:4px 0 0}.status-tester .mini{font-size:.8rem;color:#666;text-align:center;margin-top:6px}.status-tester .swatches{display:flex;gap:8px;align-items:center}.status-tester .pill{padding:2px 8px;border-radius:999px;background:#f2f2f2;font-size:.8rem;color:#555}.status-tester .buttons{display:flex;gap:8px}.status-tester button{border:1px solid #ddd;background:#fff;border-radius:6px;padding:6px 10px;cursor:pointer}.status-tester button:hover{background:#f7f7f7}