UNPKG

@casoon/dragonfly

Version:

Modular, lightweight CSS framework and design system for modern web projects. Optimized for Astro JS, LightningCSS and Container Queries with @layer-based architecture and comprehensive accessibility.

1 lines 293 kB
@layer components{.input{background-color:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-md,.375rem);color:var(--color-gray-900,#111827);font-size:var(--font-size-base,1rem);padding:var(--space-2)var(--space-3);transition:border-color var(--transition-fast,.15s ease),background-color var(--transition-fast,.15s ease);width:100%;display:block;&:focus{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary,#3b82f6)50,transparent);outline:none}&.invalid{background-color:color-mix(in srgb,var(--color-error,#ef4444)5%,white);border-color:var(--color-error,#ef4444)}&:disabled{background-color:var(--color-gray-100,#f3f4f6);color:var(--color-gray-500);cursor:not-allowed}&:read-only{background-color:var(--color-gray-50)}&.primary{border-color:var(--color-primary,#3b82f6)}&.success{border-color:var(--color-success,#10b981)}&.warning{border-color:var(--color-warning,#f59e0b)}&.danger{border-color:var(--color-danger)}&.sm{font-size:var(--font-size-sm,.875rem);padding:var(--space-1)var(--space-2)}&.lg{font-size:var(--font-size-lg);padding:var(--space-3)var(--space-4)}}.input-wrapper{align-items:center;display:flex;position:relative;& .input{padding-left:var(--space-8)}& .input-icon{color:var(--color-gray-400);left:var(--space-3);pointer-events:none;position:absolute}}.textarea{background-color:var(--color-white,#fff);border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-md,.375rem);color:var(--color-gray-900,#111827);font-size:var(--font-size-base,1rem);min-height:6rem;padding:var(--space-3);resize:vertical;transition:border-color var(--transition-fast,.15s ease),box-shadow var(--transition-fast,.15s ease);width:100%;&:focus{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary,#3b82f6)50,transparent);outline:none}&:disabled{background-color:var(--color-gray-100,#f3f4f6);color:var(--color-gray-500);cursor:not-allowed;opacity:.7}&.sm{font-size:var(--font-size-sm,.875rem);min-height:4rem;padding:var(--space-2)}&.lg{font-size:var(--font-size-lg);min-height:8rem;padding:var(--space-4)}&.error{background-color:color-mix(in srgb,var(--color-error,#ef4444)3%,var(--color-white,#fff));border-color:var(--color-error,#ef4444);&:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-error,#ef4444)30,transparent)}}&.success{background-color:color-mix(in srgb,var(--color-success,#10b981)3%,var(--color-white,#fff));border-color:var(--color-success,#10b981);&:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success,#10b981)30,transparent)}}&.readonly{background-color:var(--color-gray-50);cursor:default}&.auto-resize{overflow-y:hidden}}.textarea-container{width:100%;position:relative;& .counter{bottom:var(--space-2);color:var(--color-gray-500);font-size:var(--font-size-xs);pointer-events:none;right:var(--space-3);position:absolute}& .textarea{padding-bottom:calc(var(--space-3) + 1.5rem)}}.select{appearance:none;background-color:var(--color-white,#fff);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' fill='none' stroke='%23666' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right var(--space-3)center;border:1px solid var(--color-gray-300,#d1d5db);border-radius:var(--radius-md,.375rem);color:var(--color-gray-900,#111827);cursor:pointer;font-size:var(--font-size-base,1rem);padding:var(--space-2)var(--space-3);transition:border-color var(--transition-fast,.15s ease),box-shadow var(--transition-fast,.15s ease);background-repeat:no-repeat;background-size:1rem;width:100%;display:block;&:focus{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary,#3b82f6)50,transparent);outline:none}&:disabled{background-color:var(--color-gray-100,#f3f4f6);color:var(--color-gray-500);cursor:not-allowed;opacity:.7}&.sm{background-position:right var(--space-2)center;font-size:var(--font-size-sm,.875rem);padding:var(--space-1)var(--space-2);background-size:0% .875rem}&.lg{background-position:right var(--space-4)center;font-size:var(--font-size-lg);padding:var(--space-3)var(--space-4);background-size:1% .25rem}&.error{background-color:color-mix(in srgb,var(--color-error,#ef4444)3%,var(--color-white,#fff));border-color:var(--color-error,#ef4444);&:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-error,#ef4444)30,transparent)}}&.success{background-color:color-mix(in srgb,var(--color-success,#10b981)3%,var(--color-white,#fff));border-color:var(--color-success,#10b981);&:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success,#10b981)30,transparent)}}&[multiple]{padding:var(--space-1);background-image:none;& option{border-radius:var(--radius-sm,.125rem);padding:var(--space-1)var(--space-2);&:checked{background-color:color-mix(in srgb,var(--color-primary,#3b82f6)15%,transparent)}}}& optgroup{color:var(--color-gray-700);font-weight:var(--font-weight-medium,500)}}.radio{cursor:pointer;font-size:var(--font-size-sm,.875rem);align-items:center;gap:var(--space-2);display:inline-flex;& input[type=radio]{appearance:none;background-color:var(--color-white,#fff);border:2px solid var(--color-gray-400);height:1rem;transition:all var(--transition-fast,.15s ease);border-radius:9px;width:1rem;position:relative;&:checked{background-color:var(--color-primary,#3b82f6);border-color:var(--color-primary,#3b82f6);&:after{content:"";height:0%.375rem;width:0%.375rem;background-color:#fff;border-radius:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}}&:focus-visible{outline:2px solid var(--color-primary,#3b82f6);outline-offset:2px}&:disabled{background-color:var(--color-gray-100,#f3f4f6);border-color:var(--color-gray-300,#d1d5db);cursor:not-allowed;&~.label{color:var(--color-gray-400);cursor:not-allowed}}}&.sm{font-size:var(--font-size-xs);& input[type=radio]{height:0%.875rem;width:0%.875rem}}&.lg{font-size:var(--font-size-base,1rem);& input[type=radio]{height:1%.25rem;width:1%.25rem;&:checked:after{height:0%.5rem;width:0%.5rem}}}}.radio-group{gap:var(--space-2);flex-direction:column;display:flex;&.horizontal{flex-flow:wrap;align-items:center}}:root{--form-gap:var(--spacing-4);--form-padding:var(--spacing-4);--form-padding-y:var(--spacing-2);--form-padding-x:var(--spacing-3);--form-font-size:var(--font-size-base,1rem);--form-line-height:var(--line-height-base,1.5);--form-color:var(--color-text-primary);--form-background:var(--color-background);--form-border-color:var(--color-border,#e5e7eb);--form-border-radius:var(--border-radius-md);--form-box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);--form-transition:all var(--transition-normal);--input-padding-y:var(--spacing-2);--input-padding-x:var(--spacing-3);--input-height:2.5rem;--input-font-size:var(--font-size-base,1rem);--input-bg:var(--color-background);--input-color:var(--color-text-primary);--input-border-color:var(--color-border,#e5e7eb);--input-border-width:1px;--input-border-radius:var(--border-radius-md);--select-padding-right:2.5rem;--select-indicator-padding:1.75rem;--select-indicator-size:.75rem;--select-indicator-color:var(--color-text-secondary);--control-indicator-size:1.25rem;--control-indicator-bg:var(--color-background);--control-indicator-border-color:var(--color-border,#e5e7eb);--control-indicator-checked-bg:var(--color-primary-500);--control-indicator-checked-border-color:var(--color-primary-500);--control-indicator-checked-color:var(--color-white,#fff);color-scheme:light dark;--form-disabled-bg:var(--color-gray-100,#f3f4f6);--form-group-text-bg:var(--color-gray-100,#f3f4f6);--form-range-bg:var(--color-gray-200);--form-file-button-bg:var(--color-gray-200);--form-file-button-hover-bg:var(--color-gray-300,#d1d5db);--form-button-bg:var(--color-gray-200);--form-button-border:var(--color-gray-300,#d1d5db);--form-button-hover-bg:var(--color-gray-300,#d1d5db);@media (prefers-color-scheme:dark){--form-disabled-bg:var(--color-gray-800);--form-group-text-bg:var(--color-gray-700);--form-range-bg:var(--color-gray-700);--form-file-button-bg:var(--color-gray-700);--form-file-button-hover-bg:var(--color-gray-600);--form-button-bg:var(--color-gray-700);--form-button-border:var(--color-gray-600);--form-button-hover-bg:var(--color-gray-600)}}@supports not selector(:has(*)){.form-group.invalid{border-left:4px solid var(--color-error,#ef4444);padding-left:var(--spacing-3)}[dir=rtl] .form-group.invalid{border-left:none;border-right:4px solid var(--color-error,#ef4444);padding-left:0%;padding-right:var(--spacing-3)}.form-group.valid{border-left:4px solid var(--color-success,#10b981);padding-left:var(--spacing-3)}[dir=rtl] .form-group.valid{border-left:none;border-right:4px solid var(--color-success,#10b981);padding-left:0%;padding-right:var(--spacing-3)}}.input-group{border:var(--input-border-width,1px)solid var(--color-border,var(--color-neutral-300,#d1d5db));border-radius:var(--radius-input,var(--radius-md,.375rem));align-items:stretch;width:100%;display:flex;overflow:hidden;&>*{font-size:var(--text-sm,var(--font-size-sm,.875rem));padding:var(--space-2,.5rem)var(--space-3,.75rem);border:none;outline:none}& .addon{background-color:var(--color-neutral-100,#f3f4f6);color:var(--color-neutral-700,#374151);font-size:var(--text-sm,var(--font-size-sm,.875rem));padding:0 var(--space-3,.75rem);white-space:nowrap;justify-content:center;align-items:center;display:flex}& .icon{color:var(--color-neutral-500,#6b7280);background-color:#0000;justify-content:center;align-items:center;width:2.5rem;display:flex;&:hover{color:var(--color-neutral-700,#374151);transition:color var(--transition-duration-fast,.15s)var(--transition-timing-ease,ease)}}& .input{background-color:var(--color-background,#fff);color:var(--color-text,var(--color-neutral-900,#111827));height:var(--input-height,2.5rem);min-width:0%;padding:var(--input-padding,var(--space-3,.75rem));flex:1;&:focus{box-shadow:none}&::placeholder{color:var(--color-neutral-400,#9ca3af)}}& .select{background-color:var(--color-background,#fff);color:var(--color-text,var(--color-neutral-900,#111827));height:var(--input-height,2.5rem);min-width:0%;padding:var(--input-padding,var(--space-3,.75rem));flex:1}& .button{padding:var(--space-2,.5rem)var(--space-4,1rem);border-radius:0;justify-content:center;align-items:center;display:flex;&:first-child{border-bottom-left-radius:var(--radius-input,var(--radius-md,.375rem));border-top-left-radius:var(--radius-input,var(--radius-md,.375rem))}&:last-child{border-bottom-right-radius:var(--radius-input,var(--radius-md,.375rem));border-top-right-radius:var(--radius-input,var(--radius-md,.375rem))}}&.sm{&>*{font-size:var(--text-xs,var(--font-size-xs,.75rem));padding:var(--space-1,.25rem)var(--space-2,.5rem)}& .input,& .select{height:2rem;padding:var(--space-2,.5rem)}& .button{padding:var(--space-1,.25rem)var(--space-3,.75rem)}}&.lg{&>*{font-size:var(--text-base,var(--font-size-base,1rem));padding:var(--space-3,.75rem)var(--space-4,1rem)}& .input,& .select{height:3rem;padding:var(--space-4,1rem)}& .button{padding:var(--space-3,.75rem)var(--space-5,1.25rem)}}&:focus-within{border-color:var(--color-primary-500,#3b82f6);box-shadow:0 0 0 2px var(--color-primary-200,#bfdbfe)}&.error{border-color:var(--color-error-500,#ef4444);&:focus-within{border-color:var(--color-error-500,#ef4444);box-shadow:0 0 0 2px var(--color-error-200,#fecaca)}}&.success{border-color:var(--color-success-500,#10b981);&:focus-within{border-color:var(--color-success-500,#10b981);box-shadow:0 0 0 2px var(--color-success-200,#a7f3d0)}}&.warning{border-color:var(--color-warning-500,#f59e0b);&:focus-within{border-color:var(--color-warning-500,#f59e0b);box-shadow:0 0 0 2px var(--color-warning-200,#fde68a)}}&.disabled{background-color:var(--color-neutral-100,#f3f4f6);border-color:var(--color-neutral-200,#e5e7eb);color:var(--color-neutral-400,#9ca3af);cursor:not-allowed;& .input,& .select,& .button{color:var(--color-neutral-400,#9ca3af);cursor:not-allowed;background-color:#0000}}}.main{color:var(--main-color);font-size:var(--main-font-size);line-height:var(--main-line-height,1.6);max-width:var(--main-max-width,1200px);padding:var(--main-padding);width:100%;margin:0 auto;container-type:inline-size;& h1,& h2,& h3,& h4,& h5,& h6{color:var(--main-heading-color);font-weight:var(--font-semibold,600);line-height:1%.2;margin:0 0 var(--space-4)0;&:first-child{margin-top:0%}&:last-child{margin-bottom:0%}}& h1{font-size:var(--text-4xl);font-weight:var(--font-bold);margin-bottom:var(--space-6);@container (width<=768px){font-size:var(--text-3xl)}@container (width<=480px){font-size:var(--text-2xl)}}& h2{font-size:var(--text-3xl);margin-bottom:var(--space-5);margin-top:var(--space-8);@container (width<=768px){font-size:var(--text-2xl)}@container (width<=480px){font-size:var(--text-xl)}}& h3{font-size:var(--text-2xl);margin-bottom:var(--space-4);margin-top:var(--space-6);@container (width<=768px){font-size:var(--text-xl)}@container (width<=480px){font-size:var(--text-lg)}}& h4{font-size:var(--text-xl);margin-bottom:var(--space-3);margin-top:var(--space-5);@container (width<=768px){font-size:var(--text-lg)}}& h5{font-size:var(--text-lg);margin-bottom:var(--space-3);margin-top:var(--space-4);@container (width<=768px){font-size:var(--text-base)}}& h6{font-size:var(--text-base);margin-bottom:var(--space-2);margin-top:var(--space-4);text-transform:uppercase;@container (width<=768px){font-size:var(--text-sm,.875rem)}}& p{margin:0 0 var(--main-paragraph-gap)0;&:last-child{margin-bottom:0%}&.lead{font-size:var(--text-lg);font-weight:var(--font-medium,500);margin-bottom:var(--space-6);@container (width<=768px){font-size:var(--text-base)}}&.small{font-size:var(--text-sm,.875rem);@container (width<=768px){font-size:var(--text-xs,.75rem)}}}& a{color:var(--main-link-color);text-underline-offset:2px;text-decoration:underline #0000;transition:all .2s;&:hover,&:focus{color:var(--main-link-hover);text-decoration-color:currentColor}&:focus{outline:2px solid var(--main-link-color);outline-offset:2px}}& ul,& ol{margin:0 0 var(--main-paragraph-gap)0;padding-left:var(--space-6);& li{margin-bottom:var(--main-list-gap);&:last-child{margin-bottom:0%}& ul,& ol{margin-bottom:0%;margin-top:var(--main-list-gap)}}&:last-child{margin-bottom:0%}}& ul{list-style-type:disc;& ul{list-style-type:circle;& ul{list-style-type:square}}}& ol{list-style-type:decimal;& ol{list-style-type:lower-alpha;& ol{list-style-type:lower-roman}}}& dl{margin:0 0 var(--main-paragraph-gap)0;& dt{font-weight:var(--font-semibold,600);margin-bottom:var(--space-1);margin-top:var(--space-3);&:first-child{margin-top:0%}}& dd{margin-bottom:var(--space-2);margin-left:var(--space-4);&:last-child{margin-bottom:0%}}}& blockquote{border-left:4px solid var(--color-primary-200);font-size:var(--text-lg);margin:var(--space-6)0;padding:var(--space-4)var(--space-6);font-style:italic;@container (width<=768px){font-size:var(--text-base);margin:var(--space-4)0;padding:var(--space-3)var(--space-4)}& p:last-child{margin-bottom:0%}& cite{font-size:var(--text-sm,.875rem);font-style:normal;font-weight:var(--font-medium,500);margin-top:var(--space-2);display:block;&:before{content:"— "}}}& code{background-color:var(--color-neutral-100,#f3f4f6);border-radius:var(--radius-sm,.125rem);font-family:var(--font-mono);padding:.125em 10.25em;font-size:.875em}& pre{background-color:var(--color-neutral-900,#111827);border-radius:var(--radius-md,.375rem);color:var(--color-neutral-100,#f3f4f6);font-family:var(--font-mono);font-size:var(--text-sm,.875rem);margin:var(--space-6)0;padding:var(--space-4);line-height:1.5;overflow-x:auto;@container (width<=768px){font-size:var(--text-xs,.75rem);margin:var(--space-4)0;padding:var(--space-3)}& code{color:inherit;font-size:inherit;background:0 0;padding:0}}& table{border-collapse:collapse;margin:var(--space-6)0;width:100%;@container (width<=768px){font-size:var(--text-sm,.875rem);margin:var(--space-4)0}& th,& td{border:1px solid var(--color-neutral-200,#e5e7eb);padding:var(--space-3);text-align:left;@container (width<=768px){padding:var(--space-2)}}& th{background-color:var(--color-neutral-50);font-weight:var(--font-semibold,600)}& tbody tr:nth-child(2n){background-color:var(--color-neutral-25)}}& img{max-width:100%;height:auto;&.rounded{border-radius:var(--radius-md,.375rem)}&.shadow{box-shadow:var(--shadow-lg)}}& figure{margin:var(--space-6)0;@container (width<=768px){margin:var(--space-4)0}& img{margin:0 auto;display:block}& figcaption{color:var(--color-neutral-600);font-size:var(--text-sm,.875rem);margin-top:var(--space-2);text-align:center;font-style:italic;@container (width<=768px){font-size:var(--text-xs,.75rem)}}}& hr{border:none;border-top:1px solid var(--color-neutral-200,#e5e7eb);margin:var(--main-section-gap)0;@container (width<=768px){margin:var(--space-6)0}}&.narrow{max-width:var(--main-max-width-narrow,768px)}&.wide{max-width:var(--main-max-width-wide,1440px)}&.full{max-width:none}&.centered{text-align:center}&.compact{padding:var(--main-padding-compact);& h1{margin-bottom:var(--space-4)}& h2{margin-bottom:var(--space-3);margin-top:var(--space-6)}& h3{margin-bottom:var(--space-3);margin-top:var(--space-4)}& p{margin-bottom:var(--space-3)}& blockquote,& pre,& table,& figure{margin:var(--space-4)0}& hr{margin:var(--space-6)0}}&.spacious{padding:var(--main-padding-spacious);& h1{margin-bottom:var(--space-8)}& h2{margin-bottom:var(--space-6);margin-top:var(--space-12)}& h3{margin-bottom:var(--space-5);margin-top:var(--space-8)}& p{margin-bottom:var(--space-5)}& blockquote,& pre,& table,& figure{margin:var(--space-8)0}& hr{margin:var(--space-12)0}}&.no-padding{padding:0}@container (width<=768px){font-size:var(--text-sm,.875rem);padding:var(--space-4)var(--space-3)&.compact{padding:var(--space-3)var(--space-2)}&.spacious{padding:var(--space-6)var(--space-4)}}@container (width<=480px){font-size:var(--text-sm,.875rem);padding:var(--space-3)var(--space-2)& ul,& ol{padding-left:var(--space-4)}& blockquote{padding:var(--space-2)var(--space-3)}& table{font-size:var(--text-xs,.75rem);& th,& td{padding:var(--space-1)}}}}@media (prefers-color-scheme:dark){.main{--main-color:var(--color-neutral-100,#f3f4f6);--main-heading-color:var(--color-neutral-50);--main-link-color:var(--color-primary-400);--main-link-hover:var(--color-primary-300);& code{background-color:var(--color-neutral-800,#1f2937);color:var(--color-neutral-200,#e5e7eb)}& table{& th,& td{border-color:var(--color-neutral-700,#374151)}& th{background-color:var(--color-neutral-800,#1f2937)}& tbody tr:nth-child(2n){background-color:var(--color-neutral-900,#111827)}}& blockquote{border-left-color:var(--color-primary-600,#2563eb)}& hr{border-top-color:var(--color-neutral-700,#374151)}& figure figcaption{color:var(--color-neutral-400,#9ca3af)}}}@supports not (container-type:inline-size){@media (width<=768px){.main{font-size:var(--text-sm,.875rem);padding:var(--space-4)var(--space-3);& h1{font-size:var(--text-3xl)}& h2{font-size:var(--text-2xl)}& h3{font-size:var(--text-xl)}& h4{font-size:var(--text-lg)}& h5{font-size:var(--text-base)}& h6{font-size:var(--text-sm,.875rem)}& p.lead{font-size:var(--text-base)}& p.small{font-size:var(--text-xs,.75rem)}& blockquote{font-size:var(--text-base);margin:var(--space-4)0;padding:var(--space-3)var(--space-4)}& pre{font-size:var(--text-xs,.75rem);margin:var(--space-4)0;padding:var(--space-3)}& table{font-size:var(--text-sm,.875rem);margin:var(--space-4)0;& th,& td{padding:var(--space-2)}}& figure{margin:var(--space-4)0;& figcaption{font-size:var(--text-xs,.75rem)}}& hr{margin:var(--space-6)0}&.compact{padding:var(--space-3)var(--space-2)}&.spacious{padding:var(--space-6)var(--space-4)}}}@media (width<=480px){.main{font-size:var(--text-sm,.875rem);padding:var(--space-3)var(--space-2);& h1{font-size:var(--text-2xl)}& h2{font-size:var(--text-xl)}& h3{font-size:var(--text-lg)}& ul,& ol{padding-left:var(--space-4)}& blockquote{padding:var(--space-2)var(--space-3)}& table{font-size:var(--text-xs,.75rem);& th,& td{padding:var(--space-1)}}}}}@media print{.main{max-width:none;padding:0;font-size:12pt;color:var(--color-neutral-900,#111827)!important;& h1,& h2,& h3,& h4,& h5,& h6{page-break-after:avoid;color:var(--color-neutral-900,#111827)!important}& p,& li{orphans:3;widows:3}& blockquote,& pre,& table,& figure{page-break-inside:avoid}& a{text-decoration:underline;color:var(--color-neutral-900,#111827)!important}& pre{border:1px solid var(--color-neutral-300,#d1d5db);background:var(--color-neutral-100,#f3f4f6)!important;color:var(--color-neutral-900,#111827)!important}& code{background:var(--color-neutral-100,#f3f4f6)!important;color:var(--color-neutral-900,#111827)!important}}}@media (prefers-contrast:more){.main{& a{text-decoration:underline}& table{& th,& td{border:2px solid}}& blockquote{border-left-width:6px}& code{border:1px solid}}}@media (prefers-reduced-motion:reduce){.main{& a{transition:none}}}.header,.header-standard,.header-center,.header-split,.header-stacked,.header-left,.header-bottom-bar{background-color:var(--header-bg);border-bottom:1px solid var(--header-border);box-shadow:var(--header-shadow);color:var(--header-text);font-size:var(--header-font-size);font-weight:var(--header-font-weight);line-height:var(--header-line-height,1.5);min-height:var(--header-height,4rem);width:100%;z-index:var(--header-z-index);position:relative;container-type:inline-size;&.sticky{position:sticky;top:0%}&.transparent{box-shadow:none;background-color:#0000;border-bottom:none}&.compact{min-height:var(--header-height-compact,3rem)}&.large{min-height:var(--header-height-large,5rem)}}.header{align-items:center;gap:var(--space-4);grid-column:span 12;grid-template-columns:subgrid;padding-block:var(--space-4);grid-template-rows:auto;display:grid;& .logo{grid-column:1/span 3;align-items:center;display:flex;& img{max-height:var(--logo-max-height,2rem);width:auto}}& .nav{gap:var(--space-4);grid-column:4/span 6;justify-content:center;display:flex;& .links{gap:var(--space-4);margin:0;padding:0;list-style:none;display:flex}& .link{color:var(--nav-link-color);font-weight:var(--font-medium,500);padding:var(--space-2);transition:var(--menu-transition);text-decoration:none;display:inline-block;&:hover{color:var(--nav-link-color-hover)}&.active{color:var(--nav-link-color-active);font-weight:var(--font-semibold,600)}}&.mobile-hidden{@container (width<=768px){display:none}}}& .actions{gap:var(--space-2);grid-column:10/span 3;justify-content:flex-end;display:flex}& .search{max-width:30%0px;width:100%;display:flex;& .input{flex:1}}& .toggle{display:none;@container (width<=768px){cursor:pointer;background:0 0;border:none;grid-column:12;display:block}}&.fixed{background-color:var(--header-bg);box-shadow:var(--header-shadow);z-index:var(--header-z-index);position:fixed;top:0%;left:0%;right:0%}&.primary{background-color:var(--color-primary,#3b82f6);color:#fff;& .link{color:var(--color-primary-100,#dbeafe);&:hover{color:var(--color-white,#fff)}}}&.light{background-color:var(--color-white,#fff)}&.dark{background-color:var(--color-neutral-900,#111827);& .link{color:var(--color-neutral-300,#d1d5db);&:hover{color:var(--color-white,#fff)}}}@container (width<=768px){grid-template-columns:repeat(12,1fr)& .logo{grid-column:1/span 6}& .nav{display:none}& .actions{grid-column:7/span 5}}}.header-standard,.header-center,.header-split,.header-stacked,.header-left,.header-bottom-bar{& .header-content{max-width:var(--header-max-width,1280px);padding:var(--header-padding);align-items:center;width:100%;margin:0 auto;display:flex}}.header-logo{flex-shrink:0;align-items:center;display:flex;& img,& svg{height:auto;max-height:var(--logo-max-height,2rem);max-width:var(--logo-max-width,8rem);width:auto}}.header-nav{& ul{align-items:center;gap:var(--menu-gap);margin:0;padding:0;list-style:none;display:flex}& li{position:relative}& a{border-radius:var(--radius-md,.375rem);color:var(--nav-link-color);font-weight:var(--font-medium,500);align-items:center;gap:var(--space-1);padding:var(--menu-item-padding-y)var(--menu-item-padding-x);transition:var(--menu-transition);text-decoration:none;display:flex;&:hover{background-color:var(--nav-link-bg-hover);color:var(--nav-link-color-hover)}&.active{background-color:var(--nav-link-bg-active);color:var(--nav-link-color-active)}}& .has-dropdown>a:after{content:"▼";font-size:var(--text-xs,.75rem);margin-left:var(--space-1);transition:transform .2s}& .has-dropdown:hover>a:after,& .has-dropdown.open>a:after{transform:rotate(180deg)}& .dropdown{background-color:var(--mobile-menu-bg);border-radius:var(--mobile-menu-border-radius);box-shadow:var(--mobile-menu-shadow);min-width:20%0px;opacity:0;padding:var(--space-2);transition:var(--menu-transition);visibility:hidden;z-index:var(--mobile-menu-z-index);position:absolute;top:100%;left:0%;transform:translateY(-10px)}& .has-dropdown:hover .dropdown,& .has-dropdown.open .dropdown{opacity:1;visibility:visible;transform:translateY(0%)}& .dropdown ul{flex-direction:column;gap:0}& .dropdown a{border-radius:var(--radius-sm,.125rem);font-size:var(--text-sm,.875rem);padding:var(--space-2)var(--space-3);width:100%}& .dropdown .has-dropdown>a:after{content:"▶";margin-left:auto}& .dropdown .dropdown{top:0%;left:100%}& .has-megamenu .dropdown{gap:var(--space-6);max-width:9%0vw;min-width:60%0px;padding:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));width:max-content;display:grid;left:50%;transform:translate(-50%)translateY(-10px)}& .has-megamenu:hover .dropdown,& .has-megamenu.open .dropdown{transform:translate(-50%)translateY(0)}& .megamenu-section{gap:var(--space-3);flex-direction:column;display:flex}& .megamenu-title{color:var(--header-text);font-size:var(--text-sm,.875rem);font-weight:var(--font-semibold,600);margin-bottom:var(--space-2);text-transform:uppercase}& .megamenu-section ul{gap:var(--space-1);flex-direction:column}& .megamenu-section a{font-size:var(--text-sm,.875rem);padding:var(--space-1)var(--space-2)}}.header-toggle{cursor:pointer;height:var(--header-hamburger-size,1.5rem);width:var(--header-hamburger-size,1.5rem);background:0 0;border:none;padding:0;display:none;@container (width<=768px){display:block}}.header-mobile{background-color:var(--mobile-menu-bg);border-top:1px solid var(--header-border);padding:var(--space-4);z-index:var(--mobile-menu-z-index);display:none;position:absolute;top:100%;left:0%;right:0%;@container (width<=768px){display:block}}.header-standard{& .header-content{justify-content:space-between}}.header-center{& .header-content{gap:var(--space-4);flex-direction:column}& .header-logo{order:1}& .header-nav{order:2}& .header-actions{order:3;margin-left:0%}}.header-split{& .header-content{justify-content:space-between}& .header-nav:first-of-type{order:1}& .header-logo{order:2}& .header-nav:last-of-type{order:3}}.header-stacked{& .header-content{gap:var(--space-4);text-align:center;flex-direction:column}& .header-nav{margin-left:0%}&.inline{& .header-content{align-items:center;gap:var(--space-6);flex-direction:row}& .header-nav{margin-left:auto}}}.header-left{& .header-content{justify-content:flex-start;gap:var(--space-6)}}.header-bottom-bar{& .header-top{border-bottom:1px solid var(--header-border);padding:var(--space-2)var(--space-6);justify-content:space-between;align-items:center;display:flex}& .header-bottom{padding:var(--space-4)var(--space-6)}& .header-nav{justify-content:center;width:100%}&.transparent .header-bottom{background-color:var(--header-bg);border-top:1px solid var(--header-border)}}@container (width<=1024px){.header-center,.header-split,.header-stacked{& .header-content{gap:var(--space-4);flex-direction:column}& .header-nav{margin-left:0%}& .header-toggle{display:block}& .header-logo img,& .header-logo svg{max-height:3%2px}& .header{min-height:var(--header-height-compact,3rem)}& .header-bottom-bar .header-bottom{padding:var(--space-3)var(--space-4)}& .header-nav .dropdown{visibility:visible;position:static;transform:none}}}@container (width<=768px){.header-center,.header-split,.header-stacked{& .header-content{gap:var(--space-3);flex-direction:column}& .header-nav{display:none}& .header-toggle{display:block}& .header-logo img,& .header-logo svg{max-height:2%8px}& .header{min-height:var(--header-height-compact,3rem)}& .header-bottom-bar .header-bottom{padding:var(--space-2)var(--space-3)}}}.footer,.footer-simple,.footer-columns,.footer-stacked,.footer-split,.footer-minimal{background-color:var(--footer-bg);color:var(--footer-text);font-size:var(--footer-font-size);line-height:var(--footer-line-height,1.5);padding:var(--footer-padding);width:100%;container-type:inline-size;& h1,& h2,& h3,& h4,& h5,& h6,& .heading{color:var(--footer-heading);font-size:var(--footer-heading-size);font-weight:var(--footer-heading-weight);margin:0 0 var(--footer-section-gap)0}& p{margin:0 0 var(--space-3)0;&:last-child{margin-bottom:0%}}& a,& .link{color:var(--footer-link);font-weight:var(--footer-link-weight);text-decoration:none;transition:color .2s;&:hover,&:focus{color:var(--footer-link-hover);text-decoration:underline}&:focus{outline:2px solid var(--footer-link);outline-offset:2px}}& ul,& ol,& .links{margin:0;padding:0;list-style:none;& li{margin-bottom:var(--space-2);&:last-child{margin-bottom:0%}}}& .address{color:var(--footer-text);font-style:normal;line-height:1.5}&.compact{padding:var(--footer-padding-compact)}&.spacious{padding:var(--footer-padding-spacious)}&.center{text-align:center}&.left{text-align:left}&.right{text-align:right}}.footer{border-top:1px solid var(--footer-border);gap:var(--space-4);grid-column:span 12;grid-template-columns:subgrid;grid-template-rows:auto;display:grid;& .logo{grid-column:span 3;& img{height:auto;max-width:15%0px}}& .content{gap:var(--space-6);grid-column:span 9;grid-template-columns:repeat(3,1fr);display:grid}& .section{gap:var(--space-2);flex-direction:column;display:flex}& .bottom{border-top:1px solid var(--footer-border);margin-top:var(--space-4);padding-top:var(--space-4);grid-column:span 12;justify-content:space-between;align-items:center;display:flex}& .copyright{color:var(--footer-text);font-size:var(--text-sm,.875rem);margin:0}& .social{gap:var(--space-3);display:flex;& .social-link{background-color:var(--color-neutral-100,#f3f4f6);color:var(--color-neutral-600);border-radius:50px;justify-content:center;align-items:center;width:2rem;height:2rem;transition:background-color .15s,color .15s;display:flex;&:hover{background-color:var(--color-primary,#3b82f6);color:#fff}}}& .legal{gap:var(--space-4);display:flex;& a{color:var(--footer-text);font-size:var(--text-sm,.875rem);&:hover{color:var(--footer-link-hover)}}}&.light{background-color:var(--color-white,#fff)}&.dark{background-color:var(--color-neutral-900,#111827);& .heading{color:var(--color-white,#fff)}& .link,& .address{color:var(--color-neutral-300,#d1d5db)}& .link:hover{color:var(--color-primary-400)}& .bottom{border-top-color:var(--color-neutral-700,#374151)}& .copyright,& .legal a{color:var(--color-neutral-400,#9ca3af)}& .social-link{background-color:var(--color-neutral-700,#374151);color:var(--color-neutral-300,#d1d5db)}}&.primary{background-color:var(--color-primary,#3b82f6);color:var(--color-white,#fff);& .heading{color:var(--color-white,#fff)}& .link,& .address{color:var(--color-primary-100,#dbeafe)}& .link:hover{color:var(--color-white,#fff)}& .bottom{border-top-color:var(--color-primary-600,#2563eb)}& .copyright,& .legal a{color:var(--color-primary-200)}& .social-link{background-color:var(--color-primary-600,#2563eb);color:var(--color-white,#fff)}}&.minimal{padding:var(--space-4)0;background-color:#0000;border-top:none;& .bottom{border-top:1px solid var(--color-neutral-200,#e5e7eb);padding-top:var(--space-4);margin-top:0%}}@container (width<=992px){& .logo{text-align:center;grid-column:span 12}& .content{grid-column:span 12;grid-template-columns:repeat(2,1fr)}}@container (width<=768px){& .bottom{gap:var(--space-4);text-align:center;flex-direction:column}& .legal{gap:var(--space-2);flex-direction:column}}@container (width<=576px){& .content{grid-template-columns:1fr}}}.footer-simple,.footer-columns,.footer-stacked,.footer-split,.footer-minimal{& .footer-content{max-width:var(--footer-max-width,1280px);width:100%;margin:0 auto}}.footer-simple{& .footer-content{align-items:center;gap:var(--footer-gap);flex-wrap:wrap;justify-content:space-between;display:flex;@container (width<=768px){gap:var(--footer-gap-compact);text-align:center;flex-direction:column}}& nav ul{gap:var(--space-4);flex-direction:row;@container (width<=768px){gap:var(--space-2);flex-direction:column}}}.footer-columns{& .footer-content{gap:var(--footer-column-gap);grid-template-columns:repeat(var(--footer-columns),1fr);display:grid;@container (width<=1024px){grid-template-columns:repeat(2,1fr)}@container (width<=768px){gap:var(--footer-gap);grid-template-columns:1fr}}&.cols-2{--footer-columns:2;@container (width<=768px){& .footer-content{grid-template-columns:1fr}}}&.cols-3{--footer-columns:3;@container (width<=1024px){& .footer-content{grid-template-columns:repeat(2,1fr)}}@container (width<=768px){& .footer-content{grid-template-columns:1fr}}}&.cols-4{--footer-columns:4;@container (width<=1024px){& .footer-content{grid-template-columns:repeat(2,1fr)}}@container (width<=768px){& .footer-content{grid-template-columns:1fr}}}& section{& h4{border-bottom:2px solid var(--footer-border);margin-bottom:var(--space-3);padding-bottom:var(--space-2)}}}.footer-stacked{& .footer-content{gap:var(--footer-gap);text-align:center;flex-direction:column;display:flex;&>*{border-bottom:1px solid var(--footer-border);padding-bottom:var(--footer-gap);&:last-child{border-bottom:none;padding-bottom:0%}}}& nav ul{gap:var(--space-4);flex-flow:wrap;justify-content:center;@container (width<=768px){gap:var(--space-2);flex-direction:column}}}.footer-split{& .footer-content{justify-content:space-between;align-items:center;display:flex;@container (width<=768px){gap:var(--footer-gap);text-align:center;flex-direction:column}}& .footer-left{gap:var(--space-2);flex-direction:column;display:flex;@container (width<=768px){align-items:center}}& .footer-right{gap:var(--space-2);flex-direction:column;display:flex;@container (width<=768px){align-items:center}}& nav ul{gap:var(--space-4);flex-direction:row;@container (width<=768px){gap:var(--space-2);flex-direction:column}}}.footer-minimal{border-top:1px solid var(--footer-border);padding:var(--space-4)0;background-color:#0000;& .footer-content{justify-content:space-between;align-items:center;display:flex;@container (width<=768px){gap:var(--space-3);text-align:center;flex-direction:column}}& nav ul{gap:var(--space-4);flex-direction:row;@container (width<=768px){gap:var(--space-2);flex-direction:column}}}.footer-simple,.footer-columns,.footer-stacked,.footer-split,.footer-minimal{&.theme-dark{background-color:var(--color-neutral-900,#111827);color:var(--color-neutral-300,#d1d5db);& h1,& h2,& h3,& h4,& h5,& h6{color:var(--color-neutral-100,#f3f4f6)}& a{color:var(--color-primary-400);&:hover,&:focus{color:var(--color-primary-300)}}& .footer-content section h4{border-bottom-color:var(--color-neutral-700,#374151)}&.footer-minimal{border-top-color:var(--color-neutral-700,#374151)}& .footer-stacked .footer-content>*{border-bottom-color:var(--color-neutral-700,#374151)}}&.theme-primary{background-color:var(--color-primary-900);color:var(--color-primary-100,#dbeafe);& h1,& h2,& h3,& h4,& h5,& h6{color:var(--color-white,#fff)}& a{color:var(--color-primary-200);&:hover,&:focus{color:var(--color-white,#fff)}}& .footer-content section h4{border-bottom-color:var(--color-primary-700,#1d4ed8)}&.footer-minimal{border-top-color:var(--color-primary-700,#1d4ed8)}& .footer-stacked .footer-content>*{border-bottom-color:var(--color-primary-700,#1d4ed8)}}&.theme-minimal{color:var(--color-neutral-600);background-color:#0000;& h1,& h2,& h3,& h4,& h5,& h6{color:var(--color-neutral-800,#1f2937)}& a{color:var(--color-neutral-700,#374151);&:hover,&:focus{color:var(--color-neutral-900,#111827)}}& .footer-content section h4{border-bottom-color:var(--color-neutral-300,#d1d5db)}&.footer-minimal{border-top-color:var(--color-neutral-300,#d1d5db)}& .footer-stacked .footer-content>*{border-bottom-color:var(--color-neutral-300,#d1d5db)}}}.sidebar{background-color:var(--color-neutral-100,#f3f4f6);padding-block:var(--space-4);padding-inline:var(--space-3);grid-column:span 3;& .header{border-bottom:1px solid var(--color-neutral-200,#e5e7eb);margin-bottom:var(--space-4);padding-bottom:var(--space-2);& .title{color:var(--color-neutral-900,#111827);font-size:var(--text-lg);font-weight:var(--font-medium,500);margin:0}}& .nav{gap:var(--space-2);flex-direction:column;display:flex;& .links{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}& .link{color:var(--color-neutral-700,#374151);padding:var(--space-2);text-decoration:none;transition:color .15s;display:block;&:hover{color:var(--color-primary,#3b82f6)}&.active{color:var(--color-primary,#3b82f6);font-weight:var(--font-semibold,600)}}}& .menu{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}& .item{width:100%;&.active{&>.link{background-color:color-mix(in srgb,var(--color-primary-500)10,transparent);color:var(--color-primary,#3b82f6);font-weight:var(--font-medium,500)}}}& .link{border-radius:var(--radius-md,.375rem);color:var(--color-neutral-700,#374151);padding:var(--space-2)var(--space-3);text-decoration:none;transition:background-color .15s,color .15s;display:block;&:hover{background-color:var(--color-neutral-200,#e5e7eb);color:var(--color-neutral-900,#111827)}}& .submenu{gap:var(--space-1);margin:var(--space-1)0 0 0;padding-left:var(--space-4);flex-direction:column;list-style:none;display:flex;& .link{font-size:var(--text-sm,.875rem);padding:var(--space-1)var(--space-3)}}& .toggle{cursor:pointer;background:0 0;border:none;display:none;@media (width<=768px){display:block}}& .content{width:100%}&.left{grid-column:1/span 3}&.right{order:2}&.light{background-color:var(--color-neutral-50)}&.dark{background-color:var(--color-neutral-800,#1f2937);color:var(--color-neutral-100,#f3f4f6);& .title{color:var(--color-white,#fff)}& .link{color:var(--color-neutral-300,#d1d5db);&:hover{background-color:var(--color-neutral-700,#374151);color:var(--color-white,#fff)}}& .item.active>.link{background-color:color-mix(in srgb,var(--color-primary-500)30,transparent)}}&.collapsible{@media (width<=768px){& .toggle{display:block}& .content{display:none;&.open{display:block}}}}@container layout (width<=768px){order:2;grid-column:span 12}}.blog-post{font-size:var(--text-base);line-height:1%.6;max-width:65%ch;padding-block:var(--space-6);padding-inline:var(--space-4);margin-inline:auto;& h1,& h2,& h3{font-family:var(--font-sans);font-weight:var(--font-semibold,600);margin-block:var(--space-4)var(--space-2)}& p{margin-block:var(--space-3)}& img{border-radius:var(--radius-md,.375rem);margin-block:var(--space-4);max-width:100%}& pre,& code{background:var(--color-neutral-100,#f3f4f6);border-radius:var(--radius-sm,.125rem);font-family:var(--font-mono);padding:var(--space-1)var(--space-2)}& .header{margin-bottom:var(--space-6);& .title{font-size:var(--text-2xl);margin-bottom:var(--space-2);margin-top:0%}& .meta{color:var(--color-neutral-600);font-size:var(--text-sm,.875rem);gap:var(--space-3);flex-wrap:wrap;display:flex}& .author{font-weight:var(--font-medium,500)}}& .content{margin-bottom:var(--space-6)}& .footer{border-top:1px solid var(--color-neutral-200,#e5e7eb);padding-top:var(--space-4);& .tags{gap:var(--space-2);flex-wrap:wrap;display:flex}}&.featured{border-left:4px solid var(--color-primary,#3b82f6);padding-left:var(--space-6)}}.blog-card{border-radius:var(--radius-md,.375rem);box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;&:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}& .image{height:20%0px;object-fit:cover;width:100%}& .content{padding:var(--space-4);flex-direction:column;flex:1;display:flex;& .title{font-size:var(--text-lg);margin-bottom:var(--space-2);margin-top:0%}& .excerpt{color:var(--color-neutral-700,#374151);margin-bottom:var(--space-4);flex:1}& .link{color:var(--color-primary,#3b82f6);font-weight:var(--font-medium,500);align-self:flex-start;text-decoration:none;&:hover{text-decoration:underline}}}}.blog-nav{border-top:1px solid var(--color-neutral-200,#e5e7eb);margin-top:var(--space-8);padding-top:var(--space-4);justify-content:space-between;display:flex;& a{color:var(--color-primary,#3b82f6);text-decoration:none;&:hover{text-decoration:underline}}& .prev:before{content:"←";margin-right:var(--space-1)}& .next:after{content:"→";margin-left:var(--space-1)}}.blog-share{margin-top:var(--space-6);& .label{font-weight:var(--font-medium,500);margin-bottom:var(--space-2);display:block}& .buttons{gap:var(--space-2);display:flex}& .button{border-radius:var(--radius-md,.375rem);color:#fff;font-size:var(--text-sm,.875rem);padding:var(--space-2)var(--space-3);justify-content:center;align-items:center;text-decoration:none;display:flex;&.twitter{background-color:var(--color-twitter,#1da1f2)}&.facebook{background-color:var(--color-facebook,#4267b2)}&.linkedin{background-color:var(--color-linkedin,#0077b5)}&:hover{opacity:90}}}.tag{background-color:var(--color-neutral-100,#f3f4f6);color:var(--color-neutral-900,#111827);cursor:default;user-select:none;white-space:nowrap;border-radius:9px;align-items:center;padding:.375rem .75rem;font-size:.875rem;font-weight:500;line-height:1%;transition:background-color .15s ease-in-out;display:inline-flex;&:hover{background-color:var(--color-neutral-200,#e5e7eb)}&.clickable{cursor:pointer}&.primary{background-color:var(--color-primary-100,#dbeafe);color:var(--color-primary-800,#1e40af)}&.secondary{background-color:var(--color-secondary-100,#f1f5f9);color:var(--color-secondary-800,#1e293b)}&.success{background-color:var(--color-success-100,#d1fae5);color:var(--color-success-800,#065f46)}&.warning{background-color:var(--color-warning-100,#fef3c7);color:var(--color-warning-800,#92400e)}&.danger{background-color:var(--color-error-100,#fee2e2);color:var(--color-error-800,#991b1b)}&.info{background-color:var(--color-info-100,#dbeafe);color:var(--color-info-800,#1e40af)}&.rounded{border-radius:.5rem}&.pill{border-radius:9px}&.outlined{background-color:#0000;border:1px solid;&.primary{color:var(--color-primary-600,#2563eb)}}&.sm{padding:.25rem .5rem;font-size:.75rem}&.lg{padding:.5rem 1rem;font-size:1rem}& .icon{height:1em;margin-right:0%.25rem;justify-content:center;align-items:center;width:1em;display:inline-flex}& .remove{color:currentColor;cursor:pointer;height:1%.25em;margin-left:0%.25rem;opacity:.7;width:1%.25em;background:0 0;border:none;border-radius:50px;justify-content:center;align-items:center;margin-right:-.25rem;padding:0;line-height:1%;transition:opacity .15s;display:inline-flex;&:hover{opacity:1;background-color:#000}}}.code{background:var(--color-neutral-100,#f3f4f6);border:1px solid var(--color-neutral-200,#e5e7eb);border-radius:var(--radius-md,.375rem);color:var(--color-neutral-800,#1f2937);font-family:var(--font-mono);font-size:var(--text-sm,.875rem);line-height:1%.4;margin:var(--space-4)0;padding:var(--space-4);display:block;overflow-x:auto;& pre{margin:0}& code{font-family:inherit;display:block}&.numbered{gap:var(--space-4);grid-template-columns:auto 1fr;display:grid;& .line-numbers{border-right:1px solid var(--color-neutral-300,#d1d5db);color:var(--color-neutral-500,#6b7280);padding-right:var(--space-2);text-align:right;user-select:none}}&.dark{background-color:var(--color-neutral-900,#111827);border-color:var(--color-neutral-800,#1f2937);color:var(--color-neutral-100,#f3f4f6)}&.light{background-color:var(--color-white,#fff);border-color:var(--color-neutral-200,#e5e7eb);color:var(--color-neutral-900,#111827)}&.terminal{background-color:var(--color-neutral-900,#111827);border-color:var(--color-neutral-800,#1f2937);color:var(--color-neutral-100,#f3f4f6);&:before{color:var(--color-neutral-500,#6b7280);content:">";margin-right:var(--space-2)}}&.highlighted{& .keyword{color:var(--color-primary-600,#2563eb)}& .string{color:var(--color-success-600)}& .comment{color:var(--color-neutral-500,#6b7280);font-style:italic}& .function{color:var(--color-secondary-600)}& .number{color:var(--color-warning-600)}}}.code-container{position:relative;& .copy-button{background-color:var(--color-neutral-200,#e5e7eb);border-radius:var(--radius-sm,.125rem);color:var(--color-neutral-700,#374151);cursor:pointer;font-size:var(--text-xs,.75rem);opacity:0;padding:var(--space-1)var(--space-2);right:var(--space-2);top:var(--space-2);border:none;transition:opacity .15s;position:absolute;&:hover{background-color:var(--color-neutral-300,#d1d5db);color:var(--color-neutral-900,#111827)}}&:hover .copy-button{opacity:1}}.widget{background-color:var(--color-white,#fff);border:1px solid var(--color-neutral-200,#e5e7eb);border-radius:var(--radius-md,.375rem);box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);overflow:hidden;& .header{background-color:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200,#e5e7eb);padding:var(--space-3)var(--space-4);justify-content:space-between;align-items:center;display:flex;& .title{font-size:var(--text-base);font-weight:var(--font-medium,500);margin:0}& .actions{gap:var(--space-2);display:flex;& .action{border-radius:var(--radius-sm,.125rem);color:var(--color-neutral-600);cursor:pointer;font-size:var(--text-sm,.875rem);padding:var(--space-1)var(--space-2);background:0 0;border:none;&:hover{background-color:var(--color-neutral-200,#e5e7eb);color:var(--color-neutral-800,#1f2937)}}}}& .body{padding:var(--space-4)}& .footer{background-color:var(--color-neutral-50);border-top:1px solid var(--color-neutral-200,#e5e7eb);color:var(--color-neutral-600);font-size:var(--text-sm,.875rem);padding:var(--space-3)var(--space-4)}&.primary{border-color:var(--color-primary,#3b82f6);& .header{background-color:var(--color-primary,#3b82f6);color:#fff}}&.secondary{border-color:var(--color-secondary);& .header{background-color:var(--color-secondary);color:#fff}}&.light{background-color:var(--color-white,#fff);border-color:var(--color-neutral-100,#f3f4f6);& .header{background-color:var(--color-white,#fff);border-bottom-color:var(--color-neutral-100,#f3f4f6)}}&.dark{background-color:var(--color-neutral-800,#1f2937);border-color:var(--color-neutral-700,#374151);color:#fff;& .header{background-color:var(--color-neutral-900,#111827);border-bottom-color:var(--color-neutral-700,#374151)}& .footer{background-color:var(--color-neutral-900,#111827);border-top-color:var(--color-neutral-700,#374151);color:var(--color-neutral-300,#d1d5db)}}&.sm{& .header{padding:var(--space-2)var(--space-3);& .title{font-size:var(--text-sm,.875rem)}}& .body{padding:var(--space-3)}& .footer{font-size:var(--text-xs,.75rem);padding:var(--space-2)var(--space-3)}}&.lg{& .header{padding:var(--space-4)var(--space-5);& .title{font-size:var(--text-lg)}}& .body{padding:var(--space-5)}& .footer{padding:var(--space-4)var(--space-5)}}&.full{width:100%}&.loading{opacity:.7;position:relative}&.collapsed{& .body,& .footer{display:none}& .header{border-bottom:none}}&.highlight{background-color:color-mix(in oklab,var(--color-primary,#3b82f6),white 90);border-color:var(--color-primary,#3b82f6)}}.skeleton{background-color:var(--color-neutral-200,#e5e7eb);border-radius:var(--radius-sm,.125rem);&.circle{border-radius:9px}&.rect{border-radius:var(--radius-md,.375rem)}&.text{height:1rem;margin-bottom:0%.5rem;width:100%}&.avatar{border-radius:50px;width:3rem;height:3rem}&.button{border-radius:var(--radius-md,.375rem);width:8rem;height:2.5rem}&.wave{position:relative;overflow:hidden}&.sm{height:0%.75rem}&.md{height:1rem}&.lg{height:1%.5rem}&.title{height:1%.5rem;width:70%}&.heading{width:90%;height:2rem}&.subheading{height:1%.5rem;width:70%}&.image{height:1%2rem;width:100%}&.short{width:60%}}.button{border-radius:var(--radius-md,.5rem);cursor:pointer;font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);padding-block:var(--space-2,.5rem);padding-inline:var(--space-4,1rem);transition:background-color var(--transition-duration-fast,.15s)var(--transition-timing-ease,cubic-bezier(.4,0,.2,1));border:none;justify-content:center;align-items:center;line-height:1.25;text-decoration:none;display:inline-flex;position:relative}.button--primary{background-color:var(--color-primary,#06c);color:#fff}.button--primary:hover{background-color:var(--color-primary-hover,#05a)}.button--secondary{background-color:var(--color-secondary);color:#fff}.button--secondary:hover{background-color:var(--color-secondary-hover)}.button--tertiary{border:1px solid var(--color-border,#e5e7eb);color:var(--color-text);background-color:#0000}.button--tertiary:hover{background-color:var(--color-background-alt,#f9fafb)}.button--success{background-color:var(--color-success,#10b981);color:#fff}.button--success:hover{background-color:var(--color-success-hover)}.button--warning{background-color:var(--color-warning,#f59e0b);color:var(--color-text)}.button--warning:hover{background-color:var(--color-warning-hover)}.button--danger{background-color:var(--color-error,#ef4444);color:#fff}.button--danger:hover{background-color:var(--color-error-hover)}.button--info{background-color:var(--color-info,#3b82f6);color:#fff}.button--info:hover{background-color:var(--color-info-hover)}.button--link{color:var(--color-primary,#3b82f6);background-color:#0000;padding:0;text-decoration:underline}.button--link:hover{color:var(--color-primary-hover,#2563eb);text-decoration:none}.button--xs{font-size:var(--font-size-xs);padding-block:var(--space-1);padding-inline:var(--space-2)}.button--sm{font-size:var(--font-size-sm,.875rem);padding-block:var(--space-1);padding-inline:var(--space-3)}.button--md{font-size:var(--font-size-base,1rem);padding-block:var(--