:root{--ry-green:#335c49;--ry-green-hover:#2b4f3e;--ry-green-deep:#244335;--ry-green-soft:#e9f0e9;--ry-green-tint:#f3f7f2;--ry-fill:#f1f3ef;--ry-fill-2:#eaede7;--ry-sidebar:#f5f6f3;--ry-canvas:#f7f8f6;--lab-white:#f7f8f6;--surface:#ffffff;--surface-raised:#fbfcfa;--ink:#252d29;--ink-soft:#4f5952;--ink-faint:#687267;--navy:#2c3530;--navy-deep:#1f2723;--teal:#335c49;--teal-soft:#e9f0e9;--amber:#a8731f;--amber-soft:#fbf3e7;--coral:#a64d40;--coral-soft:#fef0ed;--blue:#455e73;--blue-soft:#edf4f9;--line:#e5e9e3;--line-strong:#d8ded5;--shadow-sm:0 1px 2px rgb(37 45 41/4%);--shadow-md:0 24px 64px rgb(28 36 31/16%),0 2px 8px rgb(28 36 31/6%);--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--font-body:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei UI","Microsoft YaHei","Noto Sans CJK SC",sans-serif;--font-data:var(--font-body);--sidebar-width:232px;--topbar-height:56px}.schedule-edit-fields{display:grid;grid-gap:16px;gap:16px;min-width:0;margin:0;padding:0;border:0}.schedule-edit-fields[hidden]{display:none}.work-review-project{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.work-review-project summary{cursor:pointer;color:var(--ink-soft)}.work-review-project li{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding:8px 0}.work-review-project li>span{flex:1 1 220px;overflow-wrap:anywhere}.auth-page{display:grid;min-height:100vh;place-items:center;padding:48px 20px;background:radial-gradient(900px 480px at 50% -12%,rgb(233 240 233/95%),rgb(233 240 233/0) 70%),var(--ry-canvas)}.auth-shell{display:grid;width:min(100%,392px);grid-gap:22px;gap:22px}.auth-heading{display:grid;justify-items:center;grid-gap:10px;gap:10px;text-align:center}.auth-heading h1{margin:6px 0 0;color:var(--ink);font-size:24px;font-weight:600;letter-spacing:-.02em}.auth-heading p{margin:0;color:var(--ink-faint);font-size:14px}.auth-brand-mark{display:flex;width:48px;height:48px;align-items:flex-end;justify-content:center;gap:4px;padding:12px 11px;background:var(--ry-green);border-radius:13px;box-shadow:inset 0 1px 0 rgb(255 255 255/14%),0 6px 16px rgb(36 67 53/22%)}.auth-brand-mark span{display:block;width:5.5px;background:#fff;border-radius:3px}.auth-brand-mark span:first-child{height:12px;opacity:.8}.auth-brand-mark span:nth-child(2){height:24px}.auth-brand-mark span:nth-child(3){height:17px;opacity:.9}.auth-card{display:grid;grid-gap:0;gap:0;padding:28px;background:#fff;border-radius:16px;box-shadow:0 0 0 1px rgb(37 45 41/7%),0 1px 2px rgb(37 45 41/4%),0 16px 40px rgb(37 45 41/8%)}.auth-card label{margin:0 0 6px;color:var(--ink-soft);font-size:13px;font-weight:500}.auth-card label+input{margin-bottom:16px}.auth-card .button,.auth-card input{width:100%;min-height:44px}.auth-card .button{margin-top:6px;font-size:15px}.auth-card .form-error{margin:0 0 14px}.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--ink-faint);font-size:12px}.auth-divider:after,.auth-divider:before{flex:1 1;height:1px;content:"";background:var(--line)}.auth-card .auth-wecom-button{margin-top:0}.auth-card .field-help{margin:8px 0 0;color:var(--ink-faint);font-size:12px;text-align:center}.auth-footnote{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin:0;color:var(--ink-faint);font-size:12px}.auth-footnote span{display:inline-flex;align-items:center;gap:5px}.auth-loading{display:grid;min-height:100vh;place-content:center;justify-items:center;grid-gap:14px;gap:14px;color:var(--ink-faint);background:#fff}.auth-spinner{width:28px;height:28px;border:2.5px solid var(--ry-fill-2);border-top-color:var(--ry-green);border-radius:50%;animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(1turn)}}@media (max-width:520px){.auth-page{place-items:start center;padding-top:12vh}.auth-card{padding:22px 18px}}*{box-sizing:border-box}html{font-family:var(--font-body);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body,html{background:#fff;color:var(--ink)}body{margin:0;min-width:320px;font-size:14px;line-height:1.55}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a,button{color:inherit}a{text-decoration:none}:where(button,a,[tabindex]):focus-visible{outline:2px solid rgb(51 92 73/55%);outline-offset:2px}::selection{background:#d4e2d5;color:var(--ink)}.app-frame{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:50;display:flex;width:var(--sidebar-width);flex-direction:column;padding:10px 10px 12px;overflow-y:auto;color:var(--ink);background:var(--ry-sidebar);border-right:1px solid var(--line)}.brand-block{display:flex;min-height:48px;align-items:center;gap:10px;padding:4px 8px 8px}.brand-block strong{display:block;color:var(--ink);font-size:15px;font-weight:600;letter-spacing:-.01em;line-height:1.2}.brand-block small{display:block;margin-top:2px;color:var(--ink-faint);font-size:12px;line-height:1.3}.brand-mark{display:flex;width:28px;height:28px;flex:none;align-items:flex-end;justify-content:center;gap:2.5px;padding:7px 6px;background:var(--ry-green);border-radius:8px;box-shadow:inset 0 1px 0 rgb(255 255 255/14%),0 1px 2px rgb(28 50 40/22%)}.brand-mark span{display:block;width:3.5px;background:#fff;border-radius:2px}.brand-mark span:first-child{height:7px;opacity:.8}.brand-mark span:nth-child(2){height:14px}.brand-mark span:nth-child(3){height:10px;opacity:.9}.sidebar-close{display:none;width:32px;height:32px;margin-left:auto;place-items:center;color:var(--ink-faint);background:transparent;border:0;border-radius:8px;cursor:pointer}.sidebar-close:hover{color:var(--ink);background:var(--ry-fill-2)}.primary-nav,.primary-nav-group{display:flex;flex-direction:column}.primary-nav-group{gap:1px;padding-top:16px}.primary-nav-group:first-child{padding-top:6px}.primary-nav-label{padding:0 10px 6px;color:var(--ink-faint);font-size:12px;font-weight:500}.primary-nav a{display:flex;min-height:34px;align-items:center;gap:10px;padding:0 8px 0 10px;color:var(--ink-soft);font-size:14px;font-weight:500;border-radius:8px;transition:background .12s ease,color .12s ease,box-shadow .12s ease}.primary-nav a>svg{flex:none;color:var(--ink-faint);transition:color .12s ease}.primary-nav a>span{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.primary-nav a:hover{color:var(--ink);background:var(--ry-fill-2)}.primary-nav a.active{color:var(--ink);background:#fff;box-shadow:0 0 0 1px var(--line),0 1px 2px rgb(37 45 41/6%)}.primary-nav a.active>svg{color:var(--ry-green)}.primary-nav a b{min-width:22px;padding:0 6px;color:var(--ink-faint);font-size:12px;font-weight:500;line-height:20px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border-radius:10px}.primary-nav a.active b{color:var(--ry-green-deep);background:var(--ry-green-soft)}.sidebar-spacer{flex:1 1;min-height:16px}.sidebar-user{display:flex;width:100%;align-items:center;gap:10px;padding:8px;color:var(--ink);text-align:left;background:transparent;border:0;border-radius:10px;cursor:pointer;transition:background .12s ease}.sidebar-user:hover{background:var(--ry-fill-2)}.sidebar-user>div{flex:1 1;min-width:0}.sidebar-user>svg{flex:none;color:var(--ink-faint)}.user-avatar{display:grid;width:30px;height:30px;flex:none;place-items:center;color:var(--ry-green-deep);font-size:13px;font-weight:600;background:var(--ry-green-soft);border-radius:50%;box-shadow:inset 0 0 0 1px rgb(51 92 73/12%)}.sidebar-user small,.sidebar-user strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user strong{font-size:13px;font-weight:600}.sidebar-user small{margin-top:1px;color:var(--ink-faint);font-size:12px}.app-main{min-height:100vh;margin-left:var(--sidebar-width);background:#fff}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;height:var(--topbar-height);justify-content:space-between;gap:16px;padding:0 32px;background:rgb(255 255 255/84%);border-bottom:1px solid var(--line);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px)}.global-search,.topbar{display:flex;align-items:center}.global-search{width:min(360px,40vw);height:34px;gap:8px;padding:0 8px 0 11px;color:var(--ink-faint);font-size:14px;text-align:left;background:var(--ry-fill);border:1px solid transparent;border-radius:9px;cursor:pointer;transition:background .12s ease}.global-search:hover{background:var(--ry-fill-2)}.global-search span{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}kbd{display:inline-flex;min-height:20px;align-items:center;gap:2px;padding:0 5px;color:var(--ink-faint);font-family:var(--font-body);font-size:11px;font-weight:500;background:#fff;border:1px solid var(--line);border-radius:5px;box-shadow:0 1px 0 var(--line)}.topbar-actions{display:flex;align-items:center;gap:8px}.mobile-menu-button,.notification-button{position:relative;display:grid;width:34px;height:34px;place-items:center;color:var(--ink-soft);background:transparent;border:0;border-radius:9px;cursor:pointer;transition:background .12s ease,color .12s ease}.mobile-menu-button:hover,.notification-button:hover{color:var(--ink);background:var(--ry-fill)}.notification-button span{position:absolute;top:2px;right:0;min-width:17px;height:17px;padding:0 4px;color:#fff;font-size:11px;font-weight:600;line-height:14px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:var(--coral);border:1.5px solid #fff;border-radius:9px}.mobile-menu-button{display:none}.page-content{width:min(1320px,100%);margin:0 auto;padding:32px 40px 88px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.page-header h1{margin:0;color:var(--ink);font-size:26px;font-weight:650;letter-spacing:-.02em;line-height:1.25}.page-header p{max-width:680px;margin:6px 0 0;color:var(--ink-faint);font-size:14px;line-height:1.6}.page-header .eyebrow{margin:0 0 6px}.page-header-actions{display:flex;align-items:center;gap:8px}.eyebrow{margin:0 0 6px;color:var(--ink-faint);font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px rgb(37 45 41/3%)}.summary-action{position:relative;width:100%;margin:0;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.summary-action:after{position:absolute;right:12px;bottom:10px;color:var(--ink-faint);font-size:12px;font-weight:500;content:"查看";opacity:.8}.summary-action:focus-visible{outline:2px solid rgb(51 92 73/45%);outline-offset:2px}.panel.summary-action:hover,.panel.summary-action[aria-pressed=true]{border-color:#c4d3c6;box-shadow:0 1px 2px rgb(37 45 41/4%),0 6px 18px rgb(37 45 41/6%)}.summary-action[aria-pressed=true]:after{color:var(--ry-green);content:"已展示";opacity:1}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}.section-heading h2{margin:0;color:var(--ink);font-size:16px;font-weight:600;letter-spacing:-.01em}.section-description{margin:4px 0 0;color:var(--ink-faint);font-size:13px}.section-action{flex:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:8px;font-weight:500;line-height:1;white-space:nowrap;cursor:pointer;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease}.button:active:not(:disabled){transform:translateY(.5px)}.button:disabled{opacity:.45;cursor:not-allowed}.button-sm{min-height:30px;padding:0 10px;font-size:13px;border-radius:7px}.button-md{min-height:36px;padding:0 14px;font-size:14px}.button-lg{min-height:44px;padding:0 18px;font-size:15px;border-radius:10px}.button-primary{color:#fff;background:var(--ry-green);border-color:var(--ry-green);box-shadow:inset 0 1px 0 rgb(255 255 255/10%),0 1px 2px rgb(28 50 40/18%)}.button-primary:hover:not(:disabled){background:var(--ry-green-hover);border-color:var(--ry-green-hover)}.button-secondary{color:var(--ink);background:#fff;border-color:var(--line-strong);box-shadow:0 1px 2px rgb(37 45 41/5%)}.button-secondary:hover:not(:disabled){background:#f8f9f7;border-color:#c8d0c5}.button-ghost{color:var(--ink-soft);background:transparent}.button-ghost:hover:not(:disabled){color:var(--ink);background:var(--ry-fill)}.button-danger{color:var(--coral);background:#fff;border-color:#efd0c9}.button-danger:hover:not(:disabled){background:var(--coral-soft)}.capture-button kbd{color:rgb(255 255 255/80%);background:rgb(255 255 255/12%);border-color:rgb(255 255 255/16%);box-shadow:none}.badge{display:inline-flex;min-height:22px;align-items:center;gap:5px;padding:0 8px;white-space:nowrap;border:0;border-radius:6px;font-size:12px;font-weight:500;line-height:1}.badge-dot{width:6px;height:6px;background:currentColor;border-radius:50%}.badge-neutral{color:var(--ink-soft);background:var(--ry-fill)}.badge-positive{color:var(--ry-green-deep);background:var(--ry-green-soft)}.badge-warning{color:#845922;background:var(--amber-soft)}.badge-critical{color:#9a463a;background:var(--coral-soft)}.badge-info{color:var(--blue);background:var(--blue-soft)}.badge-ink{color:#fff;background:var(--ink)}.data-number{font-family:var(--font-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint)}.critical-text{color:var(--coral)}.positive-text{color:var(--ry-green)}.warning-text{color:#845922}.form-stack{display:grid;grid-gap:10px;gap:10px}.plain-fieldset,fieldset.form-stack{min-width:0;margin:0;padding:0;border:0}.closing-check-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.closing-check-row>div{flex:1 1;min-width:min(100%,180px);overflow-wrap:anywhere}.closing-check-row>button{max-width:100%;white-space:normal;text-align:left}.closing-check-row>.form-error{flex-basis:100%}.project-task-line{min-width:0;padding:12px 0;border-bottom:1px solid var(--line)}.task-line-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.task-line-summary>div{flex:1 1;min-width:160px;overflow-wrap:anywhere}.task-line-summary small{display:block;margin-top:4px;color:var(--ink-faint)}.task-line-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));grid-gap:12px;gap:12px}.task-line-fields label{display:grid;grid-gap:5px;gap:5px;font-size:14px}.task-line-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.field-label{margin-top:4px;color:var(--ink-soft);font-size:13px;font-weight:500}:where(input:not([class*=ant-],[class*=ant-] *),textarea:not([class*=ant-],[class*=ant-] *),select:not([class*=ant-],[class*=ant-] *)){width:100%;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:8px;transition:border-color .12s ease,box-shadow .12s ease}:where(input:not([class*=ant-],[class*=ant-] *),select:not([class*=ant-],[class*=ant-] *)){min-height:36px;padding:0 11px}:where(input[type=checkbox],input[type=radio]):not([class*=ant-]){flex:none;width:16px;min-height:16px;margin:0;padding:0;accent-color:var(--ry-green)}:where(textarea:not([class*=ant-],[class*=ant-] *)){min-height:104px;padding:9px 11px;line-height:1.55;resize:vertical}:where(input:not([class*=ant-],[class*=ant-] *),textarea:not([class*=ant-],[class*=ant-] *),select:not([class*=ant-],[class*=ant-] *)):hover{border-color:#c3cbc0}:where(input:not([class*=ant-],[class*=ant-] *),textarea:not([class*=ant-],[class*=ant-] *),select:not([class*=ant-],[class*=ant-] *)):focus{border-color:var(--ry-green);outline:none;box-shadow:0 0 0 3px rgb(51 92 73/14%)}input::placeholder,textarea::placeholder{color:#7c827a}.modal-open{overflow:hidden}:where(body *){scrollbar-width:thin;scrollbar-color:rgb(37 45 41/26%) transparent}.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgb(28 36 31/28%);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:fade-in .14s ease-out}.modal{display:flex;flex-direction:column;width:100%;max-height:min(800px,calc(100vh - 40px));padding-bottom:8px;overflow:hidden;background:#fff;border:0;border-radius:16px;box-shadow:var(--shadow-md),0 0 0 1px rgb(37 45 41/6%);animation:modal-in .18s cubic-bezier(.2,.8,.2,1)}.modal-sm{max-width:430px}.modal-md{max-width:590px}.modal-lg{max-width:820px}.animal-batch-navigation{margin-bottom:20px}.animal-batch-navigation p{overflow-wrap:anywhere}.animal-batch-tabs{display:flex;gap:4px;padding:4px;border-radius:var(--radius-md);background:var(--lab-white);flex-wrap:wrap}.animal-batch-tabs button{flex:1 1 120px;min-height:40px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;cursor:pointer}.animal-batch-tabs button.active{color:var(--teal);background:var(--surface);box-shadow:var(--shadow-sm);font-weight:600}.animal-batch-tabs button:disabled{opacity:.45;cursor:not-allowed}.animal-batch-tabs button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.animal-batch-preview{display:grid;grid-gap:6px;gap:6px;max-height:200px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px;-webkit-clip-path:inset(0 round var(--radius-sm));clip-path:inset(0 round var(--radius-sm))}.animal-batch-preview>div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px}.animal-batch-preview span{color:var(--ink-soft)}.modal-header{position:relative;z-index:3;flex:none;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 24px 14px;background:rgb(255 255 255/94%);border-bottom:1px solid var(--line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.modal-header h2{margin:0;color:var(--ink);font-size:18px;font-weight:600;letter-spacing:-.01em}.modal-header p{margin:4px 0 0;color:var(--ink-faint);font-size:13px}.modal-body{flex:1 1 auto;min-height:0;padding:18px 24px 16px;overflow-y:auto;overscroll-behavior:contain}.icon-button{display:grid;width:32px;height:32px;flex:none;place-items:center;color:var(--ink-faint);background:transparent;border:0;border-radius:8px;cursor:pointer}.icon-button:hover{color:var(--ink);background:var(--ry-fill)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.capture-hint{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;color:var(--ink-soft);background:var(--ry-green-tint);border:0;border-radius:8px;font-size:13px}.search-input-wrap{display:flex;align-items:center;gap:9px;padding:0 12px;color:var(--ink-faint);background:var(--ry-fill);border:1px solid transparent;border-radius:10px}.search-input-wrap input{min-height:45px;padding:0;background:transparent;border:0;outline:0}.search-results{display:grid;grid-gap:3px;gap:3px;margin-top:12px}.notification-work-card>button,.search-results>button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:11px;gap:11px;min-height:58px;padding:7px 9px;text-align:left;background:white;border:0;border-radius:8px;cursor:pointer}.notification-work-card>button:hover,.search-results>button.active,.search-results>button:hover{background:#f5f6f3}.search-results>button.active{outline:1px solid var(--line-strong)}.search-results small,.search-results strong{display:block}.search-results strong{font-size:14px}.search-results small{margin-top:2px;color:var(--ink-faint);font-size:12px}.search-empty{padding:28px 10px;color:var(--ink-faint);text-align:center}.search-results>button.search-view-all{display:flex;justify-content:center;align-items:center;gap:6px;min-height:40px;color:var(--ink-soft);font-size:13px;font-weight:600}.workspace-attention-banner{display:flex;width:100%;align-items:center;gap:10px;margin-bottom:16px;padding:8px 12px 8px 8px;color:var(--ink-soft);text-align:left;background:var(--amber-soft);border:0;border-radius:10px;cursor:pointer;transition:background .12s ease}.workspace-attention-banner:hover{background:#f8ecd9}.workspace-attention-banner>span{display:grid;flex:none;width:26px;height:26px;place-items:center;color:#845922;background:rgb(255 255 255/72%);border-radius:7px}.workspace-attention-banner>span svg{width:15px;height:15px}.workspace-attention-banner>div{display:flex;flex:1 1;min-width:0;align-items:baseline;gap:8px}.workspace-attention-banner strong{flex:none;color:#6b4a1c;font-size:13px;font-weight:600}.workspace-attention-banner small{overflow:hidden;color:#845922;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.workspace-attention-banner>b{display:flex;flex:none;align-items:center;gap:4px;color:#845922;font-size:13px;font-weight:500}@media (max-width:520px){.workspace-attention-banner{align-items:flex-start}.workspace-attention-banner>div{display:block}.workspace-attention-banner small{display:block;margin-top:2px;white-space:normal}.workspace-attention-banner>b{display:none}}.toast{position:fixed;right:24px;bottom:24px;z-index:150;display:grid;width:min(380px,calc(100vw - 32px));grid-template-columns:22px 1fr auto;align-items:center;grid-gap:10px;gap:10px;padding:11px 10px 11px 14px;color:#fff;background:rgb(37 45 41/95%);border:0;border-radius:12px;box-shadow:0 12px 32px rgb(28 36 31/22%);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:toast-in .18s ease-out}.toast>span{display:grid;width:22px;height:22px;place-items:center;color:#fff;background:rgb(255 255 255/14%);border-radius:50%;font-size:12px;font-weight:600}.toast p{margin:0;font-size:14px;white-space:pre-line}.toast button{padding:4px;color:white;background:none;border:0;cursor:pointer}.toast-critical{background:rgb(154 70 58/96%)}.toast-info{background:rgb(69 94 115/96%)}.button-spinner{width:12px;height:12px;border:2px solid;border-top:2px solid transparent;border-radius:50%;animation:auth-spin .8s linear infinite}.sync-status{display:inline-flex;align-items:center;gap:6px;color:var(--ink-faint);font-size:12px;white-space:nowrap}.sync-status-failed{color:var(--coral);font-weight:600}.sync-error-bar{position:fixed;bottom:24px;left:50%;z-index:160;display:flex;width:min(560px,calc(100vw - 32px));align-items:center;gap:12px;padding:12px 14px;color:#fff;background:rgb(154 70 58/97%);border:0;border-radius:12px;box-shadow:0 12px 32px rgb(28 36 31/24%);animation:toast-in .18s ease-out;transform:translateX(-50%)}.sync-error-mark{display:grid;flex:none;width:24px;height:24px;place-items:center;background:rgb(255 255 255/12%);border-radius:50%;font-family:var(--font-data);font-size:13px;font-weight:600}.sync-error-bar p{flex:1 1;margin:0;font-size:14px}.sync-error-bar small{display:block;margin-top:2px;font-size:12px;opacity:.82}.sync-error-bar .button-secondary{flex:none;border-color:transparent}.sync-error-bar .sync-error-dismiss{flex:none;color:white}.sync-error-bar .sync-error-dismiss:hover:not(:disabled){background:rgb(255 255 255/12%)}.empty-state{display:grid;min-height:220px;place-items:center;align-content:center;padding:32px;text-align:center}.empty-mark{display:grid;width:40px;height:40px;place-items:center;color:var(--ry-green);background:var(--ry-green-soft);border-radius:50%;font-weight:600}.empty-state h3{margin:14px 0 4px;color:var(--ink);font-size:16px;font-weight:600}.empty-state p{max-width:380px;margin:0 0 14px;color:var(--ink-faint);font-size:14px}.mobile-nav,.mobile-scrim{display:none}.table-wrap{width:100%;overflow-x:auto}.work-queue-table-panel{min-width:0}.work-queue-table-panel .data-table{min-width:640px}.data-table{width:100%;border-collapse:collapse;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.data-table th{padding:9px 12px;color:var(--ink-faint);font-size:12px;font-weight:500;letter-spacing:0;text-align:left;white-space:nowrap;background:#fafbf9;border-bottom:1px solid var(--line)}.data-table td{padding:12px;border-bottom:1px solid #eef1ec;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#f8f9f7}.data-table strong{color:var(--ink);font-weight:600}.data-table small{display:block;margin-top:2px;color:var(--ink-faint);font-size:12px}.th-sort{display:inline-flex;align-items:center;gap:4px;padding:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;background:transparent;border:0;cursor:pointer}.th-sort svg{flex:none;opacity:.55}.th-sort.active,.th-sort:hover{color:var(--navy-deep)}.th-sort.active svg{opacity:1}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;color:var(--ink-faint);font-size:12px;border-top:1px solid #eff1ed}.pagination-controls{display:flex;align-items:center;gap:8px}.pagination-controls select{min-height:28px;padding:0 8px;color:var(--ink-soft);font-size:12px;background:white;border:1px solid var(--line);border-radius:7px}.filter-row{display:flex;align-items:center;gap:8px;margin-bottom:14px;overflow-x:auto;scrollbar-width:none}.filter-row::-webkit-scrollbar{display:none}.filter-chip{min-height:31px;padding:0 11px;color:var(--ink-soft);white-space:nowrap;background:white;border:1px solid var(--line);border-radius:16px;cursor:pointer}.filter-chip.active{color:var(--ry-green-deep);background:var(--ry-green-soft);border-color:#c9dccb}.progress-track{width:100%;height:5px;overflow:hidden;background:#eaede9;border-radius:5px}.progress-track span{display:block;height:100%;background:var(--teal);border-radius:inherit}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.metric{min-width:0;padding:15px 16px;background:white;border:1px solid var(--line);border-radius:var(--radius-sm)}.metric-label{display:flex;align-items:center;justify-content:space-between;color:var(--ink-faint);font-size:12px}.metric strong{display:block;margin-top:7px;color:var(--navy-deep);font-family:var(--font-data);font-size:23px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.metric small{display:block;margin-top:3px;color:var(--ink-faint);font-size:12px}.live-dot{width:8px;height:8px;background:#719f89;border:2px solid #e7ebe6;border-radius:50%;box-shadow:0 0 0 3px #f6f7f4}.panel-inner{padding:19px 20px}.text-link{display:inline-flex;align-items:center;gap:5px;color:var(--teal);font-size:13px;font-weight:600}.exception-filters{display:flex;gap:6px;padding-top:3px;overflow-x:auto;scrollbar-width:none}.exception-filters::-webkit-scrollbar{display:none}.exception-filters button{display:flex;min-height:30px;align-items:center;gap:6px;padding:0 10px;color:var(--ink-soft);white-space:nowrap;background:#f3f5f1;border:1px solid transparent;border-radius:15px;cursor:pointer}.exception-filters button span{display:grid;min-width:17px;height:17px;place-items:center;color:var(--ink-faint);background:white;border-radius:9px;font-family:var(--font-data);font-size:12px}.exception-filters button.active{color:var(--ink);background:#fff;box-shadow:0 1px 2px rgb(37 45 41/10%),0 0 0 .5px rgb(37 45 41/6%)}.work-focus-card{border-bottom:1px solid var(--line)}.work-card-sources{padding:8px 16px 12px;font-size:14px}.work-card-sources summary{cursor:pointer;color:var(--ink-soft)}.work-card-sources summary:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.work-card-sources ul{list-style:none;padding:0;margin:8px 0 0}.work-card-sources li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.work-card-sources li>span{min-width:0;overflow-wrap:anywhere}.work-card-sources li small{display:block;color:var(--ink-faint)}.work-card-sources li>div{display:grid;flex-shrink:0;grid-gap:6px;gap:6px}.notification-work-card{border-bottom:1px solid var(--line)}.notification-work-card>button{width:100%}.project-next-action-menu{position:relative}.project-next-action-menu>summary{cursor:pointer;padding:8px;font-size:14px}.project-next-action-options{display:flex;gap:8px;flex-wrap:wrap;padding:8px 0}.project-pulse-board{overflow:hidden}.dialog-detail{padding:12px;background:#f8f9f6;border:1px solid var(--line);border-radius:8px}.dialog-detail p{margin:8px 0 0;color:var(--ink-soft);font-size:13px}.exception-action-dialog{display:grid;grid-gap:10px;gap:10px}.segmented-control{display:grid;grid-template-columns:1fr 1fr;grid-gap:2px;gap:2px;padding:2px;background:var(--ry-fill);border-radius:9px}.segmented-control button{display:flex;min-height:32px;align-items:center;justify-content:center;gap:6px;color:var(--ink-soft);font-weight:500;background:transparent;border:0;border-radius:7px;cursor:pointer;transition:background .12s ease,color .12s ease,box-shadow .12s ease}.segmented-control button.active{color:var(--ink);background:#fff;box-shadow:0 1px 2px rgb(37 45 41/10%),0 0 0 .5px rgb(37 45 41/6%)}@media (max-width:1150px){.project-pulse-board{overflow-x:auto}}@media (max-width:520px){.panel-inner{padding:16px}}.home-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin-bottom:24px}.home-heading{min-width:0}.home-date{margin:0 0 6px;color:var(--ink-faint);font-size:13px;font-weight:500}.home-heading h1{margin:0;color:var(--ink);font-size:26px;font-weight:650;letter-spacing:-.02em;line-height:1.25}.home-summary{max-width:640px;margin:6px 0 0;color:var(--ink-faint);font-size:14px}.home-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.home-sync{display:inline-flex;align-items:center;gap:8px;color:var(--ink-faint);font-size:12px;white-space:nowrap}.home-sync .live-dot{width:7px;height:7px;background:#5f9a7c;border:0;box-shadow:0 0 0 3px rgb(95 154 124/16%)}.home-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:20px;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px rgb(37 45 41/3%)}.home-stat{position:relative;display:grid;align-content:start;grid-gap:2px;gap:2px;min-height:104px;padding:16px 18px;color:inherit;transition:background .12s ease}.home-stat+.home-stat{box-shadow:inset 1px 0 0 var(--line)}.home-stat:hover{background:#fafbf9}.home-stat>span:first-child{color:var(--ink-faint);font-size:13px;font-weight:500}.home-stat strong{margin-top:4px;color:var(--ink);font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1.15;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.home-stat strong em{color:var(--ink-faint);font-size:18px;font-style:normal;font-weight:500}.home-stat small{overflow:hidden;color:var(--ink-faint);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.home-stat-critical strong{color:var(--coral)}.home-stat-bar{display:block;height:4px;margin-top:10px;overflow:hidden;background:#e6eae4;border-radius:4px}.home-stat-bar i{display:block;height:100%;background:var(--ry-green);border-radius:inherit;transition:width .3s ease}.home-grid{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start}.home-grid,.home-side{display:grid;grid-gap:20px;gap:20px}.home-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px rgb(37 45 41/3%)}.home-card-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;min-height:56px;padding:12px 16px 12px 18px;border-bottom:1px solid var(--line)}.home-card-header h2{margin:0;color:var(--ink);font-size:15px;font-weight:600;letter-spacing:-.005em}.home-card-link{display:inline-flex;align-items:center;gap:4px;color:var(--ink-faint);font-size:13px;font-weight:500}.home-card-link:hover{color:var(--ry-green)}.home-card-footer{display:flex;flex-wrap:wrap;gap:6px 18px;padding:12px 18px;border-top:1px solid var(--line)}.home-card-footer a{display:inline-flex;align-items:center;gap:4px;color:var(--ink-faint);font-size:13px}.home-card-footer a:hover{color:var(--ry-green)}.home-empty{margin:0;padding:20px 18px;color:var(--ink-faint);font-size:13px}.home-card-header .exception-filters{gap:2px;padding:2px;background:var(--ry-fill);border-radius:9px}.home-card-header .exception-filters button{min-height:28px;padding:0 10px;font-size:13px;font-weight:500;background:transparent;border:0;border-radius:7px}.home-card-header .exception-filters button span{min-width:0;height:auto;padding:0;color:var(--ink-faint);background:transparent;font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.home-card-header .exception-filters button.active span{color:var(--ink-soft)}.home-list .work-focus-card{border-bottom:1px solid #eef1ec}.home-list .work-focus-card .home-row,.home-list .work-focus-card:last-child{border-bottom:0}.home-row{position:relative;display:grid;width:100%;grid-template-columns:8px minmax(0,1fr) auto 16px;grid-gap:14px;gap:14px;align-items:start;padding:14px 16px 14px 18px;color:inherit;font:inherit;text-align:left;background:#fff;border:0;border-bottom:1px solid #eef1ec;cursor:pointer;transition:background .12s ease}.home-list>.home-row:last-child{border-bottom:0}.home-row:hover{background:#fafbf9}.home-row-dot{width:8px;height:8px;margin-top:7px;background:var(--blue);border-radius:50%}.home-row-critical .home-row-dot{background:var(--coral);box-shadow:0 0 0 3px rgb(166 77 64/14%)}.home-row-warning .home-row-dot{background:#c38c37}.home-row-main{display:grid;min-width:0;grid-gap:3px;gap:3px}.home-row-main>strong{overflow:hidden;color:var(--ink);font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.home-row-main>small{display:-webkit-box;overflow:hidden;color:var(--ink-soft);font-size:13px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.home-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:4px;color:var(--ink-faint);font-size:12px}.home-row-meta .badge{min-height:20px;padding:0 6px;font-size:12px}.home-row-meta>span:not(.badge)+span:not(.badge):before{margin-right:10px;color:#c8cfc5;content:"·"}.home-row-due{display:inline-flex;align-items:center;gap:4px;margin-top:1px;color:var(--ink-faint);font-size:12px;font-weight:500;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.home-row-due.overdue{color:var(--coral)}.home-row-chevron{margin-top:2px;color:#b7c0b5}.home-list .work-card-sources{padding:0 18px 12px 40px;font-size:13px}.home-agenda,.home-field{display:grid}.home-agenda-row,.home-field-row{display:grid;grid-template-columns:52px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;padding:12px 18px;color:inherit;border-bottom:1px solid #eef1ec;transition:background .12s ease}.home-agenda-row:last-child,.home-field-row:last-child{border-bottom:0}.home-agenda-row:hover,.home-field-row:hover{background:#fafbf9}.home-field-row time{color:var(--ink-soft);font-size:13px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.home-field-row time.overdue{color:var(--coral)}.home-agenda-row strong,.home-field-row strong{display:block;overflow:hidden;color:var(--ink);font-size:14px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.home-agenda-row small,.home-field-row small{display:flex;align-items:center;gap:4px;margin-top:2px;color:var(--ink-faint);font-size:12px}.home-agenda-row time{display:grid;justify-items:center;padding:5px 0;background:var(--ry-fill);border-radius:9px}.home-agenda-row time strong{color:var(--ink);font-size:17px;font-weight:600;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.home-agenda-row time span{color:var(--ink-faint);font-size:11px}@media (max-width:1080px){.home-grid{grid-template-columns:1fr}}@media (max-width:820px){.home-header{align-items:flex-start;margin-bottom:18px}.home-heading h1{font-size:24px}.home-header-actions{width:100%;justify-content:space-between}.home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.home-stat{min-height:92px;padding:14px 16px}.home-stat:nth-child(odd){box-shadow:none}.home-stat:nth-child(2n){box-shadow:inset 1px 0 0 var(--line)}.home-stat:nth-child(n+3){border-top:1px solid var(--line)}.home-stat strong{font-size:24px}.home-row{grid-template-columns:8px minmax(0,1fr) 16px;padding:14px 14px 14px 16px}.home-row-due{grid-column:2;grid-row:2;margin-top:-4px}.home-row-chevron{grid-column:3;grid-row:1}}.project-overview-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:14px;background:white;border:1px solid var(--line);border-radius:var(--radius-md)}.project-overview-strip>div{position:relative;padding:13px 17px}.project-overview-strip>div+div:before{position:absolute;top:13px;bottom:13px;left:0;width:1px;content:"";background:var(--line)}.project-overview-strip span,.project-overview-strip strong{display:block}.project-overview-strip span{color:var(--ink-faint);font-size:12px}.project-overview-strip strong{margin-top:3px;color:var(--navy-deep);font-family:var(--font-data);font-size:20px}.project-filter-panel{margin-bottom:16px;padding:9px}.project-filter-panel,.project-search{display:flex;align-items:center;gap:8px}.project-search{min-width:240px;flex:1 1;padding:0 9px;color:var(--ink-faint);background:#f8f9f6;border:1px solid var(--line);border-radius:7px}.project-search input{min-height:36px;padding:0;background:transparent;border:0;outline:0}.project-select{display:flex;align-items:center;gap:6px;padding-left:9px;color:var(--ink-faint);background:white;border:1px solid var(--line);border-radius:7px}.project-select select{min-width:130px;min-height:36px;border:0;outline:0}.project-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:13px;gap:13px}.project-card{position:relative;min-width:0;padding:17px;overflow:hidden;background:white;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.project-card:before{position:absolute;top:0;right:0;left:0;height:3px;content:"";background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.project-card:hover{transform:translateY(-2px);border-color:#c4ccc2;box-shadow:0 12px 28px rgb(31 39 35/9%)}.project-card:hover:before{transform:scaleX(1)}.project-card-topline{display:flex;align-items:center;justify-content:space-between}.project-code{color:var(--teal);font-family:var(--font-data);font-weight:600;letter-spacing:0}.project-card h2{min-height:43px;margin:12px 0 3px;color:var(--navy-deep);font-size:17px;font-weight:600;letter-spacing:-.025em;line-height:1.35}.project-customer{margin:0;color:var(--ink-faint);font-size:12px}.project-card-next{min-height:79px;margin-top:14px;padding:10px 11px;background:#f8f9f6;border-left:3px solid #a9b0a7;border-radius:0 7px 7px 0}.project-card-next small,.project-card-next span,.project-card-next strong{display:block}.project-card-next span{color:var(--ink-faint);font-size:12px;font-weight:600;letter-spacing:0}.project-card-next strong{margin-top:4px;color:var(--navy-deep);font-size:12px}.project-card-next small{margin-top:4px;color:var(--ink-faint);font-size:12px}.project-card-numbers{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-top:14px}.project-card-numbers>div+div{padding-left:8px;border-left:1px solid var(--line)}.project-card-numbers span,.project-card-numbers strong{display:block}.project-card-numbers span{color:var(--ink-faint);font-size:12px}.project-card-numbers strong{margin-top:3px;color:var(--navy);font-family:var(--font-data);font-size:14px}.project-task-progress{display:grid;grid-template-columns:1fr auto;grid-gap:5px;gap:5px;align-items:center;margin-top:14px;color:var(--ink-faint);font-size:12px}.project-task-progress strong{color:var(--ink-soft);font-family:var(--font-data)}.project-task-progress .progress-track{grid-column:1/-1}.project-open{display:flex;align-items:center;gap:4px;margin-top:14px;color:var(--teal);font-size:12px;font-weight:600}.project-no-results{padding:50px;text-align:center}.project-no-results strong{color:var(--navy-deep)}.project-no-results p{margin:4px 0 0;color:var(--ink-faint)}.project-list-header{margin-bottom:16px}.project-worklist-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:13px;padding:8px}.project-view-tabs{display:flex;align-items:center;gap:3px}.project-view-tabs button{display:inline-flex;min-height:38px;align-items:center;gap:7px;padding:0 13px;background:transparent;border:0;cursor:pointer}.project-view-tabs button span{min-width:20px;padding:1px 6px;background:var(--lab-white);border-radius:999px;font-family:var(--font-data);text-align:center}.project-view-tabs button.active{color:var(--navy-deep);font-weight:600;background:var(--teal-soft)}.project-view-tabs button.active span{color:white;background:var(--teal)}.project-worklist-controls{display:grid;width:min(100%,500px);grid-template-columns:minmax(0,1fr) 132px;grid-gap:8px}.project-worklist-controls .project-worklist-search{width:100%;min-width:0;max-width:none}.project-worklist-sort{min-height:38px}.project-worklist-search{max-width:340px;flex:0 1 340px}.project-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 13px}.project-filter-row select{min-height:38px;max-width:100%;padding:0 10px;color:var(--ink);background:white;border:1px solid var(--line);border-radius:7px}.project-worklist{display:grid;grid-gap:8px;gap:8px}.project-work-row{position:relative;display:grid;min-width:0;grid-template-columns:minmax(220px,1.15fr) 125px minmax(250px,1.35fr) minmax(170px,.75fr) 38px;align-items:center;grid-gap:18px;gap:18px;min-height:104px;padding:15px 16px 15px 20px;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.project-work-row:hover{border-color:#bcc3ba;box-shadow:0 10px 28px rgb(31 39 35/8%);transform:translateY(-1px)}.project-work-row.project-just-created{background:linear-gradient(90deg,var(--teal-soft),var(--surface) 28%);border-color:var(--teal);box-shadow:0 0 0 3px rgb(81 126 105/12%),var(--shadow-sm)}.project-health-line{position:absolute;inset:0 auto 0 0;width:4px;background:var(--teal)}.project-at_risk .project-health-line{background:var(--coral)}.project-watch .project-health-line{background:var(--amber)}.project-work-identity,.project-work-next,.project-work-schedule{min-width:0}.project-work-identity>div{display:flex;align-items:center;margin-bottom:6px}.project-work-identity>strong{color:var(--navy-deep);font-size:16px}.project-work-identity>small,.project-work-identity>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-work-identity>small{margin-top:3px;font-size:12px}.project-work-next,.project-work-phase,.project-work-schedule{display:grid;grid-gap:5px;gap:5px;align-content:center}.project-work-next>small,.project-work-phase>small,.project-work-schedule>small{font-weight:600;letter-spacing:0}.project-work-phase .badge{justify-self:start}.project-work-next>strong{overflow:hidden;color:var(--navy-deep);line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.project-work-next>span,.project-work-schedule>span{display:flex;min-width:0;align-items:center;gap:4px;overflow:hidden;color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap}.project-work-next>span.overdue{color:var(--coral);font-weight:600}.project-work-schedule>strong{display:flex;align-items:center;gap:5px;color:var(--navy);font-family:var(--font-data)}.project-work-open{display:flex;align-items:center;justify-content:flex-end;gap:9px;color:var(--teal)}.project-work-open>span{display:grid;width:27px;height:27px;place-items:center;color:var(--coral);background:var(--coral-soft);border-radius:8px}@media (max-width:1120px){.project-work-row{grid-template-columns:minmax(220px,1fr) 120px minmax(230px,1.25fr) 32px}.project-work-schedule{display:none}}@media (max-width:760px){.project-worklist-toolbar{align-items:stretch;flex-direction:column;gap:8px}.project-view-tabs{width:100%}.project-view-tabs button{flex:1 1;justify-content:center;padding:0 8px}.project-worklist-controls{width:100%}.project-worklist-search{width:100%;max-width:none;flex-basis:auto}.project-work-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:0;padding:15px 14px 15px 18px}.project-work-identity{grid-column:1}.project-work-phase{grid-column:2;grid-row:1;justify-items:end}.project-work-next{grid-column:1/-1;padding-top:12px;border-top:1px solid var(--line)}.project-work-open{position:absolute;right:13px;bottom:17px}.project-work-open>span{display:none}.project-work-next>strong{padding-right:25px;white-space:normal}}.project-list-header{margin-bottom:20px}.project-worklist-toolbar{flex-wrap:wrap;gap:10px 16px;margin-bottom:10px;padding:0;background:transparent;border:0;box-shadow:none}.project-view-tabs{display:inline-flex;gap:2px;padding:2px;background:var(--ry-fill);border-radius:9px}.project-view-tabs button{min-height:30px;gap:6px;padding:0 12px;color:var(--ink-soft);font-size:13px;font-weight:500;border-radius:7px;transition:background .12s ease,color .12s ease}.project-view-tabs button span{min-width:0;padding:0;color:var(--ink-faint);background:transparent;font-size:12px}.project-view-tabs button.active{color:var(--ink);font-weight:500;background:#fff;box-shadow:0 1px 2px rgb(37 45 41/10%),0 0 0 .5px rgb(37 45 41/6%)}.project-view-tabs button.active span{color:var(--ink-soft);background:transparent}.project-worklist-controls{display:flex;width:auto;flex-wrap:wrap;gap:8px}.project-worklist-controls .project-worklist-search{width:280px;flex:0 1 280px}.project-search{min-width:min(100%,220px);height:34px;gap:7px;padding:0 10px;background:var(--ry-fill);border:1px solid transparent;border-radius:9px;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.project-search:hover{background:var(--ry-fill-2)}.project-search:focus-within,.search-input-wrap:focus-within{background:#fff;border-color:var(--ry-green);box-shadow:0 0 0 3px rgb(51 92 73/14%)}.project-search input{min-height:32px;font-size:14px}.project-search input:focus,.search-input-wrap input:focus{box-shadow:none}.animal-list-toolbar>select,.inventory-toolbar>select,.ledger-toolbar>select,.procurement-toolbar select,.project-filter-row select,.project-worklist-sort,.support-toolbar>select{width:auto;min-height:32px;max-width:100%;padding:0 30px 0 12px;color:var(--ink-soft);font-size:13px;font-weight:500;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23687267' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center /12px;border:1px solid var(--line-strong);border-radius:8px;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.animal-list-toolbar>select:hover,.inventory-toolbar>select:hover,.ledger-toolbar>select:hover,.procurement-toolbar select:hover,.project-filter-row select:hover,.project-worklist-sort:hover,.support-toolbar>select:hover{color:var(--ink);background-color:#f8f9f7}.animal-list-toolbar .project-search,.inventory-toolbar .project-search,.ledger-toolbar .project-search,.procurement-toolbar .project-search,.support-toolbar .project-search{height:34px}.project-filter-row{gap:6px;margin:0 0 14px}.project-filter-row .filter-chip{min-height:32px;padding:0 12px;font-size:13px;font-weight:500;border-color:var(--line-strong);border-radius:8px}.project-filter-row .text-link{padding:0 6px;font-size:13px}.project-worklist{gap:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px rgb(37 45 41/3%)}.project-work-row{grid-template-columns:minmax(220px,1.2fr) 108px minmax(240px,1.35fr) minmax(160px,.75fr) 28px;gap:20px;min-height:84px;padding:14px 18px 14px 20px;overflow:visible;background:#fff;border:0;border-bottom:1px solid #eef1ec;border-radius:0;box-shadow:none;transition:background .12s ease}.project-work-row:last-child{border-bottom:0}.project-work-row:hover{background:#fafbf9;border-color:#eef1ec;box-shadow:none;transform:none}.project-work-row.project-just-created{background:var(--ry-green-tint);border-color:#eef1ec;box-shadow:inset 3px 0 0 var(--ry-green)}.project-health-line{display:none}.project-code{color:var(--ink-faint);font-size:12px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.project-work-identity>div{gap:8px;margin-bottom:4px}.project-work-identity>div .badge{min-height:20px;padding:0 7px}.project-work-identity>strong{color:var(--ink);font-size:15px;font-weight:600}.project-work-identity>small{color:var(--ink-faint);font-size:13px}.project-work-next>small,.project-work-phase>small,.project-work-schedule>small{color:var(--ink-faint);font-size:12px;font-weight:500}.project-work-next>strong{color:var(--ink);font-size:14px;font-weight:500}.project-work-next>span,.project-work-schedule>span{font-size:12px}.project-work-schedule>strong{color:var(--ink-soft);font-size:13px;font-weight:500}.project-work-open{color:#b7c0b5}.project-work-row:hover .project-work-open{color:var(--ink-faint)}.project-work-open>span{width:24px;height:24px;border-radius:7px}.project-no-results{padding:48px 24px;border-radius:12px}.project-no-results strong{color:var(--ink);font-size:16px;font-weight:600}@media (max-width:760px){.project-worklist-toolbar{align-items:stretch}.project-worklist-controls{width:100%}.project-worklist-controls .project-worklist-search{flex:1 1 auto;width:auto}.project-work-row{padding:14px 14px 14px 16px}.project-work-phase>small{display:none}.project-work-next{border-top-color:#eef1ec}}.project-fact-phase{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-top:12px;padding:10px 14px;color:var(--ry-green-deep);background:var(--ry-green-tint);border-radius:10px}.project-fact-phase p{margin:0;font-size:13px;line-height:1.6}.project-fact-hint{justify-self:start;color:var(--ry-green);font-size:12px;font-weight:500}.schedule-page-header{align-items:flex-end}.schedule-page-header .back-link{display:inline-flex;align-items:center;gap:5px;margin-bottom:14px;color:var(--teal);font-size:12px;font-weight:600}.schedule-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 12px;padding-bottom:3px}.schedule-legend>span{display:inline-flex;align-items:center;gap:5px;color:var(--ink-soft);font-size:12px;white-space:nowrap}.schedule-legend i{width:8px;height:8px;background:var(--schedule-accent);border-radius:3px}.schedule-kind-non_animal,.schedule-kind-preop{--schedule-accent:var(--blue);--schedule-soft:var(--blue-soft)}.schedule-kind-procedure{--schedule-accent:var(--teal);--schedule-soft:var(--teal-soft)}.schedule-kind-follow_up{--schedule-accent:var(--amber);--schedule-soft:var(--amber-soft)}.schedule-kind-endpoint{--schedule-accent:var(--coral);--schedule-soft:var(--coral-soft)}.schedule-summary-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:14px;overflow:hidden;background:white;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.schedule-summary-strip>div{position:relative;padding:12px 16px}.schedule-summary-strip>div+div:before{position:absolute;top:12px;bottom:12px;left:0;width:1px;content:"";background:var(--line)}.schedule-summary-strip small,.schedule-summary-strip span,.schedule-summary-strip strong{display:block}.schedule-summary-strip span{color:var(--ink-faint)}.schedule-summary-strip strong{margin-top:2px;color:var(--navy-deep);font-family:var(--font-data);font-size:19px;line-height:1.15}.schedule-summary-strip small{margin-top:2px;color:var(--ink-faint);font-size:11px}.schedule-summary-strip .has-conflict strong{color:var(--coral)}.schedule-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.36fr);grid-gap:14px;gap:14px;align-items:start}.calendar-panel{overflow:hidden}.calendar-toolbar{display:flex;min-height:61px;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid var(--line)}.calendar-toolbar>div{display:flex;align-items:center;gap:8px}.calendar-toolbar h2{min-width:130px;margin:0;color:var(--navy-deep);text-align:center;font-family:var(--font-data);font-size:17px;letter-spacing:-.02em}.calendar-nav-button{display:grid;width:30px;height:30px;place-items:center;color:var(--ink-soft);background:#f5f6f3;border:1px solid var(--line);border-radius:7px;cursor:pointer}.calendar-nav-button:hover{color:var(--teal);background:var(--teal-soft)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));color:var(--ink-faint);background:#f8f9f7;border-bottom:1px solid var(--line)}.calendar-weekdays span{padding:7px 8px;text-align:center;font-weight:600}.experiment-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{position:relative;display:grid;min-width:0;min-height:112px;align-content:start;grid-gap:6px;gap:6px;padding:7px;text-align:left;background:white;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer}.calendar-day:nth-child(7n){border-right:0}.calendar-day:nth-last-child(-n+7){border-bottom:0}.calendar-day:hover{z-index:1;background:#fafbf8;box-shadow:inset 0 0 0 1px #c4d6cd}.calendar-day.outside{background:#fafbf9}.calendar-day.outside .calendar-day-events,.calendar-day.outside .calendar-day-number{opacity:.38}.calendar-day.selected{z-index:2;background:#f9faf7;box-shadow:inset 0 0 0 2px var(--teal)}.calendar-day-number{display:flex;align-items:center;justify-content:space-between;color:var(--ink-soft);font-family:var(--font-data);font-size:12px;font-weight:600}.calendar-day-number small{padding:1px 5px;color:white;background:var(--teal);border-radius:8px;font-family:var(--font-body);font-size:11px}.calendar-day-events{display:grid;grid-gap:4px;gap:4px;min-width:0}.calendar-event-chip{display:grid;min-width:0;grid-gap:1px;gap:1px;padding:4px 5px;overflow:hidden;color:var(--ink-soft);background:var(--schedule-soft);border-left:3px solid var(--schedule-accent);border-radius:5px}.calendar-event-chip small,.calendar-event-chip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event-chip strong{color:var(--navy-deep);font-family:var(--font-data);font-size:11px}.calendar-event-chip small{font-size:11px}.calendar-event-chip.conflict{box-shadow:inset 0 0 0 1px #dfa49a}.calendar-more{color:var(--ink-faint);font-size:11px}.schedule-day-panel>.panel{overflow:hidden}.schedule-day-list{display:grid;grid-gap:9px;gap:9px}.schedule-detail-card{position:relative;display:block;padding:12px;overflow:hidden;background:white;border:1px solid var(--line);border-radius:9px}.schedule-detail-card:before{position:absolute;inset:0 auto 0 0;width:3px;content:"";background:var(--schedule-accent)}.schedule-detail-card:hover{border-color:#c3d2ca;box-shadow:var(--shadow-sm)}.schedule-detail-card.has-conflict{border-color:#eac4bd}.schedule-detail-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.schedule-detail-card>strong{display:block;margin-top:10px;color:var(--navy-deep);font-size:14px}.schedule-detail-card>small{display:block;margin-top:3px;color:var(--ink-faint)}.schedule-detail-card dl{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px;margin:12px 0 0;padding:10px;background:#f8f9f7;border-radius:7px}.schedule-detail-card dl>div{min-width:0}.schedule-detail-card dt{display:flex;align-items:center;gap:4px;color:var(--ink-faint);font-size:11px}.schedule-detail-card dd{margin:2px 0 0;overflow:hidden;color:var(--navy-deep);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.schedule-detail-card dl>div:first-child{grid-column:1/-1}.schedule-detail-card dl>div:first-child dd{white-space:normal;overflow-wrap:anywhere}.schedule-conflict-note,.schedule-note{display:flex;align-items:flex-start;gap:5px;margin:9px 0 0;padding:7px 8px;color:#874036;background:var(--coral-soft);border-radius:6px;font-size:12px}.schedule-note{display:block;color:var(--ink-soft);background:#f5f6f3}.schedule-conflict-note svg{flex:none;margin-top:1px}.schedule-project-link{display:inline-flex;align-items:center;gap:4px;margin-top:10px;color:var(--teal);font-size:12px;font-weight:600}.unscheduled-projects-panel{margin-top:14px}.unscheduled-project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.unscheduled-project-list>a{display:grid;grid-template-columns:95px minmax(0,1fr) auto 16px;grid-gap:10px;gap:10px;align-items:center;min-height:60px;padding:9px 11px;background:#f9faf8;border:1px solid var(--line);border-radius:8px}.unscheduled-project-list>a:hover{border-color:#c3d2ca}.unscheduled-project-list small,.unscheduled-project-list strong{display:block}.unscheduled-project-list strong{color:var(--navy-deep);font-size:12px}.unscheduled-project-list small{margin-top:2px;overflow:hidden;color:var(--ink-faint);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.unscheduled-project-list>a>span>strong{color:var(--teal);font-family:var(--font-data)}@media (max-width:1100px){.schedule-workspace{grid-template-columns:1fr}.schedule-day-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.schedule-page-header{align-items:flex-start}.schedule-legend{justify-content:flex-start;margin-top:13px}.schedule-summary-strip{grid-template-columns:repeat(2,1fr)}.schedule-summary-strip>div:nth-child(3):before{display:none}.schedule-summary-strip>div:nth-child(n+3){border-top:1px solid var(--line)}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-day{min-height:82px;padding:5px}.calendar-event-chip{padding:3px 4px}.calendar-event-chip small{display:none}.schedule-day-list,.unscheduled-project-list{grid-template-columns:1fr}}@media (max-width:520px){.calendar-toolbar{align-items:center}.calendar-toolbar>div{width:100%;justify-content:space-between}.calendar-toolbar>.button{width:100%}.calendar-weekdays span{padding-right:2px;padding-left:2px;font-size:11px}.calendar-day{min-height:62px;gap:3px;padding:4px}.calendar-day-number{font-size:12px}.calendar-day-number small{display:none}.calendar-day-events{display:flex;flex-wrap:wrap;gap:2px}.calendar-event-chip{width:8px;min-height:6px;padding:0;border:0;border-radius:3px;background:var(--schedule-accent)}.calendar-event-chip small,.calendar-event-chip strong{display:none}.calendar-more{font-size:11px}.unscheduled-project-list>a{grid-template-columns:80px 1fr auto}.unscheduled-project-list>a>svg{display:none}}.project-breadcrumb{display:flex;align-items:center;gap:6px;margin-bottom:13px;color:var(--ink-faint);font-size:12px}.project-breadcrumb a{display:inline-flex;align-items:center;gap:5px;color:var(--teal)}.project-detail-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.project-detail-header h1{margin:8px 0 3px;color:var(--navy-deep);font-size:clamp(25px,2.4vw,34px);letter-spacing:-.02em}.project-detail-header p{margin:0;color:var(--ink-soft);font-size:13px}.project-title-meta{display:flex;align-items:center;gap:6px}.project-code-copy{padding:0;color:var(--teal);background:transparent;border:0;cursor:pointer;font-family:var(--font-data);font-size:12px;font-weight:600;letter-spacing:0}.project-code-copy:hover{text-decoration:underline;text-underline-offset:3px}.project-code-copy:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:3px}.project-stage-panel{margin-bottom:14px;padding:15px 20px 12px;overflow-x:auto}.project-phase-rail{position:relative;display:grid;min-width:500px;grid-template-columns:repeat(5,1fr)}.project-phase-rail:before{position:absolute;top:14px;right:10%;left:10%;height:2px;content:"";background:#e0e4de}.project-phase-rail>div{position:relative;z-index:1;display:grid;justify-items:center;grid-gap:6px;gap:6px;color:var(--ink-faint)}.project-phase-rail>div>span{display:grid;width:29px;height:29px;place-items:center;background:white;border:2px solid #d6dbd5;border-radius:50%;font-family:var(--font-data);font-size:12px}.project-phase-rail>div small{font-size:12px;white-space:nowrap}.project-phase-rail>div.done>span{color:white;background:var(--teal);border-color:var(--teal)}.project-phase-rail>div.current>span{color:var(--teal);background:white;border:4px solid var(--teal);box-shadow:0 0 0 4px var(--teal-soft)}.project-phase-rail>div.current small{color:var(--teal);font-weight:600}.project-runway{display:grid;grid-template-columns:1.2fr 1fr 1fr;margin-bottom:14px;padding:0;overflow:hidden;border-color:#c1d2c9;box-shadow:0 10px 26px rgb(69 113 92/8%)}.project-runway-item{display:grid;min-width:0;grid-template-columns:38px minmax(0,1fr) auto;grid-gap:11px;gap:11px;align-items:center;min-height:104px;padding:17px 18px}.project-runway-item+.project-runway-item{border-left:1px solid var(--line)}.project-runway-action{background:linear-gradient(120deg,#f7f8f5,#fff 76%)}.project-runway-action.is-overdue{background:linear-gradient(120deg,#f8f9f7,#fff 76%)}.project-runway-action.is-overdue .project-runway-icon{color:var(--coral);background:var(--coral-soft)}.project-runway-action.is-overdue p{color:#944f44}.project-runway-icon{display:grid;width:38px;height:38px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:10px}.project-runway-item>div{display:grid;min-width:0;grid-gap:3px;gap:3px}.project-runway-item small{color:var(--ink-faint);font-size:12px;font-weight:650;letter-spacing:0}.project-runway-item strong{color:var(--navy-deep);font-size:14px;line-height:1.4}.project-runway-item p,.project-runway-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-runway-item p{margin:0;color:var(--ink-soft);font-size:12px;line-height:1.45}.project-runway-item .text-link{white-space:nowrap}.project-runway-issues.has-issues{background:#fafbf9}.project-runway-issues.has-issues .project-runway-icon{color:var(--coral);background:var(--coral-soft)}.project-runway-issues.has-issues strong{color:#884237}.project-runway-action{grid-template-columns:38px minmax(0,1fr)}.project-runway-action p,.project-runway-action strong{white-space:normal;overflow-wrap:anywhere}.project-runway-item>.project-runway-actions{display:flex;grid-column:2;flex-wrap:wrap;gap:6px;align-items:center}.project-runway-actions>.text-link{padding:3px 8px;color:var(--ink-soft);background:none;border:0;cursor:pointer;font-size:12px}.project-issue-list{grid-column:1/-1;padding:12px 18px;border-top:1px solid var(--line)}.project-issue-list summary{color:var(--ink-soft);cursor:pointer;font-size:13px}.project-issue-list ul{display:grid;grid-gap:6px;gap:6px;margin:10px 0 0;padding:0;list-style:none}.project-issue-list li{display:flex;gap:16px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:14px}.project-issue-list li>span{min-width:0;overflow-wrap:anywhere}.project-issue-list li>button{flex-shrink:0}.project-workflow-options{display:grid;grid-gap:8px;gap:8px}.project-workflow-options>button{white-space:normal}.detail-tabs{display:flex;gap:20px;margin-bottom:16px;padding:0 3px;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid var(--line-strong)}.detail-tabs button{position:relative;min-height:39px;padding:0 1px;color:var(--ink-soft);white-space:nowrap;background:none;border:0;cursor:pointer;font-size:13px}.detail-tabs button:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;content:"";background:transparent}.detail-tabs button.active{color:var(--navy-deep);font-weight:600}.detail-tabs button.active:after{background:var(--teal)}.project-detail-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,.62fr);grid-gap:15px;gap:15px;align-items:start}.project-detail-main,.project-detail-side{display:grid;grid-gap:14px;gap:14px}.project-metrics{grid-template-columns:repeat(4,1fr)}.project-timeline,.task-list{display:grid}.project-timeline>div{position:relative;display:grid;grid-template-columns:11px 72px 1fr;grid-gap:10px;gap:10px;padding:0 0 17px}.project-timeline>div:before{position:absolute;top:9px;bottom:-1px;left:4px;width:1px;content:"";background:#e0e5df}.project-timeline>div:last-child:before{display:none}.project-timeline>div>span{z-index:1;width:9px;height:9px;margin-top:4px;background:white;border:2px solid var(--teal);border-radius:50%}.project-timeline time{color:var(--ink-faint);font-family:var(--font-data);font-size:12px}.project-timeline strong{color:var(--navy-deep);font-size:12px}.project-timeline p{margin:3px 0;color:var(--ink-soft);font-size:12px}.project-timeline small{color:var(--ink-faint);font-size:12px}.detail-list{display:grid;margin:15px 0 0}.detail-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #eff1ed}.detail-list dt{display:inline-flex;align-items:center;gap:6px;color:var(--ink-faint);font-size:12px}.detail-list dd{margin:0;color:var(--navy-deep);font-size:12px;font-weight:600;text-align:right}.detail-section-grid{display:grid;grid-gap:14px;gap:14px}.contract-summary-line{display:grid;grid-template-columns:1.4fr repeat(3,1fr);border:1px solid var(--line);border-radius:8px;overflow:hidden}.contract-summary-line>div{padding:14px}.contract-summary-line>div+div{border-left:1px solid var(--line)}.contract-summary-line small,.contract-summary-line span,.contract-summary-line strong{display:block}.contract-summary-line span{color:var(--ink-faint);font-size:12px}.contract-summary-line strong{margin-top:5px;color:var(--navy-deep);font-family:var(--font-data);font-size:16px}.contract-summary-line small{margin-top:2px;color:var(--ink-faint);font-size:12px}.contract-change-row{display:grid;grid-template-columns:auto 1fr auto auto;grid-gap:11px;gap:11px;align-items:center;margin-top:10px;padding:11px 13px;background:#f9faf7;border:1px solid #e3e8e2;border-radius:8px}.contract-change-row small,.contract-change-row strong{display:block}.contract-change-row strong{font-size:12px}.contract-change-row small{color:var(--ink-faint);font-size:12px}.contract-change-row>.contract-change-amount{color:var(--teal);font-family:var(--font-data);font-weight:600}.payment-list{display:grid}.payment-list>div{display:grid;grid-template-columns:24px 1fr auto auto;grid-gap:10px;gap:10px;align-items:center;min-height:57px;border-top:1px solid #eff1ed}.payment-list>div>div small,.payment-list>div>div strong{display:block}.payment-list>div>div strong{font-size:12px}.payment-list>div>div small{color:var(--ink-faint);font-size:12px}.payment-list>div>strong{font-family:var(--font-data);font-size:13px}.payment-state{display:grid;width:22px;height:22px;place-items:center;color:var(--ink-faint);background:#f0f2ed;border-radius:50%;font-family:var(--font-data);font-size:12px;font-weight:600}.payment-received{color:white;background:var(--teal)}.payment-overdue{color:white;background:var(--coral)}.ledger-lenses{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:9px;gap:9px}.ledger-lenses>div{padding:13px;background:#f8f9f7;border:1px solid var(--line);border-radius:8px}.ledger-lenses span{display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:12px}.ledger-lenses strong{display:block;margin-top:9px;color:var(--navy-deep);font-family:var(--font-data);font-size:20px}.ledger-lenses small{display:block;margin-top:3px;color:var(--ink-faint);font-size:12px}.resource-booking{display:grid}.resource-booking>div{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:10px;gap:10px;align-items:center;min-height:54px;border-top:1px solid #eff1ed}.resource-booking strong{font-size:12px}.resource-booking>div>span{color:var(--ink-faint);font-size:12px}.project-resource-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:9px;gap:9px}.project-resource-summary>a,.project-resource-summary>div{display:grid;min-width:0;grid-gap:5px;gap:5px;padding:14px;color:inherit;background:#fafbf8;border:1px solid var(--line);border-radius:9px}.project-resource-summary>a:hover{border-color:#acc1b6;background:var(--teal-soft)}.project-resource-summary span{display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:12px}.project-resource-summary strong{color:var(--navy-deep);font-family:var(--font-data);font-size:18px}.project-resource-summary small{color:var(--ink-faint);font-size:12px}.phase-advance-confirm{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:12px;gap:12px;align-items:center;padding:18px;text-align:center;background:var(--teal-soft);border-radius:10px}.phase-advance-confirm span{color:var(--ink-soft);font-size:14px}.phase-advance-confirm strong{color:var(--teal);font-size:14px}.experiment-record-list{display:grid;grid-gap:10px;gap:10px;margin-top:10px}.experiment-record-list article{padding:14px 15px;background:#fcfdfa;border:1px solid var(--line);border-radius:9px}.experiment-record-list article.is-voided{background:#f7f8f6;opacity:.78}.experiment-record-list article>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.experiment-record-list article small,.experiment-record-list article strong{display:block}.experiment-record-list article>header strong{color:var(--navy-deep);font-size:14px}.experiment-record-list article>header small{margin-top:3px;color:var(--ink-faint);font-size:12px}.experiment-record-actions{display:flex;align-items:center;gap:6px}.experiment-record-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;color:var(--ink-soft);font-size:12px}.experiment-record-list article>p{margin:10px 0 0;color:var(--ink);font-size:13px;line-height:1.65;white-space:pre-wrap}.experiment-record-void-note{margin-top:9px!important;color:var(--coral)!important}.form-help{color:var(--amber)}.form-error,.form-help{margin:0;font-size:12px}.form-error{padding:8px 10px;color:#933d32;background:var(--coral-soft);border-radius:7px}@media (max-width:1120px){.project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail-grid,.project-detail-side{grid-template-columns:1fr}}@media (max-width:820px){.project-card-grid{grid-template-columns:1fr}.project-filter-panel{flex-wrap:wrap}.project-search{width:100%;flex-basis:100%}.project-select{flex:1 1}.project-select select{width:100%}.project-detail-header{align-items:flex-start}.project-runway{grid-template-columns:1fr}.project-runway-item+.project-runway-item{border-top:1px solid var(--line);border-left:0}.project-detail-side{grid-template-columns:1fr}.contract-summary-line,.project-metrics{grid-template-columns:repeat(2,1fr)}.contract-summary-line>div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.contract-summary-line>div:nth-child(4){border-top:1px solid var(--line)}}@media (max-width:560px){.project-overview-strip{grid-template-columns:repeat(2,1fr)}.project-overview-strip>div:nth-child(3):before{display:none}.project-overview-strip>div:nth-child(n+3){border-top:1px solid var(--line)}.project-detail-header{display:block}.project-detail-header .page-header-actions{margin-top:14px}.project-stage-panel{padding:12px 5px 10px;overflow-x:hidden}.project-phase-rail{min-width:0}.project-phase-rail:before{top:12px}.project-phase-rail>div{gap:5px}.project-phase-rail>div>span{width:25px;height:25px;font-size:12px}.project-phase-rail>div small{font-size:12px}.project-metrics{grid-template-columns:repeat(2,1fr)}.project-runway-item{grid-template-columns:34px minmax(0,1fr) auto;min-height:92px;padding:14px}.project-runway-icon{width:34px;height:34px}.ledger-lenses{grid-template-columns:1fr}.payment-list>div{grid-template-columns:24px 1fr auto;padding:8px 0}.payment-list .badge{grid-column:2/-1;justify-self:start}.resource-booking>div{grid-template-columns:1fr auto;padding:8px 0}.resource-booking>div>span{grid-column:1/-1}.project-resource-summary{grid-template-columns:1fr}.experiment-record-list article>header{display:grid}.experiment-record-actions{justify-content:space-between}}.finance-lens-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:12px}.finance-lens-switch button{display:grid;grid-template-columns:36px 1fr;grid-gap:10px;gap:10px;align-items:center;min-height:60px;padding:9px 12px;text-align:left;background:white;border:1px solid var(--line);border-radius:8px;cursor:pointer}.finance-lens-switch button>span{display:grid;width:34px;height:34px;place-items:center;color:var(--ink-faint);background:#f1f3ee;border-radius:8px}.finance-lens-switch small,.finance-lens-switch strong{display:block}.finance-lens-switch strong{color:var(--navy-deep);font-size:13px}.finance-lens-switch small{margin-top:2px;color:var(--ink-faint);font-size:12px}.finance-lens-switch button.active{color:var(--ink);background:#fff;border-color:#c4d3c6;box-shadow:0 0 0 1px #c4d3c6,0 4px 14px rgb(37 45 41/6%)}.finance-lens-switch button.active>span{color:var(--ry-green);background:var(--ry-green-soft)}.finance-lens-switch button.active strong{color:var(--ink)}.finance-lens-switch button.active small{color:var(--ink-faint)}.finance-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:9px;gap:9px;margin-bottom:15px}.finance-summary-grid>.panel{min-height:104px;padding:15px 16px}.finance-summary-grid small,.finance-summary-grid span,.finance-summary-grid strong{display:block}.finance-summary-grid>.panel>span{color:var(--ink-faint);font-size:12px}.finance-summary-grid>.panel>strong{margin-top:8px;color:var(--navy-deep);font-family:var(--font-data);font-size:23px;letter-spacing:-.02em}.finance-summary-grid>.panel>small{display:flex;align-items:center;gap:3px;margin-top:5px;color:var(--ink-faint);font-size:12px}.finance-summary-grid .finance-main-metric{color:var(--ink);background:var(--ry-green-tint);border-color:#d4e2d5}.finance-summary-grid .finance-main-metric>small,.finance-summary-grid .finance-main-metric>span{color:var(--ink-faint)}.finance-summary-grid .finance-main-metric>strong{color:var(--ry-green-deep)}.finance-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.75fr);grid-gap:14px;gap:14px;margin-bottom:14px}.cash-chart{display:flex;height:220px;align-items:flex-end;gap:clamp(10px,2.5vw,28px);padding:20px 8px 0;border-bottom:1px solid var(--line-strong);background:repeating-linear-gradient(0deg,transparent 0,transparent 54px,#eff1ed 55px)}.cash-month{display:grid;height:100%;flex:1 1;grid-template-rows:1fr 22px;align-items:end}.bar-pair{display:flex;height:100%;align-items:flex-end;justify-content:center;gap:3px}.bar-pair span{display:block;width:min(14px,36%);min-height:2px;border-radius:3px 3px 0 0}.bar-income{background:var(--teal)}.bar-out{background:#bfc6bc}.cash-month small{align-self:center;text-align:center}.cash-month small,.chart-legend{color:var(--ink-faint);font-size:12px}.chart-legend{display:flex;align-items:center;gap:14px;padding-top:11px}.chart-legend span{display:inline-flex;align-items:center;gap:5px}.chart-legend i{width:8px;height:8px;border-radius:2px}.chart-legend .income{background:var(--teal)}.chart-legend .out{background:#bfc6bc}.finance-bottom-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);grid-gap:14px;gap:14px}.back-link{display:inline-flex;align-items:center;gap:5px;margin-bottom:10px;color:var(--teal);font-size:13px;font-weight:600}.monthly-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}.monthly-summary-grid .panel{padding:15px 17px}.monthly-summary-grid small,.monthly-summary-grid span,.monthly-summary-grid strong{display:block}.monthly-summary-grid small{color:var(--ink-faint);font-size:12px}.monthly-summary-grid strong{margin-top:7px;color:var(--navy-deep);font-family:var(--font-data);font-size:24px}.monthly-summary-grid span{margin-top:3px;color:var(--ink-faint);font-size:12px}.monthly-summary-grid .monthly-main-metric{background:var(--ry-green-tint);border-color:#d4e2d5}.monthly-summary-grid .monthly-main-metric small,.monthly-summary-grid .monthly-main-metric span{color:var(--ink-faint)}.monthly-summary-grid .monthly-main-metric strong{color:var(--ry-green-deep)}.monthly-alert{display:grid;grid-template-columns:auto 1fr;grid-gap:10px;gap:10px;margin-bottom:14px;padding:13px 15px}.monthly-alert.critical{color:#843d33;background:#f6f7f5;border-color:#efd2cd}.monthly-alert strong{font-size:14px}.monthly-alert p{margin:4px 0 0;font-size:12px}.monthly-table-panel,.rate-rule-panel,.statement-history-panel{margin-bottom:14px;overflow:hidden}.monthly-table-panel .empty-mark{display:none}.command-fields{border:0;padding:0;margin:0;min-width:0}.master-data-scroll{max-height:48vh;overflow:auto}.master-data-scroll input{min-width:140px}.master-data-scroll th{position:-webkit-sticky;position:sticky;top:0;background:var(--surface-raised)}.master-data-sheet details>summary{cursor:pointer;color:var(--teal)}.master-data-diff{max-height:24vh;overflow:auto;border:1px solid var(--line);padding:12px;border-radius:8px;-webkit-clip-path:inset(0 round 8px);clip-path:inset(0 round 8px)}.master-data-diff>div{padding:8px 0;border-bottom:1px solid var(--line)}.master-data-diff p{margin:4px 0;overflow-wrap:anywhere}.billing-issue-groups{display:grid;grid-gap:10px;gap:10px;margin:12px 0}.billing-issue-group{border:1px solid var(--line);border-radius:8px;padding:12px}.billing-issue-group>header{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.billing-issue-group small{display:block;color:var(--ink-soft);margin:6px 0}.monthly-table td small{display:block;margin-top:3px}.monthly-table tfoot{color:var(--navy-deep);background:#f3f4f0;font-weight:600}.rate-rule-list,.statement-history{display:grid;border-top:1px solid var(--line)}.rate-rule-list article{display:grid;grid-template-columns:minmax(210px,1fr) 110px auto auto;grid-gap:12px;gap:12px;align-items:center;min-height:64px;padding:8px 0;border-bottom:1px solid #eff1ed}.rate-rule-list article.inactive{opacity:.56}.rate-rule-list small,.rate-rule-list strong{display:block}.rate-rule-list strong{font-size:13px}.rate-rule-list small{margin-top:3px;color:var(--ink-faint);font-size:12px}.rate-rule-list b{color:var(--navy-deep);font-family:var(--font-data);font-size:14px}.statement-history article{display:grid;grid-template-columns:24px minmax(180px,1fr) auto 110px auto;grid-gap:10px;gap:10px;align-items:center;min-height:60px;border-bottom:1px solid #eff1ed}.statement-history small,.statement-history strong{display:block}.statement-history small{margin-top:3px;color:var(--ink-faint);font-size:12px}.support-embedded-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px;padding:18px 20px;background:#f8f9f6;border:1px solid #dbdfda;border-radius:var(--radius-md)}.support-embedded-header h2{margin:3px 0 2px;color:var(--navy-deep);font-size:20px}.support-embedded-header p:not(.eyebrow){margin:0;color:var(--ink-soft);font-size:13px}.support-context-banner{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px;padding:10px 14px;color:var(--teal);background:var(--teal-soft);border:1px solid #d6dad5;border-radius:var(--radius-md)}.support-context-banner span{display:grid;grid-gap:2px;gap:2px}.support-context-banner strong{color:var(--navy-deep);font-size:14px}.support-context-banner small{color:var(--ink-soft);font-size:12px}.support-context-banner button{padding:6px 8px;color:var(--teal);font-size:12px;font-weight:600;white-space:nowrap;background:rgb(255 255 255/55%);border:0;border-radius:6px;cursor:pointer}.support-tabs{display:flex;gap:6px;margin-bottom:10px}.support-tabs button{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;color:var(--ink-soft);background:#f1f3ee;border:1px solid var(--line);border-radius:7px;font-size:13px;font-weight:600;cursor:pointer}.support-tabs button.active{color:var(--ink);background:#fff;border-color:transparent;box-shadow:0 1px 2px rgb(37 45 41/10%),0 0 0 .5px rgb(37 45 41/6%)}.support-tabs button span{display:grid;min-width:19px;height:19px;padding:0 5px;place-items:center;color:var(--ink-soft);background:white;border-radius:10px;font-family:var(--font-data);font-size:12px}.support-tabs button.active span{color:var(--ry-green-deep);background:var(--ry-green-soft)}.support-workspace{overflow:hidden}.support-toolbar{display:flex;gap:9px;align-items:center}.support-toolbar .project-search{flex:1 1;max-width:none}.support-toolbar .filter-row{flex:0 0 auto;margin:0}.support-table td small{display:block;margin-top:3px}@media (max-width:760px){.support-embedded-header{align-items:stretch;flex-direction:column}.support-context-banner{align-items:flex-start;flex-direction:column}.support-toolbar{align-items:stretch;flex-direction:column}}@media (max-width:800px){.monthly-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-rule-list article{grid-template-columns:1fr auto}.statement-history article{grid-template-columns:24px 1fr auto}}.receivable-list{display:grid}.receivable-list>div{display:grid;grid-template-columns:30px 1fr auto auto;grid-gap:9px;gap:9px;align-items:center;min-height:58px;border-top:1px solid #eff1ed}.receive-overdue,.receive-upcoming{display:grid;width:29px;height:29px;place-items:center;color:var(--coral);background:var(--coral-soft);border-radius:8px}.receive-upcoming{color:var(--blue);background:var(--blue-soft)}.receivable-list small,.receivable-list strong{display:block}.receivable-list strong{color:var(--navy-deep);font-size:12px}.receivable-list small{margin-top:2px;color:var(--ink-faint);font-size:12px}.receivable-list>div>div:nth-child(3){text-align:right}@media (max-width:1100px){.finance-summary-grid{grid-template-columns:repeat(2,1fr)}.finance-bottom-grid,.finance-grid{grid-template-columns:1fr}}@media (max-width:600px){.finance-lens-switch{gap:5px}.finance-lens-switch button{display:block;min-height:61px;padding:9px;text-align:center}.finance-lens-switch button>span{display:none}.finance-lens-switch small{margin-top:4px}.finance-summary-grid{grid-template-columns:repeat(2,1fr)}.finance-summary-grid>.panel{min-height:96px;padding:13px}.finance-summary-grid>.panel>strong{font-size:19px}.cash-chart{height:190px;gap:7px;padding-right:0;padding-left:0}.receivable-list>div{grid-template-columns:30px 1fr auto;padding:7px 0}.receivable-list .badge{grid-column:2/-1;justify-self:start}}.finance-aging-panel,.finance-ledger-panel{margin-bottom:14px}.finance-ledger-table{min-width:1080px}.finance-ledger-table td a strong{color:var(--ink)}.finance-ledger-table td a:hover strong{color:var(--ry-green)}.finance-aging-table{min-width:760px}.finance-aging-total td{background:#fafbf9}.finance-bottom-single{grid-template-columns:1fr}.inventory-summary{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:9px;gap:9px;margin-bottom:14px}.inventory-summary[data-finance-visible=false]{grid-template-columns:repeat(3,1fr)}.inventory-summary>.panel{display:grid;grid-template-columns:37px 1fr;grid-gap:10px;gap:10px;align-items:center;padding:13px}.inventory-summary>.summary-action{padding-right:58px}.inventory-summary>.panel>span{display:grid;width:37px;height:37px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:9px}.inventory-summary>.panel>span.warning-icon{color:#996a29;background:var(--amber-soft)}.inventory-summary em,.inventory-summary small,.inventory-summary strong{display:block}.inventory-summary small{color:var(--ink-faint);font-size:12px}.inventory-summary strong{margin-top:1px;color:var(--navy-deep);font-family:var(--font-data);font-size:19px}.inventory-summary em{color:var(--ink-faint);font-size:11px;font-style:normal}.inventory-main-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.inventory-main-grid .inventory-table-panel{min-width:0}.inventory-main-grid .movement-panel .movement-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.inventory-table-panel{overflow:hidden}.inventory-table-panel .panel-inner{padding-bottom:10px}.inventory-toolbar{display:flex;align-items:center;gap:10px}.inventory-toolbar .project-search{flex:1 1 320px;min-width:220px}.inventory-toolbar>select{flex:0 1 300px;width:auto;min-width:200px}.inventory-toolbar .filter-row{flex:0 0 auto;margin:0}.inventory-toolbar>.button{flex:0 0 auto;white-space:nowrap}.inventory-table{min-width:1180px}.inventory-table-cost-hidden{min-width:1080px}.location-cell{display:inline-flex;align-items:center;gap:4px;color:var(--ink-soft)}.inventory-row-inactive{opacity:.58;background:#f7f8f6}.inventory-row-actions{display:flex;align-items:center;gap:4px;white-space:nowrap}.inventory-row-actions .button{padding-right:7px;padding-left:7px}.movement-list{display:grid}.movement-list>button{display:grid;grid-template-columns:31px 1fr auto;grid-gap:9px;gap:9px;align-items:center;min-height:64px;padding:0;text-align:left;background:transparent;border:0;border-top:1px solid #eff1ed;cursor:pointer}.movement-list>button:hover{background:#f9faf7}.movement-icon{display:grid;width:31px;height:31px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:8px}.movement-out{color:#995045;background:var(--coral-soft)}.movement-move{color:var(--blue);background:var(--blue-soft)}.movement-edit{color:#93682e;background:var(--amber-soft)}.movement-list small,.movement-list strong,.movement-list time{display:block}.movement-list strong{color:var(--navy-deep);font-size:12px}.movement-list small{margin-top:2px;color:var(--ink-faint);font-size:12px}.movement-list time{margin-top:3px;color:#6f756d;font-family:var(--font-data);font-size:11px}.movement-list b{color:var(--navy);font-family:var(--font-data);font-size:12px}.issue-item-summary{display:grid;grid-template-columns:41px 1fr auto;grid-gap:10px;gap:10px;align-items:center;padding:11px;background:#f8f9f6;border:1px solid var(--line);border-radius:8px}.issue-item-summary>span{display:grid;width:41px;height:41px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:9px}.issue-item-summary small,.issue-item-summary strong{display:block}.issue-item-summary strong{font-size:12px}.issue-item-summary small{margin-top:2px;color:var(--ink-faint);font-size:12px}.adjustment-rule{display:grid;grid-template-columns:34px 1fr;grid-gap:9px;gap:9px;align-items:center;padding:10px 11px;color:#41574c;background:var(--teal-soft);border:1px solid #dce0db;border-radius:8px}.adjustment-rule>svg{margin:auto}.adjustment-rule small,.adjustment-rule strong{display:block}.adjustment-rule strong{color:var(--navy-deep);font-size:12px}.adjustment-rule small{margin-top:2px;color:#5f6f67;font-size:12px}.stock-change-preview{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:10px;gap:10px;align-items:center;padding:11px;text-align:center;background:#f8f9f6;border:1px solid var(--line);border-radius:8px}.stock-change-preview span,.stock-change-preview strong{display:block}.stock-change-preview span{color:var(--ink-faint);font-size:12px}.stock-change-preview strong{margin-top:3px;color:var(--navy-deep);font-family:var(--font-data);font-size:14px}.stock-change-preview svg{color:var(--teal)}.inventory-item-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 14px;gap:12px 14px}.inventory-item-form>div{min-width:0}.locked-stock-field{display:grid;align-content:center;min-height:66px;padding:8px 11px;background:#f5f6f3;border:1px dashed var(--line-strong);border-radius:7px}.locked-stock-field small,.locked-stock-field span{color:var(--ink-faint);font-size:12px}.locked-stock-field strong{color:var(--navy-deep);font-family:var(--font-data);font-size:14px}.inventory-active-toggle{display:flex;grid-column:1/-1;align-items:center;gap:9px;padding:10px 11px;background:#f8f9f6;border:1px solid var(--line);border-radius:8px;cursor:pointer}.inventory-active-toggle input{width:17px;height:17px}.inventory-active-toggle small,.inventory-active-toggle strong{display:block}.inventory-active-toggle strong{font-size:12px}.inventory-active-toggle small{margin-top:1px;color:var(--ink-faint);font-size:12px}.category-create-row{display:grid;grid-template-columns:1fr auto;grid-gap:8px;gap:8px;margin-bottom:12px}.category-management-list{display:grid;border-top:1px solid var(--line)}.category-management-list>div{display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;grid-gap:9px;gap:9px;align-items:center;min-height:59px;border-bottom:1px solid var(--line)}.category-mark{display:grid;width:31px;height:31px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:8px}.category-management-list small,.category-management-list strong{display:block}.category-management-list strong{color:var(--navy-deep);font-size:12px}.category-management-list small{margin-top:2px;color:var(--ink-faint);font-size:12px}.category-management-list>div>div:last-child{display:flex;gap:4px;justify-content:flex-end}.ledger-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 180px;grid-gap:9px;gap:9px;margin-bottom:12px}.ledger-toolbar .project-search{width:100%}.ledger-table{min-width:940px}.ledger-table td:last-child{max-width:250px;white-space:normal}@media (max-width:1120px){.inventory-main-grid{grid-template-columns:1fr}.movement-panel .movement-list{grid-template-columns:repeat(2,1fr);gap:0 16px}.inventory-toolbar{flex-wrap:wrap}.inventory-toolbar .filter-row{min-width:0;flex:1 1 auto}}@media (max-width:760px){.inventory-summary,.inventory-summary[data-finance-visible=false]{grid-template-columns:repeat(2,1fr)}.inventory-toolbar{align-items:stretch;flex-direction:column}.inventory-toolbar .project-search,.inventory-toolbar>select{width:100%;min-width:0;flex:0 0 auto}.inventory-toolbar .filter-row{width:100%}.inventory-table{display:block;min-width:0;padding:0 12px 12px}.inventory-table thead{display:none}.inventory-table tbody{display:grid;grid-gap:10px;gap:10px}.inventory-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 12px rgb(38 46 42/5%)}.inventory-table td{display:block;min-width:0;padding:7px 0;border:0}.inventory-table td:before{display:block;margin-bottom:3px;color:var(--ink-faint);font-size:11px;font-weight:600;letter-spacing:0}.inventory-table td:first-child{grid-column:1/-1;padding-top:0;padding-bottom:9px;border-bottom:1px solid var(--line)}.inventory-table td:first-child:before,.inventory-table td:last-child:before{display:none}.inventory-table td:nth-child(2):before{content:"型号 / 规格"}.inventory-table td:nth-child(3):before{content:"当前库存"}.inventory-table td:nth-child(4):before{content:"安全库存"}.inventory-table td:nth-child(5):before{content:"库位"}.inventory-table td:nth-child(6):before{content:"批号 / 效期"}.inventory-table td:nth-child(7):before{content:"单位成本"}.inventory-table td:nth-child(8):before,.inventory-table-cost-hidden td:nth-child(7):before{content:"状态"}.inventory-table td:last-child{grid-column:1/-1;padding-top:9px;border-top:1px solid var(--line)}.inventory-row-actions{display:grid;grid-template-columns:repeat(3,1fr)}.inventory-row-actions .button{justify-content:center;width:100%}.inventory-item-form,.movement-panel .movement-list{grid-template-columns:1fr}.inventory-active-toggle{grid-column:auto}.ledger-toolbar{grid-template-columns:1fr}.category-management-list>div{grid-template-columns:32px 1fr auto;padding:7px 0}.category-management-list>div>div:last-child{grid-column:2/-1;justify-content:flex-start}}.asset-summary-band{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:13px;color:var(--ink);background:var(--ry-canvas);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.asset-summary-band[data-finance-visible=false]{grid-template-columns:repeat(3,1fr)}.asset-summary-band>:is(div,button){position:relative;display:grid;grid-template-columns:35px 1fr;grid-gap:9px;gap:9px;align-items:center;padding:13px 16px}.asset-summary-band>:is(div,button)+:is(div,button):before{position:absolute;top:13px;bottom:13px;left:0;width:1px;content:"";background:var(--line)}.asset-summary-band>:is(div,button)>span{display:grid;width:35px;height:35px;place-items:center;color:var(--ry-green);background:var(--ry-green-soft);border-radius:8px}.asset-summary-band>button{padding-right:58px;color:inherit;background:transparent;border:0}.asset-summary-band>button:hover,.asset-summary-band>button[aria-pressed=true]{background:#fff;box-shadow:inset 0 -2px 0 var(--ry-green)}.asset-summary-band>button:after{color:var(--ink-faint)}.asset-summary-band>button[aria-pressed=true]:after{color:var(--ry-green)}.asset-summary-band small,.asset-summary-band strong{display:block}.asset-summary-band small{color:var(--ink-faint);font-size:12px}.asset-summary-band strong{margin-top:2px;color:var(--ink);font-family:var(--font-data);font-size:18px}.asset-control-panel{display:flex;align-items:center;gap:12px;margin-bottom:13px;padding:9px}.asset-control-panel .project-search{flex:1 1}.asset-control-panel .filter-row{margin:0}.asset-location{display:grid;grid-template-columns:auto 1fr auto 1fr;grid-gap:5px 8px;gap:5px 8px;margin-top:14px;padding:10px;background:#f8f9f6;border-radius:7px;font-size:12px}.asset-location span{color:var(--ink-faint)}.asset-location strong{color:var(--navy-deep);font-size:12px}.asset-bottom-grid{display:grid;grid-template-columns:1.4fr .6fr;grid-gap:13px;gap:13px;margin-top:13px}.maintenance-schedule{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:0 18px;gap:0 18px}.maintenance-schedule>div{display:grid;grid-template-columns:37px 1fr auto;grid-gap:9px;gap:9px;align-items:center;min-height:58px;border-top:1px solid #eff1ed}.maintenance-schedule time{display:grid;width:36px;height:39px;place-items:center;align-content:center;color:var(--navy);background:#f1f3ee;border-radius:7px}.maintenance-schedule time strong{font-family:var(--font-data);line-height:1}.maintenance-schedule time small{margin-top:2px;font-size:11px}.maintenance-schedule>div>div small,.maintenance-schedule>div>div strong{display:block}.maintenance-schedule>div>div strong{font-size:12px}.maintenance-schedule>div>div small{margin-top:2px;color:var(--ink-faint);font-size:12px}.availability-card{display:grid;min-height:180px;place-items:center;align-content:center;text-align:center}.availability-card>strong{color:var(--teal);font-family:var(--font-data);font-size:46px;letter-spacing:-.02em;line-height:1}.availability-card>span{margin-top:5px;color:var(--navy-deep);font-weight:600}.availability-card p{max-width:270px;margin:10px auto 0;color:var(--ink-faint);font-size:12px}.asset-dialog-summary{display:grid;grid-template-columns:40px 1fr auto;grid-gap:10px;gap:10px;align-items:center;padding:11px;background:#f8f9f6;border:1px solid var(--line);border-radius:8px}.asset-dialog-summary>span{display:grid;width:40px;height:40px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:9px}.asset-dialog-summary small,.asset-dialog-summary strong{display:block}.asset-dialog-summary strong{font-size:12px}.asset-dialog-summary small{margin-top:2px;color:var(--ink-faint);font-size:12px}.asset-code-preview{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:3px 12px;gap:3px 12px;align-items:center;padding:11px 12px;color:var(--ink-soft);background:var(--teal-soft);border:1px solid #dce1db;border-radius:8px}.asset-code-preview span{font-size:12px}.asset-code-preview strong{color:var(--navy-deep);font-family:var(--font-data);font-size:16px;letter-spacing:.02em}.asset-code-preview small{grid-column:1/-1;color:var(--ink-faint);font-size:12px}@media (max-width:1080px){.asset-bottom-grid{grid-template-columns:1fr}}@media (max-width:700px){.asset-summary-band,.asset-summary-band[data-finance-visible=false]{grid-template-columns:repeat(2,1fr)}.asset-summary-band>:is(div,button):nth-child(3):before{display:none}.asset-summary-band>:is(div,button):nth-child(n+3){border-top:1px solid var(--line)}.asset-control-panel{align-items:stretch;flex-direction:column}.asset-control-panel .filter-row{width:100%}.maintenance-schedule{grid-template-columns:1fr}}.ai-safety-ribbon{display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;margin-bottom:14px;padding:11px 13px;color:#3d574a;background:#eff1ec;border:1px solid #d5e2d7;border-radius:9px}.ai-safety-icon{display:grid;width:34px;height:34px;place-items:center;color:white;background:var(--teal);border-radius:8px}.ai-safety-ribbon>div{min-width:0}.ai-safety-ribbon small,.ai-safety-ribbon strong{display:block}.ai-safety-ribbon strong{color:var(--navy-deep);font-size:12px}.ai-safety-ribbon small{margin-top:2px;font-size:12px}.capture-layout{display:grid;grid-template-columns:285px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.capture-inbox{position:-webkit-sticky;position:sticky;top:calc(var(--topbar-height) + 14px);overflow:hidden;background:white;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.capture-inbox-header{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 13px;background:var(--ry-canvas);border-bottom:1px solid var(--line)}.capture-inbox-header>div{display:flex;align-items:center;gap:7px;color:var(--ink)}.capture-inbox-header span{color:var(--ink-faint);font-size:12px}.capture-inbox-header strong{font-family:var(--font-data)}.capture-inbox-header button{color:var(--ink-faint);background:none;border:0}.capture-source-list{display:grid;max-height:620px;overflow-y:auto}.capture-source-list>button{display:grid;grid-template-columns:32px 1fr auto;grid-gap:9px;gap:9px;align-items:center;min-height:80px;padding:10px 11px;text-align:left;background:white;border:0;border-bottom:1px solid #eff1ed;cursor:pointer}.capture-source-list>button.active,.capture-source-list>button:hover{background:#f5f6f3}.capture-source-list>button.active{box-shadow:inset 3px 0 var(--teal)}.capture-source-icon{display:grid;width:31px;height:31px;place-items:center;color:var(--blue);background:var(--blue-soft);border-radius:8px}.capture-source-list strong{display:-webkit-box;overflow:hidden;color:var(--navy-deep);font-size:12px;line-height:1.5;-webkit-line-clamp:2;-webkit-box-orient:vertical}.capture-source-list small{display:block;margin-top:4px;color:var(--ink-faint);font-size:11px}.capture-source-list b{display:grid;min-width:19px;height:19px;place-items:center;color:white;background:var(--coral);border-radius:10px;font-family:var(--font-data);font-size:12px}.capture-done{color:var(--teal)}.proposal-workspace{min-width:0}.raw-capture-card{padding:17px 18px;background:#fafbf8}.raw-capture-meta{display:flex;align-items:center;justify-content:space-between;color:var(--ink-faint);font-size:12px}.raw-capture-card blockquote{margin:14px 0;color:var(--navy-deep);font-size:15px;line-height:1.75}.raw-capture-project{display:flex;align-items:center;gap:8px;padding-top:10px;border-top:1px solid var(--line);font-size:12px}.raw-capture-project span{color:var(--ink-faint)}.raw-capture-project strong{color:var(--teal);font-family:var(--font-data)}.proposal-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:20px}.proposal-toolbar .filter-row,.proposal-toolbar .section-heading{margin-bottom:10px}.proposal-list{display:grid;grid-gap:11px;gap:11px}.proposal-card{overflow:hidden;background:white;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.proposal-card>header{display:grid;grid-template-columns:32px 1fr auto;grid-gap:9px;gap:9px;align-items:center;min-height:47px;padding:0 14px;background:#f8f9f7;border-bottom:1px solid var(--line)}.proposal-card>header>div{display:flex;gap:5px}.proposal-index{color:var(--ink-faint);font-family:var(--font-data);font-size:13px}.proposal-status{color:var(--ink-faint);font-size:12px}.proposal-confirmed{border-color:#dce1db}.proposal-rejected{opacity:.78}.proposal-body{display:grid;grid-template-columns:36px 1fr;grid-gap:10px;gap:10px;padding:15px 15px 11px}.proposal-spark{display:grid;width:35px;height:35px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:9px}.proposal-body h2{margin:0;color:var(--navy-deep);font-size:14px}.proposal-body p{margin:4px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.55}.proposal-data{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));grid-gap:7px;gap:7px;padding:0 15px 12px 61px}.proposal-data>div{padding:8px 9px;background:#f8f9f6;border:1px solid #eaede9;border-radius:7px}.proposal-data span,.proposal-data strong{display:block}.proposal-data span{color:var(--ink-faint);font-size:11px}.proposal-data strong{margin-top:3px;color:var(--navy-deep);font-size:12px}.proposal-reason{margin:0 15px 12px 61px;padding:9px 10px;border-left:2px solid #c0c7be;background:#fafbf8}.proposal-reason span{color:var(--ink-faint);font-size:11px;font-weight:600;letter-spacing:0}.proposal-reason p{margin:3px 0 0;color:var(--ink-soft);font-size:12px}.proposal-card>footer{display:flex;justify-content:flex-end;gap:7px;padding:10px 14px;background:#fbfcfa;border-top:1px solid var(--line)}.proposal-card>footer.proposal-result{justify-content:flex-start;align-items:center;color:var(--teal);font-size:12px}.proposal-empty{display:grid;min-height:230px;place-items:center;align-content:center;margin-top:12px;color:var(--teal);text-align:center}.proposal-empty span,.proposal-empty strong{display:block}.proposal-empty strong{margin-top:8px;color:var(--navy-deep);font-size:13px}.proposal-empty span{margin-top:3px;color:var(--ink-faint);font-size:12px}@media (max-width:900px){.capture-layout{grid-template-columns:1fr}.capture-inbox{position:static}.capture-source-list{display:flex;max-height:none;overflow-x:auto}.capture-source-list>button{min-width:260px;border-right:1px solid #eff1ed;border-bottom:0}.proposal-toolbar{align-items:flex-start;flex-direction:column}}@media (max-width:560px){.ai-safety-ribbon{grid-template-columns:32px minmax(0,1fr)}.ai-safety-ribbon>.badge{grid-column:2;justify-self:start}.proposal-card>header{grid-template-columns:26px 1fr;padding:8px 11px}.proposal-status{grid-column:2}.proposal-body{padding:13px 12px 9px}.proposal-data{padding:0 12px 10px 57px}.proposal-reason{margin:0 12px 10px 57px}}.animal-status-ribbon{display:grid;grid-template-columns:1.25fr repeat(4,.7fr) 1fr;margin-bottom:14px;background:white;border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.animal-status-ribbon>button,.animal-status-ribbon>div{position:relative;min-height:72px;padding:12px 14px;text-align:left;background:white;border:0}.animal-status-ribbon>*+:before{position:absolute;top:13px;bottom:13px;left:0;width:1px;content:"";background:var(--line)}.animal-status-ribbon button{cursor:pointer}.animal-status-ribbon button.active,.animal-status-ribbon button:hover{background:#f5f6f3}.animal-status-ribbon small,.animal-status-ribbon span,.animal-status-ribbon strong{display:block}.animal-status-ribbon span{color:var(--ink-faint)}.animal-status-ribbon strong{margin-top:4px;color:var(--navy-deep);font-family:var(--font-data);font-size:20px}.animal-status-ribbon small{color:var(--ink-faint);font-size:11px}.animal-total{color:var(--ink);background:var(--ry-fill)!important;font-weight:600}.animal-total small,.animal-total span{color:#b3bab1}.animal-total strong{color:var(--ink)}.animal-due{display:grid;align-content:center;background:var(--amber-soft)!important}.animal-due span{display:flex;align-items:center;gap:5px;color:#835c26}.animal-due strong{color:#835c26}.animal-status-logic{margin:-7px 0 14px;color:var(--ink-soft);font-size:12px;line-height:1.55}.animal-status-logic strong{color:var(--navy-deep)}.animal-main-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.animal-list-panel{overflow:hidden}.animal-list-panel .project-search{max-width:none}.animal-record-list{border-top:1px solid var(--line)}.animal-record-list>button{display:grid;width:100%;grid-template-columns:40px minmax(145px,1.1fr) minmax(135px,.9fr) minmax(110px,.65fr) minmax(150px,1fr) 17px;grid-gap:11px;gap:11px;align-items:center;min-height:72px;padding:9px 15px;text-align:left;background:white;border:0;border-bottom:1px solid #eff1ed;cursor:pointer}.animal-record-list>button:hover{background:#fcfdfa}.animal-record-list>button:last-child{border-bottom:0}.animal-avatar{display:grid;width:38px;height:38px;place-items:center;color:var(--teal);background:var(--teal-soft);border:1px solid #dee2dc;border-radius:50%;font-family:var(--font-data);font-size:13px;font-weight:600}.animal-avatar.large{width:48px;height:48px;font-size:15px}.animal-main>span{display:flex;align-items:center;gap:6px}.animal-record-list small,.animal-record-list strong{display:block}.animal-record-list strong{color:var(--navy-deep)}.animal-record-list small,.animal-record-list strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.animal-record-list small{color:var(--ink-faint)}.animal-side{display:grid;grid-gap:14px;gap:14px}.animal-watch-list{display:grid}.animal-watch-list>div{display:grid;grid-template-columns:28px 1fr;grid-gap:8px;gap:8px;align-items:center;min-height:57px;border-top:1px solid #eff1ed}.watch-critical,.watch-warning{display:grid;width:27px;height:27px;place-items:center;color:var(--coral);background:var(--coral-soft);border-radius:50%;font-family:var(--font-data);font-size:12px;font-weight:600}.watch-warning{color:#93682e;background:var(--amber-soft)}.animal-watch-list small,.animal-watch-list strong{display:block}.animal-watch-list strong{font-size:12px}.animal-watch-list small{margin-top:3px;color:var(--ink-faint);font-size:12px}.animal-boundary{display:grid;grid-template-columns:28px 1fr;grid-gap:8px;gap:8px;padding:14px;color:#485967;background:var(--blue-soft);border-color:#daded8}.animal-boundary strong{color:var(--navy-deep);font-size:12px}.animal-boundary p{margin:3px 0 0;font-size:12px;line-height:1.55}.animal-detail-dialog{display:grid;grid-gap:17px;gap:17px}.animal-life-trace{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(130px,.8fr);grid-gap:0;gap:0;padding:15px;background:linear-gradient(90deg,#f8f9f7,#fafbf8 72%,#f3f4f0);border:1px solid #dfe4de;border-radius:10px}.animal-life-trace:before{position:absolute;top:27px;right:29%;left:9%;height:2px;content:"";background:#d4d9d3}.animal-life-trace>div{position:relative;z-index:1;display:grid;grid-gap:3px;gap:3px;align-content:start;padding:0 12px}.animal-life-trace>div:not(.duration)>span{width:12px;height:12px;margin-bottom:5px;background:white;border:3px solid #b2b9b0;border-radius:50%}.animal-life-trace>div.complete>span{border-color:var(--teal);box-shadow:0 0 0 4px #e7ece6}.animal-life-trace small{color:var(--ink-faint);font-size:12px}.animal-life-trace strong{color:var(--navy-deep);font-size:14px}.animal-life-trace .duration{padding-left:17px;border-left:1px solid #d6dad4}.animal-life-trace .duration strong{color:var(--teal);font-family:var(--font-data);font-size:23px}.animal-life-trace em{color:var(--ink-faint);font-size:12px;font-style:normal}.animal-care-ledger{display:grid;grid-gap:10px;gap:10px}.care-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.care-record-grid article{display:grid;grid-template-columns:auto 1fr;grid-gap:9px;gap:9px;align-items:start;padding:10px;background:#fcfdfa;border:1px solid var(--line);border-radius:8px}.care-record-grid small,.care-record-grid strong{display:block}.care-record-grid strong{font-size:13px}.care-record-grid p,.care-record-grid small{color:var(--ink-soft);font-size:12px}.care-record-grid p{margin:4px 0 0}@media (max-width:760px){.animal-life-trace{grid-template-columns:1fr;gap:13px}.animal-life-trace:before{display:none}.animal-life-trace .duration{padding-top:10px;padding-left:12px;border-top:1px solid #d6dad4;border-left:0}.care-record-grid{grid-template-columns:1fr}}.animal-profile-strip{display:grid;grid-template-columns:50px repeat(4,1fr);grid-gap:10px;gap:10px;align-items:center;padding:12px;background:#f8f9f6;border:1px solid var(--line);border-radius:9px}.animal-profile-strip>div:not(:first-child){padding-left:10px;border-left:1px solid var(--line)}.animal-profile-strip small,.animal-profile-strip strong{display:block}.animal-profile-strip small{color:var(--ink-faint);font-size:11px}.animal-profile-strip strong{margin-top:4px;color:var(--navy-deep);font-family:var(--font-data);font-size:12px}.animal-dialog-grid{display:grid;grid-template-columns:1fr .8fr;grid-gap:20px;gap:20px}.animal-event-timeline{display:grid}.animal-event-timeline>div{position:relative;display:grid;grid-template-columns:10px 74px 1fr;grid-gap:9px;gap:9px;padding-bottom:16px}.animal-event-timeline>div:before{position:absolute;top:8px;bottom:0;left:4px;width:1px;content:"";background:var(--line)}.animal-event-timeline>div:last-child:before{display:none}.animal-event-timeline>div>span{z-index:1;width:9px;height:9px;margin-top:3px;background:white;border:2px solid var(--teal);border-radius:50%}.animal-event-timeline time{color:var(--ink-faint);font-family:var(--font-data);font-size:12px}.animal-event-timeline strong{font-size:12px}.animal-event-timeline p{margin:3px 0;color:var(--ink-soft);font-size:12px}.animal-event-timeline small{color:var(--ink-faint);font-size:11px}.animal-transition-box{display:grid;align-content:start;grid-gap:9px;gap:9px;padding:13px;background:#f8f9f6;border:1px solid var(--line);border-radius:9px}.transition-title{display:grid;grid-template-columns:30px 1fr;grid-gap:7px;gap:7px;align-items:center;margin-bottom:4px;color:var(--teal)}.transition-title small,.transition-title strong{display:block}.transition-title strong{color:var(--navy-deep);font-size:12px}.transition-title small{color:var(--ink-faint);font-size:11px}.terminal-state{margin:6px 0 0;padding:10px;color:var(--ink-soft);background:white;border:1px solid var(--line);border-radius:7px;font-size:12px}@media (max-width:1120px){.animal-main-grid{grid-template-columns:1fr}.animal-side{grid-template-columns:repeat(3,1fr)}}@media (max-width:820px){.animal-status-ribbon{min-width:700px}.animal-status-ribbon+.animal-main-grid{margin-top:0}.animal-status-ribbon{overflow:visible}.animal-main-grid{margin-top:0}.animal-side{grid-template-columns:1fr}.animal-record-list{overflow-x:auto}.animal-record-list>button{min-width:850px}.animal-dialog-grid{grid-template-columns:1fr}}@media (max-width:700px){.animal-status-ribbon{display:flex;min-width:0;overflow-x:auto}.animal-status-ribbon>button,.animal-status-ribbon>div{min-width:110px}.animal-status-ribbon .animal-total{min-width:150px}.animal-profile-strip{grid-template-columns:50px repeat(2,1fr)}.animal-profile-strip>div:nth-child(n+4){grid-column:span 1}}.pending-purchase-requests{margin-bottom:14px;overflow:hidden;background:#fafbf9;border:1px solid #e2cdb5;border-radius:var(--radius-md);box-shadow:0 7px 20px rgb(103 75 39/8%);scroll-margin-top:82px}.pending-purchase-requests>header{display:grid;grid-template-columns:38px 1fr auto;grid-gap:11px;gap:11px;align-items:center;padding:13px 15px;background:#f5f6f4;border-bottom:1px solid #e8daca}.pending-purchase-requests>header>span:first-child{display:grid;width:36px;height:36px;place-items:center;color:#9a463a;background:var(--coral-soft);border-radius:9px}.pending-purchase-requests>header small,.pending-purchase-requests>header strong{display:block}.pending-purchase-requests>header strong{color:var(--navy-deep);font-size:14px}.pending-purchase-requests>header small{margin-top:3px;color:var(--ink-soft);font-size:12px}.pending-purchase-request-list{display:grid}.pending-purchase-request-list article{display:grid;grid-template-columns:1fr auto;grid-gap:15px;gap:15px;align-items:center;padding:12px 15px;border-bottom:1px solid #e3e7e1}.pending-purchase-request-list article:last-child{border-bottom:0}.pending-purchase-request-list small,.pending-purchase-request-list strong{display:block}.pending-purchase-request-list strong{color:var(--navy-deep);font-size:13px}.pending-purchase-request-list p{margin:4px 0;color:var(--ink-soft);font-size:12px;line-height:1.55}.pending-purchase-request-list small{color:var(--ink-faint);font-size:12px}.pending-purchase-requests>footer{padding:9px 15px;color:var(--ink-soft);font-size:12px;background:#f8f9f6;border-top:1px solid #e3e7e1}.procurement-pipeline{display:grid;grid-template-columns:auto 22px auto 22px auto 22px auto 22px auto 1fr;grid-gap:9px;gap:9px;align-items:center;margin-bottom:14px;padding:12px 15px;background:var(--ry-canvas);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);overflow-x:auto;-webkit-clip-path:inset(0 round var(--radius-md));clip-path:inset(0 round var(--radius-md))}.procurement-pipeline>svg{color:#b7c0b5}.pipeline-step{display:grid;min-width:130px;grid-template-columns:34px 1fr;grid-gap:9px;gap:9px;align-items:center}.pipeline-step>span{display:grid;width:34px;height:34px;place-items:center;color:var(--ry-green);background:var(--ry-green-soft);border-radius:8px}.pipeline-step small,.pipeline-step strong{display:block}.pipeline-step strong{color:var(--ink);font-family:var(--font-data);font-size:18px}.pipeline-step small{color:var(--ink-faint);font-size:12px}.pipeline-money{min-width:140px;margin-left:auto;padding-left:18px;border-left:1px solid var(--line);text-align:right}.pipeline-money span,.pipeline-money strong{display:block}.pipeline-money span{color:var(--ink-faint);font-size:12px}.pipeline-money strong{margin-top:3px;font-family:var(--font-data);font-size:18px}.procurement-list-panel{overflow:hidden}.procurement-list-panel .panel-inner{padding-bottom:10px}.procurement-toolbar{display:flex;align-items:center;gap:10px}.procurement-toolbar .project-search{max-width:420px}.procurement-toolbar .filter-row{flex:1 1;justify-content:flex-end;margin:0}.procurement-table{min-width:1000px}.order-progress{display:grid;min-width:80px;grid-gap:4px;gap:4px;color:var(--ink-faint);font-family:var(--font-data);font-size:12px}.procurement-insights{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:14px;gap:14px;margin-top:14px}.arrival-list{display:grid}.arrival-list>div{display:grid;grid-template-columns:42px 1fr auto;grid-gap:10px;gap:10px;align-items:center;min-height:56px;border-top:1px solid #eff1ed}.arrival-list time{color:var(--teal);font-family:var(--font-data);font-size:12px;font-weight:600}.arrival-list small,.arrival-list strong{display:block}.arrival-list strong{font-size:12px}.arrival-list small{margin-top:2px;color:var(--ink-faint);font-size:12px}.vendor-spend{display:grid;grid-gap:12px;gap:12px}.vendor-spend>div{display:grid;grid-template-columns:1fr auto;grid-gap:4px;gap:4px;align-items:center;color:var(--ink-soft);font-size:12px}.vendor-spend strong{color:var(--navy);font-family:var(--font-data)}.vendor-spend .progress-track{grid-column:1/-1}.receipt-dialog{display:grid;grid-gap:13px;gap:13px}.receipt-product{display:grid;grid-template-columns:40px 1fr auto;grid-gap:10px;gap:10px;align-items:center;padding:12px;background:#f8f9f6;border:1px solid var(--line);border-radius:8px}.receipt-product>span{display:grid;width:40px;height:40px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:9px}.receipt-product small,.receipt-product strong{display:block}.receipt-product strong{color:var(--navy-deep);font-size:12px}.receipt-product small{margin-top:2px;color:var(--ink-faint);font-size:12px}.receipt-dialog dl{margin:0;border:1px solid var(--line);border-radius:8px}.receipt-dialog dl>div{display:flex;justify-content:space-between;padding:9px 11px;border-bottom:1px solid #eff1ed;font-size:12px}.receipt-dialog dl>div:last-child{border-bottom:0}.receipt-dialog dt{color:var(--ink-faint)}.receipt-dialog dd{margin:0;color:var(--navy-deep);font-weight:600}.confirm-receipt-check{display:grid;grid-template-columns:18px 1fr;grid-gap:9px;gap:9px;align-items:flex-start;padding:11px;border:1px solid var(--line-strong);border-radius:8px;cursor:pointer}.confirm-receipt-check input{width:16px;min-height:16px;margin:1px 0 0;accent-color:var(--teal)}.confirm-receipt-check small,.confirm-receipt-check strong{display:block}.confirm-receipt-check strong{font-size:12px}.confirm-receipt-check small{margin-top:3px;color:var(--ink-faint);font-size:12px;line-height:1.5}.receipt-batch-form{display:grid;grid-gap:11px;gap:11px;padding:12px;background:#f9faf7;border:1px solid #d9ddd8;border-radius:9px}.receipt-batch-form>header,.receipt-history>header,.receipt-line-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.receipt-batch-form>header small,.receipt-batch-form>header strong,.receipt-line-card>header small,.receipt-line-card>header strong{display:block}.receipt-batch-form>header strong{color:var(--navy-deep);font-size:13px}.receipt-batch-form>header small,.receipt-line-card>header small{margin-top:3px;color:var(--ink-faint);font-size:12px}.receipt-line-card,.receipt-line-list{display:grid;grid-gap:9px;gap:9px}.receipt-line-card{padding:11px;background:white;border:1px solid var(--line);border-radius:8px}.receipt-line-card>header strong{font-size:12px}.receipt-quantity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px}.receipt-difference-field{grid-column:1/-1}.receipt-close-difference{display:grid;grid-template-columns:18px 1fr;grid-gap:9px;gap:9px;align-items:flex-start;padding:10px;background:#f8f9f6;border:1px solid #f1d4b3;border-radius:8px;cursor:pointer}.receipt-close-difference input{width:16px;min-height:16px;margin:1px 0 0;accent-color:var(--teal)}.receipt-close-difference small,.receipt-close-difference strong{display:block}.receipt-close-difference strong{color:var(--navy-deep);font-size:12px}.receipt-close-difference small{margin-top:3px;color:var(--ink-faint);font-size:12px}.receipt-history{display:grid;grid-gap:7px;gap:7px;padding-top:3px}.receipt-history>header{align-items:center;padding-bottom:5px;border-bottom:1px solid var(--line)}.receipt-history>header strong{font-size:12px}.receipt-history>header span{color:var(--ink-faint);font-size:12px}.receipt-history>article{display:grid;grid-template-columns:145px minmax(0,1fr);grid-gap:10px;gap:10px;padding:10px;background:#f8f9f7;border:1px solid var(--line);border-radius:8px}.receipt-history>article>div:first-child small,.receipt-history>article>div:first-child strong{display:block}.receipt-history>article>div:first-child strong{font-family:var(--font-data);font-size:12px}.receipt-history>article>div:first-child small{margin-top:3px;color:var(--ink-faint);font-size:12px}.receipt-history p{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:3px 10px;gap:3px 10px;margin:0 0 7px;font-size:12px}.receipt-history p:last-child{margin-bottom:0}.receipt-history p strong{font-family:var(--font-data)}.receipt-history p small{grid-column:1/-1;color:var(--ink-faint)}.receipt-history footer{grid-column:1/-1;padding-top:7px;color:var(--ink-soft);border-top:1px solid var(--line);font-size:12px}.notification-workqueue-link{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;color:var(--teal);font-size:12px;font-weight:600;border-top:1px solid var(--line)}@media (max-width:900px){.procurement-insights{grid-template-columns:1fr}.procurement-toolbar{align-items:stretch;flex-direction:column}.procurement-toolbar .project-search{max-width:none}.procurement-toolbar .filter-row{justify-content:flex-start}}@media (max-width:600px){.workspace-attention-banner{grid-template-columns:32px 1fr}.workspace-attention-banner>b{grid-column:2}.pending-purchase-requests>header{grid-template-columns:34px 1fr}.pending-purchase-requests>header>.badge{grid-column:2;justify-self:start}.pending-purchase-request-list article{grid-template-columns:1fr}.pending-purchase-request-list article .button{justify-self:start}.procurement-pipeline{grid-template-columns:repeat(9,auto)}.pipeline-money{display:none}.pipeline-step{min-width:105px}.receipt-history>article,.receipt-quantity-grid{grid-template-columns:1fr}}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(9px) scale(.985)}}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}@media (max-width:1080px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){:root{--topbar-height:52px}input,select,textarea{font-size:16px}.sidebar{width:min(300px,86vw);border-right:0;transform:translateX(-105%);box-shadow:0 24px 64px rgb(28 36 31/20%);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.sidebar-open{transform:translateX(0)}.sidebar-close{display:grid}.mobile-scrim{position:fixed;inset:0;z-index:45;display:block;background:rgb(28 36 31/30%);border:0}.app-main{margin-left:0}.topbar{gap:6px;padding:0 10px}.mobile-menu-button{display:grid}.global-search{width:auto;max-width:420px;flex:1 1}.global-search kbd{display:none}.notification-button{display:grid}.topbar .capture-button{display:none}.page-content{padding:20px 16px calc(96px + env(safe-area-inset-bottom))}.page-header{align-items:flex-start;margin-bottom:20px}.page-header h1{font-size:24px}.mobile-nav{position:fixed;right:0;bottom:0;left:0;z-index:40;display:grid;height:calc(58px + env(safe-area-inset-bottom));grid-auto-flow:column;grid-auto-columns:1fr;align-items:stretch;padding:0 6px env(safe-area-inset-bottom);background:rgb(250 251 249/88%);border-top:1px solid rgb(37 45 41/8%);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.mobile-nav a,.mobile-nav button{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#6a7168;font-size:11px;font-weight:500;background:none;border:0;cursor:pointer}.mobile-nav a.active{color:var(--ry-green)}.mobile-nav .mobile-capture svg{width:26px;height:26px;padding:4px;color:#fff;background:var(--ry-green);border-radius:8px;box-shadow:0 1px 2px rgb(28 50 40/24%)}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-backdrop{align-items:end;padding:0}.modal{max-height:92vh;border-radius:16px 16px 0 0}.modal-header{padding:18px 18px 12px}.modal-body{padding:16px 18px calc(22px + env(safe-area-inset-bottom))}.toast{right:12px;left:12px;width:auto}.sync-error-bar,.toast{bottom:calc(70px + env(safe-area-inset-bottom))}.sync-status{display:none}}@media (max-width:520px){.global-search{width:34px;flex:none;justify-content:center;margin-left:auto;padding:0;color:var(--ink-soft);background:transparent}.global-search span{display:none}.capture-button{width:34px;padding:0;font-size:0}.capture-button kbd{display:none}.page-header{display:block}.page-header-actions{margin-top:14px}.metric{padding:13px}.metric strong{font-size:20px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.form-grid-two,.supplier-form-grid,.supplier-price-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.form-grid-two>div,.schedule-form>div,.supplier-form-grid>div,.supplier-price-form>div{min-width:0}.form-grid-two .field-label,.schedule-form .field-label,.supplier-form-grid .field-label,.supplier-price-form .field-label{display:block;margin-bottom:5px}.field-help{margin:0;color:var(--ink-faint);font-size:13px;line-height:1.55}.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.field-label-row .text-link{font-size:13px}.page-header-actions,.section-action-row{flex-wrap:wrap;justify-content:flex-end}.section-action-row{display:flex;gap:7px}.schedule-legend>span,.schedule-page-header .back-link,.schedule-summary-strip span{font-size:12px}.schedule-summary-strip strong{font-size:22px}.schedule-summary-strip small{font-size:12px}.calendar-weekdays span{padding:9px 8px;font-size:12px}.calendar-day{min-height:126px;gap:7px;padding:9px}.calendar-day-number{font-size:14px}.calendar-day-number small{font-size:12px}.calendar-event-chip{gap:2px;padding:6px 7px}.calendar-event-chip strong{font-size:13px}.calendar-event-chip small,.calendar-more{font-size:12px}.calendar-day.empty:not(.outside):hover:after{align-self:center;justify-self:center;color:var(--teal);content:"+ 新建安排";font-size:12px;font-weight:600}.schedule-detail-card>strong{font-size:15px}.schedule-conflict-note,.schedule-detail-card dd,.schedule-detail-card dt,.schedule-detail-card>small,.schedule-note,.schedule-project-link{font-size:12px}.unscheduled-project-list strong{font-size:13px}.unscheduled-project-list small{font-size:12px}.schedule-form{display:grid;grid-gap:13px;gap:13px}.schedule-form-hint{display:grid;grid-template-columns:32px 1fr;grid-gap:9px;gap:9px;align-items:center;padding:11px;color:var(--teal);background:var(--teal-soft);border-radius:8px}.schedule-form-hint span,.schedule-form-hint strong{display:block}.schedule-form-hint strong{color:var(--navy-deep);font-size:14px}.schedule-form-hint span{margin-top:2px;color:var(--ink-soft);font-size:12px}.project-schedule-button{width:100%;margin-top:12px}.project-requirement-summary{display:grid;grid-gap:13px;gap:13px}.project-requirement-state{display:flex;align-items:center;gap:11px;padding:13px;border-radius:11px;background:var(--teal-soft)}.project-requirement-state>span{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:10px;color:var(--teal);background:white}.project-requirement-state>div{display:grid;min-width:0;grid-gap:3px;gap:3px}.project-requirement-state strong{color:var(--navy-deep);font-size:14px}.project-requirement-state small{color:var(--ink-soft);font-size:12px;line-height:1.45}.project-requirement-link{width:100%}.project-requirement-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.project-requirement-group{display:grid;min-width:0;grid-template-columns:1fr auto;grid-gap:4px 8px;gap:4px 8px;padding:12px;color:inherit;background:#fafbf8;border:1px solid var(--line);border-radius:9px}.project-requirement-group:hover{border-color:#acc1b6;background:var(--teal-soft)}.project-requirement-group>span{color:var(--navy-deep);font-size:12px;font-weight:600}.project-requirement-group>strong{color:var(--teal);font-family:var(--font-data);font-size:13px}.project-requirement-group>small{grid-column:1/-1;overflow:hidden;color:var(--ink-faint);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.project-requirement-group.state-pending>strong{color:var(--amber)}.project-requirement-group.state-attention>strong{color:var(--coral)}@media (max-width:720px){.project-requirement-groups{grid-template-columns:1fr}}.animal-status-ribbon small,.animal-status-ribbon span{font-size:12px}.animal-list-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.animal-list-toolbar .project-search{min-width:260px;flex:1 1}.animal-record-row{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:stretch;border-bottom:1px solid #eff1ed}.animal-record-row.is-readonly{grid-template-columns:minmax(0,1fr)}.animal-record-row:last-child{border-bottom:0}.animal-select{display:grid;place-items:center;background:#fbfcfa;border-right:1px solid #eff1ed;cursor:pointer}.animal-select input{width:16px;min-height:16px;margin:0;accent-color:var(--teal)}.animal-record-open{display:grid;width:100%;grid-template-columns:32px minmax(170px,1.1fr) minmax(145px,.9fr) minmax(125px,.7fr) minmax(170px,1fr) 17px;grid-gap:10px;gap:10px;align-items:center;min-height:62px;padding:6px 12px;text-align:left;background:white;border:0;cursor:pointer}.animal-record-open:hover{background:#fafbf8}.animal-record-list strong{font-size:14px}.animal-record-list small{margin-top:3px;font-size:13px}.animal-main>span{flex-wrap:wrap}.animal-boundary strong,.animal-watch-list strong{font-size:14px}.animal-boundary p,.animal-watch-list small{font-size:13px}.animal-profile-strip{grid-template-columns:56px repeat(5,minmax(0,1fr))}.animal-profile-strip small{font-size:12px}.animal-profile-strip strong{font-size:14px}.animal-event-timeline time{font-size:13px}.animal-event-timeline strong{font-size:14px}.animal-event-timeline p{font-size:13px}.animal-event-timeline small{font-size:12px}.transition-title strong{font-size:14px}.terminal-state,.transition-title small{font-size:12px}.animal-action-column{display:grid;grid-gap:12px;gap:12px;align-content:start}.animal-status-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:7px;gap:7px}.animal-status-shortcuts button{min-height:54px;padding:8px 9px;text-align:left;color:var(--ink-soft);background:white;border:1px solid var(--line);border-radius:8px;cursor:pointer}.animal-status-shortcuts button.selected,.animal-status-shortcuts button:hover:not(:disabled){color:var(--teal);background:var(--teal-soft);border-color:#a7c2b4}.animal-status-shortcuts button:disabled{cursor:not-allowed;opacity:.45}.animal-status-shortcuts button.current:disabled{color:var(--navy-deep);background:#f0f2ee;border-color:#bec5bc;opacity:1}.animal-status-shortcuts small,.animal-status-shortcuts strong{display:block}.animal-status-shortcuts strong{font-size:13px}.animal-status-shortcuts small{margin-top:3px;color:var(--ink-faint);font-size:12px;line-height:1.35}.animal-readonly-note{display:grid;grid-template-columns:24px 1fr;grid-gap:8px;gap:8px;padding:13px;color:var(--teal);background:var(--blue-soft);border:1px solid #dde1dc;border-radius:9px}.animal-readonly-note strong{color:var(--navy-deep);font-size:13px}.animal-readonly-note p{margin:3px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.5}.animal-care-plan{padding:13px;background:#f9faf7;border:1px solid #e2e6e0;border-radius:9px}.animal-care-plan>div:nth-child(2){display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:7px;gap:7px}.animal-care-plan>div:nth-child(2) span{display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:12px}.animal-care-plan i{display:grid;width:20px;height:20px;flex:none;place-items:center;color:var(--ink-faint);background:#ebeeea;border-radius:50%;font-style:normal}.animal-care-plan i.done{color:white;background:var(--teal)}.animal-care-plan>p{margin:10px 0 0;color:var(--ink-soft);font-size:12px}.animal-transfer-card{display:grid;grid-template-columns:26px 1fr;grid-gap:8px;gap:8px;padding:13px;color:var(--teal);background:var(--blue-soft);border:1px solid #dde1dc;border-radius:9px}.animal-transfer-card strong{color:var(--navy-deep);font-size:13px}.animal-transfer-card p{margin:3px 0 10px;color:var(--ink-soft);font-size:12px}.animal-transfer-card .button{grid-column:2;justify-self:start}.animal-registration-form{display:grid;grid-gap:14px;gap:14px}.backup-animal-toggle{display:grid;grid-template-columns:20px 1fr;grid-gap:9px;gap:9px;align-items:start;padding:12px;background:var(--amber-soft);border:1px solid #f4d6b2;border-radius:8px;cursor:pointer}.backup-animal-toggle input,.care-plan-options input,.master-active-toggle input,.project-scope-fieldset input,.user-security-options input{width:16px;min-height:16px;margin:2px 0 0;accent-color:var(--teal)}.backup-animal-toggle small,.backup-animal-toggle strong{display:block}.backup-animal-toggle strong{font-size:13px}.backup-animal-toggle small{margin-top:2px;color:var(--ink-soft);font-size:12px}.care-plan-fieldset,.project-scope-fieldset{margin:0;padding:13px;border:1px solid var(--line);border-radius:9px}.care-plan-fieldset legend,.project-scope-fieldset legend{padding:0 6px;color:var(--navy-deep);font-size:13px;font-weight:600}.care-plan-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:7px;gap:7px;margin-bottom:11px}.care-plan-options label{display:flex;align-items:center;gap:6px;padding:9px;color:var(--ink-soft);background:#f8f9f7;border-radius:7px;font-size:12px;cursor:pointer}.animal-settings-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:22px;gap:22px}.breed-create-row{display:grid;grid-template-columns:.7fr 1fr auto;grid-gap:7px;gap:7px}.animal-status-reference,.breed-list{display:grid;margin-top:12px;border-top:1px solid var(--line)}.breed-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:8px;gap:8px;align-items:center;min-height:56px;border-bottom:1px solid #eff1ed}.breed-list>div:has(>input){grid-template-columns:.7fr 1fr auto}.breed-list small,.breed-list strong{display:block}.breed-list strong{font-size:13px}.breed-list small{color:var(--ink-faint);font-size:12px}.breed-list>div>div:last-child{display:flex;gap:4px}.animal-status-reference>div{display:grid;grid-template-columns:90px 1fr;grid-gap:10px;gap:10px;align-items:center;min-height:46px;border-bottom:1px solid #eff1ed}.animal-status-reference p{margin:0;color:var(--ink-soft);font-size:12px}.is-inactive{opacity:.55}.master-data-dialog,.supplier-price-dialog{display:grid;grid-gap:12px;gap:12px}.master-hub-link{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:#f7f8f6;border:1px solid var(--line);border-radius:8px;font-size:12px}.master-active-toggle,.master-hub-link{align-items:center;color:var(--ink-soft)}.master-active-toggle{display:inline-flex;gap:7px;font-size:13px;cursor:pointer}.master-form-actions{display:flex;justify-content:flex-end;gap:7px}.master-data-list,.supplier-price-list{display:grid;max-height:310px;overflow-y:auto;border-top:1px solid var(--line)}.master-data-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;grid-gap:9px;gap:9px;align-items:center;min-height:62px;border-bottom:1px solid #eff1ed}.master-data-icon{display:grid;width:32px;height:32px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:8px}.master-data-list small,.master-data-list strong,.supplier-price-list small,.supplier-price-list strong{display:block}.master-data-list strong,.supplier-price-list strong{font-size:13px}.master-data-list small,.supplier-price-list small{margin-top:2px;color:var(--ink-faint);font-size:12px}.master-data-list>div>div:last-child,.supplier-price-list>div>div:last-child{display:flex;gap:4px}.supplier-price-form{grid-template-columns:repeat(3,minmax(0,1fr))}.supplier-price-list>div{display:grid;grid-template-columns:1.1fr .9fr .85fr auto auto;grid-gap:10px;gap:10px;align-items:center;min-height:64px;border-bottom:1px solid #eff1ed}.quote-choice-list{display:grid;grid-gap:6px;gap:6px;padding:10px;background:#f8f9f6;border:1px solid var(--line);border-radius:8px}.quote-choice-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.quote-choice-heading strong{font-size:13px}.quote-choice-list>button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;padding:9px 10px;text-align:left;background:white;border:1px solid var(--line);border-radius:7px;cursor:pointer}.quote-choice-list>button.selected,.quote-choice-list>button:hover{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.quote-choice-list>button span,.quote-choice-list>button strong{display:block}.quote-choice-list>button strong{color:var(--navy-deep);font-size:13px}.quote-choice-list>button div>span{margin-top:2px;color:var(--ink-soft);font-size:12px}.quote-choice-list>button>span{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.receipt-product{grid-template-columns:40px minmax(0,1fr) max-content}.receipt-product>div{min-width:0}.receipt-product .badge{min-width:66px;justify-content:center}.payment-record-row{grid-template-columns:24px minmax(0,1fr) auto auto auto!important;padding:8px 0}.payment-record-row>div:nth-child(2){min-width:0}.payment-record-row>div:nth-child(2) small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-row-actions{display:flex;gap:5px}.empty-list-copy{margin:0;padding:18px 0;color:var(--ink-faint);font-size:13px;text-align:center}.project-cost-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:8px}.project-cost-summary>div{padding:11px;background:#f8f9f6;border:1px solid var(--line);border-radius:8px}.project-cost-summary span,.project-cost-summary strong{display:block}.project-cost-summary span{color:var(--ink-faint);font-size:12px}.project-cost-summary strong{margin-top:4px;color:var(--navy-deep);font-family:var(--font-data);font-size:16px}.business-note-list,.project-cost-list{display:grid}.project-cost-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;grid-gap:10px;gap:10px;align-items:center;min-height:57px;border-top:1px solid #eff1ed}.business-note-list small,.business-note-list strong,.project-cost-list small,.project-cost-list strong{display:block}.business-note-list strong,.project-cost-list>div>div>strong{font-size:13px}.business-note-list small,.project-cost-list small{margin-top:3px;color:var(--ink-faint);font-size:12px}.project-cost-list>div>strong{font-family:var(--font-data)}.business-note-list>div{padding:10px 0;border-top:1px solid #eff1ed}.permission-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.permission-page-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(520px,.95fr);grid-gap:14px;gap:14px;align-items:start}.user-list{display:grid}.user-list>div{display:grid;grid-template-columns:38px minmax(120px,.8fr) minmax(170px,1.1fr) auto auto;grid-gap:10px;gap:10px;align-items:center;min-height:68px;border-top:1px solid #eff1ed}.user-list-avatar{display:grid;width:36px;height:36px;place-items:center;color:var(--teal);background:var(--teal-soft);border-radius:50%}.user-list small,.user-list strong{display:block}.user-list strong{font-size:13px}.user-list small{margin-top:3px;color:var(--ink-faint);font-size:12px}.user-row-actions{display:flex;gap:4px}.role-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:7px;gap:7px}.role-cards>div{display:grid;grid-template-columns:28px 1fr;grid-gap:8px;gap:8px;padding:10px;background:#f8f9f7;border:1px solid var(--line);border-radius:8px}.role-cards>div>span{color:var(--teal)}.role-cards strong{font-size:13px}.role-cards p{margin:3px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.5}.permission-matrix{display:grid;margin-top:12px;overflow-x:auto;border:1px solid var(--line);border-radius:8px;-webkit-clip-path:inset(0 round 8px);clip-path:inset(0 round 8px)}.permission-matrix>div{display:grid;min-width:590px;grid-template-columns:minmax(150px,1fr) repeat(4,82px);align-items:center;min-height:40px;border-bottom:1px solid #eff1ed}.permission-matrix>div:last-child{border-bottom:0}.permission-matrix span{padding-left:10px;color:var(--ink-soft);font-size:12px}.permission-matrix strong{color:var(--navy-deep);font-size:12px;text-align:center}.permission-matrix i{display:grid;height:100%;place-items:center;color:var(--teal);border-left:1px solid #eff1ed;font-style:normal;font-size:12px}.permission-matrix-head{background:#f8f9f6}.security-boundary{display:flex;align-items:flex-start;gap:7px;margin:12px 0 0;padding:10px;color:#525e69;background:var(--blue-soft);border-radius:8px;font-size:12px}.user-form{gap:13px}.project-scope-fieldset>div{display:grid;max-height:240px;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:7px;gap:7px;overflow-y:auto}.project-scope-fieldset label{display:grid;grid-template-columns:18px 1fr;grid-gap:7px;gap:7px;align-items:start;padding:9px;background:#f8f9f7;border-radius:7px;cursor:pointer}.project-scope-fieldset small,.project-scope-fieldset strong{display:block}.project-scope-fieldset strong{font-size:12px}.project-scope-fieldset small{margin-top:2px;color:var(--ink-faint);font-size:12px}.user-security-options{display:flex;flex-wrap:wrap;gap:16px}.user-security-options label{display:inline-flex;align-items:center;gap:7px;color:var(--ink-soft);font-size:13px;cursor:pointer}@media (max-width:1120px){.permission-page-grid{grid-template-columns:1fr}.permission-page-grid>.panel{min-width:0}.user-list{overflow-x:auto}.user-list>div{min-width:900px}}@media (max-width:820px){.calendar-day{min-height:86px;padding:6px}.calendar-event-chip{padding:4px 5px}.calendar-event-chip strong{font-size:12px}.calendar-day.empty:hover:after,.calendar-event-chip small{display:none}.animal-record-list{overflow-x:auto}.animal-record-row{min-width:900px}.animal-side{grid-template-columns:1fr}.animal-profile-strip{grid-template-columns:56px repeat(2,minmax(0,1fr))}.animal-care-plan>div:nth-child(2),.care-plan-options{grid-template-columns:repeat(2,minmax(0,1fr))}.animal-settings-grid{grid-template-columns:1fr}.supplier-price-form{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-price-list{overflow-x:auto}.supplier-price-list>div{min-width:760px}.payment-record-row{grid-template-columns:24px minmax(0,1fr) auto!important}.payment-record-row>.badge{grid-column:2;justify-self:start}.payment-row-actions{grid-column:2/-1}}@media (max-width:560px){.form-grid-two,.project-scope-fieldset>div,.supplier-form-grid,.supplier-price-form{grid-template-columns:1fr}.calendar-weekdays span{font-size:12px}.calendar-day{min-height:64px}.calendar-day-number{font-size:12px}.animal-care-plan>div:nth-child(2),.care-plan-options{grid-template-columns:1fr}.animal-record-list{overflow:visible}.animal-record-row{min-width:0;align-items:start}.animal-select{min-height:144px;align-content:start;padding-top:22px}.animal-record-open{grid-template-columns:44px minmax(0,1fr) 16px;gap:7px;min-height:144px;padding:13px 10px}.animal-record-open>.animal-avatar{grid-column:1;grid-row:1/span 2}.animal-record-open>.animal-main{grid-column:2;grid-row:1}.animal-record-open>.animal-project{grid-column:2;grid-row:2}.animal-record-open>.animal-source{grid-column:2;grid-row:3}.animal-record-open>.animal-next{grid-column:2;grid-row:4}.animal-record-open>svg{grid-column:3;grid-row:1}.animal-record-open .animal-next,.animal-record-open .animal-project,.animal-record-open .animal-source{padding-top:5px;border-top:1px dashed #e5e9e4}.animal-record-list small,.animal-record-list strong{white-space:normal}.breed-create-row{grid-template-columns:1fr}.breed-list>div,.breed-list>div:has(>input){grid-template-columns:1fr auto;padding:8px 0}.breed-list>div>div:last-child{grid-column:1/-1}.master-data-list{overflow-x:auto}.master-data-list>div{min-width:620px}.permission-metrics,.project-cost-summary,.role-cards{grid-template-columns:1fr}.project-cost-list>div{grid-template-columns:1fr auto;padding:8px 0}.project-cost-list .badge{grid-column:1/-1;justify-self:start}}.schedule-header-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.execution-rail-panel[hidden],.schedule-workspace[hidden]{display:none!important}.schedule-view-switch{display:inline-flex;padding:3px;background:#eeefeb;border:1px solid var(--line);border-radius:8px}.schedule-view-switch button{display:inline-flex;min-height:34px;align-items:center;gap:6px;padding:0 11px;color:var(--ink-soft);background:transparent;border:0;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.schedule-view-switch button.active{color:var(--ink);background:#fff;border-color:transparent;box-shadow:0 1px 2px rgb(37 45 41/10%),0 0 0 .5px rgb(37 45 41/6%)}.schedule-form-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.schedule-form-section-heading span,.schedule-form-section-heading strong{display:block}.schedule-form-section-heading strong{color:var(--navy-deep);font-size:14px}.schedule-form-section-heading span{margin-top:2px;color:var(--ink-faint);font-size:13px}.schedule-animal-selector,.schedule-checklist-editor{padding:12px;background:#f9faf7;border:1px solid #e2e6e1;border-radius:9px}.schedule-animal-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:7px;gap:7px;max-height:190px;overflow-y:auto}.schedule-animal-options label{display:grid;grid-template-columns:18px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;min-height:48px;padding:8px 10px;background:white;border:1px solid var(--line);border-radius:7px;cursor:pointer}.schedule-animal-options label.selected{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.schedule-animal-options input,.schedule-checklist-options input{width:16px;min-height:16px;margin:0;accent-color:var(--teal)}.schedule-animal-options small,.schedule-animal-options strong{display:block}.schedule-animal-options strong{font-size:14px}.schedule-animal-options small{margin-top:2px;color:var(--ink-soft);font-size:12px}.schedule-checklist-options{display:flex;flex-wrap:wrap;gap:7px}.schedule-checklist-options label{display:inline-flex;min-height:36px;align-items:center;gap:7px;padding:7px 10px;color:var(--ink-soft);background:white;border:1px solid var(--line);border-radius:7px;font-size:14px;cursor:pointer}.schedule-checklist-options label.selected{color:var(--navy-deep);border-color:#afcabc;background:var(--teal-soft)}.execution-rail-panel{overflow:hidden;background:white;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.execution-rail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 22px;color:var(--ink);background:var(--ry-canvas);border-bottom:1px solid var(--line)}.execution-rail-heading h2{margin:2px 0 4px;font-size:20px;font-weight:600}.execution-rail-heading p{margin:0;color:var(--ink-faint);font-size:14px}.execution-rail-heading>span{padding-bottom:3px;color:var(--ink-faint);font-family:var(--font-data);font-size:14px}.execution-rail{padding:0 22px 10px}.execution-day{display:grid;grid-template-columns:76px minmax(0,1fr);border-bottom:1px solid #eaede9}.execution-day:last-child{border-bottom:0}.execution-date{position:relative;display:grid;align-content:start;justify-items:center;grid-gap:1px;gap:1px;padding:19px 14px 16px 0;color:var(--ink-soft);border-right:1px solid #dfe4de}.execution-date:after{position:absolute;top:25px;right:-5px;width:9px;height:9px;content:"";background:white;border:2px solid #a8aea5;border-radius:50%}.execution-day.today .execution-date:after{border-color:var(--teal);background:var(--teal);box-shadow:0 0 0 4px var(--teal-soft)}.execution-date span{font-size:14px}.execution-date strong{color:var(--navy-deep);font-family:var(--font-data);font-size:27px;line-height:1}.execution-date small{font-size:13px}.execution-day-content{display:grid;grid-gap:10px;gap:10px;min-height:82px;padding:14px 0 14px 22px}.execution-event-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.38fr);grid-gap:18px;gap:18px;padding:15px 16px 15px 19px;background:#fbfcfa;border:1px solid var(--line);border-radius:9px}.execution-event-card:before{position:absolute;inset:-1px auto -1px -1px;width:4px;content:"";background:var(--schedule-accent);border-radius:9px 0 0 9px}.execution-event-card.has-conflict{border-color:#e9bcb4}.execution-event-top{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.execution-event-top>span{color:var(--ink-soft);font-family:var(--font-data);font-size:14px;font-weight:600}.execution-event-main>a{display:block;margin-top:8px}.execution-event-main>a small,.execution-event-main>a strong{display:block}.execution-event-main>a strong{color:var(--navy-deep);font-size:17px}.execution-event-main>a small{margin-top:3px;color:var(--ink-soft);font-size:14px}.execution-meta{display:flex;flex-wrap:wrap;gap:7px 16px;margin-top:10px}.execution-meta span{display:inline-flex;align-items:center;gap:5px;color:var(--ink-soft);font-size:14px}.execution-animal-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.execution-animal-tags span{padding:5px 8px;color:#425565;background:#eeefeb;border-radius:5px;font-family:var(--font-data);font-size:13px;font-weight:600}.execution-animal-tags span.unbound{color:#855e2a;background:var(--amber-soft);font-family:var(--font-body)}.execution-event-card .schedule-conflict-note,.execution-event-card .schedule-note{font-size:13px;line-height:1.55}.execution-checklist{align-self:stretch;padding-left:16px;border-left:1px solid #e3e7e1}.execution-checklist>div{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.execution-checklist>div span{display:inline-flex;align-items:center;gap:6px;color:var(--navy-deep);font-size:14px;font-weight:600}.execution-checklist>div strong{color:var(--teal);font-family:var(--font-data)}.execution-checklist>button{display:grid;width:100%;grid-template-columns:18px 1fr;grid-gap:7px;gap:7px;align-items:center;min-height:34px;padding:5px 0;color:var(--ink-soft);text-align:left;background:transparent;border:0;cursor:pointer}.execution-checklist>button i{display:grid;width:17px;height:17px;place-items:center;border:1px solid #b1b8af;border-radius:4px;font-style:normal;font-size:13px}.execution-checklist>button span{font-size:14px}.execution-checklist>button.completed{color:var(--teal)}.execution-checklist>button.completed i{color:white;background:var(--teal);border-color:var(--teal)}.execution-checklist>p{margin:0;color:var(--ink-faint);font-size:14px}.execution-empty-slot{display:flex;min-height:50px;align-items:center;gap:8px;padding:0 13px;color:var(--ink-faint);text-align:left;background:transparent;border:1px dashed #ced2cc;border-radius:8px;cursor:pointer}.execution-empty-slot:hover{color:var(--teal);border-color:var(--teal);background:#f9faf8}.execution-empty-slot span{font-size:14px}.execution-empty-slot strong{margin-left:auto;color:var(--teal);font-size:14px}.execution-animal-reminders{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:9px 11px;background:var(--amber-soft);border-radius:7px}.execution-animal-reminders strong{margin-right:4px;color:#755327;font-size:14px}.execution-animal-reminders span{display:inline-flex;align-items:center;gap:4px;color:#755327;font-size:13px}.financial-event-form{display:grid;grid-gap:14px;gap:14px}.financial-event-kind-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:7px;gap:7px}.financial-event-kind-grid button{display:grid;grid-template-columns:22px minmax(0,1fr);grid-gap:7px;gap:7px;align-items:start;min-height:62px;padding:10px;color:var(--ink-soft);text-align:left;background:#f8f9f7;border:1px solid var(--line);border-radius:8px;cursor:pointer}.financial-event-kind-grid button.active{color:var(--teal);background:var(--teal-soft);border-color:#a8c2b5;box-shadow:inset 0 0 0 1px #a8c2b5}.financial-event-kind-grid small,.financial-event-kind-grid strong{display:block}.financial-event-kind-grid strong{color:var(--navy-deep);font-size:14px}.financial-event-kind-grid small{margin-top:2px;font-size:12px;line-height:1.35}.financial-payment-context{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:end;padding:12px;background:#f7f8f5;border:1px solid var(--line);border-radius:8px}.financial-payment-context dl{display:grid;grid-template-columns:repeat(3,auto);grid-gap:14px;gap:14px;margin:0}.financial-payment-context dt{color:var(--ink-faint);font-size:12px}.financial-payment-context dd{margin:3px 0 0;color:var(--navy-deep);font-family:var(--font-data);font-size:14px;font-weight:600}.form-grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.financial-calculation-basis{padding:12px;background:#f8f9f7;border:1px solid var(--line);border-radius:8px}.financial-calculation-basis>strong{display:block;margin-bottom:9px;color:var(--navy-deep);font-size:14px}.financial-event-list{display:grid}.financial-event-list>div{display:grid;grid-template-columns:58px minmax(0,1fr) auto auto;grid-gap:11px;gap:11px;align-items:start;min-height:64px;padding:11px 0;border-top:1px solid #eaede9}.contract-change-row.is-voided,.financial-event-list>div.is-voided,.payment-record-row.is-voided,.project-cost-list>div.is-voided{opacity:.66}.contract-change-row.is-voided .contract-change-amount,.financial-event-list>div.is-voided>strong,.payment-record-row.is-voided>strong,.project-cost-list>div.is-voided>strong{text-decoration:line-through}.financial-event-list>div>div small,.financial-event-list>div>div strong{display:block}.financial-event-list>div>div strong{color:var(--navy-deep);font-size:14px}.financial-event-list>div>div small{margin-top:3px;color:var(--ink-faint);font-size:12px}.financial-event-list>div>div p{margin:5px 0 0;color:var(--ink-soft);font-size:13px}.financial-event-list>div>strong{padding-top:2px;font-family:var(--font-data);font-size:14px}.contract-change-list{display:grid}.payment-progress-copy{display:block;margin-top:4px;color:var(--teal);font-size:12px;font-weight:600}.supplier-price-terms{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:10px 12px;background:#f7f8f6;border:1px solid #e1e5e0;border-radius:8px}.supplier-price-terms label{display:inline-flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:14px;cursor:pointer}.supplier-price-terms input{width:16px;min-height:16px;margin:0;accent-color:var(--teal)}.supplier-price-terms strong{margin-left:auto;color:var(--teal);font-family:var(--font-data);font-size:14px}.supplier-price-list>div{grid-template-columns:1fr .9fr 1.35fr auto auto;min-height:78px}.supplier-price-list strong{font-size:14px}.supplier-price-list small{font-size:12px;line-height:1.45}.quote-choice-list>button div>small{display:block;margin-top:3px;color:var(--teal);font-size:12px}.notification-settings-header{align-items:center}.notification-settings-grid{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(420px,1.18fr);grid-gap:16px;gap:16px;align-items:start}.notification-settings-grid .panel-inner{padding:20px}.notification-settings-grid .section-heading{margin-bottom:17px}.notification-settings-grid .field-label{display:block;margin-bottom:5px}.notification-enable-row{display:grid;grid-template-columns:18px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;padding:12px;color:var(--ink-soft);background:#f7f8f6;border:1px solid #e1e5e0;border-radius:8px;cursor:pointer}.notification-enable-row input{width:16px;min-height:16px;margin:2px 0 0;accent-color:var(--teal)}.notification-enable-row small,.notification-enable-row strong{display:block}.notification-enable-row strong{color:var(--navy-deep);font-size:14px}.notification-enable-row small{margin-top:3px;color:var(--ink-faint);font-size:12px;line-height:1.45}.notification-master-toggle{background:var(--teal-soft);border-color:#c8dad1}.notification-logic-flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center;padding:12px;background:#f9faf7;border:1px solid #e1e6e0;border-radius:9px}.notification-logic-flow>div{display:grid;grid-template-columns:24px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:start}.notification-logic-flow>div>b{display:grid;width:24px;height:24px;place-items:center;color:white;background:var(--teal);border-radius:50%;font-family:var(--font-data);font-size:12px}.notification-logic-flow small,.notification-logic-flow strong{display:block}.notification-logic-flow strong{color:var(--navy-deep);font-size:12px;line-height:1.4}.notification-logic-flow small{margin-top:3px;color:var(--ink-faint);font-size:12px;line-height:1.45}.notification-logic-flow>i{color:#68766f;font-size:14px;font-style:normal}.notification-rule-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px}.notification-rule-list[aria-disabled=true]>label{background:#f9faf7;cursor:default}.notification-rule-list[aria-disabled=true] input{opacity:.55}.notification-rule-list>label{display:grid;grid-template-columns:18px minmax(0,1fr);grid-gap:9px;gap:9px;align-items:start;min-height:154px;padding:11px;background:#fbfcfa;border:1px solid #e1e5df;border-radius:8px;cursor:pointer}.notification-rule-list input{width:16px;min-height:16px;margin:2px 0 0;accent-color:var(--teal)}.notification-rule-list small,.notification-rule-list strong{display:block}.notification-rule-list strong{color:var(--navy-deep);font-size:13px;line-height:1.4}.notification-rule-list small{margin-top:6px;color:var(--ink-soft);font-size:12px;line-height:1.5}.notification-rule-list small b{color:var(--teal);font-size:12px;letter-spacing:0}.notification-rule-list em{display:block;margin-top:7px;color:var(--ink-faint);font-size:12px;font-style:normal;line-height:1.5}.notification-time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.notification-time-grid input{min-width:0}.notification-customization-note{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1px;gap:1px;overflow:hidden;background:#e1e6e0;border:1px solid #e1e6e0;border-radius:8px}.notification-customization-note>div{padding:11px 12px;background:#fbfcfa}.notification-customization-note strong{color:var(--navy-deep);font-size:12px}.notification-customization-note p{margin:4px 0 0;color:var(--ink-faint);font-size:12px;line-height:1.55}.wecom-preview{display:grid;grid-gap:12px;gap:12px;padding:15px;background:#f1f3ef;border:1px solid #dde2dc;border-radius:10px}.wecom-preview-head{display:flex;align-items:center;gap:9px}.wecom-preview-head>span{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;color:white;background:var(--teal);border-radius:8px}.wecom-preview-head small,.wecom-preview-head strong{display:block}.wecom-preview-head strong{color:var(--navy-deep);font-size:14px}.wecom-preview-head small{margin-top:2px;color:var(--ink-faint);font-size:12px}.wecom-preview-bubble{display:grid;width:min(92%,620px);grid-template-columns:18px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:start;padding:13px 14px;color:var(--ink-soft);background:white;border:1px solid #e1e5df;border-radius:4px 10px 10px;box-shadow:0 5px 15px rgb(44 52 48/.06)}.wecom-preview-bubble svg{margin-top:1px;color:var(--teal)}.wecom-preview-bubble p{min-width:0;margin:0;font-size:14px;line-height:1.65;overflow-wrap:anywhere;white-space:pre-wrap}.wecom-preview>small{justify-self:end;color:var(--ink-faint);font-family:var(--font-data);font-size:12px}.wecom-preview>small.is-over-limit{color:var(--coral);font-weight:600}.notification-send-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.notification-history-panel,.notification-manual-panel{margin-top:16px}.notification-history-panel .panel-inner,.notification-manual-panel .panel-inner{padding:20px}.notification-delivery-list{display:grid;grid-gap:8px;gap:8px}.notification-delivery-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:start;padding:13px 14px;background:#fbfcfa;border:1px solid #e3e8e2;border-radius:9px}.notification-delivery-main{min-width:0}.notification-delivery-main>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.notification-delivery-main strong{color:var(--navy-deep);font-size:14px}.notification-delivery-rule{color:var(--teal);font-size:12px;font-weight:650;letter-spacing:0}.notification-delivery-main p{max-height:6.6em;margin:7px 0;color:var(--ink-soft);font-size:12px;line-height:1.65;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.notification-delivery-main small{display:flex;align-items:center;gap:4px;color:var(--ink-faint);font-size:12px}.notification-delivery-main em{display:block;margin-top:6px;color:var(--coral);font-size:12px;font-style:normal}.notification-delivery-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;align-items:center}.notification-history-empty{display:grid;min-height:130px;place-items:center;align-content:center;grid-gap:5px;gap:5px;color:var(--ink-faint);text-align:center}.notification-history-empty strong{color:var(--navy-deep);font-size:14px}.notification-history-empty p{margin:0;font-size:12px}.notification-compose-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);grid-gap:16px;gap:16px;align-items:stretch}.notification-compose-grid .wecom-preview{min-height:100%}.notification-manual-panel .notification-send-actions{margin-top:12px}.notification-feedback{display:flex;align-items:center;gap:7px;margin-top:14px;padding:11px 13px;font-size:13px;border:1px solid;border-radius:8px}.notification-feedback-error{color:#974539;background:var(--coral-soft);border-color:#edccc6}.notification-feedback-success{color:#3f6754;background:var(--teal-soft);border-color:#d2e3da}.notification-security-note{display:grid;grid-template-columns:20px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;margin-top:16px;padding:14px 16px;color:var(--teal);background:#f9faf8}.notification-security-note strong{color:var(--navy-deep);font-size:14px}.notification-security-note p{margin:3px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.55}@media (max-width:980px){.financial-event-kind-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.execution-event-card{grid-template-columns:1fr}.execution-checklist{padding:12px 0 0;border-top:1px solid #e3e7e1;border-left:0}.notification-compose-grid,.notification-settings-grid{grid-template-columns:1fr}}@media (max-width:680px){.notification-customization-note,.notification-logic-flow,.notification-rule-list,.notification-time-grid{grid-template-columns:1fr}.notification-logic-flow>i{display:none}.notification-rule-list>label{min-height:0}.notification-delivery-list article{grid-template-columns:1fr}.notification-delivery-actions,.schedule-header-actions{justify-content:flex-start}.schedule-view-switch{width:100%}.schedule-view-switch button{flex:1 1;justify-content:center}.financial-event-kind-grid,.financial-payment-context,.form-grid-three,.schedule-animal-options{grid-template-columns:1fr}.financial-payment-context dl{grid-template-columns:repeat(3,1fr)}.execution-rail-heading{align-items:flex-start;flex-direction:column;padding:16px}.execution-rail{padding:0 12px 8px}.execution-day{grid-template-columns:52px minmax(0,1fr)}.execution-date{padding-right:9px}.execution-day-content{padding-left:14px}.execution-event-card{padding:13px 12px 13px 15px}.execution-event-main>a strong{font-size:15px}.supplier-price-terms strong{width:100%;margin-left:0}.notification-send-actions{align-items:stretch;flex-direction:column}.notification-send-actions .button{justify-content:center;width:100%}}@media print{body:has(.experiment-requirements-print-page) .mobile-nav,body:has(.experiment-requirements-print-page) .sidebar,body:has(.experiment-requirements-print-page) .topbar,body:has(.experiment-requirements-print-page) .workspace-attention-banner,body:has(.print-only-page) .mobile-nav,body:has(.print-only-page) .sidebar,body:has(.print-only-page) .topbar,body:has(.print-only-page) .workspace-attention-banner{display:none!important}body:has(.experiment-requirements-print-page) .app-main,body:has(.experiment-requirements-print-page) .page-content,body:has(.print-only-page) .app-main,body:has(.print-only-page) .page-content{display:block;width:100%;padding:0!important}body:has(.print-only-page) .app-main{margin:0!important}}