.reservation-body{background:#f4f5f1}.reservation-public{width:min(800px,calc(100% - 32px));margin:35px auto}.reservation-public>.brand{display:inline-flex;margin-bottom:22px}.reservation-card,.reservation-planner,.reservation-settings{padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow)}.reservation-card>p{color:var(--muted)}.reservation-card label,.reservation-settings label,.reservation-planner label{display:block;margin:12px 0;font-size:12px;font-weight:700}.reservation-card input,.reservation-card select,.reservation-card textarea,.reservation-settings input,.reservation-settings select,.reservation-settings textarea,.reservation-planner input,.reservation-planner select,.reservation-planner textarea{width:100%;margin-top:5px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff}.reservation-card textarea,.reservation-settings textarea,.reservation-planner textarea{min-height:76px;resize:vertical}.reservation-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.reservation-card fieldset{margin:20px 0;padding:15px;border:1px solid var(--line);border-radius:14px}.check{display:flex!important;align-items:flex-start;gap:8px}.check input{width:auto!important;margin-top:2px!important}.reservation-terms,.guarantee-box{margin:18px 0;padding:15px;border-radius:14px;background:#f1f5f2}.reservation-card.success{text-align:center}.success-mark{display:grid;place-items:center;width:64px;height:64px;margin:auto;border-radius:50%;color:#fff;background:var(--green);font-size:32px}.guarantee-box{text-align:left}.reservation-admin{max-width:1500px;margin:auto;padding:28px}.reservation-admin-head{margin-bottom:20px}.reservation-admin-head a{color:var(--green);text-decoration:none}.reservation-admin-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(320px,.8fr);gap:18px}.reservation-settings{align-self:start;position:sticky;top:20px}.reservation-day>h3{margin:25px 0 10px}.reservation-day article{display:grid;grid-template-columns:80px minmax(180px,1fr) minmax(260px,.8fr);gap:16px;padding:18px 0;border-top:1px solid var(--line)}.reservation-time strong,.reservation-time small{display:block}.reservation-time strong{font-size:21px}.reservation-time small,.reservation-day article p{color:var(--muted);font-size:11px}.reservation-status{display:inline-block;padding:4px 8px;border-radius:20px;background:#fff2d6;font-size:10px;font-weight:800}.reservation-status.accepted,.reservation-status.completed{color:#177150;background:#e7f7ef}.reservation-status.rejected,.reservation-status.cancelled,.reservation-status.no_show{color:#a33b2d;background:#fdebe8}@media(max-width:900px){.reservation-admin-grid{grid-template-columns:1fr}.reservation-settings{position:static}.reservation-day article{grid-template-columns:65px 1fr}.reservation-day article form{grid-column:1/-1}}@media(max-width:570px){.reservation-grid{grid-template-columns:1fr}.reservation-card,.reservation-planner,.reservation-settings{padding:19px}.reservation-admin{padding:14px}}
.reservation-body .restaurant-mini-logo.logo-image{overflow:hidden;background:#fff}.reservation-body .restaurant-mini-logo.logo-image img{display:block;width:100%;height:100%;object-fit:contain}
.reservation-calendar{margin-bottom:18px;padding:22px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow)}.reservation-calendar>header{display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:center}.reservation-calendar h2{margin:2px 0}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-weekdays{margin-top:18px;text-align:center;color:var(--muted);font-size:11px}.calendar-day{min-height:105px;padding:9px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:#fafbf9;text-decoration:none}.calendar-day>span{display:block;font-weight:800}.calendar-day>small{display:block;margin:3px 0 7px;color:var(--muted);font-size:9px}.calendar-day i{display:block;margin-top:3px;padding:3px 5px;overflow:hidden;border-radius:5px;background:#fff0d4;font-size:8px;font-style:normal;white-space:nowrap;text-overflow:ellipsis}.calendar-day i.accepted,.calendar-day i.seated{color:#177150;background:#e4f5eb}.calendar-day.outside{opacity:.45}.calendar-day.today{border:2px solid var(--green);background:#f0f8f4}.reservation-day{scroll-margin-top:15px}@media(max-width:750px){.reservation-calendar{padding:14px}.reservation-calendar>header{align-items:stretch}.reservation-calendar>header .button{padding:8px;font-size:10px}.calendar-weekdays,.calendar-grid{gap:3px}.calendar-day{min-height:62px;padding:5px}.calendar-day>small,.calendar-day i{display:none}}
.reservation-admin-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.reservation-admin-head a.button{color:#fff}.manual-reservation{margin-bottom:18px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow);scroll-margin-top:18px}.manual-reservation>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;cursor:pointer;list-style:none}.manual-reservation>summary::-webkit-details-marker{display:none}.manual-reservation>summary span,.manual-reservation>summary small{display:block}.manual-reservation>summary small{margin-top:3px;color:var(--muted);font-weight:400}.manual-reservation>summary b{color:var(--green)}.manual-reservation[open]>summary{border-bottom:1px solid var(--line)}.manual-reservation>form{padding:22px 24px}.manual-reservation-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px}.manual-reservation-grid.notes{grid-template-columns:1fr 1fr;margin-top:12px}.manual-reservation label{font-size:12px;font-weight:700}.manual-reservation input,.manual-reservation select,.manual-reservation textarea{width:100%;margin-top:5px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff}.manual-reservation textarea{min-height:75px;resize:vertical}.manual-preorder{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:14px}.manual-preorder>label{display:inline-block;width:min(360px,100%);margin-right:12px;vertical-align:top}.manual-product-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:14px}.manual-product-list section{padding:12px;border-radius:12px;background:#f5f7f4}.manual-product-list section>strong{display:block;margin-bottom:8px}.manual-product-list section label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}.manual-product-list section input{width:65px;margin:0}.manual-reservation-note{color:var(--muted);font-size:11px}.manual-reservation .check{margin:12px 0}.manual-reservation .check input{width:auto}@media(max-width:1100px){.manual-reservation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.reservation-admin-head{align-items:flex-start;flex-direction:column}}@media(max-width:570px){.manual-reservation-grid,.manual-reservation-grid.notes{grid-template-columns:1fr}.manual-reservation>summary,.manual-reservation>form{padding:16px}}
