::selection{background:#b8542c2e;color:inherit}:root{--paper: #fafaf7;--paper-2: #f4f1ea;--app-bg: #f0ece3;--ink: #1a1613;--ink-2: #433b32;--muted: #7a7167;--rule: #e8e2d7;--rule-2: #d7cfc1;--accent: #b8542c;--accent-dark: #9a4420;--accent-light: #f5e4d9;--rule-soft: rgba(26, 22, 19, .06);--ink-overlay: rgba(26, 22, 19, .25);--accent-30: rgba(184, 84, 44, .3);--accent-18: rgba(184, 84, 44, .18);--bg-primary: var(--paper);--bg-secondary: var(--paper);--bg-tertiary: var(--paper-2);--bg-hover: var(--paper-2);--border-color: var(--rule);--border-hover: var(--rule-2);--border-soft: var(--rule-soft);--text-primary: var(--ink);--text-secondary: var(--ink-2);--text-muted: var(--muted);--accent-color: var(--accent);--accent-hover: var(--accent-dark);--heading-color: var(--ink);--council-bg: var(--paper-2);--chairman-bg: linear-gradient(135deg, var(--accent-light) 0%, var(--paper-2) 100%);--chairman-border: var(--accent-30);--error-bg: #fbefe7;--error-border: #e9c9b6;--panel-bg: rgba(250, 250, 247, .86);--panel-strong: var(--paper);--panel-warm: rgba(250, 250, 247, .6);--shadow-soft: 0 20px 60px rgba(26, 22, 19, .1);--shadow-subtle: 0 1px 3px rgba(26, 22, 19, .06);--shadow-pop: 0 1px 2px rgba(26, 22, 19, .04), 0 8px 24px rgba(26, 22, 19, .08), 0 0 0 1px rgba(26, 22, 19, .06);--shadow-ring: 0 0 0 3px rgba(184, 84, 44, .18);--font-serif: "Fraunces", ui-serif, Georgia, "Times New Roman", serif;--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--radius-card: 10px;--radius-btn: 6px;--radius-input: 4px;font-family:var(--font-sans);line-height:1.5;font-weight:400;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}*,*:before,*:after{-webkit-font-smoothing:antialiased}html,body,#root{height:100%;width:100%;background:var(--paper)}body{margin:0;display:flex;min-width:320px;min-height:100vh;min-height:100dvh;overflow-x:hidden;overscroll-behavior-y:none;-webkit-text-size-adjust:100%;background:var(--paper);color:var(--ink);font-family:var(--font-sans);transition:background .3s,color .3s}button{border-radius:var(--radius-btn);border:1px solid transparent;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer}button:focus,button:focus-visible{outline:none}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#1a161314;border-radius:10px;border:3px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#1a16132e;border:3px solid transparent;background-clip:padding-box}kbd{font-family:var(--font-mono);font-size:10.5px;padding:1px 5px;border:1px solid var(--rule-2);border-radius:3px;background:var(--paper);color:var(--ink-2);box-shadow:0 1px 0 var(--rule-2);line-height:1}@keyframes cortex-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes cortex-fade-in{0%{opacity:0}to{opacity:1}}@keyframes cortex-caret-blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes cortex-typing-dot{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-3px);opacity:1}}.command-palette-overlay{position:fixed;inset:0;background:#1a161340;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;z-index:10000;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.command-palette{width:560px;max-width:92vw;max-height:70vh;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-card);box-shadow:var(--shadow-pop);display:flex;flex-direction:column;font-family:var(--font-sans);color:var(--ink);overflow:hidden;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.command-palette-input{display:flex;align-items:center;gap:.625rem;padding:0 1rem;height:48px;border-bottom:1px solid var(--rule)}.command-palette-input svg{color:var(--text-muted);flex-shrink:0}.command-palette-input input{flex:1;background:transparent;border:none;outline:none;color:var(--ink);font-size:14.5px;font-family:var(--font-sans)}.command-palette-input input::placeholder{color:var(--text-muted)}.command-palette-hint{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-muted)}.command-palette-results{flex:1;overflow-y:auto;padding:.5rem;max-height:50vh}.command-palette-results::-webkit-scrollbar{width:8px}.command-palette-results::-webkit-scrollbar-track{background:transparent}.command-palette-results::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.command-palette-results::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.command-palette-empty{padding:3rem 1rem;text-align:center;color:var(--text-muted)}.command-palette-empty p{margin:0}.command-palette-group{margin-bottom:1rem}.command-palette-group:last-child{margin-bottom:0}.command-palette-group-title{font-family:var(--font-mono);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);padding:.5rem .75rem .25rem}.command-palette-item{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border-radius:var(--radius-btn);cursor:pointer;transition:all .12s ease;border:1px solid transparent;font-family:var(--font-sans);font-size:13.5px;color:var(--ink-2)}.command-palette-item:hover{background:var(--paper-2);color:var(--ink)}.command-palette-item.selected{background:var(--accent-light);border-color:transparent;color:var(--ink)}.command-palette-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--muted)}.command-palette-item:hover .command-palette-icon,.command-palette-item.selected .command-palette-icon{color:var(--accent-dark)}.command-palette-item-content{flex:1;min-width:0}.command-palette-item-title{font-family:var(--font-sans);font-size:13.5px;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.5rem}.pin-badge{display:inline-flex;align-items:center;color:var(--accent);margin-right:.25rem}.command-palette-item-description{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.125rem}.command-palette-enter-hint{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-muted)}.command-palette-footer{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:11px;color:var(--muted);background:var(--paper)}.command-palette-status{display:flex;align-items:center;gap:.5rem;cursor:pointer}.command-palette-status:hover{color:var(--text-secondary)}.command-palette-footer-keys{display:flex;align-items:center;gap:1rem}.command-palette-footer-keys span{display:flex;align-items:center;gap:.375rem}.command-palette kbd,.command-palette-input kbd,.command-palette-footer kbd,.command-palette-enter-hint kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--paper);border:1px solid var(--rule-2);border-radius:3px;font-family:var(--font-mono);font-size:10.5px;font-weight:500;color:var(--ink-2);box-shadow:0 1px 0 var(--rule-2)}@media(max-width:768px){.command-palette{width:95vw;max-height:80vh}.command-palette-overlay{padding-top:10vh}.command-palette-input{padding:.875rem 1rem}.command-palette-input input{font-size:16px}.command-palette-item{padding:.75rem;min-height:44px}.command-palette-footer-keys,.command-palette-hint.desktop-only,.command-palette-enter-hint{display:none}}.error-boundary{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:2rem}.error-boundary-content{max-width:600px;width:100%;text-align:center;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.error-icon{color:#ff6b6b;margin-bottom:1.5rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.error-boundary h1{font-family:var(--font-serif);font-size:2rem;color:var(--ink);margin-bottom:.75rem;font-weight:600;letter-spacing:-.01em}.error-boundary p{font-size:1rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.6}.error-details{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-bottom:2rem;text-align:left}.error-details summary{cursor:pointer;font-weight:600;color:var(--text-primary);padding:.5rem;margin:-.5rem -.5rem 0;border-radius:6px;transition:background .2s}.error-details summary:hover{background:var(--bg-hover)}.error-details pre{background:var(--bg-primary);padding:1rem;border-radius:6px;overflow-x:auto;font-size:.75rem;line-height:1.5;color:#ff8a8a;margin-top:.75rem;border:1px solid var(--border-color)}.error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.error-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s;border:none;font-family:inherit}.error-btn.primary{background:var(--accent);color:var(--paper)}.error-btn.primary:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 4px 12px #b8542c3d}.error-btn.secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.error-btn.secondary:hover{background:var(--bg-hover);border-color:var(--border-hover);transform:translateY(-1px)}.error-btn:active{transform:translateY(0)}@media(max-width:768px){.error-boundary{padding:1.5rem}.error-boundary h1{font-size:1.5rem}.error-icon svg{width:48px;height:48px}.error-actions{flex-direction:column;width:100%}.error-btn{width:100%;justify-content:center}}.auth-loading{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.auth-loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:protectedRouteSpin .7s linear infinite}@keyframes protectedRouteSpin{to{transform:rotate(360deg)}}.network-error-screen{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(circle at 20% 10%,rgba(184,84,44,.08),transparent 40%),var(--bg-primary)}.network-error-card{width:min(100%,460px);background:var(--panel-strong);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-soft);padding:1.5rem;text-align:center}.network-error-icon{width:56px;height:56px;margin:0 auto 1rem;display:grid;place-items:center;border-radius:999px;background:var(--bg-tertiary);color:var(--heading-color)}.network-error-icon svg{display:block}.network-error-title{margin:0 0 .5rem;font-family:var(--font-serif);color:var(--ink);font-size:1.25rem;font-weight:600;letter-spacing:-.01em}.network-error-text{margin:0 0 1rem;color:var(--text-secondary);line-height:1.6;font-size:.95rem}.network-error-hint{margin:0 0 1.25rem;color:var(--text-muted);font-size:.82rem;word-break:break-all}.network-error-link{color:var(--accent-color);font-weight:600;text-decoration:underline;text-underline-offset:2px}.network-error-link:hover{color:var(--accent-hover)}.network-error-retry-hint{margin:0 0 1.25rem;color:var(--text-muted);font-size:.85rem;line-height:1.5}.network-error-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.network-error-btn{padding:.65rem 1rem;border-radius:10px;border:1px solid transparent;font-size:.9rem;font-weight:600;font-family:inherit;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .12s ease,background .12s ease,border-color .12s ease,opacity .12s ease}.network-error-btn:active{transform:translateY(1px)}.network-error-btn.primary{background:var(--accent);color:var(--paper)}.network-error-btn.primary:hover{background:var(--accent-dark)}
