@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/build/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/build/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/build/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/build/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/build/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(/build/assets/inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/build/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/build/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/build/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/build/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/build/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/build/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}:root{--primary:#0e4e91;--sage:#2690c9;--slate:#1869aa;--ink:#27333d;--background:#f3f6f5;--surface:#fff;--line:#dde7e4;--line-card:#e2eae7;--chip-bg:#eef3f1;--avatar-bg:#e7f0ed;--ink-muted:#64757c;--ink-subtle:#7a888e;--heading-muted:#3c4a52;--status-draft:#a07a2a;--status-draft-bg:#f5efe2;--status-done:#5c8a6f;--status-done-bg:#e7f0ed;--warn-aging:#b4542f;--warn-aging-bg:#fbeeea;--success:#5c8a6f;--error:#b4463c;--error-bg:#fbeeea;--focus-ring:#1869aa;--accent:#faa518;--accent-strong:#f17921;--focus-shadow:#1869aa2e;--r-xs:4px;--r-sm:7px;--r-md:8px;--r-lg:10px;--r-pill:20px;--font:Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--background);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}h1,h2,h3,h4,p{margin:0}a{color:var(--primary)}button{font-family:var(--font)}.app{background:var(--surface);grid-template-columns:232px 1fr;min-height:100vh;transition:grid-template-columns .2s;display:grid}.app.nav-collapsed{grid-template-columns:62px 1fr}.app.nav-collapsed .sidebar .brand b,.app.nav-collapsed .sidebar .nav-item .lbl,.app.nav-collapsed .sidebar .nav-group{display:none}.app.nav-collapsed .sidebar .nav-item{justify-content:center;padding:10px 0}.app.nav-collapsed .sidebar .brand{justify-content:center;padding:6px 0 14px}.sidebar{border-right:1px solid var(--line);background:#fbfdfc;flex-direction:column;gap:4px;height:100vh;padding:14px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.nav-toggle{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-height:42px;color:var(--ink-muted);cursor:pointer;justify-content:center;align-items:center;gap:9px;width:100%;margin-bottom:4px;font-size:13px;font-weight:600;display:flex}.nav-toggle:hover{background:var(--chip-bg);color:var(--primary)}.nav-toggle svg{flex:none;width:18px;height:18px}.app.nav-collapsed .nav-toggle .lbl{display:none}.brand{align-items:center;gap:9px;padding:6px 8px 14px;display:flex}.brand .mark{object-fit:contain;flex-shrink:0;width:30px;height:30px}.brand b{color:var(--ink);font-size:17px;font-weight:700}.nav-group{color:var(--ink-subtle);text-transform:none;padding:12px 8px 4px;font-size:11px;font-weight:600}.nav-item{border-radius:var(--r-md);min-height:46px;color:var(--ink-muted);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:11px;width:100%;padding:10px 13px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.nav-item .ic{color:currentColor;flex:none;width:20px;height:20px}.nav-item:hover{background:var(--chip-bg)}.nav-item.active{background:var(--chip-bg);color:var(--primary);box-shadow:inset 3px 0 0 var(--accent);font-weight:600}.nav-item.cta{background:var(--primary);color:#fff;margin:4px 0;font-weight:600}.nav-item.cta:hover{background:#285f7b}.nav-item.cta .ic{color:#fff}.nav-spacer{flex:1}.content{background:var(--background);min-width:0;padding:20px}.content-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:18px;display:flex}.greet{color:var(--ink);font-size:26px;font-weight:700;line-height:1.25}.page-title{color:var(--ink);font-size:20px;font-weight:700;line-height:1.3}.subgreet{color:var(--ink-muted);margin-top:4px;font-size:15px}.backlink{color:var(--slate);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-bottom:6px;padding:6px 0;font-size:14px;font-weight:600;display:inline-flex}.backlink:hover{color:var(--primary)}.btn{border-radius:var(--r-md);cursor:pointer;border:1px solid #0000;align-items:center;gap:7px;min-height:46px;padding:12px 18px;font-size:15px;font-weight:600;line-height:1.1;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:#285f7b}.btn-primary:disabled{cursor:not-allowed;background:#b9ccd3}.btn-ghost{background:var(--surface);color:var(--slate);border-color:var(--line)}.btn-ghost:hover{background:var(--chip-bg)}.btn-sm{min-height:40px;padding:9px 13px;font-size:13.5px}.btn-danger{color:var(--error);border-color:var(--error-bg);background:var(--surface)}.card{background:var(--surface);border:1px solid var(--line-card);border-radius:var(--r-lg);padding:18px}.card-title{color:var(--heading-muted);font-size:14px;font-weight:600;line-height:1.3}.meta{color:var(--ink-subtle);font-size:13px;line-height:1.4}.body-sm{font-size:14px;line-height:1.5}.grid-stats{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.grid-2{grid-template-columns:1.3fr 1fr;gap:14px;display:grid}.grid-2e{grid-template-columns:1fr 1fr;gap:14px;display:grid}.grid-3e{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.stat{background:var(--surface);border:1px solid var(--line-card);border-radius:var(--r-lg);padding:14px}.stat .n{color:var(--ink);font-size:24px;font-weight:700;line-height:1.1}.stat .l{color:var(--ink-muted);margin-top:5px;font-size:13px;line-height:1.3}.stack{flex-direction:column;gap:14px;margin-top:14px;display:flex}.chip{border-radius:var(--r-pill);background:var(--chip-bg);color:var(--slate);align-items:center;gap:5px;padding:4px 11px;font-size:13px;font-weight:600;line-height:1.2;display:inline-flex}.chip.draft{background:var(--status-draft-bg);color:var(--status-draft)}.chip.done{background:var(--status-done-bg);color:var(--status-done)}.chip.warn{background:var(--warn-aging-bg);color:var(--warn-aging)}.chip.err{background:var(--error-bg);color:var(--error)}.chip .dot{background:currentColor;border-radius:50%;width:7px;height:7px;display:inline-block}.chip.removable{padding-right:6px}.chip.removable .x{cursor:pointer;background:#0000000f;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:13px;font-weight:700;display:inline-flex}.draft-row{border-bottom:1px solid var(--chip-bg);cursor:pointer;align-items:center;gap:12px;min-height:44px;padding:12px 0;display:flex}.draft-row:last-child{border-bottom:0}.draft-row:hover{background:var(--background)}.avatar{border-radius:var(--r-sm);background:var(--avatar-bg);width:40px;height:40px;color:var(--slate);flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.avatar.sm{width:30px;height:30px;font-size:12px}.draft-main{flex:1;min-width:0}.draft-main .t{color:var(--ink);font-size:15px;font-weight:600}.draft-main .s{color:var(--ink-subtle);margin-top:2px;font-size:13px}.tbl{border-collapse:collapse;width:100%}.tbl th{color:var(--ink-subtle);text-align:left;border-bottom:1px solid var(--line);padding:11px 14px;font-size:13px;font-weight:600}.tbl td{border-bottom:1px solid var(--line);color:var(--ink);vertical-align:middle;padding:13px 14px;font-size:14.5px}.tbl tbody tr{cursor:pointer}.tbl tbody tr:hover{background:var(--background)}.tbl code,code.pill{font-family:var(--font);color:var(--slate);background:var(--chip-bg);border-radius:var(--r-xs);padding:2px 8px;font-size:13px}.field{margin-bottom:16px}.field label{color:var(--ink);margin-bottom:6px;font-size:15.5px;font-weight:700;line-height:1.4;display:block}.field .ctrl,.field input.ctrl,.field select.ctrl,.field textarea.ctrl{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);width:100%;color:var(--ink);font-size:16px;font-family:var(--font);min-height:46px;padding:12px 13px;line-height:1.4}.field .ctrl.placeholder{color:var(--ink-subtle)}.field .ctrl.focused{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-shadow)}.field input.ctrl:focus,.field select.ctrl:focus,.field textarea.ctrl:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-shadow);outline:none}textarea.ctrl{resize:vertical;min-height:70px}select.ctrl{appearance:none;cursor:pointer;background-color:#f7faf9;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'><path d='M6 9l6 6 6-6' stroke='%231869aa' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 12px center;background-repeat:no-repeat;padding-right:40px}.select-note{color:var(--slate);margin-left:4px;font-size:12px}.ai-badge{color:var(--status-draft);background:var(--status-draft-bg);border-radius:var(--r-pill);align-items:center;gap:4px;margin-left:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.field-blank textarea.ctrl,.field-blank input.ctrl,.field-blank select.ctrl{border-style:dashed}.field-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.field-head label{margin:0}.group-label{color:var(--primary);text-transform:none;border-bottom:1px solid var(--chip-bg);margin:4px 0 10px;padding-bottom:6px;font-size:15.5px;font-weight:700}.picker-row{align-items:stretch;gap:8px;display:flex}.picker-row .ctrl{flex:1}.chip-area{border:1px dashed var(--line);border-radius:var(--r-md);background:var(--background);flex-wrap:wrap;align-items:center;gap:8px;min-height:52px;padding:10px;display:flex}.seg{background:var(--chip-bg);border-radius:var(--r-md);gap:2px;padding:4px;display:inline-flex}.seg button{color:var(--ink-muted);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;min-height:42px;padding:9px 16px;font-size:14px;font-weight:600}.seg button.active{background:var(--surface);color:var(--primary);box-shadow:0 1px 3px #1419231a}.dropzone{border:2px dashed var(--line);border-radius:var(--r-lg);background:var(--background);text-align:center;padding:22px}.dropzone .ico{width:40px;height:40px;color:var(--slate);margin:0 auto 10px}.dropzone .dz-main{color:var(--ink-muted);font-size:15px;font-weight:500}.dropzone[role=button]{cursor:pointer}.dropzone[role=button]:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.dropzone.drag{border-color:var(--primary);background:var(--surface)}.proc-row{background:var(--status-draft-bg);border-radius:var(--r-md);border:1px solid #ecdfc2;align-items:center;gap:12px;margin-top:12px;padding:13px 15px;display:flex}.spinner{border:3px solid #e4d2a6;border-top-color:var(--status-draft);border-radius:50%;flex:none;width:22px;height:22px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.progress{border-radius:var(--r-pill);background:#ecdfc2;height:6px;margin-top:9px;overflow:hidden}.progress i{background:var(--status-draft);border-radius:var(--r-pill);height:100%;transition:width .2s;display:block}.audio-current{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.player{background:var(--background);border:1px solid var(--line);border-radius:var(--r-md);align-items:center;gap:13px;padding:13px 15px;display:flex}.player audio{width:100%}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;margin:16px 0 12px;display:flex}.tab{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;min-height:44px;margin-bottom:-1px;padding:11px 15px;font-size:14.5px;font-weight:600}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tab:focus-visible{outline:3px solid var(--primary);outline-offset:-3px}.tab-body{color:var(--ink);font-size:15px;line-height:1.7}.transcript-text{background:var(--background);border:1px solid var(--line);border-radius:var(--r-md);white-space:pre-wrap;max-height:320px;padding:14px 16px;overflow-y:auto}.hist{margin:0;padding:0;list-style:none}.hist li{border-bottom:1px solid var(--chip-bg);align-items:flex-start;gap:11px;padding:11px 0;font-size:14px;display:flex}.hist li:last-child{border-bottom:0}.hist .when{color:var(--ink-subtle);white-space:nowrap;margin-top:3px;font-size:13px}.hist .dotline{color:var(--sage);margin-top:2px;font-size:13px}.info-list{margin:8px 0 0;padding:0;list-style:none}.info-list li{border-bottom:1px solid var(--chip-bg);gap:10px;padding:9px 0;font-size:15px;line-height:1.55;display:flex}.info-list li:last-child{border-bottom:0}.info-list .ik{color:var(--ink-subtle);flex:0 0 150px;padding-top:1px;font-size:13.5px}.info-list .iv{color:var(--ink);flex:1}.info-list .iv b{font-weight:600}.info-list .lead{color:var(--ink);margin-bottom:2px;font-weight:600;display:block}@media (width<=520px){.info-list li{flex-direction:column;gap:2px}.info-list .ik{flex:none}}.ro-grid{grid-template-columns:1fr 1fr;gap:14px 20px;display:grid}.ro-item .k{color:var(--ink-subtle);font-size:13px}.ro-item .v{color:var(--ink);margin-top:2px;font-size:15px;font-weight:600}.ro-item.full{grid-column:1/-1}.ro-item.full .v{font-weight:400}.empty{background:var(--surface);border:1px solid var(--line-card);border-radius:var(--r-lg);text-align:center;padding:60px 32px;position:relative;overflow:hidden}.empty .motif{pointer-events:none;opacity:.5;position:absolute;inset:0}.empty .inner{max-width:460px;margin:0 auto;position:relative}.empty h3{color:var(--ink);margin-bottom:10px;font-size:26px;font-weight:700;line-height:1.25}.empty p{color:var(--ink-muted);margin-bottom:24px;font-size:16px}.filters{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:16px;display:flex}.daterange{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}.daterange .dr-field{flex-direction:column;gap:4px;display:flex}.daterange label{color:var(--heading-muted);font-size:13px;font-weight:600}.daterange input.ctrl{min-width:150px}.filter{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-muted);align-items:center;gap:7px;min-height:44px;padding:10px 14px;font-size:14px;display:inline-flex}.filter b{color:var(--ink);font-weight:600}.timeline{margin:0;padding:0;list-style:none;position:relative}.timeline:before{content:"";background:var(--chip-bg);width:2px;position:absolute;top:6px;bottom:6px;left:8px}.timeline li{cursor:pointer;padding:0 0 18px 30px;position:relative}.timeline li:last-child{padding-bottom:0}.timeline .node{background:var(--sage);border:3px solid var(--surface);width:14px;height:14px;box-shadow:0 0 0 1px var(--sage);border-radius:50%;position:absolute;top:4px;left:2px}.timeline .tl-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.timeline .tl-date{color:var(--ink);font-size:14px;font-weight:700}.timeline .tl-sub{color:var(--ink-muted);margin-top:3px;font-size:13.5px}.timeline .tl-main{color:var(--ink);margin-top:5px;font-size:14px;line-height:1.5}.timeline .tl-mood{color:var(--ink-muted);margin-top:4px;font-size:13.5px;line-height:1.5}.timeline .tl-mood b{color:var(--heading-muted);font-weight:600}.timeline .tl-metrics{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.timeline .tl-metric{color:var(--ink-muted);background:var(--chip-bg);border-radius:var(--r-pill);padding:3px 10px;font-size:12.5px}.timeline .tl-metric b{color:var(--ink);font-weight:700}.card-soft{background:var(--chip-bg);border-radius:var(--r-md);padding:13px 15px}.login-wrap{background:var(--background);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.login-wrap .motif{pointer-events:none;opacity:.4;width:100%;height:100%;position:absolute;inset:0}.login-card{z-index:2;background:var(--surface);border:1px solid var(--line-card);border-radius:var(--r-lg);width:100%;max-width:400px;padding:32px;position:relative;box-shadow:0 10px 30px #14192314}.login-card .lg-brand{justify-content:center;align-items:center;gap:11px;margin-bottom:6px;display:flex}.login-card .lg-brand .mark{object-fit:contain;width:48px;height:48px}.login-card h2{text-align:center;color:var(--ink);font-size:24px;font-weight:700}.login-card .lg-sub{color:var(--ink-muted);text-align:center;margin:6px 0 22px;font-size:15px}.divider{color:var(--ink-subtle);align-items:center;gap:12px;margin:18px 0;font-size:13px;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.btn-google{background:var(--surface);width:100%;color:var(--ink);border-color:var(--line);justify-content:center}.btn-google:hover{background:var(--background)}.hint{color:var(--ink-subtle);margin:8px 2px 0;font-size:14px;font-style:italic}.pill-tag{color:var(--slate);background:var(--chip-bg);border-radius:var(--r-pill);padding:3px 11px;font-size:13px;font-weight:600;display:inline-block}.checks,.radios{flex-direction:column;gap:4px;display:flex}.checks label,.radios label{color:var(--ink);cursor:pointer;align-items:flex-start;gap:10px;padding:7px 0;font-size:15px;font-weight:400;line-height:1.45;display:flex}.checks input,.radios input{width:20px;height:20px;accent-color:var(--primary);flex:none;margin-top:1px}.subj-badge{color:var(--slate);background:var(--chip-bg);border-radius:var(--r-pill);align-items:center;margin-left:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.code-box{letter-spacing:.3px;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-muted);background:#f7faf9;align-items:center;min-height:46px;padding:11px 13px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;font-weight:600;display:flex}.subcard{border:1px solid var(--line-card);border-radius:var(--r-lg);background:#fbfdfc;margin-bottom:16px;padding:16px}.subcard:last-child{margin-bottom:0}.subcard .group-label{margin-top:0}.list-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.list-search{flex:1;min-width:220px;position:relative}.list-search svg{width:18px;height:18px;color:var(--ink-subtle);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.list-search input{width:100%;font:inherit;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);background:#f7faf9;min-height:46px;padding:11px 12px 11px 38px;font-size:15px}.list-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-shadow);outline:none}.list-filter{flex:none;width:auto;min-width:190px}.list-empty{text-align:center;color:var(--ink-subtle);padding:26px 16px;font-size:15px}@media (width<=560px){.list-filter{flex:100%;min-width:0}}.filter-flow{flex-wrap:wrap;gap:10px;display:flex}.filter-flow .ff{flex:200px;min-width:160px}.filter-flow .ff-sm{flex:150px;min-width:130px}.filter-flow .ff-lg{flex:2 300px;min-width:240px}.filter-flow .ff-full{flex:100%}.filter-flow .ctrl{width:100%;min-height:42px;padding:9px 12px;font-size:15px}.filter-flow select.ctrl{padding-right:36px}.filter-flow select.ctrl.is-empty{color:var(--ink-subtle)}.filter-flow #fltDateRange{min-height:42px}.filter-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.filter-actions .btn{min-height:42px}.filter-actions .spacer{flex:1}.btn-adv{background:var(--sage);color:#fff;border-color:var(--sage)}.btn-adv:hover{background:#6f9885}.btn-adv .chev{transition:transform .18s}.btn-adv[aria-expanded=true] .chev{transform:rotate(180deg)}.cell-main{color:var(--ink);font-weight:600}.cell-sub{color:var(--ink-subtle);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:3px;font-size:12.5px;display:flex}.cell-sub code{font-size:12px}.form-1col{max-width:720px}.form-1col .card{margin-bottom:16px}.form-1col .card:last-of-type{margin-bottom:0}.form-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.form-actions .btn{justify-content:center;min-width:150px}@media (width<=520px){.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.ms{position:relative}.ms-control{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);width:100%;min-height:46px;color:var(--ink);cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'><path d='M6 9l6 6 6-6' stroke='%231869aa' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 12px center;background-repeat:no-repeat;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 40px 8px 12px;font-size:16px;line-height:1.3;display:flex}.ms.open .ms-control{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-shadow)}.ms-ph{color:var(--ink-subtle)}.ms-tag{background:var(--chip-bg);color:var(--ink);border-radius:var(--r-pill);align-items:center;gap:6px;padding:3px 5px 3px 10px;font-size:13.5px;font-weight:600;display:inline-flex}.ms-tag .x{cursor:pointer;background:#00000012;border-radius:50%;justify-content:center;align-items:center;width:17px;height:17px;font-size:12px;font-weight:700;display:inline-flex}.ms-menu{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;max-height:280px;padding:6px;display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 8px 24px #14192324}.ms.open .ms-menu{display:flex}.ms-search{flex:none;margin-bottom:6px;position:relative}.ms-search input{width:100%;font:inherit;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink);background:#f7faf9 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'><circle cx='11' cy='11' r='7' stroke='%237a888e' stroke-width='1.8'/><path d='M20 20l-3.2-3.2' stroke='%237a888e' stroke-width='1.8' stroke-linecap='round'/></svg>") 10px no-repeat;padding:9px 12px 9px 34px;font-size:15px}.ms-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-shadow);outline:none}.ms-list{flex:1;overflow:auto}.ms-empty{color:var(--ink-subtle);text-align:center;padding:12px 10px;font-size:14px}.ms-opt{border-radius:var(--r-sm);cursor:pointer;color:var(--ink);align-items:flex-start;gap:10px;padding:9px 10px;font-size:15px;line-height:1.4;display:flex}.ms-opt:hover{background:var(--chip-bg)}.ms-opt input{width:19px;height:19px;accent-color:var(--primary);flex:none;margin-top:1px}.ms-locked .ms-control{cursor:not-allowed;pointer-events:none;opacity:.85;background:#eef2f1}.ms-locked .ms-menu{display:none!important}.scale{flex-wrap:wrap;gap:8px;display:flex}.scale label{text-align:center;border:1px solid var(--line);border-radius:var(--r-md);min-width:52px;color:var(--ink-muted);cursor:pointer;flex:1;padding:11px 4px;font-size:15px;font-weight:600}.scale input{display:none}.scale label:has(input:checked){border-color:var(--primary);color:var(--primary);background:#eaf2f1}.scale-ends{color:var(--ink-subtle);justify-content:space-between;margin-top:5px;font-size:13px;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:20;justify-content:space-between;align-items:center;padding:12px 16px;display:none;position:sticky;top:0}.topbar b{font-size:16px}.hamburger{width:44px;height:44px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.hamburger svg{width:26px;height:26px}.bottombar{border-top:1px solid var(--line);background:var(--surface);z-index:20;display:none;position:fixed;bottom:0;left:0;right:0}.bottombar a{color:var(--ink-subtle);flex-direction:column;flex:1;align-items:center;gap:4px;min-height:52px;padding:10px 0;font-size:12px;text-decoration:none;display:flex}.bottombar a.active{color:var(--primary)}.bottombar svg{width:22px;height:22px}.mobile-menu{display:none}.toast{z-index:60;background:var(--ink);color:#fff;border-radius:var(--r-md);max-width:420px;padding:13px 16px;font-size:15px;position:fixed;bottom:16px;right:16px;box-shadow:0 10px 30px #14192333}.toast.err{background:var(--error)}.field-error{color:var(--error);margin-top:6px;font-size:14px}.field.has-error .ctrl,.field.has-error .ms-control{border-color:var(--error)}.alert{border-radius:var(--r-md);margin-bottom:14px;padding:12px 14px;font-size:15px}.alert.err{background:var(--error-bg);color:var(--error)}.alert.ok{background:var(--status-done-bg);color:var(--status-done)}.modal-backdrop{z-index:50;background:#14192359;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface);border-radius:var(--r-lg);width:100%;max-width:560px;padding:22px;box-shadow:0 20px 50px #14192333}.modal-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.modal-head h3{font-size:19px;font-weight:700}.pager{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:14px;display:flex}.pager a,.pager span{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-width:44px;min-height:44px;color:var(--slate);justify-content:center;align-items:center;padding:0 10px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.pager .active{background:var(--primary);color:#fff;border-color:var(--primary)}.pager .disabled{opacity:.45}@media (width<=900px){.app{grid-template-columns:62px 1fr}.app .sidebar .brand b,.app .sidebar .nav-item .lbl,.app .nav-toggle .lbl{display:none}.app .sidebar .nav-item{justify-content:center;padding:10px 0}.grid-stats{grid-template-columns:repeat(2,1fr)}.grid-2,.grid-2e,.grid-3e,.ro-grid{grid-template-columns:1fr}}@media (width<=520px){body{font-size:15.5px}.app,.app.nav-collapsed{display:block}.sidebar{display:none}.topbar,.bottombar{display:flex}.content{padding:14px 14px 76px}.mobile-menu.open{z-index:30;background:var(--surface);flex-direction:column;gap:4px;padding:12px;display:flex;position:fixed;inset:57px 0 0}.grid-stats{grid-template-columns:1fr 1fr}.content-head{flex-direction:column;align-items:stretch}.greet{font-size:22px}}
