:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:#f5f5f7;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.auth-shell{text-align:center;max-width:420px;margin:80px auto;padding:0 16px}.app-shell{flex-direction:column;min-height:100vh;display:flex}.global-header{background:#fff;border-bottom:1px solid #eee;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.global-header-left{align-items:center;gap:12px;display:flex}.sidebar-toggle{color:#333;background:0 0;border:1px solid #ddd;padding:4px 9px;font-size:16px;line-height:1.2}.sidebar-toggle:hover{background:#f5f5f7}.global-header-brand{font-size:18px;font-weight:700}.global-header-user{color:#555;align-items:center;gap:8px;font-size:13px;display:flex}.global-header-user button{color:#333;background:0 0;border:1px solid #ddd;padding:4px 10px;font-size:12px}.layout{flex:1;min-height:0;display:flex}.sidebar{background:#fff;border-right:1px solid #eee;flex-direction:column;flex-shrink:0;width:220px;padding:24px 16px;display:flex}.sidebar-nav{flex-direction:column;flex:1;gap:4px;display:flex}.sidebar-nav button{color:#333;text-align:left;background:0 0;border-radius:8px;padding:10px 12px}.sidebar-nav button.active{color:#fff;background:#111}.sidebar-footer{border-top:1px solid #eee;padding:16px 12px 0}.sidebar-footer button.link{margin-top:0;padding:0}.content{flex:1;min-width:0;padding:40px}.app-shell.embedded .content{padding:12px}.app-shell.embedded .card{padding:16px}.app-shell.embedded .task-toolbar{white-space:nowrap;flex-wrap:wrap}.content-inner{max-width:1900px;margin:0 auto}.card{text-align:left;background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 4px #0000001a}.card h2{margin-top:0}.admin-header{justify-content:space-between;align-items:center;display:flex}.admin-header button.link{margin-top:0}.admin-card h3{margin:24px 0 8px;font-size:15px}.admin-card h3:first-of-type{margin-top:16px}form{flex-direction:column;gap:12px;display:flex}input,textarea,select{border:1px solid #ddd;border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px}button{color:#fff;cursor:pointer;background:#111;border:none;border-radius:8px;padding:10px 12px;font-size:14px}button:disabled{opacity:.6;cursor:default}button.link{color:#555;background:0 0;margin-top:16px;padding:0;text-decoration:underline}.error{color:#c0392b;font-size:13px}.error-boundary{color:#c0392b;background:#fdf2f1;border-radius:6px;padding:16px}.error-boundary p{margin:0 0 10px}.hint{color:#2f7a3d;font-size:13px}.telegram-status-list{color:#333;margin:0 0 8px;padding-left:18px;font-size:13px}.telegram-status-list li{margin-bottom:4px}.telegram-users-form{flex-direction:row;align-items:center;gap:8px;margin-bottom:16px;display:flex}.telegram-users-form input{flex:1}.button-row{flex-wrap:wrap;gap:8px;display:flex}.button-row button{flex:none}.table-scroll{margin-top:16px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:560px;font-size:13px}.admin-table th,.admin-table td{text-align:left;vertical-align:middle;white-space:nowrap;border-bottom:1px solid #eee;padding:8px 6px}.admin-table td.cell-trunc{text-overflow:ellipsis;max-width:220px;overflow:hidden}.hermes-table-browser{margin-top:12px}.hermes-table-browser .comment-form{margin-bottom:12px}.hermes-table-browser .button-row{align-items:center;margin-top:12px}.admin-table .actions{gap:6px;display:flex}.admin-table .actions button{padding:6px 8px;font-size:12px}.badge{color:#333;background:#eee;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.status-badge{background:color-mix(in srgb, var(--status-color) 15%, white);color:color-mix(in srgb, var(--status-color) 70%, black);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.condition-chip{border:1px solid var(--status-color);color:color-mix(in srgb, var(--status-color) 70%, black);border-radius:999px;padding:1px 7px;font-size:12px;font-weight:600;display:inline-block}.priority-badge{background:color-mix(in srgb, var(--priority-color) 15%, white);color:color-mix(in srgb, var(--priority-color) 70%, black);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.badge.admin{color:#fff;background:#111}.tag-list{vertical-align:middle;flex-wrap:wrap;gap:4px;display:inline-flex}.tag{color:#4338ca;background:#eef2ff;border-radius:999px;padding:1px 8px;font-size:11px;display:inline-block}button.danger{background:#c0392b}.posts-card>button{margin-bottom:16px}.post-form{border-bottom:1px solid #eee;margin-bottom:20px;padding-bottom:20px}.post-search{margin-bottom:16px}.post-list-compact{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.post-list-row{color:#111;text-align:left;background:0 0;border-bottom:1px solid #eee;border-radius:8px;justify-content:space-between;align-items:baseline;gap:16px;width:100%;padding:12px 8px;display:flex}.post-list-row:hover{background:#f5f5f7}.task-row{border-left:4px solid var(--status-color,transparent);padding-left:12px}.post-list-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.post-list-meta{color:#888;flex-shrink:0;font-size:12px}.post-detail h3{margin:16px 0 4px}.post-meta{color:#888;margin:0 0 8px;font-size:12px}.post-content{white-space:pre-wrap;margin:0 0 12px}.markdown-body{white-space:normal}.markdown-body p{margin:0 0 12px}.markdown-body ul,.markdown-body ol{margin:0 0 12px;padding-left:22px}.markdown-body code{background:#f5f5f7;border-radius:4px;padding:1px 4px;font-size:13px}.markdown-body pre{background:#f5f5f7;border-radius:8px;padding:12px;overflow-x:auto}.markdown-body pre code{background:0 0;padding:0}.markdown-body blockquote{color:#555;border-left:3px solid #ddd;margin:0 0 12px;padding-left:12px}.voice-log{flex-direction:column;gap:8px;min-height:120px;max-height:50vh;margin:16px 0;display:flex;overflow-y:auto}.voice-msg{white-space:pre-wrap;border-radius:10px;max-width:85%;padding:10px 12px;font-size:14px}.voice-user{color:#fff;background:#111;align-self:flex-end}.voice-assistant{background:#f5f5f7;align-self:flex-start}.voice-system{color:#888;align-self:center;font-size:12px}.voice-interim{opacity:.6}.voice-status,.voice-controls{color:#555;flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;display:flex}.voice-status{min-height:24px;margin-bottom:8px}.voice-controls{margin-bottom:12px}.voice-status button.link,.voice-controls button.link{margin-top:0}.voice-approval{background:#fff8e6;border:1px solid #f0c36d;border-radius:8px;padding:10px 12px;font-size:13px}.voice-toggle{align-items:center;gap:6px;display:flex}.voice-toggle input{width:auto}.view-toggle{background:#f0f0f2;border-radius:999px;align-items:center;gap:2px;padding:3px;display:flex}.view-toggle button{border-radius:999px;padding:6px 14px;font-size:13px}.view-toggle button.link{color:#555;background:0 0;margin-top:0;text-decoration:none}.task-toolbar{align-items:center;gap:16px;margin:12px 0 16px;display:flex}.status-legend{margin-bottom:12px;font-size:.9em}.status-legend summary{cursor:pointer;color:#333;background:#f0f0f2;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:500;list-style:none;display:inline-block}.status-legend summary::-webkit-details-marker{display:none}.status-legend summary:before{content:"▸ "}.status-legend[open] summary:before{content:"▾ "}.status-legend ul{margin:10px 0 0;padding-left:20px}.status-legend ul.project-list{padding-left:0;list-style:none}.project-row{flex-flow:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.project-row select{flex:none;width:auto}.project-row input{flex:1;width:auto;min-width:0}.task-group-header{border-bottom:2px solid #f0f0f2;align-items:center;gap:8px;margin:24px 0 8px;padding-bottom:6px;font-size:16px;font-weight:600;display:flex}.task-row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.task-next{color:#666;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.task-overdue{color:#c0392b;background:#fdecea;border-radius:999px;padding:1px 8px;font-weight:600;display:inline-block}.task-sync{color:#b7791f;background:#fff8e6;border-radius:999px;margin-left:4px;padding:1px 8px;font-size:11px;display:inline-block}.weekly-goals{background:#f7f7fb;border-radius:12px;margin:8px 0 12px;padding:12px 16px}.weekly-goals-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.weekly-goals-toggle{margin-left:auto}.weekly-goals-toggle button{padding:2px 10px;font-size:12px}.weekly-goals ol{margin:8px 0 0;padding-left:20px}.weekly-not-doing ul{color:#666;margin:2px 0 0;padding-left:20px;list-style-type:"✕  "}.weekly-goals input{box-sizing:border-box;width:100%;margin:6px 0;display:block}.task-archived{color:#777;background:#eee;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:400;display:inline-block}.task-sync-failed{color:#c0392b;background:#fdecea}.task-fields{grid-template-columns:90px 1fr;gap:6px 12px;margin:12px 0;font-size:14px;display:grid}.task-fields dt{color:#888}.task-fields dd{white-space:pre-wrap;margin:0}.task-section-title{margin:24px 0 8px;font-size:15px}.absorb-panel{background:#f7f7f8;border-radius:6px;flex-direction:column;gap:6px;margin-top:8px;padding:10px 12px;display:flex}.action-progress{color:#555;white-space:nowrap;font-size:12px;font-weight:600}.action-list{flex-direction:column;gap:6px;margin:0 0 8px;padding:0;list-style:none;display:flex}.action-item{background:#f7f7f8;border-left:3px solid #0000;border-radius:6px;align-items:flex-start;gap:10px;padding:8px 12px;display:flex}.action-item.current{background:#fff7ef;border-left-color:#dd6b20}.action-item.closed{color:#777}.action-item input[type=checkbox]{flex:none;width:auto;margin-top:3px}.action-body{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.action-now{color:#fff;background:#dd6b20;border-radius:999px;padding:1px 6px;font-size:11px}.action-tools{flex-wrap:wrap;gap:2px 10px;font-size:12px;display:flex}.action-tools button.link{padding:0;font-size:12px}.action-edit{flex-direction:column;flex:1;gap:6px;display:flex}.action-fields{flex-wrap:wrap}.action-fields input,.action-fields select{flex:120px;min-width:0}.action-closed summary{cursor:pointer;color:#666;margin-bottom:6px;font-size:13px}.task-timeline{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.task-timeline li{background:#f7f7f8;border-radius:6px;padding:8px 12px}.arch-detail{background:#f7f7f8;border-radius:8px;padding:12px 14px;font-size:13px}.arch-detail p{color:#444}.task-timeline p{white-space:pre-wrap;margin:4px 0 0;font-size:14px}.task-form-row{gap:8px;display:flex}.deadline-input{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.deadline-input input{width:auto}.deadline-input button.link{margin-top:0}.post-edit{flex-direction:column;gap:8px;display:flex}.comments{border-top:1px solid #eee;margin-top:16px;padding-top:12px}.comments-loading{color:#888;margin:0;font-size:12px}.comment-list{flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none;display:flex}.comment-empty{color:#888;font-size:12px}.comment-item{background:#f7f7f8;border-radius:6px;padding:10px 12px;font-size:13px}.comment-meta{color:#888;margin:0 0 4px;font-size:11px}.comment-content{white-space:pre-wrap;margin:0 0 6px}.comment-edit{flex-direction:column;gap:6px;display:flex}.comment-form{flex-direction:row;align-items:flex-start;gap:8px;display:flex}.comment-form textarea{flex:1}.task-number{color:#6b7280;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:500}.task-toolbar select{width:auto}.task-number-search{width:auto;min-width:200px;margin-left:auto}.today-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.today-chip{color:#333;text-align:left;background:#f5f5f7;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.today-chip strong{font-size:22px;line-height:1.1}.today-chip.alert strong{color:#c0392b}.today-chip.active{color:#fff;background:#111}.today-chip.active.alert strong{color:#ffb4a8}@media (width<=700px){.today-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.person-links{flex-wrap:wrap;gap:6px;margin-left:6px;display:inline-flex}.person-links button.link,.label-row button.link{margin-top:0}.alias-input{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.alias-input input{flex:1;min-width:160px}.label-row{border-bottom:1px solid #eee;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:10px 8px;display:flex}.label-row select{width:auto}.post-list-row.inactive{opacity:.55}.label-row.ended{opacity:.6}.org-chip{margin-right:8px}@media (width<=700px){.global-header{padding:10px 12px}.layout{flex-direction:column}.sidebar{border-bottom:1px solid #eee;border-right:none;flex-direction:row;align-items:center;gap:8px;width:auto;padding:8px 12px}.sidebar-nav{flex-direction:row;min-width:0;overflow-x:auto}.sidebar-nav button{white-space:nowrap;padding:8px 10px}.sidebar-footer{white-space:nowrap;border-top:none;padding:0}.content{padding:12px}.card{padding:16px}.task-toolbar{white-space:nowrap;flex-wrap:wrap}}.org-picker{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.org-picker select{max-width:100%}.sch-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;display:flex}.sch-page-header h2{margin:0}.sch-page-actions{align-items:center;gap:10px;display:flex}.sch-page-actions button{white-space:nowrap}.sch-body{border:1px solid #e6e6e9;border-radius:10px;min-height:640px;margin-top:12px;display:flex;overflow:hidden}.sch-sidebar{background:#fafafb;border-right:1px solid #e6e6e9;flex-shrink:0;width:220px;padding:14px 12px;font-size:13px}.sch-sidebar-title{align-items:center;gap:6px;margin:4px 0 8px;font-weight:700;display:flex}.sch-sidebar-title:not(:first-child){margin-top:18px}.sch-sidebar input[type=checkbox]{width:auto;margin:0}.sch-project-list{margin:0;padding:0;list-style:none}.sch-project-list li{align-items:center;gap:6px;padding:3px 0;display:flex}.sch-project-name{color:#222;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;flex:1;min-width:0;padding:2px 0;font-size:13px;overflow:hidden}.sch-project-name:hover{text-decoration:underline}.sch-project-name.static:hover{text-decoration:none}.sch-count{color:#888;background:#efeff1;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.sch-check{align-items:center;gap:6px;display:flex}.sch-number-search{margin-bottom:14px;padding:7px 10px;font-size:13px}.sch-filter-fields{flex-direction:column;gap:8px;display:flex}.sch-filter-fields select{padding:7px 10px;font-size:13px}.sch-pane{padding:4px 16px 16px}.sch-pane>.status-legend{margin-top:12px}.sch-toolbar-group{align-items:center;gap:8px;display:flex}.sch-main{background:#fff;flex-direction:column;flex:1;min-width:0;display:flex}.sch-toolbar{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;display:flex}.sch-outline-btn{color:#333;white-space:nowrap;background:#fff;border:1px solid #ddd;padding:6px 12px;font-size:13px}.sch-outline-btn:hover{background:#f5f5f7}.sch-icon-btn{color:#555;background:0 0;border-radius:50%;width:30px;height:30px;padding:0;font-size:20px;line-height:1}.sch-icon-btn:hover{background:#f0f0f2}.sch-empty{color:#999;text-align:center;margin:0;padding:24px 0;font-size:13px}.sch-list-muted{color:#888;font-size:12px}.sch-calendar{flex-direction:column;flex:1;display:flex}.sch-cal-header{border-bottom:1px solid #eee;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;display:flex}.sch-cal-header-left{align-items:center;gap:6px;display:flex}.sch-cal-title{margin:0 0 0 6px;font-size:18px;font-weight:600}.sch-dow-row,.sch-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.sch-dow{text-align:center;color:#777;border-bottom:1px solid #eee;padding:6px 0;font-size:12px;font-weight:600}.sun{color:#e53e3e}.sat{color:#3182ce}.sch-month-grid{background:#eee;grid-auto-rows:minmax(120px,auto);gap:1px}.sch-cell{background:#fff;flex-direction:column;gap:2px;min-width:0;padding:4px;display:flex}.sch-cell.other{background:#fafafb}.sch-cell.drag-over,.sch-week-cell.drag-over{outline-offset:-2px;background:#f0f0f2;outline:2px dashed #111}.sch-day-num{color:#333;white-space:nowrap;background:0 0;border-radius:12px;align-self:flex-start;min-width:24px;height:24px;padding:0 6px;font-size:12px;font-weight:600}.sch-day-num:hover{background:#f0f0f2}.sch-day-num.other{color:#bbb}.sch-day-num.sun{color:#e53e3e}.sch-day-num.sat{color:#3182ce}.sch-day-num.today{color:#fff;background:#111;border-radius:50%;width:24px;padding:0}.sch-cell-items{flex-direction:column;gap:2px;min-width:0;display:flex}.sch-item{color:#222;border:1px solid #ececef;border-left:3px solid var(--status-color,#aaa);text-align:left;cursor:grab;background:#fff;border-radius:4px;align-items:center;gap:4px;width:100%;min-width:0;padding:2px 6px;font-size:12px;display:flex}.sch-item:hover{background:#f7f7f8}.sch-item.overdue{background:#fff6f6;border-color:#f3c4c4 #f3c4c4 #f3c4c4 #e53e3e}.sch-item.closed .sch-item-title{color:#999;text-decoration:line-through}.standing-badge{color:#2c7a7b;vertical-align:middle;background:#e6fffa;border:1px solid #b2f5ea;border-radius:999px;padding:0 7px;font-size:11px;font-weight:700;display:inline-block}.sch-item.action{color:#555;background:#fbfbfc;border-style:dashed dashed dashed solid;border-left-width:3px;border-left-color:#b5b5bd}.sch-item.action .sch-item-status{color:#888}.sch-item-status{color:var(--status-color,#aaa);flex-shrink:0;font-weight:700}.sch-item-time{color:#888;flex-shrink:0;font-size:11px}.sch-item-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sch-more{color:#666;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;padding:1px 4px;font-size:11px;overflow:hidden}.sch-more:hover{background:#f0f0f2}.sch-popover-backdrop{z-index:50;cursor:default;background:0 0;border-radius:0;padding:0;position:fixed;inset:0}.sch-popover{z-index:51;background:#fff;border:1px solid #e6e6e9;border-radius:10px;width:270px;position:fixed;box-shadow:0 6px 24px #00000026}.sch-popover-head{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:8px 8px 8px 12px;font-size:13px;font-weight:600;display:flex}.sch-popover-list{flex-direction:column;gap:3px;max-height:260px;padding:8px;display:flex;overflow-y:auto}.sch-week{overflow-x:auto}.sch-week-row{border-bottom:1px solid #eee;grid-template-columns:52px repeat(7,minmax(110px,1fr));display:grid}.sch-week-head{background:#fff;position:sticky;top:0}.sch-week-day{color:#777;justify-content:center;align-items:center;gap:4px;padding:6px 0;font-size:12px;font-weight:600;display:flex}.sch-week-label{color:#999;border-right:1px solid #eee;padding:6px 4px;font-size:11px}.sch-week-cell{border-right:1px solid #f0f0f2;flex-direction:column;gap:3px;min-width:0;min-height:160px;padding:4px;display:flex}.sch-week-row.all-day .sch-week-cell{background:#fcfcfd;min-height:56px}.sch-list-wrap{padding:8px 14px 16px;overflow-x:auto}.sch-list{border-collapse:collapse;width:100%;font-size:13px}.sch-list th{text-align:left;color:#888;border-bottom:2px solid #eee;padding:8px;font-size:12px;font-weight:600}.sch-list td{vertical-align:middle;border-bottom:1px solid #f0f0f2;padding:8px}.sch-list tr.first-of-day td{border-top:1px solid #e6e6e9}.sch-list-date{white-space:nowrap;width:110px}.sch-list-dow{color:#888;margin-right:6px}.sch-list-day{border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;margin-right:6px;font-weight:600;display:inline-flex}.sch-list-day.today{color:#fff;background:#111}.sch-list-title{color:#111;text-align:left;background:0 0;padding:0;font-size:13px;font-weight:600}.sch-list-title:hover{text-decoration:underline}.sch-status-chip{color:var(--status-color);white-space:nowrap;font-size:12px;font-weight:600;display:inline-block}.sch-status-chip.action{color:#888}.sch-list-wrap.flush{padding:0}.sch-action-check{width:28px}.sch-action-check input{width:auto;margin:0}.sch-action-text{min-width:200px}.sch-list-title.sch-action-task{color:#333;font-weight:400}.sch-action-now{white-space:nowrap;margin-top:0;font-size:12px}.sch-quarter{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;padding:14px;display:grid}.sch-quarter-month{flex-direction:column;gap:10px;min-width:0;display:flex}.sch-quarter-grid-card,.sch-quarter-list{border:1px solid #eee;border-radius:8px}.sch-quarter-title{border-bottom:1px solid #eee;padding:8px 10px;font-size:13px;font-weight:700}.sch-quarter-grid{grid-template-columns:repeat(7,minmax(0,1fr));justify-items:center;row-gap:2px;padding:4px;display:grid}.sch-quarter-dow{color:#999;padding:2px 0;font-size:10px}.sch-quarter-grid .sch-day-num{align-self:center;min-width:22px;height:22px;font-size:11px}.sch-quarter-grid .sch-day-num.today{width:22px}.sch-quarter-list{max-height:360px;padding:4px 8px;overflow-y:auto}.sch-quarter-row{color:#222;text-align:left;background:0 0;border-bottom:1px solid #f3f3f5;border-radius:0;align-items:center;gap:8px;width:100%;padding:6px 2px;font-size:12px;display:flex}.sch-quarter-row:last-child{border-bottom:none}.sch-quarter-row:hover{background:#f7f7f8}.sch-quarter-date{color:#888;min-width:36px}.sch-quarter-dot{background:var(--status-color,#aaa);border-radius:50%;flex-shrink:0;width:7px;height:7px}.sch-board{flex:1;grid-auto-columns:minmax(230px,1fr);grid-auto-flow:column;align-items:start;gap:12px;padding:14px;display:grid;overflow-x:auto}.sch-column{border-top:3px solid var(--status-color,transparent);background:#f7f7f8;border-radius:10px;flex-direction:column;gap:8px;min-height:200px;padding:10px;display:flex}.sch-column.drag-over{outline-offset:-2px;background:#eeeef1;outline:2px dashed #111}.sch-column-head{justify-content:space-between;align-items:center;padding:2px 2px 4px;font-size:14px;font-weight:700;display:flex}.sch-drop-zone{color:#aaa;text-align:center;border:2px dashed #ddd;border-radius:8px;padding:18px 0;font-size:12px}.sch-card{color:#111;text-align:left;border-left:4px solid var(--project-color,#ccc);cursor:grab;background:#fff;border-radius:8px;flex-direction:column;gap:5px;width:100%;padding:10px 12px;display:flex;box-shadow:0 1px 3px #00000014}.sch-card:hover{box-shadow:0 2px 8px #00000024}.sch-card.overdue{background:snow}.sch-card-head{justify-content:space-between;gap:6px;font-size:11px;display:flex}.sch-tag{color:#555;text-overflow:ellipsis;white-space:nowrap;background:#f0f0f2;border-radius:999px;padding:1px 8px;overflow:hidden}.sch-priority{color:var(--priority-color,#888);white-space:nowrap;font-weight:700}.sch-card-title{font-size:14px;font-weight:600;line-height:1.35}.sch-card-desc{color:#666;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sch-card-foot{color:#777;justify-content:space-between;gap:8px;font-size:11px;display:flex}.sch-project-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));align-content:start;gap:14px;padding:14px;display:grid}.sch-project-card{color:#111;text-align:left;background:#fff;border:1px solid #ececef;border-radius:10px;flex-direction:column;gap:8px;padding:14px;display:flex}.sch-project-card:hover{box-shadow:0 2px 8px #0000001a}.sch-project-card-head,.sch-project-detail-head{align-items:center;gap:8px;min-width:0;display:flex}.sch-project-card-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.sch-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.sch-phase{color:#555;white-space:nowrap;background:#f0f0f2;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.sch-progress{background:#efeff1;border-radius:4px;height:7px;display:block;overflow:hidden}.sch-progress>span{background:#111;height:100%;display:block}.sch-progress.wide{margin:10px 0 4px}.sch-project-card-meta{color:#666;justify-content:space-between;gap:8px;font-size:12px;display:flex}.sch-project-card-code{color:#999;font-size:11px}.sch-project-detail{padding-bottom:16px}.sch-project-detail>:not(.sch-toolbar){margin-left:16px;margin-right:16px}.sch-project-detail-head{margin-top:14px}.sch-project-detail-head h3{margin:0;font-size:18px}.sch-detail-group h4{color:var(--status-color);align-items:center;gap:6px;margin:16px 0 6px;font-size:14px;display:flex}.sch-detail-row{color:#222;text-align:left;background:0 0;border-bottom:1px solid #f0f0f2;border-radius:0;grid-template-columns:96px minmax(0,1fr) auto auto;align-items:center;gap:12px;width:100%;padding:8px 4px;font-size:13px;display:grid}.sch-detail-row:hover{background:#f7f7f8}.sch-detail-number{color:#888;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.sch-modal-backdrop{z-index:100;background:#00000059;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.sch-modal{width:100%;max-width:760px;padding:20px 24px 24px}.sch-modal-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.sch-modal-head h3{margin:0}.sch-modal .task-form-row button.link{white-space:nowrap}@media (width<=900px){.sch-quarter{grid-template-columns:1fr}}@media (width<=760px){.sch-body{flex-direction:column}.sch-sidebar{border-bottom:1px solid #e6e6e9;border-right:none;width:auto}.sch-month-grid{grid-auto-rows:minmax(72px,auto)}.sch-page-actions{flex-wrap:wrap;justify-content:space-between;gap:8px;width:100%}.sch-page-actions .view-toggle button{padding:6px 10px}.sch-list th:nth-child(n+4),.sch-list td:nth-child(n+4){display:none}.sch-list.sch-actions,.sch-list.sch-actions tbody{display:block}.sch-list.sch-actions tr{border-bottom:1px solid #f0f0f2;grid-template-columns:28px minmax(0,1fr) auto;gap:3px 8px;padding:8px 0;display:grid}.sch-list.sch-actions td{border:none;min-width:0;padding:0;display:block}.sch-list.sch-actions td:first-child{grid-row:span 3}.sch-list.sch-actions td:nth-child(2),.sch-list.sch-actions td:nth-child(3){grid-column:2/4}.sch-list.sch-actions td:nth-child(3){font-size:12px}.sch-list.sch-actions td:nth-child(4),.sch-list.sch-actions td:nth-child(5){display:none}.sch-list.sch-actions td:nth-child(6){grid-area:3/2;font-size:12px}.sch-list.sch-actions td:nth-child(7){text-align:right;grid-area:3/3}.sch-cal-title{white-space:nowrap;font-size:15px}.sch-cal-header-left{flex-wrap:wrap}.sch-day-num{text-overflow:ellipsis;max-width:100%;padding:0 3px;font-size:11px;overflow:hidden}.sch-item{padding:1px 4px;font-size:11px}.sch-item-time{display:none}.sch-detail-row{grid-template-columns:minmax(0,1fr) auto}.sch-detail-number,.sch-detail-row>:last-child{display:none}.sch-modal-backdrop{padding:0}.sch-modal{border-radius:0;min-height:100%}}
