:root{--bg:#09090b;--bg-elevated:#111113;--bg-hover:#1c1c1f;--fg:#fafafa;--fg-muted:#a1a1aa;--fg-subtle:#71717a;--border:#27272a;--input-bg:#18181b;--primary:#fafafa;--primary-fg:#09090b;--primary-hover:#e4e4e7;--destructive:#ef4444;--ring:#52525b;--radius:.5rem;--font:Inter,system-ui,-apple-system,sans-serif}.accordion{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;width:100%}.accordion-item{border-bottom:1px solid var(--border)}.accordion-item:last-child{border-bottom:none}.accordion-trigger{display:flex;cursor:pointer;color:var(--fg);font-size:.9375rem;font-weight:500;font-family:var(--font);text-align:left;background:0 0;border:none;justify-content:space-between;align-items: center;gap:1rem;width:100%;padding:1rem 1.25rem;transition:background .15s}.accordion-trigger:hover{background:var(--bg-hover)}.accordion-icon{color:var(--fg-subtle);flex-shrink:0;transition:transform .25s}.accordion-item.accordion-open .accordion-icon{transform:rotate(180deg)}.accordion-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s}.accordion-item.accordion-open .accordion-panel{grid-template-rows:1fr}.accordion-panel-inner{overflow:hidden}.accordion-content{color:var(--fg-muted);padding:0 1.25rem 1rem;font-size:.875rem;line-height:1.65}.accordion-item-icon{display:flex;color:var(--fg-subtle);flex-shrink:0;align-items: center}.accordion-trigger-label{text-align:left;flex:1}.accordion-bordered{overflow:visible;border:none;border-radius:0}.accordion-bordered .accordion-item{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:.5rem}.accordion-bordered .accordion-item:last-child{margin-bottom:0}.af-root{list-style:none;display:flex;flex-direction:column;gap:0;margin:0;padding:0}.af-item{display:flex;position:relative;gap:.75rem}.af-icon-col{display:flex;flex-direction:column;flex-shrink:0;align-items: center;padding-top:2px}.af-icon{display:flex;background:var(--bg-elevated);z-index:1;border:1.5px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:28px;height:28px;font-size:.75rem}.af-has-line .af-icon-col:after{content:"";background:var(--border);flex:1;width:1.5px;min-height:16px;margin-top:4px;margin-bottom:4px}.af-content{flex:1;min-width:0;padding-bottom:1rem}.af-action{color:var(--fg);margin:0 0 .15rem;font-size:.85rem;line-height:1.4}.af-actor{font-weight:600}.af-target{color:var(--primary);font-weight:500}.af-desc{color:var(--fg-muted);margin:.1rem 0;font-size:.78rem;line-height:1.4}.af-time{color:var(--fg-subtle);font-size:.72rem}.alert{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);display:flex;align-items: flex-start;gap:.75rem;padding:.875rem 1rem}.alert-icon{flex-shrink:0;margin-top:.05rem}.alert-body{flex:1;min-width:0}.alert-title{margin-bottom:.1875rem;font-size:.875rem;font-weight:600}.alert-description{color:var(--fg-muted);font-size:.8125rem;line-height:1.5}.alert-dismiss{color:var(--fg-subtle);cursor:pointer;display:grid;border-radius:calc(var(--radius) - 2px);background:0 0;border:none;flex-shrink:0;place-items: center;margin-top:-.125rem;padding:.125rem;transition:color .15s}.alert-dismiss:hover{color:var(--fg)}.alert-default{border-color:var(--border)}.alert-info{background:#60a5fa0f;border-color:#60a5fa66}.alert-info .alert-title{color:#93c5fd}.alert-info .alert-icon{color:#60a5fa}.alert-success{background:#4ade800f;border-color:#4ade8066}.alert-success .alert-title{color:#86efac}.alert-success .alert-icon{color:#4ade80}.alert-warning{background:#fbbf240f;border-color:#fbbf2466}.alert-warning .alert-title{color:#fde68a}.alert-warning .alert-icon{color:#fbbf24}.alert-destructive{border-color:color-mix(in srgb,var(--destructive)40%,transparent);background:color-mix(in srgb,var(--destructive)6%,transparent)}.alert-destructive .alert-title{color:#fca5a5}.alert-destructive .alert-icon{color:var(--destructive)}.anim-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0}.anim-list-item{animation-fill-mode:both;animation-timing-function:cubic-bezier(.34,1.12,.64,1)}@keyframes anim-slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.anim-list-slide-up{animation-name:anim-slide-up}@keyframes anim-slide-left{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.anim-list-slide-left{animation-name:anim-slide-left}@keyframes anim-fade{0%{opacity:0}to{opacity:1}}.anim-list-fade{animation-name:anim-fade;animation-timing-function:ease}@keyframes anim-scale{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.anim-list-scale{animation-name:anim-scale}.aspect-ratio-root{position:relative;padding-bottom:calc(100%/var(--ar-ratio,1.778));overflow:hidden;border-radius:var(--radius);width:100%}.aspect-ratio-inner{position:absolute;display:flex;overflow:hidden;justify-content:center;align-items: center;inset:0}.aspect-ratio-inner>img,.aspect-ratio-inner>video,.aspect-ratio-inner>iframe{object-fit:cover;display:block;width:100%;height:100%}.avatar{overflow:hidden;background:var(--bg-hover);display:grid;border:1px solid var(--border);border-radius:50%;flex-shrink:0;place-items: center}.avatar-sm{width:1.75rem;height:1.75rem}.avatar-md{width:2.5rem;height:2.5rem}.avatar-lg{width:3.5rem;height:3.5rem}.avatar-img{object-fit:cover;width:100%;height:100%}.avatar-fallback{color:var(--fg-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem;font-weight:600;line-height:1}.avatar-sm .avatar-fallback{font-size:.5625rem}.avatar-lg .avatar-fallback{font-size:.875rem}.avatar-group{display:flex;flex-direction:row}.avatar-group .avatar{border:2px solid var(--bg);margin-left:-.5rem}.avatar-group .avatar:first-child{margin-left:0}.avatar-group-more{background:var(--bg-hover);border:2px solid var(--bg);display:grid;color:var(--fg-muted);border-radius:50%;place-items: center;width:2.5rem;height:2.5rem;margin-left:-.5rem;font-size:.6875rem;font-weight:600}.ag-root{display:flex;align-items: center}.ag-avatar{width:var(--ag-size,40px);height:var(--ag-size,40px);border:var(--ag-border,2px solid var(--bg));margin-left:calc(var(--ag-size,40px)*-.3);overflow:hidden;position:relative;background:var(--bg-elevated);font-family:var(--font);border-radius:50%;flex-shrink:0;transition:transform .15s,z-index .15s}.ag-avatar:first-child{margin-left:0}.ag-avatar:hover{z-index:10;transform:translateY(-3px)}.ag-img{object-fit:cover;display:block;width:100%;height:100%}.ag-fallback{display:flex;font-size:calc(var(--ag-size,40px)*.35);background:var(--primary);color:var(--primary-fg);justify-content:center;align-items: center;width:100%;height:100%;font-weight:700}.ag-overflow{background:var(--bg-elevated);color:var(--fg-muted);font-size:calc(var(--ag-size,40px)*.28);border:var(--ag-border,2px solid var(--bg));display:flex;justify-content:center;align-items: center;font-weight:700}.badge{display:inline-flex;white-space:nowrap;border-radius:999px;align-items: center;gap:.3rem;padding:.125rem .625rem;font-size:.75rem;font-weight:500;line-height:1.5}.badge-default{background:var(--fg);color:var(--bg)}.badge-secondary{background:var(--bg-hover);color:var(--fg-muted);border:1px solid var(--border)}.badge-destructive{background:color-mix(in srgb,var(--destructive)20%,transparent);color:var(--destructive);border:1px solid color-mix(in srgb,var(--destructive)40%,transparent)}.badge-outline{color:var(--fg-muted);border:1px solid var(--border);background:0 0}.badge-success{color:#4ade80;background:#4ade8026;border:1px solid #4ade8066}.badge-warning{color:#fbbf24;background:#fbbf2426;border:1px solid #fbbf2466}.badge-dot:before{content:"";display:inline-block;background:currentColor;border-radius:50%;flex-shrink:0;width:.375rem;height:.375rem}.banner{display:flex;border-radius:var(--radius);font-size:.875rem;line-height:1.5;font-family:var(--font);border:1px solid #0000;align-items: flex-start;gap:.625rem;padding:.75rem 1rem}.banner-default{background:var(--bg-elevated);border-color:var(--border);color:var(--fg)}.banner-info{color:var(--fg);background:#3b82f61a;border-color:#3b82f659}.banner-info .banner-icon{color:#3b82f6}.banner-success{color:var(--fg);background:#22c55e1a;border-color:#22c55e59}.banner-success .banner-icon{color:#22c55e}.banner-warning{color:var(--fg);background:#eab3081a;border-color:#eab30859}.banner-warning .banner-icon{color:#eab308}.banner-destructive{background:color-mix(in srgb,var(--destructive)10%,transparent);border-color:color-mix(in srgb,var(--destructive)35%,transparent);color:var(--fg)}.banner-destructive .banner-icon{color:var(--destructive)}.banner-icon{display:flex;color:var(--fg-muted);flex-shrink:0;align-items: center;margin-top:.125rem}.banner-body{display:flex;flex-direction:column;flex:1;gap:.125rem;min-width:0}.banner-title{color:var(--fg);font-weight:600}.banner-message{color:var(--fg-muted)}.banner-action{display:flex;flex-shrink:0;align-items: center}.banner-dismiss{cursor:pointer;color:var(--fg-subtle);display:flex;border-radius:calc(var(--radius) - 2px);background:0 0;border:none;flex-shrink:0;align-items: center;margin-top:-.125rem;padding:.25rem;transition:color .15s,background .15s}.banner-dismiss:hover{color:var(--fg);background:var(--bg-hover)}.bc-root{display:flex;font-family:var(--font);flex-direction:column;gap:.5rem;width:100%}.bc-root:not(.bc-horiz){position:relative}.bc-grid{position:absolute;pointer-events:none;display:flex;flex-direction:column;justify-content:flex-end;inset:0}.bc-gridline{position:absolute;border-top:1px dashed var(--border);display:flex;align-items: flex-end;gap:.25rem;left:30px;right:0}.bc-gridlabel{color:var(--fg-subtle);text-align:right;width:28px;margin-left:-30px;font-size:.65rem;line-height:1;transform:translateY(50%)}.bc-bars{display:flex;height:var(--bc-h,200px);align-items: flex-end;gap:.4rem;padding-left:30px}.bc-col{display:flex;flex-direction:column;flex:1;justify-content:flex-end;align-items: center;gap:.25rem;min-width:0;height:100%}.bc-bar-wrap{display:flex;flex-direction:column;justify-content:flex-end;align-items: center;width:100%;height:100%}.bc-bar{cursor:default;border-radius:4px 4px 0 0;width:100%;max-width:48px;min-height:3px;transition:opacity .15s}.bc-bar:hover{opacity:.85}.bc-val{color:var(--fg-muted);white-space:nowrap;margin-bottom:2px;font-size:.65rem}.bc-label{color:var(--fg-muted);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-size:.72rem}.bc-horiz{gap:.4rem}.bc-hrow{display:flex;align-items: center;gap:.5rem}.bc-hlabel{color:var(--fg-muted);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;width:80px;font-size:.78rem}.bc-htrack{background:var(--bg-elevated);overflow:hidden;border-radius:4px;flex:1;height:20px}.bc-hbar{border-radius:4px;min-width:3px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1),opacity .15s}.bc-hbar:hover{opacity:.85}.bc-hval{color:var(--fg);text-align:right;min-width:36px;font-size:.75rem;font-weight:600}.bento-grid{display:grid;width:100%}.bento-cols-2{grid-template-columns:repeat(2,1fr)}.bento-cols-3{grid-template-columns:repeat(3,1fr)}.bento-cols-4{grid-template-columns:repeat(4,1fr)}.bento-cell{border-radius:var(--radius);background:var(--bg-elevated);border:1px solid var(--border);overflow:hidden;min-height:80px}.bento-col-span-2{grid-column:span 2}.bento-col-span-3{grid-column:span 3}.bento-row-span-2{grid-row:span 2}.bq-root{display:flex;border-radius:var(--radius);border-left:4px solid;align-items: flex-start;gap:1rem;margin:0;padding:1rem 1.25rem}.bq-default{border-left-color:var(--border);background:var(--bg-elevated);color:var(--fg)}.bq-info{color:var(--fg);background:#3b82f612;border-left-color:#3b82f6}.bq-success{color:var(--fg);background:#22c55e12;border-left-color:#22c55e}.bq-warning{color:var(--fg);background:#f59e0b12;border-left-color:#f59e0b}.bq-destructive{border-left-color:var(--destructive);color:var(--fg);background:#ef444412}.bq-icon{flex-shrink:0;margin-top:.1rem}.bq-default .bq-icon{color:var(--fg-subtle)}.bq-info .bq-icon{color:#3b82f6}.bq-success .bq-icon{color:#22c55e}.bq-warning .bq-icon{color:#f59e0b}.bq-destructive .bq-icon{color:var(--destructive)}.bq-body{display:flex;flex-direction:column;gap:.5rem}.bq-content{font-size:.92rem;font-style:italic;line-height:1.65}.bq-footer{display:flex;flex-direction:column;gap:.1rem}.bq-author{color:var(--fg);font-size:.82rem;font-style:normal;font-weight:600}.bq-source{color:var(--fg-muted);font-size:.78rem}.ui-breadcrumb-list{display:flex;list-style:none;flex-wrap:wrap;align-items: center;gap:.25rem;margin:0;padding:0;font-size:.875rem}.ui-breadcrumb-item{display:flex;align-items: center;gap:.25rem}.ui-breadcrumb-link{color:var(--fg-muted);font-size:inherit;font-family:var(--font);cursor:pointer;text-decoration:none;background:0 0;border:none;padding:0;transition:color .15s}.ui-breadcrumb-link:hover{color:var(--fg);text-decoration:underline;text-underline-offset:3px}.ui-breadcrumb-sep{color:var(--fg-subtle);user-select:none;padding:0 .125rem;font-size:.75rem}.ui-breadcrumb-current{color:var(--fg);font-weight:500}.btn{display:inline-flex;border-radius:var(--radius);font-size:.875rem;font-weight:500;font-family:var(--font);cursor:pointer;user-select:none;outline:none;text-decoration:none;white-space:nowrap;border:none;justify-content:center;align-items: center;gap:.5rem;transition:background-color .15s,opacity .15s,border-color .15s,color .15s}.btn:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)40%,transparent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-default{background:var(--primary);color:var(--primary-fg)}.btn-default:hover:not(:disabled){background:var(--primary-hover)}.btn-outline{color:var(--fg);border:1px solid var(--border);background:0 0}.btn-outline:hover:not(:disabled){background:var(--bg-hover);border-color:var(--ring)}.btn-ghost{color:var(--fg);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--bg-hover)}.btn-destructive{background:var(--destructive);color:#fff}.btn-destructive:hover:not(:disabled){background:color-mix(in srgb,var(--destructive)85%,black)}.btn-sm{height:2rem;padding:0 .75rem;font-size:.8125rem}.btn-md{height:2.5rem;padding:0 1rem}.btn-lg{height:2.75rem;padding:0 1.5rem;font-size:1rem}.btn-icon{width:2.5rem;padding:0}.btn-icon.btn-sm{width:2rem}.btn-icon.btn-lg{width:2.75rem}.btn-full{width:100%}.btn-spinner{animation:spin .6s linear infinite;border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0;width:.875rem;height:.875rem}.callout{display:flex;border-radius:var(--radius);border:1px solid var(--border);border-left-width:3px;gap:.75rem;padding:.875rem 1rem;line-height:1.5}.callout-note{background:#3b82f60f;border-left-color:#3b82f6}.callout-tip{background:#10b9810f;border-left-color:#10b981}.callout-warning{background:#f59e0b0f;border-left-color:#f59e0b}.callout-danger{background:#ef44440f;border-left-color:#ef4444}.callout-note .callout-icon{color:#3b82f6}.callout-tip .callout-icon{color:#10b981}.callout-warning .callout-icon{color:#f59e0b}.callout-danger .callout-icon{color:#ef4444}.callout-icon{display:inline-flex;flex-shrink:0;margin-top:2px}.callout-content{display:flex;flex-direction:column;gap:.25rem;min-width:0}.callout-title{color:var(--fg);margin:0;font-size:.875rem;font-weight:600}.callout-body{color:var(--fg-muted);margin:0;font-size:.875rem}.callout-body p{margin:0}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);overflow:hidden}.card-header{display:flex;flex-direction:column;gap:.375rem;padding:1.5rem 1.5rem 0}.card-title{letter-spacing:-.02em;font-size:1.125rem;font-weight:600}.card-description{color:var(--fg-muted);font-size:.875rem;line-height:1.45}.card-content{padding:1.25rem 1.5rem}.card-footer{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 1.5rem 1.25rem}.carousel{position:relative;overflow:hidden;border-radius:var(--radius);width:100%}.carousel-viewport{overflow:hidden;border-radius:var(--radius);width:100%}.carousel-track{display:flex;will-change:transform;transition:transform .4s cubic-bezier(.4,0,.2,1)}.carousel-slide{flex:0 0 100%;min-width:0}.carousel-arrow{position:absolute;background:var(--bg-elevated);border:1px solid var(--border);display:grid;cursor:pointer;color:var(--fg);z-index:2;opacity:0;border-radius:50%;place-items: center;width:2.25rem;height:2.25rem;transition:background .15s,opacity .15s;top:50%;transform:translateY(-50%)}.carousel:hover .carousel-arrow{opacity:1}.carousel-arrow:hover{background:var(--bg-hover)}.carousel-arrow-prev{left:.5rem}.carousel-arrow-next{right:.5rem}.carousel-dots{display:flex;justify-content:center;gap:.375rem;padding:.625rem 0 .25rem}.carousel-dot{background:var(--border);cursor:pointer;border:none;border-radius:50%;width:6px;height:6px;padding:0;transition:background .2s,transform .2s}.carousel-dot-active{background:var(--primary);transform:scale(1.5)}.chat-thread{display:flex;overflow-y:auto;flex-direction:column;gap:.75rem;padding:1rem}.chat-row{display:flex;align-items: flex-end;gap:.625rem;max-width:80%}.chat-row-self{flex-direction:row-reverse;margin-left:auto}.chat-row-other{margin-right:auto}.chat-avatar{overflow:hidden;background:var(--bg-elevated);border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:32px;height:32px}.chat-avatar-img{object-fit:cover;width:100%;height:100%}.chat-avatar-fallback{display:flex;color:var(--fg-muted);text-transform:uppercase;justify-content:center;align-items: center;width:100%;height:100%;font-size:.75rem;font-weight:600}.chat-body{display:flex;flex-direction:column;gap:.25rem}.chat-row-self .chat-body{align-items: flex-end}.chat-row-other .chat-body{align-items: flex-start}.chat-name{color:var(--fg-muted);padding:0 .25rem;font-size:.75rem;font-weight:600}.chat-bubble{word-break:break-word;border-radius:1.25rem;max-width:100%;padding:.5rem .875rem;font-size:.9375rem;line-height:1.5}.chat-bubble-other{background:var(--bg-elevated);color:var(--fg);border:1px solid var(--border);border-bottom-left-radius:.25rem}.chat-bubble-self{background:var(--primary);color:var(--primary-fg);border-bottom-right-radius:.25rem}.chat-meta{display:flex;align-items: center;gap:.25rem;padding:0 .375rem}.chat-time{color:var(--fg-subtle);font-size:.6875rem}.chat-status-icon{color:var(--fg-subtle);display:block}.chat-status-read{color:var(--primary)}.checkbox-wrapper{display:inline-flex;cursor:pointer;align-items: center;gap:.5rem}.checkbox{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background:var(--input-bg);display:grid;cursor:pointer;color:var(--primary-fg);flex-shrink:0;place-items: center;width:1.125rem;height:1.125rem;padding:0;transition:background .1s,border-color .1s}.checkbox:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)40%,transparent)}.checkbox.checkbox-checked{background:var(--primary);border-color:var(--primary)}.checkbox-label{color:var(--fg);user-select:none;cursor:pointer;font-size:.875rem}.checkbox-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cl-root{display:flex;flex-direction:column;gap:.5rem}.cl-header{display:flex;justify-content:space-between;align-items: center}.cl-title{color:var(--fg);margin:0;font-size:.9rem;font-weight:600}.cl-progress-label{color:var(--fg-muted);font-size:.78rem}.cl-progress-bar{background:var(--border);overflow:hidden;border-radius:999px;height:5px}.cl-progress-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .3s}.cl-list{list-style:none;display:flex;flex-direction:column;gap:.15rem;margin:0;padding:0}.cl-item{border-radius:var(--radius);transition:background .1s}.cl-item:hover{background:var(--bg-hover)}.cl-item-disabled{opacity:.45;pointer-events:none}.cl-label{display:flex;color:var(--fg);cursor:pointer;align-items: center;gap:.6rem;padding:.4rem .5rem;font-size:.875rem;line-height:1.4}.cl-item-checked .cl-label{color:var(--fg-muted);text-decoration:line-through}.cl-native{position:absolute;opacity:0;width:0;height:0}.cl-checkbox{border:1.5px solid var(--border);background:var(--bg);display:flex;border-radius:4px;flex-shrink:0;justify-content:center;align-items: center;width:16px;height:16px;transition:background .15s,border-color .15s}.cl-item-checked .cl-checkbox{background:var(--primary);border-color:var(--primary);color:var(--primary-fg)}.chip{display:inline-flex;white-space:nowrap;font-weight:500;font-family:var(--font);border:1px solid #0000;border-radius:999px;flex-shrink:0;align-items: center;gap:.3rem}.chip-sm{gap:.25rem;padding:.1rem .5rem;font-size:.6875rem}.chip-md{padding:.2rem .625rem;font-size:.8125rem}.chip-lg{padding:.3rem .875rem;font-size:.9375rem}.chip-default{background:var(--bg-hover);color:var(--fg);border-color:var(--border)}.chip-primary{background:color-mix(in srgb,var(--primary)14%,transparent);color:var(--primary);border-color:color-mix(in srgb,var(--primary)35%,transparent)}.chip-success{color:#15803d;background:#dcfce7;border-color:#86efac}.chip-warning{color:#a16207;background:#fefce8;border-color:#fde047}.chip-destructive{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.chip-secondary{background:var(--bg-elevated);color:var(--fg-muted);border-color:var(--border)}@media (prefers-color-scheme:dark){.chip-success{color:#86efac;background:#22c55e24;border-color:#22c55e4d}.chip-warning{color:#fde047;background:#eab30824;border-color:#eab3084d}.chip-destructive{background:color-mix(in srgb,var(--destructive)14%,transparent);color:#fca5a5;border-color:color-mix(in srgb,var(--destructive)30%,transparent)}}.chip-dot{opacity:.7;background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.chip-sm .chip-dot{width:5px;height:5px}.chip-icon{display:flex;opacity:.75;flex-shrink:0;align-items: center}.chip-sm .chip-icon>*{width:10px;height:10px}.chip-md .chip-icon>*{width:12px;height:12px}.chip-label{line-height:1.3}.chip-remove{display:flex;cursor:pointer;color:inherit;opacity:.55;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:14px;height:14px;padding:0;transition:opacity .15s,background .15s}.chip-sm .chip-remove{width:12px;height:12px}.chip-remove:hover{opacity:1;background:#0000001a}.cp-root{position:relative;display:inline-flex;flex-shrink:0;justify-content:center;align-items: center}.cp-svg{overflow:visible;transform:rotate(-90deg)}.cp-bg{fill:none;stroke:var(--border)}.cp-track{fill:none;stroke:var(--primary);stroke-linecap:round;transition:stroke-dashoffset .6s cubic-bezier(.4,0,.2,1)}.cp-track-success{stroke:#22c55e}.cp-track-warning{stroke:#f59e0b}.cp-track-destructive{stroke:var(--destructive)}.cp-animate{transition:stroke-dashoffset .8s cubic-bezier(.4,0,.2,1)}.cp-label{position:absolute;display:flex;pointer-events:none;flex-direction:column;justify-content:center;align-items: center;gap:0;inset:0}.cp-value{color:var(--fg);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:700;line-height:1}.cp-sublabel{color:var(--fg-subtle);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90%;margin-top:.15em;font-size:.625rem}.code-block{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg-elevated);font-family:var(--font-mono);font-size:.875rem}.code-block-header{display:flex;background:var(--bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items: center;gap:.75rem;padding:.5rem .875rem}.code-block-header-left{display:flex;align-items: center;gap:.625rem;min-width:0}.code-block-filename{color:var(--fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.8125rem;font-family:var(--font-mono)}.code-block-lang{color:var(--fg-subtle);background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius)/1.5);text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem;font-family:var(--font-mono);flex-shrink:0;padding:.1rem .45rem}.code-block-copy{display:inline-flex;border:1px solid var(--border);border-radius:calc(var(--radius)/1.5);font-size:.8125rem;font-family:var(--font);color:var(--fg-muted);cursor:pointer;background:0 0;flex-shrink:0;align-items: center;gap:.375rem;padding:.25rem .625rem;transition:background .12s,color .12s}.code-block-copy:hover{background:var(--bg-hover);color:var(--fg)}.code-block-body{display:flex;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border)transparent;max-height:480px}.code-block-body::-webkit-scrollbar{width:6px;height:6px}.code-block-body::-webkit-scrollbar-track{background:0 0}.code-block-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.code-block-line-numbers{display:flex;text-align:right;color:var(--fg-subtle);border-right:1px solid var(--border);user-select:none;flex-direction:column;flex-shrink:0;min-width:2.5rem;padding:1rem .625rem 1rem .875rem;font-size:.8125rem;line-height:1.65}.code-block-pre{overflow:visible;flex:1;margin:0;padding:1rem}.code-block-code{display:block;color:var(--fg);line-height:1.65}.cb-line{display:block}.cb-keyword{color:#c792ea}.cb-string{color:#c3e88d}.cb-comment{color:var(--fg-subtle);font-style:italic}.cb-number{color:#f78c6c}.cb-literal{color:#89ddff}.cb-function{color:#82aaff}.cb-jsx{color:#f07178}.cbadge-root{display:inline-flex;border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);font-weight:500;font-family:var(--font);white-space:nowrap;align-items: center;gap:.35rem}.cbadge-shape-pill{border-radius:999px}.cbadge-shape-square{border-radius:var(--radius)}.cbadge-sm{padding:.1rem .5rem;font-size:.7rem}.cbadge-md{padding:.2rem .65rem;font-size:.78rem}.cbadge-lg{padding:.3rem .85rem;font-size:.875rem}.cbadge-swatch{border-radius:50%;flex-shrink:0}.cbadge-sm .cbadge-swatch{width:6px;height:6px}.cbadge-md .cbadge-swatch{width:8px;height:8px}.cbadge-lg .cbadge-swatch{width:10px;height:10px}.cbadge-dot{display:inline-block;border-radius:50%;flex-shrink:0}.cbadge-dot.cbadge-sm{width:8px;height:8px}.cbadge-dot.cbadge-md{width:10px;height:10px}.cbadge-dot.cbadge-lg{width:14px;height:14px}.color-picker{display:inline-flex;flex-direction:column;gap:.75rem}.color-picker-swatches{display:grid;grid-template-columns:repeat(6,1.625rem);gap:.375rem}.color-swatch{border-radius:calc(var(--radius) - 2px);cursor:pointer;outline:none;border:2px solid #0000;width:1.625rem;height:1.625rem;transition:transform .1s,border-color .15s;box-shadow:0 1px 3px #0000004d}.color-swatch:hover{transform:scale(1.15)}.color-swatch-active{border-color:var(--fg);box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--fg);transform:scale(1.1)}.color-picker-input-row{display:flex;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;align-items: center;gap:0;height:2.25rem}.color-picker-preview{border:none;border-right:1px solid var(--border);cursor:pointer;display:block;border-radius:0;flex-shrink:0;width:2.25rem;height:100%;transition:filter .15s}.color-picker-preview:hover{filter:brightness(.9)}.color-picker-native{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.color-picker-hash{color:var(--fg-subtle);font-size:.875rem;font-family:var(--font-mono);user-select:none;padding:0 .1rem 0 .5rem}.color-picker-hex-input{outline:none;font-size:.875rem;font-family:var(--font-mono);color:var(--fg);text-transform:uppercase;background:0 0;border:none;flex:1;min-width:0;padding:0 .5rem 0 .125rem}.color-picker-hex-input::placeholder{color:var(--fg-subtle)}.combobox-root{position:relative;display:inline-block;width:100%}.combobox-trigger{display:flex;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);font-size:.875rem;font-family:var(--font);cursor:pointer;text-align:left;justify-content:space-between;align-items: center;gap:.5rem;width:100%;height:2.375rem;padding:0 .75rem;transition:border-color .15s,box-shadow .15s}.combobox-trigger:hover{border-color:var(--ring)}.combobox-trigger-open{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.combobox-trigger:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.combobox-trigger:disabled{opacity:.5;cursor:not-allowed}.combobox-value-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.combobox-placeholder{color:var(--fg-subtle)}.combobox-chevron{color:var(--fg-muted);flex-shrink:0;width:1rem;height:1rem;transition:transform .15s}.combobox-trigger-open .combobox-chevron{transform:rotate(180deg)}.combobox-dropdown{position:absolute;z-index:50;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);animation:combobox-in .12s ease;overflow:hidden;top:calc(100% + 6px);left:0;right:0;box-shadow:0 8px 24px #00000026}@keyframes combobox-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.combobox-search-wrap{display:flex;border-bottom:1px solid var(--border);align-items: center;gap:.5rem;padding:.5rem .625rem}.combobox-search-icon{color:var(--fg-subtle);flex-shrink:0;width:.875rem;height:.875rem}.combobox-search{outline:none;font-size:.875rem;font-family:var(--font);color:var(--fg);background:0 0;border:none;flex:1}.combobox-search::placeholder{color:var(--fg-subtle)}.combobox-list{overflow-y:auto;max-height:14rem;padding:.25rem}.combobox-empty{color:var(--fg-subtle);text-align:center;margin:0;padding:.75rem .5rem;font-size:.875rem}.combobox-option{display:flex;border-radius:calc(var(--radius) - 2px);color:var(--fg);font-size:.875rem;font-family:var(--font);text-align:left;cursor:pointer;background:0 0;border:none;align-items: center;width:100%;padding:.45rem .5rem;transition:background .1s}.combobox-option:hover,.combobox-option-highlighted{background:var(--bg-hover)}.combobox-option-selected{font-weight:500}.combobox-option-disabled{opacity:.45;cursor:not-allowed}.combobox-option-check{display:inline-flex;color:var(--primary);flex-shrink:0;justify-content:center;align-items: center;width:1.125rem;height:1.125rem;margin-right:.375rem}.command-overlay{position:fixed;z-index:120;backdrop-filter:blur(4px);display:flex;padding-top:12vh;background:#000000b3;justify-content:center;align-items: flex-start;padding-inline-start:1rem;padding-inline-end:1rem;inset:0}.command{background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);overflow:hidden;animation:command-in .15s ease;width:100%;max-width:520px;box-shadow:0 25px 60px #0000008c}@keyframes command-in{0%{opacity:0;transform:scale(.97)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}.command-search{display:flex;border-bottom:1px solid var(--border);align-items: center;gap:.625rem;padding:.875rem 1rem}.command-search-icon{color:var(--fg-subtle);flex-shrink:0}.command-input{outline:none;color:var(--fg);font-size:.9375rem;font-family:var(--font);background:0 0;border:none;flex:1}.command-input::placeholder{color:var(--fg-subtle)}.command-clear{cursor:pointer;color:var(--fg-subtle);display:grid;border-radius:calc(var(--radius) - 2px);background:0 0;border:none;place-items: center;padding:.125rem;transition:color .15s}.command-clear:hover{color:var(--fg)}.command-list{overflow-y:auto;max-height:360px;padding:.375rem 0}.command-group+.command-group{border-top:1px solid var(--border);margin-top:.25rem;padding-top:.25rem}.command-group-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-subtle);padding:.4rem 1rem .2rem;font-size:.6875rem;font-weight:600}.command-item{display:flex;cursor:pointer;color:var(--fg);font-size:.875rem;font-family:var(--font);text-align:left;background:0 0;border:none;align-items: center;gap:.625rem;width:100%;padding:.5rem 1rem;transition:background .1s}.command-item:hover,.command-item-active{background:var(--bg-hover)}.command-item-icon{color:var(--fg-muted);display:flex;flex-shrink:0}.command-item-label{flex:1}.command-shortcut{font-size:.6875rem;font-family:var(--font-mono);color:var(--fg-subtle);background:var(--input-bg);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);flex-shrink:0;padding:.1rem .35rem}.command-empty{text-align:center;color:var(--fg-subtle);padding:2rem 1rem;font-size:.875rem}.command-footer{border-top:1px solid var(--border);display:flex;color:var(--fg-subtle);gap:1.25rem;padding:.5rem 1rem;font-size:.6875rem}.command-footer kbd{font-family:var(--font-mono);background:var(--input-bg);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);padding:.1rem .3rem;font-size:.6875rem}.cd-overlay{position:fixed;display:grid;z-index:200;backdrop-filter:blur(2px);animation:cd-fade-in .15s ease;background:#00000080;place-items: center;inset:0}@keyframes cd-fade-in{0%{opacity:0}to{opacity:1}}.cd-dialog{background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius)*1.5);display:flex;text-align:center;animation:cd-scale-in .18s cubic-bezier(.34,1.56,.64,1);flex-direction:column;align-items: center;gap:.5rem;width:calc(100vw - 2rem);max-width:420px;padding:1.5rem 1.5rem 1.25rem;box-shadow:0 16px 48px #0003}@keyframes cd-scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.cd-icon-wrap{margin-bottom:.25rem}.cd-icon{stroke-linecap:round;stroke-linejoin:round;width:48px;height:48px}.cd-icon-default{color:var(--primary)}.cd-icon-destructive{color:var(--destructive)}.cd-title{color:var(--fg);margin:0;font-size:1.0625rem;font-weight:700;line-height:1.3}.cd-description{color:var(--fg-muted);margin:0;font-size:.9rem;line-height:1.55}.cd-actions{display:flex;gap:.625rem;width:100%;margin-top:.75rem}.cd-cancel,.cd-confirm{border-radius:var(--radius);font-size:.9375rem;font-weight:500;font-family:var(--font);cursor:pointer;display:flex;border:1px solid var(--border);flex:1;justify-content:center;align-items: center;gap:.5rem;padding:.5rem 1rem;transition:opacity .15s,background .15s}.cd-cancel{background:var(--bg);color:var(--fg)}.cd-cancel:hover:not(:disabled){background:var(--bg-hover)}.cd-confirm-default{background:var(--primary);color:var(--primary-fg);border-color:var(--primary)}.cd-confirm-default:hover:not(:disabled){opacity:.9}.cd-confirm-destructive{background:var(--destructive);color:#fff;border-color:var(--destructive)}.cd-confirm-destructive:hover:not(:disabled){opacity:.9}.cd-cancel:disabled,.cd-confirm:disabled{opacity:.5;cursor:not-allowed}.cd-spinner{animation:spin .7s linear infinite;display:inline-block;border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:14px;height:14px}@keyframes spin{to{transform:rotate(360deg)}}.context-menu-trigger{display:contents}.context-menu{position:fixed;z-index:110;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);animation:context-in .1s ease;min-width:180px;padding:.25rem;box-shadow:0 12px 32px #00000073}@keyframes context-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.context-menu-item{display:flex;cursor:pointer;color:var(--fg);font-size:.875rem;font-family:var(--font);text-align:left;border-radius:calc(var(--radius) - 2px);background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.4375rem .625rem;transition:background .1s}.context-menu-item:hover:not(:disabled){background:var(--bg-hover)}.context-menu-item:disabled{opacity:.4;cursor:not-allowed}.context-menu-item-destructive{color:var(--destructive)}.context-menu-item-destructive:hover:not(:disabled){background:color-mix(in srgb,var(--destructive)12%,transparent)}.context-menu-item-icon{display:flex;color:var(--fg-muted);flex-shrink:0}.context-menu-item-destructive .context-menu-item-icon{color:var(--destructive)}.context-menu-item-label{flex:1}.context-menu-shortcut{font-size:.6875rem;font-family:var(--font-mono);color:var(--fg-subtle);flex-shrink:0}.context-menu-separator{background:var(--border);height:1px;margin:.25rem 0}.conv-item{display:flex;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:0;align-items: center;gap:.75rem;width:100%;min-height:4rem;padding:.625rem 1rem;transition:background .12s}.conv-item:hover,.conv-item-active{background:var(--bg-hover)}.conv-avatar-wrap{position:relative;flex-shrink:0}.conv-avatar{background:var(--bg-hover);display:flex;overflow:hidden;border-radius:50%;justify-content:center;align-items: center;width:2.75rem;height:2.75rem}.conv-avatar-img{object-fit:cover;width:100%;height:100%}.conv-avatar-initials{color:var(--fg);font-size:1rem;font-weight:600;line-height:1}.conv-online-dot{position:absolute;border:2px solid var(--bg);background:#22c55e;border-radius:50%;width:10px;height:10px;bottom:2px;right:2px}.conv-body{display:flex;flex-direction:column;flex:1;gap:.2rem;min-width:0}.conv-top{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.conv-name{color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;font-size:.9375rem;font-weight:600}.conv-time{color:var(--fg-subtle);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.75rem}.conv-bottom{display:flex;justify-content:space-between;align-items: center;gap:.5rem}.conv-preview{color:var(--fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;font-size:.8125rem}.conv-typing{display:inline-flex;align-items: center;gap:3px;height:1.2em}.conv-typing-dot{background:var(--fg-muted);animation:conv-bounce 1.2s ease-in-out infinite;border-radius:50%;width:5px;height:5px}.conv-typing-dot:nth-child(2){animation-delay:.2s}.conv-typing-dot:nth-child(3){animation-delay:.4s}@keyframes conv-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.conv-badge{background:var(--primary);color:var(--primary-fg);display:inline-flex;white-space:nowrap;border-radius:999px;flex-shrink:0;justify-content:center;align-items: center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;font-size:.7rem;font-weight:700}.conv-badge-muted{background:var(--bg-hover);color:var(--fg-muted);border:1px solid var(--border)}.copy-btn{display:inline-flex;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items: center;transition:all .15s}.copy-btn:hover{background:var(--bg-hover);color:var(--fg);border-color:var(--fg-subtle)}.copy-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--ring)}.copy-btn-copied{color:#22c55e;background:#22c55e1a;border-color:#22c55e}.copy-btn-sm{width:1.75rem;height:1.75rem}.copy-btn-md{width:2rem;height:2rem}.copy-btn-lg{width:2.375rem;height:2.375rem}.countdown-blocks{display:flex;align-items: center;gap:.75rem}.countdown-unit{display:flex;flex-direction:column;align-items: center;gap:.25rem;min-width:3.5rem}.countdown-value{font-variant-numeric:tabular-nums;color:var(--fg);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);text-align:center;width:100%;padding:.5rem .75rem;font-size:2rem;font-weight:700;line-height:1}.countdown-label{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);font-size:.7rem;font-weight:500}.countdown-compact{display:flex;font-variant-numeric:tabular-nums;color:var(--fg);letter-spacing:.02em;align-items:baseline;gap:0;font-size:1.5rem;font-weight:700}.cc-scene{perspective:800px;font-family:var(--font-mono,monospace);width:340px;height:200px}.cc-card{position:relative;transform-style:preserve-3d;border-radius:16px;width:100%;height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1)}.cc-card-flipped{transform:rotateY(180deg)}.cc-face{position:absolute;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;border-radius:16px;inset:0}.cc-front{color:#fff;display:flex;background:linear-gradient(135deg,#1e3a5f 0%,#0f1d35 60%,#1a2d4f 100%);flex-direction:column;gap:.625rem;padding:1.25rem 1.5rem;box-shadow:0 20px 60px #0000004d,inset 0 1px 1px #ffffff26}.cc-shine{position:absolute;pointer-events:none;background:linear-gradient(135deg,#ffffff1a 0%,#0000 60%);inset:0}.cc-chip{display:flex;background:linear-gradient(135deg,#d4a940,#f5c85a,#b8892a);border-radius:4px;flex-direction:column;justify-content:center;gap:4px;width:36px;height:26px;padding:0 5px}.cc-chip-line{background:#0000004d;height:1px}.cc-number{letter-spacing:.1em;color:#fffffff2;margin-top:.25rem;font-size:1.1rem;font-weight:500}.cc-row{display:flex;gap:2rem;margin-top:auto}.cc-field-label{text-transform:uppercase;letter-spacing:.06em;color:#ffffff8c;margin-bottom:2px;font-size:.5625rem}.cc-field-value{color:#ffffffe6;text-transform:uppercase;letter-spacing:.04em;font-size:.8125rem;font-weight:600}.cc-network{position:absolute;top:1.25rem;right:1.5rem}.cc-visa{color:#fff;letter-spacing:-.03em;font-family:sans-serif;font-size:1.5rem;font-style:italic;font-weight:900}.cc-mc{display:flex}.cc-mc-c{border-radius:50%;width:28px;height:28px}.cc-mc-c1{background:#eb001b;margin-right:-12px}.cc-mc-c2{background:#f79e1b}.cc-generic{color:#fff9;letter-spacing:.08em;font-size:.9375rem;font-weight:700}.cc-back{display:flex;background:linear-gradient(135deg,#1a2d4f,#0a1628);flex-direction:column;gap:1rem;padding-top:1.5rem;transform:rotateY(180deg);box-shadow:0 20px 60px #0000004d}.cc-stripe{background:#111;height:44px}.cc-cvc-row{display:flex;justify-content:flex-end;align-items: center;gap:.75rem;padding:0 1.5rem}.cc-cvc-label{color:#ffffff80;text-transform:uppercase;letter-spacing:.06em;font-size:.6875rem}.cc-cvc-box{color:#111;letter-spacing:.15em;text-align:center;background:#fff;border-radius:4px;min-width:56px;padding:.25rem .875rem;font-size:.9375rem}.cc-form{display:flex;flex-direction:column;gap:1.25rem;max-width:360px}.cc-fields{display:flex;flex-direction:column;gap:.75rem}.cc-field{display:flex;flex-direction:column;gap:.25rem}.cc-label{color:var(--fg-muted);font-size:.8125rem;font-weight:500;font-family:var(--font)}.cc-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);font-family:var(--font);outline:none;padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s;font-size:.9375rem}.cc-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.cc-input::placeholder{color:var(--fg-subtle)}.dg-root{display:flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;font-family:var(--font);flex-direction:column;gap:0}.dg-toolbar{border-bottom:1px solid var(--border);background:var(--bg-elevated);padding:.625rem .75rem}.dg-search{width:100%;max-width:280px}.dg-table-wrap{overflow-x:auto}.dg-table{border-collapse:collapse;width:100%;font-size:.875rem}.dg-th{text-align:left;color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-elevated);border-bottom:1px solid var(--border);white-space:nowrap;user-select:none;padding:.625rem .875rem;font-size:.75rem;font-weight:600}.dg-th-sortable{cursor:pointer}.dg-th-sortable:hover{color:var(--fg);background:var(--bg-hover)}.dg-th-inner{display:inline-flex;align-items: center;gap:.1em}.dg-sort-icon{opacity:.6;font-size:.75em}.dg-tr{border-bottom:1px solid var(--border);transition:background .1s}.dg-tr:last-child{border-bottom:none}.dg-tr:hover{background:var(--bg-hover)}.dg-striped .dg-tr:nth-child(2n){background:color-mix(in srgb,var(--border)20%,transparent)}.dg-striped .dg-tr:nth-child(2n):hover{background:var(--bg-hover)}.dg-td{color:var(--fg);padding:.625rem .875rem}.dg-empty{text-align:center;color:var(--fg-subtle);padding:2rem;font-size:.875rem}.dg-footer{display:flex;border-top:1px solid var(--border);background:var(--bg-elevated);flex-wrap:wrap;justify-content:space-between;align-items: center;gap:.75rem;padding:.5rem .875rem}.dg-count{color:var(--fg-muted);font-size:.75rem}.dg-pages{display:flex;align-items: center;gap:.25rem}.dg-page-btn{font-size:.8125rem;font-family:var(--font);color:var(--fg-muted);background:var(--bg);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);cursor:pointer;display:inline-flex;justify-content:center;align-items: center;min-width:28px;height:28px;padding:0 .375rem;transition:background .1s,border-color .1s,color .1s}.dg-page-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--fg)}.dg-page-btn:disabled{opacity:.35;cursor:not-allowed}.dg-page-btn-active{background:var(--primary);color:var(--primary-fg);border-color:var(--primary)}.dg-page-btn-active:hover{background:var(--primary)}.dg-ellipsis{color:var(--fg-subtle);padding:0 .25rem;font-size:.8125rem}.datepicker-trigger{display:inline-flex;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);font-size:.875rem;font-family:var(--font);cursor:pointer;outline:none;text-align:left;align-items: center;gap:.5rem;width:100%;height:2.25rem;padding:0 .75rem;transition:border-color .15s,box-shadow .15s}.datepicker-trigger:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary)50%,var(--border))}.datepicker-trigger-open{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.datepicker-trigger:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.datepicker-trigger-disabled{opacity:.45;cursor:not-allowed}.datepicker-cal-icon{color:var(--fg-subtle);flex-shrink:0}.datepicker-placeholder{color:var(--fg-subtle);flex:1}.datepicker-value{color:var(--fg);flex:1}.datepicker-clear{display:flex;color:var(--fg-subtle);border-radius:50%;flex-shrink:0;align-items: center;padding:.125rem;transition:color .15s}.datepicker-clear:hover{color:var(--fg)}.datepicker-chevron{color:var(--fg-subtle);flex-shrink:0;margin-left:auto}.datepicker-popup{position:absolute;z-index:90;background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);animation:dp-in .12s ease;width:280px;padding:.75rem;box-shadow:0 16px 40px #00000073}@keyframes dp-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.datepicker-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:.625rem}.datepicker-month-label{color:var(--fg);font-size:.9375rem;font-weight:600}.datepicker-nav{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);cursor:pointer;color:var(--fg-muted);display:grid;background:0 0;place-items: center;width:28px;height:28px;transition:background .1s,color .1s}.datepicker-nav:hover{background:var(--bg-hover);color:var(--fg)}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.datepicker-day-label{text-align:center;color:var(--fg-subtle);letter-spacing:.03em;padding:.25rem 0;font-size:.6875rem;font-weight:600}.datepicker-cell{aspect-ratio:1;display:grid;cursor:pointer;color:var(--fg);font-size:.8125rem;font-family:var(--font);border-radius:calc(var(--radius) - 2px);background:0 0;border:none;place-items: center;transition:background .1s}.datepicker-cell:hover:not(:disabled):not(.datepicker-cell-selected){background:var(--bg-hover)}.datepicker-cell-today{color:var(--primary);font-weight:700}.datepicker-cell-selected{background:var(--primary);color:var(--primary-fg);font-weight:600}.datepicker-cell-selected:hover{background:var(--primary)}.datepicker-cell-disabled{opacity:.3;cursor:not-allowed}.datepicker-footer{display:flex;border-top:1px solid var(--border);justify-content:center;margin-top:.5rem;padding-top:.5rem}.datepicker-today-btn{cursor:pointer;color:var(--primary);font-size:.8125rem;font-family:var(--font);border-radius:var(--radius);background:0 0;border:none;padding:.25rem .75rem;transition:background .1s;font-weight:500}.datepicker-today-btn:hover{background:color-mix(in srgb,var(--primary)10%,transparent)}.dialog-overlay{position:fixed;z-index:100;backdrop-filter:blur(4px);display:grid;background:#000000b8;place-items: center;padding:1rem;inset:0}.dialog{background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);overflow-y:auto;animation:dialog-in .15s ease;width:100%;max-width:480px;max-height:85dvh;box-shadow:0 25px 50px #00000080}@keyframes dialog-in{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}.dialog-header{display:flex;justify-content:space-between;align-items: flex-start;gap:1rem;padding:1.5rem 1.5rem 0}.dialog-header-text{display:flex;flex-direction:column;gap:.25rem}.dialog-title{letter-spacing:-.02em;color:var(--fg);margin:0;font-size:1.125rem;font-weight:600}.dialog-description{color:var(--fg-muted);margin:0;font-size:.875rem;line-height:1.5}.dialog-close{color:var(--fg-subtle);cursor:pointer;border-radius:var(--radius);display:grid;background:0 0;border:none;flex-shrink:0;place-items: center;padding:.25rem;transition:color .15s,background .15s}.dialog-close:hover{color:var(--fg);background:var(--bg-hover)}.dialog-sm{max-width:360px}.dialog-lg{max-width:720px}.dialog-content{padding:1.25rem 1.5rem 1.5rem}.dialog-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:0 1.5rem 1.5rem}.dock{display:flex;background:color-mix(in srgb,var(--bg-elevated)80%,transparent);border:1px solid var(--border);backdrop-filter:blur(12px);border-radius:1.25rem;align-items: flex-end;gap:.5rem;width:-moz-fit-content;width:fit-content;padding:.5rem .75rem}.dock-item{position:relative;display:flex;background:var(--bg-hover);border:1px solid var(--border);cursor:pointer;transform-origin:bottom center;outline:none;border-radius:.875rem;flex-direction:column;flex-shrink:0;justify-content:flex-end;align-items: center;width:48px;height:48px;padding:0;transition:transform .1s}.dock-item:focus-visible{box-shadow:0 0 0 2px var(--ring)}.dock-item-icon{pointer-events:none;position:absolute;font-size:1.5rem;line-height:1;top:50%;left:50%;transform:translate(-50%,-50%)}.dock-item-badge{position:absolute;color:#fff;display:flex;border:1.5px solid var(--bg);z-index:2;background:#ef4444;border-radius:8px;justify-content:center;align-items: center;min-width:16px;height:16px;padding:0 4px;font-size:.6rem;font-weight:700;top:-4px;right:-4px}.dock-item-label{position:absolute;background:var(--bg-elevated);border:1px solid var(--border);color:var(--fg);white-space:nowrap;border-radius:calc(var(--radius) - 2px);pointer-events:none;opacity:0;padding:.2rem .5rem;transition:opacity .15s;font-size:.72rem;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.dock-item:hover .dock-item-label{opacity:1}.dc-root{display:flex;flex-wrap:wrap;align-items: center;gap:1.25rem}.dc-chart-wrap{position:relative;flex-shrink:0}.dc-chart-wrap svg{display:block}.dc-center{position:absolute;display:flex;pointer-events:none;flex-direction:column;justify-content:center;align-items: center;gap:.1rem;inset:0}.dc-center-val{color:var(--fg);font-size:1.25rem;font-weight:700;line-height:1}.dc-center-label{color:var(--fg-muted);font-size:.72rem;line-height:1}.dc-legend{list-style:none;display:flex;flex-direction:column;gap:.4rem;margin:0;padding:0}.dc-legend-item{display:flex;align-items: center;gap:.5rem}.dc-legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.dc-legend-label{color:var(--fg-muted);flex:1;font-size:.8rem}.dc-legend-pct{color:var(--fg);font-size:.78rem;font-weight:600}.drag-list{display:flex;flex-direction:column;gap:0}.drag-list-item{display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);cursor:grab;user-select:none;align-items: center;gap:.625rem;margin-bottom:.375rem;padding:.625rem .75rem;transition:background .15s,box-shadow .15s,transform .1s,border-color .15s}.drag-list-item:active{cursor:grabbing}.drag-list-item-dragging{opacity:.4;border-color:var(--primary);transform:scale(1.01);box-shadow:0 4px 16px #0000002e}.drag-list-item-over{border-color:var(--primary);background:color-mix(in srgb,var(--primary)8%,var(--bg-elevated));box-shadow:0 0 0 2px color-mix(in srgb,var(--primary)25%,transparent)}.drag-list-item-disabled{opacity:.45;cursor:not-allowed}.drag-list-handle{display:flex;color:var(--fg-subtle);cursor:grab;border-radius:3px;flex-shrink:0;justify-content:center;align-items: center;padding:.1rem;transition:color .15s}.drag-list-item:hover .drag-list-handle{color:var(--fg-muted)}.drag-list-content{color:var(--fg);flex:1;min-width:0;font-size:.875rem}.dz-root{display:flex;border:2px dashed var(--border);border-radius:var(--radius);background:var(--bg-elevated);cursor:pointer;text-align:center;user-select:none;outline:none;flex-direction:column;justify-content:center;align-items: center;gap:.4rem;padding:2rem 1.5rem;transition:border-color .15s,background .15s}.dz-root:hover{border-color:var(--primary);background:var(--bg-hover)}.dz-root:focus-visible{border-color:var(--primary);background:var(--bg-hover)}.dz-over{border-color:var(--primary);background:color-mix(in srgb,var(--primary)8%,var(--bg-elevated))}.dz-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.dz-input{display:none}.dz-icon{color:var(--fg-subtle);transition:color .15s}.dz-root:hover .dz-icon,.dz-over .dz-icon{color:var(--primary)}.dz-label{color:var(--fg);margin:0;font-size:.875rem;font-weight:500}.dz-hint{color:var(--fg-muted);margin:0;font-size:.78rem}.dz-error{color:var(--destructive);margin:0;font-size:.78rem}.dropdown-root{position:relative;display:inline-block}.dropdown-trigger{cursor:pointer;display:inline-flex}.dropdown-content{position:absolute;z-index:50;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);animation:dropdown-in .12s ease;outline:none;min-width:10rem;padding:.25rem;top:calc(100% + 6px);box-shadow:0 8px 24px #00000026}.dropdown-start{left:0}.dropdown-end{right:0}.dropdown-center{left:50%;transform:translate(-50%)}@keyframes dropdown-in{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.dropdown-center.dropdown-content{animation:dropdown-in-center .12s ease}@keyframes dropdown-in-center{0%{opacity:0;transform:translate(-50%)scale(.96)translateY(-4px)}to{opacity:1;transform:translate(-50%)scale(1)translateY(0)}}.dropdown-item{display:flex;border-radius:calc(var(--radius) - 2px);color:var(--fg);font-size:.875rem;font-family:var(--font);text-align:left;cursor:pointer;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.45rem .625rem;transition:background .12s}.dropdown-item:hover{background:var(--bg-hover);outline:none}.dropdown-item:focus-visible{background:var(--bg-hover);outline:none}.dropdown-item:disabled{opacity:.45;cursor:not-allowed}.dropdown-item-icon{display:inline-flex;color:var(--fg-muted);flex-shrink:0;align-items: center}.dropdown-separator{background:var(--border);height:1px;margin:.25rem 0}.empty-state{display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.75rem;padding:3rem 1.5rem}.empty-state-icon{display:inline-flex;background:var(--bg-hover);color:var(--fg-subtle);border-radius:50%;justify-content:center;align-items: center;width:3.5rem;height:3.5rem;margin-bottom:.25rem}.empty-state-icon svg{width:1.75rem;height:1.75rem}.empty-state-title{color:var(--fg);margin:0;font-size:1rem;font-weight:600}.empty-state-desc{color:var(--fg-muted);max-width:28rem;margin:0;font-size:.875rem;line-height:1.5}.empty-state-action{margin-top:.25rem}.fc-root{display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);align-items: center;gap:.75rem;padding:.625rem .875rem;transition:background .15s}.fc-root:hover{background:var(--bg-hover)}.fc-icon{flex-shrink:0}.fc-info{display:flex;flex-direction:column;flex:1;gap:.1rem;min-width:0}.fc-name{color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.85rem;font-weight:500}.fc-size{color:var(--fg-muted);font-size:.75rem}.fc-actions{display:flex;align-items: center;gap:.25rem}.fc-btn{display:flex;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--fg-muted);cursor:pointer;text-decoration:none;justify-content:center;align-items: center;width:28px;height:28px;transition:background .15s,color .15s}.fc-btn:hover{background:var(--bg-hover);color:var(--fg)}.fc-btn-remove:hover{color:var(--destructive);border-color:var(--destructive)}.file-upload{display:flex;border:2px dashed var(--border);border-radius:var(--radius);background:var(--bg-elevated);cursor:pointer;user-select:none;flex-direction:column;justify-content:center;align-items: center;min-height:8rem;padding:1.5rem;transition:border-color .15s,background .15s}.file-upload:hover:not(.file-upload-disabled){border-color:var(--ring);background:var(--bg-hover)}.file-upload-dragging{border-color:var(--primary);background:color-mix(in srgb,var(--primary)6%,var(--bg-elevated))}.file-upload-disabled{opacity:.5;cursor:not-allowed}.file-upload-input{display:none}.file-upload-prompt{display:flex;text-align:center;pointer-events:none;flex-direction:column;align-items: center;gap:.375rem}.file-upload-icon{color:var(--fg-subtle);width:2.5rem;height:2.5rem;margin-bottom:.25rem}.file-upload-label{color:var(--fg-muted);margin:0;font-size:.875rem}.file-upload-label strong{color:var(--fg)}.file-upload-hint{color:var(--fg-subtle);margin:0;font-size:.75rem}.file-upload-files{display:flex;flex-direction:column;gap:.5rem;width:100%}.file-upload-file{display:flex;background:var(--bg-hover);border-radius:calc(var(--radius) - 2px);border:1px solid var(--border);align-items: center;gap:.625rem;padding:.5rem .75rem}.file-upload-file-icon{color:var(--fg-muted);flex-shrink:0;width:1.25rem;height:1.25rem}.file-upload-file-name{color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem;font-weight:500}.file-upload-file-size{color:var(--fg-subtle);flex-shrink:0;font-size:.75rem}.file-upload-remove{display:inline-flex;border-radius:calc(var(--radius) - 2px);color:var(--fg-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:1.5rem;height:1.5rem;padding:0;transition:background .1s,color .1s}.file-upload-remove:hover{background:var(--destructive);color:#fff}.file-upload-change{color:var(--primary);text-align:center;cursor:pointer;margin:.25rem 0 0;font-size:.8125rem}.file-upload-error{color:var(--destructive);text-align:center;margin:.5rem 0 0;font-size:.8125rem}.floating-input-root{display:flex;flex-direction:column;gap:.25rem}.floating-input-wrap{position:relative;border:1px solid var(--border);border-radius:var(--radius);background:var(--input-bg);transition:border-color .15s,box-shadow .15s}.floating-input-focused{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.floating-input-wrap.floating-input-error{border-color:var(--destructive)}.floating-input-wrap.floating-input-error.floating-input-focused{box-shadow:0 0 0 3px color-mix(in srgb,var(--destructive)20%,transparent)}.floating-input{display:block;color:var(--fg);font-size:.9375rem;font-family:var(--font);outline:none;box-sizing:border-box;background:0 0;border:none;width:100%;padding:1.375rem .875rem .5rem}.floating-label{position:absolute;color:var(--fg-subtle);pointer-events:none;transform-origin:left top;font-size:.9375rem;font-family:var(--font);white-space:nowrap;transition:top .15s,font-size .15s,color .15s,transform .15s;top:50%;left:.875rem;transform:translateY(-50%)}.floating-label-up{color:var(--fg-muted);top:.5rem;transform:translateY(0)scale(.78)}.floating-input-focused .floating-label-up{color:var(--primary)}.floating-input-error-msg{color:var(--destructive);font-size:.8125rem;font-family:var(--font);margin:0}.form-field{display:flex;flex-direction:column;gap:.375rem}.form-field-label{color:var(--fg);font-size:.875rem;font-weight:500}.form-field-required{color:#ef4444;margin-left:.2em}.form-field-control{display:flex;flex-direction:column}.form-field--error .form-field-control input,.form-field--error .form-field-control textarea,.form-field--error .form-field-control select{outline-color:#ef4444!important;border-color:#ef4444!important}.form-field-error{color:#ef4444;display:flex;align-items: center;gap:.25rem;font-size:.8rem}.form-field-error:before{content:"⚠";font-style:normal}.form-field-hint{color:var(--fg-muted);font-size:.8rem}.gauge-root{position:relative;display:inline-flex;justify-content:center;align-items: center}.gauge-content{position:absolute;display:flex;pointer-events:none;flex-direction:column;justify-content:center;align-items: center;gap:.1rem;inset:0}.gauge-value{color:var(--fg);font-size:1.0625rem;font-weight:700;font-family:var(--font-mono);letter-spacing:-.02em;line-height:1}.gauge-label{color:var(--fg-subtle);font-size:.625rem;font-family:var(--font);text-align:center;text-transform:uppercase;letter-spacing:.06em;line-height:1}.glow-card{position:relative;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);overflow:hidden;transition:border-color .3s}.glow-card:before{content:"";position:absolute;z-index:0;border-radius:inherit;background:radial-gradient(circle var(--glow-size)at var(--glow-x)var(--glow-y),color-mix(in srgb,var(--glow-color)20%,transparent),transparent 70%);pointer-events:none;transition:opacity .2s;inset:0}.glow-card:hover{border-color:color-mix(in srgb,var(--glow-color)50%,var(--border))}.glow-card-inner{position:relative;z-index:1;padding:1.25rem}.grad-text{color:#0000;-webkit-text-fill-color:transparent;display:inline-block;-webkit-background-clip:text;background-clip:text}@keyframes grad-flow{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.grad-text-animate{animation:grad-flow 4s linear infinite}.heatmap{display:inline-flex;font-family:var(--font);flex-direction:column;gap:4px}.hm-months{position:relative;height:14px}.hm-month-label{position:absolute;color:var(--fg-muted);white-space:nowrap;font-size:.6875rem;line-height:1}.hm-grid-wrap{display:flex;gap:4px}.hm-days{display:flex;gap:var(--hm-gap,3px);flex-direction:column;flex-shrink:0;justify-content:space-between;width:24px}.hm-day-label{color:var(--fg-muted);text-align:right;height:var(--hm-cell,12px);display:flex;justify-content:flex-end;align-items: center;font-size:.6rem;line-height:1}.hm-cols{display:flex;gap:var(--hm-gap,3px)}.hm-col{display:flex;gap:var(--hm-gap,3px);flex-direction:column}.hm-cell{width:var(--hm-cell,12px);height:var(--hm-cell,12px);border:1px solid color-mix(in srgb,var(--border)50%,transparent);border-radius:2px;transition:transform .1s}.hm-cell-active:hover{cursor:default;transform:scale(1.3)}.hover-card-root{position:relative;display:inline-block}.hover-card-trigger{display:inline-block}.hover-card-content{position:absolute;z-index:50;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font);animation:hover-card-in .12s ease;min-width:220px;padding:.875rem;box-shadow:0 4px 24px #00000029}@keyframes hover-card-in{0%{opacity:0;transform:translateY(4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.hover-card-bottom{top:calc(100% + 8px)}.hover-card-top{bottom:calc(100% + 8px)}.hover-card-align-left{left:0}.hover-card-align-right{right:0}.hover-card-align-center{left:50%;transform:translate(-50%)}.hover-card-top.hover-card-align-center{top:auto;bottom:calc(100% + 8px);transform:translate(-50%)}.imgcard-root{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s}.imgcard-root:hover{box-shadow:0 4px 20px #0000001f}.imgcard-media{position:relative;overflow:hidden;width:100%}.imgcard-img{object-fit:cover;display:block;width:100%;height:100%;transition:transform .3s}.imgcard-root:hover .imgcard-img{transform:scale(1.03)}.imgcard-badge{position:absolute;background:var(--primary);color:var(--primary-fg);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;padding:.15rem .5rem;font-size:.7rem;font-weight:600;top:.5rem;left:.5rem}.imgcard-overlay{position:absolute;display:flex;background:linear-gradient(#0000 40%,#000000bf 100%);flex-direction:column;justify-content:flex-end;gap:.25rem;padding:1rem;inset:0}.imgcard-overlay-title{color:#fff;margin:0;font-size:1rem;font-weight:700;line-height:1.3}.imgcard-overlay-desc{color:#fffc;display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;margin:0;font-size:.82rem;line-height:1.4}.imgcard-body{display:flex;flex-direction:column;flex:1;gap:.3rem;padding:.875rem 1rem}.imgcard-title{color:var(--fg);margin:0;font-size:.95rem;font-weight:600;line-height:1.3}.imgcard-desc{color:var(--fg-muted);display:-webkit-box;-webkit-line-clamp:3;overflow:hidden;-webkit-box-orient:vertical;margin:0;font-size:.82rem;line-height:1.5}.imgcard-actions{display:flex;gap:.5rem;margin-top:.5rem}.imgcard-action-btn{display:inline-flex;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--fg);cursor:pointer;align-items: center;gap:.3rem;padding:.35rem .75rem;transition:background .15s;font-size:.8rem;font-weight:500}.imgcard-action-btn:hover{background:var(--bg-hover)}.imgcard-action-icon{display:flex;align-items: center}.infinite-scroll{display:flex;flex-direction:column}.infinite-scroll-sentinel{display:flex;justify-content:center;padding:1.5rem 0}.infinite-scroll-loader{display:flex;align-items: center;gap:.4rem}.infinite-scroll-dot{background:var(--fg-muted);animation:inf-bounce 1.2s infinite ease-in-out;border-radius:50%;width:8px;height:8px}.infinite-scroll-dot:first-child{animation-delay:0s}.infinite-scroll-dot:nth-child(2){animation-delay:.2s}.infinite-scroll-dot:nth-child(3){animation-delay:.4s}@keyframes inf-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.infinite-scroll-end{text-align:center;color:var(--fg-subtle);padding:1rem;font-size:.8rem}.input-wrapper{display:flex;flex-direction:column;gap:.25rem}.input-field-wrap{position:relative;display:flex;align-items: center}.input{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);outline:none;width:100%;height:2.5rem;padding:0 .75rem;transition:border-color .15s,box-shadow .15s;font-size:.875rem}.input::placeholder{color:var(--fg-subtle)}.input:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)20%,transparent)}.input.input-error{border-color:var(--destructive)}.input.input-error:focus{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in srgb,var(--destructive)20%,transparent)}.input-prefix,.input-suffix{position:absolute;display:flex;color:var(--fg-subtle);pointer-events:none;align-items: center}.input-prefix{left:.75rem}.input-suffix{right:.75rem}.input.has-prefix{padding-left:2.25rem}.input.has-suffix{padding-right:2.25rem}.input-error-msg{color:var(--destructive);font-size:.75rem}.input-helper{color:var(--fg-subtle);font-size:.75rem}.input-group{display:flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--input-bg);align-items:stretch;transition:box-shadow .15s,border-color .15s}.input-group:focus-within{box-shadow:0 0 0 3px var(--ring);border-color:var(--primary)}.input-group-addon{display:flex;background:var(--bg-elevated);color:var(--fg-muted);white-space:nowrap;user-select:none;flex-shrink:0;align-items: center;padding:0 .75rem;font-size:.875rem}.input-group-prefix{border-right:1px solid var(--border)}.input-group-suffix{border-left:1px solid var(--border)}.input-group-body{flex:1;min-width:0}.input-group-body .input,.input-group-body input{width:100%;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.input-group-body .btn,.input-group-body button.btn{border:none;border-radius:0;height:100%}.jv-root{border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono,"Fira Code",monospace);overflow:auto;color:#e6edf3;background:#0d1117;padding:.875rem 1rem;font-size:.8125rem;line-height:1.7}.jv-node{display:flex;flex-direction:column}.jv-toggle{cursor:pointer;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;text-align:left;display:flex;background:0 0;border:none;align-items: center;gap:.125rem;padding:0}.jv-toggle:hover{opacity:.8}.jv-arrow{color:#8b949e;flex-shrink:0;width:1rem;font-size:.75rem}.jv-children{border-left:1px solid #30363d;margin-left:.4375rem;padding-left:1.25rem}.jv-line{display:flex;align-items:baseline;gap:0;padding-left:1rem}.jv-key{color:#79c0ff}.jv-colon{color:#8b949e;margin-right:.25rem}.jv-str{color:#a5d6ff}.jv-num{color:#79c0ff}.jv-bool{color:#ff7b72}.jv-null{color:#8b949e;font-style:italic}.jv-bracket{color:#e6edf3}.jv-collapsed{color:#8b949e;margin:0 .3rem;font-size:.75rem;font-style:italic}.kanban{display:flex;overflow-x:auto;font-family:var(--font);align-items: flex-start;gap:1rem;padding-bottom:.5rem}.kanban-col{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;flex:0 0 240px;gap:.5rem;min-height:120px;padding:.75rem;transition:border-color .15s,background .15s}.kanban-col-over{border-color:var(--primary);background:color-mix(in srgb,var(--primary)5%,var(--bg-elevated))}.kanban-col-header{display:flex;border-bottom:1px solid var(--border);align-items: center;gap:.5rem;padding-bottom:.5rem}.kanban-col-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kanban-col-title{color:var(--fg);flex:1;font-size:.875rem;font-weight:600}.kanban-col-count{background:var(--bg);color:var(--fg-muted);border:1px solid var(--border);border-radius:9999px;padding:.0625rem .4375rem;font-size:.75rem;font-weight:600}.kanban-items{display:flex;flex-direction:column;gap:.5rem}.kanban-card{background:var(--bg);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);cursor:grab;display:flex;flex-direction:column;gap:.375rem;padding:.625rem .75rem;transition:box-shadow .15s,opacity .15s}.kanban-card:hover{box-shadow:0 2px 8px #0000001a}.kanban-card-dragging{opacity:.4;cursor:grabbing}.kanban-priority{text-transform:uppercase;letter-spacing:.04em;color:#fff;border-radius:9999px;align-self: flex-start;padding:.1rem .4rem;font-size:.625rem;font-weight:700}.kanban-card-title{color:var(--fg);margin:0;font-size:.875rem;font-weight:600;line-height:1.4}.kanban-card-desc{color:var(--fg-muted);margin:0;font-size:.75rem;line-height:1.4}.kanban-tags{display:flex;flex-wrap:wrap;gap:.25rem}.kanban-tag{background:var(--bg-elevated);border:1px solid var(--border);color:var(--fg-muted);border-radius:9999px;padding:.1rem .4rem;font-size:.6875rem}.kanban-assignee{display:flex;justify-content:flex-end}.kanban-avatar{background:var(--primary);color:var(--primary-fg);display:flex;border-radius:50%;justify-content:center;align-items: center;width:22px;height:22px;font-size:.625rem;font-weight:700}.kanban-empty{color:var(--fg-subtle);text-align:center;border:1px dashed var(--border);border-radius:calc(var(--radius) - 2px);padding:1rem;font-size:.8125rem}.kbd{display:inline-flex;font-size:.75rem;font-family:var(--font-mono);color:var(--fg-muted);background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);white-space:nowrap;user-select:none;box-shadow:inset 0 -1px 0 var(--border);border-bottom-width:2px;align-items: center;gap:.2rem;padding:.125rem .4375rem;font-weight:500;line-height:1.5}.kv-list{display:flex;border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;background:var(--bg-elevated);flex-direction:column;gap:0;margin:0;padding:0}.kv-row{display:flex;border-bottom:1px solid var(--border);align-items:baseline;gap:.5rem;padding:.5rem .875rem;transition:background .1s}.kv-row:last-child{border-bottom:none}.kv-row:hover{background:var(--bg-hover)}.kv-horizontal .kv-row{flex-direction:row;gap:.75rem}.kv-vertical .kv-row{flex-direction:column;align-items: flex-start;gap:.2rem}.kv-key{color:var(--fg-muted);white-space:nowrap;display:flex;align-items: center;gap:.15rem;min-width:120px;font-size:.8rem;font-weight:600}.kv-sep{color:var(--fg-subtle)}.kv-val{color:var(--fg);word-break:break-word;display:flex;flex:1;align-items: center;gap:.4rem;margin:0;font-size:.85rem}.kv-copy{display:inline-flex;border:1px solid var(--border);background:var(--bg);color:var(--fg-subtle);cursor:pointer;border-radius:4px;flex-shrink:0;justify-content:center;align-items: center;width:20px;height:20px;transition:color .15s,background .15s}.kv-copy:hover{color:var(--fg);background:var(--bg-hover)}.kpi-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);display:flex;font-family:var(--font);flex-direction:column;gap:.375rem;min-width:160px;padding:1.125rem 1.25rem 1rem;transition:box-shadow .2s}.kpi-card:hover{box-shadow:0 4px 16px #00000014}.kpi-top{display:flex;justify-content:space-between;align-items: center}.kpi-label{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8125rem;font-weight:500}.kpi-icon{color:var(--fg-muted);display:flex}.kpi-value{color:var(--fg);font-variant-numeric:tabular-nums;font-size:1.875rem;font-weight:800;line-height:1.1}.kpi-skel{display:block;background:var(--border);animation:kpi-pulse 1.4s ease-in-out infinite;border-radius:4px;width:80px;height:1.875rem}@keyframes kpi-pulse{0%,to{opacity:1}50%{opacity:.4}}.kpi-bottom{display:flex;justify-content:space-between;align-items: center;gap:.5rem;min-height:32px}.kpi-trend{display:flex;align-items: center;gap:.125rem;font-size:.8125rem;font-weight:600}.kpi-trend-up{color:#16a34a}.kpi-trend-down{color:var(--destructive)}.kpi-trend-neutral{color:var(--fg-muted)}.kpi-trend-label{color:var(--fg-muted);font-weight:400}.kpi-spark{color:var(--primary);display:block}.kpi-success{border-left:3px solid #16a34a}.kpi-warning{border-left:3px solid #d97706}.kpi-destructive{border-left:3px solid var(--destructive)}.label{color:var(--fg);cursor:pointer;display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500}.lc-root{display:flex;flex-direction:column;gap:.5rem;width:100%}.lc-svg{display:block;overflow:visible;width:100%}.lc-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.lc-legend-item{display:inline-flex;color:var(--fg-muted);align-items: center;gap:.3rem;font-size:.75rem}.lc-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.lv-root{border:1px solid var(--border);border-radius:var(--radius);overflow-y:auto;display:flex;background:#0d1117;flex-direction:column;gap:1px;padding:.625rem 0}.lv-mono{font-family:var(--font-mono,"Fira Code","Cascadia Code",monospace)}.lv-row{display:flex;color:#c9d1d9;align-items:baseline;gap:.5rem;padding:.1875rem .875rem;transition:background .1s;font-size:.8125rem;line-height:1.55}.lv-row:hover{background:#ffffff0a}.lv-warn{background:#ffc8000d}.lv-error{background:#f8514912}.lv-success{background:#3fb9500f}.lv-debug{opacity:.65}.lv-ts{color:#6e7681;white-space:nowrap;flex-shrink:0;font-size:.75rem}.lv-badge{white-space:nowrap;letter-spacing:.04em;border-radius:3px;flex-shrink:0;padding:.1rem .35rem;font-size:.625rem;font-weight:700;line-height:1.4}.lv-badge-info{color:#fff;background:#1f6feb}.lv-badge-warn{color:#fff;background:#9e6a03}.lv-badge-error{color:#fff;background:#b91c1c}.lv-badge-debug{color:#ccc;background:#444}.lv-badge-success{color:#fff;background:#196127}.lv-custom-badge{color:#8b949e;white-space:nowrap;background:#30363d;border-radius:3px;flex-shrink:0;padding:.1rem .35rem;font-size:.625rem;font-weight:600}.lv-msg{color:#c9d1d9;word-break:break-all;flex:1}.lv-empty{display:block;color:#6e7681;padding:1rem .875rem;font-size:.875rem}.mdp-root{color:var(--fg);font-family:var(--font);font-size:.9rem;line-height:1.7}.mdp-heading{color:var(--fg);margin:1.25rem 0 .4rem;font-weight:700;line-height:1.3}.mdp-root h1.mdp-heading{font-size:1.75rem}.mdp-root h2.mdp-heading{border-bottom:1px solid var(--border);padding-bottom:.25rem;font-size:1.35rem}.mdp-root h3.mdp-heading{font-size:1.1rem}.mdp-root h4.mdp-heading{font-size:.95rem}.mdp-p{margin:.5rem 0}.mdp-blockquote{border-left:3px solid var(--primary);color:var(--fg-muted);background:var(--bg-elevated);border-radius:0 var(--radius)var(--radius)0;margin:.75rem 0;padding:.4rem 1rem}.mdp-hr{border:none;border-top:1px solid var(--border);margin:1.25rem 0}.mdp-ul,.mdp-ol{margin:.5rem 0;padding-left:1.5rem}.mdp-ul li,.mdp-ol li{margin:.2rem 0}.mdp-pre{border-radius:var(--radius);overflow-x:auto;background:#0d1117;margin:.75rem 0;padding:1rem}.mdp-pre code{color:#e6edf3;font-family:var(--font-mono);background:0 0;border-radius:0;padding:0;font-size:.82rem}.mdp-inline-code{background:var(--bg-elevated);border:1px solid var(--border);font-family:var(--font-mono);color:var(--fg);border-radius:3px;padding:.1em .35em;font-size:.82em}.mdp-root a{color:var(--primary);text-decoration:underline;text-underline-offset:2px}.marquee-root{overflow:hidden;position:relative;width:100%}.marquee-track{display:flex;animation:marquee-scroll var(--marquee-speed,20s)linear infinite;animation-direction:var(--marquee-direction,normal);width:max-content}.marquee-content{display:flex;align-items: center;gap:var(--marquee-gap,1.5rem);padding-right:var(--marquee-gap,1.5rem);flex-shrink:0}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee-pause-hover:hover .marquee-track{animation-play-state:paused}.media-player{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:.75rem;max-width:380px;padding:1rem 1.25rem}.media-cover{aspect-ratio:16/9;border-radius:calc(var(--radius) - 2px);overflow:hidden;background:var(--bg-hover);width:100%}.media-cover img{object-fit:cover;display:block;width:100%;height:100%}.media-info{display:flex;flex-direction:column;gap:.125rem}.media-title{color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.95rem;font-weight:600}.media-artist{color:var(--fg-muted);font-size:.8rem}.media-progress-row{display:flex;align-items: center;gap:.5rem}.media-time{color:var(--fg-muted);font-variant-numeric:tabular-nums;min-width:2.5rem;font-size:.75rem}.media-time:last-child{text-align:right}.media-range{-webkit-appearance:none;appearance:none;background:linear-gradient(to right,var(--primary)var(--pct,0%),var(--bg-hover)var(--pct,0%));cursor:pointer;outline:none;border-radius:2px;flex:1;height:4px}.media-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--primary);cursor:pointer;border:2px solid var(--bg);border-radius:50%;width:14px;height:14px}.media-range--volume{max-width:80px;height:3px}.media-controls{display:flex;justify-content:space-between;align-items: center}.media-btn{display:flex;background:var(--primary);color:var(--primary-fg);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;transition:opacity .15s}.media-btn:hover{opacity:.85}.media-volume{display:flex;align-items: center;gap:.5rem}.media-vol-icon{color:var(--fg-muted);flex-shrink:0}.mention-wrap{position:relative;width:100%}.mention-textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);font-family:var(--font);resize:vertical;outline:none;box-sizing:border-box;width:100%;padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s;font-size:.9375rem;line-height:1.55}.mention-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.mention-textarea::placeholder{color:var(--fg-subtle)}.mention-textarea:disabled{opacity:.5;cursor:not-allowed}.mention-list{position:absolute;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);overflow-y:auto;list-style:none;z-index:50;max-height:200px;margin:0;padding:.25rem;bottom:calc(100% + 4px);left:0;right:0;box-shadow:0 8px 24px #0000001f}.mention-item{display:flex;border-radius:calc(var(--radius) - 2px);cursor:pointer;align-items: center;gap:.625rem;padding:.4375rem .625rem;transition:background .1s}.mention-item:hover,.mention-item-active{background:var(--bg-hover)}.mention-avatar{object-fit:cover;border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:28px;height:28px}.mention-avatar-fallback{display:flex;background:var(--primary);color:var(--primary-fg);justify-content:center;align-items: center;font-size:.75rem;font-weight:700}.mention-info{display:flex;flex-direction:column;min-width:0}.mention-label{color:var(--fg);font-size:.875rem;font-weight:600}.mention-desc{color:var(--fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.menubar{display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);align-items: center;gap:0;padding:.1875rem}.menubar-item{position:relative}.menubar-trigger{display:inline-flex;font-size:.8125rem;font-family:var(--font);color:var(--fg-muted);border-radius:calc(var(--radius) - 2px);cursor:pointer;background:0 0;border:none;align-items: center;padding:.25rem .625rem;transition:background .1s,color .1s}.menubar-trigger:hover,.menubar-trigger-open{background:var(--bg-hover);color:var(--fg)}.menubar-dropdown{position:absolute;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);z-index:1000;animation:menubar-in .12s ease;min-width:200px;padding:.25rem;top:calc(100% + 4px);left:0;box-shadow:0 8px 24px #0000002e}@keyframes menubar-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.menubar-separator{background:var(--border);height:1px;margin:.25rem .375rem}.menubar-action{display:flex;font-size:.8125rem;font-family:var(--font);color:var(--fg);border-radius:calc(var(--radius) - 2px);cursor:pointer;text-align:left;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.375rem .625rem;transition:background .1s}.menubar-action:hover:not(:disabled){background:var(--bg-hover)}.menubar-action-disabled{opacity:.45;cursor:not-allowed}.menubar-action-icon{display:flex;color:var(--fg-muted);flex-shrink:0;align-items: center}.menubar-action-label{flex:1}.menubar-action-check{color:var(--primary);flex-shrink:0;order:-1;width:1rem;font-size:.75rem}.menubar-action-shortcut{color:var(--fg-subtle);font-size:.75rem;font-family:var(--font-mono);flex-shrink:0;margin-left:auto}.mc-root{display:inline-flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.5rem;min-width:220px;padding:.875rem}.mc-header{display:flex;justify-content:space-between;align-items: center}.mc-month{color:var(--fg);font-size:.875rem;font-weight:600}.mc-nav{display:flex;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--fg-muted);cursor:pointer;justify-content:center;align-items: center;width:26px;height:26px;transition:background .15s,color .15s}.mc-nav:hover{background:var(--bg-hover);color:var(--fg)}.mc-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.mc-day-name{text-align:center;color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.03em;padding:.15rem 0;font-size:.7rem;font-weight:600}.mc-day{display:flex;color:var(--fg);border-radius:var(--radius);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;height:28px;transition:background .1s;font-size:.8rem}.mc-day:hover{background:var(--bg-hover)}.mc-today{border:1px solid var(--primary);color:var(--primary)}.mc-selected{font-weight:600;background:var(--primary)!important;color:var(--primary-fg)!important}.ms-root{position:relative;font-family:var(--font);width:100%}.ms-control{display:flex;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);cursor:text;align-items: center;gap:.25rem;min-height:2.25rem;padding:.25rem .5rem;transition:border-color .15s}.ms-root.ms-open .ms-control{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)18%,transparent)}.ms-root.ms-disabled .ms-control{opacity:.5;cursor:not-allowed}.ms-values{display:flex;flex-wrap:wrap;flex:1;align-items: center;gap:.25rem}.ms-chip{display:inline-flex;background:var(--bg-hover);border:1px solid var(--border);color:var(--fg);white-space:nowrap;border-radius:999px;align-items: center;gap:.25rem;height:1.375rem;padding:0 .5rem 0 .625rem;font-size:.8125rem}.ms-chip-remove{display:inline-flex;cursor:pointer;color:var(--fg-subtle);background:0 0;border:none;border-radius:50%;justify-content:center;align-items: center;width:14px;height:14px;padding:0;transition:background .1s,color .1s}.ms-chip-remove:hover{background:var(--border);color:var(--fg)}.ms-input{color:var(--fg);outline:none;background:0 0;border:none;flex:1;min-width:6rem;height:1.5rem;padding:0;font-family:inherit;font-size:.875rem}.ms-input::placeholder{color:var(--fg-subtle)}.ms-chevron{color:var(--fg-subtle);flex-shrink:0;transition:transform .2s}.ms-chevron-open{transform:rotate(180deg)}.ms-dropdown{position:absolute;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);z-index:50;overflow:hidden;overflow-y:auto;animation:ms-in .1s ease;max-height:14rem;margin-top:.25rem;top:100%;left:0;right:0;box-shadow:0 8px 24px #00000040}@keyframes ms-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ms-option{display:block;text-align:left;color:var(--fg);cursor:pointer;background:0 0;border:none;width:100%;padding:.5rem .75rem;transition:background .1s;font-family:inherit;font-size:.875rem}.ms-option:hover:not(:disabled){background:var(--bg-hover)}.ms-option-disabled{opacity:.5;cursor:not-allowed}.ms-empty{color:var(--fg-subtle);text-align:center;margin:0;padding:.625rem .75rem;font-size:.8125rem}.nav-menu{font-family:var(--font)}.nav-menu-list{display:flex;align-items: center;gap:.125rem}.nav-menu-item{position:relative}.nav-menu-trigger{display:inline-flex;border-radius:var(--radius);color:var(--fg-muted);text-decoration:none;cursor:pointer;white-space:nowrap;align-items: center;gap:.3rem;padding:.4375rem .875rem;transition:background .12s,color .12s;font-size:.875rem;font-weight:500}.nav-menu-trigger:hover,.nav-menu-trigger-active{background:var(--bg-hover);color:var(--fg)}.nav-menu-chevron{display:inline-flex;color:var(--fg-subtle);transition:transform .15s}.nav-menu-chevron-open{transform:rotate(180deg)}.nav-dropdown{position:absolute;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);z-index:100;animation:nav-dropdown-in .12s ease;min-width:230px;padding:.375rem;top:calc(100% + 6px);left:0;box-shadow:0 4px 24px #00000026}@keyframes nav-dropdown-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.nav-dropdown-item{display:flex;border-radius:calc(var(--radius)/1.5);text-decoration:none;cursor:pointer;align-items: flex-start;gap:.625rem;padding:.5625rem .625rem;transition:background .12s}.nav-dropdown-item:hover{background:var(--bg-hover)}.nav-dropdown-icon{color:var(--fg-subtle);display:flex;flex-shrink:0;margin-top:.1rem}.nav-dropdown-text{display:flex;flex-direction:column;gap:.125rem}.nav-dropdown-label{color:var(--fg);font-size:.875rem;font-weight:500}.nav-dropdown-desc{color:var(--fg-muted);font-size:.8125rem;line-height:1.4}.nb-root{position:relative;display:inline-flex}.nb-trigger{position:relative;display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);color:var(--fg-muted);cursor:pointer;background:0 0;justify-content:center;align-items: center;width:36px;height:36px;transition:background .15s,color .15s,border-color .15s}.nb-trigger:hover,.nb-trigger-open{background:var(--bg-hover);color:var(--fg);border-color:var(--fg-subtle)}.nb-badge{position:absolute;background:var(--destructive);color:#fff;display:flex;border-radius:999px;justify-content:center;align-items: center;min-width:17px;height:17px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:1;top:-5px;right:-5px}.nb-panel{position:absolute;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);z-index:1000;overflow:hidden;animation:nb-in .14s ease;width:320px;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #0003}@keyframes nb-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.nb-header{display:flex;border-bottom:1px solid var(--border);justify-content:space-between;align-items: center;padding:.75rem 1rem}.nb-header-title{color:var(--fg);font-size:.875rem;font-weight:600}.nb-mark-all{color:var(--primary);cursor:pointer;font-size:.75rem;font-family:var(--font);background:0 0;border:none;padding:0;transition:opacity .15s}.nb-mark-all:hover{opacity:.75}.nb-list{overflow-y:auto;scrollbar-width:thin;max-height:340px}.nb-empty{display:flex;color:var(--fg-subtle);flex-direction:column;align-items: center;gap:.5rem;padding:2rem 1rem}.nb-empty p{margin:0;font-size:.875rem}.nb-item{display:flex;border-bottom:1px solid var(--border);cursor:pointer;position:relative;align-items: flex-start;gap:.625rem;padding:.75rem 1rem;transition:background .1s}.nb-item:last-child{border-bottom:none}.nb-item:hover{background:var(--bg-hover)}.nb-item-unread{background:color-mix(in srgb,var(--primary)5%,var(--bg-elevated))}.nb-item-unread:hover{background:color-mix(in srgb,var(--primary)10%,var(--bg-elevated))}.nb-item-indicator{flex-shrink:0;padding-top:2px}.nb-dot{display:block;border-radius:50%;width:8px;height:8px;margin-top:5px}.nb-avatar{display:grid;color:#fff;border-radius:50%;place-items: center;width:28px;height:28px;font-size:.625rem;font-weight:700}.nb-item-body{flex:1;min-width:0}.nb-item-top{display:flex;justify-content:space-between;align-items: flex-start;gap:.5rem}.nb-item-title{color:var(--fg);margin:0;font-size:.8125rem;font-weight:500;line-height:1.4}.nb-item-time{color:var(--fg-subtle);white-space:nowrap;flex-shrink:0;font-size:.6875rem}.nb-item-desc{color:var(--fg-muted);margin:.1rem 0 0;font-size:.75rem;line-height:1.4}.nb-dismiss{position:absolute;color:var(--fg-subtle);cursor:pointer;display:flex;opacity:0;background:0 0;border:none;border-radius:3px;justify-content:center;align-items: center;width:18px;height:18px;transition:opacity .1s,background .1s;font-size:.9375rem;line-height:1;top:.5rem;right:.5rem}.nb-item:hover .nb-dismiss{opacity:1}.nb-dismiss:hover{background:var(--bg-hover);color:var(--fg)}.nf-root{display:inline-flex;font-variant-numeric:tabular-nums;color:var(--fg);font-weight:700;font-family:var(--font);align-items:baseline;gap:.1em}.nf-prefix,.nf-suffix{color:var(--fg-muted);align-self: center;font-size:.7em;font-weight:500}.nf-value{transition:color .2s}.number-input-wrap{display:inline-flex;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;align-items: center;transition:border-color .15s,box-shadow .15s}.number-input-wrap:focus-within{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)20%,transparent)}.number-input-wrap.input-error{border-color:var(--destructive)}.number-input-wrap.input-error:focus-within{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in srgb,var(--destructive)20%,transparent)}.number-input-btn{display:grid;color:var(--fg-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items: center;width:2.25rem;height:2.5rem;transition:background .1s,color .1s}.number-input-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--fg)}.number-input-btn:disabled{opacity:.4;cursor:not-allowed}.number-input-btn-dec{border-right:1px solid var(--border)}.number-input-btn-inc{border-left:1px solid var(--border)}.number-input-field{color:var(--fg);text-align:center;outline:none;appearance:textfield;-moz-appearance:textfield;background:0 0;border:none;flex:1;min-width:3rem;height:2.5rem;padding:0 .5rem;font-size:.875rem}.number-input-field::-webkit-inner-spin-button{appearance:none}.number-input-field::-webkit-outer-spin-button{appearance:none}.otp-root{display:flex;align-items: center;gap:.5rem}.otp-cell{text-align:center;font-size:1.25rem;font-weight:600;font-family:var(--font-mono);color:var(--fg);background:var(--input-bg);border:1.5px solid var(--border);border-radius:var(--radius);outline:none;-webkit-appearance:none;appearance:none;width:2.625rem;height:3rem;transition:border-color .15s,box-shadow .15s}.otp-cell::-webkit-outer-spin-button{display:none}.otp-cell::-webkit-inner-spin-button{display:none}.otp-cell::placeholder{color:var(--fg-subtle);font-size:1.5rem;font-weight:400}.otp-cell:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)22%,transparent)}.otp-cell-filled{border-color:var(--primary)}.otp-cell:disabled{opacity:.45;cursor:not-allowed}.otp-cell::-webkit-search-cancel-button{display:none}.pagination{display:flex;flex-wrap:wrap;align-items: center;gap:.25rem}.pagination-btn{display:inline-flex;border-radius:var(--radius);color:var(--fg-muted);font-size:.875rem;font-family:var(--font);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items: center;min-width:2.25rem;height:2.25rem;padding:0 .5rem;transition:background .15s,border-color .15s,color .15s}.pagination-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--fg)}.pagination-btn:disabled{opacity:.35;cursor:not-allowed}.pagination-btn.pagination-btn-active{background:var(--primary);color:var(--primary-fg);border-color:var(--primary);font-weight:600}.pagination-ellipsis{display:inline-flex;color:var(--fg-subtle);user-select:none;justify-content:center;align-items: center;min-width:2.25rem;height:2.25rem;font-size:.875rem}.pw-wrap{display:flex;flex-direction:column;gap:.375rem;width:100%}.pw-field{position:relative;display:flex;align-items: center}.pw-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);font-family:var(--font);outline:none;width:100%;padding:.5rem 2.5rem .5rem .75rem;transition:border-color .15s,box-shadow .15s;font-size:.9375rem;line-height:1.5}.pw-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.pw-input::placeholder{color:var(--fg-subtle)}.pw-toggle{position:absolute;display:grid;color:var(--fg-muted);cursor:pointer;border-radius:calc(var(--radius) - 2px);background:0 0;border:none;place-items: center;padding:.25rem;transition:color .15s;right:.625rem}.pw-toggle:hover{color:var(--fg)}.pw-strength{display:flex;align-items: center;gap:.625rem}.pw-bars{display:flex;flex:1;gap:.25rem}.pw-bar{background:var(--border);border-radius:9999px;flex:1;height:4px;transition:background .3s}.pw-bar-weak{background:#ef4444}.pw-bar-fair{background:#f97316}.pw-bar-strong{background:#22c55e}.pw-bar-very-strong{background:#16a34a}.pw-label{white-space:nowrap;font-size:.75rem;font-weight:500}.pw-label-weak{color:#ef4444}.pw-label-fair{color:#f97316}.pw-label-strong{color:#22c55e}.pw-label-very-strong{color:#16a34a}.pi-root{position:relative;display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);overflow:visible;align-items: center;width:100%;height:38px;transition:border-color .15s,box-shadow .15s}.pi-root:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px var(--ring)}.pi-disabled{opacity:.5;pointer-events:none}.pi-country{display:flex;cursor:pointer;user-select:none;flex-shrink:0;align-items: center;gap:.3rem;height:100%;padding:0 .6rem}.pi-flag{font-size:1.1rem;line-height:1}.pi-dial{color:var(--fg);font-size:.8rem;font-weight:600}.pi-chevron{color:var(--fg-muted);transition:transform .2s}.pi-chevron-open{transform:rotate(180deg)}.pi-divider{background:var(--border);flex-shrink:0;align-self:stretch;width:1px}.pi-input{color:var(--fg);outline:none;font-size:.875rem;font-family:var(--font);background:0 0;border:none;flex:1;min-width:0;height:100%;padding:0 .75rem}.pi-input::placeholder{color:var(--fg-subtle)}.pi-dropdown{position:absolute;z-index:100;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);overflow-y:auto;min-width:180px;max-height:240px;top:calc(100% + 4px);left:0;box-shadow:0 8px 24px #0000001f}.pi-option{display:flex;color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.4rem .75rem;transition:background .1s;font-size:.82rem}.pi-option:hover,.pi-option-active{background:var(--bg-hover)}.pi-option-code{flex:1;font-weight:600}.popover-root{position:relative;display:inline-block}.popover-trigger{display:inline-flex}.popover-content{position:absolute;z-index:50;background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);animation:popover-in .12s ease;min-width:200px;max-width:320px;padding:.75rem;box-shadow:0 8px 24px #00000059}@keyframes popover-in{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.popover-bottom{top:calc(100% + 8px);left:50%;transform:translate(-50%)}.popover-top{animation-name:popover-in-up;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}@keyframes popover-in-up{0%{opacity:0;transform:translate(-50%)scale(.96)translateY(4px)}to{opacity:1;transform:translate(-50%)scale(1)translateY(0)}}.popover-left{top:50%;right:calc(100% + 8px);transform:translateY(-50%)}.popover-right{top:50%;left:calc(100% + 8px);transform:translateY(-50%)}.pricing-card{position:relative;display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);font-family:var(--font);flex-direction:column;gap:1.25rem;padding:1.5rem;transition:box-shadow .2s,border-color .2s}.pricing-card-highlighted{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary),0 8px 32px #0000002e}.pricing-badge{position:absolute;background:var(--primary);color:var(--primary-fg);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;border-radius:999px;padding:.2rem .75rem;font-size:.6875rem;font-weight:700;top:-11px;left:50%;transform:translate(-50%)}.pricing-header{display:flex;flex-direction:column;gap:.25rem}.pricing-icon{color:var(--primary);margin-bottom:.25rem}.pricing-name{color:var(--fg);margin:0;font-size:1rem;font-weight:700}.pricing-desc{color:var(--fg-muted);margin:0;font-size:.8125rem;line-height:1.45}.pricing-price{display:flex;align-items:baseline;gap:.25rem}.pricing-currency{color:var(--fg-muted);align-self: flex-start;padding-top:.35rem;font-size:1.25rem;font-weight:500}.pricing-amount{color:var(--fg);font-variant-numeric:tabular-nums;font-size:2.75rem;font-weight:800;line-height:1}.pricing-period{color:var(--fg-muted);font-size:.8125rem}.pricing-features{list-style:none;display:flex;flex-direction:column;flex:1;gap:.5rem;margin:0;padding:0}.pricing-feature{display:flex;color:var(--fg);align-items: flex-start;gap:.5rem;font-size:.875rem;line-height:1.4}.pricing-feature-excluded{color:var(--fg-subtle);text-decoration:line-through}.pricing-feature-icon{color:var(--primary);flex-shrink:0;margin-top:.06rem;font-size:.8125rem}.pricing-feature-excluded .pricing-feature-icon{color:var(--fg-subtle)}.pricing-cta{font-size:.9375rem;font-weight:600;font-family:var(--font);border-radius:var(--radius);cursor:pointer;border:1px solid var(--border);background:var(--bg);color:var(--fg);text-align:center;padding:.625rem 1rem;transition:background .15s,border-color .15s,transform .1s}.pricing-cta:hover{background:var(--bg-hover)}.pricing-cta:active{transform:scale(.98)}.pricing-cta-highlighted{background:var(--primary);color:var(--primary-fg);border-color:var(--primary)}.pricing-cta-highlighted:hover{opacity:.9;background:var(--primary)}.pricing-footer{text-align:center;color:var(--fg-subtle);margin:0;font-size:.75rem}.pricing-toggle{display:flex;position:relative;align-items: center;gap:.6rem}.pricing-toggle-label{color:var(--fg-muted);cursor:pointer;user-select:none;transition:color .2s;font-size:.9rem}.pricing-toggle-label--active{color:var(--fg);font-weight:500}.pricing-toggle-track{position:relative;background:var(--bg-hover);border:1px solid var(--border);cursor:pointer;border-radius:12px;flex-shrink:0;width:44px;height:24px;padding:0;transition:background .2s,border-color .2s}.pricing-toggle-track--on{background:var(--primary);border-color:var(--primary)}.pricing-toggle-thumb{position:absolute;background:var(--fg-muted);border-radius:50%;width:16px;height:16px;transition:transform .2s cubic-bezier(.4,0,.2,1),background .2s;top:3px;left:3px}.pricing-toggle-track--on .pricing-toggle-thumb{background:var(--primary-fg);transform:translate(20px)}.pricing-toggle-badge{color:#16a34a;opacity:0;pointer-events:none;background:#22c55e26;border:1px solid #22c55e4d;border-radius:999px;padding:.15rem .5rem;transition:opacity .2s,transform .2s;font-size:.7rem;font-weight:600;transform:scale(.85)}.pricing-toggle-badge--visible{opacity:1;transform:scale(1)}.progress-wrap{width:100%}.progress-header{display:flex;justify-content:space-between;align-items: center;margin-bottom:.375rem}.progress-label{color:var(--fg-muted);font-size:.8125rem}.progress-value{color:var(--fg-subtle);font-size:.75rem;font-weight:500}.progress{background:var(--input-bg);overflow:hidden;border:1px solid var(--border);border-radius:999px;width:100%;height:.5rem}.progress-bar{background:var(--primary);border-radius:999px;height:100%;transition:width .4s}.progress-bar-success{background:#4ade80}.progress-bar-warning{background:#fbbf24}.progress-bar-destructive{background:var(--destructive)}.progress-sm .progress{height:.25rem}.progress-lg .progress{height:.75rem}@keyframes progress-shimmer{0%{background-position:200%}to{background-position:-200%}}.progress-bar-animated{background:linear-gradient(90deg,var(--primary)0%,color-mix(in srgb,var(--primary)55%,white)50%,var(--primary)100%);animation:progress-shimmer 1.5s ease infinite;background-size:200% 100%}.qi-root{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);overflow:hidden;font-family:var(--font);align-items: center}.qi-disabled{opacity:.5;pointer-events:none}.qi-btn{display:flex;cursor:pointer;color:var(--fg-muted);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;transition:background .15s,color .15s}.qi-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--fg)}.qi-btn:disabled{opacity:.3;cursor:not-allowed}.qi-val{text-align:center;font-variant-numeric:tabular-nums;color:var(--fg);-moz-appearance:textfield;outline:none;background:0 0;border:none;flex:none;font-family:inherit;font-weight:600}.qi-val::-webkit-inner-spin-button{-webkit-appearance:none}.qi-val::-webkit-outer-spin-button{-webkit-appearance:none}.qi-sm .qi-btn{width:28px;height:28px}.qi-sm .qi-val{width:36px;font-size:.875rem}.qi-md .qi-btn{width:36px;height:36px}.qi-md .qi-val{width:48px;font-size:.9375rem}.qi-lg .qi-btn{width:44px;height:44px}.qi-lg .qi-val{width:56px;font-size:1.0625rem}.radio-group{display:flex;flex-direction:column;gap:.625rem}.radio-wrapper{display:inline-flex;cursor:pointer;align-items: center;gap:.5rem}.radio{border:1px solid var(--border);background:var(--input-bg);display:grid;cursor:pointer;border-radius:50%;flex-shrink:0;place-items: center;width:1.125rem;height:1.125rem;padding:0;transition:border-color .1s,background .1s}.radio:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)40%,transparent)}.radio.radio-checked{border-color:var(--primary);background:var(--primary)}.radio-dot{background:var(--primary-fg);border-radius:50%;width:.4375rem;height:.4375rem}.radio-label{color:var(--fg);user-select:none;cursor:pointer;font-size:.875rem}.radio-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.range-slider{display:flex;user-select:none;flex-direction:column;gap:.5rem;width:100%}.range-slider-disabled{opacity:.5;pointer-events:none}.range-slider-labels{display:flex;color:var(--fg-muted);font-size:.8125rem;font-family:var(--font-mono);justify-content:space-between}.range-slider-track{position:relative;background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;height:6px;margin:.625rem 0}.range-slider-fill{position:absolute;background:var(--primary);border-radius:999px;height:calc(100% + 2px);top:-1px}.range-slider-thumb{position:absolute;background:var(--bg-elevated);border:2.5px solid var(--primary);cursor:grab;z-index:2;border-radius:50%;width:18px;height:18px;padding:0;transition:box-shadow .15s;top:50%;transform:translate(-50%,-50%)}.range-slider-thumb:hover{box-shadow:0 0 0 4px color-mix(in srgb,var(--primary)20%,transparent)}.range-slider-thumb:active{cursor:grabbing;box-shadow:0 0 0 6px color-mix(in srgb,var(--primary)25%,transparent)}.range-slider-thumb:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ring)}.rating{display:inline-flex;align-items: center;gap:.125rem}.rating-sm .rating-star{width:1.125rem;height:1.125rem}.rating-md .rating-star{width:1.5rem;height:1.5rem}.rating-lg .rating-star{width:2rem;height:2rem}.rating-star{display:inline-flex;cursor:pointer;color:var(--border);background:0 0;border:none;justify-content:center;align-items: center;padding:0;transition:color .1s,transform .1s;line-height:1}.rating-star svg{fill:currentColor;stroke:currentColor;stroke-width:.5;width:100%;height:100%}.rating-star:not(:disabled):hover{transform:scale(1.2)}.rating-star-filled{color:#f59e0b}.rating-readonly .rating-star{cursor:default;pointer-events:none}.ribbon-wrap{position:relative;display:inline-block;isolation:isolate;overflow:hidden}.ribbon{position:absolute;z-index:1;font-family:var(--font);white-space:nowrap;display:flex;pointer-events:none;user-select:none;justify-content:center;align-items: center;font-weight:700;line-height:1}.ribbon-sm{width:80px;padding:.3125rem 0;font-size:.625rem}.ribbon-md{width:120px;padding:.4375rem 0;font-size:.75rem}.ribbon-top-right{top:12px;right:-32px;transform:rotate(45deg)}.ribbon-top-left{top:12px;left:-32px;transform:rotate(-45deg)}.ribbon-bottom-right{bottom:12px;right:-32px;transform:rotate(-45deg)}.ribbon-bottom-left{bottom:12px;left:-32px;transform:rotate(45deg)}.ribbon-default{background:var(--primary);color:var(--primary-fg)}.ribbon-secondary{background:var(--bg-elevated);color:var(--fg);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.ribbon-destructive{background:var(--destructive);color:#fff}.ribbon-success{color:#fff;background:#16a34a}.ribbon-warning{color:#fff;background:#d97706}.scroll-area{overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border)transparent}.scroll-area::-webkit-scrollbar{width:6px;height:6px}.scroll-area::-webkit-scrollbar-track{background:0 0}.scroll-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.scroll-area::-webkit-scrollbar-thumb:hover{background:var(--fg-subtle)}.search-input-wrap{position:relative;display:flex;align-items: center;width:100%}.search-icon{position:absolute;color:var(--fg-subtle);display:flex;pointer-events:none;z-index:1;align-items: center;top:50%;left:.75rem;transform:translateY(-50%)}.search-icon-spin{animation:search-spin .75s linear infinite}@keyframes search-spin{to{transform:rotate(360deg)}}.search-input{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);font-size:.875rem;font-family:var(--font);outline:none;-webkit-appearance:none;appearance:none;width:100%;height:2.25rem;padding:0 2.25rem 0 2.375rem;transition:border-color .15s,box-shadow .15s}.search-input::-webkit-search-cancel-button{display:none}.search-input::placeholder{color:var(--fg-subtle)}.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.search-clear{position:absolute;cursor:pointer;color:var(--fg-subtle);display:flex;border-radius:calc(var(--radius) - 2px);background:0 0;border:none;justify-content:center;align-items: center;padding:.25rem;transition:color .15s,background .15s;top:50%;right:.5rem;transform:translateY(-50%)}.search-clear:hover{color:var(--fg);background:var(--bg-hover)}.seg-root{display:inline-flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font);gap:.125rem;padding:.1875rem}.seg-full{display:flex;width:100%}.seg-full .seg-item{flex:1}.seg-item{display:inline-flex;border-radius:calc(var(--radius) - 2px);color:var(--fg-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;justify-content:center;align-items: center;gap:.375rem;transition:background .15s,color .15s;font-family:inherit;font-weight:500}.seg-item:hover:not(:disabled){background:var(--bg-hover);color:var(--fg)}.seg-item-active{background:var(--bg);color:var(--fg);box-shadow:0 1px 3px #0003,0 0 0 1px var(--border)}.seg-item:disabled{opacity:.45;cursor:not-allowed}.seg-item:focus-visible{outline:none;box-shadow:0 0 0 2px var(--ring)}.seg-sm .seg-item{height:1.625rem;padding:0 .625rem;font-size:.8125rem}.seg-md .seg-item{height:1.875rem;padding:0 .75rem;font-size:.875rem}.seg-lg .seg-item{height:2.25rem;padding:0 1rem;font-size:.9375rem}.select-wrapper{position:relative;display:flex;align-items: center}.select{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);font-size:.875rem;font-family:var(--font);outline:none;appearance:none;cursor:pointer;width:100%;height:2.5rem;padding:0 2.25rem 0 .75rem;transition:border-color .15s,box-shadow .15s}.select:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)20%,transparent)}.select.input-error{border-color:var(--destructive)}.select option{background:var(--bg-elevated);color:var(--fg)}.select-chevron{position:absolute;pointer-events:none;color:var(--fg-muted);display:flex;align-items: center;right:.75rem}.separator{background:var(--border);border:none;flex-shrink:0}.separator-horizontal{width:100%;height:1px}.separator-vertical{align-self:stretch;width:1px;height:100%}.separator-labeled{display:flex;align-items: center;gap:.75rem;width:100%}.separator-labeled .separator{flex:1}.separator-label{color:var(--fg-subtle);white-space:nowrap;font-size:.75rem}.sheet-overlay{position:fixed;z-index:100;backdrop-filter:blur(4px);background:#000000a6;inset:0}.sheet{position:fixed;background:var(--bg-elevated);border:1px solid var(--border);display:flex;overflow-y:auto;flex-direction:column;box-shadow:0 25px 60px #00000080}.sheet-right{animation:sheet-in-right .22s cubic-bezier(.22,1,.36,1);border-top:none;border-bottom:none;border-right:none;width:min(420px,100vw);top:0;bottom:0;right:0}.sheet-left{animation:sheet-in-left .22s cubic-bezier(.22,1,.36,1);border-top:none;border-bottom:none;border-left:none;width:min(420px,100vw);top:0;bottom:0;left:0}.sheet-bottom{border-radius:calc(var(--radius) + 4px)calc(var(--radius) + 4px)0 0;animation:sheet-in-bottom .22s cubic-bezier(.22,1,.36,1);border-bottom:none;border-left:none;border-right:none;max-height:85dvh;bottom:0;left:0;right:0}.sheet-top{border-radius:0 0 calc(var(--radius) + 4px)calc(var(--radius) + 4px);animation:sheet-in-top .22s cubic-bezier(.22,1,.36,1);border-top:none;border-left:none;border-right:none;max-height:50dvh;top:0;left:0;right:0}@keyframes sheet-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes sheet-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes sheet-in-bottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-in-top{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.sheet-header{display:flex;flex-shrink:0;justify-content:space-between;align-items: flex-start;gap:1rem;padding:1.5rem 1.5rem 0}.sheet-header-text{display:flex;flex-direction:column;gap:.25rem}.sheet-title{letter-spacing:-.02em;color:var(--fg);margin:0;font-size:1.0625rem;font-weight:600}.sheet-description{color:var(--fg-muted);margin:0;font-size:.875rem;line-height:1.5}.sheet-close{color:var(--fg-subtle);cursor:pointer;border-radius:var(--radius);display:grid;background:0 0;border:none;flex-shrink:0;place-items: center;padding:.25rem;transition:color .15s,background .15s}.sheet-close:hover{color:var(--fg);background:var(--bg-hover)}.sheet-content{overflow-y:auto;flex:1;padding:1.25rem 1.5rem 2rem}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{display:block;border-radius:var(--radius);background:linear-gradient(90deg,var(--input-bg)25%,var(--bg-hover)50%,var(--input-bg)75%);animation:shimmer 1.5s infinite;background-size:200% 100%;min-height:1rem}.skeleton-rounded{border-radius:999px}.slider-root{display:flex;align-items: center;gap:.75rem;width:100%}.slider-track-wrap{position:relative;display:flex;flex:1;align-items: center;height:1.25rem}.slider-input{position:absolute;opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;margin:0;inset:0}.slider-disabled .slider-input{cursor:not-allowed}.slider-track{position:relative;background:var(--bg-hover);overflow:visible;pointer-events:none;border-radius:999px;width:100%;height:.375rem}.slider-fill{position:absolute;width:var(--slider-pct,0%);background:var(--primary);border-radius:999px;height:100%;transition:width;top:0;left:0}.slider-thumb{position:absolute;top:50%;left:var(--slider-pct,0%);background:var(--primary);border:2px solid var(--bg);box-shadow:0 0 0 2px var(--primary);border-radius:50%;width:1.125rem;height:1.125rem;transition:box-shadow .15s;transform:translate(-50%,-50%)}.slider-track-wrap:focus-within .slider-thumb{box-shadow:0 0 0 4px color-mix(in srgb,var(--primary)35%,transparent)}.slider-disabled .slider-track{opacity:.4}.slider-value{text-align:right;color:var(--fg-muted);font-variant-numeric:tabular-nums;min-width:2.5rem;font-size:.875rem;font-weight:500}.sd-root{position:relative;display:inline-flex;flex-direction:column;align-items: center}.sd-trigger{position:relative;background:var(--primary);color:var(--primary-fg);cursor:pointer;display:flex;z-index:1;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:48px;height:48px;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px #00000040}.sd-trigger:hover{transform:scale(1.07);box-shadow:0 6px 20px #0000004d}.sd-trigger-open{transform:scale(1.05)}.sd-trigger-icon{position:absolute;display:flex;opacity:0;transition:opacity .18s,transform .2s;transform:rotate(-90deg)}.sd-trigger-icon-visible{opacity:1;transform:rotate(0)}.sd-actions{display:flex;position:absolute;pointer-events:none;align-items: center;gap:.5rem}.sd-dir-up .sd-actions{flex-direction:column;bottom:calc(100% + .5rem)}.sd-dir-down .sd-actions{flex-direction:column;top:calc(100% + .5rem)}.sd-dir-left .sd-actions{flex-direction:row;right:calc(100% + .5rem)}.sd-dir-right .sd-actions{flex-direction:row;left:calc(100% + .5rem)}.sd-actions-open{pointer-events:auto}.sd-action-item{display:flex;opacity:0;transition:opacity .18s cubic-bezier(.34,1.3,.64,1),transform .18s cubic-bezier(.34,1.3,.64,1);transition-delay:calc(var(--sd-index,0)*40ms);align-items: center;gap:.5rem;transform:scale(.7)}.sd-dir-up .sd-action-item,.sd-dir-down .sd-action-item{flex-direction:row-reverse}.sd-actions-open .sd-action-item{opacity:1;transform:scale(1)}.sd-action-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--fg-muted);cursor:pointer;display:flex;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:36px;height:36px;transition:background .15s,color .15s,transform .1s;box-shadow:0 2px 8px #00000026}.sd-action-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--fg);transform:scale(1.1)}.sd-action-btn-disabled{opacity:.4;cursor:not-allowed}.sd-action-label{font-size:.75rem;font-family:var(--font);white-space:nowrap;background:var(--bg-elevated);color:var(--fg);border:1px solid var(--border);pointer-events:none;border-radius:4px;padding:.2rem .5rem;box-shadow:0 2px 6px #0000001f}.spinner{border-style:solid;border-color:var(--border);border-top-color:var(--fg-muted);animation:spin .65s linear infinite;border-radius:50%;flex-shrink:0}.spinner-sm{border-width:2px;width:1rem;height:1rem}.spinner-md{border-width:2px;width:1.5rem;height:1.5rem}.spinner-lg{border-width:3px;width:2.25rem;height:2.25rem}.split-pane{display:flex;overflow:hidden;width:100%;height:100%}.split-pane-h{flex-direction:row}.split-pane-v{flex-direction:column}.split-pane-panel{overflow:auto;min-width:0;min-height:0}.split-pane-first{flex-shrink:0}.split-pane-divider{background:var(--border);position:relative;z-index:1;flex-shrink:0;transition:background .15s}.split-pane-divider-h{cursor:col-resize;width:4px}.split-pane-divider-v{cursor:row-resize;height:4px}.split-pane-divider:hover{background:var(--primary);outline:none}.split-pane-divider:focus-visible{background:var(--primary);outline:none}.split-pane-divider-h:after,.split-pane-divider-v:after{content:"";position:absolute;background:0 0}.split-pane-divider-h:after{width:12px;height:100%;top:0;left:-4px}.split-pane-divider-v:after{width:100%;height:12px;top:-4px;left:0}.spotlight-overlay{position:fixed;z-index:9999;display:flex;backdrop-filter:blur(2px);background:#00000073;justify-content:center;align-items: flex-start;padding-top:15vh;inset:0}.spotlight{background:var(--bg-elevated);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);overflow:hidden;animation:spotlight-in .15s ease;width:min(560px,100vw - 2rem);box-shadow:0 24px 80px #00000059}@keyframes spotlight-in{0%{opacity:0;transform:scale(.95)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}.spotlight-input-row{display:flex;border-bottom:1px solid var(--border);align-items: center;gap:.5rem;padding:.75rem 1rem}.spotlight-icon{color:var(--fg-muted);flex-shrink:0}.spotlight-input{outline:none;font:inherit;color:var(--fg);background:0 0;border:none;flex:1;font-size:1rem}.spotlight-input::placeholder{color:var(--fg-subtle)}.spotlight-esc{border:1px solid var(--border);color:var(--fg-muted);background:var(--bg-hover);font-size:.7rem;font-family:var(--font-mono);border-radius:4px;padding:.2rem .4rem}.spotlight-list{list-style:none;overflow-y:auto;max-height:320px;margin:0;padding:.375rem}.spotlight-item{display:flex;border-radius:calc(var(--radius) - 2px);cursor:pointer;align-items: center;gap:.75rem;padding:.6rem .75rem;transition:background .1s}.spotlight-item--active{background:var(--bg-hover)}.spotlight-item-icon{flex-shrink:0;font-size:1.1rem}.spotlight-item-text{display:flex;flex-direction:column;gap:.1rem}.spotlight-item-label{color:var(--fg);font-size:.9rem;font-weight:500}.spotlight-item-desc{color:var(--fg-muted);font-size:.78rem}.spotlight-empty{text-align:center;color:var(--fg-muted);padding:1.5rem;font-size:.88rem}.stat-root{display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font);flex-direction:column;gap:.25rem;padding:1rem 1.25rem}.stat-header{display:flex;justify-content:space-between;align-items: center;gap:.5rem}.stat-label{color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;margin:0;font-size:.75rem;font-weight:500}.stat-icon{color:var(--fg-subtle);display:flex;flex-shrink:0;align-items: center}.stat-value{color:var(--fg);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:700;line-height:1.1}.stat-delta{display:inline-flex;align-items: center;gap:.2rem;font-size:.8125rem;font-weight:500}.stat-delta-up{color:#22c55e}.stat-delta-down{color:#ef4444}.stat-delta-neutral{color:var(--fg-subtle)}.stat-description{color:var(--fg-subtle);margin:.125rem 0 0;font-size:.8rem}.sg-grid{display:grid;gap:.75rem}.sg-cols-2{grid-template-columns:repeat(2,1fr)}.sg-cols-3{grid-template-columns:repeat(3,1fr)}.sg-cols-4{grid-template-columns:repeat(4,1fr)}.sg-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.125rem}.sg-top{display:flex;justify-content:space-between;align-items: center;gap:.5rem}.sg-label{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:500}.sg-icon{color:var(--fg-subtle);display:flex;align-items: center;font-size:.9rem}.sg-value{color:var(--fg);font-size:1.6rem;font-weight:700;line-height:1}.sg-meta{display:flex;flex-wrap:wrap;align-items: center;gap:.5rem}.sg-trend{display:inline-flex;border-radius:999px;align-items: center;gap:.2rem;padding:.1rem .35rem;font-size:.78rem;font-weight:600}.sg-trend-up{color:#16a34a;background:#16a34a1a}.sg-trend-down{color:var(--destructive);background:#ef44441a}.sg-trend-neutral{color:var(--fg-muted);background:var(--bg-hover)}.sg-desc{color:var(--fg-muted);font-size:.75rem}.stepper-horizontal{display:flex;list-style:none;overflow-x:auto;align-items: flex-start;gap:0;margin:0;padding:0}.stepper-horizontal .step{display:flex;position:relative;flex:1;align-items: flex-start;min-width:0}.stepper-horizontal .step-connector{background:var(--border);flex:1;height:2px;margin-top:1.125rem;transition:background .25s}.stepper-horizontal .step-complete+.step .step-connector,.stepper-horizontal .step-complete .step-connector{background:var(--primary)}.stepper-horizontal .step-body{display:flex;text-align:center;flex-direction:column;flex-shrink:0;align-items: center;gap:.5rem;padding:0 .5rem}.stepper-vertical{display:flex;list-style:none;flex-direction:column;gap:0;margin:0;padding:0}.stepper-vertical .step{display:flex;position:relative;flex-direction:column}.stepper-vertical .step-connector{background:var(--border);width:2px;height:1.25rem;margin-left:1.125rem;transition:background .25s}.stepper-vertical .step-complete .step-connector{background:var(--primary)}.stepper-vertical .step-body{display:flex;align-items: flex-start;gap:.875rem;padding:0 0 .25rem}.stepper-vertical .step-text{padding-top:.3rem}.step-indicator{display:grid;border:2px solid var(--border);background:var(--bg-elevated);color:var(--fg-subtle);border-radius:50%;flex-shrink:0;place-items: center;width:2.25rem;height:2.25rem;transition:border-color .2s,background .2s,color .2s}.step-current .step-indicator,.step-complete .step-indicator{border-color:var(--primary);background:var(--primary);color:var(--primary-fg)}.step-num{font-size:.8125rem;font-weight:600}.step-label{color:var(--fg-muted);margin:0;transition:color .15s;font-size:.875rem;font-weight:500}.step-current .step-label{color:var(--fg)}.step-complete .step-label{color:var(--fg-muted)}.step-description{color:var(--fg-subtle);margin:.125rem 0 0;font-size:.8125rem;line-height:1.4}.sticky-note{position:relative;display:flex;font-family:var(--font);box-sizing:border-box;border-radius:2px;flex-direction:column;padding:1rem 1rem .875rem;transition:transform .2s}.sticky-note-clickable{cursor:pointer}.sticky-note-clickable:hover{transform:scale(1.01)translateY(-2px)}.sticky-note-clickable:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.sticky-note-tape{position:absolute;background:#ffffff73;border:1px solid #00000014;border-radius:2px;width:48px;height:16px;top:-8px;left:50%;transform:translate(-50%)}.sticky-note-shadow{box-shadow:3px 4px 12px #0000002e,0 1px 2px #00000014}.sticky-note-title{opacity:.75;margin:0 0 .5rem;font-size:.875rem;font-weight:700;line-height:1.3}.sticky-note-body{opacity:.85;overflow:hidden;flex:1;font-size:.9rem;line-height:1.55}.sticky-note-yellow{color:#713f12;background:#fef08a}.sticky-note-blue{color:#0c4a6e;background:#bae6fd}.sticky-note-green{color:#14532d;background:#bbf7d0}.sticky-note-pink{color:#831843;background:#fbcfe8}.sticky-note-purple{color:#4a1d96;background:#e9d5ff}.sticky-note-orange{color:#7c2d12;background:#fed7aa}.swipe-card{position:relative;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);user-select:none;touch-action:pan-y;will-change:transform;padding:1.25rem}.swipe-hint{position:absolute;border-radius:var(--radius);z-index:10;pointer-events:none;border:2px solid;padding:.25rem .75rem;font-size:1.25rem;font-weight:700;top:.75rem}.swipe-hint--right{color:#22c55e;border-color:#22c55e;right:.75rem}.swipe-hint--left{color:#ef4444;border-color:#ef4444;left:.75rem}.switch-wrapper{display:inline-flex;align-items: center;gap:.625rem}.switch{position:relative;cursor:pointer;background:var(--input-bg);border:none;border:1px solid var(--border);display:block;outline:none;border-radius:999px;flex-shrink:0;padding:0;transition:background .2s,border-color .2s}.switch:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)40%,transparent)}.switch[aria-checked=true]{background:var(--primary);border-color:var(--primary)}.switch-thumb{position:absolute;pointer-events:none;background:#fff;border-radius:50%;transition:transform .2s cubic-bezier(.4,0,.2,1);top:50%;left:0;box-shadow:0 1px 3px #0000004d}.switch-sm{width:2rem;height:1.125rem}.switch-sm .switch-thumb{width:.875rem;height:.875rem;transform:translate(2px,-50%)}.switch-sm[aria-checked=true] .switch-thumb{transform:translate(calc(1.125rem - 2px),-50%)}.switch-md{width:2.75rem;height:1.5rem}.switch-md .switch-thumb{width:1.125rem;height:1.125rem;transform:translate(3px,-50%)}.switch-md[aria-checked=true] .switch-thumb{transform:translate(calc(1.625rem - 3px),-50%)}.switch-lg{width:3.5rem;height:1.875rem}.switch-lg .switch-thumb{width:1.5rem;height:1.5rem;transform:translate(3px,-50%)}.switch-lg[aria-checked=true] .switch-thumb{transform:translate(calc(2rem - 3px),-50%)}.switch[aria-checked=true] .switch-thumb{background:var(--primary-fg)}.switch:not([aria-checked=true]) .switch-thumb{background:var(--fg-muted)}.switch-label-text{color:var(--fg);user-select:none;cursor:pointer;font-size:.875rem}.switch-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.tb-root{display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;align-items:stretch;gap:2px;padding:4px}.tb-tab{display:flex;color:var(--fg-muted);cursor:pointer;border-radius:calc(var(--radius) - 3px);font-family:var(--font);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items: center;gap:.25rem;min-width:56px;padding:.5rem .25rem;transition:color .15s,background .15s}.tb-tab:hover{color:var(--fg);background:var(--bg-hover)}.tb-tab-active{box-shadow:0 1px 4px #00000014;background:var(--bg)!important;color:var(--primary)!important}.tb-icon{position:relative;display:flex;justify-content:center;align-items: center;font-size:1.2rem;line-height:1}.tb-badge{position:absolute;background:var(--destructive);color:#fff;text-align:center;border-radius:999px;min-width:14px;padding:.05rem .25rem;font-size:.6rem;font-weight:700;line-height:1.4;top:-5px;right:-8px}.tb-label{letter-spacing:.02em;font-size:.68rem;font-weight:500}.table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);width:100%}.table{border-collapse:collapse;width:100%;font-size:.875rem}.table-th{text-align:left;color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--bg-elevated);white-space:nowrap;padding:.75rem 1rem;font-size:.75rem;font-weight:600}.table-row{border-bottom:1px solid var(--border);transition:background .1s}.table-row:last-child{border-bottom:none}.table-row:hover{background:var(--bg-hover)}.table-td{color:var(--fg-muted);vertical-align:middle;padding:.75rem 1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.tabs{width:100%}.tabs-list{display:flex;border-bottom:1px solid var(--border);overflow-x:auto;gap:0}.tabs-trigger{color:var(--fg-muted);font-size:.875rem;font-weight:500;font-family:var(--font);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.625rem 1rem;transition:color .15s}.tabs-trigger:hover:not(:disabled){color:var(--fg)}.tabs-trigger:disabled{opacity:.4;cursor:not-allowed}.tabs-trigger.tabs-trigger-active{color:var(--fg);border-bottom-color:var(--primary)}.tabs-content{color:var(--fg-muted);padding:1.25rem 0;font-size:.875rem;line-height:1.6}.tag-input-wrap{display:flex;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);cursor:text;flex-wrap:wrap;align-items: center;gap:.375rem;min-height:2.5rem;padding:.375rem .625rem;transition:border-color .15s,box-shadow .15s}.tag-input-wrap:focus-within{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)20%,transparent)}.tag-input-wrap.input-error{border-color:var(--destructive)}.tag-input-wrap.input-error:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--destructive)20%,transparent)}.tag-input-disabled{opacity:.5;pointer-events:none}.tag{display:inline-flex;background:var(--bg-hover);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;align-items: center;gap:.25rem;max-width:200px;padding:.1875rem .5rem;font-size:.8125rem}.tag-remove{display:inline-flex;color:var(--fg-subtle);cursor:pointer;background:0 0;border:none;border-radius:2px;flex-shrink:0;justify-content:center;align-items: center;padding:0;transition:color .1s}.tag-remove:hover{color:var(--fg)}.tag-input-field{color:var(--fg);font-size:.875rem;font-family:var(--font);outline:none;background:0 0;border:none;flex:1;min-width:80px;height:1.5rem;padding:0}.tag-input-field::placeholder{color:var(--fg-subtle)}.text-reveal{display:inline;font:inherit;color:inherit}.text-reveal-token{display:inline-block;transition:opacity var(--reveal-duration,.5s)ease var(--reveal-delay,0s),transform var(--reveal-duration,.5s)cubic-bezier(.22,1,.36,1)var(--reveal-delay,0s)}.textarea{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);font-size:.875rem;font-family:var(--font);resize:vertical;outline:none;width:100%;min-height:6rem;padding:.625rem .75rem;transition:border-color .15s,box-shadow .15s;line-height:1.6}.textarea::placeholder{color:var(--fg-subtle)}.textarea:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)20%,transparent)}.textarea.input-error{border-color:var(--destructive)}.textarea.input-error:focus{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in srgb,var(--destructive)20%,transparent)}.textarea-wrapper{display:flex;flex-direction:column;gap:.25rem}.textarea-count{color:var(--fg-subtle);text-align:right;font-size:.75rem}.textarea-count-over{color:var(--destructive)}.tt-icon-btn{display:inline-flex;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg-muted);cursor:pointer;overflow:hidden;position:relative;justify-content:center;align-items: center;width:36px;height:36px;transition:background .15s,color .15s,border-color .15s}.tt-icon-btn:hover{background:var(--bg-hover);color:var(--fg)}.tt-icon-inner{position:relative;display:flex;justify-content:center;align-items: center;width:15px;height:15px}.tt-icon-state{position:absolute;display:flex;opacity:0;justify-content:center;align-items: center;transition:opacity .2s,transform .2s;inset:0;transform:translateY(4px)rotate(15deg)}.tt-icon-active{opacity:1;transform:translateY(0)rotate(0)}.tt-seg{display:inline-flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);gap:2px;padding:3px}.tt-seg-btn{display:flex;border-radius:calc(var(--radius) - 3px);color:var(--fg-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:30px;height:28px;transition:background .15s,color .15s}.tt-seg-btn:hover{color:var(--fg);background:var(--bg-hover)}.tt-seg-active{box-shadow:0 1px 4px #00000014;background:var(--bg)!important;color:var(--fg)!important}.tp-wrap{position:relative;display:inline-block}.tp-trigger{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);font-family:var(--font);cursor:pointer;white-space:nowrap;align-items: center;gap:.5rem;min-width:130px;padding:.5rem .875rem;transition:border-color .15s,box-shadow .15s;font-size:.9375rem}.tp-trigger:hover:not(:disabled){border-color:color-mix(in srgb,var(--border)60%,var(--fg))}.tp-trigger-open{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.tp-trigger:focus-visible{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}.tp-trigger:disabled{opacity:.5;cursor:not-allowed}.tp-icon{color:var(--fg-muted);flex-shrink:0}.tp-popover{position:absolute;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);z-index:50;min-width:180px;padding:1rem;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #0000001f}.tp-cols{display:flex;align-items: center;gap:.5rem}.tp-col{display:flex;flex-direction:column;align-items: center;gap:.25rem}.tp-arrow{cursor:pointer;color:var(--fg-muted);border-radius:calc(var(--radius) - 2px);background:0 0;border:none;padding:.25rem .5rem;transition:background .15s,color .15s;font-size:.625rem;line-height:1}.tp-arrow:hover{background:var(--bg-hover);color:var(--fg)}.tp-digit{font-variant-numeric:tabular-nums;color:var(--fg);text-align:center;min-width:2ch;font-size:1.5rem;font-weight:600;line-height:1}.tp-sep{color:var(--fg-muted);align-self: center;margin-top:-.25rem;font-size:1.5rem;font-weight:600;line-height:1}.tp-ampm{display:flex;flex-direction:column;gap:.25rem;margin-left:.25rem}.tp-ampm-btn{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);color:var(--fg-muted);cursor:pointer;background:0 0;padding:.25rem .5rem;transition:all .15s;font-size:.8125rem;font-weight:500}.tp-ampm-btn:hover{background:var(--bg-hover)}.tp-ampm-active{background:var(--primary)!important;color:var(--primary-fg)!important;border-color:var(--primary)!important}.tp-footer{display:flex;justify-content:flex-end;margin-top:.875rem}.tp-done{background:var(--primary);color:var(--primary-fg);border-radius:var(--radius);cursor:pointer;border:none;padding:.375rem .875rem;transition:opacity .15s;font-size:.875rem;font-weight:500}.tp-done:hover{opacity:.9}.timeline{list-style:none;display:flex;flex-direction:column;margin:0;padding:0}.timeline-item{display:flex;gap:1rem}.timeline-left{display:flex;flex-direction:column;flex-shrink:0;align-items: center;width:.75rem}.timeline-dot{border:2px solid var(--border);background:var(--bg-elevated);border-radius:50%;flex-shrink:0;width:.75rem;height:.75rem;margin-top:.25rem;transition:border-color .2s,background .2s}.timeline-success .timeline-dot{background:#10b981;border-color:#10b981}.timeline-warning .timeline-dot{background:#f59e0b;border-color:#f59e0b}.timeline-destructive .timeline-dot{background:#ef4444;border-color:#ef4444}.timeline-connector{background:var(--border);flex:1;width:2px;min-height:.75rem;margin:.25rem auto}.timeline-content{flex:1;min-width:0;padding-bottom:1.5rem}.timeline-header{display:flex;justify-content:space-between;align-items: flex-start;gap:.5rem}.timeline-label{color:var(--fg);margin:0;font-size:.875rem;font-weight:500;line-height:1.3}.timeline-date{color:var(--fg-subtle);white-space:nowrap;flex-shrink:0;padding-top:.05rem;font-size:.75rem}.timeline-desc{color:var(--fg-muted);margin:.3rem 0 0;font-size:.8125rem;line-height:1.4}.toaster{position:fixed;z-index:200;display:flex;pointer-events:none;flex-direction:column;gap:.5rem;bottom:1.5rem;right:1.5rem}.toast{display:flex;background:var(--fg);color:var(--bg);border-radius:var(--radius);pointer-events:auto;animation:toast-in .2s ease;justify-content:space-between;align-items: center;gap:1rem;min-width:280px;max-width:400px;padding:.75rem 1rem;font-size:.875rem;font-weight:500;box-shadow:0 8px 24px #0006}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.toast-success{color:#dcfce7;background:#166534;border:1px solid #16a34a}.toast-warning{color:#fef9c3;background:#78350f;border:1px solid #d97706}.toast-destructive{color:#fee2e2;background:#7f1d1d;border:1px solid #dc2626}.toast-msg{flex:1;line-height:1.4}.toast-body{display:flex;flex-direction:column;flex:1;gap:.125rem}.toast-title{font-size:.875rem;font-weight:700;line-height:1.3}.toast-actions{display:flex;flex-shrink:0;align-items: center;gap:.375rem}.toast-action{cursor:pointer;border-radius:calc(var(--radius) - 2px);color:inherit;opacity:.8;font-size:.75rem;font-weight:600;font-family:var(--font);background:0 0;border:1px solid;padding:.2rem .5rem;transition:opacity .15s}.toast-action:hover{opacity:1}.toast-close{cursor:pointer;color:inherit;opacity:.7;display:grid;border-radius:calc(var(--radius) - 2px);background:0 0;border:none;flex-shrink:0;place-items: center;padding:.125rem;transition:opacity .15s}.toast-close:hover{opacity:1}.toggle-wrapper{display:inline-flex;cursor:pointer;align-items: center;gap:.625rem}.toggle{position:relative;background:var(--input-bg);border:none;border:1px solid var(--border);cursor:pointer;border-radius:999px;flex-shrink:0;width:2.75rem;height:1.5rem;padding:0;transition:background .15s,border-color .15s}.toggle:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--ring)40%,transparent);outline:none}.toggle.toggle-on{background:var(--primary);border-color:var(--primary)}.toggle-thumb{position:absolute;background:var(--fg-subtle);border-radius:50%;width:1.125rem;height:1.125rem;transition:transform .15s,background .15s;top:2px;left:2px}.toggle.toggle-on .toggle-thumb{background:var(--primary-fg);transform:translate(1.25rem)}.toggle-label{color:var(--fg);user-select:none;font-size:.875rem}.toggle-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.tooltip-root{position:relative;display:inline-flex;align-items: center}.tooltip{position:absolute;z-index:60;background:var(--fg);color:var(--bg);border-radius:var(--radius);pointer-events:none;word-break:break-word;white-space:nowrap;animation:tooltip-in .1s ease;max-width:240px;padding:.375rem .625rem;font-size:.75rem;font-weight:500;line-height:1.4;box-shadow:0 4px 12px #0006}@keyframes tooltip-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.tooltip-top{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-bottom{top:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-left{top:50%;right:calc(100% + 8px);transform:translateY(-50%)}.tooltip-right{top:50%;left:calc(100% + 8px);transform:translateY(-50%)}.tooltip-arrow{position:absolute;border:5px solid #0000;width:0;height:0}.tooltip-arrow-top{border-top-color:var(--fg);border-bottom:none;top:100%;left:50%;transform:translate(-50%)}.tooltip-arrow-bottom{border-bottom-color:var(--fg);border-top:none;bottom:100%;left:50%;transform:translate(-50%)}.tooltip-arrow-left{border-left-color:var(--fg);border-right:none;top:50%;left:100%;transform:translateY(-50%)}.tooltip-arrow-right{border-right-color:var(--fg);border-left:none;top:50%;right:100%;transform:translateY(-50%)}.tl-root{display:flex;font-family:var(--font);align-items: flex-start;gap:.75rem}.tl-panel{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;flex:1;min-width:140px}.tl-panel-header{display:flex;background:var(--bg-elevated);border-bottom:1px solid var(--border);justify-content:space-between;align-items: center;padding:.5rem .75rem}.tl-panel-label{color:var(--fg);font-size:.8125rem;font-weight:600}.tl-panel-count{background:var(--primary);color:var(--primary-fg);border-radius:9999px;padding:.0625rem .4rem;font-size:.6875rem;font-weight:700;line-height:1.4}.tl-list{list-style:none;overflow-y:auto;display:flex;background:var(--bg);flex-direction:column;gap:1px;min-height:120px;max-height:200px;margin:0;padding:.25rem}.tl-item{border-radius:calc(var(--radius) - 2px);color:var(--fg);cursor:pointer;user-select:none;padding:.375rem .625rem;transition:background .1s;font-size:.875rem}.tl-item:hover{background:var(--bg-hover)}.tl-item-selected{background:color-mix(in srgb,var(--primary)15%,transparent);color:var(--primary)}.tl-item-selected:hover{background:color-mix(in srgb,var(--primary)22%,transparent)}.tl-empty{color:var(--fg-subtle);pointer-events:none;text-align:center;padding:.5rem .625rem;font-size:.8125rem}.tl-actions{display:flex;flex-direction:column;justify-content:center;gap:.375rem;padding-top:2rem}.tl-btn{border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);border-radius:calc(var(--radius) - 2px);cursor:pointer;display:flex;justify-content:center;align-items: center;width:32px;height:32px;transition:background .15s,border-color .15s;font-family:monospace;font-size:1rem}.tl-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--primary)}.tl-btn:disabled{opacity:.35;cursor:not-allowed}.tree-root{font-family:var(--font);color:var(--fg);font-size:.875rem}.tree-node{display:flex;flex-direction:column}.tree-item{display:flex;cursor:pointer;color:var(--fg-muted);border-radius:var(--radius);text-align:left;font-size:inherit;background:0 0;border:none;align-items: center;gap:.375rem;width:100%;padding:.3125rem .5rem;transition:background .12s,color .12s;font-family:inherit;line-height:1.4}.tree-item:hover:not(:disabled){background:var(--bg-hover);color:var(--fg)}.tree-item-selected{background:color-mix(in srgb,var(--primary)12%,transparent);color:var(--fg)}.tree-item-selected:hover:not(:disabled){background:color-mix(in srgb,var(--primary)16%,transparent)}.tree-item-disabled{opacity:.4;cursor:not-allowed}.tree-chevron{display:inline-flex;color:var(--fg-subtle);flex-shrink:0;transition:transform .15s}.tree-chevron-open{transform:rotate(90deg)}.tree-chevron-spacer{display:inline-block;flex-shrink:0;width:12px}.tree-icon{display:inline-flex;color:var(--fg-subtle);flex-shrink:0}.tree-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.tree-badge{flex-shrink:0;margin-left:auto}.tree-children{position:relative}.tree-children:before{content:"";position:absolute;background:var(--border);pointer-events:none;width:1px;top:0;bottom:0;left:1.0625rem}.ti-root{display:inline-flex;align-items: center;gap:.5rem}.ti-avatar{flex-shrink:0}.ti-avatar-img{object-fit:cover;border-radius:50%}.ti-avatar-fb{display:flex;background:var(--primary);color:var(--primary-fg);text-transform:uppercase;border-radius:50%;justify-content:center;align-items: center;font-weight:700}.ti-sm .ti-avatar-img,.ti-sm .ti-avatar-fb{width:24px;height:24px;font-size:.6rem}.ti-md .ti-avatar-img,.ti-md .ti-avatar-fb{width:32px;height:32px;font-size:.7rem}.ti-lg .ti-avatar-img,.ti-lg .ti-avatar-fb{width:40px;height:40px;font-size:.8rem}.ti-bubble{display:inline-flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;align-items: center;gap:3px}.ti-sm .ti-bubble{padding:6px 10px}.ti-md .ti-bubble{padding:8px 12px}.ti-lg .ti-bubble{padding:10px 14px}@keyframes ti-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.ti-dot{display:inline-block;background:var(--fg-muted);animation:ti-bounce 1.2s infinite ease-in-out;border-radius:50%}.ti-sm .ti-dot{width:5px;height:5px}.ti-md .ti-dot{width:6px;height:6px}.ti-lg .ti-dot{width:8px;height:8px}.ti-label{color:var(--fg-muted);font-size:.75rem;font-style:italic}.vnav{display:flex;font-family:var(--font);flex-direction:column;gap:.25rem;width:220px;padding:.5rem;transition:width .2s}.vnav-collapsed{width:52px}.vnav-section{display:flex;flex-direction:column}.vnav-section+.vnav-section{margin-top:.75rem}.vnav-section-title{text-transform:uppercase;letter-spacing:.07em;color:var(--fg-subtle);margin:0 0 .25rem;padding:0 .5rem;font-size:.6875rem;font-weight:600}.vnav-list{list-style:none;display:flex;flex-direction:column;gap:1px;margin:0;padding:0}.vnav-item{display:flex;border-radius:calc(var(--radius) - 1px);color:var(--fg-muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items: center;gap:.625rem;width:100%;padding:.5rem .625rem;transition:background .12s,color .12s;font-family:inherit;font-size:.9rem;font-weight:500}.vnav-item:hover:not(:disabled){background:var(--bg-hover);color:var(--fg)}.vnav-item-active{background:color-mix(in srgb,var(--primary)12%,transparent);color:var(--primary)}.vnav-item-active:hover{background:color-mix(in srgb,var(--primary)18%,transparent)}.vnav-item-disabled{opacity:.4;cursor:not-allowed}.vnav-icon{display:flex;flex-shrink:0}.vnav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.vnav-badge{background:var(--primary);color:var(--primary-fg);border-radius:9999px;padding:.0625rem .4rem;font-size:.6875rem;font-weight:700;line-height:1.4}.vmp{display:flex;border-radius:var(--radius);background:var(--bg-elevated);border:1px solid var(--border);align-items: center;gap:.625rem;min-width:220px;max-width:340px;padding:.5rem .625rem}.vmp-sent{background:color-mix(in srgb,var(--primary)12%,var(--bg-elevated));border-color:color-mix(in srgb,var(--primary)25%,var(--border))}.vmp-avatar{background:var(--bg-hover);cursor:pointer;display:flex;position:relative;color:var(--fg);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;padding:0;transition:opacity .15s}.vmp-avatar:hover{opacity:.85}.vmp-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.vmp-avatar-initials{font-size:.875rem;font-weight:600}.vmp-play-icon{display:flex;justify-content:center;align-items: center}.vmp-avatar-play-overlay{position:absolute;display:flex;color:#fff;opacity:0;background:#00000073;border-radius:50%;justify-content:center;align-items: center;transition:opacity .15s;inset:0}.vmp-avatar:hover .vmp-avatar-play-overlay{opacity:1}.vmp-body{display:flex;flex-direction:column;flex:1;gap:.3rem;min-width:0}.vmp-track{position:relative;cursor:pointer;display:flex;align-items: center;height:2.5rem}.vmp-track-bg{position:absolute;background:var(--border);border-radius:99px;height:3px;inset:50% 0 0;transform:translateY(-50%)}.vmp-track-fill{position:absolute;background:var(--primary);pointer-events:none;border-radius:99px;height:3px;transition:width .1s linear;top:50%;left:0;transform:translateY(-50%)}.vmp-thumb{position:absolute;background:var(--primary);pointer-events:none;border-radius:50%;width:12px;height:12px;transition:left .1s linear;top:50%;transform:translate(-50%,-50%)}.vmp-meta{display:flex;justify-content:space-between;align-items: center;gap:.5rem}.vmp-time{color:var(--fg-muted);font-variant-numeric:tabular-nums;min-width:2.5rem;font-size:.75rem}.vmp-speed{color:var(--fg-muted);background:var(--bg-hover);border:1px solid var(--border);cursor:pointer;border-radius:4px;padding:.1rem .35rem;transition:color .15s,border-color .15s;font-size:.7rem;font-weight:600;line-height:1.4}.vmp-speed:hover{color:var(--fg);border-color:var(--fg-muted)}.wf-root{display:flex;height:var(--wf-h,48px);user-select:none;align-items: center;gap:2px;width:100%}.wf-bar{height:var(--wf-bar-h,40%);background:var(--wf-color,var(--border));transform-origin:center;border-radius:2px;flex:1;transition:background .15s}.wf-bar-active{background:var(--wf-active,var(--primary))}@keyframes wf-pulse{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.25)}}.wf-playing .wf-bar-pulse{animation:wf-pulse .6s ease-in-out infinite;animation-delay:calc(var(--wf-bar-h)*.5s)}.wr-root{display:inline;font-family:var(--font);color:var(--fg)}.wr-static{color:inherit}.wr-word{display:inline-block;color:var(--primary);transition:opacity .3s,transform .3s;font-weight:700}.wr-visible{opacity:1;transform:translateY(0)}.wr-hidden{opacity:0;transform:translateY(-8px)}:root{--sidebar-width:260px;--header-height:56px;--font:Inter,system-ui,-apple-system,sans-serif;--font-mono:"Fira Code","Cascadia Code","JetBrains Mono",ui-monospace,monospace;--radius:.5rem;--hl-keyword:#c792ea;--hl-string:#c3e88d;--hl-comment:#546e7a;--hl-component:#82aaff;--hl-number:#f78c6c}:root,[data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--bg:#09090b;--bg-elevated:#111113;--bg-hover:#1c1c1f;--fg:#fafafa;--fg-muted:#a1a1aa;--fg-subtle:#71717a;--border:#27272a;--input-bg:#18181b;--primary:#fafafa;--primary-fg:#09090b;--primary-hover:#e4e4e7;--destructive:#ef4444;--ring:#52525b;--code-bg:#0d0d10}[data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--bg:#fff;--bg-elevated:#f4f4f5;--bg-hover:#e4e4e7;--fg:#09090b;--fg-muted:#52525b;--fg-subtle:#71717a;--border:#d4d4d8;--input-bg:#fff;--primary:#18181b;--primary-fg:#fafafa;--primary-hover:#27272a;--destructive:#dc2626;--ring:#a1a1aa;--code-bg:#1e1e2e;--hl-keyword:#c792ea;--hl-string:#c3e88d;--hl-comment:#637777;--hl-component:#82aaff;--hl-number:#f78c6c}[data-theme=sepia]{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--bg:#f8f0e3;--bg-elevated:#ede4d3;--bg-hover:#e0d6c4;--fg:#2c1a0e;--fg-muted:#6b4c30;--fg-subtle:#9c7a5a;--border:#c8b89a;--input-bg:#f2e9d8;--primary:#2c1a0e;--primary-fg:#f8f0e3;--primary-hover:#4a2f1a;--destructive:#c0392b;--ring:#9c7a5a;--code-bg:#1a130d}[data-theme=dim]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--bg:#1a1b26;--bg-elevated:#24283b;--bg-hover:#2e3348;--fg:#c0caf5;--fg-muted:#787c99;--fg-subtle:#565f89;--border:#292e42;--input-bg:#1f2335;--primary:#7aa2f7;--primary-fg:#1a1b26;--primary-hover:#89b4fa;--destructive:#f7768e;--ring:#3d59a1;--code-bg:#16161e}[data-theme=amoled]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--bg:#000;--bg-elevated:#0a0a0a;--bg-hover:#141414;--fg:#fff;--fg-muted:#999;--fg-subtle:#666;--border:#1f1f1f;--input-bg:#0d0d0d;--primary:#fff;--primary-fg:#000;--primary-hover:#e5e5e5;--destructive:#f44;--ring:#444;--code-bg:#050505}@media (prefers-color-scheme:light){[data-theme=system]{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--bg:#fff;--bg-elevated:#f4f4f5;--bg-hover:#e4e4e7;--fg:#09090b;--fg-muted:#52525b;--fg-subtle:#71717a;--border:#d4d4d8;--input-bg:#fff;--primary:#18181b;--primary-fg:#fafafa;--primary-hover:#27272a;--destructive:#dc2626;--ring:#a1a1aa;--code-bg:#1e1e2e}}@media (prefers-color-scheme:dark){[data-theme=system]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--bg:#09090b;--bg-elevated:#111113;--bg-hover:#1c1c1f;--fg:#fafafa;--fg-muted:#a1a1aa;--fg-subtle:#71717a;--border:#27272a;--input-bg:#18181b;--primary:#fafafa;--primary-fg:#09090b;--primary-hover:#e4e4e7;--destructive:#ef4444;--ring:#52525b;--code-bg:#0d0d10}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;min-height:100dvh;transition:background-color .2s,color .2s;line-height:1.5}a{color:inherit}button,input,textarea,select{font-family:inherit}img,svg{display:block;max-width:100%}@keyframes spin{to{transform:rotate(360deg)}}.portfolio{background:var(--bg);color:var(--fg);font-family:var(--font);min-height:100dvh}.nav{position:fixed;z-index:100;display:flex;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg)85%,transparent);backdrop-filter:blur(12px);justify-content:space-between;align-items: center;height:56px;padding:0 2rem;top:0;left:0;right:0}.nav-logo{letter-spacing:-.03em;color:var(--fg);text-decoration:none;font-size:1.1rem;font-weight:700}.nav-logo span{color:var(--fg-muted);font-weight:400}.nav-links{display:flex;align-items: center;gap:1.5rem}.nav-link{color:var(--fg-muted);text-decoration:none;transition:color .15s;font-size:.875rem}.nav-link:hover{color:var(--fg)}.page{max-width:720px;margin:0 auto;padding:0 2rem 6rem}.hero{padding:10rem 0 5rem}.hero-eyebrow{display:inline-block;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-subtle);margin-bottom:1.25rem;font-size:.75rem;font-weight:600}.hero h1{letter-spacing:-.05em;margin-bottom:1.25rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:800;line-height:1.05}.hero h1 em{color:var(--fg-muted);font-style:normal}.hero-sub{color:var(--fg-muted);max-width:520px;margin-bottom:2rem;font-size:1.125rem;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}a.btn{text-decoration:none;cursor:pointer}.section{border-top:1px solid var(--border);padding:4rem 0}.section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--fg-subtle);margin-bottom:2rem;font-size:.7rem;font-weight:700}.about-text{color:var(--fg-muted);font-size:1rem;line-height:1.75}.about-text+.about-text{margin-top:1rem}.projects{display:flex;background:var(--border);border-radius:calc(var(--radius) + 2px);overflow:hidden;flex-direction:column;gap:1px}.project-card-link{text-decoration:none;color:inherit;display:block}.project-card-link .card{border:none;border-radius:0;transition:background .15s}.project-card-link:hover .card{background:var(--bg-hover)}.project-header{display:flex;justify-content:space-between;align-items: center;gap:1rem;margin-bottom:.5rem}.project-name{font-size:.9375rem;font-weight:600;font-family:var(--font-mono);color:var(--fg)}.project-badges{display:flex;flex-wrap:wrap;gap:.375rem}.project-desc{color:var(--fg-muted);margin-bottom:.5rem;font-size:.875rem;line-height:1.6}.project-arrow{color:var(--fg-subtle);display:block;text-align:right;transition:transform .15s,color .15s;font-size:1rem}.project-card-link:hover .project-arrow{color:var(--fg);transform:translate(2px,-2px)}.stack-grid{display:flex;flex-wrap:wrap;gap:.5rem}.links-row{display:flex;flex-wrap:wrap;gap:.75rem}.footer{border-top:1px solid var(--border);text-align:center;color:var(--fg-subtle);padding:2rem;font-size:.8125rem}@media (max-width:600px){.nav{padding:0 1.25rem}.page{padding:0 1.25rem 5rem}.nav-links{gap:1rem}}.portfolio{background:var(--bg);color:var(--fg);font-family:var(--font);min-height:100dvh}.nav{position:fixed;z-index:100;display:flex;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg)85%,transparent);backdrop-filter:blur(12px);justify-content:space-between;align-items: center;height:56px;padding:0 2rem;top:0;left:0;right:0}.nav-logo{letter-spacing:-.03em;color:var(--fg);text-decoration:none;font-size:1.1rem;font-weight:700}.nav-logo span{color:var(--fg-muted);font-weight:400}.nav-links{display:flex;align-items: center;gap:1.5rem}.nav-link{color:var(--fg-muted);text-decoration:none;transition:color .15s;font-size:.875rem}.nav-link:hover{color:var(--fg)}.theme-btn{border:1px solid var(--border);border-radius:var(--radius);color:var(--fg-muted);cursor:pointer;background:0 0;padding:.35rem .55rem;transition:border-color .15s,color .15s;font-size:.85rem;line-height:1}.theme-btn:hover{border-color:var(--fg-muted);color:var(--fg)}.page{max-width:720px;margin:0 auto;padding:0 2rem 6rem}.hero{padding:10rem 0 5rem}.hero-eyebrow{display:inline-block;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-subtle);margin-bottom:1.25rem;font-size:.75rem;font-weight:600}.hero h1{letter-spacing:-.05em;margin-bottom:1.25rem;font-size:clamp(2.5rem,6vw,4rem);font-weight:800;line-height:1.05}.hero h1 em{color:var(--fg-muted);font-style:normal}.hero-sub{color:var(--fg-muted);max-width:520px;margin-bottom:2rem;font-size:1.125rem;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn{display:inline-flex;border-radius:var(--radius);text-decoration:none;cursor:pointer;border:1px solid #0000;align-items: center;gap:.4rem;padding:.55rem 1.1rem;transition:background .15s,color .15s,border-color .15s;font-size:.875rem;font-weight:500}.btn-primary{background:var(--primary);color:var(--primary-fg);border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn-outline{color:var(--fg);border-color:var(--border);background:0 0}.btn-outline:hover{background:var(--bg-hover)}.section{border-top:1px solid var(--border);padding:4rem 0}.section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--fg-subtle);margin-bottom:2rem;font-size:.7rem;font-weight:700}.about-text{color:var(--fg-muted);font-size:1rem;line-height:1.75}.about-text+.about-text{margin-top:1rem}.projects{display:flex;background:var(--border);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);overflow:hidden;flex-direction:column;gap:1px}.project-card{background:var(--bg-elevated);text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;transition:background .15s}.project-card:hover{background:var(--bg-hover)}.project-header{display:flex;justify-content:space-between;align-items: center;gap:1rem}.project-name{font-size:.9375rem;font-weight:600;font-family:var(--font-mono);color:var(--fg)}.project-badges{display:flex;flex-wrap:wrap;gap:.375rem}.badge{border:1px solid var(--border);color:var(--fg-subtle);background:var(--bg);letter-spacing:.02em;border-radius:999px;padding:.2rem .5rem;font-size:.7rem;font-weight:600}.project-desc{color:var(--fg-muted);font-size:.875rem;line-height:1.6}.project-arrow{color:var(--fg-subtle);align-self: flex-end;transition:transform .15s,color .15s;font-size:1rem}.project-card:hover .project-arrow{color:var(--fg);transform:translate(2px,-2px)}.stack-grid{display:flex;flex-wrap:wrap;gap:.5rem}.stack-chip{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg-muted);font-size:.8125rem;font-family:var(--font-mono);padding:.3rem .7rem}.links-row{display:flex;flex-wrap:wrap;gap:.75rem}.footer{border-top:1px solid var(--border);text-align:center;color:var(--fg-subtle);padding:2rem;font-size:.8125rem}@media (max-width:600px){.nav{padding:0 1.25rem}.page{padding:0 1.25rem 5rem}.nav-links{gap:1rem}}
