.boot-screen{background:var(--bg,#f8f9fb);z-index:20000;place-items:center;display:grid;position:fixed;inset:0}.modal-backdrop{padding:var(--space-5);background:var(--scrim,#1c1c1e66);-webkit-backdrop-filter:blur(8px)saturate(140%);z-index:5000;justify-content:center;align-items:center;animation:.18s ease-out bpm-modal-overlay-in;display:flex;position:fixed;inset:0}.modal-card{background:var(--color-surface,var(--surface,#fff));width:min(500px,100vw - 40px);max-height:calc(100dvh - 40px);color:var(--color-text,var(--text,#181b26));border:1px solid var(--color-border,var(--border,#e3e7ee));border-radius:var(--radius-2xl,16px);box-shadow:var(--shadow-overlay);padding:24px 32px;animation:.22s ease-out bpm-modal-window-in;overflow-y:auto}.modal-card--compact{width:min(420px,100vw - 40px)}.modal-card--wide{width:min(640px,100vw - 40px)}.modal-card>h2,.modal-card>h3{color:var(--color-text,var(--text,#181b26));font-size:var(--text-lg,18px);letter-spacing:-.01em;margin:0 0 18px;font-weight:600;line-height:1.25}.modal-card>.muted{margin:-8px 0 18px;line-height:1.5}.modal-card .field{color:var(--color-text-secondary,var(--text-muted,#6a7180));font-size:var(--text-xs,12px);letter-spacing:.01em;gap:6px;margin:14px 0 0;font-weight:500}.modal-card .field>input,.modal-card .field>select,.modal-card .field>textarea,.modal-card .date-field{border:1px solid var(--color-border-strong,var(--border,#d4d9e2));background:var(--color-surface,var(--surface,#fff));width:100%;min-height:38px;color:var(--color-text,var(--text,#181b26));font:inherit;font-size:var(--text-sm,13px);outline:none;padding:8px 12px;font-weight:400;transition:border-color .15s,box-shadow .15s,background .15s;border-radius:var(--radius-md,8px)!important}.modal-card .field>textarea{resize:vertical;min-height:76px}.modal-card .field>input:focus,.modal-card .field>select:focus,.modal-card .field>textarea:focus,.modal-card .date-field:focus{border-color:var(--color-primary,var(--accent,#4e5180));box-shadow:0 0 0 3px var(--color-primary-25,#4e518024)}.modal-card>.toolbar:last-child,.modal-card>.modal-buttons:last-child{justify-content:flex-end;gap:var(--space-2);margin:22px 0 0}.modal-card>.toolbar:last-child button,.modal-card>.modal-buttons:last-child button{min-height:36px;font-size:var(--text-sm,13px);padding:8px 16px;font-weight:600;border-radius:var(--radius-md,8px)!important}.bpm-confirm-modal{width:min(420px,100vw - 40px)}.bpm-confirm-message{color:var(--color-text-secondary,var(--text-muted,#6a7180));font-size:var(--text-sm,13px);white-space:pre-line;margin:0;line-height:1.55}.bpm-modal-danger{background:var(--color-danger,var(--status-failed,#c0553b))!important;color:var(--color-danger-text-on-solid)!important}.bpm-modal-danger:hover:not(:disabled){filter:brightness(.92)}body.bpm-modal-open{overflow:hidden}@keyframes bpm-modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes bpm-modal-window-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.modal-backdrop{padding:var(--space-3);align-items:center}.modal-card,.modal-card--compact,.modal-card--wide{width:100%;max-height:calc(100dvh - 24px);padding:20px 18px;border-radius:16px!important}.modal-card>.toolbar:last-child,.modal-card>.modal-buttons:last-child{flex-direction:column-reverse}.modal-card>.toolbar:last-child button,.modal-card>.modal-buttons:last-child button{width:100%;min-height:44px}}.form-error,.error-msg{color:var(--status-failed,#c0553b);font-size:var(--text-sm);margin:8px 0}.form-error--actionable{border:1px solid color-mix(in srgb, currentColor 22%, transparent);background:color-mix(in srgb, currentColor 5%, var(--surface,#fff));border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.form-error--actionable button{border:1px solid color-mix(in srgb, currentColor 28%, transparent);min-height:30px;color:inherit;font:inherit;background:0 0;border-radius:6px;padding:0 10px;font-weight:600}.form-ok{color:var(--status-done,#4e8a6a);font-size:var(--text-sm);margin:8px 0}.muted{color:var(--text-muted,#6a7180);font-size:var(--text-base)}.page-panel{max-width:none}.stack-form{padding:var(--space-4);border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);border-radius:10px;margin:20px 0 32px}.field{font-size:var(--text-sm);flex-direction:column;gap:6px;margin:12px 0;display:flex}.field input,.field select,.date-field{border:1px solid var(--border,#e3e7ee);background:var(--bg,#f8f9fb);color:inherit;font:inherit;border-radius:8px;padding:10px 12px}.btn-primary,.btn-ghost,.btn-secondary{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;padding:10px 16px}.btn-primary{background:var(--accent,#4e5180);color:var(--on-accent,#fff)}.btn-ghost,.btn-secondary{border-color:var(--border,#e3e7ee);color:inherit;background:0 0}.toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:12px 0;display:flex}.toolbar .btn-primary,.toolbar .btn-ghost{width:auto;margin-top:0}.project-bar{gap:var(--space-3);background:var(--surface,#fff);border:1px solid var(--border,#e3e7ee);box-shadow:var(--shadow-1,0 1px 2px #0f172a0f);border-radius:10px;flex-wrap:wrap;margin-bottom:14px;padding:12px 14px;display:flex}.project-bar-field{min-width:160px;margin:0}.linkish{color:var(--accent,#4e5180);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;padding:0}.data-table{border-collapse:separate;border-spacing:0;background:var(--surface,#fff);border:1px solid var(--border,#e3e7ee);width:100%;font-size:var(--text-sm);box-shadow:var(--shadow-1,0 1px 2px #0f172a0f);border-radius:10px;overflow:hidden}.data-table th,.data-table td{border-bottom:1px solid var(--border,#e3e7ee);text-align:left;vertical-align:middle;padding:10px 12px}.data-table th{z-index:1;background:var(--fill,#eef1f5);font-weight:600;font-size:var(--text-xs);text-transform:none;letter-spacing:.03em;color:var(--text-muted,#6a7180);position:sticky;top:0}.row-phase td{background:var(--accent-tint,#ececf5);font-weight:600}.row-step td{background:var(--fill,#eef1f5);font-weight:500}.status-select{border:1px solid var(--border,#e3e7ee);font:inherit;background:var(--surface,#fff);border-radius:6px;padding:4px 8px}.status-select[data-status=done]{border-color:var(--status-done,#4e8a6a);color:var(--status-done,#4e8a6a)}.status-select[data-status=progress],.status-select[data-status=review]{border-color:var(--accent,#4e5180);color:var(--accent,#4e5180)}.status-select[data-status=blocked]{border-color:var(--status-failed,#c0553b);color:var(--status-failed,#c0553b)}.kanban-page{max-width:none}.kanban-board{gap:var(--space-3);padding-bottom:var(--space-3);align-items:flex-start;display:flex;overflow-x:auto}.kanban-col{background:var(--fill,#eef1f5);border:1px solid var(--border,#e3e7ee);min-height:320px;box-shadow:var(--shadow-1,0 1px 2px #0f172a0f);border-radius:12px;flex:0 0 260px;padding:10px}.kanban-col-title{font-size:var(--text-xs);text-transform:none;letter-spacing:.04em;color:var(--text-muted,#6a7180);margin-bottom:10px;padding:0 4px;font-weight:600}.kanban-card{background:var(--surface,#fff);border:1px solid var(--border,#e3e7ee);padding:var(--space-3);margin-bottom:var(--space-2);cursor:grab;box-shadow:var(--shadow-1,0 1px 2px #0f172a0f);border-radius:10px;transition:box-shadow .15s,border-color .15s}.kanban-card:hover{box-shadow:var(--shadow-2,0 2px 8px #0f172a14);border-color:var(--accent-mid,#6e709c)}.kanban-card.highlight{border-color:var(--accent,#4e5180);box-shadow:inset 3px 0 0 var(--accent,#4e5180)}.kanban-card-title{font-weight:600;font-size:var(--text-base);margin-bottom:6px;line-height:1.35}.kanban-card .muted{font-size:var(--text-xs)}.approvals-panel{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);box-shadow:var(--shadow-1,0 1px 2px #0f172a0f);border-radius:10px;margin:12px 0 16px;padding:12px 14px}.cards-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.plan-card{background:var(--surface,#fff);border:1px solid var(--border,#e3e7ee);box-shadow:var(--shadow-1,0 1px 2px #0f172a0f);border-radius:10px;padding:12px 14px}.plan-page{max-width:none}.plan-sheet{background:var(--surface,#fff);border:1px solid var(--border,#e3e7ee);padding:var(--space-2);box-shadow:var(--shadow-1,0 1px 2px #0f172a0f);border-radius:12px;overflow:auto}.drawer-backdrop{z-index:900;background:#181b2666;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--surface,#fff);border-left:1px solid var(--border,#e3e7ee);flex-direction:column;width:min(420px,100vw);height:100%;display:flex;box-shadow:-8px 0 32px #181b2614}.drawer-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border,#e3e7ee);display:flex}.drawer-header h3{margin:0}.drawer-body{padding:var(--space-4);flex:1;overflow:auto}.drawer-comments{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border,#e3e7ee)}.comment-list{margin:0 0 12px;padding:0;list-style:none}.comment-list li{border-bottom:1px solid var(--border,#e3e7ee);font-size:var(--text-sm);padding:8px 0}.toast-host{z-index:6000;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed;bottom:16px;right:16px}.app-toast{background:var(--surface,#fff);border:1px solid var(--border,#e3e7ee);max-width:min(420px,100vw - 32px);box-shadow:var(--shadow-3,0 8px 24px #0f172a1f);color:var(--text,#181b26);font-size:var(--text-sm);overflow-wrap:break-word;pointer-events:auto;border-radius:8px;padding:10px 14px}.app-toast-ok{border-color:var(--status-done,#4e8a6a)}.app-toast-error{border-color:var(--status-failed,#c0553b)}@media (width<=768px){.toast-host{right:10px;bottom:calc(var(--graphite-mobile-nav-height,56px) + 8px + env(safe-area-inset-bottom,0px));left:10px}.app-toast{min-width:0}}.react-notif-panel{z-index:4000;position:fixed}.files-page{flex-direction:column;gap:14px;display:flex}.files-page-toolbar,.files-page-actions,.files-view-tabs,.files-upload-zone,.files-list-summary{align-items:center;display:flex}.files-page-toolbar{justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.files-page-actions{gap:var(--space-2);flex-wrap:wrap}.files-view-tabs{gap:var(--space-2);padding:var(--space-1);border:1px solid var(--border,#ddd2c5);background:var(--fill,#f4eee6);border-radius:10px}.files-view-tabs button{min-height:36px;color:var(--text-muted,#6f655b);font:inherit;font-size:var(--text-base);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 12px;font-weight:500}.files-view-tabs button.active{background:var(--surface,#faf7f2);color:var(--text,#2f2a24);box-shadow:var(--shadow-1,0 1px 2px #2f2a2414)}.files-search-field input,.files-compact-field select{border:1px solid var(--border,#ddd2c5);background:var(--surface,#faf7f2);min-height:38px;color:var(--text,#2f2a24);font:inherit;font-size:var(--text-sm);border-radius:8px}.files-search-field input{width:min(230px,70vw);padding:8px 11px}.files-compact-field{color:var(--text-muted,#6f655b);font-size:var(--text-xs);align-items:center;gap:7px;display:inline-flex}.files-compact-field select{padding:7px 28px 7px 9px}.files-search-field input:focus-visible,.files-compact-field select:focus-visible,.files-view-tabs button:focus-visible,.files-v2-btn-delete:focus-visible{outline:2px solid var(--accent,#8b7355);outline-offset:2px}.files-upload-zone{border:1px dashed var(--border-strong,#d2c4b5);background:var(--surface,#faf7f2);border-radius:12px;justify-content:flex-end;gap:14px;min-height:92px;padding:16px 18px;transition:border-color .18s,background .18s}.files-upload-zone.drag-over{border-color:var(--accent,#8b7355);background:var(--accent-tint,#efe7dc)}.files-upload-copy{flex-direction:column;flex:1;gap:3px;min-width:180px;display:flex}.files-upload-copy strong{color:var(--text,#2f2a24);font-size:var(--text-base);font-weight:600}.files-upload-copy span,.files-list-summary{color:var(--text-muted,#6f655b);font-size:var(--text-xs)}.files-list-summary{justify-content:space-between;min-height:20px}.files-v2-grid{border:1px solid var(--border,#ddd2c5);background:var(--surface,#faf7f2);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.files-v2-row{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border,#ddd2c5);min-height:62px;padding:11px 14px;transition:background .15s;display:flex}.files-v2-row:last-child{border-bottom:0}.files-v2-row:hover{background:var(--fill,#f4eee6)}.files-v2-icon{background:var(--fill,#f4eee6);width:36px;height:36px;color:var(--text-muted,#6f655b);border-radius:9px;flex:0 0 36px;place-items:center;display:grid}.files-v2-icon--pdf{color:var(--status-failed,#9a3324)}.files-v2-icon--xls{color:var(--status-done,#4e8a6a)}.files-v2-icon--doc,.files-v2-icon--img{color:var(--accent,#8b7355)}.files-v2-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.files-v2-name{color:var(--text,#2f2a24);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.files-v2-name a:hover{color:var(--accent,#8b7355);text-decoration:underline}.files-v2-breadcrumb,.files-v2-date,.files-v2-size{color:var(--text-muted,#6f655b);font-size:var(--text-xs)}.files-v2-breadcrumb{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.files-v2-meta{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;gap:2px;min-width:112px;display:flex}.files-v2-btn-delete{width:34px;height:34px;color:var(--text-muted,#6f655b);font-size:var(--text-xl);cursor:pointer;opacity:0;background:0 0;border:1px solid #0000;border-radius:8px;flex:0 0 34px;place-items:center;transition:opacity .15s,color .15s,background .15s;display:grid}.files-v2-row:hover .files-v2-btn-delete,.files-v2-btn-delete:focus-visible{opacity:1}.files-v2-btn-delete:hover{background:color-mix(in srgb, var(--status-failed,#9a3324) 10%, transparent);color:var(--status-failed,#9a3324)}.files-v2-empty{place-content:center;min-height:220px}@media (width<=640px){.react-notif-panel{width:auto;max-height:calc(100vh - 84px);left:12px;right:12px!important}.files-page-toolbar,.files-page-actions,.files-upload-zone{flex-direction:column;align-items:stretch}.files-view-tabs,.files-view-tabs button,.files-search-field input,.files-upload-zone .btn-primary{width:100%}.files-view-tabs button{min-height:44px}.files-v2-row{flex-wrap:wrap}.files-v2-info{min-width:calc(100% - 50px)}.files-v2-meta{min-width:0;margin-left:var(--space-12);flex-direction:row;align-items:center}.files-v2-btn-delete{opacity:1;margin-left:auto}}@media (prefers-reduced-motion:reduce){.files-upload-zone,.files-v2-row,.files-v2-btn-delete{transition:none}}.gantt-wrap{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);border-radius:10px;overflow:auto}.gantt-row{gap:var(--space-2);border-bottom:1px solid var(--border,#e3e7ee);font-size:var(--text-sm);grid-template-columns:200px 1fr;align-items:center;padding:6px 10px;display:grid}.gantt-bar-track{background:var(--fill,#eef1f5);border-radius:4px;height:22px;position:relative}.gantt-bar{background:var(--accent,#4e5180);border-radius:4px;min-width:4px;height:16px;position:absolute;top:3px}.gantt-bar.is-overdue{background:var(--status-overdue,#9a3324)}.gantt-bar.is-done{background:var(--status-done,#4e8a6a)}.fio-picker{position:relative}.fio-picker-list{z-index:20;background:var(--surface,#fff);border:1px solid var(--border,#e3e7ee);max-height:180px;box-shadow:var(--shadow-2,0 2px 8px #0f172a14);border-radius:8px;margin:0;padding:4px 0;list-style:none;position:absolute;left:0;right:0;overflow:auto}.fio-picker-list li button{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;padding:8px 12px}.fio-picker-list li button:hover{background:var(--accent-tint,#ececf5)}.simple-list,.check-list{padding-left:18px}.home-feed-list{margin:0;padding:0;list-style:none}.home-feed-list li{border-bottom:1px solid var(--border,#e3e7ee);font-size:var(--text-sm);padding:10px 12px}.home-feed-list li:last-child{border-bottom:none}.chip{background:var(--fill,#eef1f5);font-size:var(--text-xs);border-radius:999px;align-items:center;gap:6px;margin:2px 4px 2px 0;padding:4px 10px;display:inline-flex}.chip-warn{background:color-mix(in srgb, var(--status-overdue,#9a3324) 12%, white);color:var(--status-overdue,#9a3324)}.tg-stub{padding:var(--space-4);color:var(--text-muted,#6a7180);font-size:var(--text-sm)}@media (width<=720px){.kanban-col{flex-basis:85vw}}.docs-workspace{background:var(--bg,#f8f9fb);width:100%;height:calc(100vh - 70px);min-height:0;color:var(--ink,#181b26);flex-direction:column;display:flex;overflow:hidden}.docs-workspace-header{justify-content:space-between;align-items:flex-end;gap:var(--space-6);border-bottom:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);flex:none;padding:18px 22px 16px;display:flex}.docs-workspace-header h1{color:var(--ink,#181b26);letter-spacing:-.035em;margin:2px 0 4px;font-size:clamp(22px,2vw,30px);font-weight:600}.docs-workspace-header p{max-width:680px;color:var(--ink-muted,#6a7180);font-size:var(--text-sm);margin:0}.docs-eyebrow,.docs-panel-kicker{color:var(--accent-text,#353659);font-size:var(--text-xs);letter-spacing:var(--type-overline-tracking,.04em);text-transform:none;font-weight:700}.docs-project-context{border-left:2px solid var(--accent,#4e5180);flex-direction:column;gap:2px;min-width:210px;padding-left:14px;display:flex}.docs-project-context span{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);letter-spacing:var(--type-overline-tracking,.04em);text-transform:none;font-weight:600}.docs-project-context strong{max-width:280px;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.docs-layout.docs-layout--react{background:var(--surface,#fff);border:0;flex:auto;grid-template-columns:minmax(230px,.72fr) minmax(350px,1fr) minmax(390px,1.2fr);width:100%;min-height:0;max-height:none;overflow:hidden}.docs-layout--react .docs-panel{border-color:var(--border,#e3e7ee);background:var(--surface,#fff);scrollbar-width:thin;height:auto;min-height:0;padding:18px}.docs-layout--react .docs-library-panel{background:var(--surface-sunk,#f8f9fb)}.docs-panel-heading,.docs-panel-heading>div,.docs-preview-topbar>div{align-items:center;display:flex}.docs-panel-heading{justify-content:space-between;gap:var(--space-3);margin-bottom:14px}.docs-panel-heading>div,.docs-preview-topbar>div{gap:9px}.docs-panel-heading h2{color:var(--ink,#181b26);font-size:var(--text-base);margin:0;font-weight:700}.docs-panel-heading--instances{margin-top:18px}.docs-count{border:1px solid var(--border,#e3e7ee);min-width:24px;height:24px;color:var(--ink-muted,#6a7180);font-size:var(--text-xs);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;display:inline-grid}.docs-filter-field{margin-bottom:var(--space-3);color:var(--ink-muted,#6a7180);font-size:var(--text-xs);letter-spacing:.06em;text-transform:none;flex-direction:column;gap:5px;font-weight:600;display:flex}.docs-filter-field select{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);width:100%;min-height:38px;color:var(--ink,#181b26);font:inherit;font-size:var(--text-xs);letter-spacing:normal;text-transform:none;border-radius:8px;padding:0 10px;font-weight:500}.docs-layout--react .doc-template-list{gap:6px}.docs-layout--react .doc-tpl-btn{justify-content:center;gap:var(--space-1);width:100%;min-height:52px;color:var(--ink,#181b26);background:0 0;border:1px solid #0000;border-radius:9px;flex-direction:column;padding:9px 11px;transition:background .15s,border-color .15s,transform .15s;display:flex}.docs-layout--react .doc-tpl-btn span{font-size:var(--text-sm);text-overflow:ellipsis;font-weight:600;line-height:1.25;overflow:hidden}.docs-layout--react .doc-tpl-btn small{color:var(--ink-muted,#6a7180);font-size:var(--text-xs)}.docs-layout--react .doc-tpl-btn:hover:not(:disabled){border-color:var(--border,#e3e7ee);background:var(--surface,#fff);transform:translate(2px)}.docs-layout--react .doc-tpl-btn.active{border-color:var(--accent-line,#d7d8ec);background:var(--accent-soft,#ececf5);color:var(--accent-text,#353659);box-shadow:inset 2px 0 0 var(--accent,#4e5180)}.docs-layout--react .doc-tpl-btn:disabled{cursor:wait;opacity:.6}.docs-section-divider{background:var(--border,#e3e7ee);height:1px;margin:20px 0 0}.docs-status{background:var(--status-idle-soft,#eef1f5);border-radius:999px;align-items:center;width:max-content;padding:2px 7px;display:inline-flex}.docs-status--final{background:var(--status-done-soft,#e8f3ed);color:var(--success-fg,#356b4e)!important}.docs-status--sent{background:var(--status-progress-soft,#e4e3ef);color:var(--accent-text,#353659)!important}.docs-layout--react .docs-editor-panel{padding:0}.docs-layout--react .docs-preview-topbar{border-color:var(--border,#e3e7ee);background:var(--surface,#fff);min-height:58px;padding:10px 16px}.docs-layout--react .docs-preview-topbar strong{color:var(--ink,#181b26);font-size:var(--text-sm)}.docs-layout--react .btn-doc-save,.docs-layout--react .btn-doc-print{background:var(--accent,#4e5180);min-height:36px;color:var(--accent-on,#fff);font-size:var(--text-xs);border-radius:8px;padding:0 14px}.docs-layout--react .btn-doc-save:disabled,.docs-layout--react .btn-doc-print:disabled{cursor:not-allowed;opacity:.45}.docs-react-form{gap:var(--space-3);height:calc(100% - 58px);margin:0;padding:18px;overflow-y:auto}.docs-layout--react .doc-field-row{gap:6px}.docs-layout--react .doc-field-label{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);font-weight:600}.docs-layout--react .doc-field-input{border-color:var(--border,#e3e7ee);background:var(--surface,#fff);width:100%;min-height:40px;color:var(--ink,#181b26);font:inherit;font-size:var(--text-sm);border-radius:8px;padding:8px 10px}.docs-layout--react .doc-title-input{font-size:var(--text-md);font-weight:600}.docs-layout--react .doc-field-textarea{resize:vertical;min-height:96px}.docs-layout--react .doc-field-input:focus,.docs-layout--react .doc-table-input:focus,.docs-filter-field select:focus{border-color:var(--accent,#4e5180);box-shadow:0 0 0 3px var(--accent-soft,#ececf5);outline:none}.docs-form-divider{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);letter-spacing:var(--type-overline-tracking,.04em);text-transform:none;align-items:center;gap:10px;margin:9px 0 1px;font-weight:700;display:flex}.docs-form-divider:after{background:var(--border,#e3e7ee);content:"";flex:1;height:1px}.docs-layout--react .doc-editable-table{border-collapse:separate;border-spacing:0;margin:0}.docs-layout--react .doc-editable-table th{background:var(--surface-sunk,#f8f9fb);color:var(--ink-muted,#6a7180)}.docs-layout--react .doc-editable-table th,.docs-layout--react .doc-editable-table td{border-color:var(--border,#e3e7ee)}.doc-table-action-cell{text-align:center;width:34px}.docs-layout--react .doc-add-row{border-color:var(--accent-line,#d7d8ec);min-height:34px;color:var(--accent-text,#353659)}.docs-total-card{padding:var(--space-3);border:1px solid var(--accent-line,#d7d8ec);background:var(--accent-soft,#ececf5);color:var(--ink-muted,#6a7180);font-size:var(--text-xs);border-radius:9px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 16px;display:flex}.docs-total-card strong{color:var(--accent-text,#353659);font-size:var(--text-sm)}.docs-task-linker{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.docs-task-linker .btn-ghost{min-height:40px;margin:0}.docs-linked-list{flex-direction:column;gap:6px;display:flex}.docs-linked-item{border:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);color:var(--ink,#181b26);font-size:var(--text-xs);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.docs-linked-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.docs-linked-item button{width:28px;height:28px;color:var(--ink-muted,#6a7180);cursor:pointer;font-size:var(--text-lg);background:0 0;border:0;border-radius:6px;flex:0 0 28px;place-items:center;display:grid}.docs-linked-item button:hover{background:var(--danger-soft,#fde8e8);color:var(--danger,#c0553b)}.docs-layout--react .docs-preview-panel{background:var(--surface-sunk,#f8f9fb);flex-direction:column;display:flex;padding:0!important}.docs-layout--react .doc-preview-scroll{align-items:flex-start;padding:22px;overflow:auto}.docs-layout--react .doc-preview-wrap{color:#171717;background:#fff;border:1px solid #dedbd3;width:min(100%,620px);height:auto;min-height:720px;padding:clamp(30px,5vw,58px);transform:none;box-shadow:0 12px 36px #181b2621}.docs-document-header{justify-content:space-between;align-items:center;gap:var(--space-5);padding-bottom:var(--space-3);font-family:var(--font-sans);border-bottom:2px solid #282828;display:flex}.docs-document-header span{letter-spacing:var(--type-overline-tracking,.04em);font-size:10pt;font-weight:700}.docs-document-header small{color:#595959;text-align:right;max-width:60%;font-size:8pt}.docs-layout--react .doc-title{margin:34px 0 5px;font-size:15pt;line-height:1.25}.docs-document-meta{color:#666;font-family:var(--font-sans);text-align:center;margin:0 0 32px;font-size:8pt}.docs-document-body{gap:var(--space-3);flex-direction:column;display:flex}.doc-preview-line{gap:var(--space-4);border-bottom:1px solid #d8d8d8;grid-template-columns:minmax(120px,.7fr) minmax(0,1fr);padding-bottom:7px;display:grid}.doc-preview-line span{color:#666;font-family:var(--font-sans);font-size:8pt}.doc-preview-line strong{overflow-wrap:break-word;white-space:pre-wrap;font-size:10pt;font-weight:400}.doc-preview-field h4{margin:10px 0 6px;font-size:10pt}.doc-preview-empty{color:#777;margin:0;font-size:9pt}.docs-document-total{align-items:flex-end;gap:var(--space-1);padding-top:var(--space-3);border-top:1px solid #222;flex-direction:column;margin-top:26px;font-size:9pt;display:flex}.docs-document-total strong{margin-top:3px;font-size:11pt}.docs-document-signatures{justify-content:space-between;gap:var(--space-5);margin-top:58px;font-size:9pt;display:flex}.docs-workspace button:focus-visible,.docs-workspace select:focus-visible,.docs-workspace input:focus-visible,.docs-workspace textarea:focus-visible{outline:2px solid var(--accent,#4e5180);outline-offset:2px}@media (width<=1180px){.docs-layout.docs-layout--react{grid-template-columns:minmax(230px,.72fr) minmax(380px,1fr)}.docs-layout--react .docs-preview-panel{display:none}}@media (width<=720px){.docs-workspace{height:auto;min-height:calc(100vh - 70px);overflow:visible}.docs-workspace-header{padding:var(--space-4);flex-direction:column;align-items:flex-start}.docs-project-context{width:100%}.docs-layout.docs-layout--react{flex-direction:column;display:flex;overflow:visible}.docs-layout--react .docs-panel{border-right:0;border-bottom:1px solid var(--border,#e3e7ee);max-height:none;overflow:visible}.docs-layout--react .docs-library-panel{max-height:430px;overflow-y:auto}.docs-react-form{height:auto;overflow:visible}.docs-task-linker{grid-template-columns:1fr}.docs-task-linker .btn-ghost,.docs-layout--react .doc-field-input,.docs-filter-field select{min-height:44px}}@media (prefers-reduced-motion:reduce){.docs-layout--react .doc-tpl-btn{transition:none}}#tab-chat{box-sizing:border-box;width:100%;padding-bottom:0}.chat-workspace{border-top:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);width:100%;height:calc(100dvh - 88px);min-height:520px;color:var(--ink,#181b26);grid-template-columns:minmax(280px,340px) minmax(0,1fr);display:grid;overflow:hidden}.chat-sidebar{border-right:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);flex-direction:column;min-width:0;display:flex}.chat-sidebar-head{justify-content:space-between;align-items:center;gap:var(--space-4);padding:20px 18px 14px;display:flex}.chat-sidebar-head h1{color:var(--ink,#181b26);font-size:var(--text-2xl);letter-spacing:-.035em;margin:2px 0 0;font-weight:700}.chat-kicker{color:var(--accent-text,#353659);font-size:var(--type-caption-size,.75rem);letter-spacing:var(--type-overline-tracking,.04em);text-transform:none;font-weight:700}.chat-new-btn{background:var(--accent,#4e5180);width:38px;height:38px;color:var(--accent-on,#fff);cursor:pointer;font-size:var(--text-2xl);border:0;border-radius:10px;flex:0 0 38px;place-items:center;display:grid}.chat-search{padding:0 18px 10px;display:block}.chat-search input{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);width:100%;min-height:40px;color:var(--ink,#181b26);font:inherit;font-size:var(--text-xs);border-radius:9px;padding:0 12px}.chat-room-actions{grid-template-columns:1fr 1fr;gap:6px;padding:0 18px 12px;display:grid}.chat-room-actions button{border:1px solid var(--border,#e3e7ee);min-height:34px;color:var(--ink-muted,#6a7180);cursor:pointer;font:inherit;font-size:var(--text-xs);background:0 0;border-radius:8px}.chat-room-actions button:hover{border-color:var(--accent-line,#d7d8ec);background:var(--accent-soft,#ececf5);color:var(--accent-text,#353659)}.chat-scope-tabs{gap:var(--space-2);padding:var(--space-1);border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);border-radius:9px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 18px 12px;display:grid}.chat-scope-tabs button{min-height:36px;color:var(--ink-muted,#6a7180);cursor:pointer;font:inherit;font-size:var(--text-base);background:0 0;border:0;border-radius:6px;padding:0 12px;font-weight:500}.chat-scope-tabs button.active{background:var(--accent-soft,#ececf5);color:var(--accent-text,#353659);font-weight:600}.chat-room-list{flex-direction:column;flex:1;gap:3px;min-height:0;padding:2px 10px 14px;display:flex;overflow-y:auto}.chat-room{width:100%;min-height:68px;padding:var(--space-2);color:var(--ink,#181b26);cursor:pointer;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:10px;transition:background .15s,border-color .15s;display:flex}.chat-room:hover{background:var(--surface,#fff)}.chat-room.active{border-color:var(--accent-line,#d7d8ec);background:var(--accent-soft,#ececf5)}.chat-avatar{border:1px solid var(--accent-line,#d7d8ec);background:var(--surface,#fff);width:40px;height:40px;color:var(--accent-text,#353659);font-size:var(--text-sm);border-radius:12px;flex:0 0 40px;place-items:center;font-weight:700;display:grid}.chat-avatar--plan{background:var(--accent-soft,#ececf5);color:var(--accent-text,#353659);font-size:var(--text-xl)}.chat-room-star{margin-right:var(--space-1);color:var(--warning,#a67c2d);font-size:var(--text-xs)}.chat-room-copy{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.chat-room-line{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0;display:flex}.chat-room-line strong{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.chat-room-line time{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);font-variant-numeric:tabular-nums;flex:none}.chat-room-preview>span{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-room-preview b{background:var(--accent,#4e5180);min-width:20px;height:20px;color:var(--accent-on,#fff);font-size:var(--type-caption-size,.75rem);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;place-items:center;padding:0 5px;display:inline-grid}.chat-conversation{background:var(--surface,#fff);flex-direction:column;min-width:0;min-height:0;display:flex}.chat-placeholder{height:100%;color:var(--ink-muted,#6a7180);text-align:center;place-content:center;display:grid}.chat-placeholder-icon{border:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);width:54px;height:54px;color:var(--accent-text,#353659);font-size:var(--text-xl);border-radius:16px;place-items:center;margin:0 auto 10px;display:grid}.chat-conversation-head{border-bottom:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);flex:none;align-items:center;gap:11px;min-height:68px;padding:10px 18px;display:flex}.chat-conversation-head h2{color:var(--ink,#181b26);font-size:var(--text-base);margin:0;font-weight:700}.chat-conversation-head p{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);margin:2px 0 0}.chat-mobile-back{border:1px solid var(--border,#e3e7ee);width:38px;height:38px;color:var(--ink,#181b26);font-size:var(--text-2xl);background:0 0;border-radius:9px;display:none}.chat-messages{background:linear-gradient(color-mix(in srgb, var(--surface-sunk,#f8f9fb) 72%, transparent), color-mix(in srgb, var(--surface-sunk,#f8f9fb) 72%, transparent));flex-direction:column;flex:1;gap:7px;min-height:0;padding:24px clamp(18px,5vw,72px);display:flex;overflow-y:auto}.chat-message{flex-direction:column;align-self:flex-start;gap:3px;max-width:min(68%,620px);display:flex}.chat-message--mine{align-self:flex-end;align-items:flex-end}.chat-message-author{padding-left:var(--space-1);color:var(--accent-text,#353659);font-size:var(--text-xs);font-weight:600}.chat-bubble{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);box-shadow:var(--shadow-1,0 1px 2px #0f172a0d);border-radius:4px 13px 13px;overflow:hidden}.chat-message.is-notification-target .chat-bubble{box-shadow:0 0 0 3px var(--color-primary-100)}.chat-message--mine .chat-bubble{border-color:var(--accent-line,#d7d8ec);background:var(--accent-soft,#ececf5);color:var(--ink,#181b26);border-radius:13px 4px 13px 13px}.chat-bubble p{font-size:var(--text-sm);overflow-wrap:break-word;white-space:pre-wrap;margin:0;padding:9px 12px;line-height:1.45}.chat-bubble img{object-fit:cover;width:min(360px,100%);max-height:320px;display:block}.chat-file{min-width:240px;color:inherit;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.chat-file>span:first-child{background:var(--surface-sunk,#f8f9fb);width:34px;height:34px;color:var(--accent-text,#353659);font-size:var(--text-lg);border-radius:9px;place-items:center;display:grid}.chat-file>span:last-child{flex-direction:column;min-width:0;display:flex}.chat-file strong{max-width:270px;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-file small{color:var(--ink-muted,#6a7180);font-size:var(--text-xs)}.chat-message-time{color:var(--ink-muted,#6a7180);font-size:var(--type-caption-size,.75rem);font-variant-numeric:tabular-nums;padding:0 3px}.chat-reactions{align-items:center;gap:var(--space-1);flex-wrap:wrap;padding:1px 2px;display:flex}.chat-message--mine .chat-reactions{justify-content:flex-end}.chat-reactions button{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);min-height:24px;color:var(--ink-muted,#6a7180);cursor:pointer;font:inherit;font-size:var(--text-xs);border-radius:999px;padding:1px 7px}.chat-reactions button:hover,.chat-reactions button.active{border-color:var(--accent-line,#d7d8ec);background:var(--accent-soft,#ececf5);color:var(--accent-text,#353659)}.chat-quick-reactions{opacity:0;gap:2px;transition:opacity .15s;display:inline-flex}.chat-message:hover .chat-quick-reactions,.chat-message:focus-within .chat-quick-reactions{opacity:1}.chat-quick-reactions button{width:25px;padding:0}.chat-composer{border-top:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);flex:none;padding:12px clamp(14px,4vw,54px) 14px}.chat-composer-row{align-items:end;gap:var(--space-2);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.chat-composer-row-wrap{position:relative}.chat-mention-popup{z-index:5;border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);max-height:220px;box-shadow:var(--shadow-3,0 8px 24px #0f172a1f);border-radius:10px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 7px);left:50px;right:50px;overflow-y:auto}.chat-mention-popup button{min-height:38px;color:var(--ink,#181b26);cursor:pointer;font:inherit;font-size:var(--text-xs);text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:5px 8px;display:flex}.chat-mention-popup button:hover{background:var(--surface-sunk,#f8f9fb)}.chat-mention-popup button>span{background:var(--accent-soft,#ececf5);width:27px;height:27px;color:var(--accent-text,#353659);border-radius:8px;place-items:center;font-weight:700;display:grid}.chat-composer textarea{resize:vertical;border:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);width:100%;min-height:42px;max-height:126px;color:var(--ink,#181b26);font:inherit;font-size:var(--text-sm);border-radius:10px;padding:10px 12px;line-height:1.4}.chat-attach-btn,.chat-send-btn{cursor:pointer;min-height:42px;font:inherit;border-radius:10px}.chat-attach-btn{border:1px solid var(--border,#e3e7ee);width:42px;color:var(--ink-muted,#6a7180);font-size:var(--text-xl);background:0 0}.chat-send-btn{background:var(--accent,#4e5180);color:var(--accent-on,#fff);font-size:var(--text-xs);border:0;padding:0 16px;font-weight:600}.chat-send-btn:disabled{cursor:not-allowed;opacity:.45}.chat-pending-files{margin-bottom:var(--space-2);flex-wrap:wrap;gap:6px;display:flex}.chat-pending-files>span{border:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);max-width:260px;font-size:var(--text-xs);border-radius:999px;align-items:center;gap:6px;padding:5px 7px 5px 10px;display:inline-flex}.chat-pending-files button{width:20px;height:20px;color:var(--ink-muted,#6a7180);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;display:grid}.chat-new-dialog h3{margin:5px 0 16px}.chat-new-dialog .field select,.chat-new-dialog .field input{width:100%}.chat-member-picker{gap:var(--space-1);flex-direction:column;max-height:230px;display:flex;overflow-y:auto}.chat-member-picker>span{margin-bottom:var(--space-1);color:var(--ink-muted,#6a7180);font-size:var(--text-xs);font-weight:600}.chat-member-picker label{align-items:center;gap:var(--space-2);min-height:38px;color:var(--ink,#181b26);font-size:var(--text-xs);border-radius:8px;padding:7px 9px;display:flex}.chat-member-picker label:hover{background:var(--surface-sunk,#f8f9fb)}.chat-workspace button:focus-visible,.chat-workspace input:focus-visible,.chat-workspace textarea:focus-visible,.chat-new-dialog button:focus-visible,.chat-new-dialog input:focus-visible,.chat-new-dialog select:focus-visible{outline:2px solid var(--accent,#4e5180);outline-offset:2px}@media (width<=720px){#tab-chat{padding-left:0!important;padding-right:0!important}.chat-workspace{height:100%;min-height:0;display:block}.chat-sidebar,.chat-conversation{width:100%;height:100%}.chat-workspace:not(.chat-workspace--open) .chat-conversation,.chat-workspace--open .chat-sidebar{display:none}.chat-mobile-back{flex:0 0 38px;place-items:center;display:grid}.chat-messages{padding:18px 12px}.chat-message{max-width:88%}.chat-quick-reactions{opacity:1}.chat-mention-popup{left:0;right:0}.chat-composer{padding:10px 10px max(10px, env(safe-area-inset-bottom))}.chat-send-btn{color:#0000;width:44px;padding:0;font-size:0;overflow:hidden}.chat-send-btn:after{color:var(--accent-on,#fff);content:"→";font-size:var(--text-xl)}}@media (prefers-reduced-motion:reduce){.chat-room,.chat-quick-reactions{transition:none}}.home-chat-list{flex-direction:column;gap:3px;min-height:0;padding:6px 8px 10px;display:flex;overflow-y:auto}.home-chat-room{min-width:0;min-height:54px;color:var(--ink,#181b26);border-radius:9px;align-items:center;gap:9px;padding:6px 7px;text-decoration:none;transition:background .15s;display:flex}.home-chat-room:hover,.home-chat-room:focus-visible{background:var(--accent-soft,#ececf5)}.home-chat-avatar{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);width:34px;height:34px;color:var(--accent-text,#353659);font-size:var(--text-xs);border-radius:10px;flex:0 0 34px;place-items:center;font-weight:700;display:grid}.home-chat-avatar.is-plan{background:var(--accent-soft,#ececf5);font-size:var(--text-lg)}.home-chat-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.home-chat-copy strong,.home-chat-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-chat-copy strong{font-size:var(--text-xs);font-weight:600}.home-chat-copy small{color:var(--ink-muted,#6a7180);font-size:var(--text-xs)}.home-chat-room>b{background:var(--accent,#4e5180);min-width:20px;height:20px;color:var(--accent-on,#fff);font-size:var(--type-caption-size,.75rem);border-radius:999px;place-items:center;padding:0 5px;display:grid}.calendar-react{min-width:0;color:var(--ink,#181b26)}.calendar-react .cal-toolbar-right{flex-wrap:wrap}.calendar-react .cal-filter-sel{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);min-height:36px;color:var(--ink,#181b26);font:inherit;font-size:var(--text-xs);border-radius:8px;padding:0 10px}.calendar-react .cal-layout{min-height:620px}.calendar-react .cal-main{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);border-radius:12px;overflow:hidden}.calendar-react-month{min-height:620px}.calendar-react .cal-react-cell{flex-direction:column;min-width:0;min-height:92px;padding:6px;display:flex}.cal-react-day-select{width:100%;color:inherit;cursor:pointer;background:0 0;border:0;flex:none;padding:0;display:flex}.calendar-react .cal-month-cell.selected{outline:2px solid var(--accent,#4e5180);outline-offset:-2px;z-index:1}.cal-react-events{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.calendar-react .cal-event-pill,.calendar-react .cal-week-event{cursor:pointer;text-align:left;border-top-style:solid;border-bottom-style:solid;border-right-style:solid;width:100%;min-width:0;font-family:inherit}.calendar-react .cal-event-pill>span:last-child,.calendar-react .cal-week-event>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-react-week{min-height:540px}.calendar-react .cal-week-col{flex-direction:column;min-width:0;min-height:540px;padding:0;display:flex}.cal-react-week-head{border:0;border-bottom:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);min-height:68px;color:var(--ink-muted,#6a7180);cursor:pointer;font:inherit;font-size:var(--text-xs);text-transform:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex}.cal-react-week-head strong{color:var(--ink,#181b26);font-size:var(--text-lg)}.cal-react-week-events{min-height:0;padding:var(--space-2);flex-direction:column;flex:1;gap:5px;display:flex}.cal-react-empty-day{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);padding:10px 2px}.cal-react-quick-add{min-height:34px;margin:var(--space-2);border:1px dashed var(--border,#e3e7ee);color:var(--ink-muted,#6a7180);cursor:pointer;font:inherit;font-size:var(--text-xs);background:0 0;border-radius:7px}.cal-react-quick-add:hover{border-color:var(--accent-line,#d7d8ec);background:var(--accent-soft,#ececf5);color:var(--accent-text,#353659)}.calendar-react-list{min-height:540px}.calendar-react .cal-list-item{width:calc(100% - 16px);color:var(--ink,#181b26);text-align:left;font-family:inherit}.calendar-react-bottom-actions{gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);flex-wrap:wrap;display:flex}.calendar-react-bottom-actions button{margin:0}.calendar-react-aside h3{color:var(--ink,#181b26);font-size:var(--text-md);margin:3px 0 0}.calendar-react .cal-upcoming>button{border:1px solid var(--border,#e3e7ee);background:var(--surface,#fff);width:100%;color:var(--ink,#181b26);cursor:pointer;font:inherit;text-align:left;border-radius:9px;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:9px;padding:9px;display:grid}.calendar-react .cal-upcoming>button:hover{border-color:var(--accent-line,#d7d8ec);background:var(--accent-soft,#ececf5)}.calendar-react .cal-upcoming time{color:var(--accent-text,#353659);font-size:var(--text-xs);font-variant-numeric:tabular-nums;padding-top:2px;font-weight:700}.calendar-react .cal-upcoming button>span{flex-direction:column;gap:3px;min-width:0;display:flex}.calendar-react .cal-upcoming strong{font-size:var(--text-xs);text-overflow:ellipsis;line-height:1.3;overflow:hidden}.calendar-react .cal-upcoming small{color:var(--ink-muted,#6a7180);font-size:var(--text-xs)}.calendar-event-dialog{width:min(680px,100vw - 24px);max-height:min(780px,100dvh - 32px);color:var(--ink,#181b26);overflow-y:auto}.calendar-event-dialog-head,.calendar-event-dialog-actions,.calendar-event-dialog-actions>div{align-items:center;display:flex}.calendar-event-dialog-head{justify-content:space-between;gap:var(--space-4);margin-bottom:14px}.calendar-event-dialog-head h3{font-size:var(--text-xl);margin:3px 0 0}.calendar-event-dialog-head>button{width:36px;height:36px;color:var(--ink-muted,#6a7180);cursor:pointer;font-size:var(--text-xl);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.calendar-event-fields{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.calendar-event-wide{grid-column:1/-1}.calendar-event-dialog .field{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);margin:7px 0;font-weight:600}.calendar-event-dialog .field input,.calendar-event-dialog .field select,.calendar-event-dialog .field textarea{resize:vertical;border:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);width:100%;min-height:40px;color:var(--ink,#181b26);font:inherit;font-size:var(--text-sm);border-radius:8px;padding:8px 10px;font-weight:400}.calendar-participants>span{color:var(--ink-muted,#6a7180);font-size:var(--text-xs);margin:8px 0 6px;font-weight:600;display:block}.calendar-participants>div{border:1px solid var(--border,#e3e7ee);background:var(--surface-sunk,#f8f9fb);border-radius:9px;grid-template-columns:1fr 1fr;gap:3px;max-height:170px;padding:7px;display:grid;overflow-y:auto}.calendar-participants label{min-height:34px;font-size:var(--text-xs);border-radius:7px;align-items:center;gap:7px;padding:5px 7px;display:flex}.calendar-participants label:hover{background:var(--surface,#fff)}.calendar-event-dialog-actions{justify-content:space-between;gap:var(--space-4);border-top:1px solid var(--border,#e3e7ee);margin-top:18px;padding-top:14px}.calendar-event-dialog-actions>div{gap:var(--space-2)}.calendar-event-dialog-actions button{margin:0}.calendar-delete-btn{border:1px solid var(--danger,#c0553b);min-height:38px;color:var(--danger,#c0553b);cursor:pointer;font:inherit;font-size:var(--text-xs);background:0 0;border-radius:8px;padding:0 12px}.calendar-react button:focus-visible,.calendar-react input:focus-visible,.calendar-react select:focus-visible,.calendar-event-dialog button:focus-visible,.calendar-event-dialog input:focus-visible,.calendar-event-dialog select:focus-visible,.calendar-event-dialog textarea:focus-visible{outline:2px solid var(--accent,#4e5180);outline-offset:2px}@media (width<=900px){.calendar-react{padding:18px 14px 28px}.calendar-react .cal-layout{flex-direction:column;min-height:0;display:flex}.calendar-react .cal-aside{width:100%}}@media (width<=680px){#tab-calendar{padding-left:64px!important;padding-right:0!important}.calendar-react .cal-toolbar,.calendar-react .cal-toolbar-right{flex-direction:column;align-items:stretch}.calendar-react .cal-toolbar-right,.calendar-react .cal-view-toggle,.calendar-react .cal-filter-sel{width:100%}.calendar-react .cal-add-btn{z-index:auto;width:100%;height:44px;box-shadow:none;border-radius:8px;justify-content:center;padding:0 14px;position:static;bottom:auto;right:auto}.calendar-react .cal-view-btn{flex:1;min-height:40px}.calendar-react-month{min-width:0}.calendar-react .cal-react-cell{min-height:72px;padding:var(--space-1)}.calendar-react .cal-day-num{font-size:var(--text-xs)}.calendar-react .cal-react-events{padding-top:var(--space-1);flex-direction:row;align-content:flex-start;gap:3px}.calendar-react .cal-event-pill{background:var(--cal-c,var(--accent));border:0;border-radius:999px;flex:0 0 7px;width:7px;height:7px;padding:0}.calendar-react .cal-event-pill>span{display:none}.calendar-react .cal-event-more{font-size:var(--type-micro-size,.6875rem)}.calendar-react .cal-main{overflow-x:hidden}.calendar-react-week{min-width:720px}.calendar-event-fields,.calendar-participants>div{grid-template-columns:1fr}.calendar-event-dialog-actions{flex-direction:column-reverse;align-items:stretch}.calendar-event-dialog-actions>div,.calendar-event-dialog-actions button{width:100%}}@media (prefers-reduced-motion:reduce){.calendar-react .cal-list-item,.calendar-react .cal-month-cell{transition:none}}.passport-page{width:100%;padding:0 24px 40px}.passport-toolbar,.passport-actions,.passport-validation-head{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.passport-toolbar{border:1px solid var(--border,#ddd2c5);background:var(--surface,#faf7f2);border-radius:12px;margin:18px 0 14px;padding:14px 16px}.passport-toolbar .toolbar,.passport-actions .toolbar,.passport-decision .toolbar{margin:0}.passport-toolbar select{border:1px solid var(--border,#ddd2c5);background:var(--bg,#f5f1ea);min-width:170px;color:inherit;font:inherit;font-size:var(--text-sm);border-radius:8px;padding:9px 34px 9px 11px}.passport-version-meta{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.passport-status{text-transform:none;letter-spacing:.04em;font-size:var(--text-xs);border:1px solid #0000;margin:0;font-weight:700}.passport-status.is-draft{border-color:var(--border-strong,#d2c4b5);background:var(--surface-sunk,#f1ece5);color:var(--text-muted,#6f655b)}.passport-status.is-review{border-color:color-mix(in srgb, var(--status-warning,#b7791f) 28%, transparent);background:color-mix(in srgb, var(--status-warning,#b7791f) 12%, var(--surface,#fff));color:var(--status-warning,#8a5a12)}.passport-status.is-approved{border-color:color-mix(in srgb, var(--status-done,#4e8a6a) 28%, transparent);background:color-mix(in srgb, var(--status-done,#4e8a6a) 12%, var(--surface,#fff));color:var(--status-done,#397253)}.passport-status.is-rejected{border-color:color-mix(in srgb, var(--status-failed,#c0553b) 28%, transparent);background:color-mix(in srgb, var(--status-failed,#c0553b) 10%, var(--surface,#fff));color:var(--status-failed,#a3422e)}.passport-views{border:1px solid var(--border,#ddd2c5);background:var(--surface-sunk,#f1ece5);border-radius:11px;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0 0 10px;padding:5px;display:grid}.passport-views button{min-height:42px;font-size:var(--text-xs);padding:9px 26px 9px 12px;position:relative}.passport-readiness{background:var(--text-muted,#6f655b);border-radius:50%;width:7px;height:7px;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.passport-readiness.is-ready{background:var(--status-done,#4e8a6a);box-shadow:0 0 0 3px color-mix(in srgb, var(--status-done,#4e8a6a) 16%, transparent)}.passport-readiness.is-warning,.passport-readiness.is-in_progress{background:var(--status-warning,#b7791f);box-shadow:0 0 0 3px color-mix(in srgb, var(--status-warning,#b7791f) 16%, transparent)}.passport-readiness.is-error{background:var(--status-failed,#c0553b);box-shadow:0 0 0 3px color-mix(in srgb, var(--status-failed,#c0553b) 14%, transparent)}.passport-editor{border:1px solid var(--border,#ddd2c5);background:var(--surface,#faf7f2);border-radius:12px;min-width:0;margin:0;padding:20px 22px 22px}.passport-editor .field,.passport-decision .field{color:var(--text,#2f2a24);font-weight:600}.passport-editor input,.passport-editor textarea,.passport-decision textarea{resize:vertical;border:1px solid var(--border,#ddd2c5);background:var(--bg,#f5f1ea);width:100%;color:inherit;font:inherit;font-size:var(--text-sm);border-radius:8px;outline:0;padding:11px 12px;font-weight:400;line-height:1.55;transition:border-color .16s,box-shadow .16s,background .16s}.passport-editor input:focus,.passport-editor textarea:focus,.passport-decision textarea:focus,.passport-toolbar select:focus{border-color:var(--accent,#8b7355);background:var(--surface,#faf7f2);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent,#8b7355) 14%, transparent)}.passport-editor:disabled{opacity:.84}.passport-editor:disabled input,.passport-editor:disabled textarea{cursor:not-allowed}.passport-editor .form-hint{color:var(--status-done,#4e8a6a);font-size:var(--text-xs);font-weight:500}.passport-editor .form-hint.is-warning{color:var(--status-warning,#9a681a)}.passport-readonly,.passport-decision,.passport-validation{margin-top:var(--space-3);border:1px solid var(--border,#ddd2c5);background:var(--surface,#faf7f2);border-radius:10px}.passport-readonly{color:var(--text-muted,#6f655b);font-size:var(--text-xs);padding:11px 13px}.passport-actions{border-top:1px solid var(--border,#ddd2c5);margin-top:14px;padding-top:14px}.passport-actions button:disabled,.passport-views button:disabled{cursor:not-allowed;opacity:.45}.passport-decision{padding:14px 16px}.passport-decision .field{margin-top:0}.passport-decision .is-danger{border-color:color-mix(in srgb, var(--status-failed,#c0553b) 38%, transparent);color:var(--status-failed,#a3422e)}.passport-validation{overflow:hidden}.passport-validation-head{border-bottom:1px solid var(--border,#ddd2c5);font-size:var(--text-xs);padding:12px 15px}.passport-validation-head span{color:var(--text-muted,#6f655b)}.passport-validation .simple-list{background:var(--border,#ddd2c5);gap:1px;margin:0;padding:0;list-style:none;display:grid}.passport-validation li{gap:var(--space-3);background:var(--surface,#faf7f2);font-size:var(--text-xs);grid-template-columns:74px 1fr;padding:11px 15px;display:grid}.passport-validation li>span{color:var(--status-warning,#9a681a);font-size:var(--text-xs);text-transform:none;letter-spacing:.04em;align-self:start;font-weight:700}.passport-validation li.is-error>span{color:var(--status-failed,#a3422e)}.passport-validation li div{flex-direction:column;gap:3px;min-width:0;display:flex}.passport-validation li small{color:var(--text-muted,#6f655b);font-size:var(--text-xs)}@media (width<=850px){.passport-page{padding-left:14px;padding-right:14px}.passport-views{grid-template-columns:repeat(2,minmax(0,1fr))}.passport-toolbar,.passport-actions{flex-direction:column;align-items:stretch}.passport-toolbar .toolbar,.passport-actions .toolbar{width:100%}}@media (width<=560px){.passport-page{padding-left:10px;padding-right:10px}.passport-views{grid-template-columns:1fr}.passport-editor{padding:14px}.passport-toolbar .toolbar,.passport-actions .toolbar,.passport-decision .toolbar{flex-direction:column;align-items:stretch}.passport-toolbar select,.passport-toolbar button,.passport-actions button,.passport-decision button{width:100%}.passport-validation-head{flex-direction:column;align-items:flex-start}.passport-validation li{gap:var(--space-1);grid-template-columns:1fr}}.app-error-screen{place-items:center;min-height:min(70vh,640px);padding:32px 20px;display:grid}.app-error-card{border:1px solid var(--border,#d9dce5);background:var(--surface,#fff);width:min(100%,440px);color:var(--text,#20212a);border-radius:14px;padding:28px;box-shadow:0 12px 32px #18192014}.app-error-eyebrow{color:var(--muted,#747783);font-size:var(--type-caption-size,.75rem);letter-spacing:var(--type-overline-tracking,.04em);text-transform:none;font-weight:700}.app-error-card h1{margin:8px 0;font-size:22px}.app-error-card p{color:var(--muted,#747783);margin:0;line-height:1.5}.app-error-actions{gap:8px;margin-top:20px;display:flex}.app-error-actions button,.app-error-actions a{border:1px solid var(--border,#d9dce5);background:var(--surface,#fff);min-height:36px;color:inherit;font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 14px;text-decoration:none;display:inline-flex}.app-error-actions button{border-color:var(--color-action-primary,var(--graphite-purple,#6246d9));background:var(--color-action-primary,var(--graphite-purple,#6246d9));color:var(--on-accent,#fff)}.kb-card-open{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.kb-card-open:focus-visible{outline:2px solid color-mix(in srgb, var(--color-focus,var(--graphite-purple,#6246d9)) 55%, transparent);outline-offset:3px;border-radius:4px}
