@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";.file-upload[data-v-a270440f]{border:1.5px dashed var(--line-strong);background:var(--glass-3);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;transition:border-color .2s,background .2s;display:flex}.file-upload[data-v-a270440f]:hover,.file-upload--drag[data-v-a270440f]{border-color:var(--blue);background:#4e91cd0f}.file-upload--uploading[data-v-a270440f]{pointer-events:none;opacity:.7}.file-upload__input[data-v-a270440f]{display:none}.file-upload__placeholder[data-v-a270440f]{color:var(--text-muted);align-items:center;gap:8px;font-size:.85rem;display:flex}.file-upload__progress[data-v-a270440f]{color:var(--blue);align-items:center;gap:8px;font-size:.85rem;display:flex}.file-upload__spinner[data-v-a270440f]{animation:1s linear infinite spin-a270440f}@keyframes spin-a270440f{to{transform:rotate(360deg)}}.file-upload__progress-text[data-v-a270440f]{font-variant-numeric:tabular-nums}.file-upload__error[data-v-a270440f]{color:var(--pink);margin:0;font-size:.8rem}.rich-editor[data-v-b96ae12d]{border:1px solid var(--field-border-strong);border-radius:.85rem;overflow:hidden}.rich-editor--readonly[data-v-b96ae12d]{border-color:#0000}.rich-editor__toolbar[data-v-b96ae12d]{background:var(--panel-header-bg);border-bottom:1px solid var(--field-border-strong);flex-wrap:wrap;gap:.25rem;padding:.4rem .5rem;display:flex}.rich-editor__btn[data-v-b96ae12d]{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:.5rem;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.rich-editor__btn[data-v-b96ae12d]:hover{background:var(--glass-1);color:var(--text)}.rich-editor__content[data-v-b96ae12d]{background:var(--surface-2);min-height:200px;color:var(--text);outline:none;padding:.85rem 1rem;font-size:.9rem;line-height:1.7}.rich-editor__content[data-v-b96ae12d]:empty:before{content:attr(data-placeholder);color:var(--text-soft);pointer-events:none}.rich-editor__content[data-v-b96ae12d] h1{color:var(--text);margin:.5rem 0;font-size:1.5rem;font-weight:700}.rich-editor__content[data-v-b96ae12d] h2{color:var(--text);margin:.5rem 0;font-size:1.25rem;font-weight:700}.rich-editor__content[data-v-b96ae12d] h3{color:var(--text);margin:.4rem 0;font-size:1.1rem;font-weight:600}.rich-editor__content[data-v-b96ae12d] p{margin:.3rem 0}.rich-editor__content[data-v-b96ae12d] ul,.rich-editor__content[data-v-b96ae12d] ol{margin:.4rem 0;padding-left:1.5rem}.rich-editor__content[data-v-b96ae12d] li{margin:.15rem 0}.rich-editor__content[data-v-b96ae12d] code{background:var(--glass-1);border-radius:.35rem;padding:.15rem .4rem;font-family:monospace;font-size:.85em}.rich-editor__content[data-v-b96ae12d] pre{border-radius:.5rem;margin:.5rem 0;overflow:hidden}.rich-editor__content[data-v-b96ae12d] pre code{border-radius:.5rem;padding:.75rem;display:block;overflow-x:auto}.rich-editor__content[data-v-b96ae12d] blockquote{border-left:3px solid var(--blue);color:var(--text-soft);margin:.5rem 0;padding-left:.85rem}.rich-editor__content[data-v-b96ae12d] a{color:var(--blue);text-decoration:underline}.rich-editor--compact .rich-editor__toolbar[data-v-b96ae12d]{padding:.25rem .4rem}.rich-editor--compact .rich-editor__btn[data-v-b96ae12d]{width:26px;height:26px}.rich-editor--compact .rich-editor__content[data-v-b96ae12d]{min-height:4.5rem;padding:.55rem .75rem;font-size:.85rem}.file-list[data-v-a056030b]{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.file-list__item[data-v-a056030b]{background:var(--glass-3);border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:.82rem;display:flex}.file-list__icon[data-v-a056030b]{color:var(--text-muted);flex-shrink:0}.file-list__name[data-v-a056030b]{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;text-decoration:none;overflow:hidden}.file-list__name[data-v-a056030b]:hover{color:var(--blue)}.file-list__size[data-v-a056030b]{color:var(--text-soft);flex-shrink:0;font-size:.75rem}.file-list__remove[data-v-a056030b]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:2px;display:flex}.file-list__remove[data-v-a056030b]:hover{color:var(--pink);background:#e72e601a}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f5f7fb;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:#000;--surface-1:#121212;--surface-2:#1c1c1c;--surface-3:#ffffff0a;--line:#ffffff14;--line-strong:#ffffff29;--text:#f5f7fb;--text-muted:#8b95a7;--text-soft:#667085;--blue:#4e91cd;--green:#64bb8d;--orange:#f5a04f;--pink:#e72e60;--shadow-lg:0 24px 60px #00000073;--shadow-blue:0 18px 46px #4e91cd29;--glass-1:#ffffff0d;--glass-2:#ffffff0a;--glass-3:#ffffff08;--sidebar-bg:linear-gradient(180deg, #121212f2, #0c0c0cfa);--topbar-bg:#000000bd;--active-link-text:#cfe8ff;--active-link-bg:linear-gradient(90deg, #4e91cd2e, #4e91cd0d);--cta-text:#071521;--avatar-bg:linear-gradient(135deg, #4e91cd47, #ffffff1f);--avatar-border:#ffffff14;--avatar-text:#d8ebff;--panel-header-bg:#ffffff05;--table-line:#ffffff0d;--table-row-hover:#ffffff06;--track-bg:#ffffff0d;--track-strong:#ffffff1f;--badge-blue-text:#cfe8ff;--badge-green-text:#d8f5e6;--badge-orange-text:#ffe0c0;--badge-pink-text:#ffd3e0;--badge-neutral-text:#edf2ff;--badge-neutral-bg:#ffffff1a;--badge-neutral-dot:#ffffffb3;--message-neutral-bg:#ffffff1a;--message-neutral-text:#eef2f7;--field-border:#ffffff0a;--field-border-strong:#ffffff0f;--soft-surface:#ffffff08;--soft-surface-strong:#ffffff0d;--soft-surface-blue:#4e91cd1a;--soft-surface-blue-strong:#4e91cd24;--soft-surface-orange:#f5a04f14;--soft-surface-pink:#e72e6024;--soft-panel-gradient:linear-gradient(180deg, #1c1c1cf2, #000000f2);--logo-surface:linear-gradient(135deg, #4e91cd29, #ffffff0a);--logo-border:#ffffff0f;--logo-text:#d7ebff;--muted-strong-text:#d4dbe7;--btn-height:2.5rem;--btn-radius:.6rem;--btn-font-size:.82rem;--btn-padding:0 1rem;--radius-sm:.45rem;--radius-md:.65rem;--radius-lg:.9rem;--radius-xl:1.1rem;--radius-full:999px;--transition-fast:.15s ease-out;--transition-normal:.2s ease-out;--gantt-bar-text:#09141d;--sidebar-brand-text:#04101b;--z-topbar:50;--z-dropdown:60;--z-fab:70;--z-overlay:100;--z-modal:110;--z-toast:120;background:radial-gradient(circle at 100% 0,#4e91cd29,#0000 32%),radial-gradient(circle at 10% 20%,#e72e601c,#0000 26%),#000;font-family:Manrope,sans-serif;font-weight:500;line-height:1.5}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#16202d;--bg:#f4f7fb;--surface-1:#fff;--surface-2:#eef3f8;--surface-3:#0f172a0a;--line:#0f172a14;--line-strong:#0f172a29;--text:#16202d;--text-muted:#536173;--text-soft:#7b8798;--shadow-lg:0 18px 46px #22354e1a;--shadow-blue:0 18px 40px #4e91cd1f;--glass-1:#0f172a0d;--glass-2:#0f172a0a;--glass-3:#0f172a06;--sidebar-bg:linear-gradient(180deg, #fffffff0, #f4f7fbfa);--topbar-bg:#f4f7fbd1;--active-link-text:#184d7a;--active-link-bg:linear-gradient(90deg, #4e91cd29, #4e91cd08);--cta-text:#fff;--avatar-bg:linear-gradient(135deg, #4e91cd2e, #ffffffeb);--avatar-border:#0f172a14;--avatar-text:#184d7a;--panel-header-bg:#0f172a06;--table-line:#0f172a12;--table-row-hover:#4e91cd0e;--track-bg:#0f172a0f;--track-strong:#0f172a24;--badge-blue-text:#184d7a;--badge-green-text:#1d6b46;--badge-orange-text:#9a5a17;--badge-pink-text:#9e2648;--badge-neutral-text:#49576a;--badge-neutral-bg:#0f172a14;--badge-neutral-dot:#0f172a6b;--message-neutral-bg:#0f172a14;--message-neutral-text:#49576a;--field-border:#0f172a14;--field-border-strong:#0f172a1f;--soft-surface:#0f172a09;--soft-surface-strong:#0f172a0f;--soft-surface-blue:#4e91cd14;--soft-surface-blue-strong:#4e91cd1f;--soft-surface-orange:#f5a04f1c;--soft-surface-pink:#e72e601c;--soft-panel-gradient:linear-gradient(180deg, #fffffffa, #eef3f8fa);--logo-surface:linear-gradient(135deg, #4e91cd1f, #ffffffeb);--logo-border:#0f172a14;--logo-text:#184d7a;--muted-strong-text:#465468;--gantt-bar-text:#fff;--sidebar-brand-text:#184d7a;background:radial-gradient(circle at 100% 0,#4e91cd1f,#0000 32%),radial-gradient(circle at 10% 20%,#e72e6014,#0000 26%),#f4f7fb}*,:before,:after{box-sizing:border-box}html,body,#app{min-height:100%}body{background:var(--bg);min-width:320px;color:var(--text);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:2px}a{color:inherit;text-decoration:none}#app{min-height:100vh}.app-shell{grid-template-columns:17rem minmax(0,1fr);min-height:100vh;display:grid}.app-shell__main{min-width:0}.app-shell__content{padding:2rem}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--line);flex-direction:column;gap:1.5rem;height:100vh;padding:1.5rem 1rem;display:flex;position:sticky;top:0}.sidebar__brand{align-items:center;gap:.9rem;padding:.5rem;display:flex}.sidebar__brand strong{letter-spacing:-.02em;font-size:1.05rem;display:block}.sidebar__brand p{color:var(--text-soft);text-transform:uppercase;letter-spacing:.18em;margin:.15rem 0 0;font-size:.72rem}.sidebar__brand-icon{background:linear-gradient(135deg, var(--blue), #6eb4f0);width:2.6rem;height:2.6rem;color:var(--sidebar-brand-text);box-shadow:var(--shadow-blue);border-radius:.8rem;place-items:center;font-weight:800;display:grid}.sidebar__nav{gap:.25rem;display:grid}.sidebar__link{color:var(--text-muted);border-radius:1rem;align-items:center;gap:.85rem;padding:.95rem 1rem;transition:background-color .2s,color .2s,transform .2s;display:flex}.sidebar__link:hover{color:var(--text);background:var(--glass-2);transform:translate(2px)}.sidebar__link--active{color:var(--active-link-text);background:var(--active-link-bg);box-shadow:inset 3px 0 0 var(--blue)}.sidebar__cta{background:linear-gradient(135deg, var(--blue), #76baf0);color:var(--cta-text);border-radius:1rem;justify-content:center;align-items:center;gap:.55rem;margin-top:auto;padding:.95rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.sidebar__fab{display:none}.topbar{z-index:10;background:var(--topbar-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);align-items:center;gap:1rem;padding:1rem 2rem;display:flex;position:sticky;top:0}.topbar__icon--desktop{display:grid}@media (width<=960px){.topbar__icon--desktop{display:none}}.topbar__search-wrap{flex:1;min-width:0;position:relative}.topbar__search{background:var(--glass-1);width:100%;height:3rem;color:var(--text-muted);border-radius:1rem;align-items:center;gap:.75rem;padding:0 1rem;display:flex}.topbar__search input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.topbar__search input::placeholder{color:var(--text-soft)}.topbar__search-overlay{z-index:90;position:fixed;inset:0}.topbar__search-dropdown{z-index:91;background:var(--surface-1);border:1px solid var(--line-strong);max-height:400px;box-shadow:var(--shadow-lg);border-radius:.75rem;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.topbar__search-section{padding:2px 0}.topbar__search-section+.topbar__search-section{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.topbar__search-label{color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;margin:0;padding:4px 8px;font-size:.65rem;font-weight:700}.topbar__search-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.45rem;align-items:center;gap:8px;padding:6px 8px;font-size:.82rem;display:flex}.topbar__search-item:hover,.topbar__search-item--active{background:#4e91cd1a}.topbar__search-item strong{flex-shrink:0;font-weight:600}.topbar__search-item span{color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.topbar__search-empty{text-align:center;color:var(--text-soft);padding:16px;font-size:.82rem}.topbar__actions{align-items:center;gap:.85rem;display:flex}.topbar__role-switch{background:var(--glass-1);height:2.75rem;color:var(--text-muted);border-radius:999px;align-items:center;gap:.65rem;padding:0 .95rem;display:flex}.topbar__role-switch span{letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;font-weight:800}.topbar__role-switch select{color:var(--text);background:0 0;border:0;outline:0}.topbar__icon{background:var(--glass-2);width:2.75rem;height:2.75rem;color:var(--text-muted);border-radius:999px;place-items:center;text-decoration:none;display:grid;position:relative}.topbar__icon:hover{color:var(--text);background:var(--glass-1)}.topbar__dot{background:var(--pink);width:.45rem;height:.45rem;box-shadow:0 0 0 3px var(--bg);border-radius:999px;position:absolute;top:.7rem;right:.75rem}.topbar__profile{border-left:1px solid var(--line);align-items:center;gap:.85rem;margin-left:.5rem;padding-left:1rem;display:flex}.topbar__profile strong{font-size:.95rem;display:block}.topbar__profile p{color:var(--text-soft);margin:.2rem 0 0;font-size:.72rem}.topbar__avatar{background:var(--avatar-bg);border:1px solid var(--avatar-border);width:2.7rem;height:2.7rem;color:var(--avatar-text);border-radius:999px;place-items:center;font-size:.85rem;font-weight:700;display:grid}.topbar__avatar-img{object-fit:cover;border:1px solid var(--avatar-border);border-radius:999px;width:2.7rem;height:2.7rem}.dashboard{gap:1.5rem;max-width:1280px;margin:0 auto;display:grid}.customer-dashboard__hero{justify-content:space-between;align-items:end;gap:1.25rem;padding:1.5rem;display:flex}.customer-dashboard__hero h1{letter-spacing:-.04em;margin:0 0 .4rem;font-size:clamp(2rem,2.8vw,3rem);line-height:1.05}.customer-dashboard__hero p:last-child{color:var(--text-muted);margin:0}.customer-dashboard__hero-meta{background:var(--glass-2);border-radius:1rem;min-width:13rem;padding:1rem 1.1rem}.customer-dashboard__hero-meta span{color:var(--text-soft);text-transform:uppercase;letter-spacing:.14em;margin-bottom:.35rem;font-size:.76rem;display:block}.customer-dashboard__notice .placeholder{min-height:100%}.auth-page{grid-template-columns:minmax(0,1fr) minmax(22rem,30rem);align-items:center;gap:1.5rem;max-width:1180px;min-height:100vh;margin:0 auto;padding:2rem;display:grid}.auth-page__hero h1{letter-spacing:-.05em;margin:0 0 .5rem;font-size:clamp(2.4rem,4vw,4rem);line-height:1.02}.auth-page__hero p:last-child{max-width:34rem;color:var(--text-muted);margin:0;font-size:1rem}.auth-card{padding:1.4rem}.auth-card__header h2{margin:0 0 .35rem;font-size:1.5rem}.auth-card__header p{color:var(--text-muted);margin:0}.auth-card__form{gap:1rem;margin-top:1.2rem;display:grid}.auth-card__form label{gap:.45rem;display:grid}.auth-card__form span{color:var(--text-soft);font-size:.78rem;font-weight:700}.auth-card__form input,.auth-card__form select{border:1px solid var(--field-border-strong);background:var(--surface-2);width:100%;color:var(--text);border-radius:.85rem;padding:.9rem 1rem}.auth-card__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.2rem;display:flex}.auth-card__actions>.customers-page__primary,.auth-card__actions>.btn--primary,.auth-card__actions>.customers-page__refresh,.auth-card__actions>.btn--secondary{flex:1 1 0;min-width:10rem}.auth-card__actions>.customers-page__primary:disabled,.auth-card__actions>.btn--primary:disabled{opacity:.5;cursor:not-allowed}.auth-card__form span em{color:var(--badge-pink-text,#e74c3c);font-style:normal}.auth-card__field--error input{border-color:var(--badge-pink-text,#e74c3c)!important}.auth-card__error{color:var(--badge-pink-text,#e74c3c);font-size:.75rem}.auth-card__pending{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1rem;font-size:.9rem;line-height:1.6;display:flex}.auth-card__pending-icon{background:var(--badge-green-bg,#e6f9ee);width:3rem;height:3rem;color:var(--badge-green-text,#1a8a4a);border-radius:50%;justify-content:center;align-items:center;font-size:1.4rem;font-weight:700;display:flex}.auth-card__server-error{background:color-mix(in srgb, var(--badge-pink-text,#e74c3c) 10%, transparent);color:var(--badge-pink-text,#e74c3c);border-radius:.6rem;margin:0;padding:.75rem 1rem;font-size:.85rem}.panel__eyebrow,.placeholder__eyebrow{color:var(--text-soft);text-transform:uppercase;letter-spacing:.22em;margin:0 0 .65rem;font-size:.78rem}.placeholder h1{letter-spacing:-.04em;margin:0;font-size:clamp(2.2rem,3vw,3.45rem);line-height:1.05}.placeholder p{color:var(--text-muted);margin:0;font-size:1rem}.dashboard__metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;display:grid}.metric-card,.panel,.placeholder{background:linear-gradient(180deg, var(--glass-3), #fff0), var(--surface-1);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:1.1rem}.metric-card{padding:1.15rem}.metric-card__header{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.45rem;display:flex}.metric-card__icon{background:var(--glass-1);border-radius:.75rem;place-items:center;width:2.55rem;height:2.55rem;display:grid}.metric-card__meta{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.3rem .55rem;font-size:.68rem;font-weight:800}.metric-card__value{letter-spacing:-.05em;margin-bottom:.35rem;font-size:clamp(1.9rem,3vw,2.55rem);line-height:1;display:block}.metric-card__label{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:700}.metric-card--blue .metric-card__icon,.metric-card--blue .metric-card__meta{color:var(--blue);background:#4e91cd1c}.metric-card--green .metric-card__icon,.metric-card--green .metric-card__meta{color:var(--green);background:#64bb8d1c}.metric-card--orange .metric-card__icon,.metric-card--orange .metric-card__meta{color:var(--orange);background:#f5a04f1c}.metric-card--pink .metric-card__icon,.metric-card--pink .metric-card__meta{color:var(--pink);background:#e72e601c}.metric-card--neutral .metric-card__icon,.metric-card--neutral .metric-card__meta{color:var(--text-muted);background:var(--glass-1)}.dashboard__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem;display:grid}.dashboard__row--wide{grid-template-columns:.92fr 1.28fr}.panel{overflow:hidden}.panel__header{background:var(--panel-header-bg);border-bottom:1px solid var(--table-line);justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.35rem;display:flex}.panel__header--stack{align-items:start}.panel__header h2{letter-spacing:-.02em;margin:0;font-size:1.15rem}.panel__link,.panel__filter{color:var(--blue);background:#4e91cd1f;border-radius:.75rem;align-items:center;padding:.55rem .85rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.panel__link,.panel__filter,.customers-page__refresh,.btn--secondary,.project-detail__edit{transition:background-color .2s,border-color .2s,color .2s,transform .2s}.panel__link:hover,.panel__filter:hover,.customers-page__refresh:hover,.btn--secondary:hover,.project-detail__edit:hover{transform:translateY(-1px)}.panel__counter{color:var(--badge-pink-text);letter-spacing:.08em;background:#e72e6024;border-radius:999px;padding:.35rem .6rem;font-size:.68rem;font-weight:800}.timeline{gap:1.35rem;padding:1.35rem;display:grid}.timeline__item{grid-template-columns:3.7rem minmax(0,1fr);gap:1rem;display:grid}.timeline__time{color:var(--text-muted);flex-direction:column;align-items:center;gap:.45rem;font-size:.82rem;display:flex}.timeline__time strong{color:var(--text-muted)}.timeline__time span{background:var(--track-strong);flex:1;width:1px}.timeline__content{border-left:4px solid #0000;border-radius:.9rem;padding:.9rem .95rem .9rem 1rem;text-decoration:none;display:block}.timeline__content strong{margin-bottom:.3rem;display:block}.timeline__content p{color:var(--text-muted);margin:0;font-size:.88rem}.timeline__content--blue{border-color:var(--blue);background:#4e91cd14}.timeline__content--green{border-color:var(--green);background:#64bb8d14}.timeline__content--orange{border-color:var(--orange);background:#f5a04f14}.timeline__content--pink{border-color:var(--pink);background:#e72e6014}.table-wrap{overflow-x:auto}.request-table{border-collapse:collapse;width:100%}.request-table th,.request-table td{text-align:left;padding:1rem 1.5rem}.request-table th{color:var(--text-soft);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:800}.request-table thead tr,.request-table tbody tr{border-bottom:1px solid var(--table-line)}.request-table tbody tr:hover{background:var(--table-row-hover)}.mono{color:var(--text-muted);font-family:SFMono-Regular,Consolas,monospace}.badge{border-radius:999px;align-items:center;gap:.45rem;padding:.45rem .7rem;font-size:.8rem;font-weight:700;display:inline-flex}.badge__dot{border-radius:999px;width:.45rem;height:.45rem}.badge__dot--pulse{animation:1.8s infinite pulse}.badge--blue{color:var(--badge-blue-text);background:#4e91cd21}.badge--blue .badge__dot{background:var(--blue)}.badge--green{color:var(--badge-green-text);background:#64bb8d21}.badge--green .badge__dot{background:var(--green)}.badge--orange{color:var(--badge-orange-text);background:#f5a04f21}.badge--orange .badge__dot{background:var(--orange)}.badge--pink{color:var(--badge-pink-text);background:#e72e6021}.badge--pink .badge__dot{background:var(--pink)}.badge--neutral{color:var(--badge-neutral-text);background:var(--badge-neutral-bg)}.badge--neutral .badge__dot{background:var(--badge-neutral-dot)}.workload-list{gap:1.2rem;padding:1.35rem;display:grid}.workload-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.9rem 1rem;display:grid}.workload-item__meta{align-items:center;gap:.9rem;display:flex}.workload-item__avatar{background:var(--avatar-bg);width:2.45rem;height:2.45rem;color:var(--avatar-text);border-radius:.8rem;place-items:center;font-weight:800;display:grid}.workload-item__meta strong{display:block}.workload-item__meta p{color:var(--text-soft);margin:.18rem 0 0;font-size:.82rem}.workload-item__util{color:var(--text-muted);font-family:SFMono-Regular,Consolas,monospace;font-size:.82rem}.workload-item__bar{background:var(--track-bg);border-radius:999px;grid-column:1/-1;height:.6rem;display:flex;overflow:hidden}.workload-item__active{background:var(--blue)}.workload-item__review{background:var(--track-strong)}.legend{color:var(--text-soft);letter-spacing:.12em;text-transform:uppercase;gap:1.2rem;padding:0 1.35rem 1.35rem;font-size:.72rem;font-weight:800;display:flex}.legend span{align-items:center;gap:.45rem;display:inline-flex}.legend__dot{border-radius:999px;width:.5rem;height:.5rem}.legend__dot--blue{background:var(--blue)}.legend__dot--neutral{background:var(--track-strong)}.message-list{display:grid}.message-item{border-top:1px solid var(--table-line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:1rem 1.25rem;display:grid}.message-item:first-child{border-top:0}.message-item:hover{background:var(--table-row-hover)}.message-item__token,.message-item__count{border-radius:999px;place-items:center;font-weight:800;display:grid}.message-item__token{width:2.5rem;height:2.5rem}.message-item__token--blue,.message-item__count--blue{color:var(--blue);background:#4e91cd24}.message-item__token--orange,.message-item__count--orange{color:var(--orange);background:#f5a04f24}.message-item__token--green,.message-item__count--green{color:var(--green);background:#64bb8d24}.message-item__token--pink,.message-item__count--pink{color:var(--pink);background:#e72e6024}.message-item__token--neutral,.message-item__count--neutral{background:var(--message-neutral-bg);color:var(--message-neutral-text)}.message-item__body{min-width:0}.message-item__title{justify-content:space-between;align-items:center;gap:1rem;display:flex}.message-item__title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.message-item__title span,.message-item__body p{color:var(--text-soft);font-size:.82rem}.message-item__body p{text-overflow:ellipsis;white-space:nowrap;margin:.22rem 0 0;overflow:hidden}.message-item__count{width:1.7rem;height:1.7rem;font-size:.72rem}.placeholder{gap:1rem;padding:2.2rem;display:grid}.customers-page{gap:1.5rem;max-width:1440px;margin:0 auto;display:grid}.customers-page__header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.customers-page__header h1{letter-spacing:-.04em;margin:0 0 .35rem;font-size:2.2rem;line-height:1.05}.customers-page__header p{color:var(--text-muted);margin:0}.customers-page__primary,.customers-page__refresh,.btn--primary,.btn--secondary{min-height:var(--btn-height);padding:var(--btn-padding);border-radius:var(--btn-radius);font-size:var(--btn-font-size);white-space:nowrap;justify-content:center;align-items:center;gap:.5rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.customers-page__primary,.btn--primary{background:linear-gradient(135deg, var(--blue), #69ade7);color:var(--cta-text);box-shadow:var(--shadow-blue)}.btn--danger{background:var(--pink);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.5rem 1rem;font-weight:600}.btn--danger:hover{filter:brightness(.9)}.error-text{color:var(--pink)}.alert-banner{background:var(--orange-bg,#fff3e0);color:var(--orange,#e65100);border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.alert-banner .btn--secondary{margin-left:auto}.customers-page__summary{grid-template-columns:1.9fr .8fr;gap:1rem;display:grid}.customers-page__filters{grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(9rem,.5fr)) auto;align-items:end;gap:1rem;padding:1.25rem;display:grid}.customers-page__field{gap:.45rem;display:grid}.customers-page__field span{color:var(--text-soft);text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:800}.customers-page__control,.customers-page__field select{border:1px solid var(--field-border);background:var(--surface-2);height:2.9rem;color:var(--text-muted);border-radius:.85rem;align-items:center;gap:.55rem;padding:0 .95rem;display:flex}.customers-page__control input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.customers-page__control input::placeholder{color:var(--text-soft)}.customers-page__field select{appearance:none;outline:0}.customers-page__refresh,.btn--secondary{border:1px solid var(--field-border-strong);background:var(--surface-2);color:var(--text-muted);box-shadow:none}.customers-page__stats{padding:1.25rem;position:relative;overflow:hidden}.customers-page__stats:after{content:"";background:radial-gradient(circle,#64bb8d2e,#0000 66%);border-radius:50%;width:7rem;height:7rem;position:absolute;top:-1.75rem;right:-1.5rem}.customers-page__stats-label{color:var(--text-soft);letter-spacing:.16em;margin:0 0 .5rem;font-size:.68rem;font-weight:800}.customers-page__stats strong{letter-spacing:-.05em;color:var(--green);font-size:2rem;font-weight:900;display:block}.customers-page__stats strong span{color:var(--text-muted);font-size:.9rem;font-weight:600}.customers-page__stats-trend{color:var(--text-muted);margin:.7rem 0 0;font-size:.8rem}.customer-table{overflow:hidden}.customer-table__company{align-items:center;gap:.85rem;display:flex}.customer-table__company strong{display:block}.customer-table__company p{color:var(--text-soft);margin:.18rem 0 0;font-size:.74rem}.customer-table__logo{background:var(--logo-surface);border:1px solid var(--logo-border);width:2.5rem;height:2.5rem;color:var(--logo-text);border-radius:.8rem;place-items:center;font-weight:800;display:grid}.customer-table__chips{align-items:center;display:flex}.customer-table__chip{border:2px solid var(--surface-1);background:var(--surface-2);border-radius:999px;place-items:center;width:1.75rem;height:1.75rem;margin-left:-.3rem;font-size:.65rem;font-weight:800;display:grid}.customer-table__chip:first-child{margin-left:0}.customer-table__chip--blue{color:var(--blue)}.customer-table__chip--green{color:var(--green)}.customer-table__chip--orange{color:var(--orange)}.customer-table__chip--pink{color:var(--pink)}.customer-table__chip--neutral{color:var(--text-muted)}.customer-table__empty,.customer-table__time{color:var(--text-soft);font-size:.8rem}.customer-table__pending{align-items:center;gap:.55rem;display:flex}.customer-table__pending-value--blue{color:var(--blue)}.customer-table__pending-value--green{color:var(--green)}.customer-table__pending-value--orange{color:var(--orange)}.customer-table__pending-value--pink{color:var(--pink)}.customer-table__pending-value--neutral{color:var(--text-muted)}.customer-table__pending-track{background:var(--track-bg);border-radius:999px;width:3.1rem;height:.4rem;display:block;overflow:hidden}.customer-table__pending-fill{height:100%;display:block}.customer-table__pending-fill--blue{background:var(--blue)}.customer-table__pending-fill--green{background:var(--green)}.customer-table__pending-fill--orange{background:var(--orange)}.customer-table__pending-fill--pink{background:var(--pink)}.customer-table__pending-fill--neutral{background:var(--track-strong)}.customer-table__pm{color:var(--muted-strong-text)}.customer-table__company a,.customer-table__more a{color:inherit;text-decoration:none}.customer-table__more{text-align:right}.customer-table__more button,.customer-table__more a{width:2rem;height:2rem;color:var(--text-soft);background:0 0;border-radius:999px;place-items:center;display:inline-grid}.customer-table__footer{border-top:1px solid var(--table-line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.35rem;display:flex}.customer-table__footer p{color:var(--text-soft);margin:0;font-size:.76rem}.customer-table__footer strong{color:var(--text)}.customer-table__pagination{align-items:center;gap:.45rem;display:flex}.customer-table__pagination button{border:1px solid var(--field-border-strong);background:var(--surface-2);min-width:2rem;height:2rem;color:var(--text-muted);border-radius:.55rem;padding:0 .55rem}.customer-table__pagination button.is-active{background:var(--blue);color:#fff;border-color:#0000}.customer-table__pagination button:disabled{opacity:.35}.customer-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.customer-action{background:var(--soft-panel-gradient);border:1px solid var(--table-line);border-radius:1rem;gap:.9rem;padding:1.35rem;display:grid}.customer-action__icon{border-radius:999px;place-items:center;width:2.5rem;height:2.5rem;display:grid}.customer-action strong{font-size:.98rem}.customer-action p{color:var(--text-muted);margin:0;font-size:.82rem}.customer-action a,.customer-action button{color:inherit;letter-spacing:.1em;background:0 0;justify-self:start;padding:0;font-size:.72rem;font-weight:800;text-decoration:none}.customer-action--blue{border-color:#4e91cd33}.customer-action--blue .customer-action__icon,.customer-action--blue a,.customer-action--blue button{color:var(--blue);background:#4e91cd1f}.customer-action--green{border-color:#64bb8d33}.customer-action--green .customer-action__icon,.customer-action--green a,.customer-action--green button{color:var(--green);background:#64bb8d1f}.customer-action--orange{border-color:#f5a04f33}.customer-action--orange .customer-action__icon,.customer-action--orange a,.customer-action--orange button{color:var(--orange);background:#f5a04f1f}.projects-page{gap:1.5rem;max-width:1440px;margin:0 auto;display:grid}.projects-page__filters{grid-template-columns:.7fr .7fr 1.6fr;gap:1rem;padding:1.25rem;display:grid}.projects-page__search{min-width:0}.projects-page__metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.projects-page__metric{border-left:4px solid #0000;padding:1rem 1.1rem}.projects-page__metric p{color:var(--text-muted);margin:0 0 .45rem;font-size:.78rem}.projects-page__metric strong{font-size:1.85rem;font-weight:900}.projects-page__metric--blue{border-left-color:var(--blue)}.projects-page__metric--green{border-left-color:var(--green)}.projects-page__metric--orange{border-left-color:var(--orange)}.projects-page__metric--pink{border-left-color:var(--pink)}.projects-table__name strong{display:block}.projects-table__name a:hover strong{color:var(--blue)}.projects-table__name p,.projects-table__period{color:var(--text-soft);font-size:.75rem}.projects-table__name p{margin:.2rem 0 0;font-family:SFMono-Regular,Consolas,monospace}.projects-table__progress{align-items:center;gap:.7rem;display:flex}.projects-table__progress-track{background:var(--track-bg);border-radius:999px;flex:1;height:.42rem;display:block;overflow:hidden}.projects-table__progress-fill{height:100%;display:block}.projects-table__progress-fill--blue{background:var(--blue)}.projects-table__progress-fill--green{background:var(--green)}.projects-table__progress-fill--orange{background:var(--orange)}.projects-table__progress-fill--pink{background:var(--pink)}.projects-table__progress-fill--neutral{background:var(--track-strong)}.projects-table__progress-value--blue{color:var(--blue)}.projects-table__progress-value--green{color:var(--green)}.projects-table__progress-value--orange{color:var(--orange)}.projects-table__progress-value--pink{color:var(--pink)}.projects-table__progress-value--neutral{color:var(--text-muted)}.projects-table__pending{text-align:center}.projects-table__pending-badge{border-radius:.45rem;justify-content:center;align-items:center;min-width:1.9rem;padding:.2rem .45rem;font-size:.8rem;font-weight:800;display:inline-flex}.projects-table__pending-badge--orange{color:var(--orange);background:#f5a04f1f}.projects-table__pending-badge--pink{color:var(--pink);background:#e72e601f}.projects-table__pending-badge--neutral{color:var(--text-soft);background:0 0}.projects-page__footer{grid-template-columns:2fr 1fr;gap:1rem;padding-bottom:1rem;display:grid}.projects-page__milestone{gap:1.1rem;padding:1.35rem;display:grid}.projects-page__milestone h3,.projects-page__alert h3{margin:0;font-size:1.05rem}.projects-page__milestone-list{gap:1rem;display:grid}.projects-page__milestone-row{color:var(--text-muted);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.45rem;font-size:.9rem;display:flex}.projects-page__milestone-row strong.is-green{color:var(--green)}.projects-page__milestone-row strong.is-orange{color:var(--orange)}.projects-page__bar{background:var(--track-bg);border-radius:999px;width:100%;height:.42rem;overflow:hidden}.projects-page__bar-fill{height:100%;display:block}.projects-page__bar-fill--green{background:var(--green)}.projects-page__bar-fill--orange{background:var(--orange)}.projects-page__milestone button,.projects-page__action-link{color:var(--blue);background:0 0;justify-self:start;padding:0;font-size:.76rem;font-weight:800;text-decoration:none}.projects-page__alert{border:1px solid var(--field-border-strong);background:linear-gradient(135deg,#e72e6029,#f5a04f29);border-radius:1rem;gap:.8rem;padding:1.35rem;display:grid;position:relative;overflow:hidden}.projects-page__alert p{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.6}.projects-page__alert-icon{color:var(--pink)}.projects-page__alert button{background:var(--surface-1);color:var(--text);border-radius:.75rem;padding:.8rem 1rem;font-weight:800}.project-detail{grid-template-columns:16rem minmax(0,1fr);gap:1.5rem;max-width:1480px;margin:0 auto;display:grid}.project-detail__rail{align-self:start;gap:1.4rem;padding:1.35rem;display:grid;position:sticky;top:5.5rem}.project-detail__rail-header{align-items:center;gap:.85rem;display:flex}.project-detail__rail-icon,.project-detail__member-avatar{width:2.5rem;height:2.5rem;color:var(--avatar-text);background:#4e91cd1f;border:1px solid #4e91cd38;border-radius:.8rem;place-items:center;font-weight:800;display:grid}.project-detail__rail-header strong{display:block}.project-detail__rail-header p{color:var(--text-soft);letter-spacing:.14em;margin:.15rem 0 0;font-size:.68rem}.project-detail__rail-nav,.project-detail__rail-actions{gap:.4rem;display:grid}.project-detail__rail-link,.project-detail__rail-actions a,.project-detail__rail-actions button{color:var(--text-muted);text-align:left;background:0 0;border-radius:.85rem;align-items:center;padding:.85rem .95rem;text-decoration:none;display:flex}.project-detail__rail-link--active{color:var(--blue);background:var(--soft-surface-blue);box-shadow:inset 3px 0 0 var(--blue)}.project-detail__rail-actions a:first-child,.project-detail__rail-actions button{border:1px solid var(--field-border-strong);color:var(--text);background:var(--soft-surface);justify-content:center;font-weight:700}.project-detail__delete{color:var(--pink);background:#e72e6014;border:1px solid #e72e6038;font-weight:800}.project-detail__delete:hover{background:#e72e6024}.project-detail__delete:disabled{opacity:.55}.project-detail__body{gap:1.5rem;display:grid}.project-detail__breadcrumbs{color:var(--text-soft);align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.76rem;display:flex}.project-detail__heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.project-detail__title-row{align-items:center;gap:.8rem;margin-bottom:.45rem;display:flex}.project-detail__title-row h1{letter-spacing:-.04em;margin:0;font-size:clamp(2rem,3vw,3rem);line-height:1.05}.project-detail__heading p{color:var(--text-muted);margin:0}.project-detail__edit{border:1px solid var(--field-border-strong);background:var(--soft-surface);color:var(--text);border-radius:.8rem;justify-content:center;align-items:center;padding:.85rem 1rem;font-weight:700;text-decoration:none;display:inline-flex}.project-detail__summary,.project-detail__content{grid-template-columns:1.65fr .85fr;gap:1rem;display:grid}.project-detail__overview,.project-detail__status,.project-detail__members,.project-detail__channels{padding:1.35rem}.project-detail__overview-grid{border-bottom:1px solid var(--field-border-strong);grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1.25rem;padding-bottom:1.25rem;display:grid}.project-detail__overview-grid span{color:var(--text-soft);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.35rem;font-size:.68rem;font-weight:800;display:block}.project-detail__overview-grid strong{font-size:1rem}.project-detail__progress{gap:.55rem;display:grid}.project-detail__description{color:var(--text-muted);margin:0;line-height:1.7}.project-detail__status-head,.project-detail__members header,.project-detail__channels header,.project-detail__documents header,.project-detail__activities header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.project-detail__status-head h3,.project-detail__members h3,.project-detail__channels h3,.project-detail__documents h3,.project-detail__activities h3{margin:0;font-size:1rem}.project-detail__status-head span,.project-detail__channels header a,.project-detail__channels header button,.project-detail__documents header a,.project-detail__documents header button,.project-detail__activities header a,.project-detail__activities header button{color:var(--text-soft);letter-spacing:.14em;font-size:.72rem;font-weight:800;text-decoration:none}.project-detail__status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.project-detail__status-grid div{background:var(--soft-surface);border:1px solid var(--table-line);border-radius:.85rem;padding:.95rem}.project-detail__status-grid span{color:var(--text-soft);margin-bottom:.35rem;font-size:.75rem;display:block}.project-detail__status-grid strong{font-size:1.6rem;font-weight:900}.project-detail__status-grid .is-blue{color:var(--blue)}.project-detail__status-grid .is-green{color:var(--green)}.project-detail__status-grid .is-orange{color:var(--orange)}.project-detail__status-grid .is-pink{color:var(--pink)}.project-detail__status footer{border-top:1px solid var(--field-border-strong);color:var(--text-soft);justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;font-size:.76rem;display:flex}.project-detail__status footer strong{color:var(--green)}.project-detail__tabs{border-bottom:1px solid var(--field-border-strong);gap:1.4rem;padding-bottom:.8rem;display:flex}.project-detail__tabs a,.project-detail__tabs button{color:var(--text-muted);background:0 0;padding:0 0 .65rem;font-weight:700;text-decoration:none}.project-detail__tabs a.is-active,.project-detail__tabs button.is-active{color:var(--blue);box-shadow:inset 0 -2px 0 var(--blue)}.project-detail__member{align-items:center;gap:.8rem;display:flex}.project-detail__member strong{display:block}.project-detail__member p,.project-detail__activity{color:var(--text-soft);font-size:.76rem}.project-detail__members footer{text-align:center;padding-top:1rem}.project-detail__members footer a,.project-detail__members footer button{color:var(--text-muted);background:0 0;font-size:.78rem;font-weight:800;text-decoration:none}.project-detail__channel-list{gap:.7rem;display:grid}.project-detail__channel{color:inherit;border-radius:.8rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.8rem;text-decoration:none;display:grid}.project-detail__channel:hover{background:var(--soft-surface)}.project-detail__channel-token{background:var(--soft-surface-strong);width:2.2rem;height:2.2rem;color:var(--text-muted);border-radius:.7rem;place-items:center;font-weight:800;display:grid}.project-detail__channel strong{display:block}.project-detail__channel p{color:var(--text-soft);margin:.15rem 0 0;font-size:.72rem}.project-detail__channel-count{background:var(--pink);color:#fff;border-radius:999px;place-items:center;min-width:1.5rem;height:1.5rem;padding:0 .35rem;font-size:.68rem;font-weight:800;display:inline-grid}.project-detail__documents,.project-detail__activities{grid-column:1/-1;padding:1.35rem}.project-detail__document-list,.project-detail__activity-list{gap:.8rem;display:grid}.project-detail__document,.project-detail__activity-item{background:var(--soft-surface);border:1px solid var(--table-line);border-radius:.85rem;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem .95rem;display:flex}.project-detail__document strong,.project-detail__activity-top strong{display:block}.project-detail__document p,.project-detail__activity-content p{color:var(--text-soft);margin:.18rem 0 0;font-size:.76rem}.project-detail__document-meta{color:var(--text-soft);justify-items:end;gap:.45rem;font-size:.72rem;display:grid}.project-detail__activity-item{align-items:flex-start}.project-detail__activity-marker{background:var(--blue);border-radius:999px;flex:none;width:.8rem;height:.8rem;margin-top:.3rem}.project-detail__activity-marker--blue{background:var(--blue)}.project-detail__activity-marker--green{background:var(--green)}.project-detail__activity-marker--orange{background:var(--orange)}.project-detail__activity-marker--pink{background:var(--pink)}.project-detail__activity-content{flex:1}.project-detail__activity-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.project-detail__activity-top span,.project-detail__activity-content small{color:var(--text-soft);font-size:.72rem}.project-detail__empty{justify-items:start;gap:.6rem;padding:1.5rem;display:grid}.project-detail__new-channel{background:var(--soft-surface-blue);width:100%;color:var(--blue);border:1px solid #4e91cd40;border-radius:.85rem;justify-content:center;align-items:center;margin-top:1rem;padding:.95rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.kanban-page{gap:1.5rem;max-width:1600px;margin:0 auto;display:grid}.kanban-page__header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.kanban-page__header h1{letter-spacing:-.04em;margin:0 0 .8rem;font-size:2.2rem;line-height:1.05}.kanban-page__modes{background:var(--glass-2);border-radius:.8rem;gap:.25rem;padding:.25rem;display:inline-flex}.kanban-page__modes button{color:var(--text-muted);background:0 0;border-radius:.6rem;padding:.55rem .9rem;font-weight:700}.kanban-page__modes button.is-active{color:var(--blue);background:#ffffff0f}.kanban-page__filters{grid-template-columns:repeat(3,minmax(0,.75fr)) minmax(0,1.6fr);gap:1rem;padding:1rem 1.15rem;display:grid}.kanban-page__search{min-width:0}.kanban-page__filter-toggle,.kanban-page__column-tabs,.kanban-page__mobile-cards{display:none}.kanban-board{grid-auto-columns:18rem;grid-auto-flow:column;gap:1rem;padding-bottom:.5rem;display:grid;overflow-x:auto}.kanban-column{background:var(--soft-surface);border:1px solid #0000;border-radius:1rem;grid-template-rows:auto 1fr;min-height:40rem;transition:border-color .16s,box-shadow .16s;display:grid}.kanban-column--drop-target{border-color:color-mix(in srgb, var(--color-accent) 38%, var(--field-border-strong));box-shadow:0 0 0 1px color-mix(in srgb, var(--color-accent) 14%, transparent)}.kanban-column--orange{background:#f5a04f0a}.kanban-column__header{padding:1rem 1rem .5rem}.kanban-column__header div{align-items:center;gap:.45rem;display:flex}.kanban-column__header h3{margin:0;font-size:.96rem}.kanban-column__count{background:var(--glass-1);color:var(--text-soft);border-radius:999px;padding:.2rem .45rem;font-size:.72rem;font-weight:800}.kanban-column__dot{border-radius:999px;width:.45rem;height:.45rem}.kanban-column__dot--blue{background:var(--blue)}.kanban-column__dot--green{background:var(--green)}.kanban-column__dot--orange{background:var(--orange)}.kanban-column__dot--pink{background:var(--pink)}.kanban-column__dot--neutral{background:var(--badge-neutral-dot)}.kanban-column__cards{align-content:start;gap:.8rem;padding:0 .8rem .8rem;display:grid;overflow-y:auto}.kanban-column__empty{color:var(--text-soft);text-align:center;place-items:center;padding:2rem 1rem;display:grid}.kanban-column__drop-hint{color:var(--text-soft);text-align:center;margin:0 .8rem .8rem;font-size:.76rem}.kanban-card{background:var(--surface-2);border:1px solid var(--field-border-strong);border-radius:.9rem;gap:.9rem;padding:1rem;transition:transform .16s,opacity .16s,box-shadow .16s;display:grid}.kanban-card--draggable{cursor:grab}.kanban-card--dragging{opacity:.45;cursor:grabbing}.kanban-card--updating{opacity:.72;pointer-events:none}.kanban-card--blue{border-color:#4e91cd33}.kanban-card--green{border-color:#64bb8d33}.kanban-card--orange{border-color:#f5a04f33}.kanban-card--pink{border-color:#e72e6033}.kanban-card--dimmed{opacity:.6}.kanban-card__top,.kanban-card__footer{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.kanban-card__id{background:var(--glass-2);color:var(--text-soft);border-radius:.45rem;padding:.18rem .45rem;font-size:.68rem;font-weight:800}.kanban-card__badge{border-radius:.45rem;padding:.18rem .45rem;font-size:.68rem;font-weight:800}.kanban-card__badge--blue{color:var(--blue);background:#4e91cd1a}.kanban-card__badge--green{color:var(--green);background:#64bb8d1a}.kanban-card__badge--orange{color:var(--orange);background:#f5a04f1a}.kanban-card__badge--pink{color:var(--pink);background:#e72e601a}.kanban-card__badge--neutral{color:var(--text-muted);background:var(--badge-neutral-bg)}.kanban-card strong{font-size:.92rem;line-height:1.5}.kanban-card__reason{background:var(--soft-surface-orange);color:var(--orange);border-radius:.6rem;margin:0;padding:.55rem .7rem;font-size:.72rem}.kanban-card__avatars{display:flex}.kanban-card__avatars span{border:2px solid var(--surface-2);width:1.7rem;height:1.7rem;color:var(--avatar-text);background:#4e91cd26;border-radius:999px;place-items:center;margin-left:-.2rem;font-size:.65rem;font-weight:800;display:grid}.kanban-card__avatars span:first-child{margin-left:0}.kanban-card__meta{color:var(--text-soft);align-items:center;gap:.65rem;font-size:.72rem;display:flex}.kanban-card__meta .is-blue{color:var(--blue)}.kanban-card__meta .is-green{color:var(--green)}.kanban-card__meta .is-orange{color:var(--orange)}.kanban-card__meta .is-pink{color:var(--pink)}.kanban-card__msg-tag{color:var(--blue);cursor:pointer;background:#4e91cd14;border:1px solid #4e91cd33;border-radius:.5rem;align-self:start;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.65rem;font-weight:700;display:inline-flex}.kanban-card__msg-tag:hover{background:#4e91cd29}.kanban-card__msg-preview{background:var(--soft-surface);border:1px solid var(--field-border-strong);border-radius:.6rem;padding:.6rem .7rem}.kanban-card__msg-preview-head{align-items:baseline;gap:.4rem;margin-bottom:.25rem;display:flex}.kanban-card__msg-preview-head strong{font-size:.72rem!important}.kanban-card__msg-preview-head span{color:var(--text-soft);font-size:.62rem}.kanban-card__msg-preview p{color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.72rem;line-height:1.45;display:-webkit-box;overflow:hidden}.kanban-card__msg-preview-link{color:var(--blue);margin-top:.35rem;font-size:.65rem;font-weight:700;text-decoration:none;display:inline-block}.kanban-card__msg-preview-link:hover{text-decoration:underline}.source-message-card{border-top:1px solid var(--field-border-strong);margin-top:1rem;padding-top:1rem}.source-message-card__label{color:var(--text-soft);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .5rem;font-size:.7rem;font-weight:800}.source-message-card__body{background:var(--soft-surface);border-left:3px solid var(--blue);border-radius:.7rem;padding:.7rem .85rem}.source-message-card__body strong{font-size:.82rem}.source-message-card__body span{color:var(--text-soft);margin-left:.4rem;font-size:.68rem}.source-message-card__body p{color:var(--text-muted);margin:.3rem 0 0;font-size:.82rem;line-height:1.5}.source-message-card__link{color:var(--blue);margin-top:.5rem;font-size:.76rem;font-weight:700;text-decoration:none;display:inline-block}.source-message-card__link:hover{text-decoration:underline}.messages-page{grid-template-columns:22rem minmax(0,1fr) 18rem;gap:1rem;max-width:1600px;height:calc(100vh - 9rem);min-height:calc(100vh - 9rem);margin:0 auto;display:grid}.messages-page__threads,.messages-page__chat,.messages-page__info{min-height:0;padding:1rem}.messages-page__back{background:var(--glass-1);width:2.4rem;height:2.4rem;color:var(--text);border-radius:.7rem;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:none}@media (width<=960px){.messages-page__back{display:inline-flex}}.messages-page__threads header,.messages-page__chat-head{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.messages-page__threads h2,.messages-page__chat-head h2,.messages-page__info h3{margin:0;font-size:1rem}.messages-page__jump,.messages-page__composer input,.settings-page__form input{border:1px solid var(--field-border-strong);background:var(--surface-2);width:100%;color:var(--text);border-radius:.55rem;padding:.6rem .75rem;font-size:.82rem}.messages-page__jump{margin-bottom:.5rem}.messages-page__group{margin-top:.15rem;padding-left:.25rem}.messages-page__group>p{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;margin:.5rem 0 .25rem;padding:.2rem .5rem;font-size:.62rem;font-weight:700}.messages-page__thread{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.6rem;align-items:flex-start;gap:.65rem;margin-bottom:2px;padding:.6rem .65rem;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.messages-page__thread:hover{background:var(--glass-3,#ffffff0d);border-color:var(--line,#ffffff0f)}.messages-page__thread.is-active{box-shadow:inset 3px 0 0 var(--blue);background:#4e91cd1a;border-color:#4e91cd40}.messages-page__thread-avatar,.settings-page__avatar{width:2.25rem;height:2.25rem;color:var(--blue);background:linear-gradient(135deg,#4e91cd2e,#4e91cd14);border-radius:.55rem;flex-shrink:0;place-items:center;margin-top:.1rem;font-size:.7rem;font-weight:800;display:grid}.messages-page__thread.is-active .messages-page__thread-avatar{background:linear-gradient(135deg,#4e91cd4d,#4e91cd26)}.messages-page__thread-body{flex:1;min-width:0}.messages-page__thread-body strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:700;display:block;overflow:hidden}.messages-page__thread.is-active .messages-page__thread-body strong{color:var(--blue)}.messages-page__thread-body p,.messages-page__chat-head p,.messages-page__info-card p,.notifications-page p,.settings-page__profile p{color:var(--text-soft);margin:.2rem 0 0;font-size:.76rem;line-height:1.35}.messages-page__thread-body p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.messages-page__unread{background:var(--blue);color:#fff;border-radius:999px;flex-shrink:0;place-items:center;min-width:1.3rem;height:1.3rem;margin-top:.2rem;font-size:.62rem;font-weight:800;display:grid;box-shadow:0 1px 4px #4e91cd59}.messages-page__chat{grid-template-rows:auto 1fr auto;min-height:0;display:grid}.messages-page__feed{-webkit-overflow-scrolling:touch;align-content:start;gap:.8rem;min-height:0;padding:.5rem 0;display:grid;overflow-y:auto}.messages-page__bubble{background:var(--surface-2);border-radius:.9rem;max-width:75%;padding:.55rem .85rem}.messages-page__bubble.is-mine{background:var(--soft-surface-blue-strong);margin-left:auto}.messages-page__bubble.is-highlighted{animation:2.5s ease-out msg-highlight}@keyframes msg-highlight{0%,20%{box-shadow:0 0 0 2px var(--blue), 0 0 12px #4e91cd4d;background:#4e91cd1f}to{box-shadow:none;background:var(--surface-2)}}.messages-page__bubble-meta{align-items:baseline;gap:.4rem;margin-bottom:.15rem;display:flex}.messages-page__bubble-meta strong{font-size:.8rem;font-weight:700}.messages-page__bubble-meta time{color:var(--text-soft);font-size:.62rem;font-weight:500}.messages-page__quick-request{color:var(--blue);white-space:nowrap;background:#4e91cd1a;border:1px solid #4e91cd40;border-radius:.45rem;margin-left:auto;padding:.15rem .45rem;font-size:.6rem;font-weight:800;line-height:1.4;display:none}.messages-page__quick-request:disabled{opacity:.5}.messages-page__bubble:hover .messages-page__quick-request{display:inline-flex}@media (width<=960px){.messages-page__quick-request{display:inline-flex}}.messages-page__linked-request{background:var(--soft-surface);border:1px solid var(--field-border);color:var(--text-muted);border-radius:.45rem;align-items:center;gap:.35rem;margin-top:.2rem;padding:.15rem .5rem;font-size:.62rem;font-weight:700;text-decoration:none;display:inline-flex}.messages-page__linked-request:hover{background:var(--soft-surface-strong);color:var(--text)}.messages-page__linked-dot{background:var(--text-soft);border-radius:999px;width:.35rem;height:.35rem}.messages-page__linked-dot.is-blue{background:var(--blue)}.messages-page__linked-dot.is-green{background:var(--green)}.messages-page__linked-dot.is-orange{background:var(--orange)}.messages-page__linked-dot.is-pink{background:var(--pink)}.quick-request-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.quick-request-dialog{background:var(--surface-1);border:1px solid var(--line-strong);width:min(26rem,100vw - 2rem);box-shadow:var(--shadow-lg);border-radius:1rem;padding:1.1rem}.quick-request-dialog__head{justify-content:space-between;align-items:center;margin-bottom:.85rem;display:flex}.quick-request-dialog__head strong{font-size:1rem}.quick-request-dialog__head button{background:var(--glass-1);width:2rem;height:2rem;color:var(--text-muted);border-radius:.6rem;place-items:center;font-size:.9rem;display:grid}.quick-request-dialog__preview{border-left:3px solid var(--blue);background:var(--soft-surface);border-radius:.65rem;margin-bottom:.85rem;padding:.6rem .75rem}.quick-request-dialog__preview strong{margin-bottom:.15rem;font-size:.78rem;display:block}.quick-request-dialog__preview p{color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.78rem;line-height:1.5;display:-webkit-box;overflow:hidden}.quick-request-dialog__field{gap:.35rem;margin-bottom:.85rem;display:grid}.quick-request-dialog__field span{color:var(--text-soft);font-size:.72rem;font-weight:700}.quick-request-dialog__field input{border:1px solid var(--field-border-strong);background:var(--surface-2);width:100%;color:var(--text);border-radius:.75rem;padding:.65rem .85rem;font-size:.88rem}.quick-request-dialog__actions{justify-content:flex-end;gap:.5rem;display:flex}.quick-request-dialog__cancel,.quick-request-dialog__submit{border-radius:.7rem;padding:.55rem 1rem;font-size:.82rem;font-weight:700}.quick-request-dialog__cancel{background:var(--glass-1);color:var(--text-muted)}.quick-request-dialog__submit{background:linear-gradient(135deg, var(--blue), #69ade7);color:var(--cta-text)}.quick-request-dialog__submit:disabled{opacity:.45;cursor:not-allowed}@media (width<=720px){.quick-request-dialog__field input{font-size:1rem}}.messages-page__bubble p{color:var(--text);margin:0;font-size:.84rem;line-height:1.5}.messages-page__composer{border-top:1px solid var(--line);flex-direction:column;gap:0;padding-top:.5rem;display:flex}.messages-page__input-row{align-items:center;gap:.5rem;display:flex}.messages-page__composer-wrap{flex:auto;min-width:0;position:relative}.messages-page__composer-wrap input{border-radius:.65rem;width:100%;height:2.6rem;padding:0 .85rem;font-size:.88rem}.messages-page__send{background:linear-gradient(135deg, var(--blue), #69ade7);width:2.6rem;height:2.6rem;color:var(--cta-text);white-space:nowrap;border:0;border-radius:.65rem;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:800;display:inline-flex}.messages-page__send:disabled{opacity:.4;cursor:not-allowed}.messages-page__mention-dropdown{-webkit-overflow-scrolling:touch;background:var(--surface-1);border:1px solid var(--line-strong);max-height:14rem;box-shadow:var(--shadow-lg);z-index:20;border-radius:.75rem;padding:.35rem;position:absolute;bottom:calc(100% + .4rem);left:0;right:0;overflow-y:auto}.messages-page__mention-item{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.6rem;padding:.55rem .7rem;display:flex}.messages-page__mention-item:hover,.messages-page__mention-item.is-selected{background:#4e91cd1f}.messages-page__mention-avatar{width:1.6rem;height:1.6rem;color:var(--blue);background:#4e91cd24;border-radius:50%;flex-shrink:0;place-items:center;font-size:.68rem;font-weight:800;display:grid}.messages-page__mention-avatar.is-client{color:var(--green);background:#64bb8d24}.messages-page__mention-name{font-size:.84rem;font-weight:600}.messages-page__mention-role{color:var(--text-soft);margin-left:auto;font-size:.72rem}.mention{color:var(--blue);background:#4e91cd1a;border-radius:.25rem;padding:.05rem .2rem;font-weight:600}.messages-page__composer button,.schedule-page__nav button,.schedule-page__filters select,.settings-page__stamp{background:var(--surface-2);color:var(--text);border:1px solid var(--field-border-strong);border-radius:.85rem;padding:.8rem 1rem}.messages-page__info{align-self:start;max-height:100%;overflow-y:auto}.messages-page__threads{overflow-y:auto}.messages-page__info-card{background:var(--soft-surface);border-radius:.9rem;margin-top:.85rem;padding:.95rem}.messages-page__info-list{gap:.7rem;margin-top:1rem;display:grid}.messages-page__info-list div,.settings-page__side-list div{justify-content:space-between;align-items:center;gap:1rem;display:flex}.messages-page__info-list span,.settings-page__side-list span{color:var(--text-soft);font-size:.8rem}.messages-page__client-group{margin-top:.5rem}.messages-page__client-group+.messages-page__client-group{border-top:1px solid var(--line);margin-top:.35rem;padding-top:.5rem}.messages-page__group-header{width:100%;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:.5rem;align-items:center;gap:.45rem;padding:.45rem .55rem;font-size:.8rem;font-weight:700;transition:background .12s;display:flex}.messages-page__group-header:hover{background:#ffffff0a}.messages-page__group-chevron{color:var(--text-soft);font-size:.6rem;transition:transform .15s}.messages-page__group-chevron.is-collapsed{transform:rotate(-90deg)}.messages-page__connection{color:var(--text-soft);flex-shrink:0;align-items:center;gap:.4rem;font-size:.72rem;display:flex}.messages-page__connection-dot{background:var(--text-soft);border-radius:50%;width:.5rem;height:.5rem;transition:background .3s}.messages-page__connection.is-connected .messages-page__connection-dot{background:var(--green);box-shadow:0 0 6px #64bb8d80}.messages-page__connection.is-connected{color:var(--green)}.messages-page__connection.is-disconnected .messages-page__connection-dot{background:var(--pink);box-shadow:0 0 6px #e72e6080}.messages-page__connection.is-disconnected{color:var(--pink)}.messages-page__connection.is-checking .messages-page__connection-dot{background:var(--orange);animation:1.2s infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.messages-page__loading{text-align:center;color:var(--text-soft);padding:.75rem;font-size:.8rem}.messages-page__participants{margin-top:1.2rem}.messages-page__participants h4{align-items:center;gap:.5rem;margin:0 0 .8rem;font-size:.9rem;display:flex}.messages-page__participant-count{background:var(--surface-2);min-width:1.3rem;height:1.3rem;color:var(--text-muted);border-radius:999px;place-items:center;font-size:.68rem;font-weight:800;display:inline-grid}.messages-page__participant-section{margin-bottom:.8rem}.messages-page__participant-label{color:var(--text-soft);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .4rem;font-size:.7rem;font-weight:800}.messages-page__participant{align-items:center;gap:.6rem;padding:.4rem 0;display:flex}.messages-page__participant-avatar{width:1.8rem;height:1.8rem;color:var(--blue);background:#4e91cd24;border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid}.messages-page__participant-avatar.is-client{color:var(--green);background:#64bb8d24}.messages-page__participant-info{flex-direction:column;min-width:0;display:flex}.messages-page__participant-info strong{font-size:.82rem;font-weight:600}.messages-page__participant-info span{color:var(--text-soft);font-size:.72rem}.messages-page__msg-actions{align-items:center;gap:.2rem;margin-left:auto;display:none}.messages-page__bubble:hover .messages-page__msg-actions{display:inline-flex}.messages-page__msg-actions button{cursor:pointer;opacity:.6;background:0 0;border:0;border-radius:.35rem;padding:.1rem .3rem;font-size:.72rem;transition:opacity .12s}.messages-page__msg-actions button:hover{opacity:1;background:var(--glass-1)}.messages-page__msg-edit{align-items:center;gap:.4rem;margin-top:.3rem;display:flex}.messages-page__msg-edit input{border:1px solid var(--field-border-strong);background:var(--surface-2);color:var(--text);border-radius:.5rem;flex:1;padding:.4rem .65rem;font-size:.82rem}.messages-page__msg-edit button{cursor:pointer;border:0;border-radius:.45rem;padding:.35rem .7rem;font-size:.75rem;font-weight:700}.messages-page__msg-edit button:first-of-type{background:linear-gradient(135deg, var(--blue), #69ade7);color:var(--cta-text)}.messages-page__msg-edit button:last-of-type{background:var(--glass-1);color:var(--text-muted)}.messages-page__edited-badge{color:var(--text-soft);font-size:.6rem;font-style:italic}.messages-page__deleted-text{color:var(--text-soft);margin:0;font-size:.8rem;font-style:italic}.messages-page__bubble.is-deleted{opacity:.5;background:var(--glass-1)}.messages-page__reaction-bar{gap:.15rem;margin-top:.25rem;display:none}.messages-page__bubble:hover .messages-page__reaction-bar{display:flex}.messages-page__reaction-btn{cursor:pointer;opacity:.5;background:0 0;border:0;border-radius:.3rem;padding:.1rem .25rem;font-size:.72rem;transition:opacity .12s,transform .12s}.messages-page__reaction-btn:hover{opacity:1;background:var(--glass-1);transform:scale(1.25)}.messages-page__reaction-list{flex-wrap:wrap;gap:.3rem;margin-top:.3rem;display:flex}.messages-page__reaction-chip{background:var(--glass-3);border:1px solid var(--field-border);cursor:pointer;border-radius:999px;align-items:center;gap:.2rem;padding:.15rem .45rem;font-size:.7rem;transition:background .12s;display:inline-flex}.messages-page__reaction-chip:hover{border-color:var(--blue);background:#4e91cd26}.messages-page__typing-indicator{color:var(--text-soft);padding:.3rem .85rem;font-size:.75rem;font-style:italic;animation:1.5s ease-in-out infinite typing-pulse}@keyframes typing-pulse{0%,to{opacity:1}50%{opacity:.5}}.messages-page__new-message-badge{background:linear-gradient(135deg, var(--blue), #69ade7);color:var(--cta-text);cursor:pointer;z-index:10;border:0;border-radius:999px;align-self:center;padding:.4rem 1rem;font-size:.78rem;font-weight:700;transition:transform .15s;position:sticky;bottom:.5rem;box-shadow:0 2px 8px #4e91cd66}.messages-page__new-message-badge:hover{transform:scale(1.05)}.messages-page__presence-dot{background:var(--text-soft);border:2px solid var(--surface-1);border-radius:50%;width:.55rem;height:.55rem;transition:background .3s;position:absolute;bottom:-1px;right:-1px}.messages-page__presence-dot.is-online{background:var(--green);box-shadow:0 0 4px #64bb8d80}.messages-page__search-toggle{width:2rem;height:2rem;color:var(--text-soft);cursor:pointer;background:0 0;border:0;border-radius:.5rem;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex}.messages-page__search-toggle:hover,.messages-page__search-toggle.is-active{color:var(--blue);background:#4e91cd1f}.messages-page__chat-head-actions{flex-shrink:0;align-items:center;gap:.5rem;margin-left:auto;display:flex}.messages-page__search-bar{align-items:center;gap:.4rem;padding:.4rem 0;display:flex}.messages-page__search-bar input{border:1px solid var(--field-border-strong);background:var(--surface-2);color:var(--text);border-radius:.5rem;flex:1;padding:.45rem .7rem;font-size:.82rem}.messages-page__search-bar button{background:var(--glass-1);color:var(--text);cursor:pointer;border:0;border-radius:.45rem;padding:.4rem .7rem;font-size:.78rem;font-weight:600}.messages-page__search-results{border:1px solid var(--line);background:var(--surface-1);border-radius:.65rem;max-height:16rem;margin-bottom:.3rem;overflow-y:auto}.messages-page__search-item{border-bottom:1px solid var(--line);cursor:pointer;padding:.55rem .75rem;transition:background .12s}.messages-page__search-item:last-child{border-bottom:0}.messages-page__search-item:hover{background:#4e91cd14}.messages-page__search-item strong{font-size:.78rem}.messages-page__search-item time{color:var(--text-soft);margin-left:.4rem;font-size:.65rem}.messages-page__search-item p{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin:.15rem 0 0;font-size:.78rem;overflow:hidden}.messages-page__search-empty{text-align:center;color:var(--text-soft);padding:1rem;font-size:.82rem}.messages-page__lightbox{z-index:300;-webkit-backdrop-filter:blur(6px);background:#000c;place-items:center;display:grid;position:fixed;inset:0}.messages-page__lightbox-close{color:#fff;cursor:pointer;z-index:1;background:#ffffff26;border:0;border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;display:grid;position:absolute;top:1rem;right:1rem}.messages-page__lightbox-close:hover{background:#ffffff40}.messages-page__lightbox-img{object-fit:contain;border-radius:.5rem;max-width:90vw;max-height:90vh;box-shadow:0 4px 30px #00000080}.schedule-page,.notifications-page,.settings-page{gap:1.5rem;max-width:1440px;margin:0 auto;display:grid}.schedule-page__toolbar{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.schedule-page__nav,.schedule-page__filters{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.schedule-page__calendar{overflow:hidden}.schedule-page__days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.schedule-page__week{grid-template-columns:repeat(7,minmax(0,1fr));display:grid;position:relative}.schedule-page__days span{text-align:center;color:var(--text-soft);letter-spacing:.14em;padding:.85rem;font-size:.72rem;font-weight:800}.schedule-page .schedule-page__day-header--sun{color:var(--pink)}.schedule-page .schedule-page__day-header--sat{color:var(--blue)}.schedule-page__cell{border-top:1px solid var(--table-line);border-right:1px solid var(--table-line);min-height:8.5rem;padding:.75rem}.schedule-page__cell strong{font-size:.82rem}.schedule-page__cell--sun strong{color:var(--pink)}.schedule-page__cell--sat strong{color:var(--blue)}.schedule-page__cell--today{background:#4e91cd0a}.schedule-page__today-badge{background:var(--blue);width:1.65rem;height:1.65rem;color:var(--cta-text);border-radius:999px;place-items:center;font-size:.78rem;line-height:1;display:inline-grid}.schedule-page__count,.schedule-page__loading{color:var(--text-soft);font-size:.78rem}.schedule-page__events{gap:.3rem;display:grid}.schedule-page__event{border-radius:.5rem;align-items:center;gap:.35rem;padding:.3rem .5rem;font-size:.72rem;line-height:1.35;text-decoration:none;display:flex}.schedule-page__event-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.schedule-page__event-time{opacity:.7;white-space:nowrap;font-size:.65rem}.schedule-page__event-span{white-space:nowrap;border-radius:.3rem;flex-shrink:0;padding:.05rem .32rem;font-size:.6rem;font-weight:700}.schedule-page__event--blue{color:var(--blue);background:#4e91cd24}.schedule-page__event--green{color:var(--green);background:#64bb8d24}.schedule-page__event--orange{color:var(--orange);background:#f5a04f24}.schedule-page__event--pink{color:var(--pink);background:#e72e6024}.schedule-page__span-bar{z-index:1;white-space:nowrap;text-overflow:ellipsis;pointer-events:auto;box-sizing:border-box;border-radius:.35rem;height:20px;padding:0 .5rem;font-size:.68rem;font-weight:600;line-height:20px;text-decoration:none;position:absolute;overflow:hidden}.schedule-page__span-bar:hover{filter:brightness(.92)}.schedule-page__span-bar--blue{color:var(--blue);border-left:3px solid var(--blue);background:#4e91cd47}.schedule-page__span-bar--green{color:var(--green);border-left:3px solid var(--green);background:#64bb8d47}.schedule-page__span-bar--orange{color:var(--orange);border-left:3px solid var(--orange);background:#f5a04f47}.schedule-page__span-bar--pink{color:var(--pink);border-left:3px solid var(--pink);background:#e72e6047}.notifications-page__title{align-items:center;gap:.65rem;display:flex}.notifications-page__title h1{margin:0}.notifications-page__title span{background:var(--pink);color:#fff;border-radius:999px;place-items:center;min-width:1.6rem;height:1.6rem;padding:0 .4rem;font-size:.72rem;font-weight:800;display:inline-grid}.notifications-page__layout{grid-template-columns:1.4fr .7fr;gap:1rem;display:grid}.notifications-page__tabs{border-bottom:1px solid var(--field-border-strong);gap:1.4rem;margin-bottom:1rem;padding-bottom:.85rem;display:flex}.notifications-page__tabs button{color:var(--text-muted);background:0 0;font-weight:700}.notifications-page__tabs .is-active{color:var(--blue)}.notifications-page__list{gap:.8rem;display:grid}.notifications-page__item{border-left:4px solid #0000;padding:1rem 1.1rem}.notifications-page__item--blue{border-left-color:var(--blue)}.notifications-page__item--green{border-left-color:var(--green)}.notifications-page__item--orange{border-left-color:var(--orange)}.notifications-page__item--pink{border-left-color:var(--pink)}.notifications-page__item-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.4rem;display:flex}.notifications-page__item-head span,.notifications-page__item-head time{color:var(--text-soft);font-size:.72rem;font-weight:800}.notifications-page__item strong{margin-bottom:.3rem;display:block}.notifications-page__summary{align-self:start;padding:1.1rem}.notifications-page__summary h3{margin:0 0 .9rem}.notifications-page__summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.notifications-page__summary-grid div{background:var(--soft-surface);border-radius:.8rem;padding:.95rem}.notifications-page__summary-grid span{color:var(--text-soft);margin-bottom:.3rem;font-size:.75rem;display:block}.notifications-page__summary-grid .is-pink{color:var(--pink)}.notifications-page__summary-grid .is-blue{color:var(--blue)}.notifications-page__summary-grid .is-green{color:var(--green)}.notifications-page__summary-grid .is-orange{color:var(--orange)}.settings-page__stamp{color:var(--orange);font-size:.78rem;font-weight:800}.settings-page__tabs{border-bottom:1px solid var(--field-border-strong);gap:1.4rem;padding-bottom:.85rem;display:flex}.settings-page__tabs a,.settings-page__tabs button{color:var(--text-muted);background:0 0;font-weight:700;text-decoration:none}.settings-page__tabs .is-active{color:var(--blue)}.settings-page__layout{grid-template-columns:1.45fr .75fr;gap:1rem;display:grid}.settings-page__profile,.settings-page__side{padding:1.25rem}.settings-page__profile header h2,.settings-page__side h3{margin:0 0 .3rem}.settings-page__profile-body{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:1.25rem;margin-top:1rem;display:grid}.settings-page__avatar{border-radius:1rem;width:5rem;height:5rem}.settings-page__form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.settings-page__form label{gap:.45rem;display:grid}.settings-page__form span{color:var(--text-soft);font-size:.78rem;font-weight:700}.settings-page__side-list{gap:.8rem;margin-top:1rem;display:grid}.org-loading{color:var(--text-soft);padding:1.5rem 0;font-size:.82rem}.org-team-list{gap:0;margin-top:1rem;display:grid}.org-team-row{border-bottom:1px solid var(--table-line);justify-content:space-between;align-items:center;padding:.75rem .25rem;display:flex}.org-team-row:last-child{border-bottom:none}.org-team-info{align-items:center;gap:.75rem;display:flex}.org-team-info strong{font-size:.88rem}.org-team-count{color:var(--text-soft);background:var(--glass-1);border-radius:.4rem;padding:.15rem .55rem;font-size:.78rem;font-weight:600}.org-team-delete{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--field-border-strong);cursor:pointer;border-radius:.85rem;padding:.5rem .75rem;font-size:.78rem}.org-team-delete:hover{color:var(--pink);border-color:var(--pink)}.org-team-delete--confirm{color:#fff;background:var(--pink);border-color:var(--pink)}.org-team-add{border-top:1px solid var(--table-line);gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.org-team-add input{border:1px solid var(--field-border-strong);background:var(--surface-2);color:var(--text);border-radius:.85rem;flex:1;padding:.7rem 1rem}.org-stats{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem;display:grid}.org-stat-card{background:var(--glass-1);border-radius:.65rem;gap:.3rem;padding:.85rem;display:grid}.org-stat-card span{color:var(--text-soft);font-size:.72rem;font-weight:600}.org-stat-card strong{color:var(--text);font-size:1.3rem;font-weight:800}.org-stat-card small{margin-left:.15rem;font-size:.7rem;font-weight:600}.pw-change-form{gap:.85rem;margin-top:1rem;display:grid}.pw-change-form label{gap:.45rem;display:grid}.pw-change-form span{color:var(--text-soft);font-size:.78rem;font-weight:700}.pw-change-form input{border:1px solid var(--field-border-strong);background:var(--surface-2);width:100%;color:var(--text);border-radius:.85rem;padding:.75rem 1rem}.pw-change-msg{color:var(--orange);margin:0;font-size:.78rem;font-weight:600}.pw-change-btn{background:var(--glass-1);color:var(--text);border:1px solid var(--field-border-strong);cursor:pointer;border-radius:.85rem;margin-top:.25rem;padding:.7rem 1rem;font-size:.82rem;font-weight:700}.pw-change-btn:hover{background:var(--field-border)}.pw-change-btn:disabled{opacity:.5;cursor:not-allowed}.members-header{justify-content:space-between;align-items:start;margin-bottom:1.25rem;display:flex}.members-header h2{margin:0 0 .3rem}.members-header p{color:var(--text-soft);margin:0;font-size:.8rem}.members-summary{color:var(--text-soft);white-space:nowrap;gap:1rem;font-size:.78rem;font-weight:600;display:flex}.members-summary strong{margin-left:.2rem}.members-summary--active strong{color:var(--green)}.members-summary--pending strong{color:var(--orange)}.members-list{gap:0;display:grid}.member-card{border-bottom:1px solid var(--table-line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:.85rem;padding:.85rem .25rem;display:grid}.member-card:last-child{border-bottom:none}.member-card__avatar{background:var(--glass-1);width:2.5rem;height:2.5rem;color:var(--text-soft);border-radius:.65rem;place-items:center;font-size:.78rem;font-weight:800;display:grid}.member-card__info{gap:.2rem;min-width:0;display:grid}.member-card__name-row{align-items:center;gap:.5rem;display:flex}.member-card__name-row strong{font-size:.88rem}.member-card__email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.member-card__meta{color:var(--text-muted);font-size:.75rem}.member-card__controls{align-items:center;gap:.4rem;display:flex}.member-card__select{border:1px solid var(--field-border-strong);background:var(--surface-2);color:var(--text);border-radius:.85rem;min-width:6.5rem;padding:.5rem .75rem;font-size:.82rem}.member-card__actions{justify-content:flex-end;align-items:center;gap:.65rem;min-width:10rem;display:flex}.member-card__projects{color:var(--text-soft);white-space:nowrap;font-size:.78rem;font-weight:600}.member-card__projects strong{color:var(--text);margin-right:.15rem}.member-card__toggle{border:1px solid var(--field-border-strong);background:var(--surface-2);color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:.85rem;padding:.5rem .75rem;font-size:.78rem;font-weight:600}.member-card__toggle:hover{border-color:var(--green);color:var(--green)}.member-card__toggle--inactive:hover{border-color:var(--pink);color:var(--pink)}.form-shell{gap:1.25rem;max-width:1440px;margin:0 auto;display:grid}.form-shell__header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.form-shell__title-row{align-items:center;gap:.65rem;margin-bottom:.35rem;display:flex}.form-shell__title-row h1,.schedule-page h1,.notifications-page h1,.settings-page h1{letter-spacing:-.04em;margin:0;font-size:2.2rem;line-height:1.05}.form-shell__header p{color:var(--text-muted);margin:0}.form-shell__badge{color:var(--blue);letter-spacing:.08em;background:#4e91cd1f;border-radius:999px;padding:.35rem .55rem;font-size:.7rem;font-weight:800}.form-shell__actions{flex-wrap:wrap;gap:.75rem;display:flex}.form-shell__content{grid-template-columns:1.45fr .7fr;gap:1rem;display:grid}.form-shell__main{gap:1rem;display:grid}.form-shell__side{align-self:start;padding:1.15rem}.form-shell__side h3{margin:0 0 .8rem}.form-section{padding:1.2rem}.form-section__header h2{margin:0 0 .25rem;font-size:1.1rem}.form-section__header p{color:var(--text-soft);margin:0;font-size:.84rem}.form-section__body{margin-top:1rem}.app-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.app-form-grid label{gap:.45rem;display:grid}.app-form-grid span{color:var(--text-soft);font-size:.78rem;font-weight:700}.app-form-grid input,.app-form-grid select,.app-form-grid textarea{border:1px solid var(--field-border-strong);background:var(--surface-2);width:100%;color:var(--text);resize:vertical;border-radius:.85rem;padding:.9rem 1rem}.app-form-grid__wide{grid-column:1/-1}.app-form-grid .form-field-error{color:var(--pink);margin-top:-.15rem;font-size:.75rem}.app-form-grid label em{color:var(--pink);font-style:normal}.form-side-list{gap:.8rem;display:grid}.form-side-list div{justify-content:space-between;align-items:center;gap:1rem;display:flex}.form-side-list span{color:var(--text-soft);font-size:.82rem}.form-side-list select{border:1px solid var(--field-border-strong);background:var(--surface-2);width:100%;color:var(--text);border-radius:.85rem;padding:.7rem 1rem}.project-form__note{color:var(--text-soft);margin:.9rem 0 0;font-size:.82rem;line-height:1.6}.project-form__error{color:var(--pink);margin:.9rem 0 0;font-size:.82rem;font-weight:700}.inline-action-link{border:1px solid var(--field-border-strong);background:var(--soft-surface);min-height:2rem;color:var(--text-muted);border-radius:.7rem;justify-content:center;align-items:center;padding:.35rem .7rem;font-size:.76rem;font-weight:700;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.inline-action-link:hover{color:var(--text);transform:translateY(-1px)}.inline-action-link--danger{color:var(--pink);background:#e72e6014;border-color:#e72e6038}.inline-action-link--danger:hover{color:var(--pink);background:#e72e6024}.customers-page__primary:disabled,.customers-page__refresh:disabled,.btn--primary:disabled,.btn--secondary:disabled,.inline-action-link:disabled{cursor:progress;opacity:.55;transform:none}.detail-page{gap:1rem;max-width:1440px;margin:0 auto;display:grid}.detail-page__header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.detail-page__header h1,.schedule-modal-page__header h1{letter-spacing:-.04em;margin:.3rem 0 .4rem;font-size:2.2rem;line-height:1.05}.detail-page__header p,.schedule-modal-page__header p,.detail-page__body-copy{color:var(--text-muted);margin:0}.detail-page__actions{flex-wrap:wrap;gap:.75rem;display:flex}.detail-page__actions--compact{margin-top:.2rem}.detail-page__row-actions{flex-wrap:wrap;gap:.45rem;display:flex}.detail-page__grid{grid-template-columns:1.45fr .72fr;gap:1rem;display:grid}.detail-page__hero,.detail-page__sidecard,.detail-page__wide{padding:1.2rem}.detail-page__hero-top,.detail-page__title-row,.detail-page__section-head,.schedule-modal-page__header{justify-content:space-between;align-items:center;gap:.9rem;display:flex}.detail-page__logo,.detail-page__contact-avatar{background:var(--logo-surface);width:3.4rem;height:3.4rem;color:var(--blue);border-radius:1rem;place-items:center;font-weight:800;display:grid}.detail-page__hero-top p{color:var(--text-soft);margin:.25rem 0 0}.detail-page__title-row strong{font-size:1.2rem}.detail-page__stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.detail-page__stats div{background:var(--surface-2);border:1px solid var(--table-line);border-radius:1rem;padding:.95rem 1rem}.detail-page__stats span{color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.35rem;font-size:.76rem;display:block}.detail-page__stats strong{font-size:.98rem}.detail-page__section-head h3,.schedule-modal-page__side h3{margin:0}.detail-page__section-copy{color:var(--text-soft);margin:.25rem 0 0;font-size:.82rem}.detail-page__section-head button{color:var(--text-soft);background:0 0;border:0}.detail-page__contacts{gap:.85rem;margin-top:1rem;display:grid}.detail-page__contact{border-top:1px solid var(--table-line);grid-template-columns:auto 1fr;align-items:start;gap:.85rem;padding:.85rem 0;display:grid}.detail-page__contact:first-child{border-top:0;padding-top:0}.detail-page__contact p,.detail-page__contact span{color:var(--text-soft);margin:.2rem 0 0;font-size:.84rem;display:block}.cp-panel__header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.cp-panel__header h3{margin:0}.cp-panel__counter{background:var(--glass-3,#ffffff0f);color:var(--text-soft);border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:700}.cp-panel__counter--done{color:var(--green,#2ecc71);background:#2ecc7126}.cp-panel__progress{background:var(--glass-3,#ffffff0f);border-radius:4px;height:4px;margin-bottom:.75rem;overflow:hidden}.cp-panel__progress-bar{background:var(--blue);border-radius:4px;height:100%;transition:width .3s}.cp-panel__progress-bar--done{background:var(--green,#2ecc71)}.cp-panel__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.cp-panel__item{border-radius:6px;align-items:center;padding:.4rem .45rem;transition:background .12s;display:flex}.cp-panel__item:hover{background:var(--glass-3,#ffffff0a)}.cp-panel__label{cursor:pointer;min-width:0;color:var(--text);flex:1;align-items:center;gap:.5rem;font-size:.84rem;display:flex}.cp-panel__item--checked .cp-panel__label span{color:var(--text-muted);text-decoration:line-through}.cp-panel__remove{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:0 .35rem;font-size:.9rem;transition:opacity .12s,color .12s}.cp-panel__item:hover .cp-panel__remove{opacity:1}.cp-panel__remove:hover{color:var(--pink)}.cp-panel__empty{color:var(--text-muted);text-align:center;padding:.5rem 0;font-size:.8rem}.cp-panel__add{border-top:1px solid var(--line);gap:.35rem;margin-top:.5rem;padding-top:.5rem;display:flex}.cp-panel__add input{border:1px solid var(--field-border-strong);background:var(--surface);color:var(--text);border-radius:6px;flex:1;padding:.4rem .55rem;font-size:.8rem}.cp-panel__add input:focus{border-color:var(--blue);outline:none}.cp-panel__add button{border:1px solid var(--field-border-strong);background:var(--surface);width:2rem;height:2rem;color:var(--blue);cursor:pointer;border-radius:6px;flex-shrink:0;place-items:center;font-size:1.1rem;font-weight:700;transition:background .12s,border-color .12s;display:grid}.cp-panel__add button:hover:not(:disabled){border-color:var(--blue);background:#4e91cd1a}.cp-panel__add button:disabled{opacity:.4;cursor:not-allowed}.detail-page__activity-actor{color:var(--text-soft);margin-top:.35rem;font-size:.76rem}.request-list__priority{border-radius:999px;align-items:center;padding:.36rem .6rem;font-size:.74rem;font-weight:700;display:inline-flex}.request-list__priority--blue{color:var(--blue);background:#4e91cd24}.request-list__priority--green{color:var(--green);background:#64bb8d24}.request-list__priority--orange{color:var(--orange);background:#f5a04f24}.request-list__priority--pink{color:var(--pink);background:#e72e6024}.request-list__priority--neutral{background:var(--badge-neutral-bg);color:var(--text)}.request-list__mobile{display:none}.request-list__card{background:linear-gradient(180deg, var(--glass-3), #fff0) , var(--surface-1);border:1px solid var(--line);color:inherit;border-radius:.85rem;gap:.45rem;padding:.85rem 1rem;text-decoration:none;display:grid}.request-list__card-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.request-list__card-id{color:var(--text-soft);font-family:SFMono-Regular,Consolas,monospace;font-size:.7rem;font-weight:700}.request-list__card-title{font-size:.9rem;line-height:1.4}.request-list__card-meta{color:var(--text-soft);flex-wrap:wrap;gap:.35rem .75rem;font-size:.72rem;display:flex}.request-list__card-priority{justify-self:start}.gantt-view{padding:1.2rem 1.5rem 1.5rem;overflow-x:auto}.gantt-view__header,.gantt-view__row{grid-template-columns:minmax(10rem,1.2fr) minmax(5rem,.7fr) minmax(20rem,3fr);align-items:center;gap:1.2rem;display:grid}.gantt-view__header{color:var(--text-soft);text-transform:uppercase;letter-spacing:.06em;padding:0 0 .9rem;font-size:.76rem}.gantt-view__weeks,.gantt-view__timeline{gap:.3rem;display:grid}.gantt-view__weeks span{text-align:center}.gantt-view__row{border-top:1px solid var(--table-line);padding:.85rem 0}.gantt-view__task strong{font-size:.88rem}.gantt-view__task p,.gantt-view__owner{color:var(--text-soft);margin:.2rem 0 0;font-size:.8rem}.gantt-view__timeline{position:relative}.gantt-view__cell{background:#ffffff06;border-radius:.6rem;min-height:2.4rem}.gantt-view__bar{color:var(--gantt-bar-text);border-radius:.8rem;justify-content:end;align-items:center;padding:0 .7rem;font-size:.76rem;font-weight:700;display:flex;position:absolute;top:.3rem;bottom:.3rem}.gantt-view__bar--blue{background:linear-gradient(135deg, var(--blue), #76bbea)}.gantt-view__bar--green{background:linear-gradient(135deg, var(--green), #88d3a8)}.gantt-view__bar--orange{background:linear-gradient(135deg, var(--orange), #ffcb83)}.gantt-view__bar--pink{background:linear-gradient(135deg, var(--pink), #ff7c9e)}.gantt-view__bar--neutral{background:linear-gradient(135deg,#8ca0b3,#ced5db)}.timeline-list{gap:.9rem;margin-top:1rem;display:grid}.timeline-list__item{grid-template-columns:auto 1fr;align-items:start;gap:.8rem;display:grid}.timeline-list__dot{background:#fff3;border-radius:999px;width:.8rem;height:.8rem;margin-top:.35rem}.timeline-list__dot--blue{background:var(--blue)}.timeline-list__dot--green{background:var(--green)}.timeline-list__dot--orange{background:var(--orange)}.timeline-list__dot--pink{background:var(--pink)}.timeline-list__dot--neutral{background:var(--badge-neutral-dot)}.timeline-list__head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.timeline-list__head time,.timeline-list__item p{color:var(--text-soft);font-size:.84rem}.schedule-modal-page{place-items:center;min-height:calc(100vh - 7rem);display:grid}.schedule-modal-page__dialog{width:min(1080px,100%);padding:1.2rem}.schedule-modal-page__content{grid-template-columns:1.35fr .7fr;gap:1rem;margin-top:1rem;display:grid}.schedule-modal-page__main{gap:1rem;display:grid}.schedule-modal-page__side{padding:1.15rem}.schedule-modal-page__side h3+.detail-page__checklist{margin-bottom:1.2rem}.kanban-page__modes a{min-width:5.2rem;color:var(--text-soft);border-radius:999px;justify-content:center;align-items:center;padding:.65rem 1rem;text-decoration:none;display:inline-flex}.kanban-page__modes a.is-active{color:var(--blue);background:#4e91cd1f}.kanban-card__title{color:inherit;text-decoration:none}.schedule-page__event:hover{filter:brightness(.95)}.fab{background:linear-gradient(135deg, var(--blue), #79baf0);width:3.7rem;height:3.7rem;color:var(--gantt-bar-text);border-radius:999px;place-items:center;display:grid;position:fixed;bottom:2rem;right:2rem;box-shadow:0 18px 40px #4e91cd47}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(1.55)}}@media (width<=1200px){.dashboard__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard__intro,.dashboard__row,.dashboard__row--wide,.customers-page__summary,.projects-page__footer,.detail-page__grid,.project-detail__summary,.project-detail__content,.notifications-page__layout,.settings-page__layout,.schedule-modal-page__content,.form-shell__content{grid-template-columns:1fr}.customers-page__filters,.projects-page__filters,.kanban-page__filters{grid-template-columns:1fr 1fr}.customers-page__field--wide,.projects-page__search{grid-column:1/-1}}@media (width<=960px){.sidebar{z-index:100;height:auto;padding:.4rem .5rem;padding-bottom:calc(.4rem + env(safe-area-inset-bottom,0px));border-right:0;border-top:1px solid var(--line);background:var(--topbar-bg);-webkit-backdrop-filter:blur(18px);border-bottom:0;flex-direction:row;gap:0;position:fixed;inset:auto 0 0}.sidebar__brand,.sidebar__cta{display:none}.sidebar__fab{right:1rem;bottom:calc(6rem + env(safe-area-inset-bottom,0px));z-index:80;background:linear-gradient(135deg, var(--blue), #69ade7);width:3.2rem;height:3.2rem;color:var(--cta-text);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex;position:fixed;box-shadow:0 4px 16px #4e91cd59}.sidebar__nav{justify-content:space-around;gap:0;width:100%;display:flex}.sidebar__link{min-width:0;min-height:2.75rem;box-shadow:none;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:.5rem .4rem;font-size:.62rem}.sidebar__link span{white-space:nowrap;text-overflow:ellipsis;max-width:4.5rem;font-size:.62rem;display:block;overflow:hidden}.sidebar__link--active{box-shadow:none;background:var(--active-link-bg)}.sidebar__link:hover{transform:none}.sidebar__link svg{width:20px;height:20px}.app-shell__main{padding-bottom:calc(5rem + env(safe-area-inset-bottom,0px));grid-area:1/1}.app-shell{display:block}.topbar{padding:.75rem 1rem}.topbar__menu{display:none}.topbar__search{border-radius:.85rem;height:2.75rem}.app-shell__content{padding:1rem}.project-detail{grid-template-columns:1fr}.project-detail__rail{position:static}.messages-page{height:calc(100vh - 3.5rem - 5rem - env(safe-area-inset-bottom,0px));grid-template-columns:1fr;min-height:0;overflow:hidden}.messages-page__threads,.messages-page__info{display:none}.messages-page--show-threads .messages-page__threads{display:block;overflow-y:auto}.messages-page--show-threads .messages-page__chat{display:none}.app-shell__content:has(.messages-page){padding:0;padding-bottom:calc(5rem + env(safe-area-inset-bottom,0px));overflow:hidden}.messages-page{height:calc(100vh - 3.5rem - 5rem - env(safe-area-inset-bottom,0px));padding:0}.messages-page__chat,.messages-page__threads{border-left:0;border-right:0;border-radius:0}.gantt-view__header,.gantt-view__row{grid-template-columns:1fr}.fab{bottom:calc(4.5rem + env(safe-area-inset-bottom,0px));width:3.2rem;height:3.2rem;right:1rem}.member-card{grid-template-columns:auto 1fr;gap:.65rem}.member-card__controls{grid-column:1/-1}.member-card__actions{grid-column:1/-1;justify-content:flex-start;min-width:0}.kanban-page__filter-toggle{background:var(--glass-1);color:var(--text-muted);border-radius:.75rem;align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.78rem;font-weight:700;display:inline-flex}.kanban-page__filters,.customers-page__filters{display:none}.kanban-page__filters--open{grid-template-columns:1fr;gap:.65rem;padding:.85rem;display:grid}.kanban-board{display:none}.kanban-page__column-tabs{-webkit-overflow-scrolling:touch;gap:.35rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.kanban-page__column-tab{background:var(--glass-2);color:var(--text-muted);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:.35rem;padding:.55rem .85rem;font-size:.78rem;font-weight:700;display:inline-flex}.kanban-page__column-tab.is-active{color:var(--blue);background:#4e91cd24}.kanban-page__column-tab-count{background:var(--glass-1);border-radius:999px;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .3rem;font-size:.65rem;font-weight:800;display:inline-grid}.kanban-page__column-tab.is-active .kanban-page__column-tab-count{color:var(--blue);background:#4e91cd33}.kanban-page__mobile-cards{gap:.65rem;display:grid}.kanban-page__mobile-cards .kanban-card{border-radius:.85rem}.kanban-page__mobile-cards .kanban-column__empty{text-align:center;color:var(--text-soft);padding:2rem 1rem}.kanban-page__header h1{margin-bottom:.5rem;font-size:1.65rem}.kanban-page__header{flex-direction:column;align-items:start;gap:.75rem}.kanban-page__header .customers-page__primary,.kanban-page__header .btn--primary{justify-content:center;width:100%}.kanban-page{gap:.85rem}.kanban-page__column-tabs::-webkit-scrollbar{display:none}.request-list__desktop{display:none}.request-list__mobile{gap:.6rem;display:grid}}@media (width<=720px){.dashboard__metrics,.customer-actions,.projects-page__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{flex-wrap:wrap;gap:.6rem}.topbar__search{order:3;width:100%}.topbar__role-switch span,.topbar__profile{display:none}.topbar__actions{gap:.5rem}.topbar__icon{width:2.75rem;height:2.75rem}.request-table th,.request-table td{padding:.85rem .75rem;font-size:.85rem}.request-table th:nth-child(n+5),.request-table td:nth-child(n+5){display:none}.customers-page__header,.customer-table__footer{flex-direction:column;align-items:start}.customers-page__filters{grid-template-columns:1fr;padding:1rem}.projects-page__filters,.projects-page__metrics,.kanban-page__filters,.settings-page__form,.app-form-grid,.detail-page__stats{grid-template-columns:1fr}.project-detail__heading,.project-detail__tabs{flex-direction:column;align-items:start}.project-detail__overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-page__days,.schedule-page__week{grid-template-columns:repeat(7,minmax(0,1fr))}.schedule-page__span-bar{display:none}.settings-page__profile-body{grid-template-columns:1fr}.customer-dashboard__hero{flex-direction:column;align-items:start}.auth-page{grid-template-columns:1fr;padding:1rem}.auth-page__hero h1{font-size:clamp(1.8rem,6vw,2.4rem)}.auth-card__form input,.auth-card__form select,.app-form-grid input,.app-form-grid select,.app-form-grid textarea,input,select,textarea{font-size:1rem!important}.customers-page__header h1,.form-shell__title-row h1,.schedule-page h1,.notifications-page h1,.settings-page h1,.detail-page__header h1{font-size:1.65rem}.kanban-board{-webkit-overflow-scrolling:touch;grid-auto-columns:16rem}.messages-page__bubble{max-width:85%;padding:.45rem .7rem}.messages-page__feed{gap:.35rem}.messages-page__composer{gap:.4rem;padding:.5rem .75rem}.messages-page__composer-wrap input{height:2.5rem;font-size:1rem}.messages-page__send{width:2.5rem;height:2.5rem;font-size:.8rem}.messages-page__attach{width:2.5rem;height:2.5rem}.app-toast{top:auto;bottom:calc(4.5rem + env(safe-area-inset-bottom,0px));max-width:none;left:.75rem;right:.75rem}.toast-enter-from,.toast-leave-to{transform:translateY(40px)}.schedule-page__toolbar{flex-direction:column;align-items:stretch;gap:.75rem;padding:.75rem 1rem}.schedule-page__nav,.schedule-page__filters{justify-content:center}.schedule-page__cell{min-height:6rem;padding:.5rem}.notifications-page__summary{padding:.85rem}.detail-page__header{flex-direction:column;align-items:start}.detail-page__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.form-shell__header{flex-direction:column;align-items:start}.sidebar__link span{max-width:3.5rem;font-size:.58rem}.sidebar__link{padding:.45rem .25rem}}@media (width<=520px){.dashboard h1,.placeholder h1{font-size:1.65rem}.message-item{grid-template-columns:auto minmax(0,1fr)}.message-item__count{display:none}.customer-actions,.dashboard__metrics{grid-template-columns:1fr}.metric-card__value{font-size:1.65rem}.app-shell__content{padding:.75rem}.request-table th,.request-table td{padding:.75rem .5rem;font-size:.82rem}.project-detail__overview-grid{grid-template-columns:1fr}.sidebar__link span{display:none}.sidebar__link{padding:.5rem .35rem}.sidebar__link svg{width:22px;height:22px}.customers-page__primary,.btn--primary,.form-shell__actions>*{justify-content:center;width:100%}.form-shell__actions{flex-direction:column}.customer-table .request-table th:nth-child(n+4),.customer-table .request-table td:nth-child(n+4){display:none}}.rich-content{color:var(--text-muted);line-height:1.7}.rich-content h1{color:var(--text);margin:.6rem 0 .3rem;font-size:1.5rem;font-weight:700}.rich-content h2{color:var(--text);margin:.5rem 0 .25rem;font-size:1.25rem;font-weight:700}.rich-content h3{color:var(--text);margin:.4rem 0 .2rem;font-size:1.1rem;font-weight:600}.rich-content p{margin:.3rem 0}.rich-content ul,.rich-content ol{margin:.4rem 0;padding-left:1.5rem}.rich-content code{background:var(--glass-1);border-radius:.35rem;padding:.15rem .4rem;font-family:monospace;font-size:.85em}.rich-content pre>code{padding:.75rem;display:block;overflow-x:auto}.rich-content blockquote{border-left:3px solid var(--blue);color:var(--text-soft);margin:.5rem 0;padding-left:.85rem}.rich-content a{color:var(--blue);text-decoration:underline}.request-comments{gap:0;display:grid}.request-comment{border-bottom:1px solid var(--table-line);grid-template-columns:2.2rem 1fr;gap:0 .7rem;padding:.85rem 1.15rem;display:grid}.request-comment:last-child{border-bottom:0}.request-comment__avatar{background:var(--avatar-bg);width:2.2rem;height:2.2rem;color:var(--avatar-text);border-radius:.65rem;grid-row:1/3;place-items:center;font-size:.72rem;font-weight:800;display:grid}.request-comment__head{align-items:baseline;gap:.45rem;display:flex}.request-comment__head strong{font-size:.82rem}.request-comment__head time{color:var(--text-soft);font-size:.62rem}.request-comment__delete{color:var(--pink);background:0 0;border:1px solid #e72e6033;border-radius:.35rem;margin-left:auto;padding:.1rem .4rem;font-size:.6rem;font-weight:700;display:none}.request-comment__delete:hover{background:#e72e601a}.request-comment:hover .request-comment__delete{display:inline-flex}.request-comment__body{color:var(--text-muted);margin-top:.2rem;font-size:.85rem;line-height:1.6}.request-comment__body .rich-content{font-size:.85rem}.request-comments__empty{color:var(--text-soft);text-align:center;padding:2.5rem 1.25rem;font-size:.82rem}.request-comments__composer{border-top:1px solid var(--table-line);gap:.5rem;padding:.85rem 1.15rem;display:grid}.request-comments__composer .rich-editor{border-color:var(--field-border);border-radius:.75rem}.request-comments__composer .rich-editor .rich-editor__toolbar{padding:.3rem .4rem}.request-comments__composer .rich-editor .rich-editor__btn{width:28px;height:28px}.request-comments__composer .rich-editor .rich-editor__content{min-height:4.5rem;padding:.6rem .85rem;font-size:.85rem}.request-comments__actions{justify-content:flex-end;display:flex}.request-comments__submit{border-radius:.7rem;padding:.5rem 1rem;font-size:.8rem}.empty-state,.loading-state{text-align:center;flex-direction:column;align-items:center;gap:.4rem;padding:2.5rem 1rem;display:flex}.empty-state__title{color:var(--text-muted);font-size:.9rem}.empty-state__message{color:var(--text-soft);margin:0;font-size:.8rem}.empty-state__cta{margin-top:.5rem}.loading-state__spinner{border:2px solid var(--line-strong);border-top-color:var(--blue);border-radius:50%;width:1.5rem;height:1.5rem;animation:.8s linear infinite spin}.loading-state__message{color:var(--text-soft);margin:0;font-size:.82rem}.confirm-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);background:#00000080;place-items:center;display:grid;position:fixed;inset:0}.confirm-dialog{background:var(--surface-1);border:1px solid var(--line-strong);width:min(22rem,100vw - 2rem);box-shadow:var(--shadow-lg);text-align:center;border-radius:1rem;padding:1.25rem}.confirm-dialog strong{margin-bottom:.35rem;font-size:1rem;display:block}.confirm-dialog p{color:var(--text-soft);margin:0;font-size:.82rem}.confirm-dialog__actions{justify-content:center;gap:.5rem;margin-top:1.1rem;display:flex}.confirm-dialog__cancel,.confirm-dialog__danger{border-radius:.7rem;padding:.55rem 1.2rem;font-size:.82rem;font-weight:700}.confirm-dialog__cancel{background:var(--glass-1);color:var(--text-muted)}.confirm-dialog__danger{background:var(--pink);color:#fff;border:0}.confirm-dialog__confirm{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem}.app-toast{z-index:var(--z-toast);flex-direction:column;gap:.6rem;max-width:420px;display:flex;position:fixed;top:1.5rem;right:1.5rem}.app-toast__item{border:1px solid var(--line-strong);background:var(--surface-2);box-shadow:var(--shadow-lg);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:.8rem;align-items:center;gap:.75rem;padding:.85rem 1.1rem;display:flex}.app-toast__item--error{background:linear-gradient(135deg, #e72e6024, var(--surface-2));border-color:#e72e6059}.app-toast__item--success{background:linear-gradient(135deg, #64bb8d24, var(--surface-2));border-color:#64bb8d59}.app-toast__item--info{background:linear-gradient(135deg, #4e91cd24, var(--surface-2));border-color:#4e91cd59}.app-toast__message{flex:1;font-size:.82rem;font-weight:600;line-height:1.4}.app-toast__item--error .app-toast__message{color:var(--badge-pink-text)}.app-toast__item--success .app-toast__message{color:var(--badge-green-text)}.app-toast__item--info .app-toast__message{color:var(--badge-blue-text)}.app-toast__close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:1.1rem;line-height:1}.toast-enter-active{transition:all .3s ease-out}.toast-leave-active{transition:all .25s ease-in}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(60px)}.messages-page__attach{background:var(--glass-2);border:1px solid var(--line);width:2.6rem;height:2.6rem;color:var(--text-muted);cursor:pointer;border-radius:.65rem;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background .15s,border-color .15s;display:flex}.messages-page__attach:hover{color:var(--blue);border-color:var(--blue);background:#4e91cd1a}.messages-page__attach:disabled{opacity:.4;cursor:default}.messages-page__feed.is-drag-over{position:relative}.messages-page__drop-overlay{z-index:10;border:2px dashed var(--blue);color:var(--blue);pointer-events:none;background:#4e91cd14;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:flex;position:absolute;inset:0}.messages-page__upload-bar{color:var(--blue);align-items:center;gap:6px;padding:4px 0;font-size:.75rem;display:flex}.messages-page__upload-spinner{animation:1s linear infinite spin}.messages-page__pending-files{gap:6px;padding:6px 0;display:flex;overflow-x:auto}.messages-page__pending-card{background:var(--surface-2);border:1px solid var(--line);border-radius:.5rem;flex-shrink:0;align-items:center;gap:6px;max-width:180px;padding:4px 8px 4px 4px;display:flex}.messages-page__pending-thumb{object-fit:cover;border-radius:3px;flex-shrink:0;width:28px;height:28px}.messages-page__pending-icon{background:var(--glass-3);width:28px;height:28px;color:var(--text-muted);border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.messages-page__pending-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.messages-page__pending-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;line-height:1.2;overflow:hidden}.messages-page__pending-size{color:var(--text-soft);font-size:.6rem;line-height:1.2}.messages-page__pending-remove{color:var(--text-soft);cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;padding:2px;display:flex}.messages-page__pending-remove:hover{color:var(--pink);background:#e72e601a}.messages-page__file-cards{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.messages-page__file-card{background:var(--glass-2);border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;max-width:240px;padding:6px 10px;text-decoration:none;transition:border-color .15s;display:flex}.messages-page__file-card:hover{border-color:var(--blue)}.messages-page__file-thumb{object-fit:cover;border-radius:4px;flex-shrink:0;width:48px;height:48px}.messages-page__file-icon{background:var(--glass-3);width:48px;height:48px;color:var(--text-muted);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.messages-page__file-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.settings-page__avatar-wrap{flex-direction:column;align-items:center;gap:8px;display:flex}.settings-page__avatar-img{object-fit:cover;border:2px solid var(--line);border-radius:50%;width:80px;height:80px}@media (width<=720px){.quick-request-dialog,.confirm-dialog{width:calc(100vw - 1.5rem);max-height:90vh;overflow-y:auto}.form-shell{padding:1rem}.form-shell__content{grid-template-columns:1fr}.topbar__search-dropdown{-webkit-overflow-scrolling:touch;max-height:60vh}.request-table th:nth-child(n+4),.request-table td:nth-child(n+4){display:none}.settings-page__layout{grid-template-columns:1fr}.project-detail__rail-nav{flex-wrap:wrap;gap:.3rem;display:flex}.project-detail__rail-nav .project-detail__rail-link{padding:.4rem .7rem;font-size:.75rem}.project-detail__rail-actions{flex-wrap:wrap;gap:.5rem;display:flex}.sidebar__link span{max-width:3.5rem;font-size:.58rem}}@media (width<=960px){.messages-page__quick-request{min-height:2.2rem;padding:.3rem .6rem;font-size:.7rem}.messages-page__mention-item{min-height:2.75rem;padding:.5rem .75rem}.customer-table__more{min-width:2.75rem;min-height:2.75rem}.topbar__search-item{min-height:2.75rem;padding:.5rem .75rem}.app-toast__close{min-width:2.75rem;min-height:2.75rem;font-size:1.3rem}}.offline-banner{z-index:var(--z-toast);background:var(--pink);color:#fff;text-align:center;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.82rem;font-weight:600;display:flex;position:fixed;top:0;left:0;right:0}button,a,[role=button]{touch-action:manipulation}:is(input:user-invalid,select:user-invalid,textarea:user-invalid){border-color:var(--pink);box-shadow:0 0 0 1px var(--pink)}.form-error{color:var(--pink);margin-top:.25rem;font-size:.78rem}label:has(:required) span:after{content:" *";color:var(--pink)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-soft)}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.confirm-overlay,.quick-request-overlay{animation:.2s ease-out overlay-in}.confirm-dialog,.quick-request-dialog{animation:.2s ease-out dialog-in}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}
