:root{--pandai-teal-500:#00564c;--pandai-green-500:#00cc85;--surface-default:#fff;--surface-secondary:#f2f2f2;--surface-primary:#00cc85;--surface-primary-subtle:#e1f9ea;--surface-secondary-subtle:#e8fbe8;--bg-base:#f8f8f8;--border-primary:#00cc85;--border-primary-hover:#66e0b6;--border-primary-focus:#00a36a;--border-general:#d9d9d9;--border-width-xs:1px;--text-heading:#404040;--text-body:#666;--text-caption:#bfbfbf;--text-primary:#00cc85;--text-tertiary:#00564c;--text-on-color:#fff;--text-dark:#2c2c2c;--text-regular:#626262;--alert-success:#28c76f;--alert-info:#00a2e8;--alert-error:#ea5455;--radius-xl:16px;--radius-2xl:18px;--radius-4xl:24px;--radius-pill:108px;--space-3xs:2px;--space-xxs:4px;--space-xs:8px;--space-s:12px;--space-m:16px;--space-l:20px;--space-xl:24px;--space-2xl:32px;--font-family:"Poppins", sans-serif;--title-t1:700 18px/28px var(--font-family);--title-t3:700 16px/24px var(--font-family);--body-b1:600 14px/20px var(--font-family);--body-b2:500 14px/20px var(--font-family);--body-b3:600 13px/19px var(--font-family);--body-b4:500 13px/19px var(--font-family);--body-b5:600 12px/18px var(--font-family);--body-b6:500 12px/18px var(--font-family);--shadow-card:0 1px 2px #2c2c2c0a}:root[data-theme=dark]{--surface-default:#161d1a;--surface-secondary:#212a26;--surface-primary-subtle:#0e2a20;--surface-secondary-subtle:#102019;--bg-base:#0e1311;--border-primary-focus:#2fe0a3;--border-general:#2c3733;--text-heading:#eef2f0;--text-body:#b6bfbb;--text-caption:#717c77;--text-primary:#1ed79a;--text-tertiary:#4fe0a8;--text-dark:#eef2f0;--text-regular:#9aa39e;--shadow-card:0 1px 2px #0006}*,:before,:after{box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-primary) 40%, transparent) transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:color-mix(in srgb, var(--text-primary) 32%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background-color .2s}::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb, var(--text-primary) 70%, transparent);background-clip:padding-box}::-webkit-scrollbar-corner{background:0 0}html,body,#root{height:100%}body{font:var(--body-b2);color:var(--text-body);background:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;transition:background-color .2s,color .2s}h1,h2,h3,h4,p{margin:0}a{color:var(--text-primary);text-decoration:none}button{font-family:var(--font-family);color:inherit;cursor:pointer}.card{background:var(--surface-default);border:var(--border-width-xs) solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-m);box-shadow:var(--shadow-card)}.btn{justify-content:center;align-items:center;gap:var(--space-xs);height:44px;padding:0 var(--space-xl);border:var(--border-width-xs) solid transparent;border-radius:var(--radius-pill);font:var(--body-b1);transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn:focus-visible{box-shadow:0 0 0 3px var(--surface-primary-subtle);outline:none}.btn--primary,.btn--outline{text-align:left;padding-left:var(--space-xl);padding-right:calc(var(--space-xl) + 22px);justify-content:flex-start;position:relative}.btn--primary{background:var(--surface-primary);color:var(--text-on-color)}.btn--primary:hover{background:#1ad28f}.btn--primary:active{background:var(--border-primary-focus)}.btn--outline{background:var(--surface-default);border-color:var(--border-primary);color:var(--text-primary)}.btn--outline:hover{border-color:var(--border-primary-focus);color:var(--border-primary-focus);background:var(--surface-secondary-subtle)}.btn--outline:active{border-color:var(--border-primary-focus);color:var(--border-primary-focus);background:var(--surface-primary-subtle)}.btn:disabled,.btn[aria-disabled=true]{background:var(--surface-secondary);color:var(--text-caption);cursor:not-allowed;border-color:#0000}select.input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-m) center;padding-right:var(--space-2xl)}.field{gap:var(--space-xs);flex-direction:column;display:flex}.field__label{font:var(--body-b5);color:var(--text-heading)}.field--switch{justify-content:flex-end;padding-bottom:10px}.field-row{gap:var(--space-s);align-items:center;display:flex}.field-row .input{flex:1;min-width:0}.input{height:44px;padding:0 var(--space-l);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);font:var(--body-b2);color:var(--text-dark);background:var(--surface-default);transition:border-color .15s,box-shadow .15s,background-color .2s,color .2s}.input::placeholder{color:var(--text-caption)}.input:focus{border-color:var(--border-primary);box-shadow:0 0 0 3px var(--surface-primary-subtle);outline:none}.link-pill{border-radius:var(--radius-pill);border:var(--border-width-xs) solid var(--border-primary);color:var(--text-primary);font:var(--body-b5);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;display:inline-flex}.link-pill:hover{background:var(--surface-secondary-subtle)}.notes__text{white-space:pre-wrap;word-break:break-word;font:var(--body-b2);color:var(--text-dark);background:var(--surface-secondary);border-radius:var(--radius-xl);padding:var(--space-s) var(--space-m);min-height:40px}.icon-btn{width:30px;height:30px;color:var(--text-caption);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:inline-flex}.icon-btn:hover{background:var(--surface-secondary);color:var(--text-heading)}.icon-btn--danger:hover{color:var(--alert-error);background:#fdeaea}:root[data-theme=dark] .icon-btn--danger:hover{color:#ff8c8c;background:#2a1414}.progress{border-radius:var(--radius-pill);background:var(--surface-secondary);width:100%;height:8px;overflow:hidden}.progress__fill{background:var(--surface-primary);border-radius:var(--radius-pill);height:100%;transition:width .3s}.progress--split{display:flex}.progress__seg-amber{background:#f59e0b;height:100%}.page{gap:var(--space-l);flex-direction:column;max-width:1200px;margin:0 auto;display:flex}.page__head{align-items:flex-start;gap:var(--space-m);flex-wrap:wrap;display:flex}.page__head>:first-child{flex:260px}.page__title{font:var(--title-t1);color:var(--text-heading)}.page__actions{gap:var(--space-s);flex-wrap:wrap;display:flex}@media (width<=900px){html,body{overflow-x:hidden}.app-shell,.app-body,.app-content{min-width:0;max-width:100%;overflow-x:hidden}}@media (width<=600px){.table--stack{min-width:0!important}.table--stack thead{display:none}.table--stack,.table--stack tbody,.table--stack tr,.table--stack td{width:100%;display:block}.table--stack tr{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);padding:var(--space-xs) var(--space-s);margin-bottom:var(--space-s)}.table--stack td{justify-content:space-between;align-items:center;gap:var(--space-m);text-align:right;padding:5px 0;display:flex;border:none!important}.table--stack td:before{content:attr(data-label);font:var(--body-b5);color:var(--text-regular);text-align:left;flex:none}.table--stack td[data-label=""]{text-align:left;justify-content:flex-start}.form-grid{grid-template-columns:1fr}}@media (width<=720px){.app-content{padding:var(--space-s)}.page__head{align-items:stretch;gap:var(--space-s);flex-direction:column}.page__head>:first-child{flex:none}.page__actions{flex-direction:column;align-items:stretch;width:100%}.page__actions .btn{width:100%}.modal-overlay{padding:var(--space-m)}.modal{max-height:94vh}.modal__body{padding:var(--space-m)}.modal__header,.modal__footer{padding-left:var(--space-m);padding-right:var(--space-m)}}.page__subtitle{font:var(--body-b2);color:var(--text-body);margin-top:var(--space-3xs)}.muted{color:var(--text-caption)}.table{border-collapse:collapse;width:100%}.table th{text-align:left;font:var(--body-b5);color:var(--text-on-color);background:var(--surface-primary);padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid transparent;white-space:nowrap}.table td{font:var(--body-b2);color:var(--text-dark);padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid var(--surface-secondary);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table .num{text-align:right}.table .center{text-align:center}.table .mono{font-variant-numeric:tabular-nums}.modal-overlay{z-index:60;padding:var(--space-xl);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1418168c;place-items:center;display:grid;position:fixed;inset:0}.callmodal-overlay{z-index:1000;padding:var(--space-xl);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#14181699;place-items:center;display:grid;position:fixed;inset:0}.callmodal{text-align:center;background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-2xl);width:100%;max-width:340px;padding:var(--space-2xl) var(--space-xl);box-shadow:0 16px 40px #00000052}.callmodal__ring{border-radius:50%;padding:4px;animation:1.4s ease-out infinite callring;display:inline-flex;box-shadow:0 0 #00cc8580}@keyframes callring{0%{box-shadow:0 0 #00cc8580}70%{box-shadow:0 0 0 16px #00cc8500}to{box-shadow:0 0 #00cc8500}}@media (prefers-reduced-motion:reduce){.callmodal__ring{animation:none}}.callmodal__name{font:var(--title-t1);color:var(--text-heading);margin:var(--space-m) 0 var(--space-3xs)}.callmodal__sub{font:var(--body-b2);color:var(--text-body);margin:0 0 var(--space-xl)}.callmodal__actions{gap:var(--space-s);justify-content:center;display:flex}.callmodal__btn{border-radius:var(--radius-pill);max-width:130px;height:44px;font:var(--body-b1);cursor:pointer;border:none;flex:1}.callmodal__btn--accept{background:var(--surface-primary);color:var(--text-on-color)}.callmodal__btn--decline{background:var(--alert-error);color:#fff}.modal{background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-4xl);flex-direction:column;width:100%;max-width:640px;max-height:90vh;display:flex;overflow:hidden}.modal__header{padding:var(--space-m) var(--space-xl);border-bottom:var(--border-width-xs) solid var(--border-general);justify-content:space-between;align-items:center;display:flex}.modal__title{font:var(--title-t3);color:var(--text-heading)}.modal__close{color:var(--text-caption);cursor:pointer;background:0 0;border:none;font-size:22px;line-height:1}.modal__close:hover{color:var(--text-heading)}.modal__body{padding:var(--space-xl);gap:var(--space-m);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.modal__footer{justify-content:flex-end;gap:var(--space-s);padding:var(--space-m) var(--space-xl);border-top:var(--border-width-xs) solid var(--border-general);display:flex}.modal__footer--split{justify-content:space-between}.modal__footer-group{gap:var(--space-s);display:flex}.custreq__actions{gap:var(--space-s);flex-direction:column;display:flex}.custreq__btn{justify-content:flex-start;gap:var(--space-s);width:100%}.custreq__icon{flex:none;display:inline-flex}@media (width<=520px){.modal__footer--split{flex-direction:column-reverse;align-items:stretch}.modal__footer-group{width:100%}.modal__footer-group .btn{flex:1}}.form-grid{gap:var(--space-m);grid-template-columns:1fr 1fr;display:grid}.form-grid .field--full{grid-column:1/-1}textarea.input{height:auto;padding:var(--space-s) var(--space-l);border-radius:var(--radius-xl);resize:vertical;font:var(--body-b2)}.pic-line{align-items:center;gap:var(--space-xs);font:var(--body-b2);color:var(--text-dark);display:flex}.avatar{object-fit:cover;border-radius:50%;flex:none;display:inline-block}.avatar--initials{background:var(--surface-primary-subtle);color:var(--text-tertiary);font:var(--body-b1);text-transform:uppercase;justify-content:center;align-items:center;display:inline-flex}.ssel{min-width:0;position:relative}.ssel__btn{align-items:center;gap:var(--space-xs);text-align:left;cursor:pointer;width:100%;padding-right:var(--space-m);display:flex}.ssel__val{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dark);flex:1;overflow:hidden}.ssel__val--ph{color:var(--text-caption)}.ssel__chev{color:var(--text-caption);flex:none}.ssel--disabled .ssel__btn{background:var(--surface-secondary);color:var(--text-caption);cursor:not-allowed}.ssel__dot{border-radius:50%;flex:none;width:9px;height:9px}.ssel__panel{z-index:200;background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);max-width:320px;max-height:280px;box-shadow:var(--shadow-card);padding:var(--space-xs);gap:var(--space-xs);flex-direction:column;display:flex}.ssel__search{height:38px}.ssel__list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.ssel__opt{align-items:center;gap:var(--space-xs);text-align:left;cursor:pointer;width:100%;color:var(--text-dark);font:var(--body-b2);background:0 0;border:none;border-radius:8px;padding:8px 10px;display:flex}.ssel__opt:hover{background:var(--surface-secondary-subtle)}.ssel__opt--on{background:var(--surface-primary-subtle);color:var(--text-tertiary);font-weight:600}.ssel__opt-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ssel__empty{font:var(--body-b6);color:var(--text-caption);padding:8px 10px}.switch{align-items:center;gap:var(--space-s);cursor:pointer;font:var(--body-b2);color:var(--text-dark);-webkit-user-select:none;user-select:none;background:0 0;border:none;padding:0;display:inline-flex}.switch__track{border-radius:var(--radius-pill);background:var(--surface-secondary);border:var(--border-width-xs) solid var(--border-general);flex:none;width:42px;height:24px;transition:background .15s,border-color .15s;position:relative}.switch__knob{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0000004d}.switch--on .switch__track{background:var(--surface-primary);border-color:var(--surface-primary)}.switch--on .switch__knob{transform:translate(18px)}.switch:focus-visible{outline:none}.switch:focus-visible .switch__track{box-shadow:0 0 0 3px var(--surface-primary-subtle)}.pill{padding:3px var(--space-s);border-radius:var(--radius-pill);font:var(--body-b5);white-space:nowrap;flex:none;align-items:center;display:inline-flex}.pill--muted{color:var(--text-regular);background:var(--surface-secondary)}.status-badge--idea{color:#7c3aed;background:#efe7fd}:root[data-theme=dark] .status-badge--idea{color:#c4a5f7;background:#241a38}.status-badge--draft{color:var(--text-regular);background:var(--surface-secondary)}.status-badge--review{color:#b45309;background:#fef3c7}.status-badge--creative{color:#1d4ed8;background:#dbeafe}.status-badge--creative_review{color:#c2410c;background:#ffedd5}.status-badge--published{color:var(--text-tertiary);background:var(--surface-primary-subtle)}.status-badge--not_posted{color:var(--alert-error);background:#fdeaea}:root[data-theme=dark] .status-badge--review{color:#fbbf24;background:#2a2310}:root[data-theme=dark] .status-badge--creative{color:#93b4fc;background:#16203a}:root[data-theme=dark] .status-badge--creative_review{color:#fdba74;background:#2a1a0e}:root[data-theme=dark] .status-badge--not_posted{color:#ff8c8c;background:#2a1414}.role-badge{padding:2px var(--space-s);border-radius:var(--radius-pill);font:var(--body-b5);text-transform:capitalize;align-items:center;display:inline-flex}.role-badge--admin{color:var(--text-tertiary);background:var(--surface-primary-subtle)}.role-badge--staff{color:var(--alert-info);background:#e1f3fb}.role-badge--supervisor{color:#7c3aed;background:#f0e9fd}.role-badge--intern{color:var(--text-regular);background:var(--surface-secondary)}.role-badge--super{color:#fff;background:var(--text-tertiary)}.dept-badge{border-radius:var(--radius-pill);font:var(--body-b6);color:var(--text-body);background:var(--surface-secondary);border:var(--border-width-xs) solid var(--border-general);white-space:nowrap;align-items:center;gap:6px;padding:2px 10px;font-weight:600;display:inline-flex}.dept-badge__dot{border-radius:50%;flex:none;width:8px;height:8px}.creative{gap:var(--space-xs);flex-direction:column;align-items:flex-start;display:flex}.creative__list{gap:var(--space-xs);flex-direction:column;width:100%;margin:0;padding:0;list-style:none;display:flex}.creative__req{align-items:center;gap:var(--space-xs);width:100%;display:flex}.creative__dot{border-radius:50%;flex:none;width:9px;height:9px}.creative__to{font:var(--body-b5);color:var(--text-heading)}.creative__status{text-transform:capitalize}.creative__status--open{color:var(--text-body);background:var(--surface-secondary)}.creative__status--in_progress{color:#9a6700;background:#fdf0c7}.creative__status--done{color:var(--text-tertiary);background:var(--surface-secondary-subtle)}.creative__fetch{margin-left:auto}.creative__form{gap:var(--space-xs);width:100%;padding:var(--space-s);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-secondary);flex-direction:column;display:flex}.creative__actions{justify-content:flex-end;gap:var(--space-xs);display:flex}.alert{padding:var(--space-s) var(--space-m);border-radius:var(--radius-xl);font:var(--body-b6)}.alert--error{color:var(--alert-error);border:var(--border-width-xs) solid #f7caca;background:#fdeaea}.btn--primary:after,.btn--outline:after{content:"";right:var(--space-s);background-color:#0000;background-position:50%;background-repeat:no-repeat;background-size:12px;border:1.5px solid;border-radius:50%;width:22px;height:22px;position:absolute;top:50%;transform:translateY(-50%)}.btn--primary:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E");border-color:#ffffffe6}.btn--outline:after{border-color:var(--border-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300cc85' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E")}.btn--sm:after{content:none}.btn:disabled:after{border-color:var(--text-caption);opacity:.7}.theme-toggle{border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);width:40px;height:40px;color:var(--text-body);border-radius:50%;justify-content:center;align-items:center;transition:border-color .15s,color .15s,background-color .2s;display:inline-flex}.theme-toggle:hover{border-color:var(--border-primary);color:var(--text-primary)}.theme-toggle--fixed{top:var(--space-l);right:var(--space-l);z-index:50;box-shadow:var(--shadow-card);position:fixed}.drag-grip{cursor:grab;width:22px;color:var(--text-caption);opacity:.5;flex:none;justify-content:center;align-items:center;transition:opacity .12s;display:inline-flex}.drag-grip:active{cursor:grabbing}:hover>.drag-grip{opacity:.85}[data-drag=on]{opacity:.45}[data-over=on]{box-shadow:inset 0 2px 0 0 var(--border-primary,#00cc85)}.reorder{gap:var(--space-xs);flex-direction:column;list-style:none;display:flex}.reorder__row{align-items:center;gap:var(--space-s);padding:var(--space-xs) var(--space-s);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-m);background:var(--surface-default);display:flex}.reorder__icon{color:var(--text-body);flex:none;display:inline-flex}.reorder__label{min-width:0;font:var(--body-b5);color:var(--text-heading);flex:1}.reorder__btns{gap:4px;display:flex}.reorder__btn{border-radius:var(--radius-m);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);width:30px;height:30px;color:var(--text-body);cursor:pointer;font-size:14px}.reorder__btn:hover:not(:disabled){border-color:var(--border-primary);color:var(--text-primary)}.reorder__btn:disabled{opacity:.4;cursor:not-allowed}.reorder__btn--hidden{color:#f59e0b;border-color:#f59e0b}.reorder__row--dim .reorder__label{color:var(--text-caption)}.reorder__lock{font:var(--body-b6)}.menuc{margin-top:var(--space-l);padding-top:var(--space-m);border-top:var(--border-width-xs) solid var(--border-general)}.menuc__title{font:var(--body-b3);color:var(--text-heading);margin:0 0 var(--space-xs)}.menuc__list{margin:0 0 var(--space-s);gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.menuc__row{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-s);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);display:flex}.menuc__kind{flex:none}.menuc__label{font:var(--body-b5);color:var(--text-heading)}.menuc__meta{min-width:0;font:var(--body-b6);color:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.menuc__add{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.menuc__add .input{flex:120px;width:auto}.menuc__seg{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);flex:none;display:inline-flex;overflow:hidden}.menuc__seg-btn{background:var(--surface-default);color:var(--text-body);font:var(--body-b6);padding:6px var(--space-s);cursor:pointer;border:0}.menuc__seg-btn--on{background:var(--surface-primary);color:var(--text-on-color)}.menuc__rowicon{color:var(--text-primary);flex:none;display:inline-flex}.menuc__row--dim{opacity:.6}.menuc__icons{gap:var(--space-xs);margin-top:var(--space-s);flex-wrap:wrap;display:flex}.menuc__icon{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);width:34px;height:34px;color:var(--text-body);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.menuc__icon:hover{border-color:var(--border-primary);color:var(--text-primary)}.menuc__icon--on{border-color:var(--border-primary);background:var(--surface-primary-subtle);color:var(--text-tertiary)}.btn--flat{text-align:center;padding-left:var(--space-xl);padding-right:var(--space-xl);justify-content:center}.btn--flat:after{content:none}.btn--sm{height:32px;padding:0 var(--space-m);font:var(--body-b5)}.btn--danger{color:var(--alert-error);background:0 0;border-color:#f3c2c2}.btn--danger:hover{border-color:var(--alert-error);background:#fdeaea}:root[data-theme=dark] .role-badge--super{color:#052e27;background:#4fe0a8}:root[data-theme=dark] .role-badge--staff{color:#6fc3ec;background:#11293a}:root[data-theme=dark] .role-badge--supervisor{color:#c4b5fd;background:#241b3a}:root[data-theme=dark] .alert--error{color:#ff8c8c;background:#2a1414;border-color:#5a2a2a}:root[data-theme=dark] .alert--success{background:#122a1c;border-color:#1f5236}:root[data-theme=dark] .btn--danger{border-color:#5a2a2a}:root[data-theme=dark] .btn--danger:hover{background:#2a1414}:root[data-theme=dark] .btn--primary:after{background-color:#00000038;border-color:#0000}:root[data-theme=dark] select.input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231ed79a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}:root[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(64%)sepia(88%)saturate(420%)hue-rotate(96deg)brightness(95%)contrast(90%);cursor:pointer}:root[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{filter:invert(64%)sepia(88%)saturate(420%)hue-rotate(96deg)brightness(95%)contrast(90%);cursor:pointer}:root[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(64%)sepia(88%)saturate(420%)hue-rotate(96deg)brightness(95%)contrast(90%);cursor:pointer}.toast-host{left:var(--space-m);bottom:calc(var(--space-l) + 196px);z-index:70;gap:var(--space-s);width:300px;max-width:calc(100vw - 2 * var(--space-m));pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{pointer-events:auto;text-align:left;width:100%;padding:var(--space-s) var(--space-xl) var(--space-s) var(--space-m);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-primary);border-radius:var(--radius-xl);cursor:pointer;transform-origin:0 100%;flex-direction:column;gap:2px;animation:.24s cubic-bezier(.2,.8,.2,1) toast-in;display:flex;position:relative;box-shadow:0 10px 28px #00000038}.toast:hover{background:var(--surface-primary-subtle)}.toast__title{font:var(--body-b5);color:var(--text-heading)}.toast__body{font:var(--body-b6);color:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.toast__close{color:var(--text-caption);font-size:18px;line-height:1;position:absolute;top:6px;right:10px}@keyframes toast-in{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}@media (width<=900px){.toast-host{bottom:var(--space-m)}}.navbar{z-index:40;justify-content:space-between;align-items:center;gap:var(--space-m);height:64px;padding:0 var(--space-xl);background:var(--surface-default);border-bottom:var(--border-width-xs) solid var(--border-general);transition:background-color .2s,border-color .2s;display:flex;position:sticky;top:0}.navbar__lead{align-items:center;gap:var(--space-s);min-width:0;margin-right:auto;display:inline-flex}.navbar__brand{flex:none;align-items:center;display:inline-flex}.dash-switch{min-width:0;position:relative}.dash-switch__btn{align-items:center;gap:var(--space-xs);border:var(--border-width-xs) solid transparent;cursor:pointer;background:0 0;border-radius:10px;max-width:240px;padding:4px 8px;display:inline-flex}.dash-switch__btn[data-single]{cursor:default}.dash-switch__btn:not([data-single]):hover{border-color:var(--border-general);background:var(--surface-secondary-subtle)}.dash-switch__text{text-align:left;flex-direction:column;justify-content:center;gap:1px;min-width:0;line-height:1.2;display:flex}.dash-switch__parent{font:var(--body-b6);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.dash-switch__name{font:var(--body-b5);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.dash-switch__chev{border:1.5px solid var(--border-primary);width:22px;height:22px;color:var(--text-primary);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.dash-switch__btn:hover .dash-switch__chev{border-color:var(--border-primary-focus);color:var(--border-primary-focus)}.dash-switch__backdrop{z-index:50;position:fixed;inset:0}.dash-switch__menu{z-index:51;background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);min-width:248px;box-shadow:var(--shadow-card);flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.dash-switch__item{justify-content:space-between;align-items:center;gap:var(--space-s);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;width:100%;padding:8px 10px;display:flex}.dash-switch__item:hover{background:var(--surface-secondary-subtle)}.dash-switch__item--active{background:var(--surface-primary-subtle)}.dash-switch__row{align-items:stretch;gap:2px;display:flex}.dash-switch__row .dash-switch__item{flex:1;min-width:0}.dash-switch__caret-btn{width:24px;color:var(--text-caption);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.dash-switch__caret-btn:hover{background:var(--surface-secondary-subtle);color:var(--text-heading)}.dash-switch__caret-btn svg{transition:transform .15s}.dash-switch__caret-btn--open svg{transform:rotate(90deg)}.dash-switch__caret-spacer{flex:none;width:24px}.dash-switch__item-left{align-items:center;gap:var(--space-xs);min-width:0;display:inline-flex}.dash-switch__dot{border-radius:50%;flex:none;width:9px;height:9px}.dash-switch__item-text{flex-direction:column;gap:1px;min-width:0;display:flex}.dash-switch__soon{color:var(--text-caption);background:var(--surface-secondary);border-radius:var(--radius-pill);flex:none;padding:2px 8px;font-size:10px;font-weight:600}.navbar__brand-divider{background:var(--border-general);flex:none;width:1px;height:28px}.navbar__brand-text{flex-direction:column;justify-content:center;gap:1px;line-height:1.2;display:flex}.navbar__brand-line{font:var(--body-b5);color:var(--text-heading);white-space:nowrap;font-weight:600}.navbar__brand-line--sub{color:var(--text-caption);font-weight:500}.navbar__menu{border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);width:40px;height:40px;color:var(--text-body);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;display:none}.navbar__collapse{border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);width:40px;height:40px;color:var(--text-body);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.navbar__collapse:hover{color:var(--text-primary);border-color:var(--border-primary)}.navbar__collapse[aria-pressed=true]{color:var(--text-primary)}.navbar__actions{align-items:center;gap:var(--space-s);display:flex}.navbar .btn{height:40px}.navbar__actions .btn--outline{border-color:var(--border-general);color:var(--text-body);background:var(--surface-default)}.navbar__actions .btn--outline:hover{border-color:var(--border-primary);color:var(--text-primary);background:var(--surface-secondary-subtle)}.navbar__profile{align-items:center;gap:var(--space-xs);height:44px;padding:0 var(--space-s) 0 4px;border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);background:var(--surface-default);cursor:pointer;text-decoration:none;transition:border-color .15s,background-color .15s;display:flex}.navbar__profile:hover{border-color:var(--border-primary);background:var(--surface-secondary-subtle)}.navbar__id{flex-direction:column;justify-content:center;align-items:flex-start;gap:1px;min-width:0;display:flex}.navbar__id .navbar__name{font-size:12px;line-height:1.15}.navbar__id .role-badge{padding:0 8px;font-size:10px;line-height:1.5}.navbar__avatar-wrap{line-height:0;display:inline-flex;position:relative}.navbar__dot{background:var(--alert-error);border:1.5px solid var(--surface-default);border-radius:50%;width:10px;height:10px;position:absolute;top:-1px;right:-1px}.navbar__chev{border:1.5px solid var(--border-primary);width:22px;height:22px;color:var(--text-primary);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.navbar__profile:hover .navbar__chev{border-color:var(--border-primary-focus);color:var(--border-primary-focus)}.navbar__name{font:var(--body-b5);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}@media (width<=900px){.navbar{padding:0 var(--space-m)}.navbar__menu{display:inline-flex}.navbar__collapse{display:none}.navbar__desktop{display:none!important}}@media (width<=520px){.navbar__brand-divider,.navbar__brand-text{display:none}}.report-opts{gap:var(--space-xs);flex-direction:column;display:flex}.report-opt{align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);font:var(--body-b2);color:var(--text-dark);cursor:pointer;display:flex}.report-opt input{width:16px;height:16px;accent-color:var(--surface-primary)}.report-link{gap:var(--space-s);padding:var(--space-s);border:var(--border-width-xs) solid var(--border-primary);border-radius:var(--radius-xl);background:var(--surface-secondary-subtle);align-items:center;display:flex}.report-link input{font:var(--body-b2);color:var(--text-dark);background:0 0;border:none;outline:none;flex:1}.report-list{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.report-list__row{align-items:center;gap:var(--space-s);padding:var(--space-s) 0;border-top:var(--border-width-xs) solid var(--surface-secondary);display:flex}.report-list__meta{flex:1;min-width:0}.report-list__title{font:var(--body-b5);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.report-list__date{font:var(--body-b6);color:var(--text-caption)}.yr{--yr-bar:#00564c;gap:var(--space-l);flex-direction:column;display:flex}:root[data-theme=dark] .yr{--yr-bar:#2dd4bf}.yr__head{justify-content:space-between;align-items:flex-start;gap:var(--space-m);flex-wrap:wrap;display:flex}.yr__title{font:var(--title-t3);color:var(--text-heading)}.yr__sub{font:var(--body-b5);color:var(--text-caption);margin-top:2px}.yr__filters{align-items:center;gap:var(--space-s);flex-wrap:wrap;display:flex}.yr__yearnav{align-items:center;gap:var(--space-xs);display:flex}.yr__year{font:var(--body-b1);color:var(--text-heading);text-align:center;font-variant-numeric:tabular-nums;min-width:52px}.yr__month{max-width:150px;height:38px}.yr__tiles{gap:var(--space-m);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=720px){.yr__tiles{grid-template-columns:repeat(2,1fr)}}.yr-tile{padding:var(--space-m);border-radius:var(--radius-l);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-secondary-subtle);flex-direction:column;gap:2px;display:flex;position:relative;overflow:hidden}.yr-tile:before{content:"";background:var(--text-primary);width:4px;position:absolute;inset:0 auto 0 0}.yr-tile--int:before{background:var(--yr-bar)}.yr-tile--fol:before{background:#6366f1}.yr-tile--pub:before{background:#f59e0b}.yr-tile__label{font:var(--body-b6);color:var(--text-regular);text-transform:uppercase;letter-spacing:.05em}.yr-tile__value{font:800 26px/30px var(--font-family);color:var(--text-heading);font-variant-numeric:tabular-nums}.yr-tile__sub{font:600 15px/20px var(--font-family);color:var(--text-caption)}.yr-tile__foot{font:var(--body-b6);color:var(--text-caption)}.yr__charts{gap:var(--space-m);grid-template-columns:1fr 1fr 1fr;align-items:stretch;display:grid}@media (width<=900px){.yr__charts{grid-template-columns:1fr}}.yr-panel{gap:var(--space-s);padding:var(--space-m);border-radius:var(--radius-l);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);flex-direction:column;display:flex}.yr-panel__head{justify-content:space-between;align-items:baseline;display:flex}.yr-panel__title{font:var(--body-b4);color:var(--text-heading)}.yr-panel__hint{font:var(--body-b6);color:var(--text-caption);text-transform:uppercase;letter-spacing:.05em}.yr-chart-rel{position:relative}.yr-tip{border-radius:var(--radius-m);background:var(--text-heading);color:var(--surface-default);font:var(--body-b6);white-space:nowrap;pointer-events:none;z-index:3;box-shadow:var(--shadow-card);padding:3px 8px;position:absolute;transform:translate(-50%,-130%)}.yr-tip strong{font-weight:700}.yr-tip--bar{margin-bottom:4px;bottom:100%;left:50%}.yr-svg{width:100%;height:auto;display:block;overflow:visible}.yr-dot--on{r:4;fill:var(--text-primary)}.yr-line{fill:none;stroke:var(--text-primary);stroke-width:2.2px;stroke-linejoin:round;stroke-linecap:round}.yr-area{fill:var(--surface-primary-subtle);stroke:none}.yr-dot{fill:var(--surface-default);stroke:var(--text-primary);stroke-width:1.6px}.yr-xaxis{font:600 9px/12px var(--font-family);color:var(--text-caption);font-variant-numeric:tabular-nums;justify-content:space-between;gap:2px;display:flex}.yr-xaxis span{text-align:center;white-space:nowrap;flex:1;overflow:hidden}.yr-bars{align-items:flex-end;gap:3px;height:120px;display:flex}.yr-bar-col{cursor:pointer;flex:1;align-items:flex-end;height:100%;display:flex;position:relative}.yr-bar-track{align-items:flex-end;width:100%;height:100%;display:flex}.yr-bar-fill{border-radius:4px 4px 0 0;width:100%;min-height:2px;transition:height .2s,filter .12s}.yr-bar-fill--on{filter:brightness(1.15)}.yr-donut-wrap{align-items:center;gap:var(--space-m);display:flex}.yr-donut{flex:none;width:130px;height:130px}.yr-donut-track{stroke:var(--surface-secondary)}.yr-donut-num{font:800 24px/1 var(--font-family);fill:var(--text-heading)}.yr-donut-cap{font:600 9px/1 var(--font-family);fill:var(--text-caption);text-transform:uppercase;letter-spacing:.05em}.yr-legend{flex-direction:column;gap:4px;min-width:0;list-style:none;display:flex}.yr-legend li{align-items:center;gap:var(--space-xs);font:var(--body-b6);color:var(--text-body);display:flex}.yr-legend__n{padding-left:var(--space-s);color:var(--text-heading);font-variant-numeric:tabular-nums;margin-left:auto}.banner{justify-content:space-between;align-items:center;gap:var(--space-m);padding:var(--space-m) var(--space-l);border-radius:var(--radius-xl);border:var(--border-width-xs) solid #f6dca0;color:#92600a;font:var(--body-b2);background:#fff7e6;display:flex}:root[data-theme=dark] .banner{color:#fbbf24;background:#2a2310;border-color:#4a3c14}.mx__stats{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.stat-card{gap:var(--space-3xs);flex-direction:column;display:flex}.stat-card__label{font:var(--body-b5);color:var(--text-regular);text-transform:uppercase;letter-spacing:.04em}.stat-card__value{font:800 26px/32px var(--font-family);color:var(--text-heading)}.stat-card__value--accent{color:var(--text-primary)}.stat-card__target{font:var(--body-b6);color:var(--text-caption)}.stat-card__target strong{color:var(--text-tertiary)}.tg-plat{justify-content:space-between;align-items:center;gap:var(--space-s);margin-top:var(--space-xs);display:flex}.tg-plat__name{align-items:center;gap:var(--space-xs);font:var(--body-b5);color:var(--text-heading);display:flex}.tg-plat__input{text-align:right;max-width:120px;height:38px}.mx__platform{align-items:center;gap:var(--space-xs);font:var(--body-b5);color:var(--text-heading);display:flex}.mx__dot{border-radius:50%;flex:none;width:9px;height:9px}.mx__bar-cell{min-width:180px}.mx__section-title{font:var(--body-b5);color:var(--text-regular);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-s)}.mx__weeks{gap:var(--space-m);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.week-card{gap:var(--space-xs);flex-direction:column;display:flex}.week-card__ww{align-self:flex-start}.week-card__row{font:var(--body-b6);justify-content:space-between;display:flex}.week-card__row strong{color:var(--text-heading)}.mx__bimesters{gap:var(--space-m);grid-template-columns:repeat(6,1fr);display:grid}@media (width<=900px){.mx__bimesters{grid-template-columns:repeat(3,1fr)}}@media (width<=520px){.mx__bimesters{grid-template-columns:repeat(2,1fr)}}.bi-card{padding:var(--space-m);gap:var(--space-xs);text-align:left;cursor:pointer;width:100%;min-height:84px;font-family:var(--font-family);flex-direction:column;transition:border-color .15s,background-color .15s;display:flex}.bi-card:hover{border-color:var(--border-primary)}.bi-card--current{border-color:var(--border-primary);background:var(--surface-primary-subtle)}.mx__split{gap:var(--space-l);grid-template-columns:1fr 1fr;align-items:stretch;display:grid}.mx__split>section{flex-direction:column;min-width:0;display:flex}.mx__split>section>.card{flex:1}@media (width<=900px){.mx__split{grid-template-columns:1fr}}.pc-row{justify-content:space-between;align-items:center;gap:var(--space-s);margin-top:var(--space-xs);display:flex}.pc-row__name{align-items:center;gap:var(--space-xs);font:var(--body-b5);color:var(--text-heading);display:flex}.pc-row__pick{align-items:center;gap:var(--space-xs);display:flex}.pc-swatch{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-m);cursor:pointer;background:0 0;width:38px;height:38px;padding:0}.pc-swatch::-webkit-color-swatch-wrapper{padding:3px}.pc-swatch::-webkit-color-swatch{border:none;border-radius:6px}.pc-hex{text-transform:lowercase;font-variant-numeric:tabular-nums;width:110px;height:38px}.mx__list{padding:0;overflow:hidden}.mx__list-row{justify-content:space-between;align-items:center;gap:var(--space-m);width:100%;padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid var(--surface-secondary);display:flex}.mx__list-row:last-child{border-bottom:none}.mx__metrics{gap:var(--space-l);font:var(--body-b6);color:var(--text-body);white-space:nowrap;flex-wrap:wrap;display:flex}.mx__metric{flex-direction:column;align-items:flex-end;gap:1px;display:flex}.mx__delta{font:700 11px/14px var(--font-family);font-variant-numeric:tabular-nums;letter-spacing:.01em}.mx__delta--up{color:#16a34a}.mx__delta--down{color:var(--alert-error)}.mx__delta--flat{color:var(--text-caption)}.mx__delta-pct{opacity:.85}@media (width<=600px){.mx__list-row{gap:var(--space-xs);flex-wrap:wrap}.mx__metrics{gap:var(--space-m);row-gap:2px}.mx__metric{align-items:flex-start}}.mx__metrics strong{color:var(--text-heading);font-variant-numeric:tabular-nums}.mx__bi-row{border:none;border-bottom:var(--border-width-xs) solid var(--surface-secondary);cursor:pointer;font-family:var(--font-family);text-align:left;background:0 0;transition:background-color .15s}.mx__bi-row:hover{background:var(--surface-secondary)}.mx__bi-row--current{background:var(--surface-primary-subtle)}.mx__bi-name{font:var(--body-b5);color:var(--text-heading)}.mx__bi-row .mono{color:var(--text-heading);font:var(--body-b5);font-variant-numeric:tabular-nums}.mx__bi-switch{align-items:center;gap:var(--space-m);display:flex}.mx__bi-label{font:var(--title-t3);color:var(--text-heading);text-align:center;min-width:150px}.bi-card__label{font:var(--body-b6);color:var(--text-regular)}.bi-card__value{font:800 18px/22px var(--font-family);color:var(--text-heading);font-variant-numeric:tabular-nums;margin-top:auto}.wm__weeknav{justify-content:center;align-items:center;gap:var(--space-m);display:flex}.wm__weeklabel{font:var(--body-b5);color:var(--text-heading)}.wm__dot{width:8px;height:8px;margin-right:var(--space-xs);border-radius:50%;display:inline-block}.wm__tablewrap{overflow-x:auto}.wm__tablewrap .table{min-width:380px}.wm__input{text-align:right;max-width:130px;height:38px;margin-left:auto}.wm__cumrow td{border-top:var(--border-width-s) solid var(--surface-secondary);font:var(--body-b4);color:var(--text-heading);font-variant-numeric:tabular-nums}.wm__cumrow td:first-child{text-transform:uppercase;letter-spacing:.04em;font:var(--body-b5);color:var(--text-regular)}.wm__override{margin-top:var(--space-m);gap:var(--space-xs);flex-direction:column;display:flex}.wm__override-grid{gap:var(--space-s);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=520px){.wm__override-grid{grid-template-columns:1fr}}.wm__override-cell{gap:var(--space-3xs);flex-direction:column;display:flex}.wm__override-label{font:var(--body-b6);color:var(--text-caption)}.mx__ov-tag{color:var(--text-primary);font-weight:700}.sched-booked{margin-top:var(--space-s)}.sched-booked__list{margin:var(--space-3xs) 0 0;gap:var(--space-xs);flex-wrap:wrap;padding:0;list-style:none;display:flex}.sched-booked__list li{font:var(--body-b6);color:var(--text-body);border-radius:var(--radius-pill);background:var(--surface-secondary);border:var(--border-width-xs) solid var(--border-general);padding:3px 10px}.sched-booked__list li.is-clash{background:var(--alert-error);color:#fff;border-color:var(--alert-error);font-weight:700}.stc{width:100%;max-width:640px}.stc__body{gap:var(--space-m);flex-direction:column;display:flex}.stc__section{font:var(--body-b3);color:var(--text-heading);margin:var(--space-xs) 0 0;padding-bottom:var(--space-xs);border-bottom:var(--border-width-xs) solid var(--border-general)}.stc__chips{gap:var(--space-xs);flex-wrap:wrap;display:flex}.stc__chip{padding:5px var(--space-s);border-radius:var(--radius-pill);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);font:var(--body-b6);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.stc__chip:hover{border-color:var(--border-primary)}.stc__chip--on{border-color:var(--border-primary);background:var(--surface-primary-subtle);color:var(--text-tertiary)}.stc__chip-dot{border-radius:50%;flex:none;width:8px;height:8px}.stc__upload{cursor:pointer;white-space:nowrap}.stc__autofill{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.cal__nav{align-items:center;gap:var(--space-xs);display:flex}.cal__month{font:var(--title-t3);color:var(--text-heading);text-align:center;min-width:150px}.cal{padding:0;overflow:hidden}.cal__dow,.cal__grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal__dow{border-bottom:var(--border-width-xs) solid var(--border-general)}.cal__dow>div{padding:var(--space-s);text-align:center;font:var(--body-b5);color:var(--text-regular)}.cal__cell{min-width:0;min-height:116px;padding:var(--space-xs);border-right:var(--border-width-xs) solid var(--surface-secondary);border-bottom:var(--border-width-xs) solid var(--surface-secondary);gap:var(--space-xxs);flex-direction:column;display:flex;overflow:hidden}.cal__cell--empty,.cal__cell--weekend{background:var(--surface-secondary)}.cal__cell--empty.cal__cell--weekend{background:var(--border-general)}.cal__dow--weekend{color:var(--text-tertiary)}.cal__grid>.cal__cell:nth-child(7n){border-right:none}.cal__day{justify-content:space-between;align-items:center;display:flex}.cal__daynum{font:var(--body-b5);color:var(--text-caption)}.cal__daynum--today{background:var(--surface-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.cal__add{color:var(--text-caption);cursor:pointer;opacity:0;background:0 0;border:none;font-size:16px;line-height:1;transition:opacity .15s}.cal__cell:hover .cal__add{opacity:1}.cal__add:hover{color:var(--text-primary)}.cal__holiday{font:var(--body-b8,500 10px/12px var(--font-family));color:var(--alert-error);white-space:nowrap;text-overflow:ellipsis;background:#fdeaea;border-radius:6px;margin-bottom:3px;padding:2px 6px;overflow:hidden}:root[data-theme=dark] .cal__holiday{color:#ff9d9d;background:#2a1414}.cal__chips{flex-direction:column;gap:3px;min-width:0;display:flex;overflow:hidden}.cal__chip{text-align:left;border:none;border-left:3px solid var(--border-general);background:var(--surface-secondary);cursor:pointer;border-radius:6px;flex-direction:column;gap:3px;min-width:0;max-width:100%;padding:4px 6px;display:flex;overflow:hidden}.cal__chip:hover{background:var(--surface-secondary-subtle)}.cal__chip-title{font:var(--body-b8,500 10px/12px var(--font-family));color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-weight:600;overflow:hidden}.cal__chip-tags{align-items:center;gap:3px;display:flex;overflow:hidden}.cal__pic{border:1px solid var(--border-general);flex:none;margin-left:auto}.cal__tag{max-width:100%;font:var(--body-b8,500 10px/12px var(--font-family));color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;flex:none;padding:0 5px;font-size:9px;line-height:1.5;overflow:hidden}.cal__tag--asset{background:var(--surface-default);color:var(--text-regular);border:var(--border-width-xs) solid var(--border-general)}@media (width<=600px){.cal__dow>div{padding:var(--space-xs) 2px;font-size:9px}.cal__cell{min-height:62px;padding:3px}.cal__daynum{font-size:10px}.cal__daynum--today{width:18px;height:18px}.cal__chip{border-left-width:3px;padding:2px 4px}.cal__chip-tags{display:none}.cal__chip-title{font-size:9px}.cal__holiday{padding:1px 4px;font-size:8px}}.ws__tabs{gap:var(--space-xs);flex-wrap:wrap;display:flex}.ws__tab{align-items:center;gap:var(--space-xs);padding:7px var(--space-m);border-radius:var(--radius-pill);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);font:var(--body-b5);transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.ws__tab:hover{border-color:var(--border-primary)}.ws__tab--active{background:var(--surface-primary);border-color:var(--surface-primary);color:#fff}.ws__dot{border-radius:50%;flex:none;width:8px;height:8px}.ws__tab--active .ws__dot{outline:1.5px solid #ffffffb3}.ws__monthbar{align-items:center;gap:var(--space-m);flex-wrap:wrap;display:flex}.ws__monthnav{align-items:center;gap:var(--space-xs);display:flex}.ws__monthlabel{font:var(--body-b5);color:var(--text-heading);text-align:center;min-width:130px}.ws__monthlabel--muted{color:var(--text-caption)}.ws__filters-right{align-items:center;gap:var(--space-s);margin-left:auto;display:flex}.ws__statusfilter{max-width:180px;height:36px}.ws__cols{position:relative}.ws__cols-backdrop{z-index:20;position:fixed;inset:0}.ws__cols-menu{z-index:21;width:230px;max-height:360px;padding:var(--space-xs);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);flex-direction:column;gap:2px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 8px 24px #0000002e}.ws__cols-item{justify-content:space-between;align-items:center;gap:var(--space-xs);border-radius:var(--radius-xl);padding:4px 6px;display:flex}.ws__cols-item:hover{background:var(--surface-secondary)}.ws__cols-toggle{align-items:center;gap:var(--space-xs);min-width:0;font:var(--body-b5);color:var(--text-body);cursor:pointer;flex:1;display:flex}.ws__cols-toggle input{accent-color:var(--surface-primary)}.ws__cols-move{flex:none;gap:2px;display:flex}.ws__cols-move .icon-btn{width:24px;height:24px;font-size:13px}.ws__pic{align-items:center;gap:var(--space-xs);display:flex}.ws__pic-name{white-space:nowrap;text-overflow:ellipsis;max-width:120px;overflow:hidden}.ws__link-btn{cursor:pointer;color:var(--text-primary);font:var(--body-b2);text-align:left;background:0 0;border:none;max-width:260px;padding:0}.ws__link-btn:hover{text-decoration:underline}.ws__card{padding:0;overflow-x:auto}.ws__card .table{min-width:1440px}.ws__title{font:var(--body-b5);color:var(--text-heading)}.ws__campaign{font:var(--body-b6);color:var(--text-primary);margin-top:1px}.ws__actions{gap:var(--space-xs);white-space:nowrap;justify-content:flex-end;display:flex}.ws__th-sort{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.ws__th-sort:hover{color:var(--text-primary)}.pv-media{background:#000;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.pv-car__nav{color:#fff;cursor:pointer;background:#00000073;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.pv-car__prev{left:8px}.pv-car__next{right:8px}.pv-car__count{color:#fff;background:#0000008c;border-radius:10px;padding:2px 8px;font-size:11px;position:absolute;top:8px;right:8px}.pv-car__dots{justify-content:center;gap:4px;display:flex;position:absolute;bottom:8px;left:0;right:0}.pv-car__dots span{background:#ffffff80;border-radius:50%;width:6px;height:6px}.pv-car__dots span.on{background:#fff}.pv-media img,.pv-media video{object-fit:cover;width:100%;height:100%;display:block}.pv-media__empty{gap:var(--space-xs);color:#9aa3a0;width:100%;height:100%;min-height:160px;font:var(--body-b6);background:var(--surface-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.pv{color:#111;width:100%;max-width:400px;font-family:var(--font-family);background:#fff;border:1px solid #dbdbdb;border-radius:10px;overflow:hidden}.pv__head{align-items:center;gap:8px;padding:10px 12px;display:flex}.pv__avatar{background:#f0f0f0;border-radius:50%;flex:none;width:34px;height:34px}.pv__name{color:#111;font-size:13px;font-weight:700}.pv__sub{color:#8a8a8a;font-size:11px}.pv__actions{color:#222;gap:16px;padding:10px 12px 4px;display:flex}.pv__actions .pv__spacer{margin-left:auto}.pv__likes{padding:0 12px;font-size:13px;font-weight:600}.pv__caption{color:#222;white-space:pre-wrap;word-break:break-word;padding:4px 12px 12px;font-size:13px;line-height:1.4}.pv__caption strong{font-weight:700}.pv__muted{color:#aaa}.pv--fb .pv__caption-top{color:#222;white-space:pre-wrap;padding:0 12px 10px;font-size:13px}.pv--fb .pv__fbbar{border-top:1px solid #e4e6eb;margin-top:6px;display:flex}.pv--fb .pv__fbbtn{color:#65676b;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 0;font-size:13px;font-weight:600;display:flex}.pv--tiktok{color:#fff;background:#000;border:none;border-radius:12px;width:100%;max-width:300px;position:relative;overflow:hidden}.pv--tiktok .pv-media{border-radius:12px}.pv-tt__overlay{pointer-events:none;align-items:flex-end;display:flex;position:absolute;inset:0}.pv-tt__left{text-shadow:0 1px 3px #0009;flex:1;padding:12px}.pv-tt__user{font-size:14px;font-weight:700}.pv-tt__cap{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:4px;font-size:12px;display:-webkit-box;overflow:hidden}.pv-tt__rail{color:#fff;flex-direction:column;align-items:center;gap:16px;width:56px;padding:0 8px 16px;display:flex}.pv-tt__rail .pv-tt__icon{flex-direction:column;align-items:center;gap:2px;font-size:10px;display:flex}.pv--yt{max-width:400px;color:var(--text-heading);background:0 0;border:none}.pv-yt__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:10px 2px 6px;font-size:15px;font-weight:700;display:-webkit-box;overflow:hidden}.pv-yt__row{gap:10px;padding:0 2px;display:flex}.pv-yt__meta{color:var(--text-caption);font-size:12px}.pv--blog{background:var(--surface-default);border-color:var(--border-general);max-width:400px;color:var(--text-heading);border-radius:var(--radius-xl)}.pv-blog__body{padding:var(--space-m)}.pv-blog__kicker{font:var(--body-b6);color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em}.pv-blog__title{font:var(--title-t3);margin:4px 0 6px}.pv-blog__excerpt{font:var(--body-b2);color:var(--text-body);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pv-blog__meta{font:var(--body-b6);color:var(--text-caption);margin-top:var(--space-s)}.sp{gap:var(--space-l);grid-template-columns:minmax(0,1fr) minmax(0,420px);align-items:start;display:grid}@media (width<=900px){.sp{grid-template-columns:1fr}}.sp__panel{gap:var(--space-m);flex-direction:column;display:flex}.sp__hint{font:var(--body-b6);color:var(--text-caption)}.sp__media-list{gap:var(--space-xs);margin-bottom:var(--space-xs);flex-wrap:wrap;display:flex}.sp__media-chip{border-radius:var(--radius-pill);background:var(--surface-secondary);font:var(--body-b6);color:var(--text-body);text-transform:capitalize;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.sp__media-x{color:var(--text-caption);cursor:pointer;background:0 0;border:none;font-size:14px;line-height:1}.sp__media-x:hover{color:var(--alert-error)}.sp__preview{top:calc(64px + var(--space-l));gap:var(--space-s);flex-direction:column;display:flex;position:sticky}.sp__preview-label{font:var(--body-b5);color:var(--text-regular);text-transform:uppercase;letter-spacing:.04em}.sp-card{background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);overflow:hidden}.sp-card__head{align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);display:flex}.sp-card__name{font:var(--body-b5);color:var(--text-heading)}.sp-card__sub{font:var(--body-b6);color:var(--text-caption)}.sp-card__plat-dot{border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.sp-card__media{aspect-ratio:4/5;background:var(--surface-secondary);justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.sp-card__media img,.sp-card__media video{object-fit:cover;width:100%;height:100%}.sp-card__media-empty{align-items:center;gap:var(--space-xs);color:var(--text-caption);font:var(--body-b6);padding:var(--space-l);text-align:center;flex-direction:column;display:flex}.sp-card__actions{gap:var(--space-m);padding:var(--space-s) var(--space-m) 0;color:var(--text-heading);display:flex}.sp-card__caption{padding:var(--space-s) var(--space-m) var(--space-m);font:var(--body-b2);color:var(--text-dark);white-space:pre-wrap;word-break:break-word}.sp-card__caption strong{color:var(--text-heading)}.camp__add{gap:var(--space-s);align-items:center;display:flex}.camp__add .input{flex:1}@media (width<=600px){.camp__add{flex-direction:column;align-items:stretch}}.camp__grid{gap:var(--space-m);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.camp__card{gap:var(--space-s);flex-direction:column;display:flex}.camp__head{justify-content:space-between;align-items:center;gap:var(--space-s);display:flex}.camp__name{font:var(--title-t3);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.camp__head-right{align-items:center;gap:var(--space-xs);flex:none;display:flex}.camp__edit-input{flex:1;min-width:0;height:38px}.camp__bar-row{font:var(--body-b5);justify-content:space-between;display:flex}.camp__pct{color:var(--text-tertiary);font-weight:700}.camp__card--clickable{cursor:pointer;transition:border-color .12s,transform .12s}.camp__card--clickable:hover{border-color:var(--border-primary);transform:translateY(-1px)}.camp__card--clickable:focus-visible{outline:2px solid var(--border-primary-focus);outline-offset:2px}.camp__content{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.camp__content-row{align-items:center;gap:var(--space-s);text-align:left;cursor:pointer;border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-m);background:var(--surface-default);width:100%;padding:var(--space-xs) var(--space-s);display:flex}.camp__content-row:hover{background:var(--surface-secondary-subtle);border-color:var(--border-primary)}.camp__content-bar{border-radius:2px;flex:none;align-self:stretch;width:4px}.camp__content-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.camp__content-title{font:var(--body-b2);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.camp__content-tags{font:var(--body-b6);color:var(--text-body);flex-wrap:wrap;gap:4px;display:flex}.camp__content-plat{color:var(--text-tertiary);font-weight:600}.meet__grid{gap:var(--space-m);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.meet__card{gap:var(--space-s);flex-direction:column;display:flex}.meet__head{justify-content:space-between;align-items:flex-start;gap:var(--space-s);display:flex}.meet__title{font:var(--title-t3);color:var(--text-heading);text-overflow:ellipsis;min-width:0;overflow:hidden}.meet__actions{gap:var(--space-xs);flex:none;display:flex}.meet__notes{font:var(--body-b2);color:var(--text-body);white-space:pre-wrap;word-break:break-word}.meet__foot{justify-content:space-between;align-items:center;gap:var(--space-s);margin-top:auto;display:flex}.meet__by{font:var(--body-b6);color:var(--text-caption)}.tp__filters{align-items:center;gap:var(--space-s);display:flex}.tp__yearnav{align-items:center;gap:var(--space-xs);display:inline-flex}.tp__year{font:var(--title-t3);color:var(--text-heading);text-align:center;min-width:3.5ch}.tp__month{width:auto;min-width:120px}.tp__tiles{gap:var(--space-m);margin-bottom:var(--space-m);grid-template-columns:repeat(4,1fr);display:grid}.tp-tile{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);padding:var(--space-m);flex-direction:column;gap:4px;display:flex}.tp-tile__label{font:var(--body-b6);color:var(--text-caption);text-transform:uppercase;letter-spacing:.04em}.tp-tile__value{font:var(--title-t1);color:var(--text-heading)}.tp-tile__sub{font:var(--body-b5);color:var(--text-caption)}.tp-panel{padding:var(--space-m);margin-bottom:var(--space-m)}.tp-panel__head{justify-content:space-between;align-items:center;gap:var(--space-s);margin-bottom:var(--space-s);display:flex}.tp-panel__title{font:var(--title-t3);color:var(--text-heading)}.tp-panel__hint{font:var(--body-b6);color:var(--text-caption);text-transform:uppercase;letter-spacing:.04em}.tp-chart-rel{position:relative}.tp-svg{width:100%;height:160px;display:block;overflow:visible}.tp-grid{stroke:var(--border-general);stroke-width:1px;opacity:.45}.tp-guide{stroke:var(--text-caption);stroke-width:1px;stroke-dasharray:3 3;opacity:.7}.tp-mline{transition:opacity .12s,stroke-width .12s}.tp-ylabel{text-align:right;width:24px;font:var(--body-b6);color:var(--text-caption);pointer-events:none;font-size:10px;position:absolute;left:0;transform:translateY(-50%)}.tp-tip{z-index:4;white-space:nowrap;pointer-events:none;color:#fff;font:var(--body-b6);border-radius:var(--radius-m);background:#111827;border:1px solid #ffffff24;padding:6px 9px;position:absolute;box-shadow:0 4px 14px #00000059}.tp-tip--multi{flex-direction:column;gap:3px;min-width:130px;display:flex;top:6px;transform:translate(-50%)}.tp-tip--multi strong{color:#fff;margin-bottom:2px}.tp-tip__row{color:#ffffffd9;align-items:center;gap:6px;display:flex}.tp-tip__row b{color:#fff;margin-left:auto}.tp-xaxis{font:var(--body-b6);color:var(--text-caption);justify-content:space-between;margin-top:4px;display:flex}.tp-xaxis span{text-align:center;flex:1;min-width:0}.tp-linelegend{gap:var(--space-xs) var(--space-m);margin:var(--space-s) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.tp-legitem{cursor:pointer;font:var(--body-b6);color:var(--text-body);border-radius:var(--radius-m);background:0 0;border:none;align-items:center;gap:6px;padding:2px 4px;display:inline-flex}.tp-legitem:hover{background:var(--surface-secondary-subtle)}.tp-legitem.is-on{color:var(--text-heading);font-weight:700}.tp-member__bar{border-radius:2px;flex:none;width:4px;height:22px}.tp__grid{gap:var(--space-m);grid-template-columns:1fr 300px;align-items:stretch;display:grid}.tp__grid>.tp-panel,.tp__grid>.tp-board{height:100%;margin-bottom:0}.tp-board{padding:var(--space-m);flex-direction:column;min-height:0;display:flex}.tp-board__scroll{flex:1;min-height:0;overflow:auto}.tp-table{border-collapse:collapse;width:100%;min-width:460px}.tp-table th,.tp-table td{padding:var(--space-s);border-bottom:var(--border-width-xs) solid var(--border-general);text-align:left}.tp-table th{background:var(--surface-primary);border-bottom-color:#0000}.tp-table tbody tr:last-child td{border-bottom:none}.tp-th{font:var(--body-b6);color:var(--text-on-color);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.tp-th:hover{color:#fff;opacity:.82}.tp-num{text-align:right;font-variant-numeric:tabular-nums}.tp-row{cursor:pointer}.tp-row:hover{background:var(--surface-secondary-subtle)}.tp-row.is-selected{background:var(--surface-primary-subtle)}.tp-member{align-items:center;gap:var(--space-xs);display:flex}.tp-member__name{font:var(--body-b2);color:var(--text-heading);font-weight:600}.tp-donut-wrap{align-items:center;gap:var(--space-s);flex-direction:column;display:flex}.tp-donut{width:160px;height:160px}.tp-donut-track{stroke:var(--surface-secondary)}.tp-donut-num{font:var(--title-t1);fill:var(--text-heading)}.tp-donut-cap{font:var(--body-b6);fill:var(--text-caption)}.tp-legend{flex-direction:column;gap:4px;width:100%;margin:0;padding:0;list-style:none;display:flex}.tp-legend li{align-items:center;gap:var(--space-xs);font:var(--body-b6);color:var(--text-body);display:flex}.tp-legend__n{color:var(--text-caption);font-variant-numeric:tabular-nums;margin-left:auto}.tp-swatch{border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}@media (width<=900px){.tp__tiles{grid-template-columns:repeat(2,1fr)}.tp__grid{grid-template-columns:1fr}}@media (width<=520px){.tp__tiles{gap:var(--space-xs);grid-template-columns:1fr 1fr}}.pf{padding:var(--space-m)}.pf-row{gap:var(--space-s);flex-wrap:wrap}.pf-row__move{flex-direction:column;gap:3px;display:flex}.pf-row__move .reorder__btn{width:26px;height:22px;font-size:12px}.pf-name{flex:1;min-width:120px;height:38px}.pf-name--fixed{font:var(--body-b4);color:var(--text-heading);align-items:center;display:flex}.pf-row__spacer{flex:none;width:60px}.pill--accent{color:var(--text-tertiary);background:var(--surface-primary-subtle)}.pf-actions{justify-content:flex-end;gap:var(--space-s);display:flex}@media (width<=600px){.pf-name{flex-basis:100%;order:5}.pf-row__spacer{display:none}}.audit__filters{align-items:center;gap:var(--space-s);flex-wrap:wrap;display:flex}.audit__search{align-items:center;gap:var(--space-xs);min-width:200px;height:44px;padding:0 var(--space-l);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);background:var(--surface-default);color:var(--text-caption);flex:1;display:flex}.audit__search:focus-within{border-color:var(--border-primary)}.audit__search-input{font:var(--body-b2);color:var(--text-dark);background:0 0;border:none;outline:none;flex:1}.audit__select{max-width:240px}.audit__line{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.audit__plat{color:var(--text-regular);background:var(--surface-secondary)}.audit__plat-dot{border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.audit__action-tabs{gap:var(--space-xs);display:flex}.audit__tab{padding:7px var(--space-m);border-radius:var(--radius-pill);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);font:var(--body-b5);transition:background-color .15s,color .15s,border-color .15s}.audit__tab:hover{border-color:var(--border-primary)}.audit__tab--active{background:var(--surface-primary);border-color:var(--surface-primary);color:#fff}.audit__list{margin:0;padding:0;list-style:none}.audit__row{align-items:flex-start;gap:var(--space-m);padding:var(--space-s) 0;border-bottom:var(--border-width-xs) solid var(--surface-secondary);display:flex}.audit__row:last-child{border-bottom:none}.audit__body{flex:1;min-width:0}.audit__body p{font:var(--body-b2);color:var(--text-dark)}.audit__time{font:var(--body-b6);color:var(--text-caption)}.audit__action{text-transform:capitalize;flex:none}.audit__action--create{color:var(--text-tertiary);background:var(--surface-primary-subtle)}.audit__action--update{color:#b45309;background:#fef3c7}.audit__action--delete{color:var(--alert-error);background:#fdeaea}:root[data-theme=dark] .audit__action--update{color:#fbbf24;background:#2a2310}:root[data-theme=dark] .audit__action--delete{color:#ff8c8c;background:#2a1414}.react-grid-layout{transition:height .2s;position:relative}.react-grid-item{transition:left .2s,top .2s,width .2s,height .2s}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{z-index:1;will-change:width, height;transition:none}.react-grid-item.react-draggable-dragging{z-index:3;will-change:transform;transition:none}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{opacity:.2;z-index:2;-webkit-user-select:none;user-select:none;-o-user-select:none;background:red;transition-duration:.1s}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{width:20px;height:20px;position:absolute}.react-grid-item>.react-resizable-handle:after{content:"";border-bottom:2px solid #0006;border-right:2px solid #0006;width:5px;height:5px;position:absolute;bottom:3px;right:3px}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:100% 100%;background-repeat:no-repeat;background-origin:content-box;width:20px;height:20px;padding:0 3px 3px 0;position:absolute}.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.inbox__filters{align-items:center;gap:var(--space-xs);margin-bottom:var(--space-m);flex-wrap:wrap;display:flex}.inbox__filters .input{width:auto;height:38px;padding:0 var(--space-m)}.inbox__filters select.input{padding-right:var(--space-2xl)}.inbox__hint{font:var(--body-b6);color:var(--text-caption)}.kanban{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-items:start;display:grid}.kanban__col{background:var(--surface-secondary);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);padding:var(--space-s)}.kanban__title{font:var(--body-b3);color:#fff;margin:0 0 var(--space-s);padding:var(--space-s) var(--space-m);border-radius:var(--radius-l,12px);justify-content:space-between;align-items:center;display:flex}.kanban__count{font:var(--body-b6);color:#fff;border-radius:var(--radius-pill);background:#ffffff40;padding:1px 9px}.kanban__cards{gap:var(--space-xs);flex-direction:column;min-height:24px;display:flex}.kanban__empty{font:var(--body-b6);color:var(--text-caption);text-align:center;padding:var(--space-s)}.reqcard{gap:var(--space-s);text-align:left;width:100%;padding:var(--space-m);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l,12px);background:var(--surface-default);cursor:pointer;flex-direction:column;transition:border-color .15s,background-color .15s;display:flex}.reqcard:hover{border-color:var(--border-primary)}.reqcard__top{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.reqcard__title{font:var(--body-b4);color:var(--text-heading);overflow-wrap:break-word;line-height:1.35}.reqdetail{margin:0}.reqdetail__row{gap:var(--space-m);border-top:var(--border-width-xs) solid var(--border-general);padding:6px 0;display:flex}.reqdetail__row:first-child{border-top:none}.reqdetail__row dt{width:130px;font:var(--body-b6);color:var(--text-caption);flex:none}.reqdetail__row dd{font:var(--body-b5);color:var(--text-heading);word-break:break-word;min-width:0;margin:0}.reqdetail__deliver{margin-top:var(--space-m);gap:var(--space-xs);flex-direction:column;display:flex}@media (width<=760px){.kanban{grid-template-columns:minmax(0,1fr)}}.metrics{gap:var(--space-m);margin-bottom:var(--space-l);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.metric{padding:var(--space-m);border-radius:var(--radius-xl);color:#fff;flex-direction:column;gap:4px;display:flex;box-shadow:0 1px 3px #0000001f}.metric__n{font:var(--heading-h2,var(--heading-h3));color:#fff;font-weight:700;line-height:1}.metric__l{font:var(--body-b5);color:#ffffffeb}.metric--open{background:#eab308}.metric--open .metric__n{color:#1a1a1a}.metric--open .metric__l{color:#000000b3}.metric--progress{background:#2563eb}.metric--warn{background:#e08a00}.metric--danger{background:#e5484d}.metric--done{background:#0e8f63}.ovw-grid{gap:var(--space-m);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dash-card{background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);padding:var(--space-m)}.dash-card__title{font:var(--body-b3);color:var(--text-heading);margin:0 0 var(--space-s)}.bars,.wl,.roster{gap:var(--space-s);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.snap-bd-head{align-items:center;gap:var(--space-xs);margin:0 0 var(--space-s);display:flex}.snap-bd-head .wrecap__sub{margin:0}.snap-bd-sel{width:auto;min-width:132px}.snap-bd-sel .ssel__btn{height:30px;padding:0 var(--space-s);font:var(--body-b4)}.bar{align-items:center;gap:var(--space-s);grid-template-columns:110px 1fr 28px;display:grid}.bar__label{font:var(--body-b6);color:var(--text-body);text-transform:capitalize}.bar__track{background:var(--surface-secondary);border-radius:var(--radius-pill);height:8px;overflow:hidden}.bar__fill{background:var(--border-primary,#00cc85);border-radius:var(--radius-pill);height:100%;display:block}.bar__n{font:var(--body-b6);color:var(--text-caption);text-align:right}.wl__row{align-items:center;gap:var(--space-s);display:flex}.wl__name{font:var(--body-b5);color:var(--text-heading);flex:1;min-width:0}.wl__counts{font:var(--body-b6);color:var(--text-caption);white-space:nowrap}.member{align-items:center;gap:var(--space-m);padding:var(--space-s) var(--space-m);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);display:flex}.member__info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.member__name{font:var(--body-b4);color:var(--text-heading);align-items:center;gap:var(--space-xs);display:flex}.member__sub{font:var(--body-b6);color:var(--text-caption)}.member__lead{background:var(--surface-primary-subtle);color:var(--text-tertiary);text-transform:uppercase;font-size:10px}.member__bar{background:var(--surface-secondary);border-radius:var(--radius-pill);flex:none;width:160px;height:8px;overflow:hidden}.member__fill{background:var(--border-primary,#00cc85);border-radius:var(--radius-pill);height:100%;display:block}.mytasks{gap:var(--space-l);flex-direction:column;display:flex}.mytasks__group .kanban__cards{gap:var(--space-s);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.mytasks__title{align-items:center;gap:var(--space-xs);margin:0 0 var(--space-s);display:flex}.mytasks__status{align-items:center;gap:var(--space-s);padding:6px var(--space-m);border-radius:var(--radius-pill);font:var(--body-b1);font-weight:700;display:inline-flex}.reqcard__dept{font:var(--body-b6);border-radius:var(--radius-pill);white-space:nowrap;flex:none;padding:2px 9px;font-weight:600}.reqcard__type{text-transform:capitalize;background:var(--surface-secondary);color:var(--text-body);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);font:var(--body-b6);white-space:nowrap;flex:none;padding:2px 10px}.reqcard__flag{font:var(--body-b6);color:#e5484d;text-transform:uppercase;letter-spacing:.04em;flex:none;margin-left:auto;font-size:10px;font-weight:600}.reqcard__foot{justify-content:space-between;align-items:center;gap:var(--space-s);display:flex}.reqcard__foot .avatar,.reqcard__unassigned{flex:none}.reqcard__metawrap{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.reqcard__pic{background:var(--surface-secondary);color:var(--text-body);border-radius:var(--radius-pill);font:var(--body-b6);white-space:nowrap;padding:2px 9px}.reqcard__due{font:var(--body-b6);color:var(--text-caption);white-space:nowrap}.reqcard__unassigned{font:var(--body-b6);color:var(--text-caption);font-style:italic}.reqcard--overdue{background:#e5484d;border-color:#e5484d}.reqcard--overdue:hover{background:#c93338;border-color:#c93338}.reqcard--overdue .reqcard__title{color:#fff}.reqcard--overdue .reqcard__type,.reqcard--overdue .reqcard__pic{color:#fff;background:#ffffff38;border-color:#0000}.reqcard--overdue .reqcard__due,.reqcard--overdue .reqcard__unassigned{color:#ffffffe6}.reqcard--overdue .reqcard__flag{color:#fff}.reqdetail__assign{gap:var(--space-xs);margin-bottom:var(--space-m);flex-direction:column;display:flex}.reqdetail__assign-row{align-items:center;gap:var(--space-s);font:var(--body-b5);color:var(--text-heading);display:flex}.board__toolbar{align-items:stretch;gap:var(--space-s);margin-bottom:var(--space-m);flex-direction:column;display:flex}.board__toolbar-top{justify-content:space-between;align-items:center;gap:var(--space-s);flex-wrap:wrap;display:flex}.board__toolbar .inbox__filters{margin-bottom:0}.viewtabs{background:var(--surface-secondary);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);gap:2px;padding:3px;display:inline-flex}.viewtabs__tab{cursor:pointer;border-radius:var(--radius-pill);font:var(--body-b5);color:var(--text-body);background:0 0;border:none;padding:6px 18px}.viewtabs__tab--on{background:var(--surface-default);color:var(--text-heading);box-shadow:0 1px 2px #0000001f}.board__pill{white-space:nowrap;border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);height:38px;color:var(--text-body);border-radius:var(--radius-pill);padding:0 var(--space-m);font:var(--body-b6);cursor:pointer;align-items:center;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.board__pill:hover{border-color:var(--border-primary)}.board__pill--on{background:var(--border-primary,#00cc85);border-color:var(--border-primary,#00cc85);color:#fff}.reqtable-groups{gap:var(--space-m);flex-direction:column;display:flex}.reqgroup{gap:var(--space-xs);flex-direction:column;display:flex}.reqgroup__head{align-items:center;gap:var(--space-s);cursor:pointer;text-align:left;width:100%;padding:var(--space-s) var(--space-m);border-radius:var(--radius-l,12px);font:var(--body-b3);border:none;display:flex}.reqgroup__caret{font-size:11px;transition:transform .15s}.reqgroup__caret--collapsed{transform:rotate(-90deg)}.reqgroup__label{flex:1}.reqgroup__count{border-radius:var(--radius-pill);font:var(--body-b6);padding:1px 9px}.gantt{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);overflow:hidden}.gantt__row{border-bottom:var(--border-width-xs) solid var(--border-general);cursor:pointer;grid-template-columns:190px 1fr;align-items:center;display:grid}.gantt__row:last-child{border-bottom:none}.gantt__row:hover{background:var(--surface-secondary)}.gantt__row--head{cursor:default;background:color-mix(in srgb, var(--surface-default), #000 18%)}.gantt__row--head:hover{background:color-mix(in srgb, var(--surface-default), #000 18%)}.gantt__label{padding:var(--space-s) var(--space-m);font:var(--body-b5);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;border-right:var(--border-width-xs) solid var(--border-general);overflow:hidden}.gantt__body{position:relative}.gantt__grid{pointer-events:none;position:absolute;inset:0 0 0 190px}.gantt__gl{background:var(--border-general);width:1px;position:absolute;top:0;bottom:0}.gantt__track{height:34px;position:relative}.gantt__track--head{height:24px}.gantt__wk{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;position:absolute;top:5px;transform:translate(-50%)}.gantt__today{opacity:.6;background:#e5484d;width:2px;position:absolute;top:0;bottom:0}.gantt__bar{border-radius:var(--radius-pill);height:20px;font:var(--body-b6);z-index:1;align-items:center;min-width:8px;padding:0 8px;display:flex;position:absolute;top:7px}.gantt__bar--over{outline-offset:1px;outline:2px solid #e5484d}.gantt__bar-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gantt__bar-out{height:20px;font:var(--body-b6);color:var(--text-caption);white-space:nowrap;align-items:center;padding-left:6px;display:flex;position:absolute;top:7px}.cal{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);overflow:hidden}.cal__head{justify-content:center;align-items:center;gap:var(--space-m);padding:var(--space-s);border-bottom:var(--border-width-xs) solid var(--border-general);display:flex}.cal__title{font:var(--body-b3);color:var(--text-heading);text-align:center;min-width:170px}.cal__grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal__dow{text-align:center;font:var(--body-b6);color:var(--text-caption);text-transform:uppercase;letter-spacing:.03em;border-bottom:var(--border-width-xs) solid var(--border-general);padding:6px}.cal__cell{border-right:var(--border-width-xs) solid var(--border-general);border-bottom:var(--border-width-xs) solid var(--border-general);flex-direction:column;gap:3px;min-width:0;min-height:94px;padding:4px 5px;display:flex}.cal__cell--out{opacity:.4}.cal__cell--today{background:var(--surface-secondary-subtle)}.cal__date{font:var(--body-b6);color:var(--text-caption)}.cal__chips{flex-direction:column;gap:2px;min-width:0;display:flex}.cal__chip{font:var(--body-b6);text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border:none;border-radius:5px;padding:2px 6px;overflow:hidden}.cal__more{font:var(--body-b6);color:var(--text-caption)}.statusedit{margin:0 0 var(--space-m);gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.statusedit__row{align-items:center;gap:var(--space-xs);display:flex}.statusedit__color{border:var(--border-width-xs) solid var(--border-general);cursor:pointer;background:0 0;border-radius:8px;flex:none;width:34px;height:34px;padding:0}.statusedit__label{flex:1;min-width:0}.statusedit__done{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.statusedit__mv{border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);width:28px;height:28px;color:var(--text-body);cursor:pointer;border-radius:6px;flex:none}.statusedit__mv:disabled{opacity:.4;cursor:default}.taskfields{gap:var(--space-m);margin-top:var(--space-m);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.taskfield__switchwrap{flex-direction:column;display:flex}.taskmodal__sharehint{font:var(--body-b6);color:var(--text-caption);margin-top:4px}@media (width<=600px){.taskfields>.field{grid-column:span 12!important}}.tagfield{min-height:44px;padding:6px var(--space-m);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tagfield__input{min-width:80px;font:var(--body-b2);color:var(--text-dark);background:0 0;border:none;outline:none;flex:1;height:30px}.tagchip{border-radius:var(--radius-pill);background:var(--surface-secondary);color:var(--text-body);font:var(--body-b6);white-space:nowrap;align-items:center;gap:4px;padding:2px 4px 2px 10px;display:inline-flex}.tagchip__x{cursor:pointer;color:var(--text-caption);background:0 0;border:none;padding:0 4px;font-size:15px;line-height:1}.tagchip__x:hover{color:var(--alert-error)}.reqcard__tags{flex-wrap:wrap;gap:4px;display:inline-flex}.reqcard__tag{background:var(--surface-secondary);color:var(--text-body);border-radius:var(--radius-pill);font:var(--body-b6);white-space:nowrap;padding:1px 8px}.reqcard__prio{border-radius:var(--radius-pill);font:var(--body-b6);white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;flex:none;padding:1px 8px;font-size:10px;font-weight:700}.reqcard__prio--high{color:#e5484d;background:#fdeaea}.reqcard__prio--medium{color:#b45309;background:#fef3c7}.reqcard__prio--low{background:var(--surface-secondary);color:var(--text-regular)}:root[data-theme=dark] .reqcard__prio--high{color:#ff8c8c;background:#2a1414}:root[data-theme=dark] .reqcard__prio--medium{color:#fbbf24;background:#2a2310}.reqcard--overdue .reqcard__tag,.reqcard--overdue .reqcard__prio{color:#fff;background:#ffffff38}.tpl-list{margin:0 0 var(--space-m);gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.tpl-list__row{align-items:center;gap:var(--space-xs);display:flex}.tpl-list__name{flex:1;min-width:0}.tpl-list__count{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;flex:none}.lib-filters{gap:var(--space-s);margin-bottom:var(--space-s);flex-wrap:wrap;display:flex}.lib-search{flex:1;min-width:160px}.lib-ownersel{flex:0 0 200px}.lib-list{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.lib-card{align-items:center;gap:var(--space-m);padding:var(--space-s) var(--space-m);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l,12px);background:var(--surface-default);display:flex}.lib-card__info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.lib-card__name{font:var(--body-b4);color:var(--text-heading)}.lib-card__meta{align-items:center;gap:var(--space-s);flex-wrap:wrap;display:inline-flex}.lib-card__count{font:var(--body-b6);color:var(--text-caption)}.lib-card__actions{gap:var(--space-xs);flex:none;display:flex}.lib-card__done{font:var(--body-b6);color:var(--text-tertiary);align-self:center;font-weight:600}@media (width<=560px){.lib-ownersel{flex:100%}.lib-card{flex-wrap:wrap}}.tpl-back{cursor:pointer;color:var(--text-primary);font:var(--body-b5);background:0 0;border:none;padding:0}.tpl-back:hover{text-decoration:underline}.tpl-edithead{justify-content:space-between;align-items:center;gap:var(--space-s);margin-bottom:var(--space-xs);display:flex}.tpl-namerow{align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs);display:flex}.tpl-namerow .input{flex:1;min-width:0}.tpl-share{align-items:center;gap:var(--space-s);padding:var(--space-xs) 0 var(--space-s);border-bottom:var(--border-width-xs) solid var(--border-general);margin-bottom:var(--space-s);flex-wrap:wrap;display:flex}.tpl-share__dept{flex:1;min-width:180px}.tpl-preview .taskfields{margin-top:var(--space-xs)}.tpl-preview .switch{opacity:.9}.tpl-bento{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:color-mix(in srgb, var(--surface-default), #000 8%);margin-bottom:var(--space-s);min-height:80px}.tpl-bento,.tpl-preview,.tfield-edit{flex-shrink:0}.tfield{align-items:center;gap:var(--space-xs);cursor:grab;background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l,12px);height:100%;padding:0 10px;display:flex;overflow:hidden}.tfield:active{cursor:grabbing}.tfield--sel{border-color:var(--border-primary);box-shadow:0 0 0 2px var(--surface-primary-subtle)}.tfield__name{font:var(--body-b5);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.tfield__type{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;flex:none}.tfield__x{cursor:pointer;color:var(--text-caption);background:0 0;border:none;flex:none;padding:2px 4px;font-size:16px;line-height:1}.tfield__x:hover{color:var(--alert-error)}.tpl-bento .react-grid-item>.react-resizable-handle-e{cursor:ew-resize;background:0 0;width:12px;height:auto;margin:0;top:0;bottom:0;right:1px;transform:none}.tpl-bento .react-grid-item>.react-resizable-handle-e:after{content:"";background:var(--border-primary,#00cc85);opacity:.5;border-radius:2px;width:3px;height:22px;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.tpl-bento .react-grid-item:hover>.react-resizable-handle-e:after{opacity:.9}.tfield-edit{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);padding:var(--space-s);gap:var(--space-xs);background:var(--surface-secondary-subtle);flex-direction:column;display:flex}.tfield-edit__row{align-items:center;gap:var(--space-xs);display:flex}.tfield-opts{gap:var(--space-xs);margin-top:var(--space-3xs);flex-direction:column;display:flex}.tfield-opt{align-items:center;gap:var(--space-xs);display:flex}.tfield-opt .input{flex:1}.tfield-opts>.btn{align-self:flex-start}.tfield-edit__row>.input{flex:1;min-width:0}.tfield-edit__type{flex:none;width:150px}@media (width<=560px){.tfield-edit__row{flex-wrap:wrap}.tfield-edit__type{width:100%}}.reqtable-wrap{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:color-mix(in srgb, var(--surface-default), #000 10%);overflow-x:auto}.reqtable{border-collapse:collapse;width:100%;font:var(--body-b5);table-layout:fixed}.reqtable th{text-align:left;font:var(--body-b6);color:var(--text-on-color);text-transform:uppercase;letter-spacing:.03em;padding:var(--space-s) var(--space-m);background:var(--surface-primary);border-bottom:var(--border-width-xs) solid transparent;white-space:nowrap}.reqtable th:not(:last-child){border-right-color:#ffffff38}.reqtable td{padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid var(--border-general);color:var(--text-body);vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.reqtable th:not(:last-child),.reqtable td:not(:last-child){border-right:var(--border-width-xs) solid var(--border-general)}.reqtable tbody tr{cursor:pointer}.reqtable tbody tr:hover{background:var(--surface-secondary)}.reqtable tbody tr:last-child td{border-bottom:none}.reqtable__title{color:var(--text-heading);font-weight:500}.reqtable__due{white-space:nowrap;color:var(--text-caption)}.reqtable__due--over{white-space:nowrap;color:#e5484d;font-weight:600}.reqtable__row--overdue td:first-child{box-shadow:inset 3px 0 #e5484d}.reqtable__assignee{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.reqtable__empty{text-align:center;color:var(--text-caption);padding:var(--space-l)}.statusdot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.statusdot--open{background:#eab308}.statusdot--in_progress{background:#2563eb}.statusdot--done{background:#0e8f63}.kanban__col--open .kanban__title{color:#1a1a1a;background:#eab308}.kanban__col--open .kanban__count{color:#1a1a1a;background:#0000002e}.kanban__col--in_progress .kanban__title{background:#2563eb}.kanban__col--done .kanban__title{background:#0e8f63}.kanban__title--pending{color:#fff;background:#e5484d}.widgets{position:relative}.metrics--in{margin-bottom:var(--space-m)}.widget{min-width:0}.widget__jig{height:100%;position:relative}.widget .dash-card{height:100%;overflow-y:auto}.widget__drag{z-index:2;cursor:grab;position:absolute;inset:0 22px 22px 0}.widget__drag:active{cursor:grabbing}.react-grid-item.react-grid-placeholder{background:var(--border-primary,#00cc85);opacity:.16;border-radius:var(--radius-xl)}.ovw-edit{gap:var(--space-xs);display:flex}.catalog{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.catalog__item{align-items:center;gap:var(--space-m);padding:var(--space-s) var(--space-m);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l,12px);background:var(--surface-default);display:flex}.catalog__item--on{opacity:.8}.catalog__info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.catalog__name{font:var(--body-b4);color:var(--text-heading)}.catalog__desc{font:var(--body-b6);color:var(--text-caption)}.widgets--edit .widget{cursor:grab}.widgets--edit .dash-card{-webkit-user-select:none;user-select:none}.widgets--edit .react-grid-item>.react-resizable-handle{z-index:5;background:0 0;transform:none}.widgets--edit .react-grid-item>.react-resizable-handle:after{content:none}.widgets--edit .react-grid-item>.react-resizable-handle.react-resizable-handle-e{cursor:ew-resize;width:24px;height:auto;margin:0;inset:0 0 0 auto;transform:none}.widgets--edit .react-grid-item>.react-resizable-handle.react-resizable-handle-s{cursor:ns-resize;width:auto;height:24px;margin:0;inset:auto 0 0;transform:none}.widget__nub{background:var(--border-primary,#00cc85);border:2px solid var(--surface-default);pointer-events:none;z-index:6;border-radius:50%;width:16px;height:16px;position:absolute;box-shadow:0 1px 4px #00000059}.widget__nub--e{top:50%;right:0;transform:translate(50%,-50%)}.widget__nub--s{bottom:0;left:50%;transform:translate(-50%,50%)}.widget__x{z-index:6;border:2px solid var(--surface-default);color:#fff;cursor:pointer;background:#e5484d;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:15px;line-height:1;display:flex;position:absolute;top:-8px;right:-8px}@keyframes jiggle{0%,to{transform:rotate(-.28deg)}50%{transform:rotate(.28deg)}}.widgets--edit .widget__jig{transform-origin:50%;animation:.55s ease-in-out infinite jiggle}.widgets--edit .widget:nth-child(2n) .widget__jig{animation-duration:.62s;animation-delay:-.2s}.widgets--edit .widget:nth-child(3n) .widget__jig{animation-duration:.5s;animation-delay:-.33s}.wgreet{justify-content:space-between;align-items:center;gap:var(--space-m);flex-wrap:wrap;display:flex}.wgreet__hello{font:var(--heading-h3);color:var(--text-heading);margin:0}.wgreet__sum{font:var(--body-b5);color:var(--text-caption);margin:4px 0 0}.wgreet__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.wrecap__line{font:var(--body-b5);color:var(--text-body);margin:0 0 var(--space-m)}.wrecap__sub{font:var(--body-b4);color:var(--text-heading);margin:var(--space-m) 0 var(--space-xs)}.wstats{gap:var(--space-s);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.wstat{padding:var(--space-s);background:var(--surface-secondary);border-radius:var(--radius-l,12px);flex-direction:column;gap:2px;display:flex}.wstat__n{font:var(--heading-h4,var(--body-b2));color:var(--text-heading);font-weight:700;line-height:1.1}.wstat__l{font:var(--body-b6);color:var(--text-caption)}.wstat--success,.wstat--info,.wstat--danger{background:var(--surface-default);border-style:solid;border-width:var(--border-width-xs)}.wstat--success .wstat__l,.wstat--info .wstat__l,.wstat--danger .wstat__l{color:var(--text-heading)}.wstat--success{border-color:var(--alert-success)}.wstat--success .wstat__n{color:var(--alert-success)}.wstat--info{border-color:var(--alert-info)}.wstat--info .wstat__n{color:var(--alert-info)}.wstat--danger{border-color:var(--alert-error)}.wstat--danger .wstat__n{color:var(--alert-error)}.wact{margin:0;padding:0;list-style:none}.wact__row{align-items:center;gap:var(--space-s);border-top:var(--border-width-xs) solid var(--border-general);cursor:pointer;padding:7px 0;display:flex}.wact__row:first-child{border-top:none}.wact__dot{border-radius:50%;flex:none;width:8px;height:8px}.wact__dot--open{background:#eab308}.wact__dot--in_progress{background:#2563eb}.wact__dot--done{background:#0e8f63}.wact__text{font:var(--body-b6);color:var(--text-body);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.wact__text strong,.wact__text em{color:var(--text-heading);font-style:normal}.wact__time{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;flex:none}.wrem{margin:0 0 var(--space-s);padding:0;list-style:none}.wrem__row{justify-content:space-between;align-items:center;gap:var(--space-s);border-top:var(--border-width-xs) solid var(--border-general);cursor:pointer;padding:7px 0;display:flex}.wrem__row:first-child{border-top:none}.wrem__title{font:var(--body-b5);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.wrem__due{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;flex:none}.wrem__row--over .wrem__due{color:#e5484d;font-weight:600}.wrem__notifs{font:var(--body-b6);color:var(--text-tertiary);text-decoration:none;display:inline-block}.wrem__notifs:hover{text-decoration:underline}.wkpi__bar{background:var(--surface-secondary);border-radius:var(--radius-pill);height:8px;margin:var(--space-s) 0 var(--space-xs);overflow:hidden}.wkpi__bar span{background:var(--border-primary,#00cc85);height:100%;display:block}.wkpi__hint{font:var(--body-b6);color:var(--text-caption)}.wkpi__head{justify-content:space-between;align-items:center;gap:var(--space-s);margin-bottom:var(--space-xs);display:flex}.wkpi__head .dash-card__title{margin:0}.wkpi__head-right{align-items:center;gap:var(--space-xs);flex:none;display:flex}.viewtabs--sm{padding:2px}.viewtabs--sm .viewtabs__tab{font:var(--body-b6);padding:4px 12px}.wkpi__sec{margin-top:var(--space-m)}.wkpi__sec:first-of-type{margin-top:var(--space-s)}.wkpi__sec-head{justify-content:space-between;align-items:baseline;gap:var(--space-s);display:flex}.wkpi__sec-head .wrecap__sub{margin:0}.wkpi__big{font:var(--heading-h4,var(--body-b2));color:var(--text-heading);font-weight:800}.okr-list{margin:var(--space-xs) 0 0;gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.okr-row{align-items:center;gap:var(--space-s);grid-template-columns:minmax(80px,1.4fr) 2fr auto;display:grid}.okr-row__label{font:var(--body-b6);color:var(--text-body);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.okr-row__n{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}.okr-bar{background:var(--surface-secondary);border-radius:var(--radius-pill);height:8px;overflow:hidden}.okr-bar__fill{border-radius:var(--radius-pill);background:var(--border-primary,#00cc85);height:100%;transition:width .3s;display:block}.okr-pill{color:#fff;border-radius:var(--radius-pill);font:var(--body-b6);white-space:nowrap;flex:none;padding:1px 9px}.perf-bar{align-items:center;gap:var(--space-m);margin:var(--space-s) 0;flex-wrap:wrap;display:flex}.perf-period{width:180px}.perf-roll{font:var(--body-b5);color:var(--text-body);margin-right:auto}.perf-roll strong{color:var(--text-heading)}.perf-objs{gap:var(--space-s);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.perf-obj{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);overflow:hidden}.perf-obj__head{align-items:center;gap:var(--space-s);text-align:left;background:var(--surface-secondary-subtle);cursor:pointer;width:100%;padding:var(--space-s) var(--space-m);border:none;display:flex}.perf-obj__caret{color:var(--text-caption);flex:none;font-size:11px}.perf-obj__title{min-width:0;font:var(--body-b4);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.perf-obj__pct{font:var(--body-b4);color:var(--text-heading);flex:none;font-weight:700}.perf-obj__body{padding:var(--space-m);gap:var(--space-m);border-top:var(--border-width-xs) solid var(--border-general);flex-direction:column;display:flex}.perf-obj__foot{justify-content:flex-end;display:flex}.perf-collab__chips{gap:var(--space-xs);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.perf-chip{border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);border-radius:var(--radius-pill);font:var(--body-b6);cursor:pointer;padding:3px 12px}.perf-chip--on{border-color:var(--border-primary);background:var(--surface-primary-subtle);color:var(--text-tertiary);font-weight:600}.perf-krs{gap:var(--space-xs);flex-direction:column;display:flex}.perf-kr-list{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.perf-kr{align-items:flex-end;gap:var(--space-s);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l);padding:var(--space-s) var(--space-m);background:var(--surface-secondary-subtle);flex-wrap:wrap;display:flex}.perf-kr__title{flex:180px;min-width:0;height:38px}.perf-kr__who{flex:0 0 150px}.perf-kr__who .ssel__btn{height:38px}.perf-kr__num{font:var(--body-b6);color:var(--text-caption);flex-direction:column;gap:3px;font-weight:600;display:flex}.perf-kr__num .input{width:74px;height:38px}.perf-kr__pct{font:var(--body-b4);color:var(--text-heading);text-align:right;font-variant-numeric:tabular-nums;min-width:44px;padding-bottom:9px;font-weight:700}.perf-kr .icon-btn{margin-bottom:3px}.perf-kpis{gap:var(--space-s);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.perf-kpi{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l,12px);padding:var(--space-s) var(--space-m);gap:var(--space-xs);flex-direction:column;display:flex}.perf-kpi__row{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.perf-kpi__title{flex:200px;min-width:0}.perf-kpi__who{flex:0 0 160px}.perf-kpi__metric{flex:0 0 200px}.perf-kpi__num{font:var(--body-b6);color:var(--text-caption);flex-direction:column;gap:2px;display:flex}.perf-kpi__num .input{width:90px;height:36px}.perf-kpi__prog{align-items:center;gap:var(--space-xs);min-width:120px;font:var(--body-b6);color:var(--text-caption);flex:1;display:inline-flex}.perf-kpi__prog .okr-bar{flex:1}.perf-ring__track{stroke:var(--surface-secondary)}.perf-ring__fill{stroke:var(--border-primary,#00cc85);transition:stroke-dashoffset .4s}.perf-ring__txt{fill:var(--text-heading);font:var(--body-b2);font-weight:800}.wkpi-mini{cursor:pointer;flex-direction:column;text-decoration:none;display:flex}.wkpi-mini__view{flex:none}.wkpi-mini:hover .wkpi-mini__view{background:var(--surface-secondary-subtle)}.wkpi-mini__body{align-items:center;gap:var(--space-l);margin-top:var(--space-s);display:flex}.wkpi-mini__stats{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.wkpi-mini__cap{font:var(--body-b6);color:var(--text-caption);text-transform:uppercase;letter-spacing:.04em}.wkpi-mini__row{align-items:baseline;gap:var(--space-xs);font:var(--body-b5);display:flex}.wkpi-mini__row>span{color:var(--text-caption);flex:none;width:30px}.wkpi-mini__row strong{color:var(--text-heading);font-weight:700}.wkpi-mini__row em{color:var(--text-caption);font-style:normal;font:var(--body-b6);white-space:nowrap;margin-left:auto}.perf-selectors{gap:var(--space-s);flex-wrap:wrap;display:flex}.perf-card{gap:var(--space-s);flex-direction:column;display:flex}.perf-card__head{justify-content:space-between;align-items:center;gap:var(--space-m);display:flex}.perf-card__title{font:var(--title-t3);color:var(--text-heading)}.perf-card__sub{font:var(--body-b6);color:var(--text-caption)}.perf-obj__desc{font:var(--body-b6);color:var(--text-caption);margin-bottom:var(--space-xs)}.perf-tbl-wrap{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);overflow:hidden}.perf-tbl{border-collapse:collapse;width:100%;font:var(--body-b5);table-layout:fixed}.perf-tbl th{text-align:left;font:var(--body-b6);color:var(--text-on-color);text-transform:uppercase;letter-spacing:.03em;padding:var(--space-s) var(--space-m);background:var(--surface-primary);white-space:nowrap}.perf-tbl td{padding:var(--space-s) var(--space-m);color:var(--text-body);vertical-align:middle}.perf-tbl th,.perf-tbl td{border-bottom:var(--border-width-xs) solid var(--border-general)}.perf-tbl th:not(:last-child),.perf-tbl td:not(:last-child){border-right:var(--border-width-xs) solid var(--border-general)}.perf-tbl th{border-bottom-color:#0000}.perf-tbl th:not(:last-child){border-right-color:#ffffff38}.perf-tbl tbody tr:last-child td{border-bottom:none}.perf-tbl .num{text-align:right}.perf-tbl .mono{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text-primary);font-weight:600}.perf-tbl__title{color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.perf-tbl__pic-col{width:168px}.perf-tbl__pic{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;max-width:100%;display:inline-flex;overflow:hidden}.perf-tbl td .okr-bar{width:100%;min-width:60px;display:block}@media (width<=560px){.perf-tbl{font:var(--body-b6)}.perf-tbl th,.perf-tbl td{padding:var(--space-xs) var(--space-s)}.perf-kr__title,.perf-kpi__title,.perf-kpi__metric,.perf-kpi__who,.perf-kr__who{flex-basis:100%}}.utl{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.utl__row{justify-content:space-between;align-items:center;gap:var(--space-s);text-align:left;width:100%;padding:var(--space-s) var(--space-m);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l,12px);cursor:pointer;display:flex}.utl__row:hover{border-color:var(--border-primary)}.utl__title{font:var(--body-b5);color:var(--text-heading)}.utl__status{text-transform:capitalize;font:var(--body-b6);border-radius:var(--radius-pill);padding:2px 9px}.utl__status--open{color:#b8860b;background:#eab3082e}.utl__status--in_progress{color:#2563eb;background:#2563eb2e}@media (width<=860px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ovw-grid{grid-template-columns:minmax(0,1fr)}.member__bar{width:90px}.wstats{grid-template-columns:repeat(2,minmax(0,1fr))}}.inbox__filters .filter-sel{flex:none;width:168px}.inbox__filters .filter-sel .ssel__btn{width:100%;height:38px}.inbox__filters .filter-sel--end{margin-left:auto}@media (width<=700px){.board__toolbar{gap:var(--space-s)}.board__toolbar .inbox__filters{width:100%}.inbox__filters .input{flex:140px;min-width:0}.inbox__filters .filter-sel{flex:140px;width:auto}.inbox__filters .filter-sel--end{margin-left:0}}.actlog__filters{margin-bottom:var(--space-m);align-items:center}.actlog__date{align-items:center;gap:var(--space-xs);font:var(--body-b6);color:var(--text-body);white-space:nowrap;display:inline-flex}.actlog__date .input{width:auto}.actlog{gap:var(--space-l);flex-direction:column;display:flex}.actlog__day{font:var(--body-b5);color:var(--text-primary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-xs)}.actlog__list{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);overflow:hidden}.actlog__row{padding:var(--space-s) var(--space-m);border-top-color:var(--border-general)}.actlog__row:hover{background:var(--surface-secondary-subtle)}.actlog__noavatar{flex:none;width:24px}.actlog__status{font:var(--body-b6);color:#fff;padding:2px var(--space-xs);border-radius:var(--radius-pill);white-space:nowrap;flex:none}.cc-card{flex-direction:column;height:100%;display:flex;overflow:hidden}.cc-card__head{align-items:center;gap:var(--space-xs);margin:0 0 var(--space-s);display:flex}.cc-card__icon{color:var(--text-primary);flex:none;display:inline-flex}.cc-card__title{font:var(--body-b3);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;overflow:hidden}.cc-card__edit{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);background:var(--surface-default);width:26px;height:26px;color:var(--text-caption);cursor:pointer;flex:none;justify-content:center;align-items:center;display:inline-flex}.cc-card__edit:hover{color:var(--text-primary);border-color:var(--border-primary)}.cc-card__body{flex:1;min-height:0;overflow:auto}.cc-empty{font:var(--body-b5);color:var(--text-caption);margin:0}.cc-note{flex-direction:column;gap:2px;display:flex}.cc-note__line{font:var(--body-b5);color:var(--text-body);white-space:pre-wrap;margin:0}.cc-note__gap{height:var(--space-xs)}.cc-check{align-items:flex-start;gap:var(--space-xs);text-align:left;cursor:pointer;color:var(--text-body);font:var(--body-b5);background:0 0;border:0;padding:3px 0;display:flex}.cc-check__box{border:var(--border-width-xs) solid var(--border-general);color:#fff;border-radius:5px;flex:none;justify-content:center;align-items:center;width:16px;height:16px;margin-top:1px;font-size:11px;line-height:1;display:inline-flex}.cc-check--ro{cursor:default}.cc-check--on .cc-check__box{background:var(--text-primary);border-color:var(--text-primary)}.cc-check--on .cc-check__text{color:var(--text-caption);text-decoration:line-through}.cc-links{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.cc-link{align-items:center;gap:var(--space-xs);padding:5px var(--space-xs);border-radius:var(--radius-pill);color:var(--text-body);font:var(--body-b5);text-decoration:none;display:flex}.cc-link:hover{background:var(--surface-secondary-subtle);color:var(--text-primary)}.cc-link__arrow{color:var(--text-primary);flex:none}.cc-link__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cc-embed{border-radius:var(--radius-xl);border:var(--border-width-xs) solid var(--border-general);height:100%;min-height:120px;overflow:hidden}.cc-embed__frame{background:var(--surface-secondary);border:0;width:100%;height:100%;min-height:120px;display:block}.cc-edit__icon{vertical-align:-3px;margin-right:var(--space-xs);color:var(--text-primary);display:inline-flex}.cc-edit__footer{justify-content:space-between;align-items:center;display:flex}.cc-edit__footer-right{gap:var(--space-xs);display:flex}.cc-edit-links{gap:var(--space-xs);margin-bottom:var(--space-s);flex-direction:column;display:flex}.cc-edit-link{gap:var(--space-xs);grid-template-columns:1fr 1.4fr auto;align-items:center;display:grid}.field__hint{font:var(--body-b6);color:var(--text-caption);margin-top:4px;display:block}.field__hint code{background:var(--surface-secondary-subtle);border-radius:4px;padding:0 4px;font-family:ui-monospace,monospace}.catalog__sep{align-items:center;gap:var(--space-s);margin:var(--space-l) 0 var(--space-s);display:flex}.catalog__sep:before,.catalog__sep:after{content:"";height:var(--border-width-xs);background:var(--border-general);flex:1}.catalog__sep-label{font:var(--body-b6);color:var(--text-caption);text-transform:uppercase;letter-spacing:.04em}.catalog__create{gap:var(--space-xs);flex-direction:column;display:flex}.catalog__create-btn{align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);cursor:pointer;text-align:left;display:flex}.catalog__create-btn:hover{border-color:var(--border-primary);background:var(--surface-primary-subtle)}.catalog__create-icon{color:var(--text-primary);flex:none;display:inline-flex}.catalog__create-text{flex-direction:column;flex:1;min-width:0;display:flex}.catalog__create-plus{color:var(--text-primary);flex:none;font-size:20px}.chart-bars{align-items:flex-end;gap:var(--space-s);padding-top:var(--space-s);display:flex}.chart-bars__col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;height:100%;display:flex}.chart-bars__val{font:var(--body-b6);color:var(--text-heading);font-weight:700}.chart-bars__track{flex:1;align-items:flex-end;width:100%;max-width:56px;display:flex}.chart-bars__bar{border-radius:var(--radius-m) var(--radius-m) 0 0;width:100%;min-height:3px;transition:height .25s}.chart-bars__label{font:var(--body-b6);color:var(--text-caption);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.chart-donut{align-items:center;gap:var(--space-l);flex-wrap:wrap;display:flex}.chart-donut__svg{flex:none}.chart-donut__total{font-family:var(--font-family);fill:var(--text-heading);font-size:22px;font-weight:700}.chart-legend{flex-direction:column;flex:1;gap:6px;min-width:120px;margin:0;padding:0;list-style:none;display:flex}.chart-legend__row{align-items:center;gap:var(--space-s);font:var(--body-b5);color:var(--text-body);display:flex}.chart-legend__dot{border-radius:3px;flex:none;width:11px;height:11px}.chart-legend__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.chart-legend__row b{color:var(--text-heading)}.chart-line{width:100%}.chart-line__svg{width:100%;height:auto;display:block}.chart-line__area{opacity:.12}.chart-line__labels{justify-content:space-between;margin-top:2px;display:flex}.chart-line__labels span{font:var(--body-b6);color:var(--text-caption)}.spark{display:block}.metric--okr{background:var(--pandai-teal-500)}.rollup-h2{margin:var(--space-l) 0 var(--space-s)}.rollup-subs{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.rollup-card{gap:var(--space-s);color:inherit;flex-direction:column;text-decoration:none;transition:border-color .12s;display:flex}.rollup-card:hover{border-color:var(--border-primary)}.rollup-card__head{justify-content:space-between;align-items:center;gap:var(--space-s);display:flex}.rollup-card__name{align-items:center;gap:var(--space-xs);font:var(--body-b3);color:var(--text-heading);display:inline-flex}.rollup-card__dot{border-radius:50%;flex:none;width:10px;height:10px}.rollup-card__open{font:var(--body-b6);color:var(--text-primary);white-space:nowrap}.rollup-card__stats{gap:3px var(--space-s);font:var(--body-b6);color:var(--text-body);grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.rollup-card__stats b{color:var(--text-heading);font-weight:700}.rollup-card__stats .is-danger b{color:var(--alert-error)}.rollup-card__okr{grid-template-columns:36px 1fr 36px;margin-top:2px}.rollup-cards-head{justify-content:space-between;align-items:center;gap:var(--space-s);display:flex}.rollup-cards-head .rollup-h2{margin-bottom:var(--space-s)}.rollup-add{position:relative}.rollup-add__scrim{z-index:20;position:fixed;inset:0}.rollup-add__menu{z-index:21;background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l);min-width:200px;padding:var(--space-3xs);flex-direction:column;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #00000024}.rollup-add__item{align-items:center;gap:var(--space-s);padding:var(--space-s);border-radius:var(--radius-m);font:var(--body-b4);color:var(--text-body);cursor:pointer;text-align:left;background:0 0;border:none;display:flex}.rollup-add__item:hover{background:var(--surface-secondary)}.rollup-add__icon{color:var(--text-tertiary);display:inline-flex}.rollup-cards{margin-top:var(--space-s)}.catalog__ico{vertical-align:middle;color:var(--text-tertiary);margin-right:6px;display:inline-flex}.catalog__name{align-items:center;display:inline-flex}.actlog__sub{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);font:var(--body-b6);color:var(--text-body);white-space:nowrap;flex:none;align-items:center;gap:5px;padding:2px 9px;display:inline-flex}.actlog__subdot{border-radius:50%;flex:none;width:8px;height:8px}.dt-filter{gap:var(--space-s);margin-bottom:var(--space-l);flex-wrap:wrap;display:flex}.dt-pill{align-items:center;gap:var(--space-xs);padding:7px var(--space-m);border-radius:var(--radius-pill);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);font:var(--body-b5);cursor:pointer;font-weight:600;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.dt-pill:hover{border-color:var(--border-primary)}.dt-pill--on{background:var(--surface-primary);border-color:var(--surface-primary);color:var(--text-on-color)}.dt-pill__dot{border-radius:50%;flex:none;width:9px;height:9px}.dt-charts{margin-bottom:var(--space-l)}.dt-card-head{justify-content:space-between;align-items:center;gap:var(--space-s);margin-bottom:var(--space-s);display:flex}.dt-card-head .dash-card__title{margin:0}.dt-toggle{background:var(--surface-secondary);border-radius:var(--radius-pill);padding:2px;display:inline-flex}.dt-toggle__btn{padding:4px var(--space-m);border-radius:var(--radius-pill);font:var(--body-b6);color:var(--text-caption);cursor:pointer;background:0 0;border:none;font-weight:600}.dt-toggle__btn--on{background:var(--surface-default);color:var(--text-heading);box-shadow:0 1px 2px #0000001a}.dt-people{gap:var(--space-m);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.dt-person{gap:var(--space-s);text-align:left;cursor:pointer;border:var(--border-width-xs) solid var(--border-general);flex-direction:column;transition:border-color .12s,transform .12s;display:flex}.dt-person:hover{border-color:var(--border-primary);transform:translateY(-2px)}.dt-person__top{align-items:center;gap:var(--space-s);display:flex}.dt-person__id{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.dt-person__name{font:var(--body-b3);color:var(--text-heading);align-items:center;gap:var(--space-xs);display:flex}.dt-person__teams{font:var(--body-b6);color:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dt-person__stats{gap:var(--space-m);font:var(--body-b6);color:var(--text-body);display:flex}.dt-person__stats b{color:var(--text-heading);font-weight:700}.dt-person__stats .is-danger b{color:var(--alert-error)}.dt-person__bar{background:var(--surface-secondary);border-radius:var(--radius-pill);height:7px;overflow:hidden}.dt-person__fill{background:var(--surface-primary);border-radius:var(--radius-pill);height:100%;display:block}.dt-modal{max-width:560px}.dt-modal__id{align-items:center;gap:var(--space-m);display:flex}.dt-modal__id .modal__title{align-items:center;gap:var(--space-xs);display:flex}.dt-modal__metrics{margin-bottom:var(--space-m);grid-template-columns:repeat(3,1fr)}.dt-mtile{cursor:pointer;text-align:left;font:inherit;border:none;transition:transform .1s,box-shadow .1s;position:relative}.dt-mtile:hover{transform:translateY(-1px)}.dt-mtile--on{box-shadow:0 0 0 3px var(--surface-default), 0 0 0 5px currentColor}.dt-tasks{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dt-task{justify-content:space-between;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);background:var(--surface-secondary);border-radius:var(--radius-l);display:flex}.dt-task__title{font:var(--body-b5);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dt-task__meta{align-items:center;gap:var(--space-s);flex:none;display:flex}.dt-task__sub{font:var(--body-b6);color:var(--text-caption)}.dt-task__status{font:var(--body-b6);color:var(--text-tertiary);text-transform:capitalize;font-weight:600}.dt-task__due{font:var(--body-b6);color:var(--text-caption)}.dt-task__due.is-danger{color:var(--alert-error);font-weight:600}.reqinbox{gap:var(--space-s);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.reqinbox__row{align-items:center;gap:var(--space-l);display:flex}.reqinbox__main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.reqinbox__title{font:var(--body-b3);color:var(--text-heading)}.reqinbox__meta{align-items:center;gap:var(--space-s);font:var(--body-b6);color:var(--text-caption);flex-wrap:wrap;display:flex}.reqinbox__chip{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);color:var(--text-body);align-items:center;padding:1px 9px;display:inline-flex}.reqinbox__type{text-transform:capitalize}.reqinbox__date{flex-direction:column;flex:none;align-items:flex-start;gap:2px;display:flex}.reqinbox__date-label{font:var(--body-b6);color:var(--text-caption)}.reqinbox__date-val{font:var(--body-b3);color:var(--text-heading);font-variant-numeric:tabular-nums;font-weight:700}.reqinbox__actions{gap:var(--space-xs);flex:none;display:flex}.sidebar{background:var(--surface-default);border-right:var(--border-width-xs) solid var(--border-general);width:232px;padding:var(--space-m);flex-direction:column;flex:none;transition:background-color .2s,border-color .2s;display:flex}.sidebar__nav{gap:var(--space-3xs);flex-direction:column;flex:1;min-height:0;display:flex}@media (width>=901px){.sidebar{align-self:flex-start;height:calc(100vh - 64px);position:sticky;top:64px;overflow-y:auto}}.sidebar__link{align-items:center;gap:var(--space-s);padding:10px var(--space-m);border-radius:var(--radius-xl);font:var(--body-b5);color:var(--text-body);transition:background-color .15s,color .15s;display:flex}.sidebar__link:hover{background:var(--surface-secondary);color:var(--text-heading)}.sidebar__link--active{background:var(--surface-primary-subtle);color:var(--text-tertiary);font-weight:700}.sidebar__ext{color:var(--text-caption);flex:none;margin-left:auto;display:inline-flex}.sidebar__comm{gap:var(--space-xs);padding:var(--space-s);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-primary);border-radius:var(--radius-2xl,18px);flex-direction:column;margin-top:auto;display:flex}.sidebar__comm .sidebar__link{border:var(--border-width-xs) solid var(--border-primary);border-radius:var(--radius-pill);background:var(--surface-default);color:var(--text-tertiary)}.sidebar__comm .sidebar__link:hover{background:var(--surface-primary-subtle);color:var(--text-tertiary)}.sidebar__comm .sidebar__link--active,.sidebar__comm .sidebar__link--active:hover{background:var(--surface-primary);border-color:var(--surface-primary);color:var(--text-on-color)}.sidebar__comm-label{font:var(--body-b6);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-xs) var(--space-s) var(--space-3xs);font-weight:600}.sidebar__link:hover .sidebar__ext{color:var(--text-tertiary)}.sidebar__dot{border-radius:50%;width:10px;height:10px;margin:auto;display:block}.sidebar__navrow{align-items:center;display:flex}.sidebar__navrow .sidebar__link{flex:1;min-width:0}.sidebar__chevron{width:26px;height:26px;margin-right:var(--space-3xs);border-radius:var(--radius-m);color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;transition:transform .15s,background .12s;display:inline-flex}.sidebar__chevron:hover{background:var(--surface-secondary);color:var(--text-body)}.sidebar__chevron--open{transform:rotate(90deg)}.sidebar__subs{gap:var(--space-xs);margin:0 0 0 var(--space-l);opacity:0;flex-direction:column;max-height:0;transition:max-height .3s,opacity .2s,margin .3s;display:flex;overflow:hidden}.sidebar__subs--open{opacity:1;max-height:600px;margin:var(--space-s) 0 var(--space-xs) var(--space-l)}.sidebar__subs .sidebar__link{border:var(--border-width-xs) solid var(--border-primary);border-radius:var(--radius-pill);background:var(--surface-default);color:var(--text-tertiary);padding:8px var(--space-m);transform-origin:top;opacity:0;transition:transform .32s cubic-bezier(.34,1.56,.64,1),opacity .22s;transform:translateY(-14px)scale(.92)rotate(-4deg)}.sidebar__subs--open .sidebar__link{opacity:1;transition-delay:calc(var(--i) * 60ms);transform:none}.sidebar__subs .sidebar__link:hover{background:var(--surface-primary-subtle);color:var(--text-tertiary)}.sidebar__subs .sidebar__link .sidebar__label{font:var(--body-b5);font-weight:600}@media (prefers-reduced-motion:reduce){.sidebar__subs,.sidebar__subs .sidebar__link{transition-duration:.01ms}.sidebar__subs .sidebar__link{transform:none}}.sidebar__badge{border-radius:var(--radius-pill);background:var(--surface-primary);min-width:18px;height:18px;color:var(--text-on-color);font:var(--body-b6);justify-content:center;align-items:center;margin-left:auto;padding:0 6px;font-weight:700;display:inline-flex}.sidebar__icon{flex:none;display:inline-flex}.sidebar__edit{cursor:pointer;width:100%;font-family:var(--font-family);text-align:left;margin-top:var(--space-xs);color:var(--text-caption);background:0 0;border:none}.sidebar__footer{gap:var(--space-s);padding-top:var(--space-m);margin-top:var(--space-m);border-top:var(--border-width-xs) solid var(--border-general);flex-direction:column;display:none}.sidebar__empty{padding:var(--space-m);font:var(--body-b6);color:var(--text-caption)}.sidebar__divider{height:1px;margin:var(--space-xs) var(--space-s);background:var(--border-general);display:block}.sidebar__profile{align-items:center;gap:var(--space-s);padding:var(--space-xs);margin:calc(-1 * var(--space-xs));border-radius:var(--radius-l,12px);text-decoration:none;transition:background-color .15s;display:flex}.sidebar__profile:hover{background:var(--surface-secondary-subtle)}.sidebar__meta{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar__name{font:var(--body-b5);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar__backdrop{display:none}@media (width<=900px){.sidebar{z-index:70;border-right:var(--border-width-xs) solid var(--border-general);width:270px;max-width:84vw;transition:transform .4s cubic-bezier(.22,1,.36,1);position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:0 0 40px #00000059}.sidebar--open{transform:translate(0)}.sidebar__nav{position:static;top:auto}.sidebar__footer{display:flex}.sidebar__backdrop{z-index:65;background:#00000080;display:block;position:fixed;inset:0}}.app-shell{flex-direction:column;min-height:100%;display:flex}.app-body{flex:1;align-items:stretch;display:flex;overflow-x:clip}.app-content{min-width:0;padding:var(--space-xl);flex:1}@media (width>=901px){.sidebar{transform-origin:0;transition:margin-left .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1),opacity .26s}.app-shell--nav-collapsed .sidebar{opacity:0;pointer-events:none;margin-left:-232px;transform:scaleX(.94)}}.login{min-height:100%;padding:var(--space-l);background:radial-gradient(120% 90% at 50% -10%, var(--surface-secondary-subtle) 0%, transparent 55%), var(--bg-base);justify-content:center;align-items:center;display:flex;overflow-x:hidden}.login__card{width:min(100%,408px);padding:calc(var(--space-2xl) + 15px);gap:var(--space-xl);flex-direction:column;display:flex}.login__brand{align-items:center;gap:var(--space-m);text-align:center;flex-direction:column;display:flex}.login__logo{width:auto;height:40px}.login__heading{font:var(--title-t1);color:var(--text-heading)}.login__subtitle{font:var(--body-b2);color:var(--text-body)}.login__form{gap:var(--space-m);flex-direction:column;display:flex}.login__submit{width:100%;margin-top:var(--space-xs)}.login__footnote{font:var(--body-b6);color:var(--text-caption);text-align:center}.login__footnote a{color:var(--text-primary);font-weight:600}.login__footnote-cta{margin-top:var(--space-3xs);color:var(--text-primary);font-weight:700;display:block}.route-loading{min-height:100%;color:var(--text-body);font:var(--body-b2);place-items:center;display:grid}.pr{background:var(--bg-base);min-height:100%;padding:var(--space-2xl) var(--space-l)}.pr__inner{gap:var(--space-l);flex-direction:column;max-width:1000px;margin:0 auto;display:flex}.pr__header{justify-content:space-between;align-items:center;gap:var(--space-m);flex-wrap:wrap;display:flex}.pr__title{font:var(--title-t1);color:var(--text-heading)}.pr__meta{font:var(--body-b6);color:var(--text-caption);margin-top:var(--space-3xs)}.pr__section-title{font:var(--body-b5);color:var(--text-regular);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-s)}.pr__footer{text-align:center;font:var(--body-b6);color:var(--text-caption);padding-top:var(--space-m)}.pr__state{min-height:100%;color:var(--text-body);place-items:center;display:grid}.chat{gap:var(--space-m);grid-template-columns:260px 1fr;height:calc(100dvh - 132px);min-height:480px;display:grid}.chat-rail{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);padding:var(--space-s);flex-direction:column;min-height:0;display:flex}.chat-rail__scroll{flex:1;min-height:0;overflow-y:auto}.chat-rail__bottom{margin-top:var(--space-xs);padding-top:var(--space-xs);border-top:var(--border-width-xs) solid var(--border-general);gap:var(--space-xs);flex-direction:column;display:flex}.chat-rail__search{align-items:center;gap:var(--space-xs);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);padding:0 var(--space-s);background:var(--surface-default);display:flex}.chat-rail__search:focus-within{border-color:var(--border-primary)}.chat-rail__search-ico{color:var(--text-caption);flex:none;display:inline-flex}.chat-rail__search-input{min-width:0;font:var(--body-b2);color:var(--text-body);background:0 0;border:none;outline:none;flex:1;padding:8px 0}.chat-rail__search-clear{cursor:pointer;color:var(--text-caption);background:0 0;border:none;flex:none;font-size:16px;line-height:1}.chat-rail__settings-btn{width:100%;height:40px}.chat-rail__settings-icon{flex:none;display:inline-flex}.chatmsg__bot-avatar{object-fit:cover;background:var(--surface-secondary-subtle);border-radius:50%;flex:none;width:36px;height:36px}.chatmsg__botbadge{font:var(--body-b6);letter-spacing:.04em;color:var(--text-on-color);background:var(--surface-primary);border-radius:var(--radius-pill);padding:0 6px;font-weight:700}.chatmsg--system .chatmsg__author{color:var(--text-tertiary)}.chat-rail__section{margin-bottom:var(--space-m)}.chatset__section{padding:var(--space-s) 0;border-top:var(--border-width-xs) solid var(--border-general)}.chatset__section:first-child{border-top:none;padding-top:0}.chatset__title{font:var(--body-b2);color:var(--text-heading);margin:0 0 var(--space-3xs);font-weight:700}.chatset__row{gap:var(--space-xs);margin-top:var(--space-s);flex-wrap:wrap;display:flex}.chat-rail__heading{font:var(--body-b5);color:var(--text-primary);text-transform:uppercase;letter-spacing:.04em;padding:var(--space-xs) var(--space-xs) var(--space-3xs);justify-content:space-between;align-items:center;display:flex}.chat-rail__add{cursor:pointer;color:var(--text-primary);border-radius:var(--radius-m);background:0 0;border:none;padding:0 4px;font-size:18px;line-height:1}.chat-rail__add:hover{color:var(--text-primary);background:var(--surface-primary-subtle)}.chat-rail__row{align-items:center;gap:var(--space-xs);border:var(--border-width-xs) solid transparent;cursor:pointer;width:100%;padding:6px var(--space-xs);border-radius:var(--radius-pill);color:var(--text-body);font:var(--body-b2);text-align:left;background:0 0;display:flex}.chat-rail__row:hover{background:var(--surface-secondary-subtle)}.chat-rail__row.is-active{background:var(--surface-default);border-color:var(--border-primary);color:var(--text-heading);font-weight:600}.chat-rail__row--browse{color:var(--text-caption)}.chat-rail__glyph{text-align:center;width:22px;color:var(--text-primary);flex:none}.chat-rail__avatar{flex:none;display:inline-flex;position:relative}.chat-rail__dot{background:var(--text-tertiary);border:2px solid var(--surface-default);border-radius:50%;width:9px;height:9px;position:absolute;bottom:-1px;right:-1px}.chat-rail__dot--online{background:var(--surface-primary)}.chat-rail__dot--away{background:#e0a72e}.chat-rail__avatar--off .avatar{filter:grayscale();opacity:.6}.chat-rail__heading--toggle{cursor:pointer;background:0 0;border:none;justify-content:flex-start;gap:6px;width:100%}.chat-rail__heading--toggle:hover{color:var(--text-heading)}.chat-rail__caret{color:var(--text-tertiary);font-size:9px;transition:transform .15s}.chat-rail__caret.is-open{transform:rotate(90deg)}.chat-rail__hdot{vertical-align:middle;border:none;width:8px;height:8px;margin-right:5px;display:inline-block;position:static}.chat-rail__hdot--off{background:var(--text-tertiary)}.chat-rail__groupava{background:var(--surface-primary-subtle);width:22px;height:22px;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.chat-rail__huddle{filter:drop-shadow(0 0 1px var(--surface-default));font-size:11px;line-height:1;position:absolute;bottom:-3px;right:-3px}.chatmsg__huddle{filter:drop-shadow(0 0 1px var(--surface-default));font-size:13px;line-height:1;position:absolute;bottom:-3px;right:-3px}.uprof__inhuddle{font:var(--body-b6);color:var(--text-primary)}.huddle--fill{z-index:120;gap:var(--space-s);height:100dvh;padding:var(--space-m) var(--space-l);background:var(--surface-default);box-sizing:border-box;view-transition-name:huddle;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}::view-transition-old(huddle){animation-duration:.32s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}::view-transition-new(huddle){animation-duration:.32s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}.huddle__head{align-items:center;gap:var(--space-s);display:flex}.huddle__title{font:var(--body-b2);color:var(--text-heading);font-weight:600}.huddle__count{font:var(--body-b5);color:var(--text-caption)}.huddle__viewbtns{align-items:center;gap:var(--space-xs);margin-left:auto;display:flex}.huddle__viewbtn{border-radius:var(--radius-m);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);width:32px;height:32px;color:var(--text-body);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.huddle__viewbtn:hover{border-color:var(--border-primary);color:var(--text-primary)}.huddle__min{cursor:pointer;color:var(--text-caption);background:0 0;border:none;font-size:22px;line-height:1}.huddle__note{font:var(--body-b6);color:var(--text-caption);margin:0}.huddle__body{gap:var(--space-m);flex:1;min-height:0;display:flex}.huddle__stage{gap:var(--space-m);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.huddle__grid{align-content:center;place-items:center;gap:var(--space-m);flex:1;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));min-height:0;display:grid;overflow-y:auto}.huddle__tile{aspect-ratio:4/3;border-radius:var(--radius-xl);background:var(--surface-secondary-subtle);border:var(--border-width-xs) solid var(--border-general);flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;max-width:440px;max-height:100%;display:flex;position:relative;overflow:hidden}.huddle__tile--me{border-color:var(--border-primary)}.huddle__ava{border-radius:50%;transition:transform .12s;display:inline-flex;position:relative}.huddle__tile--speaking{border-color:var(--surface-primary);box-shadow:0 0 0 2px var(--surface-primary)}.huddle__tile--speaking .huddle__ava{animation:.5s ease-in-out infinite alternate huddle-speak}.huddle__tile--speaking .huddle__ava:after{content:"";border:2px solid var(--surface-primary);border-radius:50%;animation:1s ease-out infinite huddle-wave;position:absolute;inset:-6px}@keyframes huddle-speak{0%{transform:scale(1)}to{transform:scale(1.07)}}@keyframes huddle-wave{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.4)}}@media (prefers-reduced-motion:reduce){.huddle__tile--speaking .huddle__ava,.huddle__tile--speaking .huddle__ava:after{animation:none}}.huddle__video{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.huddle__video--remote{transform:none}.huddle__name{text-align:center;font:var(--body-b6);color:#fff;border-radius:var(--radius-s);text-overflow:ellipsis;white-space:nowrap;background:#0006;padding:2px 6px;position:absolute;bottom:6px;left:6px;right:6px;overflow:hidden}.huddle__tile--share{aspect-ratio:auto;flex:1;grid-column:1/-1;place-self:stretch stretch;max-width:none}.huddle__grid--present{place-content:center;gap:var(--space-m);flex-wrap:wrap;display:flex}.huddle__tile--present{aspect-ratio:auto;flex:100%;order:0;align-self:center;max-width:min(100%,1100px);max-height:64vh}.huddle__tile--present .huddle__video{object-fit:contain;background:#0b0f0d;transform:none}.huddle__tile--mini{aspect-ratio:4/3;flex:none;order:1;align-self:center;width:150px;max-width:150px}.huddle__tile--mini .huddle__name{font-size:10px;bottom:3px}.huddle__grid--full{grid-auto-rows:1fr;align-content:stretch;place-items:stretch stretch}.huddle__grid--full .huddle__tile{aspect-ratio:auto;width:100%;max-width:none;height:100%;max-height:none}.huddle__grid--sidebar{align-content:start;gap:var(--space-m);grid-template-columns:minmax(0,1fr) 184px;display:grid}.huddle__grid--sidebar .huddle__tile{max-width:none}.huddle__grid--sidebar .huddle__tile--present{aspect-ratio:auto;grid-area:1/1/999;align-self:stretch;max-height:100%}.huddle__grid--sidebar .huddle__tile--present .huddle__video{object-fit:contain;background:#0b0f0d;transform:none}.huddle__grid--sidebar .huddle__tile--mini{aspect-ratio:4/3;grid-column:2;align-self:start;width:184px;max-width:184px}.huddle__grid--scroll{align-content:start;overflow-y:auto}.huddle__tile--more{cursor:pointer;gap:2px}.huddle__more{font:var(--title-t1);color:var(--text-primary);font-weight:700}.huddle__anno{pointer-events:none;touch-action:none;width:100%;height:100%;position:absolute;inset:0}.huddle__anno.is-pen{pointer-events:auto;cursor:crosshair}.huddle__penbar{justify-content:center;align-items:center;gap:var(--space-xs);display:flex}.huddle__pen{font:var(--body-b6);border-radius:var(--radius-pill);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);cursor:pointer;padding:4px 10px}.huddle__pen.is-on{border-color:var(--border-primary);color:var(--text-primary);background:var(--surface-primary-subtle)}.huddle__swatch{border:2px solid var(--surface-default);width:22px;height:22px;box-shadow:0 0 0 1px var(--border-general);cursor:pointer;border-radius:50%}.huddle__swatch.is-on{box-shadow:0 0 0 2px var(--text-primary)}.huddle__bgs,.huddle__devices{justify-content:center;align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.huddle__bgs-label{font:var(--body-b6);color:var(--text-caption);margin-right:var(--space-xs)}.huddle__bg{font:var(--body-b6);border-radius:var(--radius-pill);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);cursor:pointer;align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.huddle__bg.is-on{border-color:var(--border-primary);color:var(--text-primary);background:var(--surface-primary-subtle)}.huddle__bg-swatch{border-radius:3px;width:12px;height:12px}.huddle__bg-thumb{background-position:50%;background-size:cover;border-radius:3px;width:16px;height:16px}.huddle__bgs-hint{text-align:center;width:100%;font:var(--body-b6);color:var(--text-caption)}.huddle__bg-wrap{display:inline-flex;position:relative}.huddle__bg-del{background:var(--alert-error);color:#fff;text-align:center;cursor:pointer;border:none;border-radius:50%;width:16px;height:16px;padding:0;font-size:12px;line-height:16px;position:absolute;top:-6px;right:-6px}.huddle__bg--add{border-style:dashed}.huddle__devices{gap:var(--space-m)}.huddle__dev{font:var(--body-b6);color:var(--text-caption);flex-direction:column;gap:2px;display:flex}.huddle__dev .input{min-width:180px;height:34px}.huddle__controls{justify-content:center;gap:var(--space-s);display:flex}.huddle__btn{border:var(--border-width-xs) solid var(--border-general);background:var(--surface-secondary-subtle);width:46px;height:46px;color:var(--text-body);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.huddle__btn.is-on{background:var(--surface-primary-subtle);color:var(--text-primary);border-color:var(--border-primary)}.huddle__btn--leave{background:var(--alert-error);color:var(--text-on-color);border-color:var(--alert-error)}.huddle__btn--rec{background:var(--alert-error);color:#fff;border-color:var(--alert-error);animation:1.3s ease-in-out infinite huddle-rec}@keyframes huddle-rec{0%,to{box-shadow:0 0 #ea545580}50%{box-shadow:0 0 0 6px #ea545500}}@media (prefers-reduced-motion:reduce){.huddle__btn--rec{animation:none}}.huddle__btn:hover{filter:brightness(1.05)}.huddle__more-wrap{display:inline-flex;position:relative}.huddle__more-backdrop{z-index:5;position:fixed;inset:0}.huddle__more{z-index:6;background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);flex-direction:column;gap:2px;min-width:250px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 16px 40px #00000052}.huddle__more-item{align-items:center;gap:var(--space-s);border-radius:var(--radius-m);font:var(--body-b2);color:var(--text-body);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;padding:10px 12px;display:flex}.huddle__more-item:hover{background:var(--surface-secondary);color:var(--text-heading)}.huddle__more-item:disabled{opacity:.5;cursor:default}.huddle__more-item svg{color:var(--text-caption);flex:none}.huddle__more-rec svg{color:var(--alert-error)}.huddle__chat{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-secondary-subtle);flex-direction:column;flex:none;width:300px;display:flex;overflow:hidden}.huddle__chat-head{font:var(--body-b4);color:var(--text-heading);padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid var(--border-general);font-weight:600}.huddle__river{padding:var(--space-s) var(--space-m);gap:var(--space-s);flex-direction:column;flex:1;display:flex;overflow-y:auto}.huddle__msg{gap:var(--space-xs);display:flex}.huddle__msg-main{flex-direction:column;min-width:0;display:flex}.huddle__msg-meta{font:var(--body-b6);color:var(--text-caption)}.huddle__msg-body{font:var(--body-b5);color:var(--text-body);word-break:break-word}.huddle__msg-img{border-radius:var(--radius-m);max-width:100%;margin-top:4px}.huddle__msg-file{font:var(--body-b6);color:var(--text-primary);margin-top:4px;text-decoration:none}.huddle__compose{padding:var(--space-xs) var(--space-s) var(--space-s);border-top:var(--border-width-xs) solid var(--border-general)}.huddle__compose .chat-composer{padding:0}.huddle--pip{right:var(--space-l);bottom:var(--space-l);z-index:120;gap:var(--space-xs);width:240px;padding:var(--space-s);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-primary);border-radius:var(--radius-xl);flex-direction:column;animation:.24s cubic-bezier(.2,.8,.2,1) huddle-pip;display:flex;position:fixed;box-shadow:0 16px 40px #00000052}@keyframes huddle-pip{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:none}}.huddle__pipbar{align-items:center;gap:var(--space-xs);display:flex}.huddle__pipbar .huddle__title{font:var(--body-b4);margin-right:auto}.huddle--pip .huddle__grid{gap:6px;display:flex;overflow-x:auto}.huddle--pip .huddle__tile{aspect-ratio:auto;flex:none;width:70px;height:56px}.huddle--pip .huddle__name{font-size:9px;bottom:2px}.huddle__controls--pip{gap:var(--space-xs)}.huddle--pip .huddle__btn{width:36px;height:36px}.dm-chips{margin-bottom:var(--space-s);flex-wrap:wrap;gap:6px;display:flex}.dm-chip{font:var(--body-b5);border-radius:var(--radius-pill);background:var(--surface-primary-subtle);color:var(--text-primary);align-items:center;gap:4px;padding:3px 4px 3px 10px;display:inline-flex}.dm-chip button{cursor:pointer;color:inherit;background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}.dm-groupname{margin-bottom:var(--space-s)}.chat-picker__row.is-selected{background:var(--surface-primary-subtle);border-color:var(--border-primary)}.chat-picker__check{color:var(--text-primary);margin-left:auto;font-weight:700}.chat-rail__name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chat-rail__live{font:var(--body-b6);color:var(--text-on-color);background:var(--surface-primary);border-radius:var(--radius-pill);flex:none;padding:1px 7px;font-weight:700;animation:1.6s ease-in-out infinite huddle-live}.chat-rail__badge{border-radius:var(--radius-pill);background:var(--surface-primary);min-width:18px;height:18px;color:var(--text-on-color);font:var(--body-b6);flex:none;justify-content:center;align-items:center;padding:0 5px;font-weight:700;display:inline-flex}.chat-rail__join{font:var(--body-b6);color:var(--text-primary);flex:none;font-weight:600}.chat-rail__empty{font:var(--body-b6);color:var(--text-caption);padding:0 var(--space-xs)}.chat-main{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);flex-direction:column;display:flex;overflow:hidden}.chat-head{justify-content:space-between;align-items:center;gap:var(--space-m);padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid var(--border-general);display:flex}.chat-head__rail-toggle{border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);width:38px;height:38px;color:var(--text-body);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;display:none}.chat-head__title{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.chat-head__title h2{font:var(--title-t3);color:var(--text-heading);margin:0;line-height:1.2}.chat-head__topic{font:var(--body-b6);color:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.chat-head__huddle{white-space:nowrap;flex:none}.chat-head__huddle--live{color:var(--text-primary);border-color:var(--border-primary);background:var(--surface-primary-subtle);animation:1.6s ease-in-out infinite huddle-live}@keyframes huddle-live{0%,to{box-shadow:0 0 #2ea06000}50%{box-shadow:0 0 0 4px #2ea0602e}}@media (prefers-reduced-motion:reduce){.chat-head__huddle--live{animation:none}}.chat-head__actions{align-items:center;gap:var(--space-xs);flex:none;display:flex}.chat-body{flex:1;min-height:0;display:flex}.chat-river-wrap{padding:var(--space-m);flex:1;overflow-y:auto}.chat-foot{border-top:var(--border-width-xs) solid var(--border-general);padding:var(--space-s) var(--space-m)}.chat-empty,.chat-hint--center{color:var(--text-caption);text-align:center;padding:var(--space-2xl);margin:auto}.chat-daybreak{text-align:center;margin:var(--space-m) 0 var(--space-s);font:var(--body-b6);color:var(--text-caption);border-top:var(--border-width-xs) solid var(--border-general);position:relative}.chat-daybreak span{background:var(--surface-default);padding:0 var(--space-s);position:relative;top:-10px}.chatmsg{gap:var(--space-s);padding:3px var(--space-xs);border-radius:var(--radius-m);margin-top:10px;display:flex;position:relative}.chatmsg--new{animation:.6s ease-out chatmsg-new-flash}@keyframes chatmsg-new-flash{0%{background:var(--surface-primary-subtle);box-shadow:inset 3px 0 0 var(--border-primary)}to{background:0 0;box-shadow:inset 3px 0 #0000}}@media (prefers-reduced-motion:reduce){.chatmsg--new{animation:none}}.chatmsg:hover{background:var(--surface-secondary-subtle)}.chatmsg__gutter{flex:none;width:36px}.chatmsg__main{flex:1;min-width:0}.chatmsg--grouped{margin-top:2px;padding-top:0;padding-bottom:0}.chatmsg__head{align-items:baseline;gap:var(--space-xs);margin-bottom:3px;display:flex}.chatmsg--mine{flex-direction:row-reverse}.chatmsg--mine .chatmsg__main{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.chatmsg--mine .chatmsg__head{flex-direction:row-reverse}.chatmsg--mine .chatmsg__text,.chatmsg--mine .chatmsg__deleted{display:inline-block}.chatmsg--mine .chatmsg__more{right:auto;left:var(--space-xs)}.chatmsg--mine .poll,.chatmsg--mine .chatmsg__attachments{text-align:left}.chatmsg__author{font:var(--body-b2);color:var(--text-heading);font-weight:600}.chatmsg__time{font:var(--body-b6);color:var(--text-caption)}.chatmsg__text{font:var(--body-b2);color:var(--text-body);white-space:pre-wrap;word-break:break-word}.chatmsg__mention{color:var(--text-primary);background:var(--surface-primary-subtle);border-radius:4px;padding:0 3px;font-weight:600}.chatmsg__link{color:var(--text-primary);text-underline-offset:2px;word-break:break-word;text-decoration:underline}.chatmsg__link:hover{text-decoration-thickness:2px}.chat-taskcard{align-items:center;gap:var(--space-s);width:100%;max-width:380px;margin-top:var(--space-3xs);padding:var(--space-s) var(--space-m);text-align:left;cursor:pointer;background:var(--surface-secondary-subtle);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-l);display:flex}.chat-taskcard:hover{border-color:var(--border-primary);background:var(--surface-primary-subtle)}.chat-taskcard__ico{flex:none;font-size:18px}.chat-taskcard__main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.chat-taskcard__title{font:var(--body-b4);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.chat-taskcard__meta{font:var(--body-b6);color:var(--text-caption)}.chat-taskcard__status{font:var(--body-b6);color:var(--text-primary);background:var(--surface-default);border-radius:var(--radius-pill);flex:none;padding:2px 10px;font-weight:600}.sharetask__row{align-items:center}.sharetask__main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sharetask__meta{font:var(--body-b6);color:var(--text-caption)}.sharetask__status{font:var(--body-b6);color:var(--text-primary);flex:none;font-weight:600}.searchchat__results{margin-top:var(--space-s);flex-direction:column;gap:2px;max-height:50vh;display:flex;overflow-y:auto}.searchchat__row{gap:var(--space-s);text-align:left;padding:var(--space-s);border-radius:var(--radius-m);cursor:pointer;border:var(--border-width-xs) solid transparent;background:0 0;align-items:flex-start;display:flex}.searchchat__row:hover{background:var(--surface-primary-subtle);border-color:var(--border-primary)}.searchchat__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.searchchat__top{align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;display:flex}.searchchat__top strong{font:var(--body-b4);color:var(--text-heading)}.searchchat__chan{font:var(--body-b6);color:var(--text-primary)}.searchchat__time{font:var(--body-b6);color:var(--text-caption);margin-left:auto}.searchchat__snip{font:var(--body-b5);color:var(--text-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.searchchat__snip mark{background:var(--surface-primary);color:var(--text-on-color);border-radius:3px;padding:0 2px}.chatmsg__edited{font:var(--body-b6);color:var(--text-caption)}.chatmsg__deleted{font:var(--body-b2);color:var(--text-caption);font-style:italic}.chatmsg__attachments{gap:var(--space-xs);margin-top:var(--space-3xs);flex-wrap:wrap;display:flex}.chatmsg__image img{border-radius:var(--radius-m);border:var(--border-width-xs) solid var(--border-general);max-width:280px;max-height:220px;display:block}.chatmsg__file{font:var(--body-b6);color:var(--text-tertiary);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);padding:4px 10px}.chatmsg__reactions{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.chat-reaction{cursor:pointer;border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);border-radius:var(--radius-pill);font:var(--body-b6);align-items:center;gap:4px;padding:1px 8px;display:inline-flex}.chat-reaction.is-mine{border-color:var(--border-primary);background:var(--surface-primary-subtle)}.chat-reaction__count{color:var(--text-body)}.chatmsg__threadlink{cursor:pointer;color:var(--text-primary);font:var(--body-b6);border-radius:var(--radius-pill);border:var(--border-width-xs) solid var(--border-primary);background:var(--surface-primary-subtle);align-items:center;gap:5px;margin-top:6px;padding:3px 10px;font-weight:600;display:inline-flex}.chatmsg__threadlink:hover{background:var(--surface-primary);color:var(--text-on-color);border-color:var(--surface-primary)}.chatmsg__actions{top:-16px;right:var(--space-s);z-index:2;max-width:calc(100% - var(--space-m));background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 6px;padding:5px 8px;display:none;position:absolute}.chatmsg:hover .chatmsg__actions{display:flex}.chatmsg__actions-sep{background:var(--border-general);width:1px;height:20px;margin:0 2px}.chatmsg__act{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;line-height:1;transition:background .12s,color .12s;display:inline-flex}.chatmsg__act--emoji{border-radius:50%;width:30px;height:30px;font-size:16px}.chatmsg__act--emoji:hover{background:var(--surface-secondary-subtle);transform:scale(1.05)}.chatmsg__act--text{font:var(--body-b6);color:var(--text-body);border-radius:var(--radius-pill);white-space:nowrap;gap:5px;padding:6px 12px;font-weight:600}.chatmsg__act--text:hover{background:var(--surface-secondary-subtle)}.chatmsg__act--danger{color:var(--alert-error)}.chatmsg__act--danger:hover{background:var(--alert-error);color:var(--text-on-color)}.chatmsg__more{top:2px;right:var(--space-xs);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);cursor:pointer;border-radius:var(--radius-pill);width:30px;height:26px;font-size:16px;line-height:1;display:none;position:absolute}@media (hover:none){.chatmsg__more{justify-content:center;align-items:center;display:inline-flex}.chatmsg:hover .chatmsg__actions{display:none}.chatmsg__actions{max-width:100%;box-shadow:none;justify-content:flex-start;margin-top:6px;position:static}.chatmsg__actions.is-open{display:flex}}.chat-composer{position:relative}.chat-composer__row{align-items:flex-start;gap:var(--space-xs);display:flex}.chat-composer__send{flex:none;height:40px}.chat-composer__tools{gap:var(--space-xs);flex:none;display:flex;position:relative}.chat-composer__plus,.chat-composer__emoji{border:var(--border-width-xs) solid var(--border-primary);border-radius:var(--radius-pill);background:var(--surface-default);width:40px;height:40px;color:var(--text-primary);cursor:pointer;flex:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.chat-composer__plus{font-size:22px}.chat-composer__emoji{font-size:18px}.chat-composer__plus:hover,.chat-composer__emoji:hover{background:var(--surface-primary-subtle)}.chat-composer__menu-backdrop{z-index:20;position:fixed;inset:0}.chat-composer__menu{bottom:calc(100% + var(--space-xs));z-index:21;min-width:240px;padding:var(--space-3xs);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);transform-origin:0 100%;flex-direction:column;animation:.18s cubic-bezier(.2,.8,.2,1) both deckIn;display:flex;position:absolute;left:0;box-shadow:0 12px 34px #00000038}.chat-composer__menu-item{align-items:center;gap:var(--space-xs);border:var(--border-width-xs) solid transparent;border-top-color:var(--border-general);cursor:pointer;text-align:left;white-space:nowrap;width:100%;padding:var(--space-s);font:var(--body-b2);color:var(--text-heading);background:0 0;border-radius:0;animation:.28s cubic-bezier(.2,.8,.2,1) both deckCard;display:flex}.chat-composer__menu-item:first-child{border-top-color:#0000}.chat-composer__menu-item:hover:not(:disabled){border-color:var(--border-primary);border-radius:var(--radius-m);background:var(--surface-primary-subtle)}.chat-composer__menu-item:first-child:hover:not(:disabled){border-top-left-radius:calc(var(--radius-xl) - var(--space-3xs));border-top-right-radius:calc(var(--radius-xl) - var(--space-3xs))}.chat-composer__menu-item:last-child:hover:not(:disabled){border-bottom-left-radius:calc(var(--radius-xl) - var(--space-3xs));border-bottom-right-radius:calc(var(--radius-xl) - var(--space-3xs))}.chat-composer__menu-item:disabled{color:var(--text-caption);cursor:default}.chat-composer__menu-item:first-child{animation-delay:20ms}.chat-composer__menu-item:nth-child(2){animation-delay:50ms}.chat-composer__menu-item:nth-child(3){animation-delay:80ms}.chat-composer__menu-item:nth-child(4){animation-delay:.11s}.chat-composer__menu-item:nth-child(5){animation-delay:.14s}.chat-composer__menu-item:nth-child(6){animation-delay:.17s}@keyframes deckIn{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes deckCard{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.chat-composer__menu,.chat-composer__menu-item{animation:none}}.chat-composer__menu-ico{text-align:center;flex:none;width:20px}.chat-composer__soon{font:var(--body-b6);color:var(--text-caption);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);margin-left:auto;padding:0 6px}.chat-composer__input{resize:none;border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);min-height:40px;max-height:140px;padding:8px var(--space-s);font:var(--body-b2);font-family:var(--font-family);background:var(--surface-default);color:var(--text-body);flex:1}.chat-composer__input:focus{border-color:var(--border-primary-focus);outline:none}.chat-composer__chips{gap:var(--space-xs);margin-bottom:var(--space-xs);flex-wrap:wrap;display:flex}.chat-chip{font:var(--body-b6);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-pill);align-items:center;gap:6px;max-width:220px;padding:2px 8px;display:inline-flex}.chat-chip button{cursor:pointer;color:var(--text-caption);background:0 0;border:none;flex:none;font-size:15px}.chat-chip__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-chip--img{border-radius:var(--radius-m);padding:3px 8px 3px 3px}.chat-chip__thumb{object-fit:cover;border-radius:var(--radius-s);flex:none;width:32px;height:32px}.huddle-tx{gap:var(--space-s);padding:var(--space-s) var(--space-m);border-left:2px solid var(--border-primary);background:var(--surface-secondary);border-radius:var(--radius-m);flex-direction:column;margin-top:6px;display:flex}.huddle-tx__row{gap:var(--space-xs);align-items:flex-start;display:flex}.huddle-tx__main{flex-direction:column;gap:1px;min-width:0;display:flex}.huddle-tx__meta{font:var(--body-b5);color:var(--text-heading)}.huddle-tx__time{font:var(--body-b6);color:var(--text-caption);font-weight:400}.huddle-tx__body{font:var(--body-b2);color:var(--text-body);word-break:break-word}.huddle-tx__img{border-radius:var(--radius-m);max-width:220px;margin-top:3px}.huddle-tx__file{font:var(--body-b6);color:var(--text-primary);text-decoration:none}.chat-mentions{z-index:5;background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-m);box-shadow:var(--shadow-card);min-width:200px;margin-bottom:4px;position:absolute;bottom:100%;left:36px;overflow:hidden}.chat-mentions__row{text-align:left;cursor:pointer;width:100%;padding:6px var(--space-s);font:var(--body-b2);background:0 0;border:none;display:block}.chat-mentions__row:hover{background:var(--surface-primary-subtle)}.chat-mentions__role{color:var(--text-caption);font:var(--body-b6)}.chat-typing{font:var(--body-b6);color:var(--text-caption);padding:2px var(--space-xs) var(--space-xs);font-style:italic}.chat-readonly{text-align:center;font:var(--body-b6);color:var(--text-caption);padding:var(--space-s)}.chat-thread{border-left:var(--border-width-xs) solid var(--border-general);flex-direction:column;flex:none;width:360px;display:flex}.chat-thread__head{padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid var(--border-general);justify-content:space-between;align-items:center;display:flex}.chat-thread__title{font:var(--title-t3);color:var(--text-heading);margin:0}.chat-thread__body{padding:var(--space-s);flex:1;overflow-y:auto}.chat-thread__composer{border-top:var(--border-width-xs) solid var(--border-general);padding:var(--space-s)}.chat-seg{gap:var(--space-xs);display:inline-flex}.chat-seg__btn{border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);border-radius:var(--radius-pill);cursor:pointer;font:var(--body-b2);padding:6px 14px}.chat-seg__btn.is-active{border-color:var(--border-primary);background:var(--surface-primary-subtle);color:var(--text-heading);font-weight:600}.chat-hint{font:var(--body-b6);color:var(--text-caption);margin:var(--space-xs) 0 0}.chat-picker{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-m);max-height:260px;margin-top:var(--space-xs);overflow-y:auto}.chat-picker__row{align-items:center;gap:var(--space-s);cursor:pointer;width:100%;padding:6px var(--space-s);text-align:left;font:var(--body-b2);background:0 0;border:none;display:flex}.chat-picker__row:hover{background:var(--surface-secondary-subtle)}.chat-picker__row.is-picked{background:var(--surface-primary-subtle)}.chat-picker__name{flex:1}.chat-picker__role{font:var(--body-b6);color:var(--text-caption)}.chat-picker__check{color:var(--text-primary);width:16px;font-weight:700}.chat-rail__backdrop{display:none}@media (width<=900px){.chat{grid-template-columns:1fr;height:calc(100dvh - 96px)}.chat-head__rail-toggle{display:inline-flex}.chat-rail{z-index:45;border-right:var(--border-width-xs) solid var(--border-general);border-radius:0;width:280px;max-width:84vw;transition:transform .4s cubic-bezier(.22,1,.36,1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.chat-rail--open{box-shadow:var(--shadow-card);transform:translate(0)}.chat-rail__backdrop{z-index:44;background:#0006;display:block;position:fixed;inset:0}.chat-thread{z-index:46;background:var(--surface-default);width:auto;position:fixed;inset:0}}@media (width<=520px){.chat{gap:var(--space-xs);height:calc(100dvh - 80px)}.chat-river-wrap,.chat-head,.chat-foot{padding:var(--space-s)}.chatmsg__image img{max-width:100%}.chat-head__topic{display:none}}.devset{gap:var(--space-s);margin-top:var(--space-s);flex-direction:column;display:flex}.devset__cam{aspect-ratio:16/9;background:var(--surface-secondary);border-radius:var(--radius-xl);border:var(--border-width-xs) solid var(--border-general);width:100%;overflow:hidden}.devset__canvas{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.devset__bgs{gap:var(--space-xs);flex-wrap:wrap;display:flex}.devset__bg{align-items:center;gap:var(--space-xs);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);color:var(--text-body);border-radius:var(--radius-pill);padding:5px var(--space-s);font:var(--body-b6);cursor:pointer;display:inline-flex}.devset__bg.is-on{border-color:var(--border-primary);background:var(--surface-primary-subtle);color:var(--text-tertiary)}.devset__bg-swatch{border:var(--border-width-xs) solid var(--border-general);border-radius:50%;width:14px;height:14px}.devset__bg-thumb{background-position:50%;background-size:cover;border-radius:4px;width:16px;height:16px}.devset__bg-wrap{display:inline-flex;position:relative}.devset__bg-del{background:var(--alert-error);color:#fff;text-align:center;cursor:pointer;border:none;border-radius:50%;width:16px;height:16px;padding:0;font-size:12px;line-height:16px;position:absolute;top:-6px;right:-6px}.devset__bg--add{border-style:dashed}.devset__meter{height:8px;margin-top:var(--space-xs);border-radius:var(--radius-pill);background:var(--surface-secondary);overflow:hidden}.devset__meter-fill{background:var(--surface-primary);border-radius:var(--radius-pill);height:100%;transition:width 60ms linear;display:block}.devset__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.poll{margin-top:var(--space-xs);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);padding:var(--space-s) var(--space-m);background:var(--surface-default);width:100%}.poll__q{font:var(--body-b2);color:var(--text-heading);margin-bottom:var(--space-xs);font-weight:600}.poll__opts{gap:var(--space-xs);flex-direction:column;display:flex}.poll__opt{align-items:center;gap:var(--space-xs);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);border-radius:var(--radius-pill);width:100%;padding:7px var(--space-s);cursor:pointer;text-align:left;font:var(--body-b5);color:var(--text-body);display:flex;position:relative;overflow:hidden}.poll__opt:hover:not(:disabled){border-color:var(--border-primary)}.poll__opt:disabled{cursor:default}.poll__opt.is-mine{border-color:var(--border-primary)}.poll__bar{background:var(--surface-primary-subtle);z-index:0;transition:width .3s;position:absolute;inset:0 auto 0 0}.poll__opt-label{z-index:1;align-items:center;gap:var(--space-xs);flex:1;min-width:0;display:inline-flex;position:relative}.poll__tick{color:var(--text-primary);font-weight:700}.poll__opt-count{z-index:1;font-variant-numeric:tabular-nums;color:var(--text-tertiary);flex:none;font-weight:700;position:relative}.poll__foot{margin-top:var(--space-xs);font:var(--body-b6);color:var(--text-caption)}.poll--missing{color:var(--text-caption);font:var(--body-b6)}.poll-edit{gap:var(--space-xs);margin-bottom:var(--space-xs);flex-direction:column;display:flex}.poll-edit__row{gap:var(--space-xs);align-items:center;display:flex}.chatmsg__dept{font:var(--body-b6);border-radius:var(--radius-pill);white-space:nowrap;padding:1px 8px;font-weight:600}.emojipick{bottom:calc(100% + var(--space-xs));z-index:21;scrollbar-gutter:stable;width:320px;max-height:340px;padding:var(--space-s) var(--space-xs) var(--space-s) var(--space-s);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);transform-origin:0 100%;animation:.16s cubic-bezier(.2,.8,.2,1) both deckIn;position:absolute;left:0;overflow-y:auto;box-shadow:0 12px 34px #00000038}.chat-reactpick{z-index:80;position:fixed}.chat-reactpick .emojipick{z-index:21;position:relative;bottom:auto;left:auto}.chat-reaction__img{object-fit:contain;vertical-align:-3px;width:18px;height:18px}.chatmsg__act--morereact svg{display:block}.gifpick{bottom:calc(100% + var(--space-xs));z-index:21;scrollbar-gutter:stable;width:340px;max-height:384px;padding:var(--space-s);background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);transform-origin:0 100%;animation:.16s cubic-bezier(.2,.8,.2,1) both deckIn;position:absolute;left:0;overflow-y:auto;box-shadow:0 12px 34px #00000038}.gifpick__top{gap:var(--space-xs);margin-bottom:var(--space-xs);display:flex}.gifpick__search{flex:1;min-width:0}.gifpick__upload{white-space:nowrap;flex:none}.gifpick__grid{gap:var(--space-xs);grid-template-columns:1fr 1fr;display:grid}.gifpick__item{aspect-ratio:1;cursor:pointer;background:var(--surface-secondary-subtle);border:var(--border-width-xs) solid transparent;border-radius:var(--radius-m);padding:0;overflow:hidden}.gifpick__item img{object-fit:cover;width:100%;height:100%;display:block}.gifpick__item:hover{border-color:var(--border-primary)}.gifpick__hint,.gifpick__err{text-align:center;padding:var(--space-m) 0;grid-column:1/-1}.gifpick__err{color:var(--alert-error)}.gifpick__credit{font:var(--body-b6);color:var(--text-caption);text-align:right;margin-top:var(--space-xs)}.emojipick__sec{font:var(--body-b6);color:var(--text-caption);text-transform:uppercase;letter-spacing:.04em;margin:var(--space-xs) 0 var(--space-3xs)}.emojipick__grid{grid-template-columns:repeat(8,1fr);gap:2px;display:grid}.emojipick__preset,.emojipick__item{aspect-ratio:1;border:var(--border-width-xs) solid transparent;border-radius:var(--radius-m);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:100%;font-size:20px;line-height:1;display:inline-flex;position:relative}.emojipick__preset:hover,.emojipick__item:hover{background:var(--surface-primary-subtle);border-color:var(--border-primary)}.emojipick__item img{object-fit:contain;width:22px;height:22px}.emojipick__del{background:var(--alert-error);color:#fff;text-align:center;border-radius:50%;width:15px;height:15px;font-size:11px;line-height:15px;display:none;position:absolute;top:-3px;right:-3px}.emojipick__item:hover .emojipick__del{display:block}.emojipick__empty{grid-column:1/-1}.emojipick__err{font:var(--body-b6);color:var(--alert-error);margin:var(--space-xs) 0 0}.emojipick__add{gap:var(--space-xs);margin-top:var(--space-s);display:flex}.emojipick__add .input{flex:1;min-width:0}.emojipick__addbtn{width:100%;margin-top:var(--space-s)}.chatmsg__emoji{object-fit:contain;vertical-align:-5px;width:22px;height:22px;margin:0 1px}.emojimgr{margin:var(--space-s) 0 0;gap:var(--space-xs);flex-direction:column;max-height:240px;padding:0;list-style:none;display:flex;overflow-y:auto}.emojimgr__row{align-items:center;gap:var(--space-s);padding:var(--space-xs) var(--space-s);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-m);display:flex}.emojimgr__img{object-fit:contain;flex:none;width:26px;height:26px}.emojimgr__name{font:var(--body-b5);color:var(--text-body);flex:1;font-family:ui-monospace,monospace}.emojimgr__shared{font:var(--body-b6);color:var(--text-caption)}.chat-head__lock{vertical-align:-3px;color:var(--text-primary)}.chat-rail__rowact{flex:none;align-items:center;gap:2px;display:inline-flex}.chat-rail__star,.chat-rail__clear{border-radius:var(--radius-m);width:20px;height:20px;color:var(--text-caption);cursor:pointer;justify-content:center;align-items:center;display:none}.chat-rail__row:hover .chat-rail__star,.chat-rail__row:hover .chat-rail__clear{display:inline-flex}.chat-rail__star.is-on{color:var(--text-primary);display:inline-flex}.chat-rail__star:hover{color:var(--text-primary)}.chat-rail__clear{font-size:17px;line-height:1}.chat-rail__clear:hover{color:var(--alert-error);background:var(--surface-secondary)}.chat-head__namebtn{cursor:pointer;color:inherit;font:inherit;align-items:center;gap:var(--space-xs);border-radius:var(--radius-m);background:0 0;border:none;padding:0;display:inline-flex}.chat-head__namebtn:hover{color:var(--text-primary)}.chatmsg__avatarbtn{cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0;display:inline-flex;position:relative}.chatmsg__avatarbtn:hover{opacity:.85}.chatmsg__avatarbtn--off .avatar{filter:grayscale();opacity:.6}.chatmsg__pres{background:var(--text-tertiary);border:2px solid var(--surface-default);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.chatmsg__pres--online{background:var(--surface-primary)}.chatmsg__pres--away{background:#e0a72e}.chatmsg--mine .chatmsg__pres{left:-1px;right:auto}.uprof{text-align:center;align-items:center;gap:var(--space-s);padding-top:var(--space-s);flex-direction:column;display:flex}.uprof__name{font:var(--title-t3);color:var(--text-heading);margin:0}.uprof__you{font:var(--body-b6);color:var(--text-caption);font-weight:400}.uprof__tags{gap:var(--space-xs);flex-wrap:wrap;justify-content:center;display:flex}.uprof__dept{font:var(--body-b6);border-radius:var(--radius-pill);padding:2px 10px;font-weight:600}.uprof__avatar{display:inline-flex;position:relative}.uprof__avatar--off .avatar{filter:grayscale();opacity:.6}.uprof__dot{background:var(--text-tertiary);border:3px solid var(--surface-default);border-radius:50%;width:16px;height:16px;position:absolute;bottom:2px;right:2px}.uprof__dot--online{background:var(--surface-primary)}.uprof__dot--away{background:#e0a72e}.uprof__presence{font:var(--body-b6);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-pill);align-items:center;gap:6px;padding:3px 12px;font-weight:700;display:inline-flex}.uprof__presence--online{background:var(--surface-primary-subtle);color:var(--text-primary)}.uprof__presence--away{color:#e0a72e;background:#e0a72e2e}.uprof__presence--off{background:var(--surface-secondary-subtle);color:var(--text-caption)}.uprof__presdot{border-radius:50%;width:8px;height:8px}.uprof__presdot--online{background:var(--surface-primary)}.uprof__presdot--away{background:#e0a72e}.uprof__status{font:var(--body-b4);color:var(--text-body);margin:0}.statusedit{gap:var(--space-s);margin-top:var(--space-m);flex-direction:column;display:flex}.statusedit__row{gap:var(--space-xs);display:flex}.statusedit__emoji{text-align:center;flex:none;width:52px;padding:0;font-size:20px;line-height:1}.statusedit__presets{flex-wrap:wrap;gap:4px;display:flex}.statusedit__preset{border-radius:var(--radius-m);border:var(--border-width-xs) solid var(--border-general);background:var(--surface-default);cursor:pointer;width:32px;height:32px;font-size:18px}.statusedit__preset:hover{border-color:var(--border-primary);background:var(--surface-primary-subtle)}.statusedit__actions{justify-content:flex-end;gap:var(--space-xs);display:flex}.chat-head__pres{background:var(--text-tertiary);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.chat-head__pres--online{background:var(--surface-primary)}.chat-head__pres--away{background:#e0a72e}.chat-head__cstatus{color:var(--text-caption)}.uprof__email{font:var(--body-b6);color:var(--text-body);align-items:center;gap:6px;margin-top:2px;text-decoration:none;display:inline-flex}.uprof__email:hover{color:var(--text-primary);text-decoration:underline}.uprof__email svg{color:var(--text-caption);flex:none}.chdetail__meta{margin-bottom:var(--space-s)}.chdetail__about{font:var(--body-b2);color:var(--text-body);margin:0 0 var(--space-m)}.chat-head__pins{cursor:pointer;font:var(--body-b6);color:var(--text-primary);background:0 0;border:none;align-items:center;gap:4px;width:fit-content;margin-top:4px;padding:0;font-weight:600;display:inline-flex}.chat-head__pins:hover{text-decoration:underline}.pinlist{gap:var(--space-xs);flex-direction:column;display:flex}.pinrow{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-m);padding:var(--space-xs) var(--space-s);gap:var(--space-xs);grid-template-columns:1fr auto;align-items:center;display:grid}.pinrow__main{align-items:center;gap:var(--space-s);cursor:pointer;text-align:left;background:0 0;border:none;min-width:0;padding:0;display:flex}.pinrow__text{flex-direction:column;gap:1px;min-width:0;display:flex}.pinrow__line{font:var(--body-b5);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pinrow__meta{font:var(--body-b6);color:var(--text-caption)}.pinrow__unpin{flex:none}.pinrow__full{border-top:var(--border-width-xs) solid var(--border-general);margin-top:var(--space-xs);padding-top:var(--space-xs);grid-column:1/-1}.pinrow__body{font:var(--body-b2);color:var(--text-body);white-space:pre-wrap;word-break:break-word;margin:0}.pinrow__img{border-radius:var(--radius-m);max-width:100%;margin-top:var(--space-xs)}.pinrow__file{font:var(--body-b6);color:var(--text-primary)}.chadmin__filters{align-items:flex-end;gap:var(--space-m);margin-bottom:var(--space-m);flex-wrap:wrap;display:flex}.chadmin__filter{gap:var(--space-3xs);flex-direction:column;display:flex}.chadmin__filter span{font:var(--body-b6);color:var(--text-caption);text-transform:uppercase;letter-spacing:.04em}.chadmin__filter .input{min-width:150px}.chadmin__count{font:var(--body-b5);color:var(--text-caption);align-self:center;margin-left:auto}.chadmin{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);-webkit-overflow-scrolling:touch;overflow-x:auto}.chadmin__table{border-collapse:collapse;width:100%;min-width:640px}.chadmin__table th,.chadmin__table td{text-align:left;padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid var(--border-general);vertical-align:middle}.chadmin__table th{font:var(--body-b5);color:var(--text-on-color);background:var(--surface-primary);text-transform:uppercase;letter-spacing:.04em;padding:var(--space-s) var(--space-m);text-align:left}.chadmin__table tr:last-child td{border-bottom:none}.chadmin__table tr.is-archived{opacity:.55}.chadmin__name{flex-direction:column;gap:2px;display:flex}.chadmin__name strong{color:var(--text-heading);font:var(--body-b2);font-weight:600}.chadmin__topic{font:var(--body-b6);color:var(--text-caption)}.chadmin__owner{color:var(--text-body);font:var(--body-b6)}.chadmin__pill{border-radius:var(--radius-pill);font:var(--body-b6);background:var(--surface-primary-subtle);color:var(--text-tertiary);padding:2px 10px;font-weight:600;display:inline-block}.chadmin__pill--muted{background:var(--surface-secondary);color:var(--text-caption)}.chadmin__edit{gap:var(--space-xs);flex-direction:column;min-width:220px;display:flex}.chadmin__actions{gap:var(--space-xs);flex-wrap:wrap;justify-content:flex-end;display:flex}.chadmin__danger{color:var(--alert-error)}.users{gap:var(--space-xl);flex-direction:column;max-width:1200px;margin:0 auto;display:flex}.users__header{justify-content:space-between;align-items:center;gap:var(--space-m);display:flex}.users__title{font:var(--title-t1);color:var(--text-heading)}.users__subtitle{font:var(--body-b2);color:var(--text-body);margin-top:var(--space-3xs)}.users__card{gap:var(--space-l);padding:var(--space-xl);flex-direction:column;display:flex}.users__card-title{font:var(--title-t3);color:var(--text-heading)}.users__form{gap:var(--space-m);grid-template-columns:1fr 1fr;display:grid}.users__form .field--full{grid-column:1/-1}.users__form-actions{align-items:center;gap:var(--space-m);grid-column:1/-1;display:flex}.users__hint{font:var(--body-b6);color:var(--text-caption)}.users__depts{gap:var(--space-xxs);flex-wrap:wrap;display:inline-flex}.users__sort{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}.users__sort:hover{color:var(--text-primary)}.users__sort-ind{color:var(--text-primary);width:8px;font-size:9px}.users__filters{gap:var(--space-xs);margin-bottom:var(--space-s);flex-wrap:wrap;align-items:center;display:flex}.users__filters .input{height:38px;padding:0 var(--space-m) 0 var(--space-s);width:auto}.users__depts-manage{gap:var(--space-m);flex-wrap:wrap;display:flex}.users__dept-row{align-items:center;gap:var(--space-s);padding:var(--space-xs) var(--space-s);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);display:inline-flex}.users__color{border:var(--border-width-xs) solid var(--border-general);cursor:pointer;background:0 0;border-radius:50%;width:28px;height:28px;padding:0;overflow:hidden}.users__color::-webkit-color-swatch-wrapper{padding:0}.users__color::-webkit-color-swatch{border:none;border-radius:50%}.users__color::-moz-color-swatch{border:none;border-radius:50%}.users__table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.users__table{border-collapse:collapse;width:100%}.users__table th{text-align:left;font:var(--body-b5);color:var(--text-on-color);background:var(--surface-primary);padding:var(--space-s) var(--space-m);vertical-align:middle;border-right:var(--border-width-xs) solid #ffffff40}.users__table th:last-child{border-right:none}.users__table td{font:var(--body-b2);color:var(--text-dark);padding:var(--space-s) var(--space-m);vertical-align:middle;border-bottom:var(--border-width-xs) solid var(--border-general);border-right:var(--border-width-xs) solid var(--border-general)}.users__table td:last-child{border-right:none}.users__table tr:last-child td{border-bottom:none}.users__row-actions{text-align:right;white-space:nowrap}.users__row-actions .btn+.btn,.users__row-actions .btn+.pill,.users__row-actions .pill+.btn{margin-left:var(--space-xs)}.alert--success{color:var(--alert-success);background:var(--surface-secondary-subtle);border:var(--border-width-xs) solid #bdebcb}.set__tabs{gap:var(--space-xs);margin-bottom:var(--space-l);flex-wrap:wrap;display:flex}.set__grid{gap:var(--space-m);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.set__grid--single{grid-template-columns:minmax(0,520px)}.set__card{gap:var(--space-m);flex-direction:column;display:flex}.set__card-title{font:var(--title-t3);color:var(--text-heading);margin:0}.set__card-head{justify-content:space-between;align-items:center;gap:var(--space-m);flex-wrap:wrap;display:flex}.set__card-actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.set__form{gap:var(--space-m);flex-direction:column;display:flex}.set__actions{justify-content:flex-end;display:flex}.set__actions .btn{min-width:180px}.set__hint{font:var(--body-b6);color:var(--text-caption)}.set__depts{gap:var(--space-xs);flex-wrap:wrap;display:flex}.set__empty{font:var(--body-b2);color:var(--text-body);padding:var(--space-m) 0}.set__photo{align-items:center;gap:var(--space-l);display:flex}.set__photo .avatar{border:2px solid var(--border-primary);object-fit:cover;border-radius:50%}.set__photo-side{gap:var(--space-xs);flex-direction:column;align-items:flex-start;display:flex}.set__tasks,.set__notifs{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.set__task{align-items:center;gap:var(--space-s);padding:var(--space-s) 0;border-top:var(--border-width-xs) solid var(--border-general);display:flex}.set__task:first-child{border-top:none}.set__task-dot{border-radius:50%;flex:none;width:10px;height:10px}.set__task-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.set__task-title{font:var(--body-b5);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.set__task-meta{font:var(--body-b6);color:var(--text-caption)}.set__notif{justify-content:space-between;align-items:flex-start;gap:var(--space-m);text-align:left;width:100%;padding:var(--space-s);border-radius:var(--radius-l,12px);cursor:pointer;background:0 0;border:none;transition:background-color .15s;display:flex}.set__notif:hover{background:var(--surface-secondary)}.set__notif--unread{background:var(--surface-primary-subtle)}.set__notif-main{flex-direction:column;gap:2px;min-width:0;display:flex}.set__notif-title{font:var(--body-b5);color:var(--text-heading)}.set__notif-body{font:var(--body-b6);color:var(--text-body);text-overflow:ellipsis;white-space:nowrap;max-width:60ch;overflow:hidden}.set__notif-when{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;flex:none}@media (width<=760px){.set__grid{grid-template-columns:minmax(0,1fr)}}.rec-list{gap:var(--space-s);flex-direction:column;display:flex}.rec-item{align-items:center;gap:var(--space-m);padding:var(--space-s);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);display:flex}.rec-thumb{object-fit:cover;border-radius:var(--radius-m);cursor:pointer;background:#0b0f0d;flex:none;width:120px;height:68px}.rec-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.rec-title{text-align:left;cursor:pointer;font:var(--body-b3);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;padding:0;overflow:hidden}.rec-title:hover{color:var(--text-primary)}.rec-meta{font:var(--body-b6);color:var(--text-caption)}.rec-actions{gap:var(--space-xs);flex-wrap:wrap;flex:none;justify-content:flex-end;display:flex}@media (width<=640px){.rec-item{flex-wrap:wrap}.rec-actions{width:100%}}.ac{gap:var(--space-m);grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:start;display:grid}.ac__card-title{font:var(--title-t3);color:var(--text-heading);margin:0}.ac__hint{font:var(--body-b6);color:var(--text-caption)}.ac__sub{font:var(--body-b3);color:var(--text-heading);margin:var(--space-m) 0 var(--space-xs)}.ac__tree{gap:var(--space-s);flex-direction:column;display:flex}.ac__nodes{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.ac__node-li{border-radius:var(--radius-m);border-top:2px solid #0000;align-items:center;display:flex}.ac__node-li--dragging{opacity:.45}.ac__node-li--over{border-top-color:var(--border-primary,#00cc85)}.ac__grip{cursor:grab;width:18px;height:30px;color:var(--text-caption);opacity:0;flex:none;justify-content:center;align-items:center;transition:opacity .12s;display:inline-flex}.ac__node-li:hover .ac__grip{opacity:.7}.ac__grip:active{cursor:grabbing}.ac__caret{cursor:pointer;width:20px;height:30px;color:var(--text-caption);background:0 0;border:none;flex:none;padding:0;font-size:11px;line-height:1}.ac__caret:hover{color:var(--text-heading)}.ac__caret--leaf{cursor:default}.ac__node{align-items:center;gap:var(--space-xs);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;flex:1;min-width:0;padding:7px 8px;display:flex}.ac__node:hover{background:var(--surface-secondary-subtle)}.ac__node--active{background:var(--surface-primary-subtle)}.ac__dot{border-radius:50%;flex:none;width:9px;height:9px}.ac__dot--lg{width:14px;height:14px}.ac__node-name{font:var(--body-b5);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ac__node-meta{font:var(--body-b6);color:var(--text-caption);white-space:nowrap;margin-left:auto}.ac__addsub{border:var(--border-width-xs) solid var(--border-general);width:24px;height:24px;color:var(--text-caption);cursor:pointer;background:0 0;border-radius:6px;flex:none;justify-content:center;align-items:center;margin-left:2px;font-size:15px;line-height:1;display:inline-flex}.ac__addsub:hover{border-color:var(--border-primary);color:var(--text-tertiary);background:var(--surface-primary-subtle)}.ac__row--danger{margin-top:var(--space-xs)}.ac__add-root{border-top:var(--border-width-xs) solid var(--border-general);padding-top:var(--space-s)}.ac__addroot{gap:var(--space-s);flex-direction:column;display:flex}.ac__addroot-title{margin-top:0}.ac__addroot-input{border-radius:var(--radius-pill)}.ac__addroot-btn{width:100%}.ac__add-root .ac__row{flex-direction:column;align-items:stretch}.ac__add-root .input--sm{width:auto}.ac__panel{gap:var(--space-s);flex-direction:column;display:flex}.ac__panel--empty{justify-content:center;align-items:center;min-height:160px}.ac__panel-head{align-items:center;gap:var(--space-s);display:flex}.ac__panel-head>div{flex:1;min-width:0}.ac__path{font:var(--body-b6);color:var(--text-caption)}.ac__color{border:var(--border-width-xs) solid var(--border-general);cursor:pointer;background:0 0;border-radius:50%;flex:none;width:30px;height:30px;padding:0;overflow:hidden}.ac__color::-webkit-color-swatch-wrapper{padding:0}.ac__color::-webkit-color-swatch{border:none;border-radius:50%}.ac__color::-moz-color-swatch{border:none;border-radius:50%}.ac__row{gap:var(--space-xs);flex-wrap:wrap;align-items:center;display:flex}.ac__row .input{flex:1;min-width:120px}.input--sm{height:36px;padding:0 var(--space-s);flex:none;width:auto}.ac__check{align-items:center;gap:var(--space-xs);font:var(--body-b6);color:var(--text-body);display:flex}.ac__members{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ac__member{align-items:center;gap:var(--space-s);padding:var(--space-xs) 0;border-top:var(--border-width-xs) solid var(--border-general);display:flex}.ac__member:first-child{border-top:none}.ac__member-name{min-width:0;font:var(--body-b5);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.ac__star{border:var(--border-width-xs) solid var(--border-general);width:30px;height:30px;color:var(--text-caption);cursor:pointer;background:0 0;border-radius:8px;flex:none;font-size:15px;line-height:1}.ac__star--on{color:#fff;background:var(--text-tertiary);border-color:var(--text-tertiary)}@media (width<=760px){.ac{grid-template-columns:minmax(0,1fr)}}.pbotw{margin-bottom:var(--space-l)}.pbotw code{background:var(--surface-secondary-subtle);border-radius:4px;padding:0 4px;font-family:ui-monospace,monospace}.pbotw__input{resize:vertical;width:100%;min-height:90px;font:var(--body-b2);margin:var(--space-s) 0 var(--space-m)}.pbotw__preview{gap:var(--space-s);padding:var(--space-s) var(--space-m);border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-secondary-subtle);display:flex}.pbotw__preview .chatmsg__bot-avatar{object-fit:cover;border-radius:50%;flex:none;width:36px;height:36px}.pbotw__preview-head{align-items:center;gap:var(--space-xs);margin-bottom:2px;display:flex}.pbotw__preview-name{font:var(--body-b2);color:var(--text-tertiary);font-weight:600}.pbotw__preview .chatmsg__botbadge{font:var(--body-b6);letter-spacing:.04em;color:var(--text-on-color);background:var(--surface-primary);border-radius:var(--radius-pill);padding:0 6px;font-weight:700}.pbotw__preview-body{font:var(--body-b2);color:var(--text-body);white-space:pre-wrap;margin:0}.pbotw__preview .chatmsg__mention{color:var(--text-primary);background:var(--surface-primary-subtle);border-radius:4px;padding:0 3px;font-weight:600}.pbotw__actions{justify-content:flex-end;align-items:center;gap:var(--space-s);margin-top:var(--space-m);display:flex}.pbotw__msg{font:var(--body-b6);color:var(--text-primary);margin-right:auto}.pbot-msgs{gap:var(--space-l);flex-direction:column;display:flex}.pbotw__ph{margin-right:6px}.cokr-counts{color:var(--text-caption)}.cokr-prog{align-items:center;gap:var(--space-s);min-width:120px;display:inline-flex}.cokr-prog__track{background:var(--surface-secondary);border-radius:var(--radius-pill);flex:1;min-width:64px;height:8px;overflow:hidden}.cokr-prog__fill{border-radius:var(--radius-pill);height:100%;display:block}.cokr-prog__n{font:var(--body-b6);color:var(--text-heading);text-align:right;width:34px;font-weight:700}.okrmap-wrap{border:var(--border-width-xs) solid var(--border-general);border-radius:var(--radius-xl);background:var(--surface-default);overflow:hidden}.okrmap-tools{align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);border-bottom:var(--border-width-xs) solid var(--border-general);background:var(--surface-secondary);display:flex}.okrmap-zoom{font:var(--body-b6);color:var(--text-heading);text-align:center;min-width:40px;font-weight:700}.okrmap-hint{font:var(--body-b6);color:var(--text-caption);margin-left:auto}.okrmap{cursor:grab;background:radial-gradient(circle, var(--border-general) 1px, transparent 1px) 0 0 / 22px 22px;height:620px;overflow:hidden}.okrmap:active{cursor:grabbing}.okrmap__canvas{transform-origin:0 0;padding:var(--space-l);will-change:transform;width:max-content}.okrtree,.okrtree__children{margin:0;padding:0;list-style:none}.okrtree{flex-direction:row;align-items:flex-start;gap:56px;display:flex}.okrtree__item{flex-direction:column;align-items:center;display:flex;position:relative}.okrtree__children{gap:var(--space-m);flex-direction:column;align-items:center;margin-top:34px;display:flex}.okrtree__children--row{flex-direction:row;align-items:flex-start;gap:44px}.okrmap__lines{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.okrmap__lines path{fill:none;stroke:var(--border-strong,#9aa3ad);stroke-width:2px}.okrtree{z-index:1}.okrnode{z-index:1;background:var(--surface-default);border:var(--border-width-xs) solid var(--border-general);border-top:3px solid var(--surface-primary);border-radius:var(--radius-l);width:320px;padding:var(--space-s) var(--space-m);cursor:default;position:relative;box-shadow:0 1px 3px #00000014}.okrnode--company{background:var(--surface-primary-subtle);border-color:var(--border-primary)}.okrnode__head{align-items:center;gap:var(--space-xs);display:flex}.okrnode__caret{cursor:pointer;color:var(--text-tertiary);background:0 0;border:none;padding:0 2px;font-size:11px}.okrnode__dot{border-radius:50%;flex:none;width:9px;height:9px}.okrnode__team{font:var(--body-b6);color:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.okrnode__conf{font:var(--body-b6);color:var(--text-on-color);border-radius:var(--radius-pill);padding:1px 8px;font-weight:700}.okrnode__title{font:var(--body-b4);color:var(--text-heading);margin-top:4px}.okrnode__krs{margin:var(--space-s) 0 0;padding:var(--space-s) 0 0;border-top:var(--border-width-xs) solid var(--border-general);flex-direction:column;gap:5px;list-style:none;display:flex}.okrnode__kr{align-items:center;gap:var(--space-xs);grid-template-columns:1fr 54px 30px;display:grid}.okrnode__krtitle{font:var(--body-b6);color:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.okrnode__krbar{background:var(--surface-secondary);border-radius:var(--radius-pill);height:6px;overflow:hidden}.okrnode__krbar span{border-radius:var(--radius-pill);height:100%;display:block}.okrnode__krn{font:var(--body-b6);color:var(--text-caption);text-align:right;font-weight:600}.cokr-tablewrap{padding:0;overflow:hidden}.cokr-table{border-collapse:collapse;width:100%}.cokr-table th{text-align:left;font:var(--body-b6);color:var(--text-tertiary);background:var(--surface-primary-subtle);padding:var(--space-s) var(--space-m);font-weight:700}.cokr-table td{padding:var(--space-s) var(--space-m);border-top:var(--border-width-xs) solid var(--border-general);font:var(--body-b5);color:var(--text-body);vertical-align:middle}.cokr-row--company{cursor:pointer}.cokr-row--company td{color:var(--text-heading);background:var(--surface-secondary);font-weight:600}.cokr-row--company:hover td{background:var(--surface-primary-subtle)}.cokr-row--child td:first-child{color:var(--text-body)}.cokr-caret{cursor:pointer;color:var(--text-tertiary);margin-right:var(--space-xs);background:0 0;border:none;font-size:11px}.cokr-tag{margin-right:var(--space-xs);border-radius:var(--radius-pill);background:var(--surface-primary);color:var(--text-on-color);font:var(--body-b6);padding:1px 8px;font-weight:700;display:inline-block}.cokr-muted{color:var(--text-caption)}.cokr-conf{font-weight:600}.cokr-unlinked{gap:var(--space-s);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.cokr-unrow{align-items:center;gap:var(--space-s);display:flex}.cokr-linksel{flex:none;min-width:220px}.okrtree__main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.okrtree__title{font:var(--body-b3);color:var(--text-heading)}.okrtree__node{font:var(--body-b6);color:var(--text-caption)}.okrtree__dot{border-radius:50%;flex:none;width:11px;height:11px}
