.proposal-shell[data-v-88e4447b]{margin-bottom:20px}.proposal-actions[data-v-88e4447b]{justify-content:flex-end;gap:10px;margin-top:-62px;margin-bottom:24px;display:flex}.proposal-actions button span[data-v-88e4447b]{color:#285bc9;background:#e9efff;border-radius:99px;justify-content:center;align-items:center;min-width:22px;height:22px;margin-left:6px;padding:0 6px;display:inline-flex}.proposal-panel[data-v-88e4447b]{background:#fff;border:1px solid #dce4ef;border-radius:16px;margin-bottom:20px;padding:18px}.proposal-panel>header[data-v-88e4447b]{justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;display:flex}.proposal-panel header strong[data-v-88e4447b],.proposal-panel header small[data-v-88e4447b]{display:block}.proposal-panel header small[data-v-88e4447b]{color:#78869a;margin-top:4px}.proposal-list[data-v-88e4447b]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;display:grid}.proposal-card[data-v-88e4447b]{background:#fbfcfe;border:1px solid #e1e7f0;border-radius:13px;padding:16px}.proposal-card-head[data-v-88e4447b],.proposal-card footer[data-v-88e4447b],.split-actions[data-v-88e4447b],.split-actions>div[data-v-88e4447b]{align-items:center;gap:8px;display:flex}.proposal-card-head[data-v-88e4447b]{color:#6e7d92;justify-content:space-between;font-size:12px}.proposal-card-head em[data-v-88e4447b]{color:#53647d;background:#edf2fb;border-radius:99px;padding:4px 8px;font-style:normal}.proposal-card-head em.pending[data-v-88e4447b]{color:#9a6200;background:#fff0d6}.proposal-card-head em.revision_required[data-v-88e4447b]{color:#b53434;background:#ffe8e8}.proposal-card-head em.approved[data-v-88e4447b]{color:#13765a;background:#e2f7ef}.proposal-card h4[data-v-88e4447b]{margin:12px 0 6px;font-size:17px}.proposal-card>p[data-v-88e4447b]{color:#6e7b8e;min-height:38px;margin:0;font-size:13px;line-height:1.5}.proposal-card dl[data-v-88e4447b]{grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 0;display:grid}.proposal-card dl div[data-v-88e4447b]{background:#f2f5f9;border-radius:8px;padding:8px}.proposal-card dt[data-v-88e4447b]{color:#8b97a8;font-size:11px}.proposal-card dd[data-v-88e4447b]{margin:3px 0 0;font-weight:700}.proposal-note[data-v-88e4447b],.proposal-task-link[data-v-88e4447b]{color:#7d5412;background:#fff3e0;border-radius:8px;margin-top:10px;padding:9px 10px;font-size:12px}.proposal-note strong[data-v-88e4447b]{margin-bottom:3px;display:block}.proposal-task-link[data-v-88e4447b]{color:#176c53;background:#e8f6f0}.proposal-card footer[data-v-88e4447b]{justify-content:flex-end;margin-top:14px}.proposal-empty[data-v-88e4447b]{color:#8b97a8;text-align:center;border:1px dashed #dce4ef;border-radius:12px;padding:34px}.split-actions[data-v-88e4447b]{justify-content:space-between;width:100%}.split-actions>div[data-v-88e4447b]{display:flex}@media (width<=900px){.proposal-actions[data-v-88e4447b]{justify-content:flex-start;margin-top:0}.proposal-list[data-v-88e4447b]{grid-template-columns:1fr}}.task-delete-panel[data-v-bfb7f2e5]{border-top:1px solid #f0d7d7;margin-top:24px;padding-top:20px}form[data-v-bfb7f2e5]{background:#fff7f7;border:1px solid #efc4c4;border-radius:12px;padding:16px}h4[data-v-bfb7f2e5]{color:#a42c2c;overflow-wrap:anywhere;margin:0 0 12px}p[data-v-bfb7f2e5]{color:#805353;font-size:13px;line-height:1.7}label[data-v-bfb7f2e5]{gap:8px;font-size:13px;display:grid}strong[data-v-bfb7f2e5]{overflow-wrap:anywhere}input[data-v-bfb7f2e5]{box-sizing:border-box;border:1px solid #d7dce5;border-radius:8px;width:100%;padding:10px}.delete-buttons[data-v-bfb7f2e5]{justify-content:flex-end;gap:12px;margin-top:16px;display:flex}:root{--primary:#315fce;--primary-dark:#21479f;--ink:#172033;--muted:#6c778c;--line:#dde3ed;--surface:#fff;--success:#16836c;--danger:#c54848;--warning:#b66b07;--radius-control:8px;--radius-card:12px;--radius-dialog:16px;--shadow-float:0 16px 42px #192a4c24;--shadow-card-hover:0 10px 26px #192a4c17;color:#172033;font-synthesis:none;text-rendering:optimizelegibility;background:#f3f6fb;font-family:Inter,Microsoft YaHei,PingFang SC,system-ui,sans-serif}*{box-sizing:border-box}body{background:#f3f6fb;min-width:1080px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{grid-template-columns:216px 1fr;min-height:100vh;display:grid}.sidebar{color:#dbe4ff;background:linear-gradient(#172a59 0%,#101d3d 100%);flex-direction:column;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;padding:0 8px 28px;display:flex}.brand strong{color:#fff;font-size:17px;display:block}.brand-logo{object-fit:contain;flex:none;width:36px;height:36px;display:block}.brand-logo.large{border-radius:12px;width:46px;height:46px;box-shadow:0 8px 20px #0a0a0a2e}.sidebar-brand-logo{padding:3px}.main-nav{gap:6px;display:grid}.main-nav a{color:#bdc9e5;border-radius:9px;align-items:center;gap:12px;padding:11px 12px;font-size:14px;text-decoration:none;transition:all .18s;display:flex}.main-nav a:hover{color:#fff;background:#ffffff0f}.main-nav a.router-link-active{color:#fff;background:#315fce;box-shadow:0 8px 20px #11265459}.nav-count{color:#315fce;background:#fff;border-radius:99px;place-items:center;min-width:22px;height:20px;margin-left:auto;padding:0 6px;font-size:10px;font-style:normal;font-weight:800;display:grid}.nav-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 20px;width:20px;height:20px}.nav-icon path:first-child{fill:currentColor;stroke:none}.nav-icon.calendar path,.nav-icon.note path{fill:none;stroke:currentColor}.main-area{min-width:0}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;justify-content:flex-end;align-items:center;height:56px;padding:0 30px;display:flex}.eyebrow{color:#8893a6;letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:700}.account{align-items:center;gap:10px;display:flex}.avatar{color:#fff;background:var(--avatar-color);border-radius:11px;place-items:center;width:36px;height:36px;font-weight:700;display:grid}.account-copy strong,.account-copy small{display:block}.account-copy strong{font-size:13px}.account-copy small{color:var(--muted);margin-top:3px;font-size:10px}.text-button{color:var(--muted);background:0 0;border:0;margin-left:12px;padding:7px 10px}.text-button:hover{color:var(--primary)}.workspace{padding:28px 30px 48px}.workspace-heading{justify-content:space-between;align-items:flex-end;margin-bottom:22px;display:flex}.workspace-heading .eyebrow{display:none}.workspace-heading h2{letter-spacing:-.02em;margin:0 0 7px;font-size:26px;line-height:1.2}.workspace-heading p{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.primary-button{color:#fff;background:var(--primary);border:0;border-radius:9px;width:100%;min-height:44px;font-weight:700;box-shadow:0 8px 20px #315fce33}.primary-button:hover:not(:disabled){background:var(--primary-dark)}.primary-button.compact{width:auto;min-height:38px;padding:0 16px;font-size:12px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:21px;box-shadow:0 7px 24px #1c2d4f0d}.project-card-head{justify-content:space-between;align-items:center;display:flex}.project-code{color:var(--primary);letter-spacing:.08em;font-size:11px;font-weight:800}.project-status{color:var(--success);background:#e9f7f3;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:700}.project-card h3{margin:14px 0 7px;font-size:17px}.project-card>p{min-height:38px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.progress-copy{color:var(--muted);justify-content:space-between;margin-top:18px;font-size:11px;display:flex}.progress-copy strong{color:var(--ink)}.progress-track{background:#e9edf5;border-radius:99px;height:7px;margin-top:8px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#315fce,#5f8dfa);height:100%;display:block}.project-metrics{border-top:1px solid #edf0f5;border-bottom:1px solid #edf0f5;grid-template-columns:repeat(3,1fr);margin-top:18px;padding:13px 0;display:grid}.project-metrics span{color:var(--muted);text-align:center;font-size:10px}.project-metrics span+span{border-left:1px solid #edf0f5}.project-metrics strong{color:var(--ink);margin-bottom:4px;font-size:16px;display:block}.project-foot{color:#7d8798;justify-content:space-between;margin-top:14px;font-size:10px;display:flex}.state-panel,.migration-panel{min-height:180px;color:var(--muted);background:#ffffffa6;border:1px dashed #cfd7e5;border-radius:13px;justify-content:center;align-items:center;padding:28px;display:flex}.error-state{color:var(--danger);flex-direction:column;gap:7px}.error-state small{color:var(--muted)}.migration-panel{justify-content:flex-start;gap:18px}.migration-index{color:#cbd5e9;font-size:34px;font-weight:800}.migration-panel h3{color:var(--ink);margin:0 0 8px}.migration-panel p{margin:0;font-size:13px}.login-page{background:#f4f7fc;grid-template-columns:1.15fr .85fr;min-height:100vh;display:grid}.login-intro{color:#fff;background:radial-gradient(circle at 20% 18%,#5e8eff4d,#0000 30%),linear-gradient(145deg,#162b5c,#0f1d3d 72%);flex-direction:column;justify-content:center;padding:9vh 8vw;display:flex}.login-intro h1{letter-spacing:-.04em;max-width:690px;margin:0 0 20px;font-size:clamp(34px,4vw,58px);line-height:1.18}.login-features{gap:36px;margin-top:64px;display:flex}.login-features span{color:#d5def1;font-size:12px}.login-features strong{color:#6f95ff;margin-right:8px}.login-panel{place-items:center;padding:50px;display:grid}.login-card{background:#fff;border:1px solid #e0e5ee;border-radius:16px;width:min(390px,100%);padding:38px;box-shadow:0 24px 70px #192a4c1a}.login-heading{margin:24px 0}.login-heading>span{color:var(--primary);letter-spacing:.08em;font-size:11px;font-weight:800}.login-heading h2{margin:7px 0;font-size:24px}.login-heading p{color:var(--muted);margin:0;font-size:12px}.login-card form{gap:16px;display:grid}.login-card label{color:#4f596b;gap:7px;font-size:12px;font-weight:700;display:grid}.login-card input{height:43px;color:var(--ink);background:#fbfcfe;border:1px solid #d6dce7;border-radius:8px;outline:none;padding:0 12px}.login-card input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #315fce1a}.login-password-field{position:relative}.login-password-field input{width:100%;padding-right:46px}.password-visibility{color:#738096;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:34px;height:33px;padding:0;display:grid;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.password-visibility:hover,.password-visibility:focus-visible{color:var(--primary);background:#edf2ff;outline:none}.password-visibility svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.form-error{color:var(--danger);margin:-3px 0 0;font-size:11px}.summary-strip{border:1px solid var(--line);border-radius:var(--radius-card);background:#fff;grid-template-columns:repeat(4,1fr);margin-bottom:18px;padding:18px 20px;display:grid}.summary-strip>div{padding:0 20px}.summary-strip>div:first-child{padding-left:0}.summary-strip>div+div{border-left:1px solid #e8ecf2}.summary-strip span,.summary-strip strong{display:block}.summary-strip span{color:var(--muted);font-size:12px}.summary-strip strong{margin-top:6px;font-size:24px;line-height:1}.filter-bar{gap:10px;margin-bottom:14px;display:flex}.control-input{min-width:140px;height:38px;color:var(--ink);background:#fff;border:1px solid #d5dce8;border-radius:8px;outline:none;padding:0 11px}.control-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #315fce14}.search-control{width:320px}.inline-notice{border-radius:8px;margin:0 0 12px;padding:10px 13px;font-size:12px}.success-notice{color:#126c59;background:#e8f7f2}.error-notice{color:#a43535;background:#fceaea}.data-panel{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #1c2d4f0a}.data-table{border-collapse:collapse;width:100%}.data-table th{color:#6e7a8e;text-align:left;background:#f8f9fc;padding:13px 14px;font-size:12px;font-weight:700}.data-table td{color:#445064;vertical-align:middle;border-top:1px solid #edf0f5;padding:14px;font-size:13px}.data-table tr.muted{opacity:.55}.person-cell{align-items:center;gap:10px;display:flex}.person-cell strong,.person-cell small,.cell-main,.cell-sub{display:block}.person-cell strong,.cell-main{color:var(--ink);font-size:14px}.person-cell small,.cell-sub{color:#7e899b;margin-top:4px;font-size:12px}.role-badge,.status-badge{border-radius:99px;align-items:center;min-height:25px;padding:0 9px;font-size:11px;font-weight:800;display:inline-flex}.role-badge.manager{color:#315fce;background:#eaf0ff}.role-badge.admin{color:#8a4b12;background:#fff0dc}.role-badge.member,.status-badge.active{color:#177765;background:#e8f6f2}.status-badge.inactive,.status-badge.archived{color:#7e8796;background:#edf0f4}.table-actions{flex-wrap:wrap;gap:5px;display:flex}.table-actions button{color:#526079;background:#f7f9fc;border:1px solid #e2e7ef;border-radius:7px;min-height:30px;padding:0 9px;font-size:12px}.table-actions button:hover{color:var(--primary);background:#e9effd}.table-actions button.danger{color:#b23e3e}.empty-cell{height:120px;color:var(--muted);text-align:center!important}.secondary-button{color:#4f5b70;background:#fff;border:1px solid #d5dce8;border-radius:8px;min-height:36px;padding:0 14px;font-weight:700}.secondary-button:hover{color:var(--primary);border-color:#aebee6}.app-dialog{background:0 0;border:0;border-radius:15px;width:min(720px,100vw - 60px);padding:0;box-shadow:0 28px 90px #0d1c3b40}.app-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f1d3d7a}.small-dialog{width:min(460px,100vw - 60px)}.participant-dialog{width:min(860px,100vw - 60px)}.dialog-card{border-radius:var(--radius-dialog);background:#fff;padding:26px}.dialog-head{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.dialog-head h3{margin:5px 0 0;font-size:20px}.dialog-head p{color:var(--muted);margin:6px 0 0;font-size:11px}.dialog-close{color:#7b8596;background:#f1f3f7;border:0;border-radius:8px;width:32px;height:32px;font-size:19px}.form-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.form-grid label,.single-field{color:#526079;gap:7px;font-size:12px;font-weight:700;display:grid}.form-grid input,.form-grid select,.single-field input{width:100%;height:40px;color:var(--ink);background:#fbfcfe;border:1px solid #d5dce8;border-radius:8px;outline:none;padding:0 10px}.form-grid input[type=color]{padding:5px}.form-grid input:focus,.form-grid select:focus,.single-field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #315fce14}.form-grid input:disabled,.form-grid select:disabled{color:#8c95a5;background:#eef1f5}.project-code-builder{background:#fbfcfe;border:1px solid #d5dce8;border-radius:8px;grid-template-columns:auto minmax(90px,1fr);align-items:center;height:40px;display:grid;overflow:hidden}.project-code-builder:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #315fce14}.project-code-builder span{color:#59667b;white-space:nowrap;background:#f0f3f8;align-items:center;height:100%;padding:0 0 0 10px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;display:flex}.form-grid .project-code-builder input{height:38px;box-shadow:none;text-transform:uppercase;border:0;border-radius:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.form-grid label>small{color:#8791a2;font-size:10px;font-weight:500}.project-dialog-error{margin-top:14px;margin-bottom:0}.form-grid .checkbox-field,.checkbox-field{color:#526079;align-items:center;gap:8px;min-height:40px;font-size:12px;font-weight:700;display:flex}.form-grid .checkbox-field input,.checkbox-field input{width:16px;height:16px;accent-color:var(--primary);margin:0}.dialog-actions{border-top:1px solid #edf0f5;justify-content:flex-end;gap:8px;margin-top:22px;padding-top:17px;display:flex}.project-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.project-admin-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:20px;box-shadow:0 7px 24px #1c2d4f0d}.project-admin-card h3{margin:14px 0 7px;font-size:17px}.project-admin-card>p{min-height:38px;color:var(--muted);margin:0;font-size:11px;line-height:1.6}.project-detail-list{margin:17px 0 0}.project-detail-list>div{border-top:1px solid #edf0f5;grid-template-columns:74px 1fr;gap:10px;padding:9px 0;display:grid}.project-detail-list dt{color:#8b95a7;font-size:10px}.project-detail-list dd{color:#445064;margin:0;font-size:10px;line-height:1.5}.card-actions{justify-content:flex-end;margin-top:15px;display:flex}.participant-columns{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.participant-columns>section{background:#fafbfc;border:1px solid #e0e5ed;border-radius:10px;min-height:300px;padding:15px}.participant-head{justify-content:space-between;align-items:center;display:flex}.participant-head h4{margin:0;font-size:14px}.participant-head span{color:var(--primary);background:#eaf0ff;border-radius:99px;padding:3px 7px;font-size:9px;font-weight:800}.participant-columns section>p{color:var(--muted);margin:6px 0 13px;font-size:9px}.participant-option{cursor:pointer;background:#fff;border:1px solid #e1e6ee;border-radius:8px;grid-template-columns:auto auto 1fr;align-items:center;gap:9px;margin-top:7px;padding:9px;display:grid}.participant-option:has(input:checked){background:#f2f6ff;border-color:#9fb4eb}.participant-option.locked{cursor:default}.participant-option input{accent-color:var(--primary)}.avatar.mini{border-radius:8px;width:28px;height:28px;font-size:10px}.participant-option strong,.participant-option small{display:block}.participant-option small{color:var(--muted);margin-top:3px;font-size:8px}.dialog-help{color:#8a6827;background:#fff5dc;border-radius:7px;margin:12px 0 0;padding:9px 11px;font-size:9px}.password-required-page{background:radial-gradient(circle at 20% 18%,#5e8eff2e,#0000 30%),#edf2fa;place-items:center;min-height:100vh;padding:48px;display:grid}.password-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(470px,100%);padding:34px;box-shadow:0 24px 70px #192a4c1f}.password-heading{margin:24px 0}.password-heading h1{margin:7px 0;font-size:24px}.password-heading p{color:var(--muted);margin:0;font-size:12px}.password-form{gap:14px;display:grid}.password-form label{color:#4f596b;gap:7px;font-size:11px;font-weight:700;display:grid}.password-form input{border:1px solid #d6dce7;border-radius:8px;outline:none;height:42px;padding:0 11px}.password-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #315fce1a}.password-form>small{color:var(--muted);font-size:10px}.password-logout{justify-self:center}@media (width<=1180px){.project-grid,.project-admin-grid{grid-template-columns:1fr}.login-intro{padding:8vh 6vw}}.task-summary-strip{margin-bottom:12px}.task-summary-strip small{color:#8b95a6;margin-top:3px;font-size:8px;display:block}.warning-text{color:#c77b08!important}.danger-text{color:#d64045!important}.board-filters{flex-wrap:wrap;align-items:center;margin:0 0 16px}.board-filters .control-input{min-width:150px}.risk-toggle{color:#4e5a70;background:#fff;border:1px solid #d7deea;border-radius:8px;align-items:center;gap:7px;height:38px;padding:0 13px;font-size:10px;font-weight:700;display:inline-flex}.risk-toggle input{accent-color:#d64045}.filter-count{color:var(--muted);margin-left:auto;font-size:10px}.kanban-grid{grid-template-columns:repeat(var(--kanban-columns,6), minmax(210px, 1fr));align-items:start;gap:12px;padding-bottom:12px;display:grid;overflow-x:auto}.kanban-column{min-width:210px}.kanban-column>header{color:#344056;align-items:center;gap:7px;height:34px;font-size:11px;display:flex}.kanban-column>header em{color:#6d788b;background:#fff;border:1px solid #dce2eb;border-radius:99px;place-items:center;min-width:21px;height:21px;margin-left:auto;font-size:9px;font-style:normal;display:grid}.column-dot{background:#8994a6;border-radius:50%;width:7px;height:7px}.column-dot.assigned{background:#188bb0}.column-dot.in-progress{background:#2864df}.column-dot.blocked{background:#db4148}.column-dot.review{background:#cc7a00}.column-dot.done{background:#168b6f}.kanban-list{background:#f4f6f9;border:1px dashed #d8dee8;border-radius:11px;align-content:start;gap:9px;min-height:180px;padding:8px;display:grid}.task-card{cursor:pointer;background:#fff;border:1px solid #dce2eb;border-radius:10px;padding:13px;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 14px #192a480a}.task-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #192a4817}.task-card.risk-card{border-color:#efb8ba}.task-card-top,.task-card footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.priority-badge{color:#2864df;background:#eaf0ff;border-radius:5px;padding:3px 6px;font-size:8px;font-weight:800}.priority-badge.urgent{color:#d63f45;background:#ffeaeb}.priority-badge.high{color:#b86c00;background:#fff1d4}.priority-badge.low{color:#617087;background:#eef1f5}.task-card h3{color:#17243a;margin:11px 0 6px;font-size:13px;line-height:1.35}.task-card>p{color:#69758a;margin:0;font-size:9px;line-height:1.55}.task-card .block-reason{color:#c53c42;background:#fff0f0;border-radius:6px;margin-top:8px;padding:6px}.task-card footer{color:#59667b;margin-top:12px;font-size:9px}.mini-progress{background:#e9edf3;border-radius:99px;height:4px;margin-top:10px;overflow:hidden}.mini-progress span{border-radius:inherit;background:#3970e2;height:100%;display:block}.empty-column,.empty-day{text-align:center;color:#98a1b0;padding:28px 8px;font-size:9px}.task-form-grid textarea,.task-actions-panel textarea{resize:vertical;width:100%;font:inherit;border:1px solid #d5dce8;border-radius:8px;outline:none;padding:10px}.span-two{grid-column:1/-1}.task-detail-dialog{width:min(980px,100vw - 60px)}.task-detail-layout{grid-template-columns:minmax(0,1.6fr) minmax(250px,.8fr);gap:20px;display:grid}.task-meta-list{border:1px solid #e3e7ee;border-radius:9px;grid-template-columns:repeat(2,1fr);margin:0;display:grid;overflow:hidden}.task-meta-list>div{border-bottom:1px solid #edf0f4;gap:4px;padding:11px;display:grid}.task-meta-list dt{color:#8a94a5;font-size:9px}.task-meta-list dd{margin:0;font-size:11px;font-weight:700}.detail-copy{background:#f6f8fb;border-radius:8px;margin-top:12px;padding:12px}.detail-copy p{color:#5f6b7e;white-space:pre-wrap;margin:6px 0 0;font-size:10px;line-height:1.65}.warning-box{background:#fff2e9}.detail-edit-row{justify-content:flex-end;margin-top:12px;display:flex}.task-actions-panel{border-top:1px solid #e7ebf1;gap:9px;margin-top:16px;padding-top:15px;display:grid}.dialog-feedback{margin:0}.task-actions-panel label{color:#526079;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;font-size:10px;font-weight:700;display:grid}.image-dropzone{color:#516078;text-align:center;background:#f8faff;border:1px dashed #b8c5dc;border-radius:9px;place-content:center;min-height:78px;padding:13px;transition:border-color .15s,background .15s;position:relative;grid-template-columns:1fr!important;gap:4px!important;display:grid!important}.image-dropzone:hover,.image-dropzone.dragging{border-color:var(--primary);background:#edf3ff}.image-dropzone input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.image-dropzone strong{color:#33415a;font-size:10px}.image-dropzone small{color:#8994a6;font-size:8px;font-weight:500}.selected-image-grid{grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:8px;display:grid}.selected-image-grid figure{background:#fff;border:1px solid #dce3ee;border-radius:8px;margin:0;position:relative;overflow:hidden}.selected-image-grid img{object-fit:cover;background:#edf0f5;width:100%;height:78px;display:block}.selected-image-grid figcaption{color:#46536a;text-overflow:ellipsis;white-space:nowrap;padding:6px 7px;font-size:8px;overflow:hidden}.selected-image-grid figcaption small{color:#929cab;margin-top:2px;display:block}.selected-image-grid button{color:#fff;background:#172033b8;border:0;border-radius:6px;width:22px;height:22px;position:absolute;top:5px;right:5px}.review-actions{justify-content:flex-end;gap:8px;display:flex}.danger-button{color:#c8353c;background:#fff5f5;border:1px solid #ebc0c2;border-radius:8px;min-height:36px;padding:0 14px;font-size:10px;font-weight:800}.history-panel{background:#fafbfc;border:1px solid #e2e6ed;border-radius:10px;padding:14px}.history-panel>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.history-panel h4{margin:0;font-size:12px}.history-panel>header span{color:#8b95a6;font-size:9px}.history-list{margin-top:10px}.history-panel.expanded .history-list{max-height:430px;padding-right:5px;overflow-y:auto}.history-panel article{border-top:1px solid #e7ebf0;padding:10px 0}.history-panel article p{color:#5e6a7d;white-space:pre-wrap;margin:5px 0;font-size:9px}.history-panel article small{color:#939cab;font-size:8px}.history-attachments{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:7px 0;display:grid}.history-attachments a{color:#536079;background:#fff;border:1px solid #e0e5ed;border-radius:7px;text-decoration:none;overflow:hidden}.history-attachments img{object-fit:cover;background:#edf0f5;width:100%;height:72px;display:block}.history-attachments span{text-overflow:ellipsis;white-space:nowrap;padding:5px 6px;font-size:7px;display:block;overflow:hidden}.history-toggle{color:#315fce;background:#f5f8ff;border:1px solid #d8dfeb;border-radius:7px;width:100%;margin-top:8px;padding:9px;font-size:9px;font-weight:800}.history-toggle:hover{background:#edf3ff;border-color:#b9c8e9}.week-controls{gap:7px;display:flex}.week-toolbar{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.week-toolbar strong{font-size:14px}.week-grid{grid-template-columns:repeat(7,minmax(150px,1fr));gap:9px;padding-bottom:12px;display:grid;overflow-x:auto}.week-day{background:#f7f8fa;border:1px solid #dce2eb;border-radius:11px;min-width:150px;min-height:440px}.week-day.today{border-color:#8eacef;box-shadow:0 0 0 2px #315fce14}.week-day>header{background:#fff;border-bottom:1px solid #e2e6ed;border-radius:11px 11px 0 0;align-items:center;gap:7px;padding:11px;display:flex}.week-day>header span{color:#647087;font-size:9px}.week-day>header em{color:var(--primary);margin-left:auto;font-size:9px;font-style:normal}.week-task-list{align-content:start;gap:8px;padding:8px;display:grid}.week-task{background:#fff;border-left:3px solid #376ddd;border-radius:7px;padding:10px;box-shadow:0 3px 10px #1c2c490d}.week-task.urgent{border-left-color:#d93e45}.week-task.high{border-left-color:#cf7a05}.week-task.low{border-left-color:#8390a2}.week-task>div:first-child{color:#738096;justify-content:space-between;font-size:8px;display:flex}.week-task h3{margin:8px 0 5px;font-size:11px;line-height:1.4}.week-task p{color:#6a7689;margin:0;font-size:8px}.week-note{color:#8791a2;font-size:9px}.stage-mini-list{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px;display:grid}.stage-mini-list span{color:#69758a;background:#f1f3f7;border-radius:6px;justify-content:space-between;padding:7px;display:flex}.stage-mini-list span.in_progress{color:#285fcf;background:#edf2ff}.stage-mini-list span.done{color:#157a63;background:#e9f7f3}.stage-mini-list strong,.stage-mini-list em{font-size:8px;font-style:normal}.project-actions{flex-wrap:wrap;gap:7px}.archived-readonly-note{color:#7e8796;align-self:center;margin-right:auto;font-size:9px;font-weight:700}.text-button.danger{color:#c7373e}.project-create-people{margin-top:17px}.stage-dialog{width:min(980px,100vw - 60px)}.stage-edit-list{gap:9px;display:grid}.stage-edit-list article{background:#fafbfc;border:1px solid #e0e5ed;border-radius:9px;padding:12px}.stage-edit-list article>header{justify-content:space-between;margin-bottom:10px;display:flex}.stage-edit-list article>header strong{font-size:12px}.stage-edit-list article>header span{color:#7c8799;font-size:9px}.stage-edit-fields{grid-template-columns:120px 1fr 145px 1.2fr;gap:9px;display:grid}.stage-edit-fields label{color:#667287;gap:5px;font-size:9px;font-weight:700;display:grid}.stage-edit-fields input,.stage-edit-fields select{background:#fff;border:1px solid #d7dde7;border-radius:7px;width:100%;height:36px;padding:0 8px}.range-field{grid-template-columns:1fr 38px;align-items:center;gap:7px;height:36px;display:grid}.range-field input{border:0;padding:0}.range-field span{text-align:right;font-size:9px}.password-generator{grid-template-columns:1fr auto auto;gap:6px;display:grid}.password-generator button{color:#315fce;background:#f5f8ff;border:1px solid #d2d9e5;border-radius:7px;padding:0 9px;font-size:9px;font-weight:700}.password-generator.completed{grid-template-columns:1fr auto}.password-generator input:read-only{color:#174f42;background:#f1faf7;border-color:#b7dbd1}.password-reset-help{margin-top:12px}.password-reset-feedback{border-radius:7px;margin:12px 0 0;padding:9px 11px;font-size:9px}.password-reset-feedback.success{color:#126c59;background:#e8f7f2}.password-reset-feedback.failed{color:#a43535;background:#fceaea}.created-account-result{gap:14px;display:grid}.created-account-summary{background:#f7f9fc;border:1px solid #dce5f0;border-radius:9px;align-items:center;gap:10px;padding:12px;display:flex}.created-account-summary>span:last-child{gap:3px;display:grid}.created-account-summary strong{color:#17233a;font-size:13px}.created-account-summary small{color:#768399;font-size:10px}.personal-notes-page{max-width:1120px}.personal-notes-heading{margin-bottom:16px}.note-composer{border-radius:var(--radius-card);background:#fff;border:1px solid #dce3ee;margin-bottom:18px;padding:18px;box-shadow:0 8px 24px #1c2d4f0a}.note-composer-main{grid-template-columns:1fr auto;gap:10px;display:grid}.note-composer-main input{min-width:0;height:46px;color:var(--ink);background:#fbfcfe;border:1px solid #cfd8e7;border-radius:9px;outline:none;padding:0 14px;font-size:14px}.note-composer-main input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #315fce17}.note-composer-main .primary-button{min-width:84px}.note-composer-date{align-items:center;gap:7px;margin-top:11px;display:flex}.note-composer-date>span{color:#8993a4;margin-right:3px;font-size:11px}.note-composer-date button{color:#657187;background:#f8f9fb;border:1px solid #d9e0eb;border-radius:7px;height:30px;padding:0 10px;font-size:11px}.note-composer-date button:hover,.note-composer-date button.active{color:var(--primary);background:#edf3ff;border-color:#b9c8ea}.note-composer-date input{color:#657187;background:#fff;border:1px solid #d9e0eb;border-radius:7px;height:30px;padding:0 8px;font-size:11px}.personal-note-board{gap:14px;display:grid}.personal-note-section,.personal-note-completed{border-radius:var(--radius-card);background:#fff;border:1px solid #dce3ee;overflow:hidden}.personal-note-section>header{border-bottom:1px solid #edf0f5;align-items:center;gap:8px;height:48px;padding:0 17px;display:flex}.personal-note-section>header h3{margin:0;font-size:14px}.personal-note-section>header span{color:#627087;background:#eef1f5;border-radius:99px;place-items:center;min-width:22px;height:22px;font-size:10px;font-weight:800;display:grid}.personal-note-empty{color:#929cab;text-align:center;padding:44px 20px;font-size:12px}.personal-note-row{border-top:1px solid #edf0f5;grid-template-columns:24px minmax(0,1fr) 142px 30px;align-items:center;gap:9px;min-height:54px;padding:8px 13px 8px 17px;transition:background .15s;display:grid}.personal-note-section>header+.personal-note-row{border-top:0}.personal-note-row:hover,.personal-note-row:focus-within{background:#fafcff}.personal-note-row.overdue{box-shadow:inset 3px 0 #d45458}.personal-note-row.today{box-shadow:inset 3px 0 #d58a21}.note-check{color:#fff;background:#fff;border:1.5px solid #b7c2d3;border-radius:6px;place-items:center;width:19px;height:19px;padding:0;font-size:11px;font-weight:800;display:grid}.note-check:hover{border-color:var(--primary);background:#edf3ff}.note-check.checked{background:#25846f;border-color:#25846f}.note-content{color:#263248;background:0 0;border:1px solid #0000;border-radius:6px;outline:none;width:100%;min-width:0;height:34px;padding:0 7px;font-size:13px}.note-content:hover{background:#f5f7fa}.note-content:focus{background:#fff;border-color:#b9c8ea;box-shadow:0 0 0 2px #315fce12}.note-date{color:#748096;background:0 0;border:1px solid #0000;border-radius:6px;outline:none;width:142px;height:32px;padding:0 7px;font-size:11px}.note-date:hover,.note-date:focus{background:#fff;border-color:#d7deea}.note-delete{color:#9ca5b3;opacity:0;background:0 0;border:0;border-radius:7px;width:28px;height:28px;padding:0;font-size:19px;transition:opacity .15s,color .15s,background .15s}.personal-note-row:hover .note-delete,.personal-note-row:focus-within .note-delete{opacity:1}.note-delete:hover{color:#c7373e;background:#fff0f0}.personal-note-completed summary{color:#677388;cursor:pointer;padding:15px 17px;font-size:12px;font-weight:700}.personal-note-completed[open] summary{border-bottom:1px solid #edf0f5}.personal-note-row.completed .note-content{color:#929cab;text-decoration:line-through}.personal-note-row.completed .note-date{color:#a0a8b4}.personal-notes-help{color:#929cab;margin:13px 2px 0;font-size:11px}@media (width<=1180px){.task-summary-strip{grid-template-columns:repeat(2,1fr)}.task-summary-strip>div:nth-child(3){border-left:0}.task-detail-layout{grid-template-columns:1fr}.stage-edit-fields{grid-template-columns:repeat(2,1fr)}}.inline-notice{font-size:13px;line-height:1.5}.control-input{font-size:13px}.secondary-button,.primary-button.compact,.danger-button{font-size:12px}.data-panel{border-radius:var(--radius-card);box-shadow:none}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{background:#fafcff}.project-status,.project-metrics span,.project-foot,.project-detail-list dt,.project-detail-list dd,.participant-head span,.participant-columns section>p,.participant-option small,.dialog-help{font-size:11px}.participant-option strong{font-size:12px}.stage-edit-list article>header span,.stage-edit-fields label,.range-field span,.password-generator button,.password-reset-feedback,.archived-readonly-note{font-size:11px}.task-summary-strip>div,.overview-summary-strip>div{position:relative}.task-summary-strip>div:before,.overview-summary-strip>div:before{content:"";background:#4d7be0;border-radius:0 0 3px 3px;height:3px;position:absolute;top:-18px;left:20px;right:20px}.task-summary-strip>div:nth-child(2):before,.task-summary-strip>div:nth-child(4):before,.overview-summary-strip>div:nth-child(2):before,.overview-summary-strip>div:nth-child(3):before{background:#d45458}.task-summary-strip>div:nth-child(3):before,.overview-summary-strip>div:nth-child(4):before{background:#d58a21}.task-summary-strip small,.overview-summary-strip small{color:#7f8a9b;margin-top:5px;font-size:11px;display:block}.board-filters{background:#ffffffc2;border:1px solid #e1e6ee;border-radius:10px;padding:12px}.risk-toggle,.filter-count{font-size:12px}.kanban-grid{gap:14px}.kanban-column>header{z-index:2;color:#344056;background:#f3f6fb;height:40px;padding:0 6px;font-size:12px;position:sticky;top:0}.kanban-column>header em{min-width:23px;height:23px;font-size:11px}.kanban-list{border-radius:var(--radius-card);background:#eef2f7;border:0;min-height:128px;padding:9px}.kanban-column.assigned .kanban-list{background:#edf7fa}.kanban-column.in-progress .kanban-list{background:#edf2fc}.kanban-column.blocked .kanban-list{background:#fbefef}.kanban-column.review .kanban-list{background:#fbf5e9}.kanban-column.done .kanban-list{background:#edf7f4}.task-card{box-shadow:none;border-color:#cdd6e3e6;border-radius:10px;padding:14px}.task-card:hover{box-shadow:var(--shadow-card-hover)}.task-card:focus-visible{outline-offset:2px;outline:3px solid #315fce33}.task-card-top small{color:#748299;font-size:11px}.priority-badge{padding:4px 7px;font-size:11px}.task-card h3{margin:12px 0 7px;font-size:15px}.task-card>p{color:#637087;font-size:12px}.task-card footer{margin-top:13px;font-size:12px}.empty-column,.empty-day{padding:24px 8px;font-size:12px}.task-meta-list dt{font-size:11px}.task-meta-list dd{font-size:13px}.detail-copy strong,.detail-copy p,.task-actions-panel label,.image-dropzone strong{font-size:12px}.image-dropzone small,.selected-image-grid figcaption{font-size:11px}.history-panel{background:#f5f7fa;border:0}.history-panel h4{font-size:14px}.history-panel>header span{font-size:11px}.history-panel article strong,.history-panel article p{font-size:12px}.history-panel article small{font-size:11px}.history-attachments span{font-size:10px}.history-toggle,.week-day>header span,.week-day>header em{font-size:11px}.week-day>header strong{font-size:13px}.week-task>div:first-child{font-size:10px}.week-task h3{font-size:13px}.week-task p,.week-note{font-size:11px}.stage-mini-list strong,.stage-mini-list em{font-size:10px}.overview-grid{grid-template-columns:1fr;gap:14px;display:grid}.overview-card{border-radius:var(--radius-card);background:#fff;border:1px solid #dce2eb;padding:20px;transition:border-color .15s,box-shadow .15s}.overview-card:hover{box-shadow:var(--shadow-card-hover);border-color:#cbd5e4}.overview-card.delayed{border-color:#e6abad}.overview-card-main{grid-template-columns:minmax(260px,.78fr) minmax(0,2fr);align-items:stretch;gap:24px;display:grid}.overview-card-summary{border-right:1px solid #e8ecf2;padding-right:23px}.overview-card-summary>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.overview-card-summary>header span{color:#61718a;letter-spacing:.06em;font-size:11px;font-weight:800}.overview-card-summary>header h3{margin:6px 0 0;font-size:18px}.overview-card-summary>header>strong{color:#2d60cf;font-size:28px;line-height:1}.overview-progress{height:8px;margin:16px 0}.overview-meta{color:#667287;grid-template-columns:1fr;gap:7px;font-size:12px;display:grid}.overview-stages{grid-template-columns:repeat(6,minmax(108px,1fr));align-items:stretch;gap:8px;padding-bottom:2px;display:grid;overflow-x:auto}.overview-stages>div{background:#f8f9fb;border:1px solid #e8ecf2;border-radius:9px;min-width:108px;padding:12px 11px;position:relative}.overview-stages>div:before{content:"";background:#aeb7c6;border-radius:0 0 3px 3px;height:3px;position:absolute;top:-1px;left:12px;right:12px}.overview-stages>div.in_progress:before{background:#356bdc}.overview-stages>div.done:before{background:#16836c}.overview-stages>div>div:first-child{gap:5px;display:grid}.overview-stages strong{font-size:12px}.overview-stages>div>div:first-child span{color:#68768b;font-size:11px}.stage-bar{background:#e2e7ef;border-radius:99px;height:5px;margin-top:10px;overflow:hidden}.stage-bar span{border-radius:inherit;background:#356bdc;height:100%;display:block}.overview-stages>div.done .stage-bar span{background:#16836c}.overview-stages small{color:#7c8798;margin-top:7px;font-size:10px;display:block}.overview-card>footer{color:#6f7b8e;border-top:1px solid #edf0f5;justify-content:space-between;align-items:center;margin-top:17px;padding-top:14px;font-size:12px;display:flex}@media (width<=1360px){.overview-card-main{grid-template-columns:minmax(240px,.7fr) minmax(0,1.6fr);gap:18px}.overview-stages{grid-template-columns:repeat(6,minmax(118px,1fr))}}@media (width<=1180px){.overview-card-main{grid-template-columns:1fr}.overview-card-summary{border-bottom:1px solid #e8ecf2;border-right:0;padding-bottom:17px;padding-right:0}}
