@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700&display=swap";.role-dashboard{--dash-ink:#26312d;--dash-muted:#75817b;--dash-line:#e9ecea;--dash-green:#28765b;max-width:1600px;color:var(--dash-ink);gap:20px;margin:0 auto;display:grid;container-type:inline-size}.role-dashboard *{box-sizing:border-box}.role-dashboard .dash-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:2px 0 4px;display:flex}.role-dashboard .dash-heading h1{color:var(--dash-ink);letter-spacing:-.5px;margin:0;font-size:26px;font-weight:600;line-height:1.4}.role-dashboard .dash-heading p{color:var(--dash-muted);margin:6px 0 0;font-size:13px}.role-dashboard .dash-panel{border:1px solid var(--dash-line);background:#fff;border-radius:8px;min-width:0;padding:22px 24px}.role-dashboard .dash-panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.role-dashboard .dash-panel-head h2{color:var(--dash-ink);margin:0;font-size:14px;font-weight:600}.role-dashboard .dash-caption,.role-dashboard .dash-note{color:var(--dash-muted);font-size:12px;line-height:1.7}.role-dashboard .dash-note{margin:6px 0 16px}.role-dashboard .dash-link{color:var(--dash-green);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:5px;padding:4px 0;font-size:12px;display:inline-flex}.role-dashboard .dash-link:hover{color:#184f3d;text-decoration:underline}.role-dashboard button:focus-visible,.role-dashboard summary:focus-visible{outline:2px solid var(--dash-green);outline-offset:3px;border-radius:3px}.role-dashboard .dash-link svg{flex:none}.role-dashboard .dash-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:20px;display:grid}.role-dashboard .dash-grid>:only-child{grid-column:1/-1}.role-dashboard .dash-grid-even{grid-template-columns:repeat(2,minmax(0,1fr))}.role-dashboard .dash-grid-start{align-items:start}.role-dashboard .dash-stack{gap:20px;min-width:0;display:grid}.role-dashboard .dash-metrics{flex-wrap:wrap;row-gap:24px;display:flex}.role-dashboard .dash-metric{border-left:1px solid var(--dash-line);flex:160px;min-width:0;padding:0 24px}.role-dashboard .dash-metric:first-child{border-left:0;padding-left:0}.role-dashboard .dash-metric:last-child{padding-right:0}.role-dashboard .dash-metric>span,.role-dashboard .dash-quality span,.role-dashboard .dash-quality-detail>div>span{color:var(--dash-muted);font-size:13px}.role-dashboard .dash-metric strong{color:var(--dash-ink);font-variant-numeric:tabular-nums;margin:8px 0 6px;font-size:32px;font-weight:500;line-height:1.3;display:block}.role-dashboard .dash-metric small{color:var(--dash-muted);font-size:12px;line-height:1.6;display:block}.role-dashboard .dash-bars{gap:22px;margin-top:22px;display:grid}.role-dashboard .dash-row{justify-content:space-between;align-items:center;gap:16px;font-size:13px;display:flex}.role-dashboard .dash-row>strong{overflow-wrap:anywhere;min-width:0}.role-dashboard .dash-row>span:last-child{font-variant-numeric:tabular-nums;flex-shrink:0}.role-dashboard .dash-track{background:#f1f3f2;border-radius:3px;height:5px;margin-top:10px;overflow:hidden}.role-dashboard .dash-track>span{background:var(--dash-green);border-radius:inherit;height:100%;display:block}.role-dashboard .dash-table-wrap{width:100%;overflow-x:auto}.role-dashboard table{border-collapse:collapse;table-layout:auto;width:100%;font-size:14px}.role-dashboard table :is(.dash-link,.dash-org-name strong,.dash-status){font-size:inherit}.role-dashboard th{color:var(--dash-muted);text-align:left;white-space:nowrap;background:#f6f7f6;font-weight:400}.role-dashboard th,.role-dashboard td{border-bottom:1px solid var(--dash-line);font-variant-numeric:tabular-nums;padding:14px 12px;line-height:1.6}.role-dashboard td{color:var(--dash-ink)}.role-dashboard td small{color:var(--dash-muted);margin-top:4px;font-size:12px;display:block}.role-dashboard tbody tr:last-child td{border-bottom:0}.role-dashboard .dash-title-cell{overflow-wrap:anywhere;min-width:160px}.role-dashboard .dash-todos h2{margin:0 0 12px;font-size:14px;font-weight:600}.role-dashboard .dash-todo-grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:12px;display:grid}.role-dashboard .dash-todo-card{border:1px solid var(--dash-line);min-width:0;color:var(--dash-ink);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:12px;padding:16px 18px;transition:border-color .15s,background .15s;display:flex}.role-dashboard .dash-todo-card:hover{background:#f8fbf9;border-color:#b4cbbf}.role-dashboard .dash-todo-icon{width:36px;height:36px;color:var(--dash-green);background:#edf4f0;border-radius:8px;flex:none;place-items:center;display:grid}.role-dashboard .dash-todo-label{flex:1;font-size:13px}.role-dashboard .dash-todo-card strong{font-variant-numeric:tabular-nums;font-size:24px;font-weight:600}.role-dashboard .dash-todo-card>svg{color:var(--dash-muted);flex:none}.role-dashboard .dash-notice{color:#80602b;background:#faf6ed;border:1px solid #eee5d4;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:12px 18px;font-size:13px;display:flex}.role-dashboard .dash-empty{color:var(--dash-muted);text-align:center;padding:32px 12px;font-size:14px}.role-dashboard .dash-trend-panel{--dash-green:#237b5b}.role-dashboard .dash-trend-panel .dash-panel-head{margin-bottom:6px}.role-dashboard .dash-trend-tabs{border-bottom:1px solid var(--dash-line);gap:24px;display:flex}.role-dashboard .dash-trend-tabs button{color:var(--dash-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 0;font-size:13px}.role-dashboard .dash-trend-tabs button[aria-pressed=true]{color:var(--dash-green);border-bottom-color:var(--dash-green);font-weight:500}.role-dashboard .dash-trend-tabs button:hover{color:var(--dash-green)}.role-dashboard .dash-trend-total{flex-wrap:wrap;align-items:baseline;gap:12px;margin:14px 0 8px;display:flex}.role-dashboard .dash-trend-total strong{color:var(--dash-ink);font-variant-numeric:tabular-nums;font-size:28px;font-weight:500;line-height:1.3}.role-dashboard .dash-trend-total small{color:var(--dash-muted);margin-left:5px;font-size:12px;font-weight:400}.role-dashboard .dash-trend-total>span{color:var(--dash-muted);font-size:12px}.role-dashboard .dash-chart{min-width:0;position:relative}.role-dashboard .dash-chart svg{width:100%;display:block;overflow:visible}.role-dashboard .dash-chart svg text{fill:var(--dash-muted);font-family:inherit;font-size:12px}.role-dashboard .dash-grid-line{stroke:var(--dash-line);stroke-width:1px}.role-dashboard .dash-chart-area{fill:var(--dash-green);fill-opacity:.07}.role-dashboard .dash-chart-line{fill:none;stroke:var(--dash-green);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.role-dashboard .dash-chart-point{fill:#fff;stroke:var(--dash-green);stroke-width:1.5px}.role-dashboard .dash-hover-line{stroke:#c4cdc8;stroke-width:1px}.role-dashboard .dash-chart svg .dash-chart-zero{fill:#929c96}.role-dashboard .dash-chart-tooltip{border:1px solid var(--dash-line);pointer-events:none;width:144px;color:var(--dash-muted);background:#fff;border-radius:6px;padding:10px 12px;font-size:12px;position:absolute;top:8px;transform:translate(-50%);box-shadow:0 4px 16px #26312d12}.role-dashboard .dash-chart-tooltip>div{color:var(--dash-ink);justify-content:space-between;align-items:baseline;gap:8px;margin-top:6px;display:flex}.role-dashboard .dash-chart-tooltip strong{color:var(--dash-green);font-variant-numeric:tabular-nums;font-size:16px;font-weight:500}.role-dashboard .dash-chart-tooltip small{color:var(--dash-muted);font-size:11px;font-weight:400}.role-dashboard .dash-chart-footer{color:var(--dash-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-top:10px;font-size:12px;display:flex}.role-dashboard .dash-chart-footer button{color:var(--dash-green);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.role-dashboard .dash-chart-footer button:hover{text-decoration:underline}.role-dashboard .dash-chart-table{margin-top:16px}.role-dashboard .dash-quality{justify-content:space-between;align-items:center;gap:16px;display:flex}.role-dashboard .dash-quality strong{color:var(--dash-ink);font-variant-numeric:tabular-nums;margin-top:12px;font-size:40px;font-weight:500;line-height:1.4;display:block}.role-dashboard .dash-quality strong small{font-size:21px}.role-dashboard .dash-ring{background:conic-gradient(var(--dash-green) var(--dash-rate), #edf2ef 0);border-radius:50%;flex:none;place-items:center;width:84px;height:84px;display:grid}.role-dashboard .dash-ring span{width:70px;height:70px;color:var(--dash-green);background:#fff;border-radius:50%;place-items:center;font-size:20px;display:grid}.role-dashboard .dash-quality-detail{border-top:1px solid var(--dash-line);grid-template-columns:1fr 1fr;gap:16px;margin-top:14px;padding-top:20px;display:grid}.role-dashboard .dash-quality-detail strong{font-variant-numeric:tabular-nums;margin:10px 0 4px;font-size:22px;font-weight:500;display:block}.role-dashboard .dash-quality-detail small{color:var(--dash-muted);font-size:12px;font-weight:400}.role-dashboard .dash-list>div{border-bottom:1px solid var(--dash-line);min-width:0;padding:16px 0}.role-dashboard .dash-list>div:first-child{padding-top:0}.role-dashboard .dash-list>div:last-child{border-bottom:0;padding-bottom:0}.role-dashboard .dash-list strong{color:var(--dash-ink);font-size:13px;font-weight:500}.role-dashboard .dash-list p{color:var(--dash-muted);overflow-wrap:anywhere;margin:8px 0;font-size:12px}.role-dashboard .dash-progress-caption{color:var(--dash-muted);margin-top:8px;font-size:12px}.role-dashboard .dash-status{color:var(--dash-green);white-space:nowrap;background:#edf4f0;border-radius:3px;padding:2px 6px;font-size:11px;line-height:1.6;display:inline-block}.role-dashboard .dash-status-muted{color:var(--dash-muted);background:#f2f3f2}.role-dashboard .dash-clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.role-dashboard .dash-org-name{color:var(--dash-muted);align-items:center;gap:8px;margin-bottom:10px;display:flex}.role-dashboard .dash-org-name strong{font-size:13px;font-weight:400}.role-dashboard .dash-org-name svg{flex-shrink:0}.role-dashboard .dash-facts{margin:0;font-size:13px}.role-dashboard .dash-facts>div{border-top:1px solid var(--dash-line);justify-content:space-between;align-items:baseline;gap:14px;padding:14px 0;display:flex}.role-dashboard .dash-facts dt{color:var(--dash-muted);flex-shrink:0}.role-dashboard .dash-facts dd{text-align:right;margin:0}.role-dashboard .dash-links{flex-wrap:wrap;justify-content:flex-end;gap:16px;margin-left:auto;display:flex}.role-dashboard .dash-links .dash-link{white-space:nowrap}.role-dashboard .dash-shift{border-bottom:1px solid var(--dash-line);color:var(--dash-muted);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:16px;font-size:12px;display:flex}.role-dashboard .dash-shift strong{color:var(--dash-ink);font-weight:500}@container (width<=850px){.role-dashboard .dash-grid{grid-template-columns:minmax(0,1fr)}.role-dashboard .dash-metric{flex-basis:40%;padding-left:18px}.role-dashboard .dash-metric:nth-child(odd){border-left:0;padding-left:0}}@container (width<=520px){.role-dashboard{gap:14px}.role-dashboard .dash-panel{padding:18px 16px}.role-dashboard .dash-heading h1{font-size:23px}.role-dashboard .dash-panel-head{flex-wrap:wrap;align-items:flex-start}.role-dashboard .dash-metric strong{font-size:28px}.role-dashboard .dash-metric{border-left:0;flex-basis:100%;padding:0}.role-dashboard .dash-ring{display:none}.role-dashboard .dash-row{flex-wrap:wrap;gap:6px}.role-dashboard th,.role-dashboard td{padding-inline:8px}.role-dashboard .dash-quality-detail{grid-template-columns:1fr}}.row-number{color:#8b9893;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.user-filters{font-weight:400}.user-filters input::placeholder,.user-filters .ant-select-placeholder,.user-filters .user-filter-default{color:#a6afac;font-weight:400}.mobile-value{letter-spacing:.2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.position-empty{color:#a6afac}.user-name-cell{align-items:center;gap:10px;min-width:0;display:flex}.user-name-cell .user-avatar{color:#287352;background:#e8f3ed;flex:none}.user-name-cell>.user-name-text{overflow-wrap:anywhere;min-width:0}.user-name-cell>.copy-value{min-width:0;margin-left:0}.user-name-details{flex-direction:column;flex:1;align-items:flex-start;min-width:0;display:flex}.user-name-details>.copy-value{padding-block:2px}.user-name-remark{color:#8b9893;width:100%;font-size:12px;line-height:18px}.user-memberships{flex-direction:column;gap:7px;display:flex}.user-membership{align-items:baseline;gap:10px;display:flex}.user-membership .group-badge{overflow-wrap:anywhere;flex:none;max-width:120px}.membership-positions{color:#52635d;overflow-wrap:anywhere}.membership-unassigned{color:#ad761b;font-size:12px}.user-list .user-membership{min-width:0}.user-list .user-membership .group-badge{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-membership-details{flex:1}.user-cell-ellipsis{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.membership-editor{background:#fafcfb;border:1px solid #e2e9e5;border-radius:8px;margin-bottom:14px;padding:14px 16px}.membership-editor-heading{color:#82908b;align-items:center;gap:10px;margin-bottom:12px;font-size:12px;display:flex}.membership-editor .ant-select{width:100%}.unassigned-position-editor{margin-bottom:18px}.unassigned-position-row{align-items:center;gap:8px;margin-top:8px;display:flex}.unassigned-position-row>span{overflow-wrap:anywhere;flex:1}.unassigned-position-row .ant-select{width:180px}.user-dialog .ant-modal-body{max-height:calc(100dvh - 250px);overflow-y:auto}.user-dialog .ant-modal-container{border-radius:10px;padding:0;overflow:hidden;box-shadow:0 22px 70px #102a2145}.user-dialog .ant-modal-header{border-bottom:1px solid #e8ecea;margin:0;padding:0 22px}.user-dialog .ant-modal-body{padding:22px 22px 4px}.user-dialog .ant-modal-footer{border-top:1px solid #e8ecea;margin:0;padding:15px 22px}.user-dialog-title{flex-direction:column;justify-content:center;min-height:70px;display:flex}.user-dialog-title strong{color:#233d34;font-size:16px;font-weight:600;line-height:24px}.user-dialog-title span{color:#8b9792;margin-top:4px;font-size:11px;font-weight:400;line-height:16px}.user-dialog .ant-modal-close{border-radius:6px;width:32px;height:32px;inset-block-start:19px;inset-inline-end:22px}.user-list .ant-table-thead>tr>th{height:46px}.user-list .ant-table-tbody>tr>td{height:58px}.copy-value{color:#30453e;cursor:pointer;max-width:100%;font-size:inherit;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;margin-left:-9px;padding:7px 9px;display:inline-flex}.copy-value>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.copy-value svg{color:#96a49f;opacity:0;flex:none;transition:opacity .15s}.copy-value:hover{background:var(--app-bg-neutral);color:#1d5e49}.copy-value:hover svg,.copy-value:focus-visible svg{opacity:1}.name-value{font-weight:600}.group-badges{flex-wrap:wrap;justify-content:center;gap:4px;display:inline-flex}.group-badge{background:var(--app-bg-neutral);color:#4d685e;font-size:inherit;border-radius:11px;padding:3px 9px;display:inline-block}.verified-badge{font-size:inherit;border-radius:11px;padding:3px 9px;font-weight:400;display:inline-block}.verified-badge.yes{color:#287352;background:#e6f2ec}.verified-badge.no{background:var(--app-bg-neutral);color:#808c88}.user-list .ant-table-tbody>tr.ant-table-row:hover>td,.user-list .ant-table-tbody>tr.ant-table-row>td.ant-table-cell-row-hover,.organization-member-list .ant-table-tbody>tr.ant-table-row:hover>td,.organization-member-list .ant-table-tbody>tr.ant-table-row>td.ant-table-cell-row-hover{background:#fff}.app-shell{--app-header-height:64px;height:100dvh;overflow:hidden}.app-shell .app-sider{z-index:10;position:fixed;inset:0 auto 0 0}.app-shell .brand{height:var(--app-header-height);flex:none;gap:8px;padding:0 16px}.app-shell .brand-mark{border-radius:8px;flex:none;width:32px;height:32px}.brand-text{white-space:nowrap;flex:1;min-width:0}.sidebar-toggle,.sidebar-account{color:inherit;cursor:pointer;background:0 0;border:0}.sidebar-toggle{border-radius:4px;flex:none;place-items:center;width:28px;height:32px;padding:0;display:grid}.sidebar-toggle:hover,.sidebar-account:hover{background:color-mix(in srgb, currentColor 8%, transparent)}.sidebar-toggle:focus-visible,.sidebar-account:focus-visible{outline:2px solid var(--app-accent);outline-offset:-4px}.app-shell .app-menu{border:0;flex:1;width:auto;min-height:0;margin:0 12px;padding:12px 0;overflow:hidden auto}.app-shell .sidebar-account{border-top:1px solid color-mix(in srgb, currentColor 12%, transparent);text-align:left;flex:none;align-items:center;gap:12px;width:100%;height:64px;margin-top:auto;padding:0 16px;display:flex}.sidebar-account .ant-avatar{background:var(--app-primary-bg);color:var(--app-primary);flex:none;font-weight:700}.sidebar-account .account{flex:1;min-width:0}.sidebar-account .account strong,.sidebar-account .account span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-account .account span{color:inherit;opacity:.65}.app-shell .ant-layout-sider-collapsed .brand,.app-shell .ant-layout-sider-collapsed .sidebar-account{justify-content:center;padding-inline:8px}.app-shell .ant-layout-sider-collapsed .app-menu{margin-inline:8px}.app-shell .ant-menu-inline-collapsed>.ant-menu-item{padding-inline:20px}.app-shell .app-main{min-width:0;margin-inline-start:var(--app-sidebar-width);transition:margin-inline-start .2s}.app-shell .app-header{height:var(--app-header-height);border-bottom:1px solid var(--app-border);background:var(--app-surface);flex:none;padding:0 24px;line-height:normal}.header-page-title{height:100%;color:var(--app-primary);align-items:center;gap:12px;display:flex}.app-main:has(.page-tabs) .header-page-title{visibility:hidden}.app-shell .content{min-width:0;max-width:100%;padding:24px 24px 48px;overflow:auto}.app-shell .page-tabs>.ant-tabs-nav{top:0;left:var(--app-sidebar-width);z-index:3;height:var(--app-header-height);background:var(--app-surface);margin:0;padding:0 24px;transition:left .2s;position:fixed;right:0}.app-shell .page-tabs>.ant-tabs-nav:before{border-bottom-color:var(--app-border)}.app-shell .page-tabs>.ant-tabs-nav .ant-tabs-tab{padding-block:20px}@media (width<=768px){.app-shell .app-header,.app-shell .page-tabs>.ant-tabs-nav{padding-inline:16px}.app-shell .content{padding:16px}}.building-metrics{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:14px;display:grid}.building-metrics>div{background:#fff;border:1px solid #e3e8e5;border-radius:9px;align-items:center;gap:12px;min-height:76px;padding:13px 16px;display:flex}.building-metrics p{color:#7c8984;margin:0;font-size:11px}.building-metrics strong{color:#233d34;margin-top:2px;font-size:21px;font-weight:600;line-height:1.2;display:block}.building-metric-icon{border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.building-metric-icon.green{color:#297a58;background:#e5f2ec}.building-metric-icon.amber{color:#b67e21;background:#f9f0db}.building-metric-icon.blue{color:#3976a3;background:#e8f1f7}.building-metric-icon.purple{color:#775d9f;background:#f0ebf6}.building-metric-icon.slate{color:#566c75;background:#eaf0f2}.hierarchy-panel{margin-bottom:10px}.hierarchy-head{border-bottom:1px solid #edf0ee;justify-content:space-between;align-items:center;height:52px;padding:0 24px;display:flex}.hierarchy-head strong,.hierarchy-head span{display:block}.hierarchy-head strong{color:#294239;font-size:13px}.hierarchy-head span{color:#8a9692;margin-top:2px;font-size:10px}.hierarchy-columns{grid-template-columns:1.3fr 1fr 1fr 1.35fr;display:grid}.hierarchy-column{border-right:1px solid #edf0ee;min-width:0;padding:16px 14px 18px}.hierarchy-column:last-child{border-right:0}.hierarchy-column:first-child{padding-left:24px}.hierarchy-column:last-child{padding-right:24px}.hierarchy-title{color:#53655e;align-items:center;gap:7px;height:25px;font-size:11px;font-weight:600;display:flex}.hierarchy-title i{color:#2a694f;background:#e9f1ed;border-radius:6px;place-items:center;width:19px;height:19px;font-size:10px;font-style:normal;display:grid}.hierarchy-title em{color:#9aa4a0;margin-left:auto;font-size:9px;font-style:normal;font-weight:400}.hierarchy-options{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:5px;height:150px;padding:6px 2px 0 0;display:grid;overflow:auto}.hierarchy-options.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.hierarchy-options.floor-options{grid-template-columns:repeat(4,minmax(0,1fr))}.hierarchy-options button{background:var(--app-bg-neutral);color:#53645e;cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:space-between;align-items:center;gap:5px;min-width:0;height:31px;padding:0 8px;font-size:10px;display:flex}.hierarchy-options button:hover{background:var(--app-bg-neutral);border-color:#d7e1dc}.hierarchy-options button.active{color:#205d45;background:#e4f0ea;border-color:#b9d2c6;font-weight:600}.hierarchy-options button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hierarchy-options button b{color:#8e9a95;font-size:9px;font-weight:400}.hierarchy-options button.active b{color:#3b745d}.hierarchy-empty{color:#a0aaa6;place-items:center;height:150px;font-size:10px;display:grid}.filter-trail{color:#a0aaa6;align-items:center;gap:7px;min-height:35px;margin-top:16px;padding:0 3px;font-size:10px;display:flex}.filter-trail b{background:var(--app-bg-neutral);color:#4c665c;border-radius:5px;padding:3px 7px;font-weight:500}.building-panel{min-width:0}.building-toolbar{border-bottom:1px solid #edf0ee;flex-wrap:wrap;align-items:center;gap:9px;min-height:68px;padding:16px 24px;display:flex}.building-search{color:#80908a;background:#fff;border:1px solid #dce2df;border-radius:7px;align-items:center;gap:8px;width:330px;height:35px;padding:0 11px;display:flex}.building-search input{background:0 0;border:0;outline:0;width:100%;font-size:12px}.building-search button{color:#8a9792;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;width:24px;height:24px;padding:0;display:grid}.building-search button:hover{background:var(--app-bg-neutral);color:#42564e}.building-filters{align-items:center;gap:8px;display:flex}.building-filters select{color:#53645e;cursor:pointer;background-color:#fff;border:1px solid #dce2df;border-radius:7px;outline:0;width:104px;height:35px;padding:0 28px 0 10px;font-size:11px}.building-filters select:last-child{width:90px}.building-filters select:disabled{background-color:var(--app-bg-neutral);color:#a7b0ac;cursor:not-allowed}.result-count{color:#87938f;white-space:nowrap;margin-left:auto;font-size:11px}.building-table-wrap{min-height:470px;padding:12px 24px 0;overflow-x:auto}.building-table{border-collapse:collapse;table-layout:auto;width:100%;min-width:1200px;font-size:14px}.building-table th{background:var(--app-bg-neutral);color:#82908b;font-size:12px;font-weight:500}.building-table td{color:#65736e}.building-table th,.building-table td{border-bottom:1px solid #eef1ef}.building-table tbody tr:last-child td{border-bottom:0}.building-table th,.building-table td{text-align:center;white-space:nowrap;text-overflow:ellipsis;height:52px;padding:0 clamp(8px,.65vw,13px);overflow:hidden}.building-table th:nth-child(-n+6),.building-table td:nth-child(-n+6){padding-left:17px;padding-right:17px}.building-table th:first-child{width:70px}.building-table th:nth-child(2){width:120px}.building-table th:nth-child(3),.building-table th:nth-child(4),.building-table th:nth-child(5){width:96px}.building-table th:nth-child(6){width:142px}.building-table th:nth-child(7){min-width:140px}.building-table th:nth-child(8){width:88px}.building-table td:nth-child(8){font-variant-numeric:tabular-nums}.building-table th:nth-child(n+9):nth-child(-n+13){text-align:center;width:clamp(68px,4.3vw,86px)}.building-table td:nth-child(n+9):nth-child(-n+13){text-align:center}.building-table th:nth-child(9),.building-table td:nth-child(9){border-left:1px solid #edf1ef}.building-table th:nth-child(14){width:88px}.building-table strong{color:#29443a}.full-name{color:#284b40;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.property-badge{color:#376a56;font-size:inherit;background:#e9f2ed;border-radius:10px;padding:3px 8px;display:inline-block}.property-badge.shop{color:#9b6c21;background:#f8efdc}.relationship-link{color:#326a53;cursor:pointer;min-width:28px;height:28px;font-size:inherit;background:0 0;border:1px solid #0000;border-radius:7px;padding:0 8px;font-weight:400}.relationship-link:hover{background:var(--app-bg-neutral);border-color:#cfe0d7}.relationship-link.matched{color:#205d45;background:#e4f0ea;border-color:#b9d2c6}.column-sort{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.column-sort:hover,.column-sort.active{color:#326a53}.building-empty{color:#929e99;place-items:center;height:160px;font-size:14px;display:grid}.building-pagination{color:#7c8984;border-top:1px solid #e8ecea;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:8px 24px;font-size:11px;display:flex}.relationship-mask{z-index:45;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10291f73;justify-content:flex-end;display:flex;position:fixed;inset:0}.relationship-drawer{background:var(--app-bg-neutral);width:540px;height:100%;overflow:auto;box-shadow:-20px 0 60px #102a2138}.relationship-drawer>header{z-index:1;background:#fff;border-bottom:1px solid #dfe6e2;justify-content:space-between;align-items:center;height:76px;padding:0 20px;display:flex;position:sticky;top:0}.relationship-drawer header span,.relationship-drawer header strong{display:block}.relationship-drawer header span{color:#89958f;font-size:9px}.relationship-drawer header strong{color:#203b31;margin-top:3px;font-size:17px}.relationship-drawer header button{background:var(--app-bg-neutral);color:#687a73;cursor:pointer;border:0;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.relationship-body{padding:14px 16px 28px}.basic-info-notice{color:#587066;background:#eaf3ee;border:1px solid #d6e5dd;border-radius:9px;margin-bottom:11px;padding:10px 12px;font-size:9px;line-height:15px}.relationship-body>section{background:#fff;border:1px solid #dfe6e2;border-radius:11px;margin-bottom:11px;padding:0 14px 12px}.relationship-body h3{color:#2e6b52;border-bottom:1px solid #e9eeeb;align-items:center;gap:8px;height:44px;margin:0;font-size:12px;display:flex}.relationship-body dl{margin:0}.relationship-body dl>div{grid-template-columns:var(--detail-label-width) minmax(0, 1fr);align-items:start;gap:var(--detail-label-gap);border-bottom:1px solid #edf1ef;min-height:39px;padding-block:10px;font-size:10px;display:grid}.relationship-body dl>div:last-child{border:0}.relationship-body dt,.relationship-body dd{margin:0;font-size:10px}.relationship-body dt{color:#7b8983}.relationship-body dd{color:#334a41;text-align:left;overflow-wrap:anywhere;min-width:0;font-weight:550}.relationship-body article{background:#fdfaf7;border:1px solid #e7ddd4;border-radius:8px;margin-top:10px;padding:11px}.relationship-body article>div{align-items:center;gap:7px;display:flex}.relationship-body article>div strong{color:#34483f;font-size:11px}.relationship-body article>div span{color:#89958f;font-size:9px}.relationship-body article>div b{color:#ad503e;background:#f7e7e3;border-radius:7px;margin-left:auto;padding:3px 6px;font-size:8px}.relationship-body article p{color:#66766f;margin:7px 0 0;font-size:9px;line-height:15px}.relationship-body article footer{border-top:1px solid #ece4de;gap:4px;margin-top:9px;padding-top:8px;display:grid}.relationship-body article footer span{color:#47705f;font-size:8px}.relationship-none{color:#9aa4a0;margin:13px 0 2px;font-size:10px}.relation-user-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:10px;display:grid}.relation-user-card{background:var(--app-bg-neutral);border:1px solid #e0e7e3;border-radius:9px;padding:11px}.relation-user-card>strong{color:#2e473d;font-size:12px}.relation-user-card>span:not(.person-cell){color:#426a59;background:#e6f0eb;border-radius:8px;margin-left:7px;padding:3px 7px;font-size:8px}.relation-user-card dl{border-top:1px solid #e5ebe8;margin-top:8px}.relation-user-card dl>div{min-height:30px}.historical-tenants{gap:7px;padding-top:10px;display:grid}.historical-tenants>span{background:var(--app-bg-neutral);border-radius:7px;justify-content:space-between;padding:9px 10px;display:flex}.historical-tenants b{color:#40564d;font-size:10px}.historical-tenants em{color:#84918c;font-size:9px;font-style:normal}@media (width<=1250px){.building-metrics{grid-template-columns:repeat(2,1fr)}.hierarchy-columns{grid-template-columns:1fr 1fr}.hierarchy-column:nth-child(2){border-right:0}.hierarchy-column:nth-child(-n+2){border-bottom:1px solid #edf0ee}.building-search{width:min(100%,300px)}.building-filters{flex-wrap:wrap;flex:1}.building-filters select{width:92px}.building-filters select:last-child{width:82px}.result-count{margin-left:0}.building-table{min-width:1120px}}@media (width<=760px){.building-metrics{grid-template-columns:1fr}.building-toolbar{align-items:stretch}.building-search,.building-filters{width:100%}.building-filters select{flex:1;min-width:76px}.result-count{text-align:right;width:100%}}.identity-page{flex-direction:column;min-height:calc(100vh - 136px);display:flex}.identity-metrics{flex:none;margin-bottom:16px}.identity-panel{border-radius:12px;flex-direction:column;flex:1;min-height:0;display:flex;box-shadow:0 5px 20px #193d3008}.identity-toolbar{background:#fff;border-bottom:1px solid #e9eeeb;flex-wrap:wrap;flex:none;align-items:center;gap:12px;min-height:64px;padding:16px 24px;display:flex}.identity-toolbar .identity-search{flex:none;width:340px;max-width:100%}.identity-toolbar .ant-select{flex-shrink:0}.identity-result{background:var(--app-bg-neutral);color:#6f7e78;white-space:nowrap;border-radius:12px;margin-left:auto;padding:5px 9px;font-size:10px}.identity-table-wrap{flex:1;min-height:0;margin:12px 24px 0;overflow:auto}.identity-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:1616px;font-size:14px}.identity-table th,.identity-table td{border-bottom:1px solid #eef1ef}.identity-table tbody tr:last-child td{border-bottom:0}.identity-table th{background:var(--app-bg-neutral);color:#7d8c86;text-align:left;height:43px;font-size:12px;font-weight:600}.identity-table td{color:#5c6c66;height:64px;transition:background .15s}.identity-table th,.identity-table td{white-space:nowrap;text-overflow:ellipsis;padding:0 11px;overflow:hidden}.identity-table tbody tr:hover td{background:var(--app-bg-neutral)}.identity-table th:first-child{width:52px}.identity-table th:nth-child(2){width:192px}.identity-table th:nth-child(3){width:136px}.identity-table th:nth-child(4){width:120px}.identity-table th:nth-child(5){width:136px}.identity-table th:nth-child(6){width:160px}.identity-table th:nth-child(7){width:128px}.identity-table th:nth-child(8){width:102px}.identity-table th:nth-child(9){width:128px}.identity-table th:nth-child(10){width:118px}.identity-table th:nth-child(11){width:92px}.identity-table th:nth-child(12){width:124px}.identity-table th:nth-child(13){width:92px}.identity-name{color:#243d34;font-size:12px;font-weight:600}.identity-mobile{color:#4d625a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.identity-group{background:var(--app-bg-neutral);color:#4d685e;border-radius:9px;padding:3px 7px;font-size:9px;display:inline-block}.identity-kind{color:#435a51;font-size:10px}.identity-kind em{color:#8c9a94;margin-left:4px;font-size:9px;font-style:normal}.identity-room{background:var(--app-bg-neutral);color:#345b4c;border-radius:6px;padding:4px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.verification-status{border-radius:12px;align-items:center;gap:4px;padding:5px 8px;font-size:9px;font-weight:600;display:inline-flex}.verification-status.passed{color:#246e50;background:#e4f2ea}.verification-status.pending{color:#93691c;background:#f8eed7}.verification-status.failed{color:#b34e3b;background:#f8e6e2}.verification-status.ended{color:#6d7c76;background:var(--app-bg-neutral)}.verification-status em{color:#7d8c86;margin-left:3px;font-size:8px;font-style:normal;font-weight:400}.document-icons{gap:5px;display:flex}.document-icons button{cursor:pointer;border:1px solid #0000;border-radius:8px;place-items:center;width:28px;height:28px;padding:0;transition:transform .15s,border-color .15s,background .15s;display:grid}.document-icons button.present{color:#286a50;background:#e8f3ed;border-color:#d5e8de}.document-icons button.present:hover{background:#dcece4;border-color:#91b8a5;transform:translateY(-1px)}.document-icons button.missing{color:#a5aeaa;background:var(--app-bg-neutral);cursor:not-allowed;border-color:#e7eae8}.document-none{color:#a0aaa6;font-size:10px}.expiry-cell strong,.expiry-cell span,.submitted-cell strong,.submitted-cell span{display:block}.submitted-cell strong{color:#4d625a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:500}.submitted-cell span{color:#8c9a94;margin-top:3px;font-size:9px}.expiry-cell strong{color:#455a52;font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.expiry-cell span{background:var(--app-bg-neutral);color:#7b8984;border-radius:6px;width:fit-content;margin-top:4px;padding:2px 5px;font-size:8px}.expiry-cell.expired strong{color:#ad4b39}.expiry-cell.expired span{color:#b64f3c;background:#f8e8e4}.expiry-cell.expiring strong{color:#97691c}.expiry-cell.expiring span{color:#a87722;background:#f8efd9}.owner-count{color:#53675f;align-items:center;gap:5px;font-size:10px;display:flex}.owner-count svg{color:#70867d}.owner-count b{color:#725a93;background:#eee9f5;border-radius:7px;padding:2px 5px;font-size:8px;font-weight:600}.identity-none{color:#a0aaa6}.history-owner-button{color:#71588f;cursor:pointer;background:#f4f0f8;border:1px solid #ddd5e7;border-radius:7px;align-items:center;gap:5px;height:27px;padding:0 8px;font-size:9px;display:inline-flex}.history-owner-button:hover{background:#eee7f5;border-color:#b9a8cc}.identity-table :is(.identity-name,.identity-mobile,.identity-group,.identity-kind,.identity-room,.verification-status,.document-none,.owner-count,.history-owner-button),.identity-table :is(.submitted-cell,.expiry-cell)>strong{font-size:inherit}.identity-table .verification-status{font-weight:400}.identity-table :is(.identity-kind em,.verification-status em,.submitted-cell>span,.expiry-cell>span,.property-owners-cell small){font-size:12px}.identity-empty{color:#929e99;place-items:center;height:180px;font-size:14px;display:grid}.identity-pagination{color:#7c8984;border-top:1px solid #e8ecea;flex:none;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:8px 24px;font-size:11px;display:flex}.identity-mask{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10291f73;justify-content:flex-end;display:flex;position:fixed;inset:0}.identity-drawer{background:var(--app-bg-neutral);flex-direction:column;width:590px;height:100%;display:flex;box-shadow:-20px 0 60px #102a2138}.drawer-head{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffe;border-bottom:1px solid #dfe6e2;flex:none;justify-content:space-between;align-items:center;height:78px;padding:0 20px;display:flex}.drawer-title{align-items:center;gap:11px;display:flex}.drawer-title>i{color:#2b6b51;background:#e4f0ea;border-radius:10px;place-items:center;width:38px;height:38px;font-style:normal;display:grid}.drawer-head span,.drawer-head strong{display:block}.drawer-head span{color:#88958f;font-size:9px}.drawer-head strong{color:#203b31;margin-top:3px;font-size:17px}.drawer-head button{background:var(--app-bg-neutral);color:#687a73;cursor:pointer;border:0;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.drawer-head button:hover{color:#304a40;background:#e3eae6}.drawer-scroll{flex:1;min-height:0;overflow:auto}.drawer-body{padding:12px 16px 30px}.detail-section{background:#fff;border:1px solid #dfe6e2;border-radius:11px;margin-bottom:10px;padding:0 14px 8px;box-shadow:0 3px 12px #193d3006}.detail-section-head{color:#377058;border-bottom:1px solid #e9eeeb;align-items:center;gap:8px;height:44px;display:flex}.detail-section-head strong{color:#263f35;font-size:12px}.detail-section-head em{color:#8c9a94;margin-left:auto;font-size:9px;font-style:normal}.detail-section-extra{margin-left:auto}.detail-row{grid-template-columns:var(--detail-label-width) minmax(0, 1fr);align-items:start;gap:var(--detail-label-gap);border-bottom:1px solid #edf1ef;min-height:40px;padding-block:10px;font-size:10px;display:grid}.detail-row:last-child{border:0}.detail-row>span{color:#7a8983;font-size:10px}.detail-row b{color:#30473e;text-align:left;white-space:normal;overflow-wrap:anywhere;min-width:0;font-size:10px;font-weight:550}.detail-row b.success{color:#277052}.detail-row b.warning{color:#9d6d1f}.detail-row b.danger{color:#b24d3a}.detail-row b.muted{color:#99a49f;font-weight:400}.owners-detail{grid-template-columns:var(--detail-label-width) minmax(0, 1fr);align-items:baseline;gap:var(--detail-label-gap);border-bottom:1px solid #edf1ef;min-height:40px;padding:6px 0;font-size:10px;display:grid}.owners-detail>span{color:#7a8983;flex-shrink:0;font-size:10px}.owners-detail>div{overflow-wrap:anywhere;flex-wrap:wrap;justify-content:flex-start;gap:6px;min-width:0;display:flex}.owners-detail b{background:var(--app-bg-neutral);color:#3b5b4f;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:550}.owners-detail i{color:#26654c;background:#d9e9e0;border-radius:6px;margin-left:5px;padding:2px 5px;font-size:8px;font-style:normal}.owners-detail em{color:#9aa5a0;font-size:10px;font-style:normal}.detail-section>.review-form{border-bottom:1px solid #edf1ef;padding-bottom:12px}.owner-history-list{gap:8px;padding:10px 0 3px;display:grid}.owner-history-list article{background:#fdfaf7;border:1px solid #eadfd5;border-radius:9px;padding:11px}.owner-history-head{justify-content:space-between;align-items:center;display:flex}.owner-history-head span b,.owner-history-head span em{display:block}.owner-history-head span b{color:#34483f;font-size:11px}.owner-history-head span em{color:#8b9691;margin-top:3px;font-size:9px;font-style:normal}.owner-history-head>i{color:#af513f;background:#f7e7e3;border-radius:8px;padding:3px 7px;font-size:8px;font-style:normal}.owner-history-list dl{border-top:1px solid #eee5de;margin:9px 0 0}.owner-history-list dl>div{border-bottom:1px solid #eee5de;grid-template-columns:62px 1fr;gap:8px;padding:7px 0;display:grid}.owner-history-list dl>div:last-child{border-bottom:0}.owner-history-list dt,.owner-history-list dd{margin:0;font-size:9px;line-height:15px}.owner-history-list dt{color:#8a9691}.owner-history-list dd{color:#506059}.review-note{padding:10px 0 4px}.review-note>span{color:#7a8983;font-size:10px}.review-note p{background:var(--app-bg-neutral);color:#50625b;border-radius:7px;margin:6px 0 0;padding:9px 10px;font-size:10px;line-height:16px}.review-form{gap:10px;padding:12px 0 6px;font-size:11px;line-height:1.5;display:grid}.review-form input[type=text],.review-form input[type=date],.review-form textarea{color:#2d4039;background:#fff;border:1px solid #d8dfdc;border-radius:7px;outline:none;width:100%;padding:9px 11px;font-size:11px}.review-form input:focus,.review-form textarea:focus{border-color:#4c7d6b;box-shadow:0 0 0 3px #36705a12}.review-form textarea{resize:vertical;min-height:68px;line-height:17px}.review-form .field>span{color:#7a8983;margin-bottom:6px;font-size:10px;display:block}.review-form .expiry-input{align-items:center;gap:12px;display:flex}.review-form .expiry-input .identity-expiry-picker{cursor:pointer;border-color:#d8dfdc;border-radius:7px;flex:1;min-width:0;padding:9px 11px}.review-form .identity-expiry-picker .ant-picker-input>input{box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:0;padding:0;font-size:11px;line-height:1.5}.review-form .identity-expiry-picker input:focus{box-shadow:none}.review-form .identity-expiry-picker.ant-picker-disabled input{cursor:not-allowed}.review-form .expiry-input input[type=date]:disabled{background:var(--app-bg-neutral);color:#a0aaa6}.review-form .expiry-input label{color:#3b5b4f;white-space:nowrap;cursor:pointer;align-items:center;gap:4px;font-size:11px;display:inline-flex}.review-form .expiry-input input[type=checkbox]{accent-color:#1f5545;margin:0}.review-form .owner-tags{flex-wrap:wrap;gap:6px;display:flex}.review-form .owner-tags b{background:var(--app-bg-neutral);color:#3b5b4f;border-radius:7px;align-items:center;gap:6px;padding:5px 7px;font-size:10px;font-weight:550;display:inline-flex}.review-form .owner-tags b button{color:#7d8c86;cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.review-form .owner-tags b button:hover{color:#b24d3a}.drawer-actions{background:#fff;border-top:1px solid #dfe6e2;flex:none;justify-content:flex-end;gap:9px;padding:14px 20px;display:flex}.drawer-actions button{cursor:pointer;border-radius:7px;align-items:center;gap:6px;height:36px;padding:0 15px;font-size:12px;display:inline-flex}.drawer-actions button:disabled{opacity:.6;cursor:default}.drawer-actions .reject{color:#b24d3a;background:#fff;border:1px solid #e2c6bf}.drawer-actions .reject:hover:not(:disabled){background:#fdf4f2;border-color:#c98d7d}.drawer-actions .approve{color:#fff;background:#1f5545;border:0;box-shadow:0 3px 10px #1f554521}.drawer-actions .approve:hover:not(:disabled){background:#256350}.drawer-actions .plain{color:#32624f;background:#fff;border:1px solid #d4e0da}.drawer-actions .plain:hover:not(:disabled){background:var(--app-bg-neutral);border-color:#8eac9e}.document-preview-state{color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:200px;font-size:13px;display:flex}.property-owners-cell{white-space:normal;overflow-wrap:anywhere;max-width:160px}.property-owners-cell>span,.property-owners-cell small{margin-top:4px;display:block}.property-owners-cell small{font-size:10px}.property-recognition-note{max-width:38em;margin:12px 0;font-size:11px;line-height:1.6}.property-owner-hint{max-width:38em;font-size:11px;line-height:1.6}.review-form .field select{background:var(--app-bg-neutral);width:100%;max-width:100%;color:inherit;font:inherit;border:1px solid;border-radius:8px;padding:8px 12px}.login-page{color:#fff;background-color:#142220;background-position:50%;background-size:cover;flex-direction:column;min-width:1120px;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-shade{background:linear-gradient(100deg,#142220e0 0%,#142220a8 40%,#1422204d 100%),linear-gradient(#0000 52%,#14222080);position:absolute;inset:0}.login-page:after{content:"";pointer-events:none;background:radial-gradient(circle at 26% 40%,#d8a83f24,#0000 32%);position:absolute;inset:0}.login-brand{z-index:2;align-items:center;gap:12px;display:flex;position:absolute;top:48px;left:80px}.login-brand>span{color:#163d31;background:#d8a83f;border-radius:12px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 8px 24px #071b1457}.login-brand strong,.login-brand small{display:block}.login-brand strong{letter-spacing:2px;font-size:18px}.login-brand small{color:#a7b3b0;letter-spacing:1px;margin-top:4px;font-size:11px}.login-stage{z-index:2;flex:1;justify-content:space-between;align-items:center;gap:48px;width:100%;padding-block:128px 32px;padding-inline:80px calc(48px + max(0px,50% - 720px));display:flex;position:relative}.login-intro{max-width:480px}.login-intro>span{color:#dabe68;letter-spacing:4px;font-size:11px}.login-intro h1{letter-spacing:3px;text-shadow:0 3px 18px #06191366;margin:16px 0;font:48px/1.28 Georgia,Noto Sans SC}.login-intro p{color:#d5dedb;margin:0;font-size:14px;line-height:24px}.login-location{color:#f0f5f2;align-items:center;gap:8px;margin-top:24px;display:flex}.login-location i{border:1px solid #dfbe62;border-radius:50% 50% 50% 0;width:18px;height:18px;position:relative;transform:rotate(-45deg)}.login-location i:after{content:"";background:#dfbe62;border-radius:50%;width:5px;height:5px;position:absolute;top:6px;left:6px}.login-location b{letter-spacing:1px;font-size:12px;font-weight:500}.login-values{align-items:center;gap:32px;display:flex}.login-values>div{color:#dabe68;align-items:center;gap:8px;display:flex}.login-values b,.login-values small{display:block}.login-values b{color:#fff;font-size:12px;font-weight:500}.login-values small{color:#a7b3b0;margin-top:2px;font-size:11px}.login-card{color:#1b2624;background:#fff;border-radius:16px;flex:none;width:480px;padding:40px;box-shadow:0 24px 64px #0818144d}.login-welcome{text-align:center}.login-welcome>span{color:#ae822b;letter-spacing:1px;font-size:12px}.login-welcome h2{color:#1b2624;margin:8px 0 4px;font:400 28px/1.3 Georgia,Noto Sans SC}.login-welcome p{color:#899590;margin:0;font-size:12px}.login-tabs{margin-top:24px}.login-tabs .ant-tabs-nav{margin-bottom:24px}.login-tabs .ant-tabs-nav-list{width:100%}.login-tabs .ant-tabs-tab{flex:1;justify-content:center;margin:0}.login-tabs .ant-tabs-tab+.ant-tabs-tab{margin:0}.login-card .login-form .ant-form-item .ant-form-item-label>label{color:#53655e;height:auto;font-size:12px;display:flex}.wechat-login{text-align:center;padding-top:4px}.qr-placeholder{width:180px;height:180px}.qr-status{border-radius:inherit;background:#fffffff5;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.qr-status>strong{color:#1f5b45;font-size:18px}.qr-status>span{color:#66736e;font-size:13px}.qr-shell{background:#fff;width:206px;height:206px;margin:0 auto 16px;padding:13px;position:relative}.wechat-qr{object-fit:contain;width:180px;height:180px;display:block}.wechat-login>strong{color:#2b4038;font-size:13px;display:block}.wechat-login>p{color:#8d9894;margin:4px 0 0;font-size:12px}.wechat-login .test-login-button{height:44px;margin-top:20px}.login-footer{z-index:2;color:#b4c0bd;flex-direction:column;gap:32px;width:100%;padding:16px 80px 32px;font-size:12px;display:flex;position:relative}.login-footer-bottom{justify-content:space-between;align-items:baseline;gap:32px;line-height:20px;display:flex}.login-copyright{white-space:nowrap;align-items:baseline;gap:8px;display:inline-flex}@media (width<=1250px){.login-brand{top:40px;left:48px}.login-stage{gap:32px;padding-block:112px 24px;padding-inline-start:48px}.login-intro h1{font-size:40px}.login-values{gap:24px}.login-footer{padding:16px 48px 24px}}.position-presets{border:1px solid #dfe6e2;border-radius:8px;overflow:hidden}.organization-dialog .ant-modal-body{max-height:calc(100dvh - 190px);padding-right:4px;overflow-y:auto}.position-preset-list{flex-direction:column;gap:10px;max-height:330px;padding:14px;display:flex;overflow-y:auto}.position-preset-row,.position-preset-head{grid-template-columns:28px minmax(120px,1fr) minmax(150px,1fr) 32px;align-items:center;gap:10px;display:grid}.position-presets.is-linear .position-preset-row,.position-presets.is-linear .position-preset-head{grid-template-columns:28px minmax(120px,1fr) 32px}.position-preset-row{position:relative}.position-preset-row.is-dragging{opacity:.45}.position-preset-row.drop-before:before,.position-preset-row.drop-after:after{content:"";background:var(--ant-color-primary,#215e49);pointer-events:none;height:2px;position:absolute;left:0;right:0}.position-preset-row.drop-before:before{top:-6px}.position-preset-row.drop-after:after{bottom:-6px}.position-preset-head{color:#73827b;padding:10px 14px 0;font-size:12px}.position-preset-row .ant-select{width:100%;min-width:0}.position-preset-footer{background:#fafcfb;border-top:1px solid #edf1ef;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.organization-chart-modal .ant-modal-container{flex-direction:column;height:calc(100dvh - 96px);display:flex}.organization-chart-modal .ant-modal-header{flex:none}.organization-chart-modal .ant-modal-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.organization-chart-toolbar{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px 16px;padding-bottom:12px;display:flex}.organization-chart-scale{font-variant-numeric:tabular-nums;min-width:66px}.organization-chart-viewport,.organization-chart-loading{background:#fafcfb;border:1px solid #e6ece8;border-radius:8px;flex:1;min-height:0}.organization-chart-loading{place-items:center;display:grid}.organization-chart-viewport{overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;outline:none;position:relative;overflow:hidden}.organization-chart-viewport:focus-visible{box-shadow:inset 0 0 0 2px #8ab7a3}.organization-chart-viewport.is-panning{cursor:grabbing}.organization-chart{text-align:center;box-sizing:border-box;transform-origin:0 0;will-change:transform;width:max-content;padding:24px;position:absolute;top:0;left:0}.organization-chart-help{color:#829087;text-align:center;flex:none;padding-top:10px;font-size:12px}@media (height<=640px),(width<=640px){.organization-chart-modal .ant-modal-container{height:calc(100dvh - 32px)}}.organization-chart-root{color:#fff;background:#215e49;border-radius:8px;padding:14px 30px;font-weight:600;display:inline-block}.organization-chart ul{justify-content:center;width:max-content;min-width:100%;margin:0;padding:28px 0 0;list-style:none;display:flex;position:relative}.organization-chart ul:before{content:"";border-left:1px solid #afc6b9;height:28px;position:absolute;top:0;left:50%}.organization-chart li{flex-direction:column;align-items:center;padding:24px 12px 0;display:flex;position:relative}.organization-chart li:before,.organization-chart li:after{content:"";border-top:1px solid #afc6b9;width:50%;height:24px;position:absolute;top:0}.organization-chart li:before{right:50%}.organization-chart li:after{border-left:1px solid #afc6b9;left:50%}.organization-chart li:first-child:before,.organization-chart li:last-child:after{border-top:0}.organization-position-node{text-align:left;background:#fff;border:1px solid #bed2c7;border-radius:8px;width:184px;overflow:hidden}.organization-position-title{color:#225d47;background:#edf5f0;justify-content:space-between;align-items:baseline;gap:8px;padding:10px 12px;font-weight:600;display:flex}.organization-position-title span{white-space:nowrap;font-size:11px;font-weight:400}.organization-position-members{flex-wrap:wrap;gap:6px 12px;padding:10px 12px;font-size:12px;display:flex}.organization-position-members small,.organization-position-vacant{color:#829087}.organization-chart-unassigned{color:#65796e;border-top:1px dashed #cfdbd4;max-width:720px;margin:28px auto 0;padding-top:16px;font-size:12px}.organization-chart-unassigned div{flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-top:10px;display:flex}.position-member-link.ant-btn{height:auto;font-size:inherit;padding:0}.position-drag-handle.ant-btn{cursor:grab;color:#829087}.position-drag-handle.ant-btn:active{cursor:grabbing}.position-drag-handle.ant-btn:disabled{cursor:not-allowed}.position-row-dragging>td{opacity:.45}.position-drop-before>td{box-shadow:inset 0 2px var(--ant-color-primary,#215e49)}.position-drop-after>td{box-shadow:inset 0 -2px var(--ant-color-primary,#215e49)}.admin-picker-option{justify-content:space-between;align-items:center;gap:12px;padding:4px 0;display:flex}.position-presets.has-departments .position-preset-head,.position-presets.has-departments .position-preset-row{grid-template-columns:28px minmax(120px,1fr) minmax(120px,1fr) minmax(100px,1fr) 28px}.position-presets.has-departments.is-linear .position-preset-head,.position-presets.has-departments.is-linear .position-preset-row{grid-template-columns:28px minmax(120px,1fr) minmax(140px,1fr) 28px}.organization-department-layout{grid-template-columns:224px minmax(0,1fr);align-items:start;gap:16px;display:grid}.organization-department-sidebar{background:#fff;border:1px solid #e6ece8;border-radius:10px;padding:12px}.organization-department-heading{justify-content:space-between;align-items:center;padding:0 4px 12px;display:flex}.organization-department-option{text-align:left;width:100%;font:inherit;color:#42594c;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin:2px 0;padding:11px 12px;display:flex}.organization-department-option span{overflow-wrap:anywhere}.organization-department-option small{color:#829087;flex:none}.organization-department-option:hover{background:#f7f9f8}.organization-department-option.is-active{color:#215e49;background:#edf5f0;font-weight:600}.organization-department-option:disabled{cursor:wait;opacity:.6}.organization-department-hint{padding:12px 6px 0;font-size:12px}.organization-department-content{min-width:0}.organization-department-node{color:#215e49;background:#e3f0e9;border:1px solid #8ab7a3;border-radius:8px;align-items:center;gap:16px;padding:13px 18px;display:flex}.organization-department-node span{font-size:12px}@media (width<=900px){.organization-department-layout{grid-template-columns:1fr}}.meeting-datetime{position:relative}.meeting-calendar-button{color:#66847a;cursor:pointer;background:0 0;border:0;padding:2px 0 2px 8px}.meeting-calendar-anchor{opacity:0;pointer-events:none;width:100%;height:100%;top:0;left:0;position:absolute!important}.meeting-rich-editor{background:#fff;border:1px solid #d9e2de;border-radius:9px;overflow:hidden}.meeting-rich-editor:focus-within{border-color:#28735c;box-shadow:0 0 0 2px #28735c12}.meeting-rich-toolbar{background:#f5f8f6;border-bottom:1px solid #e4ebe7;flex-wrap:wrap;gap:4px;padding:7px 10px;display:flex}.meeting-rich-content{overflow-wrap:anywhere;white-space:normal;font-size:14px;line-height:1.8}.meeting-rich-content p,.meeting-rich-content div{margin:0 0 8px}.meeting-rich-content ul,.meeting-rich-content ol{margin:8px 0;padding-left:24px;list-style-position:outside}.meeting-rich-content ul{list-style-type:disc}.meeting-rich-content ol{list-style-type:decimal}.meeting-rich-content h2{margin:12px 0 8px;font-size:20px}.meeting-rich-content h3{margin:10px 0 6px;font-size:17px}.meeting-rich-content blockquote{color:#61756c;border-left:3px solid #a6bfb3;margin:8px 0;padding-left:14px}.meeting-rich-content table{border-collapse:collapse;max-width:100%}.meeting-rich-content td,.meeting-rich-content th{border:1px solid #d9e2de;padding:6px 10px}.meeting-rich-input{outline:0;min-height:190px;padding:12px 14px}.meeting-rich-input:empty:before{content:attr(data-placeholder);color:#a3aaa7;pointer-events:none}.meeting-rich-count{text-align:right;color:#91a099;padding:3px 12px 7px;font-size:12px}.meeting-rich-count.over-limit{color:#c14633}.meeting-attachments{flex-direction:column;gap:12px;display:flex}.meeting-attachment-section{background:#fbfcfb;border:1px solid #dfe7e2;border-radius:10px;outline:none;padding:14px}.meeting-attachment-section[data-attachment-scope=public]{background:#fff}.meeting-attachment-section:focus{border-color:#28735c}.meeting-attachment-heading{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.meeting-attachment-heading>span:last-child{color:#8a9790;margin-left:auto;font-size:12px}.meeting-attachment-files{flex-wrap:wrap;gap:12px;display:flex}.meeting-file-tile{flex-direction:column;gap:3px;width:104px;display:flex}.meeting-upload-button{cursor:pointer;color:#41765e;border:1px dashed #bdcec5;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:104px;height:104px;font-size:12px;display:flex;position:relative}.meeting-upload-button>.anticon{font-size:24px}.meeting-upload-button:hover{background:#edf6f0;border-color:#28735c}.meeting-upload-button input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.meeting-attachment-help{color:#8a9790;margin:0;font-size:12px;line-height:1.6}.meeting-publication{background:#f1f7f3;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:12px 16px;display:flex}.meeting-publication-copy{flex-direction:column;flex:1;align-items:flex-start;gap:4px;min-width:0;display:flex}.meeting-publication-copy label{cursor:pointer;font-size:14px;line-height:22px}.meeting-publication-copy .ant-typography{font-size:12px;line-height:20px}.meeting-publication>.ant-switch{flex-shrink:0}.meeting-modal-surface{position:relative}.meeting-modal-surface.is-dragging .ant-modal-content{outline-offset:4px;outline:2px dashed #28735c}.meeting-drop-hint{color:#fff;pointer-events:none;z-index:10;white-space:nowrap;background:#205f49;border-radius:8px;padding:12px 24px;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #143b2926}.meeting-person-option{align-items:center;gap:10px;width:100%;min-width:0;padding:3px 0;display:flex}.meeting-person-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.meeting-person-tags{flex-shrink:0;justify-content:flex-end;align-items:center;gap:4px;margin-left:auto;display:flex}.meeting-person-tags .ant-tag{text-overflow:ellipsis;white-space:nowrap;max-width:170px;margin-inline-end:0;overflow:hidden}.meeting-people-summary{justify-content:space-between;align-items:center;gap:4px;min-height:28px;font-size:12px;display:flex}.meeting-people-summary .ant-typography,.meeting-people-summary .ant-btn{font-size:12px}.meeting-selected-panel{width:min(380px,100vw - 64px)}.meeting-selected-heading{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.meeting-selected-list{overscroll-behavior:contain;max-height:264px;margin-top:8px;overflow-y:auto}.meeting-selected-row{border-bottom:1px solid #f0f3f1;align-items:center;gap:6px;padding:5px 0;display:flex}.meeting-selected-row .meeting-person-option{flex:1}.meeting-selected-row>.ant-btn{flex:none}.meeting-people-select .ant-select-selection-overflow{flex-wrap:nowrap}.meeting-hidden-people{color:#24624e;font:inherit;cursor:pointer;background:0 0;border:0;padding:0 2px}.meeting-hidden-people:hover{text-decoration:underline}.meeting-rich-content{font-synthesis:style}.meeting-datetime-fields{border:1px solid var(--ant-color-border,#d9e2de);background:#fff;border-radius:8px;align-items:center;gap:2px;min-width:0;min-height:36px;padding:3px 9px;transition:border-color .2s,box-shadow .2s;display:flex}.meeting-datetime-fields:hover{border-color:#65927f}.meeting-datetime-fields:focus-within{border-color:#28735c;box-shadow:0 0 0 2px #28735c12}.meeting-time-segment{color:#8a9790;flex-shrink:0;align-items:center;gap:1px;font-size:14px;line-height:22px;display:flex}.meeting-time-segment.is-hour{margin-left:5px}.meeting-time-segment input{box-sizing:content-box;width:2.2ch;height:22px;color:var(--ant-color-text,#34463f);font:inherit;font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:0;border-radius:3px;outline:0;padding:0 1px}.meeting-time-segment.is-year input{width:4.2ch}.meeting-time-segment input:focus{background:#eaf3ed}.meeting-time-segment input::placeholder{color:#bcc5c0}.meeting-datetime-fields .meeting-calendar-button{flex-shrink:0;justify-content:center;align-items:center;height:22px;margin-left:auto;padding:0 0 0 7px;font-size:15px;line-height:1;display:inline-flex}.ant-form-item-has-error .meeting-datetime-fields{border-color:var(--ant-color-error,#c14633)}.ant-form-item-has-error .meeting-datetime-fields:focus-within{box-shadow:0 0 0 2px #c1463312}.meeting-attachment-files{align-items:flex-start}.meeting-file-tile{flex:0 0 104px;min-width:0}.meeting-file-tile>.attachment-tile{flex:0 0 104px;width:104px;height:104px;min-height:104px;max-height:104px}.meeting-file-tile .attachment-tile-image{object-fit:contain;background:#f4f6f5}.meeting-upload-button{box-sizing:border-box;flex:0 0 104px}.meeting-file-tile[draggable=true]{cursor:grab}.meeting-file-tile.is-moving{opacity:.45}.meeting-attachment-section.is-drop-target{outline-offset:-2px;background:#edf6f0;border-color:#28735c;outline:2px dashed #28735c}.meeting-attachment-section.is-drop-target .meeting-attachment-heading>span:last-child{color:#24624e;font-weight:600}.meeting-record-modal .ant-form-item{margin-bottom:24px}.meeting-record-modal .meeting-rich-input{min-height:240px;max-height:400px;padding:16px;overflow-y:auto}.meeting-rich-content img{vertical-align:middle;max-width:100%;height:auto;display:inline-block}.meeting-rich-content [data-upload-placeholder]{background:var(--ant-color-fill-tertiary);border-radius:4px;padding:8px 12px;display:inline-block}.meeting-record-modal .meeting-attachments{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.meeting-record-modal .meeting-attachment-section{border-radius:8px;min-width:0;padding:16px}.meeting-record-modal .meeting-attachment-heading{gap:8px;min-height:24px}.meeting-attachment-paste{margin-bottom:16px;resize:none!important}.meeting-record-modal .meeting-attachment-help{grid-column:1/-1}.meeting-record-modal .meeting-publication{border-radius:8px;margin-top:24px}.meeting-record-modal .meeting-rich-toolbar{padding:8px 12px}.meeting-record-modal .meeting-rich-editor{border-radius:8px}@media (width<=768px){.meeting-record-modal .meeting-attachments{grid-template-columns:minmax(0,1fr)}.meeting-record-modal .meeting-rich-input{min-height:200px}}.meeting-record-modal .meeting-datetime-fields{box-sizing:border-box;height:36px}.ant-modal-wrap .meeting-record-modal{max-width:calc(100vw - 32px)}.meeting-rich-image-strip{flex-wrap:wrap;gap:12px;padding:12px 16px 0;display:flex}.meeting-rich-thumbnail{flex:0 0 104px;width:104px;height:104px;position:relative}.meeting-record-modal .meeting-rich-image-strip~.meeting-rich-input{min-height:128px}.meeting-rich-thumbnail.is-dragging{opacity:.4}.meeting-rich-thumbnail.is-dragging .attachment-tile-mask{cursor:grabbing}.meeting-rich-thumbnail.is-drop-before:before,.meeting-rich-thumbnail.is-drop-after:after{content:"";background:var(--ant-color-primary);pointer-events:none;border-radius:2px;width:4px;position:absolute;top:0;bottom:0}.meeting-rich-thumbnail.is-drop-before:before{left:-8px}.meeting-rich-thumbnail.is-drop-after:after{right:-8px}.meeting-list .ant-table-thead>tr>th,.meeting-list .ant-table-tbody>tr>td{padding:16px}.task-list .ant-table{font-size:12px}.task-list .ant-table-thead>tr>th,.task-list .ant-table-tbody>tr>td{padding:10px 12px;font-size:12px}.task-list .ant-pro-table-list-toolbar-container{min-height:56px;padding-block:8px 16px}.task-assignees{overflow-wrap:anywhere;line-height:1.7}.task-assignees>span{display:inline-block}.meeting-attendance-count{font-variant-numeric:tabular-nums;min-width:32px;padding-inline:8px}.meeting-attendance-roster{width:256px;max-width:calc(100vw - 48px);max-height:288px;overflow-y:auto}.meeting-attendance-roster ul{margin:0;padding:0;list-style:none}.meeting-attendance-roster li{border-bottom:1px solid var(--ant-color-border-secondary);justify-content:space-between;gap:16px;padding:8px 0;display:flex}.meeting-attendance-roster li:last-child{border-bottom:0}.meeting-attendance-roster li>span{overflow-wrap:anywhere}.meeting-attendance-roster li>.ant-typography{text-align:right}.meeting-attendance-roster>.ant-typography{margin:8px 0 0}.task-progress-summary{flex-direction:column;width:100%;max-width:88px;display:flex}.task-progress-summary[tabindex]{cursor:pointer;border-radius:4px}.task-progress-summary:focus-visible{outline:2px solid var(--ant-color-primary);outline-offset:4px}.task-progress-details{width:336px;max-width:calc(100vw - 48px);max-height:320px;margin:0;padding:0;list-style:none;overflow-y:auto}.task-progress-details li{border-bottom:1px solid var(--ant-color-border-secondary);padding:12px 0}.task-progress-details li:last-child{border-bottom:0}.task-progress-person{justify-content:space-between;gap:16px;display:flex}.task-progress-person>:last-child{flex-shrink:0}.task-progress-work{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:4px}.ant-modal-wrap .task-record-modal{max-width:calc(100vw - 32px)}.task-record-modal .ant-form-item{margin-bottom:24px}.task-record-modal .meeting-rich-editor{border-radius:8px}.task-record-modal .meeting-rich-toolbar{padding:8px 12px}.task-record-modal .meeting-rich-input{min-height:176px;max-height:320px;padding:16px;overflow-y:auto}.task-record-modal .meeting-rich-image-strip~.meeting-rich-input{min-height:104px}.task-form-section{border:1px solid var(--ant-color-border-secondary);background:var(--ant-color-fill-quaternary);border-radius:8px;margin-bottom:24px;padding:16px}.task-form-section-title{margin-bottom:16px;font-weight:600}.task-record-modal .task-assignment-row .ant-form-item{margin-bottom:16px}.task-assignment-row .ant-btn{width:100%;padding-inline:0}.task-statistics-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.meeting-detail .ant-drawer-body{background:#f5f7f6}.meeting-detail-sections{gap:16px;min-width:0;display:grid}.meeting-detail-sections>.ant-card{border-radius:10px;min-width:0}.meeting-detail-sections>.ant-card>.ant-card-head{min-height:48px;padding-inline:20px}.meeting-detail-sections>.ant-card>.ant-card-body{padding:20px}.meeting-detail .ant-descriptions-item-content{overflow-wrap:anywhere}.meeting-detail-attendance{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.meeting-detail-attendance-group{background:#f5f8f6;border-radius:8px;padding:14px}.meeting-detail-attendance-heading{color:#65736e;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.meeting-detail-attendance-heading strong{color:#287352;font-variant-numeric:tabular-nums;font-size:22px}.meeting-detail-attendance-heading small{color:#82908b;font-size:12px;font-weight:400}.meeting-detail-people{flex-wrap:wrap;gap:6px;display:flex}.meeting-detail-people .ant-tag{background:#fff;margin:0}.meeting-detail-guests{margin-top:16px}.meeting-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (width<=600px){.meeting-detail .ant-drawer-body{padding:16px}.meeting-detail-attendance{grid-template-columns:minmax(0,1fr)}}@media (width<=1024px){.task-statistics-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=768px){.task-statistics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.meeting-rich-editor{position:relative}.meeting-rich-editor.is-dragging{border-color:var(--ant-color-primary)}.meeting-rich-drop-hint{z-index:3;border:2px dashed var(--ant-color-primary);color:var(--ant-color-primary);pointer-events:none;background:#ffffffe6;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex;position:absolute;inset:0}.rich-view-images{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.rich-view-images>.attachment-tile{flex:0 0 96px}.app-shell .content:has(.roster-card){padding-bottom:24px}.roster-board .ant-table-body{height:var(--roster-body-height)}.roster-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.roster-legend{flex-wrap:wrap;gap:10px 20px;margin-bottom:16px;font-size:12px;display:flex}.roster-legend>span{align-items:center;gap:6px;display:inline-flex}.roster-legend small{color:var(--ant-color-text-secondary);font-size:11px}.roster-legend i{border:1px solid;border-radius:3px;width:12px;height:12px}.roster-board .ant-table-cell{padding:6px 4px!important}.roster-board .ant-table-tbody>tr>td{border-right:1px solid var(--ant-color-border-secondary);vertical-align:top}.roster-person{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 12px;display:flex}.roster-person>.ant-typography{font-size:12px}.roster-name{align-items:center;gap:5px;min-width:0;max-width:100%;display:inline-flex}.roster-name>:last-child{overflow-wrap:anywhere;min-width:0}.roster-name .user-avatar{background:var(--ant-color-primary-bg);color:var(--ant-color-primary);flex:none}.roster-person .ant-space{margin-top:8px}.roster-person .ant-btn{padding-inline:0;font-size:14px}.roster-compact .roster-person{gap:0;padding:2px 8px}.roster-compact .roster-person .ant-space{margin-top:0}.roster-compact .roster-person .ant-btn{font-size:14px}.roster-date{flex-direction:column;gap:2px;line-height:1.4;display:flex}.roster-date strong{font-size:15px}.roster-date>span{color:var(--ant-color-text-secondary);font-size:11px;font-weight:400}.roster-date small{color:#247453;margin-left:4px;font-size:10px;display:inline-block}.roster-weekend .roster-date>span{color:#a66a21}.roster-board th.roster-today{background:#eaf4ef!important}.roster-day-cell{border:1px solid #0000;border-radius:6px;overflow:hidden}.roster-day-cell.roster-changed{background:#fff8e9;border-color:#db981f}.roster-cell-heading{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;gap:1px;height:64px;display:flex}.roster-cell-heading .ant-select{width:100%;font-size:14px}.roster-cell-heading .ant-select-content{text-align:center}.roster-cell-heading .roster-add-select{background:var(--ant-color-primary-bg);border-color:var(--ant-color-primary-border-hover)}.roster-cell-heading .roster-add-select .ant-select-placeholder,.roster-cell-heading .roster-add-select .ant-select-suffix{color:var(--ant-color-primary);font-weight:400}.roster-cell-heading .roster-add-select:hover{border-color:var(--ant-color-primary)}.roster-cell-heading>small{-webkit-line-clamp:2;color:var(--ant-color-text-secondary);white-space:normal;-webkit-box-orient:vertical;padding:0 2px;font-size:12px;line-height:16px;display:-webkit-box;overflow:hidden}.roster-cell-heading>small.roster-template-source{color:#705497}.roster-read-value{font-size:14px;font-weight:400;line-height:24px}.roster-axis{color:var(--ant-color-text-secondary);border:1px solid #0000;font-size:14px}.roster-time-axis,.roster-track{height:160px}.roster-time-axis>div{border-top:1px solid var(--ant-color-border-secondary);flex-direction:column;justify-content:center;align-items:center;height:25%;line-height:16px;display:flex}.roster-time-axis small{font-size:12px}.roster-track{background:repeating-linear-gradient(#f3f5f8 0 1px,#0000 1px 40px),linear-gradient(#f8f9fc 0 25%,#fffdf6 25% 50%,#f8fbf8 50% 75%,#f8f9fc 75%);position:relative}.roster-block{z-index:1;box-sizing:border-box;border:1px solid;border-radius:4px;justify-content:center;align-items:center;width:90%;font-size:14px;display:flex;position:absolute;left:5%;overflow:hidden}.roster-block>span{text-overflow:ellipsis;white-space:nowrap;padding:0 3px;overflow:hidden}.roster-block-template{border-style:dashed}.roster-color-green{color:#216540;background:#dcefe3;border-color:#84bfa0!important}.roster-color-blue{color:#285f95;background:#deecfa;border-color:#8eb6dc!important}.roster-color-purple{color:#725090;background:#eee5f6;border-color:#baa2d0!important}.roster-color-orange{color:#8b5c1c;background:#fbecd8;border-color:#dec091!important}.roster-color-teal{color:#236b66;background:#dbf0ef;border-color:#8bbfba!important}.roster-color-rose{color:#913e5d;background:#f7e2e9;border-color:#d6a0b2!important}.roster-track-empty{color:#8c929b;font-size:14px;position:absolute;inset:42% 0 auto}.roster-empty-action{border:1px dashed var(--ant-color-primary-border-hover);color:var(--ant-color-primary);cursor:pointer;background:#e8f3ed80;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:8px 2px;display:flex;position:absolute;inset:6px}.roster-empty-action strong{font-size:14px;font-weight:400}.roster-empty-action span{background:var(--ant-color-bg-container);border-radius:4px;padding:3px 7px;font-size:14px;font-weight:400}.roster-empty-action:hover{border-color:var(--ant-color-primary);background:var(--ant-color-primary-bg)}.roster-empty-action:focus-visible{outline:2px solid var(--ant-color-primary);outline-offset:1px}.roster-legend-template{background:#f6f2f9;border-style:dashed!important;border-color:#8f839c!important}.roster-legend-changed{background:#fff8e9;border-color:#db981f!important}.roster-help.ant-typography{margin:14px 0 0;font-size:12px}.roster-coverage-navigation{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:14px;display:flex}.roster-coverage-navigation>.ant-typography{font-size:12px}.roster-coverage-date{align-items:center;padding-block:2px}.roster-date>.roster-coverage-day-count{color:var(--ant-color-primary);font-weight:500}.roster-coverage-axis{flex-direction:column;gap:4px;padding:10px 8px;display:flex}.roster-coverage-axis>span{color:var(--ant-color-text-secondary);font-size:12px}.roster-coverage-cell{flex-direction:column;gap:7px;min-height:102px;padding:4px;display:flex}.roster-coverage-count{color:var(--ant-color-text-secondary);font-size:14px}.roster-coverage-count strong{color:var(--ant-color-text)}.roster-coverage-cell-header{justify-content:space-between;align-items:center;gap:4px;display:flex}.roster-coverage-add.ant-btn{height:20px;padding:0 2px;font-size:14px}.roster-coverage-person{text-align:left;width:100%;font-family:inherit;line-height:inherit;border:1px solid;border-radius:6px;position:relative}.roster-coverage-person-main{border-radius:inherit;width:100%;color:inherit;text-align:inherit;font:inherit;background:0 0;border:0;padding:7px 8px;display:block}.roster-coverage-person-main:enabled,.roster-coverage-status-person:enabled{cursor:pointer}.roster-coverage-status-person:enabled:hover{box-shadow:0 0 0 1px}.roster-coverage-person:has(.roster-coverage-person-main:enabled):hover{box-shadow:0 0 0 1px}.roster-coverage-person-main:focus-visible,.roster-coverage-status-person:focus-visible{outline:2px solid var(--ant-color-primary);outline-offset:2px}.roster-coverage-remove{z-index:2;border:1px solid var(--ant-color-error-border);background:var(--ant-color-bg-container);width:24px;height:24px;color:var(--ant-color-error);cursor:pointer;opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .12s;display:flex;position:absolute;top:-7px;right:-5px;box-shadow:0 1px 3px #00000014}.roster-coverage-person:hover .roster-coverage-remove,.roster-coverage-person:focus-within .roster-coverage-remove{opacity:1;pointer-events:auto}.roster-coverage-remove:hover{background:var(--ant-color-error-bg)}.roster-coverage-remove:focus-visible{outline:2px solid var(--ant-color-error);outline-offset:2px}@media (hover:none),(pointer:coarse){.roster-coverage-remove{opacity:1;pointer-events:auto}}.roster-coverage-person.roster-block-template{border-style:dashed}.roster-coverage-person-name{overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:2px 6px;display:flex}.roster-coverage-person-name strong{font-size:14px}.roster-coverage-person-name>span{font-size:12px}.roster-coverage-person-time{flex-wrap:wrap;gap:2px 6px;margin-top:3px;font-size:12px;display:flex}.roster-coverage-person-time>span{font-size:12px}.roster-coverage-person.roster-coverage-pending{box-shadow:0 0 0 1px #db981f;border-color:#db981f!important}.roster-coverage-gap{color:var(--ant-color-text-secondary);font-size:12px;line-height:1.5}.roster-coverage-empty{color:var(--ant-color-text-tertiary);font-size:14px}.roster-coverage-cell>.roster-coverage-empty{margin:auto}.roster-coverage-statuses{flex-direction:column;gap:12px;padding:8px 4px;display:flex}.roster-coverage-status{font-size:14px}.roster-coverage-status>strong{color:var(--ant-color-text-secondary);font-weight:400}.roster-coverage-status>div{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.roster-coverage-status-person{border:1px solid var(--ant-color-border-secondary);background:var(--ant-color-fill-quaternary);overflow-wrap:anywhere;font:inherit;color:inherit;text-align:left;border-radius:4px;padding:2px 5px}.roster-coverage-status-person.roster-coverage-status-pending{background:#fff8e9;border-color:#db981f}.roster-coverage-status-toggle.ant-btn{height:auto;margin-top:5px;padding:0;font-size:14px}.roster-coverage-editor{flex-direction:column;gap:18px;display:flex}.roster-coverage-editor>.ant-typography{font-size:12px}.roster-coverage-editor-field{flex-direction:column;gap:7px;display:flex}.roster-coverage-editor-field>label{font-weight:500}.roster-coverage-editor-field>.ant-typography-secondary{font-size:12px}.roster-coverage-person-option{flex-direction:column;gap:3px;display:flex}.roster-coverage-person-option small{color:var(--ant-color-text-secondary);font-size:11px}.roster-coverage-edit-preview{border:1px solid var(--ant-color-border-secondary);border-radius:8px;flex-direction:column;gap:10px;max-height:180px;padding:12px;display:flex;overflow-y:auto}.roster-coverage-edit-preview>div{flex-direction:column;gap:4px;font-size:12px;display:flex}.roster-coverage-removal{flex-direction:column;gap:14px;display:flex}.roster-coverage-removal .ant-radio-group{flex-direction:column;gap:8px;display:flex}.roster-coverage-removal-detail{background:var(--ant-color-fill-quaternary);border-radius:8px;flex-direction:column;gap:7px;padding:12px;font-size:13px;display:flex}.roster-coverage-removal>.ant-typography{font-size:12px}.roster-import-content{flex-direction:column;gap:16px;max-height:calc(100dvh - 200px);display:flex;overflow-y:auto}.roster-import-download{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.roster-import-rules.ant-typography{margin:0;font-size:12px;line-height:1.7}.roster-import-summary{flex-direction:column;gap:10px;display:flex}.roster-import-summary>div:first-child{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.roster-import-summary .ant-space{color:var(--ant-color-text-secondary);font-size:12px}.roster-import-summary .ant-tag{margin-inline-end:0}.roster-import-shift{flex-direction:column;gap:2px;display:flex}.roster-import-shift small{color:var(--ant-color-text-secondary);font-size:12px}.roster-import-file{overflow-wrap:anywhere;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:0 12px;display:flex}.roster-import-file>.ant-typography:last-child{width:100%;font-size:12px}.roster-import-reading{color:var(--ant-color-text-secondary);padding:20px}.roster-import-errors{max-height:100px;font-size:12px;overflow-y:auto}@media (width<=900px){.roster-card>.ant-card-head>.ant-card-head-wrapper{flex-wrap:wrap;gap:12px;padding-block:12px}.roster-card .ant-card-extra{margin-inline-start:0}}.property-settings{flex-direction:column;gap:16px;display:flex}.property-settings-toolbar{z-index:5;min-height:calc(var(--ant-control-height,36px) + 24px);background:var(--app-bg-neutral);justify-content:space-between;align-items:center;gap:16px;margin-top:-12px;padding:12px 0;display:flex;position:sticky;top:-24px}.property-settings-label{align-items:center;gap:6px;display:inline-flex}.property-settings-help{color:var(--ant-color-text-tertiary,#82908b);cursor:help;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:2px;font-size:14px;line-height:1;display:inline-flex}.property-settings-help:hover,.property-settings-help:focus-visible{color:var(--ant-color-primary,#1f5b45)}.property-settings-help:focus-visible{outline:2px solid var(--ant-color-primary-border,#b6d8c8);outline-offset:2px}@media (width<=768px){.property-settings-toolbar{top:-16px}}.meeting-signature-pad{width:100%;margin:0}.meeting-signature-modal .ant-modal-header{margin-bottom:12px}.signature-letter.ant-btn{width:44px;height:40px;color:var(--ant-color-text-tertiary);border-color:var(--ant-color-border);padding:0;font-size:18px}.signature-letter.ant-btn.is-complete{color:var(--ant-color-primary);border-color:var(--ant-color-primary-border);background:var(--ant-color-primary-bg)}.signature-letter.ant-btn.is-current{color:var(--ant-color-text-light-solid);border-color:var(--ant-color-primary);background:var(--ant-color-primary)}.signature-letters{margin:16px 0}.signature-writing{aspect-ratio:1;border:1px solid;border-radius:16px;width:100%;max-width:360px;margin:0 auto;position:relative;overflow:hidden}.signature-guide{pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font:280px/1 KaiTi,STKaiti,serif;display:flex;position:absolute;inset:0}.signature-writing .signature-ink{touch-action:none;cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.signature-actions{justify-content:center;margin-top:24px;display:flex}.signature-preview{background:#fff;border-radius:8px;width:100%;max-width:480px;height:160px;margin:24px 0;display:block}.meeting-signature-image{object-fit:contain;object-position:left center;background:#fff;width:240px;max-width:100%;height:80px;display:block}.meeting-signature-row{padding:12px 0}.meeting-signature-row+.meeting-signature-row{border-top:1px solid var(--ant-color-border-secondary)}@media (width<=375px){.signature-guide{font-size:224px}}.proposal-signing-modal .attachment-pdf-preview{height:60vh;min-height:280px}.proposal-signing-modal .attachment-pdf-pages{background:#f1f3f5;border-radius:8px;gap:20px;padding:20px}.proposal-signing-modal .attachment-pdf-pages canvas{box-shadow:0 3px 14px #1e302a17}.proposal-signing-modal .attachment-pdf-count{text-align:center;padding:8px;font-size:12px}.proposal-document-loading{background:#f1f3f5;border-radius:8px;place-items:center;height:40vh;display:grid}.proposal-document-attachments{max-height:100px;margin-top:8px;overflow:auto}.task-scope-tabs>.ant-tabs-nav{margin:-8px 0 20px}.task-todo-summary{align-items:baseline;gap:16px;padding-block:2px;display:flex}.task-todo-summary strong{color:#26312d;font-size:18px;font-weight:600}.task-todo-summary>span{color:#bd5b45;font-size:13px}.task-title-cell{white-space:normal;overflow-wrap:anywhere;gap:4px;display:grid}.task-title-cell .ant-typography{font-size:12px;line-height:1.45}.task-relations{flex-wrap:wrap;gap:4px;display:flex}.task-relations:empty{display:none}.task-relations>span{color:#597067;background:#f1f5f3;border-radius:4px;padding:1px 6px;font-size:12px}.task-title-cell .task-creator{align-items:center;gap:4px;min-width:0;font-size:12px;display:flex}.task-my-work{white-space:nowrap;align-items:center;gap:6px;min-width:0;display:flex}.task-my-todo{color:#926416;font-weight:400}.task-my-status{color:#75817b}.task-my-work-text{color:#56645e;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.task-assignee-avatars{white-space:nowrap;vertical-align:middle;align-items:center;gap:4px;max-width:100%;display:inline-flex;overflow:hidden}.task-assignee-avatars:focus-visible{outline:2px solid var(--ant-color-primary);outline-offset:3px;border-radius:4px}.task-assignee-avatar{flex:0 0 24px;display:inline-flex}.task-assignee-overflow{color:#65756e;background:#edf3f0;border-radius:50%;flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;line-height:24px;display:inline-flex}.task-assignee-roster{gap:10px;min-width:180px;max-height:280px;display:grid;overflow-y:auto}.task-list .ant-table-tbody>tr>td{padding-block:16px}.task-row-actions{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:12px;display:flex}.task-row-actions>.ant-btn{flex-shrink:0}.task-action-context{background:#f5f7f6;border-radius:6px;margin-bottom:20px;padding:12px 16px}.task-action-context p{color:#65726b;white-space:pre-wrap;margin:8px 0 0}.activity-layout{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:16px;display:grid}.activity-feed{background:#fff;border:1px solid #e3e8e5;border-radius:12px;min-width:0;padding:8px 24px 24px}.activity-empty{justify-content:center;padding:48px 0;display:flex}.activity-more{justify-content:center;padding-top:16px;display:flex}.activity-day-title{background:#fff;border-bottom:1px solid #edf1ef;align-items:baseline;gap:8px;padding:16px 0 8px;display:flex}.activity-day-title strong{color:#1d2a26;font-size:15px;font-weight:600}.activity-day-title span{color:#65736e;font-size:13px}.activity-card{border-bottom:1px solid #f0f3f1;gap:12px;padding:16px 0;display:flex}.activity-day .activity-card:last-child{border-bottom:0}.activity-card-main{flex:1;min-width:0}.activity-card-head{flex-wrap:wrap;align-items:baseline;gap:8px;min-height:32px;line-height:32px;display:flex}.activity-card-head strong{color:#1d2a26;font-size:14px;font-weight:600}.activity-card-meta{color:#82908b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.activity-avatar{flex:none;font-weight:600}.activity-avatar.user{color:#287352;background:#e8f3ed}.activity-avatar.system{color:#b67e21;background:#f9f0db}.activity-avatar.auto,.activity-avatar.guest{background:var(--app-bg-neutral);color:#65736e}.activity-item{padding:8px 0 0}.activity-item-head{align-items:baseline;gap:8px;min-width:0;font-size:14px;line-height:22px;display:flex}.activity-verb{flex:none;font-weight:600}.activity-verb.create{color:#287352}.activity-verb.update{color:#4c87ad}.activity-verb.delete{color:#bf5c48}.activity-verb.export{color:#b67e21}.activity-count{color:#1d2a26;flex:none}.activity-table{color:#65736e;flex:none}.activity-title{text-overflow:ellipsis;white-space:normal;overflow-wrap:anywhere;color:#1d2a26;min-width:0;overflow:hidden}button.activity-title{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.activity-title.link:hover{color:#287352;text-decoration:underline}.activity-time{color:#82908b;font-variant-numeric:tabular-nums;flex:none;margin-left:auto;padding-left:16px;font-size:12px}.activity-changes{background:var(--app-bg-neutral);border-radius:8px;width:100%;margin-top:4px;padding:8px 12px}.activity-change{flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:13px;line-height:20px;display:flex}.activity-change+.activity-change{margin-top:4px}.activity-change-label{color:#65736e;flex:none}.activity-change-label:after{content:"："}.activity-change-before{color:#82908b;word-break:break-all;-webkit-text-decoration:line-through #c4cbc8;text-decoration:line-through #c4cbc8}.activity-change-arrow{color:#b0bab6}.activity-change-after{color:#1d2a26;word-break:break-all}.activity-batch{margin-top:4px}.activity-batch-list{border-left:2px solid #e8ecea;margin-top:4px;padding-left:12px}.activity-batch-row{padding:4px 0;font-size:13px}.activity-batch-row .activity-changes{background:0 0;padding:0}.activity-filters{background:#fff;border:1px solid #e3e8e5;border-radius:12px;flex-direction:column;gap:16px;padding:24px;display:flex;position:sticky;top:0}.activity-filters-title{color:#1d2a26;font-size:15px;font-weight:600}.activity-filter{flex-direction:column;gap:8px;display:flex}.activity-filter>span{color:#65736e;font-size:12px}.record-activity-empty{padding:16px 0;font-size:13px;display:block}.record-activity-list{flex-direction:column;gap:16px;display:flex}.record-activity-item{gap:8px;display:flex}.record-activity-main{flex:1;min-width:0}.record-activity-meta{align-items:baseline;gap:8px;font-size:13px;line-height:24px;display:flex}.record-activity-meta strong{color:#1d2a26;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.record-activity-meta time{color:#82908b;font-variant-numeric:tabular-nums;flex:none;margin-left:auto;font-size:12px}.record-activity-source{color:#82908b;font-size:12px;line-height:20px}.record-activity .activity-changes{padding:8px}.record-activity .activity-change{font-size:12px}.record-activity-drawer-title{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.activity-feed-heading{border-bottom:1px solid #e8ecea;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.activity-feed-heading strong{color:#243d34;font-size:16px}.activity-feed-heading>span,.activity-day-title .activity-day-count{color:#82908b;font-size:12px}.activity-day-count{margin-left:auto}.activity-day-title{padding-block:16px}.activity-card{padding-block:20px}.activity-card-meta{white-space:normal;line-height:20px}.activity-item{background:var(--app-bg-neutral);border-radius:8px;margin-top:8px;padding:12px 16px}.activity-item+.activity-item{margin-top:8px}.activity-item-head{flex-wrap:wrap;row-gap:8px}.activity-verb{background:var(--app-bg-neutral);border-radius:4px;padding:0 8px;font-size:12px}.activity-verb.create{background:#e8f3ed}.activity-verb.update{background:#edf4f8}.activity-verb.delete{background:#f9ece9}.activity-verb.export{background:#f9f0db}.activity-table{font-size:12px}.activity-title{flex:1;min-width:120px;line-height:1.6}.activity-time{align-self:baseline;padding-left:8px}.activity-changes-disclosure{margin-top:8px}.activity-changes-disclosure>summary{cursor:pointer;color:#65736e;width:fit-content;padding-block:4px;font-size:12px}.activity-changes-disclosure>summary:hover{color:#287352}.activity-changes{background:#fff;border:1px solid #edf1ef;margin-top:8px;padding:12px}.activity-change{align-items:baseline;gap:4px 8px}.activity-change+.activity-change{border-top:1px solid #edf1ef;margin-top:8px;padding-top:8px}.activity-change-label{min-width:80px;font-size:12px}.activity-change-before,.activity-change-after{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}.activity-change-before{color:#82908b}.activity-change-after{font-weight:500}.activity-filters{padding:20px}@media (width<=1024px){.activity-layout{grid-template-columns:minmax(0,1fr)}.activity-filters{grid-row:1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:static}.activity-filters-title{grid-column:1/-1}}.app-shell .content:has([role=tabpanel][aria-hidden=false]>.permission-page){padding-top:0}.permission-page{width:100%;max-width:1440px;padding-top:24px}.permission-layout{background:linear-gradient(to right, var(--app-bg-neutral) 219px, #e5ebe8 219px 220px, #fff 220px);border:1px solid #e0e7e4;border-radius:12px;grid-template-columns:220px 1fr;min-height:580px;display:grid;overflow:clip}.permission-layout>aside{max-height:calc(100dvh - var(--app-header-height,64px));background:var(--app-bg-neutral);border-right:1px solid #e5ebe8;align-self:start;min-width:0;position:sticky;top:0;overflow:auto}.permission-layout>aside>header{color:#24463a;border-bottom:1px solid #e3e9e6;justify-content:space-between;align-items:center;height:54px;padding:0 16px;font-size:12px;font-weight:600;display:flex}.permission-layout>aside>header span{color:#87958f;font-weight:400}.permission-layout>aside button{color:#5e7169;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:42px;padding:8px 16px;font-size:12px;display:flex}.permission-layout>aside button:hover{background:var(--app-bg-neutral)}.permission-layout>aside button.active{color:#175f46;background:#e4f0ea;font-weight:600;box-shadow:inset 3px 0 #257052}.permission-layout>aside button>span:not(.person-cell){color:#8b9892;white-space:nowrap;font-size:10px;font-weight:400}.permission-layout>aside button.active>span:not(.person-cell){color:#43705c}.permission-layout>aside .aside-empty{color:#9aa5a0;text-align:center;padding:28px 16px;font-size:11px}.permission-layout>main{flex-direction:column;min-width:0;display:flex}.permission-layout>main>header{z-index:1;background:#fff;border-bottom:1px solid #e6ebe8;justify-content:space-between;align-items:center;gap:16px;min-height:70px;padding:12px 20px;display:flex;position:sticky;top:0}.permission-layout>main>header strong,.permission-layout>main>header span{display:block}.permission-layout>main>header strong{color:#224035;font-size:16px}.permission-layout>main>header span{color:#89968f;margin-top:3px;font-size:11px}.permission-actions{flex:none;gap:8px;display:flex}.permission-actions button{cursor:pointer;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:12px;display:flex}.permission-actions button:disabled{opacity:.5;cursor:default}.permission-actions .ghost{color:#3e534c;background:#fff;border:1px solid #d6dfdb}.permission-actions .ghost:hover:not(:disabled){background:var(--app-bg-neutral);border-color:#8ca79d}.permission-actions .primary{color:#fff;background:#175c45;border:0}.permission-actions .primary:hover:not(:disabled){background:#1d6d53}.permission-body{flex:1;min-height:0;overflow:auto}.permission-notice{color:#8b6b2e;background:#fff7e8;border-radius:8px;margin:16px 20px 0;padding:11px 12px;font-size:11px;line-height:17px}.permission-notice.info{background:var(--app-bg-neutral);color:#4c6a5e}.permission-matrix-tools{border-bottom:1px solid var(--permission-border);justify-content:flex-end;align-items:center;gap:16px;padding:12px 20px;display:flex}.permission-matrix-tools>button{color:var(--permission-primary);cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:11px}.permission-matrix-tools>button:disabled{color:var(--permission-muted);cursor:default}.permission-module{border-bottom:1px solid var(--permission-border);padding:0 20px}.permission-module:last-child{border-bottom:0}.module-head{align-items:center;gap:24px;min-height:56px;display:flex}.module-fold{cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-self:stretch;align-items:center;gap:12px;min-width:0;padding:12px 0;display:flex}.module-fold>.anticon{color:var(--permission-muted);font-size:11px}.module-fold strong{color:var(--permission-ink);font-size:15px;font-weight:600}.module-fold em,.permission-group-head em{color:var(--permission-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px;font-style:normal}.permission-selection{cursor:pointer;align-items:center;gap:8px;display:inline-flex;position:relative}.permission-selection.locked{cursor:default}.module-head>.permission-selection{color:var(--permission-secondary);font-size:11px}.permission-module-content{padding-bottom:20px}.permission-module-content[hidden]{display:none}.permission-group.nested{margin-left:8px;padding:4px 0 4px 20px}.permission-group.nested+.permission-group{margin-top:16px}.permission-group-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.permission-group-head.collapsed{margin-bottom:0}.permission-group-fold{padding:4px 0}.permission-group-fold strong{color:var(--permission-secondary);font-size:13px}.permission-group-head>.permission-selection{color:var(--permission-secondary);font-size:11px}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.menu-grid[hidden]{display:none}.menu-grid label{cursor:pointer;border:1px solid #e0e7e4;border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:8px 12px;display:flex;position:relative}.menu-grid label:hover{border-color:#b9cdc4}.menu-grid label.checked{background:var(--app-bg-neutral);border-color:#b9d2c6}.menu-grid label.locked{background:var(--app-bg-neutral);cursor:not-allowed}.menu-grid label>span{min-width:0;color:var(--permission-ink);overflow-wrap:anywhere;font-size:11px}.menu-grid label.restricted>span{color:#b67e21}.menu-grid b{white-space:nowrap;border-radius:6px;margin-left:auto;padding:2px 6px;font-size:9px;font-weight:600}.menu-grid b.granted{color:#256a4e;background:#e4f1ea}.menu-grid b.revoked{color:#9a6c1d;background:#f8efd9}.permission-layout input[type=checkbox]{opacity:0;width:20px;height:20px;cursor:inherit;margin:0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.menu-grid input[type=checkbox]{left:12px}.permission-layout label:focus-within .permission-check{outline:2px solid var(--permission-primary);outline-offset:2px}.permission-check{color:#fff;background:#fff;border:1px solid #cbd7d1;border-radius:4px;flex:none;place-items:center;width:20px;height:20px;font-size:10px;font-style:normal;line-height:1;display:grid}.permission-check.on{background:#1f6a4f;border-color:#1f6a4f}.permission-check.part{color:#1f6a4f;background:#fff;border-color:#1f6a4f}.permission-check.off.locked,.permission-check.on.locked{opacity:.45}.permission-note{color:#8b6b2e;margin:0;padding:12px 20px 16px;font-size:11px;line-height:18px}.permission-note i{color:#b67e21;font-style:normal}.permission-empty{color:#9aa5a0;text-align:center;padding:60px 20px;font-size:12px}.permission-scope{align-items:center;gap:10px;margin-bottom:12px;display:flex}@media (width<=1024px){.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.permission-page{padding-top:16px}.permission-layout{background:var(--app-bg-neutral);grid-template-columns:160px minmax(0,1fr)}.permission-layout>main{background:#fff}.menu-grid{grid-template-columns:minmax(0,1fr)}.permission-module{padding:0 16px}.permission-group.nested{margin-left:0;padding-left:12px}.module-head{gap:12px}.module-fold{flex-wrap:wrap;gap:8px}}.icp-filing-link{color:inherit;white-space:nowrap;font-size:12px;line-height:20px;text-decoration:none}.icp-filing-link:hover{color:inherit;text-decoration:underline}.icp-filing-link:focus-visible{outline-offset:4px;border-radius:2px;outline:2px solid}:root{--app-bg-neutral:#f5f5f5;color:#1d2a26;background:var(--app-bg-neutral);font-synthesis:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,PingFang SC,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}.brand{border-bottom:1px solid #ffffff16;align-items:center;gap:11px;height:64px;padding:0 10px;display:flex}.brand-mark{color:#173a31;background:#d8a83f;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.brand strong{letter-spacing:1px;font-size:16px;display:block}.brand span{color:#9ab5ad;margin-top:3px;font-size:11px;display:block}.side-bottom{color:#9fbbb2;border-top:1px solid #ffffff16;align-items:center;gap:8px;height:62px;margin-top:auto;padding:0 11px;font-size:12px;display:flex}.side-bottom i{background:#55bd84;border-radius:50%;width:7px;height:7px;margin-left:auto;box-shadow:0 0 0 3px #55bd8422}.account strong,.account span{display:block}.account strong{font-size:12px}.account span{color:#87938f;margin-top:2px;font-size:10px}.content{width:100%;min-width:1134px;padding:24px 40px 48px}.ant-layout .app-sider{color:#fff}.app-sider .ant-layout-sider-children{flex-direction:column;height:100%;display:flex}.app-menu.ant-menu-inline .ant-menu-item-selected{box-shadow:inset 3px 0 #d8a83f}.app-menu .ant-menu-item-group-title{letter-spacing:2px;padding:0 12px 8px}.app-menu .ant-menu-item .anticon,.app-menu .ant-menu-item svg{flex:none}.app-menu{scrollbar-width:none}.app-menu::-webkit-scrollbar{width:0;height:0}.todo-tab-label{align-items:center;gap:8px;display:inline-flex}.app-menu.ant-menu-inline.ant-menu-root .ant-menu-item>.ant-menu-title-content-with-extra{overflow:visible}input::placeholder,textarea::placeholder,.ant-select .ant-select-placeholder,.ant-select .ant-select-selection-placeholder{font-weight:400}:root{--detail-label-width:5em;--detail-label-gap:8px}.ant-descriptions:not(.ant-descriptions-bordered)>.ant-descriptions-view>table{width:100%}.ant-descriptions:not(.ant-descriptions-bordered)>.ant-descriptions-view>table>tbody>.ant-descriptions-row>.ant-descriptions-item:not(:last-child){padding-inline-end:48px}.ant-descriptions:not(.ant-descriptions-bordered) .ant-descriptions-item-container:has(>.ant-descriptions-item-label):has(>.ant-descriptions-item-content){grid-template-columns:var(--detail-label-width) minmax(0, 1fr);column-gap:var(--detail-label-gap);align-items:start;display:grid}.ant-descriptions:not(.ant-descriptions-bordered) .ant-descriptions-item-container>.ant-descriptions-item-label,.ant-descriptions:not(.ant-descriptions-bordered) .ant-descriptions-item-container>.ant-descriptions-item-content{overflow-wrap:anywhere;text-align:start;min-width:0;display:block}.ant-descriptions:not(.ant-descriptions-bordered) .ant-descriptions-item-container>.ant-descriptions-item-label:after{display:none}.proposal-detail-meta.ant-descriptions{--detail-label-gap:8px}.proposal-detail-meta.ant-descriptions .ant-descriptions-row:not(:last-child)>.ant-descriptions-item{padding-bottom:12px}.ant-modal-wrap{display:flex}.ant-modal-wrap .ant-modal{margin:auto;padding-bottom:0;top:0}.ant-modal-wrap,.ant-modal-body{scrollbar-width:none}.ant-modal-wrap::-webkit-scrollbar{width:0;height:0}.ant-modal-body::-webkit-scrollbar{width:0;height:0}.ant-card .ant-card-head{height:auto;min-height:56px;padding-block:16px}.ant-card .ant-card-head-wrapper{gap:16px}.ant-card .ant-card-head-title{white-space:normal;line-height:1.5;overflow:visible}.ant-card-head-title>.ant-space{row-gap:6px!important}.ant-card .ant-card-extra{flex-shrink:0}.ant-pro-table .ant-pro-table-list-toolbar-container{flex-wrap:wrap;gap:12px;height:auto;min-height:64px}.ant-pro-table .ant-pro-table-list-toolbar-title{white-space:normal;line-height:1.6}.proposal-list.ant-pro-table .ant-pro-table-list-toolbar-container{flex-flow:row;align-items:flex-start;gap:16px}.proposal-list .ant-pro-table-list-toolbar-left{flex:1 1 0;min-width:0;max-width:none}.proposal-list .ant-pro-table-list-toolbar-title{width:100%;min-width:0}.proposal-list .ant-pro-table-list-toolbar-right{flex-wrap:nowrap;flex:none;align-self:flex-start}.proposal-filters{flex-wrap:wrap;align-items:center;gap:12px;width:100%;min-width:0;display:flex}.proposal-filters>*{flex-shrink:0;max-width:100%}.proposal-summary{min-width:0;display:grid}.proposal-summary>.ant-typography{width:100%}.ant-card-body>.ant-tabs-top:first-child>.ant-tabs-nav .ant-tabs-tab{padding-top:0}.ant-card-body>.ant-tabs-top:first-child>.ant-tabs-nav{align-items:flex-start}.ant-card-body>.ant-pro-table:first-child>.ant-pro-card:first-child>.ant-pro-card-body>.ant-pro-table-list-toolbar:first-child>.ant-pro-table-list-toolbar-container{min-height:48px;padding-top:0}.ant-table-wrapper:not(.ant-table-bordered) .ant-table:not(.ant-table-bordered) .ant-table-tbody>tr:last-child>td{border-bottom:0}.table-action-fixed{z-index:1;background:#fff;position:sticky;right:0;box-shadow:-1px 0 #e8ecea}th.table-action-fixed{z-index:2;background:var(--app-bg-neutral)}*{scrollbar-width:thin;scrollbar-color:#d3dcd7 transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background:#d3dcd7;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#afbeb6}@supports selector(::-webkit-scrollbar){*{scrollbar-width:auto;scrollbar-color:auto}}.ant-table-wrapper .ant-table-sticky-scroll{background:0 0;border:0;height:6px!important}.ant-table-wrapper .ant-table-sticky-scroll-bar{background:#d3dcd7;height:6px}.content-notice-list .ant-pro-table-list-toolbar-left{flex:640px;min-width:0}.content-notice-list .ant-pro-table-list-toolbar-title{width:100%}.content-notice-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.content-notice-keyword{width:260px;max-width:100%}.content-notice-status{width:140px}.content-notice-range{width:280px;max-width:100%}.content-list .content-summary{white-space:normal;gap:6px;min-width:0;display:grid}.content-list .content-title{align-items:baseline;gap:8px;display:flex}.content-list .content-title-link{overflow-wrap:anywhere;min-width:0;line-height:1.5}.content-list .content-title .ant-tag{flex:none;margin:0}.content-list .content-summary .ant-typography{line-height:1.65}.content-list .content-author{white-space:normal;overflow-wrap:anywhere}.content-list .content-time{gap:6px;display:grid}.content-list .content-time small{color:#82908b;font-size:12px}.content-list .content-engagement{color:#65736e;gap:5px;display:grid}.content-list .content-engagement b{color:#30473e;font-variant-numeric:tabular-nums;font-weight:600}.content-list .ant-table-tbody>tr>td{vertical-align:middle}.item-list-header{padding:0 0 8px}.item-list-row{border-bottom:1px solid #e8ecea;padding:12px 0}.item-list-row:last-child{border-bottom:0}.item-list-small .item-list-row{padding:8px 0}.item-list-bordered{border:1px solid #e8ecea;border-radius:8px}.item-list-bordered .item-list-row,.item-list-bordered .item-list-empty{padding-left:12px;padding-right:12px}.item-list-empty{padding:16px 0}.item-row{align-items:center;gap:12px;min-width:0;display:flex}.item-row-avatar{flex:none;align-items:center;display:flex}.item-row-body{flex:1;min-width:0}.item-row-title{color:#1b2624;font-size:14px;font-weight:600;line-height:22px}.item-row-desc{color:#65736e;margin-top:2px;font-size:12px;line-height:20px}.item-row-extra,.item-row-actions{flex:none;align-items:center;gap:8px;display:flex}.id-card-upload .ant-upload-wrapper,.id-card-upload .ant-upload.ant-upload-select{width:100%;display:block}.reward-thumb{border-radius:8px;width:96px;height:96px;position:relative;overflow:hidden}.reward-thumb .ant-image{display:block}.reward-thumb-cover{color:#fff;background:#1b262499;border-radius:8px 0;padding:0 8px;font-size:12px;line-height:20px;position:absolute;top:0;left:0}.reward-thumb-bar{z-index:2;opacity:0;background:#1b2624b8;justify-content:center;gap:4px;padding:2px 0;transition:opacity .15s;display:flex;position:absolute;bottom:0;left:0;right:0}.reward-thumb:hover .reward-thumb-bar,.reward-thumb:focus-within .reward-thumb-bar{opacity:1}.reward-thumb-bar .ant-btn{color:#fff}.reward-thumb-bar .ant-btn:hover:not(:disabled){color:#fff;background:#ffffff29}.reward-thumb-bar .ant-btn:disabled{color:#ffffff59}.reward-nopic{color:#999;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.ant-table-thead>tr>th{letter-spacing:.2px;white-space:nowrap;font-size:12px;font-weight:600}.ant-table-tbody>tr>td{white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-size:14px;overflow:hidden}.ant-table-tbody>tr>td .ant-typography-ellipsis-multiple-line,.ant-table-tbody>tr>td .allow-wrap{white-space:normal}.ant-table-tbody .ant-typography-copy{opacity:0;transition:opacity .15s}.ant-table-tbody>tr:hover .ant-typography-copy,.ant-table-tbody .ant-typography-copy:focus-visible{opacity:1}.ant-table-thead>tr>th.col-group-start,.ant-table-tbody>tr>td.col-group-start{border-inline-start:1px solid #edf1ef}input:-webkit-autofill{-webkit-text-fill-color:#1b2624;caret-color:#1b2624;transition:background-color 100000s ease-in-out;box-shadow:inset 0 0 0 1000px #fff}input:-webkit-autofill:hover{-webkit-text-fill-color:#1b2624;caret-color:#1b2624;transition:background-color 100000s ease-in-out;box-shadow:inset 0 0 0 1000px #fff}input:-webkit-autofill:focus{-webkit-text-fill-color:#1b2624;caret-color:#1b2624;transition:background-color 100000s ease-in-out;box-shadow:inset 0 0 0 1000px #fff}input:-webkit-autofill:active{-webkit-text-fill-color:#1b2624;caret-color:#1b2624;transition:background-color 100000s ease-in-out;box-shadow:inset 0 0 0 1000px #fff}.stamp-cell{line-height:1.35}.stamp-cell strong{font-variant-numeric:tabular-nums;font-weight:500;display:block}.stamp-cell span{color:#82908b;font-variant-numeric:tabular-nums;font-size:12px;display:block}:is(.ant-table-tbody>tr>td:has(.ant-image,img,.ant-avatar),.ant-table-tbody>tr>td:has(>.ant-btn,>.ant-space,>.ant-pro-table-option,>.copy-value)){text-overflow:clip}.welcome{justify-content:space-between;align-items:center;margin-bottom:26px;display:flex}.eyebrow{color:#8b9994;margin-bottom:5px;font-size:12px}.welcome h1{color:#18392f;margin:0;font:27px Georgia,Noto Sans SC}.welcome p{color:#77857f;margin:7px 0 0;font-size:13px}.primary{color:#fff;cursor:pointer;background:#1f5545;border:0;border-radius:8px;align-items:center;gap:8px;height:38px;padding:0 16px;display:flex;box-shadow:0 3px 10px #1f554521}.primary:hover{background:#256350}.metrics{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.metric{background:#fff;border:1px solid #e3e8e5;border-radius:9px;gap:15px;min-height:118px;padding:20px;display:flex;box-shadow:0 2px 8px #224a3d06}.metric-icon{border-radius:9px;flex:none;place-items:center;width:42px;height:42px;display:grid}.metric-icon.amber{color:#b67e21;background:#f9f0db}.metric-icon.green{color:#297a58;background:#e5f2ec}.metric-icon.blue{color:#3976a3;background:#e8f1f7}.metric-icon.purple{color:#775d9f;background:#f0ebf6}.metric span,.metric strong,.metric small{display:block}.metric span{color:#76857f;font-size:12px}.metric strong{color:#203b33;margin:3px 0 4px;font:25px Georgia,Noto Sans SC}.metric small{color:#96a19d;font-size:10px}.grid{grid-template-columns:2fr 1fr;gap:15px;margin-top:15px;display:grid}.panel{background:#fff;border:1px solid #e3e8e5;border-radius:9px;overflow:hidden}.panel-head{border-bottom:1px solid #edf0ee;flex:none;justify-content:space-between;align-items:center;height:59px;padding:0 19px;display:flex}.panel-head h2{margin:0;font-size:15px}.panel-head button{color:#31705c;cursor:pointer;background:0 0;border:0;font-size:11px}.panel-head button:hover{color:#1f5545}.panel>table{border-collapse:collapse;width:100%;font-size:14px}.panel>table th{background:var(--app-bg-neutral);color:#82908b;text-align:left;height:39px;font-size:12px;font-weight:500}.panel>table th,.panel>table td{white-space:nowrap;border-bottom:1px solid #eef1ef;padding:0 15px}.panel>table tbody tr:last-child td{border-bottom:0}.panel>table td{color:#65736e;height:49px}.panel>table .title-cell{text-overflow:ellipsis;color:#2a3f38;max-width:250px;font-weight:500;overflow:hidden}.status{color:#287352;background:#e8f3ed;border-radius:10px;padding:3px 8px;display:inline-block}.status.muted{background:var(--app-bg-neutral);color:#7b8783}.panel-empty{color:#929e99;text-align:center;padding:32px 0;font-size:14px}.todos{padding:4px 18px}.todo{border-bottom:1px solid #eef1ef;align-items:center;gap:11px;min-height:63px;display:flex}.todo:last-child{border-bottom:0}.todo>i{border-radius:50%;flex:none;width:8px;height:8px}.todo>i.orange{background:#d99a38}.todo>i.blue{background:#4c87ad}.todo>i.purple{background:#866bab}.todo>i.green{background:#3b956d}.todo div{flex:1;min-width:0}.todo strong,.todo span{display:block}.todo strong{margin-bottom:4px;font-size:12px}.todo span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.todo span,.todo small{color:#899590;font-size:10px}@media (width<=1250px){.metrics{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}}.ant-form-item .ant-form-item-extra,.ant-typography.ant-typography-secondary{color:#999;font-size:12px;font-weight:400;line-height:20px}.ant-form-item .ant-form-item-extra{padding-top:2px}.ant-table-tbody>tr>td .ant-typography.ant-typography-secondary{font-size:inherit}.ant-table-tbody>tr>td .ant-tag{font-size:inherit;font-weight:400}.ant-table-tbody>tr>td .ant-typography code{font-size:inherit}.ant-table-tbody>tr>td .table-secondary,.ant-table-tbody>tr>td .ant-typography.table-secondary,.ant-table-tbody>tr>td .table-secondary :is(.ant-typography,.ant-tag){font-size:12px;line-height:20px}.ant-space-vertical>.ant-space-item+.ant-space-item>.ant-typography.ant-typography-secondary{margin-top:2px;display:block}.square-upload .ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload.ant-upload-select{transition:border-color .3s,background-color .3s}.square-upload.square-upload-dragging .ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload.ant-upload-select{border-color:var(--ant-color-primary);background-color:var(--ant-color-primary-bg)}.square-upload{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.square-upload .ant-upload-wrapper.ant-upload-picture-card-wrapper{width:auto;max-width:100%}.text-image-tile{box-sizing:border-box;border:1px dashed var(--ant-color-border);border-radius:var(--ant-border-radius-lg);background:var(--ant-color-fill-alter);width:96px;height:96px;color:var(--ant-color-text);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;margin:0;padding:0;font-size:12px;transition:border-color .3s;display:flex}.text-image-tile:hover:not(:disabled){border-color:var(--ant-color-primary)}.text-image-tile:disabled{cursor:not-allowed;opacity:.6}.attachment-tiles{flex-wrap:wrap;gap:8px;display:flex}.attachment-tile{box-sizing:border-box;border:1px solid var(--ant-color-border);border-radius:var(--ant-border-radius-lg);background:var(--ant-color-bg-container);width:100%;height:100%;position:relative;overflow:hidden}.attachment-tiles .attachment-tile{width:96px;height:96px}.attachment-tiles.small .attachment-tile{width:72px;height:72px}.attachment-tile.is-error{border-color:var(--ant-color-error)}.attachment-tile-image{object-fit:cover;width:100%;height:100%;display:block}.attachment-tile-file{flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;padding:8px;display:flex}.attachment-tile-file .anticon{font-size:32px}.attachment-tile-name{width:100%;min-width:0;color:var(--ant-color-text-secondary);text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:16px;display:block;overflow:hidden}.attachment-tile.is-error .attachment-tile-name{color:var(--ant-color-error)}.attachment-tiles.small .attachment-tile-file{gap:4px}.attachment-tiles.small .attachment-tile-file .anticon{font-size:24px}.attachment-tile-uploading{color:var(--ant-color-primary);background:#fffffff0;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:12px;display:flex;position:absolute;inset:0}.attachment-remove-button{z-index:3;box-sizing:border-box;color:#fff;cursor:pointer;background:#0006;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;margin:0;padding:0;line-height:0;transition:background .15s;display:flex;position:absolute;top:0;right:0}.attachment-remove-button .anticon{justify-content:center;align-items:center;width:8px;height:8px;font-size:8px;line-height:0;display:flex}.attachment-remove-button .anticon svg{width:8px;height:8px;display:block}.attachment-remove-button:hover{background:#0000008c}.attachment-remove-button:focus-visible{outline:2px solid var(--ant-color-primary);outline-offset:-2px}.attachment-upload-progress{appearance:none;background:var(--ant-color-fill-secondary);border:0;border-radius:3px;flex-shrink:0;width:100%;height:5px;display:block;overflow:hidden}.attachment-upload-progress::-webkit-progress-bar{background:var(--ant-color-fill-secondary);border-radius:3px}.attachment-upload-progress::-webkit-progress-value{background:var(--ant-color-primary);border-radius:3px}.attachment-upload-progress::-moz-progress-bar{background:var(--ant-color-primary);border-radius:3px}.attachment-tile-mask,.ant-image .attachment-image-cover{background:var(--ant-color-bg-mask);color:#fff;opacity:0;cursor:pointer;border:0;justify-content:center;align-items:center;margin:0;padding:0;transition:opacity .2s;display:flex;position:absolute;inset:0}.attachment-tile:hover .attachment-tile-mask,.attachment-tile:focus-within .attachment-tile-mask,.ant-image:hover .attachment-image-cover,.ant-image:focus-within .attachment-image-cover{opacity:1}.attachment-tile-mask:focus-visible{outline:2px solid var(--ant-color-primary);outline-offset:-2px}.ant-image .attachment-image-cover{border-radius:var(--ant-border-radius-lg)}.attachment-action-label{color:#fff;white-space:nowrap;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:400;line-height:1;display:inline-flex}.attachment-action-label .anticon{font-size:16px}.attachment-preview{justify-content:center;align-items:center;min-height:320px;max-height:72vh;display:flex;overflow:auto}.attachment-preview video,.attachment-preview img{max-width:100%;max-height:68vh;display:block}.attachment-pdf-preview{flex-direction:column;width:100%;height:68vh;min-height:0;display:flex;position:relative}.attachment-pdf-pages{background:var(--ant-color-bg-layout);flex-direction:column;flex:1;align-items:center;gap:16px;min-height:0;padding:16px;display:flex;overflow:auto}.attachment-pdf-pages canvas{background:var(--ant-color-bg-container);flex:none;max-width:100%}.attachment-pdf-count{color:var(--ant-color-text-secondary);text-align:right;flex:none;padding:8px 16px}.attachment-pdf-loading{place-items:center;display:grid;position:absolute;inset:0}.content-list .content-title-link{color:#1f5b45;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.content-list .content-title-link:hover{text-decoration:underline}.content-list .content-title-link:focus-visible{outline-offset:3px;border-radius:2px;outline:2px solid #8cbfa8}.content-detail-drawer .ant-drawer-body{background:#f5f7f6;padding:24px}.content-detail{gap:16px;min-width:0;display:grid}.content-detail-section{background:#fff;border:1px solid #e9efeb;border-radius:12px;min-width:0;padding:24px}.content-registration-summary{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.content-registration-summary>.ant-btn{flex:none;margin-left:auto}.content-detail-header h2{color:#233e32;overflow-wrap:anywhere;margin:16px 0 20px;font-size:24px;line-height:1.5}.content-detail .ant-tag{margin-inline-end:0}.content-detail-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:0;display:grid}.content-detail-meta dt{color:#83908a;margin-bottom:4px;font-size:12px}.content-detail-meta dd{color:#40564b;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0;line-height:1.6}.content-detail-stats{color:#718178;border-top:1px solid #edf1ef;flex-wrap:wrap;gap:20px;margin-top:20px;padding-top:16px;font-size:12px;display:flex}.content-detail-stats span{align-items:center;gap:6px;display:inline-flex}.content-detail-status-note{color:#8b6a34;margin:16px 0 0;font-size:12px}.content-detail-body{white-space:pre-wrap;overflow-wrap:anywhere;color:#34483f;font-size:15px;line-height:1.9}.content-detail-images{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.content-detail-images .ant-image,.content-media-failed{box-sizing:border-box;border:1px solid var(--ant-color-border);border-radius:var(--ant-border-radius-lg);background:var(--ant-color-fill-quaternary);flex:0 0 96px;width:96px;height:96px;overflow:hidden}.content-detail-images .ant-image .ant-image-img{object-fit:cover;width:100%;height:100%;display:block}.content-media-failed{color:#87958d;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.content-media-failed .anticon{font-size:20px}.content-detail-video{background:#172820;border-radius:8px;width:100%;max-height:480px;margin-top:20px;display:block}.content-detail-muted{color:#83908a;margin:12px 0 0;font-size:12px;line-height:1.7}.content-comments-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.content-comments-heading h3{color:#233e32;margin:0;font-size:16px}.content-comments-heading h3 span{color:#82908b;margin-left:6px;font-size:13px;font-weight:400}.content-comments{margin:0;padding:0;list-style:none}.content-comments li{border-bottom:1px solid #edf1ef;align-items:flex-start;gap:12px;padding:20px 0;display:flex}.content-comments li:last-child{border-bottom:0;padding-bottom:0}.content-comments .ant-avatar{color:#397052;background:#e9f0eb;flex:none}.content-comment-main{flex:1;min-width:0}.content-comment-meta{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;display:flex}.content-comment-meta strong{color:#344c3e;overflow-wrap:anywhere;font-size:13px}.content-comment-meta time{color:#93a097;flex:none;font-size:11px}.content-comment-main p{color:#4b5f53;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;line-height:1.8}.content-comments-pages{margin-top:20px}@media (width<=600px){.content-detail-drawer .ant-drawer-body{padding:12px}.content-detail-section{padding:16px}.content-detail-meta{grid-template-columns:minmax(0,1fr);gap:12px}.content-detail-header h2{font-size:20px}}
