:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:#1f2a32;background:#f7f3ee}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-shell{display:grid;min-height:100vh;place-items:center;padding:24px;background:linear-gradient(140deg,#f6ede1d1,#e8f2f0cc),#f7f3ee}.login-panel{width:min(460px,100%);padding:34px;border:1px solid #eadfd3;border-radius:18px;background:#fffdf9f5;box-shadow:0 22px 58px #604a3424}.eyebrow{margin:0 0 8px;color:#467986;font-size:13px;font-weight:750}h1,h2,h3,p{margin-top:0}h1{margin-bottom:10px;font-size:30px}h2{margin-bottom:0;font-size:24px}h3{margin-bottom:12px;font-size:17px}.muted{color:#716b64;line-height:1.7}.form,.contact-form{display:grid;gap:14px}label{display:grid;gap:7px;color:#3d474f;font-size:14px;font-weight:650}input,select,textarea{width:100%;border:1px solid #ded1c4;border-radius:10px;background:#fffefa;color:#1f2a32;outline:none}input,select{height:42px;padding:0 12px}textarea{min-height:76px;padding:12px;resize:vertical}button{border:0;border-radius:10px;background:#356f7b;color:#fff;font-weight:750;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,opacity .16s ease}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #356f7b29}button:active:not(:disabled){transform:translateY(0);box-shadow:none}.form button,.contact-form button{height:44px}button:disabled{opacity:.64;cursor:not-allowed}.ghost{height:34px;border:1px solid #d8cac0;background:#fffaf3;color:#52606a}.hint{display:grid;gap:6px;margin-top:18px;padding:14px;border-radius:12px;background:#f1ebe4;color:#5f5750;font-size:13px}.message{margin:14px 0 0;color:#356f7b;font-weight:700}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;align-self:start;display:flex;flex-direction:column;justify-content:flex-start;min-height:100vh;padding:26px;border-right:1px solid #e3d8cd;background:#fffdf9}.sidebar nav{display:grid;gap:8px;margin-top:34px}.sidebar nav button{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:0;border-radius:10px;background:transparent;color:#5f6870;font-weight:650;text-align:left}.sidebar nav button.active{background:#e8f1ef;color:#245f68}.sidebar nav button:disabled{cursor:not-allowed;opacity:.52}.nav-label{min-width:0}.sidebar-alert-summary{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:8px 10px;border-radius:999px;background:#f8f2eb;color:#716b64;font-size:12px;font-weight:750}.sidebar-alert-summary.has-items{background:#fff0ee;color:#9f3f3c}.action-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#d8423a;color:#fff;font-size:12px;font-weight:850;line-height:1;box-shadow:0 6px 14px #a8373138}.badge-title,.item-status-line,.customer-row-badges{display:inline-flex;align-items:center;gap:8px}.item-status-line{flex-wrap:wrap}.customer-row-badges{margin-left:auto}.account{display:grid;gap:8px;margin-top:auto;padding-top:18px;border-top:1px solid #eadfd3}.account span{color:#746d66;font-size:13px}.workspace{padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-bottom:20px}.sync-panel{display:inline-flex;align-items:center;gap:10px;margin-left:auto;color:#716b64;font-size:13px;font-weight:700}.sync-button{min-width:92px}.toast{padding:9px 12px;border:1px solid #d6e4df;border-radius:999px;background:#f1fbf8;color:#356f7b;font-size:13px;font-weight:750}.layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px}.customer-list,.detail-panel{border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 14px 34px #604a3414}.customer-list{padding:16px}.customer-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;margin:10px 0 4px}.customer-search input{height:40px;border-radius:999px;background:#fffefa}.customer-search button{min-width:68px;height:40px;padding:0 14px;border-radius:999px;font-weight:800}.empty-state{margin-top:14px;padding:18px 12px;border:1px dashed #dfd1c5;border-radius:12px;background:#fbf7f1;color:#746d66;text-align:center;font-size:14px}.search-hit{padding:1px 3px;border-radius:5px;background:#ffe6a7;color:#5a3a09;font-weight:900}.section-title,.detail-head,.control-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.section-title span{color:#756e67;font-size:13px}.customer-row{display:grid;width:100%;gap:6px;margin-top:10px;padding:14px;border:1px solid transparent;border-radius:12px;background:#f8f2eb;color:#1f2a32;text-align:left}.customer-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.customer-row-head em{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#fff0d7;color:#9a5c12;font-size:11px;font-style:normal;font-weight:900}.customer-row span,.customer-row small{color:#6d665f}.customer-row>span:first-of-type{color:#31444a;font-size:13px;font-weight:800}.customer-row small{font-size:12px}.customer-row.selected{border-color:#8ab0ae;background:#eef7f4}.detail-panel{min-height:620px;padding:22px}.detail-head h3{margin-bottom:5px;font-size:22px}.detail-head p{margin-bottom:0;color:#746d66}.detail-section{margin-top:18px;padding-top:18px;border-top:1px solid #eadfd3}.detail-section:first-of-type{border-top:0}.detail-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.detail-section-title h3{margin-bottom:4px;font-size:18px}.detail-section-title p{margin-bottom:0;color:#756e67;font-size:13px;line-height:1.6}.pill{flex:0 0 auto;padding:8px 11px;border-radius:999px;background:#f1ebe4;color:#5b5149;font-size:13px;font-weight:800}.info-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 14px}.info-grid article{display:grid;gap:6px;min-height:86px;padding:14px;border:1px solid #eadfd3;border-radius:12px;background:#fffaf4}.info-grid span{color:#756e67;font-size:13px}.info-grid strong{line-height:1.45}.control-row{align-items:end;justify-content:flex-start;margin-bottom:0}.control-row label{width:min(280px,100%)}.submitted-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:0}.submitted-grid article{display:grid;align-content:start;gap:7px;min-height:126px;padding:14px;border:1px solid #eadfd3;border-radius:12px;background:#fffaf4}.submitted-grid h3{margin-bottom:3px;font-size:15px}.submitted-grid span,.submitted-grid small,.submitted-grid a{color:#5f6870;line-height:1.45}.submitted-grid a{font-size:13px;font-weight:800}.file-link-row{display:flex;flex-wrap:wrap;gap:8px}.contact-form{margin-bottom:16px;padding:18px;border:1px solid #eadfd3;border-radius:14px;background:#fbf7f1}.file-contract-grid,.record-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.contract-admin-panel,.file-admin-panel{display:grid;gap:12px;margin-bottom:0;padding:18px;border:1px solid #eadfd3;border-radius:14px;background:#fbf7f1}.file-admin-panel .section-title h3{margin-bottom:0}.file-admin-list{display:grid;gap:10px}.file-admin-card{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:14px;align-items:center;padding:14px;border:1px solid #eadfd3;border-radius:12px;background:#fffdf9}.file-admin-card h3{overflow-wrap:anywhere;margin:9px 0 5px;font-size:17px}.file-admin-card p{margin-bottom:5px;color:#716b64}.file-admin-card small{display:block;margin-top:4px;color:#716b64}.file-badge-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.file-status,.file-sensitivity{display:inline-flex;min-height:24px;align-items:center;border-radius:999px;padding:0 9px;font-size:12px;font-weight:800}.file-status{background:#e8f3ee;color:#28614d}.file-status.sealed,.file-status.pending_delete{background:#f6ead1;color:#856018}.file-status.deleted{background:#f7ded8;color:#9d3b2c}.file-sensitivity{background:#eef2f4;color:#59656b}.file-admin-actions{display:grid;gap:8px}.file-admin-actions a,.file-disabled-action{display:grid;min-height:38px;place-items:center;border-radius:10px;background:#356f7b;color:#fff;font-size:13px;font-weight:800;text-decoration:none}.file-disabled-action{background:#e6dfd5;color:#81766c}.file-status-actions{display:grid;gap:6px}.file-status-actions button{min-height:30px;border:1px solid #d9cfc4;border-radius:9px;background:#fffdf9;color:#3a332e;font-size:12px;font-weight:800}.file-status-actions button.danger{border-color:#ead0ca;background:#fff2ef;color:#9d3b2c}.contract-admin-panel .section-title h3{margin-bottom:0}.contract-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:14px;border:1px solid #eadfd3;border-radius:12px;background:#fffdf9}.contract-record-main{display:grid;gap:6px}.contract-record-main .pill{width:max-content}.contract-record-main h3,.contract-record-main p{margin-bottom:0}.contract-record-main p,.contract-record-main small{color:#716b64}.contract-record-actions{display:grid;gap:8px;align-content:start}.contract-record-actions button{min-width:112px;height:38px}.contract-resign-notice{padding:10px 12px;border:1px solid #f0d3c8;border-radius:10px;background:#fff3ef;color:#9d3b2c;font-size:13px;font-weight:800;line-height:1.55}.contract-upload-file,.contract-upload-empty{display:grid;gap:4px;margin-top:6px;padding:10px 12px;border:1px solid #d8e6e4;border-radius:10px;background:#f3faf8;text-decoration:none}.contract-upload-file span,.contract-upload-empty span{color:#2c6f78;font-size:12px;font-weight:850}.contract-upload-file strong{overflow-wrap:anywhere;color:#1f2a32}.contract-upload-file small,.contract-upload-empty small{color:#716b64}.contract-upload-empty{border-color:#eadfd3;background:#fff8f0}.contract-upload-empty span{color:#8b6a2a}.contract-record-draft{grid-column:1 / -1;max-height:360px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.records{margin-top:0;padding:18px;border:1px solid #eadfd3;border-radius:14px;background:#fffaf4}.records article{display:grid;gap:5px;padding:14px 0;border-top:1px solid #eadfd3}.records span,.records small{color:#6f6962}.review-workspace{display:grid;gap:16px}.review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 14px 34px #604a3414}.review-toolbar h3,.review-toolbar p{margin-bottom:0}.review-toolbar select{width:180px}.review-list{display:grid;gap:12px}.log-workspace{display:grid;gap:16px}.overview-workspace{display:grid;gap:18px}.overview-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.overview-metrics article{display:grid;gap:7px;min-height:104px;padding:16px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a340f}.overview-metrics span,.overview-mini-grid span{color:#716b64;font-size:13px;font-weight:700}.overview-metrics strong{color:#2d6570;font-size:30px;line-height:1}.overview-metrics em,.overview-mini-grid em{color:#8a6c43;font-size:12px;font-style:normal;font-weight:750;line-height:1.35}.overview-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.overview-main,.overview-side{display:grid;gap:16px}.overview-panel{display:grid;gap:12px;padding:18px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a3412}.overview-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.overview-panel-head p{margin-bottom:0;color:#716b64;font-size:13px;line-height:1.55}.overview-module-list{display:grid;gap:10px}.overview-module-list.compact{gap:8px}.overview-module-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid #eadfd3;border-radius:14px;background:#fffaf4}.overview-module-row strong{display:block;margin-bottom:5px;font-size:15px}.overview-module-row span{color:#716b64;font-size:13px;line-height:1.55}.overview-link-pill{width:auto;min-height:28px;border-radius:999px;padding:0 10px;background:#f1ebe4;color:#5f544a;font-size:12px;font-weight:850;white-space:nowrap}.overview-link-pill.tone-due{background:#fff2df;color:#8a5a1f}.overview-link-pill.tone-risk{background:#fff2ef;color:#9d3b2c}.overview-link-pill.tone-ok{background:#e4f3ec;color:#2f765c}.overview-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.overview-mini-grid article{display:grid;gap:6px;padding:14px;border:1px solid #eadfd3;border-radius:14px;background:#fffaf4}.overview-mini-grid strong{color:#2d6570;font-size:24px}.overview-log-list{display:grid;gap:10px}.overview-log-list article{display:grid;gap:5px;padding-bottom:10px;border-bottom:1px solid #eee3d8}.overview-log-list article:last-child{padding-bottom:0;border-bottom:0}.overview-log-list strong{font-size:14px}.overview-log-list span{color:#716b64;font-size:12px;line-height:1.5}.log-list{display:grid;gap:12px}.log-search-panel{display:grid;grid-template-columns:minmax(260px,1fr) 180px auto auto;gap:10px;padding:16px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a340f}.log-search-panel input,.log-search-panel select{min-height:42px}.log-calendar-strip{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px}.log-calendar-strip button{display:grid;flex:0 0 76px;gap:3px;min-height:58px;padding:8px 10px;border:1px solid #d4e7df;border-radius:14px;background:#edf7f2;color:#2f6f61;font-weight:850}.log-calendar-strip button:disabled{border-color:#e2ddd6;background:#f1eee9;color:#aaa29a;cursor:not-allowed}.log-calendar-strip button.selected{border-color:#2f7c87;background:#2f7c87;color:#fff}.log-calendar-strip small{font-size:11px;font-weight:750}.operator-workspace,.exit-workspace,.post-exit-workspace{display:grid;gap:16px}.post-exit-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.post-exit-summary article{display:grid;gap:8px;padding:16px;border:1px solid #eadfd3;border-radius:14px;background:#fffdf9;box-shadow:0 12px 28px #604a340f}.post-exit-summary span{color:#716b64;font-size:13px;font-weight:700}.post-exit-summary strong{color:#2d6570;font-size:28px}.post-exit-list{display:grid;gap:12px}.post-exit-card{display:grid;grid-template-columns:minmax(280px,1fr) minmax(320px,.85fr);gap:18px;padding:18px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a3412}.post-exit-card h3{margin:10px 0 5px;font-size:20px}.post-exit-card p{margin-bottom:6px;color:#716b64}.post-exit-card small{color:#716b64;line-height:1.5}.post-exit-file-summary{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.post-exit-file-summary span{display:inline-flex;min-height:26px;align-items:center;border-radius:999px;padding:0 10px;background:#f1ebe3;color:#5f544a;font-size:12px;font-weight:800}.post-exit-detail{display:grid;align-content:start;gap:10px;padding:14px;border:1px solid #eadfd3;border-radius:12px;background:#fffaf4}.post-exit-detail strong,.post-exit-detail span{overflow-wrap:anywhere;line-height:1.5}.post-exit-detail span{color:#716b64;font-size:13px}.post-exit-detail button{width:112px;height:38px}.post-exit-actions{display:flex;flex-wrap:wrap;gap:8px}.post-exit-actions button{width:auto;min-width:96px;padding:0 12px}.post-exit-actions button.danger{border-color:#ead0ca;background:#fff2ef;color:#9d3b2c}.exit-list{display:grid;gap:12px}.exit-card{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:18px;padding:18px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a3412}.exit-card h3{margin:10px 0 5px;font-size:20px}.exit-card p{margin-bottom:6px;color:#716b64}.exit-card small{color:#716b64}.exit-detail{display:grid;gap:8px;padding:14px;border:1px solid #eadfd3;border-radius:12px;background:#fffaf4}.exit-detail span,.exit-detail small{overflow-wrap:anywhere;color:#5f6870;line-height:1.5}.exit-actions{display:flex;gap:10px;margin-top:4px}.exit-actions button{min-width:104px;height:38px}.operator-create-form,.operator-card{padding:18px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a3412}.operator-create-form h3{margin-bottom:14px}.operator-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 120px;gap:10px}.password-form-grid{grid-template-columns:repeat(3,minmax(0,1fr)) 160px;margin-top:14px}.password-visibility-button{margin-top:10px}.password-input-wrap{display:grid;grid-template-columns:1fr 70px;align-items:center;gap:8px}.password-input-wrap input{width:100%}.plain-button{border:1px solid #dccfc0;border-radius:12px;background:#fffaf4;color:#4f6b72;font-weight:800;cursor:pointer;min-height:42px}.plain-button:hover{background:#f4ebe1}.operator-form-grid button{min-height:42px}.operator-list{display:grid;gap:12px}.operator-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.operator-card h3{margin:10px 0 5px;font-size:20px}.operator-card p{margin-bottom:5px;color:#716b64}.operator-card small{color:#716b64}.operator-actions{display:flex;gap:10px}.operator-actions button{min-width:104px;height:38px}.status-active{background:#e4f3ec;color:#2f765c}.status-disabled{background:#f1ebe4;color:#776b61}.log-card{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:18px;align-items:stretch;padding:18px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a3412}.log-main{display:grid;align-content:start;gap:6px}.log-main .pill{width:max-content}.log-main h3,.log-main p{margin-bottom:0}.log-main p,.log-main small{color:#716b64}.log-values{display:grid;gap:8px;padding:14px;border:1px solid #eadfd3;border-radius:12px;background:#fffaf4}.log-values span,.log-values strong{overflow-wrap:anywhere;line-height:1.5}.log-values span{color:#5f6870;font-size:13px}.log-values strong{color:#29343c}.review-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a3412}.review-main{display:grid;gap:6px}.review-main .pill{width:max-content}.review-main h3,.review-main p{margin-bottom:0}.review-main p,.review-main small{color:#716b64}.review-main strong{line-height:1.45}.review-file-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.review-file-actions a{padding:8px 10px;border:1px solid #c8ded9;border-radius:999px;background:#eef7f4;color:#2f6979;font-size:13px;font-weight:800;text-decoration:none}.review-reason-input{min-height:58px;margin-top:8px;background:#fffefa;font-size:13px;line-height:1.5}.review-actions{display:grid;grid-template-columns:repeat(3,86px);gap:8px}.review-actions button{height:38px}.refresh-button{width:112px;height:40px}.alert-workspace{display:grid;gap:16px}.alert-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.alert-summary article{display:grid;gap:8px;padding:16px;border:1px solid #eadfd3;border-radius:14px;background:#fffdf9;box-shadow:0 12px 28px #604a340f}.alert-summary span{color:#716b64;font-size:13px;font-weight:700}.alert-summary strong{color:#2d6570;font-size:28px}.alert-list{display:grid;gap:14px}.alert-card{display:grid;gap:14px;padding:18px;border:1px solid #eadfd3;border-left:5px solid #d6c6b7;border-radius:16px;background:#fffdf9;box-shadow:0 12px 28px #604a3412}.alert-card.priority-4,.alert-card.priority-3{border-left-color:#a6534f}.alert-card.priority-2{border-left-color:#c88f43}.alert-card-head{display:flex;justify-content:space-between;gap:18px}.alert-card-head h3{margin:8px 0 4px;font-size:21px}.alert-card-head p{margin-bottom:0;color:#716b64}.alert-metric{display:grid;place-items:center;min-width:92px;padding:10px;border-radius:12px;background:#f8f2eb}.alert-metric strong{color:#a6534f;font-size:28px}.alert-metric span{color:#716b64;font-size:12px;font-weight:750}.alert-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.alert-grid span{padding:10px 12px;border:1px solid #eadfd3;border-radius:10px;background:#fffaf4;color:#5f6870;font-size:13px;line-height:1.45}.alert-safe-note{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid #ead8bd;border-radius:12px;background:#fff8ea;color:#8a641e;font-weight:750;line-height:1.6}.alert-safe-note strong{color:#8a641e;font-weight:850}.alert-safe-note span{color:#7a6747;font-weight:700}.alert-latest{margin-bottom:0;color:#67615b;font-size:14px}.alert-contact-form{display:grid;grid-template-columns:140px 160px 160px 190px minmax(220px,1fr) 132px;gap:10px}.alert-contact-form textarea{min-height:42px;max-height:96px}.alert-contact-form button{min-height:42px}button.soft{border:1px solid #d8cac0;background:#fbf3ec;color:#4f5f65}button.danger{background:#a6534f}.mini-preview-page{min-height:100vh;padding:28px;background:linear-gradient(145deg,#f6efe6f2,#e5f2efe0),#f7f3ee}.phone-frame{width:min(430px,100%);margin:0 auto;padding:12px;border:1px solid #dfd2c6;border-radius:30px;background:#1e252b;box-shadow:0 24px 70px #372c233d}.mini-screen{position:relative;overflow:hidden;height:min(820px,calc(100vh - 56px));border-radius:22px;background:#f6f1ec}.mini-screen.theme-dark{background:#000;color:#f5f5f7}.mini-screen.font-1{font-size:14px}.mini-screen.font-2{font-size:15px}.mini-screen.font-3{font-size:16px}.mini-screen.font-4{font-size:17px}.mini-screen.font-5{font-size:18px}.mini-content{overflow-y:auto;height:100%;padding:18px 16px 104px;scroll-behavior:smooth}.mini-top,.mini-card{border:1px solid #eadfd3;border-radius:18px;background:#fffdf9}.mini-top{position:relative;padding:8px 4px 18px;border-width:0 0 1px;border-radius:0;background:transparent}.settings-icon-button{position:absolute;right:2px;top:2px;display:grid;width:44px;height:44px;place-items:center;padding:0;border:0;border-radius:0;background:transparent;color:#48616a;font-size:31px;line-height:1}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-logo{width:48px;height:48px;flex:0 0 48px;border-radius:16px;object-fit:contain;box-shadow:0 13px 28px #477c8c29}.brand-mark{position:relative;display:grid;width:48px;height:48px;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.42);border-radius:18px 18px 15px 15px;background:radial-gradient(circle at 50% 44%,rgba(255,226,152,.42) 0 24%,transparent 48%),linear-gradient(145deg,#3f7886,#6f9d8a 55%,#d1a17f);color:#fff;box-shadow:0 13px 28px #477c8c38}.brand-mark span{position:absolute}.brand-window{width:23px;height:25px;border:2px solid rgba(255,255,255,.86);border-radius:12px 12px 7px 7px;background:linear-gradient(90deg,transparent 47%,rgba(255,255,255,.72) 47% 53%,transparent 53%),linear-gradient(180deg,transparent 48%,rgba(255,255,255,.72) 48% 54%,transparent 54%),#fff2c433;box-shadow:inset 0 0 14px #ffecb133,0 0 18px #ffe2985c;transform:translateY(-1px)}.brand-light{width:9px;height:9px;border-radius:999px;background:#fff3bf;box-shadow:0 0 12px #fff3bfe6,0 0 24px #ffcc8080;transform:translate(0)}.brand-base{width:30px;height:3px;border-radius:999px;background:#ffffffb8;transform:translateY(17px)}.brand-lockup div:last-child{display:grid;gap:3px}.brand-lockup div:last-child strong{color:#17212b;font-size:22px;line-height:1.2}.brand-lockup div:last-child small{color:#706962;font-size:13px;font-weight:650}.mini-auth-flow{display:grid;gap:18px;min-height:100%;padding-top:16px}.auth-hero{display:grid;gap:12px;padding:30px 2px 12px}.auth-hero p{margin:0;color:#477c8c;font-weight:850}.auth-hero h1{margin:0;color:#17212b;font-size:29px;line-height:1.22}.auth-hero span{color:#706962;font-size:15px;font-weight:650;line-height:1.75}.login-mode-row,.sms-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.login-mode-row button.active{background:#356f7b;color:#fff}.wechat-button{background:#477c62}.onboarding-card h2{margin:0}.mini-gradient-card{margin-top:18px;padding:28px 22px 24px;border-radius:22px;background:linear-gradient(135deg,#487d8bf5,#699a89d6 52%,#cb9179d1),#6fa4a3;color:#fff;box-shadow:0 18px 38px #486f7140}.mini-hero-kicker{display:inline-flex;margin-bottom:14px;padding:7px 12px;border-radius:999px;background:#ffffff2b;color:#fffffff0;font-size:13px;font-weight:850}.mini-gradient-card h2{margin-bottom:14px;font-size:25px;line-height:1.28}.mini-gradient-card p{color:#ffffffeb;font-size:16px;font-weight:650;line-height:1.75}.mini-badges{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.mini-badges span{min-width:0;padding:9px 14px;border-radius:999px;background:#ffffff2e;color:#fff;font-size:14px;font-weight:800;white-space:nowrap}.mini-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 4px 10px}.mini-section-head h2{margin:0;font-size:20px}.mini-section-head span{color:#766e67;font-size:15px;font-weight:700}.mini-duo{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mini-duo article{display:grid;gap:8px;min-height:94px;padding:18px 16px;border:1px solid #eadfd3;border-radius:17px;background:#fffdf9;box-shadow:0 12px 26px #5e483412}.mini-progress-card{display:grid;gap:10px;margin-top:0}.mini-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#1f2a32}.mini-progress-head span{color:#477c8c;font-weight:850}.mini-progress-track{overflow:hidden;height:9px;border-radius:999px;background:#efe7dd}.mini-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#477c8c,#74a18e);transition:width .22s ease}.mini-progress-card p{margin:0;color:#716b64;font-size:13px;line-height:1.55}.mini-duo strong{font-size:22px}.mini-duo span{color:#766e67;font-size:15px}.mini-todo p{margin:6px 0 0;color:#6d665f;font-weight:650;line-height:1.7}.mini-card-kicker{display:inline-flex;margin-bottom:7px;color:#477c8c;font-size:13px;font-weight:850}.mini-page-intro{margin-top:18px;background:linear-gradient(145deg,#fffdf9,#eef7f4)}.mini-page-intro h2{margin-bottom:8px;line-height:1.35}.mini-page-intro p{margin:0;color:#716b64;font-size:14px;font-weight:650;line-height:1.65}.mini-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.mini-actions .soft{border:1px solid #e5d8d0;background:#f7eee8;color:#1f2a32}.mini-key-list div{position:relative;display:grid;gap:7px;min-height:58px;padding:12px 82px 12px 0;border-bottom:1px solid #eee3d8}.mini-key-list div:last-child{border-bottom:0}.mini-key-list strong{font-size:17px}.mini-key-list span{color:#766e67}.mini-key-list em{position:absolute;right:0;top:12px;padding:5px 10px;border-radius:999px;font-style:normal;font-weight:800}.mini-key-list em.done{background:#e8f1ef;color:#43866e}.mini-key-list em.todo{background:#f5eadc;color:#8a611d}.mini-soft-note{margin-top:14px;padding:15px 16px;border:1px solid #eadfd3;border-radius:16px;background:#fffdf9bd;color:#716b64;font-size:14px;font-weight:650;line-height:1.65}.mini-card{margin-top:14px;padding:18px}.mini-card h2{margin-bottom:12px;font-size:18px}.mini-stack{display:grid;gap:14px}.mini-form{display:grid;gap:10px}.mini-form input,.mini-form textarea{min-height:42px;border-radius:10px;background:#fffefa}.mini-form textarea{min-height:76px}.mini-form button{height:44px}.video-record-card{gap:12px}.script-box{display:grid;gap:8px;padding:14px;border:1px solid #d7e2df;border-radius:14px;background:#eef5f3}.script-box p{margin:0;color:#2f6979;font-size:14px;font-weight:650;line-height:1.65}.video-stage{display:grid;min-height:180px;place-items:center;overflow:hidden;border:1px solid #eadfd3;border-radius:16px;background:#f1ebe4;color:#716b64;text-align:center}.video-stage span{max-width:250px;line-height:1.65}.video-stage video{width:100%;max-height:240px;background:#111820}.video-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.video-actions button:only-child{grid-column:1 / -1}.contract-summary{display:grid;gap:8px;padding:14px;border:1px solid #e5d8d0;border-radius:14px;background:#fff8f0}.contract-summary span,.contract-summary small{color:#716b64;line-height:1.55}.contract-draft{display:grid;gap:10px;max-height:320px;overflow-y:auto;padding:14px;border:1px solid #eadfd3;border-radius:14px;background:#fffdf9}.contract-draft article{display:grid;gap:5px;padding-bottom:10px;border-bottom:1px solid #eee3d8}.contract-draft article:last-child{border-bottom:0}.contract-draft p{margin:0;color:#716b64;font-size:13px;line-height:1.65}.contract-agree{display:flex;grid-template-columns:none;align-items:flex-start;gap:8px;color:#3d474f;font-size:13px;font-weight:750;line-height:1.55}.contract-agree input{width:16px;height:16px;margin-top:2px}.id-card-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.id-card-upload-card{display:grid;gap:10px;padding:12px;border:1px solid #eadfd3;border-radius:14px;background:#fffaf4}.id-card-upload-card strong{font-size:14px}.id-card-placeholder,.id-card-preview-button{display:grid;width:100%;height:120px;place-items:center;overflow:hidden;border:1px solid #eadfd3;border-radius:12px;background:#f1ebe4;color:#716b64;font-size:13px;font-weight:700;line-height:1.45;text-align:center}.id-card-preview-button{padding:0}.id-card-preview-button img{width:100%;height:100%;object-fit:cover}.id-card-actions{display:grid;gap:8px}.id-card-actions button{min-height:38px;line-height:1.25}.mini-review-hint{display:grid;gap:5px;padding:12px 14px;border:1px solid #d7e2df;border-radius:14px;background:#eef5f3;color:#2f6979;font-size:13px;line-height:1.55}.mini-review-hint strong{color:#20313a;font-size:14px}.mini-review-hint.needs-action{border-color:#ead7c1;background:#fff4e6;color:#8a611d}.mini-review-hint.approved{border-color:#cde5db;background:#eef8f1;color:#2d7651}.mini-collapsed-section{display:grid;gap:10px;padding:14px;border:1px dashed #d6c9bd;border-radius:14px;background:#fffdf9;color:#716b64;font-size:13px;line-height:1.55}.mini-collapsed-section button{justify-self:start;min-width:132px}.settings-card{display:grid;gap:14px}.settings-card label,.range-setting{display:grid;gap:8px;color:#3d474f;font-weight:750}.settings-card select{height:42px;border:1px solid #ded1c4;border-radius:10px;background:#fffefa;color:#1f2a32}.settings-segment{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px;border-radius:14px;background:#f0ebe5}.settings-segment button{height:40px;border-radius:11px;background:transparent;color:#5f6870;font-weight:850}.settings-segment button.active{background:#fffdf9;color:#1f2a32;box-shadow:0 6px 18px #5845321f}.range-setting{padding:14px 0 4px}.range-setting span,.range-setting em{color:#5f6870;font-style:normal}.range-setting input{height:28px;padding:0;border:0;accent-color:#356f7b}.range-setting em{justify-self:end;font-size:13px}.privacy-note{display:grid;gap:7px;padding:13px;border:1px solid #eadfd3;border-radius:12px;background:#fffaf4;color:#5f6870;font-size:13px;line-height:1.55}.privacy-note strong{color:#1f2a32}.mini-screen.theme-dark .mini-top,.mini-screen.theme-dark .mini-card{border-color:#2c2c2e;background:#1c1c1e}.mini-screen.theme-dark .brand-lockup div:last-child strong,.mini-screen.theme-dark .mini-section-head h2,.mini-screen.theme-dark .mini-card h2,.mini-screen.theme-dark .mini-page-intro h2,.mini-screen.theme-dark .mini-key-list strong,.mini-screen.theme-dark .recent-list strong,.mini-screen.theme-dark .settings-card label,.mini-screen.theme-dark .settings-card h2,.mini-screen.theme-dark .privacy-note strong,.mini-screen.theme-dark .checkin-greeting-card h2{color:#f5f5f7}.mini-screen.theme-dark .brand-lockup div:last-child small,.mini-screen.theme-dark .muted,.mini-screen.theme-dark .mini-section-head span,.mini-screen.theme-dark .mini-key-list span,.mini-screen.theme-dark .mini-list,.mini-screen.theme-dark .recent-list span,.mini-screen.theme-dark .recent-list em,.mini-screen.theme-dark .account-meta,.mini-screen.theme-dark .range-setting span,.mini-screen.theme-dark .range-setting em,.mini-screen.theme-dark .privacy-note,.mini-screen.theme-dark .checkin-helper{color:#a1a1a6}.mini-screen.theme-dark .settings-icon-button{color:#f5f5f7}.mini-screen.theme-dark input,.mini-screen.theme-dark textarea,.mini-screen.theme-dark select,.mini-screen.theme-dark .account-meta,.mini-screen.theme-dark .switch-row,.mini-screen.theme-dark .mini-duo article,.mini-screen.theme-dark .mini-progress-card,.mini-screen.theme-dark .submitted-grid article,.mini-screen.theme-dark .checkin-info-grid article{border-color:#2c2c2e;background:#2c2c2e;color:#f5f5f7}.mini-screen.theme-dark .privacy-note{border-color:#2c2c2e;background:#2c2c2e}.mini-screen.theme-dark .settings-segment{background:#2c2c2e}.mini-screen.theme-dark .settings-segment button{color:#a1a1a6}.mini-screen.theme-dark .settings-segment button.active{background:#3a3a3c;color:#fff;box-shadow:none}.mini-screen.theme-dark .mini-status-banner{border-color:#3a3a3c;background:#1c1c1e;color:#ffd89a}.mini-screen.theme-dark .mini-status-banner.done{border-color:#22483f;background:#132821;color:#87d9bd}.mini-screen.theme-dark .mini-status-banner.due{border-color:#5b3a16;background:#2a1f12;color:#ffd18a}.mini-screen.theme-dark .mini-tabs{border-color:#2c2c2e;background:#1c1c1ef5}.mini-screen.theme-dark .mini-tabs button{color:#a1a1a6}.mini-screen.theme-dark .mini-tabs button.active{color:#7bc3d0}.account-meta{display:grid;gap:8px;padding:12px;border:1px solid #eadfd3;border-radius:12px;background:#fffaf4;color:#5f6870;font-size:13px;line-height:1.45}.switch-row{display:flex!important;flex-direction:row;align-items:center!important;justify-content:space-between;gap:12px;padding:12px;border:1px solid #eadfd3;border-radius:12px;background:#fffdf9}.switch-row input{width:20px;height:20px}.security-gate{margin-top:18px}.checkin-main{box-shadow:0 14px 34px #5e483414}.checkin-main h2{font-size:22px}.checkin-greeting-card{gap:14px;padding:20px;background:linear-gradient(180deg,#fffdf9fa,#f5faf8f5),#fffdf9}.checkin-greeting-card h2{margin-bottom:2px;font-size:24px;line-height:1.3}.checkin-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.checkin-info-grid article{display:grid;gap:8px;min-height:88px;padding:14px 12px;border:1px solid #d7e2df;border-radius:14px;background:#eef5f3}.checkin-info-grid span{color:#6b817f;font-size:13px;font-weight:750}.checkin-info-grid strong{color:#2f6979;font-size:16px;line-height:1.45}.checkin-greeting-card textarea{min-height:96px;border-color:#e2d6ca;background:#fffaf4;line-height:1.65}.checkin-greeting-card textarea:disabled{border-color:#e1dad2;background:#f3eee8;color:#8a837c}.checkin-greeting-card button{height:48px;border-radius:14px;font-size:16px}.checkin-greeting-card button:disabled{background:#c9c3bb;color:#fffefa;opacity:1;box-shadow:none}.checkin-helper{color:#7b736c;font-size:12px;font-weight:650;line-height:1.55}.mini-warning{margin-top:14px;padding:18px;border:1px solid #e4d4bf;border-radius:16px;background:#f5eadc;color:#8a611d;font-size:16px;font-weight:750;line-height:1.7}.recent-list{margin-top:0}.recent-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:9px 0;border-bottom:1px solid #eee3d8}.recent-list div:last-child{border-bottom:0}.recent-list strong{font-size:18px}.recent-list span{display:grid;gap:4px;color:#716b64;font-weight:650;line-height:1.45}.recent-list small{color:#7b736c;font-size:13px;font-weight:650}.recent-list em{flex:0 0 auto;color:#716b64;font-style:normal;font-weight:750;white-space:nowrap}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.mini-grid article{display:grid;gap:6px;min-height:82px;padding:12px;border-radius:12px;background:#f8f2eb}.mini-grid span{color:#766e67;font-size:13px}.mini-grid strong{line-height:1.35}.mini-toast{margin-top:12px;padding:10px 12px;border-radius:12px;background:#e8f1ef;color:#245f68;font-size:13px;font-weight:750}.mini-status-banner{margin:2px 0 14px;padding:12px 14px;border:1px solid #eadfd3;border-radius:14px;background:#fff8ed;color:#72592f;font-size:14px;font-weight:800;line-height:1.55}.mini-status-banner.done{border-color:#d4e7df;background:#edf7f2;color:#356c5d}.mini-status-banner.due{border-color:#ead0b7;background:#fff2df;color:#8a5a1f}.mini-center-toast{position:sticky;top:40%;z-index:5;width:fit-content;max-width:82%;margin:0 auto -46px;padding:14px 18px;border:1px solid rgba(255,255,255,.7);border-radius:18px;background:#295058f0;color:#fff;font-size:16px;font-weight:850;line-height:1.5;text-align:center;box-shadow:0 18px 44px #2d3d4038}.mini-list{display:grid;gap:10px;margin-top:12px;color:#5f6870;line-height:1.45}.mini-review-list{margin-top:0}.mini-review-list div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #eee3d8}.mini-review-list div:last-child{border-bottom:0}.mini-review-list span{display:grid;gap:5px}.mini-review-list small{color:#8a611d;line-height:1.45}.mini-review-list em{flex:0 0 auto;padding:5px 10px;border-radius:999px;background:#f5eadc;color:#8a611d;font-style:normal;font-size:13px;font-weight:800}.mini-review-list .review-approved{background:#e8f1ef;color:#43866e}.mini-review-list .review-rejected,.mini-review-list .review-needs_supplement{background:#f8e5e2;color:#a6534f}.mini-tabs{position:absolute;right:0;bottom:0;left:0;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:8px 8px 10px;border-top:1px solid #eadfd3;background:#fffdf9f5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -10px 24px #4a3a2b14;transform:translateY(0);transition:transform .18s ease,opacity .18s ease;will-change:transform,opacity}.mini-tabs.hidden{opacity:0;pointer-events:none;transform:translateY(72px)}.mini-tabs button{height:44px;border-radius:12px;background:transparent;color:#716b64;font-size:14px;box-shadow:none}.mini-tabs button.active{background:#e8f1ef;color:#245f68;box-shadow:inset 0 0 0 1px #356f7b14}@media(max-width:980px){.app-shell,.layout,.overview-layout,.overview-metrics,.overview-mini-grid,.info-grid,.submitted-grid,.form-grid,.review-toolbar,.review-card{grid-template-columns:1fr}.review-toolbar{align-items:stretch}.review-toolbar select{width:100%}.sidebar{position:static;min-height:auto;gap:18px;border-right:0;border-bottom:1px solid #e3d8cd}.sidebar nav{margin-top:16px}}.modal-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:24px;background:#22272a61}.admin-modal{display:grid;gap:16px;width:min(560px,100%);padding:24px;border:1px solid #eadfd3;border-radius:20px;background:#fffdf9;box-shadow:0 28px 70px #2d241a2e}.modal-title-row{display:flex;justify-content:space-between;gap:16px}.modal-title-row h2{margin:4px 0 0}.admin-modal label{display:grid;gap:8px;color:#3c4650;font-size:14px;font-weight:800}.admin-modal textarea{min-height:116px;resize:vertical}.modal-actions{display:flex;flex-wrap:wrap;gap:10px}.modal-actions button{min-width:140px}
