*{box-sizing:border-box}:root{color-scheme:light;--accent: #2563eb;--accent-strong: #1d4ed8;--accent-contrast: #ffffff;--app-bg: #f5f7f9;--surface: #ffffff;--surface-muted: #fafbfc;--surface-soft: #f8fafb;--outside-surface: #fbfcfd;--border: #dde3ea;--border-soft: #edf1f5;--text-strong: #1f2937;--text: #30343b;--text-muted: #687385;--text-faint: #b8c0ca;--hover: #f3f6fa;--accent-soft: color-mix(in srgb, var(--accent) 12%, var(--surface));--accent-border: color-mix(in srgb, var(--accent) 34%, var(--border));--shadow: rgba(31, 41, 55, .12)}:root[data-color-theme=teal]{--accent: #0f8b8d;--accent-strong: #0f6f71}:root[data-color-theme=violet]{--accent: #7c3aed;--accent-strong: #6d28d9}:root[data-color-theme=orange]{--accent: #ea580c;--accent-strong: #c2410c}:root[data-color-theme=rose]{--accent: #e11d48;--accent-strong: #be123c}:root[data-color-theme=emerald]{--accent: #059669;--accent-strong: #047857}:root[data-color-theme=indigo]{--accent: #4f46e5;--accent-strong: #4338ca}:root[data-theme=dark]{color-scheme:dark;--app-bg: #0c1117;--surface: #141b23;--surface-muted: #1a232d;--surface-soft: #111820;--outside-surface: #10171f;--border: #2b3745;--border-soft: #25313e;--text-strong: #edf2f7;--text: #dce4ed;--text-muted: #9aa8b8;--text-faint: #667586;--hover: #1f2a36;--shadow: rgba(0, 0, 0, .38)}body{margin:0;min-width:320px;color:var(--text);background:var(--app-bg);transition:color .2s ease,background-color .2s ease}button,input,textarea{font:inherit}.refresh-icon.is-spinning{animation:refresh-icon-spin .65s ease-in-out}@keyframes refresh-icon-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.refresh-icon.is-spinning{animation:none}}.app-shell{min-height:100vh;display:grid;grid-template-columns:320px minmax(0,1fr)}.side-panel{min-height:100vh;padding:24px;border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;gap:22px}.brand-block{display:flex;align-items:center;gap:12px}.brand-block h3,.topbar h2,.drawer-title{margin:0}.brand-icon{width:46px;height:46px;border-radius:8px;background:var(--accent);color:var(--accent-contrast);display:grid;place-items:center;flex:0 0 auto}.create-button{height:46px}.milestone-create-button{height:44px;border-color:color-mix(in srgb,var(--accent) 52%,var(--border));color:var(--accent);background:transparent}.milestone-create-button:hover,.milestone-create-button:focus-visible{border-color:var(--accent)!important;color:var(--accent)!important;background:transparent!important}.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.summary-grid>div{border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--surface-muted);min-height:76px;display:flex;flex-direction:column;justify-content:center}.summary-grid strong{font-size:26px;line-height:1;color:var(--text-strong)}.summary-grid span{margin-top:8px;color:var(--text-muted)}.side-section{min-height:0}.side-section .ant-list{margin-top:8px}.milestone-side-section .ant-list{max-height:210px;overflow-y:auto}.related-meeting-item{cursor:pointer;border-radius:8px;transition:background-color .18s ease}.related-meeting-item:hover,.related-meeting-item:focus-visible{background:var(--hover);outline:none}.related-meeting-line{display:flex;align-items:flex-start;gap:8px;width:100%}.related-meeting-line>div{min-width:0;display:flex;flex-direction:column}.related-meeting-line .ant-typography{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.milestone-list-main{min-width:0;flex:1 1 auto;outline:none}.milestone-pin-button.ant-btn{flex:0 0 auto;color:var(--text-muted);opacity:.58}.milestone-list-item:hover .milestone-pin-button,.milestone-pin-button.ant-btn:focus-visible,.milestone-pin-button.ant-btn.is-pinned{opacity:1}.milestone-pin-button.ant-btn.is-pinned{color:var(--accent);background:var(--accent-soft)}.calendar-panel{min-width:0;padding:24px 28px 28px}.topbar{min-height:62px;margin-bottom:18px}.meeting-calendar{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.calendar-toolbar{min-height:64px;padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px}.calendar-range{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left;font-size:18px}.calendar-toolbar-actions{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:12px}.calendar-filter-bar{min-height:46px;padding:10px 16px;border-bottom:1px solid var(--border-soft);background:var(--surface-muted);display:flex;align-items:center;gap:20px;flex-wrap:wrap}.calendar-filter-label{font-size:12px;font-weight:700;letter-spacing:.06em}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekday{height:34px;display:grid;place-items:center;border-bottom:1px solid var(--border-soft);color:var(--text);font-size:15px;font-weight:700}.calendar-cell{height:132px;padding:8px;display:flex;flex-direction:column;gap:6px;overflow:hidden;border-right:1px solid var(--border-soft);border-top:1px solid var(--border-soft);background:var(--surface);cursor:pointer;outline:none;touch-action:pan-y;transition:background-color .16s ease,box-shadow .16s ease}.calendar-grid .calendar-cell:nth-child(7n+7){border-right:0}.calendar-grid.is-week-view .calendar-cell{height:min(52vh,460px)}.calendar-cell.is-outside-month{background:var(--outside-surface)}.calendar-cell.is-outside-month .calendar-day{color:var(--text-faint)}.calendar-cell.is-selected-day{background:#dbe8ff;box-shadow:inset 0 2px 0 var(--accent)}.calendar-cell.is-today .calendar-day{border:1px solid var(--accent);color:var(--accent-strong)}.calendar-day{min-width:64px;min-height:30px;align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;border-radius:8px;font-size:13px;font-weight:600;color:var(--text-strong)}.calendar-cell.is-selected-day .calendar-day{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.meeting-stack{flex:1 1 auto;display:flex;flex-direction:column;gap:4px;min-height:0;overflow-y:auto;overscroll-behavior-y:auto;touch-action:pan-y;padding-right:2px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 58%,var(--surface)) transparent}.meeting-stack::-webkit-scrollbar{width:6px}.meeting-stack::-webkit-scrollbar-thumb{border-radius:999px;background:color-mix(in srgb,var(--accent) 58%,var(--surface))}.meeting-stack::-webkit-scrollbar-track{background:transparent}.meeting-chip{width:100%;height:23px;border:0;border-left:3px solid currentColor;border-radius:6px;padding:0 5px;display:flex;align-items:center;gap:4px;cursor:pointer;text-align:left;transition:transform .16s ease,box-shadow .16s ease}.meeting-chip:hover{transform:translateY(-1px);box-shadow:0 3px 10px var(--shadow)}.chip-icon{flex:0 0 12px;display:inline-flex;align-items:center;justify-content:center}.chip-time{flex:0 0 auto;margin-left:auto;font-size:12px;font-weight:600}.chip-title{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600}.chip-title>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chip-repeat-icon{flex:0 0 auto}.milestone-kind{display:inline-flex;align-items:center;gap:3px}.milestone-chip{gap:5px}.milestone-planned{--milestone-status-bg: #eaf2ff;--milestone-status-color: #1d4ed8;background:var(--milestone-status-bg);color:var(--milestone-status-color)}.milestone-in-progress{--milestone-status-bg: #fff7cc;--milestone-status-color: #8a5a00;background:var(--milestone-status-bg);color:var(--milestone-status-color)}.milestone-completed{--milestone-status-bg: #e8f7ef;--milestone-status-color: #18794e;background:var(--milestone-status-bg);color:var(--milestone-status-color)}.milestone-overdue{--milestone-status-bg: #fde8e7;--milestone-status-color: #c2413a;background:var(--milestone-status-bg);color:var(--milestone-status-color)}.milestone-status-trigger.ant-btn{min-width:66px;padding-inline:9px;border-color:color-mix(in srgb,currentColor 34%,transparent);color:var(--milestone-status-color);background:var(--milestone-status-bg);display:inline-flex;align-items:center;justify-content:center;gap:4px}.milestone-status-trigger.ant-btn:hover,.milestone-status-trigger.ant-btn:focus-visible{border-color:currentColor!important;color:var(--milestone-status-color)!important;background:var(--milestone-status-bg)!important}.milestone-title-row{display:flex;align-items:center}.milestone-title-row .drawer-title.ant-typography{margin:0!important;line-height:1.25}.milestone-title-row .milestone-status-trigger,.milestone-title-row .ant-tag{margin:0;align-self:center}.milestone-reschedule-field{padding-top:8px;display:flex;flex-direction:column;gap:8px}.inline-icon{margin-right:5px;vertical-align:-2px}.milestone-description{padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);display:flex;flex-direction:column;gap:6px}.milestone-description .ant-typography:last-child{white-space:pre-wrap;overflow-wrap:anywhere}.status-scheduled{background:#eaf2ff;color:#1d4ed8}.status-running{background:#e8f5ed;color:#24714a}.status-finished{background:#eef0f3;color:#697386}.status-cancelled{background:#fae8e6;color:#a93630;text-decoration:line-through}.full-width,.drawer-content{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center}.recurrence-section{margin-bottom:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.recurrence-section .ant-form-item:last-child{margin-bottom:0}.recurrence-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.recurrence-controls .ant-form-item:first-child{grid-column:1 / -1}.modal-actions{margin-top:6px}.result-box{display:flex;flex-direction:column;gap:16px}.series-result{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--accent-border);border-radius:8px;background:var(--accent-soft);color:var(--accent-strong)}.copy-line,.link-box{margin-top:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.link-box{grid-template-columns:auto minmax(0,1fr) auto;margin-top:0;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.copy-value,.link-text{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.calendar-subscription-content{min-height:180px;display:flex;flex-direction:column;gap:16px}.subscription-url-box{padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.subscription-help,.subscription-warning{display:block;line-height:1.6}.link-copy-content{min-width:0;display:flex;flex-direction:column;gap:2px}.link-copy-content .ant-typography:first-child{font-size:12px}.password-line .copy-value{font-size:18px;font-weight:700;letter-spacing:0;color:#9a3412}.section-title{margin-bottom:10px}.attendee-list{display:flex;flex-wrap:wrap;gap:8px}.attendee-option{display:flex;flex-direction:column;gap:2px;padding:2px 0}.attendee-option-name{color:var(--text-strong);font-weight:600}.attendee-option-meta{color:var(--text-muted);font-size:12px}.auth-shell{min-height:100vh;padding:32px 18px;display:grid;place-items:center;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent),var(--app-bg)}.auth-panel{width:min(100%,430px);padding:28px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 16px 36px var(--shadow)}.auth-brand{margin-bottom:22px}.auth-form{margin-top:20px}.reset-form{margin-top:18px}.reset-form>.ant-typography{display:block;margin-bottom:18px;line-height:1.6}.user-actions{flex:0 0 auto;position:relative;display:flex;align-items:center;gap:12px}.user-pill{min-width:132px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);display:flex;flex-direction:column;gap:1px}.account-menu-button{width:40px;height:40px}.user-pill .ant-typography{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.user-management-button{height:40px}.review-section .ant-list{margin-top:8px}.review-line{width:100%;min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.review-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.review-copy .ant-typography{overflow-wrap:anywhere}.review-message{color:var(--text-muted)}.user-row{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px}.user-row-main{min-width:0;display:flex;flex-direction:column;gap:6px}.user-row-main .ant-typography{overflow-wrap:anywhere}.user-row-actions{justify-content:flex-end}.directory-search{min-width:0}.directory-person-contact .lucide-phone,.directory-person-contact .lucide-mail,.user-row-main .lucide-phone,.user-row-main .lucide-mail{vertical-align:-2px}.centered-settings-modal .ant-modal-header{margin-bottom:18px}.centered-settings-modal .ant-modal-title>.ant-space{color:var(--text-strong)}.modal-toolbar{margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:14px}.directory-toolbar .directory-search{flex:1 1 auto}.modal-result-count{flex:0 0 auto;white-space:nowrap}.modal-scroll-area{min-height:120px;max-height:min(58vh,520px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.directory-list-scroll{padding-right:6px}.directory-person-item.ant-list-item{margin-bottom:10px;padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.directory-person-item.ant-list-item:last-child{margin-bottom:0}.directory-person-row{width:100%;min-width:0;display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);align-items:center;gap:18px}.directory-person-identity,.directory-person-contact{min-width:0;display:flex;flex-direction:column;gap:5px}.directory-person-identity .ant-typography,.directory-person-contact .ant-typography{min-width:0;overflow-wrap:anywhere}.group-collapse-label{width:100%;min-width:0;padding-right:8px;display:flex;align-items:center;justify-content:space-between;gap:12px}.group-collapse-label>div:first-child{min-width:0;display:flex;flex-direction:column;gap:2px}.group-collapse-label .ant-typography{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.group-detail{display:flex;flex-direction:column;gap:14px}.group-modal-toolbar{padding-bottom:14px;border-bottom:1px solid var(--border-soft)}.group-list-scroll{max-height:min(56vh,500px);padding:2px 6px 2px 2px}.group-collapse.ant-collapse{border:0;background:transparent}.group-collapse>.ant-collapse-item{margin-bottom:10px;overflow:hidden;border:1px solid var(--border)!important;border-radius:10px!important;background:var(--surface-muted)}.group-collapse>.ant-collapse-item:last-child{margin-bottom:0}.group-collapse>.ant-collapse-item>.ant-collapse-content{border-top-color:var(--border-soft);background:var(--surface)}.group-actions{margin-top:2px}.group-member-row{width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.group-member-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.group-member-copy>.ant-typography{overflow-wrap:anywhere}.join-shell{min-height:100vh;padding:32px 18px;display:grid;place-items:center;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent),var(--app-bg)}.join-panel{width:min(100%,460px);padding:28px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 16px 36px var(--shadow)}.join-icon{width:52px;height:52px;margin-bottom:18px;border-radius:8px;display:grid;place-items:center;color:var(--accent-contrast);background:var(--accent)}.preferences-card{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:2px 0}.preferences-section{min-width:0;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);display:flex;flex-direction:column;gap:10px}.preferences-section-wide{grid-column:1 / -1}.appearance-mode-segmented .ant-space-item{display:inline-flex;align-items:center}.appearance-mode-segmented .ant-space-item .lucide{display:block}.preferences-modal .ant-modal-body{max-height:min(70vh,650px);overflow-y:auto;overscroll-behavior:contain}.preference-toggle-row{padding-top:2px;display:flex;align-items:center;justify-content:space-between;gap:16px}.preference-toggle-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.preference-toggle-copy .ant-typography:last-child{font-size:12px}.profile-notification-row{margin:-2px 0 20px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.preference-color-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.preference-color-option{min-width:0;padding:8px 4px;border:1px solid var(--border);border-radius:8px;color:var(--text-muted);background:var(--surface);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.preference-color-option:hover,.preference-color-option:focus-visible{border-color:var(--swatch-color);background:var(--hover);outline:none}.preference-color-option:disabled{cursor:not-allowed;opacity:.52}.preference-color-option.is-selected{border-color:var(--swatch-color);color:var(--text-strong);box-shadow:0 0 0 2px color-mix(in srgb,var(--swatch-color) 22%,transparent)}.preference-color-swatch{width:28px;height:28px;border-radius:50%;color:#fff;background:var(--swatch-color);display:grid;place-items:center}.custom-color-editor{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.custom-color-preview{width:14px;height:14px;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:50%;display:inline-block}.custom-color-help{margin-top:-4px;font-size:12px}:root[data-theme=dark] .status-running{background:#173526;color:#79d59e}:root[data-theme=dark] .status-scheduled{background:#172a4d;color:#8eb8ff}:root[data-theme=dark] .calendar-cell.is-selected-day{background:#101c32}:root[data-theme=dark] .status-finished{background:#28313c;color:#a8b3c1}:root[data-theme=dark] .status-cancelled{background:#3b2023;color:#ff9d98}:root[data-theme=dark] .milestone-planned{--milestone-status-bg: #172a4d;--milestone-status-color: #8eb8ff}:root[data-theme=dark] .milestone-in-progress{--milestone-status-bg: #3b3215;--milestone-status-color: #facc15}:root[data-theme=dark] .milestone-completed{--milestone-status-bg: #173526;--milestone-status-color: #79d59e}:root[data-theme=dark] .milestone-overdue{--milestone-status-bg: #3b2023;--milestone-status-color: #ff9d98}:root[data-theme=dark] .password-line .copy-value{color:#fdba74}.join-content{width:100%}.join-content h2{margin:4px 0 0;font-size:26px}.join-form{width:100%}@media (max-width: 960px){.app-shell{grid-template-columns:1fr}.side-panel{min-height:auto;border-right:0;border-bottom:1px solid var(--border)}.calendar-panel{padding:18px}}@media (max-width: 640px){.side-panel{padding:18px}.topbar{align-items:flex-start!important;flex-direction:column;gap:10px}.user-actions,.topbar>div:first-child{width:100%}.user-actions{flex-wrap:nowrap}.preferences-card{grid-template-columns:1fr}.preferences-section-wide{grid-column:auto}.preference-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.custom-color-editor{grid-template-columns:1fr}.modal-toolbar,.directory-person-row{align-items:stretch;grid-template-columns:1fr}.modal-toolbar{flex-direction:column}.group-modal-toolbar>.ant-space{align-self:flex-end}.modal-result-count{align-self:flex-end}.preferences-card>.preferences-section:nth-child(2) .ant-segmented-item-label .lucide{display:none}.preferences-card>.preferences-section:nth-child(2) .ant-segmented-item-label .ant-space{gap:0!important}.preferences-card>.preferences-section:nth-child(2) .ant-segmented-item-label{padding-inline:4px}.user-pill{min-width:0;flex:1 1 auto}.review-line{flex-direction:column}.user-row{grid-template-columns:1fr}.group-collapse-label,.group-member-row{align-items:flex-start;flex-direction:column}.user-row-actions{justify-content:flex-start}.form-grid,.recurrence-controls{grid-template-columns:1fr}.calendar-toolbar{align-items:stretch;flex-direction:column}.calendar-toolbar-actions{width:100%;justify-content:space-between;gap:10px}.calendar-filter-bar{gap:10px 16px}.calendar-filter-label{width:100%}.calendar-grid{min-width:760px}.meeting-calendar{overflow-x:auto}.calendar-cell{height:112px}.calendar-grid.is-week-view .calendar-cell{height:280px}}
