:root{--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--fs-2xs:11px;--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-lg:15px;--fs-xl:17px;--fs-2xl:20px;--fs-3xl:26px;--fs-display:32px;--tracking-tight:-.02em;--tracking-label:.08em;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-full:9999px;--control-h:40px;--control-h-sm:32px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.12s;--dur:.18s;--dur-slow:.28s;--on-chrome:#fff}:root,[data-accent=green]{--hue-base:#3b5442;--hue-hover:#324a39;--hue-active:#283c2e;--hue-text:#3b5442;--hue-soft:#e6eee2;--hue-deep:#3b5442;--hue-signal:#c7f58a;--hue-signal-strong:#9fd65a;--hue-on-signal:#0b1e13;--hue-chat-sent:#3b5442;--hue-sidebar:#f4f7f2;--hue-sidebar-header:#e5ebe1;--hue-sidebar-active:#e2edcc;--hue-admin-header:#3b5442;--hue-admin-tabs:#324a39}[data-accent=maroon]{--hue-base:#7a2e3a;--hue-hover:#69262f;--hue-active:#561e27;--hue-text:#7a2e3a;--hue-soft:#f4e7e8;--hue-deep:#7a2e3a;--hue-signal:#ffc9b8;--hue-signal-strong:#ec9a82;--hue-on-signal:#3a0f16;--hue-chat-sent:#7a2e3a;--hue-sidebar:#f6f5f3;--hue-sidebar-header:#ece4e3;--hue-sidebar-active:#f6dfd8;--hue-admin-header:#7a2e3a;--hue-admin-tabs:#69262f}[data-accent=navy]{--hue-base:#23406e;--hue-hover:#1c355c;--hue-active:#152a4a;--hue-text:#23406e;--hue-soft:#e4eaf4;--hue-deep:#23406e;--hue-signal:#a8d4ff;--hue-signal-strong:#6fb2f2;--hue-on-signal:#0a1a33;--hue-chat-sent:#23406e;--hue-sidebar:#f3f5f6;--hue-sidebar-header:#e2e7ee;--hue-sidebar-active:#dae8f8;--hue-admin-header:#23406e;--hue-admin-tabs:#1c355c}[data-accent=magenta]{--hue-base:#8e2a6e;--hue-hover:#7a235f;--hue-active:#641c4e;--hue-text:#8e2a6e;--hue-soft:#f4e5ef;--hue-deep:#8e2a6e;--hue-signal:#ffc2ea;--hue-signal-strong:#ea8acb;--hue-on-signal:#3a0a2c;--hue-chat-sent:#8e2a6e;--hue-sidebar:#f6f5f5;--hue-sidebar-header:#ede3ea;--hue-sidebar-active:#f8ddef;--hue-admin-header:#8e2a6e;--hue-admin-tabs:#7a235f}[data-accent=brown]{--hue-base:#6b4a2e;--hue-hover:#5c3f27;--hue-active:#4b331f;--hue-text:#6b4a2e;--hue-soft:#f0e9e1;--hue-deep:#6b4a2e;--hue-signal:#f6d38f;--hue-signal-strong:#dfae52;--hue-on-signal:#2e1d0b;--hue-chat-sent:#6b4a2e;--hue-sidebar:#f6f6f2;--hue-sidebar-header:#ebe5dc;--hue-sidebar-active:#f5e7c9;--hue-admin-header:#6b4a2e;--hue-admin-tabs:#5c3f27}[data-theme=dark],[data-theme=dark][data-accent=green]{--hue-base:#3d6549;--hue-hover:#477356;--hue-active:#34563e;--hue-text:#9fd3ae;--hue-soft:#3d654947;--hue-deep:#3b5442;--hue-signal:#c7f58a;--hue-signal-strong:#c7f58a;--hue-on-signal:#0b1e13;--hue-chat-sent:#24493a;--hue-sidebar:#15291f;--hue-sidebar-header:#1b3328;--hue-sidebar-active:#3d65496b;--hue-admin-header:#0e2417;--hue-admin-tabs:#0b1e13}[data-theme=dark][data-accent=maroon]{--hue-base:#8a3a47;--hue-hover:#9a4553;--hue-active:#76303c;--hue-text:#f0a9b4;--hue-soft:#8a3a474d;--hue-deep:#7a2e3a;--hue-signal:#ffc9b8;--hue-signal-strong:#ffc9b8;--hue-on-signal:#3a0f16;--hue-chat-sent:#5a2530;--hue-sidebar:#241619;--hue-sidebar-header:#2e1c20;--hue-sidebar-active:#8a3a476b;--hue-admin-header:#2a1216;--hue-admin-tabs:#1f0d10}[data-theme=dark][data-accent=navy]{--hue-base:#2f5490;--hue-hover:#3a62a3;--hue-active:#27477b;--hue-text:#a9c8f5;--hue-soft:#2f54904d;--hue-deep:#2a4a7d;--hue-signal:#a8d4ff;--hue-signal-strong:#a8d4ff;--hue-on-signal:#0a1a33;--hue-chat-sent:#22406b;--hue-sidebar:#131d2c;--hue-sidebar-header:#182538;--hue-sidebar-active:#2f54906b;--hue-admin-header:#0f1a2e;--hue-admin-tabs:#0b1424}[data-theme=dark][data-accent=magenta]{--hue-base:#9a3479;--hue-hover:#ab3f88;--hue-active:#842b67;--hue-text:#f3a6dc;--hue-soft:#9a34794d;--hue-deep:#8e2a6e;--hue-signal:#ffc2ea;--hue-signal-strong:#ffc2ea;--hue-on-signal:#3a0a2c;--hue-chat-sent:#5c2049;--hue-sidebar:#23141e;--hue-sidebar-header:#2c1926;--hue-sidebar-active:#9a34796b;--hue-admin-header:#241020;--hue-admin-tabs:#1b0b18}[data-theme=dark][data-accent=brown]{--hue-base:#7d5737;--hue-hover:#8c6341;--hue-active:#6a4a2e;--hue-text:#e3c39e;--hue-soft:#7d57374d;--hue-deep:#6b4a2e;--hue-signal:#f6d38f;--hue-signal-strong:#f6d38f;--hue-on-signal:#2e1d0b;--hue-chat-sent:#4d3523;--hue-sidebar:#221a13;--hue-sidebar-header:#2b2118;--hue-sidebar-active:#7d57376b;--hue-admin-header:#1f160e;--hue-admin-tabs:#18110a}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f8f9f6;--background-secondary:#f1f4ef;--background-tertiary:#e7ede3;--card:#fdfefc;--card-elevated:#fff;--input:#f2f5ef;--hover:#ebf0e7;--selected:#e4edd9;--primary:var(--hue-base);--primary-hover:var(--hue-hover);--primary-active:var(--hue-active);--primary-soft:var(--hue-soft);--primary-text:var(--hue-text);--accent:var(--hue-signal);--accent-hover:color-mix(in srgb, var(--hue-signal) 75%, #fff);--accent-strong:var(--hue-signal-strong);--accent-soft:color-mix(in srgb, var(--hue-signal) 32%, #fff);--on-accent:var(--hue-on-signal);--text-primary:#13211a;--text-heading:#07130c;--text-secondary:#4a5b50;--text-muted:#65766b;--text-placeholder:#8e9d93;--text-disabled:#b6c2ba;--border-subtle:#e6ebe2;--border:#dbe2d6;--border-strong:#c3cebe;--chat-sent:var(--hue-chat-sent);--chat-sent-text:#fff;--chat-received:#fff;--chat-mention:color-mix(in srgb, var(--hue-signal) 32%, #fff);--chat-canvas-dot:color-mix(in srgb, var(--hue-deep) 8%, transparent);--success:#138a55;--success-soft:#e2f3e9;--warning:#b5620b;--warning-soft:#fbefdc;--error:#c9372c;--error-soft:#fbe8e5;--info:#1f6fa8;--info-soft:#e3eef7;--shadow-xs:0 1px 2px #0b1e130d;--shadow-sm:0 1px 2px #0b1e130a, 0 2px 8px #0b1e130a;--shadow-md:0 2px 4px #0b1e130a, 0 10px 24px #0b1e1314;--shadow-lg:0 4px 10px #0b1e130d, 0 24px 56px #0b1e1329;--overlay:#0b1e1361;--focus-ring:var(--hue-base);--btn-text:#fff;--sidebar-bg:var(--hue-sidebar);--sidebar-brand-bg:var(--hue-deep);--sidebar-footer-bg:var(--hue-deep);--sidebar-header-bg:var(--hue-sidebar-header);--sidebar-text:#07130c;--sidebar-text-muted:#5a6f61;--sidebar-border:#0b1e1314;--sidebar-input-bg:#fff;--sidebar-input-border:#0b1e131f;--sidebar-input-text:#07130c;--sidebar-icon-color:#4a6052;--sidebar-icon-hover:#07130c;--sidebar-icon-hover-bg:#0b1e1312;--sidebar-item-hover:#0b1e130b;--sidebar-item-active:var(--hue-sidebar-active);--sidebar-item-active-border:var(--hue-base);--sidebar-item-title:#07130c;--sidebar-item-preview:#55695b;--admin-header-bg:var(--hue-admin-header);--admin-tabs-bg:var(--hue-admin-tabs);--admin-accent:var(--hue-signal);--admin-muted:#ffffffbd}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0d1713;--background-secondary:#111e18;--background-tertiary:#16261f;--card:#13211b;--card-elevated:#182a22;--input:#0f1b16;--hover:#7db78d14;--selected:#7db78d26;--primary:var(--hue-base);--primary-hover:var(--hue-hover);--primary-active:var(--hue-active);--primary-soft:var(--hue-soft);--primary-text:var(--hue-text);--accent:var(--hue-signal);--accent-hover:color-mix(in srgb, var(--hue-signal) 80%, #fff);--accent-strong:var(--hue-signal-strong);--accent-soft:color-mix(in srgb, var(--hue-signal) 10%, transparent);--on-accent:var(--hue-on-signal);--text-primary:#e4eee7;--text-heading:#f4f9f5;--text-secondary:#b8cbbe;--text-muted:#8ea395;--text-placeholder:#6c8274;--text-disabled:#4f6458;--border-subtle:#aacdb614;--border:#aacdb621;--border-strong:#aacdb638;--chat-sent:var(--hue-chat-sent);--chat-sent-text:#f1f8f3;--chat-received:#172820;--chat-mention:color-mix(in srgb, var(--hue-signal) 10%, transparent);--chat-canvas-dot:#aacdb60d;--success:#4ecb8b;--success-soft:#4ecb8b21;--warning:#f2b95d;--warning-soft:#f2b95d21;--error:#f17a7a;--error-soft:#f17a7a21;--info:#69baf8;--info-soft:#69baf821;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #0000004d, 0 2px 8px #0003;--shadow-md:0 2px 6px #0000004d, 0 12px 28px #00000059;--shadow-lg:0 6px 14px #00000059, 0 28px 64px #00000080;--overlay:#03080699;--focus-ring:var(--hue-signal);--btn-text:#f4faf5;--sidebar-bg:var(--hue-sidebar);--sidebar-brand-bg:#0d1713;--sidebar-footer-bg:#0d1713;--sidebar-header-bg:var(--hue-sidebar-header);--sidebar-text:#e9f2ec;--sidebar-text-muted:#9db4a5;--sidebar-border:#dcebdf14;--sidebar-input-bg:#0f1d17;--sidebar-input-border:#dcebdf1a;--sidebar-input-text:#e9f2ec;--sidebar-icon-color:#b8cdbf;--sidebar-icon-hover:#fff;--sidebar-icon-hover-bg:#ffffff0f;--sidebar-item-hover:#ffffff09;--sidebar-item-active:var(--hue-sidebar-active);--sidebar-item-active-border:var(--hue-signal);--sidebar-item-title:#f4f9f5;--sidebar-item-preview:#a9bfb0;--admin-header-bg:var(--hue-admin-header);--admin-tabs-bg:var(--hue-admin-tabs);--admin-accent:var(--hue-signal);--admin-muted:#a5baac}[data-theme=light][data-accent=maroon]{--background:#f9f6f9;--background-secondary:#f4eff3;--background-tertiary:#ede3eb;--card:#fefcfe;--card-elevated:#fff;--input:#f5eff5;--hover:#f0e7ef;--selected:#edd9ed;--text-primary:#211413;--text-heading:#130707;--text-secondary:#5b4a4b;--text-muted:#766566;--text-placeholder:#9d8e90;--text-disabled:#c2b6b7;--border-subtle:#ebe2ea;--border:#e2d6e0;--border-strong:#cebeca;--chat-received:#fff;--shadow-xs:0 1px 2px #1e0b0b0d;--shadow-sm:0 1px 2px #1e0b0b0a, 0 2px 8px #1e0b0b0a;--shadow-md:0 2px 4px #1e0b0b0a, 0 10px 24px #1e0b0b14;--shadow-lg:0 4px 10px #1e0b0b0d, 0 24px 56px #1e0b0b29;--overlay:#1e0b0b61;--sidebar-text:#130707;--sidebar-text-muted:#6f5a5c;--sidebar-border:#1e0b0b14;--sidebar-input-bg:#fff;--sidebar-input-border:#1e0b0b1f;--sidebar-input-text:#130707;--sidebar-icon-color:#604a4c;--sidebar-icon-hover:#130707;--sidebar-icon-hover-bg:#1e0b0b12;--sidebar-item-hover:#1e0b0b0b;--sidebar-item-title:#130707;--sidebar-item-preview:#695558;--admin-muted:#ffffffbd}[data-theme=dark][data-accent=maroon]{--background:#170f0d;--background-secondary:#1e1211;--background-tertiary:#261816;--card:#211513;--card-elevated:#2a1a18;--input:#1b110f;--hover:#b77d8614;--selected:#b77d8626;--text-primary:#eee4e5;--text-heading:#f9f4f5;--text-secondary:#cbb8ba;--text-muted:#a38e90;--text-placeholder:#826c6e;--text-disabled:#644f4f;--border-subtle:#cdaaad14;--border:#cdaaad21;--border-strong:#cdaaad38;--chat-received:#281917;--chat-canvas-dot:#cdaaad0d;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #0000004d, 0 2px 8px #0003;--shadow-md:0 2px 6px #0000004d, 0 12px 28px #00000059;--shadow-lg:0 6px 14px #00000059, 0 28px 64px #00000080;--overlay:#08040399;--sidebar-brand-bg:#170f0d;--sidebar-footer-bg:#170f0d;--sidebar-text:#f2e9ea;--sidebar-text-muted:#b49d9f;--sidebar-border:#ebdce014;--sidebar-input-bg:#1d110f;--sidebar-input-border:#ebdce01a;--sidebar-input-text:#f2e9ea;--sidebar-icon-color:#cdb8ba;--sidebar-icon-hover:#fff;--sidebar-icon-hover-bg:#ffffff0f;--sidebar-item-hover:#ffffff09;--sidebar-item-title:#f9f4f5;--sidebar-item-preview:#bfa9ac;--admin-muted:#baa5a7}[data-theme=light][data-accent=navy]{--background:#f6f9f8;--background-secondary:#eff4f4;--background-tertiary:#e3edec;--card:#fcfefe;--card-elevated:#fff;--input:#eff5f4;--hover:#e7f0ef;--selected:#d9ede9;--text-primary:#131521;--text-heading:#070a13;--text-secondary:#4a4f5b;--text-muted:#656a76;--text-placeholder:#8e939d;--text-disabled:#b6bac2;--border-subtle:#e2ebea;--border:#d6e2e1;--border-strong:#becece;--chat-received:#fff;--shadow-xs:0 1px 2px #0b101e0d;--shadow-sm:0 1px 2px #0b101e0a, 0 2px 8px #0b101e0a;--shadow-md:0 2px 4px #0b101e0a, 0 10px 24px #0b101e14;--shadow-lg:0 4px 10px #0b101e0d, 0 24px 56px #0b101e29;--overlay:#0b101e61;--sidebar-text:#070a13;--sidebar-text-muted:#5a616f;--sidebar-border:#0b101e14;--sidebar-input-bg:#fff;--sidebar-input-border:#0b101e1f;--sidebar-input-text:#070a13;--sidebar-icon-color:#4a5160;--sidebar-icon-hover:#070a13;--sidebar-icon-hover-bg:#0b101e12;--sidebar-item-hover:#0b101e0b;--sidebar-item-title:#070a13;--sidebar-item-preview:#555c69;--admin-muted:#ffffffbd}[data-theme=dark][data-accent=navy]{--background:#0d0e17;--background-secondary:#11131e;--background-tertiary:#161826;--card:#131421;--card-elevated:#181a2a;--input:#0f101b;--hover:#7d94b714;--selected:#7d94b726;--text-primary:#e4e8ee;--text-heading:#f4f6f9;--text-secondary:#b8bfcb;--text-muted:#8e95a3;--text-placeholder:#6c7382;--text-disabled:#4f5464;--border-subtle:#aab5cd14;--border:#aab5cd21;--border-strong:#aab5cd38;--chat-received:#171928;--chat-canvas-dot:#aab5cd0d;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #0000004d, 0 2px 8px #0003;--shadow-md:0 2px 6px #0000004d, 0 12px 28px #00000059;--shadow-lg:0 6px 14px #00000059, 0 28px 64px #00000080;--overlay:#03030899;--sidebar-brand-bg:#0d0e17;--sidebar-footer-bg:#0d0e17;--sidebar-text:#e9ecf2;--sidebar-text-muted:#9da4b4;--sidebar-border:#dce3eb14;--sidebar-input-bg:#0f101d;--sidebar-input-border:#dce3eb1a;--sidebar-input-text:#e9ecf2;--sidebar-icon-color:#b8bfcd;--sidebar-icon-hover:#fff;--sidebar-icon-hover-bg:#ffffff0f;--sidebar-item-hover:#ffffff09;--sidebar-item-title:#f4f6f9;--sidebar-item-preview:#a9b1bf;--admin-muted:#a5acba}[data-theme=light][data-accent=magenta]{--background:#f7f6f9;--background-secondary:#f2eff4;--background-tertiary:#e9e3ed;--card:#fdfcfe;--card-elevated:#fff;--input:#f2eff5;--hover:#ece7f0;--selected:#e3d9ed;--text-primary:#211319;--text-heading:#13070e;--text-secondary:#5b4a54;--text-muted:#76656f;--text-placeholder:#9d8e97;--text-disabled:#c2b6be;--border-subtle:#e7e2eb;--border:#ddd6e2;--border-strong:#cabece;--chat-received:#fff;--shadow-xs:0 1px 2px #1e0b150d;--shadow-sm:0 1px 2px #1e0b150a, 0 2px 8px #1e0b150a;--shadow-md:0 2px 4px #1e0b150a, 0 10px 24px #1e0b1514;--shadow-lg:0 4px 10px #1e0b150d, 0 24px 56px #1e0b1529;--overlay:#1e0b1561;--sidebar-text:#13070e;--sidebar-text-muted:#6f5a67;--sidebar-border:#1e0b1514;--sidebar-input-bg:#fff;--sidebar-input-border:#1e0b151f;--sidebar-input-text:#13070e;--sidebar-icon-color:#604a57;--sidebar-icon-hover:#13070e;--sidebar-icon-hover-bg:#1e0b1512;--sidebar-item-hover:#1e0b150b;--sidebar-item-title:#13070e;--sidebar-item-preview:#695562;--admin-muted:#ffffffbd}[data-theme=dark][data-accent=magenta]{--background:#170d11;--background-secondary:#1e1116;--background-tertiary:#26161c;--card:#211318;--card-elevated:#2a181f;--input:#1b0f14;--hover:#b77da514;--selected:#b77da526;--text-primary:#eee4eb;--text-heading:#f9f4f8;--text-secondary:#cbb8c4;--text-muted:#a38e9b;--text-placeholder:#826c79;--text-disabled:#644f5a;--border-subtle:#cdaac014;--border:#cdaac021;--border-strong:#cdaac038;--chat-received:#28171e;--chat-canvas-dot:#cdaac00d;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #0000004d, 0 2px 8px #0003;--shadow-md:0 2px 6px #0000004d, 0 12px 28px #00000059;--shadow-lg:0 6px 14px #00000059, 0 28px 64px #00000080;--overlay:#08030599;--sidebar-brand-bg:#170d11;--sidebar-footer-bg:#170d11;--sidebar-text:#f2e9ef;--sidebar-text-muted:#b49dab;--sidebar-border:#ebdce714;--sidebar-input-bg:#1d0f14;--sidebar-input-border:#ebdce71a;--sidebar-input-text:#f2e9ef;--sidebar-icon-color:#cdb8c5;--sidebar-icon-hover:#fff;--sidebar-icon-hover-bg:#ffffff0f;--sidebar-item-hover:#ffffff09;--sidebar-item-title:#f9f4f8;--sidebar-item-preview:#bfa9b7;--admin-muted:#baa5b2}[data-theme=light][data-accent=brown]{--background:#f9f6f7;--background-secondary:#f4eff0;--background-tertiary:#ede3e5;--card:#fefcfd;--card-elevated:#fff;--input:#f5eff1;--hover:#f0e7e9;--selected:#edd9e0;--text-primary:#211d13;--text-heading:#130e07;--text-secondary:#5b534a;--text-muted:#766e65;--text-placeholder:#9d968e;--text-disabled:#c2bcb6;--border-subtle:#ebe2e4;--border:#e2d6d9;--border-strong:#cebec0;--chat-received:#fff;--shadow-xs:0 1px 2px #1e160b0d;--shadow-sm:0 1px 2px #1e160b0a, 0 2px 8px #1e160b0a;--shadow-md:0 2px 4px #1e160b0a, 0 10px 24px #1e160b14;--shadow-lg:0 4px 10px #1e160b0d, 0 24px 56px #1e160b29;--overlay:#1e160b61;--sidebar-text:#130e07;--sidebar-text-muted:#6f655a;--sidebar-border:#1e160b14;--sidebar-input-bg:#fff;--sidebar-input-border:#1e160b1f;--sidebar-input-text:#130e07;--sidebar-icon-color:#60564a;--sidebar-icon-hover:#130e07;--sidebar-icon-hover-bg:#1e160b12;--sidebar-item-hover:#1e160b0b;--sidebar-item-title:#130e07;--sidebar-item-preview:#695f55;--admin-muted:#ffffffbd}[data-theme=dark][data-accent=brown]{--background:#17150d;--background-secondary:#1e1a11;--background-tertiary:#262216;--card:#211e13;--card-elevated:#2a2518;--input:#1b180f;--hover:#b7977d14;--selected:#b7977d26;--text-primary:#eee9e4;--text-heading:#f9f6f4;--text-secondary:#cbc1b8;--text-muted:#a3998e;--text-placeholder:#82786c;--text-disabled:#645c4f;--border-subtle:#cdbcaa14;--border:#cdbcaa21;--border-strong:#cdbcaa38;--chat-received:#282317;--chat-canvas-dot:#cdbcaa0d;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #0000004d, 0 2px 8px #0003;--shadow-md:0 2px 6px #0000004d, 0 12px 28px #00000059;--shadow-lg:0 6px 14px #00000059, 0 28px 64px #00000080;--overlay:#08070399;--sidebar-brand-bg:#17150d;--sidebar-footer-bg:#17150d;--sidebar-text:#f2eee9;--sidebar-text-muted:#b4a99d;--sidebar-border:#ebe2dc14;--sidebar-input-bg:#1d1a0f;--sidebar-input-border:#ebe2dc1a;--sidebar-input-text:#f2eee9;--sidebar-icon-color:#cdc3b8;--sidebar-icon-hover:#fff;--sidebar-icon-hover-bg:#ffffff0f;--sidebar-item-hover:#ffffff09;--sidebar-item-title:#f9f6f4;--sidebar-item-preview:#bfb4a9;--admin-muted:#bab0a5}:root,[data-theme],[data-accent]{--brand-forest:var(--hue-deep);--brand-lime:var(--hue-signal);--primary-border:color-mix(in srgb, var(--hue-base) 45%, var(--border));--link:var(--hue-text);--link-hover:var(--hue-hover);--brand-ink:color-mix(in oklab, var(--hue-deep) 22%, #040705);--brand-porcelain:color-mix(in oklab, var(--hue-base) 5%, #f9faf8);--avatar-1:var(--hue-base);--avatar-2:color-mix(in oklab, var(--hue-base) 50%, #2f5d57);--avatar-3:color-mix(in oklab, var(--hue-base) 50%, #56663a);--avatar-4:color-mix(in oklab, var(--hue-base) 50%, #41566b);--avatar-5:color-mix(in oklab, var(--hue-base) 50%, #7a5a36);--avatar-6:color-mix(in oklab, var(--hue-base) 50%, #5b4a6b)}[data-theme=dark],[data-theme=dark] [data-accent]{--primary-border:color-mix(in srgb, var(--hue-text) 40%, var(--border));--link-hover:color-mix(in srgb, var(--hue-text) 80%, #fff)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-sans);font-size:var(--fs-md);background:var(--background);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;letter-spacing:-.006em;font-feature-settings:"cv11", "ss01";line-height:1.5}h1,h2,h3,h4{color:var(--text-heading);letter-spacing:var(--tracking-tight);font-weight:700;line-height:1.25}a{color:var(--link)}a:hover{color:var(--link-hover)}::selection{background:var(--accent);color:var(--on-accent)}button{font:inherit;cursor:pointer;color:inherit;letter-spacing:inherit;background:0 0;border:none}button:disabled{cursor:not-allowed}:focus{outline:none}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}code{font-family:var(--font-mono)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background-color:var(--text-placeholder)}::-webkit-scrollbar-track{background:0 0}input,textarea,select{font:inherit;font-size:var(--fs-md);color:var(--text-primary);background:var(--input);border:1px solid var(--border);border-radius:var(--radius-md);min-height:var(--control-h);width:100%;transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), background-color var(--dur) var(--ease-out);outline:none;padding:9px 14px}input:hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus),select:hover:not(:disabled):not(:focus){border-color:var(--border-strong)}input:focus,textarea:focus,select:focus{background:var(--card-elevated);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}[data-theme=dark] input:focus,[data-theme=dark] textarea:focus,[data-theme=dark] select:focus{border-color:var(--primary-text);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-text) 16%, transparent)}input:disabled,textarea:disabled,select:disabled{color:var(--text-muted);cursor:not-allowed}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;accent-color:var(--primary);padding:0}textarea{resize:vertical;min-height:84px;line-height:1.5}input[type=date],input[type=datetime-local]{min-height:var(--control-h)}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-secondary) 50%), linear-gradient(135deg, var(--text-secondary) 50%, transparent 50%);cursor:pointer;background-position:calc(100% - 19px) 52%,calc(100% - 14px) 52%;background-repeat:no-repeat;background-size:5px 5px;padding-right:38px}select option{background:var(--card-elevated);color:var(--text-primary)}::placeholder{color:var(--text-placeholder);opacity:1}.modal-form>label,.field-label-block{font-size:var(--fs-sm);color:var(--text-secondary);flex-direction:column;gap:6px;font-weight:600;display:flex}.icon{vertical-align:middle;flex-shrink:0;display:inline-block}.btn-primary,.btn-small,.btn-secondary,.btn-link-guest,.btn-google,.btn-danger{justify-content:center;align-items:center;gap:var(--sp-2);white-space:nowrap;border-radius:var(--radius-md);transition:background-color var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), transform var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent;border:1px solid #0000;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.btn-primary{min-height:var(--control-h);padding:0 var(--sp-5);font-size:var(--fs-md);background:var(--primary);color:var(--btn-text);box-shadow:var(--shadow-xs), inset 0 1px 0 color-mix(in srgb, var(--on-chrome) 8%, transparent)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:active:not(:disabled),.btn-small:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-link-guest:active:not(:disabled),.btn-google:active:not(:disabled),.btn-danger:active:not(:disabled){transform:scale(.97)}.btn-primary:active:not(:disabled){background:var(--primary-active)}.btn-primary:disabled,.btn-small:disabled,.btn-secondary:disabled,.btn-link-guest:disabled,.btn-google:disabled,.btn-danger:disabled{opacity:.5;box-shadow:none}.btn-block{width:100%;margin-bottom:var(--sp-3)}.btn-secondary,.btn-link-guest{min-height:var(--control-h);padding:0 var(--sp-5);font-size:var(--fs-md);background:var(--card-elevated);color:var(--text-heading);border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled),.btn-link-guest:hover:not(:disabled){background:var(--hover);border-color:var(--text-placeholder)}.btn-link-guest{width:100%}.btn-small{min-height:var(--control-h-sm);padding:0 var(--sp-3);font-size:var(--fs-sm);background:var(--primary);color:var(--btn-text);cursor:pointer;flex-shrink:0}.btn-small .icon{color:inherit}.btn-small:hover:not(:disabled){background:var(--primary-hover)}.btn-small.secondary{color:var(--text-heading);border-color:var(--border-strong);background:0 0}.btn-small.secondary:hover:not(:disabled){background:var(--hover)}.btn-small.danger{color:var(--error);border-color:color-mix(in srgb, var(--error) 45%, transparent);background:0 0}.btn-small.danger:hover:not(:disabled){background:var(--error-soft);border-color:var(--error)}.btn-danger{width:100%;min-height:var(--control-h);padding:0 var(--sp-4);font-size:var(--fs-sm);color:var(--error);border-color:color-mix(in srgb, var(--error) 40%, transparent);background:0 0}.btn-danger:hover:not(:disabled){background:var(--error-soft);border-color:var(--error)}.icon-btn{border-radius:var(--radius-md);min-width:36px;min-height:36px;color:var(--text-secondary);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;padding:7px;line-height:0;display:inline-flex;position:relative}.icon-btn:hover:not(:disabled){background:var(--hover);color:var(--text-heading)}.icon-btn:active:not(:disabled){transform:scale(.92)}.icon-btn:disabled{opacity:.4}[data-tip]:after{content:attr(data-tip);border-radius:var(--radius-sm);background:var(--brand-ink);color:var(--brand-porcelain);font-size:var(--fs-xs);letter-spacing:0;white-space:nowrap;pointer-events:none;opacity:0;z-index:80;box-shadow:var(--shadow-md);transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);padding:5px 8px;font-weight:500;line-height:1.2;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%,-2px)}[data-theme=dark] [data-tip]:after{background:var(--text-heading);color:var(--brand-ink)}[data-tip][data-tip-pos=top]:after{top:auto;bottom:calc(100% + 6px);transform:translate(-50%,2px)}@media (hover:hover){[data-tip]:hover:after{opacity:1;transition-delay:.35s;transform:translate(-50%)}}[data-tip]:focus-visible:after{opacity:1;transform:translate(-50%)}.chat-header-actions [data-tip]:last-child:after,.sidebar-footer [data-tip]:last-child:after,.sidebar-actions [data-tip]:last-child:after{left:auto;right:0;transform:translateY(-2px)}.sidebar-footer [data-tip]:first-child:after{left:0;transform:translateY(2px)}@media (hover:hover){.chat-header-actions [data-tip]:last-child:hover:after,.sidebar-footer [data-tip]:last-child:hover:after,.sidebar-actions [data-tip]:last-child:hover:after,.sidebar-footer [data-tip]:first-child:hover:after{transform:translate(0)}}.admin-tag,.tier-tag,.present-tag,.pill-badge,.guest-tag,.item-badge,.settings-status-pill,.joined-tag,.pending-tag{border-radius:var(--radius-sm);height:22px;font-size:var(--fs-2xs);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;flex-shrink:0;align-items:center;gap:4px;padding:0 8px;font-weight:600;display:inline-flex}.admin-tag{background:var(--accent-soft);color:var(--primary-text);border-color:color-mix(in srgb, var(--accent-strong) 55%, transparent)}.joined-tag{color:var(--primary-text);background:var(--primary-soft)}.pending-tag{color:var(--warning);background:var(--warning-soft)}.tier-tag{color:var(--text-secondary);border-color:var(--border-strong)}.tier-tag.tier-faculty{color:var(--info);background:var(--info-soft);border-color:#0000}.tier-tag.tier-guest{color:var(--text-muted);border-style:dashed}.tier-tag.tier-member{color:var(--success);background:var(--success-soft);border-color:#0000}.present-tag{color:var(--text-muted);border-color:var(--border)}.present-tag.yes{color:var(--success);background:var(--success-soft);border-color:#0000}.pill-badge{background:var(--input);color:var(--text-muted);border-color:var(--border)}.pill-badge.green{background:var(--accent-soft);color:var(--primary-text)}.icon-badge{border-radius:var(--radius-full);background:var(--brand-lime);min-width:16px;height:16px;color:var(--hue-on-signal);font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--card-elevated);animation:pop-in .36s var(--ease-spring);justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:3px;right:2px}.icon-dot{background:var(--brand-lime);width:8px;height:8px;box-shadow:0 0 0 2px var(--sidebar-footer-bg);animation:pop-in .36s var(--ease-spring);border-radius:50%;position:absolute;top:8px;right:calc(50% - 12px)}.notifications-page{background:var(--background);height:100%;min-height:0;animation:fade-in var(--dur-slow) var(--ease-out);flex-direction:column;display:flex}.page-header-icon{background:var(--primary-soft);width:40px;height:40px;color:var(--primary-text);border-radius:28%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.page-header h1.chat-header-title{font-size:var(--fs-lg)}.notifications-scroll{flex:1;min-height:0;overflow-y:auto}.notifications-inner{max-width:760px;padding:0 var(--sp-6) var(--sp-10);margin:0 auto}.notifications-page .notif-tabs.club-tabs{z-index:2;margin:0 calc(var(--sp-6) * -1) var(--sp-5);padding:0 var(--sp-6);background:color-mix(in srgb, var(--background) 92%, transparent);-webkit-backdrop-filter:blur(6px);position:sticky;top:0}.notifications-page .notif-tabs .club-tab{min-height:52px}.service-inner{padding-top:var(--sp-10)}.service-hero{align-items:center;gap:var(--sp-3);text-align:center;padding:var(--sp-8) var(--sp-6);margin-bottom:var(--sp-8);border-radius:var(--radius-lg);border:1px solid var(--border);background:radial-gradient(600px 220px at 50% 0%, color-mix(in srgb, var(--hue-soft) 80%, transparent), transparent 75%), radial-gradient(var(--chat-canvas-dot) 1px, transparent 1.2px) 0 0 / 16px 16px, var(--card);animation:rise-in .45s var(--ease-out) both;flex-direction:column;display:flex}.service-hero-icon{background:var(--brand-forest);width:68px;height:68px;color:var(--brand-lime);box-shadow:var(--shadow-md), inset 0 -3px 0 color-mix(in srgb, var(--brand-ink) 18%, transparent);border-radius:30%;justify-content:center;align-items:center;animation:4s ease-in-out infinite float-soft;display:inline-flex}.service-hero h2{font-size:var(--fs-2xl);font-weight:700}.service-hero p{max-width:440px;color:var(--text-secondary);line-height:1.55}.service-planned-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.service-planned-card{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-xs);animation:fade-up .4s var(--ease-out) both;display:flex}.service-planned-card:nth-child(2){animation-delay:60ms}.service-planned-card:nth-child(3){animation-delay:.12s}.service-planned-card h3{font-size:var(--fs-md);margin-bottom:2px;font-weight:600}.service-planned-card p{font-size:var(--fs-xs);color:var(--text-muted);line-height:1.5}.service-actions{margin-top:var(--sp-8);justify-content:center;display:flex}.committee-grid{gap:var(--sp-3);padding:var(--sp-1) var(--sp-1) var(--sp-3);animation:fade-up .24s var(--ease-out);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.committee-group-label{padding:var(--sp-2) var(--sp-1) var(--sp-2);font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--sidebar-text-muted);align-items:center;gap:6px;font-weight:700;display:flex}.committee-group-label span{letter-spacing:0;opacity:.8;font-weight:600}.committee-card,.committee-card-skeleton{aspect-ratio:1;border-radius:var(--radius-lg)}.committee-card{min-width:0;padding:var(--sp-3);text-align:left;background:var(--sidebar-input-bg);border:1px solid var(--sidebar-border);color:var(--sidebar-text);box-shadow:var(--shadow-xs);transition:transform var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), background-color var(--dur) var(--ease-out);flex-direction:column;justify-content:space-between;align-items:flex-start;gap:4px;display:flex;position:relative}[data-theme=dark] .committee-card{background:color-mix(in srgb, var(--sidebar-text) 5%, transparent)}.committee-card:hover{border-color:var(--primary-border);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.committee-card:active{transform:translateY(0)scale(.97)}.committee-card.active{background:var(--sidebar-item-active);border-color:var(--sidebar-item-active-border);box-shadow:inset 0 0 0 1px var(--sidebar-item-active-border)}.committee-card-icon{background:var(--primary-soft);width:38px;height:38px;color:var(--primary-text);transition:transform var(--dur-slow) var(--ease-spring);border-radius:30%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.committee-card:hover .committee-card-icon{transform:rotate(-6deg)scale(1.05)}.committee-card.active .committee-card-icon{background:var(--brand-forest);color:var(--brand-lime)}.committee-card-name{width:100%;font-size:var(--fs-sm);letter-spacing:-.01em;color:var(--sidebar-item-title);-webkit-line-clamp:3;line-clamp:3;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;-webkit-box-orient:vertical;font-weight:650;line-height:1.25;display:-webkit-box;overflow:hidden}.committee-card-count{font-size:var(--fs-2xs);color:var(--sidebar-text-muted);font-variant-numeric:tabular-nums;font-weight:500}.committee-inner{padding-top:var(--sp-5)}.committee-toolbar{margin-bottom:var(--sp-2)}.committee-search>.icon{color:var(--text-muted);pointer-events:none;position:absolute;left:12px}.committee-search input{padding-left:36px}.committee-leads,.committee-people{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.committee-leads{margin-bottom:var(--sp-2)}.person-card{align-items:flex-start;gap:var(--sp-3);min-width:0;padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-xs);animation:fade-up .3s var(--ease-out) both;transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);display:flex}.person-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.person-card.is-lead{border-color:color-mix(in srgb, var(--accent-strong) 55%, var(--border));background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 55%), var(--card)}.person-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.person-top{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.person-name{color:var(--text-heading);overflow-wrap:anywhere;font-weight:650}.person-role{border-radius:var(--radius-sm);background:var(--primary-soft);min-height:20px;color:var(--primary-text);align-items:center;padding:1px 7px;font-size:10.5px;font-weight:650;line-height:1.25;display:inline-flex}.person-card.is-lead .person-role{background:var(--brand-forest);color:var(--brand-lime)}.person-designation{font-size:var(--fs-xs);color:var(--text-secondary);line-height:1.4}.person-contact{gap:2px var(--sp-3);flex-wrap:wrap;margin-top:4px;display:flex}.person-contact a{min-width:0;max-width:100%;font-size:var(--fs-xs);color:var(--link);align-items:center;gap:5px;text-decoration:none;display:inline-flex}.person-contact a span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.person-contact a:hover span{text-underline-offset:2px;text-decoration:underline}.person-contact .icon{color:var(--text-muted);flex-shrink:0}.person-dm{border-radius:var(--radius-sm);min-height:30px;font-size:var(--fs-sm);color:var(--link);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-self:flex-start;align-items:center;gap:6px;margin-top:6px;margin-left:-6px;padding:0 8px;font-weight:650;display:inline-flex}.person-dm:hover:not(:disabled){background:var(--primary-soft)}.person-dm:disabled{color:var(--text-placeholder);cursor:default;font-weight:500}.person-dm.is-self{color:var(--text-muted);cursor:default;font-weight:500}.committee-source{margin-top:var(--sp-8);font-size:var(--fs-2xs);color:var(--text-placeholder);text-align:center}.committee-card.is-club{justify-content:flex-start;gap:var(--sp-2);padding:var(--sp-3) var(--sp-3) var(--sp-2)}.committee-card-logo{aspect-ratio:1;max-width:100%;min-height:0;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--brand-ink) 6%, transparent);background:#fff;border-radius:50%;flex:1;justify-content:center;align-self:center;align-items:center;display:flex;overflow:hidden}.committee-card-logo img{object-fit:contain;width:100%;height:100%;transition:transform var(--dur-slow) var(--ease-out)}.committee-card.is-club:hover .committee-card-logo img{transform:scale(1.04)}.committee-card.is-club .committee-card-name{-webkit-line-clamp:2;line-clamp:2;font-size:var(--fs-xs);text-align:center;padding:0 4px}.page-header-icon.has-logo{box-shadow:inset 0 0 0 1px var(--border);background:#fff;border-radius:50%;overflow:hidden}.page-header-icon.has-logo img{object-fit:contain;width:100%;height:100%}.club-profile{padding-top:var(--sp-10)}.club-hero{align-items:center;gap:var(--sp-2);text-align:center;padding:var(--sp-8) var(--sp-6);border-radius:var(--radius-lg);border:1px solid var(--border);background:radial-gradient(600px 220px at 50% 0%, color-mix(in srgb, var(--hue-soft) 80%, transparent), transparent 75%), var(--card);animation:rise-in .45s var(--ease-out) both;flex-direction:column;display:flex}.club-hero-logo{width:132px;height:132px;margin-bottom:var(--sp-3);box-shadow:var(--shadow-md), 0 0 0 1px var(--border);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden}.committee-card-logo.is-inset img,.club-hero-logo.is-inset img,.page-header-icon.is-inset img{width:76%;height:76%}.club-hero-logo img{object-fit:contain;width:100%;height:100%}.club-hero h2{font-size:var(--fs-2xl);font-weight:700}.club-hero-handle{font-size:var(--fs-sm);color:var(--primary-text);font-weight:600}.club-hero p{max-width:460px;margin:var(--sp-2) 0 var(--sp-4);color:var(--text-secondary);line-height:1.6}.club-hero .btn-secondary{text-decoration:none}.club-hero-actions{justify-content:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.club-hero-actions>*{min-height:42px}@media (width<=420px){.club-hero-actions{flex-direction:column;align-self:stretch}}.sidebar-footer .icon-btn.is-current{color:var(--on-chrome);background:color-mix(in srgb, var(--on-chrome) 14%, transparent)}.notif-tabs.club-tabs{margin:0 calc(var(--sp-6) * -1) var(--sp-4);padding:0 var(--sp-4)}.notif-tabs .club-tab{gap:6px}.notif-count{font-size:var(--fs-2xs);color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:600}.notif-pane{min-height:240px;animation:fade-up .24s var(--ease-out)}.notif-pane .events-section:first-child{margin-top:0}.notif-pane .dashboard-list+.events-section{margin-top:var(--sp-5)}.notif-news.is-new{border-left-color:var(--accent-strong);background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 40%), var(--card)}.notif-open{cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out)}.notif-open:hover{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary-text)}.notif-open .icon:last-child{opacity:0;transition:opacity var(--dur) var(--ease-out), margin var(--dur) var(--ease-out);margin-left:-4px}.notif-open:hover .icon:last-child{opacity:1;margin-left:0}.notif-tabs .club-tab{white-space:normal;text-align:center;padding:6px var(--sp-2);line-height:1.2}.notif-tabs .tab-badge,.notif-tabs .notif-count{white-space:nowrap;flex-shrink:0}.circular-head{align-items:flex-start;gap:var(--sp-3);display:flex}.circular-title{font-size:var(--fs-lg);letter-spacing:-.01em;color:var(--text-heading);margin-bottom:2px;font-weight:650;line-height:1.35}.circular-card{border-left-color:var(--primary-text)}.circular-body.is-clamped{-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.circular-more{margin-top:calc(var(--sp-2) * -1);font-size:var(--fs-sm);color:var(--link);align-self:flex-start;font-weight:600}.circular-more:hover{text-underline-offset:3px;text-decoration:underline}.circular-attachment{align-self:flex-start;max-width:100%;margin:0}.circular-options{gap:var(--sp-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.circular-file{align-items:center;gap:var(--sp-2);min-height:40px;padding:0 4px 0 var(--sp-3);border-radius:var(--radius-md);background:var(--input);border:1px solid var(--border);color:var(--text-primary);font-weight:500;display:flex}.circular-file>.icon{color:var(--primary-text)}.circular-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.circulars-admin .field-label-block>.btn-small{align-self:flex-start;min-height:36px}@media (width<=640px){.circular-options{grid-template-columns:1fr}.notif-tabs .club-tab .icon{display:none}.notif-tabs.club-tabs{margin:0 calc(var(--sp-5) * -1) var(--sp-4)}}.icon-btn.has-requests{color:var(--primary-text)}.request-chip{border-radius:var(--radius-sm);background:var(--warning-soft);height:20px;color:var(--warning);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;animation:pop-in .36s var(--ease-spring);flex-shrink:0;align-items:center;gap:3px;padding:0 6px;font-weight:700;display:inline-flex}.tab-badge{border-radius:var(--radius-full);background:var(--accent);min-width:18px;height:18px;color:var(--on-accent);letter-spacing:0;justify-content:center;align-items:center;margin-left:6px;padding:0 5px;font-size:10.5px;font-weight:700;display:inline-flex}.chip-row{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.club-chip,.role-chip{min-height:28px;font-size:var(--fs-xs);border-radius:var(--radius-sm);background:var(--input);border:1px solid var(--border);color:var(--text-primary);align-items:center;gap:4px;padding:0 4px 0 10px;font-weight:500;display:inline-flex}.role-chip{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent-strong) 50%, transparent);color:var(--primary-text);font-weight:600}.chip-remove{width:20px;height:20px;color:var(--text-muted);border-radius:var(--radius-xs);transition:all var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.chip-remove:hover{color:var(--error);background:var(--error-soft)}.club-tabs{gap:var(--sp-1);border-bottom:1px solid var(--border);padding:0 var(--sp-2);display:flex}.club-tab{min-height:42px;padding:0 var(--sp-3);color:var(--text-muted);font-weight:600;font-size:var(--fs-sm);white-space:nowrap;transition:color var(--dur) var(--ease-out);flex:1;justify-content:center;align-items:center;display:inline-flex;position:relative}.club-tab:after{content:"";left:var(--sp-2);right:var(--sp-2);height:2px;transition:transform var(--dur-slow) var(--ease-out);background:currentColor;border-radius:2px 2px 0 0;position:absolute;bottom:-1px;transform:scaleX(0)}.club-tab:hover{color:var(--text-heading)}.club-tab.active{color:var(--primary-text)}.club-tab.active:after{transform:scaleX(1)}.full-center{justify-content:center;align-items:center;height:100%;display:flex}.spinner{border:2.5px solid var(--border);border-top-color:var(--primary-text);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--border-subtle) 0%, var(--border) 40%, var(--border-subtle) 80%);background-size:300% 100%;animation:1.4s ease-in-out infinite shimmer;display:block}.skeleton-row{align-items:center;gap:var(--sp-3);padding:10px var(--sp-4);display:flex}.skeleton-avatar{border-radius:28%;flex-shrink:0;width:44px;height:44px}.skeleton-lines{flex-direction:column;flex:1;gap:7px;display:flex}.skeleton-line{height:10px}.sidebar .skeleton{background:linear-gradient(90deg, var(--sidebar-item-hover) 0%, var(--sidebar-icon-hover-bg) 40%, var(--sidebar-item-hover) 80%);background-size:300% 100%}.side-note{color:var(--text-muted);font-size:var(--fs-sm);padding:var(--sp-4);text-align:center;line-height:1.55}.side-note.center{margin:auto}.modal-form .side-note,.modal-body>.side-note:first-child{text-align:left;padding:var(--sp-3) var(--sp-4);background:var(--background-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary)}.sidebar .side-note{color:var(--sidebar-text-muted)}.empty-box{text-align:center;padding:var(--sp-6) var(--sp-4);align-items:center;gap:var(--sp-2);flex-direction:column;display:flex}.empty-box-icon{background:var(--primary-soft);width:52px;height:52px;color:var(--primary-text);margin-bottom:var(--sp-2);border-radius:30%;justify-content:center;align-items:center;animation:4s ease-in-out infinite float-soft;display:flex}.empty-box-text{font-size:var(--fs-lg);color:var(--text-heading);font-weight:600}.empty-box-sub{font-size:var(--fs-sm);color:var(--text-muted);max-width:340px;margin-bottom:var(--sp-2)}.auth-error{align-items:flex-start;gap:var(--sp-2);color:var(--error);background:var(--error-soft);font-size:var(--fs-sm);padding:9px var(--sp-3);border-radius:var(--radius-md);animation:shake .32s var(--ease-out);font-weight:500;display:flex}.auth-success,.auth-note-success{background:var(--success-soft);font-size:var(--fs-sm);text-align:center;padding:9px var(--sp-3);border-radius:var(--radius-md);font-weight:600;color:var(--success)!important;margin:0!important}.auth-error-center{text-align:center;justify-content:center;margin-top:10px}.auth-page{min-height:100%;padding:var(--sp-6) var(--sp-4);background:radial-gradient(1200px 600px at 50% -10%, var(--background-tertiary), transparent 60%), var(--background);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-card{z-index:2;width:400px;max-width:100%;padding:var(--sp-10) var(--sp-8) var(--sp-6);background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:rise-in .5s var(--ease-out) both;position:relative}.auth-card:before{content:"";background:var(--brand-lime);border-radius:0 0 3px 3px;height:3px;position:absolute;top:-1px;left:32px;right:32px}.auth-logo{font-size:var(--fs-2xl);letter-spacing:.12em;text-transform:uppercase;text-align:center;color:var(--text-heading);justify-content:center;align-items:center;gap:10px;font-weight:700;display:flex}.auth-logo-mark{background:var(--brand-forest);width:38px;height:38px;color:var(--brand-lime);box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--brand-ink) 18%, transparent);border-radius:11px;justify-content:center;align-items:center;display:inline-flex}.auth-logo-mark .icon{width:20px;height:20px}.auth-tagline{text-align:center;color:var(--text-muted);margin:var(--sp-2) 0 var(--sp-8);font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:600}.auth-card form{gap:var(--sp-3);flex-direction:column;display:flex}.auth-card .btn-primary{min-height:44px;margin-top:var(--sp-1)}.auth-divider{align-items:center;gap:var(--sp-3);margin:var(--sp-5) 0;color:var(--text-muted);font-size:var(--fs-xs);display:flex}.auth-divider:before,.auth-divider:after{content:"";border-top:1px solid var(--border);flex:1}.auth-note{margin-top:var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted);text-align:center;line-height:1.55}.auth-card form .auth-note{margin:0 0 var(--sp-1)}.auth-switch{margin-top:var(--sp-5);text-align:center;font-size:var(--fs-sm);color:var(--text-secondary);line-height:2}.auth-switch a{color:var(--primary-text);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:3px;transition:text-decoration-color var(--dur) var(--ease-out);font-weight:600}.auth-switch a:hover{text-decoration-color:currentColor}.auth-theme-switch-wrap{margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--border-subtle);justify-content:center;display:flex}.btn-google{width:100%;min-height:44px;font-size:var(--fs-md);color:var(--text-primary);background:var(--card-elevated);border-color:var(--border-strong)}.btn-google:hover:not(:disabled){background:var(--hover)}.gateway-status{text-align:center;line-height:1.7}.gateway-status p{margin-bottom:14px}.gateway-signed-in{text-align:left;margin-top:0}.theme-toggle-switch{border-radius:var(--radius-full);cursor:pointer;-webkit-user-select:none;user-select:none;width:60px;height:32px;transition:background-color var(--dur-slow) var(--ease-out), border-color var(--dur-slow) var(--ease-out);flex-shrink:0;align-items:center;display:inline-flex;position:relative}.theme-toggle-switch.is-light{background:var(--background-tertiary);border:1px solid var(--border-strong);box-shadow:inset 0 1px 2px color-mix(in srgb, var(--brand-ink) 8%, transparent)}.theme-toggle-switch.is-light:hover{border-color:var(--text-placeholder)}.theme-toggle-switch.is-dark{background:color-mix(in oklab, var(--brand-ink) 85%, black);border:1px solid color-mix(in srgb, var(--hue-signal) 22%, transparent);box-shadow:inset 0 1px 3px color-mix(in srgb, var(--brand-ink) 40%, transparent)}.theme-toggle-switch.is-dark:hover{border-color:color-mix(in srgb, var(--hue-signal) 42%, transparent)}.switch-icon-wrap{pointer-events:none;justify-content:space-between;align-items:center;padding:0 9px;display:flex;position:absolute;inset:0}.switch-icon{animation:icon-turn .4s var(--ease-out)}.theme-toggle-switch.is-light .switch-icon.sun{color:var(--warning);margin-right:auto}.theme-toggle-switch.is-dark .switch-icon.moon{color:var(--brand-lime);margin-left:auto}.switch-knob{width:24px;height:24px;transition:transform var(--dur-slow) var(--ease-spring), background-color var(--dur-slow) ease;border-radius:50%;position:absolute;top:3px;left:3px}.theme-toggle-switch:active .switch-knob{width:28px}.theme-toggle-switch.is-light .switch-knob{background:var(--brand-forest);box-shadow:0 2px 5px color-mix(in srgb, var(--brand-ink) 30%, transparent);transform:translate(28px)}.theme-toggle-switch.is-light:active .switch-knob{transform:translate(24px)}.theme-toggle-switch.is-dark .switch-knob{background:var(--brand-porcelain);box-shadow:0 2px 6px color-mix(in srgb, var(--brand-ink) 40%, transparent), 0 0 0 3px color-mix(in srgb, var(--hue-signal) 12%, transparent);transform:translate(0)}.app{background:var(--background);height:100%;display:flex;overflow:hidden}.main-pane{background:var(--background);flex-direction:column;flex:1;min-width:0;display:flex}.sidebar{background:var(--sidebar-bg);width:360px;min-width:300px;color:var(--sidebar-text);border-right:1px solid var(--sidebar-border);--dot-ring:var(--sidebar-bg);flex-direction:column;display:flex}.sidebar-brand{padding:14px var(--sp-4);background:var(--sidebar-brand-bg);color:var(--on-chrome);font-size:var(--fs-sm);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:10px;font-weight:700;display:flex}.brand-logo-badge{background:var(--brand-lime);width:26px;height:26px;color:var(--hue-on-signal);letter-spacing:-.02em;box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--brand-ink) 16%, transparent);border-radius:8px;justify-content:center;align-items:center;font-size:11.5px;font-weight:800;display:inline-flex}.sidebar-header{align-items:center;gap:var(--sp-3);padding:10px var(--sp-3) 10px var(--sp-4);background:var(--sidebar-header-bg);border-bottom:1px solid var(--sidebar-border);--dot-ring:var(--sidebar-header-bg);display:flex;position:relative}.status-trigger{transition:transform var(--dur-fast) var(--ease-out);border-radius:28%;padding:0;line-height:0}.status-trigger:active{transform:scale(.94)}.sidebar-me-wrap{border-radius:var(--radius-md);text-align:left;cursor:pointer;min-width:0;transition:background-color var(--dur-fast) var(--ease-out);flex-direction:column;flex:1;align-items:flex-start;gap:1px;margin-left:-4px;padding:4px 8px;display:flex}.sidebar-me-wrap:hover{background:var(--sidebar-item-hover)}.sidebar-me{max-width:100%;font-weight:600;font-size:var(--fs-md);color:var(--sidebar-text);white-space:nowrap;text-overflow:ellipsis;align-items:center;display:flex;overflow:hidden}.sidebar-status{font-size:var(--fs-xs);align-items:center;gap:4px;font-weight:600;display:inline-flex}.sidebar-status .icon{transition:transform var(--dur) var(--ease-out)}.sidebar-me-wrap[aria-expanded=true] .sidebar-status .icon{transform:rotate(180deg)}.guest-tag{height:18px;color:var(--sidebar-text-muted);border-color:var(--sidebar-border);margin-left:6px;padding:0 6px;font-size:10px}.sidebar-actions{gap:2px;display:flex}.sidebar .icon-btn{color:var(--sidebar-icon-color)}.sidebar .icon-btn:hover:not(:disabled){color:var(--sidebar-icon-hover);background:var(--sidebar-icon-hover-bg)}.sidebar-search{padding:10px var(--sp-3)}.search-field{align-items:center;display:flex;position:relative}.search-field>.icon{color:var(--sidebar-text-muted);pointer-events:none;position:absolute;left:12px}.sidebar-search input{min-height:38px;font-size:var(--fs-sm);background:var(--sidebar-input-bg);border-color:var(--sidebar-input-border);color:var(--sidebar-input-text);padding:8px 34px 8px 36px}.sidebar-search input:focus{background:var(--sidebar-input-bg)}.sidebar-search input::placeholder{color:var(--sidebar-text-muted)}input[type=search]::-webkit-search-cancel-button{appearance:none}input[type=search]::-webkit-search-decoration{appearance:none}.search-clear{min-width:30px;min-height:30px;padding:0;position:absolute;right:4px}.search-kbd{font-family:var(--font-sans);color:var(--sidebar-text-muted);border:1px solid var(--sidebar-input-border);border-radius:var(--radius-xs);pointer-events:none;padding:1px 5px;font-size:10.5px;font-weight:600;position:absolute;right:10px}.sidebar-tabs{grid-template-columns:repeat(var(--tab-count,5), minmax(0, 1fr));margin:0 var(--sp-3);border-radius:var(--radius-md);background:var(--sidebar-item-hover);border:1px solid var(--sidebar-border);gap:2px;padding:3px;display:grid;position:relative}.sidebar-tab-indicator{width:calc((100% - 6px - (var(--tab-count,5) - 1) * 2px) / var(--tab-count,5));background:var(--sidebar-input-bg);box-shadow:var(--shadow-xs), inset 0 0 0 1px var(--sidebar-border);transform:translateX(calc(var(--tab-index,0) * (100% + 2px)));transition:transform var(--dur-slow) var(--ease-spring);border-radius:7px;position:absolute;top:3px;bottom:3px;left:3px}[data-theme=dark] .sidebar-tab-indicator{background:color-mix(in srgb, var(--sidebar-text) 12%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--sidebar-text) 10%, transparent)}.sidebar-tab{z-index:1;min-width:0;min-height:38px;color:var(--sidebar-icon-color);transition:color var(--dur) var(--ease-out);border-radius:7px;justify-content:center;align-items:center;display:inline-flex;position:relative}.sidebar-tab .icon{transition:transform var(--dur-slow) var(--ease-spring)}.sidebar-tab:hover{color:var(--sidebar-text)}.sidebar-tab:hover .icon{transform:translateY(-1px)}.sidebar-tab.active{color:var(--primary-text)}.sidebar-tab.active .icon{transform:scale(1.06)}.sidebar-tab:focus-visible{outline-offset:-2px}.sidebar-tabs .sidebar-tab:nth-child(2):after{left:0;transform:translateY(-2px)}.sidebar-tabs .sidebar-tab:last-child:after{left:auto;right:0;transform:translateY(-2px)}@media (hover:hover){.sidebar-tabs .sidebar-tab:nth-child(2):hover:after,.sidebar-tabs .sidebar-tab:last-child:hover:after{transform:translate(0)}}.sidebar-section-heading{justify-content:space-between;align-items:baseline;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4) var(--sp-1) calc(var(--sp-4) + 2px);animation:fade-up .24s var(--ease-out);display:flex}.sidebar-section-heading h2{font-size:var(--fs-lg);letter-spacing:-.015em;color:var(--sidebar-item-title);font-weight:700}.sidebar-section-meta{font-size:var(--fs-xs);color:var(--sidebar-text-muted);font-variant-numeric:tabular-nums;font-weight:500}.sidebar-tab-unread{box-shadow:0 0 0 2px var(--sidebar-bg);border-radius:var(--radius-full);background:var(--brand-lime);min-width:16px;height:16px;color:var(--hue-on-signal);font-variant-numeric:tabular-nums;animation:pop-in .36s var(--ease-spring);flex-shrink:0;justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:2px;right:calc(50% - 21px)}.chat-list>.chat-section{padding-top:var(--sp-1);animation:fade-up .24s var(--ease-out)}.chat-list{padding:0 var(--sp-2) var(--sp-3);flex:1;overflow-y:auto}.chat-section+.chat-section{margin-top:var(--sp-2)}.chat-section-header{z-index:1;padding:10px var(--sp-3) 6px;background:var(--sidebar-bg);color:var(--sidebar-text-muted);font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;justify-content:space-between;align-items:center;font-weight:700;display:flex;position:sticky;top:0}.chat-section-count{letter-spacing:0;opacity:.8;font-weight:600}.chat-item{align-items:center;gap:var(--sp-3);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent;padding:9px 10px;display:flex;position:relative}.chat-item:before{content:"";background:var(--sidebar-item-active-border);width:3px;transition:transform var(--dur-slow) var(--ease-spring);border-radius:0 3px 3px 0;position:absolute;top:12px;bottom:12px;left:-8px;transform:scaleY(0)}.chat-item:hover{background:var(--sidebar-item-hover)}.chat-item:active{background:var(--sidebar-icon-hover-bg)}.chat-item.active{background:var(--sidebar-item-active);--dot-ring:var(--sidebar-item-active)}.chat-item.active:before{transform:scaleY(1)}.chat-item:focus-visible{outline-offset:-2px}.chat-item-body{flex:1;min-width:0}.chat-item-top{justify-content:space-between;align-items:baseline;gap:var(--sp-2);display:flex}.chat-item-title{font-weight:600;font-size:var(--fs-md);color:var(--sidebar-item-title);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chat-item-title-sub{color:var(--sidebar-text-muted);font-weight:500}.chat-item-time{font-size:var(--fs-2xs);color:var(--sidebar-text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.chat-item-time.unread{color:var(--primary-text);font-weight:700}.chat-item-bottom{justify-content:space-between;align-items:center;gap:var(--sp-2);margin-top:1px;display:flex}.chat-item-preview{min-width:0;color:var(--sidebar-item-preview);font-size:var(--fs-sm);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;display:flex;overflow:hidden}.chat-item.has-unread .chat-item-preview{color:var(--sidebar-text);font-weight:500}.preview-clip{flex-shrink:0}.unread-badge{border-radius:var(--radius-full);background:var(--brand-lime);min-width:20px;height:20px;color:var(--hue-on-signal);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;animation:pop-in .36s var(--ease-spring);flex-shrink:0;justify-content:center;align-items:center;padding:0 6px;font-weight:700;display:inline-flex}[data-theme=light] .unread-badge,:root:not([data-theme=dark]) .unread-badge{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--brand-ink) 10%, transparent)}.sidebar-empty{align-items:center;gap:var(--sp-2);padding:var(--sp-8) var(--sp-5);text-align:center;color:var(--sidebar-text-muted);font-size:var(--fs-sm);flex-direction:column;display:flex}.sidebar-empty>.icon{color:var(--sidebar-icon-color);opacity:.7;margin-bottom:var(--sp-1)}.sidebar-empty strong{color:var(--sidebar-text);font-size:var(--fs-md);font-weight:600}.sidebar-soon-tag{border-radius:var(--radius-full);background:var(--accent-soft);height:22px;color:var(--primary-text);border:1px solid color-mix(in srgb, var(--accent-strong) 50%, transparent);font-size:var(--fs-xs);align-items:center;padding:0 10px;font-weight:600;display:inline-flex}.sidebar-empty .btn-small{margin-top:var(--sp-2)}.sidebar-footer{align-items:center;gap:var(--sp-1);padding:6px var(--sp-2);padding-bottom:calc(6px + env(safe-area-inset-bottom));background:var(--sidebar-footer-bg);border-top:1px solid color-mix(in srgb, var(--on-chrome) 8%, transparent);--focus-ring:var(--brand-lime);margin-top:auto;display:flex}.sidebar-footer .icon-btn{min-width:0;min-height:42px;color:color-mix(in srgb, var(--on-chrome) 82%, transparent);flex:1 1 0}.sidebar-footer .icon-btn:hover:not(:disabled){color:var(--on-chrome);background:color-mix(in srgb, var(--on-chrome) 9%, transparent)}.sidebar-left-settings{color:var(--admin-muted)}.menu-divider{background:var(--border);height:1px;margin:6px 4px}.avatar-wrap{flex-shrink:0;position:relative}.avatar{letter-spacing:.01em;color:var(--on-chrome);-webkit-user-select:none;user-select:none;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--on-chrome) 8%, transparent);border-radius:28%;justify-content:center;align-items:center;font-weight:600;display:flex}.avatar-img{display:block}.online-dot{border:2.5px solid var(--dot-ring,var(--card-elevated));width:12px;height:12px;transition:background-color var(--dur-slow) var(--ease-out);border-radius:50%;position:absolute;bottom:-2px;right:-2px}.main-pane,.modal-card,.club-panel{--dot-ring:var(--card-elevated)}.dashboard-container{background:radial-gradient(1000px 340px at 0% 0%, color-mix(in srgb, var(--hue-soft) 70%, transparent), transparent 70%), radial-gradient(var(--chat-canvas-dot) 1px, transparent 1.2px) 0 0 / 18px 18px, var(--background);height:100%;padding:var(--sp-10) var(--sp-8) var(--sp-8);overflow-y:auto}.dashboard-inner{gap:var(--sp-6);flex-direction:column;max-width:980px;margin:0 auto;display:flex}.dashboard-header{justify-content:space-between;align-items:flex-end;gap:var(--sp-4);flex-wrap:wrap;display:flex}.dashboard-eyebrow{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);font-weight:700;display:inline-flex}.live-pulse{width:7px;height:7px;color:var(--primary-text);background:currentColor;border-radius:50%;animation:2.4s ease-out infinite pulse-ring}.dashboard-header h1{font-size:var(--fs-display);letter-spacing:-.03em;font-weight:700;line-height:1.1}.dashboard-header h1 .greeting-name{color:var(--primary-text)}.dashboard-subtitle{margin-top:var(--sp-2);font-size:var(--fs-md);color:var(--text-secondary)}.dashboard-grid{gap:var(--sp-5);grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;display:grid}.dashboard-card.requests-card{border-color:color-mix(in srgb, var(--accent-strong) 60%, var(--border));box-shadow:inset 3px 0 0 var(--accent-strong), var(--shadow-xs)}.requests-card .card-header-wrap .tab-badge{margin-left:0}.dashboard-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--sp-5);box-shadow:var(--shadow-xs)}.card-header-wrap,.dashboard-card-header{margin-bottom:var(--sp-4);color:var(--text-heading);align-items:center;gap:10px;display:flex}.dashboard-card-header{justify-content:space-between}.card-header-wrap h2,.card-title-wrap h3{font-size:var(--fs-lg);letter-spacing:-.01em;font-weight:650}.card-header-wrap .icon,.card-icon-wrap .icon{color:var(--primary-text)}.card-header-count{font-size:var(--fs-xs);color:var(--text-muted);margin-left:auto;font-weight:600}.card-title-wrap{align-items:center;gap:10px;display:flex}.dashboard-list{flex-direction:column;display:flex}.dashboard-item-row{align-items:flex-start;gap:var(--sp-4);padding:var(--sp-3) 0;border-top:1px solid var(--border-subtle);display:flex}.dashboard-item-row:first-child{border-top:none;padding-top:0}.dashboard-item-row:last-child{padding-bottom:0}.item-details{flex:1;min-width:0}.item-details h3{font-size:var(--fs-lg);letter-spacing:-.01em;margin:6px 0 2px;font-weight:600}.item-badge{background:var(--primary-soft);height:20px;color:var(--primary-text);padding:0 7px;font-size:10.5px}.item-badge.alert-badge{background:var(--error-soft);color:var(--error)}.item-meta{gap:4px var(--sp-3);font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;display:flex}.item-meta span{align-items:center;gap:4px;display:inline-flex}.item-desc,.ann-content{font-size:var(--fs-sm);color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-top:6px;display:-webkit-box;overflow:hidden}.date-tile{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elevated);width:48px;box-shadow:var(--shadow-xs);font-variant-numeric:tabular-nums;flex-direction:column;flex-shrink:0;align-items:center;display:flex;overflow:hidden}.date-tile-month{text-align:center;letter-spacing:.08em;text-transform:uppercase;background:var(--brand-forest);width:100%;color:var(--brand-lime);padding:2px 0;font-size:10px;font-weight:700}.date-tile-day{color:var(--text-heading);padding:3px 0 4px;font-size:19px;font-weight:700;line-height:1.1}.event-card.past .date-tile-month{background:var(--text-muted);color:var(--card-elevated)}.dashboard-loading,.dashboard-empty-state{color:var(--text-muted);font-size:var(--fs-sm)}.dashboard-empty-state{align-items:center;gap:var(--sp-4);padding:var(--sp-4);border:1px dashed var(--border-strong);border-radius:var(--radius-md);display:flex}.dashboard-empty-state strong{color:var(--text-heading);font-size:var(--fs-md);font-weight:600;display:block}.dashboard-empty-state .empty-box-icon{flex-shrink:0;width:44px;height:44px;margin:0}.actions-button-grid{gap:var(--sp-2);flex-direction:column;display:flex}.action-card-btn,.quick-action-card{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3);text-align:left;background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--dur) var(--ease-out), background-color var(--dur) var(--ease-out), transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);display:flex}.action-card-btn:hover,.quick-action-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.action-card-btn:active,.quick-action-card:active{transform:translateY(0)scale(.99)}.action-icon,.action-card-icon{background:var(--primary-soft);width:38px;height:38px;color:var(--primary-text);transition:background-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out), transform var(--dur-slow) var(--ease-spring);border-radius:30%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.action-card-icon .icon,.action-icon .icon{color:inherit}.action-card-btn:hover .action-icon,.quick-action-card:hover .action-card-icon{background:var(--brand-forest);color:var(--brand-lime);transform:rotate(-6deg)}.action-card-btn>div,.action-card-text{flex:1;min-width:0}.action-card-btn h3,.action-card-text h4{font-size:var(--fs-md);letter-spacing:-.005em;color:var(--text-heading);font-weight:600}.action-card-btn p,.action-card-text p{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;overflow:hidden}.action-arrow{color:var(--text-placeholder);transition:transform var(--dur) var(--ease-out), color var(--dur) var(--ease-out)}.action-card-btn:hover .action-arrow,.quick-action-card:hover .action-arrow{color:var(--primary-text);transform:translate(3px)}.quick-actions-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.pwa-install-card,.install-pwa-card{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);animation:rise-in .4s var(--ease-out) both;display:flex}.pwa-install-card>.icon{color:var(--primary-text)}.pwa-install-text{flex-direction:column;flex:1;min-width:0;display:flex}.pwa-install-text strong{font-size:var(--fs-md);color:var(--text-heading);font-weight:600}.pwa-install-text span{font-size:var(--fs-xs);color:var(--text-muted)}.empty-state{text-align:center;color:var(--text-secondary);padding:var(--sp-6);margin:auto}.empty-state h2{letter-spacing:.12em;text-transform:uppercase;margin-bottom:var(--sp-3);font-weight:700}.chat-window{background:var(--background);height:100%;min-height:0;animation:fade-in var(--dur-slow) var(--ease-out);flex-direction:column;display:flex}.chat-header{align-items:center;gap:var(--sp-3);min-height:64px;padding:10px var(--sp-4);background:var(--card-elevated);border-bottom:1px solid var(--border);z-index:2;display:flex;position:relative}.chat-header-text{border-radius:var(--radius-md);text-align:left;min-width:0;transition:background-color var(--dur-fast) var(--ease-out);flex:1;margin-left:-8px;padding:4px 8px}.chat-header-text.is-clickable{cursor:pointer}.chat-header-text.is-clickable:hover{background:var(--hover)}.chat-header-title{font-weight:650;font-size:var(--fs-lg);letter-spacing:-.01em;color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.chat-header-sub{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.typing-text,.online-text{color:var(--success);align-items:center;gap:6px;font-weight:600;display:inline-flex}.typing-dots{gap:2.5px;display:inline-flex}.typing-dots i{background:currentColor;border-radius:50%;width:4px;height:4px;animation:1.1s ease-in-out infinite typing-bounce}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}.chat-header-actions{gap:2px;display:flex}.chat-header-actions .icon-btn{min-width:40px;min-height:40px}.message-list{padding:var(--sp-5) max(var(--sp-5), 6%);background-color:var(--background);background-image:radial-gradient(var(--chat-canvas-dot) 1px, transparent 1.2px);background-size:18px 18px;background-attachment:local;flex-direction:column;flex:1;gap:3px;display:flex;overflow:hidden auto}.chat-empty{align-items:center;gap:var(--sp-2);text-align:center;max-width:300px;padding:var(--sp-6);color:var(--text-muted);font-size:var(--fs-sm);animation:rise-in .4s var(--ease-out) both;flex-direction:column;margin:auto;display:flex}.chat-empty strong{color:var(--text-heading);font-size:var(--fs-lg);font-weight:600}.chat-empty .empty-box-icon{margin-bottom:var(--sp-1)}.message-skeleton{gap:var(--sp-3);padding-top:var(--sp-4);flex-direction:column;display:flex}.message-skeleton .skeleton{border-radius:12px;height:38px}.message-skeleton .skeleton:nth-child(2n){align-self:flex-end}.date-separator{margin:var(--sp-4) 0 var(--sp-2);justify-content:center;display:flex}.date-separator span{font-size:var(--fs-2xs);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);padding:3px 10px;font-weight:600}.bubble-row{width:100%;min-width:0;display:flex}.bubble-row.own{justify-content:flex-end}.bubble-row.is-new .bubble-container{animation:bubble-in-left .32s var(--ease-out) both}.bubble-row.own.is-new .bubble-container{animation:bubble-in-right .36s var(--ease-spring) both}.bubble-container{flex-direction:column;min-width:0;max-width:min(68%,580px);display:inline-flex;position:relative}.bubble-container.own{align-items:flex-end}.bubble{overflow-wrap:anywhere;border-radius:14px;width:fit-content;min-width:0;max-width:100%;padding:7px 12px 8px;line-height:1.45;position:relative}.bubble-in{background:var(--chat-received);color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs);border-bottom-left-radius:4px}.bubble-out{background:var(--chat-sent);color:var(--chat-sent-text);box-shadow:var(--shadow-xs);border-bottom-right-radius:4px}.bubble-sender{font-size:var(--fs-xs);color:var(--primary-text);margin-bottom:2px;font-weight:650}.bubble-out .bubble-sender{color:color-mix(in srgb, var(--on-chrome) 92%, transparent)}.bubble-text{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.bubble-meta{float:right;font-variant-numeric:tabular-nums;align-items:center;gap:3px;margin:8px 0 -3px 10px;font-size:10.5px;line-height:1;display:inline-flex}.bubble-in .bubble-meta{color:var(--text-muted)}.bubble-out .bubble-meta{color:color-mix(in srgb, var(--on-chrome) 68%, transparent)}.ticks{letter-spacing:-3.5px;transition:color var(--dur-slow) var(--ease-out);padding-right:3px;font-size:11.5px}.ticks.read{color:var(--brand-lime)}.msg-image-link{border-radius:10px;width:fit-content;max-width:100%;margin:-2px -7px 4px;display:block;overflow:hidden}.msg-image{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:320px;transition:transform var(--dur-slow) var(--ease-out);display:block}.msg-image-link:hover .msg-image{transform:scale(1.015)}.file-card{align-items:center;gap:var(--sp-3);min-width:220px;padding:10px var(--sp-3);border-radius:var(--radius-md);color:inherit;background:var(--background-secondary);border:1px solid var(--border);transition:background-color var(--dur) var(--ease-out);margin-bottom:4px;text-decoration:none;display:flex}.file-card:hover{background:var(--hover)}.bubble-out .file-card{background:color-mix(in srgb, var(--on-chrome) 8%, transparent);border-color:color-mix(in srgb, var(--on-chrome) 16%, transparent)}.bubble-out .file-card:hover{background:color-mix(in srgb, var(--on-chrome) 14%, transparent)}.file-icon,.file-download{opacity:.85;display:inline-flex}.file-meta{flex-direction:column;flex:1;min-width:0;display:flex}.file-name{font-size:var(--fs-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.file-size{font-size:var(--fs-2xs);opacity:.7}.bubble-actions-overlay{z-index:10;background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-full);box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform-origin:0 100%;transition:opacity var(--dur) var(--ease-out), transform var(--dur) var(--ease-out), visibility 0s linear var(--dur);gap:2px;padding:3px;display:flex;position:absolute;top:-36px;left:0;transform:translateY(4px)scale(.96)}.bubble-container.own .bubble-actions-overlay{transform-origin:100% 100%;left:auto;right:0}.bubble-container:hover .bubble-actions-overlay,.bubble-container:focus-within .bubble-actions-overlay{opacity:1;visibility:visible;transition-delay:0s;transform:translateY(0)scale(1)}.bubble-action-btn{width:30px;height:30px;transition:transform var(--dur) var(--ease-spring), background-color var(--dur-fast) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.bubble-action-btn:hover{background:var(--hover);transform:translateY(-2px)scale(1.22)}.bubble-action-btn:active{transform:scale(.9)}.bubble-action-btn.active{background:var(--accent-soft)}.bubble-reactions-row{z-index:1;flex-wrap:wrap;gap:4px;margin-top:-6px;padding:0 8px;display:flex;position:relative}.reaction-badge{border-radius:var(--radius-full);background:var(--card-elevated);border:1px solid var(--border);height:24px;box-shadow:var(--shadow-xs);font-size:var(--fs-xs);color:var(--text-primary);animation:pop-in .3s var(--ease-spring);transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);align-items:center;gap:4px;padding:0 7px;display:inline-flex}.reaction-badge:hover{background:var(--hover)}.reaction-badge.active{background:var(--accent-soft);border-color:var(--accent-strong)}.reaction-emoji{font-size:13px}.reaction-count{font-weight:600;font-size:var(--fs-2xs);font-variant-numeric:tabular-nums}.message-input{align-items:center;gap:var(--sp-2);padding:10px var(--sp-4);background:var(--card-elevated);border-top:1px solid var(--border);display:flex}.message-input .icon-btn{min-width:40px;min-height:40px;color:var(--text-secondary)}.message-text{background:var(--input);border-radius:21px;min-height:42px;padding:10px 18px}.send-btn{background:var(--primary);color:var(--btn-text)!important;transition:background-color var(--dur) var(--ease-out), transform var(--dur) var(--ease-spring), opacity var(--dur) var(--ease-out)!important;border-radius:50%!important}.send-btn .icon{transform:translate(-1px)}.send-btn:hover:not(:disabled){background:var(--primary-hover)!important;color:var(--btn-text)!important}.send-btn:not(:disabled) .icon{animation:send-ready .35s var(--ease-spring)}.send-btn:disabled{background:var(--input);transform:scale(.92);opacity:1!important;color:var(--text-placeholder)!important}.spinner-sm{border-width:2px;width:18px;height:18px}.input-locked{justify-content:center;align-items:center;gap:var(--sp-2);padding:var(--sp-4);padding-bottom:calc(var(--sp-4) + env(safe-area-inset-bottom));text-align:center;font-size:var(--fs-sm);color:var(--text-muted);background:var(--card-elevated);border-top:1px solid var(--border);display:flex}.modal-overlay{z-index:50;padding:var(--sp-4);background:var(--overlay);-webkit-backdrop-filter:blur(3px);animation:fade-in var(--dur) var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);width:440px;max-width:100%;max-height:min(85vh,760px);box-shadow:var(--shadow-lg);animation:modal-in .32s var(--ease-out);flex-direction:column;display:flex}.modal-card:focus{outline:none}.modal-wide{width:560px}.modal-header{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-5) var(--sp-4) var(--sp-3) var(--sp-6);display:flex}.modal-header h3{font-size:var(--fs-xl);letter-spacing:-.015em;color:var(--text-heading);font-weight:650}.modal-header .icon-btn{color:var(--text-muted)}.modal-body{padding:var(--sp-2) var(--sp-6) var(--sp-6);overscroll-behavior:contain;overflow-y:auto}.modal-form{gap:var(--sp-3);flex-direction:column;display:flex}.modal-form .btn-primary{margin-top:var(--sp-1)}.modal-search{margin-bottom:var(--sp-3)}.browse-header-row{margin-bottom:var(--sp-3);align-items:center;gap:10px;display:flex}.browse-header-row .modal-search{flex:1;margin-bottom:0}.create-club-trigger-btn{min-height:var(--control-h)!important;padding:0 var(--sp-4)!important}.modal-body>.club-tabs{padding:0 var(--sp-4);margin:0 calc(var(--sp-6) * -1) var(--sp-4)!important}.picker-list{flex-direction:column;gap:2px;display:flex}.picker-item{align-items:center;gap:var(--sp-3);min-height:56px;padding:var(--sp-2) 10px;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);display:flex}.picker-item:hover{background:var(--hover)}.picker-item.no-click{cursor:default}.picker-item.no-click:hover{background:color-mix(in srgb, var(--hover) 55%, transparent)}.picker-item.is-indented{padding-left:36px;position:relative}.picker-item.is-indented:before{content:"";border-left:1.5px solid var(--border-strong);border-bottom:1.5px solid var(--border-strong);border-bottom-left-radius:6px;width:10px;position:absolute;top:0;bottom:50%;left:22px}.picker-item>.btn-small+.btn-small,.picker-item>.btn-small+.icon-btn{margin-left:-4px}.picker-button{text-align:left;width:100%}.picker-item:hover .action-arrow{color:var(--primary-text);transform:translate(3px)}.field-optional{font-weight:500;font-size:var(--fs-xs);color:var(--text-placeholder);margin-left:6px}.picker-grow{flex-direction:column;flex:1;min-width:0;display:flex}.picker-name{color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.picker-you{color:var(--text-muted);font-weight:500}.picker-sub{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.picker-actions{gap:var(--sp-2);flex-shrink:0;display:flex}.club-panel{background:var(--card);border-left:1px solid var(--border);width:360px;min-width:320px;animation:panel-in .32s var(--ease-out);flex-direction:column;display:flex}.club-panel-header{align-items:center;gap:var(--sp-2);min-height:64px;padding:10px var(--sp-3);background:var(--card-elevated);border-bottom:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700;display:flex}.club-panel-hero{padding:var(--sp-6) var(--sp-5) var(--sp-5);text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.club-panel-hero:before{content:"";background:radial-gradient(var(--chat-canvas-dot) 1px, transparent 1.2px) 0 0 / 14px 14px, var(--background-secondary);border-bottom:1px solid var(--border-subtle);height:64px;position:absolute;inset:0 0 auto}.club-panel-hero>*{position:relative}.club-panel-hero .avatar-wrap{margin-bottom:var(--sp-2)}.club-panel-hero .avatar{box-shadow:0 0 0 4px var(--card), var(--shadow-md)}.club-panel-hero h3{font-size:var(--fs-xl);color:var(--text-heading);font-weight:700}.club-desc{font-size:var(--fs-sm);color:var(--text-secondary);max-width:280px}.club-panel-hero .btn-small{margin-top:var(--sp-2)}.club-panel .club-tabs{padding:0 var(--sp-2)}.club-panel-body{padding:var(--sp-3);flex:1;overflow-y:auto}.club-panel-footer{padding:var(--sp-3);padding-bottom:calc(var(--sp-3) + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.tab-pane{animation:fade-up .28s var(--ease-out)}.events-tab>.btn-primary{margin-bottom:var(--sp-2)}.events-section{align-items:center;gap:var(--sp-2);margin:var(--sp-4) var(--sp-1) var(--sp-2);font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);font-weight:700;display:flex}.events-section:after{content:"";border-top:1px solid var(--border-subtle);flex:1}.event-card{background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--sp-4);box-shadow:var(--shadow-xs);transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);margin-bottom:10px}.event-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.event-card.past{box-shadow:none;background:0 0}.event-card.past .event-title,.event-card.past .event-desc{color:var(--text-secondary)}.event-head{gap:var(--sp-3);align-items:flex-start;display:flex}.event-head-text{flex:1;min-width:0}.event-title{font-weight:650;font-size:var(--fs-lg);letter-spacing:-.01em;color:var(--text-heading);margin-bottom:4px;line-height:1.3}.event-when,.event-where{font-size:var(--fs-xs);color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:2px;display:flex}.event-when .icon,.event-where .icon{color:var(--text-muted)}.event-desc{margin:var(--sp-3) 0 0;font-size:var(--fs-sm);color:var(--text-primary);line-height:1.55}.event-attendees{margin:var(--sp-3) 0 0;font-size:var(--fs-xs);color:var(--text-secondary);line-height:1.55}.event-attendees-label{color:var(--text-heading);align-items:center;gap:4px;font-weight:600;display:inline-flex}.event-attendance-summary{font-size:var(--fs-xs);color:var(--success);align-items:center;gap:5px;margin-top:6px;font-weight:600;display:flex}.event-rsvps{margin-top:var(--sp-4);flex-wrap:wrap;gap:6px;display:flex}.rsvp-group{background:var(--input);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;width:100%;padding:3px;display:grid}.rsvp-btn{min-height:32px;padding:0 var(--sp-2);font-size:var(--fs-sm);color:var(--text-secondary);transition:background-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), transform var(--dur-fast) var(--ease-out);border-radius:7px;justify-content:center;align-items:center;gap:5px;font-weight:600;display:inline-flex}.rsvp-count{font-variant-numeric:tabular-nums;color:var(--text-muted);font-weight:500}.rsvp-btn:hover:not(:disabled){background:var(--card-elevated);color:var(--text-heading);box-shadow:var(--shadow-xs)}.rsvp-btn:active:not(:disabled){transform:scale(.96)}.rsvp-btn.selected{background:var(--brand-forest);color:var(--on-chrome);box-shadow:var(--shadow-sm);animation:stamp .42s var(--ease-spring)}.rsvp-btn.selected .rsvp-count,.rsvp-btn.selected .icon{color:var(--brand-lime)}.rsvp-btn:disabled:not(.selected){cursor:default;opacity:.6}.rsvp-locked{margin-top:var(--sp-2);font-size:var(--fs-2xs);color:var(--text-muted);align-items:center;gap:5px;display:flex}.resources-list{flex-direction:column;gap:2px;display:flex}.resource-item{align-items:center;gap:var(--sp-3);padding:var(--sp-2);border-radius:var(--radius-md);color:var(--text-primary);transition:background-color var(--dur-fast) var(--ease-out);text-decoration:none;display:flex}.resource-item:hover{background:var(--hover)}.resource-thumb,.resource-icon{border-radius:var(--radius-md);flex-shrink:0;width:44px;height:44px}.resource-thumb{object-fit:cover;border:1px solid var(--border)}.resource-icon{background:var(--primary-soft);color:var(--primary-text);justify-content:center;align-items:center;display:inline-flex}.resource-item .file-download{color:var(--text-muted);transition:transform var(--dur) var(--ease-out), color var(--dur) var(--ease-out)}.resource-item:hover .file-download{color:var(--primary-text);transform:translateY(2px)}.attendance-event-info{color:var(--text-secondary);font-size:var(--fs-sm);margin-bottom:var(--sp-3)}.attendance-row{gap:var(--sp-3);cursor:pointer}.attendance-row input[type=checkbox]{flex-shrink:0;width:18px;height:18px}.attendance-save{margin-top:var(--sp-4);margin-bottom:0;position:sticky;bottom:0}.admin-page{background:var(--background);flex-direction:column;height:100%;display:flex}.admin-header{align-items:center;gap:var(--sp-3);padding:10px var(--sp-5) 10px var(--sp-3);background:var(--admin-header-bg);color:var(--on-chrome);--focus-ring:var(--brand-lime);display:flex}.admin-header>.icon{color:var(--admin-accent)}.admin-header .icon-btn{color:var(--admin-muted)}.admin-header .icon-btn:hover:not(:disabled){background:color-mix(in srgb, var(--on-chrome) 10%, transparent);color:var(--on-chrome)}.admin-title{font-size:var(--fs-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--on-chrome);flex:1;font-weight:700}.admin-me{font-size:var(--fs-xs);color:var(--admin-muted)}.admin-shell{flex:1;min-height:0;display:flex}.admin-nav{gap:var(--sp-5);width:232px;padding:var(--sp-5) var(--sp-3);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.admin-nav-group{flex-direction:column;gap:2px;display:flex}.admin-nav-heading{padding:0 var(--sp-3) var(--sp-2);font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--sidebar-text-muted);font-weight:700}.admin-nav-item{align-items:center;gap:var(--sp-3);min-height:40px;padding:0 var(--sp-3);border-radius:var(--radius-md);font-size:var(--fs-md);color:var(--sidebar-item-preview);text-align:left;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);font-weight:500;display:flex;position:relative}.admin-nav-item .icon{color:var(--sidebar-icon-color);transition:color var(--dur-fast) var(--ease-out), transform var(--dur) var(--ease-spring)}.admin-nav-item:before{content:"";background:var(--sidebar-item-active-border);width:3px;transition:transform var(--dur-slow) var(--ease-spring);border-radius:0 3px 3px 0;position:absolute;top:10px;bottom:10px;left:-12px;transform:scaleY(0)}.admin-nav-item:hover{background:var(--sidebar-item-hover);color:var(--sidebar-text)}.admin-nav-item:hover .icon{transform:translate(1px)}.admin-nav-item.active{background:var(--sidebar-item-active);color:var(--sidebar-item-title);font-weight:600}.admin-nav-item.active .icon{color:var(--primary-text)}.admin-nav-item.active:before{transform:scaleY(1)}.admin-nav-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.admin-nav-item .tab-badge{margin-left:0}.admin-body{min-width:0;padding:var(--sp-8) var(--sp-8) var(--sp-10);animation:fade-up .26s var(--ease-out);flex:1;overflow-y:auto}.admin-body>*{max-width:920px;margin-left:auto;margin-right:auto}.announce-access-note{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4);text-align:left;padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-md);background:var(--warning-soft);color:var(--warning);display:flex}.announce-composer{gap:var(--sp-3);padding:var(--sp-4) var(--sp-5) var(--sp-5);margin-bottom:var(--sp-8);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--dur-slow) var(--ease-out), box-shadow var(--dur-slow) var(--ease-out);flex-direction:column;display:flex}.announce-composer:focus-within{border-color:var(--primary-border);box-shadow:var(--shadow-md)}.announce-composer.just-posted{border-color:var(--success);animation:stamp .45s var(--ease-spring)}.announce-audience{flex-wrap:wrap;gap:6px;display:flex}.announce-picker{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--radius-md);background:var(--background-secondary);border:1px solid var(--border-subtle);animation:fade-up .2s var(--ease-out);flex-direction:column;display:flex}.announce-picker-list{flex-direction:column;gap:1px;max-height:220px;display:flex;overflow-y:auto}.announce-picker-item{align-items:center;gap:var(--sp-3);min-height:38px;padding:0 var(--sp-2);border-radius:var(--radius-sm);cursor:pointer;display:flex}.announce-picker-item:hover{background:var(--hover)}.announce-kind{font-size:var(--fs-2xs);color:var(--text-muted);font-weight:600}.announce-composer textarea{min-height:110px}.announce-footer{align-items:center;gap:var(--sp-3);display:flex}.announce-reach{min-width:0;font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:6px;display:flex;overflow:hidden}.announce-reach .icon{color:var(--primary-text)}.announce-count{font-size:var(--fs-2xs);color:var(--text-placeholder);font-variant-numeric:tabular-nums}.announce-feed-head{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);flex-wrap:wrap;display:flex}.announce-feed-head h3{font-size:var(--fs-lg);font-weight:650}.announce-feed-tools{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.announce-feed-search{width:220px;min-height:32px;font-size:var(--fs-sm);padding:4px 12px}.announce-feed{gap:var(--sp-3);flex-direction:column;display:flex}.announce-card{gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);background:var(--card);border:1px solid var(--border);border-left:3px solid var(--primary-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);animation:fade-up .3s var(--ease-out) both;flex-direction:column;display:flex}.announce-card-head{align-items:center;gap:var(--sp-3);display:flex}.announce-body{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-primary);line-height:1.55}.announce-attachment{font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:6px;display:flex}.announce-target{gap:5px;padding-right:10px}.announce-target .icon{color:var(--text-muted)}.admin-section-head{justify-content:space-between;align-items:baseline;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.admin-section-head h2{font-size:var(--fs-2xl);font-weight:700}.admin-section-head p{font-size:var(--fs-sm);color:var(--text-muted)}.stat-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.stat-card{align-items:flex-start;gap:var(--sp-1);padding:var(--sp-4) var(--sp-5);text-align:left;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:border-color var(--dur) var(--ease-out), transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);flex-direction:column;display:flex;position:relative}button.stat-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-2px)}button.stat-card:active{transform:translateY(0)scale(.99)}.stat-card .action-arrow{top:var(--sp-4);right:var(--sp-4);position:absolute}button.stat-card:hover .action-arrow{color:var(--primary-text);transform:translate(3px)}.stat-card.is-alert{border-color:color-mix(in srgb, var(--accent-strong) 70%, transparent);background:linear-gradient(var(--accent-soft), var(--accent-soft)), var(--card)}.stat-value{font-size:var(--fs-3xl);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text-heading);order:2;font-weight:700;line-height:1.1}.stat-label{font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);order:1;font-weight:700}.admin-row{align-items:flex-start}.admin-club-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:var(--sp-2);box-shadow:var(--shadow-xs);transition:border-color var(--dur) var(--ease-out);overflow:hidden}.admin-club-card:hover{border-color:var(--border-strong)}.admin-club-card>.picker-item{padding:var(--sp-3) var(--sp-4);border-radius:0}.expand-chevron{color:var(--text-muted);transition:transform var(--dur) var(--ease-out)}.admin-club-card.is-open .expand-chevron{transform:rotate(180deg)}.admin-club-members{padding:var(--sp-2);border-top:1px solid var(--border);background:var(--background-secondary);animation:fade-up .24s var(--ease-out)}.admin-inline-add{gap:var(--sp-2);padding:var(--sp-1) var(--sp-1) var(--sp-3);margin-bottom:var(--sp-2);border-bottom:1px solid var(--border);display:flex}.admin-inline-add select{flex:1}.admin-event{margin-bottom:var(--sp-3)}.admin-form-card{gap:var(--sp-2);width:100%;padding:var(--sp-4);margin-bottom:var(--sp-5);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.admin-form-card>input{flex:2 200px}.admin-form-card>select{flex:160px}.faculty-add{gap:var(--sp-2);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.faculty-add select{flex:220px;width:auto}.faculty-add input{flex:160px;width:auto}.faculty-add .btn-small{min-height:var(--control-h);padding:0 var(--sp-4)}.users-toolbar{align-items:flex-start;gap:10px;display:flex}.users-toolbar .modal-search{flex:1}.users-toolbar .btn-small{min-height:var(--control-h);padding:0 var(--sp-4)}.filter-row{margin:0 0 var(--sp-4);flex-wrap:wrap;gap:6px;display:flex}.filter-chip{min-height:32px;padding:0 var(--sp-3);font-size:var(--fs-sm);color:var(--text-secondary);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-full);transition:all var(--dur-fast) var(--ease-out);font-weight:600}.filter-chip:hover{border-color:var(--border-strong);color:var(--text-heading)}.filter-chip.active{background:var(--primary);border-color:var(--primary);color:var(--btn-text)}.uuid-row{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-1);display:flex}.uuid-row>.picker-sub{flex-shrink:0;font-weight:600}.uuid-value{min-width:0;padding:3px var(--sp-2);font-size:var(--fs-2xs);background:var(--input);border:1px solid var(--border);border-radius:var(--radius-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.edit-meta{margin-bottom:var(--sp-4)}.edit-grid{gap:var(--sp-3);grid-template-columns:1fr 1fr;display:grid}.edit-grid label{font-size:var(--fs-sm);color:var(--text-secondary);flex-direction:column;gap:6px;font-weight:600;display:flex}.edit-grid input,.edit-grid select{font-weight:400}.edit-section{align-items:center;gap:var(--sp-2);margin:var(--sp-6) 0 var(--sp-2);font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);font-weight:700;display:flex}.edit-section:after{content:"";border-top:1px solid var(--border-subtle);flex:1}.edit-save{margin-top:var(--sp-6);margin-bottom:0}.settings-nav-tabs{gap:var(--sp-1);margin:0 calc(var(--sp-6) * -1) var(--sp-5);padding:0 var(--sp-4);border-bottom:1px solid var(--border);display:flex}.settings-nav-tab{align-items:center;gap:var(--sp-2);min-height:44px;padding:0 var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted);transition:color var(--dur) var(--ease-out);font-weight:600;display:flex;position:relative}.settings-nav-tab:after{content:"";left:var(--sp-2);right:var(--sp-2);height:2px;transition:transform var(--dur-slow) var(--ease-out);background:currentColor;border-radius:2px 2px 0 0;position:absolute;bottom:-1px;transform:scaleX(0)}.settings-nav-tab:hover{color:var(--text-heading)}.settings-nav-tab.active{color:var(--primary-text)}.settings-nav-tab.active:after{transform:scaleX(1)}.settings-form,.services-tab-container{gap:var(--sp-4);animation:fade-up .28s var(--ease-out);flex-direction:column;display:flex}.settings-hero{align-items:center;gap:var(--sp-5);padding:var(--sp-5);background:radial-gradient(var(--chat-canvas-dot) 1px, transparent 1.2px) 0 0 / 14px 14px, var(--background-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex}.settings-avatar-wrap{--dot-ring:var(--background-secondary);flex-shrink:0;position:relative}.upload-badge{background:var(--brand-forest);width:30px;height:30px;color:var(--brand-lime);border:2.5px solid var(--background-secondary);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--dur) var(--ease-spring);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:-6px;right:-6px}.upload-badge:hover{transform:scale(1.1)rotate(-8deg)}.upload-badge:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.upload-badge .icon{color:inherit}.settings-hero-info{min-width:0}.settings-hero-info h3{font-size:var(--fs-xl);margin-bottom:2px;font-weight:700}.settings-email{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:var(--sp-2)}.settings-status-pill{background:var(--card-elevated);color:var(--text-secondary);border-color:var(--border);gap:6px}.settings-status-pill .status-swatch{width:7px;height:7px}.settings-section{gap:var(--sp-3);padding:var(--sp-4) var(--sp-5) var(--sp-5);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;display:flex}.settings-section-title{align-items:center;gap:var(--sp-2);font-size:var(--fs-md);letter-spacing:-.005em;color:var(--text-heading);font-weight:650;display:flex}.settings-section-title .icon{color:var(--primary-text)}.settings-stack,.settings-field-group{gap:var(--sp-4);flex-direction:column;display:flex}.field-row{flex-direction:column;gap:6px;display:flex}.field-label{font-size:var(--fs-sm);color:var(--text-secondary);font-weight:600;display:block}.field-hint{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:4px;display:flex}.field-hint .icon{color:var(--text-muted)}.input-disabled,input.input-disabled{background:var(--background-secondary);color:var(--text-secondary);cursor:not-allowed;border-style:dashed}.photo-actions{align-items:center;gap:10px;display:flex}.photo-actions .btn-small{min-height:36px}.photo-actions label.btn-small:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.color-swatch-row{flex-wrap:wrap;gap:10px;display:flex}.swatch-btn{width:30px;height:30px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--on-chrome) 14%, transparent);cursor:pointer;transition:transform var(--dur) var(--ease-spring), box-shadow var(--dur) var(--ease-out);border:2px solid #0000;border-radius:30%}.swatch-btn:hover{transform:translateY(-2px)}.swatch-btn.active{border-color:var(--card);box-shadow:0 0 0 2px var(--text-heading);transform:scale(1.08)}.status-grid,.theme-toggle-grid{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.status-card,.theme-card{min-height:46px;padding:10px var(--sp-3);text-align:left;background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);align-items:center;gap:10px;display:flex}.status-card:hover,.theme-card:hover{border-color:var(--border-strong);background:var(--hover)}.status-card.selected,.theme-card.selected{border-color:var(--primary-text);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary-text)}.status-card-label{font-size:var(--fs-sm);color:var(--text-heading);font-weight:600}.status-swatch{border-radius:50%;flex-shrink:0;width:10px;height:10px}.theme-card-icon{border-radius:30%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.theme-card-icon.light{background:var(--brand-porcelain);color:var(--warning);border:1px solid var(--border)}.theme-card-icon.dark{background:var(--brand-ink);color:var(--brand-lime)}.theme-card-text h4{font-size:var(--fs-sm);font-weight:600}.theme-card-text p{font-size:var(--fs-2xs);color:var(--text-secondary)}.theme-check{color:var(--primary-text);animation:pop-in .3s var(--ease-spring);margin-left:auto}.accent-picker{gap:var(--sp-3);padding-top:var(--sp-4);margin-top:var(--sp-1);border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.accent-picker-head{justify-content:space-between;align-items:baseline;display:flex}.accent-current{font-size:var(--fs-xs);color:var(--primary-text);font-weight:600}.accent-swatches{gap:var(--sp-2);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.accent-swatch{padding:var(--sp-2) var(--sp-1) 6px;border-radius:var(--radius-md);transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);border:1px solid #0000;flex-direction:column;align-items:center;gap:6px;display:flex}.accent-swatch:hover{background:var(--hover)}.accent-swatch.selected{background:var(--primary-soft);border-color:var(--primary-border)}.accent-chip{background:var(--swatch-base);width:40px;height:40px;box-shadow:inset 0 -3px 0 color-mix(in srgb, var(--brand-ink) 16%, transparent), 0 1px 2px color-mix(in srgb, var(--brand-ink) 12%, transparent);transition:transform var(--dur) var(--ease-spring), box-shadow var(--dur) var(--ease-out);border-radius:30%;justify-content:center;align-items:center;display:flex;position:relative}.accent-swatch:hover .accent-chip{transform:translateY(-2px)}.accent-swatch.selected .accent-chip{box-shadow:inset 0 -3px 0 color-mix(in srgb, var(--brand-ink) 16%, transparent), 0 0 0 2px var(--card), 0 0 0 4px var(--swatch-base)}.accent-chip-dot{background:var(--swatch-signal);width:10px;height:10px;box-shadow:0 0 0 1.5px var(--swatch-base);border-radius:50%;position:absolute;bottom:5px;right:5px}.accent-chip-check{color:var(--on-chrome);animation:pop-in .32s var(--ease-spring)}.accent-name{font-size:var(--fs-xs);color:var(--text-secondary);text-align:center;flex-direction:column;align-items:center;font-weight:600;line-height:1.3;display:flex}.accent-swatch.selected .accent-name{color:var(--text-heading)}.accent-default{color:var(--text-muted);font-size:10px;font-weight:500}.accent-preview{align-items:center;gap:var(--sp-3);padding:10px var(--sp-3);border-radius:var(--radius-md);background:var(--background-secondary);border:1px dashed var(--border);flex-wrap:wrap;display:flex}.accent-preview-btn{height:28px;padding:0 var(--sp-3);border-radius:var(--radius-sm);background:var(--primary);color:var(--btn-text);font-size:var(--fs-xs);align-items:center;font-weight:600;display:inline-flex}.accent-preview-link{font-size:var(--fs-sm);color:var(--link);text-underline-offset:3px;font-weight:600;text-decoration:underline}.accent-preview-badge{border-radius:var(--radius-full);background:var(--accent);min-width:20px;height:20px;color:var(--on-accent);font-size:var(--fs-2xs);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.accent-preview-chip{border-radius:var(--radius-sm);background:var(--primary-soft);height:24px;color:var(--primary-text);border:1px solid var(--primary-border);font-size:var(--fs-xs);align-items:center;gap:4px;padding:0 8px;font-weight:600;display:inline-flex}@media (width<=420px){.accent-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}}.settings-account-row{justify-content:space-between;align-items:center;gap:var(--sp-4);display:flex}.settings-account-info{flex-direction:column;min-width:0;display:flex}.settings-account-label{font-size:var(--fs-xs);color:var(--text-muted)}.settings-account-email{color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.settings-logout{min-height:36px;padding:0 var(--sp-4)}@media (width<=420px){.settings-account-row{flex-direction:column;align-items:stretch}.settings-logout{min-height:44px}}.settings-footer-actions{bottom:calc(var(--sp-6) * -1);z-index:2;margin:0 calc(var(--sp-6) * -1) calc(var(--sp-6) * -1);padding:var(--sp-4) var(--sp-6);background:color-mix(in srgb, var(--card-elevated) 92%, transparent);-webkit-backdrop-filter:blur(6px);border-top:1px solid var(--border);justify-content:flex-end;gap:10px;display:flex;position:sticky}.toast-container{top:calc(16px + env(safe-area-inset-top));z-index:9999;gap:var(--sp-2);pointer-events:none;flex-direction:column;width:min(380px,100vw - 32px);display:flex;position:fixed;right:16px}.toast-card{pointer-events:auto;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-4);background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:toast-in .42s var(--ease-spring);display:flex;position:relative;overflow:hidden}.toast-card:after{content:"";opacity:.35;transform-origin:0;width:100%;height:2px;animation:toast-timer var(--toast-duration,4s) linear forwards;background:currentColor;position:absolute;bottom:0;left:0}.toast-card.toast-success{color:var(--success)}.toast-card.toast-error{color:var(--error)}.toast-card.toast-warning{color:var(--warning)}.toast-card.toast-info{color:var(--info)}.toast-icon-wrap{border-radius:30%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.toast-icon-wrap.success{background:var(--brand-lime);color:var(--hue-on-signal)}.toast-icon-wrap.success .icon polyline{stroke-dasharray:24;stroke-dashoffset:24px;animation:draw .4s .12s var(--ease-out) forwards}.toast-icon-wrap.error{background:var(--error-soft);color:var(--error)}.toast-icon-wrap.warning{background:var(--warning-soft);color:var(--warning)}.toast-icon-wrap.info{background:var(--info-soft);color:var(--info)}.toast-message{font-size:var(--fs-sm);color:var(--text-heading);flex:1;font-weight:500;line-height:1.4}.toast-close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);transition:all var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:flex}.toast-close:hover{color:var(--text-heading);background:var(--hover)}.status-menu{z-index:60;background:var(--card-elevated);min-width:220px;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transform-origin:0 0;animation:menu-in .2s var(--ease-out);padding:6px;position:absolute;top:calc(100% - 4px);left:12px}.status-menu-label{font-size:var(--fs-2xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);padding:6px 10px 4px;font-weight:700}.status-option{border-radius:var(--radius-sm);width:100%;min-height:36px;font-size:var(--fs-sm);text-align:left;transition:background-color var(--dur-fast) var(--ease-out);align-items:center;gap:10px;padding:0 10px;font-weight:500;display:flex}.status-option:hover,.status-option:focus-visible{background:var(--hover);outline:none}.status-option.selected{color:var(--text-heading);font-weight:600}.status-option .option-check{color:var(--primary-text);margin-left:auto}.status-option>.icon:first-child{color:var(--text-muted)}.custom-select-wrap{width:100%;position:relative}.custom-select-trigger{width:100%;min-height:var(--control-h);font-size:var(--fs-md);color:var(--text-primary);text-align:left;background:var(--input);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), background-color var(--dur) var(--ease-out);justify-content:space-between;align-items:center;padding:0 12px 0 14px;display:flex}.custom-select-trigger:hover{border-color:var(--border-strong)}.custom-select-wrap.is-open .custom-select-trigger{background:var(--card-elevated);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.custom-select-text.is-placeholder{color:var(--text-placeholder)}.custom-select-chevron{color:var(--text-muted);transition:transform var(--dur) var(--ease-out);align-items:center;display:flex}.custom-select-chevron .chevron-icon{transform:rotate(-90deg)}.custom-select-wrap.is-open .custom-select-chevron{transform:rotate(180deg)}.custom-select-dropdown{z-index:1050;background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-md);max-height:240px;box-shadow:var(--shadow-lg);transform-origin:top;animation:menu-in .18s var(--ease-out);flex-direction:column;gap:1px;padding:5px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.custom-select-option{min-height:36px;font-size:var(--fs-sm);color:var(--text-primary);text-align:left;border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);justify-content:space-between;align-items:center;padding:0 10px;font-weight:500;display:flex}.custom-select-option:hover,.custom-select-option.is-active{background:var(--hover)}.custom-select-option.selected{color:var(--text-heading);background:var(--primary-soft);font-weight:600}.option-check{color:var(--primary-text)}.not-found-page{min-height:100vh;padding:var(--sp-6);text-align:center;color:var(--text-primary);background:radial-gradient(var(--chat-canvas-dot) 1px, transparent 1.2px) 0 0 / 18px 18px, var(--background);justify-content:center;align-items:center;display:flex}.not-found-card{width:420px;max-width:100%;padding:var(--sp-10) var(--sp-8);background:var(--card-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:rise-in .5s var(--ease-out) both;flex-direction:column;align-items:center;display:flex}.not-found-icon-wrap{width:72px;height:72px;margin-bottom:var(--sp-5);background:var(--brand-forest);color:var(--brand-lime);border-radius:30%;justify-content:center;align-items:center;animation:4s ease-in-out infinite float-soft;display:flex}.not-found-code{letter-spacing:-.05em;color:var(--text-heading);margin-bottom:var(--sp-2);font-variant-numeric:tabular-nums;font-size:56px;font-weight:700;line-height:1}.not-found-title{font-size:var(--fs-2xl);margin-bottom:var(--sp-2);font-weight:650}.not-found-text,.not-found-desc{max-width:320px;margin-bottom:var(--sp-6);font-size:var(--fs-md);color:var(--text-secondary);line-height:1.55}.not-found-actions{gap:var(--sp-3);justify-content:center;width:100%;display:flex}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes panel-in{0%{opacity:0;transform:translate(24px)}}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}}@keyframes toast-in{0%{opacity:0;transform:translateY(-14px)scale(.94)}}@keyframes toast-timer{to{transform:scaleX(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes stamp{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(3px)}}@keyframes bubble-in-right{0%{opacity:0;transform:translate(10px,8px)scale(.92)}}@keyframes bubble-in-left{0%{opacity:0;transform:translate(-8px,6px)}}@keyframes send-ready{0%{opacity:0;transform:translate(-6px)rotate(-20deg)}}@keyframes typing-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 color-mix(in srgb, currentColor 55%, transparent)}70%,to{box-shadow:0 0 0 7px #0000}}@keyframes float-soft{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes icon-turn{0%{opacity:0;transform:rotate(-90deg)scale(.6)}}.animate-fade-in{animation:rise-in .5s var(--ease-out) both}.delay-1{animation-delay:60ms}.delay-2{animation-delay:.12s}.delay-3{animation-delay:.18s}.delay-4{animation-delay:.24s}html.accent-switching *,html.accent-switching :before,html.accent-switching :after{transition:background-color .4s var(--ease-out), border-color .4s var(--ease-out), color .4s var(--ease-out), fill .4s var(--ease-out), stroke .4s var(--ease-out), box-shadow .4s var(--ease-out), outline-color .4s var(--ease-out)!important}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.mobile-back{display:none}@media (width<=1100px){.dashboard-grid{grid-template-columns:minmax(0,1fr)}.actions-button-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.sidebar{width:320px}}@media (width<=1024px) and (width>=769px){.admin-nav{width:200px}.admin-body{padding:var(--sp-6) var(--sp-5) var(--sp-8)}.club-panel{z-index:40;box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;right:0}}@media (width<=768px){.sidebar{border-right:none;width:100%;min-width:0}.main-pane,.app.chat-open .sidebar,.app.page-open .sidebar{display:none}.app.chat-open .main-pane,.app.page-open .main-pane{display:flex}.notifications-inner{padding:0 var(--sp-4) calc(var(--sp-8) + env(safe-area-inset-bottom))}.notifications-page .notif-tabs.club-tabs{margin:0 calc(var(--sp-4) * -1) var(--sp-4);padding:0 var(--sp-2)}.notifications-page .notif-tabs .club-tab .icon{display:none}.mobile-back{margin-left:-6px;display:inline-flex}.sidebar-brand{padding-top:calc(14px + env(safe-area-inset-top))}.chat-item{padding:10px}.search-kbd{display:none}.chat-header{padding:8px 10px;padding-top:calc(8px + env(safe-area-inset-top));gap:10px}.chat-header-actions .icon-btn{min-width:40px}.message-list{padding:var(--sp-3)}.bubble-container{max-width:86%}.message-input{padding:8px 10px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}input,textarea,select{font-size:16px}.club-panel{z-index:40;width:100%;min-width:0;animation:rise-in .3s var(--ease-out);border-left:none;position:fixed;inset:0}.club-panel-header{padding-top:calc(10px + env(safe-area-inset-top))}.dashboard-container{padding:var(--sp-6) var(--sp-4)}.dashboard-header h1{font-size:var(--fs-3xl)}.admin-header{gap:var(--sp-2);padding-top:calc(10px + env(safe-area-inset-top));padding-right:var(--sp-4);flex-wrap:wrap}.admin-me{overflow-wrap:anywhere;order:10;width:100%;padding-left:44px}.admin-shell{flex-direction:column}.admin-nav{width:100%;padding:var(--sp-2);border-right:none;border-bottom:1px solid var(--sidebar-border);scrollbar-width:none;flex-direction:row;gap:2px;overflow:auto hidden}.admin-nav::-webkit-scrollbar{display:none}.admin-nav-group{flex-direction:row;gap:2px}.admin-nav-heading{display:none}.admin-nav-item{min-height:40px;font-size:var(--fs-sm);flex-shrink:0}.admin-nav-item:before{display:none}.admin-body{padding:var(--sp-4) var(--sp-3) calc(var(--sp-6) + env(safe-area-inset-bottom))}.announce-footer{flex-wrap:wrap}.announce-reach{white-space:normal;flex-basis:100%}.announce-feed-search{width:100%}.stat-grid{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:var(--sp-3) var(--sp-4)}.admin-body .btn-small,.admin-body .icon-btn{min-height:40px}.admin-body .picker-item,.club-panel .picker-item{flex-wrap:wrap}.admin-body .picker-grow,.club-panel .picker-button{text-align:left;width:100%}.picker-item:hover .action-arrow{color:var(--primary-text);transform:translate(3px)}.field-optional{font-weight:500;font-size:var(--fs-xs);color:var(--text-placeholder);margin-left:6px}.picker-grow{flex:calc(100% - 60px)}.admin-body .picker-item>.picker-actions,.admin-body .picker-item>.tier-tag{margin-left:52px}.faculty-add{flex-direction:column}.faculty-add input,.faculty-add select{width:100%}.edit-grid{grid-template-columns:1fr}.users-toolbar{flex-direction:column;align-items:stretch}.auth-card{padding:var(--sp-8) var(--sp-5) var(--sp-5)}}@media (width<=640px){.modal-overlay{align-items:flex-end;padding:0}.modal-card,.modal-wide{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:92dvh;animation:sheet-in .36s var(--ease-out);border-bottom:none}.modal-card:before{content:"";background:var(--border-strong);border-radius:2px;flex-shrink:0;align-self:center;width:36px;height:4px;margin-top:8px}.modal-header{padding:var(--sp-3) var(--sp-3) var(--sp-2) var(--sp-5)}.modal-body{padding:var(--sp-2) var(--sp-5) calc(var(--sp-6) + env(safe-area-inset-bottom))}.modal-body>.club-tabs{margin:0 calc(var(--sp-5) * -1) var(--sp-4)!important}.picker-item{min-height:60px}.browse-header-row{flex-direction:column;align-items:stretch}.toast-container{width:auto;left:16px;right:16px}.settings-modal{height:100dvh;border-radius:0!important;max-height:100dvh!important}.settings-modal:before{display:none}.settings-modal .modal-header{padding-top:calc(var(--sp-3) + env(safe-area-inset-top));border-bottom:1px solid var(--border)}.settings-modal .modal-body{min-height:0;padding:0 var(--sp-4);flex:1;padding-bottom:0}.settings-nav-tabs{z-index:3;margin:0 calc(var(--sp-4) * -1) var(--sp-4);background:var(--card-elevated);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:sticky;top:0}.settings-nav-tab{justify-content:center;min-height:48px}.settings-hero{gap:var(--sp-4);padding:var(--sp-4)}.settings-hero-info h3,.settings-email{overflow-wrap:anywhere}.settings-section{padding:var(--sp-4)}.photo-actions>*{flex:120px;min-height:44px!important}.status-card,.theme-card{min-height:52px}.settings-footer-actions{margin:0 calc(var(--sp-4) * -1);padding:var(--sp-3) var(--sp-4) calc(var(--sp-3) + env(safe-area-inset-bottom));bottom:0}.settings-footer-actions>button{flex:1;min-height:44px}}@media (width<=380px){.status-grid,.theme-toggle-grid{grid-template-columns:1fr}}@media (hover:none){.icon-btn{min-width:40px;min-height:40px}.sidebar-footer .icon-btn{min-height:46px}}
