@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-ext-400-normal-CiZNW1ec.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-400-normal-DYBYyMQr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-400-normal-bXgqVju9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-vietnamese-500-normal-DREgrEoJ.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-500-normal-CfdwVo8-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-ext-500-normal-h0Fp6aX0.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-500-normal-CK0UkkKf.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-500-normal-B6LVzGNe.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-500-normal-BJkVuMHw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-vietnamese-600-normal-nyU-ZL2p.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-600-normal-DkpCIyan.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-ext-600-normal-BNd8euf0.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-600-normal-BeUwKxhG.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-600-normal-BZDkUTrt.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-600-normal-5IO4e7bK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--fs:1;--ink:#1c1c1c;--muted:#5f5f5f;--brand:#0a4b51;--phone:#dc2626;--line:#d4d4d4;--bg:#e9e9e9;--card:#f6f6f6;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;font-family:Be Vietnam Pro,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--phone:#f87171;--ink:#e3efed;--muted:#9bb3b0;--brand:#2dd4bf;--line:#254240;--bg:#0d1c1b;--card:#132726}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}:root[data-font=small]{--fs:.7143}:root[data-font=large]{--fs:1.2857}body{font-size:calc(14px * var(--fs));background:var(--bg);min-width:320px;margin:0;font-weight:400;line-height:1.5}h1,h2,h3{margin:0;font-weight:600}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#0a4b51;flex-direction:column;gap:16px;height:100dvh;padding:20px 16px;display:flex;position:sticky;top:0;overflow:hidden}.brand{flex-shrink:0;align-items:center;gap:12px;padding:0 8px;display:flex}.brand-logo{background:#fff;border-radius:12px;flex:none;width:52px;height:auto;padding:5px}.eyebrow{color:var(--brand);font-size:calc(11px * var(--fs));letter-spacing:.18em;margin:0 0 4px;font-weight:600}nav{flex-direction:column;gap:4px;display:flex}nav a{color:#fff;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-weight:500;text-decoration:none;display:flex}.sidebar nav{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#fff5 transparent;flex:auto;gap:14px;min-height:0;margin-right:-8px;padding-right:8px;overflow-y:auto}.sidebar nav::-webkit-scrollbar{width:6px}.sidebar nav::-webkit-scrollbar-thumb{background:#fff5;border-radius:3px}.nav-group{flex-direction:column;gap:2px;display:flex}.nav-group-title{letter-spacing:.08em;text-transform:uppercase;color:#fff9;margin:0 0 4px;padding:0 12px;font-size:11px;font-weight:700}nav a:hover{background:#ffffff1f}nav a.active{color:#0a4b51;background:#fff}.sidebar .eyebrow{color:#f6b79b}.sidebar strong{color:#fff}.content{min-width:0}.topbar{border-bottom:1px solid var(--line);background:var(--card);align-items:center;gap:12px;padding:20px 32px;display:flex}.topbar h1{font-size:calc(20px * var(--fs))}.status{border:1px solid var(--line);color:var(--brand);font-size:calc(12px * var(--fs));border-radius:999px;margin-left:auto;padding:6px 12px}.menu-btn{border:1px solid var(--line);background:var(--card);color:var(--ink);line-height:0;font-size:calc(18px * var(--fs));cursor:pointer;border-radius:8px;padding:4px 10px;display:none}main{padding:32px}.welcome{color:#fff;background:linear-gradient(120deg,#0a4b51,#06363b);border-radius:22px;padding:36px}.welcome .eyebrow{color:#f6b79b}.welcome h2{margin:8px 0 12px;font-size:clamp(24px,4vw,36px)}.welcome p:last-child{color:#e0f2f1;margin:0;line-height:1.7}.dot{background:#9aa8a6;border-radius:50%;width:12px;height:12px;display:inline-block}.dot.ok{background:#16a34a;box-shadow:0 0 0 4px #16a34a33}.dot.down{background:#dc2626;box-shadow:0 0 0 4px #dc262633}.dot.pending{background:#9aa8a6}.empty{border:1px dashed var(--line);text-align:center;background:var(--card);border-radius:16px;padding:48px 24px}.empty p{color:var(--muted);margin:8px 0 0}.backdrop{display:none}@media (width<=860px){.shell{grid-template-columns:1fr}.sidebar{z-index:20;width:240px;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.menu-open .sidebar{transform:none}.menu-open .backdrop{z-index:10;background:#0006;display:block;position:fixed;inset:0}.menu-btn{display:block}.topbar{padding:14px 16px}main{padding:20px 16px}}.system-status{background:#ffffff12;border:1px solid #ffffff26;border-radius:14px;flex-shrink:0;margin-top:auto;padding:8px}.status-title{color:#fff9;font-size:calc(10px * var(--fs));letter-spacing:.14em;text-transform:uppercase;margin:2px 6px 6px;font-weight:600}.status-row{color:#fff;width:100%;font:inherit;font-size:calc(12px * var(--fs));text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:6px;display:flex}button.status-row{cursor:pointer}button.status-row:hover{background:#ffffff1f}.status-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.status-value{color:#ffffffa6;font-size:calc(11px * var(--fs))}.status-row .dot{flex:none;width:8px;height:8px}.status-row .dot.ok,.status-row .dot.down{box-shadow:0 0 0 3px #ffffff1a}.page-head{justify-content:flex-end;align-items:center;gap:16px;margin-bottom:16px;display:flex}.page-head:empty{display:none}.page-head p{font-size:calc(14px * var(--fs));margin:0}.muted{color:var(--muted)}.btn{border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));cursor:pointer;white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-weight:500;display:inline-flex}.btn:disabled{opacity:.6;cursor:default}.btn.primary{color:#fff;background:#0a4b51;border-color:#0a4b51}.btn.add{color:#fff;background:#f97316;border-color:#f97316}.btn.add:hover:not(:disabled){background:#ea580c;border-color:#ea580c}.btn.danger{color:#fff;background:#dc2626;border-color:#dc2626}.alert{color:#b91c1c;font-size:calc(14px * var(--fs));background:#dc26261a;border:1px solid #dc262655;border-radius:10px;margin-bottom:16px;padding:10px 14px}:root[data-theme=dark] .alert{color:#fca5a5}.table-wrap{border:1px solid var(--line);background:var(--card);border-radius:14px;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:calc(14px * var(--fs))}.table th{border-bottom:1px solid var(--line);color:var(--muted);font-size:calc(12px * var(--fs));text-align:left;white-space:nowrap;padding:12px 16px;font-weight:500}.table td{border-bottom:1px solid var(--line);padding:12px 16px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:color-mix(in srgb, var(--brand) 5%, transparent)}.cell-name{font-weight:500}.cell-empty{color:var(--muted);text-align:center;padding:32px 16px}.col-order,.col-num,.col-state{width:90px;text-align:center!important}.col-actions{white-space:nowrap;width:100px;text-align:right!important}.icon-btn{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:inline-grid}.icon-btn:hover{background:color-mix(in srgb, var(--brand) 12%, transparent);color:var(--ink)}.icon-btn.danger:hover{color:#dc2626;background:#dc26262a}.switch{cursor:pointer;background:#9aa8a6;border:0;border-radius:999px;width:38px;height:22px;transition:background .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch.on{background:#16a34a;box-shadow:0 0 0 2px #16a34a33}:root[data-theme=dark] .switch.on{background:#34d399;box-shadow:0 0 0 2px #34d39933}.switch.on:after{transform:translate(16px)}.modal-backdrop{z-index:30;background:#0007;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--card);border-radius:16px;flex-direction:column;gap:16px;width:100%;max-width:440px;padding:24px;display:flex;box-shadow:0 20px 50px #0004}.modal.small{max-width:380px}.modal h2{font-size:calc(18px * var(--fs))}.modal p{color:var(--muted);line-height:1.6;font-size:calc(14px * var(--fs));margin:0}.modal-head{justify-content:space-between;align-items:center;display:flex}.modal-foot{justify-content:flex-end;gap:10px;display:flex}.field{font-size:calc(13px * var(--fs));color:var(--muted);flex-direction:column;gap:6px;display:flex}.field input{border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:10px;padding:10px 12px}.field input:focus{border-color:#0a4b51;outline:2px solid #0a4b5166}.check{font-size:calc(14px * var(--fs));cursor:pointer;align-items:center;gap:8px;display:flex}.check input{accent-color:#0a4b51;width:16px;height:16px}@media (width<=860px){.page-head{flex-direction:column;align-items:stretch}.col-order{display:none}}.search{border:1px solid var(--line);background:var(--card);max-width:360px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;margin-bottom:16px;padding:0 12px;display:flex}.search:focus-within{border-color:#0a4b51;outline:2px solid #0a4b5166}.search input{min-width:0;color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));background:0 0;border:0;outline:0;flex:1;padding:10px 0}.col-date{white-space:nowrap;width:160px;color:var(--muted)}@media (width<=860px){.col-date{display:none}.search{max-width:none}}.splash{min-height:100vh;color:var(--muted);place-items:center;display:grid}.login-page{background:linear-gradient(140deg,#0a4b51,#06363b);place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{background:var(--card);border-radius:20px;flex-direction:column;gap:16px;width:100%;max-width:400px;padding:32px;display:flex;box-shadow:0 24px 60px #0005}.login-card h1{font-size:calc(22px * var(--fs))}.login-card p{font-size:calc(14px * var(--fs));margin:-8px 0 0}.login-logo{align-self:flex-start;width:190px;height:auto;margin-bottom:4px}.login-submit{justify-content:center;padding:11px 14px}.password-box{border:1px solid var(--line);background:var(--bg);border-radius:10px;align-items:center;display:flex}.password-box:focus-within{border-color:#0a4b51;outline:2px solid #0a4b5166}.password-box input{flex:1;min-width:0;background:0 0!important;border:0!important;outline:0!important}.password-box .icon-btn{margin-right:4px}.topbar-user{align-items:center;gap:12px;margin-left:auto;display:flex}.user-name{color:var(--muted);font-size:calc(13px * var(--fs))}@media (width<=860px){.user-name{display:none}}.save-bar{align-items:center;gap:12px;display:flex}.saved-note{color:#16a34a;font-size:calc(13px * var(--fs));font-weight:500}.card{border:1px solid var(--line);background:var(--card);border-radius:14px;padding:20px}.card h2{font-size:calc(16px * var(--fs))}.card-hint{font-size:calc(13px * var(--fs));margin:4px 0 12px}.card-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px;display:grid}@media (width<=860px){.card-fields{grid-template-columns:1fr}.save-bar span{display:none}}.tabs{gap:4px;margin-bottom:-1px;display:flex;overflow-x:auto}.tab{color:var(--muted);font:inherit;font-size:calc(14px * var(--fs));white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:10px 10px 0 0;padding:10px 16px;font-weight:500;position:relative}.tab:hover{color:var(--ink)}.tab.active{border-color:var(--line);background:var(--card);color:var(--brand)}.tab-dot{vertical-align:middle;background:#ee7b4f;border-radius:50%;width:7px;height:7px;margin-left:8px;display:inline-block}.tabs+.card{border-top-left-radius:0}.rich-editor{border:1px solid var(--line);background:var(--bg);border-radius:12px;overflow:hidden}.rich-editor:focus-within{border-color:#0a4b51;outline:2px solid #0a4b5166}.rich-loading{color:var(--muted);font-size:calc(14px * var(--fs));padding:24px}.rich-toolbar{border-bottom:1px solid var(--line);background:var(--card);flex-wrap:wrap;align-items:center;gap:2px;padding:6px;display:flex}.tool-btn{width:32px;height:32px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:inline-grid}.tool-btn:hover:not(:disabled){background:color-mix(in srgb, var(--brand) 12%, transparent)}.tool-btn.active{color:#fff;background:#0a4b51}.tool-btn:disabled{opacity:.35;cursor:default}.tool-sep{background:var(--line);width:1px;height:20px;margin:0 6px}.link-bar{border-bottom:1px solid var(--line);background:var(--card);flex-wrap:wrap;align-items:center;gap:8px;padding:8px;display:flex}.link-bar input{border:1px solid var(--line);background:var(--bg);min-width:200px;color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:8px;flex:1;padding:8px 10px}.link-bar input[aria-invalid=true]{border-color:#dc2626}.link-error{color:#dc2626;width:100%;font-size:calc(12px * var(--fs))}.rich-content{min-height:360px;max-height:60vh;color:var(--ink);font-size:calc(15px * var(--fs));outline:0;padding:16px 20px;line-height:1.7;overflow-y:auto}.rich-content>:first-child{margin-top:0}.rich-content p{margin:0 0 12px}.rich-content h2{font-size:calc(20px * var(--fs));margin:24px 0 10px;line-height:1.35}.rich-content h3{font-size:calc(17px * var(--fs));margin:20px 0 8px;line-height:1.4}.rich-content h4{font-size:calc(15px * var(--fs));margin:16px 0 6px}.rich-content ul,.rich-content ol{margin:0 0 12px;padding-left:26px}.rich-content li{margin:4px 0}.rich-content li>p{margin:0}.rich-content blockquote{color:var(--muted);border-left:3px solid #0a4b51;margin:0 0 12px;padding:4px 16px}.rich-content a{color:var(--brand);cursor:pointer;text-decoration:underline}.rich-content hr{border:0;border-top:1px solid var(--line);margin:20px 0}.rich-content p.is-editor-empty:first-child:before{content:"Chưa có nội dung. Bắt đầu soạn tại đây…";float:left;height:0;color:var(--muted);pointer-events:none}@media (width<=860px){.rich-content{padding:12px 14px}}.filters{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.select,.field select{border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:10px;padding:10px 12px}.field select{background:var(--bg)}.select:focus,.field select:focus{border-color:#0a4b51;outline:2px solid #0a4b5166}.small{font-size:calc(12px * var(--fs))}.strike{text-decoration:line-through}.chip.warn{color:#a15f00;background:#c97a0029}.chip{background:color-mix(in srgb, var(--brand) 14%, transparent);color:var(--brand);font-size:calc(11px * var(--fs));vertical-align:middle;border-radius:999px;margin-left:8px;padding:1px 8px;font-weight:500;display:inline-block}.col-thumb{width:64px}.thumb{object-fit:cover;background:var(--bg);border-radius:10px;width:44px;height:44px;display:block}.thumb.empty{color:var(--muted);border:1px dashed var(--line);place-items:center;display:grid}.col-cat{white-space:nowrap;color:var(--muted)}.col-days{white-space:nowrap;width:90px}.col-price{white-space:nowrap;width:300px}.col-star{width:80px;text-align:center!important}.icon-btn.star.on,.icon-btn.star:hover{color:#f59e0b}.icon-btn:disabled{opacity:.35;cursor:default}.modal.wide{max-width:760px;max-height:calc(100vh - 32px);overflow-y:auto}.modal.wide .modal-foot{border-top:1px solid var(--line);background:var(--card);margin:0 -24px -24px;padding:14px 24px;position:sticky;bottom:-24px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.form-grid .span-2{grid-column:span 2}.price-note{font-size:calc(13px * var(--fs));margin:-4px 0 0}.name-row{flex-direction:column;gap:14px;display:flex}.image-field{border:1px dashed var(--line);border-radius:10px;align-items:center;gap:18px;width:100%;padding:12px 16px;flex-direction:row!important}.image-field>span{flex:none}.image-box{align-items:center;gap:18px;display:flex}.image-box img,.image-empty{object-fit:cover;border-radius:12px;flex:none;width:88px;height:88px}.image-empty{border:1px dashed var(--line);background:var(--bg);color:var(--muted);place-items:center;display:grid}.image-actions{flex-wrap:nowrap;align-items:center;gap:14px;display:flex}.image-actions .muted{display:none}.items{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.item-no{width:22px;color:var(--muted);font-size:calc(12px * var(--fs));text-align:right;flex:none}.item-row input,.item-note-row input{border:1px solid var(--line);background:var(--bg);width:100%;min-width:0;color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:8px;padding:8px 10px}.item-row input:focus,.item-note-row input:focus{border-color:#0a4b51;outline:2px solid #0a4b5166}.check-row{flex-wrap:wrap;gap:8px 24px;display:flex}@media (width<=860px){.col-cat,.col-days{display:none}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.modal.wide{padding:18px}.modal.wide .modal-foot{margin:0 -18px -18px;padding:12px 18px;bottom:-18px}}.detail-hero{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.avatar{aspect-ratio:1;object-fit:cover;background:var(--bg);border-radius:50%;flex:none;align-self:center;width:56px;min-width:56px;height:56px}.avatar.empty{color:var(--muted);border:1px dashed var(--line);place-items:center;display:grid}.detail-title{font-size:calc(13px * var(--fs));text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0;font-weight:600}.detail{border:1px solid var(--line);border-radius:12px;flex-direction:column;margin:0;display:flex}.detail-row{font-size:calc(14px * var(--fs));grid-template-columns:170px minmax(0,1fr);gap:12px;padding:10px 14px;display:grid}.detail-row+.detail-row{border-top:1px solid var(--line)}.detail-row dt{color:var(--muted)}.detail-row dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}@media (width<=600px){.detail-row{grid-template-columns:1fr;gap:2px}}.modal.xwide{width:calc(100vw - 48px);max-width:1480px;height:calc(100vh - 32px);overflow:hidden}.modal.xwide .package-layout{flex:auto;align-items:start;min-height:0;padding-right:4px;overflow-y:auto}.modal.xwide .modal-foot{margin:0;padding:14px 0 0;position:static}.modal.xwide>.alert{flex:none}.package-layout{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:24px;display:grid}.package-layout .pane{flex-direction:column;gap:16px;min-width:0;display:flex}.package-layout{align-items:stretch}.item-block{flex-direction:column;gap:6px;width:100%;display:flex}.item-row,.item-note-row{grid-template-columns:22px minmax(0,1fr) repeat(3,32px);align-items:center;gap:6px;width:100%;display:grid}.item-row .icon-btn{justify-content:center;width:32px;height:32px;padding:0}.item-note-row input{grid-column:2/5}@media (width<=720px){.package-layout{grid-template-columns:1fr}.item-row,.item-note-row{grid-template-columns:22px minmax(0,1fr) 70px 110px repeat(3,32px)}}.items-pane{border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:16px}.item-block{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:10px}.zoomable{cursor:zoom-in}.lightbox{z-index:60;cursor:zoom-out;background:#000c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.lightbox img{object-fit:contain;cursor:default;border-radius:12px;max-width:min(560px,100%);max-height:min(70vh,100%)}.lightbox-close{color:#fff;cursor:pointer;background:#fff3;border:0;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:16px;right:16px}.lightbox-close:hover{background:#fff5}.phone,.phone-hl,.phone-big{color:var(--phone);font-variant-numeric:tabular-nums;font-weight:700}.phone-hl{font-size:calc(15px * var(--fs));font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap}.link-btn{color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:500;display:block}.link-btn:hover,.link-btn:focus-visible{color:var(--brand);text-decoration:underline}.hero-phone{text-align:right;margin-left:auto}.phone-big{font-size:calc(28px * var(--fs));letter-spacing:.02em;white-space:nowrap;line-height:1.2}@media (width<=600px){.hero-phone{text-align:left;width:100%;margin-left:0}.phone-big{font-size:calc(24px * var(--fs))}}.date-range{flex-wrap:wrap;gap:10px;display:flex}.date-field{border:1px solid var(--line);background:var(--card);color:var(--muted);font-size:calc(13px * var(--fs));white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:flex}.date-field:focus-within{border-color:#0a4b51;outline:2px solid #0a4b5166}.date-field input{color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));background:0 0;border:0;outline:0;padding:9px 0}.filter-error{color:#dc2626;font-size:calc(13px * var(--fs));margin:-8px 0 16px}.text-filter{border:1px solid var(--line);background:var(--card);min-width:200px;color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:10px;padding:10px 12px}.text-filter:focus{border-color:#0a4b51;outline:2px solid #0a4b5166}.nowrap{white-space:nowrap}.pager{font-size:calc(13px * var(--fs));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.pager-nav{flex-direction:row;align-items:center;gap:4px;display:flex}.pager-num{min-width:32px;height:32px;color:var(--ink);font:inherit;font-size:calc(13px * var(--fs));cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:0 8px}.pager-num:hover{background:var(--bg)}.pager-num.on{color:#fff;cursor:default;background:#0a4b51;border-color:#0a4b51}.pager-gap{color:var(--muted);padding:0 4px}.person-cell{align-items:center;gap:12px;display:flex}.muted-sm{color:var(--muted);font-size:calc(12px * var(--fs));margin-top:2px}.skill-tags{flex-wrap:wrap;gap:6px;display:flex}.skill-tag{color:#b91c1c;font-size:calc(12px * var(--fs));background:#fbe7e7;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-weight:500;display:inline-flex}.skill-tag button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.skill-tags.editable{margin-bottom:6px}.field select,.field textarea{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:8px;padding:8px 10px}.hint{color:var(--muted);font-size:calc(13px * var(--fs));margin:0;line-height:1.5}.filters{align-items:center}.filters .btn.add{margin-left:auto}.level-prices{border:1px solid var(--line);background:color-mix(in srgb, #0a4b51 5%, var(--bg));border-radius:12px;flex-direction:column;gap:8px;padding:14px;display:flex}.level-block{border:1px solid var(--line);background:var(--bg);border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.level-row{grid-template-columns:90px minmax(0,1fr) minmax(0,1fr) 36px;align-items:center;gap:10px;display:grid}.level-head{font-size:calc(12px * var(--fs));padding:0 12px;font-weight:600}.level-head.level-row{padding-right:12px}.level-row input{border:1px solid var(--line);background:var(--bg);width:100%;min-width:0;color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:8px;padding:8px 10px}.level-row input:focus{border-color:#0a4b51;outline:2px solid #0a4b5166}.level-saving{color:#0a4b51;padding-left:100px}.level-prices .link-btn{align-self:flex-start}.price-line{grid-template-columns:44px 120px auto;align-items:baseline;gap:8px;padding:2px 0;display:grid}.status-chip{font-size:calc(12px * var(--fs));white-space:nowrap;color:#4b5563;background:#e5e7eb;border-radius:999px;padding:2px 10px;font-weight:500;display:inline-block}:root[data-theme=dark] .status-chip{color:#d1d5db;background:#374151}.col-cases{white-space:nowrap;width:150px}.case-line{font-size:calc(13px * var(--fs));justify-content:space-between;gap:16px;line-height:1.6;display:flex}.filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.filters .search{flex:1;min-width:260px;margin-bottom:0}.filters select,.table select{border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:8px;padding:8px 10px}.row-actions{flex-wrap:wrap;gap:6px;display:flex}.status-chip.bk-Pending{color:#b7791f;background:#fbf6e8}.status-chip.bk-Confirmed{color:#0a4b51;background:#e0edee}.status-chip.bk-InProgress{color:#1d4ed8;background:#e3ecfb}.status-chip.bk-Completed{color:#15803d;background:#e4f4e8}.status-chip.bk-Cancelled{color:#b91c1c;background:#fbe7e7}.expand-btn{border:1px solid var(--line);color:var(--brand);font:inherit;font-size:calc(13px * var(--fs));cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:4px 10px 4px 6px;font-weight:500;display:inline-flex}.expand-btn:hover:not(:disabled){background:color-mix(in srgb, var(--brand) 10%, transparent)}.expand-btn:disabled{color:var(--muted);cursor:default;opacity:.7}.expand-row>td{background:color-mix(in srgb, var(--brand) 4%, transparent);padding:0!important}.profile-box{padding:12px 16px 16px 40px}.profile-box>p{font-size:calc(14px * var(--fs));margin:8px 0}.sub-table{background:var(--card);border-radius:10px;overflow:hidden}.case-received{color:#2563eb}.case-progress{color:#ea580c}.case-done{color:#16a34a}:root[data-theme=dark] .case-received{color:#60a5fa}:root[data-theme=dark] .case-progress{color:#fb923c}:root[data-theme=dark] .case-done{color:#4ade80}.field:has(:required)>span:first-child:after{content:" *";color:#dc2626;font-weight:600}.col-code{white-space:nowrap;font-variant-numeric:tabular-nums;width:110px;color:var(--muted)}.sort-btn{color:inherit;font:inherit;font-weight:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.sort-btn svg{box-sizing:content-box;color:#f97316;background:#ffedd5;border-radius:6px;flex:none;padding:3px}.sort-btn:hover svg{background:#fed7aa}.sort-btn.on svg{color:#fff;background:#f97316}:root[data-theme=dark] .sort-btn svg{color:#fb923c;background:#431407}:root[data-theme=dark] .sort-btn:hover svg{background:#7c2d12}:root[data-theme=dark] .sort-btn.on svg{color:#fff;background:#f97316}.btn.sm{font-size:calc(12px * var(--fs));border-radius:8px;padding:3px 10px;font-weight:500}.row-actions{justify-content:flex-end;gap:4px}.btn.pay{color:#fff;background:#16a34a;border-color:#16a34a}.btn.pay:hover:not(:disabled){background:#15803d;border-color:#15803d}.paid-yes{color:#16a34a;font-weight:600}.paid-part{color:#ea580c;font-weight:600}.cert-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.cert-item{flex-direction:column;gap:6px;margin:0;display:flex;position:relative}.cert-item>img{object-fit:cover;background:var(--bg);border:1px solid var(--line);border-radius:10px;width:100%;height:110px}.cert-item figcaption{font-size:calc(12px * var(--fs));color:var(--ink);overflow-wrap:anywhere;line-height:1.4}.cert-item>input{border:1px solid var(--line);background:var(--bg);width:100%;min-width:0;color:var(--ink);font:inherit;font-size:calc(12px * var(--fs));border-radius:8px;padding:6px 8px}.cert-remove{background:var(--card);justify-content:center;width:26px;height:26px;padding:0;position:absolute;top:6px;right:6px;box-shadow:0 1px 4px #0003}.table select.status-select{font-size:calc(12px * var(--fs));cursor:pointer;border:0;border-radius:999px;padding:4px 10px;font-weight:500}.table select.status-select:disabled{cursor:wait;opacity:.6}.table select.status-select.bk-Pending{color:#b7791f;background:#fbf6e8}.table select.status-select.bk-Confirmed{color:#0a4b51;background:#e0edee}.table select.status-select.bk-InProgress{color:#1d4ed8;background:#e3ecfb}.table select.status-select.bk-Completed{color:#15803d;background:#e4f4e8}.table select.status-select.bk-Cancelled{color:#b91c1c;background:#fbe7e7}.table select.status-select.pay-Unpaid{color:#b7791f;background:#fbf6e8}.table select.status-select.pay-Claimed,.table select.status-select.pay-Partial{color:#1d4ed8;background:#e3ecfb}.table select.status-select.pay-Paid{color:#15803d;background:#e4f4e8}.table .col-price{width:150px}.table .col-price .link-btn{color:inherit;text-align:center;font-weight:inherit;margin:0 auto}.table .col-price .link-btn:hover,.table .col-price .link-btn:focus-visible{color:inherit}.item-partner{font-size:calc(13px * var(--fs));align-self:flex-start;margin-left:28px}.cell-with-link{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.care-progress{margin:4px 0 14px}.care-progress-text{font-size:calc(16px * var(--fs));justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.care-progress-bar{background:var(--line);border-radius:999px;height:10px;overflow:hidden}.care-progress-fill{background:#16a34a;border-radius:999px;height:100%;transition:width .3s}.care-heading{font-size:calc(15px * var(--fs));margin:18px 0 8px}.care-sessions{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.care-sessions>li{border:1px solid var(--line);border-radius:10px;padding:10px 12px}.care-session-head{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;display:flex}.care-done{font-size:calc(13px * var(--fs));margin:6px 0 0;padding-left:18px}.care-chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.care-chip{border:1px solid var(--line);min-width:28px;height:28px;font-size:calc(12px * var(--fs));color:var(--muted);border-radius:8px;justify-content:center;align-items:center;padding:0 6px;display:inline-flex}.care-chip.done{color:#15803d;background:#e4f4e8;border-color:#16a34a;font-weight:600}.date-edit{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.date-edit input{border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:8px;padding:6px 8px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes loading-slide{0%{left:-40%}to{left:100%}}@keyframes skeleton-pulse{0%,to{opacity:.55}50%{opacity:1}}.spin{animation:.8s linear infinite spin}.table-wrap{position:relative}.loading-bar{z-index:2;background:0 0;border-radius:14px 14px 0 0;height:3px;position:absolute;top:0;left:0;right:0;overflow:hidden}.loading-bar:after{content:"";background:linear-gradient(90deg,#0000,#0a4b51,#0000);border-radius:3px;width:40%;animation:1s ease-in-out infinite loading-slide;position:absolute;top:0;bottom:0}.table-wrap[aria-busy=true] tbody:not(.is-skeleton){opacity:.45;pointer-events:none;transition:opacity .15s}.table tbody{transition:opacity .15s}.skeleton{background:var(--line);border-radius:6px;height:14px;animation:1.2s ease-in-out infinite skeleton-pulse;display:block}.skeleton-row td{padding-top:18px;padding-bottom:18px}@media (prefers-reduced-motion:reduce){.spin,.loading-bar:after,.skeleton{animation:none}}.table .link-btn[title^=Sửa]{white-space:nowrap}.warn-text{color:#a15f00}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a1514b3}.modal{border:1px solid color-mix(in srgb, var(--ink) 14%, transparent);gap:18px;box-shadow:0 24px 60px #0006}.modal-head{border-bottom:1px solid var(--line);padding-bottom:14px}.modal-head h2{font-size:calc(19px * var(--fs));font-weight:700}.modal .field{gap:7px}.modal .field>span:first-child{color:var(--ink);font-size:calc(14px * var(--fs));font-weight:600}.modal .field input:not([type=checkbox]):not([type=radio]):not([type=file]),.modal .field select,.modal .field textarea{background:var(--card);border:1.5px solid color-mix(in srgb, var(--ink) 28%, transparent);min-height:42px}.modal .field textarea{min-height:84px}.modal .field input:not([type=checkbox]):not([type=radio]):not([type=file]):not(:focus):hover,.modal .field select:not(:focus):hover,.modal .field textarea:not(:focus):hover,.search:not(:focus-within):hover,.filters select:not(:focus):hover{border-color:color-mix(in srgb, var(--brand) 45%, var(--line));background-color:color-mix(in srgb, var(--brand) 4%, var(--card))}.modal .field select,.filters select{cursor:pointer;transition:border-color .12s,background-color .12s}.modal .field input,.modal .field textarea,.search{transition:border-color .12s,background-color .12s}.modal .field input:focus,.modal .field select:focus,.modal .field textarea:focus{outline:3px solid color-mix(in srgb, var(--brand) 28%, transparent);border-color:var(--brand)}.modal .field input::placeholder,.modal .field textarea::placeholder{color:color-mix(in srgb, var(--muted) 75%, transparent)}.modal .check{font-weight:500}.modal-foot{border-top:1px solid var(--line);padding-top:14px}.modal.wide .modal-foot{border-top-color:var(--line)}.tech-group{border:1.5px solid color-mix(in srgb, var(--ink) 18%, transparent);background:var(--card);border-radius:12px;overflow:hidden}.tech-group+.tech-group{margin-top:10px}.tech-group-head{background:color-mix(in srgb, var(--brand) 9%, var(--card));border-bottom:1px solid var(--line);color:var(--ink);font-size:calc(14px * var(--fs));justify-content:space-between;align-items:center;gap:12px;padding:9px 14px;display:flex}.tech-count{font-size:calc(12px * var(--fs));color:var(--muted);white-space:nowrap}.tech-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px;padding:8px 14px 10px;display:grid}.tech-item{align-items:flex-start;gap:9px;padding:5px 0;line-height:1.35}.tech-item input{flex:none;margin-top:2px}.tech-item:hover{color:var(--brand)}@media (width<=640px){.tech-list{grid-template-columns:1fr}}.col-num{white-space:nowrap}:root[data-theme=dark] .modal .check input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.settings{position:relative}.settings-btn{border:1px solid var(--line);background:var(--card);width:36px;height:36px;color:var(--ink);border-radius:10px}.settings-pop{z-index:40;border:1px solid color-mix(in srgb, var(--ink) 16%, transparent);background:var(--card);border-radius:14px;width:min(380px,100vw - 24px);padding:14px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 40px #0004}.settings-title{font-size:calc(13px * var(--fs));color:var(--muted);margin:0 0 8px;font-weight:600}.settings-title:not(:first-child){margin-top:14px}.seg{background:color-mix(in srgb, var(--ink) 8%, var(--card));border-radius:12px;gap:4px;padding:4px;display:flex}.seg button{min-height:38px;color:var(--ink);font:inherit;font-size:calc(13px * var(--fs));cursor:pointer;background:0 0;border:0;border-radius:9px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;padding:6px 4px;font-weight:500;display:flex}.seg button svg{flex:none}.seg button small{font-size:calc(11px * var(--fs));color:var(--muted)}.seg button:hover:not(.on){background:color-mix(in srgb, var(--ink) 7%, transparent)}.seg button.on{color:#fff;background:#0a4b51}.seg button.on small{color:#ffffffb3}:root[data-theme=dark] .seg button.on{color:#04201e;background:#14b8a6}:root[data-theme=dark] .seg button.on small{color:#04201ecc}.seg.two button{flex-direction:row;gap:6px}.seg button{white-space:nowrap}.settings-error{font-size:calc(12px * var(--fs));color:#dc2626;margin:10px 0 0}.tabs-page{border-bottom:1px solid var(--line);margin-bottom:16px;padding-bottom:0}.tab-count{color:#fff;min-width:20px;font-size:calc(12px * var(--fs));text-align:center;background:#ee7b4f;border-radius:999px;margin-left:8px;padding:0 6px;font-weight:600;line-height:20px;display:inline-block}.thumb.thumb-review{border-radius:12px;width:110px;height:110px}.report-filter{border:1px solid var(--line);background:var(--card);border-radius:14px;flex-wrap:wrap;align-items:flex-end;gap:14px 18px;margin-bottom:18px;padding:16px 18px;display:flex}.report-filter .field>span{color:var(--ink);font-weight:600}.month-picker{align-items:center;gap:6px;display:flex}.month-picker .icon-btn{border:1.5px solid color-mix(in srgb, var(--ink) 22%, transparent);background:var(--card);width:40px;height:42px;color:var(--ink);border-radius:10px}.month-picker .icon-btn:hover{border-color:color-mix(in srgb, var(--brand) 45%, var(--line));background:color-mix(in srgb, var(--brand) 6%, var(--card))}.month-input{border:1.5px solid color-mix(in srgb, var(--ink) 22%, transparent);background:var(--card);height:42px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:0 12px;transition:border-color .12s,background-color .12s;display:flex}.month-input:hover{border-color:color-mix(in srgb, var(--brand) 45%, var(--line))}.month-input:focus-within{outline:3px solid color-mix(in srgb, var(--brand) 28%, transparent);border-color:var(--brand)}.month-input input{min-width:150px;color:var(--ink);font:inherit;font-size:calc(15px * var(--fs));background:0 0;border:0;outline:0;padding:0;font-weight:500}.quick-months{align-self:flex-end;align-items:center;gap:8px;height:42px;display:flex}.chip-btn{border:1px solid var(--line);background:var(--card);height:34px;color:var(--ink);font:inherit;font-size:calc(13px * var(--fs));cursor:pointer;border-radius:999px;padding:0 14px;font-weight:500;transition:background-color .12s,border-color .12s}.chip-btn:hover{border-color:color-mix(in srgb, var(--brand) 45%, var(--line));background:color-mix(in srgb, var(--brand) 6%, var(--card))}.chip-btn.on{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 12%, var(--card));color:var(--brand);font-weight:600}.report-search{align-items:center;gap:8px;height:42px;padding:0 20px;display:inline-flex}.report-total{background:color-mix(in srgb, var(--brand) 9%, var(--card));border-radius:12px;flex-direction:column;align-items:flex-end;margin-left:auto;padding:8px 16px;display:flex}.report-total span{font-size:calc(12px * var(--fs));color:var(--muted)}.report-total strong{font-size:calc(22px * var(--fs));color:var(--brand);font-weight:700;line-height:1.2}@media (width<=720px){.report-total{align-items:flex-start;width:100%;margin-left:0}.quick-months{height:auto}}.detail-grid{grid-template-columns:1fr auto;align-items:start;gap:24px;display:grid}@media (width<=720px){.detail-grid{grid-template-columns:1fr}}.chip{white-space:nowrap}.table td>.chip:only-child{font-size:calc(12px * var(--fs));margin-left:0;padding:3px 12px;font-weight:600}.col-state{min-width:130px}.table td input:not([type=checkbox]):not([type=radio]){border:1.5px solid color-mix(in srgb, var(--ink) 22%, transparent);background:var(--card);width:100%;min-width:120px;height:38px;color:var(--ink);font:inherit;font-size:calc(14px * var(--fs));border-radius:8px;padding:0 10px;transition:border-color .12s,background-color .12s}.table td input[type=date]{font-variant-numeric:tabular-nums;min-width:150px}.table td input:not([type=checkbox]):not([type=radio]):not(:focus):hover{border-color:color-mix(in srgb, var(--brand) 45%, var(--line));background-color:color-mix(in srgb, var(--brand) 4%, var(--card))}.table td input:not([type=checkbox]):not([type=radio]):focus{outline:3px solid color-mix(in srgb, var(--brand) 28%, transparent);border-color:var(--brand)}.table td.col-num input{text-align:right}.pay-table select{text-overflow:ellipsis;width:100%;min-width:150px;max-width:260px}.pay-table td,.pay-table th{vertical-align:middle}.pay-table td:last-child{width:56px}.sort-checks{align-self:end;padding-bottom:8px}.status-chip{font-size:calc(12px * var(--fs));vertical-align:middle;border-radius:999px;padding:2px 10px;font-weight:500;display:inline-block}.row-click:hover{background:color-mix(in srgb, var(--brand) 6%, transparent)}.switch:disabled{opacity:.45;cursor:not-allowed}.modal-backdrop{align-items:center;padding:20px;overflow-y:auto}.modal{overscroll-behavior:contain;border-radius:18px;flex-direction:column;gap:16px;max-width:560px;max-height:calc(100vh - 40px);padding:0 24px;display:flex;overflow-y:auto}.modal.small{gap:14px;max-width:400px;padding:24px}.modal>:last-child:not(.modal-foot){margin-bottom:24px}.modal.wide{max-width:860px}.modal.xwide{max-width:1480px}.modal-head{z-index:2;background:var(--card);border-bottom:1px solid var(--line);gap:12px;margin:0 -24px;padding:18px 24px 14px;position:sticky;top:0}.modal-head h2{font-size:calc(19px * var(--fs));margin:0;line-height:1.3}.modal-head .icon-btn{flex:none}.modal>.modal-foot,.modal>form>.modal-foot{z-index:2;background:var(--card);border-top:1px solid var(--line);gap:10px;margin:0 -24px;padding:14px 24px 18px;position:sticky;bottom:0;box-shadow:0 -8px 12px -10px #0003}.modal-foot .btn{justify-content:center}.modal>.modal-foot .btn{min-width:96px}.modal.wide>.modal-foot{margin:0 -24px;padding:14px 24px 18px;position:sticky;bottom:0}.modal h3{font-size:calc(15px * var(--fs));margin:4px 0 2px}.modal section{border-top:1px dashed var(--line);padding-top:14px}.modal section>h3:first-child{margin-top:0}.modal .detail{background:color-mix(in srgb, var(--ink) 2.5%, var(--card));border-radius:12px;overflow:hidden}.modal .detail-row{grid-template-columns:160px minmax(0,1fr);padding:11px 16px}.modal .alert,.modal .notice{margin:0}@media (width<=640px){.modal-backdrop{align-items:stretch;padding:0}.modal,.modal.wide,.modal.xwide{border-radius:0;width:100%;max-width:none;min-height:100%;max-height:none;padding:0 16px}.modal.small{border-radius:16px;align-self:center;width:calc(100% - 32px);min-height:0;margin:16px;padding:20px}.modal-head{margin:0 -16px;padding:14px 16px 12px}.modal>.modal-foot,.modal.wide>.modal-foot,.modal.xwide>.modal-foot{margin:0 -16px;padding:12px 16px 16px}.modal .detail-row{grid-template-columns:1fr;gap:2px}}.modal.xwide>.modal-foot{box-shadow:none;margin:0 -24px;padding:14px 24px 18px;position:static}.modal.xwide .package-layout{padding-bottom:8px}@media (width<=640px){.modal.xwide{height:100vh}.modal.xwide>.modal-foot{margin:0 -16px;padding:12px 16px 16px}}.modal-backdrop{background:var(--card);-webkit-backdrop-filter:none;backdrop-filter:none;place-items:stretch stretch;padding:0;overflow:hidden}.modal:not(.small){--pad:max(24px, calc((100vw - 1040px) / 2));width:100vw;max-width:none;height:100vh;min-height:0;max-height:none;box-shadow:none;padding:0 var(--pad);border:0;border-radius:0;animation:.16s ease-out modal-in;overflow-y:auto}.modal.xwide:not(.small){--pad:max(24px, calc((100vw - 1480px) / 2))}.modal:not(.small)>.modal-head{margin:0 calc(-1 * var(--pad));padding:16px var(--pad) 14px}.modal:not(.small)>.modal-foot{margin:auto calc(-1 * var(--pad)) 0;padding:14px var(--pad) 18px}.modal:not(.small)>:last-child:not(.modal-foot){margin-bottom:32px}.modal.xwide:not(.small){overflow:hidden}.modal.xwide:not(.small) .package-layout{padding-bottom:8px}@keyframes modal-in{0%{opacity:0;transform:scale(.985)}}@media (width<=640px){.modal:not(.small){--pad:16px}.modal:not(.small)>.modal-head{padding:14px 16px 12px}.modal:not(.small)>.modal-foot{padding:12px 16px 16px}}.modal:not(.small)>.modal-foot:not(:only-child){position:sticky;bottom:0}:is(.modal-backdrop:has(>.modal.small),.modal-backdrop:has(>form.modal.small)){-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a1514b3;place-items:center;padding:16px;overflow-y:auto}.modal.small{border:1px solid color-mix(in srgb, var(--ink) 14%, transparent);border-radius:16px;width:100%;max-width:400px;height:auto;min-height:0;max-height:calc(100vh - 32px);padding:24px;animation:none;overflow-y:auto;box-shadow:0 24px 60px #0006}.modal.small>.modal-head{margin:0;padding:0 0 14px;position:static}.modal.small>.modal-foot{box-shadow:none;margin:0;padding:14px 0 0;position:static}.modal.small>:last-child{margin-bottom:0}.report-name{flex:260px;min-width:220px;max-width:360px;height:42px}.report-province{min-width:200px}.report-province select{min-height:42px}.report-filter{flex-flow:column;align-items:stretch;gap:16px;padding:18px 20px;display:flex}.report-grid{grid-template-columns:auto minmax(240px,1fr) minmax(200px,260px) auto;align-items:end;gap:14px 18px;display:grid}.report-grid .field{gap:7px;min-width:0}.report-grid .search.report-name{flex:none;width:100%;min-width:0;max-width:none;height:42px}.report-grid .select{width:100%;height:42px;min-height:42px}.report-actions{align-items:center;gap:8px;display:flex}.report-actions .btn{height:42px}.report-foot{border-top:1px dashed var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;padding-top:14px;display:flex}.report-foot .quick-months{align-self:auto;height:auto}.report-foot .report-total{flex-direction:row;align-items:baseline;gap:12px;margin-left:0;padding:8px 16px}.report-foot .report-total strong{font-size:calc(21px * var(--fs))}@media (width<=1100px){.report-grid{grid-template-columns:1fr 1fr}.report-actions{grid-column:1/-1}}@media (width<=640px){.report-grid{grid-template-columns:1fr}}.report-grid .search.report-name{border:1.5px solid color-mix(in srgb, var(--ink) 22%, transparent);margin:0}.report-grid .search.report-name input{padding:0}
