*{box-sizing:border-box}body{color:#22261f;background:#f2f1ea;margin:0;font-family:Pretendard,Apple SD Gothic Neo,Malgun Gothic,Segoe UI,sans-serif;font-size:15px;line-height:1.5}a{color:#2c6e1f}.container{max-width:1150px;margin:0 auto;padding:24px 16px 96px}.gnb{background:#fbfaf7;border-bottom:1px solid #dddcd1}.gnb-row{-webkit-overflow-scrolling:touch;white-space:nowrap;background-image:linear-gradient(90deg,#fbfaf7 55%,#fbfaf700),linear-gradient(270deg,#fbfaf7 55%,#fbfaf700),linear-gradient(90deg,#22261f29,#22261f00),linear-gradient(270deg,#22261f29,#22261f00);background-position:0,100%,0,100%;background-repeat:no-repeat;background-size:22px 100%,22px 100%,11px 100%,11px 100%;background-attachment:local,local,scroll,scroll;align-items:center;gap:4px;max-width:1150px;margin:0 auto;padding:0 16px;display:flex;overflow-x:auto}.gnb-row-sub{background:#f0faf0;border-top:1px solid #dddcd1}.gnb-tab{color:#3b4034;border-bottom:3px solid #0000;min-height:44px;padding:11px 14px;font-weight:500;text-decoration:none;display:inline-block}.gnb-tab:hover{color:#2f7d22}.gnb-tab.active{color:#2f7d22;border-bottom-color:#49ac35;font-weight:700}.gnb-row-sub .gnb-tab{min-height:38px;padding:8px 12px;font-size:14px}.gnb-more{margin-left:auto;position:relative}.gnb-logout{margin:0}.gnb-logout button{color:#6e7365;cursor:pointer;background:0 0;border:none;min-height:44px;padding:8px 12px;font-size:14px}.gnb-logout button:hover{color:#2f7d22}.gnb-more summary{cursor:pointer;color:#3b4034;padding:11px 14px;font-weight:500;list-style:none}.gnb-more summary::-webkit-details-marker{display:none}.gnb-more[open] summary{color:#2f7d22}.gnb-more-menu{z-index:50;background:#fff;border:1px solid #dddcd1;border-radius:3px;flex-direction:column;min-width:160px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 6px 18px #00000014}.gnb-more-menu a{color:#3b4034;padding:10px 14px;text-decoration:none}.gnb-more-menu a:hover{color:#2f7d22;background:#f0faf0}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.topbar h1{margin:0;font-size:20px}.topbar .user-info{color:#4b5563;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;display:flex}.topbar .user-info>*{white-space:nowrap}@media (max-width:480px){.topbar{gap:8px;margin-bottom:12px}.topbar h1{font-size:17px}.topbar .user-info{gap:8px;font-size:13px}}.card{background:#fbfaf7;border:1px solid #dddcd1;border-radius:4px;margin-bottom:16px;padding:20px}.card h2{letter-spacing:-.2px;border-bottom:1px solid #dddcd1;margin:0 0 12px;padding-bottom:8px;font-size:16px;font-weight:700}@media (max-width:480px){.card{padding:14px}}.card.placeholder{color:#6e7365;background:#fafafa;border-style:dashed}.muted{color:#6e7365;word-break:keep-all;overflow-wrap:break-word;font-size:13px}.error{color:#b91c1c;word-break:keep-all;overflow-wrap:break-word;font-size:14px}.ok{color:#047857;font-size:14px}.keep-together{white-space:nowrap}.btn{color:#22261f;cursor:pointer;background:#fbfaf7;border:1px solid #c9c8bb;border-radius:3px;padding:7px 16px;font-size:14px;text-decoration:none;display:inline-block}.btn:hover{background:#edece2}.btn-primary{color:#fff;background:#2c6e1f;border-color:#2c6e1f}.btn-primary:hover{background:#245c19}.btn-primary:disabled{cursor:default;background:#a8cf9b;border-color:#a8cf9b}.badge-warn{color:#8a5a00;letter-spacing:.02em;white-space:nowrap;background:#fdf6e3;border:1.5px solid #c98f00;border-radius:2px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}p.badge-warn{white-space:normal}.badge-missing{color:#8f1d1d;letter-spacing:.02em;white-space:nowrap;background:#fbeeee;border:1.5px solid #c24141;border-radius:2px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}.login-wrap{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.login-card{width:100%;max-width:380px}.login-card h1{margin:0 0 4px;font-size:20px}.login-card form{flex-direction:column;gap:12px;margin-top:16px;display:flex}.login-card label{color:#3b4034;flex-direction:column;gap:4px;font-size:14px;display:flex}.login-card input{border:1px solid #c9c8bb;border-radius:3px;padding:9px 12px;font-size:15px}.grid-wrap{margin-top:12px;overflow-x:auto}table.grid{border-collapse:collapse;min-width:100%;font-size:13px}.grid td{font-variant-numeric:tabular-nums}.grid th,.grid td{text-align:center;white-space:nowrap;border:1px solid #dddcd1;padding:4px 6px}.grid thead th{background:#f1f0e8;font-weight:600}.grid .row-label{text-align:left;background:#f1f0e8;font-weight:600;position:sticky;left:0}.grid .sum-cell{text-align:right;font-variant-numeric:tabular-nums}.grid input{text-align:right;border:1px solid #c9c8bb;border-radius:3px;width:62px;padding:4px 6px;font-size:13px}.grid input.dirty{background:#fffbeb;border-color:#f59e0b}.grid.grid-fill td{padding:0}.grid.grid-fill td>.muted{padding:4px 6px;display:inline-block}.grid.grid-fill input{text-align:left;background:0 0;border:none;border-radius:0;width:100%;min-width:110px;padding:4px 6px;font-size:13px;display:block}.grid.grid-fill input+input{border-top:1px dashed #edece2}.grid.grid-fill input:focus{outline-offset:-2px;outline:2px solid #2f7d22}.grid.grid-fill input.dirty{background:#fffbeb;border-color:#0000;box-shadow:inset 2px 0 #f59e0b}.grid.grid-fill td>div{padding:3px 6px}.week-nav{z-index:3;flex-wrap:wrap;align-items:center;gap:10px;display:flex;position:relative}.week-nav .week-range{font-weight:600}.menu-calendar-wrap{width:100%}.menu-calendar{border-collapse:collapse;table-layout:fixed;width:100%;font-size:14px}.menu-calendar th,.menu-calendar td{text-align:left;vertical-align:top;border:1px solid #dddcd1;padding:10px}.menu-calendar thead th,.menu-calendar tbody th{background:#f1f0e8;font-weight:600}.menu-calendar thead th:first-child,.menu-calendar tbody th{width:104px}.menu-calendar ul{margin:0;padding-left:18px}.menu-calendar li+li{margin-top:3px}.menu-review-note{color:#3b4034;flex-direction:column;gap:6px;font-size:14px;display:flex}.menu-review-note textarea{width:100%;font:inherit;resize:vertical;border:1px solid #c9c8bb;border-radius:3px;padding:10px 12px}.menu-review-note textarea:disabled{color:#6e7365;background:#edece2}@media (max-width:600px){.menu-calendar,.menu-calendar tbody,.menu-calendar tr,.menu-calendar th,.menu-calendar td{width:100%;display:block}.menu-calendar thead{display:none}.menu-calendar tbody tr{border:1px solid #dddcd1;border-radius:3px;margin-bottom:10px;overflow:hidden}.menu-calendar tbody th{border:0;border-bottom:1px solid #dddcd1;width:100%}.menu-calendar td{border:0;border-bottom:1px solid #dddcd1;grid-template-columns:52px minmax(0,1fr);gap:8px;display:grid}.menu-calendar td:last-child{border-bottom:0}.menu-calendar td:before{content:attr(data-label);color:#4b5563;font-weight:600}}.save-bar{z-index:3;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex;position:relative}.save-bar.save-bar-top{margin:0 0 10px}.table-scroll-hint{display:none}@media (max-width:480px){.table-scroll-hint{display:inline}}ul.todo-list{margin:8px 0 0;padding-left:0;list-style:none}ul.todo-list li{margin-bottom:8px}.hygiene-group h3{color:#3b4034;border-bottom:1px solid #dddcd1;margin:14px 0 6px;padding-bottom:4px;font-size:14px}.hygiene-item{flex-wrap:wrap;align-items:center;gap:10px;padding:4px 0;display:flex}.hygiene-label{flex:320px;font-size:14px}.hygiene-toggle{gap:10px;display:inline-flex}.btn.toggle{color:#6e7365;padding:9px 14px;font-size:13px}.btn.toggle-good{color:#065f46;background:#d1fae5;border-color:#34d399;font-weight:600}.btn.toggle-bad{color:#991b1b;background:#fee2e2;border-color:#f87171;font-weight:600}.hygiene-remark{border:1px solid #f87171;border-radius:3px;flex:240px;padding:5px 8px;font-size:13px}.note-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.note-grid label{color:#3b4034;flex-direction:column;gap:4px;font-size:14px;display:flex}.note-grid textarea{resize:vertical;border:1px solid #c9c8bb;border-radius:3px;padding:8px 10px;font-family:inherit;font-size:14px}.hq-reply{background:#eff6ff;border:1px solid #bfdbfe;border-radius:3px;margin-top:12px;padding:10px 14px;font-size:14px}.hq-reply p{margin:4px 0 0}.incident-add{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.incident-add select,.incident-add input{border:1px solid #c9c8bb;border-radius:3px;padding:6px 10px;font-size:14px}.incident-add input{flex:240px}.incident-list{margin:0;padding-left:0;list-style:none}.incident-list li{border-bottom:1px dashed #dddcd1;align-items:center;gap:8px;padding:6px 0;font-size:14px;display:flex}.btn-small{padding:2px 10px;font-size:12px}.badge-ok{color:#245c19;letter-spacing:.02em;background:#eef4e9;border:1.5px solid #49ac35;border-radius:2px;margin-right:6px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}.stamp{letter-spacing:.02em;white-space:nowrap;font-variant-numeric:tabular-nums;border:1.5px solid;border-radius:2px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}.stamp-ok{color:#245c19;background:#eef4e9;border-color:#49ac35}.stamp-near{color:#8a5a00;background:#fdf6e3;border-color:#c98f00}.stamp-over{color:#8f1d1d;background:#fbeeee;border-color:#c24141}.stamp-na{color:#6e7365;background:0 0;border-style:dashed;border-color:#c9c8bb;font-weight:600}.reply-form{flex-direction:column;gap:8px;margin-top:14px;display:flex}.reply-form label{color:#3b4034;flex-direction:column;gap:4px;font-size:14px;display:flex}.reply-form textarea{border:1px solid #c9c8bb;border-radius:3px;padding:8px 10px;font-family:inherit;font-size:14px}.reply-form button{align-self:flex-start}.admin-form{flex-direction:column;gap:10px;max-width:480px;display:flex}.admin-form label{color:#3b4034;flex-direction:column;gap:4px;font-size:14px;display:flex}.admin-form input,.admin-form select,.admin-form-inline input,.admin-form-inline select{border:1px solid #c9c8bb;border-radius:3px;padding:7px 10px;font-size:14px}.admin-form button{align-self:flex-start}.admin-form-inline{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.help-fab{color:#fff;cursor:pointer;z-index:1000;background:#2c6e1f;border:none;border-radius:50%;width:52px;height:52px;font-size:24px;font-weight:700;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 12px #00000040}.help-fab:hover{background:#245c19}.help-panel{z-index:1000;background:#fff;border:1px solid #d5ddd0;border-radius:12px;width:min(360px,100vw - 40px);max-height:min(560px,100vh - 40px);position:fixed;bottom:20px;right:20px;overflow-y:auto;box-shadow:0 8px 24px #00000040}.help-panel-head{color:#fff;background:#2c6e1f;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.help-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:20px;line-height:1}.help-tabs{border-bottom:1px solid #e2e6de;display:flex}.help-tabs button{cursor:pointer;background:#f4f6f2;border:none;flex:1;padding:10px 0;font-size:14px}.help-tabs button.active{background:#fff;border-bottom:2px solid #2c6e1f;font-weight:700}.help-body{padding:14px 16px}.help-search{gap:8px;margin:8px 0;display:flex}.help-search input{border:1px solid #c9d2c3;border-radius:3px;flex:1;padding:8px 10px}.faq-item{background:#f1f5f9;border-radius:3px;margin:10px 0;padding:10px 12px}.faq-q{margin-bottom:4px;font-weight:700}.faq-a{font-size:14px;line-height:1.55}.help-escalate{margin-top:8px}.help-kind{gap:16px;margin:8px 0;display:flex}.help-body textarea,.ticket-actions textarea{width:100%;font:inherit;box-sizing:border-box;border:1px solid #c9d2c3;border-radius:3px;padding:8px 10px}.help-actions{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.help-error{color:#b3261e;margin:6px 0 0;font-size:13px}.help-sent{color:#2c6e1f;margin:6px 0 0;font-size:14px;font-weight:600}.help-table{border-collapse:collapse;width:100%;font-size:14px}.help-table th,.help-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e2e6de;padding:8px 6px}.help-answer{background:#eef4ff;border-radius:3px;margin-top:6px;padding:6px 10px}.funeral-items-table{border-collapse:collapse;width:100%;font-size:14px}.funeral-items-table th,.funeral-items-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e2e6de;padding:6px}.funeral-items-table input,.funeral-items-table select{box-sizing:border-box;width:100%}.small{font-size:12px}.ticket-actions .ticket-status{gap:4px;margin-bottom:6px;display:flex}.commission-grid input{padding:12px;font-size:18px}.commission-preview{background:#f3f6f1;border-radius:3px;margin:12px 0;padding:10px 12px}.commission-result{border:1px solid #e2e6de;border-radius:3px;margin-top:14px;padding:12px}.commission-result h3{margin:0 0 8px;font-size:15px}.commission-result ul{margin:0;padding-left:18px}.gauge{background:#e6ebe2;border-radius:7px;height:14px;margin:8px 0;overflow:hidden}.gauge span{background:#49ac35;height:100%;display:block}.gauge.under span{background:#d97706}.letter{background:#fff;border:1px solid #e2e6de;border-radius:3px;max-width:780px;margin-bottom:20px;padding:28px 32px;font-size:14px;line-height:1.9}.letter-tagline{text-align:center;color:#6e7365;margin:0;font-size:12px}.letter-company{text-align:center;margin:2px 0 18px;font-size:17px;font-weight:700}.letter-head{border-top:2px solid #111;border-bottom:1px solid #c9c8bb;margin-bottom:16px;padding:10px 0}.letter-head p,.letter-body p{margin:2px 0}.letter-body{margin-bottom:14px}.letter-arae{text-align:center;letter-spacing:2px;margin:14px 0}.letter-table{border-collapse:collapse;width:100%;margin:8px 0 16px;font-size:13px}.letter-table th,.letter-table td{text-align:right;border:1px solid #9ca3af;padding:7px 9px}.letter-table th{text-align:center;background:#f3f6f1;font-weight:600}.letter-table td:first-child,.letter-table th:first-child,.letter-sign td,.letter-sign th{text-align:left}.letter-attach{margin-top:4px}.letter-ratenote{margin-top:6px;font-size:13px}.letter-ceo{text-align:center;margin:22px 0;font-size:16px;font-weight:700}.funeral-case-list{margin:0;padding:0;list-style:none}.funeral-case-list li+li{border-top:1px solid #e6ebe2}.funeral-case-list a{color:inherit;grid-template-columns:auto 1fr auto;align-items:center;gap:2px 10px;padding:12px 4px;text-decoration:none;display:grid}.funeral-case-list a:hover{background:#f5f8f3}.funeral-case-room{font-weight:700}.funeral-case-name{font-size:14px}.funeral-case-amount{text-align:right;grid-area:1/3;font-weight:700}.funeral-case-list .muted{grid-column:1/3;font-size:12px}.funeral-case-list .badge-ok,.funeral-case-list .badge-warn{grid-column:3;justify-self:end}.funeral-head{max-width:none}@media (min-width:640px){.funeral-head{grid-template-columns:1fr 1fr;gap:10px 14px;display:grid}.funeral-note{grid-column:1/-1}}.funeral-daytabs{z-index:2;background:#fff;margin-bottom:4px;padding:8px 0;position:sticky;top:0}.funeral-daytabs .btn{text-align:center;flex:1 1 0;padding-left:4px;padding-right:4px}.forder-sticky{z-index:3;background:#fff;border-bottom:1px solid #e6ebe2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:8px 0;display:flex;position:sticky;top:0}.forder-sticky-sums{flex-direction:column;gap:2px;font-size:15px;display:flex}.forder-sticky-sums strong{color:#22261f;font-size:17px}.forder-daytabs{flex:none;gap:6px}.forder-daytabs .btn{padding:6px 14px}.forder-summary p{margin:2px 0}.forder-major{margin-bottom:14px}.forder-major-head{border-bottom:2px solid #49ac35;align-items:baseline;gap:10px;margin-bottom:8px;padding-bottom:3px;display:flex}.forder-major-head h3{margin:0;font-size:15px}.forder-major-sum{color:#49ac35;font-weight:700}.forder-cats{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;display:grid}.forder-cat{border:1px solid #e6ebe2;border-radius:3px;padding:6px 8px}.forder-cat-head{border-bottom:1px solid #f0f3ee;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:3px;padding-bottom:3px;display:flex}.forder-cat-name{font-size:13px;font-weight:600}.forder-cat-sum{color:#49ac35;font-size:12px;font-weight:700}.forder-row{grid-template-columns:1fr 58px;align-items:center;gap:6px;padding:2px 0;display:grid}.forder-row+.forder-row{border-top:1px solid #f7f9f6}.forder-row-label{font-size:13px;line-height:1.25}.forder-row-label em{color:#6e7365;font-size:11px;font-style:normal}.forder-row-label b{margin-left:3px;font-size:10px}.forder-row-label i{color:#9ca3af;margin-left:4px;font-size:11px;font-style:normal}.forder-row input{text-align:right;border:1px solid #c9c8bb;border-radius:5px;width:100%;padding:6px;font-size:15px}@media (max-width:480px){.forder-cats{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.funeral-cat{border:1px solid #e6ebe2;border-radius:3px;margin-bottom:8px}.funeral-cat>summary{cursor:pointer;background:#f5f8f3;border-radius:3px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:600;display:flex}.funeral-cat[open]>summary{border-bottom:1px solid #e6ebe2;border-radius:6px 6px 0 0}.funeral-cat-sum{color:#49ac35;font-weight:700}.funeral-rows{padding:4px 0}.funeral-row{grid-template-columns:1fr 92px 96px;align-items:center;gap:8px;padding:6px 12px;display:grid}.funeral-row+.funeral-row{border-top:1px solid #f0f3ee}.funeral-row-label{font-size:14px;line-height:1.35}.funeral-row-label em{color:#6e7365;font-size:12px;font-style:normal}.funeral-row-label b{margin-left:4px;font-size:11px}.funeral-row-label i{color:#6e7365;font-size:12px;font-style:normal;display:block}.funeral-row input{text-align:right;border:1px solid #c9c8bb;border-radius:3px;width:100%;padding:10px;font-size:17px}.funeral-row-amount{text-align:right;color:#3b4034;font-size:13px}.funeral-total p{margin:4px 0}.funeral-total-grand{border-top:1px solid #e6ebe2;padding-top:8px;font-size:18px}@media (max-width:480px){.help-fab{width:40px;height:40px;font-size:18px;bottom:8px;right:8px}}@media print{.no-print,.gnb,.help-fab,.help-panel{display:none!important}body{background:#fff}.container{max-width:none;padding:0}.letter{page-break-after:always;border:none;border-radius:0;max-width:none;padding:0}.letter:last-child{page-break-after:auto}@page{size:A4;margin:18mm 16mm}}.settle,.slip{color:#000;background:#fff;border:1px solid #e6ebe2;border-radius:3px;margin-bottom:18px;padding:14px}.settle-title,.slip-title{text-align:center;letter-spacing:6px;margin:0 0 10px;font-size:20px}.settle-head,.slip-head{justify-content:space-between;align-items:baseline;margin-bottom:6px;font-size:13px;display:flex}.settle-table,.slip-table{border-collapse:collapse;table-layout:fixed;width:100%}.settle-table th,.settle-table td,.slip-table th,.slip-table td{white-space:nowrap;text-overflow:ellipsis;border:1px solid #333;padding:2px 4px;overflow:hidden}.settle-table thead th,.slip-table thead th{text-align:center;background:#f0f0f0;font-weight:600}.settle-table .n,.slip-table .n{text-align:right}.settle-table .c,.slip-table .c{text-align:center}.settle-table tbody th{text-align:center;background:#fafafa;font-weight:500}.settle-sum th,.slip-sum th{text-align:center;background:#f0f0f0;font-weight:600}.settle-grand,.slip-grand{font-weight:700}.settle-grand td,.slip-grand td{font-size:1.05em}.settle-table{font-size:12px}.settle-table th:first-child{width:10%}.settle-table thead th:nth-child(2){width:20%}.settle-table thead th:nth-child(3){width:8%}.settle-table thead th:nth-child(4){width:12%}.settle-table thead th:nth-child(n+5):nth-child(-n+8){width:6%}.settle-table thead th:nth-child(9){width:8%}.settle-table thead th:nth-child(10){width:18%}.settle-note{margin:12px 0 6px;font-size:13px}.settle-sign{border-collapse:collapse;width:100%;font-size:12px}.settle-sign th,.settle-sign td{text-align:center;border:1px solid #333;padding:8px 6px}.settle-sign td{min-width:90px}.slip{overflow-x:auto}.slip-table{min-width:1240px;font-size:9px}.slip-table th:first-child{width:5.5%}.slip-table thead th:nth-child(2){width:9.5%}.slip-table thead th:nth-child(3){width:4%}.slip-table thead th:nth-child(4){width:5%}.slip-table thead th:nth-child(2n+5){width:2.2%}.slip-table thead th:nth-child(2n+6){width:4.7%}.slip-table td:nth-child(2){white-space:normal;word-break:keep-all}.slip-gap td{border:none;height:10px}@media print{@page slip{size:A4 landscape;margin:8mm}.slip{page:slip;border:none;border-radius:0;padding:0;overflow:visible}.slip-table{min-width:0;font-size:6.5px;line-height:1.15}.slip-table th,.slip-table td{padding:0 2px}.slip-title{letter-spacing:3px;margin-bottom:4px;font-size:14px}.slip-head{margin-bottom:3px;font-size:10px}.slip-gap td{height:6px}@page settle{size:A4 portrait;margin:12mm}.settle{page:settle;page-break-after:always;border:none;border-radius:0;padding:0}.settle-table{font-size:10px}.settle-table th,.settle-table td{padding:1px 3px}.settle-title{margin-bottom:6px;font-size:17px}.settle-note{margin:8px 0 4px}.settle-sign th,.settle-sign td{padding:6px}.settle:last-child{page-break-after:auto}.settle-table tr,.slip-table tr{page-break-inside:avoid}}.daily-block{margin-bottom:18px}.daily-block-title{color:#3b4034;margin:0 0 6px;font-size:14px}.daily-grid input{text-align:right;width:84px;padding:7px 8px;font-size:15px}.daily-grid .row-label{min-width:96px}.daily-grid .today-row th,.daily-grid .today-row td{background:#eff6ff}.daily-grid .today-row .row-label{color:#2c6e1f;font-weight:700}.daily-grid .weekend-label{color:#b91c1c}@media (max-width:480px){.daily-grid input{width:44px;padding:7px 3px;font-size:16px}.daily-grid .row-label{min-width:60px;font-size:12px}.daily-grid th,.daily-grid td{padding:4px 2px}.daily-grid.meals-4plus .day-total{display:none}.hygiene-remark{font-size:16px}}.menu-drawer,.menu-preview{background:#fbfbf8;border:1px solid #ececdf;border-radius:4px;margin-top:10px;padding:8px 10px}.menu-drawer-row{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:5px;display:flex}.menu-drawer-title{color:#5c5c3a;margin-right:4px;font-size:12px}.menu-drawer-axis{color:#8a8d80;min-width:34px;margin-right:2px;font-size:11px}.menu-drawer-search{max-width:160px;padding:3px 8px;font-size:12px}.btn.chip{border-radius:10px;padding:1px 8px;font-size:12px}.btn.chip-on{color:#fff;background:#2c6e1f;border-color:#2c6e1f;font-weight:700}.btn.chip-on:before{content:"✓ "}.menu-drawer-list{border-top:1px dashed #e2e2d2;margin-top:5px;padding-top:6px}.menu-drawer-buttons{flex-wrap:wrap;gap:3px;max-height:150px;display:flex;overflow-y:auto}.menu-drawer-buttons .btn{padding:2px 8px;font-size:12px}.menu-drawer-buttons .btn:disabled{opacity:.5;cursor:default}.menu-drawer-item{display:inline-flex}.menu-drawer-item .btn+.btn{margin-left:-1px}.overlap-badge{color:#8a5a12;font:inherit;white-space:nowrap;cursor:pointer;background:#fdf3e3;border:1px solid #e5c489;border-radius:2px;margin:0 3px 3px 0;padding:1px 7px;font-size:11px;font-weight:700;display:inline-block}.overlap-badge[aria-expanded=true]{background:#f6e6c9;border-color:#c98f00}.overlap-names{color:#6e5a30;white-space:normal;background:#fdfaf3;border-left:2px solid #e5c489;margin:0 0 4px;padding:2px 6px;font-size:11px;line-height:1.45}.cell-menu-btn{font:inherit;color:inherit;text-align:left;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;-webkit-text-decoration:underline dotted #c9c8bb;text-decoration:underline dotted #c9c8bb}.cell-menu-btn:hover{color:#2c6e1f}.cell-menu-btn[aria-expanded=true]{color:#2c6e1f;font-weight:700;-webkit-text-decoration:underline #49ac35;text-decoration:underline #49ac35}.grid.grid-fill td>.cell-edit{align-items:stretch;padding:0;display:flex}.grid.grid-fill td>.cell-edit+.cell-edit{border-top:1px dashed #edece2}.cell-edit input{flex:1}.cell-ing-btn{white-space:nowrap;flex:none;align-self:center;margin-right:3px}@media (max-width:480px){.btn.chip,.menu-drawer-item .btn,.menu-preview .btn,.cell-ing-btn{min-height:38px}.overlap-badge{min-height:36px}.cell-menu-btn{align-items:center;min-height:36px;display:inline-flex}}.cost-band+.cost-band{border-top:1px solid #e2e6de;margin-top:14px;padding-top:14px}.cost-band-head{flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.cost-band-head strong{margin-right:auto}.gauge.over span{background:#dc2626}.gate-figures{flex-wrap:wrap;gap:6px 20px;margin:10px 0 4px;display:flex}.gate-request+.gate-request{border-top:1px solid #e2e6de;margin-top:14px;padding-top:14px}.week-caption{color:#6e7365;letter-spacing:.03em;margin:14px 0 4px;font-size:13px;font-weight:700}.grid thead th.day-sun{color:#8f1d1d}.grid thead th.day-sat{color:#6e7365}.grid ul.menu-cell-list{white-space:nowrap;margin:0;padding:0;list-style:none}.grid ul.menu-cell-list li+li{margin-top:2px}.grid td.num-key{color:#22261f;font-size:15px;font-weight:700}.bulk-fill{align-items:center;gap:6px;display:inline-flex}@media (max-width:480px){.container input,.container select,.container textarea,.login-card input{font-size:16px}.order-lines th:first-child,.order-lines td:first-child,.order-lines th:nth-child(3),.order-lines td:nth-child(3){display:none}}.peer-badge{color:#4a4f43;font:inherit;white-space:nowrap;cursor:pointer;background:#f5f4ec;border:1px solid #c9c8bb;border-radius:2px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}.peer-badge:hover{color:#245c19;border-color:#49ac35}.peer-badge[aria-expanded=true]{color:#245c19;background:#eef4e9;border-color:#49ac35}.peer-row-cell{background:#fbfaf7;text-align:left!important;white-space:normal!important}.peer-panel{text-align:left;background:#fff;border:1px solid #c9c8bb;border-radius:3px;padding:12px 14px}.peer-panel+.peer-panel{margin-top:8px}.peer-site{color:#fbfaf7;letter-spacing:.02em;background:#22261f;border-radius:2px;margin-right:6px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}.peer-meta{color:#6e7365;margin-right:6px;font-size:12px}.peer-ing{flex-wrap:wrap;gap:4px 6px;margin:8px 0 0;display:flex}.peer-ing span{font-variant-numeric:tabular-nums;background:#fbfaf7;border:1px solid #dddcd1;border-radius:2px;padding:0 6px;font-size:12px}details.peer-fold{background:#fafaf5;border:1px dashed #c9c8bb;border-radius:3px;margin-top:12px;padding:8px 12px}details.peer-fold summary{cursor:pointer;color:#4a4f43;font-size:13px;font-weight:700}details.peer-fold[open] summary{color:#245c19}.md-wrap{background:#fff;border:1px solid #d5d5c6;border-radius:4px;gap:0;min-height:320px;margin-top:10px;display:flex;overflow:hidden}.md-list{background:#fbfbf8;border-right:1px solid #ececdf;flex-shrink:0;width:300px;max-height:560px;overflow-y:auto}.md-head{z-index:1;color:#6e7365;background:#f1f1e8;border-bottom:1px solid #ececdf;justify-content:space-between;align-items:center;gap:6px;padding:5px 10px;font-size:11.5px;font-weight:700;display:flex;position:sticky;top:0}.md-row{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #efefe4;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-size:13.5px;display:flex}.md-row:hover{background:#f0f0e6}.md-row.sel{background:#eef4e9;font-weight:700;box-shadow:inset 3px 0 #49ac35}.md-row-name{min-width:0}.md-row-sub{color:#9a9e90;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.md-list.dense .md-row{padding:3px 10px;font-size:12.5px}.md-detail{flex:1;min-width:0;padding:12px 16px}.md-detail-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.md-detail-name{font-size:16px}.md-detail-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}@media (max-width:760px){.md-wrap{flex-direction:column}.md-list{border-bottom:1px solid #ececdf;border-right:0;width:100%;max-height:300px}.md-row{min-height:38px}}.dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:5px;display:inline-block}.dot-hi{background:#49ac35}.dot-lo{background:#c98f00}.dot-cost{background:#8f5ab8}.dot-qty{background:#c24141}.md-row-own{color:#6f86a8;vertical-align:middle;margin-left:5px;font-size:8px}.btn.chip-ex{color:#8f1d1d;background:#fbeeee;border-color:#c24141;font-weight:700;text-decoration:line-through}.btn.chip-ex:before{content:"✕ ";text-decoration:none}.ing-toggle{font-weight:700}.ing-count{color:#fff;background:#22261f;border-radius:8px;margin-left:4px;padding:0 6px;font-size:11px;display:inline-block}.ing-drawer{margin-top:4px}.signal-badge{white-space:nowrap;color:#8a5a12;background:#fdf3e3;border:1px solid #e5c489;border-radius:2px;margin:2px 3px 0 0;padding:0 6px;font-size:10.5px;font-weight:700;display:inline-block}.signal-badge.signal-block{color:#8f1d1d;background:#fbeeee;border-color:#d8a5a5}.candidate-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.candidate-row .btn{padding:2px 8px;font-size:12px}.drawer-served{color:#9a9e90;font-variant-numeric:tabular-nums;margin-left:5px;font-size:10.5px}.menu-edit-wrap{align-items:flex-start;gap:12px;display:flex}.menu-edit-main{flex:1;min-width:0}.dict-panel{background:#fbfbf8;border:1px solid #d5d5c6;border-radius:4px;flex-shrink:0;width:380px;max-height:calc(100vh - 16px);margin-bottom:16px;padding:10px 12px;position:sticky;top:8px;overflow-y:auto}.dict-panel.collapsed{width:34px;padding:6px 3px;overflow:hidden}.menu-plan-list{margin-top:10px}.menu-plan-list>summary,.menu-create>summary,.menu-copy-tools>summary,.recipe-promotion>summary{cursor:pointer;padding:6px 0;font-weight:600}.menu-create:not([open]){padding-top:8px;padding-bottom:8px}.menu-save-bar{z-index:8;background:#fbfaf7;border:1px solid #c9c8bb;flex-wrap:wrap;align-items:center;gap:8px;margin:0 -2px 12px;padding:10px;display:flex;position:sticky;top:0}.menu-save-bar>strong{margin-right:auto}.menu-save-bar>[role=status]:last-child:not(strong){flex-basis:100%}.menu-copy-tools{border-bottom:1px solid #dddcd1;margin-bottom:12px;padding:6px 0}.menu-copy-tools label{align-items:center;gap:6px;display:inline-flex}.recipe-edit-status{color:#2c6e1f;padding:8px 0;font-weight:600}.dict-panel.is-collapsed{width:140px}.dict-panel.is-collapsed>:not(.dp-head),.dp-edit[hidden],.grid-wrap[hidden]{display:none}.menu-edit-main .cell-edit:focus-within{outline-offset:2px;outline:2px solid #2f7d22}@media (max-width:999px){.menu-save-bar{padding:8px;top:0}.menu-save-bar .btn{padding:6px 8px}.dict-panel.is-collapsed{width:100%}}@media print{.menu-save-bar,.menu-copy-tools,.menu-create,.menu-plan-list{display:none}}.dp-rail{writing-mode:vertical-rl;font:inherit;color:#5c5c3a;cursor:pointer;background:0 0;border:0;padding:8px 2px;font-size:12px;font-weight:700}.dp-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.dp-search{width:100%;font:inherit;border:1px solid #c9c8bb;border-radius:3px;margin-bottom:6px;padding:4px 9px;font-size:13px}.dp-chips{flex-wrap:wrap;gap:3px;margin-bottom:5px;display:flex}.dp-ing-drawer{background:#fff;border:1px dashed #d5d5c6;border-radius:3px;padding:6px}.dp-sect{color:#8a8d80;border-top:1px dashed #e2e2d2;margin-top:7px;padding-top:6px;font-size:11px;font-weight:700}.dp-row{border-bottom:1px dotted #eeede4;align-items:center;gap:6px;padding:2px 0;display:flex}.dp-row.cand{background:#f4f8f0}.dp-row.compress{opacity:.75;padding:0;font-size:12px}.dp-name{min-width:0;font:inherit;text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;flex:1;padding:2px;font-size:13px;overflow:hidden}.dp-name:hover{color:#245c19}.dp-meta{color:#9a9e90;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}.dp-plus{font:inherit;cursor:pointer;background:#fbfaf7;border:1px solid #c9c8bb;border-radius:3px;flex-shrink:0;padding:2px 6px;font-size:12px;line-height:1}.dp-plus:hover{color:#245c19;border-color:#49ac35}.dp-plus:disabled{opacity:.4;cursor:default}.dp-card{background:#fff;border:2px solid #49ac35;border-radius:4px;margin:6px 0;padding:8px 10px}.dp-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.dp-cost{color:#245c19;white-space:nowrap;font-size:12.5px;font-weight:700}.dp-signals{flex-wrap:wrap;gap:3px;display:flex}.dp-ing{font-size:12px}.dp-delta{background:#f1f0e8;border-radius:3px;margin:5px 0 0;padding:3px 8px}.dp-edit{border-top:1px dashed #d5d5c6;margin-top:8px;padding-top:6px}.dp-edit .card{background:0 0;border:0;margin:8px 0 0;padding:0}@media (max-width:1000px){.menu-edit-wrap{flex-wrap:wrap}.dict-panel{width:100%;max-height:420px;position:static}}.plan-check{border:1px solid var(--line,#d9dee3);background:#fbfcfd;border-left:3px solid #c98f00;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:8px 10px;display:flex}.plan-check-btn{font:inherit;cursor:pointer;margin:0;padding:2px 8px;font-size:11.5px;font-weight:700}.cell-hit{outline-offset:1px;background:#fdf8ec;outline:2px solid #c98f00}.cook-title{margin:0 0 2px;font-size:16px}.cook-sub{color:var(--muted,#6e7365);margin:0 0 10px;font-size:12px}.cook-table{table-layout:fixed}.cook-table td,.cook-table th{overflow-wrap:anywhere;padding:3px 6px;font-size:12px}.cook-table td.menu{font-weight:600}.cook-table tr.missing td{color:#7a6000;background:#fff9c4}.cook-foot{color:var(--muted,#6e7365);margin-top:6px;font-size:10px}@media print{@page cook{size:A4 portrait;margin:15mm}.cook-sheet{page:cook;border:none;border-radius:0;margin:0;padding:0}.cook-table tr.missing td{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.cook-sheet .print-only,.cook-unsaved-print{display:none}.cook-sheet .cook-table td:last-child input{text-align:left;width:100%;max-width:none}.cook-sheet .cook-table small{display:block}.invoice-correction label{text-align:left;margin:6px 0;display:block}.invoice-correction input{width:100%;max-width:none}@media print{.cook-sheet .print-only{display:inline}.cook-sheet.cook-unsaved{display:none!important}.cook-unsaved-print{display:block}}.work-autosave{background:#f0f5ed;border-left:3px solid #2c6e1f;margin:8px 0;padding:8px 12px;font-size:13px;line-height:1.5}.work-autosave p{margin:4px 0}.work-autosave button,.work-autosave select{margin:4px 6px 0 0}
