:root{--bg-deep:#050505;--bg-gradient:radial-gradient(circle at 50% 0%,#1a2333 0%,#050505 60%);--glass-panel:rgba(22,27,34,.75);--glass-border:hsla(0,0%,100%,.08);--glass-highlight:hsla(0,0%,100%,.03);--blur-strength:12px;--text-primary:#e6edf3;--text-secondary:#8b949e;--accent:#3b82f6;--accent-glow:rgba(59,130,246,.4);--error:#ef4444;--success:#10b981;--warning:#f59e0b;--bot-bg:rgba(22,27,34,.6);--user-bg:#1d4ed8;--user-text:#fff;--input-bg:rgba(20,25,35,.6);--input-text:#fff;--input-placeholder:hsla(0,0%,100%,.3);--font-xs:11px;--font-sm:13px;--font-base:16px;--font-lg:18px;--font-xl:22px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--transition-fast:0.15s ease;--transition-base:0.2s ease;--transition-slow:0.3s ease}[data-theme=light]{--bg-deep:#f8fafc;--bg-gradient:radial-gradient(circle at 50% 0%,#eff6ff 0%,#f8fafc 60%);--glass-panel:hsla(0,0%,100%,.85);--glass-border:rgba(0,0,0,.08);--glass-highlight:rgba(0,0,0,.04);--text-primary:#1e293b;--text-secondary:#64748b;--accent:#2563eb;--accent-glow:rgba(37,99,235,.15);--bot-bg:hsla(0,0%,100%,.9);--user-bg:#e2e8f0;--user-text:#0f172a;--input-bg:#fff;--input-text:#0f172a;--input-placeholder:#94a3b8}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{margin:0;padding:0;background:var(--bg-deep);background-image:var(--bg-gradient);background-attachment:fixed;color:var(--text-primary);font-family:Calibri Light,Calibri,Segoe UI,Roboto,sans-serif;line-height:1.6;height:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background var(--transition-slow),color var(--transition-slow)}.container{height:100vh}.container,.sidebar{display:flex;overflow:hidden}.sidebar{width:280px;background:var(--glass-panel);backdrop-filter:blur(var(--blur-strength));-webkit-backdrop-filter:blur(var(--blur-strength));border-right:1px solid var(--glass-border);padding:var(--space-lg);flex-direction:column;transition:width var(--transition-slow) cubic-bezier(.4,0,.2,1),background var(--transition-slow),border-color var(--transition-slow);z-index:10;transform:translateZ(0)}.sidebar.collapsed{width:80px;padding:var(--space-lg) 12px}.brand{display:flex;align-items:center;justify-content:space-between;height:40px;margin-bottom:30px;padding-bottom:0;border-bottom:none}.brand h1{font-size:var(--font-xl);margin:0;font-weight:700;background:linear-gradient(to right,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.5px;white-space:nowrap;transition:opacity var(--transition-base)}.sidebar.collapsed .brand{justify-content:center}.sidebar.collapsed .brand h1{opacity:0;pointer-events:none}.toggle-btn{background:transparent;border:1px solid transparent;color:var(--text-secondary);cursor:pointer;padding:var(--space-sm);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);margin-left:auto}.toggle-btn:hover{background:var(--glass-highlight);color:var(--text-primary);border-color:var(--glass-border)}.toggle-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sidebar.collapsed .toggle-btn{margin-left:0}.new-chat-btn{background:var(--accent);color:#fff;border:none;padding:12px;border-radius:var(--radius-lg);font-weight:600;cursor:pointer;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap;box-shadow:0 4px 12px var(--accent-glow);transition:all var(--transition-base);height:44px;will-change:transform}.new-chat-btn:hover:not(:disabled){transform:translateY(-1px)}.new-chat-btn:active:not(:disabled){transform:translateY(0)}.new-chat-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}.sidebar.collapsed .new-chat-btn{padding:0;width:44px;border-radius:50%}.chat-list{flex:1 1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--glass-border) transparent}.chat-list::-webkit-scrollbar{width:6px}.chat-list::-webkit-scrollbar-track{background:transparent}.chat-list::-webkit-scrollbar-thumb{background-color:var(--glass-border);border-radius:20px}.section-title{font-size:var(--font-xs);text-transform:uppercase;color:var(--text-secondary);letter-spacing:1.2px;margin:var(--space-sm) 0;opacity:.8;white-space:nowrap}.session-list{list-style:none;padding:0;margin:0}.session-item,.session-list li{padding:6px 10px;margin-bottom:2px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-sm);color:var(--text-primary);transition:all var(--transition-base);display:flex;align-items:center;gap:var(--space-sm);height:30px;border:1px solid transparent;position:relative}.session-item:hover,.session-list li:hover{background:var(--glass-highlight)}.session-item.active,.session-list li.active{background:rgba(59,130,246,.15);border:1px solid var(--accent);color:#fff}[data-theme=light] .session-item.active,[data-theme=light] .session-list li.active{background:#e0e7ff;color:#1e3a8a;border-color:#6366f1}.session-item .title,.session-list li .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1}.session-item .icon,.session-list li .icon{font-size:var(--font-base);flex-shrink:0}.sidebar.collapsed .session-item,.sidebar.collapsed .session-list li{justify-content:center;padding:0}.sidebar-footer{margin-top:auto;border-top:1px solid var(--glass-border);padding-top:20px}.quick-links{list-style:none;padding:0;opacity:.8;margin:0}.quick-links li{font-size:var(--font-sm);margin-bottom:var(--space-sm);cursor:pointer;color:var(--text-secondary);transition:color var(--transition-base)}.quick-links li:hover,.theme-toggle-btn{color:var(--text-primary)}.theme-toggle-btn{width:100%;background:var(--glass-highlight);border:1px solid var(--glass-border);padding:10px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-sm);font-weight:500;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-bottom:15px;transition:all var(--transition-base)}.theme-toggle-btn:hover{background:rgba(0,0,0,.05)}.theme-toggle-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.main{flex:1 1;display:flex;flex-direction:column;position:relative;max-width:1200px;margin:0 auto;width:100%}.hero{padding:30px 40px}.hero h2{font-weight:600;font-size:var(--font-lg);color:var(--text-secondary);opacity:.8;margin:0}.toggle-row{padding-left:10%;margin-bottom:-10px}.toggle-row label{font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-sm);color:var(--text-primary);transition:color var(--transition-base)}.toggle-row input[type=checkbox]{cursor:pointer;accent-color:var(--accent)}.chatWindow{flex:1 1;overflow-y:auto;padding:20px 10%;display:flex;flex-direction:column;gap:var(--space-xl);scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--glass-border) transparent}.chatWindow::-webkit-scrollbar{width:8px}.chatWindow::-webkit-scrollbar-track{background:transparent}.chatWindow::-webkit-scrollbar-thumb{background-color:var(--glass-border);border-radius:20px;border:2px solid transparent;background-clip:content-box}.chatWindow::-webkit-scrollbar-thumb:hover{background-color:var(--text-secondary)}.message-row{display:flex;gap:var(--space-md);max-width:95%;width:100%;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.row-user{align-self:flex-end;justify-content:flex-end}.row-bot{align-self:flex-start;justify-content:flex-start}.avatar{width:36px;height:36px;border-radius:10px;background:var(--glass-highlight);display:flex;align-items:center;justify-content:center;font-size:var(--font-lg);flex-shrink:0;border:1px solid var(--glass-border);transition:background var(--transition-base),border-color var(--transition-base)}.msg{padding:20px 28px;border-radius:var(--radius-xl);font-size:var(--font-base);line-height:1.8;font-weight:400;box-shadow:0 4px 12px rgba(0,0,0,.05);word-wrap:break-word;overflow-wrap:break-word;max-width:85%;transition:background var(--transition-base),color var(--transition-base)}.msg.bot{background:transparent;border:none;box-shadow:none;padding:0;color:var(--text-primary);width:100%;max-width:100%}.msg.user{background:var(--user-bg);color:var(--user-text);padding:10px 18px;border-radius:var(--radius-lg);box-shadow:none;text-align:left}.model-badge{align-self:flex-end;font-size:10px;opacity:.7;margin-bottom:4px;color:var(--text-secondary)}.bot-content-wrapper{width:100%}.markdown-body{font-size:var(--font-base);color:var(--text-primary)}.markdown-body p{margin-bottom:var(--space-md)}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin-top:var(--space-xl);margin-bottom:12px;font-weight:600;color:var(--text-primary);line-height:1.3}.markdown-body h1{font-size:1.4em;border-bottom:1px solid var(--glass-border);padding-bottom:var(--space-sm)}.markdown-body h2{font-size:1.25em}.markdown-body h3{font-size:1.1em;color:var(--accent)}.markdown-body strong{color:var(--text-primary);font-weight:700}.markdown-body ol,.markdown-body ul{margin-bottom:20px;padding-left:var(--space-lg)}.markdown-body li{margin-bottom:var(--space-sm)}.markdown-body a{color:var(--accent);text-decoration:none;border-bottom:1px dashed var(--accent);transition:border-color var(--transition-base)}.markdown-body a:hover{border-bottom-style:solid}.markdown-body a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.markdown-body table{width:100%;border-collapse:separate;border-spacing:0;margin:var(--space-lg) 0;border-radius:var(--radius-md);border:1px solid var(--glass-border);overflow:hidden}.markdown-body th{background:var(--glass-highlight);font-weight:600;color:var(--text-primary);text-align:left}.markdown-body td,.markdown-body th{padding:12px var(--space-md);border-bottom:1px solid var(--glass-border)}.markdown-body td{color:var(--text-secondary)}.markdown-body tr:last-child td{border-bottom:none}[data-theme=light] .markdown-body h1,[data-theme=light] .markdown-body h2,[data-theme=light] .markdown-body h3,[data-theme=light] .markdown-body strong,[data-theme=light] .markdown-body th{color:#1e293b}[data-theme=light] .markdown-body td{color:#334155}.inputSection{padding:30px 10%;background:transparent;position:relative}.input-wrapper{display:flex;flex-direction:column;gap:12px;background:var(--input-bg);border:1px solid var(--glass-border);padding:var(--space-md);border-radius:20px;box-shadow:0 8px 32px rgba(0,0,0,.15);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:border-color var(--transition-base),background var(--transition-slow);transform:translateZ(0)}.input-wrapper:focus-within{border-color:var(--accent)}.input-controls{display:flex;justify-content:space-between;width:100%;margin-bottom:var(--space-sm);align-items:center;gap:var(--space-md)}.mode-tabs{display:flex;gap:4px;background:var(--glass-highlight);padding:4px;border-radius:var(--radius-md);width:-moz-fit-content;width:fit-content;border:1px solid var(--glass-border)}.mode-tabs button{background:transparent;color:var(--text-secondary);border:none;padding:6px 14px;border-radius:var(--radius-sm);font-size:var(--font-sm);cursor:pointer;font-weight:600;transition:all var(--transition-base);white-space:nowrap}.mode-tabs button:hover:not(:disabled){color:var(--text-primary)}.mode-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mode-tabs button.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px var(--accent-glow)}.mode-tabs button:nth-child(2).active{background:rgba(168,85,247,.9);color:#fff;box-shadow:0 0 10px rgba(168,85,247,.3)}.mode-tabs button.bare-mode.active{background:#d97706;color:#fff;box-shadow:0 2px 8px rgba(217,119,6,.4)}.model-dropdown{display:flex;align-items:center;gap:var(--space-sm)}.model-dropdown label,.model-dropdown select{font-size:var(--font-sm);color:var(--text-primary)}.model-dropdown select{padding:4px var(--space-sm);border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--glass-panel);cursor:pointer;transition:border-color var(--transition-base)}.model-dropdown select:hover{border-color:var(--accent)}.model-dropdown select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.file-chip{background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.3);padding:4px 10px;border-radius:var(--radius-full);font-size:12px;color:var(--accent);gap:var(--space-sm)}.file-chip,.remove-file-btn{display:flex;align-items:center}.remove-file-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:0;transition:color var(--transition-base)}.remove-file-btn:hover{color:var(--error)}.input-bottom{display:flex;align-items:flex-end;gap:12px}.input-textarea{flex:1 1;background:transparent;border:none;resize:none;font-size:var(--font-base);outline:none;max-height:200px;line-height:1.6;padding:0;font-family:inherit;color:var(--input-text);transition:color var(--transition-base)}.input-textarea::placeholder{color:var(--input-placeholder)}[data-theme=light] .input-textarea::placeholder{color:#94a3b8}.attach-pill{background:var(--glass-highlight);border:1px solid var(--glass-border);color:var(--text-secondary);padding:var(--space-sm) 12px;border-radius:var(--radius-full);font-size:14px;cursor:pointer;transition:all var(--transition-base)}.attach-pill:hover:not(:disabled){background:hsla(0,0%,100%,.1);color:var(--text-primary)}.attach-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mic-btn{background:transparent;border:1px solid var(--glass-border);width:40px;height:40px;border-radius:var(--radius-lg);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base);font-size:var(--font-lg)}.mic-btn:hover:not(:disabled){background:var(--glass-highlight);color:var(--text-primary)}.mic-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mic-btn.listening{background:rgba(239,68,68,.15);border-color:#ef4444;color:#ef4444;animation:pulse-red 1.5s infinite}@keyframes pulse-red{0%{box-shadow:0 0 0 0 rgba(239,68,68,.4)}70%{box-shadow:0 0 0 10px rgba(239,68,68,0)}to{box-shadow:0 0 0 0 rgba(239,68,68,0)}}.send-btn{background:var(--accent);border:none;width:40px;height:40px;border-radius:var(--radius-lg);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px var(--accent-glow);transition:all var(--transition-base);will-change:transform}.send-btn:hover:not(:disabled){transform:translateY(-1px)}.send-btn:active:not(:disabled){transform:translateY(0)}.send-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}.send-btn:disabled{background:hsla(0,0%,100%,.1);cursor:not-allowed;box-shadow:none;opacity:.5}.stop-btn{background:var(--error)!important;color:#fff!important;border:none!important;padding:var(--space-sm) 14px!important;border-radius:var(--radius-md)!important;font-weight:600;font-size:var(--font-sm);cursor:pointer;box-shadow:0 0 6px rgba(255,77,77,.4);transition:all var(--transition-base);min-width:70px;will-change:transform}.stop-btn:hover{background:#dc2626!important;transform:translateY(-1px)}.stop-btn:active{transform:translateY(0)}.action-bar{display:flex;gap:12px;padding-top:12px;margin-top:var(--space-sm);border-top:none;opacity:.7;transition:opacity var(--transition-base)}.bot-content-wrapper:hover .action-bar{opacity:1}.action-bar button{background:transparent;border:none;color:var(--text-secondary);font-size:var(--font-sm);padding:0;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:var(--space-sm);font-weight:500;transition:color var(--transition-base)}.action-bar button:hover{color:var(--accent)}.action-bar button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}details.source-expander{margin-top:var(--space-md);background:var(--glass-highlight);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:10px 14px;transition:background var(--transition-base)}details.source-expander[open]{background:rgba(0,0,0,.03)}summary{cursor:pointer;font-size:var(--font-sm);font-weight:600;color:var(--accent);list-style:none;display:flex;justify-content:space-between;align-items:center;outline:none;transition:color var(--transition-base)}summary:hover{color:var(--text-primary)}summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}summary:after{content:"▼";font-size:10px;color:var(--text-secondary);transition:transform var(--transition-base)}details[open] summary:after{transform:rotate(180deg)}summary::-webkit-details-marker{display:none}.menu-container{position:relative;margin-left:auto;display:flex;align-items:center}.three-dots-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--space-sm);border-radius:4px;display:flex;align-items:center;opacity:0;transition:opacity var(--transition-base)}.menu-container:focus-within .three-dots-btn,.session-item:hover .three-dots-btn{opacity:1}.three-dots-btn:hover{background:var(--glass-highlight);color:var(--text-primary)}.three-dots-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dropdown-menu{position:absolute;right:0;top:100%;margin-top:4px;width:140px;background:var(--glass-panel);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:0 4px 20px rgba(0,0,0,.2);z-index:999;padding:4px;display:flex;flex-direction:column}.dropdown-menu button{text-align:left;background:transparent;border:none;color:var(--text-primary);padding:10px;font-size:var(--font-sm);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-base)}.dropdown-menu button:hover{background:var(--glass-highlight)}.dropdown-menu button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.dropdown-menu button.delete-option{color:var(--error)}.dropdown-menu button.delete-option:hover{background:rgba(239,68,68,.1)}.bare-law-block{white-space:pre-wrap;background:var(--glass-highlight);padding:20px;border-radius:var(--radius-lg);border:1px solid var(--glass-border);font-family:Courier New,monospace;font-size:15px;line-height:1.65;color:var(--text-primary);transition:background var(--transition-slow),color var(--transition-slow)}.error-message{background:rgba(239,68,68,.1);border:1px solid var(--error);color:var(--error);padding:12px var(--space-md);border-radius:var(--radius-md);margin:12px 0;font-size:14px}[data-theme=light] .error-message{background:#fee;color:#dc2626}.loading-text{font-style:italic;color:var(--text-secondary);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.typing-indicator{display:flex;align-items:center;gap:var(--space-sm);padding:4px 0}.typing-indicator .dot{width:8px;height:8px;background:var(--text-primary);border-radius:50%;animation:bounce 1.4s ease-in-out infinite;will-change:transform}.typing-indicator .dot:first-child{animation-delay:-.32s}.typing-indicator .dot:nth-child(2){animation-delay:-.16s}.typing-indicator .dot:nth-child(3){animation-delay:0}@keyframes bounce{0%,80%,to{transform:scale(.45);opacity:.4}40%{transform:scale(1);opacity:1}}.loading-label{font-size:12px;color:var(--text-secondary);animation:fadePulse 1.8s ease-in-out infinite}@keyframes fadePulse{0%,to{opacity:.4}50%{opacity:1}}.loading-wrapper{display:flex;align-items:center;gap:12px;padding:var(--space-sm) 0}@media (max-width:768px){.sidebar{position:fixed;left:-280px;z-index:100;height:100vh;transition:left var(--transition-slow) ease}.sidebar.mobile-open{left:0;box-shadow:4px 0 20px rgba(0,0,0,.3)}.chatWindow,.inputSection{padding:20px 5%}.main{max-width:100%}.msg{max-width:95%}.hero{padding:20px 5%}.toggle-row{padding-left:5%}.input-controls{flex-wrap:wrap}.mode-tabs{order:1;width:100%}.model-dropdown{order:2;width:100%}}@media (max-width:480px){.brand h1{font-size:var(--font-lg)}.chatWindow{padding:15px 3%;gap:20px}.msg{font-size:14px;padding:12px var(--space-md)}.msg.user{padding:var(--space-sm) 14px}.input-wrapper{padding:12px}.mode-tabs{width:100%;justify-content:space-between}.mode-tabs button{font-size:var(--font-xs);padding:5px 10px;flex:1 1}.message-row{gap:var(--space-sm)}.avatar{width:32px;height:32px;font-size:var(--font-base)}.action-bar{flex-wrap:wrap;gap:var(--space-sm)}.action-bar button{font-size:12px}}@media (hover:none) and (pointer:coarse){.action-bar button,.attach-pill,.mic-btn,.mode-tabs button,.new-chat-btn,.send-btn,.session-item,.session-list li{min-height:44px;min-width:44px}.three-dots-btn{opacity:1}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.skip-to-main{position:absolute;left:-9999px;z-index:999;padding:1em;background-color:var(--accent);color:#fff;text-decoration:none}.skip-to-main:focus{left:50%;transform:translateX(-50%);top:1em}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.loading-label,.loading-text,.typing-indicator .dot{animation:none;opacity:1}}@media (prefers-contrast:high){:root{--glass-border:hsla(0,0%,100%,.3);--text-secondary:#aaa}[data-theme=light]{--glass-border:rgba(0,0,0,.3);--text-secondary:#555}.msg.user,.new-chat-btn,.send-btn{border:2px solid}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media print{.action-bar,.attach-pill,.hero,.inputSection,.mic-btn,.new-chat-btn,.send-btn,.sidebar,.theme-toggle-btn,.three-dots-btn,.toggle-row{display:none!important}.main{max-width:100%;margin:0}.chatWindow{padding:0;overflow:visible}.message-row{page-break-inside:avoid;margin-bottom:1rem}.msg.bot{color:#000;background:#fff}.msg.user{background:#f0f0f0;color:#000}.bare-law-block{border:1px solid #000;background:#fff;color:#000}.markdown-body{color:#000}.markdown-body table{border:1px solid #000}.markdown-body td,.markdown-body th{border:1px solid #000;color:#000}body{background:#fff}}.hidden{display:none!important}.visible{display:block!important}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-secondary)}.text-primary{color:var(--text-primary)}.text-accent{color:var(--accent)}.text-error{color:var(--error)}.text-success{color:var(--success)}.mt-0{margin-top:0}.mt-1{margin-top:var(--space-xs)}.mt-2{margin-top:var(--space-sm)}.mt-3{margin-top:var(--space-md)}.mt-4{margin-top:var(--space-lg)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-xs)}.mb-2{margin-bottom:var(--space-sm)}.mb-3{margin-bottom:var(--space-md)}.mb-4{margin-bottom:var(--space-lg)}button{font-family:inherit;cursor:pointer;transition:all var(--transition-base)}button:disabled{opacity:.5;cursor:not-allowed}button:not(:disabled):hover{transform:translateY(-1px)}button:not(:disabled):active{transform:translateY(0)}::selection{background-color:var(--accent);color:#fff}::-moz-selection{background-color:var(--accent);color:#fff}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}