*{box-sizing:border-box}body,html{margin:0;min-height:100%}.portal-body{background:#f7f6f2;color:#18221d;font-family:Arial,Microsoft YaHei,sans-serif}a{color:inherit}.portal-login-shell{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:24px}.portal-login-card{background:#fffdf8;border:1px solid rgba(24,34,29,.12);border-radius:12px;display:grid;grid-gap:20px;gap:20px;max-width:400px;padding:40px 32px;width:100%}.portal-login-eyebrow{color:#58775b;font-size:13px;font-weight:800;letter-spacing:0;margin:0;text-transform:uppercase}.portal-login-card h1{font-size:28px;line-height:1.2;margin:0}.portal-login-card label{display:grid;grid-gap:6px;gap:6px}.portal-login-card label span{color:#5d665f;font-size:13px;font-weight:600}.portal-login-card input{background:#fff;border:1px solid rgba(24,34,29,.18);border-radius:8px;font-size:15px;min-height:44px;padding:8px 12px}.portal-login-card input:focus{border-color:#58775b;outline:none}.portal-login-card button[type=submit]{background:#18221d;border:0;border-radius:8px;color:#fffdf8;cursor:pointer;font-size:15px;font-weight:700;min-height:44px;padding:10px}.portal-login-card button[type=submit]:disabled{opacity:.5}.portal-login-error{background:#fcebeb;border:1px solid #f09595;border-radius:8px;color:#a32d2d;font-size:13px;padding:10px 12px}.portal-shell{display:grid;grid-gap:18px;gap:18px;margin:0 auto;max-width:800px;min-height:100vh;padding:32px 16px 96px}.portal-header{align-items:center;display:flex;justify-content:space-between;padding:0 4px}.portal-header-info{display:grid;grid-gap:2px;gap:2px}.portal-header-info strong{font-size:18px}.portal-header-info span,.portal-logout-btn{color:#5d665f;font-size:13px}.portal-logout-btn{align-items:center;background:rgba(24,34,29,.06);cursor:pointer;display:inline-flex;padding:6px 12px;justify-content:center;line-height:1.2;text-decoration:none}.portal-hero,.portal-logout-btn{border:1px solid rgba(24,34,29,.12);border-radius:8px}.portal-hero{background:#fffdf8;padding:24px}.portal-hero-eyebrow{color:#58775b;font-size:12px;font-weight:800;margin:0 0 8px;text-transform:uppercase}.portal-hero h2{font-size:24px;margin:0 0 8px}.portal-hero p{color:#5d665f;font-size:14px;line-height:1.6;margin:0}.portal-metrics{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(3,1fr)}.portal-metric{background:#fff;border:1px solid rgba(24,34,29,.1);border-radius:8px;padding:14px;text-align:center}.portal-metric span{color:#8c9c8e;display:block;font-size:12px;margin-bottom:4px}.portal-metric strong{color:#18221d;font-size:22px}.portal-focus{align-items:center;background:#18221d;border-radius:8px;color:#fffdf8;display:flex;gap:16px;justify-content:space-between;padding:18px 20px}.portal-focus span{color:rgba(255,253,248,.6);font-size:12px;font-weight:700}.portal-focus strong{display:block;font-size:20px;margin-top:4px}.portal-focus p{color:rgba(255,253,248,.7);font-size:13px;margin:6px 0 0}.portal-focus button{background:#fff;border:0;border-radius:999px;color:#18221d;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:700;min-height:40px;padding:0 16px}.portal-section-title{color:#18221d;font-size:17px;font-weight:700;margin:0 0 4px}.portal-section-desc{color:#8c9c8e;font-size:12px;margin:0 0 12px}.portal-nodes{display:grid;grid-gap:10px;gap:10px}.portal-node{align-items:center;background:#fff;border:1px solid rgba(24,34,29,.1);border-radius:8px;cursor:pointer;display:grid;grid-gap:12px;gap:12px;grid-template-columns:44px 1fr auto;padding:14px;transition:background .15s}.portal-node-icon,.portal-node:hover{background:#edf2ea}.portal-node-icon{align-items:center;border-radius:8px;display:flex;height:40px;justify-content:center;width:40px}.portal-node-icon svg{height:22px;stroke:#58775b;stroke-width:1.8;width:22px}.portal-node-body strong{display:block;font-size:15px}.portal-node-body p{color:#58775b;font-size:12px;margin:4px 0 0}.portal-node-arrow{color:#8c9c8e;font-size:20px}.portal-tips{display:grid;grid-gap:8px;gap:8px}.portal-tip{background:#fff;border:1px solid rgba(24,34,29,.08);border-radius:8px;color:#5d665f;font-size:13px;line-height:1.6;padding:10px 12px}.portal-bottom-actions{background:rgba(247,246,242,.96);border-top:1px solid rgba(24,34,29,.1);bottom:0;display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,1fr);left:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:10}.portal-bottom-actions a,.portal-bottom-actions button{align-items:center;background:#fff;border:1px solid rgba(24,34,29,.12);border-radius:8px;color:#18221d;cursor:pointer;display:flex;font-size:14px;font-weight:700;justify-content:center;min-height:44px;text-decoration:none}.portal-bottom-actions .primary{background:#18221d;border-color:#18221d;color:#fffdf8}@media (min-width:768px){.portal-shell{border-left:1px solid rgba(24,34,29,.08);border-right:1px solid rgba(24,34,29,.08);max-width:760px}.portal-bottom-actions{left:50%;right:auto;transform:translateX(-50%);width:760px}}.portal-role-plan{background:#F4F6F2;border:1px solid #dce5dc;border-radius:14px;margin:20px 0;padding:18px}.portal-role-plan-head h3{color:#18221D;font-size:18px;margin:0 0 4px}.portal-role-plan-head p{color:#58775B;font-size:13px;margin:0 0 14px}.portal-role-plan-stages{display:grid;grid-gap:10px;gap:10px;margin-bottom:14px}.portal-role-plan-stage{background:#FFFFFF;border:1px solid #dce5dc;border-radius:10px;padding:12px 14px}.portal-role-plan-stage strong{color:#376968;font-size:14px}.portal-role-plan-stage p{color:#18221D;font-size:13px;margin:6px 0 0}.portal-role-plan-basics{display:grid;grid-gap:8px;gap:8px}.portal-role-plan-basic{align-items:flex-start;background:#FFFFFF;border:1px solid #dce5dc;border-radius:10px;display:flex;gap:10px;font-size:13px;color:#18221D;padding:10px 12px}.portal-role-plan-basic em{background:#376968;border-radius:999px;color:#FFFFFF;flex:0 0 auto;font-size:12px;font-style:normal;font-weight:700;padding:3px 10px}.rw-hero{padding:26px 24px 20px;background:radial-gradient(circle at 16% 0,rgba(255,255,255,.95),rgba(246,241,232,0) 46%)}.rw-eyebrow{color:#557457;font-size:12px;font-weight:900;letter-spacing:.06em;margin:0 0 6px;text-transform:uppercase}.rw-hero h1{color:#18221D;font-size:34px;line-height:40px;margin:0}.rw-hero>p:not(.rw-eyebrow){color:rgba(74,51,39,.68);font-size:14px;line-height:1.65;margin:8px 0 12px;max-width:640px}.rw-badges{display:flex;gap:8px}.rw-badges span{background:rgba(255,255,255,.78);border:1px solid #e6d8c5;border-radius:999px;color:#4A3327;font-size:12px;font-weight:800;padding:4px 12px}.rw-today{padding:0 14px 10px}.rw-section-head{margin:0 0 12px;padding:0 10px}.rw-section-head h2{color:#18221D;font-size:22px;line-height:28px;margin:0}.rw-action-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.rw-action{background:linear-gradient(145deg,#FFFDF8,#F4EADB);border:1px solid #e6d8c5;border-radius:10px;box-shadow:0 10px 18px rgba(74,51,39,.07);color:#4A3327;display:block;min-height:118px;padding:16px 18px;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.rw-action:hover{box-shadow:0 14px 24px rgba(74,51,39,.12);transform:translateY(-2px)}.rw-action span{background:#0F472F;border-radius:999px;color:#FFFFFF;display:inline-block;font-size:12px;font-weight:900;padding:3px 10px}.rw-action strong{display:block;font-size:19px;line-height:26px;margin-top:10px}.rw-action p{color:rgba(74,51,39,.66);font-size:13px;line-height:19px;margin:6px 0 0}.rw-sop{margin:14px;border:1px solid #e6d8c5;border-radius:12px;padding:18px;background:rgba(255,253,248,.9)}.rw-sop>h2{color:#18221D;font-size:20px;line-height:28px;margin:0 0 14px}.rw-sop-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.rw-sop-card{background:#FFFFFF;border:1px solid #eadfce;border-radius:10px;color:#4A3327;padding:14px;text-decoration:none;transition:border-color .12s ease,background .12s ease}.rw-sop-card:hover{background:#F4EADB;border-color:#D4C0A7}.rw-sop-card strong{color:#0F472F;display:block;font-size:15px}.rw-sop-card p{color:rgba(74,51,39,.62);font-size:13px;line-height:19px;margin:6px 0 0}.rw-myday{margin:14px;border:1px solid #e6d8c5;border-radius:12px;padding:16px;background:rgba(255,253,248,.9)}.rw-node-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.rw-node-card{background:#FFFFFF;border:1px solid #eadfce;border-radius:10px;color:#4A3327;padding:14px;text-decoration:none;transition:border-color .12s ease,transform .12s ease}.rw-node-card:hover{border-color:#0F472F;transform:translateY(-2px)}.rw-node-card span{color:#557457;font-size:12px;font-weight:900}.rw-node-card strong{color:#18221D;display:block;font-size:16px;margin-top:6px}.rw-node-card p{color:rgba(74,51,39,.64);font-size:13px;line-height:19px;margin:6px 0 10px}.rw-node-card em{color:#0F472F;font-size:12px;font-style:normal;font-weight:800}.rw-myday-rows{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.rw-myday-row{align-items:baseline;background:#FFFFFF;border:1px solid #eadfce;border-radius:10px;display:flex;gap:10px;padding:10px 12px}.rw-myday-row span{background:#0F472F;border-radius:999px;color:#FFFFFF;flex:0 0 auto;font-size:12px;font-weight:800;padding:3px 10px}.rw-myday-row p{color:#2D2016;font-size:13px;line-height:19px;margin:0}.rw-basics-row{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:12px}.rw-basic-chip{align-items:flex-start;background:#EEF3EA;border:1px solid #d7e4ce;border-radius:10px;color:#2D2016;display:flex;font-size:13px;gap:8px;line-height:19px;padding:10px 12px}.rw-basic-chip em{background:#557457;border-radius:999px;color:#FFFFFF;flex:0 0 auto;font-size:12px;font-style:normal;font-weight:800;padding:3px 9px}.shift-page{color:#2D2016;min-height:100vh;padding-bottom:96px}.shift-hero{padding:18px 16px 6px}.shift-hero h1{color:#18221D;font-size:32px;line-height:38px;margin:6px 0 8px}.shift-hero-desc{color:rgba(74,51,39,.7);font-size:14px;line-height:1.65;margin:0 0 12px;max-width:680px}.shift-hero-actions{display:flex;flex-wrap:wrap;gap:8px}.shift-hero-actions a,.shift-hero-actions button{align-items:center;background:rgba(255,255,255,.82);border:1px solid #e6d8c5;border-radius:999px;color:#4A3327;cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;min-height:38px;padding:0 16px;justify-content:center;line-height:1.2;text-decoration:none}.shift-card{background:rgba(255,253,248,.9);border:1px solid #e6d8c5;border-radius:12px;margin:12px 14px;padding:16px}.shift-card h2{color:#18221D;font-size:20px;line-height:27px;margin:0 0 6px}.shift-card h3{color:#18221D;font-size:17px;line-height:24px;margin:0 0 4px}.shift-card .shift-card-sub{color:rgba(74,51,39,.58);font-size:13px;line-height:18px;margin:0 0 14px}.shift-goal{background:linear-gradient(135deg,#E2F0E8,#EEF7F0);border:1px solid #c6dfd0}.shift-goal p{color:#2D2016;font-size:14px;line-height:1.7;margin:0}.shift-reminder{border-left:4px solid #0f472f}.shift-reminder ul{color:rgba(74,51,39,.76);font-size:14px;line-height:1.7;margin:8px 0 0;padding-left:20px}.shift-form{display:grid;grid-gap:14px;gap:14px}.shift-field{display:grid;grid-gap:6px;gap:6px}.shift-field label{color:#2D2016;font-size:13px;font-weight:900}.field-hint{color:rgba(74,51,39,.52);font-size:11px;font-weight:600}.shift-field input[type=number],.shift-field input[type=text],.shift-field select,.shift-field textarea{background:#FFFFFF;border:1px solid #d6cabc;border-radius:8px;box-sizing:border-box;color:#2D2016;font:inherit;padding:10px 12px;width:100%}.shift-field textarea{line-height:1.55;resize:vertical}.shift-row-2{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.shift-role-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.shift-basic{background:#FAF8F5;border:1px solid #e6d8c5;border-radius:10px;padding:12px}.shift-basic-tabs{background:#eef4e9;border-radius:12px;display:grid;grid-gap:4px;gap:4px;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));padding:5px}.shift-basic-tabs button{background:transparent;border:0;border-radius:9px;color:#58755d;cursor:pointer;font:inherit;font-weight:800;min-height:46px;padding:8px 12px}.shift-basic-tabs button.active{background:#17231d;color:#fff}.shift-basic-tabs button span{display:block;font-size:10px;font-weight:600;margin-top:2px;opacity:.75}.shift-basic-head{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.shift-basic-head strong{color:#0F472F;font-size:16px}.shift-basic-desc{color:rgba(74,51,39,.62);font-size:13px;line-height:18px;margin:0 0 10px}.shift-radio-row{display:flex;gap:8px;margin-bottom:10px}.shift-radio-row label{align-items:center;border:1.5px solid #c4b8a8;border-radius:999px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:6px;padding:7px 16px}.shift-radio-row label.active{background:#0F472F;border-color:#0F472F;color:#FFFFFF}.shift-radio-row label.active.issue{background:#B45309;border-color:#B45309}.shift-radio-row input{accent-color:#0F472F}.shift-radio-row input.issue-input{accent-color:#B45309}.shift-standard-reference{background:#eef6ee;border:1px solid #d8e6d8;border-radius:10px;color:#58755d;display:grid;grid-gap:6px;gap:6px;padding:12px}.shift-standard-reference>div{display:flex;flex-wrap:wrap;gap:6px}.shift-standard-reference>div span{background:#fff;border:1px solid #d8e6d8;border-radius:999px;font-size:12px;padding:4px 10px}.shift-evidence-actions{display:flex;flex-wrap:wrap;gap:8px}.shift-evidence-actions label{align-items:center;background:#fff;border:1px solid #d8c8b1;border-radius:9px;color:#4a3327;cursor:pointer;display:flex;font-size:13px;font-weight:700;justify-content:center;min-height:42px;padding:8px 14px}.shift-evidence-actions input{display:none}.shift-evidence-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.shift-evidence-list span{align-items:center;background:#eef4ec;border-radius:999px;color:#48634e;display:inline-flex;font-size:12px;gap:6px;max-width:100%;padding:5px 9px}.shift-evidence-list button{background:transparent;border:0;cursor:pointer;font:inherit}.shift-cross-feedback{border-style:dashed}.shift-cross-keys{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.shift-cross-keys label{border:1px solid #cfc4b5;border-radius:999px;cursor:pointer;font-size:13px;padding:6px 12px}.shift-cross-keys label.active{background:#0f472f;border-color:#0f472f;color:#fff}.shift-cross-keys input{display:none}@media (max-width:640px){.shift-evidence-actions label{flex:1 1 auto}}.shift-photo-row{display:flex;flex-wrap:wrap;gap:8px}.shift-photo-item{border:1px solid #d6cabc;border-radius:8px;height:84px;overflow:hidden;position:relative;width:84px}.shift-photo-item img{height:100%;object-fit:cover;width:100%}.shift-photo-remove{background:rgba(0,0,0,.5);border-radius:999px;color:#FFFFFF;font-size:12px;height:20px;position:absolute;right:2px;top:2px;width:20px}.shift-photo-add,.shift-photo-remove{align-items:center;cursor:pointer;display:flex;justify-content:center}.shift-photo-add{border:2px dashed #d6cabc;border-radius:8px;color:rgba(74,51,39,.6);font-size:32px;height:84px;width:84px}.shift-photo-add input{display:none}.shift-photo-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));margin-top:4px}.shift-photo-grid figure{background:#F8F4EE;border:1px solid #d6cabc;border-radius:10px;margin:0;overflow:hidden}.shift-photo-grid img{display:block;height:86px;object-fit:cover;width:100%}.shift-photo-grid figcaption{color:rgba(74,51,39,.62);font-size:10px;overflow:hidden;padding:5px 6px;text-overflow:ellipsis;white-space:nowrap}.shift-submit{background:#0F472F;border:0;border-radius:8px;color:#FFFFFF;cursor:pointer;font-size:15px;font-weight:900;min-height:48px;width:100%}.shift-submit:disabled{opacity:.55}.shift-ai{background:#EEF2F6;border-color:#D7DEE8}.shift-ai-badge{background:#475569;border-radius:999px;color:#FFFFFF;display:inline-block;font-size:12px;font-weight:800;padding:3px 10px}.shift-trace-item{border-top:1px solid #eadfce;padding:12px 2px}.shift-trace-item:first-of-type{border-top:0}.shift-trace-title{color:#2D2016;font-size:14px;font-weight:800}.shift-trace-meta{color:rgba(74,51,39,.56);font-size:12px;line-height:18px;margin-top:4px}.shift-trace-basics{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.shift-trace-basic{background:#EEF3EA;border-radius:999px;color:#557457;font-size:12px;padding:3px 9px}.shift-trace-basic.issue{background:#FFF1E8;color:#B45309}.shift-trace-dl{margin:8px 0 0}.shift-trace-dl>div{display:flex;gap:6px;line-height:18px}.shift-trace-dl dt{color:#557457;flex:0 0 auto;font-size:12px;font-weight:800}.shift-trace-dl dd{color:rgba(74,51,39,.68);font-size:12px;margin:0}.shift-message{background:#EDF7ED;border-radius:8px;padding:10px 12px}.shift-message.error{background:#FDECEC;color:#B3261E}.kb-stats{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:0 14px}.kb-stat{background:rgba(255,253,248,.92);border:1px solid #e6d8c5;border-radius:10px;padding:14px 16px;text-align:center}.kb-stat span{color:rgba(74,51,39,.58);display:block;font-size:13px}.kb-stat strong{color:#0F472F;display:block;font-size:28px;line-height:34px;margin-top:6px}.kb-empty{padding:26px 10px;text-align:center}.kb-empty h2{color:#18221D;font-size:22px;margin:0 0 8px}.kb-empty p{color:rgba(74,51,39,.62);font-size:14px;line-height:1.65;margin:0 auto 18px;max-width:520px}.om-rhythm-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.om-rhythm-card{background:linear-gradient(145deg,#FFFDF8,#F4EADB);border:1px solid #e6d8c5;border-radius:12px;color:#4A3327;padding:16px;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.om-rhythm-card:hover{box-shadow:0 12px 22px rgba(74,51,39,.1);transform:translateY(-2px)}.om-rhythm-no{color:#557457;font-size:12px;font-weight:900}.om-rhythm-card strong{display:block;font-size:19px;line-height:26px;margin-top:8px}.om-rhythm-card p{color:rgba(74,51,39,.64);font-size:13px;line-height:19px;margin:6px 0 10px}.om-rhythm-card em{color:#0F472F;font-size:13px;font-style:normal;font-weight:800}.om-flow-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.om-flow-card{background:#FFFFFF;border:1px solid #eadfce;border-radius:10px;padding:14px}.om-flow-head{align-items:baseline;display:flex;gap:8px}.om-flow-head span{color:#557457;font-size:12px;font-weight:900}.om-flow-head strong{color:#18221D;font-size:15px}.om-flow-desc{color:rgba(74,51,39,.68);font-size:13px;line-height:19px;margin:8px 0}.om-flow-card dl{margin:0}.om-flow-card dt{color:#557457;display:inline;font-size:12px;font-weight:800}.om-flow-card dd{color:rgba(74,51,39,.6);display:inline;font-size:12px;line-height:18px;margin:0 8px 0 2px}.om-basics-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.om-basic-card{background:#EEF3EA;border:1px solid #d7e4ce;border-radius:10px;padding:14px}.om-basic-card strong{color:#0F472F;display:block;font-size:16px}.om-basic-card em{color:#557457;display:block;font-size:13px;font-style:normal;font-weight:800;margin-top:4px}.om-basic-card p{color:rgba(74,51,39,.62);font-size:13px;line-height:18px;margin:8px 0 0}.om-roles-row{display:flex;flex-wrap:wrap;gap:8px}.om-roles-row span{background:#FFFFFF;border:1px solid #eadfce;border-radius:999px;color:#4A3327;font-size:13px;padding:6px 14px}.om-trace-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.om-trace-card{background:#EEF2F6;border:1px solid #d7dee8;border-radius:10px;padding:14px}.om-trace-card strong{color:#334155;display:block;font-size:15px}.om-trace-card p{color:rgba(74,51,39,.64);font-size:13px;line-height:19px;margin:6px 0 0}@media (min-width:1024px){.portal-shell{max-width:1180px;grid-template-columns:minmax(0,1fr);align-items:start;padding:32px 32px 110px}.portal-bottom-actions,.portal-focus,.portal-header,.portal-metrics,.rw-myday{grid-column:1/-1}.rw-hero{grid-column:1;position:static;border-radius:14px;background:#fffdf8;border:1px solid rgba(24,34,29,.08);box-shadow:0 10px 30px rgba(24,34,29,.06);padding:28px 24px}.rw-today{grid-column:1;padding:4px 0 0}.rw-today .rw-section-head{padding:0 4px}.rw-action-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.rw-node-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.portal-metrics{grid-template-columns:repeat(4,1fr)}.portal-bottom-actions{left:50%;right:auto;transform:translateX(-50%);width:1180px}.portal-shell.tasks-page{grid-template-columns:minmax(0,1fr);max-width:980px}.portal-shell.tasks-page>*{grid-column:1}.portal-shell.inspections-page{grid-template-columns:minmax(0,1fr);max-width:1180px}.portal-shell.inspections-page>*{grid-column:1}.portal-shell.manager-page{grid-template-columns:minmax(0,1fr);max-width:1180px}.portal-shell.manager-page>*{grid-column:1}.portal-shell.manager-page .rw-hero{padding:24px 26px 20px;position:static}.portal-shell.manager-page .rw-today{padding:0 0 10px}.portal-shell.manager-page .rw-section-head{padding:0 4px}.portal-shell.manager-page .manager-task-list,.portal-shell.manager-page .rw-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.daily-page{max-width:720px}.daily-page>header{grid-column:1/-1}.daily-page>form{grid-column:1}.daily-page>div:last-of-type,.daily-page>h2{grid-column:2}@media (min-width:1024px){.daily-page{max-width:1240px;grid-template-columns:420px 1fr}.daily-page>form{align-self:start;position:-webkit-sticky;position:sticky;top:20px}}.node-action-copy{color:#4a3327;font-size:15px;line-height:1.9;white-space:pre-line}.node-standard-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.node-standard-grid article{background:#fffaf3;border:1px solid rgba(140,99,67,.18);border-radius:14px;padding:16px}.node-standard-grid strong{color:#8c6343}.node-standard-grid p{color:#4a3327;line-height:1.7;margin:8px 0 0}.node-meta-list{display:grid;grid-gap:10px;gap:10px;margin:0}.node-meta-list div{background:#fffaf3;border-radius:10px;display:grid;grid-gap:5px;gap:5px;padding:12px}.node-meta-list dt{color:rgba(74,51,39,.6);font-size:12px}.node-meta-list dd{color:#4a3327;line-height:1.6;margin:0;overflow-wrap:anywhere}@media (max-width:760px){.node-standard-grid{grid-template-columns:1fr}}.inspection-form-result{background:#f4f7f1;border:1px solid #cfdcc9;border-radius:10px;padding:14px}.inspection-form-result.has-exception{background:#fff8e8;border-color:#e5bd68}.inspection-form-result dl{display:grid;grid-gap:0;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));margin:10px 0 0}.inspection-form-result dl>div{border-top:1px solid rgba(24,34,29,.1);display:grid;grid-gap:4px;gap:4px;padding:9px 6px}.inspection-form-result dt{color:#58775b;font-size:12px}.inspection-form-result dd{color:#18221d;font-size:14px;font-weight:700;margin:0}.inspection-form-result p{color:#8b4f19;font-weight:700;margin:10px 0 0}.inspection-message{background:#fff8e1;border:1px solid #ead7a2;border-radius:10px;color:#684b12;padding:12px 14px}.inspection-summary{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.inspection-summary article{background:#fff;border:1px solid rgba(24,34,29,.12);border-radius:12px;display:grid;grid-gap:5px;gap:5px;padding:14px}.inspection-summary span{color:#58775b;font-size:12px}.inspection-summary strong{font-size:26px}.inspection-phase-tabs{background:#eef3e9;border-radius:12px;display:grid;grid-gap:6px;gap:6px;grid-template-columns:repeat(3,1fr);padding:6px}.inspection-phase-tabs button{align-items:center;background:transparent;border:0;border-radius:9px;color:#58775b;cursor:pointer;display:flex;gap:8px;justify-content:center;min-height:48px;padding:8px 12px}.inspection-phase-tabs button.is-active{background:#18221d;color:#fffdf8}.inspection-phase-tabs strong{font-size:16px}.inspection-phase-tabs span{font-size:12px;opacity:.78}.inspection-groups{display:grid;grid-gap:10px;gap:10px}.inspection-groups-head{align-items:baseline;color:#58775b;display:flex;gap:12px;justify-content:space-between}.inspection-groups-head strong{color:#18221d;font-size:18px}.inspection-groups-head span{font-size:12px}.inspection-group{background:#fff;border:1px solid rgba(24,34,29,.12);border-radius:12px;overflow:hidden}.inspection-group summary{align-items:center;cursor:pointer;display:grid;grid-gap:8px 14px;gap:8px 14px;grid-template-columns:70px minmax(120px,1fr) auto;list-style:none;padding:15px 18px}.inspection-group summary::-webkit-details-marker{display:none}.inspection-group summary:after{color:#58775b;content:"展开";font-size:12px;grid-column:3;grid-row:1/span 2}.inspection-group[open] summary:after{content:"收起"}.inspection-group summary strong{font-size:17px}.inspection-group summary small{color:#718274;grid-column:2/4}.inspection-group summary em{color:#58775b;font-size:13px;font-style:normal}.inspection-group-phase{color:#58775b;font-size:13px;font-weight:700}.inspection-group .inspection-list{border-top:1px solid rgba(24,34,29,.08);padding:8px}.inspection-list{display:grid;grid-gap:8px;gap:8px}.inspection-row{align-items:center;background:#fff;border:1px solid rgba(24,34,29,.12);border-radius:10px;color:#18221d;cursor:pointer;display:grid;grid-gap:5px;gap:5px;grid-template-columns:58px 1fr auto;padding:12px 14px;text-align:left}.inspection-row>span{color:#58775b;font-size:12px;font-weight:700;grid-row:span 2}.inspection-row small{color:#718274}.inspection-row em{font-size:12px;font-style:normal;grid-column:3;grid-row:1/span 2}.inspection-rejected{border-color:#e6b4b4}.inspection-manual_review{border-color:#ddc47e}.inspection-detail{background:#fff;border:1px solid rgba(24,34,29,.12);border-radius:14px;display:grid;grid-gap:14px;gap:14px;padding:18px}.inspection-detail h2{margin:4px 0}.inspection-findings,.inspection-standard{background:#f7f6f2;border-radius:10px;padding:12px}.inspection-findings p,.inspection-standard p{line-height:1.6;margin:6px 0 0}.inspection-findings .error{color:#9d2f2f}.inspection-media{align-items:start;display:flex;flex-wrap:wrap;gap:10px}.inspection-media>strong{flex-basis:100%}.inspection-media figure{display:grid;grid-gap:4px;gap:4px;margin:0}.inspection-media img,.inspection-media video{border-radius:8px;height:150px;object-fit:cover;width:200px}.inspection-media figcaption{color:#58775b;font-size:11px}.inspection-review{display:grid;grid-gap:8px;gap:8px;grid-template-columns:1fr auto auto}.inspection-review textarea{border:1px solid rgba(24,34,29,.18);border-radius:8px;min-height:44px;padding:8px}.inspection-review button{border:1px solid #a94747;border-radius:8px;cursor:pointer;padding:0 16px}.inspection-review .primary{background:#18221d;border-color:#18221d;color:white}@media (max-width:720px){.inspection-summary{grid-template-columns:repeat(2,1fr)}.inspection-groups-head{align-items:flex-start;flex-direction:column;gap:4px}.inspection-group summary{grid-template-columns:52px 1fr auto;padding:13px 12px}.inspection-group summary small{grid-column:1/-1}.inspection-row{grid-template-columns:45px 1fr}.inspection-row em{grid-column:2;grid-row:3}.inspection-review{grid-template-columns:1fr 1fr}.inspection-review textarea{grid-column:1/-1}}.rw-day-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.rw-day-summary a{background:#eef3e9;border-radius:999px;color:#3e4b3f;font-size:12px;font-weight:700;padding:6px 10px;text-decoration:none}.rw-day-summary a:hover{background:#dfe8d8;color:#18221d}.rw-task-phase-tabs{background:#eef3e9;border-radius:11px;display:grid;grid-gap:4px;gap:4px;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));margin-bottom:10px;padding:4px}.rw-task-phase-tabs button{background:transparent;border:0;border-radius:8px;color:#58775b;cursor:pointer;font:inherit;font-size:13px;font-weight:800;min-height:42px}.rw-task-phase-tabs button span{font-size:11px;margin-left:7px;opacity:.72}.rw-task-phase-tabs button.active{background:#18221d;color:#fff}.rw-day-inactive{background:#fff8e1;border:1px solid #ead7a2;border-radius:12px;display:grid;grid-gap:7px;gap:7px;margin-bottom:14px;padding:16px}.rw-day-inactive p{color:#6f5b2d;margin:0}.rw-day-inactive button{background:#18221d;border:0;border-radius:8px;color:white;cursor:pointer;justify-self:start;padding:10px 14px}.rw-day-inactive span{color:#8b6d24;font-size:13px}.rw-action em{color:#58775b;font-size:11px;font-style:normal;font-weight:700}.rw-tools-head{margin-top:22px}.rw-tools-head h3{margin:2px 0 10px}.rw-guidance-disclosure{border-top:1px solid rgba(24,34,29,.1);margin-top:22px;padding:14px 2px 0}.rw-guidance-disclosure>summary{align-items:center;cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:6px 8px}.rw-guidance-disclosure>summary::-webkit-details-marker{display:none}.rw-guidance-disclosure>summary span{display:grid;grid-gap:2px;gap:2px}.rw-guidance-disclosure>summary small{color:#58775b;font-size:11px;font-weight:800;letter-spacing:.05em}.rw-guidance-disclosure>summary strong{color:#18221d;font-size:18px}.rw-guidance-disclosure>summary em{color:#58775b;font-size:12px;font-style:normal}.rw-guidance-disclosure[open]>summary em{font-size:0}.rw-guidance-disclosure[open]>summary em:after{content:"收起";font-size:12px}.rw-guidance-note{color:#718274;font-size:12px;margin:4px 8px 12px}.rw-guidance-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.manager-task-list,.rw-today-task-list{background:rgba(255,253,248,.72);border:1px solid #e6d8c5;border-radius:12px;display:grid;grid-gap:1px;gap:1px;overflow:hidden}.manager-task-list a,.rw-today-task-list a{align-items:center;background:#fffdf8;color:#4A3327;display:grid;grid-gap:10px;gap:10px;grid-template-columns:72px 1fr auto auto;min-height:54px;padding:10px 14px;text-decoration:none}.manager-task-list a:hover,.rw-today-task-list a:hover{background:#f7f0e4}.manager-task-list span,.rw-today-task-list span{color:#557457;font-size:12px;font-weight:800}.manager-task-list strong,.rw-today-task-list strong{font-size:14px;font-weight:800}.manager-task-list em,.rw-today-task-list em{color:#58775b;font-size:12px;font-style:normal;font-weight:700}.manager-task-list a .task-count-badge,.rw-today-task-list a .task-count-badge{align-items:center;background:#18221d;border-radius:999px;color:#fffdf8;display:inline-flex;font-size:11px;font-weight:800;height:20px;justify-content:center;min-width:20px;padding:0 6px}.admin-domain-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-domain{background:rgba(255,253,248,.72);border:1px solid #e6d8c5;border-radius:12px;min-width:0;overflow:hidden}.admin-domain-head{align-items:baseline;background:#f5efe5;color:#4A3327;display:flex;justify-content:space-between;padding:12px 14px}.admin-domain-head strong{font-size:16px}.admin-domain-head span{color:#58775b;font-size:12px;font-weight:700}.admin-domain .rw-today-task-list{border:0;border-radius:0}.admin-domain-empty-summary{color:#718274;font-size:12px;margin:10px 2px 0}.task-content{display:flex;flex-direction:column}.task-content:has(.task-detail-panel) .task-detail-panel{margin-top:0!important;order:-1}.task-evidence-picker{display:grid;grid-gap:7px;gap:7px}.task-evidence-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:3px}.task-evidence-actions button{align-items:center;background:#fffdf8;border:1px solid #d8c7ad;border-radius:9px;color:#355d46;cursor:pointer;display:flex;font:inherit;font-size:13px;font-weight:800;gap:7px;justify-content:center;min-height:44px;padding:9px 14px}.task-evidence-actions button:hover{box-shadow:0 5px 14px rgba(24,34,29,.1);transform:translateY(-1px)}.task-evidence-native-input{display:none}.task-live-capture{background:#18221d;border-radius:10px;display:grid;grid-gap:10px;gap:10px;padding:10px}.task-live-capture video{background:#0c120f;border-radius:8px;max-height:360px;object-fit:contain;width:100%}.task-live-capture>div{display:flex;gap:8px}.task-live-capture button{background:#fffdf8;border:0;border-radius:8px;color:#18221d;cursor:pointer;flex:1 1;font:inherit;font-size:13px;font-weight:800;min-height:42px;padding:8px 12px}.task-live-capture button.primary{background:#e1ad4d}.task-audio-capture{color:#fffdf8;padding:18px}.task-audio-capture>strong{align-items:center;display:flex;gap:8px}.task-audio-capture>strong span{color:#ed6a5a;font-size:18px}.task-audio-capture p{color:#cdd9ce;font-size:12px;margin:0}.task-evidence-files{border:1px solid rgba(24,34,29,.1);border-radius:9px;display:grid;overflow:hidden}.task-evidence-files>div{align-items:center;background:#f7f6f2;border-bottom:1px solid rgba(24,34,29,.08);display:grid;grid-gap:8px;gap:8px;grid-template-columns:42px minmax(0,1fr) auto auto;min-height:38px;padding:7px 10px}.task-evidence-files>div:last-child{border-bottom:0}.task-evidence-files span{color:#557457;font-size:11px;font-weight:800}.task-evidence-files strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-evidence-files small{color:#718274;font-size:11px}.task-evidence-files button{background:transparent;border:0;color:#9d2f2f;cursor:pointer;font-size:11px}.portal-inbox-float{background:#0f5135;border:3px solid #fffdf8;bottom:24px;box-shadow:0 8px 24px rgba(24,34,29,.22);color:#18221d;display:flex;height:58px;position:fixed;right:24px;text-decoration:none;width:58px;z-index:1000}.portal-inbox-float,.portal-inbox-float span{align-items:center;border-radius:999px;justify-content:center}.portal-inbox-float span{background:#e1ad4d;display:inline-flex;font-size:12px;font-weight:900;height:34px;width:34px}.portal-inbox-float:hover{background:#0a3b27;transform:translateY(-2px)}.portal-bottom-actions{display:none!important}@media (max-width:720px){.portal-inbox-float{bottom:16px;min-height:52px;padding:0 12px;right:16px}.admin-domain-grid{grid-template-columns:1fr}}@media (max-width:520px){.task-evidence-actions button{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 4px)}.task-evidence-actions button:last-child{flex-basis:100%}}@media (min-width:1024px){.portal-shell.admin-ops-page{max-width:1180px}.portal-shell.admin-ops-page .rw-hero{padding:22px 26px}.portal-shell.admin-ops-page .rw-action-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.portal-shell.admin-ops-page .rw-action{min-height:108px;padding:14px 16px}.portal-shell.admin-ops-page .rw-action strong{font-size:17px}}.task-structured-form{background:#fbfaf6;border:1px solid #e7d2af;border-radius:12px;padding:16px}.task-structured-form-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:14px}.task-structured-form-head>div{display:grid;grid-gap:3px;gap:3px}.task-structured-form-head span{color:#58775b;font-size:12px;font-weight:800;letter-spacing:.08em}.task-structured-form-head strong{color:#18221d;font-size:18px}.task-structured-form-head small{color:#748579;font-size:12px}.task-form-shortcut{background:#0c573c;border:0;border-radius:9px;color:#fff;cursor:pointer;flex:0 0 auto;font-weight:800;min-height:42px;padding:8px 18px}.task-check-buttons{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.task-check-buttons button{background:#fff;border:1px solid #d8c7aa;border-radius:8px;color:#405345;cursor:pointer;font-weight:800;min-height:42px}.task-check-buttons button.is-selected{background:#eaf5ec;border-color:#0c573c;color:#0c573c}.task-check-buttons button.is-abnormal{background:#fff0ec;border-color:#b94335;color:#9b2e25}.task-guidance-details{background:#f7f6f2;border-radius:8px;margin-bottom:12px;padding:0 12px}.task-guidance-details summary{color:#405345;cursor:pointer;font-size:13px;font-weight:800;padding:12px 0}.task-guidance-details>div{border-top:1px solid rgba(24,34,29,.1);padding:10px 0}.task-guidance-details strong{font-size:13px}.task-guidance-details p{font-size:13px;line-height:1.65;margin:5px 0 0}.task-structured-fields{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.task-structured-fields label{display:grid;grid-gap:6px;gap:6px}.task-structured-fields label.is-wide{grid-column:1/-1}.task-structured-fields label>span{color:#3f3129;font-size:13px;font-weight:750}.task-structured-fields label em{color:#9a4b2f;font-size:10px;font-style:normal;margin-left:6px}.task-structured-fields input:not([type=checkbox]),.task-structured-fields select,.task-structured-fields textarea{background:#fff;border:1px solid #d8c7ad;border-radius:9px;box-sizing:border-box;color:#18221d;font:inherit;min-height:42px;padding:9px 11px;width:100%}.task-structured-fields textarea{min-height:84px;resize:vertical}.task-field-with-unit{align-items:center;display:flex;gap:8px}.task-field-with-unit small{color:#58775b;white-space:nowrap}@media (max-width:760px){.task-structured-fields{grid-template-columns:1fr}.task-structured-fields label.is-wide{grid-column:auto}}