.ui-button{justify-content:center;align-items:center;gap:var(--space-8);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding:8px 14px;font-size:.875rem;font-weight:600;line-height:1.4;transition:background .12s,border-color .12s,box-shadow .12s;display:inline-flex}.ui-button:disabled{opacity:.5;cursor:not-allowed}.ui-button--primary{background:var(--brand);color:var(--brand-contrast);box-shadow:var(--shadow-sm)}.ui-button--primary:hover:not(:disabled){background:var(--brand-hover)}.ui-button--secondary{background:var(--surface-muted);color:var(--text);border-color:var(--separator)}.ui-button--secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--separator-strong)}.ui-button--ghost{background:var(--surface);color:var(--text);border-color:var(--separator-strong);box-shadow:var(--shadow-sm)}.ui-button--ghost:hover:not(:disabled){background:var(--surface-hover)}.ui-button--danger{background:var(--error);color:#fff}.ui-button--sm{padding:5px 10px;font-size:.8rem}.ui-button--block{width:100%}.ui-field{flex-direction:column;gap:6px;display:flex}.ui-field__label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.ui-input,.ui-textarea{background:var(--surface);width:100%;color:var(--text);border:1px solid var(--separator-strong);border-radius:var(--radius-md);padding:9px 12px;font-family:inherit;font-size:.9rem;transition:border-color .12s,box-shadow .12s}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--muted)}.ui-input:focus,.ui-textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.ui-textarea{resize:none;min-height:120px;line-height:1.6}.ui-field__error{color:var(--error);font-size:.8rem}.ui-card{background:var(--surface);border:1px solid var(--separator);border-radius:var(--radius-lg);padding:var(--space-24);box-shadow:var(--shadow-sm)}.ui-card--flush{padding:0;overflow:hidden}.ui-badge{border-radius:var(--radius-sm);letter-spacing:.01em;background:var(--surface-muted);color:var(--text-secondary);border:1px solid var(--separator);align-items:center;gap:6px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.ui-badge--success{background:color-mix(in srgb, var(--success) 10%, transparent);color:color-mix(in srgb, var(--success) 80%, var(--text));border-color:color-mix(in srgb, var(--success) 25%, transparent)}.ui-badge--warning{background:color-mix(in srgb, var(--warning) 12%, transparent);color:color-mix(in srgb, var(--warning) 80%, var(--text));border-color:color-mix(in srgb, var(--warning) 25%, transparent)}.ui-badge--error{background:color-mix(in srgb, var(--error) 10%, transparent);color:color-mix(in srgb, var(--error) 80%, var(--text));border-color:color-mix(in srgb, var(--error) 25%, transparent)}.ui-badge--brand{background:var(--brand-soft);color:var(--brand);border-color:color-mix(in srgb, var(--brand) 25%, transparent)}.ui-stat-pill{padding:var(--space-12) var(--space-16);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--separator);flex-direction:column;gap:2px;min-width:108px;display:inline-flex}.ui-stat-pill__value{letter-spacing:-.01em;font-size:1.35rem;font-weight:700}.ui-stat-pill__label{color:var(--muted);font-size:.75rem;font-weight:500}.ui-empty{text-align:center;align-items:center;gap:var(--space-12);padding:var(--space-32);color:var(--muted);flex-direction:column;display:flex}.ui-empty__title{color:var(--text);font-size:1rem;font-weight:600}.ui-empty__desc{max-width:360px;font-size:.875rem}.ui-spinner{border:2px solid var(--separator);border-top-color:var(--brand);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite ui-spin}.ui-spinner--lg{border-width:3px;width:32px;height:32px}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-loader{flex-shrink:0;place-items:center;display:inline-grid;position:relative}.ui-loader--sm{width:20px;height:20px}.ui-loader--md{width:36px;height:36px}.ui-loader--lg{width:80px;height:80px}.ui-loader--xl{width:min(100%,360px);height:200px}.ui-loader__svg{width:100%;height:100%;overflow:visible}.ui-loader__line{fill:none;stroke:var(--brand);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.ui-loader__line--sm{stroke-width:1.35px;vector-effect:unset}.ui-loader__line--xl{stroke-width:3.2px}.ui-loader__pencil-shape{fill:var(--brand)}.ui-loader__pencil-shape--eraser{opacity:.5}.ui-loader__pencil-shape--ferrule{opacity:.85}.ui-loader__pencil-shape--body{opacity:.8}.ui-loader__pencil-shape--cone{opacity:.9}.ui-loader__pencil-shape--tip{opacity:1}.ui-loading-screen{justify-content:center;align-items:center;gap:var(--space-16);padding:var(--space-32);flex-direction:column;display:flex}.ui-loading-screen--fullscreen{min-height:100vh}.ui-loading-screen--page{flex:1;min-height:320px}.ui-loading-screen__label{color:var(--muted);font-size:.875rem;font-weight:500}.ui-skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-muted) 0%, color-mix(in srgb, var(--surface-muted) 70%, var(--surface)) 50%, var(--surface-muted) 100%);background-size:200% 100%;animation:1.4s ease-in-out infinite ui-skeleton-shimmer}.ui-skeleton--title{width:38%;height:14px;margin-bottom:var(--space-16)}.ui-skeleton--line{height:12px;margin-bottom:var(--space-12)}.ui-skeleton-card{padding:var(--space-20);border:1px solid var(--separator);border-radius:var(--radius-lg);background:var(--surface)}@keyframes ui-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.app-icon{object-fit:cover;border-radius:22%;display:block}.ui-loading-inline{justify-content:center;align-items:center;gap:var(--space-12);padding:var(--space-24);color:var(--muted);font-size:.85rem;display:flex}.ui-token-notice{align-items:flex-start;gap:var(--space-12);margin:0 var(--space-16) var(--space-12);padding:var(--space-12) var(--space-16);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface-muted) 65%, var(--bg));border:1px solid var(--separator);display:flex}.ui-token-notice__icon{color:var(--muted);opacity:.85;flex-shrink:0;margin-top:1px}.ui-token-notice__title{color:var(--text-secondary);font-size:.82rem;font-weight:600}.ui-token-notice__subtitle{color:var(--muted);margin-top:2px;font-size:.8rem;line-height:1.55}.ui-token-notice--inline{margin:0}.ui-modal__backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:var(--space-16);z-index:50;background:#10111a66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-modal{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--separator);box-shadow:var(--shadow-md);width:min(480px,100%);max-height:90vh;padding:var(--space-24);overflow-y:auto}.ui-modal__title{letter-spacing:-.01em;margin-bottom:var(--space-16);font-size:1.05rem;font-weight:700}.ui-segmented{background:var(--surface-muted);border:1px solid var(--separator);border-radius:var(--radius-md);gap:2px;padding:2px;display:inline-flex}.ui-segmented__option{color:var(--text-secondary);border-radius:calc(var(--radius-md) - 3px);cursor:pointer;background:0 0;border:none;padding:5px 12px;font-size:.82rem;font-weight:600;transition:color .12s}.ui-segmented__option:hover{color:var(--text)}.ui-segmented__option--active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.markdown{color:var(--text);font-size:.95rem;line-height:1.65}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p{margin:0 0 var(--space-12)}.markdown h1,.markdown h2,.markdown h3{margin:var(--space-16) 0 var(--space-8);font-weight:700;line-height:1.3}.markdown h1{font-size:1.25rem}.markdown h2{font-size:1.1rem}.markdown h3{font-size:1rem}.markdown ul,.markdown ol{margin:0 0 var(--space-12);padding-left:1.25rem}.markdown li{margin-bottom:4px}.markdown a{color:var(--brand);font-weight:600}.markdown code{background:var(--surface-muted);border-radius:var(--radius-sm);padding:1px 5px;font-size:.88em}.markdown pre{background:var(--surface-muted);padding:var(--space-12);border-radius:var(--radius-md);overflow-x:auto}.markdown pre code{background:0 0;padding:0}.markdown blockquote{margin:0 0 var(--space-12);padding-left:var(--space-12);border-left:3px solid var(--separator);color:var(--text-secondary)}.auth-layout{min-height:100vh;padding:var(--space-24);background:var(--bg);place-items:center;display:grid}.auth-card{background:var(--surface);border:1px solid var(--separator);border-radius:var(--radius-lg);width:min(400px,100%);box-shadow:var(--shadow-md);padding:var(--space-32);gap:var(--space-24);flex-direction:column;display:flex}.auth-card__brand{align-items:center;gap:var(--space-12);font-size:1.1rem;font-weight:700;display:flex}.auth-card__brand-mark{border-radius:var(--radius-md);background:var(--brand);width:36px;height:36px;color:var(--brand-contrast);place-items:center;display:grid}.auth-card__heading h1{font-size:1.4rem;font-weight:700}.auth-card__heading p{color:var(--muted);margin-top:4px;font-size:.92rem}.auth-form{gap:var(--space-16);flex-direction:column;display:flex}.auth-card__footer{color:var(--muted);text-align:center;font-size:.9rem}.auth-card__footer a{color:var(--brand);font-weight:600}.auth-card__error{background:color-mix(in srgb, var(--error) 12%, transparent);color:var(--error);border-radius:var(--radius-md);padding:10px 12px;font-size:.88rem}.auth-card__notice{background:var(--brand-soft);color:var(--brand);border-radius:var(--radius-md);padding:10px 12px;font-size:.88rem}.auth-link-row{justify-content:flex-end;display:flex}.auth-link-row a{color:var(--brand);font-size:.85rem;font-weight:600}
