html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{--teal-50:#e1f5ee;--teal-100:#b9e7d8;--teal-400:#1d9e75;--teal-600:#0f6e56;--teal-800:#085041;--blue-50:#e6f1fb;--blue-100:#b5d4f4;--blue-400:#378add;--blue-600:#185fa5;--blue-800:#0c447c;--red-50:#fcebeb;--red-100:#f7c1c1;--red-400:#e05050;--red-600:#a32d2d;--red-800:#791f1f;--amber-50:#faeeda;--amber-100:#fac775;--amber-400:#e08a0b;--amber-600:#854f0b;--amber-800:#633806;--green-50:#eaf3de;--green-100:#c7e29a;--green-400:#5aa72a;--green-600:#3b6d11;--green-800:#27500a;--purple-50:#eeedfe;--purple-100:#cecbf6;--purple-400:#6d5ae0;--purple-600:#4f42b8;--purple-800:#3c3489;--gray-50:#f1efe8;--gray-100:#d3d1c7;--gray-400:#9b9a93;--gray-600:#5f5e5a;--gray-800:#2f2e2b;--brand:var(--teal-400);--brand-strong:var(--teal-600);--brand-deep:var(--teal-800);--brand-soft:var(--teal-50);--text-main:#1a1a1a;--text-normal:#555;--text-muted:#888;--text-header:#333;--text-on-brand:#fff;--bg-page:#f0f0f0;--bg-sidebar:var(--teal-600);--bg-main:#fff;--bg-card:#fff;--bg-head-row:#fafafa;--bg-hover:#fafafa;--border-strong:#e0e0e0;--border-soft:#f0f0f0;--btn-edit-bg:var(--blue-400);--btn-edit-fg:#fff;--btn-danger-bg:#fff;--btn-danger-fg:var(--text-main);--btn-danger-border:var(--border-strong);--btn-warn-bg:var(--amber-50);--btn-warn-fg:var(--amber-800);--btn-warn-border:var(--amber-100);--btn-secondary-bg:var(--gray-50);--btn-secondary-fg:var(--gray-600);--btn-secondary-border:var(--gray-100);--btn-link-bg:var(--blue-50);--btn-link-fg:var(--blue-800);--btn-link-border:var(--blue-100);--btn-primary-bg:var(--teal-400);--btn-primary-fg:#fff;--btn-audit-bg:var(--purple-50);--btn-audit-fg:var(--purple-800);--btn-audit-border:var(--purple-100);--status-open-bg:var(--green-50);--status-open-fg:var(--green-800);--status-suspended-bg:var(--amber-50);--status-suspended-fg:var(--amber-800);--status-closed-bg:var(--gray-50);--status-closed-fg:var(--gray-600);--status-urgent-bg:var(--red-50);--status-urgent-fg:var(--red-800);--status-submitted-bg:var(--blue-50);--status-submitted-fg:var(--blue-800);--status-homevisit-bg:var(--teal-50);--status-homevisit-fg:var(--teal-800);--role-manager-bg:var(--purple-50);--role-manager-fg:var(--purple-800);--role-admin-bg:var(--gray-100);--role-admin-fg:var(--gray-800);--role-full-manager-bg:var(--purple-100);--role-full-manager-fg:var(--purple-800);--role-team-lead-bg:var(--teal-50);--role-team-lead-fg:var(--teal-800);--role-view-manager-bg:var(--green-50);--role-view-manager-fg:var(--green-800);--role-volunteer-bg:var(--amber-50);--role-volunteer-fg:var(--amber-800);--role-social-bg:var(--blue-50);--role-social-fg:var(--blue-800);--intensity-red:#e53935;--intensity-orange:#fb8c00;--intensity-yellow:#fdd835;--intensity-green:#43a047;--intensity-grey:#9e9e9e;--intensity-black:#212121;--case-row-bg:#faf8ff;--cal-case-bg:#ede7f6;--cal-case-fg:#4527a0;--cal-today-ring:#7b5ea7;--cal-infotech-bg:#e8f5e9;--cal-infotech-fg:#2e7d32;--cal-infotech-border:#a5d6a7;--cal-other-bg:#e3f2fd;--cal-other-fg:#1565c0;--cal-other-border:#90caf9;--stat-primary:var(--teal-600);--stat-resource:var(--blue-600);--stat-positive:var(--green-600);--radius-btn:6px;--radius-card:8px;--radius-badge:20px;--radius-icon-btn:5px}*{box-sizing:border-box}:root{--app-min-width:1280px}html,body,#root{width:100%;min-width:var(--app-min-width);color:#1f2937;min-height:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif}body{background:#f4f5f7;overflow-x:auto}.app{width:max(100vw, var(--app-min-width));height:100vh;min-width:var(--app-min-width);color:var(--text-main);background:var(--bg-page);font-family:PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5;display:flex;overflow:hidden}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--brand-deep);flex-direction:column;flex:0 0 224px;width:224px;padding:0 12px;display:flex;overflow:hidden}.brand{padding:24px 8px 0}.brand-title{color:var(--text-on-brand);margin:0;font-size:16px;font-weight:700;line-height:1.3}.brand-subtitle{color:#ffffffb3;margin-top:2px;font-size:12px}.nav{flex-direction:column;gap:8px;margin-top:24px;display:flex}.nav-item{color:#ffffffd1;cursor:pointer;border-radius:8px;align-items:center;gap:10px;height:48px;padding:0 16px;text-decoration:none;transition:background-color .15s;display:flex}.nav-item:hover{background:#ffffff1f}.nav-item.active{background:var(--brand-soft);color:var(--brand-strong)}.nav-item.active .nav-label{color:var(--brand-strong);font-weight:700}.nav-item.active .nav-icon{color:var(--brand-strong)}.nav-item.disabled{opacity:.45;cursor:not-allowed}.nav-item.disabled:hover{background:0 0}.nav-icon{color:#ffffffd1;flex:0 0 20px;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.nav-icon svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.nav-label{min-width:0;color:inherit;flex:1;font-size:14px;line-height:1.4}.nav-badge{color:#9a3412;background:#fff7ed;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.nav-item.active .nav-badge{color:var(--brand-strong);background:#fff}.lang-switcher-btn{border:1px solid var(--border-strong);color:var(--text-muted);letter-spacing:.05em;cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600;transition:background-color .15s,color .15s}.lang-switcher-btn:hover{color:var(--text-main);background:#f5f5f5}.main{background:var(--bg-main);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.topbar{border-bottom:1px solid var(--border-strong);background:#fff;flex:0 0 56px;justify-content:flex-end;align-items:center;height:56px;padding:0 32px;display:flex}.topbar-right{align-items:center;gap:16px;display:flex}.notification-center{position:relative}.notification-bell{border:1px solid var(--border-strong);width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;display:inline-flex;position:relative}.notification-bell:hover,.notification-bell[aria-expanded=true]{color:var(--brand-strong);background:var(--brand-soft)}.notification-bell svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.notification-count{color:#fff;background:#dc2626;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-6px;right:-7px}.notification-popover{z-index:50;border:1px solid var(--border-strong);background:#fff;border-radius:10px;width:360px;max-height:min(480px,100vh - 80px);position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 12px 32px #11182729}.notification-popover-header{border-bottom:1px solid var(--border-strong);justify-content:space-between;align-items:center;height:48px;padding:0 16px;display:flex}.notification-popover-header strong{color:var(--text-main);font-size:14px}.notification-popover-header button{color:var(--brand-strong);cursor:pointer;background:0 0;border:0;font-size:12px}.notification-list{max-height:420px;overflow-y:auto}.notification-item{border:0;border-bottom:1px solid var(--border-subtle,#ececec);text-align:left;cursor:pointer;background:#fff;flex-direction:column;gap:4px;width:100%;padding:14px 16px;display:flex}.notification-item:hover{background:#f8fafc}.notification-item.unread{background:#fff8f8;border-left:3px solid #dc2626}.notification-item-title{color:var(--text-main);font-size:13px;font-weight:700}.notification-item-body{color:var(--text-muted);font-size:12px;line-height:1.55}.notification-empty{color:var(--text-muted);text-align:center;margin:0;padding:32px 16px}.topbar-profile{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:20px;align-items:center;gap:8px;padding:4px 8px 4px 4px;transition:background-color .15s,border-color .15s;display:flex}.topbar-profile:hover{border-color:var(--border-strong);background:#f5f3fb}.topbar-profile.active{background:var(--brand-soft);border-color:#0000}.topbar-profile-avatar{background:var(--brand-strong);color:#fff;letter-spacing:.5px;border-radius:50%;flex:0 0 30px;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:flex}.topbar-profile-name{color:var(--text-normal);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:13px;font-weight:600;overflow:hidden}.topbar-profile.active .topbar-profile-name{color:var(--brand-strong)}.logout-btn{border:1px solid var(--border-strong);cursor:pointer;width:32px;height:32px;color:var(--text-muted);background:#fff;border-radius:6px;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:inline-flex}.logout-btn:hover{color:var(--text-main);background:#f5f5f5}.logout-btn svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.content{background:#fff;flex:1;padding:32px;overflow-y:auto}.sidebar-admin-entry{color:#ffffffd1;cursor:pointer;border:1px solid #ffffff29;border-radius:8px;align-items:center;gap:10px;height:44px;margin-top:auto;margin-bottom:16px;padding:0 16px;text-decoration:none;transition:background-color .15s;display:flex}.sidebar-admin-entry:hover{color:#fff;background:#ffffff1a}.sidebar-admin-entry .nav-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.page-header-actions{flex:none}.page-title{color:var(--text-main);margin:0;font-size:20px;font-weight:800;line-height:1.25}.page-subtitle{color:var(--text-muted);margin-top:2px;font-size:13px}.desc-zh{color:var(--text-normal);margin-top:10px;font-size:12px;line-height:1.5}.desc-en{color:var(--text-muted);margin-top:2px;font-size:11px;line-height:1.45}.error-banner{border:1px solid var(--border-strong);color:#666;background:#fafafa;border-radius:6px;margin-top:12px;padding:8px 10px;font-size:12px}.card{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:8px;margin-top:24px;overflow:hidden}.card-header{border-bottom:1px solid var(--border-soft);background:#fff;padding:16px 20px}.card-title{color:var(--text-main);font-size:15px;font-weight:700;line-height:1.3}.card-subtitle{color:var(--text-muted);margin-top:2px;font-size:11px;line-height:1.2}.card-body{padding:16px 20px 20px}.table-wrap{width:100%;overflow-x:auto}.search-input{border:1px solid var(--border-strong);min-width:200px;max-width:360px;height:36px;color:var(--text-main);background:#fff;border-radius:6px;outline:none;flex:1;padding:0 12px;font-size:13px;transition:border-color .15s}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:#999}.filter-select{border:1px solid var(--border-strong);height:36px;color:var(--text-main);cursor:pointer;background:#fff;border-radius:6px;outline:none;min-width:120px;padding:0 10px;font-size:13px}.route-loading{justify-content:center;align-items:center;min-height:100vh;display:flex}.btn-primary,.btn-edit,.btn-secondary,.btn-audit,.btn-danger,.btn-warn,.btn-link-action{border-radius:var(--radius-btn);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;height:36px;padding:0 16px;font-size:13px;font-weight:600;line-height:1;transition:background-color .15s,border-color .15s,filter .15s;display:inline-flex}.btn-primary{border:1px solid var(--btn-primary-bg);background:var(--btn-primary-bg);color:var(--btn-primary-fg)}.btn-primary:hover:not(:disabled){background:var(--brand-strong);border-color:var(--brand-strong)}.btn-edit{border:1px solid var(--btn-edit-bg);background:var(--btn-edit-bg);color:var(--btn-edit-fg)}.btn-edit:hover:not(:disabled){background:var(--blue-600);border-color:var(--blue-600)}.btn-secondary{border:1px solid var(--btn-secondary-border);background:var(--btn-secondary-bg);color:var(--btn-secondary-fg)}.btn-secondary:hover:not(:disabled){filter:brightness(.97)}.btn-audit{border:1px solid var(--btn-audit-border);background:var(--btn-audit-bg);color:var(--btn-audit-fg)}.btn-audit:hover:not(:disabled){filter:brightness(.97)}.btn-danger{border:1px solid var(--btn-danger-border);background:var(--btn-danger-bg);color:var(--btn-danger-fg)}.btn-danger:hover:not(:disabled){background:var(--bg-hover)}.btn-warn{border:1px solid var(--btn-warn-border);background:var(--btn-warn-bg);color:var(--btn-warn-fg)}.btn-warn:hover:not(:disabled){filter:brightness(.97)}.btn-link-action{border:1px solid var(--btn-link-border);background:var(--btn-link-bg);color:var(--btn-link-fg)}.btn-link-action:hover:not(:disabled){filter:brightness(.97)}.btn-primary:disabled,.btn-edit:disabled,.btn-secondary:disabled,.btn-audit:disabled,.btn-danger:disabled,.btn-warn:disabled,.btn-link-action:disabled{opacity:.5;cursor:not-allowed}.btn-compact{height:30px;padding:0 10px;font-size:12px}.approval-confirm-backdrop{z-index:80;background:#1118276b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.approval-confirm-modal{background:#fff;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:42px 1fr;gap:14px;width:min(440px,100%);padding:22px;display:grid;box-shadow:0 18px 50px #0f172a2e}.approval-confirm-icon{color:#c2410c;background:#fff7ed;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-weight:800;display:inline-flex}.approval-confirm-copy h2{color:var(--text-main);margin:0;font-size:17px;line-height:1.3}.approval-confirm-copy p{color:var(--text-normal);margin:8px 0 0;font-size:13px;line-height:1.6}.approval-confirm-approver,.approval-confirm-reason{grid-column:1/-1;gap:6px;margin-top:4px;display:grid}.approval-confirm-approver span,.approval-confirm-reason span{color:var(--text-main);font-size:12px;font-weight:700}.approval-confirm-approver select,.approval-confirm-reason textarea{width:100%;color:var(--text-main);background:#fff;border:1px solid #d7dce5;border-radius:6px;outline:none;font-size:13px}.approval-confirm-approver select{height:38px;padding:0 10px}.approval-confirm-reason textarea{resize:vertical;min-height:76px;padding:9px 10px}.approval-confirm-approver select:focus,.approval-confirm-reason textarea:focus{border-color:#9ca3af}.approval-confirm-approver small{color:#b42318;font-size:12px}.approval-confirm-error{border:1px solid var(--red-100);background:var(--red-50);color:var(--red-800);border-radius:6px;grid-column:1/-1;padding:8px 10px;font-size:12px;line-height:1.5}.approval-confirm-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;margin-top:8px;display:flex}:root{--login-bg:#f0f0f0;--login-panel:#f5f5f5;--login-card:#fff;--login-border:#dfdfdf;--login-border-soft:#ececec;--login-text:#1a1a1a;--login-text-soft:#666;--login-text-muted:#8b8b8b}.login-page{background:linear-gradient(135deg,#ffffff80,#f0f0f0eb),radial-gradient(circle at 0 0,#ffffffe6,#0000 40%);grid-template-columns:minmax(280px,420px) minmax(420px,1fr);min-height:100vh;display:grid}.login-aside{border-right:1px solid var(--login-border);background:var(--login-panel);flex-direction:column;justify-content:space-between;padding:48px 36px;display:flex}.login-brand{max-width:280px}.login-brand-title{color:var(--login-text);margin:0;font-size:28px;line-height:1.2}.login-brand-subtitle{color:var(--login-text-muted);margin-top:8px;font-size:13px}.login-brand-copy-zh{color:var(--login-text-muted);margin-top:10px;font-size:13px;line-height:1.7}.login-brand-copy-en{color:var(--login-text-soft);margin-top:28px;font-size:14px;line-height:1.7}.login-side-card{border:1px solid var(--login-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc7;border-radius:12px;padding:20px 22px}.login-side-card-title{color:var(--login-text);font-size:14px;font-weight:700}.login-side-card-subtitle{color:var(--login-text-muted);margin-top:4px;font-size:12px}.login-side-list{flex-direction:column;gap:12px;margin:18px 0 0;padding:0;list-style:none;display:flex}.login-side-list li{border-top:1px solid var(--login-border-soft);padding-top:12px}.login-side-list li:first-child{border-top:0;padding-top:0}.login-side-item-zh{color:var(--login-text-muted);margin-top:3px;font-size:11px;display:block}.login-side-item-en{color:var(--login-text);font-size:13px;display:block}.login-main{justify-content:center;align-items:center;padding:40px 24px;display:flex}.login-card{border:1px solid var(--login-border);background:var(--login-card);border-radius:16px;width:min(100%,460px);padding:32px;box-shadow:0 24px 60px #0000000f}.login-title{color:var(--login-text);margin:0;font-size:30px;line-height:1.2}.login-subtitle{color:var(--login-text-muted);margin-top:6px;font-size:13px}.login-copy-zh{color:var(--login-text-muted);margin-top:6px;font-size:12px;line-height:1.7}.login-copy-en{color:var(--login-text-soft);margin-top:18px;font-size:13px;line-height:1.7}.login-form{flex-direction:column;gap:18px;margin-top:28px;display:flex}.login-field{flex-direction:column;gap:8px;display:flex}.login-label-zh{color:var(--login-text-muted);font-size:11px}.login-label-en{color:var(--login-text);font-size:13px;font-weight:700}.login-input{border:1px solid var(--login-border);width:100%;color:var(--login-text);background:#fbfbfb;border-radius:10px;padding:13px 14px;font-size:14px;transition:border-color .15s,background-color .15s,box-shadow .15s}.login-input:focus{background:#fff;border-color:#bcbcbc;outline:none;box-shadow:0 0 0 4px #dcdcdc80}.login-input::placeholder{color:#aaa}.login-error{border:1px solid var(--login-border);color:#666;background:#fafafa;border-radius:10px;padding:12px 14px;font-size:12px;line-height:1.6}.login-forgot{color:var(--login-text-muted);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-self:flex-start;padding:0;font-size:12px;text-decoration:underline}.login-forgot:hover{color:var(--login-text)}.login-forgot:disabled{cursor:not-allowed;opacity:.6}.login-submit{color:#fff;cursor:pointer;background:#1f1f1f;border:1px solid #cfcfcf;border-radius:10px;padding:14px 18px;font-size:14px;font-weight:700;transition:transform .15s,opacity .15s,background-color .15s}.login-submit:hover{background:#333}.login-submit:disabled{cursor:not-allowed;opacity:.7;transform:none}.login-secondary{border:1px solid var(--login-border);color:var(--login-text);cursor:pointer;background:#fff;border-radius:10px;padding:14px 18px;font-size:14px;font-weight:700;transition:background-color .15s,opacity .15s}.login-secondary:hover{background:#f5f5f5}.login-secondary:disabled{cursor:not-allowed;opacity:.7}.login-notice{color:#444;background:#f7f7f7;border:1px solid #d8d8d8;border-radius:10px;padding:12px 14px;font-size:12px;line-height:1.6}.login-footnote{color:var(--login-text-muted);margin-top:18px;font-size:11px;line-height:1.6}.login-card-wide{width:min(100%,540px)}.login-input-code{letter-spacing:.25em;text-align:center;font-variant-numeric:tabular-nums;font-size:22px}.login-back{color:var(--login-text-muted);cursor:pointer;text-align:center;background:0 0;border:none;padding:0;font-size:12px;transition:color .15s}.login-back:hover{color:var(--login-text-soft)}.login-back:disabled{cursor:not-allowed;opacity:.5}.login-setup-qr-wrap{flex-direction:column;align-items:center;gap:8px;margin-top:24px;display:flex}.login-setup-qr{border:1px solid var(--login-border);border-radius:10px;width:180px;height:180px;display:block}.login-setup-qr-hint-zh{color:var(--login-text-muted);font-size:11px}.login-setup-qr-hint-en{color:var(--login-text-soft);font-size:13px}.login-setup-block{border:1px solid var(--login-border);background:#fafafa;border-radius:10px;margin-top:24px;padding:16px 18px 18px}.login-setup-label-zh{color:var(--login-text-muted);margin-top:2px;font-size:11px}.login-setup-label-en{color:var(--login-text);font-size:13px;font-weight:700}.login-setup-secret-row{align-items:center;gap:10px;margin-top:10px;display:flex}.login-setup-secret{letter-spacing:.08em;word-break:break-all;color:var(--login-text);background:#f0f0f0;border-radius:6px;flex:1;padding:8px 10px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:14px;line-height:1.5}.login-setup-copy{border:1px solid var(--login-border);color:var(--login-text-soft);cursor:pointer;white-space:nowrap;background:#fff;border-radius:6px;flex:none;padding:6px 12px;font-size:12px;transition:background-color .15s}.login-setup-copy:hover{background:#f5f5f5}.login-setup-hint-zh{color:var(--login-text-muted);margin-top:3px;font-size:11px;line-height:1.6}.login-setup-hint-en{color:var(--login-text-soft);margin-top:12px;font-size:12px;line-height:1.6}.login-backup-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px;margin-bottom:28px;display:grid}.login-backup-code{letter-spacing:.05em;text-align:center;border:1px solid var(--login-border);color:var(--login-text);-webkit-user-select:all;user-select:all;background:#f5f5f5;border-radius:8px;padding:10px 6px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:13px}@media (width<=960px){.login-page{grid-template-columns:1fr}.login-aside{border-right:0;border-bottom:1px solid var(--login-border);gap:24px;padding:28px 20px 22px}.login-main{padding:24px 16px 32px}.login-card{padding:24px 20px}}.audit-history-panel{gap:14px;display:grid}.audit-history-toolbar{border-bottom:1px solid #e8edf3;justify-content:space-between;gap:16px;padding-bottom:12px;display:flex}.audit-history-toolbar h2{color:var(--text-strong);margin:0;font-size:20px;line-height:1.25}.audit-history-toolbar p{color:var(--text-muted);margin:5px 0 0;font-size:13px}.audit-history-controls{align-items:center;gap:10px;display:flex}.audit-history-controls label{color:var(--text-muted);align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.audit-history-controls select{min-width:132px;height:34px;color:var(--text-normal);background:#fff;border:1px solid #d7dee8;border-radius:7px;font-size:13px}.audit-history-stat-row{border:1px solid #e8edf3;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.audit-history-stat{background:#fbfcfe;border-right:1px solid #e8edf3;align-items:baseline;gap:8px;padding:10px 12px;display:flex}.audit-history-stat:last-child{border-right:none}.audit-history-stat strong{color:var(--text-strong);font-size:20px}.audit-history-stat span{color:var(--text-muted);font-size:12px}.audit-history-list{gap:8px;max-height:520px;padding-right:4px;display:grid;overflow-y:auto}.audit-history-state{color:var(--text-muted);border:1px dashed #d7dee8;border-radius:8px;margin:0;padding:18px;font-size:13px}.audit-history-state.error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.audit-history-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px}.audit-history-row summary{cursor:pointer;grid-template-columns:82px minmax(0,1fr) 230px 18px;align-items:center;gap:12px;padding:12px 14px;list-style:none;display:grid}.audit-history-row summary::-webkit-details-marker{display:none}.audit-history-row summary:after{content:"+";color:var(--text-muted);justify-self:end;font-weight:900}.audit-history-row[open] summary:after{content:"-"}.audit-history-time{color:var(--text-muted);gap:3px;font-size:12px;display:grid}.audit-history-time strong{color:var(--text-strong);font-size:15px}.audit-history-main{min-width:0}.audit-history-main strong{color:var(--text-strong);margin-top:5px;font-size:14px;display:block}.audit-history-main p{color:var(--text-normal);overflow-wrap:anywhere;margin:3px 0 0;font-size:13px;line-height:1.4}.audit-history-badges{flex-wrap:wrap;gap:6px;display:flex}.audit-history-category,.audit-history-status{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:800}.audit-history-category{color:#3730a3;background:#eef2ff}.audit-history-status.status-approved,.audit-history-status.status-success{color:#166534;background:#dcfce7}.audit-history-status.status-pending{color:#92400e;background:#fef3c7}.audit-history-status.status-rejected,.audit-history-status.status-expired,.audit-history-status.status-failed{color:#991b1b;background:#fee2e2}.audit-history-status.status-not_required{color:#475569;background:#f1f5f9}.audit-history-people{color:var(--text-muted);gap:4px;font-size:12px;line-height:1.35;display:grid}.audit-history-detail{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0 14px 14px 108px;display:grid}.audit-history-detail div{background:#fbfcfe;border:1px solid #eef2f7;border-radius:7px;min-width:0;padding:8px 10px}.audit-history-detail div.wide{grid-column:1/-1}.audit-history-detail dt{color:var(--text-muted);margin:0 0 3px;font-size:11px;font-weight:800}.audit-history-detail dd{color:var(--text-normal);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.4}@media (width<=900px){.audit-history-toolbar,.audit-history-controls{flex-direction:column;align-items:stretch}.audit-history-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-history-row summary{grid-template-columns:1fr}.audit-history-detail{grid-template-columns:1fr;padding-left:14px}}.case-page{width:100%}.case-inline-approval-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;gap:10px;margin-top:16px;padding:14px;display:grid}.case-inline-approval-section h2{color:var(--text-main);margin:0;font-size:15px}.case-inline-approval-list{gap:10px;display:grid}.case-inline-approval-card{background:#fafafa;border:1px solid #eef1f5;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:16px;padding:12px;display:flex}.case-inline-approval-main{gap:8px;min-width:0;display:grid}.case-inline-approval-main h3{color:var(--text-main);margin:0;font-size:14px}.case-inline-approval-main dl,.case-service-approval-summary dl{flex-wrap:wrap;gap:8px 18px;margin:0;display:flex}.case-inline-approval-main dt,.case-service-approval-summary dt{color:var(--text-muted);font-size:11px;font-weight:800}.case-inline-approval-main dd,.case-service-approval-summary dd{color:var(--text-main);margin:2px 0 0;font-size:13px}.case-inline-approval-actions,.case-service-approval-actions{flex:none;gap:8px;display:flex}.case-approval-reason{max-width:680px;color:var(--text-normal);font-size:12px}.case-approval-reason summary{cursor:pointer;color:var(--text-main);font-weight:800}.case-approval-reason p{margin:8px 0 0;line-height:1.6}.case-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.case-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px;display:flex}.case-filter-select{border:1px solid var(--border-strong);height:36px;color:var(--text-main);cursor:pointer;background:#fff;border-radius:6px;outline:none;min-width:150px;padding:0 10px;font-size:13px}.caseworker-select{min-width:190px}.case-list-card{width:100%;margin-top:16px}.case-approval-detail-panel{background:#fff;border:1px solid #e1e6ef;border-radius:8px;gap:14px;margin-top:16px;padding:16px;display:grid}.case-approval-detail-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.case-approval-detail-header h2{color:var(--text-main);margin:0;font-size:16px}.case-approval-detail-header p{color:var(--text-muted);margin:4px 0 0;font-size:13px}.case-approval-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 18px;margin:0;display:grid}.case-approval-detail-grid .wide{grid-column:1/-1}.case-approval-detail-grid dt{color:var(--text-muted);font-size:11px;font-weight:800}.case-approval-detail-grid dd{color:var(--text-main);white-space:pre-wrap;margin:3px 0 0;font-size:13px}.case-approval-service-list{flex-wrap:wrap;gap:8px;display:flex}.case-approval-detail-actions{justify-content:flex-end;gap:8px;display:flex}.case-table{table-layout:fixed;border-collapse:collapse;background:#fff;width:100%;min-width:1080px}.case-table thead tr{background:#fbfcfe;height:56px}.case-table th{text-align:left;vertical-align:middle;border-bottom:1px solid #eef1f5;padding:12px 16px;font-weight:500}.case-table tbody tr{background:var(--case-row-bg);border-bottom:1px solid #eef1f5;height:62px}.case-table tbody tr:last-child{border-bottom:0}.case-table tbody tr.case-row-clickable{cursor:pointer}.case-table tbody tr:hover{background:#f3f0ff}.case-table td{vertical-align:middle;padding:12px 16px}.case-th-zh,.case-th-en,.case-cell-main,.case-cell-sub{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.case-th-zh{color:#8a94a6;font-size:12px;line-height:1.2}.case-th-en{color:#a7b0c0;margin-top:2px;font-size:12px;line-height:1.15}.case-cell-main{color:#18233a;font-size:13px;line-height:1.25}.case-cell-with-badge{align-items:center;gap:8px;max-width:100%;display:inline-flex}.case-cell-with-badge>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-cell-sub{color:#8a94a6;margin-top:3px;font-size:12px;line-height:1.2}.case-row-closed .case-cell-main,.case-row-closed .case-cell-sub,.case-row-closed .case-action-link{color:#98a2b3}.case-table tbody tr.case-row-pending-create{box-shadow:inset 3px 0 #16a34a}.case-table tbody tr.case-row-pending-close{box-shadow:inset 3px 0 #991b1b}.case-table tbody tr.case-row-pending-restore{box-shadow:inset 3px 0 #166534}.case-approval-badge{border-radius:4px;flex:none;align-items:center;min-height:20px;padding:2px 7px;font-size:11px;font-weight:800;line-height:1.2;display:inline-flex}.case-approval-badge.create{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.case-approval-badge.close{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}.case-approval-badge.restore{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.case-owner-badge{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;flex:none;align-items:center;min-height:20px;padding:2px 7px;font-size:11px;font-weight:800;line-height:1.2;display:inline-flex}.case-intensity-dot{border-radius:2px;flex-shrink:0;width:14px;height:14px;display:inline-block}.case-intensity-red{background:var(--intensity-red)}.case-intensity-orange{background:var(--intensity-orange)}.case-intensity-yellow{background:var(--intensity-yellow)}.case-intensity-green{background:var(--intensity-green)}.case-intensity-grey{background:var(--intensity-grey)}.case-intensity-black{background:var(--intensity-black)}.case-status-badge{border-radius:var(--radius-badge);align-items:center;min-height:22px;padding:2px 9px;font-size:11px;font-weight:500;line-height:1;display:inline-flex}.case-status-open{background:var(--status-open-bg);color:var(--status-open-fg)}.case-status-weekly{background:var(--status-homevisit-bg);color:var(--status-homevisit-fg)}.case-status-monthly{background:var(--status-suspended-bg);color:var(--status-suspended-fg)}.case-status-in-review{background:var(--status-submitted-bg);color:var(--status-submitted-fg)}.case-status-suspended{background:var(--status-suspended-bg);color:var(--status-suspended-fg)}.case-status-closed{background:var(--status-closed-bg);color:var(--status-closed-fg)}.case-action-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.case-action-link{color:#18233a;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.case-action-link:hover{color:#6d28d9}.case-form-stack{gap:16px;margin-top:16px;display:grid}.case-create-form{gap:14px}.case-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;display:grid}.case-form-field,.case-event-form label{color:var(--text-main);gap:7px;font-size:13px;font-weight:700;display:grid}.case-form-field.wide{grid-column:1/-1}.case-form-field input,.case-form-field select,.case-form-field textarea,.case-event-form input,.case-event-form select{border:1px solid var(--border-strong);width:100%;min-height:38px;color:var(--text-main);font:inherit;background:#fff;border-radius:6px;padding:8px 10px;font-weight:400}.case-form-field textarea{resize:vertical;min-height:90px}.case-form-helper{color:#9aa4b2;font-size:12px;font-weight:500;line-height:1.4}.case-form-intensity-field{max-width:640px}.case-form-select-with-dot{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.case-service-selected-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.case-create-service-layout{grid-template-columns:minmax(280px,.82fr) minmax(280px,1.18fr);align-items:start;gap:18px;display:grid}.case-create-selected-services{background:#fbfcfe;border:1px solid #e7ebf2;border-radius:8px;min-height:89px;padding:12px}.case-create-selected-title{color:#667085;font-size:12px;font-weight:800;display:block}.case-create-selected-services .case-service-selected-row{margin-top:8px}.case-create-service-groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.case-create-service-group{background:#fff;border:1px solid #edf0f5;border-radius:8px;min-width:0;padding:10px}.case-create-service-group h3{color:#667085;margin:0 0 7px;font-size:12px;font-weight:800}.case-create-service-group div{flex-wrap:wrap;gap:6px;display:flex}.case-create-service-group div span{color:#344054;background:#f2f4f7;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.case-service-chip{color:#1d4ed8;background:#eff6ff;border:1px solid #dbeafe;border-radius:999px;align-items:center;gap:6px;min-height:26px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.case-service-chip.removable{cursor:pointer;font-family:inherit}.case-service-chip.removable:hover{background:#dbeafe;border-color:#bfdbfe}.case-service-chip.removable span{color:#64748b;font-weight:900}.case-form-actions{justify-content:flex-end;gap:10px;display:flex}.case-col-intensity{width:5%}.case-col-client{width:17%}.case-col-tradition{width:13%}.case-col-worker{width:16%}.case-col-status{width:12%}.case-col-opened{width:11%}.case-col-actions{width:10%}.case-detail-page{width:100%}.case-detail-card{background:#fff;border:1px solid #e1e6ef;border-radius:12px;margin-top:16px;padding:20px 32px 36px}.case-detail-header{border-bottom:1px solid #e8ebf0;padding-bottom:18px}.case-detail-header-main{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.case-detail-heading{min-width:0}.case-detail-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.case-detail-code{color:var(--text-main);letter-spacing:0;font-size:20px;font-weight:800}.case-detail-intensity-label{color:var(--text-normal);align-items:center;gap:6px;font-size:13px;display:inline-flex}.case-detail-subtitle{color:var(--text-muted);margin-top:7px;font-size:14px;line-height:1.4}.case-detail-header-actions{flex:none;align-items:center;gap:8px;display:flex}.case-detail-more-menu{position:relative}.case-detail-more-menu summary{color:#40506a;cursor:pointer;background:#fff;border:1px solid #d7dce5;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:800;line-height:1;list-style:none;display:inline-flex}.case-detail-more-menu summary::-webkit-details-marker{display:none}.case-detail-more-menu summary:hover{color:#111827;background:#f8fafc}.case-detail-more-icon{justify-content:center;align-items:center;gap:3px;display:inline-flex}.case-detail-more-icon span{background:currentColor;border-radius:999px;width:4px;height:4px}.case-detail-more-menu-panel{z-index:20;background:#fff;border:1px solid #d7dce5;border-radius:6px;min-width:160px;padding:6px;position:absolute;top:42px;right:0;box-shadow:0 12px 28px #0f172a29}.case-detail-more-danger{width:100%;color:var(--text-main);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;padding:9px 10px;font-size:13px;font-weight:800}.case-detail-more-danger:hover:not(:disabled){background:var(--bg-hover)}.case-detail-more-danger:disabled{color:#9ca3af;cursor:not-allowed}.case-detail-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.case-manager-banner{color:#6d28d9;background:#f8f4ff;border:1px solid #d6bbfb;border-radius:6px;align-items:center;gap:8px;margin-top:14px;padding:10px 14px;font-size:12px;line-height:1.4;display:flex}.case-detail-approval-banner{background:#fff;border:1px solid #e1e6ef;border-radius:6px;align-items:center;gap:16px;margin-top:14px;padding:12px 14px;font-size:12px;display:flex}.case-detail-approval-banner>div{min-width:180px}.case-detail-approval-banner strong,.case-detail-approval-banner span{display:block}.case-detail-approval-banner strong{color:var(--text-main)}.case-detail-approval-banner span{color:var(--text-muted);margin-top:2px}.case-detail-tab-bar{border-bottom:1px solid #e8ebf0;gap:0;margin-top:20px;display:flex}.case-detail-tab-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:0;padding:10px 18px;font-size:13px;transition:color .15s,border-color .15s;display:inline-flex}.case-detail-tab-btn:hover{color:var(--text-main)}.case-detail-tab-btn.active{color:var(--text-main);border-bottom-color:#1a1a1a;font-weight:600}.case-tab-badge{color:#6d28d9;background:#ede9fe;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:5px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.case-detail-tab-content{padding-top:24px}.case-detail-info-grid{grid-template-columns:1fr 1fr;gap:22px 48px;display:grid}.case-detail-info-item{flex-direction:column;gap:5px;display:flex}.case-detail-info-item.wide{grid-column:1/-1}.case-detail-info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600;line-height:1.3}.case-detail-info-value{color:#344054;font-size:14px;font-weight:400;line-height:1.5}.case-participant-summary{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.case-participant-editor{gap:8px;width:min(720px,100%);display:grid}.event-participant-editor{width:100%}.case-participant-selected{flex-wrap:wrap;gap:7px;display:flex}.case-participant-chip{color:#344054;background:#f4f3ff;border:1px solid #d9d6fe;border-radius:999px;align-items:center;gap:9px;max-width:100%;padding:6px 7px 6px 10px;display:flex}.case-participant-chip>span{min-width:0;display:grid}.case-participant-chip strong,.case-participant-chip small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-participant-chip strong{font-size:12px;line-height:1.25}.case-participant-chip small{color:var(--text-muted);font-size:10px;line-height:1.2}.case-participant-chip button{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:0 0 22px;place-items:center;width:22px;height:22px;padding:0;font-size:18px;line-height:1;display:grid}.case-participant-chip button:hover,.case-participant-chip button:focus-visible{color:#4c1d95;background:#e4e1ff}.case-participant-search-shell{position:relative}.case-participant-search{color:#344054;width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #d0d5dd;border-radius:7px;padding:8px 12px}.case-participant-search:focus{border-color:#6d28d9;outline:none;box-shadow:0 0 0 2px #6d28d91a}.case-participant-search-results{z-index:20;background:#fff;border:1px solid #d0d5dd;border-radius:8px;max-height:240px;padding:5px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 24px #10182824}.case-participant-search-option{color:#344054;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:8px 10px;display:grid}.case-participant-search-option:hover,.case-participant-search-option:focus-visible{background:#f4f3ff;outline:none}.case-participant-search-option>span:nth-child(2){min-width:0;display:grid}.case-participant-search-option strong,.case-participant-search-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-participant-search-option strong{font-size:13px}.case-participant-search-option small{color:var(--text-muted);font-size:11px}.case-participant-avatar{color:#4c1d95;background:#e9e7fd;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.case-participant-add-mark{color:#6d28d9;font-size:20px;font-weight:500}.case-participant-search-empty{color:var(--text-muted);text-align:center;margin:0;padding:14px 10px;font-size:12px}.overview-select{color:#344054;cursor:pointer;appearance:auto;background:#fff;border:1px solid #d0d5dd;border-radius:6px;width:100%;padding:5px 8px;font-size:14px}.overview-select:focus{border-color:#6d28d9;outline:none;box-shadow:0 0 0 2px #6d28d91a}.overview-textarea{resize:vertical;width:100%;min-height:76px;font:inherit;color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:6px;padding:8px 10px}.overview-textarea:focus{border-color:#6d28d9;outline:none;box-shadow:0 0 0 2px #6d28d91a}.overview-intensity-select-row{align-items:center;gap:8px;display:flex}.overview-intensity-select-row .overview-select{flex:1}.case-overview-save-row{border-top:1px solid #f0f2f5;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;display:flex}.case-task-section-title{color:var(--text-main);margin-top:30px;margin-bottom:14px;font-size:15px;font-weight:800}.case-task-list{flex-direction:column;gap:10px;display:flex}.case-task-item{background:#fafbfc;border:1px solid #eef1f5;border-radius:8px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.case-task-checkbox{background:#fff;border:2px solid #d7dce5;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-top:2px;display:flex}.case-task-checkbox.done{background:#dc3545;border-color:#dc3545}.case-task-body{flex:1;min-width:0}.case-task-title-zh{color:#1a1a1a;font-size:14px;font-weight:600;line-height:1.35}.case-task-title-zh.done{color:var(--text-muted);text-decoration:line-through}.case-task-title-en{color:var(--text-muted);margin-top:2px;font-size:12px;line-height:1.3}.case-task-title-en.done{text-decoration:line-through}.case-task-meta{color:#8a94a6;margin-top:7px;font-size:12px;line-height:1.4}.case-task-done-badge{color:#166534;font-weight:600}.case-services-section-title{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);border-bottom:1px solid #eef1f5;margin:20px 0 10px;padding-bottom:6px;font-size:12px;font-weight:700}.case-services-section-title:first-child{margin-top:0}.case-services-actions{justify-content:flex-end;margin-bottom:16px;display:flex}.case-services-grid{grid-template-columns:1fr 1fr;gap:6px 24px;display:grid}.case-services-item{color:var(--text-normal);align-items:center;gap:8px;padding:5px 0;font-size:13px;display:flex}.service-check{appearance:none;cursor:default;pointer-events:none;background:#fff;border:1.5px solid #c4b8f0;border-radius:4px;width:16px;min-width:16px;height:16px;transition:background .15s,border-color .15s;position:relative}.service-check:not(:disabled){cursor:pointer;pointer-events:auto}.service-check:checked{background:#6c47ff;border-color:#6c47ff}.service-check:checked:after{content:"";border:2px solid #fff;border-top:none;border-left:none;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.service-calendar-section{margin-top:28px}.service-calendar-wrap{--fc-border-color:#edf0f3;--fc-today-bg-color:#f6f4fd;--fc-button-bg-color:#fff;--fc-button-border-color:#e2e4ea;--fc-button-text-color:#3f3f46;--fc-button-hover-bg-color:#f3f4f6;--fc-button-hover-border-color:#d8dade;--fc-button-active-bg-color:#efeafe;--fc-button-active-border-color:#cdbef9;--fc-page-bg-color:#fff;background:#fff;border:1px solid #e6e8ec;border-radius:14px;padding:20px;font-size:13px;box-shadow:0 1px 2px #1018280a}.service-calendar-wrap .fc-toolbar-title{color:var(--text-main);letter-spacing:-.01em;font-size:16px;font-weight:700}.service-calendar-wrap .fc-toolbar.fc-header-toolbar{margin-bottom:16px}.service-calendar-wrap .fc-button{box-shadow:none;text-transform:capitalize;border-radius:8px;padding:6px 13px;font-size:12px;font-weight:600}.service-calendar-wrap .fc-button:focus,.service-calendar-wrap .fc-button:focus-visible{box-shadow:none;outline:none}.service-calendar-wrap .fc-button-primary:not(:disabled).fc-button-active{color:var(--brand-strong);font-weight:700}.service-calendar-wrap .fc-scrollgrid{border-radius:10px;overflow:hidden}.service-calendar-wrap .fc-col-header{background:#fafbfc}.service-calendar-wrap .fc-col-header-cell-cushion{text-transform:uppercase;letter-spacing:.6px;color:#8a8f98;padding:10px 0;font-size:11px;font-weight:600;text-decoration:none}.service-calendar-wrap .fc-daygrid-event{cursor:pointer;border:none;border-radius:6px;margin:2px;padding:4px 9px;font-size:12px;line-height:1.4;transition:filter .12s}.service-calendar-wrap .fc-daygrid-event-harness{margin-left:0;margin-right:0}.service-calendar-wrap .fc-daygrid-event:hover{filter:brightness(.97)}.service-calendar-wrap .fc-event .fc-event-title{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.service-calendar-wrap .fc-event .fc-event-time{opacity:.85;font-weight:600}.service-calendar-wrap .fc-event.evt-own{color:#fff;background:#8b72f0;border-left:3px solid #5b3fd6;box-shadow:0 1px 3px #6c47ff38}.service-calendar-wrap .fc-event.evt-own .fc-event-title,.service-calendar-wrap .fc-event.evt-own .fc-event-time{color:#fff}.service-calendar-wrap .fc-event.evt-own.evt-unsynced{outline-offset:-3px;background:#a594e8;border-left:3px solid #6a59b0;outline:1px dashed #fff}.service-calendar-wrap .fc-event.evt-other{color:#5b4a9e;background:#f3f1fb;border-left:3px solid #b9a7e6}.service-calendar-wrap .fc-event.evt-other .fc-event-title,.service-calendar-wrap .fc-event.evt-other .fc-event-time{color:#5b4a9e}.service-calendar-wrap .fc-event.evt-external{color:#3f6b43;background:#eef3ef;border-left:3px solid #9bbfa0}.service-calendar-wrap .fc-event.evt-external .fc-event-title,.service-calendar-wrap .fc-event.evt-external .fc-event-time{color:#3f6b43}.service-calendar-wrap .fc-event.evt-personal{color:#1d4ed8;background:#e8effd;border-left:3px solid #5b8def}.service-calendar-wrap .fc-event.evt-personal .fc-event-title,.service-calendar-wrap .fc-event.evt-personal .fc-event-time{color:#1d4ed8}.service-calendar-wrap .fc-event.evt-google{filter:brightness(.94);border-left-style:solid;border-left-width:3px}.service-calendar-wrap .fc-event.evt-google .fc-event-title,.service-calendar-wrap .fc-event.evt-google .fc-event-time{color:inherit}.service-calendar-wrap .fc-daygrid-more-link{color:var(--brand-strong);margin:1px 6px;font-size:11px;font-weight:600}.service-calendar-wrap .fc-daygrid-day-frame{min-height:132px}.service-calendar-wrap .fc-daygrid-day-number{color:var(--text-normal);padding:8px 10px;font-size:12px;text-decoration:none}.service-calendar-wrap .fc-day-today .fc-daygrid-day-number{background:var(--cal-today-ring);color:#fff;border-radius:5px;justify-content:center;align-items:center;min-width:24px;height:24px;margin:6px 8px;padding:0 6px;font-weight:700;display:inline-flex}.service-calendar-placeholder{text-align:center;color:var(--text-muted);margin-top:12px;font-size:12px}.calendar-legend{color:var(--text-normal);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:12px;display:flex}.calendar-legend-item{align-items:center;gap:6px;display:inline-flex}.calendar-legend-item i{border-radius:3px;flex:0 0 12px;width:12px;height:12px}.calendar-legend-item .lg-own{background:#8b72f0;border-left:3px solid #5b3fd6}.calendar-legend-item .lg-other{background:#ede7f6;border-left:3px solid #b9a7e6}.calendar-legend-item .lg-external{background:#e8f5e9;border-left:3px solid #a5d6a7}.calendar-legend-item .lg-personal{background:#e8effd;border-left:3px solid #5b8def}.calendar-filter-bar{background:#fafbfc;border:1px solid #eef1f5;border-radius:8px;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:12px;padding:8px 12px;font-size:12px;display:flex}.calendar-filter-label{color:var(--text-main);font-weight:700}.calendar-filter-item{color:var(--text-normal);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.calendar-filter-item input{cursor:pointer}.calendar-add-event-bar{justify-content:flex-end;margin-top:16px;display:flex}.case-form-error{color:var(--red-600);font-size:12px}.event-modal-backdrop{z-index:90;background:#11182773;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.event-modal{border-radius:var(--radius-card);background:#fff;flex-direction:column;width:min(860px,100%);max-height:88vh;display:flex;overflow:hidden;box-shadow:0 24px 60px #0f172a38}.event-modal-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.event-modal-header h2{color:var(--text-main);margin:0;font-size:17px;font-weight:700}.event-modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:22px;line-height:1}.event-modal-close:hover{color:var(--text-main)}.event-modal-body{padding:20px 22px;overflow-y:auto}.event-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px 20px;display:grid}.event-form-grid label,.event-participant-field{color:var(--text-normal);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.event-form-grid label.wide,.event-participant-field.wide,.event-form-grid .wide{grid-column:1/-1}.event-form-grid input,.event-form-grid select,.event-form-grid textarea{border:1px solid var(--border-strong);width:100%;color:var(--text-main);background:#fff;border-radius:6px;outline:none;padding:9px 11px;font-family:inherit;font-size:13px;font-weight:400}.event-form-grid input:focus,.event-form-grid select:focus,.event-form-grid textarea:focus{border-color:var(--brand)}.event-form-grid textarea{resize:vertical;line-height:1.5}.event-form-grid textarea.ta-sm{min-height:52px}.event-form-grid textarea.ta-lg{min-height:110px}.event-form-grid textarea.ta-xl{min-height:220px}.event-title-preview{background:var(--cal-case-bg);color:var(--cal-case-fg);border-radius:6px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.event-title-preview span{opacity:.8;font-size:11px}.event-title-preview strong{font-size:13px;font-weight:700}.event-modal-footer{border-top:1px solid var(--border-soft);justify-content:flex-end;gap:10px;padding:16px 22px;display:flex}.event-detail-time{color:var(--text-main);font-size:14px;font-weight:600}.event-detail-source{border-radius:var(--radius-badge);background:var(--green-50);color:var(--green-800);margin-top:6px;padding:2px 9px;font-size:11px;font-weight:500;display:inline-block}.event-detail-unsynced{color:#92610e;background:#fdf6e9;border:1px solid #f5d9a8;border-radius:8px;align-items:center;gap:10px;margin-top:10px;padding:8px 12px;font-size:12px;font-weight:600;display:flex}.event-detail-confirm{color:var(--text-main);align-items:center;gap:8px;font-size:13px;display:inline-flex}.event-detail-sections{flex-direction:column;gap:14px;margin-top:16px;display:flex}.event-detail-label{color:var(--cal-case-fg);font-size:12px;font-weight:700}.event-detail-content{color:var(--text-main);white-space:pre-wrap;margin-top:3px;font-size:13px;line-height:1.55}.event-detail-raw{color:var(--text-main);word-break:break-word;margin-top:16px;font-size:13px;line-height:1.6}.event-detail-raw b,.event-detail-raw strong{color:var(--text-main)}.event-detail-raw a{color:var(--blue-800)}.event-detail-empty{color:var(--text-muted);margin-top:16px;font-size:13px}.case-event-form{border-top:1px solid #eef1f5;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin-top:22px;padding-top:18px;display:grid}.case-event-form h3{color:var(--text-main);grid-column:1/-1;margin:0;font-size:15px}.case-event-form button{place-self:end start}.case-service-request-form{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:repeat(2,minmax(260px,1fr));align-items:start;gap:16px;margin:12px 0 8px;padding:18px}.case-service-request-form.single{grid-template-columns:minmax(0,1fr)}.case-service-request-form h3{grid-column:1/-1}.case-service-request-field{align-self:stretch}.case-service-request-field>span{min-height:18px}.case-service-request-select{width:100%}.case-service-request-submit-row{grid-column:1/-1;justify-content:flex-end;gap:10px;padding-top:2px;display:flex}.case-service-panel{background:#fbfcfe;border:1px solid #e1e6ef;border-radius:10px;padding:16px}.case-service-request-actions{border-top:1px solid #e8ebf0;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding-top:14px;display:flex}.case-service-action-left,.case-service-action-right{align-items:center;gap:10px;display:flex}.case-service-action-button{color:var(--text-main);background:#fff;border-color:#d8dde6}.case-service-action-button:hover:not(:disabled){filter:none;background:#fff;border-color:#bfc7d4}.case-service-card-grid{flex-direction:column;gap:12px;display:flex}.case-service-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:14px;min-width:0;padding:16px;display:flex;box-shadow:0 1px 2px #0f172a0a}.case-service-card.pending{background:#f8fbff;border-color:#bfdbfe}.case-service-card.selectable-remove{cursor:pointer}.case-service-card.selectable-remove:hover{border-color:#cbd5e1}.case-service-card.selected-remove{background:snow;border-color:#fca5a5}.case-service-card-header{align-items:center;gap:12px;min-height:58px;display:flex}.case-service-remove-checkbox{flex:none;width:16px;height:16px;margin:0}.case-service-card-header>div{flex:1;min-width:0}.case-service-card-header h3{color:var(--text-main);margin:0;font-size:15px;line-height:1.3}.case-service-card-header p{color:var(--text-muted);margin:3px 0 0;font-size:12px}.case-service-pending-badge{color:#1d4ed8;background:#dbeafe;border-radius:999px;align-items:center;min-height:22px;margin-top:7px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.case-service-pending-badge.remove{color:#b91c1c;background:#fee2e2}.case-service-approval-summary{background:#fff;border:1px solid #eef1f5;border-radius:8px;gap:10px;padding:12px;display:grid}.case-service-approval-actions{justify-content:flex-end}.case-service-icon{color:#3730a3;background:#eef2ff;border-radius:8px;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;font-weight:900;display:inline-flex}.service-icon-accommodationArrangement{color:#1d4ed8;background:#eff6ff}.service-icon-deepCleaning{color:#0f766e;background:#f0fdfa}.service-icon-relocationAssistance{color:#c2410c;background:#fff7ed}.service-icon-dailyCleaning{color:#15803d;background:#f0fdf4}.service-icon-pestControl{color:#b91c1c;background:#fef2f2}.service-icon-homeRepair{color:#a16207;background:#fefce8}.service-icon-dailyExpenseSubsidy,.service-icon-cpfAssistance{color:#047857;background:#ecfdf5;font-size:13px}.service-icon-mealDelivery,.service-icon-lunchSupport{color:#be123c;background:#fff1f2}.service-icon-monasticSupport{color:#6d28d9;background:#f5f3ff}.service-icon-monasticEscort{color:#4338ca;background:#eef2ff}.service-icon-legalAid{color:#334155;background:#f8fafc}.service-icon-volunteerVisit{color:#0369a1;background:#eff6ff}.service-icon-digitalSupport{color:#0284c7;background:#f0f9ff}.case-service-remove-btn{flex:none;margin-left:auto}.case-service-empty{color:var(--text-muted);border:1px dashed #d7dce5;border-radius:8px;margin:0;padding:12px;font-size:13px}@media (width<=900px){.case-form-grid,.case-create-service-layout,.case-create-service-groups,.event-form-grid,.case-service-request-form{grid-template-columns:1fr}}.case-reports-tab{padding-top:4px}.case-reports-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.case-reports-count{color:var(--text-muted);font-size:13px}.case-reports-state{text-align:center;color:var(--text-muted);padding:32px 0;font-size:13px}.case-reports-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:13px}.case-reports-table{border-collapse:collapse;width:100%;font-size:13px}.case-reports-table th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);border-bottom:1px solid #eef1f5;padding:8px 12px;font-size:11px;font-weight:700}.case-reports-table td{color:var(--text-normal);border-bottom:1px solid #f5f5f5;padding:10px 12px}.case-reports-row{cursor:pointer;transition:background .1s}.case-reports-row:hover{background:#f8f6ff}.case-reports-row.active{background:#f1edff}.case-report-status-pill{border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.case-report-status-pill.submitted{color:#166534;background:#dcfce7}.case-report-status-pill.draft{color:#854d0e;background:#fef9c3}.case-report-print-tag{color:#25613a;font:inherit;cursor:pointer;background:#f4faf6;border:1px solid #c7d7cc;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.case-report-print-tag:hover:not(:disabled){background:#eaf5ed;border-color:#91b39b}.case-report-print-tag:disabled{cursor:wait;opacity:.55}.case-report-detail{background:#fff;border:1px solid #e6e0fb;border-radius:8px;margin-top:18px;padding:18px}.case-report-detail-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.case-report-detail-header h4{color:var(--text-strong);margin:0 0 4px;font-size:16px}.case-report-detail-header span{color:var(--text-muted);font-size:13px}.case-report-detail-actions{flex-shrink:0;gap:8px;display:flex}.case-report-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.case-report-detail-field{background:#fafbfc;border:1px solid #eef1f5;border-radius:8px;padding:10px 12px}.case-report-detail-field.wide{grid-column:1/-1}.case-report-detail-field span{text-transform:uppercase;color:var(--text-muted);margin-bottom:5px;font-size:11px;font-weight:700;display:block}.case-report-detail-field p{white-space:pre-wrap;color:var(--text-normal);margin:0;font-size:13px;line-height:1.5}@media print{@page{size:A4 portrait;margin:0}body.printing-case-report *{visibility:hidden!important}body.printing-case-report .case-report-detail,body.printing-case-report .case-report-detail *{visibility:visible!important}body.printing-case-report .case-report-detail{box-sizing:border-box;color:#000;border:0;border-radius:0;width:100%;margin:0;padding:16mm;position:absolute;inset:0}body.printing-case-report .case-report-detail-header{margin:0 0 10mm;display:block}body.printing-case-report .case-report-detail-header>div:first-child{width:100%}body.printing-case-report .case-report-detail-header h4{text-align:center;color:#000;margin:0;font-size:18px;font-weight:700}body.printing-case-report .case-report-detail-header span,body.printing-case-report .case-report-detail-actions{display:none!important}body.printing-case-report .case-report-detail-grid{display:block}body.printing-case-report .case-report-detail-field{break-inside:avoid;background:0 0;border:0;border-radius:0;grid-template-columns:max-content minmax(0,1fr);align-items:baseline;column-gap:8px;margin:0;padding:4px 0;display:grid}body.printing-case-report .case-report-detail-field span{text-transform:none;color:#000;margin:0;font-size:12px;font-weight:700;display:inline}body.printing-case-report .case-report-detail-field span:after{content:":"}body.printing-case-report .case-report-detail-field p{white-space:normal;overflow-wrap:anywhere;color:#000;margin:0;font-size:12px;line-height:1.5}}.case-placeholder-text{color:var(--text-muted);margin:0;font-size:13px;line-height:1.6}.case-document-tab{flex-direction:column;gap:18px;display:flex}.case-document-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.case-document-list-head{color:var(--text-main);font-size:14px;font-weight:700}.case-document-upload-btn{align-items:center;gap:6px;display:inline-flex}.case-document-count{color:var(--text-muted);font-size:12px;font-weight:500}.case-document-section{border:1px solid var(--doc-cat-border,#eef1f5);border-left:4px solid var(--doc-cat-accent,#c5cad4);background:var(--doc-cat-bg,#fafbfc);border-radius:10px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.case-document-section-head{border-bottom:1px solid var(--doc-cat-border,#eceff3);align-items:center;gap:10px;padding-bottom:8px;display:flex}.case-document-section-icon{font-size:20px;line-height:1}.case-document-section-title{min-width:0;color:var(--doc-cat-accent,var(--text-main));flex:1;font-size:15px;font-weight:700}.case-document-section-count{color:var(--doc-cat-accent,var(--text-muted));opacity:.85;font-size:12px;font-weight:600}.case-document-section-empty{padding:4px 2px 8px}.case-document-section .case-document-item{background:#fff}.case-document-section--ordination{--doc-cat-accent:#7c3aed;--doc-cat-bg:#f7f4fd;--doc-cat-border:#e6dcf8}.case-document-section--medical{--doc-cat-accent:#0f766e;--doc-cat-bg:#eefbf8;--doc-cat-border:#c8ece5}.case-document-section--financial{--doc-cat-accent:#b45309;--doc-cat-bg:#fdf7ee;--doc-cat-border:#f0e1c5}.case-document-section--legal{--doc-cat-accent:#1d4ed8;--doc-cat-bg:#eef3fe;--doc-cat-border:#d2def9}.case-document-section--personal{--doc-cat-accent:#0f766e;--doc-cat-bg:#effaf8;--doc-cat-border:#cdeee8}.case-document-section--others{--doc-cat-accent:#64748b;--doc-cat-bg:#f6f7f9;--doc-cat-border:#e2e6ec}.case-document-section.locked{--doc-cat-accent:#9aa2b1;--doc-cat-border:#e7eaf0;background:#fafbfc}.case-document-section.locked .case-document-section-title{color:#98a2b3}.case-document-section-lock{color:#98a2b3;font-size:14px;line-height:1}.case-document-upload-modal{width:min(560px,92vw)}.case-document-dragger{margin-bottom:12px;display:block}.case-document-dragger.ant-upload-wrapper .ant-upload-drag{background:#faf8ff;border:1.5px dashed #d6cdf0;border-radius:10px;transition:border-color .15s,background .15s}.case-document-dragger.ant-upload-wrapper .ant-upload-drag:hover{background:#f5f0ff;border-color:#6d28d9}.case-document-dragger .ant-upload-btn{padding:24px 16px!important}.case-document-dragger-icon{color:#6d28d9;margin:0 0 6px;font-size:28px}.case-document-dragger-text{color:var(--text-main);margin:0 0 4px;font-size:14px;font-weight:600}.case-document-dragger-hint{color:var(--text-muted);margin:0;font-size:12px}.case-document-name-field{flex-direction:column;gap:6px;margin-top:16px;display:flex}.case-document-name-field>span{color:var(--text-main);font-size:13px;font-weight:600}.case-document-name-field input,.case-document-name-field select{background:#fff;border:1px solid #e0e0e8;border-radius:6px;padding:8px 12px;font-size:13px}.case-document-name-field input:focus,.case-document-name-field select:focus{border-color:#6d28d9;outline:none}.case-document-preview-modal{width:min(820px,94vw)}.case-document-preview-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-document-preview-body{background:#f7f7fa;justify-content:center;align-items:center;min-height:360px;max-height:70vh;display:flex;overflow:auto}.case-document-preview-img{border-radius:6px;max-width:100%;max-height:66vh;box-shadow:0 2px 12px #0000001f}.case-document-preview-frame{border:none;width:100%;height:66vh}.case-document-preview-placeholder,.case-document-preview-fallback{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:12px;padding:40px;font-size:13px;display:flex}.case-document-preview-placeholder-icon{font-size:48px;line-height:1}.case-document-list{flex-direction:column;gap:10px;display:flex}.case-document-item{border:1px solid #eef1f5;border-radius:8px;align-items:center;gap:14px;padding:12px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.case-document-item:hover{border-color:#d6cdf0;box-shadow:0 1px 6px #6d28d914}.case-document-item.clickable{cursor:pointer}.case-document-item.clickable:focus-visible{outline-offset:1px;outline:2px solid #6d28d9}.case-document-icon{font-size:22px;line-height:1}.case-document-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.case-document-name{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.case-document-meta{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:flex}.case-document-type-tag{color:#6d28d9;background:#f3effc;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:600}.case-document-actions{flex-shrink:0;gap:8px;display:flex}.btn-document-action{color:var(--text-normal);cursor:pointer;background:#fff;border:1px solid #e0e0e8;border-radius:6px;padding:4px 12px;font-size:12px;transition:border-color .15s,color .15s,background .15s}.btn-document-action:hover{color:#6d28d9;border-color:#6d28d9}.btn-document-action.danger:hover{border-color:var(--text-main);color:var(--text-main);background:var(--bg-hover)}.dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.case-note-tab{flex-direction:column;gap:14px;display:flex}.case-note-list{flex-direction:column;gap:10px;display:flex}.case-note-card{border:1px solid var(--border-strong);border-left:4px solid var(--brand);border-radius:var(--radius-card);background:#fff}.case-note-summary{cursor:pointer;color:var(--text-normal);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:12px 16px;font-size:13px;display:flex}.case-note-card[open]>.case-note-summary{border-bottom:1px solid var(--border-soft)}.case-note-time{color:var(--text-main);font-weight:700}.case-note-chip{background:var(--brand-soft);color:var(--brand-deep);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.case-note-author{color:var(--text-muted);margin-left:auto}.case-note-body{flex-direction:column;gap:14px;padding:14px 16px 16px;display:flex}.case-note-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;display:grid}.case-note-detail-row{flex-direction:column;gap:2px;display:flex}.case-note-detail-label,.case-note-section h4{color:var(--text-muted);margin:0;font-size:12px;font-weight:600}.case-note-detail-value,.case-note-section p{color:var(--text-main);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:13px}.case-note-section{flex-direction:column;gap:4px;display:flex}.case-note-recorded{color:var(--text-muted);margin:0;font-size:12px}.case-note-form-section{border-bottom:1px solid var(--border-soft);color:var(--text-main);margin:4px 0 -6px;padding-bottom:6px;font-size:14px;font-weight:700}.case-note-required{color:#d4380d}.case-note-choice{color:var(--text-normal);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.case-note-choice-options{flex-wrap:wrap;gap:6px 18px;padding:7px 0;display:flex}.event-form-grid label.case-note-radio{color:var(--text-main);cursor:pointer;flex-direction:row;align-items:center;gap:6px;font-size:13px;font-weight:400}.event-form-grid label.case-note-radio input{width:auto;accent-color:var(--brand-strong);margin:0}.event-form-grid input[readonly]{color:var(--text-normal);background:#f7f7f9}.case-note-form-error{color:#d4380d;margin:14px 0 0;font-size:13px}@media (width<=640px){.case-note-details{grid-template-columns:minmax(0,1fr)}.case-note-author{margin-left:0}}.case-note-field-hint{color:#667085;margin-top:4px;font-size:12px;font-weight:400;line-height:1.4;display:block}.case-note-fieldset{border:none;min-width:0;margin:0;padding:0}.case-note-attach{flex-direction:column;gap:10px;display:flex}.case-note-attach-hint{color:var(--text-muted);margin:0;font-size:12px;font-weight:400}.case-note-attach-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.case-note-attach-row{border:1px solid var(--border-strong);border-radius:6px;grid-template-columns:auto minmax(0,1fr) minmax(150px,200px) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.case-note-attach-row.done{background:#f3fbf6;border-color:#b7e4c7}.case-note-attach-row.failed{background:#fff5f2;border-color:#f5c2b8}.case-note-attach-name{min-width:0;color:var(--text-main);overflow-wrap:anywhere;flex-direction:column;font-size:13px;font-weight:500;display:flex}.case-note-attach-name small{color:var(--text-muted);font-size:11px;font-weight:400}.case-note-attach-name small.case-note-attach-error{color:#d4380d}.case-note-attach-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:18px;line-height:1}.case-note-attach-status{color:var(--text-normal);white-space:nowrap;font-size:12px}.case-note-attach-add{align-self:flex-start}.case-note-clip{color:var(--text-normal);font-size:12px}.case-note-files{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.case-note-file{border:1px solid var(--border-strong);width:100%;color:var(--text-main);text-align:left;cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:flex}.case-note-file:hover{border-color:var(--brand)}.case-note-file small{color:var(--text-muted);white-space:nowrap;margin-left:auto;font-size:11px}.case-note-file-name{overflow-wrap:anywhere;min-width:0}.case-note-file.locked{cursor:default;color:var(--text-muted);background:#f7f7f9}@media (width<=640px){.case-note-attach-row{grid-template-columns:auto minmax(0,1fr) auto}.case-note-attach-row select{grid-area:2/1/auto/-1}}.client-workspace{background:#f6f7f9;grid-template-columns:286px minmax(0,1fr);height:calc(100vh - 56px);margin:-32px;display:grid;overflow:hidden}.client-directory{background:#fff;border-right:1px solid #d9dee8;flex-direction:column;min-width:0;height:100%;display:flex;overflow:hidden}.client-directory-header{border-bottom:1px solid #e8ebf0;padding:18px 16px 12px}.client-directory-header h2{color:#111827;margin:0;font-size:20px;font-weight:800;line-height:1.25}.client-directory-header span{color:#697386;margin-top:2px;font-size:12px;line-height:1.35;display:block}.client-directory-controls{border-bottom:1px solid #e8ebf0;flex-direction:column;gap:10px;padding:12px 12px 10px;display:flex}.client-directory-search-row{width:100%;position:relative}.client-directory-search{flex:none;width:100%;min-width:0;max-width:none;padding-right:40px}.client-directory-filter-menu{position:absolute;top:50%;right:8px;transform:translateY(-50%)}.client-filter-button{color:#697386;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.client-filter-button:hover,.client-filter-button.active{color:#111827;background:#f3f5f8}.client-filter-button svg{fill:currentColor;width:17px;height:17px;display:block}.client-filter-popover{z-index:1000;background:#fff;border:1px solid #d7dce5;border-radius:8px;width:min(386px,100vw - 32px);max-height:min(620px,100vh - 150px);padding:12px;position:fixed;overflow:auto;box-shadow:0 14px 34px #0f172a29}.client-filter-tabs{background:#f3f5f8;border:1px solid #d7dce5;border-radius:7px;grid-template-columns:1fr 1fr;gap:4px;padding:3px;display:grid}.client-filter-tabs button{color:#40506a;cursor:pointer;background:0 0;border:0;border-radius:5px;min-height:30px;font-size:12px;font-weight:800}.client-filter-tabs button.active{color:#111827;background:#fff;box-shadow:0 1px 2px #0f172a1f}.client-filter-grid,.client-filter-sort-panel{gap:10px;margin-top:12px;display:grid}.client-filter-grid{grid-template-columns:1fr 1fr}.client-filter-group{background:#fff;border:1px solid #eef1f5;border-radius:7px;flex-direction:column;gap:8px;min-width:0;padding:10px;display:flex}.client-filter-group.wide{grid-column:1/-1}.client-filter-group.compact .client-filter-chip{flex:auto}.client-filter-group span{color:#40506a;font-size:12px;font-weight:800}.client-filter-chip-row{flex-wrap:wrap;gap:6px;display:flex}.client-filter-chip{color:#40506a;cursor:pointer;background:#fff;border:1px solid #d7dce5;border-radius:5px;min-height:28px;padding:5px 9px;font-size:12px;font-weight:700}.client-filter-chip:hover{background:#f3f5f8}.client-filter-chip.active{color:#fff;background:#111827;border-color:#111827}.client-filter-clear{color:#40506a;cursor:pointer;background:#fff;border:1px solid #d7dce5;border-radius:5px;width:100%;margin-top:10px;padding:7px 10px;font-size:12px;font-weight:800}.client-filter-clear:hover{background:#f3f5f8}.client-filter-sort-reset{color:#40506a;cursor:pointer;background:#fff;border:1px solid #d7dce5;border-radius:6px;width:100%;min-height:32px;font-size:12px;font-weight:800}.client-filter-sort-reset:hover,.client-filter-sort-reset.active{color:#fff;background:#111827;border-color:#111827}.client-create-btn{justify-content:center;width:100%}.client-directory-list{min-height:0;overflow:auto}.client-directory-status{color:#697386;padding:22px 16px;font-size:13px}.client-directory-item{color:#111827;text-align:left;cursor:pointer;background:#fff;border-top:0;border-bottom:1px solid #eef1f5;border-left:3px solid #0000;border-right:0;width:100%;padding:13px 16px;display:block}.client-directory-item:hover{background:#f9fafb}.client-directory-item.active{background:#f1f2f5;border-left-color:#6d28d9}.client-directory-name{align-items:center;gap:8px;min-width:0;display:flex}.client-directory-name strong{color:#111827;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.client-directory-name span,.abbr-tag{color:#697386;background:#f3f5f8;border:1px solid #d7dce5;border-radius:4px;align-items:center;min-height:18px;padding:1px 6px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.client-directory-meta{color:#7b8798;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.client-directory-item.pending.create{border-left-color:#16a34a}.client-directory-item.pending.update{border-left-color:#dc2626}.client-directory-item.pending.delete{border-left-color:#991b1b}.client-directory-item.closed{color:#98a2b3;background:#fafafa}.client-directory-item.closed .client-directory-name strong,.client-directory-item.closed .client-directory-en,.client-directory-item.closed .client-directory-meta{color:#98a2b3}.client-directory-item.closed .abbr-tag,.client-directory-item.closed .client-directory-name span{color:#a3acba;background:#f9fafb;border-color:#e5e7eb}.client-directory-item.closed.active{background:#f4f5f7;border-left-color:#a3acba}.client-directory-approval-badge,.client-approval-status{border-radius:4px;align-items:center;min-height:18px;padding:1px 6px;font-size:11px;font-weight:800;line-height:1.2;display:inline-flex}.client-directory-approval-badge.create,.client-approval-status.create{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.client-directory-approval-badge.update,.client-approval-status.update{color:#b42318;background:#fef2f2;border:1px solid #fecaca}.client-directory-approval-badge.delete,.client-approval-status.delete{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}.client-directory-approval-badge.restore,.client-approval-status.restore{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.client-profile-surface{background:#f8f9fb;min-width:0;height:100%;overflow:auto}.client-profile-surface.empty{background:#fff}.client-profile{min-height:100%;padding:18px 28px 40px}.client-profile-loading{color:#697386;background:#fff;border:1px solid #d7dce5;border-radius:4px;margin:14px 28px 0;padding:10px 12px;font-size:12px}.client-profile-warning{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.client-approval-banner{background:#fff;border:1px solid #d7dce5;border-radius:4px;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:10px 12px;font-size:12px;display:flex}.client-approval-banner strong,.client-approval-banner span{display:block}.client-approval-banner strong{color:#111827}.client-approval-banner span{color:#697386;margin-top:2px}.client-approval-banner details{max-width:460px}.client-approval-banner summary{cursor:pointer;color:#111827;font-weight:800}.client-approval-banner p{color:#40506a;margin:8px 0 0;line-height:1.6}.client-approval-review{background:#fff;border:1px solid #d7dce5;border-radius:6px;margin-top:30px;padding:16px}.client-approval-review-header{border-bottom:1px solid #eef1f5;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.client-approval-review-header strong,.client-approval-reason strong{color:#111827;font-size:13px;font-weight:800;display:block}.client-approval-review-header span{color:#697386;margin-top:3px;font-size:12px;display:block}.client-approval-reason p{color:#40506a;margin:8px 0 0;font-size:12px;line-height:1.6}.client-approval-reason{margin-top:14px}.client-approval-actions,.client-profile-action-footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.client-profile-header{border-bottom:1px solid #dfe4ec;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:14px;display:flex}.client-profile-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.client-profile-title-row h1{color:#111827;letter-spacing:0;margin:0;font-size:20px;font-weight:800;line-height:1.25}.client-profile-header p{color:#697386;margin:5px 0 0;font-size:12px;line-height:1.35}.client-profile-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.client-profile-header-actions{flex:none;align-items:center;gap:8px;display:flex}.client-profile-icon-btn{color:#40506a;cursor:pointer;background:#fff;border:1px solid #d7dce5;border-radius:5px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:13px;line-height:1;display:inline-flex}.client-profile-icon-btn:hover{color:#111827;background:#f3f5f8}.client-profile-icon-btn span{display:block;transform:translateY(-1px)}.client-profile-section{padding-top:28px}.client-profile-action-footer{border-top:1px solid #dfe4ec;padding-top:22px}.client-profile-action-footer.split{justify-content:space-between;align-items:center}.client-profile-secondary-actions,.client-profile-primary-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.client-subtle-action{color:#697386;background:#fff;border-color:#d7dce5}.client-subtle-action:hover:not(:disabled){color:#344054;background:#f3f5f8}.client-profile-status{border-radius:999px;align-items:center;min-height:20px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.client-profile-status.closed{color:#697386;background:#f3f5f8;border:1px solid #d7dce5}.client-profile-case-link{border:1px solid var(--btn-primary-bg);border-radius:var(--radius-btn);background:var(--btn-primary-bg);height:36px;color:var(--btn-primary-fg);cursor:pointer;white-space:nowrap;flex-shrink:0;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:600;line-height:1;transition:background-color .15s,border-color .15s,filter .15s;display:inline-flex}.client-profile-case-link:hover{background:var(--brand-strong);border-color:var(--brand-strong)}.client-profile-case-link-no{letter-spacing:.02em;background:#ffffff38;border-radius:999px;padding:2px 8px;font-weight:700}.client-profile-case-link-arrow{font-size:15px;line-height:1}.client-profile.closed .client-info-cell strong{color:#697386}.client-profile-section h3{color:#111827;border-bottom:1px solid #dfe4ec;margin:0 0 18px;padding-bottom:10px;font-size:15px;font-weight:800}.client-profile-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px;display:grid}.client-info-cell{flex-direction:column;gap:2px;min-width:0;display:flex}.client-info-cell.wide{grid-column:1/-1}.client-info-cell span{color:#98a2b3;font-size:12px;line-height:1.25}.client-info-cell small{color:#c0c7d2;font-size:11px;line-height:1.25}.client-info-cell strong{overflow-wrap:anywhere;color:#344054;font-size:14px;font-weight:500;line-height:1.4}.client-info-cell.changed{background:#7f1d1d;border:1px solid #991b1b;border-left:5px solid #ef4444;border-radius:6px;gap:4px;padding:10px 12px;box-shadow:0 8px 18px #7f1d1d2e}.client-info-cell.changed span{color:#fee2e2;font-weight:800}.client-info-cell.changed strong{color:#fff;font-weight:800}.client-profile-edit{padding-bottom:0}.client-profile-edit .client-profile-section{padding-top:26px}.client-profile-edit .client-profile-grid{gap:18px 28px}.client-profile-edit .form-group{min-width:0}.client-profile-edit .form-label{color:#40506a;font-size:12px;font-weight:800;line-height:1.3}.client-profile-edit .form-input,.client-profile-edit .form-select,.client-profile-edit .form-textarea{background:#fff;border-color:#d7dce5;width:100%}.client-profile-edit .form-input[readonly],.form-input[readonly]{color:#697386;cursor:default;background:#f3f5f8;border-color:#dfe4ec}.client-profile-edit .form-textarea{min-height:88px}.client-profile-edit .form-checkbox-row{background:#fff;border:1px solid #d7dce5;border-radius:6px;min-height:36px;padding:8px 10px}.client-edit-footer{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8f9fbf5;border-top:1px solid #dfe4ec;justify-content:flex-end;gap:8px;margin:30px -28px 0;padding:14px 28px;display:flex;position:sticky;bottom:0}.client-modal-backdrop{z-index:40;background:#1118275c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.client-create-modal{background:#fff;border:1px solid #e1e6ef;border-radius:14px;width:min(640px,100%);overflow:hidden;box-shadow:0 22px 48px #0f172a38}.client-create-modal-header{border-bottom:1px solid #eef1f5;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 28px 16px;display:flex}.client-create-modal-header h2{color:#111827;margin:0;font-size:19px;font-weight:800}.client-create-modal-header span{color:#8a94a6;margin-top:2px;font-size:13px;display:block}.client-modal-close{color:#8a94a6;cursor:pointer;background:0 0;border:0;border-radius:6px;width:28px;height:28px;font-size:20px;line-height:1}.client-modal-close:hover{color:#344054;background:#f3f5f8}.client-create-modal-body{grid-template-columns:1fr 1fr;gap:18px;padding:22px 28px;display:grid}.client-modal-field{flex-direction:column;gap:6px;min-width:0;display:flex}.client-modal-field span{color:#40506a;font-size:13px;font-weight:800}.client-create-error{color:#b42318;background:#fff1f2;border:1px solid #fecaca;border-radius:6px;margin:0 28px 16px;padding:10px 12px;font-size:12px}.client-create-modal-footer{background:#fff;border-top:1px solid #eef1f5;justify-content:space-between;align-items:center;gap:12px;padding:18px 28px;display:flex}.client-create-modal-footer .btn-primary,.client-create-modal-footer .btn-secondary{justify-content:center;min-width:130px}.client-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}.toolbar-right{margin-left:auto}.client-list-card{margin-top:16px}.client-list-card tbody tr.client-row-clickable{cursor:pointer}.client-list-card tbody tr.client-row-clickable:hover{background:#f3f0ff}.table-action-group{gap:8px;display:flex}.col-abbr{width:8%}.col-name{width:22%}.col-tradition,.col-ordination{width:12%}.col-area{width:14%}.col-client-actions{width:20%}.empty-state{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:13px}.detail-header{align-items:center;gap:16px;margin-bottom:4px;display:flex}.back-link{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:13px;text-decoration:none;transition:color .15s;display:inline-flex}.back-link:hover{color:var(--text-main)}.detail-title-row{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.client-form-header{margin-top:8px}.access-denied-copy{color:var(--text-muted);margin-top:16px;font-size:13px}.detail-name{align-items:baseline;gap:12px;display:flex}.detail-name h2{color:var(--text-main);margin:0;font-size:20px;font-weight:800}.detail-name .abbr-tag{color:var(--text-muted);background:#f0f0f0;border-radius:4px;padding:2px 8px;font-size:13px}.tab-bar{border-bottom:1px solid var(--border-strong);gap:0;margin-top:24px;margin-bottom:0;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 20px;font-size:13px;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--text-main)}.tab-btn.active{color:var(--text-main);border-bottom-color:#1a1a1a;font-weight:600}.tab-content{padding-top:24px}.info-grid{grid-template-columns:1fr 1fr;gap:20px 40px;display:grid}.info-item{flex-direction:column;gap:4px;display:flex}.info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.info-value{color:var(--text-main);font-size:14px;line-height:1.4}.info-section-title{color:var(--text-header);border-bottom:1px solid var(--border-soft);margin:24px 0 12px;padding-bottom:6px;font-size:14px;font-weight:700}.info-section-title:first-child{margin-top:0}.check-grid{grid-template-columns:1fr 1fr 1fr;gap:8px 24px;display:grid}.check-item{color:var(--text-normal);align-items:center;gap:8px;font-size:13px;display:flex}.check-item .dot{border-radius:50%;flex:0 0 8px;width:8px;height:8px}.dot-yes{background:#2d6a2d}.dot-no{background:#ddd}.volunteer-notice{border:1px solid var(--border-strong);color:var(--text-muted);background:#fafafa;border-radius:6px;margin-top:24px;padding:12px 16px;font-size:12px;line-height:1.5}.detail-paragraph{color:var(--text-normal);font-size:13px;line-height:1.6}.detail-meta{color:var(--text-muted);margin-top:4px;font-size:12px}.wizard-steps{border-bottom:1px solid var(--border-soft);gap:0;margin-top:20px;margin-bottom:28px;display:flex}.wizard-step{color:var(--text-muted);cursor:pointer;white-space:nowrap;border-bottom:2px solid #0000;padding:10px 20px;font-size:12px;transition:color .15s}.wizard-step:hover{color:var(--text-normal)}.wizard-step.active{color:var(--text-main);border-bottom-color:#1a1a1a;font-weight:600}.wizard-step.completed{color:#2d6a2d}.form-grid{grid-template-columns:1fr 1fr;gap:20px 32px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group.full-width{grid-column:1/-1}.form-label{color:var(--text-normal);font-size:12px;font-weight:600}.form-input,.form-select,.form-textarea{border:1px solid var(--border-strong);height:36px;color:var(--text-main);background:#fff;border-radius:6px;outline:none;padding:0 12px;font-size:13px;transition:border-color .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#999}.form-textarea{resize:vertical;height:auto;min-height:80px;padding:10px 12px}.form-select{cursor:pointer}.form-checkbox-row{color:var(--text-main);align-items:center;gap:8px;font-size:13px;display:flex}.form-checkbox-row input[type=checkbox]{accent-color:#1a1a1a;width:16px;height:16px}.form-section-field{margin-top:16px}.wizard-footer{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;margin-top:32px;padding-top:20px;display:flex}.wizard-footer-left,.wizard-footer-right{gap:8px;display:flex}@media (width<=0){.client-workspace{grid-template-columns:1fr;margin:-16px}.client-directory{border-bottom:1px solid #d9dee8;border-right:0;max-height:420px}.client-profile{padding:18px 16px 32px}.client-profile-header{flex-direction:column}.client-profile-actions{justify-content:flex-start}.client-approval-banner{flex-direction:column;align-items:flex-start}.client-profile-grid{grid-template-columns:1fr;gap:16px}.client-create-modal-body{grid-template-columns:1fr}.client-create-modal-footer{flex-direction:column-reverse;align-items:stretch}}.dashboard-loading{color:#8b95a5;text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-top:28px;padding:28px}.dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:28px;display:grid}.stat-card{background:#fff;border:1px solid #dfe3ea;border-radius:8px;min-height:126px;padding:22px 24px}.stat-label-zh,.stat-label-en,.stat-footnote{color:#9aa3b2;line-height:1.2}.stat-label-zh{font-size:15px;font-weight:600}.stat-label-en{color:#c4cad4;margin-top:2px;font-size:14px;font-weight:600}.stat-value{color:var(--stat-primary);margin-top:18px;font-size:29px;font-weight:800;line-height:1}.stat-footnote{margin-top:14px;font-size:13px;font-weight:600}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px;display:grid}.dashboard-panel,.quick-actions-card{background:#fff;border:1px solid #dfe3ea;border-radius:8px;overflow:hidden}.dashboard-panel-header{border-bottom:1px solid #eef0f4;justify-content:space-between;align-items:flex-start;gap:16px;min-height:64px;padding:18px 24px;display:flex}.dashboard-panel-header.compact{border-bottom:0;min-height:auto;padding-bottom:6px}.dashboard-panel-header h3{color:#1f2937;margin:0;font-size:17px;font-weight:800;line-height:1.15}.dashboard-panel-header div div{color:#9aa3b2;margin-top:2px;font-size:14px;font-weight:600;line-height:1.1}.view-all-link{color:#5f6775;cursor:pointer;background:0 0;border:0;margin-top:4px;padding:0;font-size:14px;line-height:1.2;text-decoration:underline}.view-all-link:hover{color:#111827}.dashboard-list{flex-direction:column;display:flex}.case-row,.report-row{width:100%;min-height:72px;color:inherit;cursor:pointer;text-align:left;background:#fff;border:0;border-bottom:1px solid #f0f2f6;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px 16px 28px;display:flex;position:relative}.case-row:last-child,.report-row:last-child{border-bottom:0}.case-row:hover,.report-row:hover{background:#fafbfc}.case-accent{background:#d1d5db;width:4px;position:absolute;top:0;bottom:0;left:0}.case-row-danger .case-accent{background:#ef4444}.case-row-warning .case-accent{background:#f97316}.case-row-notice .case-accent{background:#fbbf24}.case-row-success .case-accent{background:#22c55e}.row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.row-title{color:#4b5563;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.25;overflow:hidden}.row-meta{color:#9aa3b2;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.25;overflow:hidden}.status-pill,.report-pill{white-space:nowrap;border-radius:5px;flex:none;padding:4px 9px;font-size:13px;font-weight:800;line-height:1}.status-pill{color:#3f7138;background:#e9f7e8}.report-pill{color:#244aa5;background:#dbeafe}.dashboard-empty{color:#9aa3b2;justify-content:center;align-items:center;min-height:144px;font-size:14px;font-weight:600;display:flex}.urgent-report-banner{background:#fff7f7;border:1px solid #fecaca;border-radius:8px;justify-content:space-between;align-items:center;gap:20px;min-height:68px;margin-top:24px;padding:14px 24px;display:flex}.urgent-report-text{color:#b91c1c;font-size:14px;line-height:1.3}.urgent-report-banner button{color:#fff;cursor:pointer;background:#dc2626;border:0;border-radius:5px;flex:none;min-height:38px;padding:0 20px;font-size:14px;font-weight:800}.urgent-report-banner button:hover{background:#b91c1c}.quick-actions-card{margin-top:24px;padding-bottom:22px}.quick-actions{flex-wrap:wrap;gap:14px;padding:12px 24px 0;display:flex}.quick-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #cfd5df;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-width:210px;min-height:40px;padding:0 18px;font-size:14px;font-weight:800;display:inline-flex}.quick-btn:hover{background:#f8fafc;border-color:#aeb7c6}.quick-icon{color:#475569;font-size:16px;font-weight:700;line-height:1}@media (width<=1180px){.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}.profile-page{max-width:760px}.profile-card{margin-top:24px;padding:24px 28px 28px}.profile-hero{border-bottom:1px solid var(--border-soft);align-items:center;gap:18px;padding-bottom:20px;display:flex}.profile-avatar{background:var(--brand-soft);width:64px;height:64px;color:var(--brand-strong);letter-spacing:.5px;border-radius:50%;flex:0 0 64px;justify-content:center;align-items:center;font-size:24px;font-weight:700;display:flex}.profile-name{color:var(--text-main);font-size:20px;font-weight:700;line-height:1.2}.profile-email-sub{color:var(--text-muted);margin-top:4px;font-size:13px}.profile-info{margin:0;padding-top:8px}.profile-row{border-bottom:1px solid var(--border-soft);grid-template-columns:160px 1fr;align-items:center;gap:16px;padding:14px 0;display:grid}.profile-row:last-child{border-bottom:0}.profile-row dt{color:var(--text-muted);font-size:13px;font-weight:600}.profile-row dd{color:var(--text-main);align-items:center;gap:10px;margin:0;font-size:14px;display:flex}.profile-badge{border-radius:var(--radius-badge);align-items:center;padding:2px 9px;font-size:11px;font-weight:500;line-height:1;display:inline-flex}.profile-badge.status-active{background:var(--status-open-bg);color:var(--status-open-fg)}.profile-badge.status-inactive{background:var(--status-closed-bg);color:var(--status-closed-fg)}.profile-badge.profile-verified{background:var(--status-open-bg);color:var(--status-open-fg)}.profile-badge.profile-unverified{background:var(--status-suspended-bg);color:var(--status-suspended-fg)}.report-page{min-width:0}.report-overview-tabs{background:#fff;border-bottom:1px solid #edf0f5;align-items:stretch;gap:0;padding:0 26px;display:flex}.report-overview-tab-btn{color:#667085;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;min-height:48px;margin-bottom:-1px;padding:0 18px;font-size:14px;font-weight:800;line-height:1;transition:color .15s,border-color .15s;display:inline-flex}.report-overview-tab-btn:hover{color:#344054}.report-overview-tab-btn.active{color:#111827;border-bottom-color:#344054}.report-tab-count{color:#344054;background:#f0f4ff;border-radius:10px;justify-content:center;align-items:center;min-width:22px;height:20px;padding:0 6px;font-size:12px;font-weight:900;display:inline-flex}.report-overview-tab-btn.active .report-tab-count{color:#fff;background:#344054}.report-volunteer-item{cursor:pointer;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f5;width:100%;padding:18px 24px;transition:background .12s;display:block;position:relative}.report-volunteer-item:hover,.report-volunteer-item.active{background:#f4f6f9}.report-volunteer-item.active:before{content:"";background:#344054;width:3px;position:absolute;inset:0 auto 0 0}.report-volunteer-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.report-volunteer-name{color:#111827;font-size:17px;font-weight:900;line-height:1.25}.report-volunteer-tag{border-radius:4px;flex:none;align-items:center;height:22px;padding:0 7px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.report-volunteer-tag-recent{color:#166534;background:#dcfce7}.report-volunteer-tag-medium{color:#854d0e;background:#fef9c3}.report-volunteer-tag-old{color:#6b7280;background:#f3f4f6}.report-volunteer-meta{color:#98a2b3;gap:14px;margin-top:6px;font-size:13px;font-weight:700;line-height:1.35;display:flex}.report-vol-panel{max-width:760px}.report-vol-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.report-vol-panel-title{align-items:center;gap:10px;display:flex}.report-vol-panel-title strong{color:#111827;font-size:20px;font-weight:900;line-height:1.2}.report-vol-count-label{color:#475467;background:#f6f8fb;border:1px solid #e1e5ec;border-radius:5px;padding:3px 8px;font-size:12px;font-weight:800}.report-vol-panel-sub{color:#98a2b3;white-space:nowrap;font-size:13px;font-weight:700}.report-vol-list{background:#fff;border:1px solid #e1e5ec;border-radius:14px;overflow:hidden}.report-vol-row{color:#1f2937;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #edf0f5;grid-template-columns:110px minmax(0,1fr) minmax(0,1fr) 76px 24px;align-items:center;gap:12px;width:100%;min-height:60px;padding:14px 20px;transition:background .12s;display:grid}.report-vol-row:last-child{border-bottom:0}.report-vol-row:hover{background:#f4f6f9}.report-vol-date{color:#475467;white-space:nowrap;font-size:14px;font-weight:800}.report-vol-client{color:#111827;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:800;overflow:hidden}.report-vol-type{color:#667085;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.report-vol-arrow{color:#d1d5db;text-align:right;font-size:18px;font-weight:400}.report-workspace{min-width:0;margin:-32px -36px}.report-workspace-header{background:#fff;border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:18px;padding:34px 28px 28px;display:flex}.report-workspace-header h1{color:#111827;margin:0;font-size:26px;font-weight:900;line-height:1.2}.report-category-bar{background:#fff;border-bottom:1px solid #edf0f5;align-items:center;gap:10px;padding:14px 26px;display:flex;overflow-x:auto}.report-category-bar button{color:#667085;cursor:pointer;background:#fff;border:1px solid #e1e5ec;border-radius:20px;flex:none;min-height:38px;padding:0 18px;font-size:14px;font-weight:800;line-height:1}.report-category-bar button.active{color:#fff;background:#111827;border-color:#111827}.report-filter-bar{background:#fff;border-bottom:1px solid #edf0f5;grid-template-columns:minmax(220px,420px) 180px;gap:12px;padding:14px 26px;display:grid}.report-search-input,.report-status-select{color:#1f2937;width:100%;min-height:40px;font:inherit;background:#fbfcfd;border:1px solid #d8dee8;border-radius:8px;padding:0 12px;font-size:14px;font-weight:700}.report-split-layout{grid-template-columns:320px minmax(0,1fr);min-height:calc(100vh - 220px);display:grid}.report-master-list{background:#fff;border-right:1px solid #d8dee8}.report-master-item{color:#1f2937;cursor:pointer;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f5;gap:3px;width:100%;min-height:118px;padding:20px 24px;display:grid;position:relative}.report-master-item:hover,.report-master-item.active{background:#f4f6f9}.report-master-item.active:before{content:"";background:#344054;width:3px;position:absolute;inset:0 auto 0 0}.report-master-name{color:#111827;font-size:17px;font-weight:900;line-height:1.25}.report-master-en,.report-master-date,.report-master-count,.report-master-status{color:#98a2b3;font-size:14px;font-weight:700;line-height:1.35}.report-master-count{padding:18px 24px}.report-master-status{border-radius:5px;justify-self:start;margin-top:8px;padding:5px 8px;font-size:12px;font-weight:900;line-height:1}.report-master-status-submitted{color:#1e40af;background:#dbeafe}.report-master-status-draft{color:#c2410c;background:#fff7ed}.report-master-status-archived{color:#4b5563;background:#f3f4f6}.report-master-status-returned{color:#b91c1c;background:#fee2e2}.report-master-state,.report-reader-state{color:#98a2b3;padding:28px 24px}.report-reader{background:#edf1f6;min-width:0;padding:36px 44px}.report-person-card,.report-reader-card{background:#fff;border:1px solid #e1e5ec;border-radius:22px;max-width:760px;box-shadow:0 2px 8px #11182714}.report-person-card{justify-content:space-between;align-items:flex-start;gap:20px;margin:0 auto 30px;padding:28px 30px;display:flex}.report-person-card span,.report-reader-field span,.report-section-title{color:#98a2b3;font-weight:800}.report-person-card strong{color:#111827;margin-top:8px;font-size:22px;font-weight:900;line-height:1.25;display:block}.report-person-card em{color:#98a2b3;margin-top:4px;font-size:15px;font-style:normal;font-weight:700;display:block}.report-submitted-pill,.report-status-pill{border-radius:6px;flex:none;padding:8px 10px;font-size:14px;font-weight:900;line-height:1}.report-status-pill-submitted{background:#dbeafe;color:#1e40af!important}.report-status-pill-draft{background:#fff7ed;color:#c2410c!important}.report-status-pill-archived{background:#f3f4f6;color:#4b5563!important}.report-status-pill-returned{background:#fee2e2;color:#b91c1c!important}.report-section-title{max-width:760px;margin:28px auto 14px;font-size:15px;line-height:1.3}.report-reader-card{max-width:920px;margin:0 auto;padding:36px 44px}.report-reader-card-continuous{gap:24px;display:grid}.report-reader-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 48px;display:grid}.report-reader-grid.continuous{gap:24px 44px}.report-reader-field{min-width:0}.report-reader-field.wide{grid-column:1/-1}.report-reader-field span{font-size:14px;line-height:1.25;display:block}.report-reader-field p{color:#1f2937;white-space:pre-wrap;margin:8px 0 0;font-size:18px;line-height:1.5}.report-inline-control{margin-top:8px}.report-inline-control input,.report-inline-control textarea{color:#1f2937;width:100%;font:inherit;background:#fbfcfd;border:1px solid #d8dee8;border-radius:8px;padding:10px 12px;font-size:15px}.report-inline-control textarea{resize:vertical;min-height:96px}.report-inline-actions{justify-content:flex-end;align-items:center;gap:12px;max-width:920px;margin:18px auto 0;display:flex}.report-mailbox{min-width:0;margin:-32px -36px}.report-mailbox-body{grid-template-columns:400px minmax(0,1fr);min-height:calc(100vh - 180px);display:grid}.report-folders{background:#fff;border-right:1px solid #d8dee8;overflow-y:auto}.report-folder-header{color:#344054;cursor:pointer;text-align:left;background:#f8fafc;border:0;border-bottom:1px solid #edf0f5;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 18px;font-size:14px;font-weight:900;line-height:1;display:flex}.report-folder-header:hover{background:#f1f4f8}.report-folder.open>.report-folder-header{color:#111827;background:#eef2f8}.report-folder-caret{color:#98a2b3;width:12px;font-size:12px}.report-folder-name{flex:auto}.report-folder-count{color:#475467;background:#e7edf6;border-radius:10px;justify-content:center;align-items:center;min-width:22px;height:20px;padding:0 6px;font-size:12px;font-weight:900;display:inline-flex}.report-folder.open>.report-folder-header .report-folder-count{color:#fff;background:#344054}.report-folder-body{background:#fff}.report-folder-state{color:#98a2b3;padding:14px 20px 14px 30px;font-size:13px}.report-card{cursor:pointer;text-align:left;background:#fff;border:0;border-bottom:1px solid #f1f3f7;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 14px;width:100%;padding:18px 24px 18px 30px;display:grid;position:relative}.report-card:hover,.report-card.active{background:#f4f6f9}.report-card.active:before{content:"";background:#344054;width:3px;position:absolute;inset:0 auto 0 0}.report-card-title{color:#111827;text-overflow:ellipsis;white-space:nowrap;grid-area:1/1;font-size:16px;font-weight:800;line-height:1.3;overflow:hidden}.report-card-date{color:#98a2b3;white-space:nowrap;grid-area:1/2;justify-self:end;font-size:12px;font-weight:700}.report-card-sub{color:#98a2b3;text-overflow:ellipsis;white-space:nowrap;grid-area:2/1/auto/-1;font-size:13px;font-weight:700;overflow:hidden}.report-waiting-hint{color:#98a2b3;align-self:center;margin-right:auto;font-size:13px;font-weight:700}@media (width<=760px){.report-mailbox{margin:-24px -20px}.report-mailbox-body{grid-template-columns:1fr}.report-folders{border-bottom:1px solid #d8dee8;border-right:0}}.report-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}.report-list-card{margin-top:18px}.report-table{border-collapse:collapse;table-layout:fixed;background:#fff;width:100%}.report-table thead tr{background:#f8fafc;height:46px}.report-table th,.report-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #edf0f5;padding:12px 14px}.report-table tbody tr{min-height:64px}.report-table tbody tr.report-row-clickable{cursor:pointer}.report-table tbody tr:hover{background:#f3f0ff}.th-zh,.th-en,.cell-main,.cell-muted,.cell-strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.th-zh{color:#667085;font-size:12px;font-weight:700;line-height:1.2}.th-en{color:#98a2b3;margin-top:2px;font-size:11px;font-weight:600;line-height:1.2}.cell-main{color:#344054;font-size:13px;line-height:1.3}.cell-strong{color:#1f2937;font-size:13px;font-weight:700;line-height:1.3}.cell-muted{color:#98a2b3;margin-top:2px;font-size:12px;line-height:1.25}.report-id{color:#475467;background:#f6f8fb;border:1px solid #d8dee8;border-radius:4px;align-items:center;min-height:24px;padding:0 8px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.report-type-pill{color:#244aa5;background:#eef4ff;border-radius:4px;align-items:center;max-width:100%;min-height:24px;padding:0 8px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.report-view-link{color:#344054;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:700;text-decoration:underline}.report-view-link:hover{color:#111827}.report-row-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.report-delete-link{color:var(--text-main);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:800;text-decoration:underline}.report-delete-link:hover:not(:disabled){color:var(--text-normal)}.report-delete-link:disabled{cursor:not-allowed;opacity:.55}.report-table-state{color:#98a2b3;text-align:center;height:180px;font-size:13px}.report-action-card{margin-top:18px}.report-action-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.report-action-header h2{color:#111827;margin:0;font-size:28px;font-weight:800;line-height:1.2}.report-action-header p{color:#667085;margin:8px 0 0;font-size:14px;line-height:1.45}.report-status-stack{flex-direction:column;flex:none;align-items:flex-end;gap:10px;display:flex}.report-status-submitted,.report-status-urgent{border-radius:5px;align-items:center;min-height:30px;padding:0 12px;font-size:14px;font-weight:900;line-height:1;display:inline-flex}.report-status-submitted{color:#1e40af;background:#dbeafe}.report-status-urgent{color:#dc2626;background:#fee2e2}.report-detail-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:28px;display:flex}.report-action-danger,.report-action-success,.report-action-secondary,.report-action-delete,.report-urgent-mock-banner button{cursor:pointer;border-radius:6px;min-height:40px;padding:0 18px;font-size:14px;font-weight:900;line-height:1}.report-action-danger,.report-action-delete{border:1px solid var(--border-strong);color:var(--text-main);background:#fff}.report-action-success,.report-urgent-mock-banner button{color:#fff;background:#2f7d3f;border:1px solid #2f7d3f}.report-action-secondary{color:#344054;background:#fff;border:1px solid #d0d5dd}.report-action-delete:disabled{cursor:not-allowed;opacity:.55}.report-urgent-mock-banner{color:#b91c1c;background:#fff7f7;border:1px solid #fecaca;border-radius:6px;justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:14px 16px;font-size:14px;line-height:1.45;display:flex}.report-urgent-mock-banner button{flex:none}.report-detail-card{margin-top:18px}.report-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.report-detail-item{min-width:0}.report-detail-label{color:#98a2b3;font-size:12px;font-weight:700;line-height:1.25}.report-detail-label span{display:block}.report-detail-value{color:#1f2937;overflow-wrap:anywhere;margin-top:7px;font-size:14px;font-weight:700;line-height:1.4}.report-detail-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;display:grid}.report-text-block{background:#fff;border:1px solid #e1e5ec;border-radius:8px;min-height:150px;padding:18px 20px}.report-text-block h3{color:#111827;margin:0;font-size:17px;font-weight:800;line-height:1.2}.report-text-subtitle{color:#98a2b3;margin-top:3px;font-size:13px;font-weight:700;line-height:1.25}.report-text-block p{color:#344054;white-space:pre-wrap;margin:16px 0 0;font-size:14px;line-height:1.65}.report-form-card{margin-top:22px}.report-read-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 42px;margin-top:22px;display:grid}.report-read-field{min-width:0}.report-read-field.wide{grid-column:1/-1}.report-read-field h2{color:#98a2b3;margin:0;font-size:14px;font-weight:800;line-height:1.3}.report-read-field p{color:#111827;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;font-size:17px;font-weight:700;line-height:1.5}.report-form-loading{color:#667085;background:#fff;border:1px solid #e1e5ec;border-radius:8px;margin-top:22px;padding:28px}.report-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 28px;display:grid}.report-fixed-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px;display:grid}.report-fixed-field{min-width:0}.report-fixed-field.wide{grid-column:1/-1}.report-fixed-field span{color:#98a2b3;font-size:12px;font-weight:800;line-height:1.35;display:block}.report-fixed-field strong{color:#1f2937;overflow-wrap:anywhere;white-space:pre-line;margin-top:7px;font-size:14px;line-height:1.5;display:block}.report-form-field{min-width:0;display:block}.report-form-field.full-width{grid-column:1/-1}.report-form-field span{color:#475467;margin-bottom:8px;font-size:14px;font-weight:800;line-height:1.35;display:block}.report-form-field strong{color:#dc2626}.report-form-basic{border-top:1px solid #eef1f5;margin-top:24px;padding-top:24px}.report-form-hint{color:#667085;margin-top:6px;font-size:13px;line-height:1.4;display:block}.report-form-existing-files{margin-bottom:16px}.report-form-existing-files>span{color:#475467;margin-bottom:8px;font-size:14px;font-weight:800;display:block}.report-form-required-hint{color:#667085;margin:16px 0 0;font-size:13px}.report-form-control{color:#1f2937;width:100%;min-height:44px;font:inherit;background:#fbfcfd;border:1px solid #d8dee8;border-radius:8px;outline:none;padding:0 14px;font-size:14px}.report-form-control:focus{background:#fff;border-color:#98a2b3;box-shadow:0 0 0 3px #1118270f}.report-form-textarea{resize:vertical;min-height:120px;padding:12px 14px}.report-form-textarea.large{min-height:140px}.report-form-footer{border-top:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:22px;display:flex}.report-form-actions{align-items:center;gap:12px;display:flex}.report-detail-footer-actions{justify-content:flex-end;margin-top:18px;display:flex}.col-report-id{width:10%}.col-report-client{width:22%}.col-report-created-by{width:16%}.col-report-visit-date{width:13%}.col-report-type{width:14%}.col-report-created-at{width:13%}.col-report-actions{width:14%}@media (width<=1100px){.report-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.report-workspace{margin:-24px -20px}.report-workspace-header{flex-direction:column;align-items:stretch;padding:24px 20px}.report-split-layout{grid-template-columns:1fr}.report-filter-bar{grid-template-columns:1fr;padding:14px 20px}.report-master-list{border-right:0}.report-reader{padding:24px 18px}.report-reader-grid{grid-template-columns:1fr}.report-person-card{display:block}.report-submitted-pill{margin-top:16px;display:inline-flex}.report-inline-actions{display:grid}.report-toolbar,.report-detail-sections,.report-form-footer{display:block}.report-toolbar .search-input,.report-toolbar .filter-select{width:100%}.report-toolbar .filter-select,.report-text-block{margin-top:12px}.report-detail-grid{grid-template-columns:1fr}.report-action-header,.report-urgent-mock-banner{display:block}.report-status-stack{align-items:flex-start;margin-top:16px}.report-detail-actions button,.report-urgent-mock-banner button{width:100%;margin-top:10px}.report-form-grid,.report-fixed-grid,.report-read-flow{grid-template-columns:1fr}.report-form-actions,.report-form-footer .btn-primary,.report-form-footer .btn-secondary{width:100%}.report-form-footer .btn-primary{margin-top:12px}}.task-page{min-width:0}.task-list-card,.task-detail-card{margin-top:18px}.task-scope-tabs{background:#f3f6fa;border:1px solid #d8dee8;border-radius:8px;gap:4px;margin-top:18px;padding:4px;display:inline-flex}.task-scope-tabs button{color:#344054;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;min-height:36px;padding:0 18px;font-size:14px;font-weight:900}.task-scope-tabs button.active{color:#101828;background:#fff;box-shadow:0 1px 4px #10182824}.task-list,.task-sub-list{gap:10px;display:grid}.task-row,.task-sub-row{color:#1f2937;cursor:pointer;text-align:left;background:#fff;border:1px solid #edf0f5;border-radius:8px;width:100%}.task-row{grid-template-columns:6px minmax(0,1fr) auto auto;align-items:center;min-height:72px;display:grid;overflow:hidden}.task-reminder{white-space:nowrap;border-radius:12px;margin-right:12px;padding:3px 10px;font-size:12px;font-weight:700}.task-reminder-pending{color:#1d4ed8;background:#eff6ff}.task-reminder-due-soon{color:#c2410c;background:#fff7ed}.task-reminder-overdue{color:#b42318;background:#fef3f2}.task-row:hover,.task-sub-row:hover{background:#f8fafc}.task-color{align-self:stretch}.task-color-red{background:#d64545}.task-color-orange{background:#f59e0b}.task-color-yellow{background:#eab308}.task-color-green{background:#2f7d3f}.task-color-grey,.task-color-black{background:#667085}.task-row-main{gap:5px;min-width:0;padding:14px 18px;display:grid}.task-title{color:#111827;font-size:15px;font-weight:900}.task-meta,.task-open{color:#667085;font-size:13px;font-weight:700}.task-open{padding-right:18px}.task-empty{color:#98a2b3;text-align:center;padding:40px 12px}.task-empty.compact{text-align:left;padding:14px 0}.task-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.task-info{min-width:0}.task-info.wide{grid-column:span 2}.task-info span{color:#98a2b3;font-size:12px;font-weight:800;display:block}.task-info strong{color:#1f2937;margin-top:7px;font-size:14px;line-height:1.5;display:block}.task-info.multiline strong{white-space:pre-line}.task-info-link{color:#2f7d3f;cursor:pointer;min-height:32px;font:inherit;background:#fff;border:1px solid #d8dee8;border-radius:6px;align-items:center;margin-top:7px;padding:0 11px;font-size:13px;font-weight:900;display:inline-flex}.task-info-link:hover{background:#f7faf8}.task-sub-row{justify-content:space-between;gap:12px;padding:12px 14px;display:flex}.task-sub-row span{overflow-wrap:anywhere;min-width:0}.task-report-action{width:100%;margin-bottom:12px}.task-report-detail-card{margin-top:18px}.task-report-status{color:#244aa5;background:#eef4ff;border-radius:5px;align-items:center;min-height:28px;margin-bottom:18px;padding:0 10px;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.task-report-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 30px;display:grid}@media (width<=900px){.task-overview-grid,.task-report-flow{grid-template-columns:1fr}.task-info.wide{grid-column:auto}}.task-case-note-status{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.task-case-note-status span{font-weight:700}.task-case-note-status.done span{color:#027a48}.task-case-note-status.missing span{color:#b54708}.settings-shell{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:24px;padding:4px 2px;display:grid}.settings-side-title{color:#111827;margin:0 0 12px;font-size:20px;font-weight:800}.settings-side-nav{flex-direction:column;gap:2px;display:flex}.settings-side-item{color:#475467;border-radius:8px;padding:9px 12px;font-size:14px;font-weight:600;text-decoration:none;display:block}.settings-side-item:hover{color:#1f2937;background:#f6f8fc}.settings-side-item.active{color:#6b53d6;background:#f5f0ff;font-weight:700}.settings-body{background:#fff;border:1px solid #edf0f5;border-radius:12px;min-width:0;padding:24px}.settings-error{color:#b42318;background:#fef3f2;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:14px}.settings-loading{color:#98a2b3;margin-top:16px;font-size:14px}.settings-empty{text-align:center;color:#98a2b3;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:240px;display:flex}.settings-empty-icon{opacity:.7;font-size:34px}.settings-empty p{max-width:320px;margin:0;font-size:14px;line-height:1.55}.fa-header h2{color:#111827;margin:0;font-size:17px;font-weight:800}.fa-header p{color:#667085;max-width:640px;margin:5px 0 0;font-size:13px;line-height:1.55}.fa-search{width:min(420px,100%);margin-top:18px;position:relative}.fa-search-icon{opacity:.55;pointer-events:none;font-size:13px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.fa-search-input{color:#1f2937;background:#fff;border:1px solid #d7dce5;border-radius:8px;outline:none;width:100%;height:38px;padding:0 12px 0 34px;font-size:14px}.fa-search-input:focus{border-color:#6b53d6;box-shadow:0 0 0 3px #6b53d61f}.fa-userlist{border:1px solid #e5e9f0;border-radius:10px;margin:16px 0 0;padding:0;list-style:none;overflow:hidden}.fa-userlist>li+li{border-top:1px solid #eef1f5}.fa-userlist-row{text-align:left;cursor:pointer;background:#fff;border:0;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 16px;display:flex}.fa-userlist-row:hover{background:#f9fafc}.fa-userlist-text{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.fa-userlist-name{color:#1f2937;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.fa-userlist-email{color:#98a2b3;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.fa-userlist-chevron{color:#c3cbd8;flex:none;font-size:20px;line-height:1}.fa-back{color:#6b53d6;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin-bottom:16px;padding:4px 4px 4px 0;font-size:13px;font-weight:600;display:inline-flex}.fa-back:hover{color:#5a44bd;text-decoration:underline}.fa-back-arrow{font-size:17px;line-height:1}.fa-avatar{color:#6b53d6;background:#ece8fb;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.fa-avatar-lg{width:44px;height:44px;font-size:15px;font-weight:800}.fa-selected-user{background:#fafbfd;border:1px solid #edf0f5;border-radius:10px;align-items:center;gap:12px;margin-top:18px;padding:14px 16px;display:flex}.fa-selected-text{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.fa-selected-name{color:#111827;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.fa-selected-email{color:#98a2b3;white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.fa-summary{color:#475467;white-space:nowrap;background:#eef2f7;border-radius:999px;flex:none;padding:3px 10px;font-size:12px;font-weight:700}.fa-groups{flex-direction:column;gap:16px;margin-top:18px;display:flex}.fa-group{background:#fff;border:1px solid #edf0f5;border-radius:12px;padding:18px}.fa-group-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.fa-group-heading h3{color:#111827;margin:0;font-size:15px;font-weight:800}.fa-group-heading p{color:#667085;max-width:560px;margin:4px 0 0;font-size:13px;line-height:1.5}.fa-count{color:#667085;white-space:nowrap;flex:none;font-size:12px;font-weight:700}.fa-rows{border:1px solid #e5e9f0;border-radius:10px;margin-top:8px;overflow:hidden}.fa-row{cursor:pointer;background:#fff;align-items:center;gap:12px;min-height:48px;padding:10px 16px;display:flex}.fa-row+.fa-row{border-top:1px solid #eef1f5}.fa-row:hover{background:#f9fafc}.fa-row.locked{cursor:default;background:#fafbfd}.fa-row input[type=checkbox]{accent-color:#6b53d6;cursor:pointer;flex:none;width:16px;height:16px}.fa-row.locked input[type=checkbox]{cursor:default}.fa-row-badge{color:#667085;white-space:nowrap;background:#eef2f7;border-radius:999px;flex:none;margin-left:auto;padding:2px 9px;font-size:11px;font-weight:700}.fa-row-icon{flex:none;font-size:17px;line-height:1}.fa-row-text{flex-direction:column;gap:1px;min-width:0;display:flex}.fa-row-title{color:#1f2937;font-size:14px;font-weight:600}.fa-row-desc{color:#98a2b3;font-size:12px;line-height:1.45}.fa-savebar{border-top:1px solid #f0f2f6;justify-content:space-between;align-items:center;gap:14px;margin-top:20px;padding-top:16px;display:flex}.fa-savebar-note{color:#b45309;font-size:13px;font-weight:600}.fa-savebar-note:empty{visibility:hidden}.fa-savebar-actions{align-items:center;gap:12px;display:flex}@media (width<=860px){.settings-shell{grid-template-columns:1fr}.settings-side-nav{flex-flow:wrap}}
