:root{color-scheme:light;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #f4f5f8;--surface: #ffffff;--surface-soft: #f8f8fb;--surface-strong: #eef0f5;--ink: #171923;--ink-soft: #343747;--muted: #73778a;--muted-strong: #5b6072;--muted-light: #a1a5b3;--line: #e4e6ec;--line-strong: #d7dae4;--accent: #5967f2;--accent-strong: #4452df;--accent-soft: #eef0ff;--accent-muted: #9098ef;--success: #1f9d72;--success-soft: #eaf8f3;--warning: #d99a25;--warning-soft: #fff7e7;--danger: #d85c55;--danger-soft: #fff0ef;--sidebar: #171923;--sidebar-muted: #9ca0b2;--shadow-sm: 0 8px 24px rgba(28, 31, 45, .055);--shadow-soft: 0 14px 38px rgba(28, 31, 45, .08);--shadow-md: 0 22px 60px rgba(28, 31, 45, .12);--shadow-lg: 0 36px 90px rgba(21, 23, 34, .2);--radius-sm: 12px;--radius: 18px;--radius-lg: 26px;--sidebar-width: 252px}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--bg);-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 82% -15%,rgba(89,103,242,.08),transparent 28rem),var(--bg);color:var(--ink)}body,button,input,textarea,select{font:inherit}button,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a,select{touch-action:manipulation}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink);outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}input,select{min-height:44px;padding:0 13px}textarea{min-height:88px;padding:12px 13px;line-height:1.55;resize:vertical}input:focus,textarea:focus,select:focus{border-color:#5967f29e;box-shadow:0 0 0 4px #5967f21a}input::placeholder,textarea::placeholder{color:#a2a6b4}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 17px) calc(50% - 2px),calc(100% - 12px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong{letter-spacing:-.025em}h1{margin-bottom:8px;font-size:clamp(1.85rem,2.5vw,2.65rem);line-height:1.08}h2{margin-bottom:8px;font-size:1.25rem;line-height:1.18}h3{margin-bottom:6px;font-size:1rem;line-height:1.28}p{color:var(--muted);line-height:1.55}a{color:inherit;text-decoration:none}code{padding:2px 6px;border-radius:7px;background:var(--surface-strong);font-family:SFMono-Regular,Consolas,monospace;font-size:.86em}#app{min-height:100vh}::selection{background:#5967f233}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:10px;background:#4347593d;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}.mobile-only{display:none!important}.eyebrow{display:inline-flex;margin-bottom:8px;color:var(--muted-strong);font-size:.72rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:13px;background:var(--surface);color:var(--ink);font-weight:680;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.button{min-height:44px;padding:0 16px}.button:hover:not(:disabled),.icon-button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled),.icon-button:active:not(:disabled){transform:translateY(0) scale(.985)}.button--primary{background:var(--ink);color:#fff;box-shadow:0 10px 24px #17192329}.button--primary:hover:not(:disabled){background:#242735;box-shadow:0 13px 28px #17192333}.button--soft{border-color:var(--line);background:var(--surface);color:var(--ink-soft);box-shadow:var(--shadow-sm)}.button--soft:hover:not(:disabled){border-color:var(--line-strong);background:#fbfbfd}.button--danger{background:var(--danger-soft);color:var(--danger)}.button--quiet{border-color:transparent;box-shadow:none}.button--small{min-height:36px;padding:0 12px;border-radius:11px;font-size:.87rem}.button--wide{width:100%}.button--icon{width:44px;min-width:44px;padding:0}.icon-button{width:40px;height:40px;padding:0;border-color:var(--line);box-shadow:none}.icon-button--small{width:28px;height:28px;border:0;background:transparent}.field{display:grid;gap:7px;color:var(--muted-strong);font-size:.84rem;font-weight:660}.field--title input{min-height:52px;font-size:1.12rem;font-weight:720}.form-grid{display:grid;gap:14px}.form-error{margin:0;color:var(--danger);font-size:.9rem}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.desktop-sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:var(--sidebar-width);display:flex;flex-direction:column;padding:24px 17px 18px;background:radial-gradient(circle at 18% 0%,rgba(124,131,255,.15),transparent 16rem),var(--sidebar);color:#fff}.brand-lockup{display:flex;align-items:center;gap:11px;min-width:0}.brand-lockup>div{display:grid;min-width:0}.brand-lockup strong{font-size:1rem;line-height:1.1}.brand-lockup span:not(.brand-mark){margin-top:3px;color:var(--sidebar-muted);font-size:.77rem}.brand-mark{display:inline-grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border-radius:12px;background:linear-gradient(145deg,#7580ff,#4f5de2);color:#fff;font-size:1.12rem;font-weight:820;box-shadow:0 10px 24px #4653e04d}.brand-mark--large{width:48px;height:48px;border-radius:15px;font-size:1.35rem}.sidebar-project{display:grid;gap:8px;margin-top:34px}.sidebar-label{padding-left:4px;color:#777c91;font-size:.68rem;font-weight:760;letter-spacing:.13em;text-transform:uppercase}.project-select{min-height:44px;border-color:#ffffff17;background-color:#ffffff0e;color:#fff;font-size:.88rem;font-weight:650}.project-select option{color:var(--ink)}.sidebar-nav{display:grid;gap:5px;margin-top:24px}.nav-item{position:relative;display:flex;align-items:center;gap:12px;min-height:45px;padding:0 12px;border-radius:12px;color:#aeb2c1;font-size:.91rem;font-weight:620;transition:background .18s ease,color .18s ease,transform .18s ease}.nav-item:hover{background:#ffffff0e;color:#fff}.nav-item.router-link-active{background:#7c83ff29;color:#fff}.nav-item.router-link-active:before{content:"";position:absolute;left:-17px;width:3px;height:22px;border-radius:0 6px 6px 0;background:#8189ff}.sidebar-spacer{flex:1}.sidebar-signal{display:flex;align-items:center;gap:8px;margin:0 5px 14px;color:#777c91;font-size:.72rem}.sidebar-profile{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:15px;background:#ffffff0a}.sidebar-profile .icon-button{margin-left:auto;border-color:transparent;background:transparent;color:#9297aa}.sidebar-profile__copy{display:grid;min-width:0}.sidebar-profile__copy strong{overflow:hidden;font-size:.83rem;text-overflow:ellipsis;white-space:nowrap}.sidebar-profile__copy span{margin-top:3px;color:#777c91;font-size:.7rem}.app-content{grid-column:2;min-width:0;min-height:100vh}.page{width:100%;max-width:1680px;margin:0 auto;padding:36px clamp(24px,3.2vw,52px) 52px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:28px}.page-header>div:first-child{min-width:0}.page-header p{max-width:670px;margin-bottom:0}.header-actions,.meeting-header-actions{display:flex;align-items:center;gap:10px}.page-loading,.content-loading{display:grid;place-items:center;min-height:60vh;color:var(--muted);text-align:center}.content-loading{min-height:320px;align-content:center;gap:12px}.loader-orb{width:36px;height:36px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.user-chip{display:inline-flex;align-items:center;gap:8px;min-width:0}.user-chip--with-name{max-width:100%}.user-chip__name{overflow:hidden;color:var(--ink-soft);font-size:.84rem;font-weight:620;text-overflow:ellipsis;white-space:nowrap}.avatar{display:inline-grid;place-items:center;flex:0 0 auto;border:2px solid var(--surface);border-radius:50%;background:linear-gradient(145deg,#eceeff,#dfe3fb);color:#4c56b6;font-weight:780;letter-spacing:-.04em}.avatar--xs{width:28px;height:28px;font-size:.61rem}.avatar--sm{width:34px;height:34px;font-size:.68rem}.avatar--md{width:40px;height:40px;font-size:.76rem}.avatar--lg{width:48px;height:48px;font-size:.88rem}.avatar-stack{display:flex;align-items:center}.avatar-stack .user-chip+.user-chip{margin-left:-9px}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(430px,.9fr);background:var(--surface)}.login-showcase{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:100vh;padding:clamp(34px,5vw,76px);background:radial-gradient(circle at 76% 18%,rgba(109,119,255,.24),transparent 26rem),radial-gradient(circle at 16% 92%,rgba(31,157,114,.12),transparent 24rem),#171923;color:#fff}.login-showcase:after{content:"";position:absolute;right:-120px;bottom:-120px;width:360px;height:360px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 48px #ffffff06,0 0 0 96px #ffffff05}.login-brand{position:relative;z-index:1;display:flex;align-items:center;gap:13px;font-weight:760}.login-copy{position:relative;z-index:1;max-width:720px;margin:auto 0 44px}.login-copy .eyebrow{color:#9197b4}.login-copy h1{max-width:680px;margin-bottom:20px;font-size:clamp(2.5rem,5vw,5rem);line-height:.98;letter-spacing:-.055em}.login-copy p{max-width:590px;margin-bottom:0;color:#afb3c4;font-size:clamp(1rem,1.6vw,1.2rem)}.feature-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:720px}.feature-item{display:flex;align-items:center;gap:11px;min-height:64px;padding:12px 14px;border:1px solid rgba(255,255,255,.075);border-radius:15px;background:#ffffff0a;color:#d7d9e2;font-size:.84rem;line-height:1.35}.feature-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:#7c83ff24;color:#aeb3ff}.login-proof{position:relative;z-index:1;display:flex;align-items:center;gap:9px;margin-top:20px;color:#84899c;font-size:.78rem}.proof-check{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#1f9d7224;color:#6ac7a7}.login-panel{display:grid;place-items:center;min-height:100vh;padding:36px clamp(30px,5vw,80px)}.login-form-wrap{width:min(420px,100%)}.login-form-heading{margin-bottom:26px}.login-form-heading h2{margin-bottom:8px;font-size:2rem}.login-form-heading p{margin-bottom:0}.demo-switcher{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.demo-switcher button{min-height:38px;border-radius:10px;background:transparent;color:var(--muted);font-size:.83rem;font-weight:680}.demo-switcher button.active{background:var(--surface);color:var(--ink);box-shadow:0 4px 14px #1e212e12}.login-form{display:grid;gap:17px;margin-top:20px}.password-field{position:relative;display:block}.password-field input{padding-right:48px}.password-field button{position:absolute;top:50%;right:6px;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:transparent;color:var(--muted);transform:translateY(-50%)}.login-security-note{margin:20px 0 0;color:#969aa9;font-size:.75rem;text-align:center}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.stat-card{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:12px;min-height:92px;padding:17px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffffd6;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.stat-card__icon{grid-row:1 / span 2;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--accent-soft);color:var(--accent)}.stat-card strong{align-self:end;font-size:1.35rem;line-height:1}.stat-card>span:last-child{align-self:start;margin-top:5px;color:var(--muted);font-size:.78rem}.focus-card{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:210px;margin-bottom:16px;padding:clamp(24px,4vw,42px);border-radius:var(--radius-lg);background:radial-gradient(circle at 80% 20%,rgba(132,142,255,.32),transparent 17rem),linear-gradient(135deg,#202331,#171923);color:#fff;box-shadow:0 20px 50px #17192329}.focus-card:after{content:"";position:absolute;right:8%;bottom:-105px;width:260px;height:260px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 36px #ffffff06}.focus-card__copy{position:relative;z-index:1;max-width:780px}.focus-card .eyebrow{color:#9298bc}.focus-card h2{margin-bottom:12px;font-size:clamp(1.55rem,2.8vw,2.45rem)}.focus-card p{max-width:680px;margin-bottom:20px;color:#b8bbca}.focus-card__meta{display:flex;flex-wrap:wrap;gap:10px}.focus-card__meta span{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 10px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff0e;color:#d1d3dd;font-size:.79rem}.focus-card__action{position:relative;z-index:2;display:grid;place-items:center;width:58px;height:58px;flex:0 0 auto;border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 14px 34px #00000040;transition:transform .18s ease}.focus-card__action:hover{transform:translateY(-2px) rotate(2deg)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px}.section-card{min-width:0;padding:22px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#ffffffe0;box-shadow:var(--shadow-sm)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.section-heading h2{margin-bottom:0}.section-heading a{color:var(--accent);font-size:.8rem;font-weight:700}.dashboard-task-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-actions-card{display:flex;flex-direction:column}.quick-action{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:68px;padding:10px;border-radius:14px;transition:background .18s ease,transform .18s ease}.quick-action:hover{background:var(--surface-soft);transform:translate(2px)}.quick-action__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--accent-soft);color:var(--accent)}.quick-action>span:nth-child(2){display:grid;min-width:0}.quick-action strong{font-size:.88rem}.quick-action small{margin-top:3px;color:var(--muted);font-size:.72rem}.empty-state{display:grid;place-items:center;min-height:180px;padding:24px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);text-align:center}.empty-state.compact{min-height:130px}.empty-state strong{margin-top:9px;color:var(--ink-soft)}.empty-state p{max-width:330px;margin:7px 0 0;font-size:.82rem}.task-card{position:relative;display:grid;gap:11px;min-width:0;padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 1px 1px #14182708;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;outline:none}.task-card:before{content:"";position:absolute;inset:12px auto 12px 0;width:3px;border-radius:0 3px 3px 0;background:transparent}.task-card:hover,.task-card:focus-visible{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:0 12px 26px #171c2d14}.task-card[draggable=true]:active{cursor:grabbing;opacity:.76}.task-card--urgent:before{background:var(--danger)}.task-card--high:before{background:#ef8a4c}.task-card--medium:before{background:#d7ab35}.task-card--low:before{background:#60a389}.task-card--compact{gap:8px;padding:13px 14px}.task-card__topline,.task-card__meta{display:flex;align-items:center;min-width:0}.task-card__topline{justify-content:space-between;gap:10px}.priority-mark{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;font-size:.64rem;font-weight:700;letter-spacing:.035em;text-transform:uppercase}.priority-mark--urgent{color:#b63748;background:#fff0f2}.priority-mark--high{color:#b95c2c;background:#fff3eb}.priority-mark--medium{color:#99731e;background:#fff7dd}.priority-mark--low{color:#317861;background:#ebf7f2}.task-card__id{color:var(--muted-light);font-size:.7rem;font-variant-numeric:tabular-nums}.task-card h3{margin:0;color:var(--ink);font-size:.9rem;line-height:1.38;letter-spacing:-.012em}.task-card__description{display:-webkit-box;overflow:hidden;margin:-2px 0 0;color:var(--muted);font-size:.77rem;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-card__meta{gap:11px;min-height:28px;color:var(--muted)}.meta-item{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:.7rem;font-variant-numeric:tabular-nums}.meta-item--danger{color:var(--danger);font-weight:650}.task-card__assignee{margin-left:auto}.status-pill{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:0 10px;border:1px solid transparent;border-radius:999px;font-size:.7rem;font-weight:700;white-space:nowrap}.status-pill .status-dot,.kanban-column__header .status-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.status-pill--backlog{color:#697187;background:#f0f2f6}.status-pill--todo{color:#5d68ad;background:#eef0ff}.status-pill--in_progress{color:#a36b24;background:#fff5df}.status-pill--review{color:#8a5fa5;background:#f7edfc}.status-pill--done{color:#337c63;background:#eaf7f1}.project-header{align-items:flex-start}.project-title-block{min-width:0}.project-title-block h1{margin-bottom:8px}.project-title-block>p{max-width:680px}.project-progress-row{display:flex;align-items:center;gap:11px;margin-top:16px;color:var(--muted);font-size:.72rem;font-weight:600}.progress-track{width:136px;height:5px;overflow:hidden;border-radius:99px;background:var(--line)}.progress-track>span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .35s ease}.project-progress-row .avatar-stack{margin-left:4px}.project-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:19px}.segmented-control{display:inline-flex;align-items:center;gap:3px;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft)}.segmented-control button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:0 12px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:.76rem;font-weight:650;cursor:pointer}.segmented-control button:hover{color:var(--ink-soft)}.segmented-control button.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px #14182714}.search-field{display:flex;align-items:center;gap:8px;width:min(260px,32vw);min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted);transition:border-color .18s ease,box-shadow .18s ease}.search-field:focus-within{border-color:var(--accent-muted);box-shadow:0 0 0 3px var(--accent-soft)}.search-field input{min-width:0;padding:0;border:0;outline:0;background:transparent;font-size:.78rem}.kanban-board{display:grid;grid-template-columns:repeat(5,minmax(228px,1fr));gap:12px;min-height:530px;overflow-x:auto;padding:1px 1px 14px;scrollbar-width:thin}.kanban-column{min-width:228px;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:color-mix(in srgb,var(--surface-soft) 78%,white)}.kanban-column__header{display:flex;align-items:center;justify-content:space-between;min-height:49px;padding:0 13px;border-bottom:1px solid var(--line);background:#ffffff8f}.kanban-column__header>div{display:flex;align-items:center;gap:8px}.kanban-column__header h2{margin:0;color:var(--ink-soft);font-size:.76rem;font-weight:750}.kanban-column__header>span{display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:var(--surface);color:var(--muted);font-size:.68rem;font-variant-numeric:tabular-nums}.kanban-column--backlog .status-dot{color:#9298a8}.kanban-column--todo .status-dot{color:#7280cc}.kanban-column--in_progress .status-dot{color:#d2994a}.kanban-column--review .status-dot{color:#a876bd}.kanban-column--done .status-dot{color:#55a486}.kanban-column__body{display:grid;align-content:start;gap:9px;min-height:450px;padding:10px}.kanban-add{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border:1px dashed transparent;border-radius:11px;background:transparent;color:var(--muted);font-size:.73rem;font-weight:650;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease}.kanban-add:hover{border-color:var(--line-strong);background:#ffffffb8;color:var(--accent)}.mobile-status-tabs{overflow-x:auto;gap:7px;margin:-2px -16px 14px;padding:2px 16px 6px;scrollbar-width:none}.mobile-status-tabs::-webkit-scrollbar{display:none}.mobile-status-tabs button{display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.72rem;font-weight:700}.mobile-status-tabs button span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--surface-soft);font-size:.65rem}.mobile-status-tabs button.active{border-color:var(--ink);background:var(--ink);color:#fff}.mobile-status-tabs button.active span{background:#ffffff26}.mobile-task-column{gap:10px}.mobile-column-heading{display:flex;align-items:center;justify-content:space-between;margin:3px 0 12px}.mobile-column-heading>span{color:var(--muted);font-size:.73rem}.task-list-view{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.task-list-header,.task-list-row{display:grid;grid-template-columns:minmax(250px,1.7fr) 145px 125px 145px 44px;align-items:center;gap:14px;min-height:58px;padding:0 17px}.task-list-header{min-height:44px;border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.045em}.task-list-row{border:0;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink-soft);text-align:left;cursor:pointer;transition:background .16s ease}.task-list-row:last-child{border-bottom:0}.task-list-row:hover{background:var(--surface-soft)}.task-list-title{display:flex;align-items:center;gap:10px;min-width:0}.task-list-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.task-list-row>span{color:var(--muted);font-size:.75rem}.floating-create{position:fixed;right:18px;bottom:calc(82px + env(safe-area-inset-bottom));z-index:30;display:none;place-items:center;width:52px;height:52px;border:0;border-radius:17px;background:var(--ink);color:#fff;box-shadow:0 12px 26px #161a2842}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#12152057;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.task-drawer{position:fixed;inset:0 0 0 auto;z-index:81;display:flex;flex-direction:column;width:min(610px,92vw);height:100dvh;border-left:1px solid var(--line);background:var(--surface);box-shadow:-28px 0 60px #12162424}.task-drawer__header{display:flex;align-items:center;gap:12px;min-height:68px;padding:0 22px;border-bottom:1px solid var(--line)}.task-drawer__header-copy{min-width:0}.task-drawer__header-copy span{display:block;color:var(--muted);font-size:.67rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.task-drawer__header-copy strong{display:block;overflow:hidden;margin-top:2px;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem}.task-drawer__header .icon-button:first-child{display:none}.task-drawer__header .icon-button:last-child{margin-left:auto}.task-drawer__body{flex:1;overflow-y:auto;padding:22px;overscroll-behavior:contain}.task-drawer__loading{display:grid;place-items:center;min-height:320px;color:var(--muted)}.task-form{display:grid;gap:22px}.task-title-input{width:100%;padding:0 0 7px;border:0;border-bottom:1px solid transparent;border-radius:0;outline:0;background:transparent;color:var(--ink);font-size:clamp(1.25rem,2vw,1.6rem);font-weight:750;line-height:1.25;letter-spacing:-.025em}.task-title-input:focus{border-bottom-color:var(--line-strong)}.task-description-input{width:100%;min-height:96px;resize:vertical}.status-selector{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.status-choice .status-dot{width:9px;height:9px;border-radius:50%;background:currentColor}.status-choice:hover{background:var(--surface-soft)}.status-choice.active{border-color:currentColor;box-shadow:0 0 0 2px currentColor inset}.status-choice--backlog{color:#737b8e}.status-choice--todo{color:#6470bb}.status-choice--in_progress{color:#b77b29}.status-choice--review{color:#9364aa}.status-choice--done{color:#3a856b}.form-grid--task-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.input-with-icon{position:relative}.input-with-icon>svg{position:absolute;left:12px;top:50%;z-index:1;color:var(--muted);transform:translateY(-50%);pointer-events:none}.input-with-icon>select,.input-with-icon>input{width:100%;padding-left:36px}.drawer-section{display:grid;gap:12px;padding-top:22px;border-top:1px solid var(--line)}.drawer-section__heading{display:flex;align-items:center;gap:8px;min-height:28px}.drawer-section__heading h3{margin:0;font-size:.83rem}.count-badge{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.65rem}.upload-placeholder{display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;padding:10px;border:1px dashed var(--line-strong);border-radius:13px;background:var(--surface-soft);color:var(--muted);font-size:.74rem;font-weight:650;cursor:pointer}.upload-placeholder:hover{border-color:var(--accent-muted);color:var(--accent)}.upload-placeholder input{display:none}.attachment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.attachment-card{position:relative;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft)}.attachment-preview{display:grid;place-items:center;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:#edf0f5}.attachment-preview img{width:100%;height:100%;object-fit:cover}.attachment-preview>svg{color:var(--muted)}.attachment-copy{display:grid;gap:3px;min-width:0;padding:9px 10px}.attachment-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem}.attachment-copy span{color:var(--muted);font-size:.63rem}.attachment-actions{position:absolute;top:7px;right:7px;display:flex;gap:4px;opacity:0;transition:opacity .16s ease}.attachment-card:hover .attachment-actions,.attachment-actions:focus-within{opacity:1}.attachment-actions .icon-button{width:30px;height:30px;background:#ffffffeb;box-shadow:0 3px 10px #1014201f}.comments-section{padding-bottom:18px}.comment-list{display:grid;gap:13px}.comment-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}.comment-item__body{min-width:0;padding:10px 12px;border-radius:4px 14px 14px;background:var(--surface-soft)}.comment-item__meta{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:5px}.comment-item__meta strong{font-size:.7rem}.comment-item__meta span{color:var(--muted-light);font-size:.62rem}.comment-item p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink-soft);font-size:.76rem;line-height:1.5}.empty-comments{padding:17px;border-radius:13px;background:var(--surface-soft);color:var(--muted);font-size:.73rem;text-align:center}.comment-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.comment-composer textarea{min-height:42px;max-height:130px;resize:vertical}.comment-composer .button{min-width:42px;padding:0}.task-drawer__footer{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-height:72px;padding:12px 22px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.task-drawer__footer .button--danger-soft{margin-right:auto}.drawer-mobile-spacer{display:none}.whiteboard{display:grid;grid-template-rows:auto minmax(420px,1fr);min-height:590px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.whiteboard--compact{grid-template-rows:auto minmax(260px,1fr);min-height:0;height:100%;border:0;border-radius:0}.whiteboard-toolbar{display:flex;align-items:center;gap:10px;min-height:58px;padding:8px 12px;border-bottom:1px solid var(--line);background:#ffffffeb;overflow-x:auto;scrollbar-width:none}.whiteboard-toolbar::-webkit-scrollbar{display:none}.tool-group,.color-group{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px}.tool-group+.tool-group,.color-group{padding-left:9px;border-left:1px solid var(--line)}.whiteboard-toolbar button{display:grid;place-items:center;width:36px;height:36px;flex:0 0 auto;border:0;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer}.whiteboard-toolbar button:hover{background:var(--surface-soft);color:var(--ink)}.whiteboard-toolbar button.active{background:var(--ink);color:#fff}.whiteboard-toolbar button:disabled{opacity:.38;cursor:default}.color-swatch{width:25px!important;height:25px!important;border:2px solid white!important;border-radius:50%!important;background:var(--swatch)!important;box-shadow:0 0 0 1px var(--line-strong)}.color-swatch.active{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink)}.whiteboard-status,.mobile-whiteboard-status{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:var(--muted);font-size:.66rem;white-space:nowrap}.whiteboard-stage{position:relative;min-width:0;min-height:0;overflow:hidden;background-color:#fafbfc;background-image:linear-gradient(rgba(97,106,128,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(97,106,128,.075) 1px,transparent 1px);background-size:24px 24px;touch-action:none;-webkit-user-select:none;user-select:none}.whiteboard-svg{width:100%;height:100%;min-height:420px;cursor:crosshair;touch-action:none}.whiteboard--compact .whiteboard-svg{min-height:260px}.whiteboard-stage.is-panning .whiteboard-svg{cursor:grab}.whiteboard-stage.is-panning.is-drawing .whiteboard-svg{cursor:grabbing}.whiteboard-loading,.whiteboard-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;color:var(--muted);text-align:center}.whiteboard-empty>div{display:grid;justify-items:center;gap:8px;max-width:280px;padding:22px;border-radius:18px;background:#ffffffc7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.whiteboard-empty strong{color:var(--ink-soft);font-size:.86rem}.whiteboard-empty span{font-size:.72rem;line-height:1.45}.mobile-whiteboard-status{display:none}.page--chat{display:flex;flex-direction:column;height:calc(100dvh - 64px);min-height:600px;overflow:hidden}.chat-page-heading{flex:0 0 auto}.chat-layout{display:grid;grid-template-columns:255px minmax(0,1fr);flex:1;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.chat-room-list{overflow-y:auto;padding:8px;border-right:1px solid var(--line);background:var(--surface-soft)}.chat-room-item{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:58px;padding:8px 10px;border:0;border-radius:13px;background:transparent;color:var(--ink-soft);text-align:left;cursor:pointer}.chat-room-item:hover{background:#ffffffbd}.chat-room-item.active{background:var(--surface);color:var(--ink);box-shadow:0 3px 12px #1217250f}.room-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:var(--accent-soft);color:var(--accent)}.chat-room-item__copy{min-width:0}.chat-room-item__copy strong,.chat-room-item__copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-room-item__copy strong{font-size:.76rem}.chat-room-item__copy span{margin-top:3px;color:var(--muted);font-size:.65rem}.chat-room-note{margin:10px;padding:11px;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-size:.66rem;line-height:1.45}.chat-panel-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0}.chat-panel__header{display:flex;align-items:center;gap:11px;min-height:62px;padding:0 16px;border-bottom:1px solid var(--line)}.chat-panel__header-copy{min-width:0}.chat-panel__header-copy strong,.chat-panel__header-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-panel__header-copy strong{font-size:.82rem}.chat-panel__header-copy span{margin-top:2px;color:var(--muted);font-size:.66rem}.chat-connection{display:flex;align-items:center;gap:6px;margin-left:auto;color:var(--muted);font-size:.65rem}.chat-connection:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--warning)}.chat-connection.online:before{background:var(--success)}.message-list{display:flex;flex-direction:column;gap:5px;min-height:0;overflow-y:auto;padding:18px;overscroll-behavior:contain}.message-loading,.message-empty{display:grid;flex:1;place-items:center;min-height:240px;color:var(--muted);font-size:.76rem;text-align:center}.message-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:8px;max-width:min(76%,660px)}.message-row.mine{grid-template-columns:minmax(0,1fr);align-self:flex-end}.message-bubble{min-width:0;padding:9px 12px 7px;border-radius:5px 15px 15px;background:var(--surface-soft)}.message-row.mine .message-bubble{border-radius:15px 5px 15px 15px;background:var(--ink);color:#fff}.message-bubble__author{display:block;margin-bottom:4px;color:var(--accent);font-size:.62rem;font-weight:750}.message-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.76rem;line-height:1.48}.message-bubble__meta{display:block;margin-top:4px;color:var(--muted-light);font-size:.58rem;text-align:right}.message-row.mine .message-bubble__meta{color:#ffffff8c}.chat-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:11px 14px;border-top:1px solid var(--line);background:var(--surface)}.chat-composer textarea{min-height:42px;max-height:120px;resize:none}.chat-composer .button{width:42px;min-width:42px;padding:0}.meeting-page{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:calc(100dvh - 64px);min-height:620px;overflow:hidden}.meeting-header{margin-bottom:17px}.meeting-header-actions{display:flex;align-items:center;gap:8px}.meeting-workspace{display:grid;grid-template-columns:minmax(420px,1.5fr) minmax(340px,.8fr);min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:19px;background:var(--surface);box-shadow:var(--shadow-soft)}.meeting-pane{position:relative;min-width:0;min-height:0;overflow:hidden}.meeting-pane--board{border-left:1px solid var(--line)}.meeting-pane__label{position:absolute;top:10px;left:12px;z-index:8;display:inline-flex;align-items:center;gap:6px;min-height:27px;padding:0 9px;border-radius:999px;background:#ffffffe6;color:var(--ink-soft);box-shadow:0 3px 12px #1014211a;font-size:.63rem;font-weight:700;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.meeting-tips{display:flex;align-items:center;gap:18px;min-height:39px;color:var(--muted);font-size:.64rem}.meeting-tips span{display:inline-flex;align-items:center;gap:6px}.jitsi-room{position:relative;width:100%;height:100%;min-height:420px;overflow:hidden;background:#171923}.jitsi-room--mini{min-height:0;border-radius:14px}.jitsi-host,.jitsi-host iframe{width:100%!important;height:100%!important;border:0!important}.jitsi-brand-mask{position:absolute;z-index:5;pointer-events:none;background:#171923}.jitsi-brand-mask--top{top:0;left:0;width:132px;height:39px;border-radius:0 0 14px}.jitsi-brand-mask--bottom{right:0;bottom:0;width:150px;height:27px;border-radius:14px 0 0}.jitsi-state{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:grid;place-content:center;justify-items:center;gap:9px;padding:24px;background:#171923;color:#ffffffbd;text-align:center}.jitsi-state strong{color:#fff;font-size:.9rem}.jitsi-state span{max-width:330px;font-size:.7rem;line-height:1.5}.jitsi-state--error>svg{color:#ff8b9c}.jitsi-state--error .button{margin-top:8px;background:#ffffff1a;color:#fff}.meeting-live-badge{position:absolute;top:13px;right:14px;z-index:7;display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:999px;background:#0f121ba3;color:#fff;font-size:.64rem;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.meeting-live-badge:before{content:"";width:7px;height:7px;border-radius:50%;background:#ff6579;box-shadow:0 0 0 4px #ff657929}.mobile-meeting-switch,.mobile-video-float{display:none}.toast-stack{position:fixed;top:18px;right:18px;z-index:150;display:grid;gap:8px;width:min(340px,calc(100vw - 36px))}.toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:50px;padding:9px 10px 9px 13px;border:1px solid var(--line);border-radius:14px;background:#fffffff2;color:var(--ink-soft);box-shadow:0 14px 38px #12162424;font-size:.73rem;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.toast--success{border-left:3px solid var(--success)}.toast--danger{border-left:3px solid var(--danger)}.toast--warning{border-left:3px solid var(--warning)}.toast--info{border-left:3px solid var(--accent)}.toast .icon-button{width:30px;height:30px}.drawer-enter-active,.drawer-leave-active{transition:opacity .2s ease}.drawer-enter-active .task-drawer,.drawer-leave-active .task-drawer{transition:transform .24s cubic-bezier(.2,.8,.2,1)}.drawer-enter-from,.drawer-leave-to{opacity:0}.drawer-enter-from .task-drawer,.drawer-leave-to .task-drawer{transform:translate(100%)}.toast-enter-active,.toast-leave-active{transition:opacity .18s ease,transform .18s ease}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(-7px)}.mobile-topbar,.mobile-bottom-nav{display:none}@media(max-width:1260px){.app-shell{--sidebar-width: 218px}.desktop-sidebar{width:var(--sidebar-width)}.app-content{margin-left:0}.kanban-board{grid-template-columns:repeat(5,236px)}.meeting-workspace{grid-template-columns:minmax(390px,1.3fr) minmax(310px,.8fr)}.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}}@media(max-width:900px){.app-shell{display:block}html{background:var(--surface)}body{background:var(--surface-soft)}.desktop-only,.desktop-sidebar{display:none!important}.mobile-only{display:flex!important}.mobile-topbar{position:fixed;inset:0 0 auto;z-index:60;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:calc(58px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 14px 0;border-bottom:1px solid var(--line);background:#ffffffed;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-lockup--mobile{gap:7px}.brand-lockup--mobile .brand-mark{width:29px;height:29px;border-radius:9px;font-size:.82rem}.brand-lockup--mobile strong{font-size:.84rem}.mobile-project-select{display:flex;align-items:center;justify-self:center;gap:5px;min-width:0;max-width:100%;min-height:34px;padding:0 8px;border-radius:10px;background:var(--surface-soft);color:var(--muted)}.mobile-project-select select{min-width:0;max-width:170px;padding:0 18px 0 0;border:0;outline:0;background:transparent;color:var(--ink-soft);font-size:.68rem;font-weight:700;text-overflow:ellipsis}.avatar-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;background:transparent}.app-content{grid-column:auto;min-height:100dvh;margin-left:0;padding-top:calc(58px + env(safe-area-inset-top));padding-bottom:calc(68px + env(safe-area-inset-bottom))}.page{width:100%;max-width:none;padding:20px 16px 24px}.page-header{gap:14px;margin-bottom:20px}.page-header h1{font-size:1.45rem}.page-header p{font-size:.78rem}.header-actions .button{min-height:40px}.mobile-bottom-nav{position:fixed;inset:auto 0 0;z-index:65;display:grid;grid-template-columns:repeat(5,1fr);align-items:start;min-height:calc(66px + env(safe-area-inset-bottom));padding:5px 5px env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-nav-item{display:grid;justify-items:center;align-content:center;gap:3px;min-height:55px;padding:3px;border:0;border-radius:12px;background:transparent;color:var(--muted);font-size:.58rem;font-weight:700;cursor:pointer}.mobile-nav-item.router-link-active{color:var(--accent)}.mobile-nav-item.router-link-active>svg{filter:drop-shadow(0 4px 6px rgba(83,95,171,.2))}.mobile-nav-item--more{font-family:inherit}.dashboard-grid,.dashboard-secondary-grid,.dashboard-task-list{grid-template-columns:1fr}.dashboard-hero{min-height:210px;padding:22px}.dashboard-hero__metrics{grid-template-columns:repeat(3,1fr)}.project-header{align-items:flex-start}.project-title-block{flex:1}.project-title-block>p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.project-progress-row{margin-top:12px}.progress-track{width:min(128px,34vw)}.project-toolbar{align-items:stretch;flex-direction:column;gap:10px;margin-bottom:14px}.segmented-control{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.segmented-control button{min-width:0;padding:0 7px}.search-field{width:100%}.mobile-task-column{display:grid!important}.floating-create{display:grid}.task-list-view{border:0;border-radius:0;background:transparent}.task-list-header{display:none}.task-list-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title assignee" "status assignee" "date assignee";gap:7px 10px;min-height:95px;margin-bottom:9px;padding:13px;border:1px solid var(--line);border-radius:15px}.task-list-row>:nth-child(1){grid-area:title}.task-list-row>:nth-child(2){grid-area:status}.task-list-row>:nth-child(3){display:none}.task-list-row>:nth-child(4){grid-area:date}.task-list-row>:nth-child(5){grid-area:assignee}.whiteboard{grid-template-rows:auto minmax(0,1fr);min-height:calc(100dvh - 235px);border-radius:16px}.whiteboard-toolbar{min-height:54px;padding:7px 8px}.whiteboard-status{display:none}.mobile-whiteboard-status{position:absolute;right:10px;bottom:10px;z-index:4;display:inline-flex;margin:0;min-height:28px;padding:0 9px;border-radius:999px;background:#ffffffdb;box-shadow:0 3px 12px #11152214;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.whiteboard-svg{min-height:calc(100dvh - 290px)}.page--chat{height:calc(100dvh - 126px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:0;padding:0}.chat-page-heading{display:none}.chat-layout{grid-template-columns:1fr;border:0;border-radius:0}.chat-room-list{display:flex;gap:7px;overflow-x:auto;padding:9px 12px;border-right:0;border-bottom:1px solid var(--line);scrollbar-width:none}.chat-room-list::-webkit-scrollbar{display:none}.chat-room-item{flex:0 0 auto;width:auto;min-height:42px;padding:4px 9px 4px 5px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}.chat-room-item.active{border-color:var(--ink);background:var(--ink);color:#fff}.room-icon{width:31px;height:31px;border-radius:50%}.chat-room-item__copy span,.chat-room-note{display:none}.chat-panel__header{min-height:54px;padding:0 12px}.message-list{padding:14px 12px}.message-row{max-width:88%}.chat-composer{padding:8px 10px calc(8px + env(safe-area-inset-bottom))}.meeting-page{position:relative;display:block;height:calc(100dvh - 126px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:0;padding:0}.meeting-header{display:none}.meeting-workspace{position:relative;display:block;width:100%;height:100%;border:0;border-radius:0}.meeting-pane{position:absolute;top:0;right:0;bottom:0;left:0;display:none}.meeting-pane.active{display:block}.meeting-pane--board{border-left:0}.meeting-pane__label{top:9px;left:9px}.mobile-meeting-switch{position:absolute;top:10px;left:50%;z-index:20;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;width:min(235px,62vw);padding:4px;border-radius:13px;background:#10131d94;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transform:translate(-50%)}.mobile-meeting-switch button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:32px;border:0;border-radius:9px;background:transparent;color:#ffffffb3;font-size:.65rem;font-weight:700}.mobile-meeting-switch button.active{background:#fff;color:var(--ink)}.mobile-video-float{position:absolute;right:12px;bottom:12px;z-index:17;display:block;width:132px;height:176px;overflow:hidden;border:2px solid rgba(255,255,255,.9);border-radius:16px;background:#171923;box-shadow:0 12px 30px #10142047}.meeting-tips{display:none}.jitsi-room,.jitsi-host,.jitsi-host iframe{min-height:100%;height:100%}.task-drawer{inset:auto 0 0;width:100%;height:min(92dvh,860px);border:0;border-radius:22px 22px 0 0;box-shadow:0 -28px 60px #12162433}.task-drawer:before{content:"";position:absolute;top:7px;left:50%;width:38px;height:4px;border-radius:99px;background:var(--line-strong);transform:translate(-50%)}.task-drawer__header{min-height:61px;padding:7px 13px 0}.task-drawer__header .icon-button:first-child{display:grid}.task-drawer__header .icon-button:last-child{display:none}.task-drawer__body{padding:18px 16px}.task-drawer__footer{min-height:68px;padding:10px 14px calc(10px + env(safe-area-inset-bottom))}.status-selector{grid-template-columns:repeat(5,minmax(64px,1fr));overflow-x:auto;margin:0 -16px;padding:2px 16px 7px;scrollbar-width:none}.status-selector::-webkit-scrollbar{display:none}.status-choice{min-width:68px}.form-grid--task-meta{grid-template-columns:1fr}.attachment-actions{opacity:1}.drawer-mobile-spacer{display:block;height:8px}.drawer-enter-from .task-drawer,.drawer-leave-to .task-drawer{transform:translateY(100%)}.toast-stack{top:calc(66px + env(safe-area-inset-top));right:12px}}@media(max-width:560px){.page{padding-inline:14px}.page-header h1{font-size:1.3rem}.eyebrow{font-size:.6rem}.button{min-height:41px}.project-header .header-actions{align-self:flex-start}.project-header .header-actions .button{min-width:43px;padding:0 11px}.project-progress-row{gap:8px;font-size:.65rem}.segmented-control button{gap:5px;font-size:.68rem}.task-card{padding:14px}.task-card h3{font-size:.86rem}.task-card__description{font-size:.73rem}.dashboard-hero__metrics{gap:8px}.dashboard-hero__metric{padding:10px 8px}.dashboard-hero__metric strong{font-size:1rem}.dashboard-hero__metric span{font-size:.58rem}.attachment-grid{grid-template-columns:1fr}.task-drawer__footer .button{flex:1;padding-inline:10px}.task-drawer__footer .button--danger-soft{flex:0 0 42px;width:42px;padding:0}.message-row{max-width:92%}.mobile-video-float{width:112px;height:150px}.login-card{padding:24px 20px;border-radius:20px}.login-showcase{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.page-header--dashboard{align-items:center}.project-page,.dashboard-page{min-width:0}.task-list-header,.task-list-row{grid-template-columns:minmax(250px,1.7fr) 145px 170px 125px 100px}.task-list-title small{flex:0 0 auto;color:var(--muted-light);font-size:.66rem}.drawer-loading{display:grid;flex:1;place-content:center;justify-items:center;gap:10px;color:var(--muted);font-size:.76rem}.task-drawer__header>div{min-width:0}.task-drawer__header h2{overflow:hidden;margin:1px 0 0;text-overflow:ellipsis;white-space:nowrap;font-size:.98rem}.task-drawer__header .eyebrow{margin-bottom:2px;font-size:.61rem}.task-drawer__header .icon-button{margin-left:auto}.drawer-section--form{padding-top:0;border-top:0}.drawer-footer-spacer{flex:1}.status-choice{display:grid;justify-items:center;gap:7px;min-height:67px;padding:10px 4px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--muted);font-size:.65rem;font-weight:700;cursor:pointer}.upload-placeholder>span{display:grid;gap:2px;text-align:left}.upload-placeholder strong,.upload-placeholder small{display:block}.upload-placeholder strong{color:var(--ink-soft);font-size:.73rem}.upload-placeholder small{color:var(--muted);font-size:.63rem;font-weight:500}.attachment-preview{padding:0;border:0;border-radius:0;color:var(--muted);cursor:pointer}.attachment-actions button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:9px;background:#fffffff0;color:var(--ink-soft);box-shadow:0 3px 10px #1014201f}.attachment-actions button:last-child{color:var(--danger)}.count-badge{display:inline-flex;gap:4px}.drawer-section__heading>.button,.drawer-section__heading>.count-badge{margin-left:auto}.comment-item>div:last-child{min-width:0;padding:10px 12px;border-radius:4px 14px 14px;background:var(--surface-soft)}.comment-meta{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:5px}.comment-meta strong{font-size:.7rem}.comment-meta span{color:var(--muted-light);font-size:.62rem}.comment-item>div:last-child>p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink-soft);font-size:.76rem;line-height:1.5}.chat-panel-header{display:flex;align-items:center;gap:11px;min-height:62px;padding:0 16px;border-bottom:1px solid var(--line)}.chat-panel-header>div{min-width:0}.chat-panel-header h2,.chat-panel-header p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-panel-header h2{margin:0;font-size:.84rem}.chat-panel-header p{margin:3px 0 0;font-size:.66rem}.connection-label{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:var(--success);font-size:.65rem;white-space:nowrap}.chat-loading,.chat-empty{display:grid;flex:1;place-content:center;justify-items:center;min-height:240px;color:var(--muted);text-align:center}.chat-empty{gap:7px}.chat-empty>span{color:var(--accent);font-size:1.25rem}.chat-empty strong{color:var(--ink-soft);font-size:.82rem}.chat-empty p{max-width:330px;margin:0;font-size:.7rem}.message-row--mine{grid-template-columns:minmax(0,1fr);align-self:flex-end}.message-row--mine .message-bubble{border-radius:15px 5px 15px 15px;background:var(--ink);color:#fff}.message-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}.message-meta strong{color:var(--accent);font-size:.62rem}.message-meta span{color:var(--muted-light);font-size:.58rem;white-space:nowrap}.message-row--mine .message-meta strong{color:#ffffffd1}.message-row--mine .message-meta span{color:#ffffff85}.chat-room-item>span:last-child{display:grid;min-width:0}.chat-room-item>span:last-child>strong,.chat-room-item>span:last-child>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-room-item>span:last-child>strong{font-size:.76rem}.chat-room-item>span:last-child>small{display:flex;align-items:center;gap:4px;margin-top:3px;color:var(--muted);font-size:.64rem}.chat-room-note{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px}.chat-room-note p{margin:0;color:inherit;font-size:inherit}.meeting-video-pane,.meeting-board-pane{position:relative;min-width:0;min-height:0;overflow:hidden}.meeting-board-pane{border-left:1px solid var(--line)}.whiteboard-empty{align-content:center;gap:7px;padding:22px}.whiteboard-empty>span{color:var(--accent);font-size:1.2rem}.whiteboard-empty>strong{color:var(--ink-soft);font-size:.86rem}.whiteboard-empty>p{max-width:300px;margin:0;font-size:.72rem;line-height:1.45}.whiteboard-loading{align-content:center;gap:8px}@media(max-width:900px){.task-list-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title assignee" "status priority" "date priority"}.task-list-row>:nth-child(1){grid-area:title}.task-list-row>:nth-child(2){grid-area:status;justify-self:start}.task-list-row>:nth-child(3){grid-area:assignee;display:inline-flex}.task-list-row>:nth-child(4){grid-area:date}.task-list-row>:nth-child(5){grid-area:priority;justify-self:end}.task-list-row .user-chip__name{display:none}.task-drawer__header .icon-button,.task-drawer__header .icon-button:last-child{display:grid;margin-left:auto}.task-drawer__header .icon-button:first-child{display:grid}.chat-panel-header{min-height:54px;padding:0 12px}.chat-room-item>span:last-child>small{display:none}.meeting-workspace{position:relative;display:block}.meeting-video-pane,.meeting-board-pane{position:absolute;top:0;right:0;bottom:0;left:0;border:0}.meeting-workspace--mobile-video .meeting-video-pane{z-index:2;display:block}.meeting-workspace--mobile-video .meeting-board-pane{display:none}.meeting-workspace--mobile-board .meeting-board-pane{z-index:1;display:block}.meeting-workspace--mobile-board .whiteboard-toolbar{min-height:104px;padding-top:54px}.meeting-workspace--mobile-board .meeting-video-pane{inset:auto 12px 12px auto;z-index:18;display:block;width:132px;height:176px;overflow:hidden;border:2px solid rgba(255,255,255,.92);border-radius:16px;background:#171923;box-shadow:0 12px 30px #10142047}.meeting-workspace--mobile-board .meeting-video-pane .jitsi-room,.meeting-workspace--mobile-board .meeting-video-pane .jitsi-host,.meeting-workspace--mobile-board .meeting-video-pane iframe{min-height:0;height:100%!important}.mobile-meeting-switch{position:fixed;top:calc(68px + env(safe-area-inset-top))}.attachment-actions{opacity:1}}@media(max-width:560px){.meeting-workspace--mobile-board .meeting-video-pane{width:112px;height:150px}}.toast{grid-template-columns:minmax(0,1fr) auto}.toast>span{min-width:0;overflow-wrap:anywhere}.tool-group--secondary{margin-left:auto}@media(max-width:900px){.tool-group--secondary{margin-left:0}}.nav-icon-wrap{position:relative;display:inline-grid;place-items:center}.nav-unread-badge,.room-unread-count,.whiteboard-document-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#e5484d;color:#fff;font-size:.58rem;font-weight:800;line-height:1;box-shadow:0 0 0 2px var(--sidebar)}.nav-unread-badge{position:absolute;top:-9px;right:-12px}.nav-unread-badge--mobile{top:-7px;right:-13px;box-shadow:0 0 0 2px #fff}.avatar-button{border:0;background:transparent;cursor:pointer}.chat-room-search{display:flex;align-items:center;gap:7px;min-height:38px;margin:3px 3px 8px;padding:0 10px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted)}.chat-room-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:.7rem}.chat-room-item{grid-template-columns:auto minmax(0,1fr) auto}.chat-room-item__copy strong,.chat-room-item__copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-room-item__copy small{display:flex;align-items:center;gap:4px;margin-top:3px;color:var(--muted);font-size:.64rem}.room-unread-count{box-shadow:none}.chat-room-loading,.chat-room-empty,.chat-panel-placeholder{display:grid;place-items:center;gap:8px;min-height:90px;color:var(--muted);font-size:.72rem;text-align:center}.chat-panel-placeholder{align-content:center;min-height:300px}.admin-page{max-width:1480px}.admin-header{align-items:flex-start}.admin-current-role{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted-strong);font-size:.7rem;font-weight:700}.admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.admin-stats article{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:9px;min-height:70px;padding:15px 17px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sm);color:var(--accent)}.admin-stats strong{color:var(--ink);font-size:1.2rem}.admin-stats span{color:var(--muted);font-size:.7rem}.admin-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px}.admin-section{min-width:0;padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.admin-section__heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-section__heading h2{margin:2px 0 0;font-size:1rem}.admin-list{display:grid;gap:6px;max-height:300px;margin-bottom:14px;overflow-y:auto}.admin-list-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:56px;padding:7px 9px;border:1px solid transparent;border-radius:13px;background:var(--surface-soft);color:var(--ink-soft);text-align:left;cursor:pointer}.admin-list-item:hover,.admin-list-item.active{border-color:var(--line-strong);background:#fff}.admin-list-item.active{box-shadow:inset 3px 0 0 var(--accent)}.admin-list-item.muted{opacity:.55}.admin-list-item>span:nth-child(2){min-width:0}.admin-list-item strong,.admin-list-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-list-item strong{font-size:.74rem}.admin-list-item small,.admin-list-item em{color:var(--muted);font-size:.62rem;font-style:normal}.project-color-dot{width:36px;height:36px;border-radius:11px;background:var(--accent-soft);box-shadow:inset 0 0 0 1px #5967f224}.project-color-dot--emerald{background:#e8f7f1}.project-color-dot--amber{background:#fff5dd}.project-color-dot--rose{background:#fff0f3}.admin-editor{display:grid;gap:12px;padding:14px;border-radius:15px;background:var(--surface-soft)}.admin-editor-title{display:flex;align-items:center;gap:8px;color:var(--ink-soft);font-size:.78rem}.admin-editor>.button{justify-self:end}.member-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:220px;overflow-y:auto}.member-check-grid button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;min-height:44px;padding:5px 8px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted-strong);text-align:left;cursor:pointer}.member-check-grid button.selected{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:var(--accent-soft);color:var(--accent-strong)}.member-check-grid button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem}.admin-tabs{grid-template-columns:1fr 1fr;gap:7px;margin-bottom:12px;padding:4px;border-radius:13px;background:var(--surface-strong)}.admin-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-weight:700}.admin-tabs button.active{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:center;padding:18px;background:#10131d7a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.members-dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(520px,100%);max-height:min(720px,calc(100dvh - 36px));overflow:hidden;border-radius:22px;background:#fff;box-shadow:var(--shadow-lg)}.members-dialog>header,.members-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 19px;border-bottom:1px solid var(--line)}.members-dialog>header h2{display:flex;align-items:center;gap:7px;margin:3px 0;font-size:1.05rem}.members-dialog>header p{margin:0;color:var(--muted);font-size:.68rem}.members-dialog>footer{justify-content:flex-end;border-top:1px solid var(--line);border-bottom:0}.members-dialog-list{display:grid;gap:7px;padding:14px;overflow-y:auto}.members-dialog-list>button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:7px 10px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink-soft);text-align:left;cursor:pointer}.members-dialog-list>button.selected{border-color:color-mix(in srgb,var(--accent) 42%,var(--line));background:var(--accent-soft)}.members-dialog-list>button.locked{cursor:default}.members-dialog-list strong,.members-dialog-list small{display:block}.members-dialog-list strong{font-size:.75rem}.members-dialog-list small{margin-top:2px;color:var(--muted);font-size:.64rem}.whiteboard{position:relative;grid-template-rows:auto minmax(420px,1fr)}.whiteboard-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;overflow:visible}.whiteboard-toolbar__tools,.whiteboard-toolbar__snapshot,.color-palette{display:flex;align-items:center;gap:6px;min-width:0}.whiteboard-toolbar__tools{overflow-x:auto;scrollbar-width:none}.whiteboard-toolbar__tools::-webkit-scrollbar{display:none}.color-palette button{width:22px;height:22px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 1px var(--line-strong)}.color-palette button.active{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ink)}.whiteboard-toolbar__snapshot{padding-left:8px;border-left:1px solid var(--line)}.whiteboard-toolbar__snapshot select{width:min(210px,20vw);min-height:34px;padding:0 28px 0 9px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted-strong);font-size:.64rem}.whiteboard-toolbar .snapshot-button{display:inline-flex;width:auto;min-width:36px;padding:0 10px;gap:6px;background:var(--accent-soft);color:var(--accent-strong);font-size:.66rem;font-weight:750}.whiteboard-document-count{position:absolute;top:-5px;right:-6px;min-width:16px;height:16px;font-size:.52rem;box-shadow:0 0 0 2px #fff}.whiteboard-toolbar__snapshot>button:last-child{position:relative}.whiteboard-status{margin-left:0}.whiteboard-stage svg{display:block;width:100%;height:100%;min-height:420px;touch-action:none}.whiteboard--compact .whiteboard-stage svg{min-height:260px}.whiteboard-stage--pan svg{cursor:grab}.whiteboard-stage--select svg{cursor:default}.whiteboard-stage--pen svg,.whiteboard-stage--highlighter svg{cursor:crosshair}.whiteboard-stage--eraser svg{cursor:cell}.whiteboard-image-layer image{cursor:move;outline:none}.whiteboard-image-selection{fill:none;stroke:var(--accent);stroke-width:4;stroke-dasharray:12 8;vector-effect:non-scaling-stroke}.whiteboard-image-handle{fill:var(--accent);stroke:#fff;stroke-width:5;cursor:nwse-resize;vector-effect:non-scaling-stroke}.whiteboard-documents-popover{position:absolute;top:62px;right:12px;z-index:24;width:min(390px,calc(100% - 24px));max-height:min(460px,calc(100% - 80px));overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow-md)}.whiteboard-documents-popover>header{display:flex;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);font-size:.72rem}.whiteboard-document-items{max-height:390px;overflow-y:auto;padding:7px}.whiteboard-document-items article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:3px;padding:4px;border-radius:11px}.whiteboard-document-items article:hover{background:var(--surface-soft)}.whiteboard-document-items button{border:0;background:transparent;color:var(--muted);cursor:pointer}.whiteboard-document-items article>button:first-child{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:7px;text-align:left}.whiteboard-document-items strong,.whiteboard-document-items small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whiteboard-document-items strong{color:var(--ink-soft);font-size:.68rem}.whiteboard-document-items small{margin-top:2px;font-size:.59rem}.whiteboard-documents-popover>p{margin:0;padding:22px;color:var(--muted);font-size:.7rem;text-align:center}.whiteboard-mobile-hint{padding:6px 10px;border-top:1px solid var(--line);color:var(--muted);font-size:.58rem;text-align:center}.board-document-list{display:grid;gap:7px;margin-bottom:10px}.board-document-list__label{color:var(--muted);font-size:.65rem;font-weight:700}.attachment-card--document{width:100%}.jitsi-state--alta-ended{background:radial-gradient(circle at 50% 28%,rgba(89,103,242,.2),transparent 180px),#171923}.ended-call-mark{display:grid;place-items:center;width:56px;height:56px;margin-bottom:4px;border-radius:18px;background:linear-gradient(145deg,#6d79ff,#4b58df);color:#fff!important;font-size:1.5rem!important;font-weight:850;box-shadow:0 14px 34px #424edb52}.jitsi-state--alta-ended .button{margin-top:8px}@media(max-width:1100px){.whiteboard-toolbar{grid-template-columns:minmax(0,1fr) auto}.whiteboard-status{display:none}.whiteboard-toolbar__snapshot select{width:150px}}@media(max-width:900px){.admin-header .admin-current-role{display:none}.admin-stats{grid-template-columns:repeat(3,1fr);gap:7px}.admin-stats article{grid-template-columns:1fr;justify-items:center;gap:3px;padding:10px 5px;text-align:center}.admin-stats article>svg{display:none}.admin-stats strong{font-size:1rem}.admin-columns{grid-template-columns:1fr}.admin-section.mobile-hidden{display:none}.admin-section{padding:12px;border-radius:16px}.admin-list{max-height:250px}.member-check-grid{grid-template-columns:1fr}.chat-room-search{display:none}.chat-room-item{grid-template-columns:auto minmax(0,1fr) auto}.chat-room-item__copy small{display:none}.room-unread-count{position:absolute;top:-4px;right:-4px;box-shadow:0 0 0 2px #fff}.chat-room-item{position:relative}.chat-room-item.active .room-unread-count{box-shadow:0 0 0 2px var(--ink)}.whiteboard{grid-template-rows:auto minmax(0,1fr) auto}.whiteboard-toolbar{grid-template-columns:minmax(0,1fr) auto;min-height:58px;padding:7px}.whiteboard-toolbar__snapshot{padding-left:4px}.whiteboard-toolbar__snapshot select{display:none}.whiteboard-toolbar .snapshot-button{width:36px;padding:0}.whiteboard-stage svg{min-height:calc(100dvh - 300px)}.whiteboard--compact .whiteboard-stage svg{min-height:100%}.whiteboard-documents-popover{top:60px;right:7px}.meeting-workspace--mobile-board .whiteboard-toolbar{min-height:112px;padding-top:58px}.meeting-workspace--mobile-board .whiteboard-documents-popover{top:112px}}@media(max-width:560px){.dialog-backdrop{align-items:end;padding:0}.members-dialog{width:100%;max-height:88dvh;border-radius:22px 22px 0 0}.admin-editor{padding:11px}.admin-editor .form-grid{grid-template-columns:1fr}.whiteboard-toolbar__tools{gap:3px}.whiteboard-toolbar button{width:34px;height:34px}}@media(max-width:900px){.whiteboard-toolbar{grid-template-columns:minmax(0,1fr)}.whiteboard-toolbar__snapshot{width:100%;padding:5px 0 0;border-top:1px solid var(--line);border-left:0}.whiteboard-toolbar__snapshot select{display:block;flex:1 1 auto;width:auto;min-width:0;max-width:none}.whiteboard-toolbar .snapshot-button{width:36px;flex:0 0 36px}}.no-project-page{min-height:min(620px,calc(100vh - 80px));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;max-width:620px;margin:0 auto}.no-project-page h1,.no-project-page p{margin:0}.no-project-page p{color:var(--text-muted);max-width:480px;line-height:1.6}.no-project-icon{width:68px;height:68px;display:grid;place-items:center;border-radius:22px;background:var(--primary-soft);color:var(--primary)}
