@import url('theme-defaults.css');
/* User tokens override the existing theme, preserving the original layout. */
[data-theme=light]{--ui-app-bg:#eef4f8;--ui-secondary-bg:#e2edf4;--ui-card-bg:#ffffff;--ui-sidebar-bg:#f2f7fa;--ui-topbar-bg:#f7fafc;--ui-main-text:#142b40;--ui-secondary-text:#46617a;--ui-border-color:#c5d6e4;--ui-card-border:#c5d6e4;--ui-input-bg:#ffffff;--ui-input-text:#142b40;--ui-dropdown-bg:#ffffff;--ui-modal-bg:#ffffff;--ui-task-card:#ffffff;--ui-project-card:#ffffff;--ui-goal-card:#ffffff;--ui-sidebar-text:#24445e;--ui-sidebar-active:#d0eaf4;--ui-sidebar-hover:#e2edf4;--ui-search-bg:#e2edf4;--ui-card-hover:#edf7fc;--ui-button-secondary:#dfebf4;--ui-hover-state:#d6e8f3}
:root{--shadow:0 8px 28px rgb(0 0 0 / calc(var(--ui-shadow-intensity)/100))}
body .sidebar{background:var(--ui-sidebar-bg)!important}.topbar{background:var(--ui-topbar-bg)!important}.sidebar .nav-link{color:var(--ui-sidebar-text)!important}.sidebar .nav-link .sw-icon{color:var(--ui-sidebar-icon)!important}.sidebar .nav-link.active{background:var(--ui-sidebar-active)!important}.sidebar .nav-link:hover{background:var(--ui-sidebar-hover)!important}
body .project-card{background:var(--ui-project-card)!important}body .goal-card{background:var(--ui-goal-card)!important}body :is(.panel,.project-card,.goal-card,.task-card,.member-card,.member-upgrade){border-radius:calc(var(--ui-card-radius)*1px);border-color:color-mix(in srgb,var(--ui-card-border) calc(var(--ui-border-intensity)*1%),transparent)!important}
body :is(.panel,.project-card,.goal-card,.member-card){padding:calc(var(--ui-density)*1px)}
body .project-meta>span{background:var(--ui-secondary-bg)!important;border:1px solid var(--ui-card-border);color:var(--ui-main-text)}body .project-meta small{color:var(--ui-secondary-text)}body .project-meta b{color:var(--ui-main-text)}
body :is(.task-card,.compact-task-row,.tl-card)[class*="status-"]{background:color-mix(in srgb,var(--status-color) 13%,var(--ui-task-card))!important;border:1px solid color-mix(in srgb,var(--status-color) 60%,var(--ui-card-border))!important;border-block-start:3px solid var(--status-color)!important;box-shadow:0 3px 18px color-mix(in srgb,var(--status-color) calc(var(--ui-glow-intensity)*1%),transparent)!important;color:var(--ui-main-text)!important}
body .status-badge{background:color-mix(in srgb,var(--status-color) 22%,var(--ui-card-bg))!important;color:var(--ui-main-text)!important;border:1px solid var(--status-color)}body .compact-task-row{border-radius:calc(var(--ui-border-radius)*1px);padding:12px}
body .primary-btn,body .ai-send,body .mobile-fab{background:var(--ui-button-color)!important;color:var(--ui-button-text)!important;border-radius:calc(var(--ui-button-radius)*1px)}body .primary-btn:hover{background:var(--ui-button-hover)!important}body .secondary-btn{background:var(--ui-button-secondary)!important;color:var(--ui-main-text)!important;border-radius:calc(var(--ui-button-radius)*1px)}
body input,body textarea{background:var(--ui-input-bg)!important;border-color:var(--ui-input-border)!important;color:var(--ui-input-text)!important;border-radius:calc(var(--ui-border-radius)*1px)}body select,body option{background:var(--ui-dropdown-bg)!important;color:var(--ui-input-text)!important;border-color:var(--ui-input-border)!important}body .modal{background:var(--ui-modal-bg)!important}body .search-trigger{background:var(--ui-search-bg)!important}
body .sw-icon{color:var(--ui-icon-color)}body .icon-btn{border-radius:calc(var(--ui-button-radius)*1px)}body .icon-btn:hover{background:var(--ui-icon-bg)!important}body :is(button,a):focus-visible,body :is(input,textarea,select):focus-visible{outline:2px solid var(--ui-focus-state)!important;outline-offset:3px}body .project-card:hover,body .goal-card:hover{background:var(--ui-card-hover)!important}body .progress i{background:var(--ui-progress-color)!important}body .badge{background:var(--ui-badge-bg);color:var(--ui-badge-text)}body .notice-row.unread>i,body .bell>i{background:var(--ui-notification-badge)!important}
.messages-link{position:relative}.messages-link em{position:absolute;top:0;inset-inline-end:0;background:var(--ui-message-badge);color:#082435;border-radius:20px;padding:1px 5px;font-size:10px;font-style:normal}.messages-link em[hidden]{display:none}.notice-action{display:block;margin-top:7px;color:var(--ui-link-color)}
.member-upgrade{background:var(--surface);border:1px solid var(--line);min-width:0;overflow:hidden}.member-upgrade .member-card{border:0!important;box-shadow:none!important;display:block}.member-upgrade>.secondary-btn{display:flex;margin:0 18px 18px;justify-content:center}.member-level{padding:0 18px 18px}.member-level>div:first-child{display:flex;justify-content:space-between;margin-bottom:8px}.member-level small{color:var(--muted);font-size:11px;line-height:1.6}.member-level details{margin-top:8px;font-size:12px}.activity-grid{display:grid;grid-template-columns:repeat(28,minmax(0,1fr));gap:3px;margin-top:12px}.activity-cell{aspect-ratio:1;border-radius:2px;background:var(--surface-soft);border:1px solid var(--line)}.activity-cell.active{background:var(--ui-success);border-color:var(--ui-success)}
.status-editor{display:grid;grid-template-columns:minmax(120px,2fr) 65px 80px 75px auto auto;gap:10px;align-items:end;border-bottom:1px solid var(--line);padding:16px 0}.status-editor label,.theme-controls label{display:grid;gap:7px;font-size:12px;text-transform:capitalize}.status-editor input{width:100%;min-width:0;min-height:40px}.status-editor .check-label{display:flex;align-items:center;align-self:center}.check-label input{width:18px!important;min-height:18px}.theme-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.theme-controls input[type=color]{width:100%;height:38px;padding:4px}.theme-controls input[type=range]{width:100%;min-width:0}.theme-preview{padding:18px;margin:18px 0;border:1px solid var(--line);background:var(--surface-soft);border-radius:calc(var(--ui-card-radius)*1px)}.appearance-panel details summary{cursor:pointer;padding:12px 0}.appearance-panel .heading-actions{flex-wrap:wrap}
.messages-layout{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:18px}.messages-layout>*{min-width:0}.messages-layout select{width:100%;margin:10px 0}.conversation-item{display:flex;gap:10px;align-items:center;padding:14px 5px;border-bottom:1px solid var(--line)}.conversation-item>span{min-width:0}.conversation-item small{display:block;overflow-wrap:anywhere;color:var(--muted);font-size:11px;margin-top:5px}.conversation-item.active{background:var(--ui-selected-state)}.conversation header{display:flex;align-items:center;gap:12px}.conversation h2{font-size:18px}.dm-messages{min-height:180px;max-height:55vh;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:16px 0}.dm-bubble{max-width:85%;align-self:flex-start;background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;padding:12px;overflow-wrap:anywhere}.dm-bubble.mine{align-self:flex-end;background:color-mix(in srgb,var(--ui-primary) 18%,var(--surface))}.dm-bubble p{white-space:pre-wrap;margin:7px 0}.dm-bubble small{font-size:11px;color:var(--muted)}.dm-bubble b{font-size:12px}.dm-compose{display:flex;align-items:end;gap:10px}.dm-compose label{flex:1;min-width:0;display:grid;gap:8px}.dm-compose textarea{width:100%;resize:vertical}.tl-toolbar{flex-wrap:wrap}.tl-toolbar select{max-width:100%}.tl-legend{flex-wrap:wrap}
@media(max-width:900px){.status-editor{grid-template-columns:minmax(0,1fr) 60px 75px}.messages-layout{grid-template-columns:minmax(0,1fr)}#dmConversations{max-height:230px;overflow:auto}.theme-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.top-actions{gap:0!important}.top-actions .lang{min-width:40px!important}.top-actions .lang>span:not(.sw-icon){display:none}.status-editor{grid-template-columns:minmax(0,1fr) 65px}.theme-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.dm-compose{flex-wrap:wrap}.dm-compose label{flex-basis:100%}.tl-toolbar>*{min-width:0}.activity-grid{grid-template-columns:repeat(21,minmax(0,1fr))}}
/* Match legacy dark selectors so per-user tokens remain authoritative. */
html[data-theme] body :is(.panel,.member-card,.tl-grid){background:var(--ui-card-bg)!important;color:var(--ui-main-text)!important;border-color:var(--ui-card-border)!important}
html[data-theme] body .sidebar{background:var(--ui-sidebar-bg)!important}html[data-theme] body .topbar{background:var(--ui-topbar-bg)!important}
html[data-theme] body .modal{background:var(--ui-modal-bg)!important}html[data-theme] body :is(input,textarea){background:var(--ui-input-bg)!important;color:var(--ui-input-text)!important;border-color:var(--ui-input-border)!important}html[data-theme] body select{background:var(--ui-dropdown-bg)!important;color:var(--ui-input-text)!important;border-color:var(--ui-input-border)!important}
html[data-theme] body :is(.primary-btn,.ai-send,.mobile-fab){background:var(--ui-button-color)!important;color:var(--ui-button-text)!important}html[data-theme] body .primary-btn:hover{background:var(--ui-button-hover)!important}
html[data-theme] body .menu-btn,html[data-theme] body .theme-toggle{background:var(--ui-icon-bg)!important;color:var(--ui-icon-color)!important;border-color:var(--ui-border-color)!important}
.top-actions .messages-link .sw-icon{display:inline-grid!important}.top-actions .messages-link svg{display:block!important}.upgrade-task-filter{display:flex;align-items:center;gap:12px;margin:0 0 18px}.upgrade-task-filter select{max-width:70%;min-height:42px}
body [hidden]{display:none!important}
@media(min-width:721px) and (max-width:1100px){.topbar{gap:12px;padding-inline:18px}.search-trigger{min-width:0;width:auto;flex:1}.search-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-trigger kbd{display:none}.top-actions{flex-shrink:0}.ai-heading{flex-wrap:wrap}}
@media(max-width:720px){.messages-page~.mobile-fab,.app-shell:has(.messages-page)>.mobile-fab,.app-shell:has(.messages-page)>.mobile-ai-fab{display:none}}
@media(max-width:720px){.app-shell:has(.messages-page)>.mobile-fab,.app-shell:has(.messages-page)>.mobile-ai-fab{display:none!important}}
html[data-theme] body :is(.panel,.project-card,.goal-card,.task-card,.member-card,.member-upgrade){border-radius:calc(var(--ui-card-radius)*1px)!important;border-color:color-mix(in srgb,var(--ui-card-border) calc(var(--ui-border-intensity)*1%),transparent)!important}
html[data-theme] body :is(.panel,.project-card,.goal-card,.member-card){padding:calc(var(--ui-density)*1px)!important}
html[data-theme] body .secondary-btn:hover{background:var(--ui-hover-state)!important}.notice-icon .sw-icon{color:var(--ui-info)}
html[data-theme] body :is(.task-card,.compact-task-row,.tl-card)[class*="status-"]{border-color:color-mix(in srgb,var(--status-color) 60%,var(--ui-card-border))!important;border-block-start-color:var(--status-color)!important}
