:root{font-family:Pretendard,Noto Sans KR,system-ui,sans-serif;color:#17211d;background:#f4f6f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button{font:inherit;cursor:pointer;border:0;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.45}.app{min-height:100vh;padding-bottom:102px}header{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:15px 26px;color:#fff;background:#173c32;box-shadow:0 2px 12px #102a2340}header div{display:flex;align-items:baseline;gap:13px}header strong{font-size:27px;letter-spacing:-1px}header span{color:#d6e4df;font-size:16px}.floor-switch{padding:12px 18px;border:1px solid #ffffff50;border-radius:12px;color:#fff;background:#ffffff14;font-weight:800}main{max-width:1180px;margin:auto;padding:24px}section{margin-bottom:35px}h1{margin:7px 0 15px;font-size:24px;letter-spacing:-.6px}.section-help{margin:-7px 0 14px;color:#69756f;font-size:15px}.button-grid,.menu-grid{display:grid;gap:12px}.rooms{grid-template-columns:repeat(5,1fr)}.rooms button{min-height:72px;border:2px solid #dce3df;border-radius:14px;color:#28342f;background:#fff;font-size:23px;font-weight:850;box-shadow:0 2px 5px #132a2210}.rooms button.selected{border-color:#216e58;color:#fff;background:#216e58;box-shadow:0 5px 13px #216e5838}.menu-tile{position:relative;display:flex;align-items:center;justify-content:center;min-height:82px;padding:14px 38px 14px 14px;border:2px solid #dce3df;border-radius:14px;color:#26322d;background:#fff;box-shadow:0 2px 6px #132a2210;line-height:1.3;transition:transform .1s,border-color .15s,background .15s}.menu-tile:active{transform:scale(.98)}.menu-tile b{font-size:18px;word-break:keep-all}.menu-tile.chosen{border-color:#216e58;background:#edf7f3}.quantity-badge{position:absolute;top:8px;right:8px;display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:18px;color:#fff;background:#216e58;font-size:16px;font-weight:900}.summary,.ready-banner{padding:22px;border:1px solid #dce3df;border-radius:17px;background:#fff;box-shadow:0 4px 16px #132a2212}.summary-list{margin-bottom:18px}.summary-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 0;border-bottom:1px solid #e7ece9}.summary-row>div:first-child{display:flex;flex-direction:column;gap:4px}.summary-row small{color:#718078}.summary-counter{display:flex;align-items:center;gap:8px}.summary-counter button{width:45px;height:45px;border-radius:11px;color:#173c32;background:#e8efec;font-size:26px;font-weight:800}.summary-counter strong{min-width:32px;text-align:center;font-size:21px}.summary-counter .remove{width:auto;padding:0 13px;color:#9b2c2c;background:#fbeaea;font-size:15px}.empty-cart{padding:25px;border-radius:12px;color:#718078;background:#f4f6f3;text-align:center}.primary{width:100%;min-height:62px;border-radius:13px;color:#fff;background:#216e58;font-size:21px;font-weight:900;box-shadow:0 4px 10px #216e5830}.message{padding:13px;border-radius:10px;color:#315f52;background:#eaf5f1}.ready-banner{border:2px solid #318568;background:#edf8f3}.ready-banner h2{margin-top:0;color:#155d48}.ready-banner button{padding:12px 17px;border-radius:10px;color:#fff;background:#216e58;font-weight:800}nav{position:fixed;z-index:6;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);height:88px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #dce3df;background:#fff;box-shadow:0 -3px 14px #132a2215}nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#6c7973;background:#fff;font-size:22px}nav button span{font-size:15px;font-weight:800}nav button.active{color:#175844;background:#eef6f2}.error{padding:13px 20px;color:#8d2525;background:#fbe7e7;font-weight:800}.setup,.placeholder{padding-top:18vh;text-align:center}.setup p{line-height:1.8}.kitchen-title{display:flex;justify-content:space-between;align-items:center}.kitchen-title button{padding:12px 18px;border-radius:10px;color:#31423b;background:#e4ebe7;font-weight:800}.orders{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.order-card{padding:20px;border:1px solid #dce3df;border-radius:17px;background:#fff;box-shadow:0 4px 15px #132a2212}.order-card.new-order{border:4px solid #bd3f3f;animation:pulse 1.3s infinite}.order-head{display:flex;justify-content:space-between;align-items:start}.order-head small{color:#728078;font-size:16px}.order-head h2{margin:4px 0;font-size:34px}.badge{padding:9px 13px;border-radius:20px;background:#e9eeeb;font-weight:900}.badge.new{color:#972d2d;background:#fbe3e3}.badge.confirmed{color:#795813;background:#fff1c9}.badge.preparing{color:#24557c;background:#e1eff9}.badge.ready{color:#176047;background:#dcf3e9}.order-card time{color:#728078}.order-card ul{padding:0;list-style:none}.order-card li{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e7ece9;font-size:20px}.empty{grid-column:1/-1;display:flex;flex-direction:column;gap:10px;align-items:center;padding:80px;color:#728078;font-size:21px}@keyframes pulse{50%{box-shadow:0 0 0 7px #f2caca}}@media(max-width:700px){.rooms{grid-template-columns:repeat(3,1fr)}.menu-grid{grid-template-columns:repeat(2,1fr)}.orders{grid-template-columns:1fr}.summary-row{align-items:flex-start;flex-direction:column}.summary-counter{width:100%}header{padding:11px 14px}header strong{font-size:22px}header span{display:none}main{padding:15px}}.handoff-actions{display:grid;gap:10px;margin-top:18px}.handoff-actions button{min-height:58px;border-radius:13px;color:#fff;font-size:19px;font-weight:900}.handoff-actions .pickup{background:#2563eb}.handoff-actions .delivery{background:#15803d}.ready-item{gap:16px;padding:12px 0;border-top:1px solid #bbf7d0}.ready-item p{display:flex;flex-direction:column!important;align-items:flex-start!important;gap:6px;margin:0}.ready-item strong{font-size:21px;color:#166534}.kitchen-ready-wait{display:flex;margin-top:17px;padding:14px;border-radius:11px;color:#315c4c;background:#e7f2ec;flex-direction:column;gap:5px}.kitchen-ready-wait span{font-size:14px}:root{color:#262421;background:#f5f3ef}header{background:#292724;box-shadow:0 2px 12px #1d1b1828}header span{color:#ddd8d0}.floor-switch{color:#fff;background:#ffffff12;border-color:#ffffff30}.rooms button{color:#302d29;background:#fff;border-color:#d8d3cb;box-shadow:none}.rooms button.selected{color:#fff;background:#4b4640;border-color:#4b4640;box-shadow:none}.category-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:440px;margin-bottom:14px;padding:5px;border-radius:14px;background:#e9e5df}.category-tabs button{min-height:49px;border-radius:10px;color:#6d665e;background:transparent;font-size:18px;font-weight:850}.category-tabs button.selected{color:#fff;background:#4b4640;box-shadow:0 2px 7px #2d29241f}.section-help{color:#777067}.menu-grid{grid-template-columns:repeat(4,1fr)}.menu-tile{min-height:76px;color:#302d29;background:#fff;border-color:#d8d3cb;box-shadow:none}.menu-tile.chosen{border-color:#9b7657;background:#faf5ef}.quantity-badge{color:#fff;background:#9b7657}.summary,.ready-banner,.order-card{border-color:#ddd8d0;box-shadow:0 3px 12px #29241d0c}.summary-counter button{color:#35312d;background:#eeeae4}.summary-counter .remove{color:#963c3c;background:#f9eaea}.primary{background:#4b4640;box-shadow:none}.message{color:#624c38;background:#f5eee6}.ready-banner{border-color:#aa8b6e;background:#faf5ef}.ready-banner h2,.ready-item strong{color:#684d35}.ready-banner button{background:#4b4640}nav{border-color:#ddd8d0;box-shadow:0 -2px 10px #29241d0d}nav button{color:#77716a}nav button.active{color:#342f2a;background:#f0ede8}.kitchen-title button{color:#3c3935;background:#ebe8e3}.badge.ready{color:#65482f;background:#f1e5d8}.handoff-actions .pickup{background:#4b5969}.handoff-actions .delivery{background:#665746}@media(max-width:900px){.menu-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.menu-grid{grid-template-columns:repeat(2,1fr)}}nav button{position:relative;font-size:16px}nav button span{font-size:17px}nav button.active:before{position:absolute;top:0;right:24%;left:24%;height:3px;border-radius:0 0 3px 3px;background:#4b4640;content:""}.reservation-page{max-width:1400px}.reservation-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.reservation-toolbar>div{display:flex;align-items:center;gap:16px}.reservation-toolbar h1{margin:0;font-size:29px}.reservation-toolbar input,.new-reservation{min-height:50px;padding:0 17px;border:1px solid #d4cec6;border-radius:11px;background:#fff;font-size:18px}.new-reservation{color:#fff;background:#4b4640;font-weight:800}.reservation-sheet{overflow:hidden;border:1px solid #cfc9c1;border-radius:14px;background:#fff}.reservation-sheet>h2{margin:0;padding:15px 19px;color:#fff;background:#4b4640;font-size:19px}.reservation-table{overflow-x:auto}.reservation-header,.reservation-row{display:grid;grid-template-columns:55px 100px 110px 75px 130px 160px minmax(260px,1fr);min-width:890px}.reservation-header{background:#ece8e2;font-weight:800}.reservation-header span,.reservation-row>span,.reservation-row>b{padding:12px 9px;border-right:1px solid #d8d2ca;text-align:center}.reservation-row{width:100%;min-height:58px;border-top:1px solid #d8d2ca;color:#302d29;background:#fff;text-align:left}.reservation-row:hover{background:#faf7f3}.reservation-row.cancelled{text-decoration:line-through;opacity:.5}.notes-cell{display:flex;flex-direction:column;gap:4px;text-align:left!important}.notes-cell em{color:#825b39;font-style:normal;font-weight:800}.reservation-empty{padding:28px;color:#777067;text-align:center}.daily-note{padding:20px;border:1px solid #d8d2ca;border-radius:14px;background:#fff}.daily-note textarea,.notes-label textarea{width:100%;min-height:100px;padding:13px;border:1px solid #d8d2ca;border-radius:10px;resize:vertical;font:inherit}.daily-note button{float:right;margin-top:10px;padding:11px 18px;border-radius:9px;color:#fff;background:#4b4640;font-weight:800}.modal-backdrop{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:18px;background:#17151299}.reservation-form{overflow:auto;width:min(850px,100%);max-height:94vh;padding:23px;border-radius:17px;background:#fff;box-shadow:0 20px 60px #0004}.form-title{display:flex;justify-content:space-between;align-items:center}.form-title button{padding:9px 13px;border-radius:8px;background:#ece8e2}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.form-grid label,.notes-label{display:flex;flex-direction:column;gap:6px;font-weight:800}.form-grid label.wide{grid-column:1/-1}.form-grid input{min-height:48px;padding:0 12px;border:1px solid #d8d2ca;border-radius:9px;font:inherit}.preorder-menu{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;max-height:260px;margin-bottom:18px;overflow:auto}.preorder-menu>div{display:grid;grid-template-columns:1fr 38px 28px 38px;align-items:center;gap:5px;padding:7px;border-radius:9px;background:#f5f3ef}.preorder-menu button{height:36px;border-radius:7px;background:#e5e0da;font-size:20px}.preorder-menu b{text-align:center}.form-actions{display:flex;gap:8px;margin-top:12px}.form-actions button{flex:1;padding:11px;border-radius:8px;background:#ece8e2}.form-actions .danger{color:#922;background:#f8e6e6}.reservation-preorders{padding:17px;border:2px solid #a98565;border-radius:16px;background:#faf5ef}.reservation-preorders>h2{margin-top:0}.reserved-order{border-left:5px solid #a98565}.reservation-request{padding:10px;border-radius:8px;background:#f5eee6}@media(max-width:700px){.reservation-toolbar,.reservation-toolbar>div{align-items:stretch;flex-direction:column}.form-grid,.preorder-menu{grid-template-columns:1fr}}.form-grid select{min-height:48px;padding:0 12px;border:1px solid #d8d2ca;border-radius:9px;color:#302d29;background:#fff;font:inherit}.time-picker{margin:20px 0}.time-picker h3{margin-bottom:10px}.period-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;padding:5px;border-radius:12px;background:#eeeae4}.period-buttons button{min-height:45px;border-radius:9px;color:#69625b;background:transparent;font-weight:850}.period-buttons button.selected{color:#fff;background:#4b4640}.time-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.time-buttons button{min-height:44px;border:1px solid #d8d2ca;border-radius:9px;color:#3b3733;background:#fff;font-weight:750}.time-buttons button.selected{color:#fff;background:#9b7657;border-color:#9b7657}@media(max-width:600px){.time-buttons{grid-template-columns:repeat(3,1fr)}}.form-grid label:nth-child(2) small{font-size:0}.form-grid label:nth-child(2) small:after{color:#716a62;font-size:12px;content:"15:00~17:00 예약은 오후에 표시됩니다."}.settlement-page{max-width:1250px}.settlement-head>div{display:flex;align-items:center;gap:16px}.settlement-head h1{font-size:29px}.settlement-head input{min-height:48px;padding:0 14px;border:1px solid #d8d2ca;border-radius:10px;background:#fff;font:inherit}.settlement-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 24px;padding:5px;border-radius:13px;background:#e8e4de}.settlement-nav button{min-height:52px;border-radius:9px;color:#6b655e;background:transparent;font-size:18px;font-weight:850}.settlement-nav button.active{color:#fff;background:#4b4640}.info-box{margin-bottom:17px;padding:13px;border-radius:10px;color:#65503c;background:#f6eee5}.sales-period{margin-bottom:28px}.sales-period>h2{padding-bottom:9px;border-bottom:2px solid #4b4640}.sale-group{display:grid;grid-template-columns:150px 1fr 110px;align-items:center;gap:15px;margin-bottom:9px;padding:14px;border:1px solid #dbd6cf;border-radius:12px;background:#fff}.sale-group>div{display:flex;flex-direction:column;gap:4px}.sale-group>div b{font-size:20px}.sale-group ul{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}.sale-group li{padding:8px 10px;border-radius:8px;background:#f2efeb}.sale-group li b{margin-left:8px}.sale-group label{font-weight:800}.sale-group label input{width:20px;height:20px;vertical-align:middle}.sale-group.excluded{border-color:#c99b9b;background:#fbefef;opacity:.72}.empty-line{padding:24px;color:#787169;text-align:center}.other-card,.final-card{margin-bottom:20px;padding:20px;border:1px solid #dbd6cf;border-radius:14px;background:#fff}.inline-form{display:grid;grid-template-columns:180px 130px 1fr 90px;gap:8px;margin-bottom:15px}.inline-form input,.inline-form select,.ingredient-form input{min-height:45px;padding:0 10px;border:1px solid #d8d2ca;border-radius:8px;background:#fff;font:inherit}.inline-form button,.ingredient-form button{border-radius:8px;color:#fff;background:#4b4640;font-weight:800}.ingredient-form{display:grid;grid-template-columns:1fr 1fr 90px 80px 1fr 1fr 80px;gap:8px;margin-bottom:15px}.other-row{display:flex;justify-content:space-between;align-items:center;padding:11px 3px;border-top:1px solid #ebe7e2}.other-row button{padding:7px 11px;border-radius:7px;color:#922;background:#f8e8e8}.final-header,.final-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;align-items:center}.final-header{padding:11px;color:#fff;background:#4b4640;font-weight:800}.final-row{position:relative;min-height:58px;padding:10px;border-bottom:1px solid #e4dfd9}.final-row span,.final-row strong{text-align:right}.final-row.warning{padding-bottom:29px;background:#fff4e5}.final-row small{position:absolute;right:10px;bottom:5px;color:#a14e15}.total-weight{display:flex;justify-content:flex-end;gap:15px;margin-top:18px;padding:16px;border-radius:10px;background:#eeeae4;font-size:20px}.total-weight b{font-size:23px}@media(max-width:750px){.sale-group{grid-template-columns:1fr}.inline-form,.ingredient-form{grid-template-columns:1fr 1fr}.final-header,.final-row{grid-template-columns:1fr 1fr;font-size:14px}.final-header span:nth-child(3),.final-header span:nth-child(4){display:none}.final-row small{position:static;grid-column:1/-1}.settlement-nav button{font-size:15px}}.receipt-form{grid-template-columns:minmax(220px,1fr) 180px 100px}.ingredient-simple{display:grid;grid-template-columns:1fr 180px 100px;gap:8px;margin-bottom:15px}.ingredient-simple input{min-height:45px;padding:0 11px;border:1px solid #d8d2ca;border-radius:8px;font:inherit}.ingredient-simple button{border-radius:8px;color:#fff;background:#4b4640;font-weight:800}.final-header.final-three,.final-row.final-three{grid-template-columns:1.2fr 1fr 1fr;border:1px solid #aaa39a;border-bottom:0}.final-row.final-three{border-bottom:1px solid #aaa39a}.final-three>*{height:100%;padding:12px;border-right:1px solid #aaa39a}.final-three>*:last-child{border-right:0}.final-row.final-three span{text-align:right}@media(max-width:700px){.receipt-form,.ingredient-simple{grid-template-columns:1fr}.final-header.final-three,.final-row.final-three{grid-template-columns:1fr 1fr 1fr}.final-three>*{padding:9px 5px}}.source-total-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.source-total-grid>div{display:flex;justify-content:space-between;align-items:center;padding:17px;border:1px solid #aaa39a;border-radius:9px;background:#eeeae4}.source-total-grid b{font-size:22px}.cake-header,.cake-row,.non-meat-header,.non-meat-row{display:grid;grid-template-columns:1fr 180px;border:1px solid #aaa39a;border-bottom:0}.cake-row:last-child,.non-meat-row:last-of-type{border-bottom:1px solid #aaa39a}.cake-header,.non-meat-header{color:#fff;background:#4b4640;font-weight:800}.cake-header>*,.cake-row>*,.non-meat-header>*,.non-meat-row>*{padding:12px;border-right:1px solid #aaa39a}.cake-header>*:last-child,.cake-row>*:last-child,.non-meat-header>*:last-child,.non-meat-row>*:last-child{border-right:0;text-align:right}.non-meat-total{display:flex;justify-content:flex-end;gap:15px;margin-top:15px;padding:14px;border-radius:9px;background:#eeeae4}@media(max-width:650px){.source-total-grid{grid-template-columns:1fr}.cake-header,.cake-row,.non-meat-header,.non-meat-row{grid-template-columns:1fr 100px}}.cake-in-table{background:#faf7f2}.cake-in-table span:last-child{color:#918980;text-align:center}.grand-total{border-top:2px solid #4b4640!important;border-bottom:2px solid #4b4640!important;background:#e9e5df;font-size:18px}.grand-total strong{text-align:right;font-size:20px}.header-actions{display:flex;align-items:center;gap:9px}.call-button{padding:12px 18px;border-radius:12px;color:#292724;background:#f1d38b;font-weight:900}.incoming-calls{position:fixed;z-index:15;top:78px;right:20px;display:grid;gap:10px;width:min(440px,calc(100vw - 40px))}.incoming-calls article{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:17px;border:3px solid #bf7a26;border-radius:14px;color:#292724;background:#fff6d9;box-shadow:0 8px 30px #0003;animation:callPulse 1.2s infinite}.incoming-calls article>div{display:flex;align-items:flex-start;flex-direction:column;gap:4px}.incoming-calls strong{font-size:20px}.incoming-calls time{color:#74634f;font-size:13px}.incoming-calls p{margin:5px 0 0;font-size:18px;white-space:pre-wrap}.incoming-calls article>button{padding:12px 17px;border-radius:9px;color:#fff;background:#4b4640;font-weight:900}.call-modal-backdrop{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:18px;background:#17151299}.call-modal{width:min(520px,100%);padding:23px;border-radius:16px;color:#292724;background:#fff}.call-modal h2{margin-top:0}.call-modal label{display:flex;flex-direction:column;gap:8px;font-weight:800}.call-modal textarea{min-height:130px;padding:13px;border:1px solid #cec8c0;border-radius:10px;resize:vertical;font:inherit}.call-modal>div{display:grid;grid-template-columns:1fr 2fr;gap:9px;margin-top:15px}.call-modal>div button{min-height:50px;border-radius:10px;background:#e9e5df;font-weight:800}.call-modal>div .send-call{color:#fff;background:#4b4640}.call-message{padding:10px;border-radius:8px;background:#f5eee6}.call-modal .call-message+div{display:contents}@keyframes callPulse{50%{box-shadow:0 0 0 7px #f1d38b66}}@media(max-width:650px){.call-button,.floor-switch{padding:10px;font-size:13px}.incoming-calls{top:68px;right:10px;width:calc(100vw - 20px)}}.custom-menu-tile{flex-direction:column;gap:5px;border-style:dashed}.custom-menu-tile>span{color:#6c746e;font-size:13px}.custom-remove{padding:10px 14px;border-radius:9px;color:#8a5151;background:#f6eded;font-weight:800}.custom-modal-backdrop{position:fixed;z-index:25;inset:0;display:grid;place-items:center;padding:18px;background:#17151299}.custom-modal{width:min(480px,100%);padding:24px;border-radius:16px;background:#fff;box-shadow:0 20px 60px #0004}.custom-modal h2{margin-top:0}.custom-modal label{display:flex;flex-direction:column;gap:7px;margin-bottom:15px;font-weight:800}.custom-modal select,.custom-modal input{min-height:50px;padding:0 12px;border:1px solid #d6d2cc;border-radius:9px;background:#fff;font:inherit}.custom-modal>div{display:grid;grid-template-columns:1fr 2fr;gap:9px}.custom-modal>div button{min-height:50px;border-radius:9px;background:#e9e5df;font-weight:800}.custom-modal>div .add-custom{color:#fff;background:#4b4640}.custom-error{margin:0 0 13px;padding:10px;border-radius:8px;color:#922;background:#f8e8e8;font-weight:700}.active-orders{padding:18px;border:1px solid #d8d2ca;border-radius:15px;background:#fff}.active-orders-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.active-orders-title h2{margin:0;font-size:20px}.active-orders-title span{padding:5px 9px;border-radius:14px;background:#ece8e2;font-weight:800}.active-order-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 0;border-top:1px solid #e7e3de}.active-order-row>div{display:flex;flex-direction:column;gap:5px}.active-order-row>div span{color:#6f6a64}.active-order-row>button{flex:none;padding:10px 14px;border-radius:9px;color:#934343;background:#f8e9e9;font-weight:850}@media(max-width:650px){.active-order-row{align-items:flex-start;flex-direction:column}.active-order-row>button{width:100%}}.sale-group>div>em{margin-top:5px;color:#984848;font-size:14px;font-style:normal;font-weight:800}.exclusion-actions{display:flex!important;flex-direction:column!important;gap:6px}.exclusion-actions button{min-height:38px;padding:7px 10px;border-radius:8px;color:#4b4640;background:#e9e5df;font-size:14px;font-weight:850}.exclusion-actions .exclude-button{color:#913f3f;background:#f8e7e7}.sale-group.excluded .exclusion-actions button{color:#fff;background:#77716a}@media(max-width:750px){.exclusion-actions{flex-direction:row!important}.exclusion-actions button{flex:1}}.non-meat-header,.non-meat-row{display:grid;grid-template-columns:1fr 180px;border:1px solid #aaa39a;border-bottom:0}.non-meat-header{color:#fff;background:#4b4640;font-weight:800}.non-meat-row:last-of-type{border-bottom:1px solid #aaa39a}.non-meat-header>*,.non-meat-row>*{padding:13px;border-right:1px solid #aaa39a}.non-meat-header>*:last-child,.non-meat-row>*:last-child{border-right:0;text-align:right}.non-meat-total{display:flex;justify-content:flex-end;gap:15px;margin-top:16px;padding:14px;border-radius:9px;background:#eeeae4;font-size:18px}.non-meat-total b{font-size:20px}@media(max-width:600px){.non-meat-header,.non-meat-row{grid-template-columns:1fr 120px}}.room-status-section{margin-bottom:30px}.room-status-title{display:flex;align-items:center;justify-content:space-between}.room-status-title h1{margin:0 0 15px}.room-status-title button{padding:9px 13px;border-radius:9px;background:#ebe8e3;font-weight:800}.room-status-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}.room-status-card{display:flex;min-height:190px;padding:15px;border:2px solid #d8d3cb;border-radius:14px;background:#fff;flex-direction:column;gap:8px}.room-status-card>div{display:flex;align-items:center;justify-content:space-between;gap:5px}.room-status-card h2{margin:0;font-size:21px}.room-status-card span{padding:5px 8px;border-radius:15px;background:#eeece8;font-size:12px;font-weight:900}.room-status-card b{font-size:17px}.room-status-card p,.room-status-card small{margin:0;color:#746e67}.room-status-card button{min-height:41px;margin-top:auto;border-radius:9px;font-weight:900}.room-status-card.occupied{border-color:#9b7657;background:#faf5ef}.room-status-card.occupied span{color:#fff;background:#9b7657}.room-status-card.departed span{color:#45604f;background:#e5eee8}.room-enter{color:#fff;background:#4b4640}.room-exit{color:#8d2c2c;background:#f7e5e5}.room-entry-modal{width:min(460px,100%);padding:23px;border-radius:17px;background:#fff}.room-entry-modal label{display:flex;margin:17px 0;flex-direction:column;gap:7px;font-weight:800}.room-entry-modal select,.room-entry-modal input{min-height:50px;padding:0 12px;border:1px solid #d8d2ca;border-radius:9px;background:#fff;font:inherit}@media(max-width:1000px){.room-status-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.room-status-grid{grid-template-columns:repeat(2,1fr)}.room-status-card{min-height:175px}}.butcher-page{padding-bottom:0}.butcher-dispatch{padding:20px;border:1px solid #ddd8d0;border-radius:16px;background:#fff}.butcher-title{display:flex;align-items:start;justify-content:space-between}.butcher-title h2{margin:0;font-size:25px}.butcher-title p{margin:7px 0 18px;color:#777067}.butcher-title>button{padding:9px 12px;border-radius:8px;background:#eeeae4}.butcher-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:10px}.butcher-form label{display:flex;flex-direction:column;gap:6px;font-weight:800}.butcher-form select,.butcher-form input{min-height:49px;padding:0 11px;border:1px solid #d8d2ca;border-radius:9px;background:#fff;font:inherit}.butcher-form>button{min-height:49px;padding:0 17px;border-radius:9px;color:#fff;background:#4b4640;font-weight:900}.butcher-list{margin-top:17px}.butcher-list>div{display:flex;align-items:center;gap:8px;padding:12px 0;border-top:1px solid #e5e0da}.butcher-list span{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.butcher-list small{color:#777067}.butcher-list button{padding:9px 12px;border-radius:8px;background:#ece8e2;font-weight:800}.butcher-list button.danger{color:#922;background:#f8e6e6}@media(max-width:800px){.butcher-form{grid-template-columns:1fr 1fr}.butcher-form>button{grid-column:1/-1}}@media(max-width:520px){.butcher-form{grid-template-columns:1fr}.butcher-form>button{grid-column:auto}.butcher-list>div{flex-wrap:wrap}.butcher-list span{flex-basis:100%}}.sale-group li{gap:10px}.sale-group li>span{flex:1}.sale-group li>button{padding:7px 10px;border-radius:7px;color:#922;background:#f8e6e6;font-size:13px;font-weight:800}.sale-group li.settlement-item-deleted{opacity:.55;text-decoration:line-through}.sale-group li.settlement-item-deleted>button{color:#385846;background:#e5eee8;text-decoration:none}.sale-group-head{display:flex;align-items:center;justify-content:space-between}.prepaid-checkbox{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:8px;background:#f1eee9;font-weight:800}.prepaid-checkbox input{width:23px;height:23px;accent-color:#4b4640}.settlement-quantity{display:flex;align-items:center;gap:7px}.settlement-quantity button{width:34px;height:34px;border-radius:8px;background:#ece8e2;font-size:19px;font-weight:900}.settlement-quantity b{min-width:42px;text-align:center}.sale-group{display:grid!important;grid-template-columns:110px 1fr auto!important;align-items:center!important;gap:14px!important;padding:12px 14px!important}.sale-room-name{font-size:18px}.sale-group ul{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:0!important}.sale-group li{display:block!important;padding:8px 10px!important;border:0!important;border-radius:8px!important;background:#f0eeea!important;white-space:nowrap}.sale-group .prepaid-checkbox{justify-self:end;background:transparent!important;white-space:nowrap}.sale-group.excluded{opacity:.55}@media(max-width:650px){.sale-group{grid-template-columns:85px 1fr auto!important;gap:8px!important;padding:10px!important}.sale-room-name{font-size:16px}.sale-group li{font-size:14px!important}.prepaid-checkbox{padding:4px!important}.prepaid-checkbox input{width:20px!important;height:20px!important}}.form-actions .reservation-enter{color:#fff;background:#4b4640;font-weight:900}.reservation-state{align-self:flex-start;padding:4px 8px;border-radius:12px;font-size:12px;font-style:normal}.reservation-state.reserved{color:#725b2d;background:#f7edcf}.reservation-state.checked-in{color:#fff;background:#4f765e}.reservation-state.completed{color:#496055;background:#e2ece6}.reservation-state.cancelled{color:#8b4545;background:#f5e2e2}.reservation-row.checked-in{border-left:5px solid #4f765e;background:#f2f7f3}.reservation-row.completed{opacity:.68;background:#eef1ef}.reservation-row.cancelled{opacity:.5}.reservation-status-banner{margin:12px 0 17px;padding:15px;border-radius:11px;text-align:center;font-size:18px;font-weight:900}.reservation-status-banner.reserved{color:#725b2d;background:#f7edcf}.reservation-status-banner.checked-in{color:#fff;background:#4f765e}.reservation-status-banner.completed{color:#496055;background:#e2ece6}.reservation-status-banner.cancelled{color:#8b4545;background:#f5e2e2}.reservation-form :disabled{cursor:not-allowed;opacity:.65}.auth-loading{display:grid;min-height:100vh;place-items:center;color:#6e6962}.login-page{display:grid;min-height:100vh;place-items:center;padding:20px;background:#f5f3ef}.login-card{width:min(430px,100%);padding:30px;border:1px solid #ddd8d0;border-radius:20px;background:#fff;box-shadow:0 16px 45px #332d2418}.login-brand{color:#7c624b;font-size:15px;font-weight:900}.login-card h1{margin:7px 0 5px;font-size:28px}.login-card>p{margin:0 0 24px;color:#777067}.login-role{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.login-role button{display:flex;min-height:75px;border:2px solid #ddd8d0;border-radius:12px;background:#fff;flex-direction:column;align-items:center;justify-content:center;gap:3px}.login-role button.selected{border-color:#4b4640;color:#fff;background:#4b4640}.login-role b{font-size:19px}.login-role span{font-size:13px}.login-card label{display:flex;flex-direction:column;gap:7px;font-weight:850}.login-card input{min-height:52px;padding:0 13px;border:1px solid #d8d2ca;border-radius:10px;font:inherit}.login-submit{width:100%;min-height:54px;margin-top:14px;border-radius:10px;color:#fff;background:#4b4640;font-size:18px;font-weight:900}.login-error{margin:12px 0 0!important;padding:10px;border-radius:8px;color:#922!important;background:#f8e6e6}.logout-button{padding:11px 13px;border:1px solid #ffffff30;border-radius:10px;color:#fff;background:#ffffff12;font-weight:800}@media(max-width:650px){.login-card{padding:23px}.logout-button{padding:9px;font-size:12px}}
