@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&display=swap";:root{font-family:Be Vietnam Pro,system-ui,sans-serif;color:#213331;background:#f5f7f6;font-synthesis:none;--green:#126c51;--dark:#123e33;--line:#e2e9e5;--muted:#72817b}*{box-sizing:border-box}body{margin:0;font-size:13px}button,input,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #d9e2dd;background:#fff;border-radius:8px;padding:10px 14px;color:#2b443a;font-weight:500;cursor:pointer;text-decoration:none}button:hover,.button:hover{background:#edf5ef}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--green);border-color:var(--green);color:#fff}button.primary:hover{background:#0e5843}input,select{border:1px solid #d9e2dd;border-radius:7px;background:#fff;padding:10px 12px;color:#243e33;min-width:0}input:focus,select:focus,button:focus-visible{outline:2px solid #8dc9ad;outline-offset:2px}label{display:flex;flex-direction:column;gap:8px}h1,h2,h3,p{margin-top:0}h1{font-size:28px;letter-spacing:-.8px;margin-bottom:9px}h2{font-size:16px;letter-spacing:-.2px;margin:0}h3{font-size:14px;margin-top:24px}small,.muted{color:var(--muted);font-size:11px}.shell{display:flex;min-height:100vh}.sidebar{width:244px;background:#fff;border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:30px 18px 18px;z-index:30}.brand{color:var(--dark);font-size:24px;font-weight:800;letter-spacing:1px;padding:0 16px}.brand span{display:block;font-size:10px;font-weight:600;letter-spacing:4px;margin-top:4px}.nav-caption{font-size:9px;letter-spacing:1.2px;margin:34px 15px 14px}nav{overflow:auto;flex:1}nav button{width:100%;border:0;border-radius:7px;justify-content:flex-start;margin:3px 0;padding:11px 14px;color:#6b7d73;font-size:12px;gap:12px}nav button.active{background:#e9f4ee;color:var(--green);font-weight:700}nav button svg:last-child:not(:first-child){margin-left:auto}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding:18px 5px 0;margin-top:12px}.profile strong{display:block;font-size:11px}.profile small{display:block;margin-top:5px}.profile button{border:0;padding:4px;margin-left:auto}.avatar{background:#edf3ee;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;color:var(--green);font-weight:700}main{margin-left:244px;flex:1;min-width:0}.topbar{height:76px;display:flex;align-items:center;gap:16px;padding:0 36px;background:#fff;border-bottom:1px solid var(--line)}.workspace-label{display:flex;gap:10px;align-items:center;font-size:11px;color:var(--muted)}.topbar select{border:0;font-weight:600;max-width:240px}.top-spacer{flex:1}.topbar input{font-size:11px}.env{font-size:9px;color:var(--green);background:#eaf5ed;border:1px solid #d5e9da;padding:6px;border-radius:5px}.content{padding:32px 36px;max-width:1680px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.eyebrow{font-size:9px;letter-spacing:1.5px;color:var(--muted);margin-bottom:12px}.page-heading p{color:var(--muted);font-size:11px;margin:0}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:24px;min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.panel-head select{max-width:65%}.welcome{background:var(--dark);border-radius:12px;display:flex;justify-content:space-between;padding:32px 38px;color:#fff;margin-bottom:24px;overflow:hidden}.welcome h2{font-size:27px;line-height:1.5;margin:10px 0}.welcome p{color:#afc7bc;font-size:11px;margin-bottom:0}.welcome small{color:#8dbba5;letter-spacing:2px;font-size:9px}.welcome-icon{width:170px;display:grid;place-items:center;color:#a9cbae;border:1px solid #ffffff15;border-radius:50%;transform:rotate(-15deg);background:#ffffff05}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.stat{background:#fff;border:1px solid var(--line);border-radius:11px;padding:22px}.stat span{font-size:12px;color:#5e7467}.stat strong{display:block;font-size:32px;font-weight:600;margin:18px 0 12px;letter-spacing:-1px}.stat small{font-size:10px}.hint{background:#f4f8f5;border:1px solid #e5eee7;padding:14px 16px;line-height:1.9;border-radius:7px;color:#6b7d72;font-size:11px;margin:12px 0 20px}.notice{display:flex;align-items:center;gap:12px;border:1px solid #eadfbb;background:#fffcf0;padding:13px 16px;border-radius:8px;margin-bottom:20px;color:#78612b;line-height:1.7}.notice span{flex:1}.notice button{background:none;border:0;padding:3px}.loading{background:#e5f2eb;padding:12px 18px;border-radius:7px;margin-bottom:14px;color:var(--green)}.table-tools{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;font-size:10px;color:var(--muted)}.search{flex-direction:row;align-items:center;border:1px solid var(--line);border-radius:7px;padding-left:12px;width:220px}.search input{border:0;width:100%;font-size:11px;background:transparent}.scroll{overflow:auto;border:1px solid #e9eeeb;border-radius:8px}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:11px}th{text-align:left;padding:14px;background:#f6f8f6;color:#758379;font-size:10px;font-weight:500}td{padding:15px 14px;border-top:1px solid #edf1ee;max-width:340px;overflow:hidden;text-overflow:ellipsis}tr:hover td{background:#fbfcfb}td button{font-size:10px;padding:6px 9px}.badge{display:inline-flex;border-radius:5px;padding:5px 8px;background:#eff2ef;color:#697a6c;font-size:9px;font-weight:600;white-space:nowrap}.badge.APPROVED{background:#fff4d8;color:#9d7925}.badge.PUBLISHED{background:#e6f4ea;color:#30754d}.badge.DRAFT{background:#eaf0fa;color:#5a779e}.pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:16px 0 0;font-size:10px}.pager button{font-size:10px;padding:6px 10px}.empty{padding:45px 20px;text-align:center;color:#99a69d}.empty p{margin-top:12px;font-size:12px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.form-grid label{font-size:11px}.form-grid button{align-self:end}.meta-line{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:11px;margin:12px 0 22px}.flags{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0}.flags label{display:flex;flex-direction:row;align-items:center;font-size:11px}.flags input{accent-color:var(--green)}.error{padding:10px;background:#fff0ed;color:#a14c41}.report{white-space:pre-wrap;line-height:2;font-size:13px;max-width:960px}.led-title{display:flex;justify-content:space-between;background:#153c32;color:#fff;border-radius:8px;padding:20px;font-size:16px;margin-bottom:16px}.led-title span{font-size:11px;color:#abcdb7}.pack{display:flex;align-items:center;gap:8px}.pack input{width:70px;padding:6px}.pack span{font-size:11px}pre{overflow:auto;max-height:400px;background:#f6f8f7;padding:18px;border-radius:8px;font-size:11px}footer{display:flex;justify-content:space-between;font-size:9px;color:#94a197;margin:32px 0 0;letter-spacing:1px}details{margin-top:20px}summary{cursor:pointer;color:var(--green)}.mobile-toggle{display:none}.boot{padding:60px;text-align:center;color:var(--green)}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:#fff}.login-story{background:var(--dark);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:65px 9%}.login-story .brand{color:#fff;padding:0}.login-story h1{font-size:44px;line-height:1.35;letter-spacing:-1.6px;margin:20px 0}.login-story p{color:#b5c9be;font-size:12px;line-height:2}.login-story small{color:#90b9a2;letter-spacing:2px;font-size:9px}.login-story>span{font-size:10px;color:#8eb39d}.login form{align-self:center;padding:50px 14%;display:flex;flex-direction:column;gap:22px}.login h2{font-size:26px;letter-spacing:-1px;margin-top:-8px}.login p{font-size:12px;color:var(--muted);margin-top:-10px}.login label{font-size:12px}.login .primary{padding:14px;justify-content:space-between}.login-mark{font-size:32px;font-weight:800;color:var(--dark);letter-spacing:-2px;margin-bottom:30px}.login-mark span{font-size:12px;color:#be985b;margin-left:4px}.login form>small:last-child{font-size:10px;text-align:center}.backdrop{display:none}@media(min-width:1500px){.content{padding:40px 50px}.stats{gap:24px}.stat{padding:26px}.welcome{padding:40px}}@media(max-width:1100px){.sidebar{width:210px;padding-inline:12px}main{margin-left:210px}.content{padding:26px 22px}.topbar{padding:0 22px}.workspace-label{display:none}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{gap:12px}.stat{padding:16px}.welcome-icon{width:130px}.login-story h1{font-size:34px}}@media(max-width:760px){.sidebar{transform:translate(-100%);width:244px;transition:transform .2s}.sidebar.open{transform:translate(0)}main{margin-left:0}.mobile-toggle{display:flex;padding:5px;border:0}.topbar{height:66px;padding:0 14px;gap:8px}.topbar select{max-width:150px;padding-inline:4px;font-size:11px}.topbar input{padding:8px 6px;font-size:10px;width:120px}.env{display:none}.content{padding:24px 14px}.page-heading{gap:8px}.page-heading h1{font-size:24px}.page-heading button{font-size:10px;padding:8px}.eyebrow{font-size:8px}.welcome{padding:24px}.welcome h2{font-size:23px}.welcome-icon{width:75px;border:0}.welcome-icon svg{width:48px}.stats{grid-template-columns:repeat(2,1fr)}.panel{padding:16px}.panel-head{align-items:flex-start;flex-direction:column;gap:12px}.panel-head select{max-width:100%;width:100%;font-size:11px}.panel-head .primary{font-size:10px}.actions button,.actions .button{font-size:11px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.flags{gap:12px}.flags label{font-size:10px}.notice{font-size:11px}.search{width:180px}.meta-line{flex-wrap:wrap;gap:8px}.led-title{font-size:13px;gap:12px;flex-wrap:wrap}footer{font-size:8px;letter-spacing:0}.backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0005;z-index:20}.login{display:block;min-height:100dvh}.login-story{display:none}.login form{max-width:460px;margin:auto;padding:60px 30px}.login-mark{margin-bottom:15px}}@media print{.sidebar,.topbar,.page-heading,.notice,.actions,.pager,.table-tools,footer,button,.loading{display:none!important}main{margin:0}.content{padding:0}.panel{border:0;padding:0;break-inside:avoid}.scroll{overflow:visible;border:0}table{white-space:normal;font-size:9px}td,th{padding:7px;overflow:visible}body{background:#fff}.panel-head select{border:0}.welcome{display:none}}.sync-actions{display:flex;flex-wrap:wrap;gap:10px}.baocom-board{background:#fff;color:#14211b}.baocom-tools{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0}.baocom-tools>div>span{display:block;color:#748278;font-size:10px;margin-top:6px}.baocom-tools .actions{margin:0}.baocom-tools button,.baocom-tools select{font-size:11px}.baocom-table-scroll{overflow:auto;max-height:70vh;border:1px solid #9eafa4}.baocom-matrix{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;font-family:Arial,sans-serif;font-size:12px;text-align:center}.baocom-matrix.all-meals{min-width:1800px}.baocom-matrix.one-meal{min-width:850px}.baocom-matrix caption{position:sticky;top:0;background:#fff;text-align:center;padding:10px;border-bottom:1px solid #8c9a90;color:#14211b}.baocom-matrix caption strong{font-size:17px;display:block}.baocom-matrix caption span{display:block;font-size:14px;font-weight:700;margin-top:6px}.baocom-matrix th,.baocom-matrix td{border-right:1px solid #a6b2aa;border-bottom:1px solid #a6b2aa;text-align:center;padding:10px 3px;overflow:visible;white-space:normal;word-break:normal;line-height:1.3;color:#17271d}.baocom-matrix thead th{font-size:10px;font-weight:700;padding:12px 3px}.baocom-matrix thead tr:first-child th{font-size:13px;letter-spacing:.6px}.baocom-matrix th:first-child{width:145px}.baocom-matrix tbody th,.baocom-matrix tfoot th,.baocom-matrix .site-title{position:sticky;left:0;z-index:2;background:#fff181;font-weight:700}.baocom-matrix tbody th{font-size:11px}.baocom-matrix tbody tr:hover td{filter:brightness(.96)}.baocom-matrix .meal-SANG{background:#e2f0da}.baocom-matrix .meal-TRUA{background:#dceafb}.baocom-matrix .meal-CHIEU{background:#eee5f3}.baocom-matrix .meal-XE{background:#fbe9ce}.baocom-matrix .resident-total{background:#ffe37d;color:#b64e29;font-weight:700;width:95px}.baocom-matrix .replacement{color:#c52c38}.baocom-matrix .manual{color:#85908b;background:#e6edf5}.baocom-matrix tfoot th,.baocom-matrix tfoot td{font-weight:700;border-top:2px solid #637b6c}.baocom-legend{display:flex;flex-direction:column;gap:6px;font-size:10px;line-height:1.8;color:#758279;margin:14px 0 20px}.baocom-board:fullscreen{padding:20px;background:#fff;overflow:auto}.baocom-board:fullscreen .baocom-table-scroll{max-height:calc(100vh - 210px)}.baocom-board:fullscreen .baocom-matrix td{font-size:17px;padding:14px 3px}.baocom-board:fullscreen .baocom-matrix thead th{font-size:11px}@media(max-width:760px){.sync-actions{width:100%}.sync-actions button,.sync-actions select{font-size:10px}.baocom-tools{align-items:flex-start;flex-direction:column}.baocom-tools .actions{gap:6px}.baocom-matrix.all-meals{min-width:1720px}.baocom-table-scroll{max-height:65vh}}@media print{@page{size:A3 landscape;margin:8mm}.no-print,.baocom-tools{display:none!important}.baocom-table-scroll{overflow:visible;max-height:none;border:0}.baocom-matrix.all-meals,.baocom-matrix.one-meal{min-width:0;width:100%;font-size:8px}.baocom-matrix th,.baocom-matrix td{padding:5px 2px;font-size:8px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.baocom-matrix thead th{font-size:7px}.baocom-matrix th:first-child{width:95px}.baocom-matrix .resident-total{width:55px}.baocom-matrix tbody th,.baocom-matrix tfoot th{position:static}.baocom-legend{font-size:8px}}:root{--green:#007e37;--dark:#075b32;--red:#e50013;--line:#e1e9e3;--muted:#748177;background:#f4f7f4;color:#253a2b}body{font-size:12px}.sidebar{width:224px;padding:22px 13px 14px}.brand-logo{display:flex;flex-direction:column;text-decoration:none;padding:0 8px;align-items:center;gap:7px;letter-spacing:0}.brand-logo img{width:190px;height:auto;display:block}.brand-logo span{font-size:9px;letter-spacing:3px;margin:0;color:#567562}.nav-caption{margin:25px 13px 10px;font-size:8px}nav button{padding:9px 12px;margin:2px 0;font-size:11px;border-left:3px solid transparent;border-radius:5px}nav button.active{background:#edf6ee;color:var(--green);border-left-color:var(--red)}nav button svg{width:16px}.profile{padding-top:12px}.profile strong{font-size:10px}main{margin-left:224px}.topbar{height:60px;padding:0 24px;gap:12px}.topbar input{padding:7px 10px}.topbar select{font-size:11px}.content{padding:24px;max-width:1720px}.page-heading{margin-bottom:18px}.page-heading h1{font-size:24px;margin-bottom:5px}.eyebrow{margin-bottom:8px;font-size:8px}.panel{padding:18px;border-radius:8px;margin-bottom:18px}.panel-head{margin-bottom:14px;gap:10px}.panel-head h2{font-size:14px}.compact-note{font-size:10px;color:#728076;line-height:1.8;margin:8px 0 16px}.compact-actions{margin:0!important;align-items:center}.hint{padding:10px 12px;margin:8px 0 14px;font-size:10px}button,.button{border-radius:5px;font-size:11px;padding:8px 11px}input,select{border-radius:5px;padding:8px 10px;font-size:11px}button.primary{background:var(--green);border-color:var(--green)}button.primary:hover{background:#006831}.welcome{background:#e9f5ec;color:#075b32;border:1px solid #d5eadb;border-left:4px solid var(--red);padding:22px 26px;border-radius:8px;margin-bottom:18px}.welcome h2{font-size:23px;margin:6px 0;line-height:1.4}.welcome p{color:#63816c;font-size:10px}.welcome small{color:#3f8054}.welcome-icon{width:100px;border-color:#c9e5d1;color:#00823e}.welcome-icon svg{width:45px}.stats{gap:12px;margin-bottom:18px}.stat{padding:16px;border-radius:7px}.stat strong{font-size:27px;margin:12px 0 8px}.stat span{font-size:11px}.stat small{font-size:9px}th{padding:10px 11px;font-size:9px}td{padding:10px 11px;font-size:10px}.table-tools{margin-bottom:10px}.pager{margin-top:12px;gap:8px;font-size:10px}.pager select{padding:5px 7px;font-size:10px}.pager>span:first-child{margin-right:auto}.table-wrap .scroll{max-height:480px}.form-grid{gap:12px;margin:14px 0;grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid label{font-size:10px}.actions{gap:8px;margin:12px 0}.compact-details{border:1px solid #e7eee8;border-radius:5px;padding:9px 12px;margin:12px 0;font-size:10px}.compact-details[open] summary{margin-bottom:10px}.grid-toolbar{display:flex;align-items:center;gap:9px;margin:12px 0;font-size:10px}.toolbar-spacer{flex:1}.grid-toolbar .search{width:190px}.input-grid{min-width:900px}.input-grid .row-number{width:35px;min-width:35px}.input-grid th{font-size:10px;padding:10px 7px}.input-grid td{padding:4px 5px}.input-grid input,.input-grid select{width:100%;min-width:75px;padding:7px 6px;background:transparent;border:1px solid transparent;border-radius:3px;font-size:10px}.input-grid input:hover,.input-grid select:hover{border-color:#d5e3d8;background:#fff}.input-grid input:focus,.input-grid select:focus{background:#fff;border-color:#79b58a}.input-grid em{color:var(--red);font-style:normal}.input-grid td:first-child{color:#8a978c;text-align:center;width:30px}.grid-editor .scroll{max-height:470px}.grid-empty{padding:28px;text-align:center;color:#8c9b90;font-size:11px}.icon{padding:5px;border:0;background:transparent}.danger{color:#c34347}.paste-box{padding:12px;border:1px solid #dce8df;background:#f7faf7;margin-bottom:12px;border-radius:5px}.paste-box p{font-size:10px;color:#7c8d80;line-height:1.8}.paste-box textarea{width:100%;border:1px solid #dce8df;padding:8px;font:11px monospace;margin-bottom:8px}.paste-box button{margin-right:8px}.setup-summary{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);padding:14px 16px;border-radius:8px;margin-bottom:18px}.setup-summary>div{display:flex;align-items:center;gap:9px;color:var(--green)}.setup-summary>span{margin-left:auto;color:#839086;font-size:10px}.setup-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.setup-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px}.setup-card header{display:flex;justify-content:space-between;gap:10px;margin-bottom:18px}.setup-card h3{margin:0;font-size:13px}.setup-card form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.setup-card label{font-size:10px}.setup-card button{justify-self:start}.document-trace{display:grid;grid-template-columns:1fr 1fr;gap:12px}.document-trace>div{display:flex;flex-direction:column;gap:6px;border:1px solid #edf1ed;padding:12px;border-radius:5px}.document-trace strong{font-size:10px;color:#7b8d7e}.document-trace span{font-size:11px;overflow-wrap:anywhere}footer{margin-top:22px}footer a{color:#7f8e83;text-decoration:none}.login-story{background:linear-gradient(145deg,#f2f9f3,#e3f2e8);border-right:1px solid #d8e7dc;color:#075b32;padding:48px 9%}.login-story .brand-logo{padding:14px 18px;background:#fff;align-self:start;border:1px solid #d7e7dc;border-radius:8px}.login-story .brand-logo img{width:245px}.login-story h1{font-size:40px;line-height:1.4;color:#075b32}.login-story p{color:#718a77}.login-story small{color:#00853f}.login-story>span{color:#718577}.login-logo{display:block;width:230px;max-width:100%;height:auto;margin:0 0 18px}.login form{gap:18px;padding:40px 12%}.login form h2{font-size:24px}.login form>.primary{background:var(--green)}.ai-widget{position:fixed;bottom:22px;right:24px;z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.ai-launcher{background:var(--green);color:#fff;border:1px solid #006b32;box-shadow:0 5px 18px #095b3233;border-radius:28px;padding:13px 18px;gap:10px;font-size:12px;font-weight:600}.ai-launcher:hover{background:#006c33}.ai-launcher i{width:7px;height:7px;background:#bde6c5;border-radius:50%;box-shadow:0 0 0 3px #ffffff18}.ai-launcher.is-open{padding:11px 16px}.ai-panel{width:400px;height:min(620px,calc(100dvh - 115px));display:flex;flex-direction:column;background:#fff;border:1px solid #d5e5d9;border-radius:14px;box-shadow:0 12px 50px #193f272b;overflow:hidden}.ai-panel>header{background:var(--green);color:#fff;display:flex;align-items:center;gap:10px;padding:16px}.ai-symbol{display:grid;place-items:center;background:#ffffff1c;border:1px solid #ffffff20;width:34px;height:34px;border-radius:10px}.ai-panel>header>div:nth-child(2){flex:1}.ai-panel header strong{display:block;font-size:13px}.ai-panel header small{display:block;margin-top:4px;color:#d0e9d8;font-size:9px}.ai-panel header button{border:0;background:transparent;color:#e8f5ed;padding:4px}.ai-context{font-size:9px;color:#788c7d;background:#f4f8f4;border-bottom:1px solid #e5eee6;padding:9px 15px}.ai-messages{flex:1;min-height:0;overflow:auto;padding:16px;overscroll-behavior:contain}.ai-greeting{padding:8px 0 18px;color:var(--green)}.ai-greeting h3{margin:10px 0 7px;font-size:12px}.ai-greeting p{font-size:11px;color:#7d8b81;line-height:1.8}.ai-suggestions{display:flex;flex-direction:column;gap:7px}.ai-suggestions button{justify-content:flex-start;text-align:left;padding:9px 11px;font-size:10px;background:#fafcf9;border-color:#e3ece4;font-weight:400}.chat-message{margin:0 0 14px;padding:12px;border:1px solid #e5ece5;background:#f7faf6;border-radius:10px;max-width:96%}.chat-message.user{background:#eaf5ec;border-color:#dceee0;margin-left:24px}.chat-author{font-size:9px;font-weight:700;color:var(--green);display:block;margin-bottom:7px}.chat-message>div{font-size:11px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.chat-message small{font-size:8px;display:block;border-top:1px solid #e0e9e0;padding-top:8px;margin-top:9px;color:#8a998b}.ai-thinking{font-size:10px;color:#758f7d;padding:10px}.ai-error{font-size:10px;line-height:1.8;padding:12px;background:#fff8ed;color:#8b6a2b;border:1px solid #f0e2c5;border-radius:7px}.ai-error button{display:flex;margin-top:8px;font-size:9px}.ai-compose{border-top:1px solid #e5ece5;display:flex;gap:10px;align-items:flex-end;padding:12px}.ai-compose textarea{border:1px solid #dce8dd;border-radius:7px;padding:10px;width:100%;resize:none;font:11px/1.7 Be Vietnam Pro,system-ui,sans-serif;min-height:58px;max-height:140px}.ai-compose textarea:focus{outline:2px solid #a9cfb2}.ai-compose button{padding:11px;border-radius:8px;height:40px}.ai-panel>footer{margin:0;padding:0 12px 11px;text-align:center;justify-content:center;letter-spacing:0;font-size:8px;color:#93a095}.baocom-matrix th,.baocom-matrix td{padding:8px 3px}.baocom-board:fullscreen .baocom-matrix td{padding:14px 3px}@media(min-width:1500px){.content{padding:28px 32px}.stat{padding:18px}.welcome{padding:22px 28px}}@media(max-width:1100px){.sidebar{width:205px}.brand-logo img{width:172px}main{margin-left:205px}.content{padding:22px 18px}.topbar{padding:0 18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-card form{grid-template-columns:1fr}.setup-cards{gap:12px}.login-story h1{font-size:32px}.login-story .brand-logo img{width:200px}}@media(max-width:760px){main{margin-left:0}.sidebar{width:224px}.content{padding:20px 12px}.topbar{height:58px;padding:0 12px}.page-heading h1{font-size:21px}.panel{padding:13px}.setup-cards{grid-template-columns:1fr;gap:12px}.setup-card form{grid-template-columns:1fr 1fr}.setup-summary{flex-wrap:wrap;padding:12px;gap:10px}.setup-summary>span{margin-left:0;font-size:9px}.setup-summary button{margin-left:auto}.grid-toolbar{flex-wrap:wrap;gap:7px}.grid-toolbar .search{width:155px}.grid-toolbar .toolbar-spacer{display:none}.grid-toolbar>span{margin-right:auto}.document-trace{grid-template-columns:1fr}.ai-widget{right:12px;bottom:12px;left:12px;pointer-events:none}.ai-launcher,.ai-panel{pointer-events:auto}.ai-launcher{padding:12px 15px;font-size:11px}.ai-panel{width:min(400px,100%);height:min(620px,calc(100dvh - 95px));align-self:flex-end}.ai-panel>header{padding:13px}.ai-messages{padding:12px}.ai-compose textarea{font-size:16px}.login form{padding:45px 28px}.login-logo{width:230px}.welcome h2{font-size:21px}.form-grid{grid-template-columns:1fr 1fr}.ai-widget button{touch-action:manipulation}}@media print{.ai-widget,.setup-summary button{display:none!important}main{margin-left:0}.content{padding:0}}.baocom-matrix caption img{position:absolute;left:10px;top:12px;width:140px;height:auto}.baocom-matrix caption{min-height:65px}@media print{.baocom-matrix caption img{width:100px}}.baocom-board.tv-fallback{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;padding:20px;overflow:auto;background:#fff}.baocom-board.tv-fallback .baocom-table-scroll{max-height:calc(100dvh - 230px)}.baocom-board.tv-fallback .baocom-matrix td{font-size:15px;padding:12px 3px}.log-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0}.log-filters label{display:flex;gap:6px;flex-direction:column;font-size:12px}.log-filters input[type=checkbox]{width:auto}.log-filters form{display:flex;gap:6px}.log-detail{position:fixed;top:8vh;right:8vw;bottom:8vh;left:8vw;z-index:100;width:auto;max-width:900px;max-height:80vh;overflow:auto;border:1px solid #cce2d3;border-radius:12px;box-shadow:0 16px 80px #0005;padding:20px}.log-detail header{display:flex;justify-content:space-between}.log-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.import-summary{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.import-summary span{padding:8px;background:#edf7f0;border-radius:6px}.import-issue{border-left:3px solid #d69a20;padding:6px 10px;margin:6px 0;font-size:12px}.setup-card form{display:grid;gap:10px}@media(max-width:640px){.log-detail{top:4vh;right:3vw;bottom:4vh;left:3vw}.log-filters form{width:100%}.log-filters form input{min-width:0;width:100%}}.manual-controls{padding:12px;background:#f3f8f3;border:1px solid #d8e8da;border-radius:8px;margin-bottom:14px}.manual-controls p{font-size:11px;margin:6px 0;line-height:1.6}.manual-count{width:66px!important;padding:6px 3px!important;text-align:center;background:#fff8db!important;border:1px solid #d2ba69!important}.manual-count:invalid{border-color:#c44040!important}.led-display{min-height:100vh;padding:20px;background:#092a20;color:#fff}.led-display header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.led-display header img{width:230px;background:#fff;padding:10px;border-radius:8px}.led-display h1{color:#fff}.led-display table{width:100%;background:#fff;color:#123c2b;font-size:22px}.led-display th,.led-display td{padding:14px 12px}.led-display .baocom-board{background:#fff;padding:16px;border-radius:10px;color:#123c2b}.led-display .baocom-tools{display:none}.led-status{padding:18px;background:#fff4dc;color:#785315;border-radius:8px}.led-link-url{display:block;width:100%;padding:10px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-size:12px;background:#f0f8f2}.led-live-footer{margin-top:16px;font-size:12px;color:#c6d8ce}.manual-field-row{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:8px}@media(max-width:760px){.led-display{padding:10px}.led-display header{flex-wrap:wrap}.led-display table{font-size:15px}.manual-controls .actions{align-items:stretch;flex-direction:column}.manual-field-row{grid-template-columns:1fr 1fr}}.sidebar nav details{margin:4px 0}.sidebar nav summary{cursor:pointer;padding:11px 12px;color:#60776a;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.sidebar nav details button{padding-left:17px}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dashboard-grid .panel{margin:0;padding:20px}.dashboard-intro,.dashboard-kpis,.dashboard-alerts{grid-column:1/-1}.dashboard-intro{display:flex;align-items:center;justify-content:space-between;gap:12px}.dashboard-intro p{font-size:12px;color:#66776d;margin:7px 0 0}.dashboard-kpis{margin:0}.dashboard-kpis .stat{padding:18px}.dashboard-kpis .stat strong{font-size:30px}.dashboard-alerts ul{margin:10px 0 16px;padding-left:20px}.dashboard-alerts li{margin:6px 0}.trend-row{display:grid;grid-template-columns:45px minmax(40px,1fr) 90px;gap:12px;align-items:center;margin:14px 0;font-size:12px}.trend-row strong{text-align:right;font-size:12px}.bar-track{background:#edf4ef;height:15px;border-radius:4px;overflow:hidden}.bar-value{height:100%;background:#008136;border-radius:4px}.summary-numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.summary-numbers div{border:1px solid #e2ece5;padding:12px;border-radius:8px}.summary-numbers span{display:block;font-size:11px;color:#66776d}.summary-numbers strong{display:block;font-size:24px;margin-top:6px}.ingredient-totals{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.ingredient-totals span{background:#edf6ef;padding:6px 10px;border-radius:6px;font-size:12px}.job-mini{display:grid;grid-template-columns:1fr auto;gap:6px;border-top:1px solid #e5ece7;padding:10px 0;font-size:12px}.job-mini small{grid-column:1/-1;color:#65756b}.block-note{display:block;font-size:11px;color:#6d7b72;margin-top:5px}.jobs-page .panel{margin-bottom:16px}.jobs-page summary{cursor:pointer;font-weight:700}.job-form{margin-top:18px}.badge.BLOCKED,.badge.RETRY{background:#fff3cf;color:#7a5900}.badge.FAILED,.badge.INTERRUPTED{background:#ffeded;color:#a32e2e}.badge.SUCCEEDED{background:#ddf5e6;color:#136d37}@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr}.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.dashboard-kpis{grid-template-columns:1fr 1fr}.dashboard-kpis .stat{padding:12px}.dashboard-kpis .stat strong{font-size:24px}.dashboard-grid .panel{padding:14px}.dashboard-intro{align-items:flex-start}.trend-row{grid-template-columns:35px minmax(30px,1fr) 75px;gap:8px}}svg.bar-track{display:block;width:100%}rect.bar-value{fill:#008136}.menu-calendar .menu-board-scroll{overflow:auto;margin:18px 0;border:1px solid var(--border,#dce6df);border-radius:8px}.menu-board{min-width:1220px;width:100%;table-layout:fixed;border-collapse:collapse}.menu-board th,.menu-board td{white-space:normal;vertical-align:top;border-right:1px solid #dce6df;border-bottom:1px solid #dce6df;padding:12px;line-height:1.45}.menu-board thead th{background:#007d38;color:#fff}.menu-board thead button{background:transparent;border:0;color:#fff;box-shadow:none;padding:0;line-height:1.5;text-transform:capitalize}.menu-board th:first-child{width:72px}.menu-board small{display:block;font-size:11px;font-weight:400}.menu-board tbody th{background:#eaf5ed;color:#164e32}.menu-dish{margin:0 0 10px}.menu-dish small{color:#64806b}.menu-dish span{font-weight:600;color:#16452c}.menu-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.menu-months button{display:flex;align-items:flex-start;flex-direction:column;gap:7px;padding:16px}.menu-months span,.muted{color:#708477}.menu-calendar input[type=checkbox]{width:auto}@media(max-width:800px){.menu-months{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.menu-board{min-width:0;font-size:9px}.menu-calendar .menu-board-scroll{overflow:visible}.menu-board th,.menu-board td{padding:5px}.menu-board thead th{color:#111;background:#eee}.menu-board thead button{color:#111}}.menu-day-form{width:min(1000px,96vw);max-height:90vh;overflow:auto;padding:24px;background:#fff;border-radius:12px}.menu-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu-day-form fieldset{border:1px solid #dce6df;margin:16px 0;padding:16px;border-radius:8px}.menu-day-form legend{font-weight:700;color:#007d38}.menu-day-form label{display:flex;flex-direction:column;gap:5px}.menu-day-form input,.menu-day-form textarea{width:100%}@media(max-width:650px){.menu-form-grid{grid-template-columns:1fr}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#0c231880;display:flex;align-items:center;justify-content:center;padding:16px}.menu-day-form{box-shadow:0 20px 80px #0003}
