.project-files-dialog .sheet header{z-index:2;background:#fff;gap:12px;margin-bottom:12px;padding:8px 0;position:sticky;top:0}.project-files-dialog .sheet header .icon-button{flex-shrink:0}.files-project-number{overflow-wrap:anywhere;color:#25476a;margin:0 0 14px;font-size:14px;font-weight:700}.files-toolbar{color:#7990a6;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;font-size:11px;display:flex}.files-explanation,.files-state{color:#71879c;margin:12px 0;font-size:12px;line-height:1.8}.files-state{background:#f2f6fb;border-radius:10px;padding:12px}.files-state.warn{color:#9b6a25;background:#fff7e9}.files-state.error{color:#b75045;background:#fff1ef}.files-source{background:#fff;border:1px solid #e0e9f2;border-radius:14px;margin-top:16px;overflow:hidden}.files-source-head{background:#f0f6ff;padding:14px}.files-source.outputs .files-source-head{background:#eef8f3}.files-source-head h3{color:#294e79;margin:0 0 9px;font-size:15px}.files-source.outputs h3{color:#246b54}.files-source-head p{color:#70879e;flex-wrap:wrap;gap:14px;margin:0;font-size:11px;display:flex}.files-source-head b{color:#2a506f;margin-left:3px;font-size:14px}.files-item{border-top:1px solid #edf1f5;padding:14px}.files-item-title{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.files-item h4{overflow-wrap:anywhere;min-width:0;margin:0;font-size:13px;line-height:1.6}.files-item-title .tag{flex-shrink:0}.files-item-meta,.files-item-note{color:#7b8fa3;overflow-wrap:anywhere;margin:6px 0 0;font-size:11px;line-height:1.8}.files-item ul{color:#476680;overflow-wrap:anywhere;margin:9px 0 0;padding-left:16px;font-size:11px;line-height:1.8}.files-empty{color:#8192a4;padding:14px;font-size:12px;line-height:1.8}.action-dialog.gantt-dialog{width:min(820px,100% - 32px);transform:none}.gantt-dialog .sheet header{z-index:5;background:#fff;gap:12px;margin-bottom:12px;padding:10px 0;position:sticky;top:0}.gantt-dialog header .icon-button{flex-shrink:0}.gantt-project-number{overflow-wrap:anywhere;color:#254c75;margin:0 0 12px;font-size:15px;font-weight:700}.gantt-toolbar,.gantt-toolbar>div{justify-content:space-between;align-items:center;gap:15px;display:flex}.gantt-toolbar{color:#758b9f;margin:14px 0;font-size:12px}.gantt-legend{color:#72879c;flex-wrap:wrap;gap:15px;margin:12px 0;font-size:11px;display:flex}.gantt-legend span{align-items:center;gap:6px;display:flex}.gantt-legend i{background:#a2c8fa;border-radius:3px;width:12px;height:8px;display:inline-block}.gantt-legend .actual{background:#239d79;border-radius:50%;width:8px}.gantt-legend .late{background:#d86558}.gantt-legend .today{background:#1570dc;width:2px;height:12px}.gantt-selection{background:#f2f7fe;border:1px solid #deebfb;border-radius:12px;margin:14px 0;padding:13px}.gantt-selection>strong{justify-content:space-between;gap:12px;font-size:13px;line-height:1.5;display:flex}.gantt-selection strong>span{color:#758aa3;text-align:right;font-size:10px;font-weight:400}.gantt-selection dl{grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 0;display:grid}.gantt-selection dt{color:#7b8fa3;font-size:10px}.gantt-selection dd{color:#375e88;margin:5px 0 0;font-size:12px}.gantt-selection p{color:#b36333;font-size:11px;line-height:1.7}.gantt-note,.gantt-hint{color:#7c90a4;margin:12px 0;font-size:11px;line-height:1.8}.gantt-grid{border:1px solid #dfe7f0;border-radius:12px;grid-template-columns:94px minmax(0,1fr);display:grid;overflow:hidden}.gantt-axis-label,.gantt-axis{color:#7d92a6;background:#f5f8fc;height:32px;font-size:10px;position:relative}.gantt-axis-label{padding:9px}.gantt-labels{z-index:1;background:#fff;border-right:1px solid #dfe7f0}.gantt-labels button{text-align:left;color:#516c89;background:#fff;border:0;border-top:1px solid #edf1f6;flex-direction:column;justify-content:center;width:100%;height:60px;padding:8px;display:flex}.gantt-labels small{color:#859bb2;margin-bottom:4px;font-size:9px}.gantt-labels strong{font-size:11px;line-height:1.5}.gantt-scroll{overscroll-behavior-x:contain;min-width:0;overflow-x:auto}.gantt-scroll:focus-visible{outline-offset:-2px;outline:2px solid #126de0}.gantt-axis span{white-space:nowrap;position:absolute;top:9px;transform:translate(-50%)}.gantt-axis span:first-child{transform:none}.gantt-track{text-align:left;background:#fff;border:0;border-top:1px solid #edf1f6;width:100%;height:60px;padding:0;display:block;position:relative}.gantt-track.current{background:#f8fbff}.gantt-track.selected,.gantt-labels button.selected{background:#edf5ff}.gantt-gridline{border-left:1px solid #e9eff7;position:absolute;top:0;bottom:0}.gantt-today-line{z-index:2;border-left:1px dashed #1472dc;position:absolute;top:0;bottom:0}.gantt-bar{background:#a2c8fa;border-radius:4px;min-width:2px;height:15px;position:absolute;top:19px}.gantt-bar.late{background:#f4beb7}.gantt-planned-point{z-index:3;background:#6aa5ee;border:2px solid #fff;width:11px;height:11px;position:absolute;top:21px;transform:translate(-50%)rotate(45deg)}.gantt-actual-point{z-index:3;background:#239d79;border:1px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:36px;transform:translate(-50%)}.gantt-actual-point.late{background:#d86558}.gantt-no-date{color:#99a9b9;font-size:10px;position:absolute;top:22px;left:12px}@media (width<=600px){.action-dialog.gantt-dialog{width:100%;max-width:100%;inset:auto 0 0;transform:none}.gantt-dialog .sheet{padding-left:16px;padding-right:16px}.gantt-toolbar{gap:8px}.gantt-toolbar>div{gap:12px}}.project-intro-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.projects-page .page-intro{flex-wrap:wrap;gap:10px}.priority-entry{color:#216ac2;white-space:nowrap;background:#eff6ff;border:1px solid #cddff5;border-radius:11px;height:40px;padding:0 12px;font-size:12px;font-weight:600}.action-dialog.priority-dialog{width:min(800px,100% - 32px);transform:none}.priority-dialog .sheet header{z-index:3;background:#fff;gap:12px;margin-bottom:12px;padding:12px 0;position:sticky;top:0}.priority-dialog .sheet header .icon-button{flex-shrink:0}.priority-dialog .sheet h2{font-size:20px}.priority-intro{color:#788ca2;margin:12px 0;font-size:12px;line-height:1.8}.priority-matrix{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.priority-quadrant{border:1px solid var(--priority-line);background:var(--priority-bg);--priority-line:#dde5ed;--priority-bg:#f6f8fa;--priority-text:#668099;border-radius:13px;min-width:0;padding:13px}.priority-quadrant.red{--priority-line:#f1d3d0;--priority-bg:#fff5f3;--priority-text:#ba5148}.priority-quadrant.amber{--priority-line:#eadcc3;--priority-bg:#fffbf2;--priority-text:#a36d29}.priority-quadrant.blue{--priority-line:#cddff4;--priority-bg:#f1f7ff;--priority-text:#397ac1}.priority-quadrant-title{color:var(--priority-text);justify-content:space-between;align-items:center;gap:6px;display:flex}.priority-quadrant h3{margin:0;font-size:13px;line-height:1.5}.priority-quadrant-title b{font-size:11px}.priority-quadrant>p{color:var(--priority-text);margin:6px 0 12px;font-size:10px}.priority-quadrant-projects{align-content:start;gap:8px;min-height:65px;max-height:240px;display:grid;overflow:auto}.priority-quadrant-projects button{text-align:left;border:1px solid var(--priority-line);color:#284a6b;overflow-wrap:anywhere;background:#fff;border-radius:9px;width:100%;min-width:0;padding:10px;display:block}.priority-quadrant-projects strong{font-size:12px;line-height:1.6;display:block}.priority-quadrant-projects span{color:#7a8fa4;margin-top:3px;font-size:11px;line-height:1.6;display:block}.priority-quadrant-projects small{color:#8a98a6;margin-top:5px;font-size:9px;display:block}.priority-empty{color:#97a5b3;padding:15px 0;font-size:11px}@media (width<=600px){.action-dialog.priority-dialog{width:100%;max-width:100%;inset:auto 0 0}.priority-dialog .sheet{padding-left:16px;padding-right:16px}.priority-matrix{gap:8px}.priority-quadrant{padding:10px}.priority-quadrant h3{font-size:12px}.priority-quadrant-projects{max-height:200px}.project-intro-actions{gap:6px}.priority-entry{padding:0 9px}}.priority-quadrant.drop-target{outline:2px solid var(--priority-text);outline-offset:-2px;box-shadow:0 0 0 3px var(--priority-line)}.priority-drag-item{border:1px solid var(--priority-line);background:#fff;border-radius:9px;min-width:0;display:flex;position:relative}.priority-drag-item.dragging{opacity:.5;border-style:dashed}.priority-quadrant-projects .priority-project{-webkit-user-select:none;user-select:none;border:0;flex:1;min-width:0}.priority-quadrant-projects .priority-drag-handle{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:40px;min-height:44px;color:var(--priority-text);background:0 0;border:0;flex:0 0 40px;justify-content:center;align-items:center;padding:8px;display:flex}.priority-drag-handle svg{fill:currentColor;width:14px;height:22px}.priority-drag-handle:active{cursor:grabbing}.priority-drag-handle:focus-visible{outline-offset:-3px;outline:2px solid #2472d2}.priority-drag-instruction{color:#71869c;margin:12px 0;font-size:11px;line-height:1.7}.priority-drag-item:has(.priority-drag-handle) .priority-project{cursor:grab}.priority-drag-item.dragging .priority-project{cursor:grabbing}.priority-drag-instruction.priority-error{color:#bd514a}.priority-drag-instruction.priority-success{color:#198765}.project-filter-search{background:#fff;border:1px solid #dbe4ec;border-radius:12px;align-items:center;gap:6px;min-height:48px;padding:4px 5px 4px 12px;display:flex;box-shadow:0 3px 12px #293c5109}.project-filter-search>svg{color:#8392a1;flex:none}.project-filter-search input{color:#263b50;width:0;min-width:0;height:36px;font:inherit;background:0 0;border:0;outline:none;flex:1;margin:0;padding:0 4px;font-size:12px}.project-filter-search:focus-within{border-color:#80afea}.project-filter-search button{min-height:38px;font:inherit;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:12px;display:flex}.project-filter-search .clear-query{color:#7b8997;background:0 0;width:30px;padding:0}.project-filter-search .filter-toggle{color:#54708a;background:#edf3f8;font-weight:700}.project-filter-search .filter-toggle.active{color:#fff;background:#1769d2}.filter-toggle b{background:#ffffff30;border-radius:6px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;display:grid}.project-filter-panel.card{margin:10px 0 0;padding:14px}.project-filter-panel>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.project-filter-panel header small,.project-filter-panel header strong{display:block}.project-filter-panel header small{color:#1769d2;letter-spacing:.12em;font-size:8px;font-weight:700}.project-filter-panel header strong{color:#263b50;margin-top:4px;font-size:14px}.project-filter-panel header>span{color:#6f8193;white-space:nowrap;font-size:11px}.project-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px;display:grid}.project-filter-grid label{min-width:0}.project-filter-grid label>span{color:#53677b;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.project-filter-grid select{color:#344b61;width:100%;min-width:0;height:42px;font:inherit;text-overflow:ellipsis;background:#f9fbfd;border:1px solid #d8e2eb;border-radius:8px;margin:0;padding:0 7px;font-size:12px}.project-filter-panel footer{border-top:1px solid #e8edf2;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding-top:11px;display:flex}.project-filter-panel footer span{color:#7c8b99;font-size:10px}.project-filter-panel footer button{color:#396a99;background:#fff;border:1px solid #cbd9e5;border-radius:8px;flex:none;min-height:36px;padding:0 10px;font-size:11px}.project-filter-panel footer button:disabled{opacity:.4}.project-filter-summary{color:#7b8997;justify-content:space-between;align-items:center;gap:8px;margin:12px 2px;font-size:11px;display:flex}.project-filter-summary>span{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.project-filter-summary b{color:#315a80;font-weight:600}.project-filter-summary button{color:#6685a4;background:0 0;border:0;align-items:center;gap:4px;min-height:32px;padding:0 4px;font-size:11px;display:flex}.project-filter-panel select:focus-visible,.project-filter-search button:focus-visible,.project-filter-panel button:focus-visible{outline-offset:2px;outline:2px solid #1769d2}@media (width<=600px){.project-filter-search input{font-size:16px}.project-filter-search input::placeholder{font-size:12px}.project-filter-grid select{font-size:16px}}.email-login-tabs{gap:8px;margin:14px 0;display:flex}.email-login-tabs button{color:#536d89;background:#f5f8fc;border:1px solid #dce5ef;border-radius:9px;flex:1;min-height:40px}.email-login-tabs button.active{color:#1267d6;background:#eaf3ff;border-color:#93baf0}.project-email-auth{gap:12px;display:grid}.project-email-auth>p{color:#687f98;margin:0;font-size:12px;line-height:1.7}.project-email-auth label{color:#57718b;gap:7px;font-size:12px;display:grid}.project-email-auth input,.project-email-auth select{width:100%;min-width:0;min-height:44px;font:inherit;color:#183654;background:#f8fbff;border:1px solid #d8e4f0;border-radius:9px;padding:10px}.email-code-row{gap:8px;display:flex}.email-code-row input{flex:1;width:0}.email-code-row button{color:#216ac2;background:#eff6ff;border:1px solid #cddff5;border-radius:9px;flex-shrink:0;padding:0 10px}.email-reset-entry{color:#216ac2;background:0 0;border:0;min-height:36px;margin:12px 0 0 auto;font-size:12px;display:block}.account-password{color:#216ac2;background:#fff;border:1px solid #dce5ef;border-radius:12px;width:100%;min-height:44px;margin-bottom:12px}.account-profile.card{align-items:center;gap:12px;padding:18px 16px;display:flex}.account-avatar{color:#fff;background:#1769d2;border-radius:14px;flex:none;place-items:center;width:48px;height:48px;font-size:22px;font-weight:700;display:grid}.account-profile>div{flex:1;min-width:0}.account-profile h2{color:#20384f;overflow-wrap:anywhere;margin:0;font-size:18px;line-height:1.4}.account-profile p{color:#7c8997;margin:5px 0 0;font-size:12px}.account-badge{color:#178268;flex:none;align-items:center;gap:5px;font-size:10px;display:flex}.account-badge i,.account-sync-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.account-company.card{background:#f4f8fd;align-items:center;gap:10px;margin-top:10px;padding:13px 14px;display:flex}.account-company-icon{color:#407bb8;background:#e6effb;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.account-company>div{flex:1;min-width:0}.account-company strong{color:#294865;overflow-wrap:anywhere;font-size:12px;line-height:1.5;display:block}.account-company small{color:#7f91a4;margin-top:3px;font-size:10px;display:block}.account-company button{color:#1769d2;background:0 0;border:0;flex:none;align-items:center;gap:4px;min-height:36px;padding:0;font-size:11px;display:flex}.account-sync.card{color:#6b7e91;background:#f6f8fa;border-color:#d9e2ea;margin-top:10px;padding:12px 14px}.account-sync.healthy{color:#178268;background:#eef8f3;border-color:#c5e4d5}.account-sync.attention{color:#975c12;background:#fff8ec;border-color:#ead4ac}.account-sync-heading{align-items:center;gap:10px;display:flex}.account-sync-heading>div{flex:1;min-width:0}.account-sync-heading strong{font-size:12px;line-height:1.5}.account-sync-heading p{color:#6b8191;margin:4px 0 0;font-size:10px;line-height:1.6}.account-sync-heading button{width:36px;height:36px;color:inherit;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.account-sync details{margin:7px 0 0 16px}.account-sync summary{color:#688479;cursor:pointer;width:fit-content;padding:4px 0;font-size:10px}.account-sync dl{border-top:1px solid #dce8e1;margin:6px 0 0;padding-top:4px}.account-sync dl>div{justify-content:space-between;gap:12px;padding:5px 0;font-size:11px;display:flex}.account-sync dt{color:#6b8191}.account-sync dd{color:#365565;text-align:right;margin:0}.account-section-title{margin:20px 2px 10px}.account-section-title small{letter-spacing:.16em;color:#5680a9;font-size:8px;font-weight:700}.account-section-title h3{color:#20384f;margin:4px 0 0;font-size:14px}.account-menu.card{padding:0 14px}.account-menu>div,.account-menu>a{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:10px 0;font-size:12px;text-decoration:none;display:flex}.account-menu>:last-child{border-bottom:0}.account-menu span{color:#5a738b;flex:none;align-items:center;gap:8px;display:flex}.account-menu strong{color:#788c9f;text-align:right;overflow-wrap:anywhere;justify-content:flex-end;align-items:center;gap:7px;min-width:0;font-size:12px;font-weight:500;display:flex}.account-menu a strong{color:#1769d2}.account-menu a svg{flex:none}.account-note{color:#8594a3;margin:12px 3px;font-size:10px;line-height:1.7}.account-logout{color:#bc403b;background:#fff;border:1px solid #efcbc8;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:44px;font-size:12px;font-weight:600;display:flex}.profile-page button:disabled{opacity:.5}.profile-page button:focus-visible,.profile-page a:focus-visible,.profile-page summary:focus-visible{outline-offset:3px;outline:2px solid #1769d2}.profile-page .account-menu+.account-menu{margin-top:10px}:root{color:#172b43;font-synthesis:none;--blue:#1769d2;--line:#e4eaf1;--muted:#7b8b9d;--green:#178268;--red:#ce5149;background:#eaf0f5;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button{color:inherit}a{color:var(--blue);text-decoration:none}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #7aaff0}button svg,span svg,a svg{flex-shrink:0}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{letter-spacing:-.025em}button{touch-action:manipulation}button:not(.stage-item){-webkit-user-select:none}button,p,h1,h2,h3{margin:0}.app-stage{background:radial-gradient(at 80% 0,#fff 0,#0000 50%),linear-gradient(135deg,#eef4fa,#e1eaf2);justify-content:center;align-items:center;gap:105px;min-height:100dvh;padding:24px;display:flex}.desktop-context{align-self:center;width:340px}.context-mark{color:#1b568f;align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.desktop-context h2{letter-spacing:-.045em;margin:42px 0 20px;font-size:37px;font-weight:650;line-height:1.5}.desktop-context>p{color:#778a9e;font-size:14px;line-height:1.95}.context-steps{gap:18px;margin:45px 0 65px;display:grid}.context-steps>span{color:#667e93;align-items:center;gap:16px;font-size:13px;display:flex}.context-steps i{letter-spacing:.04em;color:#367cbd;border:1px solid #c7d9e9;border-radius:50%;place-items:center;width:27px;height:27px;font-size:10px;font-style:normal;display:grid}.desktop-context>small{letter-spacing:.15em;color:#94a6b7;font-size:9px}.app-shell{background:#f6f8fb;border:7px solid #253348;border-radius:40px;flex-direction:column;flex-shrink:0;width:430px;height:min(900px,100dvh - 48px);min-height:660px;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 80px #23415f26,0 2px 6px #23415f20}.app-header{border-bottom:1px solid var(--line);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:23px 20px 17px;display:flex}.header-name{align-items:center;gap:10px;display:flex}.header-name>div>span{letter-spacing:.14em;color:var(--blue);font-size:8px;font-weight:800;display:block}.header-name h1{margin-top:5px;font-size:23px;font-weight:650}.icon-button{background:#f6f9fc;border:1px solid #e0e7f0;border-radius:12px;place-items:center;width:38px;min-height:38px;padding:0;display:grid}.notification-button{position:relative}.notification-button b{color:#fff;background:#dd5b55;border:2px solid #fff;border-radius:20px;min-width:18px;padding:1px 4px;font-size:9px;position:absolute;top:-5px;right:-5px}.demo-bar{color:#52759c;background:#edf4fd;border-bottom:1px solid #dbe8f7;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 15px;font-size:9px;display:flex}.demo-bar>span{align-items:center;gap:5px;display:flex}.demo-bar i{background:#75a4da;border-radius:50%;width:5px;height:5px;display:block}.demo-bar button{color:#2769ac;background:0 0;border:0;align-items:center;gap:2px;padding:3px 0;font-size:9px;display:flex}.screen-content{overscroll-behavior-y:contain;scrollbar-width:none;flex:1;min-height:0;padding:14px 16px 24px;overflow-y:auto}.screen-content::-webkit-scrollbar{display:none}.row{justify-content:space-between;align-items:center;gap:10px;display:flex}.card{border:1px solid var(--line);background:#fff;border-radius:15px;box-shadow:0 3px 12px #26476804}.tag{white-space:nowrap;border-radius:5px;align-items:center;padding:5px 7px;font-size:10px;font-weight:600;display:inline-flex}.tag.blue{color:#256cbd;background:#eaf2ff}.tag.danger{color:#c1524b;background:#fdebe8}.tag.warn{color:#b97626;background:#fff1e4}.tag.green{color:#23836b;background:#e8f5ef}.sync-strip{background:#eef8f4;border:1px solid #d5e9df;border-radius:11px;align-items:center;gap:10px;padding:10px 11px;display:flex}.sync-strip>i{background:#29a279;border-radius:50%;width:7px;height:7px;margin:0 3px;box-shadow:0 0 0 4px #25a67d15}.sync-strip>i.syncing{box-shadow:none;background:#a5b0bd}.sync-strip>div{flex:1}.sync-strip strong{font-size:11px;font-weight:600;display:block}.sync-strip span{color:#7b978c;margin-top:3px;font-size:9px;display:block}.sync-strip button{color:#31896d;background:0 0;border:0;place-items:center;padding:5px;display:grid}.welcome{color:#fff;background:linear-gradient(115deg,#153856 0,#176ac6 100%);border-radius:18px;margin:13px 0 14px;padding:19px 18px 15px;position:relative;overflow:hidden;box-shadow:0 9px 22px #1762ae22}.welcome>span{color:#acc9e7;letter-spacing:.03em;font-size:10px}.welcome-heading{justify-content:space-between;align-items:center;margin:13px 0 20px;display:flex}.welcome h2{font-size:20px;font-weight:600}.welcome h2 span{color:#c6dbee;letter-spacing:0;margin-top:9px;font-size:11px;font-weight:400;display:block}.welcome-art{color:#9cd1ff;opacity:.75;padding-right:7px;transform:rotate(-7deg)}.welcome-stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.welcome-stats button{color:#fff;background:#ffffff0b;border:1px solid #ffffff12;border-radius:10px;padding:11px 3px 10px}.welcome-stats strong{font-variant-numeric:tabular-nums;font-size:24px;font-weight:650;line-height:1;display:block}.welcome-stats i{color:#b8d2ef;margin-left:4px;font-size:10px;font-style:normal;font-weight:400}.welcome-stats span{color:#bcd2e9;margin-top:7px;font-size:10px;display:block}.section-title{justify-content:space-between;align-items:flex-end;gap:10px;margin:23px 2px 11px;display:flex}.section-title>div>span{color:#6486a6;letter-spacing:.14em;font-size:8px;font-weight:700;display:block}.section-title h2{margin-top:5px;font-size:16px;font-weight:650}.section-title>button{color:#7f8fa1;background:0 0;border:0;flex-shrink:0;align-items:center;gap:2px;padding:4px 0;font-size:10px;display:flex}.project-card{text-align:left;width:100%;margin-bottom:10px;padding:15px;display:block}.project-card .row>small{letter-spacing:.045em;color:#8b9bac;font-size:9px;font-weight:600}.project-card h3{margin:10px 0 6px;font-size:15px;font-weight:650;line-height:1.45}.project-card>p{color:#8292a3;font-size:10px}.project-progress{color:#5681ac;justify-content:space-between;margin:16px 0 7px;font-size:10px;display:flex}.project-progress span:last-child{color:#8093a6}.progress{background:#edf1f6;border-radius:5px;height:4px;overflow:hidden}.progress>i{background:linear-gradient(90deg,#438ae0,#72b8ef);border-radius:5px;height:100%;display:block}.card-foot{color:#8695a5;margin-top:12px;font-size:9px}.card-foot>span{align-items:center;gap:4px;display:flex}.page-intro{justify-content:space-between;align-items:center;margin:8px 0 19px;display:flex}.page-intro h2{font-size:19px;font-weight:650}.page-intro p{color:var(--muted);margin-top:7px;font-size:11px}.add-button{background:var(--blue);color:#fff;border:0}.search{border:1px solid var(--line);color:#92a0b0;background:#fff;border-radius:11px;align-items:center;gap:8px;padding:0 12px;margin:0!important;display:flex!important}.search input{min-width:0;box-shadow:none!important;background:0 0!important;border:0!important;margin:0!important;padding:13px 0!important;font-size:12px!important}.search button{color:#768ca3;background:0 0;border:0;padding:4px;display:flex}.filters{scrollbar-width:none;gap:7px;margin:14px 0 10px;padding:4px 0;display:flex;overflow:auto}.filters button{color:#7c8c9d;white-space:nowrap;background:#eaf0f5;border:0;border-radius:17px;padding:8px 15px;font-size:11px}.filters button.active{background:var(--blue);color:#fff;font-weight:600}.result-count{color:#92a0af;justify-content:space-between;margin:11px 2px;font-size:10px;display:flex}.result-count button{color:#6c8eb1;background:0 0;border:0;align-items:center;gap:4px;font-size:10px;display:flex}.bottom-nav{border-top:1px solid var(--line);z-index:2;background:#fffffffa;flex-shrink:0;grid-template-columns:repeat(4,1fr);min-height:74px;padding:10px 7px 16px;display:grid}.bottom-nav button{color:#9aa5b3;background:0 0;border:0;flex-direction:column;align-items:center;gap:5px;padding:0 4px;font-size:10px;display:flex}.bottom-nav button>span{display:flex;position:relative}.bottom-nav button.active{color:var(--blue);font-weight:600}.bottom-nav b{color:#fff;background:#dc665e;border:1px solid #fff;border-radius:8px;min-width:15px;padding:0 4px;font-size:8px;line-height:15px;position:absolute;top:-5px;left:16px}.phone-home-indicator{z-index:3;opacity:.7;background:#223244;border-radius:9px;width:110px;height:4px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.inbox-summary{color:#fff;background:linear-gradient(115deg,#3e3c38,#7b6a51);border-radius:15px;grid-template-columns:repeat(3,1fr);margin-top:4px;padding:23px 10px;display:grid;box-shadow:0 7px 17px #54422d14}.inbox-summary div{border-right:1px solid #ffffff25;flex-direction:column;align-items:center;gap:6px;display:flex}.inbox-summary div:last-child{border:0}.inbox-summary strong{font-size:26px;font-weight:600}.inbox-list{overflow:hidden}.inbox-item{text-align:left;background:#fff;border:0;border-bottom:1px solid #eeece7;grid-template-columns:35px 1fr 14px;align-items:center;gap:10px;width:100%;padding:15px 12px;display:grid}.inbox-item:last-child{border-bottom:0}.action-icon{border-radius:11px;place-items:center;width:35px;height:35px;display:grid}.action-icon.confirm{color:#4687c9;background:#eaf2fc}.action-icon.change{color:#ca7061;background:#faeae7}.action-icon.record{color:#b78b46;background:#fbf0dc}.inbox-item>div{min-width:0}.inbox-item small{color:#9a968e;font-size:9px;display:block}.inbox-item strong{margin:5px 0;font-size:12px;font-weight:600;line-height:1.5;display:block}.inbox-item p{color:#9a978f;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.inbox-item>svg{color:#9da5ac}.list-hint{color:#98a1aa;text-align:center;margin:13px 4px;font-size:10px;line-height:1.8}.room-hero{border:1px solid var(--line);background:#fff;border-radius:16px;padding:16px}.room-hero>.row>small{color:#7890a6;letter-spacing:.03em;font-size:10px}.room-hero h2{margin:12px 0 6px;font-size:20px;font-weight:650;line-height:1.45}.room-hero>p{color:#8190a0;font-size:10px;line-height:1.7}.room-people{align-items:center;gap:9px;margin-bottom:0;padding:18px 0;display:flex}.mini-avatar{color:#3275b8;background:#e6f1fc;border-radius:10px;place-items:center;width:30px;height:30px;font-size:10px;display:grid}.room-people>div{flex-direction:column;gap:4px;display:flex}.room-people strong{font-size:11px;font-weight:600}.room-people div>span{color:#93a0ad;font-size:9px}.room-people .due{text-align:right;margin-left:auto}.room-people .due strong{color:#b47b43;font-size:10px}.room-metrics{border-top:1px solid #edf1f5;grid-template-columns:1.6fr 1fr 1fr;gap:9px;padding-top:13px;display:grid}.room-metrics>div>span{color:#9aa5b1;margin-bottom:6px;font-size:9px;display:block}.room-metrics strong{color:#326da6;font-size:19px;font-weight:600}.room-metrics strong small{color:#7a8ea3;margin-left:3px;font-size:9px;font-weight:400;display:inline-block}.room-tabs{background:#f6f8fb;border-bottom:1px solid #e0e7ee;margin:14px -16px 0;padding:0 16px;display:flex}.room-tabs button{color:#8b9aad;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:12px 5px;font-size:13px}.room-tabs button.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.room-tabs i{vertical-align:super;background:#d27963;border-radius:50%;width:5px;height:5px;margin-left:5px;display:inline-block}.stage-list{padding:10px 17px}.stage-item{align-items:center;gap:12px;min-height:69px;padding:12px 0;display:flex;position:relative}.stage-item:not(:last-child):after{content:"";background:#e1e9f0;width:1px;height:34px;position:absolute;top:48px;left:13px}.stage-dot{color:#9eacba;z-index:1;background:#f4f7fa;border:1px solid #e5ecf1;border-radius:50%;flex-shrink:0;place-items:center;width:27px;height:27px;font-size:9px;display:grid}.stage-item.completed .stage-dot{color:#459177;background:#edf6f1;border-color:#d8eadd}.stage-item.current .stage-dot{background:#e4f0ff;border:1px solid #8db9ec;box-shadow:0 0 0 4px #edf4fd}.stage-dot>i{background:var(--blue);border-radius:50%;width:9px;height:9px}.stage-item>div{flex:1}.stage-item strong{color:#9aa8b6;font-size:12px;font-weight:500}.stage-item.completed strong{color:#6d8196}.stage-item.current strong{color:#2e6396;font-weight:650}.stage-item strong small{color:#97a9b9;margin-right:9px;font-size:9px}.stage-item p{color:#a3aeb9;margin-top:5px;font-size:9px}.stage-item.current p{color:#7799b9}.advance-button{margin-top:17px}.desktop-link{background:#eef4fb;border:1px solid #dfeaf6;border-radius:11px;justify-content:center;align-items:center;gap:6px;margin-top:17px;padding:14px;font-size:11px;display:flex}.task-list{overflow:hidden}.focus-item{text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f4;grid-template-columns:22px 1fr 13px;align-items:center;gap:10px;width:100%;padding:17px 13px;display:grid}.focus-item:last-child{border:0}.focus-item:disabled{opacity:1;color:inherit}.focus-item>.checkbox{border:1.5px solid #c5d3e2;border-radius:6px;place-items:center;width:20px;height:20px;display:grid}.focus-item.done>.checkbox{color:#fff;background:#378b76;border-color:#378b76}.focus-item strong{margin-top:6px;font-size:12px;font-weight:600;line-height:1.6;display:block}.focus-item small{color:#7f97ad;font-size:9px}.focus-item.done strong{color:#8799a7}.focus-item p{color:#9aa7b4;white-space:pre-wrap;margin-top:6px;font-size:10px;line-height:1.7}.focus-item>svg{color:#a7b2be}.issue-card{margin-bottom:10px;padding:15px}.issue-card h3{margin:12px 0 8px;font-size:14px}.issue-card p{color:#8998a7;white-space:pre-wrap;font-size:11px;line-height:1.8}.issue-card small{color:#8799a8;font-size:10px}.issue-card .secondary{width:100%;margin-top:15px;font-size:11px}.profile-card{align-items:center;gap:15px;margin-top:4px;padding:22px 18px;display:flex}.avatar{color:#fff;background:linear-gradient(135deg,#205783,#579cd2);border-radius:19px;place-items:center;width:58px;height:58px;font-size:20px;display:grid}.profile-card h2{font-size:21px;font-weight:650}.profile-card p{color:#93a1ad;margin:5px 0 8px;font-size:11px}.setting-list{overflow:hidden}.setting-list>div,.setting-list>button{background:#fff;border:0;border-bottom:1px solid #edf1f5;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:17px 15px;font-size:11px;display:flex}.setting-list>:last-child{border:0}.setting-list span{color:#7c91a5;align-items:center;gap:8px;display:flex}.setting-list strong{font-size:10px;font-weight:500}.profile-note{color:#8a9aa9;padding:25px 10px}.profile-note h3{margin-bottom:10px;font-size:12px;font-weight:500}.profile-note p{font-size:11px;line-height:1.9}.profile-note small{color:#a5b1bc;margin-top:15px;font-size:10px;display:block}.logout-button{color:#926967;background:#fff;border:1px solid #e5e9ef;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:12px;display:flex}.notification-card{margin-bottom:12px;padding:15px}.notification-card.unread{border-left:3px solid #5594d4}.notification-card time{color:#9da8b2;font-size:9px}.notification-card h3{margin:12px 0 8px;font-size:13px;line-height:1.6}.notification-card p{color:#8a98a8;white-space:pre-wrap;margin-bottom:14px;font-size:11px;line-height:1.8}.empty{text-align:center;padding:30px 18px}.empty>span{color:#9fb2c4;background:#edf2f6;border-radius:50%;place-items:center;width:53px;height:53px;margin:0 auto 14px;display:grid}.empty strong{color:#73899e;font-size:13px;font-weight:500;display:block}.empty p{color:#a0adba;margin-top:7px;font-size:11px;line-height:1.8}.text-button{color:#5187b8;background:0 0;border:0;align-items:center;gap:4px;padding:6px 0;font-size:11px;display:inline-flex}.error{white-space:pre-wrap;color:#b0514c;overflow-wrap:anywhere;background:#fff0ed;border:1px solid #efd4ce;border-radius:10px;margin-bottom:13px;padding:12px;font-size:12px;line-height:1.7}.error button{color:#b0514c;background:0 0;border:0;padding:7px 0 0;font-size:11px;text-decoration:underline;display:block}.toast{color:#fff;z-index:10;background:#233d51f0;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:13px;font-size:12px;display:flex;position:absolute;bottom:88px;left:20px;right:20px;box-shadow:0 8px 22px #233d5125}.login{background:linear-gradient(175deg,#edf5ff,#f9fbfe 42%,#fff);flex:1;padding:35px 26px 25px;overflow:auto}.login-brand{text-align:center;padding:15px 0 28px}.brand-icon{color:#fff;background:linear-gradient(135deg,#1d4e7c,#217bdb);border-radius:19px;place-items:center;width:62px;height:62px;margin:0 auto 17px;display:grid;box-shadow:0 10px 20px #2679c422}.login-brand>span{letter-spacing:.15em;color:#6290b8;font-size:8px}.login-brand h1{margin:8px 0 12px;font-size:30px;font-weight:650}.login-brand>p{color:#879aab;font-size:12px}.login-panel{background:#fff;border:1px solid #e5edf6;border-radius:18px;padding:25px 19px 15px;box-shadow:0 10px 30px #2463a108}.login-panel h2{margin:0 0 9px;font-size:17px;font-weight:600}.login-panel>p{color:#96a5b5;margin-bottom:21px;font-size:10px;line-height:1.8}.login-foot{text-align:center;color:#a5b2bf;margin:27px 0 10px;font-size:10px;line-height:1.9}.demo-entry{color:#6992b7;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;width:100%;padding:17px 0 5px;font-size:11px;display:flex}.boot{background:#f5f9fe;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.boot h1{font-size:23px;font-weight:600}.boot p{color:#8a9cac;margin-top:18px;font-size:12px}form label{color:#60758b;margin-bottom:17px;font-size:12px;font-weight:500;display:block}input,textarea,select{color:#2d465e;background:#fbfcfe;border:1px solid #dce5ee;border-radius:9px;outline:none;width:100%;min-width:0;margin-top:7px;padding:12px;font-size:14px;font-weight:400;line-height:1.5}input:focus,textarea:focus,select:focus{border-color:#82b0e2;box-shadow:0 0 0 3px #deedfd}input::placeholder,textarea::placeholder{color:#a4b0bd;font-size:12px}textarea{resize:vertical;min-height:90px}.primary,.secondary{border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:43px;padding:13px 15px;font-size:12px;font-weight:600;display:flex}.primary{background:var(--blue);color:#fff;border:1px solid var(--blue);width:100%}.secondary{color:#718499;background:#f7f9fc;border:1px solid #dce5ee}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-row input{min-height:46px}.action-dialog{color:#172b43;overscroll-behavior:contain;background:#fff;border:0;border-radius:24px 24px 0 0;width:min(430px,100%);max-width:100%;max-height:calc(100dvh - 35px);margin:0 auto;padding:0;position:fixed;inset:auto 0 0;box-shadow:0 -10px 60px #112b4625}.action-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#12273b70}.sheet{padding:9px 23px max(20px,var(--safe-bottom))}.sheet-handle{background:#dbe2e9;border-radius:5px;width:36px;height:4px;margin:0 auto 16px}.sheet header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.sheet header span{color:#7f9bb5;letter-spacing:.1em;font-size:8px}.sheet h2{margin-top:6px;font-size:21px;font-weight:600}.sheet-context{background:#f3f7fb;border:1px solid #e6eef5;border-radius:11px;margin-bottom:21px;padding:14px}.sheet-context h3{margin:5px 0;font-size:15px;line-height:1.7}.sheet-context small{color:#7f97ad;font-size:10px}.sheet-context p{color:#8395a8;font-size:12px;line-height:1.9}.sheet-actions{grid-template-columns:1fr 2fr;gap:12px;margin-top:22px;display:grid}@media (prefers-reduced-motion:no-preference){button{transition:background .15s,border-color .15s,opacity .15s}.project-card:hover{border-color:#b7d1e8}.progress>i{transition:width .25s}.syncing{animation:1s infinite alternate pulse}@keyframes pulse{to{opacity:.4}}}.project-category-options{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;gap:10px;margin:0;padding:12px;display:flex}.project-category-options legend{padding:0 4px;font-size:12px;font-weight:600}.sheet .project-category-options label{flex-direction:row;align-items:center;gap:6px;font-size:12px;display:flex}.sheet .project-category-options input{width:16px;height:16px;accent-color:var(--blue);margin:0;padding:0}.project-standard-options{border:1px solid var(--line);border-radius:10px;margin:0 0 16px;padding:8px 12px}.project-standard-options legend{padding:0 4px;font-size:12px;font-weight:600}.sheet .project-standard-options label{cursor:pointer;flex-direction:row;align-items:flex-start;gap:10px;margin:0;padding:11px 0;display:flex}.sheet .project-standard-options input{width:18px;height:18px;accent-color:var(--blue);flex-shrink:0;margin:0;padding:0}.project-standard-options label+label{border-top:1px solid var(--line)}.project-standard-options strong{color:#365575;font-size:12px;line-height:18px;display:block}.project-standard-options small{color:#7a8ea3;margin-top:3px;font-size:11px;line-height:1.6;display:block}.project-standard-options p{color:#7a8ea3;padding:8px 0;font-size:12px;line-height:1.7}.workspace-links{gap:9px;display:grid}.workspace-link{border:1px solid var(--line);color:#243b53;background:#fff;border-radius:14px;align-items:center;gap:12px;padding:13px 14px;display:flex;box-shadow:0 3px 12px #26476804}.workspace-link-icon{color:#256cbd;background:#eaf2ff;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.workspace-link.bench .workspace-link-icon{color:#23836b;background:#e8f5ef}.workspace-link.project .workspace-link-icon{color:#8070ba;background:#f0edfc}.workspace-link>div{flex:1;min-width:0}.workspace-link strong{font-size:13px;font-weight:650}.workspace-link>svg{color:#8198ac}.workspace-mini-programs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.workspace-mini-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:14px;flex-direction:column;align-items:flex-start;min-width:0;padding:14px 12px;display:flex;box-shadow:0 3px 12px #26476804}.workspace-mini-icon{color:#23836b;background:#e8f5ef;border-radius:11px;place-items:center;width:36px;height:36px;margin-bottom:11px;display:grid}.workspace-mini-card.suggestions .workspace-mini-icon{color:#b97626;background:#fff1e4}.workspace-mini-card strong{font-size:12px;font-weight:650;line-height:1.5}.workspace-mini-card p{color:#8192a3;margin-top:5px;font-size:10px;line-height:1.7}.workspace-mini-card small{color:var(--blue);align-self:flex-end;align-items:center;gap:3px;margin-top:13px;font-size:10px;display:flex}.mini-program-dialog .sheet header{margin-bottom:12px}.mini-program-description{text-align:center;color:#7b8b9d;font-size:12px;line-height:1.7}.mini-program-code{border:1px solid var(--line);background:#fff;border-radius:16px;width:100%;max-width:260px;margin:18px auto;padding:10px}.mini-program-code img{-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto;border-radius:8px;width:100%;height:auto;display:block}.mini-program-instruction{text-align:center;font-size:14px;display:block}.mini-program-guide{color:#788c9f;background:#f3f7fb;border-radius:10px;margin:14px 0;padding:13px 14px;font-size:11px;line-height:1.9}.mini-program-save{border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;padding:13px;font-size:12px;display:flex}.workspace-link:hover,.workspace-mini-card:hover{border-color:#b7d1e8}.company-page{background:#edf3f9;flex-direction:column;align-items:center;height:100dvh;padding:24px;display:flex;overflow-y:auto}.company-panel{border:1px solid var(--line);background:#fff;border-radius:20px;flex-shrink:0;width:min(100%,440px);margin:auto 0;padding:28px}.company-panel>span{letter-spacing:.13em;color:var(--blue);font-size:10px}.company-panel h1{margin:12px 0;font-size:24px}.company-panel p{color:#73869a;margin-bottom:18px;font-size:13px;line-height:1.8}.company-choices{gap:10px;margin:20px 0;display:grid}.company-choices button{text-align:left;border:1px solid var(--line);background:#f4f8fc;border-radius:12px;grid-template-columns:1fr auto;gap:6px;padding:16px;display:grid}.company-choices small{color:#73869a;grid-column:1}.company-choices button>span{color:var(--blue);grid-area:1/2/3;align-self:center;font-size:12px}.company-panel form{border-top:1px solid var(--line);gap:14px;padding:20px 0;display:grid}.company-panel h2{margin:0;font-size:16px}.company-panel label{color:#566e87;gap:8px;font-size:12px;display:grid}.company-panel input{border:1px solid var(--line);border-radius:8px;width:100%;padding:12px}.company-switch{background:#f3f7fc;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:14px;display:flex}.company-switch strong{font-size:13px}.company-switch small{color:#768ba0;margin-top:5px;font-size:10px;display:block}:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--shell-shift:222.5px}:root[data-native-insets=true]{--safe-top:0px;--safe-bottom:0px;--safe-left:0px;--safe-right:0px}.app-stage{height:var(--viewport-height,100dvh);min-height:0}.app-shell{height:min(900px,calc(var(--viewport-height,100dvh) - 48px));min-height:0}.app-header{gap:12px;min-height:60px;padding:8px 16px}.header-name{flex:1;min-width:0}.header-name>div{min-width:0}.header-name>div>span{letter-spacing:.12em;font-size:7px;line-height:10px}.header-name h1{margin-top:2px;font-size:20px;line-height:26px}.app-header .icon-button{flex-shrink:0;width:40px;min-height:40px}.screen-content{min-width:0;padding-top:12px;scroll-padding:12px 0 20px}.screen-content>.welcome:first-child{margin-top:0}.bottom-nav{min-height:64px;padding:7px 7px 9px}.bottom-nav button{justify-content:center;min-height:44px}.phone-home-indicator{display:none}.action-dialog{transform:translateX(var(--shell-shift));max-height:calc(var(--viewport-height,100dvh) - 48px);border-radius:22px;bottom:24px;overflow-y:auto}.company-page{height:var(--viewport-height,100dvh);padding:max(20px,var(--safe-top)) max(20px,var(--safe-right)) max(20px,var(--safe-bottom)) max(20px,var(--safe-left))}.company-panel{min-height:0}@media (width<=1099px){:root{--shell-shift:0px}.desktop-context{display:none}.app-stage{gap:0;padding:16px}.app-shell{width:min(760px,100%);height:calc(var(--viewport-height,100dvh) - 32px);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 40px #23415f12}.screen-content{padding:16px 24px 24px}.room-tabs{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.app-header{padding-left:24px;padding-right:24px}.action-dialog{width:min(560px,100% - 32px);max-height:calc(var(--viewport-height,100dvh) - 32px);bottom:16px}}@media (width<=600px),(height<=500px) and (width<=1000px),(pointer:coarse){html,body,#root{background:#f6f8fb;height:100%;overflow:hidden}.desktop-context{display:none}.app-stage{background:#f6f8fb;padding:0;display:block}.app-shell{width:100%;height:var(--viewport-height,100dvh);box-shadow:none;padding-left:var(--safe-left);padding-right:var(--safe-right);border:0;border-radius:0}.app-header{min-height:calc(56px + var(--safe-top));padding:6px 16px;padding-top:calc(6px + var(--safe-top))}.header-name>div>span{display:none}.header-name h1{margin:0;font-size:20px;line-height:28px}.app-header .icon-button{border-radius:12px;width:44px;min-height:44px}.bottom-nav{min-height:calc(60px + var(--safe-bottom));padding:5px 8px calc(5px + var(--safe-bottom))}.bottom-nav button{gap:3px;min-height:48px}.screen-content{padding:12px 16px 20px}.room-tabs{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.welcome{margin-bottom:12px;padding:16px}.welcome-heading{margin:10px 0 16px}.welcome-stats button{min-height:60px;padding:10px 3px}.action-dialog{inset:auto var(--safe-right) 0 var(--safe-left);width:min(560px,calc(100% - var(--safe-left) - var(--safe-right)));max-height:calc(var(--viewport-height,100dvh) - var(--safe-top) - 8px);border-radius:20px 20px 0 0;transform:none}.sheet{padding:8px 20px max(20px,var(--safe-bottom))}.sheet header{margin-bottom:16px}.sheet-handle{margin-bottom:10px}.toast{bottom:calc(70px + var(--safe-bottom))}.login{padding:calc(16px + var(--safe-top)) 20px max(20px,var(--safe-bottom));min-height:0}.login-brand{padding:8px 0 20px}input,textarea,select,.search input{font-size:16px!important}}@media (height<=500px){.app-header{min-height:calc(48px + var(--safe-top));padding-top:calc(2px + var(--safe-top));padding-bottom:2px}.header-name>div>span{display:none}.bottom-nav{min-height:calc(48px + var(--safe-bottom));padding-top:0;padding-bottom:var(--safe-bottom)}.bottom-nav button{flex-direction:row;gap:7px;min-height:47px}.login-brand{padding:0 0 14px}.login-brand .brand-icon{display:none}.sheet header{margin-bottom:12px}.sheet-handle{margin-bottom:8px}}@media (width<=360px){.form-row{grid-template-columns:1fr}.sheet{padding-left:16px;padding-right:16px}.welcome h2{font-size:18px}.welcome-art svg{width:38px;height:38px}}:root{--line:#e3e9ef;--muted:#718297;color:#172c45}.app-shell,.screen-content{background:#f4f7fa}.app-header{background:#fff;border-bottom-color:#e8edf3}.header-name h1{letter-spacing:-.035em;font-weight:700}.app-header .icon-button{background:#f7f9fc;border-color:#e5ebf2}.header-status{color:#718297;flex-shrink:0;font-size:11px}.card{border-radius:13px;box-shadow:0 2px 8px #18395c03}.section-title{align-items:center;margin:19px 2px 10px}.section-title>div>span,.page-kicker{letter-spacing:.14em;color:#6484a6;font-size:8px;font-weight:700;line-height:12px;display:block}.section-title h2{margin-top:3px;font-size:15px;font-weight:700;line-height:22px}.section-count{color:#7d8da0;white-space:nowrap;font-size:11px;font-weight:400}.welcome{background:linear-gradient(125deg,#153453,#176bcb);border-radius:16px;padding:17px 16px 15px;box-shadow:0 6px 16px #1c59951a}.welcome>span{color:#bfd4e9;font-size:10px}.welcome-heading{gap:10px;margin:8px 0 15px}.welcome h2{font-size:19px;font-weight:700;line-height:27px}.welcome h2 span{color:#d0e0f0;margin-top:5px;font-size:11px;line-height:17px}.welcome-art{opacity:.65;padding:0}.welcome-art svg{width:43px;height:43px}.welcome-stats{gap:7px}.welcome-stats button{background:#ffffff0d;border-color:#ffffff17;border-radius:9px;min-height:56px;padding:9px 3px}.welcome-stats strong{font-size:23px;line-height:25px}.welcome-stats span{color:#d2e2f3;margin-top:5px;font-size:10px;line-height:14px}.workspace-links{border:1px solid var(--line);background:#fff;border-radius:13px;display:block;overflow:hidden}.workspace-link{box-shadow:none;border:0;border-radius:0;gap:11px;min-height:69px;padding:12px 13px;position:relative}.workspace-link+.workspace-link:before{content:"";background:#edf1f5;height:1px;position:absolute;top:0;left:60px;right:13px}.workspace-link-icon{border-radius:10px;width:36px;height:36px}.workspace-link-icon svg{width:20px;height:20px}.workspace-link strong{font-size:13px;font-weight:650;line-height:19px;display:block}.workspace-link p{color:#7b8da1;margin-top:3px;font-size:11px;line-height:16px}.workspace-link>svg{color:#97a7b8;width:13px}.workspace-link-hint{color:#7c8ea1;margin:8px 3px 0;font-size:10px;line-height:16px}.workspace-mini-programs{gap:10px}.workspace-mini-card{border-radius:13px;grid-template-columns:32px minmax(0,1fr);align-items:center;column-gap:9px;padding:13px 12px 11px;display:grid}.workspace-mini-icon{border-radius:9px;grid-area:1/1;width:32px;height:32px;margin:0}.workspace-mini-icon svg{width:19px;height:19px}.workspace-mini-card strong{grid-area:1/2;font-size:12px;line-height:18px}.workspace-mini-card p{grid-column:1/-1;margin-top:9px;font-size:10px;line-height:16px}.workspace-mini-card small{grid-column:1/-1;justify-self:end;margin-top:7px;font-size:10px;line-height:17px}.page-intro{margin:3px 0 15px}.page-intro h2{font-size:18px;font-weight:700;line-height:26px}.page-intro p{margin-top:5px;font-size:12px}.add-button{border-radius:11px;width:40px;min-height:40px;box-shadow:0 3px 8px #1769d21c}.search{border-radius:10px}.filters{gap:7px;margin:12px 0 8px}.filters button{color:#62768b;background:#e9eff5;border-radius:9px;min-height:36px;padding:7px 14px;font-size:12px}.filters button.active{color:#1769d2;background:#e2edfc;box-shadow:inset 0 0 0 1px #cfe0f8}.result-count{align-items:center;margin:10px 2px;font-size:11px}.result-count button{min-height:28px;font-size:11px}.project-card{margin-bottom:10px;padding:14px}.project-card .row>small{color:#6c8197;font-size:10px}.project-card h3{margin:8px 0 5px;font-size:15px;line-height:22px}.project-card>p{color:#73859a;font-size:11px;line-height:17px}.project-progress{margin-top:13px;font-size:11px}.card-foot{margin-top:10px;font-size:10px}.inbox-page{background:#f7f7f4}.inbox-summary{box-shadow:none;background:linear-gradient(120deg,#403522,#79603d);border-radius:13px;margin-top:0;padding:16px 8px}.inbox-summary strong{font-size:23px;line-height:27px}.inbox-summary span{color:#e3d7c6;font-size:11px}.inbox-item{gap:10px;min-height:87px;padding:13px 12px}.inbox-item small{color:#8a8278;font-size:10px;line-height:15px}.inbox-item strong{margin:4px 0;font-size:13px;line-height:20px}.inbox-item p{color:#857f76;font-size:11px}.profile-card{gap:13px;margin-top:0;padding:18px 16px}.avatar{border-radius:15px;flex-shrink:0;width:50px;height:50px;font-size:18px}.profile-card h2{font-size:19px}.profile-card p{color:#76899c;font-size:12px}.setting-list>div,.setting-list>button{min-height:52px;padding:15px 14px;font-size:12px}.setting-list strong{font-size:11px}.profile-note{padding:20px 4px}.profile-note p{color:#76899c}.bottom-nav button{color:#7d8ea3;font-size:11px}.bottom-nav button>span{border-radius:9px;justify-content:center;align-items:center;width:40px;height:26px}.bottom-nav button.active>span{background:#edf4ff}.bottom-nav b{left:26px}.notification-intro{border-bottom:1px solid #e2e9f1;justify-content:space-between;align-items:center;gap:12px;padding:5px 2px 15px;display:flex}.notification-intro h2{margin-top:5px;font-size:18px;font-weight:700;line-height:26px}.notification-intro p{color:#788b9e;margin-top:5px;font-size:11px;line-height:18px}.unread-count{color:#71869a;background:#e9eef4;border-radius:7px;flex-shrink:0;padding:6px 9px;font-size:11px;line-height:17px}.unread-count.has-unread{color:#2469bd;background:#e5efff}.notification-list{overflow:hidden}.notification-item{background:#fff;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:10px;padding:15px 13px 10px;display:grid;position:relative}.notification-item+.notification-item{border-top:1px solid #e9eef4}.notification-item.unread{background:#f8fbff}.notification-icon{color:#327bc7;background:#eaf2fd;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.notification-icon.completion{color:#b57d39;background:#fbf0df}.notification-meta{color:#7d91a6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 10px;padding-right:9px;font-size:10px;line-height:16px;display:flex}.notification-meta time{white-space:nowrap;font-variant-numeric:tabular-nums;color:#8798aa}.notification-body h3{margin:5px 0;font-size:14px;font-weight:650;line-height:22px}.notification-body>p{color:#73869a;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:20px}.notification-actions{flex-wrap:wrap;align-items:center;gap:0 14px;margin-top:7px;display:flex}.notification-actions .text-button{color:#367bbd;min-height:36px;font-size:11px}.notification-actions .mark-read,.read-state{color:#8193a5;margin-left:auto}.read-state{align-items:center;gap:3px;min-height:36px;font-size:10px;display:inline-flex}.unread-dot{background:#de6a60;border-radius:50%;width:5px;height:5px;position:absolute;top:20px;right:12px}.room-hero h2{font-size:18px}.room-hero>p,.room-people strong,.room-people div>span,.stage-item p{color:#758a9f}.stage-item strong{font-size:13px}.stage-item p{font-size:10px;line-height:16px}.room-people .due{min-width:0}@media (hover:hover){.workspace-link:hover,.notification-actions .text-button:hover{background:#f5f9ff}.workspace-mini-card:hover{background:#fbfdff}}@media (width<=360px){.workspace-mini-card{grid-template-columns:1fr;gap:0;padding:11px}.workspace-mini-icon{margin-bottom:7px}.workspace-mini-card strong{grid-area:auto/1}.notification-intro{align-items:flex-start;gap:7px}.unread-count{padding:5px 7px;font-size:10px}.notification-intro h2{font-size:17px}}.room-metrics>.test-metric{text-align:left;color:#326da6;background:#f0f6fe;border:0;border-radius:9px;align-self:start;min-width:0;margin:-7px 0;padding:7px 8px;display:block}.test-metric>span{color:#6789ad;align-items:center;gap:2px;margin-bottom:6px;font-size:10px;display:flex}.test-metric strong{display:block}.test-metric em{color:#537fad;overflow-wrap:anywhere;margin-top:5px;font-size:9px;font-style:normal;line-height:15px;display:block}.test-progress-dialog .sheet header{margin-bottom:14px}.test-project small{color:#768ba1;overflow-wrap:anywhere;font-size:10px}.test-project h3{margin:5px 0 14px;font-size:15px;line-height:23px}.test-overview{background:#eff5fd;border-radius:12px;grid-template-columns:1fr 1fr;gap:12px;padding:15px;display:grid}.test-overview>div{flex-direction:column;gap:8px;display:flex}.test-overview span{color:#7289a0;font-size:11px}.test-overview strong{color:#276aad;font-size:25px}.test-overview small{font-size:11px;font-weight:400}.test-formula{color:#7b8fa1;overflow-wrap:anywhere;margin:10px 1px;font-size:11px;line-height:19px}.test-source{justify-content:space-between;align-items:center;gap:12px;margin:8px 0;display:flex}.test-source>span{color:#8193a5;font-size:10px;line-height:17px}.test-source>button{flex-shrink:0;min-height:36px}.test-status{background:#f1f5f9;border-radius:10px;margin-bottom:12px;padding:12px;font-size:12px;line-height:20px}.test-status.warn{color:#936a2e;background:#fff4e2}.test-task-list{gap:12px;display:grid}.test-task-card{padding:14px}.test-task-card>.row{flex-wrap:wrap;align-items:flex-start;gap:6px}.test-task-number{color:#4779a9;overflow-wrap:anywhere;min-width:0;font-size:12px;font-weight:650}.test-task-card h3{margin-top:8px;font-size:14px;line-height:22px}.test-task-progress{color:#71889e;justify-content:space-between;align-items:center;margin:12px 0 7px;font-size:11px;display:flex}.test-task-progress strong{color:#276aad;font-size:17px}.test-task-card dl{gap:7px;margin:14px 0 0;font-size:11px;line-height:18px;display:grid}.test-task-card dl>div{grid-template-columns:60px minmax(0,1fr);gap:8px;display:grid}.test-task-card dt{color:#8a9bac}.test-task-card dd{color:#5d738a;overflow-wrap:anywhere;margin:0}.test-item-names{border-top:1px solid var(--line);color:#6d8298;margin-top:12px;padding-top:10px;font-size:11px}.test-item-names strong{font-weight:500}.test-item-names ul{margin:6px 0 0;padding-left:17px;line-height:21px}button.stage-item{text-align:left;background:0 0;border:0;border-radius:10px;width:100%}button.stage-item:hover{background:#f3f7fc}button.stage-item>div{min-width:0}button.stage-item>svg{color:#94a8be;flex-shrink:0}.stage-history-dialog .sheet{padding-top:10px}.stage-history-dialog .sheet header{z-index:2;background:#fff;gap:12px;margin-bottom:10px;padding:12px 0;position:sticky;top:0}.stage-history-dialog .sheet h2{font-size:19px;line-height:1.5}.stage-history-dialog .icon-button{flex-shrink:0}.history-project>p{color:#526c86;margin-bottom:12px;font-size:13px;line-height:1.7}.history-project .row{flex-wrap:wrap;gap:8px}.history-project small{color:#71859b;font-size:10px}.history-summary{border-top:1px solid #e5edf5;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:18px 0 12px;display:flex}.history-summary>strong{color:#286cb7;font-size:28px}.history-summary strong small{color:#5e7690;font-size:12px;font-weight:500}.history-summary>span{color:#6f879e;font-size:11px}.history-explanation{color:#8193a5;font-size:11px;line-height:1.8}.stage-history-group{margin-top:24px}.stage-history-group>h3{align-items:center;gap:8px;margin:0 0 12px;font-size:14px;display:flex}.stage-history-group>h3 small{color:#8094a8;margin-left:auto;font-size:11px;font-weight:400}.history-status-dot{background:#d49a44;border-radius:50%;width:7px;height:7px}.history-status-dot.done{background:#38957b}.history-task{border:1px solid #e0e9f1;border-radius:12px;margin-top:10px;padding:14px}.history-task .row{gap:8px}.history-task .row>small{color:#7a90a6;font-size:10px}.history-task h4{overflow-wrap:anywhere;margin:10px 0 6px;font-size:13px;line-height:1.7}.history-task p{white-space:pre-wrap;color:#6e8499;font-size:12px;line-height:1.8}.history-note{background:#f4f8fb;border-radius:8px;margin-top:12px;padding:10px 12px}.history-note>strong{color:#6e8399;margin-bottom:4px;font-size:10px;display:block}.history-note p{color:#415d78}.history-task footer{color:#8295a7;margin-top:12px;font-size:10px}.history-empty{color:#7b91a6;padding:20px 0;font-size:12px;line-height:1.8}.history-empty button{margin-top:12px}.room-overview-cards{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.overview-entry{text-align:left;background:#f7faff;border:1px solid #e2eaf3;border-radius:12px;min-width:0;padding:12px}.overview-entry .entry-label{color:#7089a3;justify-content:space-between;align-items:center;gap:4px;font-size:10px;display:flex}.overview-entry>strong{overflow-wrap:anywhere;color:#274d75;margin:9px 0 5px;font-size:14px;line-height:1.5;display:block}.overview-entry>small{color:#7390ad;font-size:10px}.deadline-entry{background:#fffbf5;border-color:#f1e8d8}.deadline-entry>strong{color:#aa712f}.deadline-entry.overdue{background:#fff5f4;border-color:#f2d8d6}.deadline-entry.overdue>strong{color:#c45950}.overview-dialog .sheet header{z-index:2;background:#fff;gap:12px;margin-bottom:12px;padding:12px 0;position:sticky;top:0}.overview-dialog .sheet header .icon-button{flex-shrink:0}.overview-dialog .sheet h2{font-size:20px;line-height:1.5}.overview-project-name{color:#69819a;margin-bottom:18px;font-size:12px;line-height:1.7}.overview-toolbar{color:#768da4;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;display:flex}.overview-note{color:#7b8fa3;margin:12px 0 18px;font-size:11px;line-height:1.9}.participant-card,.milestone-card{border:1px solid #e1eaf3;border-radius:12px;margin-top:12px;padding:15px}.participant-heading{align-items:center;gap:10px;display:flex}.participant-heading>div{min-width:0}.participant-heading h3{overflow-wrap:anywhere;margin:0 0 5px;font-size:14px}.participant-heading p{color:#7a8fa4;font-size:11px;line-height:1.7}.participant-phone{border-top:1px solid #edf1f5;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding-top:12px;font-size:12px;display:flex}.participant-phone>span{color:#7a8fa4;flex-shrink:0}.participant-phone strong{color:#8b9cab;overflow-wrap:anywhere;font-weight:400}.participant-phone a{overflow-wrap:anywhere;align-items:center;gap:8px;min-height:32px;display:flex}.schedule-dates{background:#f4f8fc;border-radius:12px;grid-template-columns:1fr 1fr;gap:10px;padding:14px;display:grid}.schedule-dates span{color:#7f94a8;margin-bottom:8px;font-size:10px;display:block}.schedule-dates strong{font-size:12px;font-weight:600}.milestone-card.current{background:#f8fbff;border-color:#9bbfeb}.milestone-card .row{flex-wrap:wrap;gap:8px}.milestone-card h3{margin:0;font-size:13px}.milestone-card h3 small{color:#7b99b7;margin-right:8px;font-size:10px}.milestone-card dl{gap:12px;margin:14px 0 0;display:grid}.milestone-card dl>div{justify-content:space-between;gap:12px;font-size:12px;display:flex}.milestone-card dt{color:#8a9bad;flex-shrink:0}.milestone-card dd{color:#476680;text-align:right;overflow-wrap:anywhere;margin:0}.room-hero .room-project-number{overflow-wrap:anywhere;font-weight:700}.room-hero>.room-project-name{color:#4d6883;margin:6px 0;font-size:14px;font-weight:400;line-height:1.5}.room-project-heading{align-items:flex-start;gap:10px;display:flex}.room-project-heading .room-project-number{flex:1;min-width:0;margin:0}.room-project-heading>.tag{flex-shrink:0;margin-top:2px}.login-secondary-actions{grid-template-columns:1fr 1fr;align-items:center;margin-top:12px;display:grid}.login-secondary-actions .demo-entry,.login-download{justify-content:center;align-items:center;gap:5px;min-height:40px;padding:6px 4px;font-size:11px;text-decoration:none;display:flex}.login-download{color:#196ac4;border-left:1px solid #e4ecf5}.login-secondary-actions a:focus-visible,.login-secondary-actions button:focus-visible{outline-offset:2px;border-radius:5px;outline:2px solid #1672df}.project-card-heading{align-items:flex-start;gap:10px}.project-card .project-card-heading h3{overflow-wrap:anywhere;flex:1;min-width:0;margin:0;font-size:16px;font-weight:700;line-height:1.5}.project-card-heading>.tag{flex-shrink:0;margin-top:2px}.project-card>.project-card-name{overflow-wrap:anywhere;color:#4d6883;margin:6px 0;font-size:14px;font-weight:400;line-height:1.5}.project-card.priority-red{--card-priority:#bd5148;--card-tint:#fff6f4;--card-edge:#edc7c2}.project-card.priority-amber{--card-priority:#a76b20;--card-tint:#fffbf2;--card-edge:#ead7b6}.project-card.priority-blue{--card-priority:#3077be;--card-tint:#f3f8ff;--card-edge:#cbdff5}.project-card.priority-gray{--card-priority:#738397;--card-tint:#fafbfd;--card-edge:#dce3eb}.card.project-card{background:var(--card-tint,#fff);border-color:var(--card-edge,var(--line));border-left:4px solid var(--card-priority,var(--line))}.project-card-subheading{justify-content:space-between;align-items:baseline;gap:8px;margin:6px 0;display:flex}.project-card-subheading .project-card-name{overflow-wrap:anywhere;color:#4d6883;min-width:0;margin:0;font-size:14px;font-weight:400;line-height:1.5}.project-card-priority{color:var(--card-priority);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;font-size:10px;font-weight:600;display:inline-flex}.project-card-priority i{background:currentColor;border-radius:50%;width:5px;height:5px}.login-secondary-actions.with-password-reset{grid-template-columns:1.25fr 1fr 1fr}.login-secondary-actions .email-reset-entry{color:#196ac4;white-space:nowrap;background:0 0;border:0;border-left:1px solid #e4ecf5;justify-content:center;align-items:center;min-height:40px;margin:0;padding:6px 4px;font-size:11px;display:flex}@media (width<=380px){.login-secondary-actions.with-password-reset .demo-entry svg{display:none}.login-secondary-actions.with-password-reset{grid-template-columns:1.2fr 1fr .9fr}.login-secondary-actions.with-password-reset .login-download{gap:3px}}
