:root{--bg: #ffffff;--surface: #ffffff;--surface2: #f5f5f5;--border: #ebebeb;--text: #111110;--text-muted: #9f9f9f;--accent: #5b5bd4;--accent-light: #edeafc;--lavender: #4a3a9e;--green: #347a34;--green-light: #eaf5ea;--orange: #b86800;--orange-light: #fef3e2;--red: #c0392b;--red-light: #fde8e6;--blue: #1d6fa8;--blue-light: #e2eef8;--midi-bg: #edf7ed;--soir-bg: #ede8f8;--radius: 18px;--radius-sm: 10px;--radius-pill: 999px;--shadow: 0 2px 12px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .05);--nav-active-bg: #111110;--nav-active-fg: #ffffff}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #131215;--surface: #1c1b1f;--surface2: #242327;--border: #322f36;--text: #f2f1f4;--text-muted: #99969f;--accent: #8f8ff2;--accent-light: #2c2a4d;--lavender: #b6acf5;--green: #6bbf6f;--green-light: #1c2e1c;--orange: #e0a542;--orange-light: #332a15;--red: #e5766a;--red-light: #3a2220;--blue: #6fa9dd;--blue-light: #1c2c3a;--midi-bg: #1b2a1c;--soir-bg: #29233f;--shadow: 0 2px 14px rgba(0, 0, 0, .4);--nav-active-bg: #f2f1f4;--nav-active-fg: #131215}}:root[data-theme=dark]{--bg: #131215;--surface: #1c1b1f;--surface2: #242327;--border: #322f36;--text: #f2f1f4;--text-muted: #99969f;--accent: #8f8ff2;--accent-light: #2c2a4d;--lavender: #b6acf5;--green: #6bbf6f;--green-light: #1c2e1c;--orange: #e0a542;--orange-light: #332a15;--red: #e5766a;--red-light: #3a2220;--blue: #6fa9dd;--blue-light: #1c2c3a;--midi-bg: #1b2a1c;--soir-bg: #29233f;--shadow: 0 2px 14px rgba(0, 0, 0, .4);--nav-active-bg: #f2f1f4;--nav-active-fg: #131215}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.5;min-height:100vh}button{font-family:inherit;cursor:pointer}input{font-family:inherit;font-size:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2{font-weight:700;letter-spacing:-.02em}#app{min-height:100vh}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:340px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:32px 28px;display:flex;flex-direction:column;gap:14px}.login-brand{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;color:var(--accent)}.login-tag{font-size:.85rem;color:var(--text-muted);margin-top:-10px;margin-bottom:4px}.field{display:flex;flex-direction:column;gap:5px;font-size:.82rem;color:var(--text-muted)}.field input{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;font-size:.92rem;color:var(--text);background:var(--bg)}.field input:focus{outline:2px solid var(--accent);outline-offset:1px}.login-error{font-size:.82rem;color:var(--red)}.btn-primary{border:none;border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-size:.92rem;font-weight:600;padding:11px 18px;margin-top:4px}.btn-primary:disabled{opacity:.6;cursor:default}.app-shell{display:flex;flex-direction:column;min-height:100vh}@media (min-width: 769px){.app-shell{flex-direction:row}}.sidebar{display:none;width:220px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);flex-direction:column}.sidebar-brand{padding:24px 22px 16px}.sidebar-brand .name{font-size:1.28rem;font-weight:700;letter-spacing:-.02em;color:var(--accent)}.sidebar-brand .tag{font-size:.72rem;color:var(--text-muted);margin-top:2px}.side-nav{display:flex;flex-direction:column;flex:1;padding:6px 12px;gap:3px}.side-item{display:flex;align-items:center;gap:10px;border:none;border-radius:var(--radius-pill);background:none;color:var(--text-muted);text-align:left;font-family:inherit;font-size:.9rem;font-weight:500;padding:10px 16px}.side-item .ic{font-size:1rem}.side-item:hover:not(:disabled){color:var(--text);background:var(--surface2)}.side-item.active{color:var(--nav-active-fg);background:var(--nav-active-bg);font-weight:600}.side-item:disabled{opacity:.45;cursor:default}.side-item .soon{margin-left:auto;font-size:.62rem;font-style:italic;color:var(--text-muted)}.side-profile{border-top:1px solid var(--border);padding:14px 16px 18px;display:flex;align-items:center;gap:8px}.avatar{width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.74rem;font-weight:700;flex-shrink:0}.side-profile .who{flex:1;min-width:0;overflow:hidden}.side-profile .who .n{font-size:.83rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-profile .who .r{font-size:.66rem;color:var(--text-muted)}.icon-btn{border:none;background:none;color:var(--text-muted);font-size:.95rem;padding:4px;flex-shrink:0}.icon-btn:hover{color:var(--accent)}.mobile-header{display:flex;align-items:center;gap:10px;padding:16px 16px 12px;background:var(--surface);border-bottom:1px solid var(--border)}.mobile-header h1{font-size:1.25rem;letter-spacing:-.02em;color:var(--accent);flex:1}.mobile-header .back{border:none;background:var(--surface2);color:var(--text);width:30px;height:30px;border-radius:50%;font-size:.9rem;flex-shrink:0}.main{flex:1;display:flex;flex-direction:column;min-width:0}.pane-title{display:none;padding:22px 28px 6px}.pane-title h2{font-size:1.5rem}.content-body{flex:1;padding:14px 16px 40px}@media (min-width: 769px){.sidebar{display:flex}.mobile-header{display:none}.pane-title{display:block}.content-body{padding:14px 28px 40px}}.wall-header{margin:8px 0 18px}.wall-header .hello{font-size:.76rem;color:var(--text-muted)}.wall-header h1{font-size:1.6rem;margin-top:2px}.section-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:-.01em;margin:22px 0 10px}.mobile-modules{display:block}@media (min-width: 769px){.mobile-modules{display:none}}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tile{aspect-ratio:1;border:none;border-radius:var(--radius);box-shadow:var(--shadow);background:var(--surface2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text);text-align:center;padding:10px}.tile .ic{font-size:1.9rem}.tile .lbl{font-size:.88rem;font-weight:700;letter-spacing:-.01em}.empty-state{text-align:center;padding:54px 20px;color:var(--text-muted)}.empty-state.small{padding:20px}.empty-state .ic{font-size:1.6rem;margin-bottom:10px}.empty-state p{margin-bottom:4px;font-size:.95rem}.empty-state p strong{color:var(--text)}.empty-state p.small{font-size:.8rem}
