@layer theme, base, components, cnc.tokens, cnc.attributes, cnc.parts, widgets, app-widgets, properties, utilities, cnc.application;
@layer app-widgets {
el-card .el-photo { background-image: var( --photo-sm ); }
@media (min-width: 768px) {
el-card .el-photo { background-image: var( --photo ); }
}
}
@layer app-widgets {
el-hero .el-photo { background-image: var( --photo-sm ); }
@media (min-width: 768px) {
el-hero .el-photo { background-image: var( --photo ); }
}
}
@layer app-widgets {
el-slide .el-photo { background-image: var( --photo-sm ); }
@media (min-width: 768px) {
el-slide .el-photo { background-image: var( --photo ); }
}
}
@layer widgets {
cnc-accordion { display: block; position: relative; --panel-bg: var( --color-neutral-100 ); --panel-border-color: var( --color-neutral-200 ); --panel-border-width: 0; --panel-divider-width: 1px; --header-padding: 0.75rem; --header-text-color: var( --color-neutral-600 ); --header-text-color-open: var( --header-text-color ); --header-bg-hover: var( --color-neutral-200 ); --header-bg-open: transparent; --header-rule-open: 0; --title-font-weight: 500; --title-font-weight-open: var( --title-font-weight ); --caret-size: 1.25rem; --caret-transition-duration: 0.3s; --body-padding-x: 0.75rem; --body-padding-bottom-open: 0.75rem; --body-margin-top-open: 0.5rem; --body-font-size: 0.875rem; --body-text-color: var( --color-neutral-500 ); --body-transition-duration: 0.2s; }
.dark cnc-accordion { --panel-bg: var( --color-neutral-800 ); --panel-border-color: var( --color-neutral-700 ); --header-text-color: var( --color-neutral-300 ); --header-bg-hover: var( --color-neutral-700 ); --body-text-color: var( --color-neutral-400 ); }
cnc-accordion[kind="plain"] { --panel-bg: transparent; --header-padding: 0; --header-text-color: inherit; --header-bg-hover: transparent; --header-rule-open: 1px; --title-font-weight-open: 700; --body-padding-x: 0; --body-padding-bottom-open: 0; --body-margin-top-open: 0; --body-font-size: inherit; --body-text-color: inherit; }
cnc-accordion .cnc-accordion_panel { background-color: var( --panel-bg ); border: var( --panel-border-width ) solid var( --panel-border-color ); cursor: pointer; }
cnc-accordion .cnc-accordion_panel + .cnc-accordion_panel { border-top-width: var( --panel-divider-width ); }
cnc-accordion .cnc-accordion_header { display: flex; align-items: center; justify-content: space-between; width: 100%; margin: 0; padding: var( --header-padding ); border: 0; background-color: transparent; color: var( --header-text-color ); font: inherit; text-align: left; cursor: pointer; }
cnc-accordion .cnc-accordion_title { font-weight: var( --title-font-weight ); }
cnc-accordion .cnc-accordion_caret { width: var( --caret-size ); height: var( --caret-size ); flex-shrink: 0; transition: transform var( --caret-transition-duration ) ease; }
cnc-accordion .cnc-accordion_body { display: grid; grid-template-rows: 0fr; overflow: hidden; padding: 0 var( --body-padding-x ); font-size: var( --body-font-size ); cursor: default; transition: grid-template-rows var( --body-transition-duration ) ease; }
cnc-accordion .cnc-accordion_body-inner { min-height: 0; color: var( --body-text-color ); }
cnc-accordion .cnc-accordion_header:hover { background-color: var( --header-bg-hover ); }
cnc-accordion .cnc-accordion_header:focus-visible { outline: none; box-shadow: var( --control-focus-shadow , inset 0 0 0 2px rgb( 59 130 246 / 0.6 ) ); }
cnc-accordion .cnc-accordion_panel.open .cnc-accordion_header, cnc-accordion .cnc-accordion_panel:last-child .cnc-accordion_header { border-bottom: var( --header-rule-open ) solid var( --panel-border-color ); }
cnc-accordion .cnc-accordion_panel.open .cnc-accordion_header { background-color: var( --header-bg-open ); color: var( --header-text-color-open ); }
cnc-accordion .cnc-accordion_panel.open .cnc-accordion_title { font-weight: var( --title-font-weight-open ); }
cnc-accordion .cnc-accordion_panel.open .cnc-accordion_caret { transform: rotate( 180deg ); }
cnc-accordion .cnc-accordion_panel.open .cnc-accordion_body { grid-template-rows: 1fr; margin-top: var( --body-margin-top-open ); padding-bottom: var( --body-padding-bottom-open ); }
@media (prefers-reduced-motion: reduce) {
cnc-accordion *, cnc-accordion *::before, cnc-accordion *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-accordion2 .--header { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-accordion2 .--header:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
}
@layer widgets {
cnc-address-picker { --suggestions-max-height: 14rem; }
cnc-address-picker { display: block; position: relative; }
cnc-address-picker .suggestions { max-height: var( --suggestions-max-height ); }
}
@layer widgets {
cnc-alert { --container-border-radius: var( --radius-md , 0.375rem ); --container-border-radius-accented: 0; --close-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-alert { --container-padding: 1rem; --accent-width: 4px; --icon-margin-top: 0.125rem; --text-margin-start: 0.75rem; --title-font-size: 0.875rem; --content-font-size: 0.875rem; --content-margin-top: 0.5rem; --close-margin-start: 0.75rem; }
cnc-alert { --container-bg: transparent; --container-border-width: 0; --container-border-color: transparent; --container-transition-duration: 0.2s; --accent-color: transparent; --icon-color: inherit; --title-text-color: inherit; --title-font-weight: 500; --content-text-color: inherit; --close-text-color: inherit; --close-opacity-hover: 0.8; }
cnc-alert[kind="primary"] { --container-bg: var( --color-primary-50 ); --container-border-color: var( --color-primary-200 ); --accent-color: var( --color-primary-400 ); --icon-color: var( --color-primary-600 ); --title-text-color: var( --color-primary-800 ); --content-text-color: var( --color-primary-700 ); --close-text-color: var( --color-primary-600 ); }
cnc-alert[kind="info"] { --container-bg: var( --color-info-50 ); --container-border-color: var( --color-info-200 ); --accent-color: var( --color-info-400 ); --icon-color: var( --color-info-600 ); --title-text-color: var( --color-info-800 ); --content-text-color: var( --color-info-700 ); --close-text-color: var( --color-info-600 ); }
cnc-alert[kind="success"] { --container-bg: var( --color-success-50 ); --container-border-color: var( --color-success-200 ); --accent-color: var( --color-success-400 ); --icon-color: var( --color-success-600 ); --title-text-color: var( --color-success-800 ); --content-text-color: var( --color-success-700 ); --close-text-color: var( --color-success-600 ); }
cnc-alert[kind="warning"] { --container-bg: var( --color-warning-50 ); --container-border-color: var( --color-warning-200 ); --accent-color: var( --color-warning-400 ); --icon-color: var( --color-warning-600 ); --title-text-color: var( --color-warning-800 ); --content-text-color: var( --color-warning-700 ); --close-text-color: var( --color-warning-600 ); }
cnc-alert[kind="danger"] { --container-bg: var( --color-danger-50 ); --container-border-color: var( --color-danger-200 ); --accent-color: var( --color-danger-400 ); --icon-color: var( --color-danger-600 ); --title-text-color: var( --color-danger-800 ); --content-text-color: var( --color-danger-700 ); --close-text-color: var( --color-danger-600 ); }
.dark cnc-alert[kind="primary"] { --container-bg: var( --color-primary-900 ); --icon-color: var( --color-primary-400 ); --title-text-color: var( --color-primary-300 ); --content-text-color: var( --color-primary-400 ); --close-text-color: var( --color-primary-400 ); }
.dark cnc-alert[kind="info"] { --container-bg: var( --color-info-900 ); --icon-color: var( --color-info-400 ); --title-text-color: var( --color-info-300 ); --content-text-color: var( --color-info-400 ); --close-text-color: var( --color-info-400 ); }
.dark cnc-alert[kind="success"] { --container-bg: var( --color-success-900 ); --icon-color: var( --color-success-400 ); --title-text-color: var( --color-success-300 ); --content-text-color: var( --color-success-400 ); --close-text-color: var( --color-success-400 ); }
.dark cnc-alert[kind="warning"] { --container-bg: var( --color-warning-900 ); --icon-color: var( --color-warning-400 ); --title-text-color: var( --color-warning-300 ); --content-text-color: var( --color-warning-400 ); --close-text-color: var( --color-warning-400 ); }
.dark cnc-alert[kind="danger"] { --container-bg: var( --color-danger-900 ); --icon-color: var( --color-danger-400 ); --title-text-color: var( --color-danger-300 ); --content-text-color: var( --color-danger-400 ); --close-text-color: var( --color-danger-400 ); }
cnc-alert { display: block; }
cnc-alert .cnc-alert_container { padding: var( --container-padding ); border: var( --container-border-width ) solid var( --container-border-color ); border-radius: var( --container-border-radius ); background: var( --container-bg ); transition: all var( --container-transition-duration ) ease; }
cnc-alert .cnc-alert_container.accented { border-left: var( --accent-width ) solid var( --accent-color ); border-radius: var( --container-border-radius-accented ); }
cnc-alert .cnc-alert_icon-area { margin-top: var( --icon-margin-top ); }
cnc-alert .cnc-alert_icon { color: var( --icon-color ); }
cnc-alert .cnc-alert_text { margin-inline-start: var( --text-margin-start ); }
cnc-alert .cnc-alert_title { color: var( --title-text-color ); font-size: var( --title-font-size ); font-weight: var( --title-font-weight ); }
cnc-alert .cnc-alert_content { margin-top: var( --content-margin-top ); color: var( --content-text-color ); font-size: var( --content-font-size ); }
cnc-alert .cnc-alert_close { margin-inline-start: var( --close-margin-start ); padding: 0; border: 0; background-color: transparent; color: var( --close-text-color ); font: inherit; line-height: inherit; }
cnc-alert .cnc-alert_close:focus-visible { outline: none; border-radius: var( --close-border-radius ); box-shadow: var( --control-focus-shadow , 0 0 0 2px rgb( 59 130 246 / 0.6 ) ); }
cnc-alert .cnc-alert_close:hover { opacity: var( --close-opacity-hover ); }
@media (prefers-reduced-motion: reduce) {
cnc-alert *, cnc-alert *::before, cnc-alert *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-arrow { --arrow-color: var( --color-primary-500 ); }
cnc-arrow { position: absolute; inset: 0; z-index: 1; overflow: visible; pointer-events: none; }
cnc-arrow .cnc-arrow_svg { stroke: var( --arrow-color ); fill: var( --arrow-color ); }
}
@layer widgets {
cnc-autolayout { display: block; position: relative; }
}
@layer widgets {
cnc-avatar[size="xxs"] { --shape-border-radius-rounded: var( --radius-xs , 0.1875rem ); }
cnc-avatar[size="xs"], cnc-avatar[size="sm"] { --shape-border-radius-rounded: var( --radius-sm , 0.25rem ); }
cnc-avatar[size="md"], cnc-avatar:not([size]) { --shape-border-radius-rounded: var( --radius-md , 0.375rem ); }
cnc-avatar[size="lg"], cnc-avatar[size="xl"], cnc-avatar[size="2xl"] { --shape-border-radius-rounded: var( --radius-lg , 0.5rem ); }
cnc-avatar[shape="circle"], cnc-avatar:not([shape]) { --shape-border-radius: 50%; }
cnc-avatar[shape="rounded"] { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-md , 0.375rem ) ); }
cnc-avatar[shape="square"], cnc-avatar[shape="rectangle"] { --shape-border-radius: 0; }
cnc-avatar[size="xxs"] { --container-size: 1rem; --container-ring-width: 1px; --container-shadow-offset-x: 1px; --container-shadow-offset-y: 2px; --container-shadow-blur: 3px; --initials-font-size: 0.5rem; --avatar-icon-size: 0.625rem; }
cnc-avatar[size="xs"] { --container-size: 1.5rem; --container-ring-width: 2px; --container-shadow-offset-x: 1px; --container-shadow-offset-y: 2px; --container-shadow-blur: 4px; --initials-font-size: 0.625rem; --avatar-icon-size: 0.875rem; }
cnc-avatar[size="sm"] { --container-size: 2rem; --container-ring-width: 2px; --container-shadow-offset-x: 2px; --container-shadow-offset-y: 3px; --container-shadow-blur: 5px; --initials-font-size: 0.75rem; --avatar-icon-size: 1.125rem; }
cnc-avatar[size="md"], cnc-avatar:not([size]) { --container-size: 2.5rem; --container-ring-width: 3px; --container-shadow-offset-x: 2px; --container-shadow-offset-y: 4px; --container-shadow-blur: 7px; --initials-font-size: 1rem; --avatar-icon-size: 1.375rem; }
cnc-avatar[size="lg"] { --container-size: 3rem; --container-ring-width: 3px; --container-shadow-offset-x: 3px; --container-shadow-offset-y: 5px; --container-shadow-blur: 9px; --initials-font-size: 1.25rem; --avatar-icon-size: 1.625rem; }
cnc-avatar[size="xl"] { --container-size: 4rem; --container-ring-width: 4px; --container-shadow-offset-x: 4px; --container-shadow-offset-y: 6px; --container-shadow-blur: 12px; --initials-font-size: 1.5rem; --avatar-icon-size: 2.125rem; }
cnc-avatar[size="2xl"] { --container-size: 5rem; --container-ring-width: 5px; --container-shadow-offset-x: 5px; --container-shadow-offset-y: 8px; --container-shadow-blur: 16px; --initials-font-size: 1.875rem; --avatar-icon-size: 2.625rem; }
cnc-avatar { --container-border-radius: var( --shape-border-radius , 50% ); --container-bg: rgb( 0 0 0 / 5% ); --container-text-color: var( --color-neutral-500 ); --container-icon-color: var( --color-neutral-400 ); --container-border-color: rgb( 0 0 0 / 4% ); --container-ring-color: var( --color-white , white ); --container-shadow-color: rgb( 15 23 42 / 24% ); --initials-font-weight: 600; line-height: 0; }
cnc-avatar[kind="plain"], cnc-avatar:not([kind]) { --container-inner-shadow: none; --container-shadow: none; }
cnc-avatar[kind="outline"] { --container-inner-shadow: inset 0 0 0 1px var( --container-border-color ); --container-shadow: none; }
cnc-avatar[kind="ring"] { --container-inner-shadow: inset 0 0 0 1px var( --container-border-color ); --container-shadow: 0 0 0 var( --container-ring-width ) var( --container-ring-color ) , var( --container-shadow-offset-x ) var( --container-shadow-offset-y ) var( --container-shadow-blur ) var( --container-shadow-color ); }
.dark cnc-avatar { --container-bg: rgb( 255 255 255 / 6% ); --container-text-color: rgb( 255 255 255 / 24% ); --container-icon-color: rgb( 255 255 255 / 24% ); --container-border-color: rgb( 255 255 255 / 24% ); --container-ring-color: rgba( 255 , 255 , 255 , 8% ); --container-shadow-color: rgb( 0 0 0 / 45% ); }
cnc-avatar .cnc-avatar_container { inline-size: var( --container-size ); block-size: var( --container-size ); vertical-align: middle; color: var( --container-text-color ); background: var( --container-bg ); border-radius: var( --container-border-radius ); box-shadow: var( --container-shadow ); }
cnc-avatar .cnc-avatar_container::after { position: absolute; z-index: 1; inset: 0; border-radius: inherit; box-shadow: var( --container-inner-shadow ); content: ""; pointer-events: none; }
cnc-avatar .cnc-avatar_image { display: block; }
cnc-avatar .cnc-avatar_initials { color: var( --container-text-color ); font-size: var( --initials-font-size ); font-weight: var( --initials-font-weight ); line-height: 1; }
cnc-avatar .cnc-avatar_icon { inline-size: var( --avatar-icon-size ); block-size: var( --avatar-icon-size ); color: var( --container-icon-color ); --container-size: 100% !important; }
}
@layer widgets {
cnc-avatar-group { --avatar-animation-duration: 500ms; --avatar-animation-timing: ease-out; --avatar-animation-stagger-delay: 150ms; display: inline-flex; align-items: center; isolation: isolate; }
cnc-avatar-group[responsive]:not([data-responsive-ready]) { visibility: hidden; pointer-events: none; }
cnc-avatar-group > cnc-avatar { --avatar-size: var( --container-size , 2.5rem ); --resolved-avatar-overlap: var( --avatar-overlap , calc( var( --avatar-size ) / 5 ) ); --avatar-shift: calc( var( --avatar-size ) - var( --resolved-avatar-overlap ) ); --cutout-radius: calc( var( --avatar-size ) / 2 + var( --container-ring-width , 3px ) ); position: relative; width: var( --avatar-size ); height: var( --avatar-size ); flex: 0 0 var( --avatar-size ); overflow: visible; z-index: calc( 100 - var( --avatar-index , 0 ) ); transition: transform 160ms ease , box-shadow 160ms ease; }
cnc-avatar-group > cnc-avatar:not(:first-child) { margin-left: calc( -1 * var( --resolved-avatar-overlap ) ); }
cnc-avatar-group:not([reverse]) > cnc-avatar:not(:first-child), cnc-avatar-group[reverse="false"] > cnc-avatar:not(:first-child) { --mask-avatar-center-x: calc( var( --avatar-size ) / 2 - var( --avatar-shift ) ); --mask-cutout-edge: calc( var( --resolved-avatar-overlap ) + var( --container-ring-width , 3px ) ); --mask-edge-gradient: linear-gradient( to right , transparent calc( var( --mask-cutout-edge ) - 0.5px ) , #000 var( --mask-cutout-edge ) ); }
cnc-avatar-group[reverse]:not([reverse="false"]) > cnc-avatar:not(:last-child) { --mask-avatar-center-x: calc( var( --avatar-size ) / 2 + var( --avatar-shift ) ); --mask-cutout-edge: calc( var( --avatar-shift ) - var( --container-ring-width , 3px ) ); --mask-edge-gradient: linear-gradient( to right , #000 calc( var( --mask-cutout-edge ) - 0.5px ) , transparent var( --mask-cutout-edge ) ); }
cnc-avatar-group:not([reverse]) > cnc-avatar:not(:first-child), cnc-avatar-group[reverse="false"] > cnc-avatar:not(:first-child), cnc-avatar-group[reverse]:not([reverse="false"]) > cnc-avatar:not(:last-child) { -webkit-mask-image: radial-gradient( circle at var( --mask-avatar-center-x ) 50% , transparent calc( var( --cutout-radius ) - 0.5px ) , #000 var( --cutout-radius ) ); mask-image: radial-gradient( circle at var( --mask-avatar-center-x ) 50% , transparent calc( var( --cutout-radius ) - 0.5px ) , #000 var( --cutout-radius ) ); }
cnc-avatar-group:not([reverse]) > cnc-avatar:is([shape="square"], [shape="rectangle"]):not(:first-child), cnc-avatar-group[reverse="false"] > cnc-avatar:is([shape="square"], [shape="rectangle"]):not(:first-child), cnc-avatar-group[reverse]:not([reverse="false"]) > cnc-avatar:is([shape="square"], [shape="rectangle"]):not(:last-child) { -webkit-mask-image: var( --mask-edge-gradient ); mask-image: var( --mask-edge-gradient ); }
cnc-avatar-group:not([reverse]) > cnc-avatar[shape="rounded"]:not(:first-child), cnc-avatar-group[reverse="false"] > cnc-avatar[shape="rounded"]:not(:first-child) { --mask-corner-center-x: calc( var( --mask-cutout-edge ) - var( --expanded-corner-radius ) ); }
cnc-avatar-group[reverse]:not([reverse="false"]) > cnc-avatar[shape="rounded"]:not(:last-child) { --mask-corner-center-x: calc( var( --mask-cutout-edge ) + var( --expanded-corner-radius ) ); }
cnc-avatar-group:not([reverse]) > cnc-avatar[shape="rounded"]:not(:first-child), cnc-avatar-group[reverse="false"] > cnc-avatar[shape="rounded"]:not(:first-child), cnc-avatar-group[reverse]:not([reverse="false"]) > cnc-avatar[shape="rounded"]:not(:last-child) { --avatar-corner-radius: var( --shape-border-radius-rounded , var( --radius-md , 0.375rem ) ); --expanded-corner-radius: calc( var( --avatar-corner-radius ) + var( --container-ring-width , 3px ) ); --mask-top-corner-gradient: radial-gradient( circle var( --expanded-corner-radius ) at var( --mask-corner-center-x ) 100% , transparent calc( var( --expanded-corner-radius ) - 0.5px ) , #000 var( --expanded-corner-radius ) ); --mask-bottom-corner-gradient: radial-gradient( circle var( --expanded-corner-radius ) at var( --mask-corner-center-x ) 0% , transparent calc( var( --expanded-corner-radius ) - 0.5px ) , #000 var( --expanded-corner-radius ) ); -webkit-mask-image: var( --mask-top-corner-gradient ) , var( --mask-bottom-corner-gradient ) , var( --mask-edge-gradient ); mask-image: var( --mask-top-corner-gradient ) , var( --mask-bottom-corner-gradient ) , var( --mask-edge-gradient ); -webkit-mask-position: top , bottom , center; mask-position: top , bottom , center; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: 100% var( --avatar-corner-radius ) , 100% var( --avatar-corner-radius ) , 100% 100%; mask-size: 100% var( --avatar-corner-radius ) , 100% var( --avatar-corner-radius ) , 100% 100%; }
cnc-avatar-group > cnc-avatar:has(+ cnc-avatar:hover:not(.cnc-avatar-group_extra)), cnc-avatar-group > cnc-avatar:hover + cnc-avatar:not(.cnc-avatar-group_extra) { --hover-avatar-expansion: calc( var( --avatar-size ) * 0.04 ); --hover-cutout-radius: calc( var( --avatar-size ) / 2 + var( --hover-avatar-expansion ) + var( --container-ring-width , 3px ) ); }
cnc-avatar-group > cnc-avatar:has(+ cnc-avatar:hover:not(.cnc-avatar-group_extra)) { --hover-mask-avatar-center-x: calc( var( --avatar-size ) / 2 + var( --avatar-shift ) ); --hover-mask-cutout-edge: calc( var( --avatar-shift ) - var( --container-ring-width , 3px ) - var( --hover-avatar-expansion ) ); --hover-mask-edge-gradient: linear-gradient( to right , #000 calc( var( --hover-mask-cutout-edge ) - 0.5px ) , transparent var( --hover-mask-cutout-edge ) ); }
cnc-avatar-group > cnc-avatar:hover + cnc-avatar:not(.cnc-avatar-group_extra) { --hover-mask-avatar-center-x: calc( var( --avatar-size ) / 2 - var( --avatar-shift ) ); --hover-mask-cutout-edge: calc( var( --resolved-avatar-overlap ) + var( --container-ring-width , 3px ) + var( --hover-avatar-expansion ) ); --hover-mask-edge-gradient: linear-gradient( to right , transparent calc( var( --hover-mask-cutout-edge ) - 0.5px ) , #000 var( --hover-mask-cutout-edge ) ); }
cnc-avatar-group > cnc-avatar:is([shape="circle"], :not([shape])):has( + cnc-avatar:hover:not(.cnc-avatar-group_extra) ) > .cnc-avatar_container, cnc-avatar-group > cnc-avatar:hover + cnc-avatar:is([shape="circle"], :not([shape])):not(.cnc-avatar-group_extra) > .cnc-avatar_container { -webkit-mask-image: radial-gradient( circle at var( --hover-mask-avatar-center-x ) 50% , transparent calc( var( --hover-cutout-radius ) - 0.5px ) , #000 var( --hover-cutout-radius ) ) !important; mask-image: radial-gradient( circle at var( --hover-mask-avatar-center-x ) 50% , transparent calc( var( --hover-cutout-radius ) - 0.5px ) , #000 var( --hover-cutout-radius ) ) !important; }
cnc-avatar-group > cnc-avatar:is([shape="square"], [shape="rectangle"]):has( + cnc-avatar:hover:not(.cnc-avatar-group_extra) ) > .cnc-avatar_container, cnc-avatar-group > cnc-avatar:hover + cnc-avatar:is([shape="square"], [shape="rectangle"]):not(.cnc-avatar-group_extra) > .cnc-avatar_container { -webkit-mask-image: var( --hover-mask-edge-gradient ) !important; mask-image: var( --hover-mask-edge-gradient ) !important; }
cnc-avatar-group > cnc-avatar[shape="rounded"]:has(+ cnc-avatar:hover:not(.cnc-avatar-group_extra)) { --hover-mask-corner-center-x: calc( var( --hover-mask-cutout-edge ) + var( --hover-expanded-corner-radius ) ); }
cnc-avatar-group > cnc-avatar:hover + cnc-avatar[shape="rounded"]:not(.cnc-avatar-group_extra) { --hover-mask-corner-center-x: calc( var( --hover-mask-cutout-edge ) - var( --hover-expanded-corner-radius ) ); }
cnc-avatar-group > cnc-avatar[shape="rounded"]:has(+ cnc-avatar:hover:not(.cnc-avatar-group_extra)), cnc-avatar-group > cnc-avatar:hover + cnc-avatar[shape="rounded"]:not(.cnc-avatar-group_extra) { --avatar-corner-radius: var( --shape-border-radius-rounded , var( --radius-md , 0.375rem ) ); --hover-expanded-corner-radius: calc( var( --avatar-corner-radius ) + var( --hover-avatar-expansion ) + var( --container-ring-width , 3px ) ); --hover-mask-top-corner-gradient: radial-gradient( circle var( --hover-expanded-corner-radius ) at var( --hover-mask-corner-center-x ) 100% , transparent calc( var( --hover-expanded-corner-radius ) - 0.5px ) , #000 var( --hover-expanded-corner-radius ) ); --hover-mask-bottom-corner-gradient: radial-gradient( circle var( --hover-expanded-corner-radius ) at var( --hover-mask-corner-center-x ) 0% , transparent calc( var( --hover-expanded-corner-radius ) - 0.5px ) , #000 var( --hover-expanded-corner-radius ) ); }
cnc-avatar-group > cnc-avatar[shape="rounded"]:has(+ cnc-avatar:hover:not(.cnc-avatar-group_extra)) > .cnc-avatar_container, cnc-avatar-group > cnc-avatar:hover + cnc-avatar[shape="rounded"]:not(.cnc-avatar-group_extra) > .cnc-avatar_container { -webkit-mask-image: var( --hover-mask-top-corner-gradient ) , var( --hover-mask-bottom-corner-gradient ) , var( --hover-mask-edge-gradient ); mask-image: var( --hover-mask-top-corner-gradient ) , var( --hover-mask-bottom-corner-gradient ) , var( --hover-mask-edge-gradient ); -webkit-mask-position: top , bottom , center; mask-position: top , bottom , center; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: 100% var( --avatar-corner-radius ) , 100% var( --avatar-corner-radius ) , 100% 100%; mask-size: 100% var( --avatar-corner-radius ) , 100% var( --avatar-corner-radius ) , 100% 100%; }
cnc-avatar-group > cnc-avatar:hover { z-index: 1000; transform: scale( 1.08 ); -webkit-mask-image: none !important; mask-image: none !important; }
cnc-avatar-group > cnc-avatar.cnc-avatar-group_extra { z-index: 999; margin-left: var( --container-ring-width , 3px ); -webkit-mask-image: none !important; mask-image: none !important; }
cnc-avatar-group > cnc-avatar.cnc-avatar-group_extra:first-child { margin-left: 0; }
cnc-avatar-group[reverse]:not([reverse="false"]) > cnc-avatar:has(+ cnc-avatar.cnc-avatar-group_extra) { -webkit-mask-image: none !important; mask-image: none !important; }
cnc-avatar-group[animation]:not([animation="false"]):not([animation="none"]) > cnc-avatar, cnc-avatar-group.fade-in > cnc-avatar, cnc-avatar-group.hover\:fade-in:hover > cnc-avatar, .group:hover cnc-avatar-group.group-hover\:fade-in > cnc-avatar { opacity: 0; animation: cnc-avatar-group-cnc-avatar-group-fade-in var( --avatar-animation-duration ) var( --avatar-animation-timing ) forwards; animation-delay: calc( var( --avatar-animation-index , var( --avatar-index , 0 ) ) * var( --avatar-animation-stagger-delay ) ); }
@media (prefers-reduced-motion: reduce) {
cnc-avatar-group[animation]:not([animation="false"]):not([animation="none"]) > cnc-avatar, cnc-avatar-group.fade-in > cnc-avatar, cnc-avatar-group.hover\:fade-in:hover > cnc-avatar, .group:hover cnc-avatar-group.group-hover\:fade-in > cnc-avatar { animation-duration: 1ms; animation-delay: 0ms; animation-iteration-count: 1; }
}
}
@keyframes cnc-avatar-group-cnc-avatar-group-fade-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
@layer widgets {
cnc-badge { --badge-border-radius: var( --radius-full , 9999px ); --dot-border-radius: var( --badge-border-radius ); }
cnc-badge { --badge-height: 1.5rem; --badge-min-height: 0; --badge-min-width: 1.5rem; --badge-padding: 0 0.375rem; --badge-font-size: 0.75rem; --badge-line-height: 1.25rem; --dot-size: 1.5rem; --badge-offset: -0.625rem; --badge-offset-top: -0.5rem; }
cnc-badge { --badge-text-color: white; --badge-font-weight: 700; --badge-border-width: 2px; --badge-border-color: var( --color-neutral-200 ); }
.dark cnc-badge { --badge-border-color: var( --color-neutral-800 ); }
cnc-badge:not([kind]), cnc-badge[kind="default"] { --badge-bg: var( --color-neutral-400 ); }
cnc-badge[kind="primary"] { --badge-bg: var( --color-primary-400 ); }
cnc-badge[kind="success"] { --badge-bg: var( --color-success-400 ); }
cnc-badge[kind="info"] { --badge-bg: var( --color-info-400 ); }
cnc-badge[kind="warning"] { --badge-bg: var( --color-warning-400 ); }
cnc-badge[kind="danger"] { --badge-bg: var( --color-danger-400 ); }
cnc-badge .cnc-badge_badge { box-sizing: border-box; min-width: var( --badge-min-width ); min-height: var( --badge-min-height ); height: var( --badge-height ); padding: var( --badge-padding ); border: var( --badge-border-width ) solid var( --badge-border-color ); border-radius: var( --badge-border-radius ); background: var( --badge-bg ); color: var( --badge-text-color ); font-size: var( --badge-font-size ); font-weight: var( --badge-font-weight ); line-height: var( --badge-line-height ); text-align: center; }
cnc-badge .cnc-badge_badge.dot { width: var( --dot-size ); height: var( --dot-size ); min-width: 0; min-height: 0; padding: 0; border-radius: var( --dot-border-radius ); }
cnc-badge[data-placement="top-end"] .cnc-badge_badge { top: var( --badge-offset-top ); right: var( --badge-offset ); }
cnc-badge[data-placement="top-start"] .cnc-badge_badge { top: var( --badge-offset-top ); left: var( --badge-offset ); }
cnc-badge[data-placement="bottom-end"] .cnc-badge_badge { bottom: var( --badge-offset ); right: var( --badge-offset ); }
cnc-badge[data-placement="bottom-start"] .cnc-badge_badge { bottom: var( --badge-offset ); left: var( --badge-offset ); }
cnc-badge[data-placement="right-center"] .cnc-badge_badge { top: 25%; right: var( --badge-offset ); }
cnc-badge[data-placement="left-center"] .cnc-badge_badge { top: 25%; left: var( --badge-offset ); }
cnc-badge[data-placement="top-center"] .cnc-badge_badge { top: var( --badge-offset-top ); right: 33%; }
cnc-badge[data-placement="bottom-center"] .cnc-badge_badge { bottom: var( --badge-offset ); right: 33%; }
}
@layer widgets {
cnc-block { display: flex; flex: 1; flex-direction: column; }
}
@layer widgets {
cnc-breadcrumbs { --shape-border-radius: var( --radius-full , 9999px ); }
cnc-breadcrumbs[size="xxs"] { --label-font-size: 0.625rem; --icon-size: 0.75rem; --separator-size: 0.75rem; --item-gap: 0.125rem; --scroll-size: 1.25rem; }
cnc-breadcrumbs[size="xs"] { --label-font-size: 0.75rem; --icon-size: 0.875rem; --separator-size: 0.875rem; --item-gap: 0.175rem; --scroll-size: 1.375rem; }
cnc-breadcrumbs[size="sm"] { --label-font-size: 0.8125rem; --icon-size: 1rem; --separator-size: 1rem; --item-gap: 0.25rem; --scroll-size: 1.5rem; }
cnc-breadcrumbs[size="md"], cnc-breadcrumbs:not([size]) { --label-font-size: 0.875rem; --icon-size: 1.25rem; --separator-size: 1.25rem; --item-gap: 0.35rem; --scroll-size: 1.625rem; }
cnc-breadcrumbs[size="lg"] { --label-font-size: 1rem; --icon-size: 1.375rem; --separator-size: 1.375rem; --item-gap: 0.425rem; --scroll-size: 1.75rem; }
cnc-breadcrumbs[size="xl"] { --label-font-size: 1.125rem; --icon-size: 1.5rem; --separator-size: 1.5rem; --item-gap: 0.5rem; --scroll-size: 2rem; }
cnc-breadcrumbs[size="2xl"] { --label-font-size: 1.25rem; --icon-size: 1.75rem; --separator-size: 1.75rem; --item-gap: 0.6rem; --scroll-size: 2.25rem; }
cnc-breadcrumbs { display: block; container-name: breadcrumbs; container-type: inline-size; --item-text-color: var( --color-neutral-500 , #717680 ); --item-text-color-hover: var( --color-neutral-700 , #414651 ); --item-text-color-current: var( --color-neutral-900 , #181d27 ); --description-text-color: var( --color-neutral-400 , #a4a7ae ); --description-font-size: calc( var( --label-font-size ) * 0.85 ); --separator-color: var( --color-neutral-300 , #d5d7da ); --scroll-bg: rgb( 255 255 255 / 0.92 ); --scroll-color: var( --color-neutral-700 , #414651 ); --scroll-shadow: 0 1px 4px rgb( 0 0 0 / 0.2 ); }
.dark cnc-breadcrumbs { --item-text-color: var( --color-neutral-400 , #a4a7ae ); --item-text-color-hover: var( --color-neutral-200 , #e9eaeb ); --item-text-color-current: var( --color-neutral-100 , #f5f5f5 ); --description-text-color: var( --color-neutral-500 , #717680 ); --separator-color: var( --color-neutral-600 , #535862 ); --scroll-bg: rgb( 40 40 40 / 0.92 ); --scroll-color: var( --color-neutral-200 , #e9eaeb ); }
cnc-breadcrumbs[kind="chevron"], cnc-breadcrumbs:not([kind]) { --separator-mask: var( --icon-chevron-right-svg , url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m9 18 6-6-6-6' stroke='black' stroke-width='2' fill='none'/%3E%3C/svg%3E" ) ); }
cnc-breadcrumbs[kind="slash"] { --separator-mask: var( --icon-slash-svg , url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 19 19 5' stroke='black' stroke-width='2'/%3E%3C/svg%3E" ) ); }
cnc-breadcrumbs .cnc-breadcrumbs_nav { color: var( --item-text-color ); }
cnc-breadcrumbs .cnc-breadcrumbs_list { scrollbar-width: none; white-space: nowrap; }
cnc-breadcrumbs .cnc-breadcrumbs_list::-webkit-scrollbar { display: none; }
cnc-breadcrumbs .cnc-breadcrumbs_segment { display: flex; gap: var( --item-gap ); }
cnc-breadcrumbs .cnc-breadcrumbs_content, cnc-breadcrumbs .cnc-breadcrumbs_ellipsis { gap: calc( var( --item-gap ) / 2 ); color: inherit; background: transparent; border: 0; padding: 0; font: inherit; cursor: pointer; }
cnc-breadcrumbs .cnc-breadcrumbs_link { color: inherit; text-decoration: none; }
cnc-breadcrumbs .cnc-breadcrumbs_icon { inline-size: var( --icon-size ); block-size: var( --icon-size ); }
cnc-breadcrumbs .cnc-breadcrumbs_label, cnc-breadcrumbs .cnc-breadcrumbs_ellipsis { font-size: var( --label-font-size ); font-weight: 500; }
cnc-breadcrumbs .cnc-breadcrumbs_description { margin-inline-start: calc( var( --item-gap ) / 2 ); color: var( --description-text-color ); font-size: var( --description-font-size ); font-weight: 400; }
cnc-breadcrumbs .cnc-breadcrumbs_description::before { content: "("; }
cnc-breadcrumbs .cnc-breadcrumbs_description::after { content: ")"; }
cnc-breadcrumbs .cnc-breadcrumbs_segment[data-ellipsis] { display: none; }
cnc-breadcrumbs .cnc-breadcrumbs_ellipsis { display: inline-flex; align-items: center; }
cnc-breadcrumbs .cnc-breadcrumbs_separator { inline-size: var( --separator-size ); block-size: var( --separator-size ); margin-inline: var( --item-gap ); background: var( --separator-color ); mask-image: var( --separator-mask ); mask-position: center; mask-size: contain; mask-repeat: no-repeat; -webkit-mask-image: var( --separator-mask ); -webkit-mask-position: center; -webkit-mask-size: contain; -webkit-mask-repeat: no-repeat; }
cnc-breadcrumbs .cnc-breadcrumbs_scroll { position: absolute; top: 50%; display: none; align-items: center; justify-content: center; translate: 0 -50%; inline-size: var( --scroll-size ); block-size: var( --scroll-size ); padding: 0; border: 0; border-radius: var( --shape-border-radius ); color: var( --scroll-color ); background: var( --scroll-bg ); box-shadow: var( --scroll-shadow ); z-index: 2; cursor: pointer; }
cnc-breadcrumbs .cnc-breadcrumbs_scroll.visible { display: flex; }
cnc-breadcrumbs .cnc-breadcrumbs_scroll-start { inset-inline-start: 0.125rem; }
cnc-breadcrumbs .cnc-breadcrumbs_scroll-end { inset-inline-end: 0.125rem; }
cnc-breadcrumbs .cnc-breadcrumbs_nav:has(.cnc-breadcrumbs_scroll-start.visible) .cnc-breadcrumbs_list { padding-inline-start: calc( var( --scroll-size ) + 0.375rem ); }
cnc-breadcrumbs .cnc-breadcrumbs_nav:has(.cnc-breadcrumbs_scroll-end.visible) .cnc-breadcrumbs_list { padding-inline-end: calc( var( --scroll-size ) + 0.375rem ); }
cnc-breadcrumbs .cnc-breadcrumbs_content:hover, cnc-breadcrumbs .cnc-breadcrumbs_ellipsis:hover { color: var( --item-text-color-hover ); }
cnc-breadcrumbs .cnc-breadcrumbs_content[aria-current="page"] { color: var( --item-text-color-current ); font-weight: 600; cursor: default; }
@container breadcrumbs (max-width: 32rem) {
cnc-breadcrumbs[condensed] .cnc-breadcrumbs_segment[data-interior] { display: none; }
cnc-breadcrumbs[condensed] .cnc-breadcrumbs_segment[data-ellipsis] { display: flex; }
cnc-breadcrumbs[condensed][expanded] .cnc-breadcrumbs_segment[data-interior], cnc-breadcrumbs[condensed][data-expanded] .cnc-breadcrumbs_segment[data-interior] { display: flex; }
cnc-breadcrumbs[condensed][expanded] .cnc-breadcrumbs_segment[data-ellipsis], cnc-breadcrumbs[condensed][data-expanded] .cnc-breadcrumbs_segment[data-ellipsis] { display: none; }
}
}
@layer widgets {
cnc-button:where([shape="square"], [shape="rectangle"]) { --shape-border-radius: 0; }
cnc-button:where([shape="pill"]) { --shape-border-radius: var( --radius-full , 9999px ); }
cnc-button:where([shape="circle"]) { --shape-border-radius: 50%; }
cnc-button:where([shape="rounded"], :not([shape])) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-button[size="xxs"] { --shape-border-radius-rounded: var( --radius-sm , 0.25rem ); --container-font-size: 0.75rem; --container-line-height: 1rem; --container-font-weight: 600; --container-padding: 0.125rem 0.5rem; --container-padding-x-icon-only: 0.125rem; --icon-size: 0.875rem; }
cnc-button[size="xs"] { --shape-border-radius-rounded: var( --radius-md , 0.5rem ); --container-font-size: 0.75rem; --container-line-height: 1rem; --container-font-weight: 600; --container-padding: 0.25rem 0.625rem; --container-padding-x-icon-only: 0.25rem; --icon-size: 0.875rem; }
cnc-button[size="sm"] { --shape-border-radius-rounded: var( --radius-md , 0.5rem ); --container-font-size: 0.875rem; --container-line-height: 1.25rem; --container-font-weight: 600; --container-padding: 0.375rem 0.875rem; --container-padding-x-icon-only: 0.375rem; --icon-size: 1rem; }
cnc-button[size="md"], cnc-button:not([size]) { --shape-border-radius-rounded: var( --radius-lg , 0.55rem ); --container-font-size: 1rem; --container-line-height: 1.5rem; --container-padding: calc( var( --box-spacing ) * 2 ) calc( var( --box-spacing ) * 4 ); --container-padding-x-icon-only: 0.5rem; --icon-size: 1rem; }
cnc-button[size="lg"] { --shape-border-radius-rounded: var( --radius-lg , 0.55rem ); --container-font-size: 1.125rem; --container-line-height: 1.75rem; --container-padding: 0.625rem 1.125rem; --container-padding-x-icon-only: 0.625rem; --container-gap: 0.5rem; --icon-size: 1.25rem; }
cnc-button[size="xl"] { --shape-border-radius-rounded: var( --radius-xl , 0.65rem ); --container-font-size: 1.25rem; --container-line-height: 1.75rem; --container-padding: 0.875rem 1.25rem; --container-padding-x-icon-only: 0.875rem; --container-gap: 0.5rem; --icon-size: 1.25rem; }
cnc-button[size="2xl"] { --shape-border-radius-rounded: var( --radius-xl , 0.65rem ); --container-font-size: 1.5rem; --container-line-height: 2rem; --container-padding: 1rem 1.5rem; --container-padding-x-icon-only: 1rem; --icon-size: 1.5rem; }
cnc-button { line-height: 0; --container-font-weight: 500; --container-transition-duration: 150ms; --container-transition-timing: linear; --container-border-radius: var( --shape-border-radius , var( --radius-md , 0.375rem ) ); --icon-color: var( --color-500 , var( --color-neutral-500 ) ); --container-width: initial; --container-height: initial; --container-gap: initial; --container-padding: initial; --container-padding-x-icon-only: initial; --container-font-size: initial; --container-line-height: initial; --container-bg: initial; --container-bg-hover: initial; --container-bg-pressed: initial; --container-text-color: initial; --container-text-color-hover: initial; --container-text-color-pressed: initial; --container-border-color: initial; --container-outline-color: initial; --container-outline-offset: initial; --container-outline-width: initial; --container-shadow: initial; --container-shadow-hover: initial; --container-shadow-color: initial; --container-highlight-color: initial; --container-opacity-disabled: initial; --container-animation-duration: initial; --container-animation-timing: initial; --icon-size: initial; --icon-color-hover: initial; --icon-color-pressed: initial; --caret-size: initial; --label-padding-x: initial; }
cnc-button:not([kind]), cnc-button[kind="default"] { --container-bg: var( --color-600 , white ); --container-bg-hover: var( --color-700 , var( --color-neutral-50 ) ); --container-bg-pressed: var( --color-800 , var( --color-neutral-100 ) ); --container-text-color: var( --color-50 , var( --color-neutral-800 ) ); --container-text-color-hover: var( --color-50 , var( --color-neutral-800 ) ); --container-text-color-pressed: var( --color-50 , var( --color-neutral-900 ) ); --container-border-color: var( --color-700 , var( --color-gray-300 ) ); --container-outline-color: var( --color-800 , var( --color-neutral-800 ) ); --container-shadow: 0 -2px 0 0 var( --container-shadow-color , #00000015 ) inset , inset 0 0 0 1px var( --container-border-color ) , 1px 2px 2px rgba( 0 , 0 , 0 , 0.15 ); --container-shadow-hover: 0 -2px 0 0 var( --container-shadow-color , #00000015 ) inset , inset 0 0 0 1px var( --container-border-color ) , 0 0px 3px rgba( 0 , 0 , 0 , 0.28 ); --icon-color: var( --color-200 , var( --color-neutral-400 ) ); }
cnc-button-group cnc-button:not([kind]), cnc-button-group cnc-button[kind="default"] { --container-group-ring: color-mix( in oklab , var( --container-border-color ) var( --cnc-button-group-ring , 100% ) , transparent ); --container-shadow: 0 -2px 0 0 var( --container-shadow-color , #00000015 ) inset , inset 0 0 0 1px var( --container-group-ring ) , 1px 1px 4px rgba( 0 , 0 , 0 , 0.1 ); --container-shadow-hover: 0 -2px 0 0 var( --container-shadow-color , #00000015 ) inset , inset 0 0 0 1px var( --container-group-ring ); }
cnc-button-group cnc-button .cnc-button_container::before { display: none; }
.dark cnc-button:not([kind]), .dark cnc-button[kind="default"] { --container-bg: var( --color-950 , black ); --container-bg-hover: var( --color-850 , var( --color-neutral-900 ) ); --container-bg-pressed: var( --color-800 , var( --color-neutral-800 ) ); --container-text-color: var( --color-500 , var( --color-neutral-500 ) ); --container-text-color-hover: var( --color-600 , var( --color-neutral-500 ) ); --container-text-color-pressed: var( --color-100 , var( --color-neutral-50 ) ); --container-border-color: var( --color-600 , var( --color-neutral-600 ) ); --container-outline-color: var( --color-700 , var( --color-neutral-700 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
cnc-button[kind="utility2"] { --container-bg: var( --color-100 , var( --color-gray-100 ) ); --container-bg-hover: rgb( from black r g b / 2% ); --container-bg-pressed: white; --container-text-color: var( --color-gray-400 ); --container-text-color-hover: var( --color-600 , var( --color-gray-600 ) ); --container-text-color-pressed: var( --color-600 , var( --color-gray-700 ) ); --container-border-color: var( --color-100 , var( --color-gray-100 ) ); --container-outline-color: var( --color-800 , var( --color-gray-800 ) ); --icon-color: var( --color-500 , var( --color-gray-500 ) ); --container-shadow: inset 0 0 0 1px var( --container-border-color ); }
.dark cnc-button[kind="utility2"] { --container-bg: var( --color-900 , var( --color-neutral-800 ) ); --container-bg-hover: var( --color-800 , var( --color-neutral-700 ) ); --container-bg-pressed: var( --color-800 , var( --color-neutral-700 ) ); --container-text-color: var( --color-neutral-300 ); --container-text-color-hover: var( --color-200 , var( --color-neutral-200 ) ); --container-text-color-pressed: var( --color-100 , var( --color-neutral-100 ) ); --container-border-color: var( --color-900 , var( --color-neutral-800 ) ); --container-outline-color: var( --color-400 , var( --color-neutral-400 ) ); --icon-color: var( --color-400 , var( --color-neutral-400 ) ); }
cnc-button[kind="utility"] { --container-bg: transparent; --container-bg-hover: rgb( from black r g b / 2% ); --container-bg-pressed: var( --color-50 , rgb( from black r g b / 3% ) ); --container-text-color: var( --color-gray-400 ); --container-text-color-hover: var( --color-600 , var( --color-gray-600 ) ); --container-text-color-pressed: var( --color-600 , var( --color-gray-700 ) ); --container-border-color: transparent; --container-outline-color: var( --color-800 , var( --color-gray-800 ) ); --icon-color: var( --color-500 , var( --color-gray-500 ) ); --container-shadow: inset 0 0 0 1px var( --container-border-color ); }
.dark cnc-button[kind="utility"] { --container-bg-hover: var( --color-900 , var( --color-neutral-900 ) ); --container-text-color: var( --color-600 , var( --color-neutral-500 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
cnc-button[kind="toolbar"] { --container-bg: transparent; --container-bg-hover: transparent; --container-bg-pressed: white; --container-text-color: var( --color-gray-200 ); --container-text-color-hover: var( --color-600 , var( --color-gray-600 ) ); --container-text-color-pressed: var( --color-600 , var( --color-gray-700 ) ); --container-border-color: var( --color-gray-100 ); --container-outline-color: var( --color-800 , var( --color-gray-800 ) ); --icon-color: var( --color-400 , var( --color-gray-400 ) ); --icon-color-hover: var( --color-500 , var( --color-gray-500 ) ); --icon-color-pressed: var( --color-600 , var( --color-gray-600 ) ); --container-shadow: inset 0 -0.5px 0.5px 0.2px var( --color-200 , transparent ); }
.dark cnc-button[kind="toolbar"] { --container-bg-hover: var( --color-900 , var( --color-neutral-900 ) ); --container-text-color: var( --color-600 , var( --color-neutral-500 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
cnc-button[kind="soft"] { --container-bg: var( --color-100 , rgb( from var( --color-neutral-300 ) r g b / 10% ) ); --container-bg-hover: rgb( from var( --color-200 , var( --color-neutral-300 ) ) r g b / 45% ); --container-bg-pressed: rgb( from var( --color-300 , var( --color-neutral-300 ) ) r g b / 70% ); --container-text-color: var( --color-700 , var( --color-neutral-700 ) ); --container-border-color: var( --color-300 , var( --color-gray-300 ) ); --container-outline-color: transparent; --icon-color: var( --color-500 , var( --color-neutral-500 ) ); --container-shadow: 0 -2px 0 0 var( --container-shadow-color , #00000015 ) inset , inset 0 0 0 1px var( --container-border-color ) , 1px 2px 2px rgba( 0 , 0 , 0 , 0.15 ); --container-shadow-hover: 0 -2px 0 0 var( --container-shadow-color , #00000015 ) inset , inset 0 0 0 1px var( --container-border-color ) , 0 0px 3px rgba( 0 , 0 , 0 , 0.28 ); }
cnc-button-group cnc-button[kind="soft"] { --container-shadow: 0 -2px 0 0 var( --container-shadow-color , #00000015 ) inset , inset 0 0 0 1px var( --container-border-color ); --container-shadow-hover: 0 -2px 0 0 var( --container-shadow-color , #00000015 ) inset , inset 0 0 0 1px var( --container-border-color ); }
.dark cnc-button[kind="soft"] { --container-bg: rgb( from var( --color-700 , var( --color-neutral-700 ) ) r g b / 10% ); --container-bg-hover: rgb( from var( --color-900 , var( --color-neutral-700 ) ) r g b / 30% ); --container-bg-pressed: rgb( from var( --color-900 , var( --color-neutral-700 ) ) r g b / 50% ); --container-border-color: var( --color-800 , var( --color-gray-800 ) ); --container-text-color: var( --color-500 , var( --color-neutral-400 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
cnc-button[kind="outline"], cnc-button [outline]:not([outline="false"]):not([kind="soft"]):not([kind="plain"]):not([kind="link"]):not( [kind="utility"] ):not([kind="utility2"]):not([kind="toolbar"])  { --container-bg: transparent; --container-bg-hover: rgb( from var( --color-200 , var( --color-neutral-200 ) ) r g b / 25% ); --container-bg-pressed: rgb( from var( --color-300 , var( --color-neutral-300 ) ) r g b / 25% ); --container-text-color: var( --color-700 , var( --color-neutral-700 ) ); --container-border-color: var( --color-300 , var( --color-gray-300 ) ); --container-outline-color: transparent; --icon-color: var( --color-500 , var( --color-neutral-500 ) ); --container-shadow: inset 0 0 0 1px var( --container-border-color ); --container-shadow-hover: inset 0 0 0 1px var( --container-border-color ); }
.dark cnc-button[kind="outline"], .dark cnc-button[outline]:not([outline="false"]) { --container-bg: transparent; --container-bg-hover: rgb( from var( --color-900 , var( --color-neutral-700 ) ) r g b / 30% ); --container-bg-pressed: rgb( from var( --color-900 , var( --color-neutral-700 ) ) r g b / 50% ); --container-border-color: var( --color-800 , var( --color-gray-800 ) ); --container-text-color: var( --color-500 , var( --color-neutral-400 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
cnc-button[kind="plain"] { --container-bg: transparent; --container-highlight-color: transparent; --container-bg-hover: rgb( from var( --color-500 , var( --color-neutral-500 ) ) r g b / 10% ); --container-bg-pressed: rgb( from var( --color-500 , var( --color-neutral-600 ) ) r g b / 20% ); --container-text-color: var( --color-800 , var( --color-neutral-800 ) ); --container-border-color: transparent; --container-outline-color: transparent; --icon-color: var( --color-500 , var( --color-neutral-500 ) ); --container-shadow: none; }
.dark cnc-button[kind="plain"] { --container-bg-hover: rgb( from var( --color-900 , var( --color-neutral-900 ) ) r g b / 35% ); --container-text-color: var( --color-600 , var( --color-neutral-500 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
cnc-button[kind="link"] { --container-bg: transparent; --container-highlight-color: transparent; --container-bg-hover: transparent; --container-text-color: var( --color-800 , var( --color-neutral-800 ) ); --container-border-color: transparent; --container-outline-color: transparent; --icon-color: var( --color-500 , var( --color-neutral-500 ) ); --container-shadow: none; --container-height: min-content; --container-padding: 0 0.15em 2px 0; --container-border-radius: 0; }
.dark cnc-button[kind="link"] { --container-text-color: var( --color-600 , var( --color-neutral-500 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
cnc-button[wide] { display: block; width: 100%; }
cnc-button[wide] .cnc-button_container { width: 100%; }
cnc-button .cnc-button_container { appearance: none; -webkit-appearance: none; width: var( --container-width , inherit ); height: var( --container-height , auto ); gap: var( --container-gap , 0.25rem ); padding: var( --container-padding , 0.5rem 1rem ); border: 0; border-radius: var( --container-border-radius ); background: var( --container-bg ); background-image: none; box-shadow: var( --container-shadow ); color: var( --container-text-color ); color-scheme: light; cursor: inherit; font-family: inherit; font-size: var( --container-font-size , 1rem ); font-weight: var( --container-font-weight ); line-height: var( --container-line-height ); outline-color: var( --container-outline-color ); outline-offset: var( --container-outline-offset , 2px ); outline-width: var( --container-outline-width , 1px ); }
cnc-button[animation] .cnc-button_container { transition: background-color var( --container-transition-duration ) var( --container-transition-timing ) , box-shadow var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-button .cnc-button_container::before { inset: 0; border: 1px solid transparent; box-shadow: inset 0 1px 0 0 var( --container-highlight-color , color-mix( in oklab , var( --color-white ) 10% , transparent ) ); border-radius: inherit; content: ""; pointer-events: none; position: absolute; }
cnc-button .cnc-button_container:hover { background-color: var( --container-bg-hover , var( --container-bg ) ); color: var( --container-text-color-hover , var( --container-text-color ) ); box-shadow: var( --container-shadow-hover , var( --container-shadow ) ); }
cnc-button[kind="link"] .cnc-button_container:hover { text-decoration: underline; text-underline-offset: 2px; }
cnc-button .cnc-button_container:focus-visible { outline-style: solid; }
cnc-button .cnc-button_container:has(> cnc-icon):not(:has(> :not(cnc-icon))) { padding-inline: var( --container-padding-x-icon-only ); }
cnc-button .cnc-button_container:disabled, cnc-button .cnc-button_container.disabled { cursor: not-allowed; font-style: italic; opacity: var( --container-opacity-disabled , 0.6 ); }
cnc-button.pulse .cnc-button_container, cnc-button.hover\:pulse:hover .cnc-button_container, .group:hover cnc-button.group-hover\:pulse .cnc-button_container, cnc-button[animation="pulse"] .cnc-button_container { animation: cnc-button-cnc-button-pulse var( --container-animation-duration , 2s ) var( --container-animation-timing , cubic-bezier( 0.4 , 0 , 0.6 , 1 ) ) infinite; }
cnc-button .cnc-button_icon, cnc-button .cnc-button_caret { width: var( --icon-size ); height: var( --icon-size ); color: var( --icon-color ) !important; }
cnc-button .cnc-button_caret { width: var( --caret-size ); height: var( --caret-size ); }
cnc-button .cnc-button_label { padding-inline: var( --label-padding-x ); }
cnc-button .cnc-button_container:hover .cnc-button_icon, cnc-button .cnc-button_container:hover .cnc-button_caret { color: var( --icon-color-hover , var( --icon-color ) ) !important; --icon-color: var( --icon-color-hover , var( --icon-color ) ); }
cnc-button .cnc-button_container:active .cnc-button_icon, cnc-button .cnc-button_container:active .cnc-button_caret, cnc-button .cnc-button_container.pressed .cnc-button_icon, cnc-button .cnc-button_container.pressed .cnc-button_caret, cnc-button .cnc-button_container[aria-pressed="true"] .cnc-button_icon, cnc-button .cnc-button_container[aria-pressed="true"] .cnc-button_caret { color: var( --icon-color-pressed , var( --icon-color-hover , var( --icon-color ) ) ) !important; --icon-color: var( --icon-color-pressed , var( --icon-color-hover , var( --icon-color ) ) ); }
cnc-button .cnc-button_container:active, cnc-button .cnc-button_container.pressed, cnc-button .cnc-button_container[aria-pressed="true"], cnc-button[pressed]:not([pressed="false"]) .cnc-button_container { background-color: var( --container-bg-pressed , var( --container-bg-hover , var( --container-bg ) ) ); color: var( --container-text-color-pressed , var( --container-text-color ) ); }
@keyframes cnc-button-cnc-button-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}
@media (prefers-reduced-motion: reduce) {
cnc-button *, cnc-button *::before, cnc-button *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-button-group { --cnc-button-group-ring: 30%; --cnc-button-group-gap: 0.125rem; }
cnc-button-group:hover, cnc-button-group:has(:focus-visible) { --cnc-button-group-ring: 100%; }
cnc-button-group { display: inline-flex; position: relative; isolation: isolate; line-height: var( --leading-none ); z-index: 0; }
cnc-button-group[data-stretch="true"], cnc-button-group[stretch] { width: 100%; }
cnc-button-group.stretch .cnc-button-group_item { flex: 1; }
cnc-button-group[data-spaced="true"], cnc-button-group[spaced] { gap: var( --cnc-button-group-gap ); }
cnc-button-group:not([data-spaced="true"]):not([spaced]) .cnc-button-group_item:not(:first-child):not(:last-child) { --container-border-radius: 0; }
cnc-button-group:not([data-spaced="true"]):not([spaced]) .cnc-button-group_item:first-child:not(:only-child) { --container-border-radius: var( --shape-border-radius , var( --radius-md , 0.375rem ) ) 0 0 var( --shape-border-radius , var( --radius-md , 0.375rem ) ); }
cnc-button-group:not([data-spaced="true"]):not([spaced]) .cnc-button-group_item:last-child:not(:only-child) { --container-border-radius: 0 var( --shape-border-radius , var( --radius-md , 0.375rem ) ) var( --shape-border-radius , var( --radius-md , 0.375rem ) ) 0; }
cnc-button-group:not([data-spaced="true"]):not([spaced]) .cnc-button-group_item:not(:first-child) { position: relative; margin-left: -1px; }
cnc-button-group .cnc-button-group_item.active, cnc-button-group .cnc-button-group_item[data-active="true"], cnc-button-group .cnc-button-group_item:focus-within { z-index: 10; }
}
@layer widgets {
cnc-calendar-availability { display: block; width: 100%; }
cnc-calendar-availability .avail-wrapper { width: 100%; display: flex; flex-direction: column; }
cnc-calendar-availability .avail-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: calc(var(--box-spacing) * 3); }
cnc-calendar-availability .avail-title { font-size: var(--text-lg); line-height: var(--tw-leading, var(--text-lg--line-height)); font-weight: var(--font-weight-semibold); color: var(--color-slate-900); }
.dark cnc-calendar-availability .avail-title { color: var(--color-slate-100); }
cnc-calendar-availability .avail-nav { display: flex; gap: calc(var(--spacing) * 1); }
cnc-calendar-availability .avail-nav-btn { display: inline-flex; align-items: center; justify-content: center; width: calc(var(--spacing) * 9); height: calc(var(--spacing) * 9); border-radius: var(--radius-md); border-width: 1px; border-style: var(--tw-border-style); border-color: var(--color-slate-200); background-color: var(--color-slate-100); color: var(--color-slate-600); transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); cursor: pointer; }
.dark cnc-calendar-availability .avail-nav-btn { border-color: var(--color-slate-600); background-color: var(--color-slate-700); color: var(--color-slate-300); }
cnc-calendar-availability .avail-nav-btn:hover { background-color: var(--color-slate-50); }
.dark cnc-calendar-availability .avail-nav-btn:hover { background-color: var(--color-slate-600); }
cnc-calendar-availability .avail-nav-icon { color: inherit; width: calc(var(--spacing) * 5); height: calc(var(--spacing) * 5); display: block; }
cnc-calendar-availability .avail-nav-icon svg { fill: currentColor; width: 100%; height: 100%; display: block; }
cnc-calendar-availability .avail-dow-row { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; border-bottom-width: 1px; border-bottom-style: var(--tw-border-style); border-color: var(--color-slate-300); background-color: var(--color-slate-200); text-align: center; font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-semibold); --tw-leading: calc(var(--spacing) * 6); line-height: calc(var(--spacing) * 6); color: var(--color-slate-700); }
.dark cnc-calendar-availability .avail-dow-row { border-color: var(--color-slate-600); background-color: var(--color-slate-700); color: var(--color-slate-200); }
cnc-calendar-availability .avail-dow { background-color: var(--color-slate-100); padding-block: calc(var(--box-spacing) * 2); }
.dark cnc-calendar-availability .avail-dow { background-color: var(--color-slate-800); }
cnc-calendar-availability .avail-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; background-color: var(--color-slate-200); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
.dark cnc-calendar-availability .avail-grid { background-color: var(--color-slate-700); }
cnc-calendar-availability .avail-day { display: flex; justify-content: center; align-items: center; aspect-ratio: 1 / 1; min-width: 40px; min-height: 40px; background-color: var(--color-white); cursor: pointer; border-width: 0px; border-style: var(--tw-border-style); color: var(--color-slate-700); }
.dark cnc-calendar-availability .avail-day { background-color: var(--color-slate-800); color: var(--color-slate-300); }
cnc-calendar-availability .avail-day:hover { background-color: var(--color-slate-100); }
.dark cnc-calendar-availability .avail-day:hover { background-color: var(--color-slate-700); }
cnc-calendar-availability .avail-day-out { background-color: var(--color-slate-50); color: var(--color-slate-400); }
.dark cnc-calendar-availability .avail-day-out { background-color: var(--color-slate-900); color: var(--color-slate-500); }
cnc-calendar-availability .avail-day-italic { font-style: italic; font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
cnc-calendar-availability .avail-day-nonwork { background-color: var(--color-slate-100); color: var(--color-slate-400); cursor: default; }
.dark cnc-calendar-availability .avail-day-nonwork { background-color: color-mix(in oklab, var(--color-slate-900) 50%, transparent); color: var(--color-slate-500); }
cnc-calendar-availability .avail-day-selected { background-color: var(--color-primary-600); color: var(--color-white); font-weight: var(--font-weight-semibold); border-radius: calc(infinity * 1px); }
cnc-calendar-availability .avail-day-selected:hover { background-color: var(--color-primary-700); }
cnc-calendar-availability .avail-today { display: inline-flex; height: calc(var(--spacing) * 6); width: calc(var(--spacing) * 6); align-items: center; justify-content: center; border-radius: calc(infinity * 1px); border-width: 1px; border-style: var(--tw-border-style); border-style: solid; border-color: var(--color-slate-400); }
.dark cnc-calendar-availability .avail-today { border-color: var(--color-slate-500); }
cnc-calendar-availability .avail-day-selected .avail-today { border-color: var(--color-white); }
cnc-calendar-availability .avail-day-num { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: calc(infinity * 1px); }
}
@layer widgets {
cnc-calendar { display: block; width: 100%; }
cnc-calendar .cal-wrapper { width: 100%; display: flex; flex-direction: column; }
cnc-calendar .cal-header { position: relative; z-index: 20; display: flex; align-items: center; justify-content: space-between; border-bottom-width: 1px; border-bottom-style: var(--tw-border-style); border-color: var(--color-slate-200); padding-block: calc(var(--box-spacing) * 4); padding-inline: calc(var(--box-spacing) * 6); }
.dark cnc-calendar .cal-header { border-color: var(--color-slate-700); }
cnc-calendar .cal-title { font-size: var(--text-lg); line-height: var(--tw-leading, var(--text-lg--line-height)); font-weight: var(--font-weight-semibold); color: var(--color-slate-900); }
.dark cnc-calendar .cal-title { color: var(--color-slate-100); }
cnc-calendar .cal-nav { display: flex; gap: calc(var(--spacing) * 1); }
cnc-calendar .cal-nav-btn { display: inline-flex; align-items: center; justify-content: center; width: calc(var(--spacing) * 9); height: calc(var(--spacing) * 9); border-radius: var(--radius-md); border-width: 1px; border-style: var(--tw-border-style); border-color: var(--color-slate-200); background-color: var(--color-slate-100); color: var(--color-slate-600); transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); cursor: pointer; }
.dark cnc-calendar .cal-nav-btn { border-color: var(--color-slate-600); background-color: var(--color-slate-700); color: var(--color-slate-300); }
cnc-calendar .cal-nav-btn:hover { background-color: var(--color-slate-50); }
.dark cnc-calendar .cal-nav-btn:hover { background-color: var(--color-slate-600); }
cnc-calendar .cal-grid-header { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; border-bottom-width: 1px; border-bottom-style: var(--tw-border-style); border-color: var(--color-slate-300); background-color: var(--color-slate-200); text-align: center; font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-semibold); --tw-leading: calc(var(--spacing) * 6); line-height: calc(var(--spacing) * 6); color: var(--color-slate-700); }
.dark cnc-calendar .cal-grid-header { border-color: var(--color-slate-600); background-color: var(--color-slate-700); color: var(--color-slate-200); }
cnc-calendar .cal-dow { background-color: var(--color-slate-100); padding-block: calc(var(--box-spacing) * 2); }
.dark cnc-calendar .cal-dow { background-color: var(--color-slate-800); }
cnc-calendar .cal-dow-long { display: none; }
@media (min-width: 640px) {
cnc-calendar .cal-dow-long { display: inline; }
}
cnc-calendar .cal-grid { background-color: var(--color-slate-200); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); --tw-leading: calc(var(--spacing) * 6); line-height: calc(var(--spacing) * 6); color: var(--color-slate-700); }
.dark cnc-calendar .cal-grid { background-color: var(--color-slate-700); color: var(--color-slate-300); }
cnc-calendar .cal-grid-desktop { display: none; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; }
@media (min-width: 1024px) {
cnc-calendar .cal-grid-desktop { display: grid; }
}
cnc-calendar .cal-grid-mobile { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; }
@media (min-width: 1024px) {
cnc-calendar .cal-grid-mobile { display: none; }
}
cnc-calendar .cal-day { position: relative; padding-block: calc(var(--box-spacing) * 2); padding-inline: calc(var(--box-spacing) * 3); padding-bottom: calc(var(--box-spacing) * 16); background-color: var(--color-slate-100); cursor: pointer; }
.dark cnc-calendar .cal-day { background-color: var(--color-slate-800); }
cnc-calendar .cal-day-out { background-color: var(--color-slate-50); color: var(--color-slate-400); }
.dark cnc-calendar .cal-day-out { background-color: var(--color-slate-900); color: var(--color-slate-500); }
cnc-calendar .cal-day-clickable { cursor: pointer; }
cnc-calendar .cal-day-clickable:hover { background-color: var(--color-slate-100); }
.dark cnc-calendar .cal-day-clickable:hover { background-color: var(--color-slate-700); }
cnc-calendar .cal-day:not(.cal-day-out):hover { background-color: var(--color-slate-100); }
.dark cnc-calendar .cal-day:not(.cal-day-out):hover { background-color: var(--color-slate-700); }
cnc-calendar .cal-day-selected { background-color: var(--color-primary-50); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-inset: inset; --tw-ring-color: var(--color-primary-500); }
.dark cnc-calendar .cal-day-selected { background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); }
cnc-calendar .cal-today { display: inline-flex; height: calc(var(--spacing) * 6); width: calc(var(--spacing) * 6); align-items: center; justify-content: center; border-radius: calc(infinity * 1px); background-color: var(--color-primary-600); font-weight: var(--font-weight-semibold); color: var(--color-white); }
cnc-calendar .cal-event { margin-top: calc(var(--box-spacing) * 2); display: flex; align-items: center; gap: calc(var(--spacing) * 2); }
cnc-calendar .cal-event-link { text-decoration-line: none; }
cnc-calendar .cal-event-more { cursor: pointer; font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); color: var(--color-neutral-500); }
.dark cnc-calendar .cal-event-more { color: var(--color-neutral-400); }
cnc-calendar .cal-event-more:hover { color: var(--color-primary-600); }
.dark cnc-calendar .cal-event-more:hover { color: var(--color-primary-400); }
cnc-calendar .cal-event-link:hover .cal-event-name, cnc-calendar .cal-event-link:hover .cal-event-time { color: var(--color-primary-600); }
.dark cnc-calendar .cal-event-link:hover .cal-event-name, .dark cnc-calendar .cal-event-link:hover .cal-event-time { color: var(--color-primary-400); }
cnc-calendar .cal-event-name { flex: auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: var(--font-weight-medium); color: var(--color-slate-900); }
.dark cnc-calendar .cal-event-name { color: var(--color-slate-100); }
cnc-calendar .cal-event-time { display: none; margin-left: calc(var(--box-spacing) * 3); flex: none; color: var(--color-slate-500); }
.dark cnc-calendar .cal-event-time { color: var(--color-slate-400); }
@media (min-width: 1280px) {
cnc-calendar .cal-event-time { display: block; }
}
cnc-calendar .cal-day-mobile { display: flex; height: calc(var(--spacing) * 14); flex-direction: column; padding-block: calc(var(--box-spacing) * 2); padding-inline: calc(var(--box-spacing) * 3); background-color: var(--color-slate-100); cursor: pointer; border-width: 0px; border-style: var(--tw-border-style); }
.dark cnc-calendar .cal-day-mobile { background-color: var(--color-slate-800); }
cnc-calendar .cal-day-mobile:hover { background-color: var(--color-slate-100); }
.dark cnc-calendar .cal-day-mobile:hover { background-color: var(--color-slate-700); }
cnc-calendar .cal-day-mobile:focus { z-index: 10; }
cnc-calendar .cal-day-mobile.cal-day-selected { background-color: var(--color-primary-50); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-inset: inset; --tw-ring-color: var(--color-primary-500); }
.dark cnc-calendar .cal-day-mobile.cal-day-selected { background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); }
cnc-calendar .cal-day-mobile.cal-day-out { background-color: var(--color-slate-50); color: var(--color-slate-400); }
.dark cnc-calendar .cal-day-mobile.cal-day-out { background-color: var(--color-slate-900); color: var(--color-slate-500); }
cnc-calendar .cal-day-num { margin-left: auto; font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
cnc-calendar .cal-dots { margin-inline: calc(var(--box-spacing) * -0.5); margin-top: auto; display: flex; flex-wrap: wrap-reverse; }
cnc-calendar .cal-dot { margin-inline: calc(var(--box-spacing) * 0.5); margin-bottom: calc(var(--box-spacing) * 1); height: calc(var(--spacing) * 1.5); width: calc(var(--spacing) * 1.5); border-radius: calc(infinity * 1px); background-color: var(--color-slate-400); display: block; }
.dark cnc-calendar .cal-dot { background-color: var(--color-slate-500); }
cnc-calendar .cal-events-mobile { display: block; }
@media (min-width: 1024px) {
cnc-calendar .cal-events-mobile { display: none; }
}
cnc-calendar .cal-event-card { padding-block: calc(var(--box-spacing) * 2); }
cnc-calendar .cal-event-card-body { overflow: hidden; border-radius: var(--radius-lg); background-color: var(--color-slate-100); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: color-mix(in oklab, var(--color-black) 5%, transparent); display: flex; padding: calc(var(--box-spacing) * 4); padding-right: calc(var(--box-spacing) * 6); align-items: center; }
.dark cnc-calendar .cal-event-card-body { background-color: var(--color-slate-800); --tw-ring-color: color-mix(in oklab, var(--color-white) 5%, transparent); }
cnc-calendar .cal-event-card-body:hover { background-color: var(--color-slate-50); }
.dark cnc-calendar .cal-event-card-body:hover { background-color: var(--color-slate-700); }
cnc-calendar .cal-event-card-name { font-weight: var(--font-weight-semibold); color: var(--color-slate-900); flex: auto; }
.dark cnc-calendar .cal-event-card-name { color: var(--color-slate-100); }
cnc-calendar .cal-event-card-time { margin-top: calc(var(--box-spacing) * 2); display: flex; align-items: center; color: var(--color-slate-700); }
.dark cnc-calendar .cal-event-card-time { color: var(--color-slate-300); }
cnc-calendar .cal-nav-icon { color: inherit; width: calc(var(--spacing) * 5); height: calc(var(--spacing) * 5); display: block; }
cnc-calendar .cal-nav-icon svg { fill: currentColor; width: 100%; height: 100%; display: block; }
cnc-calendar .cal-clock-icon { vertical-align: middle; width: calc(var(--spacing) * 4); height: calc(var(--spacing) * 4); margin-right: calc(var(--box-spacing) * 2); color: var(--color-slate-400); display: inline-block; }
.dark cnc-calendar .cal-clock-icon { color: var(--color-slate-500); }
cnc-calendar .cal-clock-icon svg { fill: currentColor; width: 100%; height: 100%; display: block; }
cnc-calendar .cal-day-number, cnc-calendar button.cal-event { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: left; padding: 0; cursor: pointer; }
cnc-calendar button.cal-event { width: 100%; }
cnc-calendar .cal-day-number:focus-visible, cnc-calendar button.cal-event:focus-visible, cnc-calendar .cal-day-mobile:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
cnc-calendar *, cnc-calendar *::before, cnc-calendar *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-calendar-compact { display: block; width: 100%; }
cnc-calendar-compact .compact-wrapper { text-align: center; }
cnc-calendar-compact .compact-header { display: flex; align-items: center; justify-content: space-between; color: var(--color-slate-900); }
.dark cnc-calendar-compact .compact-header { color: var(--color-slate-100); }
cnc-calendar-compact .compact-nav-btn { margin: calc(var(--box-spacing) * -1.5); display: flex; align-items: center; justify-content: center; padding: calc(var(--box-spacing) * 1.5); color: var(--color-slate-400); cursor: pointer; border-width: 0px; border-style: var(--tw-border-style); background-color: transparent; }
.dark cnc-calendar-compact .compact-nav-btn { color: var(--color-slate-300); }
cnc-calendar-compact .compact-nav-btn:hover { color: var(--color-slate-500); }
.dark cnc-calendar-compact .compact-nav-btn:hover { color: var(--color-slate-100); }
cnc-calendar-compact .compact-nav-icon { color: inherit; width: calc(var(--spacing) * 5); height: calc(var(--spacing) * 5); display: block; }
cnc-calendar-compact .compact-nav-icon svg { fill: currentColor; width: 100%; height: 100%; display: block; }
cnc-calendar-compact .compact-title { font-weight: var(--font-weight-semibold); }
cnc-calendar-compact .compact-dow-row { margin-top: calc(var(--box-spacing) * 4); display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); --tw-leading: calc(var(--spacing) * 6); line-height: calc(var(--spacing) * 6); color: var(--color-slate-500); }
.dark cnc-calendar-compact .compact-dow-row { color: var(--color-slate-400); }
cnc-calendar-compact .compact-grid { isolation: isolate; margin-top: calc(var(--box-spacing) * 2); display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); border-radius: var(--radius-md); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: var(--color-slate-200); background-color: var(--color-white); }
.dark cnc-calendar-compact .compact-grid { --tw-ring-color: var(--color-slate-600); background-color: var(--color-slate-800); }
cnc-calendar-compact .compact-day { position: relative; display: flex; align-items: center; justify-content: center; border-width: 0px; border-style: var(--tw-border-style); background-color: transparent; cursor: pointer; }
cnc-calendar-compact .compact-day-in { color: var(--color-slate-900); }
.dark cnc-calendar-compact .compact-day-in { color: var(--color-slate-200); }
cnc-calendar-compact .compact-day-in:hover { border-radius: calc(infinity * 1px); background-color: var(--color-slate-200); }
.dark cnc-calendar-compact .compact-day-in:hover { background-color: var(--color-slate-700); }
cnc-calendar-compact .compact-day-out { color: var(--color-slate-400); }
.dark cnc-calendar-compact .compact-day-out { color: var(--color-slate-500); }
cnc-calendar-compact .compact-day-out:hover { border-radius: calc(infinity * 1px); background-color: var(--color-slate-200); }
.dark cnc-calendar-compact .compact-day-out:hover { background-color: var(--color-slate-700); }
cnc-calendar-compact .compact-day-num { cursor: pointer; max-width: 39px; width: 39px; --tw-leading: 39px; line-height: 39px; display: inline-block; text-align: center; }
cnc-calendar-compact .compact-day-selected { border-radius: calc(infinity * 1px); color: var(--color-white); background-color: var(--color-primary-600); font-weight: var(--font-weight-semibold); }
cnc-calendar-compact .compact-day-dot { position: absolute; bottom: 3px; left: 50%; height: calc(var(--spacing) * 1); width: calc(var(--spacing) * 1); --tw-translate-x: -50%; translate: var(--tw-translate-x) var(--tw-translate-y); border-radius: calc(infinity * 1px); background-color: var(--color-primary-500); }
cnc-calendar-compact .compact-day-selected .compact-day-dot { background-color: var(--color-white); }
cnc-calendar-compact .compact-day-out .compact-day-dot { background-color: var(--color-slate-300); }
.dark cnc-calendar-compact .compact-day-out .compact-day-dot { background-color: var(--color-slate-600); }
cnc-calendar-compact .compact-day-selected:hover { background-color: var(--color-primary-700); }
cnc-calendar-compact .compact-day-range-end { color: var(--color-white); background-color: var(--color-primary-600); font-weight: var(--font-weight-semibold); }
cnc-calendar-compact .compact-day-range-start { border-top-left-radius: var(--radius-3xl); border-bottom-left-radius: var(--radius-3xl); border-top-right-radius: var(--radius-none); border-bottom-right-radius: var(--radius-none); }
cnc-calendar-compact .compact-day-range-end-side { border-top-left-radius: var(--radius-none); border-bottom-left-radius: var(--radius-none); border-top-right-radius: var(--radius-3xl); border-bottom-right-radius: var(--radius-3xl); }
cnc-calendar-compact .compact-day-range-both { border-radius: calc(infinity * 1px); }
cnc-calendar-compact .compact-day-in-range { background-color: var(--color-slate-200); }
.dark cnc-calendar-compact .compact-day-in-range { background-color: var(--color-slate-600); }
cnc-calendar-compact .compact-day-today { border-radius: calc(infinity * 1px); border-width: 1px; border-style: var(--tw-border-style); border-style: solid; border-color: var(--color-slate-400); font-weight: var(--font-weight-semibold); }
.dark cnc-calendar-compact .compact-day-today { border-color: var(--color-slate-500); }
cnc-calendar-compact .compact-day-today:hover { background-color: var(--color-slate-400); }
.dark cnc-calendar-compact .compact-day-today:hover { background-color: var(--color-slate-600); }
cnc-calendar-compact .compact-events { margin-top: calc(var(--box-spacing) * 4); }
cnc-calendar-compact .compact-event-card { padding-block: calc(var(--box-spacing) * 2); }
cnc-calendar-compact .compact-event-body { overflow: hidden; border-radius: var(--radius-lg); background-color: var(--color-slate-100); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: color-mix(in oklab, var(--color-black) 5%, transparent); display: flex; padding: calc(var(--box-spacing) * 4); padding-right: calc(var(--box-spacing) * 6); align-items: center; }
.dark cnc-calendar-compact .compact-event-body { background-color: var(--color-slate-800); --tw-ring-color: color-mix(in oklab, var(--color-white) 5%, transparent); }
cnc-calendar-compact .compact-event-body:hover { background-color: var(--color-slate-50); }
.dark cnc-calendar-compact .compact-event-body:hover { background-color: var(--color-slate-700); }
cnc-calendar-compact .compact-event-name { font-weight: var(--font-weight-semibold); color: var(--color-slate-900); flex: auto; text-align: left; }
.dark cnc-calendar-compact .compact-event-name { color: var(--color-slate-100); }
cnc-calendar-compact .compact-event-meta { display: flex; align-items: center; color: var(--color-slate-700); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); gap: calc(var(--spacing) * 2); }
.dark cnc-calendar-compact .compact-event-meta { color: var(--color-slate-300); }
cnc-calendar-compact .compact-event-date { color: var(--color-slate-400); }
.dark cnc-calendar-compact .compact-event-date { color: var(--color-slate-500); }
cnc-calendar-compact .compact-clock-icon { vertical-align: middle; width: calc(var(--spacing) * 4); height: calc(var(--spacing) * 4); color: var(--color-slate-400); display: inline-block; }
.dark cnc-calendar-compact .compact-clock-icon { color: var(--color-slate-500); }
cnc-calendar-compact .compact-clock-icon svg { fill: currentColor; width: 100%; height: 100%; display: block; }
}
@layer widgets {
cnc-calendar-event { display: block; width: 100%; }
cnc-calendar-event .event-wrapper { width: 100%; display: flex; flex-direction: column; }
cnc-calendar-event .event-header { display: flex; align-items: center; justify-content: space-between; border-bottom-width: 1px; border-bottom-style: var(--tw-border-style); border-color: var(--color-slate-200); padding-block: calc(var(--box-spacing) * 4); padding-inline: calc(var(--box-spacing) * 6); }
.dark cnc-calendar-event .event-header { border-color: var(--color-slate-700); }
cnc-calendar-event .event-title { font-size: var(--text-lg); line-height: var(--tw-leading, var(--text-lg--line-height)); font-weight: var(--font-weight-semibold); color: var(--color-slate-900); }
.dark cnc-calendar-event .event-title { color: var(--color-slate-100); }
cnc-calendar-event .event-nav { display: flex; gap: calc(var(--spacing) * 1); }
cnc-calendar-event .event-nav-btn { display: inline-flex; align-items: center; justify-content: center; width: calc(var(--spacing) * 9); height: calc(var(--spacing) * 9); border-radius: var(--radius-md); border-width: 1px; border-style: var(--tw-border-style); border-color: var(--color-slate-200); background-color: var(--color-slate-100); color: var(--color-slate-600); transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); cursor: pointer; }
.dark cnc-calendar-event .event-nav-btn { border-color: var(--color-slate-600); background-color: var(--color-slate-700); color: var(--color-slate-300); }
cnc-calendar-event .event-nav-btn:hover { background-color: var(--color-slate-50); }
.dark cnc-calendar-event .event-nav-btn:hover { background-color: var(--color-slate-600); }
cnc-calendar-event .event-nav-icon { color: inherit; width: calc(var(--spacing) * 5); height: calc(var(--spacing) * 5); display: block; }
cnc-calendar-event .event-nav-icon svg { fill: currentColor; width: 100%; height: 100%; display: block; }
cnc-calendar-event .event-dow-row { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; border-bottom-width: 1px; border-bottom-style: var(--tw-border-style); border-color: var(--color-slate-300); background-color: var(--color-slate-200); text-align: center; font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-semibold); --tw-leading: calc(var(--spacing) * 6); line-height: calc(var(--spacing) * 6); color: var(--color-slate-700); }
.dark cnc-calendar-event .event-dow-row { border-color: var(--color-slate-600); background-color: var(--color-slate-700); color: var(--color-slate-200); }
cnc-calendar-event .event-dow { background-color: var(--color-slate-100); padding-block: calc(var(--box-spacing) * 2); }
.dark cnc-calendar-event .event-dow { background-color: var(--color-slate-800); }
cnc-calendar-event .event-dow-long { display: none; }
@media (min-width: 640px) {
cnc-calendar-event .event-dow-long { display: inline; }
}
cnc-calendar-event .event-grid-desktop { display: none; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; background-color: var(--color-slate-200); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); --tw-leading: calc(var(--spacing) * 6); line-height: calc(var(--spacing) * 6); color: var(--color-slate-700); }
.dark cnc-calendar-event .event-grid-desktop { background-color: var(--color-slate-700); color: var(--color-slate-300); }
@media (min-width: 1024px) {
cnc-calendar-event .event-grid-desktop { display: grid; }
}
cnc-calendar-event .event-day { position: relative; padding-block: calc(var(--box-spacing) * 2); padding-inline: calc(var(--box-spacing) * 3); padding-bottom: calc(var(--box-spacing) * 16); background-color: var(--color-slate-100); cursor: pointer; }
.dark cnc-calendar-event .event-day { background-color: var(--color-slate-800); }
cnc-calendar-event .event-day-out { background-color: var(--color-slate-50); color: var(--color-slate-400); cursor: pointer; }
.dark cnc-calendar-event .event-day-out { background-color: var(--color-slate-900); color: var(--color-slate-500); }
cnc-calendar-event .event-day-out:hover { background-color: var(--color-slate-100); }
.dark cnc-calendar-event .event-day-out:hover { background-color: var(--color-slate-700); }
cnc-calendar-event .event-day:not(.event-day-out):hover { background-color: var(--color-slate-100); }
.dark cnc-calendar-event .event-day:not(.event-day-out):hover { background-color: var(--color-slate-700); }
cnc-calendar-event .event-day-selected { background-color: var(--color-primary-50); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-inset: inset; --tw-ring-color: var(--color-primary-500); }
.dark cnc-calendar-event .event-day-selected { background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); }
cnc-calendar-event .event-today { display: inline-flex; height: calc(var(--spacing) * 6); width: calc(var(--spacing) * 6); align-items: center; justify-content: center; border-radius: calc(infinity * 1px); background-color: var(--color-primary-600); font-weight: var(--font-weight-semibold); color: var(--color-white); }
cnc-calendar-event .event-ev { margin-top: calc(var(--box-spacing) * 2); display: flex; align-items: center; gap: calc(var(--spacing) * 2); }
cnc-calendar-event .event-ev-link { text-decoration-line: none; }
cnc-calendar-event .event-ev-link:hover .event-ev-name, cnc-calendar-event .event-ev-link:hover .event-ev-time { color: var(--color-primary-600); }
.dark cnc-calendar-event .event-ev-link:hover .event-ev-name, .dark cnc-calendar-event .event-ev-link:hover .event-ev-time { color: var(--color-primary-400); }
cnc-calendar-event .event-ev-name { flex: auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: var(--font-weight-medium); color: var(--color-slate-900); }
.dark cnc-calendar-event .event-ev-name { color: var(--color-slate-100); }
cnc-calendar-event .event-ev-time { display: none; margin-left: calc(var(--box-spacing) * 3); flex: none; color: var(--color-slate-500); }
.dark cnc-calendar-event .event-ev-time { color: var(--color-slate-400); }
@media (min-width: 1280px) {
cnc-calendar-event .event-ev-time { display: block; }
}
cnc-calendar-event .event-grid-mobile { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; background-color: var(--color-slate-200); }
.dark cnc-calendar-event .event-grid-mobile { background-color: var(--color-slate-700); }
@media (min-width: 1024px) {
cnc-calendar-event .event-grid-mobile { display: none; }
}
cnc-calendar-event .event-mday { display: flex; height: calc(var(--spacing) * 14); flex-direction: column; padding-block: calc(var(--box-spacing) * 2); padding-inline: calc(var(--box-spacing) * 3); background-color: var(--color-slate-100); cursor: pointer; border-width: 0px; border-style: var(--tw-border-style); }
.dark cnc-calendar-event .event-mday { background-color: var(--color-slate-800); }
cnc-calendar-event .event-mday:hover { background-color: var(--color-slate-100); }
.dark cnc-calendar-event .event-mday:hover { background-color: var(--color-slate-700); }
cnc-calendar-event .event-mday-out { background-color: var(--color-slate-50); color: var(--color-slate-400); }
.dark cnc-calendar-event .event-mday-out { background-color: var(--color-slate-900); color: var(--color-slate-500); }
cnc-calendar-event .event-mday-selected { background-color: var(--color-primary-50); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-inset: inset; --tw-ring-color: var(--color-primary-500); }
.dark cnc-calendar-event .event-mday-selected { background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); }
cnc-calendar-event .event-mday-num { margin-left: auto; font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
cnc-calendar-event .event-dots { margin-inline: calc(var(--box-spacing) * -0.5); margin-top: auto; display: flex; flex-wrap: wrap-reverse; }
cnc-calendar-event .event-dot { margin-inline: calc(var(--box-spacing) * 0.5); margin-bottom: calc(var(--box-spacing) * 1); height: calc(var(--spacing) * 1.5); width: calc(var(--spacing) * 1.5); border-radius: calc(infinity * 1px); background-color: var(--color-slate-400); display: block; }
.dark cnc-calendar-event .event-dot { background-color: var(--color-slate-500); }
cnc-calendar-event .event-cards-mobile { display: block; }
@media (min-width: 1024px) {
cnc-calendar-event .event-cards-mobile { display: none; }
}
cnc-calendar-event .event-card { padding-block: calc(var(--box-spacing) * 2); }
cnc-calendar-event .event-card-body { overflow: hidden; border-radius: var(--radius-lg); background-color: var(--color-slate-100); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: color-mix(in oklab, var(--color-black) 5%, transparent); display: flex; padding: calc(var(--box-spacing) * 4); padding-right: calc(var(--box-spacing) * 6); align-items: center; }
.dark cnc-calendar-event .event-card-body { background-color: var(--color-slate-800); --tw-ring-color: color-mix(in oklab, var(--color-white) 5%, transparent); }
cnc-calendar-event .event-card-body:hover { background-color: var(--color-slate-50); }
.dark cnc-calendar-event .event-card-body:hover { background-color: var(--color-slate-700); }
cnc-calendar-event .event-card-name { font-weight: var(--font-weight-semibold); color: var(--color-slate-900); flex: auto; }
.dark cnc-calendar-event .event-card-name { color: var(--color-slate-100); }
cnc-calendar-event .event-card-time { display: flex; align-items: center; color: var(--color-slate-700); }
.dark cnc-calendar-event .event-card-time { color: var(--color-slate-300); }
cnc-calendar-event .event-clock-icon { vertical-align: middle; width: calc(var(--spacing) * 4); height: calc(var(--spacing) * 4); margin-right: calc(var(--box-spacing) * 2); color: var(--color-slate-400); display: inline-block; }
.dark cnc-calendar-event .event-clock-icon { color: var(--color-slate-500); }
cnc-calendar-event .event-clock-icon svg { fill: currentColor; width: 100%; height: 100%; display: block; }
}
@layer widgets {
cnc-calendar-scroller { display: block; width: 100%; }
cnc-calendar-scroller .scroller-wrapper { width: 100%; }
cnc-calendar-scroller .scroller-header { display: flex; align-items: center; justify-content: center; gap: calc(var(--spacing) * 1); margin-bottom: calc(var(--box-spacing) * 2); }
cnc-calendar-scroller .scroller-title { font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); font-weight: var(--font-weight-semibold); color: var(--color-slate-700); }
.dark cnc-calendar-scroller .scroller-title { color: var(--color-slate-300); }
cnc-calendar-scroller .scroller-nav-btn { flex: none; display: flex; align-items: center; justify-content: center; padding: calc(var(--box-spacing) * 1); cursor: pointer; background-color: transparent; border-width: 0px; border-style: var(--tw-border-style); border-radius: 0.25rem; }
cnc-calendar-scroller .scroller-nav-btn:hover { background-color: var(--color-slate-100); }
.dark cnc-calendar-scroller .scroller-nav-btn:hover { background-color: var(--color-slate-700); }
cnc-calendar-scroller .scroller-nav-icon { width: calc(var(--spacing) * 4); height: calc(var(--spacing) * 4); color: var(--color-slate-400); }
.dark cnc-calendar-scroller .scroller-nav-icon { color: var(--color-slate-500); }
cnc-calendar-scroller .scroller-body { display: flex; align-items: center; justify-content: center; vertical-align: middle; }
cnc-calendar-scroller .scroller-arrow { flex: none; padding: calc(var(--box-spacing) * 1); cursor: pointer; background-color: transparent; border-width: 0px; border-style: var(--tw-border-style); }
cnc-calendar-scroller .scroller-arrow-svg { width: calc(var(--spacing) * 6); height: calc(var(--spacing) * 8); margin-top: calc(var(--box-spacing) * 2); color: var(--color-slate-400); }
.dark cnc-calendar-scroller .scroller-arrow-svg { color: var(--color-slate-600); }
cnc-calendar-scroller .scroller-track { overscroll-behavior-x: contain; flex: 1; position: relative; width: 100%; margin-top: calc(var(--box-spacing) * 2); display: grid; gap: calc(var(--spacing) * 2); padding: calc(var(--box-spacing) * 1); grid-auto-flow: column; grid-auto-columns: max-content; overflow-y: auto; scroll-snap-type: x var(--tw-scroll-snap-strictness); --tw-scroll-snap-strictness: mandatory; border-radius: var(--radius-md); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); border-width: 1px; border-style: var(--tw-border-style); border-color: var(--color-slate-200); background-color: var(--color-white); }
.dark cnc-calendar-scroller .scroller-track { border-color: var(--color-slate-700); background-color: var(--color-slate-800); }
cnc-calendar-scroller .scroller-day { display: flex; justify-content: center; width: calc(var(--spacing) * 12); scroll-snap-align: start; cursor: pointer; border-radius: var(--radius-lg); color: var(--color-slate-900); user-select: none; }
.dark cnc-calendar-scroller .scroller-day { color: var(--color-slate-200); }
cnc-calendar-scroller .scroller-day:hover { background-color: var(--color-slate-200); border-radius: var(--radius-lg); }
.dark cnc-calendar-scroller .scroller-day:hover { background-color: var(--color-slate-700); }
cnc-calendar-scroller .scroller-day-nonwork { color: var(--color-slate-400); background-color: var(--color-slate-50); }
.dark cnc-calendar-scroller .scroller-day-nonwork { color: var(--color-slate-500); background-color: color-mix(in oklab, var(--color-slate-900) 50%, transparent); }
cnc-calendar-scroller .scroller-day-selected { border-radius: var(--radius-lg); color: var(--color-white); background-color: var(--color-primary-600); font-weight: var(--font-weight-semibold); }
cnc-calendar-scroller .scroller-day-selected:hover { background-color: var(--color-primary-700); }
cnc-calendar-scroller .scroller-day-range-start { border-top-left-radius: var(--radius-3xl); border-bottom-left-radius: var(--radius-3xl); border-top-right-radius: var(--radius-none); border-bottom-right-radius: var(--radius-none); }
cnc-calendar-scroller .scroller-day-range-end { border-top-left-radius: var(--radius-none); border-bottom-left-radius: var(--radius-none); border-top-right-radius: var(--radius-3xl); border-bottom-right-radius: var(--radius-3xl); }
cnc-calendar-scroller .scroller-day-in-range { background-color: var(--color-slate-200); }
.dark cnc-calendar-scroller .scroller-day-in-range { background-color: var(--color-slate-600); }
cnc-calendar-scroller .scroller-day-today { border-radius: var(--radius-lg); border-width: 1px; border-style: var(--tw-border-style); border-style: solid; border-color: var(--color-slate-400); font-weight: var(--font-weight-semibold); }
.dark cnc-calendar-scroller .scroller-day-today { border-color: var(--color-slate-500); }
cnc-calendar-scroller .scroller-day-today:hover { background-color: var(--color-slate-300); }
.dark cnc-calendar-scroller .scroller-day-today:hover { background-color: var(--color-slate-600); }
cnc-calendar-scroller .scroller-day-inner { display: flex; flex-direction: column; align-items: center; margin: calc(var(--box-spacing) * 2); --tw-leading: calc(var(--spacing) * 5); line-height: calc(var(--spacing) * 5); }
cnc-calendar-scroller .scroller-day-name { text-transform: uppercase; font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-semibold); }
cnc-calendar-scroller .scroller-day-num { cursor: pointer; text-align: center; }
}
@layer widgets {
cnc-calendar-year { display: block; width: 100%; }
cnc-calendar-year .year-wrapper { background-color: var(--color-white); }
.dark cnc-calendar-year .year-wrapper { background-color: var(--color-slate-900); }
cnc-calendar-year .year-title { text-align: center; font-size: var(--text-2xl); line-height: var(--tw-leading, var(--text-2xl--line-height)); font-weight: var(--font-weight-bold); color: var(--color-slate-800); margin-bottom: calc(var(--box-spacing) * 8); }
.dark cnc-calendar-year .year-title { color: var(--color-slate-200); }
cnc-calendar-year .year-grid { margin-inline: auto; display: grid; max-width: 48rem; grid-template-columns: repeat(1, minmax(0, 1fr)); column-gap: calc(var(--spacing) * 8); row-gap: calc(var(--spacing) * 12); padding-inline: calc(var(--box-spacing) * 4); }
@media (min-width: 640px) {
cnc-calendar-year .year-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1280px) {
cnc-calendar-year .year-grid { max-width: none; grid-template-columns: repeat(3, minmax(0, 1fr)); padding-inline: calc(var(--box-spacing) * 8); }
}
@media (min-width: 1536px) {
cnc-calendar-year .year-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
cnc-calendar-year .year-month { text-align: center; }
cnc-calendar-year .year-month-title { font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); font-weight: var(--font-weight-semibold); color: var(--color-slate-900); }
.dark cnc-calendar-year .year-month-title { color: var(--color-slate-100); }
cnc-calendar-year .year-dow-row { margin-top: calc(var(--box-spacing) * 4); display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); --tw-leading: calc(var(--spacing) * 6); line-height: calc(var(--spacing) * 6); color: var(--color-slate-500); }
.dark cnc-calendar-year .year-dow-row { color: var(--color-slate-400); }
cnc-calendar-year .year-day-grid { isolation: isolate; margin-top: calc(var(--box-spacing) * 2); display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; border-radius: var(--radius-lg); background-color: var(--color-slate-200); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: var(--color-slate-200); }
.dark cnc-calendar-year .year-day-grid { background-color: var(--color-slate-700); --tw-ring-color: var(--color-slate-700); }
cnc-calendar-year .year-day { padding-block: calc(var(--box-spacing) * 1.5); cursor: pointer; }
cnc-calendar-year .year-day:hover { background-color: var(--color-slate-100); }
.dark cnc-calendar-year .year-day:hover { background-color: var(--color-slate-600); }
cnc-calendar-year .year-day-in { background-color: var(--color-white); color: var(--color-slate-900); }
.dark cnc-calendar-year .year-day-in { background-color: var(--color-slate-800); color: var(--color-slate-200); }
cnc-calendar-year .year-day-out { background-color: var(--color-slate-50); color: var(--color-slate-400); }
.dark cnc-calendar-year .year-day-out { background-color: var(--color-slate-900); color: var(--color-slate-500); }
cnc-calendar-year .year-day-tl { border-top-left-radius: var(--radius-lg); }
cnc-calendar-year .year-day-tr { border-top-right-radius: var(--radius-lg); }
cnc-calendar-year .year-day-bl { border-bottom-left-radius: var(--radius-lg); }
cnc-calendar-year .year-day-br { border-bottom-right-radius: var(--radius-lg); }
cnc-calendar-year .year-day-num { margin-inline: auto; display: flex; height: calc(var(--spacing) * 7); width: calc(var(--spacing) * 7); align-items: center; justify-content: center; border-radius: calc(infinity * 1px); }
cnc-calendar-year .year-day-today .year-day-num { background-color: var(--color-primary-600); color: var(--color-white); font-weight: var(--font-weight-semibold); }
cnc-calendar-year .year-day-selected .year-day-num { background-color: var(--color-primary-700); color: var(--color-white); font-weight: var(--font-weight-bold); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: var(--color-primary-400); }
}
@layer widgets {
cnc-cards { --card-border-radius: var( --radius-lg , 0.5rem ); }
cnc-cards { --card-width: 260px; --card-rows: 4; --grid-margin-y: 0.5rem; --card-padding: 1rem; --card-prefix-gap: 10px; --title-margin: 0.25rem; --subtitle-font-size: 0.875rem; }
cnc-cards { --card-bg: white; --card-border-width: 0; --card-border-color: transparent; --card-shadow: 0 20px 25px -5px rgb( 0 0 0 / 10% ) , 0 8px 10px -6px rgb( 0 0 0 / 10% ); --title-text-color: var( --color-neutral-900 ); --title-font-weight: 700; --subtitle-text-color: var( --color-neutral-700 ); }
cnc-cards { display: grid; justify-content: center; gap: 0; margin: var( --grid-margin-y ) auto; grid-template-columns: repeat( auto-fit , minmax( min( var( --card-width ) , 100% ) , 1fr ) ); grid-auto-rows: minmax( 1px , max-content ); }
cnc-cards .card, cnc-cards > * .card, cnc-cards > *:not(.card) { grid-row: span var( --card-rows ); display: grid; grid-template-rows: subgrid; row-gap: 0; }
cnc-cards > * .card:has(.card-prefix), cnc-cards > *:not(.card):has(.card-prefix) { grid-template-columns: auto minmax( 100px , 1fr ); column-gap: var( --card-prefix-gap ); }
cnc-cards > *:not(.card):has(.card-prefix):has(.card) { grid-template-columns: subgrid; }
cnc-cards > * > .card .card-prefix, cnc-cards > * > .card-prefix { grid-row-start: 1; grid-row-end: calc( var( --card-rows ) + 1 ); }
cnc-cards .cnc-cards_card { padding: var( --card-padding ); border: var( --card-border-width ) solid var( --card-border-color ); border-radius: var( --card-border-radius ); background: var( --card-bg ); box-shadow: var( --card-shadow ); }
cnc-cards .cnc-cards_title { margin: var( --title-margin ); color: var( --title-text-color ); font-weight: var( --title-font-weight ); }
cnc-cards .cnc-cards_subtitle { color: var( --subtitle-text-color ); font-size: var( --subtitle-font-size ); }
}
cnc-cards [role="link"]:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
@layer widgets {
cnc-carousel { --thumb-opacity-inactive: 0.6; }
cnc-carousel { display: block; position: relative; }
cnc-carousel .thumb-not-active-slide { opacity: var( --thumb-opacity-inactive ); }
}
@layer widgets {
cnc-carousel2 { display: block; }
}
@layer widgets {
cnc-chart { display: block; width: 100%; height: 100%; }
}
@layer widgets {
cnc-chart2 { display: block; width: 100%; height: 100%; }
}
@layer widgets {
cnc-checkbox[size="xxs"] { --shape-border-radius-rounded: calc( var( --radius-DEFAULT , 0.25rem ) * 0.6 ); }
cnc-checkbox[size="xs"] { --shape-border-radius-rounded: calc( var( --radius-DEFAULT , 0.25rem ) * 0.8 ); }
cnc-checkbox[size="sm"], cnc-checkbox[size="md"], cnc-checkbox:not([size]) { --shape-border-radius-rounded: var( --radius-DEFAULT , 0.25rem ); }
cnc-checkbox[size="lg"], cnc-checkbox[size="xl"], cnc-checkbox[size="2xl"] { --shape-border-radius-rounded: calc( var( --radius-DEFAULT , 0.25rem ) * 1.2 ); }
cnc-checkbox[shape="rounded"], cnc-checkbox:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-DEFAULT , 0.25rem ) ); }
cnc-checkbox[shape="circle"] { --shape-border-radius: 50%; }
cnc-checkbox[shape="square"], cnc-checkbox[shape="rectangle"] { --shape-border-radius: 0; }
cnc-checkbox[size="xxs"] { --control-size: 0.75rem; --control-margin: 0.17rem; --container-height: 1.75rem; --container-gap: 0.25rem; --label-font-size: 0.75rem; --label-line-height: 1rem; }
cnc-checkbox[size="xs"] { --control-size: 0.875rem; --control-margin: 0.18rem; --container-height: 2rem; --container-gap: 0.25rem; --label-font-size: 0.875rem; --label-line-height: 1.25rem; }
cnc-checkbox[size="sm"] { --control-size: 1rem; --control-margin: 0.18rem; --container-height: 2.25rem; --container-gap: 0.375rem; --label-font-size: 0.875rem; --label-line-height: 1.25rem; }
cnc-checkbox[size="md"], cnc-checkbox:not([size]) { --control-size: 1rem; --control-margin: 0.3rem; --container-height: 2.5rem; --container-gap: 0.5rem; --label-font-size: 1rem; --label-line-height: 1.5rem; }
cnc-checkbox[size="lg"] { --control-size: 1.25rem; --control-margin: 0.125rem; --container-height: 2.75rem; --container-gap: 0.5rem; --label-font-size: 1rem; --label-line-height: 1.5rem; }
cnc-checkbox[size="xl"] { --control-size: 1.25rem; --control-margin: 0.25rem; --container-height: 3rem; --container-gap: 0.625rem; --label-font-size: 1.125rem; --label-line-height: 1.75rem; }
cnc-checkbox[size="2xl"] { --control-size: 1.5rem; --control-margin: 0.25rem; --container-height: 3.5rem; --container-gap: 0.75rem; --label-font-size: 1.25rem; --label-line-height: 2rem; }
cnc-checkbox { --control-accent-color: var( --color-500 , var( --color-neutral-500 , #475569 ) ); --control-bg: white; --control-bg-checked: var( --control-accent-color ); --control-border-color: var( --color-neutral-300 , #d4d4d4 ); --control-border-color-checked: var( --control-accent-color ); --control-border-radius: var( --shape-border-radius , 0 ); --control-border-width: 1px; --control-check-color: white; --control-check-width: calc( var( --control-size ) * 0.3 ); --control-check-height: calc( var( --control-size ) * 0.55 ); --control-check-border-width: 0.125rem; --control-indicator-width: calc( var( --control-size ) * 0.55 ); --control-indicator-height: 0.125rem; --control-focus-color: var( --color-500 , var( --color-primary-500 ) ); --control-focus-shadow: 0 0 0 2px var( --control-focus-color ); --control-click-scale: 0.875; --control-transition-duration: 150ms; --control-transition-timing: ease; --label-text-color: var( --color-neutral-700 , #334155 ); --label-description-color: var( --color-neutral-600 , #465160 ); --label-description-font-size: 0.875em; --label-font-family: inherit; --label-font-weight: 400; --counter-gap: 0.5rem; --counter-text-color: var( --color-neutral-400 , #94a3b8 ); --container-opacity-disabled: 0.6; }
.dark cnc-checkbox { --control-bg: color-mix( in srgb , black 75% , transparent ); --control-border-color: var( --color-neutral-600 , #525252 ); --control-focus-color: var( --color-200 , var( --color-primary-500 ) ); --label-text-color: var( --color-neutral-500 , #737373 ); --label-description-color: var( --color-neutral-400 , #505761 ); --counter-text-color: var( --color-neutral-500 , #737373 ); }
cnc-checkbox[kind="filled"] { --label-text-color: var( --color-700 , var( --color-neutral-800 ) ); }
.dark cnc-checkbox[kind="filled"] { --label-text-color: var( --color-600 , var( --color-neutral-500 ) ); }
cnc-checkbox { display: inline-block; }
cnc-checkbox .cnc-checkbox_container { min-block-size: var( --container-height ); gap: var( --container-gap ); color: var( --label-text-color ); }
cnc-checkbox .cnc-checkbox_control { -webkit-appearance: none; appearance: none; box-sizing: border-box; display: grid; place-content: center; inline-size: var( --control-size ); block-size: var( --control-size ); margin: 0; margin-top: var( --control-margin ); background: var( --control-bg ); border: var( --control-border-width ) solid var( --control-border-color ); border-radius: var( --control-border-radius ); }
cnc-checkbox[animation] .cnc-checkbox_control { transition: background-color var( --control-transition-duration ) var( --control-transition-timing ) , border-color var( --control-transition-duration ) var( --control-transition-timing ) , box-shadow var( --control-transition-duration ) var( --control-transition-timing ) , transform var( --control-transition-duration ) var( --control-transition-timing ); }
cnc-checkbox .cnc-checkbox_control::after { content: ""; inline-size: var( --control-check-width ); block-size: var( --control-check-height ); border: solid var( --control-check-color ); border-width: 0 var( --control-check-border-width ) var( --control-check-border-width ) 0; opacity: 0; transform: translateY( -8% ) rotate( 45deg ) scale( 0.75 ); }
cnc-checkbox[animation] .cnc-checkbox_control::after { transition: opacity var( --control-transition-duration ) var( --control-transition-timing ) , transform var( --control-transition-duration ) var( --control-transition-timing ); }
cnc-checkbox .cnc-checkbox_label { color: var( --label-text-color ); font-family: var( --label-font-family ); font-size: var( --label-font-size ); line-height: var( --label-line-height ); }
cnc-checkbox .cnc-checkbox_counter { margin-inline-start: var( --counter-gap ); color: var( --counter-text-color ); }
cnc-checkbox .cnc-checkbox_text { font-weight: var( --label-font-weight ); }
cnc-checkbox .cnc-checkbox_description { color: var( --label-description-color ); font-size: var( --label-description-font-size ); }
cnc-checkbox .cnc-checkbox_control:focus { outline: none; box-shadow: var( --control-focus-shadow ); }
cnc-checkbox .cnc-checkbox_control:checked, cnc-checkbox .cnc-checkbox_control:indeterminate { background: var( --control-bg-checked ); border-color: var( --control-border-color-checked ); }
cnc-checkbox .cnc-checkbox_control:checked::after { opacity: 1; transform: translateY( -8% ) rotate( 45deg ) scale( 1 ); }
cnc-checkbox .cnc-checkbox_control:indeterminate::after { inline-size: var( --control-indicator-width ); block-size: var( --control-indicator-height ); background: var( --control-check-color ); border: 0; opacity: 1; transform: none; }
cnc-checkbox .cnc-checkbox_control:active { transform: scale( var( --control-click-scale ) ); }
cnc-checkbox.disabled { cursor: not-allowed; opacity: var( --container-opacity-disabled ); }
cnc-checkbox.disabled .cnc-checkbox_container, cnc-checkbox.disabled .cnc-checkbox_control { cursor: not-allowed; }
cnc-checkbox.readonly { pointer-events: none; }
cnc-checkbox[animation="none"] { --control-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-checkbox { --control-transition-duration: 0ms; }
}
@media (forced-colors: active) {
cnc-checkbox .cnc-checkbox_control { appearance: auto; }
cnc-checkbox .cnc-checkbox_control::after { content: none; }
}
}
@layer widgets {
cnc-checkboxes[size="xxs"], cnc-checkboxes[size="xs"] { --list-gap-vertical: 0.25rem; }
cnc-checkboxes[size="sm"], cnc-checkboxes[size="md"], cnc-checkboxes:not([size]) { --list-gap-vertical: 0.375rem; }
cnc-checkboxes[size="lg"] { --list-gap-vertical: 0.5rem; }
cnc-checkboxes[size="xl"] { --list-gap-vertical: 0.625rem; }
cnc-checkboxes[size="2xl"] { --list-gap-vertical: 0.75rem; }
cnc-checkboxes { --list-gap-horizontal: 1rem; --container-opacity-disabled: 0.6; }
cnc-checkboxes { display: flex; flex-direction: column; gap: var( --list-gap-vertical ); }
cnc-checkboxes.horizontal, cnc-checkboxes[horizontal] { flex-direction: row; flex-wrap: wrap; align-items: center; column-gap: var( --list-gap-horizontal ); }
cnc-checkboxes .cnc-checkboxes_item .cnc-checkbox_container { min-block-size: 0; }
cnc-checkboxes.disabled { cursor: not-allowed; opacity: var( --container-opacity-disabled ); }
cnc-checkboxes .cnc-checkboxes_item.disabled { opacity: 1; }
cnc-checkboxes.readonly { pointer-events: none; }
}
@layer widgets {
cnc-choice { --item-border-radius: var( --radius-md , 0.375rem ); }
cnc-choice { --item-padding: 0.5rem 0.75rem; --list-gap: 0.5rem; --counter-gap: 0.5rem; }
cnc-choice { --item-border-width: 1px; --item-bg: transparent; --item-bg-hover: rgb( 0 0 0 / 3% ); --item-bg-selected: rgb( from var( --color-500 , var( --color-primary-500 ) ) r g b / 10% ); --item-text-color: var( --color-neutral-700 , #334155 ); --item-text-color-selected: var( --color-neutral-900 , #0f172a ); --item-border-color: var( --color-neutral-300 , #cbd5e1 ); --item-border-color-hover: var( --color-neutral-400 , #94a3b8 ); --item-border-color-selected: var( --color-500 , var( --color-primary-500 ) ); --counter-text-color: var( --color-neutral-400 , #94a3b8 ); --container-opacity-disabled: 0.6; }
.dark cnc-choice { --item-bg-hover: rgb( 255 255 255 / 5% ); --item-bg-selected: rgb( from var( --color-500 , var( --color-primary-500 ) ) r g b / 15% ); --item-text-color: var( --color-neutral-200 , #e2e8f0 ); --item-text-color-selected: var( --color-neutral-50 , white ); --item-border-color: var( --color-neutral-600 , #475569 ); --item-border-color-hover: var( --color-neutral-500 , #64748b ); }
cnc-choice { display: inline-flex; gap: var( --list-gap , 0.5rem ); }
cnc-choice[data-orientation="horizontal"] { flex-flow: row; flex-wrap: nowrap; align-items: stretch; }
cnc-choice[wide] { display: flex; }
cnc-choice[wide] .cnc-choice_item { flex: 1; }
cnc-choice .cnc-choice_item { display: block; }
cnc-choice .cnc-choice_content { padding: var( --item-padding , 0.5rem 0.75rem ); background: var( --item-bg ); border: var( --item-border-width ) solid var( --item-border-color ); border-radius: var( --item-border-radius ); }
cnc-choice .cnc-choice_item:hover > .cnc-choice_content { background: var( --item-bg-hover , var( --item-bg ) ); border-color: var( --item-border-color-hover , var( --item-border-color ) ); }
cnc-choice .cnc-choice_item[data-selected="true"] > .cnc-choice_content { color: var( --item-text-color-selected , var( --item-text-color ) ); background: var( --item-bg-selected , var( --item-bg ) ); border-color: var( --item-border-color-selected , var( --item-border-color ) ); }
cnc-choice .cnc-choice_counter { margin-inline-start: var( --counter-gap , 0.5rem ); color: var( --counter-text-color ); }
cnc-choice[aria-disabled="true"], cnc-choice[aria-readonly="true"] { pointer-events: none; opacity: var( --container-opacity-disabled ); }
cnc-choice[aria-disabled="true"] { cursor: not-allowed; }
}
cnc-choice .cnc-choice_item:has(.cnc-choice_input:focus-visible) > .cnc-choice_content { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
@layer widgets {
cnc-code { --container-border-radius: var( --radius-md , 0.375rem ); --copy-border-radius: var( --radius-md , 0.375rem ); }
cnc-code { --fallback-padding: 1rem 5rem 1rem 1rem; --fallback-font-size: 13px; --fallback-line-height: 1.625; --editor-min-height: 200px; --fallback-min-height: 2.75rem; --copy-padding: 0.25rem 0.5rem; --copy-font-size: 0.75rem; --scrollbar-size: 8px; }
cnc-code { --container-border-width: 1px; --container-border-color: var( --color-neutral-300 ); --fallback-bg: var( --color-neutral-50 ); --fallback-text-color: var( --color-neutral-800 ); --scrollbar-thumb-color: var( --color-neutral-400 ); --copy-bg: rgb( from white r g b / 90% ); --copy-bg-hover: var( --color-neutral-100 ); --copy-border-color: var( --color-neutral-300 ); --copy-text-color: var( --color-neutral-600 ); --copy-font-weight: 500; --copy-shadow: 0 1px 2px 0 rgb( 0 0 0 / 5% ); }
.dark cnc-code { --container-border-color: var( --color-neutral-600 ); --fallback-bg: var( --color-neutral-900 ); --fallback-text-color: var( --color-neutral-100 ); --scrollbar-thumb-color: var( --color-neutral-600 ); --copy-bg: rgb( from var( --color-neutral-800 ) r g b / 90% ); --copy-bg-hover: var( --color-neutral-700 ); --copy-border-color: var( --color-neutral-600 ); --copy-text-color: var( --color-neutral-300 ); }
cnc-code { border: var( --container-border-width ) solid var( --container-border-color ); border-radius: var( --container-border-radius ); }
cnc-code .cnc-code_copy { padding: var( --copy-padding ); border: 1px solid var( --copy-border-color ); border-radius: var( --copy-border-radius ); background: var( --copy-bg ); color: var( --copy-text-color ); box-shadow: var( --copy-shadow ); font-size: var( --copy-font-size ); font-weight: var( --copy-font-weight ); }
cnc-code .cnc-code_fallback { min-height: var( --fallback-min-height ); box-sizing: border-box; padding: var( --fallback-padding ); border-radius: var( --container-border-radius ); background: var( --fallback-bg ); color: var( --fallback-text-color ); font-family: var( --font-mono , ui-monospace , monospace ); font-size: var( --fallback-font-size ); line-height: var( --fallback-line-height ); scrollbar-color: var( --scrollbar-thumb-color ) transparent; scrollbar-width: thin; }
cnc-code .cnc-code_fallback::-webkit-scrollbar { width: var( --scrollbar-size ); height: var( --scrollbar-size ); }
cnc-code .cnc-code_fallback::-webkit-scrollbar-track { background: transparent; }
cnc-code .cnc-code_fallback::-webkit-scrollbar-thumb { background: var( --scrollbar-thumb-color ); background-clip: padding-box; border: 2px solid transparent; border-radius: 9999px; }
cnc-code .cnc-code_editor { display: none; min-height: var( --editor-min-height ); border-radius: var( --container-border-radius ); opacity: 0; }
cnc-code .cnc-code_copy:hover { background: var( --copy-bg-hover ); }
}
@layer widgets {
cnc-color-mode { --menu-border-radius: var( --radius-lg , 0.5rem ); }
cnc-color-mode { --menu-min-width: 8rem; --item-padding: 0.5rem 0.75rem; --item-gap: 0.5rem; --item-font-size: 0.875rem; --icon-size: 1rem; }
cnc-color-mode { --menu-bg: white; --menu-border-color: var( --color-neutral-200 ); --menu-shadow: 0 4px 12px rgb( 0 0 0 / 10% ); --item-text-color: var( --color-neutral-600 ); --item-text-color-hover: var( --color-neutral-900 ); --item-bg-hover: var( --color-neutral-100 ); --item-transition-duration: 0.1s; }
.dark cnc-color-mode { --menu-bg: var( --color-neutral-800 ); --menu-border-color: var( --color-neutral-700 ); --menu-shadow: 0 4px 12px rgb( 0 0 0 / 30% ); --item-text-color: var( --color-neutral-300 ); --item-text-color-hover: var( --color-neutral-100 ); --item-bg-hover: rgb( from var( --color-neutral-100 ) r g b / 8% ); }
cnc-color-mode { display: inline-block; position: relative; }
cnc-color-mode .cnc-color-mode_menu { min-width: var( --menu-min-width ); border: 1px solid var( --menu-border-color ); border-radius: var( --menu-border-radius ); background: var( --menu-bg ); box-shadow: var( --menu-shadow ); }
cnc-color-mode .cnc-color-mode_item { gap: var( --item-gap ); padding: var( --item-padding ); color: var( --item-text-color ); font-size: var( --item-font-size ); transition: background var( --item-transition-duration ); }
cnc-color-mode .cnc-color-mode_icon { width: var( --icon-size ); height: var( --icon-size ); }
cnc-color-mode .cnc-color-mode_item:hover { background: var( --item-bg-hover ); color: var( --item-text-color-hover ); }
cnc-color-mode .cnc-color-mode_item { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-color-mode .cnc-color-mode_item:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
cnc-color-mode *, cnc-color-mode *::before, cnc-color-mode *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-color-picker { --trigger-border-radius: var( --radius-full , 9999px ); --panel-border-radius: var( --radius-md , 0.375rem ); --slider-border-radius: var( --radius-full , 9999px ); --handle-border-radius: var( --radius-full , 9999px ); --preview-border-radius: var( --radius-DEFAULT , 0.25rem ); --input-border-radius: var( --radius-DEFAULT , 0.25rem ); --format-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-color-picker { --trigger-size: 2rem; --trigger-padding: 0.25rem; --panel-width: 260px; --panel-padding: 0.75rem; --grid-height: 180px; --grid-handle-size: 1rem; --slider-height: 0.75rem; --slider-handle-size: 0.875rem; --handle-border-width: 2px; --controls-gap: 0.5rem; --preview-size: 2rem; --input-padding: 0.25rem 0.5rem; --input-font-size: 0.875rem; --format-padding: 0.25rem 0.5rem; --format-font-size: 0.75rem; --favorite-padding: 0.25rem 0.375rem; --section-label-font-size: 0.75rem; --section-label-margin-bottom: 0.5rem; --swatch-gap: 0.25rem; --copied-font-size: 0.75rem; }
cnc-color-picker { --trigger-border-color: var( --color-neutral-300 ); --trigger-shadow: 0 1px 2px 0 rgb( 0 0 0 / 5% ); --trigger-icon-color: var( --color-neutral-500 ); --panel-bg: white; --panel-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ) , 0 0 0 1px rgb( 0 0 0 / 5% ); --slider-shadow: inset 0 0 0 1px rgb( 0 0 0 / 15% ); --handle-bg: white; --handle-border-color: white; --handle-shadow: 0 1px 3px 0 rgb( 0 0 0 / 10% ) , 0 1px 2px -1px rgb( 0 0 0 / 10% ); --preview-border-color: var( --color-neutral-300 ); --copied-bg: rgb( 0 0 0 / 30% ); --copied-text-color: white; --input-bg: white; --input-border-color: var( --color-neutral-300 ); --input-border-color-focus: var( --color-primary-500 ); --input-shadow-focus: 0 0 0 1px var( --color-primary-500 ); --input-text-color: var( --color-neutral-700 ); --format-bg-hover: var( --color-neutral-100 ); --format-border-color: var( --color-neutral-300 ); --format-text-color: var( --color-neutral-500 ); --format-font-weight: 600; --section-label-text-color: var( --color-neutral-500 ); --section-label-font-weight: 500; }
.dark cnc-color-picker { --trigger-border-color: var( --color-neutral-600 ); --trigger-icon-color: var( --color-neutral-400 ); --panel-bg: var( --color-neutral-700 ); --preview-border-color: var( --color-neutral-600 ); --input-bg: var( --color-neutral-800 ); --input-border-color: var( --color-neutral-600 ); --input-text-color: var( --color-neutral-200 ); --format-bg-hover: var( --color-neutral-600 ); --format-border-color: var( --color-neutral-600 ); --format-text-color: var( --color-neutral-300 ); --section-label-text-color: var( --color-neutral-300 ); }
cnc-color-picker { display: inline-block; position: relative; }
cnc-color-picker .cnc-color-picker_trigger { width: var( --trigger-size ); height: var( --trigger-size ); padding: var( --trigger-padding ); border: 1px solid var( --trigger-border-color ); border-radius: var( --trigger-border-radius ); box-shadow: var( --trigger-shadow ); }
cnc-color-picker .cnc-color-picker_trigger-icon { color: var( --trigger-icon-color ); }
cnc-color-picker .cnc-color-picker_panel { width: var( --panel-width ); border-radius: var( --panel-border-radius ); background: var( --panel-bg ); box-shadow: var( --panel-shadow ); }
cnc-color-picker .cnc-color-picker_grid { height: var( --grid-height ); border-radius: var( --panel-border-radius ) var( --panel-border-radius ) 0 0; cursor: crosshair; }
cnc-color-picker .cnc-color-picker_grid-handle { top: 0; left: 0; width: var( --grid-handle-size ); height: var( --grid-handle-size ); border: var( --handle-border-width ) solid var( --handle-border-color ); border-radius: var( --handle-border-radius ); box-shadow: var( --handle-shadow ); transform: translate( -50% , -50% ); }
cnc-color-picker .cnc-color-picker_controls { gap: var( --controls-gap ); padding: var( --panel-padding ); }
cnc-color-picker .cnc-color-picker_hue, cnc-color-picker .cnc-color-picker_alpha { height: var( --slider-height ); border-radius: var( --slider-border-radius ); box-shadow: var( --slider-shadow ); }
cnc-color-picker .cnc-color-picker_hue { background: linear-gradient( to right , #f00 0% , #ff0 17% , #0f0 33% , #0ff 50% , #00f 67% , #f0f 83% , #f00 100% ); }
cnc-color-picker .cnc-color-picker_alpha { background: repeating-conic-gradient( #ccc 0% 25% , white 0% 50% ) 50% / 8px 8px; }
cnc-color-picker .cnc-color-picker_slider-handle { top: 50%; left: 0; width: var( --slider-handle-size ); height: var( --slider-handle-size ); border: var( --handle-border-width ) solid var( --handle-border-color ); border-radius: var( --handle-border-radius ); background: var( --handle-bg ); box-shadow: var( --handle-shadow ); transform: translate( -50% , -50% ); }
cnc-color-picker .cnc-color-picker_alpha .cnc-color-picker_slider-handle { left: 100%; }
cnc-color-picker .cnc-color-picker_preview { width: var( --preview-size ); height: var( --preview-size ); border: 1px solid var( --preview-border-color ); border-radius: var( --preview-border-radius ); }
cnc-color-picker .cnc-color-picker_copied { background: var( --copied-bg ); color: var( --copied-text-color ); font-size: var( --copied-font-size ); }
cnc-color-picker .cnc-color-picker_fields { gap: var( --controls-gap ); padding: 0 var( --panel-padding ) var( --panel-padding ); }
cnc-color-picker .cnc-color-picker_input { padding: var( --input-padding ); border: 1px solid var( --input-border-color ); border-radius: var( --input-border-radius ); background: var( --input-bg ); color: var( --input-text-color ); font-size: var( --input-font-size ); }
cnc-color-picker .cnc-color-picker_format, cnc-color-picker .cnc-color-picker_favorite { border: 1px solid var( --format-border-color ); border-radius: var( --format-border-radius ); color: var( --format-text-color ); }
cnc-color-picker .cnc-color-picker_format { padding: var( --format-padding ); font-size: var( --format-font-size ); font-weight: var( --format-font-weight ); }
cnc-color-picker .cnc-color-picker_favorite { padding: var( --favorite-padding ); }
cnc-color-picker .cnc-color-picker_swatches, cnc-color-picker .cnc-color-picker_favorites { padding: 0 var( --panel-padding ) 0.5rem; }
cnc-color-picker .cnc-color-picker_section-label { display: block; margin-bottom: var( --section-label-margin-bottom ); color: var( --section-label-text-color ); font-size: var( --section-label-font-size ); font-weight: var( --section-label-font-weight ); }
cnc-color-picker .cnc-color-picker_swatch-grid, cnc-color-picker .cnc-color-picker_favorite-grid { gap: var( --swatch-gap ); }
cnc-color-picker .cnc-color-picker_input:focus { border-color: var( --input-border-color-focus ); box-shadow: var( --input-shadow-focus ); }
cnc-color-picker .cnc-color-picker_format:hover, cnc-color-picker .cnc-color-picker_favorite:hover { background: var( --format-bg-hover ); }
cnc-color-picker .cnc-color-picker_trigger { appearance: none; font: inherit; color: inherit; }
cnc-color-picker .cnc-color-picker_trigger:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
}
@layer widgets {
cnc-confirm-button[wide] { display: block; width: 100%; }
}
@layer widgets {
cnc-context-menu[shape="rounded"], cnc-context-menu:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-context-menu[shape="square"], cnc-context-menu[shape="rectangle"] { --shape-border-radius: 0; }
cnc-context-menu[size="sm"] { --content-font-size: 0.8125rem; }
cnc-context-menu[size="md"], cnc-context-menu:not([size]) { --content-font-size: 0.875rem; }
cnc-context-menu[size="lg"] { --content-font-size: 1rem; }
cnc-context-menu { --content-border-radius: var( --shape-border-radius , 0 ); --content-border-width: 1px; --content-padding: 0; --content-transition-duration: 120ms; --content-transition-timing: ease-out; --content-translate-y-closed: 0.125rem; --content-scale-closed: 0.96; }
cnc-context-menu[kind="filled"], cnc-context-menu:not([kind]) { --content-bg: var( --color-neutral-50 , white ); --content-text-color: var( --color-neutral-800 , rgb( 38 38 38 ) ); --content-border-color: rgb( 0 0 0 / 10% ); --content-shadow: rgb( 0 0 0 / 8% ) 0 12px 16px -4px , rgb( 0 0 0 / 4% ) 0 2px 4px -2px; }
.dark cnc-context-menu[kind="filled"], .dark cnc-context-menu:not([kind]) { --content-bg: var( --color-neutral-800 , rgb( 38 38 38 ) ); --content-text-color: var( --color-neutral-100 , rgb( 245 245 245 ) ); --content-border-color: rgb( 255 255 255 / 20% ); --content-shadow: 0 20px 25px -5px rgb( 0 0 0 / 30% ); }
cnc-context-menu[kind="plain"] { --content-bg: inherit; --content-text-color: inherit; --content-border-color: transparent; --content-shadow: none; }
cnc-context-menu .cnc-context-menu_content { max-inline-size: calc( 100vw - 0.5rem ); max-block-size: calc( 100vh - 0.5rem ); padding: var( --content-padding ); color: var( --content-text-color ); background: var( --content-bg ); border: var( --content-border-width ) solid var( --content-border-color ); border-radius: var( --content-border-radius ); box-shadow: var( --content-shadow ); font-size: var( --content-font-size ); }
cnc-context-menu .cnc-context-menu_wrapper.open { visibility: visible; opacity: 1; pointer-events: auto; transform: translate3d( 0 , 0 , 0 ) scale3d( 1 , 1 , 1 ); }
cnc-context-menu .cnc-context-menu_wrapper.close { visibility: hidden; opacity: 0; pointer-events: none; transform: translate3d( 0 , var( --content-translate-y-closed ) , 0 ) scale3d( var( --content-scale-closed ) , var( --content-scale-closed ) , 1 ); }
cnc-context-menu .cnc-context-menu_wrapper { transform-origin: top left; transition: opacity var( --content-transition-duration ) var( --content-transition-timing ) , transform var( --content-transition-duration ) var( --content-transition-timing ); }
cnc-context-menu[animation="none"] { --content-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-context-menu { --content-transition-duration: 0ms; }
}
}
@layer widgets {
cnc-countdown { display: block; }
}
@layer widgets {
cnc-custom-form { --error-margin-bottom: 0.75rem; }
cnc-custom-form { display: block; }
cnc-custom-form .cnc-custom-form_error { margin-bottom: var( --error-margin-bottom ); }
}
@layer widgets {
cnc-demo-maker .demo-maker_heading { color: var( --color-neutral-500 , #71717a ); font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.06em; margin-bottom: 0.75rem; text-transform: uppercase; }
.dark cnc-demo-maker .demo-maker_heading { color: var( --color-neutral-400 , #a1a1aa ); }
cnc-demo-maker .demo-maker_title { color: var( --color-neutral-900 , #18181b ); font-size: 1.125rem; font-weight: 600; line-height: 1.4; padding-block: 1.5rem 0.75rem; padding-inline: 1.5rem; }
.dark cnc-demo-maker .demo-maker_title { color: var( --color-neutral-100 , #f4f4f5 ); }
}
@layer widgets {
cnc-demo-maker .demo-maker_bind { align-items: center; border: 1px solid var( --color-neutral-300 , #d4d4d8 ); color: var( --color-neutral-500 , #71717a ); cursor: pointer; display: flex; height: 1.75rem; }
cnc-demo-maker .demo-maker_bind.active { background: var( --color-primary-600 , #2563eb ); border-color: var( --color-primary-600 , #2563eb ); color: white; }
}
@layer widgets {
cnc-demo-maker .demo-maker_demo-row { border: 1px solid var( --color-neutral-300 , #d4d4d8 ); }
cnc-demo-maker .demo-maker_demo-row[data-active="true"] { background: var( --color-primary-50 , #eff6ff ); border-color: var( --color-primary-300 , #93c5fd ); }
cnc-demo-maker .demo-maker_demo { background: none; border: 0; color: var( --color-neutral-600 , #52525b ); cursor: pointer; }
cnc-demo-maker .demo-maker_demo-row[data-active="true"] .demo-maker_demo { color: var( --color-primary-700 , #1d4ed8 ); font-weight: 600; }
cnc-demo-maker .demo-maker_demo-row[data-active="true"] .demo-maker_description { background: #fff; border-radius: var( --radius-md , 0.375rem ); }
.dark cnc-demo-maker .demo-maker_demo-row[data-active="true"] .demo-maker_description { background: var( --color-neutral-900 , #18181b ); }
.dark cnc-demo-maker .demo-maker_demo { color: var( --color-neutral-300 , #d4d4d8 ); }
.dark cnc-demo-maker .demo-maker_demo-row[data-active="true"] { background: var( --color-primary-950 , #172554 ); border-color: var( --color-primary-800 , #1e40af ); }
.dark cnc-demo-maker .demo-maker_demo-row[data-active="true"] .demo-maker_demo { color: var( --color-primary-300 , #93c5fd ); }
cnc-demo-maker .demo-maker_code-editor textarea { font-family: ui-monospace , SFMono-Regular , Menlo , Consolas , monospace; font-size: 0.8125rem; }
}
@layer widgets {
cnc-demo-maker .demo-maker_tabs { border-bottom: 1px solid var( --color-neutral-200 , #e4e4e7 ); margin-bottom: 1rem; }
.dark cnc-demo-maker .demo-maker_tabs { border-bottom-color: var( --color-neutral-700 , #3f3f46 ); }
cnc-demo-maker .demo-maker_tab { align-items: center; background: none; border: 0; border-bottom: 2px solid transparent; color: var( --color-neutral-500 , #71717a ); cursor: pointer; display: inline-flex; font-size: 0.8125rem; font-weight: 500; gap: 0.375rem; margin-bottom: -1px; padding: 0.375rem 0.625rem; white-space: nowrap; }
cnc-demo-maker .demo-maker_tab[aria-selected="true"] { border-bottom-color: var( --color-primary-600 , #2563eb ); color: var( --color-primary-600 , #2563eb ); }
.dark cnc-demo-maker .demo-maker_tab { color: var( --color-neutral-400 , #a1a1aa ); }
.dark cnc-demo-maker .demo-maker_tab[aria-selected="true"] { color: var( --color-primary-400 , #60a5fa ); }
cnc-demo-maker .demo-maker_chrome { background: none; border: 0; color: var( --color-neutral-400 , #a1a1aa ); cursor: pointer; line-height: 0; padding: 0.125rem; }
cnc-demo-maker .demo-maker_chrome:hover { color: var( --color-neutral-800 , #27272a ); }
.dark cnc-demo-maker .demo-maker_chrome:hover { color: var( --color-neutral-200 , #e4e4e7 ); }
cnc-demo-maker .demo-maker_description textarea { font-size: 0.75rem; }
cnc-demo-maker .demo-maker_demo-row + .demo-maker_demo-row { margin-top: 0.125rem; }
}
@layer widgets {
cnc-demo-maker .demo-maker_views { background: var( --color-neutral-200 , #e4e4e7 ); border-radius: var( --radius-lg , 0.5rem ); padding: 0.125rem; }
.dark cnc-demo-maker .demo-maker_views { background: var( --color-neutral-700 , #3f3f46 ); }
cnc-demo-maker .demo-maker_examples { min-width: 260px; width: 260px; }
cnc-demo-maker .demo-maker_drawer-tabs { background: var( --color-neutral-200 , #e4e4e7 ); border-radius: var( --radius-lg , 0.5rem ); padding: 0.125rem; }
cnc-demo-maker .demo-maker_drawer-tab { background: none; border: 0; border-radius: var( --radius-md , 0.375rem ); color: var( --color-neutral-600 , #52525b ); cursor: pointer; flex: 1 1 0; font-size: 0.8125rem; padding: 0.25rem 0.5rem; }
cnc-demo-maker .demo-maker_drawer-tab:hover { color: var( --color-neutral-900 , #18181b ); }
cnc-demo-maker .demo-maker_drawer-tab[aria-pressed="true"] { background: var( --color-white , #fff ); box-shadow: 0 1px 2px rgb( 0 0 0 / 0.08 ); color: var( --color-neutral-900 , #18181b ); }
.dark cnc-demo-maker .demo-maker_drawer-tabs { background: var( --color-neutral-700 , #3f3f46 ); }
.dark cnc-demo-maker .demo-maker_drawer-tab { color: var( --color-neutral-300 , #d4d4d8 ); }
.dark cnc-demo-maker .demo-maker_drawer-tab[aria-pressed="true"] { background: var( --color-neutral-900 , #18181b ); color: var( --color-neutral-50 , #fafafa ); }
cnc-demo-maker .demo-maker_examples [hidden] { display: none !important; }
cnc-demo-maker .demo-maker_create { align-items: center; background: none; border: 1px dashed var( --color-neutral-300 , #d4d4d8 ); border-radius: var( --radius-md , 0.375rem ); color: var( --color-neutral-600 , #52525b ); cursor: pointer; display: flex; font-size: 0.8125rem; gap: 0.375rem; justify-content: center; padding: 0.375rem 0.5rem; width: 100%; }
cnc-demo-maker .demo-maker_create:hover { border-color: var( --color-primary-400 , #60a5fa ); color: var( --color-primary-600 , #2563eb ); }
cnc-demo-maker .demo-maker_create-menu { border: 1px solid var( --color-neutral-200 , #e4e4e7 ); border-radius: var( --radius-md , 0.375rem ); padding: 0.625rem; }
.dark cnc-demo-maker .demo-maker_create { border-color: var( --color-neutral-600 , #52525b ); color: var( --color-neutral-300 , #d4d4d8 ); }
.dark cnc-demo-maker .demo-maker_create-menu { border-color: var( --color-neutral-700 , #3f3f46 ); }
cnc-demo-maker .demo-maker_verb { background: none; border: 1px solid var( --color-neutral-300 , #d4d4d8 ); border-radius: var( --radius-md , 0.375rem ); color: var( --color-neutral-600 , #52525b ); cursor: pointer; font-size: 0.75rem; padding: 0.125rem 0.5rem; }
cnc-demo-maker .demo-maker_verb:disabled { cursor: not-allowed; opacity: 0.45; }
cnc-demo-maker .demo-maker_verb:not(:disabled):hover { border-color: var( --color-neutral-400 , #a1a1aa ); color: var( --color-neutral-800 , #27272a ); }
cnc-demo-maker .demo-maker_demo-row[data-active="true"] .demo-maker_verb { border-color: var( --color-primary-300 , #93c5fd ); color: var( --color-primary-700 , #1d4ed8 ); }
cnc-demo-maker .demo-maker_demo-row[data-active="true"] .demo-maker_verb:not(:disabled):hover { background: rgb( 255 255 255 / 0.6 ); border-color: var( --color-primary-500 , #3b82f6 ); color: var( --color-primary-800 , #1e40af ); }
.dark cnc-demo-maker .demo-maker_demo-row[data-active="true"] .demo-maker_verb { border-color: var( --color-primary-800 , #1e40af ); color: var( --color-primary-300 , #93c5fd ); }
.dark cnc-demo-maker .demo-maker_demo-row[data-active="true"] .demo-maker_verb:not(:disabled):hover { background: rgb( 255 255 255 / 0.08 ); border-color: var( --color-primary-600 , #2563eb ); color: var( --color-primary-200 , #bfdbfe ); }
cnc-demo-maker .demo-maker_verb--danger:not(:disabled):hover { border-color: var( --color-danger-500 , #ef4444 ); color: var( --color-danger-600 , #dc2626 ); }
.dark cnc-demo-maker .demo-maker_verb { color: var( --color-neutral-300 , #d4d4d8 ); }
}
@layer widgets {
cnc-demo-maker .demo-maker_preset .cnc-select_trigger { font-size: 0.75rem; padding-bottom: 0.125rem; padding-top: 0.125rem; }
cnc-demo-maker .demo-maker_preset .cnc-select_selected { flex-wrap: nowrap; min-width: 0; }
cnc-demo-maker .demo-maker_preset .cnc-select_selected-text, cnc-demo-maker .demo-maker_preset .cnc-select_selected-text * { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
cnc-demo-maker .demo-maker_link { background: none; border: 0; color: var( --color-primary-600 , #2563eb ); cursor: pointer; font-size: 0.75rem; font-weight: 500; padding: 0; text-decoration: underline; text-decoration-style: dotted; text-underline-offset: 2px; white-space: nowrap; }
cnc-demo-maker .demo-maker_link:hover { text-decoration-style: solid; }
cnc-demo-maker .demo-maker_link[aria-selected="true"] { text-decoration-style: solid; text-decoration-thickness: 2px; }
.dark cnc-demo-maker .demo-maker_link { color: var( --color-primary-400 , #60a5fa ); }
cnc-demo-maker .demo-maker_zoom { color: var( --color-neutral-500 , #71717a ); font-family: ui-monospace , SFMono-Regular , Menlo , Consolas , monospace; font-size: 0.6875rem; font-variant-numeric: tabular-nums; padding-inline: 0.375rem; white-space: nowrap; }
.dark cnc-demo-maker .demo-maker_zoom { color: var( --color-neutral-400 , #a1a1aa ); }
cnc-demo-maker .demo-maker_stage-body, cnc-demo-maker .demo-maker_mobile-preview { background-color: #fff; color: var( --color-neutral-900 , #18181b ); color-scheme: light; }
cnc-demo-maker .demo-maker_stage-body[data-view="tablet"], cnc-demo-maker .demo-maker_stage-body[data-view="phone"] { background-color: var( --color-neutral-100 , #f4f4f5 ); }
cnc-demo-maker .demo-maker_stage-body.dark[data-view="tablet"], cnc-demo-maker .demo-maker_stage-body.dark[data-view="phone"], .dark cnc-demo-maker .demo-maker_stage-body[data-view="tablet"], .dark cnc-demo-maker .demo-maker_stage-body[data-view="phone"] { background-color: var( --color-neutral-950 , #09090b ); }
cnc-demo-maker [data-view="tablet"] > .demo-maker_frame, cnc-demo-maker [data-view="phone"] > .demo-maker_frame, cnc-demo-maker [data-view="tablet"] > .demo-maker_preview, cnc-demo-maker [data-view="phone"] > .demo-maker_preview { background-color: white; border-radius: var( --radius-xl , 0.75rem ); box-shadow: 0 10px 15px -3px rgb( 0 0 0 / 0.1 ) , 0 4px 6px -4px rgb( 0 0 0 / 0.1 ); }
cnc-demo-maker .dark[data-view="tablet"] > .demo-maker_frame, cnc-demo-maker .dark[data-view="phone"] > .demo-maker_frame, cnc-demo-maker .dark[data-view="tablet"] > .demo-maker_preview, cnc-demo-maker .dark[data-view="phone"] > .demo-maker_preview { background-color: var( --color-neutral-900 , #18181b ); }
cnc-demo-maker .demo-maker_frame { background-color: transparent; border: 0; display: block; }
cnc-demo-maker .demo-maker_stage-body.dark, .dark cnc-demo-maker .demo-maker_stage-body:not(.demo-maker_stage-body--framed), cnc-demo-maker .demo-maker_mobile-preview.dark, .dark cnc-demo-maker .demo-maker_mobile-preview { background-color: var( --color-neutral-900 , #18181b ); color: var( --color-neutral-100 , #f4f4f5 ); color-scheme: dark; }
cnc-demo-maker .demo-maker_preview { display: flex; flex-direction: column; justify-content: safe center; overflow: auto; }
cnc-demo-maker .demo-maker_inline { box-sizing: border-box; overflow-x: auto; padding: 1.5rem; text-align: center; width: 100%; }
cnc-demo-maker .demo-maker_inline > * > * { margin-inline: auto; text-align: start; }
cnc-demo-maker .demo-maker_inline:has(> * > [data-demo-fill]) { display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; }
cnc-demo-maker .demo-maker_inline > * > [data-demo-fill] { flex: 1 1 auto; min-height: 0; width: 100%; }
}
@layer widgets {
cnc-demo-maker .demo-maker_devtools { border-top: 1px solid var( --color-neutral-200 , #e4e4e7 ); }
.dark cnc-demo-maker .demo-maker_devtools { border-top-color: var( --color-neutral-700 , #3f3f46 ); }
cnc-demo-maker .demo-maker_devtools-bar { align-items: center; background: var( --color-neutral-50 , #fafafa ); color: var( --color-neutral-500 , #71717a ); display: flex; gap: 0.375rem; padding: 0.25rem 0.5rem; }
.dark cnc-demo-maker .demo-maker_devtools-bar { background: var( --color-neutral-800 , #27272a ); color: var( --color-neutral-400 , #a1a1aa ); }
cnc-demo-maker .demo-maker_devtools-title { font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; }
cnc-demo-maker .demo-maker_copy { background: none; border: 1px solid var( --color-neutral-300 , #d4d4d8 ); border-radius: var( --radius-DEFAULT , 0.25rem ); color: inherit; cursor: pointer; font-size: 0.6875rem; font-weight: 500; padding: 0.0625rem 0.375rem; }
cnc-demo-maker .demo-maker_copy:hover { background: var( --color-neutral-200 , #e4e4e7 ); }
.dark cnc-demo-maker .demo-maker_copy { border-color: var( --color-neutral-600 , #52525b ); }
.dark cnc-demo-maker .demo-maker_copy:hover { background: var( --color-neutral-700 , #3f3f46 ); }
cnc-demo-maker .demo-maker_devtools-body cnc-code button { display: none; }
cnc-demo-maker .demo-maker_devtools-body { max-height: 16rem; overflow: auto; padding: 0.5rem; }
}
@layer widgets {
cnc-demo-maker .demo-maker_slot-row { border: 1px solid var( --color-neutral-300 , #d4d4d8 ); border-radius: var( --radius-md , 0.375rem ); overflow: hidden; }
.dark cnc-demo-maker .demo-maker_slot-row { border-color: var( --color-neutral-700 , #3f3f46 ); }
cnc-demo-maker .demo-maker_slot-row[data-lit="true"] { border-color: var( --color-primary-500 , #3b82f6 ); }
cnc-demo-maker .demo-maker_slot-head { align-items: center; cursor: pointer; display: flex; gap: 0.5rem; padding: 0.375rem 0.5rem; }
cnc-demo-maker .demo-maker_slot-row[data-lit="true"] .demo-maker_slot-head { background: var( --color-primary-50 , #eff6ff ); }
.dark cnc-demo-maker .demo-maker_slot-row[data-lit="true"] .demo-maker_slot-head { background: color-mix( in srgb , var( --color-primary-500 , #3b82f6 ) 18% , transparent ); }
cnc-demo-maker .demo-maker_slot-check { accent-color: var( --color-primary-600 , #2563eb ); cursor: pointer; flex-shrink: 0; height: 0.875rem; width: 0.875rem; }
cnc-demo-maker .demo-maker_slot-name { font-family: ui-monospace , SFMono-Regular , Menlo , Consolas , monospace; font-size: 0.75rem; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
cnc-demo-maker .demo-maker_slot-panel { display: grid; grid-template-rows: 0fr; overflow: hidden; transition: grid-template-rows 0.2s ease; }
cnc-demo-maker .demo-maker_slot-row[data-open="true"] .demo-maker_slot-panel { grid-template-rows: 1fr; }
cnc-demo-maker .demo-maker_slot-body { padding: 0 0.5rem; }
cnc-demo-maker .demo-maker_slot-row:not([data-open="true"]) .demo-maker_slot-body { min-height: 0; }
cnc-demo-maker .demo-maker_slot-row[data-open="true"] .demo-maker_slot-body { padding-bottom: 0.5rem; }
cnc-demo-maker .demo-maker_slot-body cnc-code .code-editor { min-height: 0 !important; }
cnc-demo-maker .demo-maker_chrome-switches { border-top: 1px solid var( --color-neutral-200 , #e4e4e7 ); display: flex; flex-direction: column; gap: 0.375rem; margin-top: 0.75rem; padding-top: 0.75rem; }
.dark cnc-demo-maker .demo-maker_chrome-switches { border-top-color: var( --color-neutral-700 , #3f3f46 ); }
cnc-demo-maker .demo-maker_aside { align-items: center; display: flex; flex-shrink: 0; gap: 0.5rem; height: 2.5rem; }
cnc-demo-maker .demo-maker_prop-row[data-labelled="true"] .demo-maker_aside { margin-top: 1.125rem; }
cnc-demo-maker .demo-maker_help { color: var( --color-neutral-400 , #a1a1aa ); cursor: help; }
cnc-demo-maker .demo-maker_help:hover { color: var( --color-neutral-600 , #52525b ); }
}
@layer widgets {
cnc-demo-maker .demo-maker_lit { display: inline; outline: 2px dashed var( --color-primary-500 , #3b82f6 ); outline-offset: 2px; }
cnc-demo-maker .demo-maker_event-name { color: var( --color-primary-600 , #2563eb ); font-family: ui-monospace , SFMono-Regular , Menlo , Consolas , monospace; font-size: 0.75rem; }
.dark cnc-demo-maker .demo-maker_event-name { color: var( --color-primary-400 , #60a5fa ); }
cnc-demo-maker .demo-maker_event-doc { color: var( --color-neutral-500 , #71717a ); font-size: 0.75rem; margin-top: 0.125rem; }
.dark cnc-demo-maker .demo-maker_event-doc { color: var( --color-neutral-400 , #a1a1aa ); }
cnc-demo-maker .demo-maker_event-log { border-top: 1px solid var( --color-neutral-200 , #e4e4e7 ); margin-top: 1rem; padding-top: 0.75rem; }
.dark cnc-demo-maker .demo-maker_event-log { border-top-color: var( --color-neutral-700 , #3f3f46 ); }
cnc-demo-maker .demo-maker_event-log-bar { align-items: center; display: flex; gap: 0.5rem; margin-bottom: 0.5rem; }
cnc-demo-maker .demo-maker_event-log-title { color: var( --color-neutral-500 , #71717a ); font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; }
.dark cnc-demo-maker .demo-maker_event-log-title { color: var( --color-neutral-400 , #a1a1aa ); }
cnc-demo-maker .demo-maker_event-log-clear { background: none; border: 0; color: var( --color-neutral-500 , #71717a ); cursor: pointer; font-size: 0.6875rem; padding: 0; }
cnc-demo-maker .demo-maker_event-log-clear:hover { color: var( --color-neutral-800 , #27272a ); }
.dark cnc-demo-maker .demo-maker_event-log-clear:hover { color: var( --color-neutral-100 , #f4f4f5 ); }
cnc-demo-maker .demo-maker_event-log-empty { color: var( --color-neutral-500 , #71717a ); font-size: 0.75rem; }
.dark cnc-demo-maker .demo-maker_event-log-empty { color: var( --color-neutral-400 , #a1a1aa ); }
cnc-demo-maker .demo-maker_event-row { align-items: baseline; display: flex; gap: 0.5rem; padding: 0.25rem 0; }
cnc-demo-maker .demo-maker_event-row + .demo-maker_event-row { border-top: 1px solid var( --color-neutral-100 , #f4f4f5 ); }
.dark cnc-demo-maker .demo-maker_event-row + .demo-maker_event-row { border-top-color: var( --color-neutral-800 , #27272a ); }
cnc-demo-maker .demo-maker_event-detail { color: var( --color-neutral-600 , #52525b ); font-family: ui-monospace , SFMono-Regular , Menlo , Consolas , monospace; font-size: 0.75rem; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dark cnc-demo-maker .demo-maker_event-detail { color: var( --color-neutral-400 , #a1a1aa ); }
cnc-demo-maker .demo-maker_event-time { color: var( --color-neutral-400 , #a1a1aa ); flex: none; font-size: 0.6875rem; font-variant-numeric: tabular-nums; }
.dark cnc-demo-maker .demo-maker_event-time { color: var( --color-neutral-500 , #71717a ); }
}
@layer widgets {
cnc-demo-maker .demo-maker_stage-resize { display: none; }
@media (min-width: 64rem) {
cnc-demo-maker .demo-maker_stage { position: relative; }
cnc-demo-maker .demo-maker_stage-resize { display: block; position: absolute; inset-block: 0; inset-inline-end: 0; width: 0.375rem; cursor: col-resize; touch-action: none; z-index: 30; }
cnc-demo-maker .demo-maker_stage-resize:hover, cnc-demo-maker .demo-maker_stage--resizing .demo-maker_stage-resize { background-color: var( --color-primary-500 , #3b82f6 ); opacity: 0.5; }
cnc-demo-maker .demo-maker_stage--widened { flex: 0 0 calc( var( --demo-stage-base , 0px ) + var( --demo-stage-extra , 0px ) ); margin-inline-end: calc( -1 * var( --demo-stage-extra , 0px ) ); z-index: 20; background-color: #fff; box-shadow: 0 10px 15px -3px rgb( 0 0 0 / 0.1 ); }
.dark cnc-demo-maker .demo-maker_stage--widened { background-color: var( --color-neutral-900 , #18181b ); }
}
cnc-demo-maker .demo-maker_stage--resizing .demo-maker_frame { pointer-events: none; }
cnc-demo-maker .demo-maker_stage-body { position: relative; }
cnc-demo-maker .demo-maker_exit-fullscreen { position: absolute; inset-block-start: 0.5rem; inset-inline-end: 0.5rem; z-index: 10; }
cnc-demo-maker .demo-maker_exit-fullscreen[hidden] { display: none; }
cnc-demo-maker .demo-maker_stage-body--overlay { position: fixed; inset: 0; z-index: 1000; }
cnc-demo-maker .demo-maker_stage-body:fullscreen[data-view="desktop"] > .demo-maker_frame, cnc-demo-maker .demo-maker_stage-body--overlay[data-view="desktop"] > .demo-maker_frame, cnc-demo-maker .demo-maker_stage-body:fullscreen[data-view="desktop"] > .demo-maker_preview, cnc-demo-maker .demo-maker_stage-body--overlay[data-view="desktop"] > .demo-maker_preview { height: auto !important; flex-grow: 1 !important; }
}
@media (prefers-reduced-motion: reduce) {
cnc-demo-maker *, cnc-demo-maker *::before, cnc-demo-maker *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
@layer widgets {
cnc-desktop .card.shaken { animation: cnc-desktop-shaken 420ms cubic-bezier( 0.2 , 0.8 , 0.2 , 1 ); }
cnc-desktop .card.pulse { animation: cnc-desktop-pulse 1.4s cubic-bezier( 0.2 , 0.8 , 0.2 , 1 ); }
cnc-desktop { --desktop-background: linear-gradient( 145deg , #e4eaf4 , #f3f5fa 55% , #dce4ef ); --desktop-text: #202939; --desktop-window-surface: #ffffff; --desktop-window-text: #202939; --desktop-header-surface: #f4f6fa; --desktop-header-text: #596579; --desktop-header-hover: #e9edf5; --desktop-border: #cdd5e2; --desktop-shadow: 0 8px 24px rgb( 20 30 50 / 14% ); --desktop-icon-title: #344155; --desktop-zone-rgb: 28 40 62; --desktop-zone-fill: rgb( var( --desktop-zone-rgb ) / 6% ); --desktop-glyph-light: 97%; --desktop-glyph-dark: 88%; --desktop-glyph-edge: 82%; --desktop-glyph-radius: 23%; --desktop-glyph-shadow: inset 0 1px 1px rgb( 255 255 255 / 9% ) , inset 1px 0 1px rgb( 255 255 255 / 3% ) , inset 0 -1px 2px rgb( 0 0 0 / 12% ) , 0 2px 4px rgb( 0 0 0 / 12% ) , 0 6px 14px rgb( 0 0 0 / 16% ); background: var( --desktop-background ); color: var( --desktop-text ); }
.dark cnc-desktop { --desktop-background: linear-gradient( 145deg , #141e32 , #0e1423 55% , #202b40 ); --desktop-text: #edf1f8; --desktop-window-surface: #1e293b; --desktop-window-text: #edf1f8; --desktop-header-surface: #253247; --desktop-header-text: #b9c5d8; --desktop-header-hover: #304059; --desktop-border: #3c4b62; --desktop-shadow: 0 8px 24px rgb( 0 0 0 / 35% ); --desktop-icon-title: #e0e7f4; --desktop-zone-rgb: 255 255 255; --desktop-zone-fill: rgb( var( --desktop-zone-rgb ) / 6% ); }
cnc-desktop[theme="aurora"] { --desktop-background: radial-gradient( ellipse 75% 85% at 5% -5% , rgba( 53 , 53 , 202 , 0.95 ) 0% , rgba( 39 , 37 , 137 , 0.68 ) 34% , transparent 72% ) , radial-gradient( ellipse 72% 72% at 100% 100% , rgba( 127 , 29 , 67 , 0.78 ) 0% , rgba( 94 , 23 , 55 , 0.48 ) 38% , transparent 72% ) , radial-gradient( ellipse 65% 70% at 48% 40% , rgba( 17 , 14 , 35 , 0.95 ) 0% , transparent 75% ) , linear-gradient( 125deg , #111020 0% , #0b0914 55% , #100b18 100% ); --desktop-text: #f1eefb; --desktop-icon-title: #f1eefb; --desktop-zone-rgb: 255 255 255; --desktop-zone-fill: rgb( var( --desktop-zone-rgb ) / 6% ); --desktop-window-surface: #fcfaff; --desktop-header-surface: #f0ecf8; --desktop-border: #d9d0e8; }
.dark cnc-desktop[theme="aurora"] { --desktop-window-surface: #242138; --desktop-window-text: #f2eefb; --desktop-header-surface: #302b46; --desktop-header-text: #c9bfdc; --desktop-header-hover: #3d3656; --desktop-border: #49405f; }
cnc-desktop[theme="minimal"] { --desktop-background: #f2f1ed; --desktop-window-surface: #fffefa; --desktop-header-surface: #f8f7f3; --desktop-border: #d7d5ce; --desktop-shadow: 0 3px 12px rgb( 30 30 25 / 7% ); --desktop-glyph-light: 100%; --desktop-glyph-dark: 96%; --desktop-glyph-edge: 94%; --desktop-glyph-radius: 18%; --desktop-glyph-shadow: 0 2px 5px rgb( 0 0 0 / 12% ); }
.dark cnc-desktop[theme="minimal"] { --desktop-background: #161819; --desktop-window-surface: #232627; --desktop-header-surface: #292d2e; --desktop-header-hover: #333839; --desktop-border: #3b4142; --desktop-shadow: 0 3px 12px rgb( 0 0 0 / 24% ); }
cnc-desktop .card { background: var( --desktop-window-surface ); color: var( --desktop-window-text ); border-radius: calc( 6px + 8px * var( --s , 1 ) ); border-color: var( --desktop-border ); box-shadow: var( --desktop-shadow ); }
cnc-desktop .card.maximized { box-shadow: none; border-radius: 0; }
cnc-desktop .card-head { background: var( --desktop-header-surface ); color: var( --desktop-header-text ); border-color: var( --desktop-border ); }
cnc-desktop .card-head:hover { background: var( --desktop-header-hover ); color: var( --desktop-window-text ); }
cnc-desktop .card-glyph { color: var( --color-primary-600 ); }
cnc-desktop .quick-label, cnc-desktop .tile-label { color: var( --desktop-icon-title ); }
cnc-desktop .quick-label:hover { color: var( --desktop-icon-title ); }
cnc-desktop .theme-picker { background: var( --desktop-window-surface ); color: var( --desktop-window-text ); border: 1px solid var( --desktop-border ); }
cnc-desktop .pane-tabs { --stage-surface: var( --desktop-window-surface ); --stage-edge: var( --desktop-border ); --stage-tab: var( --desktop-header-surface ); --stage-lift: var( --desktop-header-hover ); }
cnc-desktop .stage { background: transparent; }
cnc-desktop .zone { --dock-direction: to right; background: var( --desktop-zone-fill ); box-shadow: inset 0 0 0 1px rgb( var( --desktop-zone-rgb ) / 7% ); }
cnc-desktop .zone-right { --dock-direction: to left; }
cnc-desktop .zone::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: rgb( var( --desktop-zone-rgb ) / 22% ); mask-image: linear-gradient( var( --dock-direction ) , black 15% , transparent ); opacity: 0; transition: opacity 200ms; }
cnc-desktop.dragging .zone::before, cnc-desktop.show-zones .zone::before, cnc-desktop.show-zones-live .zone::before { opacity: 0.65; }
cnc-desktop .zone.target::before, cnc-desktop .zone.active::before { opacity: 1; }
cnc-desktop .zone.target { box-shadow: inset 0 0 0 1px rgb( var( --desktop-zone-rgb ) / 24% ); }
cnc-desktop.show-zones-live .zone::before { transition: none; }
@keyframes cnc-desktop-pulse {
  15%, 48%, 81% { border-color: var( --color-primary-500 ); box-shadow: 0 0 0 6px color-mix( in oklab , var( --color-primary-500 ) 45% , transparent ) , 0 18px 48px color-mix( in oklab , var( --color-slate-900 ) 20% , transparent ); }
  0%, 31%, 64%, 100% { box-shadow: 0 0 0 0 transparent , 0 18px 48px color-mix( in oklab , var( --color-slate-900 ) 20% , transparent ); }
}
@keyframes cnc-desktop-shaken {
  30% { border-color: var( --color-primary-500 ); box-shadow: 0 0 0 4px color-mix( in oklab , var( --color-primary-500 ) 35% , transparent ) , 0 18px 48px color-mix( in oklab , var( --color-slate-900 ) 20% , transparent ); }
}
cnc-desktop .stage.mobile cnc-tabs > .cnc-tabs_nav, cnc-desktop .stage.mobile cnc-tabs > .cnc-tabs_compact { display: none !important; }
cnc-desktop .stage.mobile cnc-tabs > .cnc-tabs_panel { border: 0 !important; border-radius: 0 !important; }
cnc-desktop .stage .pane > cnc-tabs { flex: 1 1 0; min-height: 0; }
cnc-desktop .stage .pane > cnc-tabs[kind] { --panel-bg: var( --stage-surface ); --panel-border-color: var( --stage-edge ); }
cnc-desktop .stage .pane > cnc-tabs[kind="curved"] { --item-bg: var( --stage-tab ); }
cnc-desktop .stage .pane > cnc-tabs .cnc-tabs_item:has(> .stage-tab.lifted) { --panel-bg: var( --stage-lift ); --item-bg: var( --stage-lift ); --item-bg-selected: var( --stage-lift ); }
cnc-desktop .stage cnc-tabs .cnc-tabs_drag { display: none !important; }
cnc-desktop .card[data-color][data-lod="glyph"], cnc-desktop .launcher-icon[data-color] { background: radial-gradient( ellipse at 28% 0% , rgb( 255 255 255 / 4% ) , transparent 65% ) , linear-gradient( 155deg , color-mix( in oklab , var( --tile-color ) var( --desktop-glyph-light ) , white ) , var( --tile-color ) 45% , color-mix( in oklab , var( --tile-color ) var( --desktop-glyph-dark ) , black ) ); border: 1px solid color-mix( in oklab , var( --tile-color ) var( --desktop-glyph-edge ) , black ); border-radius: var( --desktop-glyph-radius ); box-shadow: var( --desktop-glyph-shadow ); }
cnc-desktop .card[data-color][data-lod="glyph"] .card-glyph { color: var( --tile-ink ); filter: drop-shadow( 0 1px 1px rgb( 0 0 0 / 22% ) ); }
cnc-desktop .card[data-color][data-lod="glyph"]:hover { background-blend-mode: normal; }
cnc-desktop .theme-menu { display: grid; min-width: 140px; padding: 4px; background: var( --desktop-window-surface ); color: var( --desktop-window-text ); }
cnc-desktop .theme-menu button { padding: 8px 12px; border: 0; border-radius: 4px; background: transparent; color: inherit; text-align: left; cursor: pointer; }
cnc-desktop .theme-menu button:hover, cnc-desktop .theme-menu button:focus-visible { background: var( --desktop-header-hover ); }
cnc-desktop .theme-menu button[aria-pressed="true"] { font-weight: 600; background: var( --desktop-header-surface ); }
cnc-desktop { --desktop-accent: #3864c7; --desktop-danger: #b6354c; --desktop-radius: calc( 6px + 8px * var( --s , 1 ) ); --desktop-pane-radius: 7px; --desktop-header-padding: 6px 12px; --desktop-body-padding: 10px 12px; --desktop-active-border: var( --desktop-accent ); --desktop-control-hover: color-mix( in oklab , var( --desktop-accent ) 12% , transparent ); --desktop-tab-strip: var( --desktop-header-surface ); --desktop-tab-text: var( --desktop-header-text ); --desktop-tab-hover: var( --desktop-header-hover ); --desktop-tab-selected: var( --desktop-window-surface ); --desktop-tab-selected-text: var( --desktop-window-text ); --desktop-tab-indicator: var( --desktop-accent ); --desktop-pane-shadow: 0 2px 8px rgb( 0 0 0 / 8% ); }
.dark cnc-desktop { --desktop-accent: #9bb9ff; --desktop-danger: #ff9aa9; --desktop-pane-shadow: 0 2px 10px rgb( 0 0 0 / 20% ); }
cnc-desktop[theme="aurora"] { --desktop-accent: #7950ba; }
.dark cnc-desktop[theme="aurora"] { --desktop-accent: #c3a6f4; }
cnc-desktop[theme="minimal"] { --desktop-accent: #42685c; --desktop-radius: 6px; --desktop-pane-radius: 4px; --desktop-pane-shadow: none; }
.dark cnc-desktop[theme="minimal"] { --desktop-accent: #9fc5b6; }
cnc-desktop .card { border-radius: var( --desktop-radius ); }
cnc-desktop .card:has(> .card-head:hover), cnc-desktop .card.dragging { border-color: var( --desktop-active-border ); }
cnc-desktop .card.maximized { border-radius: 0; }
cnc-desktop .card-icon { color: var( --desktop-accent ); }
cnc-desktop .card-pin, cnc-desktop .card-close, cnc-desktop .tab-pin, cnc-desktop .tab-minimize, cnc-desktop .tab-close { background: transparent; color: var( --desktop-header-text ); }
cnc-desktop .card-pin:hover, cnc-desktop .card-minimize:hover, cnc-desktop .tab-pin:hover, cnc-desktop .tab-minimize:hover, cnc-desktop .card.pinned .card-pin, cnc-desktop .stage-tab.pinned .tab-pin { color: var( --desktop-accent ); background: var( --desktop-control-hover ); }
cnc-desktop .card-close:not(.card-minimize):hover, cnc-desktop .tab-close:hover { color: var( --desktop-danger ); background: color-mix( in oklab , var( --desktop-danger ) 14% , transparent ); }
cnc-desktop .layout-picker, cnc-desktop .float-picker, cnc-desktop .wide-toggle { background: var( --desktop-window-surface ); color: var( --desktop-header-text ); border-color: var( --desktop-border ); }
cnc-desktop .layout-choice { background: transparent; color: var( --desktop-header-text ); }
cnc-desktop .layout-choice:hover, cnc-desktop .wide-toggle:hover { background: var( --desktop-header-hover ); color: var( --desktop-window-text ); }
cnc-desktop .layout-choice.active, cnc-desktop .wide-toggle[aria-pressed="true"] { background: var( --desktop-control-hover ); color: var( --desktop-accent ); }
cnc-desktop .gutter:hover::before, cnc-desktop.resizing .gutter:active::before { background-color: var( --desktop-accent ); }
cnc-desktop .drop-preview { border-color: var( --desktop-accent ); background: color-mix( in oklab , var( --desktop-accent ) 16% , transparent ); }
cnc-desktop .stage .pane > cnc-tabs.pane-tabs[kind] { --panel-bg: var( --desktop-window-surface ); --panel-border-color: var( --desktop-border ); --item-text-color: var( --desktop-tab-text ); --item-text-color-hover: var( --desktop-window-text ); --item-text-color-selected: var( --desktop-tab-selected-text ); --item-bg-hover: var( --desktop-tab-hover ); --list-border-color: var( --desktop-border ); --icon-color: var( --desktop-accent ); --control-color: var( --desktop-header-text ); }
cnc-desktop .stage .pane > cnc-tabs.pane-tabs[kind="line"] { --indicator-color-selected: var( --desktop-tab-indicator ); }
cnc-desktop .stage .pane > cnc-tabs.pane-tabs[kind="soft"] { --item-bg-selected: var( --desktop-control-hover ); }
cnc-desktop .stage .pane > cnc-tabs.pane-tabs[kind="filled"] { --list-bg: var( --desktop-tab-strip ); --item-bg-selected: var( --desktop-tab-selected ); --item-border-color-selected: var( --desktop-border ); --item-shadow-selected: var( --desktop-pane-shadow ); }
cnc-desktop .stage .pane > cnc-tabs.pane-tabs[kind="curved"] { --item-bg: var( --desktop-tab-strip ); --item-bg-selected: var( --desktop-tab-selected ); --item-border-color-selected: var( --desktop-border ); }
cnc-desktop .stage .pane > cnc-tabs > .cnc-tabs_panel { color: var( --desktop-window-text ); box-shadow: var( --desktop-pane-shadow ); }
cnc-desktop .stage .pane > cnc-tabs .cnc-tabs_item:has(> .stage-tab.lifted) { --panel-bg: var( --desktop-tab-hover ); --item-bg: var( --desktop-tab-hover ); --item-bg-selected: var( --desktop-tab-hover ); }
cnc-desktop .card-head { padding: var( --desktop-header-padding ); }
cnc-desktop .card-body { padding: var( --desktop-body-padding ); }
cnc-desktop .card[data-lod="compact"] > .card-head { padding: var( --desktop-header-compact-padding , 5px 9px ); }
cnc-desktop .card[data-lod="compact"] > .card-body { padding: var( --desktop-body-compact-padding , 7px 9px ); }
cnc-desktop .stage .pane > cnc-tabs.pane-tabs[kind] { --shape-border-radius: var( --desktop-pane-radius ); }
cnc-desktop .tab-pin[aria-pressed="true"] { color: var( --desktop-accent ); background: var( --desktop-control-hover ); opacity: 1; }
cnc-desktop .tab-pin[aria-pressed="true"] svg, cnc-desktop .card.pinned .card-pin svg { rotate: 45deg; }
cnc-desktop .tab-pin[aria-pressed="true"] svg *, cnc-desktop .card.pinned .card-pin svg * { fill: currentColor; }
cnc-desktop { --desktop-header-height: 40px; --desktop-bar-inset: 4px 8px auto 64px; --desktop-bar-height: 32px; --desktop-bar-radius: 10px; --desktop-bar-background: rgb( 255 255 255 / 55% ); --desktop-bar-text: #253149; --desktop-bar-border: rgb( 255 255 255 / 40% ); --desktop-bar-shadow: 0 2px 10px rgb( 24 36 60 / 8% ); --desktop-bar-blur: 14px; --desktop-bar-control: rgb( 255 255 255 / 16% ); --desktop-bar-control-hover: rgb( 255 255 255 / 32% ); --desktop-bar-control-border: rgb( 40 55 80 / 12% ); --desktop-bar-focus: #4869b2; }
.dark cnc-desktop { --desktop-bar-background: rgb( 10 14 24 / 45% ); --desktop-bar-text: #e6ebf6; --desktop-bar-border: rgb( 255 255 255 / 9% ); --desktop-bar-shadow: 0 2px 12px rgb( 0 0 0 / 15% ); --desktop-bar-control: rgb( 255 255 255 / 4% ); --desktop-bar-control-hover: rgb( 255 255 255 / 10% ); --desktop-bar-control-border: rgb( 255 255 255 / 10% ); --desktop-bar-focus: #b8c9ff; }
cnc-desktop[theme="aurora"] { --desktop-bar-background: rgb( 16 12 38 / 28% ); --desktop-bar-text: #f1edfc; --desktop-bar-border: rgb( 255 255 255 / 12% ); --desktop-bar-shadow: 0 2px 14px rgb( 7 5 20 / 12% ); --desktop-bar-control: rgb( 255 255 255 / 4% ); --desktop-bar-control-hover: rgb( 255 255 255 / 12% ); --desktop-bar-control-border: rgb( 255 255 255 / 10% ); --desktop-bar-focus: #d3bcff; }
.dark cnc-desktop[theme="aurora"] { --desktop-bar-background: rgb( 12 9 28 / 40% ); }
cnc-desktop[theme="minimal"] { --desktop-bar-background: rgb( 255 254 250 / 65% ); --desktop-bar-radius: 7px; --desktop-bar-shadow: none; --desktop-bar-blur: 8px; }
.dark cnc-desktop[theme="minimal"] { --desktop-bar-background: rgb( 38 42 43 / 65% ); }
cnc-desktop .desktop-header { position: absolute; inset: var( --desktop-bar-inset ); height: var( --desktop-bar-height ); z-index: 100000; display: grid; grid-template-columns: 1fr minmax( 120px , 240px ) 1fr; align-items: center; gap: 12px; padding: 0 12px; background: var( --desktop-bar-background ); color: var( --desktop-bar-text ); border: 1px solid var( --desktop-bar-border ); border-radius: var( --desktop-bar-radius ); box-shadow: var( --desktop-bar-shadow ); backdrop-filter: blur( var( --desktop-bar-blur ) ); -webkit-backdrop-filter: blur( var( --desktop-bar-blur ) ); }
cnc-desktop .desktop-header-left, cnc-desktop .desktop-header-right { display: flex; align-items: center; gap: 6px; min-width: 0; }
cnc-desktop .desktop-header-right { justify-content: flex-end; }
cnc-desktop .desktop-header-center { min-width: 0; }
cnc-desktop .desktop-header .layout-picker, cnc-desktop .desktop-header .float-picker, cnc-desktop .desktop-header .wide-toggle, cnc-desktop .desktop-header .theme-picker, cnc-desktop .desktop-header .desktop-mode, cnc-desktop .header-button { background: var( --desktop-bar-control ); color: var( --desktop-bar-text ); border: 1px solid var( --desktop-bar-control-border ); border-radius: 7px; }
cnc-desktop .desktop-header .layout-choice { color: var( --desktop-bar-text ); }
cnc-desktop .desktop-header .layout-choice:hover, cnc-desktop .desktop-header .layout-choice.active, cnc-desktop .desktop-header .wide-toggle:hover, cnc-desktop .desktop-header .wide-toggle[aria-pressed="true"], cnc-desktop .desktop-header .header-button:hover, cnc-desktop .desktop-header .theme-picker:hover { background: var( --desktop-bar-control-hover ); color: var( --desktop-bar-text ); }
cnc-desktop .desktop-header cnc-color-mode .cnc-color-mode_trigger { --container-text-color: var( --desktop-bar-text ); --icon-color: var( --desktop-bar-text ); --container-bg: transparent; --container-bg-hover: var( --desktop-bar-control-hover ); }
cnc-desktop .header-button { height: 26px; padding: 0 8px; cursor: pointer; }
cnc-desktop .launcher-trigger { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; }
cnc-desktop .desktop-header button:focus-visible { outline: 2px solid var( --desktop-bar-focus ); outline-offset: 2px; }
cnc-desktop .stage, cnc-desktop .zone, cnc-desktop .zone-grip { top: var( --desktop-header-height ); }
cnc-desktop .app-launcher { position: absolute; inset: var( --desktop-header-height ) 0 0; z-index: 2147483647; display: grid; place-items: center; background: rgb( 5 7 14 / 30% ); backdrop-filter: blur( 14px ); -webkit-backdrop-filter: blur( 14px ); }
cnc-desktop .app-launcher[hidden] { display: none; }
cnc-desktop .launcher-panel { display: grid; grid-template-rows: auto minmax( 0 , 1fr ) auto auto; width: 90%; height: 90%; min-height: 0; background: rgb( 15 18 30 / 76% ); color: #fff; border: 1px solid rgb( 255 255 255 / 14% ); border-radius: 24px; box-shadow: 0 20px 80px rgb( 0 0 0 / 35% ); padding: 20px; overflow: hidden; }
cnc-desktop .launcher-top { display: flex; justify-content: center; gap: 12px; align-items: center; padding-bottom: 12px; }
cnc-desktop .launcher-top input { width: min( 420px , 100% ); min-width: 0; padding: 10px 14px; color: white; background: rgb( 255 255 255 / 9% ); border: 1px solid rgb( 255 255 255 / 18% ); border-radius: 10px; }
cnc-desktop .launcher-top input::placeholder { color: #c1c7d8; }
cnc-desktop .launcher-close { background: transparent; color: #cbd2df; border: 0; padding: 8px; cursor: pointer; }
cnc-desktop .launcher-pages { display: grid; grid-template-columns: 40px minmax( 0 , 1fr ) 40px; min-height: 0; touch-action: pan-y; }
cnc-desktop .launcher-grid { display: grid; grid-template-columns: repeat( var( --launcher-cols , 1 ) , minmax( 0 , 1fr ) ); grid-template-rows: repeat( var( --launcher-rows , 1 ) , minmax( 0 , 1fr ) ); min-height: 0; gap: 0; overflow: hidden; }
cnc-desktop .launcher-app { display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 0; padding: 8px; gap: 10px; border: 0; border-radius: 14px; background: transparent; color: white; cursor: pointer; }
cnc-desktop .launcher-app:hover, cnc-desktop .launcher-app:focus-visible { background: rgb( 255 255 255 / 8% ); outline: 1px solid rgb( 255 255 255 / 22% ); outline-offset: -2px; }
cnc-desktop .launcher-icon { display: grid; place-items: center; width: 72px; height: 72px; flex: none; border-radius: 18px; font-size: 36px; background: #343c58; color: #fff; }
cnc-desktop .launcher-icon[data-color] { color: var( --tile-ink ); }
cnc-desktop .launcher-title { display: flex; align-items: center; justify-content: center; gap: 5px; width: 100%; min-width: 0; font-size: 12px; line-height: 18px; }
cnc-desktop .launcher-title > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
cnc-desktop .launcher-open-dot { width: 6px; height: 6px; flex: none; border-radius: 50%; background: #69e398; box-shadow: 0 0 5px rgb( 105 227 152 / 25% ); }
cnc-desktop .launcher-prev, cnc-desktop .launcher-next { align-self: center; border: 0; background: transparent; color: #fff; font-size: 50px; cursor: pointer; padding: 0; }
cnc-desktop .launcher-prev:disabled, cnc-desktop .launcher-next:disabled { opacity: .15; cursor: default; }
cnc-desktop .launcher-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 4px; padding-top: 8px; }
cnc-desktop .launcher-pagination button { width: 24px; height: 24px; padding: 0; border: 0; background: radial-gradient( circle , #667086 3px , transparent 4px ); cursor: pointer; }
cnc-desktop .launcher-pagination button[aria-current="page"] { background: radial-gradient( circle , white 3px , transparent 4px ); }
cnc-desktop .launcher-status { text-align: center; color: #bdc6d9; font-size: 11px; }
cnc-desktop .launcher-empty { grid-column: 1 / -1; text-align: center; align-self: center; color: #cbd2df; }
@media (max-width: 700px) {
cnc-desktop .desktop-header { grid-template-columns: auto minmax( 70px , 1fr ) auto; gap: 6px; padding: 0 6px; }
cnc-desktop .launcher-trigger { padding: 0 6px; font-size: 12px; gap: 4px; }
cnc-desktop .desktop-header-left, cnc-desktop .desktop-header-right { gap: 4px; }
cnc-desktop .desktop-header .theme-picker { max-width: 65px; padding: 0 4px; overflow: hidden; }
cnc-desktop .launcher-panel { padding: 12px 6px; border-radius: 18px; }
cnc-desktop .launcher-pages { grid-template-columns: 26px minmax( 0 , 1fr ) 26px; }
cnc-desktop .launcher-prev, cnc-desktop .launcher-next { font-size: 38px; }
}
cnc-desktop .desktop-views { position: absolute; inset: 0 auto 0 0; z-index: 100001; width: 56px; padding: 6px; display: flex; flex-direction: column; align-items: center; gap: 10px; background: var( --desktop-bar-background ); border-right: 1px solid var( --desktop-bar-border ); backdrop-filter: blur( 12px ); color: var( --desktop-bar-text ); }
cnc-desktop .views-list { padding-top: 2px; min-height: 0; width: 100%; overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; display: flex; flex-direction: column; gap: 10px; align-items: center; }
cnc-desktop .view-entry { position: relative; width: 40px; flex: none; display: grid; place-items: center; }
cnc-desktop .view-button { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 7px; border: 1px solid transparent; border-radius: 9px; background: transparent; color: inherit; cursor: pointer; font-size: 23px; }
cnc-desktop .view-button svg { width: 22px; height: 22px; flex: none; }
cnc-desktop .view-button:hover, cnc-desktop .view-button:focus-visible { background: var( --desktop-bar-control-hover ); outline: 1px solid var( --desktop-bar-focus ); }
cnc-desktop .view-entry.selected > .view-button { color: var( --view-color ); background: color-mix( in oklab , var( --view-color ) 20% , transparent ); }
cnc-desktop .view-entry.modified::after { content: ""; position: absolute; right: 4px; top: 1px; width: 5px; height: 5px; border-radius: 50%; background: #f4c66d; pointer-events: none; }
cnc-desktop .views-clear { width: 44px; height: 28px; gap: 3px; padding: 2px; font-size: 10px; border-radius: 6px; background: var( --desktop-bar-control ); }
cnc-desktop .views-clear svg { width: 12px; height: 12px; }
cnc-desktop .views-toggle { display: none; }
cnc-desktop .zone-left, cnc-desktop .zone-grip-left { display: none; }
cnc-desktop[data-quick="grid"] .cnc-desktop_layer > .quick-label { font-size: 10px; }
cnc-desktop[data-quick="grid"] .cnc-desktop_layer > .quick-label > span { white-space: nowrap; }
cnc-desktop .desktop-header .layout-picker { border: 0; padding: 0; background: transparent; height: 26px; }
cnc-desktop .desktop-header .layout-picker > cnc-button { --container-bg: var( --desktop-bar-control ); --container-bg-hover: var( --desktop-bar-control-hover ); --container-bg-pressed: var( --desktop-bar-control-hover ); --container-text-color: var( --desktop-bar-text ); --container-text-color-hover: var( --desktop-bar-text ); --container-text-color-pressed: var( --desktop-bar-text ); --container-border-color: var( --desktop-bar-control-border ); --icon-color: var( --desktop-bar-text ); --icon-color-hover: var( --desktop-bar-text ); }
cnc-desktop .desktop-header .layout-picker > cnc-button.active { --container-bg: var( --desktop-bar-control-hover ); }
cnc-desktop .view-menu { position: absolute; left: 62px; z-index: 2147483646; width: 252px; max-width: calc( 100% - 72px ); max-height: calc( 100% - 16px ); overflow-y: auto; background: var( --desktop-window-surface ); color: var( --desktop-window-text ); border: 1px solid var( --desktop-border ); border-radius: 13px; box-shadow: 0 12px 40px rgb( 0 0 0 / 22% ); padding: 6px; }
cnc-desktop .view-menu[hidden] { display: none; }
cnc-desktop .view-menu-heading { display: flex; align-items: center; gap: 10px; padding: 9px 8px 12px; border-bottom: 1px solid var( --desktop-border ); margin-bottom: 4px; }
cnc-desktop .view-menu-badge { display: grid; place-items: center; width: 30px; height: 30px; flex: none; border-radius: 8px; color: var( --view-color ); background: color-mix( in oklab , var( --view-color ) 14% , transparent ); }
cnc-desktop .view-menu-badge svg { width: 18px; height: 18px; }
cnc-desktop .view-menu-name { font-weight: 600; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
cnc-desktop .view-menu-actions { display: grid; }
cnc-desktop .view-menu .view-menu-item { width: 100%; height: auto; padding: 9px 10px; justify-content: flex-start; font-size: 12px; line-height: 18px; text-align: left; border-radius: 6px; }
cnc-desktop .view-menu-separated { border-top: 1px solid var( --desktop-border ); margin-top: 5px; padding-top: 12px; }
cnc-desktop .view-menu .view-menu-danger { color: var( --desktop-danger ); }
cnc-desktop .view-menu .view-menu-danger:hover { background: color-mix( in oklab , var( --desktop-danger ) 10% , transparent ); }
cnc-desktop .view-reorder { display: grid; gap: 7px; margin-top: 6px; padding: 10px 6px 4px; border-top: 1px solid var( --desktop-border ); }
cnc-desktop .view-menu-section { font-size: 10px; text-transform: uppercase; letter-spacing: .06em; color: var( --desktop-header-text ); }
cnc-desktop .view-reorder > cnc-button-group { width: 100%; }
cnc-desktop .view-reorder > cnc-button-group > cnc-button { --container-bg: var( --desktop-header-surface ); --container-bg-hover: var( --desktop-header-hover ); --container-text-color: var( --desktop-window-text ); --icon-color: var( --desktop-header-text ); --container-border-color: var( --desktop-border ); }
cnc-desktop .views-status { position: absolute; bottom: 12px; left: 68px; z-index: 2147483645; color: var( --desktop-window-text ); background: var( --desktop-window-surface ); border-radius: 7px; padding: 7px 10px; max-width: calc( 100% - 85px ); font-size: 12px; }
cnc-desktop .views-status:empty { display: none; }
cnc-desktop .views-status .view-button { width: auto; height: auto; font-size: 12px; color: var( --desktop-accent ); padding: 0 8px; }
cnc-desktop .view-editor-modal { --container-bg: var( --desktop-window-surface ); --container-text-color: var( --desktop-window-text ); --container-border-color: var( --desktop-border ); --footer-border-color: var( --desktop-border ); --close-text-color: var( --desktop-header-text ); --close-bg-hover: var( --desktop-header-hover ); }
cnc-desktop .view-form { display: grid; gap: 18px; }
cnc-desktop .view-field { display: grid; gap: 7px; font-size: 12px; font-weight: 500; }
cnc-desktop .view-form-name { width: 100%; min-width: 0; padding: 9px 11px; background: var( --desktop-header-surface ); color: var( --desktop-window-text ); border: 1px solid var( --desktop-border ); border-radius: 7px; font-size: 14px; }
cnc-desktop .view-form-name:focus { outline: 2px solid var( --desktop-accent ); outline-offset: 2px; }
cnc-desktop .view-appearance-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
cnc-desktop .view-form-color { width: 72px; height: 36px; padding: 3px; border: 1px solid var( --desktop-border ); border-radius: 7px; background: transparent; cursor: pointer; }
cnc-desktop .view-form-preview { width: 50px; height: 50px; display: grid; place-items: center; border-radius: 12px; color: var( --view-color ); background: color-mix( in oklab , var( --view-color ) 16% , transparent ); }
cnc-desktop .view-form-preview svg { width: 28px; height: 28px; }
cnc-desktop .view-icon-field { border: 0; margin: 0; padding: 0; min-width: 0; }
cnc-desktop .view-icon-field legend { font-size: 12px; font-weight: 500; margin-bottom: 8px; }
cnc-desktop .view-icon-options { display: flex; gap: 7px; flex-wrap: wrap; }
cnc-desktop .view-icon-options .view-button { width: 38px; height: 38px; color: var( --desktop-header-text ); border-color: var( --desktop-border ); }
cnc-desktop .view-icon-options [aria-pressed="true"] { color: var( --desktop-accent ); background: var( --desktop-control-hover ); border-color: var( --desktop-accent ); }
cnc-desktop .view-dialog-actions { display: flex; justify-content: flex-end; gap: 8px; }
cnc-desktop .view-submit-hidden { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset( 50% ); }
@media (max-width: 759px) {
cnc-desktop .desktop-views { display: none; box-shadow: var( --desktop-shadow ); }
cnc-desktop.views-visible .desktop-views { display: flex; }
cnc-desktop.mobile .desktop-header { inset: 4px 8px auto; }
cnc-desktop .views-toggle { display: inline-flex; align-items: center; padding: 0 5px; font-size: 11px; }
}
cnc-desktop .desktop-header cnc-button.theme-picker { border: 0; padding: 0; background: transparent; --container-bg: var( --desktop-bar-control ); --container-bg-hover: var( --desktop-bar-control-hover ); --container-text-color: var( --desktop-bar-text ); --container-text-color-hover: var( --desktop-bar-text ); --container-border-color: var( --desktop-bar-control-border ); --icon-color: var( --desktop-bar-text ); }
@media (max-width: 759px) {
cnc-desktop .desktop-header cnc-button.theme-picker { --container-font-size: 11px; --container-padding: 2px 4px; --container-gap: 3px; --icon-size: 11px; }
cnc-desktop .desktop-header .theme-picker > button { max-width: 100%; }
cnc-desktop .desktop-header .theme-picker .cnc-button_label { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
}
@media (prefers-reduced-motion: reduce) {
cnc-desktop *, cnc-desktop *::before, cnc-desktop *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-details { --body-border-radius: 0; }
cnc-details { --label-padding: 0.25rem; --label-gap: 0.25rem; --chevron-size: 1rem; }
cnc-details { --container-text-color: var( --color-neutral-800 ); --chevron-color: currentColor; --chevron-transition-duration: 0.3s; --body-border-width: 0; --body-border-color: transparent; --body-transition-duration: 0.2s; --content-text-color: var( --color-neutral-600 ); }
.dark cnc-details { --container-text-color: var( --color-neutral-200 ); --content-text-color: var( --color-neutral-300 ); }
cnc-details { display: inline-block; color: var( --container-text-color ); }
cnc-details .cnc-details_label { gap: var( --label-gap ); padding: var( --label-padding ); }
cnc-details .cnc-details_chevron { width: var( --chevron-size ); height: var( --chevron-size ); color: var( --chevron-color ); transition: transform var( --chevron-transition-duration ) ease; }
cnc-details .cnc-details_body { grid-template-rows: 0fr; border: var( --body-border-width ) solid var( --body-border-color ); border-radius: var( --body-border-radius ); transition: grid-template-rows var( --body-transition-duration ) ease; }
cnc-details .cnc-details_content { color: var( --content-text-color ); }
cnc-details .cnc-details_chevron.rotated { transform: rotate( 90deg ); }
cnc-details .cnc-details_body.expanded { grid-template-rows: 1fr; }
cnc-details .cnc-details_label { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-details .cnc-details_label:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
cnc-details *, cnc-details *::before, cnc-details *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-dialog[shape="rounded"], cnc-dialog:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-xl , 0.75rem ) ); }
cnc-dialog[shape="square"], cnc-dialog[shape="rectangle"] { --shape-border-radius: 0; }
cnc-dialog[size="sm"] { --container-inline-size-max: 24rem; --container-padding: 1rem; --title-font-size: 1.125rem; }
cnc-dialog[size="md"], cnc-dialog:not([size]) { --container-inline-size-max: 32rem; --container-padding: 1.25rem; --title-font-size: 1.25rem; }
cnc-dialog[size="lg"] { --container-inline-size-max: 48rem; --container-padding: 1.5rem; --title-font-size: 1.375rem; }
cnc-dialog[size="full"] { --container-inline-size-max: 72rem; --container-padding: 1.5rem; --title-font-size: 1.5rem; }
cnc-dialog { --container-viewport-gap: 0.5rem; --container-block-size-max: calc( 100dvh - 1rem ); --container-border-radius: var( --shape-border-radius , 0 ); --container-border-width: 1px; --container-stack-offset: 0.25rem; --title-font-weight: 600; --footer-border-width: 1px; --close-size: 2rem; --close-icon-size: 1.25rem; --close-border-radius: var( --radius-md , 0.375rem ); --close-transition-duration: 120ms; --close-transition-timing: ease-out; --dialog-translate-closed: 0.5rem; --dialog-scale-closed: 0.98; position: fixed; z-index: 50; }
cnc-dialog:not([kind]), cnc-dialog[kind="filled"] { --container-bg: var( --color-neutral-50 , white ); --container-text-color: var( --color-neutral-800 , rgb( 38 38 38 ) ); --container-border-color: rgb( 0 0 0 / 10% ); --container-shadow: 0 20px 25px -5px rgb( 0 0 0 / 10% ) , 0 8px 10px -6px rgb( 0 0 0 / 10% ); --footer-border-color: var( --container-border-color ); --close-text-color: var( --color-neutral-400 , rgb( 163 163 163 ) ); --close-text-color-hover: var( --color-neutral-700 , rgb( 64 64 64 ) ); --close-bg-hover: var( --color-neutral-100 , rgb( 245 245 245 ) ); }
.dark cnc-dialog:not([kind]), .dark cnc-dialog[kind="filled"] { --container-bg: var( --color-neutral-800 , rgb( 38 38 38 ) ); --container-text-color: var( --color-neutral-100 , rgb( 245 245 245 ) ); --container-border-color: rgb( 255 255 255 / 15% ); --container-shadow: 0 20px 25px -5px rgb( 0 0 0 / 30% ) , 0 8px 10px -6px rgb( 0 0 0 / 20% ); --footer-border-color: var( --container-border-color ); --close-text-color: var( --color-neutral-400 , rgb( 163 163 163 ) ); --close-text-color-hover: var( --color-neutral-100 , rgb( 245 245 245 ) ); --close-bg-hover: var( --color-neutral-700 , rgb( 64 64 64 ) ); }
cnc-dialog[kind="plain"] { --container-bg: inherit; --container-text-color: inherit; --container-border-color: transparent; --container-shadow: none; --footer-border-color: transparent; --close-text-color: currentColor; --close-text-color-hover: currentColor; --close-bg-hover: transparent; }
cnc-dialog .cnc-dialog_overlay .cnc-overlay_surface { inset: 0; inline-size: max-content; block-size: max-content; margin: auto; }
cnc-dialog .cnc-dialog_container { inline-size: min( var( --container-inline-size-max ) , calc( 90vw - 2 * var( --container-viewport-gap ) ) ); max-block-size: var( --container-block-size-max ); color: var( --container-text-color ); background: var( --container-bg ); border: var( --container-border-width ) solid var( --container-border-color ); border-radius: var( --container-border-radius ); box-shadow: var( --container-shadow ); transform: translateY( calc( var( --modal-stack-depth , 0 ) * var( --container-stack-offset ) ) ); }
cnc-dialog .cnc-dialog_header { padding: var( --header-padding , var( --container-padding ) ); }
cnc-dialog .cnc-dialog_title { min-inline-size: 0; font-size: var( --title-font-size ); font-weight: var( --title-font-weight ); }
cnc-dialog .cnc-dialog_close { inline-size: var( --close-size ); block-size: var( --close-size ); padding: 0; color: var( --close-text-color ); background: transparent; border: 0; border-radius: var( --close-border-radius ); transition: color var( --close-transition-duration ) var( --close-transition-timing ) , background var( --close-transition-duration ) var( --close-transition-timing ); }
cnc-dialog .cnc-dialog_close:hover { color: var( --close-text-color-hover ); background: var( --close-bg-hover ); }
cnc-dialog .cnc-dialog_close:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
cnc-dialog .cnc-dialog_close-icon { inline-size: var( --close-icon-size ); block-size: var( --close-icon-size ); }
cnc-dialog .cnc-dialog_body { min-block-size: 0; padding: var( --body-padding , var( --container-padding ) ); }
cnc-dialog .cnc-dialog_footer { padding: var( --footer-padding , var( --container-padding ) ); border-top: var( --footer-border-width ) solid var( --footer-border-color ); }
cnc-dialog .cnc-dialog_footer:empty { display: none; }
cnc-dialog .cnc-dialog_overlay div.cnc-overlay_surface { opacity: 0; transform: translateY( var( --dialog-translate-closed ) ) scale( var( --dialog-scale-closed ) ); transition: opacity var( --overlay-transition-duration ) var( --overlay-transition-timing ) , transform var( --overlay-transition-duration ) var( --overlay-transition-timing ); }
cnc-dialog .cnc-dialog_overlay div.cnc-overlay_surface[data-state="open"] { opacity: 1; transform: translateY( 0 ) scale( 1 ); }
cnc-dialog .cnc-dialog_overlay div.cnc-overlay_surface[data-state="closing"] { opacity: 0; transform: translateY( var( --dialog-translate-closed ) ) scale( var( --dialog-scale-closed ) ); }
@media (min-width: 40rem) {
cnc-dialog { --container-viewport-gap: 1rem; --container-block-size-max: calc( 100dvh - 2rem ); --container-stack-offset: 0.5rem; }
}
@media (min-width: 64rem) {
cnc-dialog { --container-viewport-gap: 2rem; --container-block-size-max: calc( 100dvh - 4rem ); --container-stack-offset: 0.75rem; }
}
@media (prefers-reduced-motion: reduce) {
cnc-dialog *, cnc-dialog *::before, cnc-dialog *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-display { display: block; }
cnc-display[size="xxs"] { --value-font-size: 0.75rem; --value-line-height: 1rem; }
cnc-display[size="xs"] { --value-font-size: 0.875rem; --value-line-height: 1.25rem; }
cnc-display[size="sm"] { --value-font-size: 0.875rem; --value-line-height: 1.25rem; }
cnc-display[size="md"], cnc-display:not([size]) { --value-font-size: 1rem; --value-line-height: 1.5rem; }
cnc-display[size="lg"] { --value-font-size: 1.125rem; --value-line-height: 1.75rem; }
cnc-display[size="xl"] { --value-font-size: 1.25rem; --value-line-height: 1.75rem; }
cnc-display[size="2xl"] { --value-font-size: 1.5rem; --value-line-height: 2rem; }
cnc-display { --container-font-weight: 500; --value-color: var( --color-700 , inherit ); --value-font-size: 1rem; --value-line-height: 1.5rem; --text-gap: 0.5rem; --icon-size: 1.25rem; --link-color: var( --color-primary-600 , #2563eb ); --link-color-hover: var( --color-primary-500 , #3b82f6 ); --unit-color: var( --color-500 , var( --color-neutral-500 ) ); --unit-margin-start: 0.25rem; --placeholder-color: var( --color-400 , var( --color-neutral-400 ) ); --swatch-size: 1rem; --swatch-margin-end: 0.5rem; --swatch-border-radius: var( --radius-sm , 0.25rem ); --frame-border-color: var( --color-200 , var( --color-neutral-300 ) ); --frame-border-radius: var( --radius-md , 0.375rem ); --empty-color: var( --color-400 , var( --color-neutral-400 ) ); --empty-bg: var( --color-100 , var( --color-neutral-100 ) ); --empty-height: 8rem; --file-padding-y: 0.75rem; --file-padding-x: 1rem; --file-font-size: 0.875rem; --html-font-size: 0.875rem; }
.dark cnc-display { --value-color: var( --color-200 , inherit ); --link-color: var( --color-primary-400 , #60a5fa ); --link-color-hover: var( --color-primary-300 , #93c5fd ); --unit-color: var( --color-400 , var( --color-neutral-400 ) ); --placeholder-color: var( --color-500 , var( --color-neutral-500 ) ); --frame-border-color: var( --color-600 , var( --color-neutral-600 ) ); --empty-bg: var( --color-800 , var( --color-neutral-800 ) ); }
cnc-display .cnc-display_container { flex-direction: column; font-weight: var( --container-font-weight ); }
cnc-display .cnc-display_value { color: var( --value-color ); font-size: var( --value-font-size ); line-height: var( --value-line-height ); }
cnc-display .cnc-display_text { gap: var( --text-gap ); }
cnc-display .cnc-display_icon { inline-size: var( --icon-size ); block-size: var( --icon-size ); }
cnc-display .cnc-display_link { color: var( --link-color ); text-decoration: none; }
cnc-display .cnc-display_link:hover { color: var( --link-color-hover ); text-decoration: underline; }
cnc-display .cnc-display_unit { margin-inline-start: var( --unit-margin-start ); color: var( --unit-color ); }
cnc-display .cnc-display_placeholder { color: var( --placeholder-color ); }
cnc-display .cnc-display_swatch { inline-size: var( --swatch-size ); block-size: var( --swatch-size ); margin-inline-end: var( --swatch-margin-end ); border-radius: var( --swatch-border-radius ); }
cnc-display .cnc-display_address { gap: var( --text-gap ); }
cnc-display .cnc-display_frame { border: 1px solid var( --frame-border-color ); border-radius: var( --frame-border-radius ); }
cnc-display .cnc-display_empty { color: var( --empty-color ); }
cnc-display .cnc-display_empty:not(.cnc-display_file) { min-block-size: var( --empty-height ); background: var( --empty-bg ); }
cnc-display .cnc-display_file { gap: var( --text-gap ); padding: var( --file-padding-y ) var( --file-padding-x ); font-size: var( --file-font-size ); }
cnc-display .cnc-display_html { font-size: var( --html-font-size ); }
}
@layer widgets {
cnc-display .cnc-display_label { color: var( --color-neutral-700 , #374151 ); font-size: var( --text-sm , 0.875rem ); font-weight: 500; line-height: 1.25rem; margin-block-end: 0.375rem; }
cnc-display[data-label-position="left"] { display: flex; align-items: baseline; gap: 0.5rem; }
cnc-display[data-label-position="left"] .cnc-display_label { margin-block-end: 0; }
}
@layer widgets {
cnc-dock { --gutter-size: 12px; --gutter-line-size: 2px; --gutter-transition-duration: 0.15s; }
cnc-dock { --empty-text-color: var( --color-neutral-400 ); --gutter-line-bg-hover: var( --color-primary-400 ); }
.dark cnc-dock { --empty-text-color: var( --color-neutral-500 ); --gutter-line-bg-hover: var( --color-primary-300 ); }
cnc-dock { display: flex; position: relative; width: 100%; height: 100%; overflow: hidden; overscroll-behavior: none; }
cnc-dock .cnc-dock_empty { color: var( --empty-text-color ); }
cnc-dock .cnc-dock_node { min-width: 0; min-height: 0; }
cnc-dock [data-tab-id], cnc-dock .cnc-dock_gutter { -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; touch-action: none; }
cnc-dock .cnc-dock_gutter { position: absolute; z-index: 20; transition: background var( --gutter-transition-duration ); }
cnc-dock .cnc-dock_gutter.gutter-v { top: 0; right: 0; width: var( --gutter-size ); height: 100%; cursor: col-resize; }
cnc-dock .cnc-dock_gutter.gutter-h { bottom: 0; left: 0; width: 100%; height: var( --gutter-size ); cursor: row-resize; }
cnc-dock .cnc-dock_gutter-line { position: absolute; }
cnc-dock .gutter-v > .cnc-dock_gutter-line { top: 0; left: calc( 50% - var( --gutter-line-size ) / 2 ); width: var( --gutter-line-size ); height: 100%; }
cnc-dock .gutter-h > .cnc-dock_gutter-line { top: calc( 50% - var( --gutter-line-size ) / 2 ); left: 0; width: 100%; height: var( --gutter-line-size ); }
cnc-dock .cnc-dock_gutter:hover > .cnc-dock_gutter-line { background: var( --gutter-line-bg-hover ); }
@media (prefers-reduced-motion: reduce) {
cnc-dock *, cnc-dock *::before, cnc-dock *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
cnc-dock .cnc-dock_gutter:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: -2px; }
}
@layer widgets {
cnc-dom-inspector .highlight-overlay { background-color: transparent; z-index: 10000; position: fixed; pointer-events: none; border: none; margin: 0; padding: 0; overflow: visible; }
cnc-dom-inspector .highlight-overlay.inspected { background-color: rgba( 59 , 130 , 246 , 0.15 ); box-shadow: 0 0 0 2px rgba( 59 , 130 , 246 , 0.8 ); }
cnc-dom-inspector .highlight-overlay.selected { background-color: rgba( 34 , 197 , 94 , 0.15 ); box-shadow: 0 0 0 2px rgba( 34 , 197 , 94 , 0.8 ); }
cnc-dom-inspector .highlight-overlay.preview { background-color: rgba( 156 , 163 , 175 , 0.15 ); box-shadow: 0 0 0 2px rgba( 156 , 163 , 175 , 0.8 ); }
cnc-dom-inspector .highlight-badge { position: absolute; top: -24px; left: 0; display: flex; align-items: center; gap: 6px; padding: 2px 6px; border-radius: 4px; font-size: 11px; font-family: ui-monospace , SFMono-Regular , "SF Mono" , Menlo , Monaco , Consolas , monospace; white-space: nowrap; pointer-events: none; width: fit-content; min-width: fit-content; flex-shrink: 0; }
cnc-dom-inspector .highlight-overlay.inspected .highlight-badge { background-color: rgba( 59 , 130 , 246 , 0.95 ); color: white; }
cnc-dom-inspector .highlight-overlay.selected .highlight-badge { background-color: rgba( 34 , 197 , 94 , 0.95 ); color: white; }
cnc-dom-inspector .highlight-overlay.preview .highlight-badge { background-color: rgba( 107 , 114 , 128 , 0.95 ); color: white; }
cnc-dom-inspector .highlight-tag { font-weight: 600; }
cnc-dom-inspector .highlight-dims { opacity: 0.85; font-weight: 400; }
cnc-dom-inspector .tree-node { min-height: 24px; }
cnc-dom-inspector .--cnc-tooltip-container { border-radius: var(--radius-md); padding-inline: calc(var(--box-spacing) * 3); padding-block: calc(var(--box-spacing) * 2); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
cnc-dom-inspector html:not(.dark) .--cnc-tooltip-container { background-color: var(--color-neutral-900); color: var(--color-neutral-100); }
cnc-dom-inspector html:not(.dark) .--cnc-tooltip-container:after { background-color: var(--color-neutral-900); }
cnc-dom-inspector .dark .--cnc-tooltip-container { background-color: var(--color-white); color: var(--color-neutral-700); }
cnc-dom-inspector .dark .--cnc-tooltip-container:after { background-color: var(--color-white); color: var(--color-neutral-700); }
cnc-dom-inspector .overflow-auto::-webkit-scrollbar { width: 6px; height: 6px; }
cnc-dom-inspector .overflow-auto::-webkit-scrollbar-track { background: transparent; }
cnc-dom-inspector .overflow-auto::-webkit-scrollbar-thumb { background-color: rgba( 156 , 163 , 175 , 0.4 ); border-radius: 3px; }
cnc-dom-inspector .overflow-auto::-webkit-scrollbar-thumb:hover { background-color: rgba( 156 , 163 , 175 , 0.6 ); }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .indentation { padding-left: 0; }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .branch-cell { margin-right: 0; }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .branch-vline, cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .branch-corner { display: none; }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .tree-row { background-color: transparent; cursor: pointer; transition: background-color 150ms; }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .tree-row:hover { background-color: var(--color-neutral-50); }
.dark cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .tree-row:hover { background-color: var(--color-neutral-800); }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .tree-row.active { background-color: var(--color-primary-100); }
.dark cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .tree-row.active { background-color: color-mix(in oklab, var(--color-primary-900) 40%, transparent); }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .tree-row:has([data-also]) { background-color: var(--color-primary-100); }
.dark cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .tree-row:has([data-also]) { background-color: color-mix(in oklab, var(--color-primary-900) 40%, transparent); }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-table .tree-row.nest-target { background-color: color-mix( in srgb , var( --color-primary-500 ) 16% , transparent ); }
cnc-dom-inspector .cnc-dom-inspector_tree [data-hidden] [data-tree-name] { opacity: 0.5; }
cnc-dom-inspector .cnc-dom-inspector_tree .cnc-dom-inspector_row-add { visibility: hidden; }
cnc-dom-inspector .cnc-dom-inspector_tree .tree-row:hover .cnc-dom-inspector_row-add, cnc-dom-inspector .cnc-dom-inspector_tree [data-selected] .cnc-dom-inspector_row-add { visibility: visible; }
}
@layer widgets {
cnc-drag-block { --body-border-radius: 4px; }
cnc-drag-block { --handle-size: min( 8px , 25% ); }
cnc-drag-block { --body-bg: rgb( from var( --color-primary-500 ) r g b / 18% ); --body-border-color: var( --color-primary-500 ); --body-outline-color-focus: var( --color-primary-600 ); --body-opacity-disabled: 0.5; --handle-bg: var( --color-primary-500 ); --handle-opacity: 0.55; --handle-opacity-active: 1; }
cnc-drag-block { display: block; position: relative; user-select: none; }
cnc-drag-block .cnc-drag-block_axis { position: relative; width: 100%; height: 100%; }
cnc-drag-block .cnc-drag-block_body { position: absolute; box-sizing: border-box; border: 1px solid var( --body-border-color ); border-radius: var( --body-border-radius ); background: var( --body-bg ); cursor: grab; touch-action: none; }
cnc-drag-block .cnc-drag-block_body.vertical { left: 0; right: 0; }
cnc-drag-block .cnc-drag-block_body.horizontal { top: 0; bottom: 0; }
cnc-drag-block .cnc-drag-block_handle { position: absolute; box-sizing: border-box; background: var( --handle-bg ); opacity: var( --handle-opacity ); touch-action: none; }
cnc-drag-block .vertical > .cnc-drag-block_handle { left: 0; right: 0; height: var( --handle-size ); cursor: ns-resize; }
cnc-drag-block .vertical > .cnc-drag-block_handle-start { top: 0; border-top-left-radius: var( --body-border-radius ); border-top-right-radius: var( --body-border-radius ); }
cnc-drag-block .vertical > .cnc-drag-block_handle-end { bottom: 0; border-bottom-left-radius: var( --body-border-radius ); border-bottom-right-radius: var( --body-border-radius ); }
cnc-drag-block .horizontal > .cnc-drag-block_handle { top: 0; bottom: 0; width: var( --handle-size ); cursor: ew-resize; }
cnc-drag-block .horizontal > .cnc-drag-block_handle-start { left: 0; border-top-left-radius: var( --body-border-radius ); border-bottom-left-radius: var( --body-border-radius ); }
cnc-drag-block .horizontal > .cnc-drag-block_handle-end { right: 0; border-top-right-radius: var( --body-border-radius ); border-bottom-right-radius: var( --body-border-radius ); }
cnc-drag-block .cnc-drag-block_body.dragging { cursor: grabbing; }
cnc-drag-block .cnc-drag-block_handle:hover, cnc-drag-block .cnc-drag-block_handle:focus { opacity: var( --handle-opacity-active ); }
cnc-drag-block .cnc-drag-block_body:focus, cnc-drag-block .cnc-drag-block_handle:focus { outline: 2px solid var( --body-outline-color-focus ); outline-offset: 1px; }
cnc-drag-block .cnc-drag-block_body[aria-disabled="true"] { opacity: var( --body-opacity-disabled ); cursor: not-allowed; }
}
@layer widgets {
cnc-dragdrop { --mirror-opacity: 0.8; --transit-opacity: 0.2; }
cnc-dragdrop { display: block; }
cnc-dragdrop .gu-mirror { position: fixed !important; margin: 0 !important; z-index: 9999 !important; opacity: var( --mirror-opacity ); }
cnc-dragdrop .gu-hide { display: none !important; }
cnc-dragdrop .gu-unselectable { user-select: none !important; }
cnc-dragdrop .gu-transit { opacity: var( --transit-opacity ); }
cnc-dragdrop .handle { cursor: move; }
}
@layer widgets {
cnc-drawer { --shape-border-radius: 0; }
cnc-drawer { --panel-min-inline-size: 0; --panel-inline-size: max-content; --panel-max-inline-size: min( 32rem , 100vw ); --panel-min-block-size: 0; --panel-block-size: max-content; --panel-max-block-size: min( 32rem , 80vh ); }
cnc-drawer { --panel-bg: var( --color-neutral-50 , white ); --panel-text-color: var( --color-neutral-900 , #171717 ); --panel-shadow: none; --panel-shadow-offset: 0 8px; --backdrop-bg: transparent; --backdrop-filter-open: blur( 0 ); --container-transition-duration: 300ms; --container-transition-timing: cubic-bezier( 0.22 , 1 , 0.36 , 1 ); }
cnc-drawer.left { --panel-shadow-offset: 8px 0; }
cnc-drawer.right { --panel-shadow-offset: -8px 0; }
cnc-drawer.top { --panel-shadow-offset: 0 8px; }
cnc-drawer.bottom { --panel-shadow-offset: 0 -8px; }
cnc-drawer[data-shadow="true"] { --panel-shadow: var( --panel-shadow-offset ) 24px -4px rgb( 0 0 0 / 18% ); }
.dark cnc-drawer { --panel-bg: var( --color-neutral-900 , #171717 ); --panel-text-color: var( --color-neutral-100 , #f5f5f5 ); }
cnc-drawer { display: block; }
cnc-drawer[data-cnc-pending] { display: none; }
cnc-drawer .cnc-drawer_layer[data-pending] .cnc-drawer_content { visibility: hidden; }
cnc-drawer .cnc-drawer_layer[data-pending] .cnc-drawer_panel { animation: cnc-drawer-cnc-drawer-pending 1.2s ease-in-out infinite; }
@keyframes cnc-drawer-cnc-drawer-pending {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.6; }
}
cnc-drawer .cnc-drawer_layer { pointer-events: none; z-index: var( --container-z-index , 40 ); }
cnc-drawer .cnc-drawer_overlay { display: block; --overlay-transition-duration: var( --container-transition-duration ); --overlay-transition-timing: var( --container-transition-timing ); }
cnc-drawer .cnc-drawer_overlay dialog.cnc-overlay_surface { position: fixed; inset: 0; inline-size: 100vw; max-inline-size: 100vw; block-size: 100vh; block-size: 100svh; max-block-size: 100vh; max-block-size: 100svh; overflow: hidden; background: transparent; transform: none; }
cnc-drawer .cnc-drawer_overlay .cnc-overlay_content { display: contents; }
cnc-drawer.viewport .cnc-drawer_layer .cnc-drawer_backdrop { background: transparent; backdrop-filter: none; }
cnc-drawer.contained.floating .cnc-drawer_layer { position: absolute; inset: 0; overflow: hidden; }
cnc-drawer.contained.floating .cnc-drawer_panel { position: absolute; }
cnc-drawer .cnc-drawer_backdrop { opacity: 0; background: var( --backdrop-bg ); backdrop-filter: blur( 0 ); transition: opacity var( --container-transition-duration ) var( --container-transition-timing ) , backdrop-filter var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-drawer .cnc-drawer_panel { color: var( --panel-text-color ); background: var( --panel-bg ); box-shadow: var( --panel-shadow ); transition: transform var( --container-transition-duration ) var( --container-transition-timing ) , inline-size var( --container-transition-duration ) var( --container-transition-timing ) , block-size var( --container-transition-duration ) var( --container-transition-timing ); will-change: transform; }
cnc-drawer .cnc-drawer_content { min-inline-size: inherit; min-block-size: inherit; }
cnc-drawer .cnc-drawer_content > * { height: 100%; }
cnc-drawer[data-backdrop="dark"] { --backdrop-bg: rgb( 0 0 0 / 55% ); }
cnc-drawer[data-backdrop="blur"] { --backdrop-bg: transparent; --backdrop-filter-open: blur( 0.5rem ); }
cnc-drawer.left .cnc-drawer_panel, cnc-drawer.right .cnc-drawer_panel { inset-block: 0; inline-size: var( --panel-inline-size ); min-inline-size: var( --panel-min-inline-size ); max-inline-size: var( --panel-max-inline-size ); block-size: 100%; }
cnc-drawer.left .cnc-drawer_panel { inset-inline-start: 0; transform: translateX( -100% ); }
cnc-drawer.right .cnc-drawer_panel { inset-inline-end: 0; transform: translateX( 100% ); }
cnc-drawer.top .cnc-drawer_panel, cnc-drawer.bottom .cnc-drawer_panel { inset-inline: 0; inline-size: 100%; block-size: var( --panel-block-size ); min-block-size: var( --panel-min-block-size ); max-block-size: var( --panel-max-block-size ); }
cnc-drawer.top .cnc-drawer_panel { inset-block-start: 0; transform: translateY( -100% ); }
cnc-drawer.bottom .cnc-drawer_panel { inset-block-end: 0; transform: translateY( 100% ); }
cnc-drawer.push { display: grid; position: relative; z-index: var( --container-z-index , 40 ); overflow: hidden; box-shadow: none; }
cnc-drawer.push.left, cnc-drawer.push.right { flex: none; grid-template-columns: 0fr; block-size: 100%; transition: grid-template-columns var( --container-transition-duration ) var( --container-transition-timing ) , box-shadow var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-drawer.push.top, cnc-drawer.push.bottom { grid-template-rows: 0fr; inline-size: 100%; transition: grid-template-rows var( --container-transition-duration ) var( --container-transition-timing ) , box-shadow var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-drawer.push .cnc-drawer_layer { position: relative; min-inline-size: 0; min-block-size: 0; inline-size: auto; block-size: auto; overflow: hidden; }
cnc-drawer.push .cnc-drawer_panel { position: relative; box-shadow: none; }
cnc-drawer .cnc-drawer_layer[data-state="opening"], cnc-drawer .cnc-drawer_layer[data-state="open"], cnc-drawer .cnc-drawer_layer[data-state="closing"] { pointer-events: auto; }
cnc-drawer .cnc-drawer_layer[data-state="open"] .cnc-drawer_backdrop { opacity: 1; backdrop-filter: var( --backdrop-filter-open ); }
cnc-drawer .cnc-drawer_layer[data-state="open"] .cnc-drawer_panel { transform: translate( 0 , 0 ); }
cnc-drawer.push.left[data-state="open"], cnc-drawer.push.right[data-state="open"] { grid-template-columns: 1fr; }
cnc-drawer.push.top[data-state="open"], cnc-drawer.push.bottom[data-state="open"] { grid-template-rows: 1fr; }
cnc-drawer.push[data-shadow="true"][data-state="open"] { box-shadow: var( --panel-shadow ); }
cnc-drawer[animation="none"] { --container-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-drawer { --container-transition-duration: 0ms; }
}
cnc-drawer .cnc-drawer_panel:focus { outline: none; }
}
@layer widgets {
cnc-drop { --trigger-cursor: pointer; }
cnc-drop .cnc-drop_trigger { width: 100%; cursor: var( --trigger-cursor ); }
}
@layer widgets {
cnc-example .cnc-example_divider { align-self: stretch; border-left: 1px solid var( --color-neutral-200 , #e4e4e7 ); margin: 0.125rem 0.25rem; }
.dark cnc-example .cnc-example_divider { border-left-color: var( --color-neutral-700 , #3f3f46 ); }
cnc-example .cnc-example_zoom { color: var( --color-neutral-500 , #71717a ); font-size: 0.6875rem; font-variant-numeric: tabular-nums; min-width: 2.5rem; text-align: center; }
cnc-example .cnc-example_stage--device { align-self: center; margin-block: 1rem; outline: 1px solid var( --color-neutral-200 , #e4e4e7 ); overflow: auto; }
cnc-example .cnc-example_preview { min-height: 6rem; }
@media (min-width: 64rem) {
cnc-example .cnc-example_wide { margin-inline-start: calc( 50% - 50vw + 1rem ); width: calc( 100vw - 2rem ); }
}
cnc-example .cnc-example_source { padding: 0.75rem; }
cnc-example .cnc-example_stage { background: var( --color-white , #fff ); color: var( --color-neutral-900 , #171717 ); }
cnc-example .cnc-example_stage.dark, .dark cnc-example .cnc-example_stage:not(.cnc-example_stage--frame) { background: var( --color-neutral-900 , #171717 ); color: var( --color-neutral-100 , #f5f5f5 ); }
cnc-example .cnc-example_stage { position: relative; }
cnc-example .cnc-example_exit-fullscreen { inset-block-start: 0.5rem; inset-inline-end: 0.5rem; position: absolute; z-index: 10; }
cnc-example .cnc-example_stage--overlay { height: auto !important; inset: 0; margin: 0; position: fixed; width: auto !important; z-index: 1000; }
cnc-example .cnc-example_stage:fullscreen .cnc-example_frame, cnc-example .cnc-example_stage--overlay .cnc-example_frame { height: 100% !important; }
}
@layer widgets {
cnc-field { display: block; }
cnc-field.left { display: flex; align-items: flex-start; }
cnc-field .field-label { display: block; font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); font-weight: var(--font-weight-medium); --tw-leading: calc(var(--spacing) * 4); line-height: calc(var(--spacing) * 4); color: var(--color-neutral-600); margin-bottom: calc(var(--box-spacing) * 1); }
.dark cnc-field .field-label { color: var(--color-neutral-400); }
cnc-field .field-label[data-label-space]::before { content: "\a0"; }
cnc-field .field-label.left { margin-right: calc(var(--box-spacing) * 2); padding-block: calc(var(--box-spacing) * 1.5); margin-bottom: calc(var(--box-spacing) * 0); flex-shrink: 0; }
cnc-field .field-label.floating { pointer-events: none; position: absolute; z-index: 10; left: calc(var(--spacing) * 3); top: calc(var(--spacing) * 3); color: var(--color-neutral-400); margin-bottom: calc(var(--box-spacing) * 0); transition-property: all; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); --tw-duration: 200ms; transition-duration: 200ms; --tw-ease: cubic-bezier(0.4, 0, 0.2, 1); transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
.dark cnc-field .field-label.floating { color: var(--color-neutral-400); }
cnc-field .field-label.floating.non-empty { left: 0px; top: calc(var(--spacing) * -5); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); }
cnc-field .field-content.floating:has(:is(input, textarea):placeholder-shown:not([placeholder=""])) > .field-label.floating { left: 0px; top: calc(var(--spacing) * -5); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); }
cnc-field .field-content { width: 100%; display: flex; align-items: stretch; }
cnc-field .field-content > * { flex: 1; }
cnc-field .field-content.floating { position: relative; margin-top: calc(var(--box-spacing) * 3); }
cnc-field .required { color: var(--color-danger-600); margin-left: calc(var(--box-spacing) * 0.5); }
.dark cnc-field .required { color: var(--color-danger-500); }
cnc-field .help { margin-top: calc(var(--box-spacing) * 1); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); color: var(--color-neutral-500); }
.dark cnc-field .help { color: var(--color-neutral-500); }
cnc-field .error { margin-top: calc(var(--box-spacing) * 1); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); color: var(--color-danger-500); }
.dark cnc-field .error { color: var(--color-danger-600); }
:where( cnc-field .field-list > :not(:last-child)) { --tw-space-y-reverse: 0; margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse)); margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse))); }
cnc-field .field-row { display: flex; align-items: center; gap: calc(var(--spacing) * 2); }
cnc-field .field-row > :first-child { flex: 1; }
cnc-field .remove-item { flex-shrink: 0; color: var(--color-neutral-400); padding: calc(var(--box-spacing) * 1); }
cnc-field .remove-item:hover { color: var(--color-danger-500); }
cnc-field .add-item { font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); color: var(--color-primary-600); margin-top: calc(var(--box-spacing) * 1); }
cnc-field .add-item:hover { color: var(--color-primary-700); }
cnc-field .field-hint { margin-left: calc(var(--box-spacing) * 1); vertical-align: middle; }
cnc-field .field-content > .field-hint { flex: none; align-self: center; }
cnc-field .field-hint-icon { width: calc(var(--spacing) * 4); height: calc(var(--spacing) * 4); color: var(--color-neutral-500); }
.dark cnc-field .field-hint-icon { color: var(--color-neutral-400); }
cnc-field[size="sm"] .field-label { font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); --tw-leading: calc(var(--spacing) * 4); line-height: calc(var(--spacing) * 4); }
cnc-field[size="sm"] .field-hint-icon { width: calc(var(--spacing) * 3.5); height: calc(var(--spacing) * 3.5); }
cnc-field[size="sm"] .help, cnc-field[size="sm"] .error { font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); }
cnc-field[size="lg"] .field-label, cnc-field[size="xl"] .field-label, cnc-field[size="2xl"] .field-label { font-size: var(--text-base); line-height: var(--tw-leading, var(--text-base--line-height)); --tw-leading: calc(var(--spacing) * 5); line-height: calc(var(--spacing) * 5); }
cnc-field[size="lg"] .field-hint-icon, cnc-field[size="xl"] .field-hint-icon, cnc-field[size="2xl"] .field-hint-icon { width: calc(var(--spacing) * 5); height: calc(var(--spacing) * 5); }
@media (prefers-reduced-motion: reduce) {
cnc-field *, cnc-field *::before, cnc-field *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-fieldset { --container-margin-bottom: 1.5rem; --field-min-width: 160px; --field-label-width: 80px; --header-gap: 0.5rem; --header-margin-bottom: 0.25rem; --header-padding-x: 0.25rem; --line-start-width: 0.5rem; --label-font-size: 1rem; --label-line-height: 1.75rem; --toggle-icon-size: 1rem; --toggle-icon-margin-end: 0.25rem; --body-margin-y: 0.25rem; --body-padding-x: 0.25rem; --description-font-size: 0.875rem; --description-line-height: 1.5rem; --description-margin-top: -0.25rem; --description-margin-bottom: 0.5rem; --container-gap: 0.75rem; --aside-width: 300px; --spaced-label-font-size: 1.125rem; --spaced-description-font-size: 0.875rem; --spaced-description-margin-bottom: 1.25rem; --spaced-body-margin-bottom: 1.5rem; --spaced-container-gap-y: 1.25rem; --spaced-container-gap-x: 3rem; }
@media (width >= 40rem) {
cnc-fieldset { --container-margin-bottom: 2rem; --field-min-width: 200px; --field-label-width: 100px; }
}
cnc-fieldset { --header-text-color: var( --color-neutral-800 ); --line-color: var( --color-neutral-300 ); --label-font-weight: 600; --toggle-transition-duration: 0.3s; --body-transition-duration: 0.2s; --description-text-color: var( --color-neutral-500 ); --spaced-line-color: var( --color-neutral-200 ); --spaced-description-text-color: var( --color-neutral-600 ); }
.dark cnc-fieldset { --header-text-color: var( --color-neutral-200 ); --line-color: var( --color-neutral-600 ); --description-text-color: var( --color-neutral-400 ); --spaced-line-color: var( --color-neutral-700 ); --spaced-description-text-color: var( --color-neutral-400 ); }
cnc-fieldset { display: block; margin-bottom: var( --container-margin-bottom ); }
cnc-fieldset .cnc-fieldset_header { gap: var( --header-gap ); margin-bottom: var( --header-margin-bottom ); padding: 0 var( --header-padding-x ); color: var( --header-text-color ); }
cnc-fieldset .cnc-fieldset_line-start { width: var( --line-start-width ); border-top: 1px solid var( --line-color ); }
cnc-fieldset .cnc-fieldset_line-end.has-line { border-top: 1px solid var( --line-color ); }
cnc-fieldset .cnc-fieldset_label { font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); line-height: var( --label-line-height ); white-space: nowrap; }
cnc-fieldset .cnc-fieldset_toggle-icon { width: var( --toggle-icon-size ); height: var( --toggle-icon-size ); margin-inline-end: var( --toggle-icon-margin-end ); transition: transform var( --toggle-transition-duration ); }
cnc-fieldset .cnc-fieldset_body { grid-template-rows: 0fr; margin: var( --body-margin-y ) 0; padding: 0 var( --body-padding-x ); transition: all var( --body-transition-duration ); }
cnc-fieldset .cnc-fieldset_description { margin-top: var( --description-margin-top ); margin-bottom: var( --description-margin-bottom ); color: var( --description-text-color ); font-size: var( --description-font-size ); line-height: var( --description-line-height ); }
cnc-fieldset .cnc-fieldset_container { gap: var( --container-gap ); grid-template-columns: repeat( auto-fill , minmax( var( --field-min-width ) , 1fr ) ); }
cnc-fieldset .cnc-fieldset_toggle-icon.rotated { transform: rotate( 90deg ); }
cnc-fieldset .cnc-fieldset_body.open { grid-template-rows: 1fr; }
cnc-fieldset .cnc-fieldset_body.open .cnc-fieldset_body-inner { overflow: visible; }
cnc-fieldset .cnc-fieldset_spaced { display: grid; }
@media (width >= 40rem) {
cnc-fieldset .cnc-fieldset_spaced { grid-template-columns: var( --aside-width ) 1fr; }
}
cnc-fieldset .cnc-fieldset_spaced.has-line { border-bottom: 1px solid var( --spaced-line-color ); }
cnc-fieldset .cnc-fieldset_spaced-label { width: fit-content; font-size: var( --spaced-label-font-size ); }
cnc-fieldset .cnc-fieldset_spaced-description { margin-bottom: var( --spaced-description-margin-bottom ); color: var( --spaced-description-text-color ); font-size: var( --spaced-description-font-size ); font-weight: 400; }
cnc-fieldset .cnc-fieldset_spaced-body { margin-bottom: var( --spaced-body-margin-bottom ); overflow: hidden; }
cnc-fieldset .cnc-fieldset_spaced-container { row-gap: var( --spaced-container-gap-y ); column-gap: var( --spaced-container-gap-x ); }
cnc-fieldset .cnc-fieldset_toggle { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-fieldset .cnc-fieldset_toggle:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
cnc-fieldset *, cnc-fieldset *::before, cnc-fieldset *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-fieldset-spaced { --aside-width: 300px; --header-gap: 0.5rem; --header-margin-bottom: 0.25rem; --label-font-size: 1.125rem; --label-line-height: 1.75rem; --description-font-size: 0.875rem; --description-margin-bottom: 1.25rem; --body-margin-bottom: 1.5rem; --fields-gap-y: 1.25rem; --fields-gap-x: 3rem; }
cnc-fieldset-spaced { --header-text-color: var( --color-neutral-800 ); --label-font-weight: 600; --description-text-color: var( --color-neutral-600 ); --line-color: var( --color-neutral-200 ); --body-transition-duration: 0.2s; }
.dark cnc-fieldset-spaced { --header-text-color: var( --color-neutral-200 ); --description-text-color: var( --color-neutral-400 ); --line-color: var( --color-neutral-700 ); }
cnc-fieldset-spaced { display: block; }
cnc-fieldset-spaced .cnc-fieldset-spaced_grid { grid-template-columns: var( --aside-width ) 1fr; }
cnc-fieldset-spaced .cnc-fieldset-spaced_header { gap: var( --header-gap ); margin-bottom: var( --header-margin-bottom ); color: var( --header-text-color ); }
cnc-fieldset-spaced .cnc-fieldset-spaced_label { width: fit-content; font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); line-height: var( --label-line-height ); white-space: nowrap; }
cnc-fieldset-spaced .cnc-fieldset-spaced_description { margin-bottom: var( --description-margin-bottom ); color: var( --description-text-color ); font-size: var( --description-font-size ); font-weight: 400; }
cnc-fieldset-spaced .cnc-fieldset-spaced_body { grid-template-rows: 0fr; margin-bottom: var( --body-margin-bottom ); transition: all var( --body-transition-duration ); }
cnc-fieldset-spaced .cnc-fieldset-spaced_fields { row-gap: var( --fields-gap-y ); column-gap: var( --fields-gap-x ); }
cnc-fieldset-spaced .cnc-fieldset-spaced_grid.has-line { border-bottom: 1px solid var( --line-color ); }
cnc-fieldset-spaced .cnc-fieldset-spaced_body.open { grid-template-rows: 1fr; }
@media (prefers-reduced-motion: reduce) {
cnc-fieldset-spaced *, cnc-fieldset-spaced *::before, cnc-fieldset-spaced *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-file-tree .tree-row:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: -2px; }
}
@layer widgets {
cnc-filter { --pill-border-radius: var( --radius-full , 9999px ); --panel-border-radius: var( --radius-md , 0.375rem ); --option-border-radius: var( --radius-DEFAULT , 0.25rem ); --input-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-filter { --pill-padding: 0.125rem 0.75rem; --pill-gap: 0.25rem; --pill-font-size: 0.875rem; --chevron-font-size: 0.75rem; --chevron-margin-start: 0.125rem; --panel-min-width: 200px; --body-padding: 0.5rem; --list-gap: 0.25rem; --option-padding: 0.25rem; --option-gap: 0.5rem; --option-font-size: 0.875rem; --checkbox-size: 1rem; --inputs-gap: 0.5rem; --field-label-font-size: 0.75rem; --field-label-margin-bottom: 0.25rem; --input-padding: 0.25rem 0.5rem; --input-font-size: 0.875rem; --int-input-width: 7rem; --date-input-width: 9rem; --clear-margin-top: 0.5rem; --clear-font-size: 0.75rem; --label-font-size: 0.875rem; --label-margin-bottom: 0.25rem; }
cnc-filter { --pill-bg: transparent; --pill-border-color: var( --color-neutral-300 ); --pill-border-color-hover: var( --color-neutral-400 ); --pill-text-color: var( --color-neutral-700 ); --pill-bg-active: var( --color-primary-500 ); --pill-bg-active-hover: var( --color-primary-600 ); --pill-border-color-active: var( --color-primary-500 ); --pill-text-color-active: white; --pill-transition-duration: 0.15s; --panel-bg: transparent; --panel-border-width: 0; --panel-border-color: transparent; --option-text-color: var( --color-neutral-700 ); --option-bg-hover: var( --color-neutral-100 ); --checkbox-border-color: var( --color-neutral-300 ); --checkbox-color: var( --color-primary-600 ); --checkbox-ring-color-focus: var( --color-primary-500 ); --field-label-text-color: var( --color-neutral-500 ); --input-border-color: var( --color-neutral-300 ); --input-border-color-focus: var( --color-primary-500 ); --input-shadow-focus: 0 0 0 1px var( --color-primary-500 ); --clear-text-color: var( --color-primary-600 ); --clear-text-color-hover: var( --color-primary-500 ); --label-text-color: var( --color-neutral-500 ); }
cnc-filter { display: inline-block; position: relative; }
cnc-filter .cnc-filter_pill { gap: var( --pill-gap ); padding: var( --pill-padding ); border: 1px solid var( --pill-border-color ); border-radius: var( --pill-border-radius ); background: var( --pill-bg ); color: var( --pill-text-color ); font-size: var( --pill-font-size ); transition: all var( --pill-transition-duration ) ease; }
cnc-filter .cnc-filter_chevron { margin-inline-start: var( --chevron-margin-start ); font-size: var( --chevron-font-size ); }
cnc-filter .cnc-filter_panel { min-width: var( --panel-min-width ); border: var( --panel-border-width ) solid var( --panel-border-color ); border-radius: var( --panel-border-radius ); background: var( --panel-bg ); }
cnc-filter .cnc-filter_label { margin-bottom: var( --label-margin-bottom ); color: var( --label-text-color ); font-size: var( --label-font-size ); }
cnc-filter .cnc-filter_options, cnc-filter .cnc-filter_int, cnc-filter .cnc-filter_date { padding: var( --body-padding ); }
cnc-filter .cnc-filter_list { gap: var( --list-gap ); }
cnc-filter .cnc-filter_option { gap: var( --option-gap ); padding: var( --option-padding ); border-radius: var( --option-border-radius ); color: var( --option-text-color ); font-size: var( --option-font-size ); }
cnc-filter .cnc-filter_option input[type="checkbox"] { width: var( --checkbox-size ); height: var( --checkbox-size ); border-radius: var( --option-border-radius ); border-color: var( --checkbox-border-color ); color: var( --checkbox-color ); }
cnc-filter .cnc-filter_inputs { gap: var( --inputs-gap ); }
cnc-filter .cnc-filter_field-label { margin-bottom: var( --field-label-margin-bottom ); color: var( --field-label-text-color ); font-size: var( --field-label-font-size ); }
cnc-filter .cnc-filter_int-input, cnc-filter .cnc-filter_date-input { padding: var( --input-padding ); border: 1px solid var( --input-border-color ); border-radius: var( --input-border-radius ); font-size: var( --input-font-size ); }
cnc-filter .cnc-filter_int-input { width: var( --int-input-width ); }
cnc-filter .cnc-filter_date-input { width: var( --date-input-width ); }
cnc-filter .cnc-filter_clear { margin-top: var( --clear-margin-top ); padding: 0; border: 0; background: transparent; color: var( --clear-text-color ); font-size: var( --clear-font-size ); }
cnc-filter .cnc-filter_pill:hover { border-color: var( --pill-border-color-hover ); }
cnc-filter .cnc-filter_pill.active { border-color: var( --pill-border-color-active ); background: var( --pill-bg-active ); color: var( --pill-text-color-active ); }
cnc-filter .cnc-filter_pill.active:hover { background: var( --pill-bg-active-hover ); }
cnc-filter .cnc-filter_option:hover { background: var( --option-bg-hover ); }
cnc-filter .cnc-filter_option input[type="checkbox"]:focus { box-shadow: 0 0 0 2px var( --checkbox-ring-color-focus ); }
cnc-filter .cnc-filter_int-input:focus, cnc-filter .cnc-filter_date-input:focus { border-color: var( --input-border-color-focus ); box-shadow: var( --input-shadow-focus ); }
cnc-filter .cnc-filter_clear:hover { color: var( --clear-text-color-hover ); }
@media (prefers-reduced-motion: reduce) {
cnc-filter *, cnc-filter *::before, cnc-filter *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-filter-view .filter-tag { padding: 0.125rem 0.75rem; border: 1px solid #d1d5db; display: inline-flex; align-items: center; gap: calc(var(--spacing) * 1); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-bold); border-radius: calc(infinity * 1px); background-color: var(--color-slate-100); color: var(--color-gray-700); }
cnc-filter-view .filter-tag-close { margin-left: 0.25rem; cursor: pointer; opacity: 70%; }
cnc-filter-view .filter-tag-close:hover { opacity: 1; }
}
@layer widgets {
cnc-floater[shape="square"] { --shape-border-radius: 0; }
cnc-floater[shape="soft"] { --shape-border-radius: var( --radius-sm , 0.25rem ); }
cnc-floater[shape="rounded"], cnc-floater:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-floater[size="sm"] { --header-min-height: 2rem; --header-padding: 0.25rem; --header-gap: 0.25rem; --title-font-size: 0.8125rem; --button-size: 1.5rem; --icon-size: 0.875rem; --resize-handle-size: 0.75rem; }
cnc-floater[size="md"], cnc-floater:not([size]) { --header-min-height: 2.5rem; --header-padding: 0.375rem; --header-gap: 0.375rem; --title-font-size: 0.875rem; --button-size: 1.75rem; --icon-size: 1rem; --resize-handle-size: 1rem; }
cnc-floater[size="lg"] { --header-min-height: 3rem; --header-padding: 0.5rem; --header-gap: 0.5rem; --title-font-size: 1rem; --button-size: 2rem; --icon-size: 1.125rem; --resize-handle-size: 1.25rem; }
cnc-floater { --container-border-radius: var( --shape-border-radius , 0 ); --container-border-width: 1px; --container-shadow: 0 0.75rem 2rem rgb( 0 0 0 / 16% ); --container-shadow-active: 0 1.25rem 2.75rem rgb( 0 0 0 / 24% ); --header-border-width: 1px; --title-font-weight: 600; --button-border-radius: var( --radius-sm , 0.25rem ); --container-transition-duration: 140ms; --container-transition-timing: ease-out; }
cnc-floater[kind="filled"], cnc-floater:not([kind]) { --container-bg: var( --color-neutral-50 , white ); --container-text-color: var( --color-neutral-800 , #262626 ); --container-border-color: var( --color-neutral-400 , #737373 ); --header-bg: var( --color-neutral-100 , #f5f5f5 ); --header-border-color: var( --color-neutral-300 , #d4d4d4 ); --button-text-color: var( --color-neutral-500 , #737373 ); --button-text-color-hover: var( --color-neutral-900 , #171717 ); --button-bg-hover: var( --color-neutral-200 , #e5e5e5 ); --resize-handle-color: var( --color-neutral-400 , #a3a3a3 ); }
.dark cnc-floater[kind="filled"], .dark cnc-floater:not([kind]) { --container-bg: var( --color-neutral-800 , #262626 ); --container-text-color: var( --color-neutral-200 , #e5e5e5 ); --container-border-color: var( --color-neutral-600 , #a3a3a3 ); --header-bg: var( --color-neutral-800 , #262626 ); --header-border-color: var( --color-neutral-600 , #525252 ); --button-text-color: var( --color-neutral-300 , #d4d4d4 ); --button-text-color-hover: white; --button-bg-hover: var( --color-neutral-700 , #404040 ); --resize-handle-color: var( --color-neutral-400 , #a3a3a3 ); }
cnc-floater[kind="plain"] { --container-bg: var( --color-neutral-50 , white ); --container-text-color: var( --color-neutral-800 , #262626 ); --container-border-color: transparent; --container-border-width: 0; --container-shadow: none; --container-shadow-active: none; --header-bg: inherit; --header-border-color: transparent; --button-text-color: currentColor; --button-text-color-hover: currentColor; --button-bg-hover: rgb( 0 0 0 / 8% ); --resize-handle-color: currentColor; }
.dark cnc-floater[kind="plain"] { --container-bg: var( --color-neutral-800 , #262626 ); --container-text-color: var( --color-neutral-200 , #e5e5e5 ); --button-bg-hover: rgb( 255 255 255 / 10% ); }
cnc-floater { display: inline-block; position: absolute; pointer-events: none; min-inline-size: var( --container-min-width , 10rem ); min-block-size: var( --container-min-height , 5rem ); }
cnc-floater .cnc-floater_overlay { --surface-bg: transparent; --surface-text-color: inherit; --surface-border-radius: var( --container-border-radius ); pointer-events: auto; }
cnc-floater .cnc-floater_overlay .cnc-overlay_content { inline-size: 100%; block-size: 100%; }
cnc-floater .cnc-floater_container { inline-size: 100%; block-size: 100%; min-inline-size: var( --container-min-width , 10rem ); min-block-size: var( --container-min-height , 4rem ); color: var( --container-text-color ); background: var( --container-bg ); border: var( --container-border-width ) solid var( --container-border-color ); border-radius: var( --container-border-radius ); box-shadow: var( --container-shadow ); transition: box-shadow var( --container-transition-duration ) var( --container-transition-timing ) , opacity var( --container-transition-duration ) var( --container-transition-timing ) , transform var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-floater .cnc-floater_header { min-block-size: var( --header-min-height ); gap: var( --header-gap ); padding: var( --header-padding ); color: inherit; background: var( --header-bg ); border-block-end: var( --header-border-width ) solid var( --header-border-color ); touch-action: none; }
cnc-floater .cnc-floater_handle { inline-size: var( --icon-size ); block-size: var( --icon-size ); color: var( --button-text-color ); }
cnc-floater .cnc-floater_title { font-size: var( --title-font-size ); font-weight: var( --title-font-weight ); }
cnc-floater .cnc-floater_actions { gap: var( --header-gap ); }
cnc-floater .cnc-floater_button { inline-size: var( --button-size ); block-size: var( --button-size ); padding: 0; color: var( --button-text-color ); background: transparent; border-radius: var( --button-border-radius ); cursor: pointer; }
cnc-floater .cnc-floater_icon { inline-size: var( --icon-size ); block-size: var( --icon-size ); }
cnc-floater .cnc-floater_indicator { inline-size: calc( var( --icon-size ) * 0.45 ); block-size: calc( var( --icon-size ) * 0.45 ); border-inline-end: 2px solid currentColor; border-block-end: 2px solid currentColor; transform: rotate( 225deg ); transition: transform var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-floater .cnc-floater_indicator.collapsed { transform: rotate( 45deg ); }
cnc-floater .cnc-floater_content { color: inherit; background: inherit; }
cnc-floater .cnc-floater_resize-handle { margin-bottom: 0.25rem; margin-right: 0.25rem; inset-inline-end: 0; inset-block-end: 0; inline-size: var( --resize-handle-size ); block-size: var( --resize-handle-size ); z-index: 1; color: var( --resize-handle-color ); cursor: se-resize; touch-action: none; background: linear-gradient( 135deg , transparent 42% , currentColor 42% 50% , transparent 50% 62% , currentColor 62% 70% , transparent 70% ); }
cnc-floater .cnc-floater_button:hover { color: var( --button-text-color-hover ); background: var( --button-bg-hover ); }
cnc-floater .cnc-floater_button:focus-visible { outline: 2px solid var( --container-border-color ); outline-offset: 1px; }
cnc-floater .cnc-floater_resize-handle:focus-visible { outline: 2px solid var( --container-border-color ); outline-offset: -2px; }
cnc-floater .cnc-floater_container.dragging, cnc-floater .cnc-floater_container.resizing { box-shadow: var( --container-shadow-active ); }
cnc-floater .cnc-floater_container.collapsed { block-size: auto; min-block-size: 0; }
cnc-floater .cnc-floater_container.collapsed .cnc-floater_content, cnc-floater .cnc-floater_container.collapsed .cnc-floater_resize-handle { display: none; }
cnc-floater .cnc-floater_container.maximized .cnc-floater_resize-handle, cnc-floater .cnc-floater_container.mobile .cnc-floater_resize-handle { display: none; }
cnc-floater .cnc-floater_container.maximized .cnc-floater_header, cnc-floater .cnc-floater_container.mobile .cnc-floater_header { cursor: default; }
cnc-floater .cnc-floater_container.mobile { border-end-start-radius: 0; border-end-end-radius: 0; }
cnc-floater[animation="none"] { --container-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-floater { --container-transition-duration: 0ms; }
}
}
@layer widgets {
cnc-form { --error-margin-bottom: 0.75rem; }
cnc-form { display: block; }
cnc-form .cnc-form_error { margin-bottom: var( --error-margin-bottom ); }
}
@layer widgets {
cnc-form-builder .form-builder-preview .cnc-nested-children { display: flex; flex-direction: row; flex-wrap: wrap; }
cnc-form-builder .form-builder-block { border-color: rgba( 0 , 0 , 0 , 0 ); border-width: 2px; cursor: pointer; }
cnc-form-builder .form-builder-block.selected > .block-frame { border: 2px dashed var( --color-primary-500 ) !important; border-radius: 0.15rem; border-bottom-right-radius: 0 !important; padding: 2px 10px 2px 2px; }
cnc-form-builder cnc-form-renderer .cnc-nested-children { padding: 0.25rem; transition: padding 250ms; min-height: 1px; border-radius: 0.25rem; }
cnc-form-builder .select-tree nav nav { padding-left: 0.5rem !important; }
cnc-form-builder .form-builder-preview .x-dragdrop-dragging .x-dragdrop-over { border: 2px dashed #10b981 !important; }
cnc-form-builder .form-builder-preview .x-dragdrop-dragging .cnc-nested-children, cnc-form-builder .form-builder-preview.show-layout .cnc-nested-children, cnc-form-builder .form-builder-block-children { padding: 0.25rem; transition: padding 250ms; min-height: 1px; border-radius: 0.25rem; }
cnc-form-builder .workspace-col { width: min( 380px , 50cqi ); height: 100%; }
cnc-form-builder .centre-col { container-type: inline-size; flex: 1 1 auto; min-width: 100px; }
cnc-form-builder .add-at-end-bar { justify-content: center; }
cnc-form-builder .add-at-end-bar > .add-at-end { width: 40%; }
cnc-form-builder .add-below-bar { justify-content: center; }
cnc-form-builder .add-below-bar > .add-at-end { flex: 0 1 40%; min-width: 7.5rem; }
cnc-form-builder .add-at-end { border: none; border-radius: 0.5rem; background-color: #eff6ff; background-image: url( "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect width='100%25' height='100%25' fill='none' rx='8' ry='8' stroke='%2393c5fd' stroke-width='2' stroke-dasharray='10%2c 7'/%3e%3c/svg%3e" ); color: #1e40af; font-size: 0.875rem; font-weight: 500; padding: 0.5rem 1rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; transition: background-color 0.15s; }
cnc-form-builder .add-at-end:hover { background-color: #dbeafe; background-image: url( "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect width='100%25' height='100%25' fill='none' rx='8' ry='8' stroke='%2360a5fa' stroke-width='2' stroke-dasharray='10%2c 7'/%3e%3c/svg%3e" ); }
.dark cnc-form-builder .add-at-end { background-color: rgba( 30 , 64 , 175 , 0.2 ); background-image: url( "data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect width='100%25' height='100%25' fill='none' rx='8' ry='8' stroke='%233b82f6' stroke-width='2' stroke-dasharray='10%2c 7'/%3e%3c/svg%3e" ); color: #93c5fd; }
.dark cnc-form-builder .add-at-end:hover { background-color: rgba( 30 , 64 , 175 , 0.35 ); }
cnc-form-builder .form-builder_chrome { background: none; border: 0; color: var( --color-neutral-400 , #a1a1aa ); cursor: pointer; line-height: 0; padding: 0.125rem; }
cnc-form-builder .form-builder_chrome:hover { color: var( --color-neutral-800 , #27272a ); }
.dark cnc-form-builder .form-builder_chrome:hover { color: var( --color-neutral-200 , #e4e4e7 ); }
cnc-form-builder .form-builder_views { background: var( --color-neutral-200 , #e4e4e7 ); border-radius: var( --radius-lg , 0.5rem ); padding: 0.125rem; }
.dark cnc-form-builder .form-builder_views { background: var( --color-neutral-700 , #3f3f46 ); }
cnc-form-builder .form-builder_stage[data-view="tablet"], cnc-form-builder .form-builder_stage[data-view="phone"] { padding: 0.75rem 0; }
cnc-form-builder .form-builder_stage[data-view="tablet"] > [data-form-device], cnc-form-builder .form-builder_stage[data-view="phone"] > [data-form-device] { background-color: white; border-radius: var( --radius-xl , 0.75rem ); box-shadow: 0 10px 15px -3px rgb( 0 0 0 / 0.1 ) , 0 4px 6px -4px rgb( 0 0 0 / 0.1 ); }
.dark cnc-form-builder .form-builder_stage[data-view="tablet"] > [data-form-device], .dark cnc-form-builder .form-builder_stage[data-view="phone"] > [data-form-device] { background-color: var( --color-slate-800 , #1e293b ); }
@media (prefers-reduced-motion: reduce) {
cnc-form-builder *, cnc-form-builder *::before, cnc-form-builder *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-form-field2 { display: block; }
}
@layer widgets {
cnc-form-renderer { --repeat-list-gap: 0.5rem; --repeat-row-gap: 0.5rem; --remove-padding: 0.25rem; --add-margin-top: 0.25rem; --add-font-size: 0.875rem; }
cnc-form-renderer { --remove-text-color: var( --color-neutral-400 ); --remove-text-color-hover: var( --color-danger-500 ); --add-text-color: var( --color-primary-600 ); --add-text-color-hover: var( --color-primary-700 ); --add-opacity-disabled: 0.5; }
cnc-form-renderer { display: block; }
cnc-form-renderer .cnc-form-renderer_form { width: 100%; }
cnc-form-renderer .cnc-form-renderer_children { display: flex; flex-flow: row wrap; }
cnc-form-renderer .cnc-form-renderer_repeat-list { gap: var( --repeat-list-gap ); }
cnc-form-renderer .cnc-form-renderer_repeat-list > div { margin: 0 !important; padding-inline: 0 !important; }
cnc-form-renderer .cnc-form-renderer_repeat-row { gap: var( --repeat-row-gap ); }
cnc-form-renderer .cnc-form-renderer_repeat-row > :first-child { flex: 1; }
cnc-form-renderer .cnc-form-renderer_repeat-row > cnc-fieldset { margin-bottom: 0; }
cnc-form-renderer .cnc-form-renderer_remove { padding: var( --remove-padding ); color: var( --remove-text-color ); }
cnc-form-renderer .cnc-form-renderer_add { margin-top: var( --add-margin-top ); color: var( --add-text-color ); font-size: var( --add-font-size ); }
cnc-form-renderer .cnc-form-renderer_remove:hover { color: var( --remove-text-color-hover ); }
cnc-form-renderer .cnc-form-renderer_remove:disabled { visibility: hidden; }
cnc-form-renderer .cnc-form-renderer_add:hover { color: var( --add-text-color-hover ); }
cnc-form-renderer .cnc-form-renderer_add:disabled { opacity: var( --add-opacity-disabled ); cursor: not-allowed; }
}
@layer widgets {
cnc-gantt-chart { display: block; width: 100%; }
cnc-gantt-chart .gantt-root { position: relative; }
cnc-gantt-chart .gantt-container { height: inherit; display: flex; flex-direction: column; background-color: var(--color-white); overflow: hidden; }
.dark cnc-gantt-chart .gantt-container { background-color: var(--color-zinc-700); }
cnc-gantt-chart .gantt-header { display: flex; flex-direction: row; background-color: var(--color-zinc-50); --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.dark cnc-gantt-chart .gantt-header { background-color: var(--color-neutral-700); }
cnc-gantt-chart .gantt-col-header { padding-block: calc(var(--box-spacing) * 3); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); }
cnc-gantt-chart .gantt-col-resizer:hover { background-color: var(--color-primary-400); }
cnc-gantt-chart .gantt-time-header-scroll { scrollbar-width: none; }
cnc-gantt-chart .gantt-time-header-scroll::-webkit-scrollbar { display: none; }
cnc-gantt-chart .gantt-scale-row { border-bottom-width: 1px; border-bottom-style: var(--tw-border-style); border-color: var(--color-slate-200); }
.dark cnc-gantt-chart .gantt-scale-row { border-color: var(--color-slate-600); }
cnc-gantt-chart .gantt-scale-cell { height: 100%; display: flex; justify-content: center; align-items: center; white-space: nowrap; padding-block: calc(var(--box-spacing) * 2); padding-inline: calc(var(--box-spacing) * 0); color: var(--color-neutral-500); cursor: pointer; }
.dark cnc-gantt-chart .gantt-scale-cell { color: var(--color-neutral-100); }
cnc-gantt-chart .gantt-scale-cell:hover { background-color: var(--color-neutral-200); }
.dark cnc-gantt-chart .gantt-scale-cell:hover { background-color: var(--color-neutral-600); }
cnc-gantt-chart .gantt-marker-line { border-left: 2px dotted #fab005; z-index: 2; height: 100%; position: absolute; width: 1px; overflow: visible; }
cnc-gantt-chart .gantt-marker-line label { background-color: var(--color-yellow-500); color: var(--color-white); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); padding-inline: calc(var(--box-spacing) * 1.5); padding-block: calc(var(--box-spacing) * 0.5); white-space: nowrap; }
cnc-gantt-chart .gantt-body { display: flex; flex-direction: row; flex-grow: 1; overflow: hidden; }
cnc-gantt-chart .gantt-table-body { display: flex; flex-direction: row; overflow-y: hidden; flex-shrink: 0; }
cnc-gantt-chart .gantt-table-col { position: relative; overflow: hidden; }
cnc-gantt-chart .gantt-table-row { position: absolute; left: 0px; width: 100%; display: flex; align-items: center; border-bottom-width: 1px; border-bottom-style: var(--tw-border-style); border-color: var(--color-neutral-300); overflow: hidden; }
.dark cnc-gantt-chart .gantt-table-row { border-color: var(--color-neutral-600); }
cnc-gantt-chart .gantt-parent-row { color: var(--color-neutral-500); }
.dark cnc-gantt-chart .gantt-parent-row { color: var(--color-neutral-100); }
cnc-gantt-chart .gantt-selected-row { background-color: var(--color-primary-100); }
.dark cnc-gantt-chart .gantt-selected-row { background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); }
cnc-gantt-chart .gantt-table-cell { display: flex; align-items: center; gap: calc(var(--spacing) * 1); padding-inline: calc(var(--box-spacing) * 2); padding-block: calc(var(--box-spacing) * 0.5); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; width: 100%; }
cnc-gantt-chart .gantt-expand-icon { cursor: pointer; color: var(--color-neutral-400); margin-right: calc(var(--box-spacing) * 1); user-select: none; }
cnc-gantt-chart .gantt-completed { text-decoration-line: line-through; color: var(--color-neutral-400); }
cnc-gantt-chart .gantt-chart-body { flex: 1; overflow: auto; }
cnc-gantt-chart .gantt-chart-content { position: relative; }
cnc-gantt-chart .gantt-col-line { border-left: 1px solid #f0f0f0; position: absolute; height: 100%; }
cnc-gantt-chart .gantt-col-line-major { border-left-color: #a0a0a0; z-index: 1; }
cnc-gantt-chart .gantt-row-line { position: absolute; left: 0px; width: 100%; border-bottom-width: 1px; border-bottom-style: var(--tw-border-style); border-color: var(--color-neutral-300); }
.dark cnc-gantt-chart .gantt-row-line { border-color: var(--color-neutral-600); }
cnc-gantt-chart .gantt-weekend { background: rgba( 161 , 161 , 170 , 0.15 ); position: absolute; z-index: 1; }
cnc-gantt-chart .gantt-today { background: rgba( 59 , 130 , 246 , 0.25 ); position: absolute; z-index: 1; opacity: 50%; }
cnc-gantt-chart .gantt-task-parent { position: absolute; z-index: 5; display: flex; }
cnc-gantt-chart .gantt-task-parent-inner { clip-path: polygon( -20px 0 , calc( 100% + 20px ) 0 , calc( 100% + 20px ) 100% , 100% 100% , calc( 100% - 8px ) calc( 100% - 8px ) , 8px calc( 100% - 8px ) , 0 100% , -20px 100% ); width: 100%; height: 100%; background-color: var(--color-primary-500); color: var(--color-white); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); cursor: pointer; }
cnc-gantt-chart .gantt-task-parent-inner:hover { background-color: var(--color-primary-600); }
cnc-gantt-chart .gantt-parent-done .gantt-task-parent-inner, cnc-gantt-chart .gantt-task-completed-parent .gantt-task-parent-inner { background-color: var(--color-primary-300); }
cnc-gantt-chart .gantt-parent-done .gantt-task-parent-inner:hover, cnc-gantt-chart .gantt-task-completed-parent .gantt-task-parent-inner:hover { background-color: var(--color-primary-400); }
cnc-gantt-chart .gantt-task-child { transition: background-color 0.2s; position: absolute; z-index: 5; background-color: var(--color-success-300); cursor: pointer; border-radius: var(--radius-sm); }
cnc-gantt-chart .gantt-task-child:hover { background-color: var(--color-success-400); }
cnc-gantt-chart .gantt-task-child-done { background-color: var(--color-success-100); }
cnc-gantt-chart .gantt-task-child-done:hover { background-color: var(--color-success-200); }
cnc-gantt-chart .gantt-task-child-selected { background-color: var(--color-success-500); }
cnc-gantt-chart .gantt-task-child-selected:hover { background-color: var(--color-success-600); }
cnc-gantt-chart .gantt-task-child-done.gantt-task-child-selected { background-color: var(--color-success-200); }
cnc-gantt-chart .gantt-task-child-done.gantt-task-child-selected:hover { background-color: var(--color-success-300); }
cnc-gantt-chart .gantt-task-milestone { background-color: transparent; display: flex; align-items: center; justify-content: center; color: var(--color-gray-600); }
cnc-gantt-chart .gantt-task-milestone:hover { background-color: transparent; }
cnc-gantt-chart .gantt-task-milestone svg { fill: currentColor; stroke: currentColor; }
cnc-gantt-chart .gantt-marker-body { border-left: 2px dotted #fab005; z-index: 2; position: absolute; height: 100%; }
cnc-gantt-chart .gantt-dep-svg { pointer-events: none; }
}
@layer widgets {
cnc-gantt-chart-print { display: inline-block; }
}
@layer widgets {
cnc-gantt-chart-toggle-marker { display: inline-block; }
}
@layer widgets {
cnc-gantt-chart-toolbar { display: flex; align-items: center; gap: calc(var(--spacing) * 1); }
}
@layer widgets {
cnc-gantt-chart-zoom { display: inline-block; }
}
@layer widgets {
cnc-grid-stack { display: block; }
}
@layer widgets {
cnc-guard { --container-gap: 0.25rem; --icon-size: 1rem; --description-font-size: 0.875rem; }
cnc-guard { --container-text-color-pass: var( --color-success-400 ); --container-text-color-fail: var( --color-danger-400 ); }
cnc-guard { display: inline-block; }
cnc-guard .cnc-guard_container { gap: var( --container-gap ); }
cnc-guard .cnc-guard_icon { width: var( --icon-size ); height: var( --icon-size ); }
cnc-guard .cnc-guard_description { font-size: var( --description-font-size ); }
cnc-guard .cnc-guard_container.pass { color: var( --container-text-color-pass ); }
cnc-guard .cnc-guard_container.fail { color: var( --container-text-color-fail ); }
}
@layer widgets {
cnc-icon[kind][shape="rounded"], cnc-icon[kind]:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded ); --indicator-border-radius: var( --indicator-border-radius-rounded ); }
cnc-icon[kind][shape="pill"] { --shape-border-radius: var( --shape-border-radius-pill , var( --radius-full , 9999px ) ); --indicator-border-radius: var( --shape-border-radius ); }
cnc-icon[kind][shape="circle"] { --shape-border-radius: 50%; --indicator-border-radius: 50%; }
cnc-icon[kind][shape="square"], cnc-icon[kind][shape="rectangle"] { --shape-border-radius: 0; --indicator-border-radius: 0; }
cnc-icon[size="xxs"]:not([kind]) { --container-size: 0.625rem; --container-padding-inline: 0; }
cnc-icon[size="xs"]:not([kind]) { --container-size: 0.75rem; --container-padding-inline: 0; }
cnc-icon[size="sm"]:not([kind]) { --container-size: 0.875rem; --container-padding-inline: 0; }
cnc-icon[size="md"]:not([kind]), cnc-icon:not([size]):not([kind]) { --container-size: 1rem; --container-padding-inline: 0; }
cnc-icon[size="lg"]:not([kind]) { --container-size: 1.25rem; --container-padding-inline: 0; }
cnc-icon[size="xl"]:not([kind]) { --container-size: 1.5rem; --container-padding-inline: 0; }
cnc-icon[size="2xl"]:not([kind]) { --container-size: 2rem; --container-padding-inline: 0; }
cnc-icon[size="3xl"]:not([kind]) { --container-size: 2.5rem; --container-padding-inline: 0; }
cnc-icon[kind][size="xxs"] { --container-size: 1.25rem; --container-padding-inline: 0.35rem; --shape-border-radius-rounded: 0.25rem; --indicator-inset: 0.1875rem; --indicator-border-radius-rounded: 0.1875rem; }
cnc-icon[kind][size="xs"] { --container-size: 1.5rem; --container-padding-inline: 0.4rem; --shape-border-radius-rounded: 0.375rem; --indicator-inset: 0.25rem; --indicator-border-radius-rounded: 0.25rem; }
cnc-icon[kind][size="sm"] { --container-size: 2rem; --container-padding-inline: 0.5rem; --shape-border-radius-rounded: 0.5rem; --indicator-inset: 0.3125rem; --indicator-border-radius-rounded: 0.3125rem; }
cnc-icon[kind][size="md"], cnc-icon:not([size]) { --container-size: 2.5rem; --container-padding-inline: 0.6rem; --shape-border-radius-rounded: 0.625rem; --indicator-inset: 0.375rem; --indicator-border-radius-rounded: 0.375rem; }
cnc-icon[kind][size="lg"] { --container-size: 3rem; --container-padding-inline: 0.8rem; --shape-border-radius-rounded: 0.75rem; --indicator-inset: 0.5rem; --indicator-border-radius-rounded: 0.4375rem; }
cnc-icon[kind][size="xl"] { --container-size: 3.5rem; --container-padding-inline: 0.9rem; --shape-border-radius-rounded: 0.8125rem; --indicator-inset: 0.5625rem; --indicator-border-radius-rounded: 0.5rem; }
cnc-icon[kind][size="2xl"] { --container-size: 4rem; --container-padding-inline: 1rem; --shape-border-radius-rounded: 0.8125rem; --indicator-inset: 0.625rem; --indicator-border-radius-rounded: 0.5625rem; }
cnc-icon[kind][size="3xl"] { --container-size: 4.5rem; --container-padding-inline: 1.1rem; --shape-border-radius-rounded: 0.85rem; --indicator-inset: 0.7rem; --indicator-border-radius-rounded: 0.625rem; }
cnc-icon { line-height: 0; --container-size: 2.5rem; --container-padding-inline: 0.625rem; --container-transition-duration: 0.35s; --container-transition-timing: linear; --picture-size: auto; --shape-border-radius-rounded: 0.625rem; --shape-border-radius-pill: 0.75rem; --shape-border-radius: var( --shape-border-radius-rounded ); --container-border-radius: var( --shape-border-radius , 0 ); --indicator-inset: 0.375rem; }
cnc-icon:not([kind]) { --container-bg: transparent; --container-border-color: transparent; --container-border-width: 0; --container-outline-color: transparent; --container-shadow: none; --shape-border-radius-rounded: 0; --icon-color: inherit; }
.dark cnc-icon:not([kind]) { --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon[kind="soft"] { --container-bg: color-mix( in srgb , var( --color-500 , var( --color-neutral-500 ) ) 10% , transparent ); --container-border-color: transparent; --container-border-width: 0; --container-outline-color: var( --color-800 , var( --color-neutral-800 ) ); --container-shadow: none; --icon-color: var( --color-700 , var( --color-neutral-700 ) ); --indicator-bg: var( --icon-color ); }
.dark cnc-icon[kind="soft"] { --container-bg: color-mix( in srgb , var( --color-500 , var( --color-neutral-500 ) ) 20% , transparent ); --container-border-color: var( --color-600 , var( --color-neutral-600 ) ); --container-outline-color: var( --color-700 , var( --color-neutral-700 ) ); --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon[kind="solid"] { --container-bg: transparent; --container-border-width: 0; --container-border-color: var( --color-300 , var( --color-neutral-300 ) ); --container-shadow: inset 0 1px 0 color-mix( in srgb , var( --container-border-color ) 30% , transparent ); --indicator-bg: var( --color-500 , var( --color-neutral-500 ) ); --icon-color: white; }
.dark cnc-icon[kind="solid"] { --container-bg: transparent; --container-border-color: var( --color-900 , var( --color-neutral-800 ) ); --container-border-width: 0; --indicator-bg: var( --color-700 , var( --color-neutral-700 ) ); --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon[kind="solid"] .cnc-icon_container::before { content: ""; z-index: -1; inset: 0; border-radius: inherit; border-color: transparent; background: color-mix( in srgb , var( --color-500 , var( --color-neutral-500 ) ) 10% , transparent ); mask-image: linear-gradient( to bottom , black 0% , transparent 100% ); -webkit-mask-image: linear-gradient( to bottom , black 0% , transparent 100% ); position: absolute; }
cnc-icon[kind="solid"] .cnc-icon_container::after { content: ""; z-index: -1; background: var( --indicator-bg ); inset: var( --indicator-inset ); border-radius: var( --indicator-border-radius ); border-color: var( --color-500 , var( --color-neutral-500 ) ); border-width: 1px; position: absolute; }
cnc-icon[kind="filled"] { --container-bg: var( --color-600 , white ); --container-border-color: var( --color-700 , var( --color-gray-300 ) ); --container-border-width: 0; --container-shadow: 0 -2px 0 #00000015 inset , inset 0 0 0 1px var( --container-border-color ); --icon-color: var( --color-50 , var( --color-neutral-800 ) ); }
.dark cnc-icon[kind="filled"] { --container-bg: var( --color-700 , var( --color-neutral-700 ) ); --container-border-color: var( --color-800 , var( --color-neutral-800 ) ); --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon[kind="outline"] { --container-bg: white; --container-border-color: var( --color-gray-300 ); --container-border-width: 0; --container-shadow: 0 0 0 1px #0000002e inset , 0 -2px 0 #0000000d inset; --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-icon[kind="outline"] { --container-bg: color-mix( in srgb , var( --color-800 , var( --color-neutral-800 ) ) 5% , transparent ); --container-border-color: var( --color-900 , var( --color-neutral-800 ) ); --container-border-width: 0; --container-shadow: 0 0 0 1px var( --container-border-color ) inset , 0 -2px 0 #0000000d inset; --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon[kind="elevated"] { --container-bg: white; --container-border-color: var( --color-gray-300 ); --container-border-width: 0; --container-shadow: 0 0 0 1px #0000002e inset , 0 -2px 0 #0000000d inset; --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-icon[kind="elevated"] { --container-bg: color-mix( in srgb , var( --color-800 , var( --color-neutral-700 ) ) 8% , transparent ); --container-border-color: var( --color-900 , var( --color-neutral-700 ) ); --container-border-width: 0; --container-shadow: 0 0 0 1px var( --container-border-color ) inset , 0 -2px 0 #0000000d inset , 0px 1px 2px 0px var( --tw-shadow-color , #0000001a ); --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon[kind="elevated"] .cnc-icon_container::after { content: ""; background: var( --indicator-bg ); inset: calc( var( --indicator-inset ) ); border-radius: var( --indicator-border-radius ); border-color: color-mix( in srgb , var( --container-border-color ) 20% , transparent ); box-shadow: 0px 0px 0px 1px color-mix( in srgb , var( --container-border-color ) 80% , transparent ) inset , 0px -2px 3px 0px color-mix( in srgb , var( --container-border-color ) 50% , #00000021 ) inset , 1px 2px 3px 0px color-mix( in srgb , var( --container-border-color ) 40% , #00000021 ); border-width: 0px; border-style: solid; position: absolute; }
cnc-icon[kind="ring"] { --container-bg: transparent; --container-border-color: var( --color-gray-300 ); --container-border-width: 0; --container-shadow: 0px 0px 0px calc( var( --container-size ) / 30 ) color-mix( in srgb , var( --icon-color ) 10% , transparent ) inset; --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-icon[kind="ring"] { --container-bg: transparent; --container-border-color: var( --color-900 , var( --color-neutral-700 ) ); --container-border-width: 0; --icon-color: var( --color-600 , var( --color-neutral-500 ) ); }
cnc-icon[kind="ring"] .cnc-icon_container::after { content: ""; background: var( --indicator-bg ); inset: calc( var( --indicator-inset ) / 1.1 ); border-radius: var( --indicator-border-radius ); border-color: transparent; box-shadow: 0px 0px 0px calc( var( --container-size ) / 30 ) color-mix( in srgb , var( --icon-color ) 25% , transparent ) inset; border-width: 0; border-style: solid; position: absolute; }
cnc-icon[kind="stack"] { --container-bg: transparent; --container-border-color: var( --color-gray-300 ); --container-border-radius: 0; --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-icon[kind="stack"] { --container-bg: transparent; --container-border-color: transparent; --container-border-width: 0; --container-shadow: none; --icon-color: var( --color-400 , var( --color-neutral-500 ) ); }
cnc-icon[kind="stack"] .cnc-icon_container::after { content: ""; width: 100%; height: 100%; background-color: currentColor; position: absolute; overflow: visible; color: var( --icon-color ); --stack-mask: url( "data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20aria-hidden='true'%20viewBox='0%200%2090%2098'%20fill='none'%20style='overflow:visible'%3E%3Cdefs%3E%3Cfilter%20id='blur'%20x='-30%25'%20y='-100%25'%20width='160%25'%20height='300%25'%3E%3CfeGaussianBlur%20stdDeviation='4'/%3E%3C/filter%3E%3C/defs%3E%3Cellipse%20cx='36'%20cy='76'%20rx='30'%20ry='7'%20fill='%23000'%20fill-opacity='.085'%20filter='url(%23blur)'/%3E%3Cg%20opacity='.4'%3E%3Cpath%20d='M42.2538%202.046C41.4408%201.6325%2040.3965%201.6677%2039.2612%202.2424L7.9616%2018.1934C5.3895%2019.5039%203.301%2023.1064%203.301%2026.2322V64.3226C3.301%2066.0677%203.9458%2067.2943%204.962%2067.8199L1.8363%2066.229C0.8201%2065.7104%200.1753%2064.4771%200.1753%2062.732V24.6412C0.1753%2021.5085%202.2638%2017.913%204.8359%2016.6024L36.1355%200.6515C37.2778%200.0698%2038.322%200.0416%2039.128%200.4551L42.2538%202.046Z'%20stroke='%23000'%20stroke-opacity='.2'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M42.2545%202.0456C43.2707%202.5643%2043.9155%203.7979%2043.9155%205.543V43.6337C43.9155%2046.7665%2041.827%2050.3616%2039.2549%2051.6722L7.9554%2067.6235C6.813%2068.2052%205.7687%2068.2331%204.9628%2067.8196C3.9465%2067.301%203.3018%2066.0673%203.3018%2064.3222V26.2318C3.3018%2023.0991%205.3903%2019.5036%207.9624%2018.193L39.2619%202.2421C40.4043%201.6604%2041.4486%201.6321%2042.2545%202.0456Z'%20stroke='%23000'%20stroke-opacity='.2'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/g%3E%3Cg%20opacity='.6'%20transform='translate(13.65%206.04)'%3E%3Cpath%20d='M42.2538%202.046C41.4408%201.6325%2040.3965%201.6677%2039.2612%202.2424L7.9616%2018.1934C5.3895%2019.5039%203.301%2023.1064%203.301%2026.2322V64.3226C3.301%2066.0677%203.9458%2067.2943%204.962%2067.8199L1.8363%2066.229C0.8201%2065.7104%200.1753%2064.4771%200.1753%2062.732V24.6412C0.1753%2021.5085%202.2638%2017.913%204.8359%2016.6024L36.1355%200.6515C37.2778%200.0698%2038.322%200.0416%2039.128%200.4551L42.2538%202.046Z'%20stroke='%23000'%20stroke-opacity='.2'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M42.2545%202.0456C43.2707%202.5643%2043.9155%203.7979%2043.9155%205.543V43.6337C43.9155%2046.7665%2041.827%2050.3616%2039.2549%2051.6722L7.9554%2067.6235C6.813%2068.2052%205.7687%2068.2331%204.9628%2067.8196C3.9465%2067.301%203.3018%2066.0673%203.3018%2064.3222V26.2318C3.3018%2023.0991%205.3903%2019.5036%207.9624%2018.193L39.2619%202.2421C40.4043%201.6604%2041.4486%201.6321%2042.2545%202.0456Z'%20stroke='%23000'%20stroke-opacity='.2'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/g%3E%3Cg%20opacity='.8'%20transform='translate(27.32%2012.08)'%3E%3Cpath%20d='M42.2538%202.046C41.4408%201.6325%2040.3965%201.6677%2039.2612%202.2424L7.9616%2018.1934C5.3895%2019.5039%203.301%2023.1064%203.301%2026.2322V64.3226C3.301%2066.0677%203.9458%2067.2943%204.962%2067.8199L1.8363%2066.229C0.8201%2065.7104%200.1753%2064.4771%200.1753%2062.732V24.6412C0.1753%2021.5085%202.2638%2017.913%204.8359%2016.6024L36.1355%200.6515C37.2778%200.0698%2038.322%200.0416%2039.128%200.4551L42.2538%202.046Z'%20stroke='%23000'%20stroke-opacity='.3'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M42.2545%202.0456C43.2707%202.5643%2043.9155%203.7979%2043.9155%205.543V43.6337C43.9155%2046.7665%2041.827%2050.3616%2039.2549%2051.6722L7.9554%2067.6235C6.813%2068.2052%205.7687%2068.2331%204.9628%2067.8196C3.9465%2067.301%203.3018%2066.0673%203.3018%2064.3222V26.2318C3.3018%2023.0991%205.3903%2019.5036%207.9624%2018.193L39.2619%202.2421C40.4043%201.6604%2041.4486%201.6321%2042.2545%202.0456Z'%20stroke='%23000'%20stroke-opacity='.3'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E" ); -webkit-mask: var( --stack-mask ) center / contain no-repeat; mask: var( --stack-mask ) center / contain no-repeat; }
cnc-icon[kind="stack"] .cnc-icon_container svg { position: relative; --tw-skew-y: skewY( calc( 26deg * -1 ) ); --tw-translate-x: calc( calc( 1 / 2 * 100% ) * -1 ); --tw-translate-y: calc( calc( 1 / 2 * 100% ) * -1 ); left: 63%; top: 23%; z-index: 1; transform: translate( var( --tw-translate-x , 0 ) , var( --tw-translate-y , 0 ) ) rotate( var( --tw-rotate , 0 ) ) skewX( 0deg ) skewY( -27deg ) scaleX( var( --tw-scale-x , 0.6 ) ) scaleY( var( --tw-scale-y , 0.7 ) ); }
cnc-icon .cnc-icon_container { inline-size: var( --container-size ); block-size: var( --container-size ); padding-inline: var( --container-padding-inline ); padding-block: 0; border-radius: var( --container-border-radius ); background: var( --container-bg , transparent ); border-style: solid; border-width: 0; outline-color: var( --container-outline-color ); outline-width: 1px; line-height: 0; appearance: none; -webkit-appearance: none; color-scheme: light; cursor: inherit; font: inherit; box-shadow: var( --container-shadow ); pointer-events: none; }
cnc-icon:not([kind]) { inline-size: var( --container-size ); block-size: var( --container-size ); }
cnc-icon:not([kind]) .cnc-icon_container { inline-size: 100%; block-size: 100%; }
cnc-icon[animation] .cnc-icon_container { transition: background var( --container-transition-duration ) var( --container-transition-timing ) , border-color var( --container-transition-duration ) var( --container-transition-timing ) , color var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-icon .cnc-icon_container svg { max-width: 100%; max-height: 100%; width: auto; height: auto; fill: currentColor; overflow: visible; inline-size: var( --picture-size ); block-size: var( --picture-size ); color: var( --icon-color ); flex-shrink: 0; display: block; }
cnc-icon .cnc-icon_container .cnc-glyph { color: var( --icon-color ); }
cnc-icon.filled .cnc-icon_container svg * { fill: var( --icon-fill , currentColor ); }
@media (prefers-reduced-motion: reduce) {
cnc-icon[animation] :is(svg, .cnc-glyph) { --container-animation-duration: 1ms !important; --container-animation-iteration: 1 !important; --container-animation-timing: 1ms !important; }
cnc-icon[animation] :is(path, line, polyline, polygon, circle, rect) { animation: none; stroke-dashoffset: 0; }
}
cnc-icon.pulse :is(svg, .cnc-glyph), cnc-icon.hover\:pulse:hover :is(svg, .cnc-glyph), .group:hover cnc-icon.group-hover\:pulse :is(svg, .cnc-glyph), cnc-icon[animation="pulse"] .cnc-icon_container { animation: animate-pulse var( --container-animation-duration , 2s ) var( --container-animation-timing , cubic-bezier( 0.4 , 0 , 0.6 , 1 ) ) var( --container-animation-iteration , infinite ); }
cnc-icon.spin :is(svg, .cnc-glyph), cnc-icon.hover\:spin:hover :is(svg, .cnc-glyph), .group:hover cnc-icon.group-hover\:spin :is(svg, .cnc-glyph), cnc-icon[animation="spin"] :is(svg, .cnc-glyph) { animation: animate-spin var( --container-animation-duration , 2s ) var( --container-animation-timing , linear ) var( --container-animation-iteration , infinite ); }
cnc-icon.bounce :is(svg, .cnc-glyph), cnc-icon.hover\:bounce:hover :is(svg, .cnc-glyph), .group:hover cnc-icon.group-hover\:bounce :is(svg, .cnc-glyph), cnc-icon[animation="bounce"] :is(svg, .cnc-glyph) { animation: animate-bounce var( --container-animation-duration , 2s ) var( --container-animation-timing , cubic-bezier( 0.4 , 0 , 0.6 , 1 ) ) var( --container-animation-iteration , infinite ); }
cnc-icon.shake :is(svg, .cnc-glyph), cnc-icon.hover\:shake:hover :is(svg, .cnc-glyph), .group:hover cnc-icon.group-hover\:shake :is(svg, .cnc-glyph), cnc-icon[animation="shake"] :is(svg, .cnc-glyph) { animation: animate-shake var( --container-animation-duration , 600ms ) var( --container-animation-timing , ease-in-out ) var( --container-animation-iteration , infinite ); }
cnc-icon.pop :is(svg, .cnc-glyph), cnc-icon.hover\:pop:hover :is(svg, .cnc-glyph), .group:hover cnc-icon.group-hover\:pop :is(svg, .cnc-glyph), cnc-icon[animation="pop"] :is(svg, .cnc-glyph) { animation: animate-pop var( --container-animation-duration , 600ms ) var( --container-animation-timing , ease-in-out ) var( --container-animation-iteration , infinite ); }
cnc-icon.draw svg, cnc-icon.hover\:draw:hover svg, .group:hover cnc-icon.group-hover\:draw svg, cnc-icon[animation="draw"] :is(path, line, polyline, polygon, circle, rect) { stroke-dasharray: 1; stroke-dashoffset: 1; animation: animate-draw var( --container-animation-duration , 2s ) var( --container-animation-timing , ease-out ) 5s var( --container-animation-iteration , forwards ); }
cnc-icon[animation="draw"] path:nth-of-type(1) { animation-delay: 0ms; }
cnc-icon[animation="draw"] path:nth-of-type(2) { animation-delay: 200ms; }
cnc-icon[animation="draw"] path:nth-of-type(3) { animation-delay: 400ms; }
cnc-icon[animation="draw-loop"] path { stroke-dasharray: 1; stroke-dashoffset: 1; animation: animate-draw-loop 2s ease-in-out infinite; }
}
@layer widgets {
cnc-icon-tile[shape="rounded"], cnc-icon-tile:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded ); --indicator-border-radius: var( --indicator-border-radius-rounded ); }
cnc-icon-tile[shape="pill"] { --shape-border-radius: var( --shape-border-radius-pill , var( --radius-full , 9999px ) ); --indicator-border-radius: var( --shape-border-radius ); }
cnc-icon-tile[shape="circle"] { --shape-border-radius: 50%; --indicator-border-radius: 50%; }
cnc-icon-tile[shape="square"], cnc-icon-tile[shape="rectangle"] { --shape-border-radius: 0; --indicator-border-radius: 0; }
cnc-icon-tile[size="xxs"] { --container-size: 1.25rem; --container-padding-inline: 0.35rem; --shape-border-radius-rounded: 0.25rem; --indicator-inset: 0.1875rem; --indicator-border-radius-rounded: 0.1875rem; }
cnc-icon-tile[size="xs"] { --container-size: 1.5rem; --container-padding-inline: 0.4rem; --shape-border-radius-rounded: 0.375rem; --indicator-inset: 0.25rem; --indicator-border-radius-rounded: 0.25rem; }
cnc-icon-tile[size="sm"] { --container-size: 2rem; --container-padding-inline: 0.5rem; --shape-border-radius-rounded: 0.5rem; --indicator-inset: 0.3125rem; --indicator-border-radius-rounded: 0.3125rem; }
cnc-icon-tile[size="md"], cnc-icon-tile:not([size]) { --container-size: 2.5rem; --container-padding-inline: 0.6rem; --shape-border-radius-rounded: 0.625rem; --indicator-inset: 0.375rem; --indicator-border-radius-rounded: 0.375rem; }
cnc-icon-tile[size="lg"] { --container-size: 3rem; --container-padding-inline: 0.8rem; --shape-border-radius-rounded: 0.75rem; --indicator-inset: 0.5rem; --indicator-border-radius-rounded: 0.4375rem; }
cnc-icon-tile[size="xl"] { --container-size: 3.5rem; --container-padding-inline: 0.9rem; --shape-border-radius-rounded: 0.8125rem; --indicator-inset: 0.5625rem; --indicator-border-radius-rounded: 0.5rem; }
cnc-icon-tile[size="2xl"] { --container-size: 4rem; --container-padding-inline: 1rem; --shape-border-radius-rounded: 0.8125rem; --indicator-inset: 0.625rem; --indicator-border-radius-rounded: 0.5625rem; }
cnc-icon-tile { --container-size: 2.5rem; --container-padding-inline: 0.625rem; --container-transition-duration: 0.35s; --container-transition-timing: linear; --icon-size: 100%; --shape-border-radius-rounded: 0.625rem; --shape-border-radius-pill: 0.75rem; --shape-border-radius: var( --shape-border-radius-rounded ); --container-border-radius: var( --shape-border-radius , 0 ); --indicator-inset: 0.375rem; --container-animation-duration: 2s; --container-animation-timing: cubic-bezier( 0.4 , 0 , 0.6 , 1 ); }
cnc-icon-tile:not([kind]) { --container-bg: color-mix( in srgb , var( --color-500 , var( --color-neutral-500 ) ) 10% , transparent ); --container-border-color: transparent; --container-border-width: 0; --container-outline-color: var( --color-800 , var( --color-neutral-800 ) ); --container-shadow: none; --icon-color: var( --color-700 , var( --color-neutral-700 ) ); --indicator-bg: var( --icon-color ); }
.dark cnc-icon-tile { --container-bg: color-mix( in srgb , var( --color-500 , var( --color-neutral-500 ) ) 20% , transparent ); --container-border-color: var( --color-600 , var( --color-neutral-600 ) ); --container-outline-color: var( --color-700 , var( --color-neutral-700 ) ); --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon-tile[kind="solid"] { --container-bg: transparent; --container-border-width: 0; --container-border-color: var( --color-300 , var( --color-neutral-300 ) ); --container-shadow: inset 0 1px 0 color-mix( in srgb , var( --container-border-color ) 30% , transparent ); --indicator-bg: var( --color-500 , var( --color-neutral-500 ) ); --icon-color: white; }
.dark cnc-icon-tile[kind="solid"] { --container-bg: transparent; --container-border-color: var( --color-900 , var( --color-neutral-800 ) ); --container-border-width: 0; --indicator-bg: var( --color-700 , var( --color-neutral-700 ) ); --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon-tile[kind="solid"] .cnc-icon-tile_container::before { content: ""; z-index: -1; inset: 0; border-radius: inherit; border-color: transparent; background: color-mix( in srgb , var( --color-500 , var( --color-neutral-500 ) ) 10% , transparent ); mask-image: linear-gradient( to bottom , black 0% , transparent 100% ); -webkit-mask-image: linear-gradient( to bottom , black 0% , transparent 100% ); position: absolute; }
cnc-icon-tile[kind="solid"] .cnc-icon-tile_container::after { content: ""; z-index: -1; background: var( --indicator-bg ); inset: var( --indicator-inset ); border-radius: var( --indicator-border-radius ); border-color: var( --color-500 , var( --color-neutral-500 ) ); border-width: 1px; position: absolute; }
cnc-icon-tile[kind="filled"] { --container-bg: var( --color-600 , white ); --container-border-color: var( --color-700 , var( --color-gray-300 ) ); --container-border-width: 0; --container-shadow: 0 -2px 0 #00000015 inset , inset 0 0 0 1px var( --container-border-color ); --icon-color: var( --color-50 , var( --color-neutral-800 ) ); }
.dark cnc-icon-tile[kind="filled"] { --container-bg: var( --color-700 , var( --color-neutral-700 ) ); --container-border-color: var( --color-800 , var( --color-neutral-800 ) ); --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon-tile[kind="outline"] { --container-bg: white; --container-border-color: var( --color-gray-300 ); --container-border-width: 0; --container-shadow: 0 0 0 1px #0000002e inset , 0 -2px 0 #0000000d inset; --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-icon-tile[kind="outline"] { --container-bg: color-mix( in srgb , var( --color-800 , var( --color-neutral-800 ) ) 5% , transparent ); --container-border-color: var( --color-900 , var( --color-neutral-800 ) ); --container-border-width: 0; --container-shadow: 0 0 0 1px var( --container-border-color ) inset , 0 -2px 0 #0000000d inset; --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon-tile[kind="elevated"] { --container-bg: white; --container-border-color: var( --color-gray-300 ); --container-border-width: 0; --container-shadow: 0 0 0 1px #0000002e inset , 0 -2px 0 #0000000d inset; --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-icon-tile[kind="elevated"] { --container-bg: color-mix( in srgb , var( --color-800 , var( --color-neutral-700 ) ) 8% , transparent ); --container-border-color: var( --color-900 , var( --color-neutral-700 ) ); --container-border-width: 0; --container-shadow: 0 0 0 1px var( --container-border-color ) inset , 0 -2px 0 #0000000d inset , 0px 1px 2px 0px var( --tw-shadow-color , #0000001a ); --icon-color: var( --color-50 , var( --color-neutral-50 ) ); }
cnc-icon-tile[kind="elevated"] .cnc-icon-tile_container::after { content: ""; background: var( --indicator-bg ); inset: calc( var( --indicator-inset ) ); border-radius: var( --indicator-border-radius ); border-color: color-mix( in srgb , var( --container-border-color ) 20% , transparent ); box-shadow: 0px 0px 0px 1px color-mix( in srgb , var( --container-border-color ) 80% , transparent ) inset , 0px -2px 3px 0px color-mix( in srgb , var( --container-border-color ) 50% , #00000021 ) inset , 1px 2px 3px 0px color-mix( in srgb , var( --container-border-color ) 40% , #00000021 ); border-width: 0px; border-style: solid; position: absolute; }
cnc-icon-tile[kind="ring"] { --container-bg: transparent; --container-border-color: var( --color-gray-300 ); --container-border-width: 0; --container-shadow: 0px 0px 0px calc( var( --container-size ) / 30 ) color-mix( in srgb , var( --icon-color ) 10% , transparent ) inset; --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-icon-tile[kind="ring"] { --container-bg: transparent; --container-border-color: var( --color-900 , var( --color-neutral-700 ) ); --container-border-width: 0; --icon-color: var( --color-600 , var( --color-neutral-500 ) ); }
cnc-icon-tile[kind="ring"] .cnc-icon-tile_container::after { content: ""; background: var( --indicator-bg ); inset: calc( var( --indicator-inset ) / 1.1 ); border-radius: var( --indicator-border-radius ); border-color: transparent; box-shadow: 0px 0px 0px calc( var( --container-size ) / 30 ) color-mix( in srgb , var( --icon-color ) 25% , transparent ) inset; border-width: 0; border-style: solid; position: absolute; }
cnc-icon-tile[kind="stack"] { --container-bg: transparent; --container-border-color: var( --color-gray-300 ); --container-border-radius: 0; --icon-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-icon-tile[kind="stack"] { --container-bg: transparent; --container-border-color: transparent; --container-border-width: 0; --container-shadow: none; --icon-color: var( --color-400 , var( --color-neutral-500 ) ); }
cnc-icon-tile[kind="stack"] .cnc-icon-tile_container::after { content: ""; width: 100%; height: 100%; background-color: currentColor; position: absolute; overflow: visible; color: var( --icon-color ); --stack-mask: url( "data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20aria-hidden='true'%20viewBox='0%200%2090%2098'%20fill='none'%20style='overflow:visible'%3E%3Cdefs%3E%3Cfilter%20id='blur'%20x='-30%25'%20y='-100%25'%20width='160%25'%20height='300%25'%3E%3CfeGaussianBlur%20stdDeviation='4'/%3E%3C/filter%3E%3C/defs%3E%3Cellipse%20cx='36'%20cy='76'%20rx='30'%20ry='7'%20fill='%23000'%20fill-opacity='.085'%20filter='url(%23blur)'/%3E%3Cg%20opacity='.4'%3E%3Cpath%20d='M42.2538%202.046C41.4408%201.6325%2040.3965%201.6677%2039.2612%202.2424L7.9616%2018.1934C5.3895%2019.5039%203.301%2023.1064%203.301%2026.2322V64.3226C3.301%2066.0677%203.9458%2067.2943%204.962%2067.8199L1.8363%2066.229C0.8201%2065.7104%200.1753%2064.4771%200.1753%2062.732V24.6412C0.1753%2021.5085%202.2638%2017.913%204.8359%2016.6024L36.1355%200.6515C37.2778%200.0698%2038.322%200.0416%2039.128%200.4551L42.2538%202.046Z'%20stroke='%23000'%20stroke-opacity='.2'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M42.2545%202.0456C43.2707%202.5643%2043.9155%203.7979%2043.9155%205.543V43.6337C43.9155%2046.7665%2041.827%2050.3616%2039.2549%2051.6722L7.9554%2067.6235C6.813%2068.2052%205.7687%2068.2331%204.9628%2067.8196C3.9465%2067.301%203.3018%2066.0673%203.3018%2064.3222V26.2318C3.3018%2023.0991%205.3903%2019.5036%207.9624%2018.193L39.2619%202.2421C40.4043%201.6604%2041.4486%201.6321%2042.2545%202.0456Z'%20stroke='%23000'%20stroke-opacity='.2'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/g%3E%3Cg%20opacity='.6'%20transform='translate(13.65%206.04)'%3E%3Cpath%20d='M42.2538%202.046C41.4408%201.6325%2040.3965%201.6677%2039.2612%202.2424L7.9616%2018.1934C5.3895%2019.5039%203.301%2023.1064%203.301%2026.2322V64.3226C3.301%2066.0677%203.9458%2067.2943%204.962%2067.8199L1.8363%2066.229C0.8201%2065.7104%200.1753%2064.4771%200.1753%2062.732V24.6412C0.1753%2021.5085%202.2638%2017.913%204.8359%2016.6024L36.1355%200.6515C37.2778%200.0698%2038.322%200.0416%2039.128%200.4551L42.2538%202.046Z'%20stroke='%23000'%20stroke-opacity='.2'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M42.2545%202.0456C43.2707%202.5643%2043.9155%203.7979%2043.9155%205.543V43.6337C43.9155%2046.7665%2041.827%2050.3616%2039.2549%2051.6722L7.9554%2067.6235C6.813%2068.2052%205.7687%2068.2331%204.9628%2067.8196C3.9465%2067.301%203.3018%2066.0673%203.3018%2064.3222V26.2318C3.3018%2023.0991%205.3903%2019.5036%207.9624%2018.193L39.2619%202.2421C40.4043%201.6604%2041.4486%201.6321%2042.2545%202.0456Z'%20stroke='%23000'%20stroke-opacity='.2'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/g%3E%3Cg%20opacity='.8'%20transform='translate(27.32%2012.08)'%3E%3Cpath%20d='M42.2538%202.046C41.4408%201.6325%2040.3965%201.6677%2039.2612%202.2424L7.9616%2018.1934C5.3895%2019.5039%203.301%2023.1064%203.301%2026.2322V64.3226C3.301%2066.0677%203.9458%2067.2943%204.962%2067.8199L1.8363%2066.229C0.8201%2065.7104%200.1753%2064.4771%200.1753%2062.732V24.6412C0.1753%2021.5085%202.2638%2017.913%204.8359%2016.6024L36.1355%200.6515C37.2778%200.0698%2038.322%200.0416%2039.128%200.4551L42.2538%202.046Z'%20stroke='%23000'%20stroke-opacity='.3'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M42.2545%202.0456C43.2707%202.5643%2043.9155%203.7979%2043.9155%205.543V43.6337C43.9155%2046.7665%2041.827%2050.3616%2039.2549%2051.6722L7.9554%2067.6235C6.813%2068.2052%205.7687%2068.2331%204.9628%2067.8196C3.9465%2067.301%203.3018%2066.0673%203.3018%2064.3222V26.2318C3.3018%2023.0991%205.3903%2019.5036%207.9624%2018.193L39.2619%202.2421C40.4043%201.6604%2041.4486%201.6321%2042.2545%202.0456Z'%20stroke='%23000'%20stroke-opacity='.3'%20stroke-width='.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E" ); -webkit-mask: var( --stack-mask ) center / contain no-repeat; mask: var( --stack-mask ) center / contain no-repeat; }
cnc-icon-tile[kind="stack"] .cnc-icon-tile_icon { position: relative; --tw-skew-y: skewY( calc( 26deg * -1 ) ); --tw-translate-x: calc( calc( 1 / 2 * 100% ) * -1 ); --tw-translate-y: calc( calc( 1 / 2 * 100% ) * -1 ); left: 63%; top: 48%; z-index: 1; transform: translate( var( --tw-translate-x , 0 ) , var( --tw-translate-y , 0 ) ) rotate( var( --tw-rotate , 0 ) ) skewX( 0deg ) skewY( -27deg ) scaleX( var( --tw-scale-x , 0.6 ) ) scaleY( var( --tw-scale-y , 0.7 ) ); }
cnc-icon-tile .cnc-icon-tile_container { inline-size: var( --container-size ); block-size: var( --container-size ); padding-inline: var( --container-padding-inline ); padding-block: 0; border-radius: var( --container-border-radius ); background: var( --container-bg , transparent ); border-style: solid; border-width: 0; outline-color: var( --container-outline-color ); outline-width: 1px; line-height: 0; appearance: none; -webkit-appearance: none; color-scheme: light; cursor: inherit; font: inherit; box-shadow: var( --container-shadow ); pointer-events: none; transition: background var( --container-transition-duration ) var( --container-transition-timing ) , border-color var( --container-transition-duration ) var( --container-transition-timing ) , color var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-icon-tile .cnc-icon-tile_icon { inline-size: var( --icon-size ); block-size: var( --icon-size ); color: var( --icon-color ); }
cnc-icon-tile .cnc-icon-tile_icon svg { display: block; inline-size: 100%; block-size: 100%; }
cnc-icon-tile[animation="pulse"] .cnc-icon-tile_container { animation: cnc-icon-tile-pulse var( --container-animation-duration ) var( --container-animation-timing ) infinite; }
@keyframes cnc-icon-tile-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}
@media (prefers-reduced-motion: reduce) {
cnc-icon-tile *, cnc-icon-tile *::before, cnc-icon-tile *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-image { --image-zoom-scale: 1.1; --image-zoom-duration: 0.5s; --image-parallax-height: 120%; --image-parallax-duration: 0.1s; }
cnc-image { display: grid; position: relative; width: 100%; min-height: 0; overflow: hidden; }
cnc-image img { display: flex; width: 100%; height: 100%; object-fit: cover; object-position: center; grid-area: 1 / 1; margin-top: 0 !important; margin-bottom: 0 !important; }
cnc-image.zoom img { transition: transform var( --image-zoom-duration ) ease; }
cnc-image.zoom img:hover { transform: scale( var( --image-zoom-scale ) ); }
cnc-image.parallax { top: 0; left: 0; right: 0; bottom: 0; overflow: hidden; }
cnc-image.parallax img { width: 100%; height: var( --image-parallax-height ); transform: translateY( 0 ); transition: transform var( --image-parallax-duration ) linear; }
}
@media (prefers-reduced-motion: reduce) {
cnc-image *, cnc-image *::before, cnc-image *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
@layer widgets {
cnc-input[shape="rounded"] { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-input[shape="pill"] { --shape-border-radius: var( --radius-full , 9999px ); }
cnc-input[shape="square"], cnc-input[shape="rectangle"] { --shape-border-radius: 0; }
cnc-input[size="xxs"] { --container-font-size: 0.75rem; --container-line-height: 1rem; --container-padding-y: 0.375rem; --container-padding-x: 0.375rem; --container-gap: 0.25rem; --icon-size: 0.75rem; }
cnc-input[size="xs"] { --container-font-size: 0.875rem; --container-line-height: 1.25rem; --container-padding-y: 0.375rem; --container-padding-x: 0.5rem; --container-gap: 0.25rem; --icon-size: 0.875rem; }
cnc-input[size="sm"] { --container-font-size: 0.875rem; --container-line-height: 1.25rem; --container-padding-y: 0.5rem; --container-padding-x: 0.625rem; --container-gap: 0.375rem; --icon-size: 1rem; }
cnc-input[size="md"], cnc-input:not([size]) { --container-font-size: 1rem; --container-line-height: 1.5rem; --container-padding-y: 0.5rem; --container-padding-x: 0.75rem; --container-gap: 0.5rem; --icon-size: 1rem; }
cnc-input[size="lg"] { --container-font-size: 1rem; --container-line-height: 1.5rem; --container-padding-y: 0.625rem; --container-padding-x: 0.875rem; --container-gap: 0.5rem; --icon-size: 1.25rem; }
cnc-input[size="xl"] { --container-font-size: 1.125rem; --container-line-height: 1.75rem; --container-padding-y: 0.625rem; --container-padding-x: 1rem; --container-gap: 0.625rem; --icon-size: 1.25rem; }
cnc-input[size="2xl"] { --container-font-size: 1.25rem; --container-line-height: 2rem; --container-padding-y: 0.75rem; --container-padding-x: 1.25rem; --container-gap: 0.75rem; --icon-size: 1.5rem; }
cnc-input { --container-bg: var( --color-50 , white ); --container-bg-invalid: var( --color-danger-50 , var( --container-bg ) ); --container-border-color: var( --color-200 , var( --color-neutral-300 ) ); --container-border-color-focus: var( --color-500 , var( --color-primary-500 ) ); --container-border-color-invalid: var( --color-500 , var( --color-danger-500 ) ); --container-shadow: inset 0 0 0 1px var( --container-border-color ); --container-shadow-focus: inset 0 0 0 2px var( --container-border-color-focus ); --container-shadow-invalid: inset 0 0 0 1px color-mix( in srgb , var( --container-border-color-invalid ) 50% , transparent ); --container-shadow-focus-invalid: inset 0 0 0 2px var( --container-border-color-invalid ); --container-border-radius: var( --shape-border-radius , var( --radius-lg , 0.5rem ) ); --container-padding-y: 0.5rem; --container-padding-x: 0.875rem; --container-gap: 0.75rem; --container-font-size: 1rem; --container-font-style-disabled: italic; --container-opacity-disabled: 0.6; --container-transition-duration: 150ms; --container-transition-timing: ease; --input-text-color: var( --color-700 , var( --color-neutral-800 ) ); --input-placeholder-color: var( --color-700 , var( --color-neutral-400 ) ); --input-font-family: inherit; --icon-size: 1rem; --icon-color: var( --color-500 , var( --color-neutral-500 ) ); --icon-opacity: 0.5; --icon-opacity-hover: 1; --clear-size: 1rem; --clear-color: var( --color-600 , var( --color-neutral-600 ) ); --clear-opacity: 0; --clear-opacity-container-hover: 0.5; --clear-opacity-hover: 1; --indicator-size: 1rem; --indicator-color: var( --container-border-color-invalid ); --prefix-color: var( --icon-color ); --suffix-color: var( --icon-color ); --mask-placeholder-color: var( --input-placeholder-color ); --message-margin-top: 0.25rem; --message-font-size: 0.875rem; --message-color: var( --color-danger-500 ); }
.dark cnc-input { --container-bg: var( --color-neutral-900 , #111827 ); --input-text-color: var( --color-neutral-200 , #e5e7eb ); --input-placeholder-color: var( --color-neutral-400 , #9ca3af ); --container-border-color: var( --color-neutral-600 , #4b5563 ); --container-border-color-focus: var( --color-200 , var( --color-primary-500 ) ); --clear-color: var( --color-400 , var( --color-neutral-400 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); --message-color: var( --color-danger-600 ); }
cnc-input .cnc-input_container { gap: var( --container-gap ); padding: var( --container-padding-y ) var( --container-padding-x ); border-radius: var( --container-border-radius ); background: var( --container-bg ); color: var( --input-text-color ); box-shadow: var( --container-shadow ); font-size: var( --container-font-size ); line-height: var( --container-line-height ); transition: box-shadow var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-input .cnc-input_container:not(.no-background):not([data-readonly="true"]):not([data-invalid="true"]):focus-within { box-shadow: var( --container-shadow-focus ); }
cnc-input .cnc-input_container[data-invalid="true"] { background: var( --container-bg-invalid ); box-shadow: var( --container-shadow-invalid ); }
cnc-input .cnc-input_container:not(.no-background):not([data-readonly="true"])[data-invalid="true"]:focus-within { box-shadow: var( --container-shadow-focus-invalid ); }
cnc-input .cnc-input_container[data-disabled="true"] { cursor: not-allowed; font-style: var( --container-font-style-disabled ); opacity: var( --container-opacity-disabled ); }
cnc-input .no-background { background: transparent; box-shadow: none; padding: 0; gap: 0; }
cnc-input .cnc-input_container[data-readonly="true"], cnc-input .cnc-input_container[data-readonly="true"] .cnc-input_input { cursor: not-allowed; font-style: italic; caret-color: transparent; }
cnc-input .cnc-input_content { min-inline-size: 0; }
cnc-input .cnc-input_input { color: var( --input-text-color ); font-family: var( --input-font-family ); font-size: inherit; text-overflow: ellipsis; }
cnc-input .cnc-input_input::placeholder { color: var( --input-placeholder-color ); opacity: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
cnc-input .cnc-input_mask { color: var( --input-text-color ); }
cnc-input .cnc-input_mask-placeholder { color: var( --mask-placeholder-color ); }
cnc-input .cnc-input_prefix, cnc-input .cnc-input_suffix { color: var( --prefix-color ); opacity: var( --icon-opacity ); }
cnc-input .cnc-input_suffix { color: var( --suffix-color ); }
cnc-input .cnc-input_phone-country { min-width: 4.5rem; align-self: stretch; justify-content: space-between; padding-right: 0.5rem; border-right: 1px solid var( --container-border-color ); color: var( --input-text-color ); font-family: var( --input-font-family ); font-size: inherit; font-weight: normal; line-height: inherit; }
cnc-input .cnc-input_phone-country .cnc-select_trigger { min-block-size: 0; padding: 0 0.25rem 0 0; background: transparent; box-shadow: none; color: inherit; font-size: inherit; line-height: inherit; }
cnc-input .cnc-input_icon, cnc-input .cnc-input_toggle { inline-size: var( --icon-size ); block-size: var( --icon-size ); color: var( --icon-color ); opacity: var( --icon-opacity ); transition: opacity var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-input .cnc-input_icon:hover, cnc-input .cnc-input_toggle:hover { opacity: var( --icon-opacity-hover ); }
cnc-input .cnc-input_clear { inline-size: var( --clear-size ); block-size: var( --clear-size ); color: var( --clear-color ); opacity: var( --clear-opacity ); transition: opacity var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-input .cnc-input_container:hover .cnc-input_clear { opacity: var( --clear-opacity-container-hover ); }
cnc-input .cnc-input_container .cnc-input_clear:hover { opacity: var( --clear-opacity-hover ); }
cnc-input .cnc-input_indicator { inline-size: var( --indicator-size ); block-size: var( --indicator-size ); color: var( --indicator-color ); }
cnc-input .cnc-input_message { margin-block-start: var( --message-margin-top ); color: var( --message-color ); font-size: var( --message-font-size ); }
cnc-input .cnc-input_input:-webkit-autofill, cnc-input .cnc-input_input:-webkit-autofill:hover, cnc-input .cnc-input_input:-webkit-autofill:focus, cnc-input .cnc-input_input:-webkit-autofill:active { -webkit-text-fill-color: var( --input-text-color ); caret-color: var( --input-text-color ); -webkit-box-shadow: 0 0 0 1000px var( --container-bg ) inset; box-shadow: 0 0 0 1000px var( --container-bg ) inset; }
cnc-input .cnc-input_select { position: absolute; right: 0px; top: calc( -1 * calc( var( --container-padding-y ) * 2 ) ); display: block; box-sizing: border-box; min-width: 50px; text-align: right; padding-block: 0.5rem; padding-top: 0.125rem; padding-left: 0.5rem; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; color: inherit; appearance: none; border: 0; padding-inline-end: 2.25rem; background-image: var( --icon-chevron-svg ); background-repeat: no-repeat; background-size: 1rem 1rem; background-position: right 0.75rem center; background-color: transparent; outline: none; cursor: pointer; transition: opacity 100ms linear; }
cnc-input .cnc-input_select:disabled { cursor: not-allowed; opacity: 0.5; }
cnc-input .cnc-input_select option { display: flex; align-items: center; text-align: left; min-block-size: 2.5rem; padding-block: 0.5rem; padding-inline: 0.75rem; border: 0; border-radius: 0.375rem; background-color: var( --select-option-background , #fff ); color: var( --select-option-color , #344054 ); font: inherit; cursor: pointer; }
cnc-input .cnc-input_select option + option { border-block-start: 0.0625rem solid var( --select-option-divider , #eaecf0 ); }
cnc-input .cnc-input_select option:hover, cnc-input .cnc-input_select option:focus { background-color: var( --select-option-hover-background , #f9fafb ); }
cnc-input .cnc-input_select option:checked { background-color: var( --container-bg , #f4f3ff ); color: var( --container-border-color-focus , var( --color-primary-500 ) ); font-weight: 600; }
cnc-input .cnc-input_select option::checkmark { display: none; }
cnc-input .cnc-input_popup[popover] { color: inherit; overflow: visible; }
cnc-input .cnc-input_stepper { display: flex; flex-direction: column; flex-shrink: 0; align-self: stretch; margin-block: calc( -1 * var( --container-padding-y ) ); margin-inline-end: calc( -1 * var( --container-padding-x ) ); border-inline-start: 1px solid var( --container-border-color ); border-start-end-radius: var( --container-border-radius ); border-end-end-radius: var( --container-border-radius ); overflow: hidden; }
cnc-input .cnc-input_step { flex: 1 1 0; display: flex; align-items: center; justify-content: center; padding-inline: 0.625rem; font-size: 0.875rem; line-height: 1; color: var( --input-text-color ); background: transparent; border: 0; cursor: pointer; transition: background-color var( --container-transition-duration ) var( --container-transition-timing ); }
cnc-input .cnc-input_step + .cnc-input_step { border-block-start: 1px solid var( --container-border-color ); }
cnc-input .cnc-input_step:hover:not(:disabled) { background: color-mix( in srgb , var( --container-border-color ) 40% , transparent ); }
cnc-input .cnc-input_step:disabled { opacity: 0.35; cursor: not-allowed; }
cnc-input .cnc-input_clear { appearance: none; border: 0; background: none; font: inherit; color: inherit; }
cnc-input .cnc-input_clear:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
cnc-input .cnc-input_toggle { appearance: none; border: 0; background: none; font: inherit; color: inherit; }
cnc-input .cnc-input_toggle:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
cnc-input .cnc-input_clear, cnc-input .cnc-input_toggle { padding: 0; }
@media (prefers-reduced-motion: reduce) {
cnc-input *, cnc-input *::before, cnc-input *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-layout { --tab-h-border-radius: var( --radius-DEFAULT , 0.25rem ) var( --radius-DEFAULT , 0.25rem ) 0 0; --tab-v-border-radius: var( --radius-DEFAULT , 0.25rem ); --pin-border-radius: var( --radius-DEFAULT , 0.25rem ); --close-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-layout { --bar-padding: 0 0.25rem; --bar-padding-vertical: 0.25rem 0; --tab-h-padding: 0.375rem 0.75rem; --tab-h-gap: 0.375rem; --tab-h-font-size: 0.875rem; --tab-v-size: 2.5rem; --tab-v-font-size: 0.875rem; --pin-size: 1.25rem; --pin-padding: 0.125rem; --close-size: 1.25rem; --close-padding: 0.125rem; --gutter-size: 2px; --transition-duration: 0.15s; }
cnc-layout { --empty-text-color: var( --color-neutral-400 ); --bar-bg: var( --color-neutral-100 ); --bar-border-color: var( --color-neutral-200 ); --tab-h-bg-hover: var( --color-neutral-200 ); --tab-h-bg-active: white; --tab-h-border-color-active: var( --color-primary-500 ); --tab-v-bg-hover: var( --color-neutral-200 ); --tab-v-bg-active: white; --tab-v-shadow-active: 0 1px 3px rgb( 0 0 0 / 10% ); --pin-bg-hover: var( --color-neutral-100 ); --pin-color-pinned: var( --color-primary-500 ); --close-bg-hover: var( --color-neutral-100 ); --panels-bg: var( --color-neutral-100 ); --panel-empty-text-color: var( --color-neutral-400 ); --gutter-bg: var( --color-neutral-200 ); --gutter-bg-active: var( --color-primary-400 ); }
.dark cnc-layout { --empty-text-color: var( --color-neutral-500 ); --bar-bg: var( --color-neutral-900 ); --bar-border-color: var( --color-neutral-700 ); --tab-h-bg-hover: var( --color-neutral-700 ); --tab-h-bg-active: var( --color-neutral-900 ); --tab-v-bg-hover: var( --color-neutral-700 ); --tab-v-bg-active: var( --color-neutral-800 ); --pin-bg-hover: var( --color-neutral-700 ); --close-bg-hover: var( --color-neutral-700 ); --panels-bg: var( --color-neutral-900 ); --panel-empty-text-color: var( --color-neutral-500 ); --gutter-bg: var( --color-neutral-700 ); }
cnc-layout { display: flex; position: relative; width: 100%; height: 100%; overflow: hidden; }
cnc-layout .cnc-layout_empty { color: var( --empty-text-color ); }
cnc-layout .cnc-layout_node { min-width: 0; min-height: 0; }
cnc-layout .cnc-layout_tabs { min-width: 0; min-height: 0; }
cnc-layout .cnc-layout_bar { background: var( --bar-bg ); border-color: var( --bar-border-color ); scrollbar-width: none; }
cnc-layout .cnc-layout_bar-horizontal { display: flex; flex-direction: row; align-items: center; overflow-x: auto; padding: var( --bar-padding ); }
cnc-layout .cnc-layout_bar-vertical { display: flex; flex-direction: column; align-items: center; overflow-y: auto; padding: var( --bar-padding-vertical ); }
cnc-layout .cnc-layout_bar-top { border-bottom: 1px solid var( --bar-border-color ); }
cnc-layout .cnc-layout_bar-bottom { border-top: 1px solid var( --bar-border-color ); }
cnc-layout .cnc-layout_bar-left { border-right: 1px solid var( --bar-border-color ); }
cnc-layout .cnc-layout_bar-right { border-left: 1px solid var( --bar-border-color ); }
cnc-layout .cnc-layout_tab { cursor: pointer; }
cnc-layout .cnc-layout_tab-h { gap: var( --tab-h-gap ); padding: var( --tab-h-padding ); border-bottom: 2px solid transparent; border-radius: var( --tab-h-border-radius ); font-size: var( --tab-h-font-size ); transition: background var( --transition-duration ) , border-color var( --transition-duration ); }
cnc-layout .cnc-layout_tab-v { width: var( --tab-v-size ); height: var( --tab-v-size ); border-radius: var( --tab-v-border-radius ); font-size: var( --tab-v-font-size ); transition: background var( --transition-duration ); }
cnc-layout .cnc-layout_pin { width: var( --pin-size ); height: var( --pin-size ); padding: var( --pin-padding ); border-radius: var( --pin-border-radius ); }
cnc-layout .cnc-layout_close { width: var( --close-size ); height: var( --close-size ); padding: var( --close-padding ); border-radius: var( --close-border-radius ); }
cnc-layout .cnc-layout_panels { min-width: 0; min-height: 0; background: var( --panels-bg ); }
cnc-layout .cnc-layout_panel-empty { color: var( --panel-empty-text-color ); }
cnc-layout .cnc-layout_gutter { background: var( --gutter-bg ); transition: background var( --transition-duration ); }
cnc-layout .cnc-layout_gutter.gutter-v { top: 0; right: 0; width: var( --gutter-size ); height: 100%; cursor: col-resize; }
cnc-layout .cnc-layout_gutter.gutter-h { bottom: 0; left: 0; width: 100%; height: var( --gutter-size ); cursor: row-resize; }
cnc-layout .cnc-layout_tab-h:hover { background: var( --tab-h-bg-hover ); }
cnc-layout .cnc-layout_tab-h.active { background: var( --tab-h-bg-active ); border-bottom-color: var( --tab-h-border-color-active ); }
cnc-layout .cnc-layout_tab-v:hover { background: var( --tab-v-bg-hover ); }
cnc-layout .cnc-layout_tab-v.active { background: var( --tab-v-bg-active ); box-shadow: var( --tab-v-shadow-active ); }
cnc-layout .cnc-layout_pin:hover { background: var( --pin-bg-hover ); }
cnc-layout .cnc-layout_pin.pinned { color: var( --pin-color-pinned ); }
cnc-layout .cnc-layout_close:hover { background: var( --close-bg-hover ); }
cnc-layout .cnc-layout_gutter:hover, cnc-layout .cnc-layout_gutter.active { background: var( --gutter-bg-active ); }
cnc-layout .cnc-layout_pin, cnc-layout .cnc-layout_close { appearance: none; border: 0; background: none; padding: 0; font: inherit; color: inherit; display: inline-flex; }
cnc-layout .cnc-layout_pin:focus-visible, cnc-layout .cnc-layout_close:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
cnc-layout *, cnc-layout *::before, cnc-layout *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-layout-saver { display: block; }
}
@layer widgets {
cnc-link { display: inline; }
cnc-link a { color: inherit !important; text-decoration: inherit !important; }
cnc-link a:hover { color: inherit !important; text-decoration: inherit !important; }
}
@layer widgets {
cnc-list { --card-border-radius: 0; }
cnc-list { --item-padding: 0.5rem 1rem; --item-gap: 0.5rem; --label-margin-end: 0.5rem; --label-font-size: 0.875rem; --value-font-size: 0.875rem; --actions-padding: 0.25rem 1rem; }
cnc-list { --card-bg: transparent; --card-border-width: 1px; --card-border-color: var( --color-neutral-200 ); --card-divider-color: var( --color-neutral-200 ); --card-separator-color: var( --color-neutral-300 ); --item-bg: var( --color-neutral-100 ); --item-bg-hover: var( --color-neutral-50 ); --label-text-color: var( --color-neutral-800 ); --label-font-weight: 500; --value-text-color: var( --color-neutral-500 ); --link-text-color: var( --color-primary-600 ); --link-text-color-hover: var( --color-primary-500 ); --actions-bg: var( --color-neutral-100 ); }
.dark cnc-list { --card-border-color: var( --color-neutral-700 ); --card-divider-color: var( --color-neutral-800 ); --card-separator-color: var( --color-neutral-600 ); --item-bg: var( --color-neutral-800 ); --item-bg-hover: var( --color-neutral-700 ); --label-text-color: var( --color-neutral-200 ); --value-text-color: var( --color-neutral-400 ); --link-text-color: var( --color-primary-400 ); --link-text-color-hover: var( --color-primary-300 ); --actions-bg: var( --color-neutral-800 ); }
cnc-list { display: block; height: 100%; overflow-y: auto; }
cnc-list .cnc-list_card { background: var( --card-bg ); border: var( --card-border-width ) solid var( --card-border-color ); border-bottom: none; border-radius: var( --card-border-radius ); }
cnc-list .cnc-list_card:last-child { border-bottom: var( --card-border-width ) solid var( --card-border-color ); }
cnc-list .cnc-list_card + .cnc-list_card { border-top: none; }
cnc-list .cnc-list_card + .cnc-list_card::before { content: ""; display: block; height: 1px; background: var( --card-separator-color ); }
cnc-list .cnc-list_item { gap: var( --item-gap ); padding: var( --item-padding ); background: var( --item-bg ); }
cnc-list .cnc-list_item + .cnc-list_item, cnc-list .cnc-list_item + .cnc-list_actions { border-top: 1px solid var( --card-divider-color ); }
cnc-list .cnc-list_label { margin-inline-end: var( --label-margin-end ); color: var( --label-text-color ); font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); }
cnc-list .cnc-list_value { color: var( --value-text-color ); font-size: var( --value-font-size ); }
cnc-list .cnc-list_link { color: var( --link-text-color ); text-decoration: underline; }
cnc-list .cnc-list_actions { padding: var( --actions-padding ); background: var( --actions-bg ); }
cnc-list .cnc-list_item:hover { background: var( --item-bg-hover ); }
cnc-list .cnc-list_link:hover { color: var( --link-text-color-hover ); }
cnc-list .cnc-list_list { list-style: none; margin: 0; padding: 0; }
}
@layer widgets {
cnc-litegraph { display: block; }
}
@layer widgets {
cnc-markdown { --code-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-markdown { --body-font-size: 0.875rem; --body-line-height: 1.625; --h1-font-size: 1.5rem; --h2-font-size: 1.25rem; --h3-font-size: 1.125rem; --block-margin-bottom: 0.75rem; --heading-margin-top: 0.75rem; --list-padding-start: 1.25rem; --quote-border-width: 4px; --quote-padding-start: 1rem; --code-font-size: 0.75rem; --code-padding: 0.125rem 0.25rem; --pre-padding: 0.75rem; --cell-padding: 0.375rem 0.75rem; }
cnc-markdown { --quote-border-color: var( --color-neutral-300 ); --quote-text-color: var( --color-neutral-500 ); --code-bg: var( --color-neutral-100 ); --pre-bg: var( --color-neutral-50 ); --table-header-bg: var( --color-neutral-100 ); --table-header-border-color: var( --color-neutral-300 ); --table-cell-border-color: var( --color-neutral-200 ); --link-text-color: var( --color-primary-600 ); }
.dark cnc-markdown { --quote-border-color: var( --color-neutral-500 ); --quote-text-color: var( --color-neutral-400 ); --code-bg: var( --color-neutral-800 ); --pre-bg: var( --color-neutral-900 ); --table-header-bg: var( --color-neutral-800 ); --table-header-border-color: var( --color-neutral-600 ); --table-cell-border-color: var( --color-neutral-700 ); --link-text-color: var( --color-primary-400 ); }
cnc-markdown .cnc-markdown_body { max-width: none; font-size: var( --body-font-size ); line-height: var( --body-line-height ); }
cnc-markdown .cnc-markdown_body h1 { margin: 1rem 0 var( --block-margin-bottom ); font-size: var( --h1-font-size ); font-weight: 700; }
cnc-markdown .cnc-markdown_body h2 { margin: var( --heading-margin-top ) 0 0.5rem; font-size: var( --h2-font-size ); font-weight: 700; }
cnc-markdown .cnc-markdown_body h3 { margin: var( --heading-margin-top ) 0 0.5rem; font-size: var( --h3-font-size ); font-weight: 600; }
cnc-markdown .cnc-markdown_body p { margin-bottom: var( --block-margin-bottom ); }
cnc-markdown .cnc-markdown_body ul, cnc-markdown .cnc-markdown_body ol { margin-bottom: var( --block-margin-bottom ); padding-inline-start: var( --list-padding-start ); }
cnc-markdown .cnc-markdown_body ul { list-style-type: disc; }
cnc-markdown .cnc-markdown_body ol { list-style-type: decimal; }
cnc-markdown .cnc-markdown_body li { margin-bottom: 0.25rem; }
cnc-markdown .cnc-markdown_body blockquote { margin: var( --block-margin-bottom ) 0; padding-inline-start: var( --quote-padding-start ); border-inline-start: var( --quote-border-width ) solid var( --quote-border-color ); color: var( --quote-text-color ); font-style: italic; }
cnc-markdown .cnc-markdown_body code { padding: var( --code-padding ); border-radius: var( --code-border-radius ); background: var( --code-bg ); font-family: var( --font-mono , ui-monospace , monospace ); font-size: var( --code-font-size ); }
cnc-markdown .cnc-markdown_body pre { margin-bottom: var( --block-margin-bottom ); padding: var( --pre-padding ); border-radius: var( --code-border-radius ); background: var( --pre-bg ); overflow-x: auto; }
cnc-markdown .cnc-markdown_body pre code { padding: 0; background: transparent; }
cnc-markdown .cnc-markdown_body table { width: 100%; margin-bottom: var( --block-margin-bottom ); border-collapse: collapse; }
cnc-markdown .cnc-markdown_body th { padding: var( --cell-padding ); border: 1px solid var( --table-header-border-color ); background: var( --table-header-bg ); font-weight: 600; text-align: left; }
cnc-markdown .cnc-markdown_body td { padding: var( --cell-padding ); border: 1px solid var( --table-cell-border-color ); }
cnc-markdown .cnc-markdown_body a { color: var( --link-text-color ); text-decoration: underline; }
}
@layer widgets {
cnc-markdown-tiptap { --editor-padding: 0.5rem 1rem; --editor-min-height: 8rem; }
cnc-markdown-tiptap .tiptap { padding: var( --editor-padding ); min-height: var( --editor-min-height ); flex: 1 1 auto; outline: none; }
}
@layer widgets {
cnc-modal[shape="rounded"], cnc-modal:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-xl , 0.75rem ) ); }
cnc-modal[shape="square"], cnc-modal[shape="rectangle"] { --shape-border-radius: 0; }
cnc-modal[size="sm"] { --container-inline-size-max: 24rem; --container-padding: 1rem; --title-font-size: 1.125rem; }
cnc-modal[size="md"], cnc-modal:not([size]) { --container-inline-size-max: 32rem; --container-padding: 1.25rem; --title-font-size: 1.25rem; }
cnc-modal[size="lg"] { --container-inline-size-max: 48rem; --container-padding: 1.5rem; --title-font-size: 1.375rem; }
cnc-modal[size="full"] { --container-inline-size-max: 72rem; --container-padding: 1.5rem; --title-font-size: 1.5rem; }
cnc-modal { --container-viewport-gap: 0.5rem; --container-block-size-max: calc( 100dvh - 1rem ); --container-border-radius: var( --shape-border-radius , 0 ); --container-border-width: 1px; --container-stack-offset: 0.25rem; --title-font-weight: 600; --footer-border-width: 1px; --close-size: 2rem; --close-icon-size: 1.25rem; --close-border-radius: var( --radius-md , 0.375rem ); --close-transition-duration: 120ms; --close-transition-timing: ease-out; position: fixed; z-index: 50; }
cnc-modal:not([kind]), cnc-modal[kind="filled"] { --container-bg: var( --color-neutral-50 , white ); --container-text-color: var( --color-neutral-800 , rgb( 38 38 38 ) ); --container-border-color: rgb( 0 0 0 / 10% ); --container-shadow: 0 20px 25px -5px rgb( 0 0 0 / 10% ) , 0 8px 10px -6px rgb( 0 0 0 / 10% ); --footer-border-color: var( --container-border-color ); --close-text-color: var( --color-neutral-400 , rgb( 163 163 163 ) ); --close-text-color-hover: var( --color-neutral-700 , rgb( 64 64 64 ) ); --close-bg-hover: var( --color-neutral-100 , rgb( 245 245 245 ) ); }
.dark cnc-modal:not([kind]), .dark cnc-modal[kind="filled"] { --container-bg: var( --color-neutral-800 , rgb( 38 38 38 ) ); --container-text-color: var( --color-neutral-100 , rgb( 245 245 245 ) ); --container-border-color: rgb( 255 255 255 / 15% ); --container-shadow: 0 20px 25px -5px rgb( 0 0 0 / 30% ) , 0 8px 10px -6px rgb( 0 0 0 / 20% ); --footer-border-color: var( --container-border-color ); --close-text-color: var( --color-neutral-400 , rgb( 163 163 163 ) ); --close-text-color-hover: var( --color-neutral-100 , rgb( 245 245 245 ) ); --close-bg-hover: var( --color-neutral-700 , rgb( 64 64 64 ) ); }
cnc-modal[kind="plain"] { --container-bg: inherit; --container-text-color: inherit; --container-border-color: transparent; --container-shadow: none; --footer-border-color: transparent; --close-text-color: currentColor; --close-text-color-hover: currentColor; --close-bg-hover: transparent; }
cnc-modal .cnc-modal_container { inline-size: min( var( --container-inline-size-max ) , calc( 90vw - 2 * var( --container-viewport-gap ) ) ); max-block-size: var( --container-block-size-max ); color: var( --container-text-color ); background: var( --container-bg ); border: var( --container-border-width ) solid var( --container-border-color ); border-radius: var( --container-border-radius ); box-shadow: var( --container-shadow ); transform: translateY( calc( var( --modal-stack-depth , 0 ) * var( --container-stack-offset ) ) ); }
cnc-modal .cnc-modal_header { padding: var( --header-padding , var( --container-padding ) ); }
cnc-modal .cnc-modal_title { min-inline-size: 0; font-size: var( --title-font-size ); font-weight: var( --title-font-weight ); }
cnc-modal .cnc-modal_close { inline-size: var( --close-size ); block-size: var( --close-size ); padding: 0; color: var( --close-text-color ); background: transparent; border: 0; border-radius: var( --close-border-radius ); transition: color var( --close-transition-duration ) var( --close-transition-timing ) , background var( --close-transition-duration ) var( --close-transition-timing ); }
cnc-modal .cnc-modal_close:hover { color: var( --close-text-color-hover ); background: var( --close-bg-hover ); }
cnc-modal .cnc-modal_close:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
cnc-modal .cnc-modal_close-icon { inline-size: var( --close-icon-size ); block-size: var( --close-icon-size ); }
cnc-modal .cnc-modal_body { min-block-size: 0; padding: var( --body-padding , var( --container-padding ) ); }
cnc-modal .cnc-modal_footer { padding: var( --footer-padding , var( --container-padding ) ); border-top: var( --footer-border-width ) solid var( --footer-border-color ); }
cnc-modal .cnc-modal_footer:not(:has(*)) { display: none; }
@media (min-width: 40rem) {
cnc-modal { --container-viewport-gap: 1rem; --container-block-size-max: calc( 100dvh - 2rem ); --container-stack-offset: 0.5rem; }
}
@media (min-width: 64rem) {
cnc-modal { --container-viewport-gap: 2rem; --container-block-size-max: calc( 100dvh - 4rem ); --container-stack-offset: 0.75rem; }
}
@media (prefers-reduced-motion: reduce) {
cnc-modal *, cnc-modal *::before, cnc-modal *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-nav-horizontal { --menu-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-nav-horizontal { --bar-min-height: 2.5rem; --bar-padding-x: 0.5rem; --bar-border-bottom-width: 0; --link-padding: 0.5rem 0.75rem; --link-gap: 0.25rem; --link-font-size: 0.875rem; --caret-font-size: 10px; --menu-min-width: 160px; --menu-padding-y: 0.25rem; --sublink-padding: 0.5rem 0.75rem; --sublink-font-size: 0.875rem; }
@media (width >= 64rem) {
cnc-nav-horizontal { --bar-padding-x: 1rem; }
}
cnc-nav-horizontal { --bar-bg: white; --bar-border-color: transparent; --link-text-color: var( --color-neutral-500 ); --link-font-weight: 500; --link-text-color-hover: var( --color-neutral-700 ); --link-bg-hover: var( --color-neutral-200 ); --link-text-color-active: var( --color-neutral-900 ); --link-bg-active: var( --color-neutral-200 ); --link-border-color-active: var( --color-primary-500 ); --link-transition-duration: 0.15s; --caret-opacity: 0.5; --menu-bg: white; --menu-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ) , 0 0 0 1px var( --color-neutral-200 ); --sublink-text-color: var( --color-neutral-600 ); --sublink-text-color-hover: var( --color-neutral-900 ); --sublink-bg-hover: var( --color-neutral-100 ); --sublink-text-color-active: var( --color-primary-700 ); --sublink-bg-active: var( --color-primary-50 ); }
.dark cnc-nav-horizontal { --bar-bg: var( --color-neutral-700 ); --link-text-color: var( --color-neutral-400 ); --link-text-color-hover: var( --color-neutral-200 ); --link-bg-hover: var( --color-neutral-600 ); --link-text-color-active: var( --color-neutral-100 ); --link-bg-active: var( --color-neutral-500 ); --menu-bg: var( --color-neutral-800 ); --menu-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ) , 0 0 0 1px rgb( 255 255 255 / 20% ); --sublink-text-color: var( --color-neutral-300 ); --sublink-text-color-hover: var( --color-neutral-100 ); --sublink-bg-hover: var( --color-neutral-700 ); --sublink-text-color-active: var( --color-primary-300 ); --sublink-bg-active: rgb( from var( --color-primary-900 ) r g b / 30% ); }
cnc-nav-horizontal { display: block; }
cnc-nav-horizontal .cnc-nav-horizontal_bar { min-height: var( --bar-min-height ); padding: 0 var( --bar-padding-x ); border-bottom: var( --bar-border-bottom-width ) solid var( --bar-border-color ); background: var( --bar-bg ); }
cnc-nav-horizontal .cnc-nav-horizontal_link { gap: var( --link-gap ); padding: var( --link-padding ); color: var( --link-text-color ); font-size: var( --link-font-size ); font-weight: var( --link-font-weight ); transition: background var( --link-transition-duration ) , color var( --link-transition-duration ); }
cnc-nav-horizontal .cnc-nav-horizontal_caret { font-size: var( --caret-font-size ); opacity: var( --caret-opacity ); }
cnc-nav-horizontal .cnc-nav-horizontal_menu { min-width: var( --menu-min-width ); padding: var( --menu-padding-y ) 0; border-radius: var( --menu-border-radius ); background: var( --menu-bg ); box-shadow: var( --menu-shadow ); }
cnc-nav-horizontal .cnc-nav-horizontal_sublink { padding: var( --sublink-padding ); color: var( --sublink-text-color ); font-size: var( --sublink-font-size ); transition: background var( --link-transition-duration ) , color var( --link-transition-duration ); }
cnc-nav-horizontal .cnc-nav-horizontal_link:hover { background: var( --link-bg-hover ); color: var( --link-text-color-hover ); }
cnc-nav-horizontal .cnc-nav-horizontal_link.active { background: var( --link-bg-active ); color: var( --link-text-color-active ); border-bottom: 2px solid var( --link-border-color-active ); }
cnc-nav-horizontal .cnc-nav-horizontal_sublink:hover { background: var( --sublink-bg-hover ); color: var( --sublink-text-color-hover ); }
cnc-nav-horizontal .cnc-nav-horizontal_sublink.active { background: var( --sublink-bg-active ); color: var( --sublink-text-color-active ); }
}
@layer widgets {
cnc-nav-horizontal2 { display: block; }
cnc-nav-horizontal2 .nav-bar { min-height: 2.5rem; }
cnc-nav-horizontal2 .nav-item { position: relative; }
cnc-nav-horizontal2 .nav-link { border-bottom: 2px solid transparent; transition: background 0.15s , color 0.15s; color: var(--color-neutral-500); }
.dark cnc-nav-horizontal2 .nav-link { color: var(--color-neutral-400); }
cnc-nav-horizontal2 .nav-link:hover, cnc-nav-horizontal2 .nav-item.panel-open .nav-link { border-radius: 0.25rem 0.25rem 0 0; background-color: var(--color-neutral-100); color: var(--color-neutral-700); }
.dark cnc-nav-horizontal2 .nav-link:hover, .dark cnc-nav-horizontal2 .nav-item.panel-open .nav-link { background-color: var(--color-neutral-700); color: var(--color-neutral-200); }
cnc-nav-horizontal2 .nav-link.active { border-bottom-color: currentColor; color: var(--color-sky-600); font-weight: var(--font-weight-semibold); }
.dark cnc-nav-horizontal2 .nav-link.active { color: var(--color-sky-400); }
cnc-nav-horizontal2 .nav-panel { min-height: 2rem; border-top-width: 1px; border-top-style: var(--tw-border-style); border-color: var(--color-neutral-200); background-color: var(--color-white); }
.dark cnc-nav-horizontal2 .nav-panel { border-color: var(--color-neutral-700); background-color: var(--color-neutral-800); }
cnc-nav-horizontal2 .nav-panel .nav-link, cnc-nav-horizontal2 .nav-sublink { transition: background 0.15s , color 0.15s; color: var(--color-neutral-600); }
.dark cnc-nav-horizontal2 .nav-panel .nav-link, .dark cnc-nav-horizontal2 .nav-sublink { color: var(--color-neutral-300); }
cnc-nav-horizontal2 .nav-panel .nav-link:hover, cnc-nav-horizontal2 .nav-sublink:hover { background-color: var(--color-neutral-100); color: var(--color-neutral-900); }
.dark cnc-nav-horizontal2 .nav-panel .nav-link:hover, .dark cnc-nav-horizontal2 .nav-sublink:hover { background-color: var(--color-neutral-700); color: var(--color-neutral-100); }
cnc-nav-horizontal2 .nav-panel .nav-link.active, cnc-nav-horizontal2 .nav-sublink.active { background-color: var(--color-sky-50); color: var(--color-sky-700); font-weight: var(--font-weight-medium); }
.dark cnc-nav-horizontal2 .nav-panel .nav-link.active, .dark cnc-nav-horizontal2 .nav-sublink.active { background-color: color-mix(in oklab, var(--color-sky-900) 30%, transparent); color: var(--color-sky-300); }
cnc-nav-horizontal2 .nav-group { border-right: 1px solid; border-color: var(--color-neutral-100); }
.dark cnc-nav-horizontal2 .nav-group { border-color: var(--color-neutral-700); }
cnc-nav-horizontal2 .nav-group:last-child { border-right: none; }
cnc-nav-horizontal2 .nav-group-header { display: block; font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-semibold); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--color-neutral-400); padding-inline: calc(var(--box-spacing) * 2); padding-block: calc(var(--box-spacing) * 1); margin-bottom: calc(var(--box-spacing) * 0.5); }
.dark cnc-nav-horizontal2 .nav-group-header { color: var(--color-neutral-500); }
cnc-nav-horizontal2 a.nav-group-header { transition: color 0.15s; cursor: pointer; }
cnc-nav-horizontal2 a.nav-group-header:hover { color: var(--color-neutral-600); }
.dark cnc-nav-horizontal2 a.nav-group-header:hover { color: var(--color-neutral-300); }
cnc-nav-horizontal2 a.nav-group-header.active { color: var(--color-sky-600); }
.dark cnc-nav-horizontal2 a.nav-group-header.active { color: var(--color-sky-400); }
}
@layer widgets {
cnc-nav-mobile { --hamburger-padding: 15px; --hamburger-width: 40px; --hamburger-height: 24px; --hamburger-bar-height: 4px; --hamburger-bar-gap: 10px; --row-padding: 0.75rem; --icon-size: 1.25rem; --icon-margin-end: 0.5rem; --caret-font-size: 0.75rem; --caret-margin-start: 0.5rem; --list-indent: 1rem; }
cnc-nav-mobile { --hamburger-color: #000; --hamburger-opacity-hover: 0.7; --content-bg: transparent; --content-border-width: 0; --content-border-color: transparent; --content-text-color: var( --color-neutral-700 ); --content-transition-duration: 0.3s; --row-border-color: var( --color-neutral-200 ); --row-bg-hover: var( --color-neutral-100 ); --row-bg-highlighted: var( --color-neutral-100 ); --row-text-color-highlighted: var( --color-neutral-900 ); --icon-color: var( --color-neutral-400 ); --caret-color: var( --color-neutral-400 ); }
.dark cnc-nav-mobile { --content-text-color: var( --color-neutral-200 ); --row-border-color: var( --color-neutral-700 ); --row-bg-hover: var( --color-neutral-800 ); --row-bg-highlighted: var( --color-neutral-600 ); --row-text-color-highlighted: var( --color-neutral-50 ); }
cnc-nav-mobile { display: block; }
cnc-nav-mobile .cnc-nav-mobile_wrapper { width: 100%; }
cnc-nav-mobile .cnc-nav-mobile_content { border: var( --content-border-width ) solid var( --content-border-color ); background: var( --content-bg ); color: var( --content-text-color ); opacity: 0; transform: translateY( -10px ); pointer-events: none; transition: opacity var( --content-transition-duration ) ease , transform var( --content-transition-duration ) ease; }
cnc-nav-mobile .cnc-nav-mobile_list .cnc-nav-mobile_list { padding-inline-start: var( --list-indent ); }
cnc-nav-mobile .cnc-nav-mobile_row { padding: var( --row-padding ); border-bottom: 1px solid var( --row-border-color ); }
cnc-nav-mobile .cnc-nav-mobile_icon { width: var( --icon-size ); height: var( --icon-size ); margin-inline-end: var( --icon-margin-end ); color: var( --icon-color ); }
cnc-nav-mobile .cnc-nav-mobile_caret { margin-inline-start: var( --caret-margin-start ); color: var( --caret-color ); font-size: var( --caret-font-size ); }
cnc-nav-mobile .hamburger { display: inline-block; margin: 0; padding: var( --hamburger-padding ); border: 0; background-color: transparent; cursor: pointer; transition-property: opacity , filter; transition-duration: 0.15s; transition-timing-function: linear; }
cnc-nav-mobile .hamburger-box { position: relative; display: inline-block; width: var( --hamburger-width ); height: var( --hamburger-height ); }
cnc-nav-mobile .hamburger-inner { display: block; top: 50%; margin-top: calc( -1 * var( --hamburger-bar-height ) / 2 ); }
cnc-nav-mobile .hamburger-inner, cnc-nav-mobile .hamburger-inner::before, cnc-nav-mobile .hamburger-inner::after { position: absolute; width: var( --hamburger-width ); height: var( --hamburger-bar-height ); border-radius: var( --hamburger-bar-height ); background-color: var( --hamburger-color ); transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; }
cnc-nav-mobile .hamburger-inner::before, cnc-nav-mobile .hamburger-inner::after { content: ""; display: block; }
cnc-nav-mobile .hamburger-inner::before { top: calc( -1 * var( --hamburger-bar-gap ) ); }
cnc-nav-mobile .hamburger-inner::after { bottom: calc( -1 * var( --hamburger-bar-gap ) ); }
cnc-nav-mobile .hamburger--slider .hamburger-inner { top: 2px; }
cnc-nav-mobile .hamburger--slider .hamburger-inner::before { top: var( --hamburger-bar-gap ); transition-property: transform , opacity; transition-timing-function: ease; transition-duration: 0.15s; }
cnc-nav-mobile .hamburger--slider .hamburger-inner::after { top: calc( 2 * var( --hamburger-bar-gap ) ); }
cnc-nav-mobile .cnc-nav-mobile_content.menu-open { opacity: 1; pointer-events: auto; transform: translateY( 0px ); }
cnc-nav-mobile .cnc-nav-mobile_row:hover { background: var( --row-bg-hover ); }
cnc-nav-mobile .cnc-nav-mobile_row.highlighted { background: var( --row-bg-highlighted ); color: var( --row-text-color-highlighted ); }
cnc-nav-mobile .hamburger:hover { opacity: var( --hamburger-opacity-hover ); }
cnc-nav-mobile .hamburger--slider.is-active .hamburger-inner { transform: translate3d( 0 , var( --hamburger-bar-gap ) , 0 ) rotate( 45deg ); }
cnc-nav-mobile .hamburger--slider.is-active .hamburger-inner::before { transform: rotate( -45deg ) translate3d( -5.71429px , -6px , 0 ); opacity: 0; }
cnc-nav-mobile .hamburger--slider.is-active .hamburger-inner::after { transform: translate3d( 0 , calc( -2 * var( --hamburger-bar-gap ) ) , 0 ) rotate( -90deg ); }
}
@layer widgets {
cnc-nav-mobile-drop .menu-wrapper { width: 100%; max-width: 300px; perspective: 1000px; perspective-origin: 50% 200%; }
cnc-nav-mobile-drop .menu-content { transition: opacity 0.3s ease , transform 0.3s ease; opacity: 0; transform: translateY( -10px ); pointer-events: none; }
cnc-nav-mobile-drop .menu-content.menu-open { opacity: 1; pointer-events: auto; transform: translateY( 0px ); }
cnc-nav-mobile-drop .hamburger { padding: 15px; display: inline-block; cursor: pointer; transition-property: opacity , filter; transition-duration: 0.15s; transition-timing-function: linear; background-color: transparent; border: 0; margin: 0; }
cnc-nav-mobile-drop .hamburger:hover { opacity: 0.7; }
cnc-nav-mobile-drop .hamburger-box { width: 40px; height: 24px; display: inline-block; position: relative; }
cnc-nav-mobile-drop .hamburger-inner { display: block; top: 50%; margin-top: -2px; }
cnc-nav-mobile-drop .hamburger-inner, cnc-nav-mobile-drop .hamburger-inner::before, cnc-nav-mobile-drop .hamburger-inner::after { width: 40px; height: 4px; background-color: #000; border-radius: 4px; position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; }
cnc-nav-mobile-drop .hamburger-inner::before, cnc-nav-mobile-drop .hamburger-inner::after { content: ""; display: block; }
cnc-nav-mobile-drop .hamburger-inner::before { top: -10px; }
cnc-nav-mobile-drop .hamburger-inner::after { bottom: -10px; }
cnc-nav-mobile-drop .hamburger--slider .hamburger-inner { top: 2px; }
cnc-nav-mobile-drop .hamburger--slider .hamburger-inner::before { top: 10px; transition-property: transform , opacity; transition-timing-function: ease; transition-duration: 0.15s; }
cnc-nav-mobile-drop .hamburger--slider .hamburger-inner::after { top: 20px; }
cnc-nav-mobile-drop .hamburger--slider.is-active .hamburger-inner { transform: translate3d( 0 , 10px , 0 ) rotate( 45deg ); }
cnc-nav-mobile-drop .hamburger--slider.is-active .hamburger-inner::before { transform: rotate( -45deg ) translate3d( -5.71429px , -6px , 0 ); opacity: 0; }
cnc-nav-mobile-drop .hamburger--slider.is-active .hamburger-inner::after { transform: translate3d( 0 , -20px , 0 ) rotate( -90deg ); }
cnc-nav-mobile-drop .hamburger.is-active .hamburger-inner, cnc-nav-mobile-drop .hamburger.is-active .hamburger-inner::before, cnc-nav-mobile-drop .hamburger.is-active .hamburger-inner::after { background-color: #000; }
}
@layer widgets {
cnc-nav-sidebar { --sidebar-width: 15rem; --sidebar-width-collapsed: 4rem; --sidebar-padding: 1rem 0.75rem; --sidebar-padding-collapsed: 1rem 0.5rem; --sidebar-gap: 1.25rem; --sidebar-bg: var( --color-white ); --sidebar-border-color: var( --color-neutral-200 ); --row-gap: 0.75rem; --row-padding-y: 0.5rem; --row-padding-x: 0.75rem; --row-border-radius: var( --radius-md , 0.375rem ); --row-font-size: 0.9375rem; --row-font-weight: 600; --row-text-color: var( --color-neutral-700 ); --row-bg-hover: var( --color-neutral-50 ); --row-text-color-current: var( --color-neutral-900 ); --row-bg-current: var( --color-neutral-100 ); --row-spacing: 0.125rem; --child-padding-start: 2.75rem; --child-font-weight: 500; --child-text-color: var( --color-neutral-600 ); --icon-size: 1.25rem; --icon-color: var( --color-neutral-500 ); --icon-color-current: var( --color-neutral-700 ); --toggle-size: 1.75rem; --toggle-icon: var( --icon-chevron-svg ); --toggle-icon-size: 0.625rem; --toggle-color: var( --color-neutral-400 ); --toggle-rotation: -90deg; --toggle-rotation-expanded: 0deg; --footer-border-color: var( --color-neutral-200 ); }
.dark cnc-nav-sidebar { --sidebar-bg: var( --color-neutral-900 ); --sidebar-border-color: var( --color-neutral-800 ); --row-text-color: var( --color-neutral-300 ); --row-bg-hover: var( --color-neutral-800 ); --row-text-color-current: var( --color-neutral-100 ); --row-bg-current: var( --color-neutral-800 ); --child-text-color: var( --color-neutral-400 ); --icon-color: var( --color-neutral-400 ); --icon-color-current: var( --color-neutral-200 ); --toggle-color: var( --color-neutral-500 ); --footer-border-color: var( --color-neutral-800 ); }
cnc-nav-sidebar { inline-size: var( --sidebar-width ); background: var( --sidebar-bg ); border-inline-end: 1px solid var( --sidebar-border-color ); }
cnc-nav-sidebar .cnc-nav-sidebar_aside { gap: var( --sidebar-gap ); padding: var( --sidebar-padding ); }
cnc-nav-sidebar .cnc-nav-sidebar_list > .cnc-nav-sidebar_item + .cnc-nav-sidebar_item { margin-block-start: var( --row-spacing ); }
cnc-nav-sidebar .cnc-nav-sidebar_line { border-radius: var( --row-border-radius ); }
cnc-nav-sidebar .cnc-nav-sidebar_line:has(> .cnc-nav-sidebar_toggle) { padding-inline-end: calc( var( --row-padding-x ) - ( var( --toggle-size ) - var( --toggle-icon-size ) ) / 2 ); }
cnc-nav-sidebar .cnc-nav-sidebar_row { gap: var( --row-gap ); padding: var( --row-padding-y ) var( --row-padding-x ); font-size: var( --row-font-size ); font-weight: var( --row-font-weight ); color: var( --row-text-color ); }
cnc-nav-sidebar .cnc-nav-sidebar_child { padding-inline-start: var( --child-padding-start ); font-weight: var( --child-font-weight ); color: var( --child-text-color ); }
cnc-nav-sidebar .cnc-nav-sidebar_icon { inline-size: var( --icon-size ); block-size: var( --icon-size ); color: var( --icon-color ); }
cnc-nav-sidebar .cnc-nav-sidebar_toggle { inline-size: var( --toggle-size ); block-size: var( --toggle-size ); border-radius: var( --row-border-radius ); background: transparent; border: 0; cursor: pointer; }
cnc-nav-sidebar .cnc-nav-sidebar_chevron { inline-size: var( --toggle-icon-size ); block-size: var( --toggle-icon-size ); background: var( --toggle-color ); mask-image: var( --toggle-icon , linear-gradient( transparent , transparent ) ); mask-position: center; mask-size: contain; mask-repeat: no-repeat; rotate: var( --toggle-rotation ); transition: rotate 0.2s; }
cnc-nav-sidebar .cnc-nav-sidebar_footer:not(:empty) { padding-block-start: var( --sidebar-gap ); border-block-start: 1px solid var( --footer-border-color ); }
cnc-nav-sidebar .cnc-nav-sidebar_line:hover { background: var( --row-bg-hover ); }
cnc-nav-sidebar .cnc-nav-sidebar_line:has(.cnc-nav-sidebar_row[aria-current="page"]), cnc-nav-sidebar .cnc-nav-sidebar_line:has(.cnc-nav-sidebar_row[data-highlighted="true"]) { background: var( --row-bg-current ); }
cnc-nav-sidebar .cnc-nav-sidebar_row[aria-current="page"], cnc-nav-sidebar .cnc-nav-sidebar_row[data-highlighted="true"] { color: var( --row-text-color-current ); }
cnc-nav-sidebar .cnc-nav-sidebar_row[aria-current="page"] .cnc-nav-sidebar_icon, cnc-nav-sidebar .cnc-nav-sidebar_row[data-highlighted="true"] .cnc-nav-sidebar_icon { color: var( --icon-color-current ); }
cnc-nav-sidebar .cnc-nav-sidebar_line:has(> .cnc-nav-sidebar_toggle[aria-expanded="true"]):has( > .cnc-nav-sidebar_row[data-highlighted="true"] ):not(:hover) { background: transparent; }
cnc-nav-sidebar .cnc-nav-sidebar_toggle[aria-expanded="true"] .cnc-nav-sidebar_chevron { rotate: var( --toggle-rotation-expanded ); }
cnc-nav-sidebar[data-collapsed="true"] { inline-size: var( --sidebar-width-collapsed ); }
cnc-nav-sidebar[data-collapsed="true"] .cnc-nav-sidebar_aside { align-items: center; padding: var( --sidebar-padding-collapsed ); }
cnc-nav-sidebar[data-collapsed="true"] .cnc-nav-sidebar_row { justify-content: center; padding: var( --row-padding-y ); }
}
@layer widgets {
cnc-nav-vertical { --container-max-width: 24rem; --list-padding-start: 1rem; --list-margin-start: 0; --list-border-width: 0; --list-border-color: transparent; --list-transition-duration: 0.3s; --row-gap: 0.5rem; --row-padding-y: 0.375rem; --row-padding-x: 0.5rem; --row-border-radius: var( --radius-sm , 0.25rem ); --row-font-size: 0.875rem; --row-font-weight: inherit; --row-text-color: var( --color-neutral-600 ); --row-text-color-hover: var( --color-neutral-700 ); --row-bg-hover: var( --color-neutral-100 ); --row-text-color-selected: var( --color-neutral-500 ); --row-bg-selected: var( --color-neutral-100 ); --row-text-color-highlighted: var( --color-neutral-600 ); --top-row-font-weight: 500; --top-row-text-color: var( --color-neutral-800 ); --icon-size: 1.25rem; --icon-color: var( --color-neutral-400 ); --counter-size: 1.5rem; --counter-padding: 0.125rem; --counter-margin-end: 0.25rem; --counter-bg: var( --color-neutral-400 ); --counter-text-color: var( --color-neutral-100 ); --counter-border-radius: var( --radius-full , 9999px ); --counter-font-size: 0.75rem; --counter-font-weight: 600; --toggle-size: 0.625rem; --toggle-padding: 0.25rem; --toggle-icon: var( --icon-chevron-svg ); --toggle-color: var( --color-neutral-400 ); --toggle-rotation: -90deg; --toggle-rotation-expanded: 0deg; --toggle-transition-duration: 0.3s; }
.dark cnc-nav-vertical { --row-text-color: var( --color-neutral-300 ); --row-text-color-hover: var( --color-neutral-400 ); --row-bg-hover: var( --color-neutral-800 ); --row-text-color-selected: var( --color-neutral-400 ); --row-bg-selected: var( --color-neutral-800 ); --row-text-color-highlighted: var( --color-neutral-400 ); --top-row-text-color: var( --color-neutral-100 ); --icon-color: var( --color-neutral-500 ); --toggle-color: var( --color-neutral-500 ); }
cnc-nav-vertical { max-width: var( --container-max-width ); }
cnc-nav-vertical .cnc-nav-vertical_list { margin-inline-start: var( --list-margin-start ); padding-inline-start: var( --list-padding-start ); border-inline-start: var( --list-border-width ) solid var( --list-border-color ); transition: max-height var( --list-transition-duration ) ease; }
cnc-nav-vertical .cnc-nav-vertical_list[data-level="1"] { margin-inline-start: 0; padding-inline-start: 0; border-inline-start: 0; }
cnc-nav-vertical .cnc-nav-vertical_row { gap: var( --row-gap ); padding: var( --row-padding-y ) var( --row-padding-x ); border-radius: var( --row-border-radius ); font-size: var( --row-font-size ); font-weight: var( --row-font-weight ); color: var( --row-text-color ); }
cnc-nav-vertical .cnc-nav-vertical_icon { inline-size: var( --icon-size ); block-size: var( --icon-size ); color: var( --icon-color ); }
cnc-nav-vertical .cnc-nav-vertical_counter { min-inline-size: var( --counter-size ); min-block-size: var( --counter-size ); padding: var( --counter-padding ); margin-inline-end: var( --counter-margin-end ); background: var( --counter-bg ); color: var( --counter-text-color ); border-radius: var( --counter-border-radius ); font-size: var( --counter-font-size ); font-weight: var( --counter-font-weight ); }
cnc-nav-vertical .cnc-nav-vertical_toggle { box-sizing: content-box; inline-size: var( --toggle-size ); block-size: var( --toggle-size ); padding: var( --toggle-padding ); background: var( --toggle-color ); background-clip: content-box; mask-image: var( --toggle-icon , linear-gradient( transparent , transparent ) ); mask-position: center; mask-size: contain; mask-repeat: no-repeat; mask-origin: content-box; mask-clip: content-box; rotate: var( --toggle-rotation ); transition: rotate var( --toggle-transition-duration ); }
cnc-nav-vertical .cnc-nav-vertical_list[data-expanded="false"] { max-height: 0; }
cnc-nav-vertical .cnc-nav-vertical_list[data-expanded="true"] { max-height: 2000px; }
cnc-nav-vertical .cnc-nav-vertical_toggle[data-expanded="true"] { rotate: var( --toggle-rotation-expanded ); }
cnc-nav-vertical .cnc-nav-vertical_row:hover { color: var( --row-text-color-hover ); background: var( --row-bg-hover ); }
cnc-nav-vertical .cnc-nav-vertical_row[aria-current="page"] { color: var( --row-text-color-selected ); background: var( --row-bg-selected ); }
cnc-nav-vertical .cnc-nav-vertical_row[data-highlighted="true"] { color: var( --row-text-color-highlighted ); }
cnc-nav-vertical .cnc-nav-vertical_list[data-level="1"] > .cnc-nav-vertical_item > .cnc-nav-vertical_row { font-weight: var( --top-row-font-weight ); color: var( --top-row-text-color ); }
}
@layer widgets {
cnc-nav-vertical2 .tree ul.children, cnc-nav-vertical2 .tree li.item { margin: 0; padding-left: 0; list-style: none; }
}
@layer widgets {
cnc-overlay { --surface-border-radius: inherit; }
cnc-overlay { --surface-bg: inherit; --surface-text-color: inherit; --overlay-backdrop-bg-open: rgb( 0 0 0 / 50% ); --overlay-backdrop-filter-open: blur( 0 ); --overlay-transition-duration: 160ms; --overlay-transition-timing: ease-out; --overlay-scale-closed: 0.98; }
cnc-overlay { display: inline-block; position: relative; }
cnc-overlay .cnc-overlay_surface { overflow: visible; color: var( --surface-text-color ); background: var( --surface-bg ); border-radius: var( --surface-border-radius ); }
cnc-overlay .cnc-overlay_content { overflow: visible; color: inherit; background: inherit; border-radius: inherit; }
cnc-overlay[backdrop="none"], cnc-overlay[backdrop="false"] { --overlay-backdrop-bg-open: transparent; --overlay-backdrop-filter-open: blur( 0 ); }
cnc-overlay[backdrop="true"], cnc-overlay[backdrop="dark"], cnc-overlay:not([backdrop]) { --overlay-backdrop-bg-open: rgb( 0 0 0 / 50% ); --overlay-backdrop-filter-open: blur( 0 ); }
cnc-overlay[backdrop="blur"] { --overlay-backdrop-bg-open: transparent; --overlay-backdrop-filter-open: blur( 0.5rem ); }
cnc-overlay dialog.cnc-overlay_surface { opacity: 0; transform: scale( var( --overlay-scale-closed ) ); transition: opacity var( --overlay-transition-duration ) var( --overlay-transition-timing ) , transform var( --overlay-transition-duration ) var( --overlay-transition-timing ); }
cnc-overlay dialog.cnc-overlay_surface::backdrop { background: transparent; backdrop-filter: blur( 0 ); transition: background-color var( --overlay-transition-duration ) var( --overlay-transition-timing ) , backdrop-filter var( --overlay-transition-duration ) var( --overlay-transition-timing ); }
cnc-overlay dialog.cnc-overlay_surface[data-state="open"] { opacity: 1; transform: scale( 1 ); }
cnc-overlay dialog.cnc-overlay_surface[data-state="open"]::backdrop { background-color: var( --overlay-backdrop-bg-open ); backdrop-filter: var( --overlay-backdrop-filter-open ); }
cnc-overlay dialog.cnc-overlay_surface[data-state="closing"] { opacity: 0; transform: scale( var( --overlay-scale-closed ) ); }
cnc-overlay dialog.cnc-overlay_surface[data-state="closing"]::backdrop { background-color: transparent; backdrop-filter: blur( 0 ); }
cnc-overlay[animation="none"] { --overlay-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-overlay { --overlay-transition-duration: 0ms; }
}
}
@layer widgets {
cnc-page-builder .pb-canvas { max-width: 100%; }
cnc-page-builder .pb-scrim { display: none; }
@container (width < 56rem) {
cnc-page-builder [data-role="left"] { display: none !important; }
cnc-page-builder [data-role="properties"] { max-height: 85%; transform: translateY( 102% ); visibility: hidden; transition: transform 0.2s ease , visibility 0.2s; position: absolute; bottom: 0px; left: 0px; right: 0px; z-index: 40; border-top-left-radius: var(--radius-xl); border-top-right-radius: var(--radius-xl); background-color: var(--color-white); --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.dark cnc-page-builder [data-role="properties"] { background-color: var(--color-neutral-900); }
cnc-page-builder [data-role="properties"][data-open] { transform: none; visibility: visible; }
cnc-page-builder .pb-scrim[data-open] { position: absolute; inset: 0px; z-index: 20; display: block; background-color: color-mix(in oklab, var(--color-black) 30%, transparent); }
cnc-page-builder .pb-scroller { padding: 0.5rem !important; }
cnc-page-builder .pb-canvas { padding: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
}
cnc-page-builder .pb-zone { position: relative; display: grid; min-height: calc(var(--spacing) * 12); grid-template-columns: repeat(12, minmax(0, 1fr)); align-content: flex-start; gap: calc(var(--spacing) * 3); border-radius: var(--radius-md); padding-bottom: calc(var(--box-spacing) * 6); }
cnc-page-builder .pb-root { min-height: calc(var(--spacing) * 64); padding-bottom: calc(var(--box-spacing) * 12); }
cnc-page-builder .pb-dragging .pb-zone { outline-style: var(--tw-outline-style); outline-width: 1px; --tw-outline-style: dashed; outline-style: dashed; outline-color: var(--color-neutral-300); }
.dark cnc-page-builder .pb-dragging .pb-zone { outline-color: var(--color-neutral-600); }
cnc-page-builder .pb-item { touch-action: manipulation; -webkit-touch-callout: none; position: relative; min-width: 0px; cursor: grab; user-select: none; border-radius: var(--radius-md); padding: calc(var(--box-spacing) * 2); }
cnc-page-builder .pb-item:hover:not(:has(.pb-item:hover)) { background-color: var(--color-neutral-50); }
.dark cnc-page-builder .pb-item:hover:not(:has(.pb-item:hover)) { background-color: color-mix(in oklab, var(--color-neutral-800) 60%, transparent); }
cnc-page-builder .pb-item.pb-selected { --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: var(--color-primary-500); }
cnc-page-builder .pb-item.pb-linked { --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: var(--color-primary-300); }
.dark cnc-page-builder .pb-item.pb-linked { --tw-ring-color: var(--color-primary-700); }
cnc-page-builder .pb-resize { position: absolute; right: calc(var(--spacing) * -1.5); top: 50%; z-index: 10; height: calc(var(--spacing) * 6); width: calc(var(--spacing) * 3); --tw-translate-y: -50%; translate: var(--tw-translate-x) var(--tw-translate-y); cursor: col-resize; touch-action: none; border-radius: var(--radius-sm); background-color: var(--color-primary-500); }
cnc-page-builder .pb-zone > [data-width="1"] { grid-column: span 1 / span 1; }
cnc-page-builder .pb-zone > [data-width="2"] { grid-column: span 2 / span 2; }
cnc-page-builder .pb-zone > [data-width="3"] { grid-column: span 3 / span 3; }
cnc-page-builder .pb-zone > [data-width="4"] { grid-column: span 4 / span 4; }
cnc-page-builder .pb-zone > [data-width="5"] { grid-column: span 5 / span 5; }
cnc-page-builder .pb-zone > [data-width="6"] { grid-column: span 6 / span 6; }
cnc-page-builder .pb-zone > [data-width="7"] { grid-column: span 7 / span 7; }
cnc-page-builder .pb-zone > [data-width="8"] { grid-column: span 8 / span 8; }
cnc-page-builder .pb-zone > [data-width="9"] { grid-column: span 9 / span 9; }
cnc-page-builder .pb-zone > [data-width="10"] { grid-column: span 10 / span 10; }
cnc-page-builder .pb-zone > [data-width="11"] { grid-column: span 11 / span 11; }
cnc-page-builder .pb-zone > [data-width="12"] { grid-column: span 12 / span 12; }
cnc-page-builder .pb-placeholder { pointer-events: none; display: flex; align-items: center; justify-content: center; border-radius: var(--radius-md); border-width: 2px; border-style: var(--tw-border-style); border-style: dashed; border-color: var(--color-primary-400); background-color: color-mix(in oklab, var(--color-primary-50) 70%, transparent); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-medium); color: var(--color-primary-700); }
.dark cnc-page-builder .pb-placeholder { border-color: var(--color-primary-600); background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); color: var(--color-primary-300); }
cnc-page-builder .pb-container { border-radius: var(--radius-lg); border-width: 1px; border-style: var(--tw-border-style); border-color: var(--color-neutral-200); }
.dark cnc-page-builder .pb-container { border-color: var(--color-neutral-700); }
cnc-page-builder .pb-form { border-color: var(--color-primary-300); background-color: color-mix(in oklab, var(--color-primary-50) 30%, transparent); }
.dark cnc-page-builder .pb-form { border-color: var(--color-primary-800); background-color: color-mix(in oklab, var(--color-primary-950) 20%, transparent); }
cnc-page-builder .pb-step { border-style: dashed; background-color: var(--color-white); }
.dark cnc-page-builder .pb-step { background-color: var(--color-neutral-900); }
cnc-page-builder .pb-review { border-radius: var(--radius-md); border-width: 1px; border-style: var(--tw-border-style); border-color: var(--color-neutral-200); padding: calc(var(--box-spacing) * 3); }
.dark cnc-page-builder .pb-review { border-color: var(--color-neutral-700); }
cnc-page-builder .pb-object { background-color: color-mix(in oklab, var(--color-neutral-50) 70%, transparent); }
.dark cnc-page-builder .pb-object { background-color: color-mix(in oklab, var(--color-neutral-800) 40%, transparent); }
cnc-page-builder .pb-container > .pb-zone { margin-inline: calc(var(--box-spacing) * 3); }
cnc-page-builder .pb-head { display: flex; align-items: center; gap: calc(var(--spacing) * 2); padding-inline: calc(var(--box-spacing) * 3); padding-block: calc(var(--box-spacing) * 2); }
cnc-page-builder .pb-badge { border-radius: 0.25rem; background-color: var(--color-primary-50); padding-inline: calc(var(--box-spacing) * 1.5); font-size: 11px; color: var(--color-primary-700); }
.dark cnc-page-builder .pb-badge { background-color: color-mix(in oklab, var(--color-primary-900) 40%, transparent); color: var(--color-primary-300); }
cnc-page-builder .pb-unnamed { background-color: var(--color-amber-50); color: var(--color-amber-700); }
.dark cnc-page-builder .pb-unnamed { background-color: color-mix(in oklab, var(--color-amber-900) 40%, transparent); color: var(--color-amber-300); }
cnc-page-builder .pb-panels .cnc-accordion_header { padding-inline: calc(var(--box-spacing) * 3); padding-block: calc(var(--box-spacing) * 2); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-semibold); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--color-neutral-500); }
.dark cnc-page-builder .pb-panels .cnc-accordion_header { color: var(--color-neutral-400); }
cnc-page-builder .pb-group { font-size: 11px; font-weight: var(--font-weight-semibold); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--color-neutral-500); }
.dark cnc-page-builder .pb-group { color: var(--color-neutral-400); }
cnc-page-builder .pb-block { display: flex; min-width: 0px; cursor: grab; user-select: none; align-items: center; gap: calc(var(--spacing) * 1.5); border-radius: 0.25rem; border-width: 1px; border-style: var(--tw-border-style); border-color: var(--color-neutral-200); background-color: var(--color-white); padding-block: calc(var(--box-spacing) * 1); padding-left: calc(var(--box-spacing) * 2); padding-right: calc(var(--box-spacing) * 1); text-align: left; font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); }
cnc-page-builder .pb-block:hover { border-color: var(--color-primary-400); background-color: var(--color-primary-50); }
.dark cnc-page-builder .pb-block { border-color: var(--color-neutral-700); background-color: var(--color-neutral-900); }
.dark cnc-page-builder .pb-block:hover { background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); }
cnc-page-builder .pb-add-block { display: flex; height: calc(var(--spacing) * 7); width: calc(var(--spacing) * 7); flex-shrink: 0; align-items: center; justify-content: center; border-radius: 0.25rem; color: var(--color-neutral-500); }
cnc-page-builder .pb-add-block:hover { background-color: var(--color-primary-100); color: var(--color-primary-700); }
.dark cnc-page-builder .pb-add-block:hover { background-color: color-mix(in oklab, var(--color-primary-900) 50%, transparent); color: var(--color-primary-300); }
cnc-page-builder .pb-add { display: inline-block; border-radius: 0.25rem; border-width: 1px; border-style: var(--tw-border-style); border-style: dashed; border-color: var(--color-neutral-300); padding-inline: calc(var(--box-spacing) * 2); padding-block: calc(var(--box-spacing) * 0.5); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); color: var(--color-neutral-500); }
.dark cnc-page-builder .pb-add { border-color: var(--color-neutral-600); color: var(--color-neutral-400); }
cnc-page-builder .pb-add-button { display: flex; align-items: center; justify-content: center; gap: calc(var(--spacing) * 1); border-radius: var(--radius-md); border-width: 1px; border-style: var(--tw-border-style); border-style: dashed; border-color: var(--color-primary-300); padding-inline: calc(var(--box-spacing) * 2); padding-block: calc(var(--box-spacing) * 1.5); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-medium); color: var(--color-primary-700); }
cnc-page-builder .pb-add-button:hover { background-color: var(--color-primary-50); }
.dark cnc-page-builder .pb-add-button { border-color: var(--color-primary-700); color: var(--color-primary-300); }
.dark cnc-page-builder .pb-add-button:hover { background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); }
cnc-page-builder .pb-add-last { order: 100000; }
cnc-page-builder .pb-add-first { padding-block: calc(var(--box-spacing) * 4); }
cnc-page-builder .pb-canvas:has([data-role="placeholder"]) [data-role="add-after"], cnc-page-builder .pb-canvas:has([data-role="placeholder"]) [data-role="add-inside"], cnc-page-builder .pb-zone:has(> [data-role="placeholder"]) > .pb-add-first { display: none; }
cnc-page-builder .pb-canvas:has([data-role="placeholder"]) [data-role="add-end"] { visibility: hidden; }
cnc-page-builder .pb-image-empty { display: flex; height: calc(var(--spacing) * 28); flex-direction: column; align-items: center; justify-content: center; gap: calc(var(--spacing) * 1); border-radius: var(--radius-md); border-width: 1px; border-style: var(--tw-border-style); border-style: dashed; border-color: var(--color-neutral-300); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); color: var(--color-neutral-400); }
.dark cnc-page-builder .pb-image-empty { border-color: var(--color-neutral-600); }
cnc-page-builder .pb-hint { grid-column: span 12 / span 12; padding-block: calc(var(--box-spacing) * 3); text-align: center; font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); color: var(--color-neutral-400); }
.dark cnc-page-builder .pb-hint { color: var(--color-neutral-500); }
cnc-page-builder .pb-divider { display: flex; align-items: center; gap: calc(var(--spacing) * 3); padding-block: calc(var(--box-spacing) * 2); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-medium); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--color-neutral-500); }
.dark cnc-page-builder .pb-divider { color: var(--color-neutral-400); }
cnc-page-builder .pb-divider::before, cnc-page-builder .pb-divider::after { height: 1px; flex: 1; background-color: var(--color-neutral-300); --tw-content: ''; content: var(--tw-content); }
.dark cnc-page-builder .pb-divider::before, .dark cnc-page-builder .pb-divider::after { background-color: var(--color-neutral-600); }
cnc-page-builder .pb-heading { font-weight: var(--font-weight-semibold); color: var(--color-neutral-900); }
.dark cnc-page-builder .pb-heading { color: var(--color-neutral-100); }
cnc-page-builder .pb-heading-2 { font-size: var(--text-xl); line-height: var(--tw-leading, var(--text-xl--line-height)); }
cnc-page-builder .pb-heading-3 { font-size: var(--text-lg); line-height: var(--tw-leading, var(--text-lg--line-height)); }
cnc-page-builder .pb-heading-4 { font-size: var(--text-base); line-height: var(--tw-leading, var(--text-base--line-height)); }
cnc-page-builder .pb-ghost.pb-ghost-item { border-radius: var(--radius-md); background-color: var(--color-white); padding: calc(var(--box-spacing) * 0); font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); font-weight: var(--font-weight-normal); color: inherit; opacity: 90%; --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); --tw-ring-color: var(--color-primary-300); }
.dark cnc-page-builder .pb-ghost.pb-ghost-item { background-color: var(--color-neutral-900); }
cnc-page-builder .pb-ghost { pointer-events: none; position: fixed; left: 0px; top: 0px; z-index: 50; display: none; border-radius: var(--radius-md); background-color: var(--color-primary-600); padding-inline: calc(var(--box-spacing) * 2); padding-block: calc(var(--box-spacing) * 1); font-size: var(--text-xs); line-height: var(--tw-leading, var(--text-xs--line-height)); font-weight: var(--font-weight-medium); color: var(--color-white); --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
@media (prefers-reduced-motion: reduce) {
cnc-page-builder *, cnc-page-builder *::before, cnc-page-builder *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-page-renderer { --form-border-radius: var( --radius-lg , 0.5rem ); --group-border-radius: var( --radius-lg , 0.5rem ); --row-border-radius: var( --radius-md , 0.375rem ); --card-border-radius: var( --radius-lg , 0.5rem ); }
cnc-page-renderer { --grid-gap: 1rem; --form-padding: 1rem; --form-title-font-size: 1.125rem; --form-title-margin-bottom: 0.75rem; --actions-margin-top: 1rem; --actions-gap: 0.5rem; --group-padding: 0.75rem; --label-font-size: 0.875rem; --label-margin-bottom: 0.5rem; --row-padding: 0.75rem; --row-gap: 0.5rem; --error-font-size: 0.875rem; --help-font-size: 0.75rem; --table-font-size: 0.875rem; --cell-padding: 0.375rem 0.5rem; --card-padding: 0.75rem; --card-gap: 0.5rem; --review-padding: 0.75rem; --review-row-gap-x: 1rem; --review-row-padding-y: 0.25rem; --heading-2-font-size: 1.5rem; --heading-3-font-size: 1.25rem; --heading-4-font-size: 1.125rem; --divider-gap: 0.75rem; --divider-padding-y: 0.5rem; --divider-font-size: 0.75rem; }
cnc-page-renderer { --container-text-color: var( --color-neutral-900 ); --form-border-color: var( --color-neutral-200 ); --group-border-color: var( --color-neutral-200 ); --label-text-color: var( --color-neutral-700 ); --label-font-weight: 600; --row-bg: var( --color-neutral-50 ); --error-text-color: var( --color-danger-600 ); --help-text-color: var( --color-neutral-500 ); --table-header-border-color: var( --color-neutral-200 ); --table-cell-border-color: var( --color-neutral-100 ); --card-border-color: var( --color-neutral-200 ); --review-border-color: var( --color-neutral-200 ); --divider-text-color: var( --color-neutral-500 ); --divider-line-color: var( --color-neutral-300 ); }
.dark cnc-page-renderer { --container-text-color: var( --color-neutral-100 ); --form-border-color: var( --color-neutral-700 ); --group-border-color: var( --color-neutral-700 ); --label-text-color: var( --color-neutral-200 ); --row-bg: rgb( from var( --color-neutral-800 ) r g b / 50% ); --help-text-color: var( --color-neutral-400 ); --table-header-border-color: var( --color-neutral-700 ); --table-cell-border-color: var( --color-neutral-800 ); --card-border-color: var( --color-neutral-700 ); --review-border-color: var( --color-neutral-700 ); --divider-text-color: var( --color-neutral-400 ); --divider-line-color: var( --color-neutral-600 ); }
cnc-page-renderer { display: block; color: var( --container-text-color ); }
cnc-page-renderer .cnc-page-renderer_grid { display: grid; grid-template-columns: repeat( 12 , minmax( 0 , 1fr ) ); align-content: start; gap: var( --grid-gap ); }
cnc-page-renderer .cnc-page-renderer_item { min-width: 0; }
cnc-page-renderer .cnc-page-renderer_item[data-width="1"] { grid-column: span 1 / span 1; }
cnc-page-renderer .cnc-page-renderer_item[data-width="2"] { grid-column: span 2 / span 2; }
cnc-page-renderer .cnc-page-renderer_item[data-width="3"] { grid-column: span 3 / span 3; }
cnc-page-renderer .cnc-page-renderer_item[data-width="4"] { grid-column: span 4 / span 4; }
cnc-page-renderer .cnc-page-renderer_item[data-width="5"] { grid-column: span 5 / span 5; }
cnc-page-renderer .cnc-page-renderer_item[data-width="6"] { grid-column: span 6 / span 6; }
cnc-page-renderer .cnc-page-renderer_item[data-width="7"] { grid-column: span 7 / span 7; }
cnc-page-renderer .cnc-page-renderer_item[data-width="8"] { grid-column: span 8 / span 8; }
cnc-page-renderer .cnc-page-renderer_item[data-width="9"] { grid-column: span 9 / span 9; }
cnc-page-renderer .cnc-page-renderer_item[data-width="10"] { grid-column: span 10 / span 10; }
cnc-page-renderer .cnc-page-renderer_item[data-width="11"] { grid-column: span 11 / span 11; }
cnc-page-renderer .cnc-page-renderer_item[data-width="12"] { grid-column: span 12 / span 12; }
cnc-page-renderer .cnc-page-renderer_form { padding: var( --form-padding ); border: 1px solid var( --form-border-color ); border-radius: var( --form-border-radius ); }
cnc-page-renderer .cnc-page-renderer_form-title { margin-bottom: var( --form-title-margin-bottom ); font-size: var( --form-title-font-size ); font-weight: 600; }
cnc-page-renderer .cnc-page-renderer_actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: var( --actions-gap ); margin-top: var( --actions-margin-top ); }
cnc-page-renderer .cnc-page-renderer_group { display: flex; flex-direction: column; padding: var( --group-padding ); border: 1px solid var( --group-border-color ); border-radius: var( --group-border-radius ); }
cnc-page-renderer .cnc-page-renderer_group-title, cnc-page-renderer .cnc-page-renderer_label { margin-bottom: var( --label-margin-bottom ); color: var( --label-text-color ); font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); }
cnc-page-renderer .cnc-page-renderer_row { display: flex; align-items: flex-start; gap: var( --row-gap ); padding: var( --row-padding ); border-radius: var( --row-border-radius ); background: var( --row-bg ); }
cnc-page-renderer .cnc-page-renderer_error { margin-top: 0.25rem; color: var( --error-text-color ); font-size: var( --error-font-size ); }
cnc-page-renderer .cnc-page-renderer_help { margin-top: 0.25rem; color: var( --help-text-color ); font-size: var( --help-font-size ); }
cnc-page-renderer .cnc-page-renderer_table { width: 100%; font-size: var( --table-font-size ); text-align: left; }
cnc-page-renderer .cnc-page-renderer_table th { padding: var( --cell-padding ); border-bottom: 1px solid var( --table-header-border-color ); font-weight: 600; }
cnc-page-renderer .cnc-page-renderer_table td { padding: var( --cell-padding ); border-bottom: 1px solid var( --table-cell-border-color ); }
cnc-page-renderer .cnc-page-renderer_cards { display: grid; grid-template-columns: repeat( 1 , minmax( 0 , 1fr ) ); }
@media (width >= 40rem) {
cnc-page-renderer .cnc-page-renderer_cards { grid-template-columns: repeat( 2 , minmax( 0 , 1fr ) ); }
}
@media (width >= 64rem) {
cnc-page-renderer .cnc-page-renderer_cards { grid-template-columns: repeat( 3 , minmax( 0 , 1fr ) ); }
}
cnc-page-renderer .cnc-page-renderer_card { display: flex; flex-direction: column; gap: var( --card-gap ); padding: var( --card-padding ); border: 1px solid var( --card-border-color ); border-radius: var( --card-border-radius ); }
cnc-page-renderer .cnc-page-renderer_review { padding: var( --review-padding ); border: 1px solid var( --review-border-color ); border-radius: var( --group-border-radius ); }
cnc-page-renderer .cnc-page-renderer_review-row { display: grid; grid-template-columns: minmax( 0 , 1fr ) minmax( 0 , 2fr ); column-gap: var( --review-row-gap-x ); padding: var( --review-row-padding-y ) 0; }
cnc-page-renderer .cnc-page-renderer_heading { font-weight: 600; }
cnc-page-renderer .cnc-page-renderer_heading-2 { font-size: var( --heading-2-font-size ); }
cnc-page-renderer .cnc-page-renderer_heading-3 { font-size: var( --heading-3-font-size ); }
cnc-page-renderer .cnc-page-renderer_heading-4 { font-size: var( --heading-4-font-size ); }
cnc-page-renderer .cnc-page-renderer_divider { display: flex; align-items: center; gap: var( --divider-gap ); padding: var( --divider-padding-y ) 0; color: var( --divider-text-color ); font-size: var( --divider-font-size ); font-weight: 500; letter-spacing: 0.025em; text-transform: uppercase; }
cnc-page-renderer .cnc-page-renderer_divider::before, cnc-page-renderer .cnc-page-renderer_divider::after { content: ""; flex: 1; height: 1px; background: var( --divider-line-color ); }
}
@layer widgets {
cnc-pagination { --container-border-radius: 0; --select-border-radius: var( --radius-md , 0.375rem ); }
cnc-pagination { --container-padding: 0.75rem 1rem; --nav-gap: 0.5rem; --text-font-size: 0.875rem; --select-font-size: 0.875rem; --select-padding: 0.375rem 0.5rem; }
cnc-pagination { --container-bg: white; --container-border-color: var( --color-neutral-200 ); --container-border-width: 0; --container-border-top-width: 1px; --text-color: var( --color-neutral-600 ); --text-font-weight-bold: 500; --select-bg: white; --select-border-color: var( --color-neutral-300 ); --select-text-color: var( --color-neutral-700 ); --select-shadow-focus: 0 0 0 2px var( --color-primary-500 ); }
.dark cnc-pagination { --container-bg: var( --color-neutral-800 ); --container-border-color: var( --color-neutral-700 ); --text-color: var( --color-neutral-300 ); --select-bg: var( --color-neutral-700 ); --select-border-color: var( --color-neutral-600 ); --select-text-color: var( --color-neutral-200 ); }
cnc-pagination .cnc-pagination_container { padding: var( --container-padding ); border: var( --container-border-width ) solid var( --container-border-color ); border-top-width: var( --container-border-top-width ); border-radius: var( --container-border-radius ); background: var( --container-bg ); }
cnc-pagination .cnc-pagination_text { margin: 0; color: var( --text-color ); font-size: var( --text-font-size ); }
cnc-pagination .cnc-pagination_text .bold { font-weight: var( --text-font-weight-bold ); }
cnc-pagination .cnc-pagination_nav { gap: var( --nav-gap ); }
cnc-pagination .cnc-pagination_select { padding: var( --select-padding ); border: 1px solid var( --select-border-color ); border-radius: var( --select-border-radius ); background: var( --select-bg ); color: var( --select-text-color ); font-size: var( --select-font-size ); cursor: pointer; }
cnc-pagination .cnc-pagination_select:focus { outline: none; box-shadow: var( --select-shadow-focus ); }
}
@layer widgets {
cnc-panel:where([shape="rounded"], :not([shape])) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-panel:where([shape="soft"]) { --shape-border-radius: var( --shape-border-radius-soft , var( --radius-md , 0.375rem ) ); }
cnc-panel:where([shape="square"], [shape="rectangle"]) { --shape-border-radius: 0; }
cnc-panel { --container-margin-y: calc( var( --spacing ) * 4 ); --container-bg: transparent; --container-bg-well: rgb( 241 245 249 / 0.5 ); --container-border-color: var( --color-slate-300 ); --container-border-radius: var( --shape-border-radius , 0 ); --container-shadow: 0 1px 3px rgb( 0 0 0 / 0.1 ); --header-padding-x: calc( var( --spacing ) * 6 ); --header-padding-y: calc( var( --spacing ) * 5 ); --header-gap: calc( var( --spacing ) * 4 ); --header-text-color: var( --color-slate-800 ); --title-font-size: var( --text-xl ); --title-line-height: var( --text-xl--line-height ); --title-font-weight: var( --font-weight-bold ); --body-padding-x: calc( var( --spacing ) * 6 ); --body-padding-top: 0; --body-padding-bottom: calc( var( --spacing ) * 4 ); --body-text-color: var( --color-slate-800 ); --footer-padding-x: calc( var( --spacing ) * 6 ); --footer-padding-y: calc( var( --spacing ) * 4 ); }
.dark cnc-panel { --container-bg: transparent; --container-bg-well: color-mix( in oklab , var( --color-slate-50 ) 5% , transparent ); --container-border-color: var( --color-slate-700 ); --header-text-color: var( --color-slate-200 ); --body-text-color: var( --color-slate-200 ); }
cnc-panel { display: block; }
cnc-panel .cnc-panel_container { margin-block: var( --container-margin-y ); background: var( --container-bg ); border: 1px solid var( --container-border-color ); border-radius: var( --container-border-radius ); box-shadow: var( --container-shadow ); }
cnc-panel .cnc-panel_header { padding: var( --header-padding-y ) var( --header-padding-x ); color: var( --header-text-color ); }
cnc-panel .cnc-panel_title { font-size: var( --title-font-size ); line-height: var( --title-line-height ); font-weight: var( --title-font-weight ); }
cnc-panel .cnc-panel_body { padding: var( --body-padding-top ) var( --body-padding-x ) var( --body-padding-bottom ); color: var( --body-text-color ); }
cnc-panel .cnc-panel_footer { padding: var( --footer-padding-y ) var( --footer-padding-x ); }
cnc-panel .cnc-panel_container[data-well="true"] { background: var( --container-bg-well , var( --container-bg ) ); }
}
@layer widgets {
cnc-pdf-viewer { height: 36rem; min-width: 0; }
cnc-pdf-viewer:fullscreen { translate: none !important; rotate: none !important; scale: none !important; }
cnc-pdf-viewer .pdf-viewer { height: 100%; }
cnc-pdf-viewer .pdf-viewer:focus { outline: none; }
cnc-pdf-viewer .pdf-viewer:focus-visible { outline: 2px solid var( --color-primary-500 , #3b82f6 ); outline-offset: -2px; }
cnc-pdf-viewer.cnc-pdf-viewer_fullscreen .pdf-viewer { border-radius: 0; border: 0; }
cnc-pdf-viewer .control-box:focus-within { border-color: var( --color-primary-400 , #60a5fa ); }
cnc-pdf-viewer .page-surface canvas, cnc-pdf-viewer .thumb-surface canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
cnc-pdf-viewer .textLayer { --min-font-size: 1; --text-scale-factor: calc( var( --total-scale-factor ) * var( --min-font-size ) ); --min-font-size-inv: calc( 1 / var( --min-font-size ) ); --scale-round-x: 1px; --scale-round-y: 1px; color-scheme: only light; position: absolute; inset: 0; overflow: clip; text-align: initial; line-height: 1; letter-spacing: normal; word-spacing: normal; text-size-adjust: none; forced-color-adjust: none; transform-origin: 0 0; caret-color: CanvasText; z-index: 0; }
cnc-pdf-viewer .textLayer :is(span, br) { color: transparent; position: absolute; white-space: pre; cursor: text; transform-origin: 0% 0%; user-select: text; }
cnc-pdf-viewer .textLayer > :not(.markedContent), cnc-pdf-viewer .textLayer .markedContent span:not(.markedContent) { --font-height: 0; --scale-x: 1; --rotate: 0deg; z-index: 1; font-size: calc( var( --text-scale-factor ) * var( --font-height ) ); transform: rotate( var( --rotate ) ) scaleX( var( --scale-x ) ) scale( var( --min-font-size-inv ) ); }
cnc-pdf-viewer .textLayer .markedContent { display: contents; }
cnc-pdf-viewer .textLayer span[role="img"] { user-select: none; cursor: default; }
cnc-pdf-viewer .textLayer ::selection { background: color-mix( in srgb , AccentColor , transparent 50% ); color: transparent; }
cnc-pdf-viewer .textLayer br::selection { background: transparent; }
cnc-pdf-viewer .textLayer .endOfContent { display: block; position: absolute; inset: 100% 0 0; z-index: 0; cursor: default; user-select: none; }
cnc-pdf-viewer .textLayer.selecting .endOfContent { top: 0; }
cnc-pdf-viewer .textLayer[data-main-rotation="90"] { transform: rotate( 90deg ) translateY( -100% ); }
cnc-pdf-viewer .textLayer[data-main-rotation="180"] { transform: rotate( 180deg ) translate( -100% , -100% ); }
cnc-pdf-viewer .textLayer[data-main-rotation="270"] { transform: rotate( 270deg ) translateX( -100% ); }
cnc-pdf-viewer .text-select-off .textLayer { pointer-events: none; }
cnc-pdf-viewer .text-select-off .textLayer :is(span, br) { user-select: none; cursor: default; }
cnc-pdf-viewer .textLayer .highlight { margin: -1px; padding: 1px; border-radius: 4px; background-color: color-mix( in srgb , var( --color-yellow-400 , #facc15 ) , transparent 55% ); }
cnc-pdf-viewer .textLayer .highlight.appended { position: initial; }
cnc-pdf-viewer .textLayer .highlight.begin { border-radius: 4px 0 0 4px; }
cnc-pdf-viewer .textLayer .highlight.end { border-radius: 0 4px 4px 0; }
cnc-pdf-viewer .textLayer .highlight.middle { border-radius: 0; }
cnc-pdf-viewer .textLayer .highlight.selected { background-color: color-mix( in srgb , var( --color-orange-500 , #f97316 ) , transparent 45% ); }
cnc-pdf-viewer .highlight-flash { animation: cnc-pdf-viewer-cnc-pdf-flash 0.8s ease-out; }
@keyframes cnc-pdf-viewer-cnc-pdf-flash {
  50% { filter: opacity( 0.5 ); }
}
cnc-pdf-viewer .control-box { height: 1.75rem; }
cnc-pdf-viewer .print-button_printing cnc-icon svg { animation: cnc-pdf-viewer-cnc-pdf-spin 0.8s linear infinite; }
@keyframes cnc-pdf-viewer-cnc-pdf-spin {
  to { rotate: 360deg; }
}
cnc-pdf-viewer .outline-view .tree-row.active { background-color: var(--color-neutral-200); font-weight: var(--font-weight-bold); color: var(--color-primary-700); }
.dark cnc-pdf-viewer .outline-view .tree-row.active { background-color: var(--color-neutral-700); color: var(--color-primary-300); }
cnc-pdf-viewer .zoom-select { display: flex; width: fit-content; }
cnc-pdf-viewer .control-box .zoom-select { --option-padding-x: 0.75rem; --option-padding-y: 0.5rem; }
cnc-pdf-viewer .control-box input { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; font: inherit; height: 1rem; line-height: 1rem; }
cnc-pdf-viewer .pageView::-webkit-scrollbar { width: 14px; height: 14px; }
cnc-pdf-viewer .thumbView::-webkit-scrollbar { width: 8px; }
cnc-pdf-viewer .pageView::-webkit-scrollbar-track, cnc-pdf-viewer .thumbView::-webkit-scrollbar-track { background: transparent; }
cnc-pdf-viewer .pageView::-webkit-scrollbar-thumb, cnc-pdf-viewer .thumbView::-webkit-scrollbar-thumb { min-height: 48px; border: 2px solid transparent; border-radius: 9999px; background: #94a3b8 padding-box; }
cnc-pdf-viewer .pageView::-webkit-scrollbar-thumb { border-width: 3px; }
cnc-pdf-viewer .pageView::-webkit-scrollbar-thumb:hover, cnc-pdf-viewer .thumbView::-webkit-scrollbar-thumb:hover { background-color: #64748b; }
.dark cnc-pdf-viewer .pageView::-webkit-scrollbar-thumb, .dark cnc-pdf-viewer .thumbView::-webkit-scrollbar-thumb { background-color: #475569; }
.dark cnc-pdf-viewer .pageView::-webkit-scrollbar-thumb:hover, .dark cnc-pdf-viewer .thumbView::-webkit-scrollbar-thumb:hover { background-color: #64748b; }
@supports not selector(::-webkit-scrollbar) {
cnc-pdf-viewer .pageView, cnc-pdf-viewer .thumbView { scrollbar-color: #94a3b8 transparent; }
cnc-pdf-viewer .thumbView { scrollbar-width: thin; }
.dark cnc-pdf-viewer .pageView, .dark cnc-pdf-viewer .thumbView { scrollbar-color: #475569 transparent; }
}
cnc-pdf-viewer .bookmark-flag { position: absolute; left: calc( 100% - 0.375rem ); z-index: 20; display: flex; align-items: center; max-width: 10rem; height: 1.125rem; padding: 0 0.5rem 0 0.75rem; border: 0; color: #1f2937; font-size: 0.6875rem; font-weight: 500; line-height: 1; white-space: nowrap; border-radius: 0 3px 3px 0; background: linear-gradient( to right , color-mix( in srgb , var( --flag-color ) 55% , transparent ) 0.375rem , var( --flag-color ) 0.375rem ); box-shadow: 1px 1px 2px rgb( 0 0 0 / 0.2 ); cursor: pointer; transition: translate 0.1s; }
cnc-pdf-viewer .bookmark-flag:hover, cnc-pdf-viewer .bookmark-flag:focus-visible { translate: 2px 0; outline: none; }
cnc-pdf-viewer .bookmark-flag-label { overflow: hidden; text-overflow: ellipsis; }
cnc-pdf-viewer .bookmark-tint { opacity: 0.35; }
cnc-pdf-viewer .bookmark-tint_flash { animation: cnc-pdf-viewer-cnc-pdf-bookmark-flash 1.2s ease-out; }
@keyframes cnc-pdf-viewer-cnc-pdf-bookmark-flash {
  0%, 40% { opacity: 0.6; }
}
cnc-pdf-viewer .thumb-flag { position: absolute; right: 0; width: 4px; height: 6%; min-height: 4px; border-radius: 1px 0 0 1px; }
cnc-pdf-viewer .viewer-popover { position: absolute; z-index: 30; padding: 0.375rem; border: 1px solid var( --color-neutral-200 , #e5e7eb ); border-radius: 0.5rem; background: white; box-shadow: 0 4px 12px rgb( 0 0 0 / 0.15 ); translate: -50% 0; }
cnc-pdf-viewer .bookmark-editor { translate: none; }
cnc-pdf-viewer .selection-actions { display: flex; gap: 0.25rem; max-width: 360px; overflow: hidden; white-space: nowrap; }
.dark cnc-pdf-viewer .viewer-popover { border-color: var( --color-neutral-700 , #374151 ); background: var( --color-neutral-800 , #1f2937 ); }
cnc-pdf-viewer .bookmark-field { width: 100%; padding: 0.25rem 0.5rem; border: 1px solid var( --color-neutral-300 , #d1d5db ); border-radius: 0.375rem; background: transparent; font-size: 0.8125rem; outline: none; }
cnc-pdf-viewer .bookmark-field:focus { border-color: var( --color-primary-500 , #3b82f6 ); }
cnc-pdf-viewer .bookmark-actions { background: var( --color-neutral-200 , #e5e7eb ); box-shadow: -1rem 0 0.75rem -0.25rem var( --color-neutral-200 , #e5e7eb ); }
.dark cnc-pdf-viewer .bookmark-actions { background: var( --color-neutral-700 , #374151 ); box-shadow: -1rem 0 0.75rem -0.25rem var( --color-neutral-700 , #374151 ); }
cnc-pdf-viewer .bookmark-swatch, cnc-pdf-viewer .bookmark-chip { flex: none; width: 0.875rem; height: 0.875rem; border-radius: 3px; background: var( --flag-color ); box-shadow: inset 0 0 0 1px rgb( 0 0 0 / 0.1 ); }
cnc-pdf-viewer .bookmark-swatch { padding: 0; border: 0; cursor: pointer; }
cnc-pdf-viewer .bookmark-swatch:hover, cnc-pdf-viewer .bookmark-swatch_active { outline: 2px solid var( --color-neutral-400 , #9ca3af ); outline-offset: 1px; }
cnc-pdf-viewer .bookmark-filter { display: inline-flex; align-items: center; gap: 0.375rem; padding: 0.125rem 0.5rem; border: 1px solid var( --color-neutral-300 , #d1d5db ); border-radius: 999px; background: transparent; color: inherit; font: inherit; cursor: pointer; }
cnc-pdf-viewer .bookmark-filter:hover, cnc-pdf-viewer .bookmark-filter_on { border-color: var( --color-neutral-400 , #9ca3af ); }
.dark cnc-pdf-viewer .bookmark-filter { border-color: var( --color-neutral-600 , #4b5563 ); }
cnc-pdf-viewer .bookmark-filter .bookmark-chip { width: 0.625rem; height: 0.625rem; }
cnc-pdf-viewer .bookmark-filter-clear { margin-right: -0.125rem; line-height: 1; }
cnc-pdf-viewer .bookmark-filter-clear:hover { color: var( --color-neutral-900 , #111827 ); }
cnc-pdf-viewer .bookmark-filter-menu { display: flex; flex-direction: column; min-width: 9rem; translate: none; }
cnc-pdf-viewer .bookmark-filter-option { display: flex; align-items: center; gap: 0.5rem; padding: 0.25rem 0.5rem; border: 0; border-radius: 0.25rem; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
cnc-pdf-viewer .bookmark-filter-option:hover { background: var( --color-neutral-100 , #f3f4f6 ); }
cnc-pdf-viewer .bookmark-filter-option[aria-checked="true"] { font-weight: 600; }
.dark cnc-pdf-viewer .bookmark-filter-option:hover { background: var( --color-neutral-700 , #374151 ); }
@media (prefers-reduced-motion: reduce) {
cnc-pdf-viewer *, cnc-pdf-viewer *::before, cnc-pdf-viewer *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-plot { --track-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-plot { --controls-gap: 0.5rem; --range-margin-top: 6px; --track-height: 20px; }
cnc-plot { --track-bg: var( --color-neutral-200 ); --fill-bg: var( --color-primary-400 ); --fill-opacity: 0.7; }
cnc-plot { display: block; width: 100%; height: 100%; }
cnc-plot .cnc-plot_controls { gap: var( --controls-gap ); }
cnc-plot .cnc-plot_range { display: none; margin-top: var( --range-margin-top ); }
cnc-plot[control] .cnc-plot_range { display: block; }
cnc-plot .cnc-plot_track { height: var( --track-height ); border-radius: var( --track-border-radius ); background: var( --track-bg ); cursor: crosshair; }
cnc-plot .cnc-plot_fill { top: 0; left: 0%; width: 100%; height: 100%; border-radius: var( --track-border-radius ); background: var( --fill-bg ); opacity: var( --fill-opacity ); }
}
@layer widgets {
cnc-popup[shape="rounded"], cnc-popup:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-popup[shape="pill"] { --shape-border-radius: var( --radius-full , 9999px ); }
cnc-popup[shape="circle"] { --shape-border-radius: 50%; }
cnc-popup[shape="square"], cnc-popup[shape="rectangle"] { --shape-border-radius: 0; }
cnc-popup[size="xxs"] { --content-font-size: 0.6875rem; }
cnc-popup[size="xs"] { --content-font-size: 0.75rem; }
cnc-popup[size="sm"] { --content-font-size: 0.8125rem; }
cnc-popup[size="md"], cnc-popup:not([size]) { --content-font-size: 0.875rem; }
cnc-popup[size="lg"] { --content-font-size: 1rem; }
cnc-popup[size="xl"] { --content-font-size: 1.125rem; }
cnc-popup[size="2xl"] { --content-font-size: 1.25rem; }
cnc-popup { --arrow-border-width: var( --content-border-width , 1px ); --content-border-radius: var( --shape-border-radius , 0 ); --content-border-width: 1px; --content-padding: 0; --popup-transition-duration: 120ms; --popup-transition-timing: ease-out; --popup-transform-origin: center; --popup-translate-y-closed: 0.125rem; --popup-scale-closed: 0.95; border-radius: var( --content-border-radius ); }
cnc-popup:not([kind]), cnc-popup[kind="filled"] { --content-bg: var( --color-neutral-50 , white ); --content-text-color: inherit; --content-border-color: rgb( 0 0 0 / 10% ); --content-shadow: rgba( 0 , 0 , 0 , 0.08 ) 0px 12px 16px -4px , rgba( 0 , 0 , 0 , 0.03 ) 0px 4px 6px -2px , rgba( 0 , 0 , 0 , 0.04 ) 0px 2px 2px -1px; --arrow-bg: var( --content-bg ); --arrow-border-color: var( --content-border-color ); }
.dark cnc-popup:not([kind]), .dark cnc-popup[kind="filled"] { --content-bg: var( --color-neutral-800 , rgb( 23 23 23 ) ); --content-border-color: rgb( 255 255 255 / 20% ); --content-shadow: 0 20px 25px -5px rgb( 0 0 0 / 30% ) , 0 8px 10px -6px rgb( 0 0 0 / 20% ); --arrow-bg: var( --content-bg ); --arrow-border-color: var( --content-border-color ); }
cnc-popup[kind="plain"], cnc-popup[plain="true"], cnc-popup[plain=""] { --content-bg: inherit; --content-text-color: inherit; --content-border-color: rgb( 0 0 0 / 10% ); --content-shadow: rgba( 0 , 0 , 0 , 0.08 ) 0px 12px 16px -4px , rgba( 0 , 0 , 0 , 0.03 ) 0px 4px 6px -2px , rgba( 0 , 0 , 0 , 0.04 ) 0px 2px 2px -1px; --arrow-border-color: var( --content-border-color ); }
.dark cnc-popup[kind="plain"], .dark cnc-popup[plain="true"], .dark cnc-popup[plain=""] { --content-bg: inherit; --content-text-color: inherit; --content-border-color: rgb( 255 255 255 / 20% ); --content-shadow: 0 20px 25px -5px rgb( 0 0 0 / 30% ) ,; }
cnc-popup .cnc-popup_content { padding: var( --content-padding ); color: var( --content-text-color ); background: var( --content-bg ); border: var( --content-border-width ) solid var( --content-border-color , inherit ); border-radius: var( --content-border-radius ); box-shadow: var( --content-shadow ); font-size: var( --content-font-size ); }
cnc-popup .cnc-popup_arrow { z-index: 1; inline-size: 10px; block-size: 10px; background-color: var( --arrow-bg ); border: 0 solid var( --arrow-border-color , inherit ); transform: rotate( 45deg ); }
cnc-popup[kind="plain"] .cnc-popup_arrow, cnc-popup[plain="true"] .cnc-popup_arrow, cnc-popup[plain=""] .cnc-popup_arrow { background-color: var( --arrow-bg , var( --content-bg ) ); }
cnc-popup .cnc-popup_arrow.arrow-bottom { border-top-width: var( --arrow-border-width ); border-left-width: var( --arrow-border-width ); }
cnc-popup .cnc-popup_arrow.arrow-top { border-right-width: var( --arrow-border-width ); border-bottom-width: var( --arrow-border-width ); }
cnc-popup .cnc-popup_arrow.arrow-left { border-top-width: var( --arrow-border-width ); border-right-width: var( --arrow-border-width ); }
cnc-popup .cnc-popup_arrow.arrow-right { border-bottom-width: var( --arrow-border-width ); border-left-width: var( --arrow-border-width ); }
cnc-popup .cnc-popup_wrapper.open { visibility: visible; opacity: 1; pointer-events: auto; transform: translate3d( 0 , 0 , 0 ) scale3d( 1 , 1 , 1 ) rotate( 0deg ); }
cnc-popup .cnc-popup_wrapper.close { visibility: visible; opacity: 0; pointer-events: none; transform: translate3d( 0 , var( --popup-translate-y-closed ) , 0 ) scale3d( var( --popup-scale-closed ) , var( --popup-scale-closed ) , var( --popup-scale-closed ) ) rotate( 0deg ); animation: cnc-popup-cnc-popup-hide 0s var( --popup-transition-duration ) forwards; }
cnc-popup .cnc-popup_wrapper { transform-origin: var( --popup-transform-origin ); transition: opacity var( --popup-transition-duration ) var( --popup-transition-timing ) , transform var( --popup-transition-duration ) var( --popup-transition-timing ); will-change: opacity , transform; }
cnc-popup .cnc-popup_wrapper.open { animation: none; }
cnc-popup[animation="none"] { --popup-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-popup { --popup-transition-duration: 0ms; }
}
@keyframes cnc-popup-cnc-popup-hide {
  to { visibility: hidden; }
}
}
@layer widgets {
cnc-print { display: inline-block; }
}
@layer widgets {
cnc-processing { --overlay-gap: 1rem; --spinner-size: 3rem; --title-font-size: 1.25rem; --content-font-size: 0.875rem; --content-width: 33%; }
cnc-processing { --overlay-bg: rgb( 255 255 255 / 75% ); --spinner-color: var( --color-primary-500 ); --spinner-duration: 1s; --title-text-color: var( --color-neutral-900 ); --title-font-weight: 600; --content-text-color: var( --color-neutral-900 ); }
.dark cnc-processing { --overlay-bg: rgb( from var( --color-neutral-700 ) r g b / 75% ); --title-text-color: white; --content-text-color: white; }
cnc-processing { display: block; }
cnc-processing .cnc-processing_overlay { height: 100vh; gap: var( --overlay-gap ); background: var( --overlay-bg ); }
cnc-processing .cnc-processing_spinner { width: var( --spinner-size ); height: var( --spinner-size ); color: var( --spinner-color ); }
cnc-processing .cnc-processing_title { color: var( --title-text-color ); font-size: var( --title-font-size ); font-weight: var( --title-font-weight ); }
cnc-processing .cnc-processing_content { width: var( --content-width ); color: var( --content-text-color ); font-size: var( --content-font-size ); }
cnc-processing .cnc-processing_spinner { animation: cnc-processing-spin var( --spinner-duration ) linear infinite; }
@media (prefers-reduced-motion: reduce) {
cnc-processing .cnc-processing_spinner { animation-duration: 1.5s; }
}
@keyframes cnc-processing-spin {
  from { transform: rotate( 0deg ); }
  to { transform: rotate( 360deg ); }
}
}
@layer widgets {
cnc-progress-bar { --track-border-radius: var( --radius-lg , 0.5rem ); --indicator-border-radius: 0; }
cnc-progress-bar[size="xs"] { --indicator-height: 0.5rem; }
cnc-progress-bar[size="sm"] { --indicator-height: 0.75rem; }
cnc-progress-bar[size="md"], cnc-progress-bar:not([size]) { --indicator-height: 1rem; }
cnc-progress-bar[size="lg"] { --indicator-height: 1.25rem; }
cnc-progress-bar[size="xl"] { --indicator-height: 1.5rem; }
cnc-progress-bar[size="2xl"] { --indicator-height: 2rem; }
cnc-progress-bar { --label-font-size: 0.75rem; --label-inside-padding-end: 0.25rem; --label-outside-margin-top: 0.25rem; }
cnc-progress-bar { --track-border-width: 1px; --track-border-color: var( --color-neutral-300 ); --track-bg: rgb( from var( --color-neutral-500 ) r g b / 15% ); --track-shadow: 0 4px 6px rgb( 0 0 0 / 5% ); --indicator-bg: var( --color-primary-500 ); --indicator-transition-duration: 0.3s; --label-font-weight: 600; --label-inside-text-color: white; --label-outside-text-color: var( --color-neutral-800 ); }
.dark cnc-progress-bar { --track-border-color: var( --color-neutral-700 ); --track-bg: rgb( from var( --color-neutral-700 ) r g b / 30% ); --track-shadow: 0 4px 6px -1px rgb( 0 0 0 / 10% ) , 0 2px 4px -2px rgb( 0 0 0 / 10% ); --label-outside-text-color: var( --color-neutral-200 ); }
cnc-progress-bar .cnc-progress-bar_track { border: var( --track-border-width ) solid var( --track-border-color ); border-radius: var( --track-border-radius ); background: var( --track-bg ); box-shadow: var( --track-shadow ); }
cnc-progress-bar .cnc-progress-bar_indicator { height: var( --indicator-height ); border-radius: var( --indicator-border-radius ); background: var( --indicator-bg ); transition: width var( --indicator-transition-duration ) ease; }
cnc-progress-bar .cnc-progress-bar_label-inside { padding-inline-end: var( --label-inside-padding-end ); color: var( --label-inside-text-color ); font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); }
cnc-progress-bar .cnc-progress-bar_label-outside { margin-top: var( --label-outside-margin-top ); color: var( --label-outside-text-color ); font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); }
cnc-progress-bar .cnc-progress-bar_indicator.indeterminate { width: 100%; transition: none; background-image: linear-gradient( 45deg , rgba( 255 , 255 , 255 , 0.25 ) 25% , transparent 25% , transparent 50% , rgba( 255 , 255 , 255 , 0.25 ) 50% , rgba( 255 , 255 , 255 , 0.25 ) 75% , transparent 75% , transparent ); background-size: 1rem 1rem; animation: cnc-progress-bar-stripes 1s linear infinite; }
@keyframes cnc-progress-bar-stripes {
  from { background-position: 1rem 0; }
  to { background-position: 0 0; }
}
@media (prefers-reduced-motion: reduce) {
cnc-progress-bar .cnc-progress-bar_indicator.indeterminate { animation: none; }
}
@media (forced-colors: active) {
cnc-progress-bar .cnc-progress-bar_track { border: 1px solid ButtonText; }
cnc-progress-bar .cnc-progress-bar_indicator { background: Highlight; forced-color-adjust: none; }
}
}
@layer widgets {
cnc-qr { display: inline-block; }
}
@layer widgets {
cnc-qr-scanner { --viewfinder-border-radius: 10px; }
cnc-qr-scanner video, cnc-qr-scanner #qr-shaded-region { border-radius: var( --viewfinder-border-radius ) !important; }
}
@layer widgets {
cnc-radio { --shape-border-radius: 50%; }
cnc-radio[size="xxs"] { --control-size: 0.75rem; --indicator-size: 0.25rem; --item-gap: 0.25rem; --label-font-size: 0.75rem; --label-line-height: 1rem; }
cnc-radio[size="xs"] { --control-size: 0.875rem; --indicator-size: 0.3125rem; --item-gap: 0.25rem; --label-font-size: 0.875rem; --label-line-height: 1.25rem; }
cnc-radio[size="sm"] { --control-size: 1rem; --indicator-size: 0.375rem; --item-gap: 0.375rem; --label-font-size: 0.875rem; --label-line-height: 1.25rem; }
cnc-radio[size="md"], cnc-radio:not([size]) { --control-size: 1rem; --indicator-size: 0.375rem; --item-gap: 0.5rem; --label-font-size: 1rem; --label-line-height: 1.5rem; }
cnc-radio[size="lg"] { --control-size: 1.25rem; --indicator-size: 0.5rem; --item-gap: 0.5rem; --label-font-size: 1rem; --label-line-height: 1.5rem; }
cnc-radio[size="xl"] { --control-size: 1.25rem; --indicator-size: 0.5rem; --item-gap: 0.625rem; --label-font-size: 1.125rem; --label-line-height: 1.75rem; }
cnc-radio[size="2xl"] { --control-size: 1.5rem; --indicator-size: 0.625rem; --item-gap: 0.75rem; --label-font-size: 1.25rem; --label-line-height: 2rem; }
cnc-radio { --control-accent-color: var( --color-500 , var( --color-neutral-500 , #737373 ) ); --control-bg: var( --color-neutral-0 , white ); --control-bg-checked: var( --control-accent-color ); --control-border-color: var( --color-neutral-300 , #d4d4d4 ); --control-border-color-checked: var( --control-accent-color ); --control-border-radius: var( --shape-border-radius ); --control-border-width: 1px; --control-indicator-color: white; --control-indicator-size: var( --indicator-size , 0.375rem ); --control-focus-color: var( --color-500 , var( --color-primary-500 ) ); --control-focus-shadow: 0 0 0 2px var( --control-focus-color ); --control-click-scale: 0.875; --control-transition-duration: 150ms; --control-transition-timing: ease; --label-text-color: var( --color-neutral-700 , #262626 ); --label-description-color: var( --color-neutral-600 , #525252 ); --label-font-family: inherit; --label-font-weight: inherit; --label-description-font-size: 0.875em; --label-description-line-height: 1.4; --label-description-gap: 0.125rem; --container-opacity-disabled: 0.6; }
.dark cnc-radio { --control-bg: var( --color-neutral-950 , black ); --control-border-color: var( --color-neutral-600 , #525252 ); --control-focus-color: var( --color-200 , var( --color-primary-500 ) ); --label-text-color: var( --color-neutral-300 , #d4d4d4 ); --label-description-color: var( --color-neutral-400 , #a3a3a3 ); }
cnc-radio[kind="outline"] { --control-bg-checked: var( --control-bg ); --control-indicator-color: var( --control-accent-color ); --control-indicator-size: calc( var( --indicator-size ) * 1.5 ); }
cnc-radio[kind="filled"] { --label-text-color: var( --color-700 , var( --color-neutral-800 ) ); }
.dark cnc-radio[kind="filled"] { --label-text-color: var( --color-600 , var( --color-neutral-500 ) ); }
cnc-radio { color: var( --label-text-color ); display: inline-block; }
cnc-radio .cnc-radio_container { gap: var( --item-gap ); }
cnc-radio .cnc-radio_control { -webkit-appearance: none; appearance: none; box-sizing: border-box; display: grid; place-content: center; inline-size: var( --control-size ); block-size: var( --control-size ); margin: 0; margin-block-start: calc( ( var( --label-line-height ) - var( --control-size ) ) / 2 ); background-color: var( --control-bg ); border: var( --control-border-width ) solid var( --control-border-color ); border-radius: var( --control-border-radius ); transition: background-color var( --control-transition-duration ) var( --control-transition-timing ) , border-color var( --control-transition-duration ) var( --control-transition-timing ) , box-shadow var( --control-transition-duration ) var( --control-transition-timing ) , transform var( --control-transition-duration ) var( --control-transition-timing ); }
cnc-radio .cnc-radio_control::after { content: ""; width: var( --control-indicator-size ); height: var( --control-indicator-size ); background-color: var( --control-indicator-color ); border-radius: 50%; opacity: 0; transform: scale( 0.5 ); transition: background-color var( --control-transition-duration ) var( --control-transition-timing ) , opacity var( --control-transition-duration ) var( --control-transition-timing ) , transform var( --control-transition-duration ) var( --control-transition-timing ); }
cnc-radio .cnc-radio_label { font-family: var( --label-font-family ); font-size: var( --label-font-size ); line-height: var( --label-line-height ); }
cnc-radio .cnc-radio_text { font-weight: var( --label-font-weight ); }
cnc-radio .cnc-radio_description { color: var( --label-description-color ); font-size: var( --label-description-font-size ); font-weight: 400; line-height: var( --label-description-line-height ); margin-block-start: var( --label-description-gap ); }
cnc-radio .cnc-radio_control:focus-visible { outline: none; box-shadow: var( --control-focus-shadow ); }
cnc-radio .cnc-radio_control:checked { background-color: var( --control-bg-checked ); border-color: var( --control-border-color-checked ); }
cnc-radio .cnc-radio_control:checked::after { opacity: 1; transform: scale( 1 ); }
cnc-radio .cnc-radio_control:active { transform: scale( var( --control-click-scale ) ); }
cnc-radio.disabled { cursor: not-allowed; opacity: var( --container-opacity-disabled ); }
cnc-radio.disabled .cnc-radio_container, cnc-radio.disabled .cnc-radio_control { cursor: not-allowed; }
cnc-radio.readonly { pointer-events: none; }
cnc-radio[animation="none"] { --control-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-radio { --control-transition-duration: 0ms; }
}
@media (forced-colors: active) {
cnc-radio .cnc-radio_control { appearance: auto; }
cnc-radio .cnc-radio_control::after { content: none; }
}
}
@layer widgets {
cnc-radios[size="xxs"], cnc-radios[size="xs"] { --list-gap-vertical: 0.25rem; }
cnc-radios[size="sm"], cnc-radios[size="md"], cnc-radios:not([size]) { --list-gap-vertical: 0.375rem; }
cnc-radios[size="lg"] { --list-gap-vertical: 0.5rem; }
cnc-radios[size="xl"] { --list-gap-vertical: 0.625rem; }
cnc-radios[size="2xl"] { --list-gap-vertical: 0.75rem; }
cnc-radios { --list-gap-horizontal: 1rem; --container-opacity-disabled: 0.6; }
cnc-radios { display: flex; flex-direction: column; gap: var( --list-gap-vertical ); }
cnc-radios.horizontal, cnc-radios[horizontal] { flex-direction: row; flex-wrap: wrap; align-items: center; column-gap: var( --list-gap-horizontal ); }
cnc-radios.disabled { cursor: not-allowed; opacity: var( --container-opacity-disabled ); }
cnc-radios .cnc-radios_item.disabled { opacity: 1; }
cnc-radios.readonly { pointer-events: none; }
}
@layer widgets {
cnc-range { --track-border-radius: var( --radius-DEFAULT , 0.25rem ); --thumb-border-radius: var( --radius-full , 9999px ); --tooltip-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-range { --wrapper-padding-y: 0.75rem; --track-height: 0.5rem; --thumb-size: 1.25rem; --tooltip-padding: 0.25rem 0.5rem; --tooltip-margin-bottom: 0.25rem; --tooltip-font-size: 0.75rem; --labels-height: 1rem; --labels-margin-top: 0.5rem; --labels-font-size: 0.75rem; }
cnc-range { --track-bg: var( --color-neutral-300 ); --fill-bg: var( --color-neutral-400 ); --thumb-bg: var( --color-neutral-300 ); --thumb-border-width: 0; --thumb-border-color: transparent; --thumb-shadow: none; --thumb-shadow-focus: 0 0 0 4px rgb( from var( --color-primary-500 ) r g b / 35% ); --tooltip-bg: var( --color-neutral-900 ); --tooltip-text-color: white; --tooltip-transition-duration: 150ms; --labels-text-color: var( --color-neutral-500 ); --container-opacity-disabled: var( --range-opacity-disabled , 0.6 ); }
cnc-range[kind="primary"] { --fill-bg: var( --color-primary-500 ); --thumb-bg: var( --color-primary-500 ); }
cnc-range[kind="danger"] { --fill-bg: var( --color-danger-500 ); --thumb-bg: var( --color-danger-500 ); }
cnc-range[kind="success"] { --fill-bg: var( --color-success-500 ); --thumb-bg: var( --color-success-500 ); }
cnc-range[kind="warning"] { --fill-bg: var( --color-warning-500 ); --thumb-bg: var( --color-warning-500 ); }
cnc-range[kind="info"] { --fill-bg: var( --color-info-500 ); --thumb-bg: var( --color-info-500 ); }
.dark cnc-range { --track-bg: var( --color-neutral-600 ); --tooltip-bg: var( --color-neutral-100 ); --tooltip-text-color: var( --color-neutral-900 ); --labels-text-color: var( --color-neutral-400 ); }
cnc-range { display: block; width: 100%; user-select: none; }
cnc-range .cnc-range_wrapper { padding: var( --wrapper-padding-y ) 0; }
cnc-range .cnc-range_track { height: var( --track-height ); border-radius: var( --track-border-radius ); background: var( --track-bg ); }
cnc-range .cnc-range_fill { border-radius: var( --track-border-radius ); background: var( --fill-bg ); }
cnc-range .cnc-range_thumb { top: 50%; width: var( --thumb-size ); height: var( --thumb-size ); border: var( --thumb-border-width ) solid var( --thumb-border-color ); border-radius: var( --thumb-border-radius ); background: var( --thumb-bg ); box-shadow: var( --thumb-shadow ); transform: translate( -50% , -50% ); }
cnc-range .cnc-range_tooltip { bottom: 100%; left: 50%; margin-bottom: var( --tooltip-margin-bottom ); padding: var( --tooltip-padding ); border-radius: var( --tooltip-border-radius ); background: var( --tooltip-bg ); color: var( --tooltip-text-color ); font-size: var( --tooltip-font-size ); opacity: 0; transform: translateX( -50% ); transition: opacity var( --tooltip-transition-duration ); }
cnc-range .cnc-range_labels { height: var( --labels-height ); margin-top: var( --labels-margin-top ); color: var( --labels-text-color ); font-size: var( --labels-font-size ); }
cnc-range .cnc-range_label-value { transform: translateX( -50% ); }
cnc-range .cnc-range_thumb:hover .cnc-range_tooltip, cnc-range .cnc-range_thumb.dragging .cnc-range_tooltip { opacity: 1; }
cnc-range .cnc-range_thumb.dragging { cursor: grabbing; }
cnc-range .cnc-range_thumb:focus-visible { box-shadow: var( --thumb-shadow-focus ); outline: 2px solid var( --color-primary-500 ); outline-offset: 2px; }
cnc-range.disabled { cursor: not-allowed; opacity: var( --container-opacity-disabled ); }
cnc-range.readonly { cursor: default; }
cnc-range.disabled .cnc-range_wrapper, cnc-range.readonly .cnc-range_wrapper { pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
cnc-range *, cnc-range *::before, cnc-range *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
@media (forced-colors: active) {
cnc-range .cnc-range_track { border: 1px solid ButtonText; }
cnc-range .cnc-range_fill { background: Highlight; forced-color-adjust: none; }
cnc-range .cnc-range_thumb { border: 2px solid ButtonText; background: ButtonFace; }
}
}
@layer widgets {
cnc-rating { --container-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-rating { --star-gap: 0.125rem; }
cnc-rating { --container-shadow-focus: 0 0 0 2px rgb( from var( --color-primary-500 ) r g b / 50% ); --container-opacity-disabled: 0.5; --symbol-color: var( --color-neutral-300 ); --symbol-color-active: var( --color-primary-600 ); --star-transition-duration: 0.15s; }
.dark cnc-rating { --symbol-color: var( --color-neutral-600 ); }
cnc-rating { display: inline-flex; }
cnc-rating .cnc-rating_container { border-radius: var( --container-border-radius ); outline: none; touch-action: none; }
cnc-rating .cnc-rating_symbols { line-height: 0; }
cnc-rating .cnc-rating_symbols.background { color: var( --symbol-color ); }
cnc-rating .cnc-rating_symbols.foreground { color: var( --symbol-color-active ); }
cnc-rating .cnc-rating_star { margin-inline-start: var( --star-gap ); transition: transform var( --star-transition-duration ); }
cnc-rating .cnc-rating_container:not(.disabled):not(.readonly) { cursor: pointer; }
cnc-rating .cnc-rating_container:focus-visible { box-shadow: var( --container-shadow-focus ); }
cnc-rating .cnc-rating_container.disabled { opacity: var( --container-opacity-disabled ); cursor: not-allowed; }
cnc-rating .cnc-rating_container.readonly { cursor: default; }
@media (prefers-reduced-motion: reduce) {
cnc-rating *, cnc-rating *::before, cnc-rating *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
@media (forced-colors: active) {
cnc-rating .cnc-rating_symbols.foreground { forced-color-adjust: none; color: Highlight; }
}
}
@layer widgets {
cnc-scrollx { --header-margin-bottom: 0.5rem; --arrows-gap: 0.5rem; --content-gap: 0.75rem; --content-padding: 0.25rem; }
cnc-scrollx { --title-text-color: var( --color-neutral-800 ); --title-font-weight: 600; }
.dark cnc-scrollx { --title-text-color: var( --color-neutral-200 ); }
cnc-scrollx { display: block; }
cnc-scrollx .cnc-scrollx_header { margin-bottom: var( --header-margin-bottom ); }
cnc-scrollx .cnc-scrollx_title { color: var( --title-text-color ); font-weight: var( --title-font-weight ); }
cnc-scrollx .cnc-scrollx_arrows { gap: var( --arrows-gap ); }
cnc-scrollx .cnc-scrollx_content { gap: var( --content-gap ); padding: var( --content-padding ); scrollbar-width: none; scroll-behavior: smooth; }
cnc-scrollx .cnc-scrollx_content::-webkit-scrollbar { display: none; }
cnc-scrollx .cnc-scrollx_content.dragging { cursor: grabbing; user-select: none; scroll-behavior: auto; }
}
@layer widgets {
cnc-search { --control-bg: white; --control-border-color: var( --color-slate-300 ); --control-border-color-focus: var( --color-primary-500 ); --control-ring-color-focus: rgb( from var( --color-primary-500 ) r g b / 30% ); --control-border-radius: var( --radius-md , 0.375rem ); --control-padding-end: 0; --control-transition-duration: 150ms; --icon-padding-start: 0.75rem; --icon-color: var( --color-slate-400 ); --input-padding-y: 0.5rem; --input-padding-x: 0.5rem; --input-font-size: 0.875rem; --input-text-color: var( --color-slate-700 ); --input-placeholder-color: var( --color-slate-400 ); --button-padding-end: 0.5rem; --button-text-color: var( --color-slate-400 ); --button-text-color-hover: var( --color-slate-600 ); --list-margin-top: 0.25rem; --list-max-height: 14rem; --list-bg: white; --list-border-radius: var( --radius-md , 0.375rem ); --list-shadow: 0 10px 15px -3px rgb( 0 0 0 / 0.1 ) , 0 0 0 1px rgb( 0 0 0 / 0.05 ); --list-font-size: 0.875rem; --option-padding-y: 0.5rem; --option-padding-x: 0.75rem; --option-bg-hover: var( --color-slate-100 ); }
.dark cnc-search { --control-bg: var( --color-slate-800 ); --control-border-color: var( --color-slate-600 ); --icon-color: var( --color-slate-500 ); --input-text-color: var( --color-slate-200 ); --input-placeholder-color: var( --color-slate-500 ); --button-text-color-hover: var( --color-slate-300 ); --list-bg: var( --color-slate-700 ); --option-bg-hover: var( --color-slate-600 ); }
cnc-search .cnc-search_control { padding-inline-end: var( --control-padding-end ); background: var( --control-bg ); border: 1px solid var( --control-border-color ); border-radius: var( --control-border-radius ); transition: border-color var( --control-transition-duration ) , box-shadow var( --control-transition-duration ); }
cnc-search .cnc-search_icon { padding-inline-start: var( --icon-padding-start ); color: var( --icon-color ); }
cnc-search .cnc-search_input { padding: var( --input-padding-y ) var( --input-padding-x ); font-size: var( --input-font-size ); color: var( --input-text-color ); }
cnc-search .cnc-search_input::placeholder { color: var( --input-placeholder-color ); }
cnc-search .cnc-search_button { padding-inline-end: var( --button-padding-end ); color: var( --button-text-color ); }
cnc-search .cnc-search_list { margin-top: var( --list-margin-top ); max-height: var( --list-max-height ); background: var( --list-bg ); border-radius: var( --list-border-radius ); box-shadow: var( --list-shadow ); font-size: var( --list-font-size ); }
cnc-search .cnc-search_option { padding: var( --option-padding-y ) var( --option-padding-x ); }
cnc-search .cnc-search_control:focus-within { border-color: var( --control-border-color-focus ); box-shadow: 0 0 0 2px var( --control-ring-color-focus ); }
cnc-search .cnc-search_button:hover { color: var( --button-text-color-hover ); }
cnc-search .cnc-search_option:hover { background: var( --option-bg-hover ); }
@media (prefers-reduced-motion: reduce) {
cnc-search *, cnc-search *::before, cnc-search *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-select:not([size]) { --shape-border-radius-rounded: var( --radius-lg , 0.5rem ); }
cnc-select[shape="rounded"], cnc-select:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-select[shape="pill"] { --shape-border-radius: var( --radius-full , 9999px ); }
cnc-select[shape="square"], cnc-select[shape="rectangle"] { --shape-border-radius: 0; }
cnc-select[size="xxs"] { --trigger-min-height: 1.75rem; --trigger-padding-x: 0.375rem; --trigger-padding-y: 0.25rem; --trigger-gap: 0.25rem; --trigger-font-size: 0.75rem; --trigger-line-height: 1rem; --icon-size: 0.75rem; --option-padding-x: 0.5rem; --option-padding-y: 0.25rem; }
cnc-select[size="xs"] { --trigger-min-height: 2rem; --trigger-padding-x: 0.5rem; --trigger-padding-y: 0.25rem; --trigger-gap: 0.25rem; --trigger-font-size: 0.875rem; --trigger-line-height: 1.25rem; --icon-size: 0.875rem; --option-padding-x: 0.625rem; --option-padding-y: 0.375rem; }
cnc-select[size="sm"] { --trigger-min-height: 2.25rem; --trigger-padding-x: 0.625rem; --trigger-padding-y: 0.25rem; --trigger-gap: 0.375rem; --trigger-font-size: 0.875rem; --trigger-line-height: 1.25rem; --icon-size: 1rem; --option-padding-x: 0.625rem; --option-padding-y: 0.5rem; }
cnc-select[size="md"], cnc-select:not([size]) { --trigger-min-height: 2.5rem; --trigger-padding-x: 0.75rem; --trigger-padding-y: 0.25rem; --trigger-gap: 0.75rem; --trigger-font-size: 1rem; --trigger-line-height: 1.5rem; --icon-size: 1rem; --option-padding-x: 0.75rem; --option-padding-y: 0.5rem; }
cnc-select[size="lg"] { --trigger-min-height: 2.75rem; --trigger-padding-x: 0.875rem; --trigger-padding-y: 0.375rem; --trigger-gap: 0.75rem; --trigger-font-size: 1rem; --trigger-line-height: 1.5rem; --icon-size: 1.25rem; --option-padding-x: 0.875rem; --option-padding-y: 0.625rem; }
cnc-select[size="xl"] { --trigger-min-height: 3rem; --trigger-padding-x: 1rem; --trigger-padding-y: 0.375rem; --trigger-gap: 0.875rem; --trigger-font-size: 1.125rem; --trigger-line-height: 1.75rem; --icon-size: 1.25rem; --option-padding-x: 1rem; --option-padding-y: 0.625rem; }
cnc-select[size="2xl"] { --trigger-min-height: 3.5rem; --trigger-padding-x: 1.25rem; --trigger-padding-y: 0.5rem; --trigger-gap: 1rem; --trigger-font-size: 1.25rem; --trigger-line-height: 2rem; --icon-size: 1.5rem; --option-padding-x: 1.25rem; --option-padding-y: 0.75rem; }
cnc-select { --trigger-bg: white; --trigger-bg-disabled: var( --color-neutral-100 , #f5f5f5 ); --trigger-text-color: var( --color-neutral-700 , #404040 ); --trigger-placeholder-color: var( --color-neutral-400 , #a3a3a3 ); --trigger-border-color: var( --color-neutral-300 , #d4d4d4 ); --trigger-border-color-focus: var( --color-500 , var( --color-primary-500 , #3b82f6 ) ); --trigger-border-color-invalid: var( --color-danger-600 , #dc2626 ); --trigger-border-radius: var( --shape-border-radius , var( --radius-lg , 0.5rem ) ); --trigger-shadow: inset 0 0 0 1px var( --trigger-border-color ) , 0 1px 2px rgb( 0 0 0 / 5% ); --trigger-shadow-focus: inset 0 0 0 2px var( --trigger-border-color-focus ); --trigger-shadow-invalid: inset 0 0 0 2px var( --trigger-border-color-invalid ); --trigger-opacity-disabled: 0.6; --trigger-transition-duration: 150ms; --trigger-transition-timing: ease; --icon-color: var( --color-neutral-500 , #737373 ); --icon-color-hover: var( --color-neutral-700 , #404040 ); --icon-opacity: 0.75; --clear-opacity: 0; --clear-opacity-container-hover: 0.5; --clear-opacity-hover: 1; --tag-bg: var( --color-neutral-100 , #f5f5f5 ); --tag-text-color: var( --color-neutral-700 , #404040 ); --tag-border-radius: 9999px; --tag-padding-x: 0.75rem; --tag-gap: 0.5rem; --dropdown-bg: white; --dropdown-border-color: rgb( 15 23 42 / 10% ); --dropdown-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); --dropdown-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ); --dropdown-max-height: 16rem; --dropdown-font-size: 0.875rem; --option-bg-hover: var( --color-neutral-100 , #f5f5f5 ); --option-bg-focus: var( --color-100 , var( --color-primary-100 , #dbeafe ) ); --option-text-color: var( --color-neutral-900 , #171717 ); --option-text-color-selected: var( --color-600 , var( --color-primary-600 , #2563eb ) ); --option-description-color: var( --color-neutral-500 , #737373 ); --option-count-color: var( --color-neutral-400 , #a3a3a3 ); --option-group-color: var( --option-description-color ); --option-group-font-weight: 800; --option-group-letter-spacing: 0.04em; --option-group-indent: 0.75rem; --entry-border-color: var( --color-neutral-200 , #e5e5e5 ); }
.dark cnc-select { --trigger-bg: var( --color-neutral-900 , #171717 ); --trigger-bg-disabled: var( --color-neutral-800 , #262626 ); --trigger-text-color: var( --color-neutral-200 , #e5e5e5 ); --trigger-placeholder-color: var( --color-neutral-400 , #a3a3a3 ); --trigger-border-color: var( --color-neutral-600 , #525252 ); --trigger-border-color-focus: var( --color-300 , var( --color-primary-300 , #93c5fd ) ); --trigger-border-color-invalid: var( --color-danger-300 , #fca5a5 ); --icon-color: var( --color-neutral-300 , #d4d4d4 ); --icon-color-hover: var( --color-neutral-100 , #f5f5f5 ); --tag-bg: rgb( 163 163 163 / 20% ); --tag-text-color: var( --color-neutral-200 , #e5e5e5 ); --dropdown-bg: var( --color-neutral-800 , #262626 ); --dropdown-border-color: rgb( 255 255 255 / 20% ); --option-bg-hover: var( --color-neutral-900 , #171717 ); --option-bg-focus: var( --color-neutral-900 , #171717 ); --option-text-color: var( --color-neutral-100 , #f5f5f5 ); --option-text-color-selected: var( --color-300 , var( --color-primary-300 , #93c5fd ) ); --option-description-color: var( --color-neutral-400 , #a3a3a3 ); --option-count-color: var( --color-neutral-400 , #a3a3a3 ); --entry-border-color: var( --color-neutral-600 , #525252 ); }
cnc-select[kind="filled"] { --trigger-bg: var( --color-50 , var( --color-neutral-100 , #f5f5f5 ) ); --trigger-border-color: transparent; }
.dark cnc-select[kind="filled"] { --trigger-bg: var( --color-900 , var( --color-neutral-800 , #262626 ) ); --trigger-border-color: transparent; }
cnc-select[kind="plain"], cnc-select[plain] { --trigger-bg: transparent; --trigger-bg-disabled: transparent; --trigger-shadow: none; --trigger-shadow-focus: none; --trigger-shadow-invalid: inset 0 -2px 0 var( --trigger-border-color-invalid ); }
cnc-select { display: inline-block; vertical-align: top; }
cnc-select .cnc-select_container, cnc-select .cnc-select_drop { inline-size: 100%; }
cnc-select .cnc-select_trigger { min-block-size: var( --trigger-min-height ); padding: var( --trigger-padding-y ) var( --trigger-padding-x ); border: 0; border-radius: var( --trigger-border-radius ); background: var( --trigger-bg ); color: var( --trigger-text-color ); box-shadow: var( --trigger-shadow ); font-family: inherit; font-size: var( --trigger-font-size ); line-height: var( --trigger-line-height ); text-align: start; }
cnc-select .cnc-select_trigger-content { gap: var( --trigger-gap ); }
cnc-select .cnc-select_placeholder { color: var( --trigger-placeholder-color ); font-weight: 400; }
cnc-select .cnc-select_selected { min-inline-size: 0; }
cnc-select .cnc-select_selected-text, cnc-select .cnc-select_selected-label { color: var( --trigger-text-color ); }
cnc-select .cnc-select_option-label { color: inherit; }
cnc-select .cnc-select_description, cnc-select .cnc-select_option-description { color: var( --option-description-color ); font-size: 0.75rem; }
cnc-select .cnc-select_count, cnc-select .cnc-select_option-count { color: var( --option-count-color ); }
cnc-select .cnc-select_tag { gap: var( --tag-gap ); padding-inline: var( --tag-padding-x ); border-radius: var( --tag-border-radius ); background: var( --tag-bg ); color: var( --tag-text-color ); font-size: 0.875rem; line-height: 1.5rem; }
cnc-select .cnc-select_icon, cnc-select .cnc-select_caret, cnc-select .cnc-select_arrow { inline-size: var( --icon-size ); block-size: var( --icon-size ); min-inline-size: var( --icon-size ); color: var( --icon-color ); opacity: var( --icon-opacity ); transition: opacity var( --trigger-transition-duration ) var( --trigger-transition-timing ); }
cnc-select .cnc-select_clear { inline-size: var( --icon-size ); block-size: var( --icon-size ); min-inline-size: var( --icon-size ); color: var( --icon-color ); opacity: var( --clear-opacity ); transition: opacity var( --trigger-transition-duration ) var( --trigger-transition-timing ); }
cnc-select .cnc-select_container:hover .cnc-select_clear { opacity: var( --clear-opacity-container-hover ); }
cnc-select .cnc-select_container .cnc-select_clear:hover { opacity: var( --clear-opacity-hover ); }
cnc-select .cnc-select_entry-sizer { position: relative; display: inline-grid; align-items: center; margin: 0; border-block-end: 2px solid var( --entry-border-color ); vertical-align: top; }
cnc-select .cnc-select_entry-sizer::after, cnc-select .cnc-select_entry { grid-area: 1 / 1; min-inline-size: 0; inline-size: auto; margin: 0; padding: var( --trigger-padding-y ) 0; border: 0; border-radius: 0; outline: 0; background: transparent; color: var( --trigger-text-color ); box-shadow: none; font: inherit; resize: none; appearance: none; }
cnc-select .cnc-select_entry-sizer::after { content: attr( data-value ) " "; visibility: hidden; white-space: pre-wrap; }
cnc-select .cnc-select_dropdown { z-index: 51; max-block-size: var( --dropdown-max-height ); border-radius: var( --dropdown-border-radius ); background: var( --dropdown-bg ); box-shadow: var( --dropdown-shadow ) , inset 0 0 0 1px var( --dropdown-border-color ); color: var( --option-text-color ); font-size: var( --dropdown-font-size ); }
cnc-select .cnc-select_search { border-block-end: 1px solid var( --dropdown-border-color ); border-radius: 0; }
cnc-select .cnc-select_search .cnc-input_container, cnc-select .cnc-select_search .cnc-input_container:not(.no-background):not([data-readonly="true"]):not([data-invalid="true"]):focus-within { border-radius: 0; background: transparent; box-shadow: none; }
cnc-select .cnc-select_search:focus-within { border-block-end-color: var( --color-primary-500 ); }
cnc-select .cnc-select_empty, cnc-select .cnc-select_option { padding: var( --option-padding-y ) var( --option-padding-x ); color: var( --option-text-color ); }
cnc-select .cnc-select_group { padding: var( --option-padding-y ) var( --option-padding-x ); color: var( --option-group-color ); font-weight: var( --option-group-font-weight ); letter-spacing: var( --option-group-letter-spacing ); }
cnc-select .cnc-select_option[data-grouped] { padding-inline-start: calc( var( --option-padding-x ) + var( --option-group-indent ) ); }
cnc-select .cnc-select_option-icon { inline-size: var( --option-icon-size , 0.75rem ); block-size: var( --option-icon-size , 0.75rem ); margin-inline-end: 0.5rem; }
cnc-select .cnc-select_options { max-block-size: var( --dropdown-max-height ); }
cnc-select .cnc-select_hint { color: var( --icon-color ); }
cnc-select .cnc-select_trigger:focus-visible, cnc-select .cnc-select_trigger:focus-within { z-index: 10; outline: none; box-shadow: var( --trigger-shadow-focus ); }
cnc-select .cnc-select_trigger[data-invalid="true"] { box-shadow: var( --trigger-shadow-invalid ); }
cnc-select.disabled { cursor: not-allowed; }
cnc-select.disabled .cnc-select_trigger { background: var( --trigger-bg-disabled ); cursor: not-allowed; opacity: var( --trigger-opacity-disabled ); }
cnc-select.readonly .cnc-select_container, cnc-select.disabled .cnc-select_container { pointer-events: none; }
cnc-select .cnc-select_clear:hover, cnc-select .cnc-select_arrow:hover, cnc-select .cnc-select_caret:hover { color: var( --icon-color-hover ); opacity: 1; }
cnc-select .cnc-select_option:hover, cnc-select .cnc-select_empty:hover { background: var( --option-bg-hover ); }
cnc-select .cnc-select_option:focus-visible { outline: 2px solid var( --trigger-border-color-focus , currentColor ); outline-offset: -2px; background: var( --option-bg-focus ); }
cnc-select .cnc-select_option[data-selected="true"] { color: var( --option-text-color-selected ); }
cnc-select[animation] .cnc-select_trigger, cnc-select[animation] .cnc-select_option, cnc-select[animation] .cnc-select_clear, cnc-select[animation] .cnc-select_arrow, cnc-select[animation] .cnc-select_caret { transition: background-color var( --trigger-transition-duration ) var( --trigger-transition-timing ) , color var( --trigger-transition-duration ) var( --trigger-transition-timing ) , box-shadow var( --trigger-transition-duration ) var( --trigger-transition-timing ) , opacity var( --trigger-transition-duration ) var( --trigger-transition-timing ); }
cnc-select[animation="none"] { --trigger-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-select { --trigger-transition-duration: 0ms; }
}
}
@layer widgets {
cnc-select-tree { --trigger-border-radius: var( --radius-md , 0.375rem ); --dropdown-border-radius: var( --radius-md , 0.375rem ); --tag-border-radius: var( --radius-full , 9999px ); }
cnc-select-tree { --trigger-min-height: 2.5rem; --trigger-padding: 0.25rem 0.75rem; --display-gap: 0.25rem; --display-padding-y: 0.125rem; --tag-padding: 0.125rem 0.5rem; --tag-gap: 0.25rem; --tag-font-size: 0.75rem; --control-size: 1rem; --control-margin-start: 0.25rem; --dropdown-margin-top: 0.25rem; --dropdown-font-size: 0.875rem; --search-padding: 0.25rem; --search-input-padding: 0.25rem 0.5rem; --options-max-height: 15rem; --item-padding: 0.5rem 0.75rem; --check-size: 1rem; --toggle-size: 1.25rem; --children-margin-start: 12px; --children-padding-start: 8px; }
cnc-select-tree { --trigger-bg: white; --trigger-ring-color: var( --color-neutral-300 ); --trigger-ring-color-focus: var( --color-primary-500 ); --trigger-shadow: 0 1px 2px 0 rgb( 0 0 0 / 5% ); --trigger-bg-disabled: var( --color-neutral-100 ); --container-opacity-disabled: 0.6; --display-text-color: var( --color-neutral-700 ); --placeholder-text-color: var( --color-neutral-400 ); --placeholder-opacity: 0.5; --tag-bg: var( --color-neutral-100 ); --tag-text-color: var( --color-neutral-700 ); --clear-text-color: var( --color-neutral-500 ); --chevron-text-color: var( --color-neutral-400 ); --dropdown-bg: white; --dropdown-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ) , 0 0 0 1px rgb( 0 0 0 / 10% ); --search-border-color: var( --color-neutral-200 ); --search-text-color: var( --color-neutral-700 ); --search-placeholder-color: var( --color-neutral-400 ); --item-text-color: var( --color-neutral-700 ); --item-bg-hover: var( --color-neutral-100 ); --item-text-color-selected: var( --color-primary-600 ); --item-bg-selected: var( --color-neutral-50 ); --heading-font-weight: 600; --check-color: var( --color-primary-500 ); --toggle-color: var( --color-neutral-400 ); --toggle-color-hover: var( --color-neutral-600 ); --toggle-transition-duration: 0.15s; --children-border-color: var( --color-neutral-200 ); --empty-text-color: var( --color-neutral-500 ); }
.dark cnc-select-tree { --trigger-bg: var( --color-neutral-900 ); --trigger-ring-color: var( --color-neutral-600 ); --trigger-bg-disabled: var( --color-neutral-800 ); --display-text-color: var( --color-neutral-200 ); --tag-bg: rgb( from var( --color-neutral-500 ) r g b / 30% ); --tag-text-color: var( --color-neutral-200 ); --clear-text-color: var( --color-neutral-300 ); --dropdown-bg: var( --color-neutral-700 ); --dropdown-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ) , 0 0 0 1px rgb( 255 255 255 / 20% ); --search-border-color: var( --color-neutral-600 ); --search-text-color: var( --color-neutral-200 ); --item-text-color: var( --color-neutral-200 ); --item-bg-hover: var( --color-neutral-600 ); --item-text-color-selected: var( --color-primary-400 ); --item-bg-selected: rgb( from var( --color-neutral-600 ) r g b / 50% ); --toggle-color-hover: var( --color-neutral-200 ); --children-border-color: var( --color-neutral-600 ); --empty-text-color: var( --color-neutral-300 ); }
cnc-select-tree { display: block; }
cnc-select-tree .cnc-select-tree_trigger { min-height: var( --trigger-min-height ); padding: var( --trigger-padding ); border-radius: var( --trigger-border-radius ); background: var( --trigger-bg ); box-shadow: var( --trigger-shadow ) , inset 0 0 0 1px var( --trigger-ring-color ); }
cnc-select-tree .cnc-select-tree_display { gap: var( --display-gap ); padding: var( --display-padding-y ) 0; color: var( --display-text-color ); }
cnc-select-tree .cnc-select-tree_placeholder { color: var( --placeholder-text-color ); font-weight: 400; opacity: var( --placeholder-opacity ); }
cnc-select-tree .cnc-select-tree_single-text { color: var( --display-text-color ); }
cnc-select-tree .cnc-select-tree_tag { gap: var( --tag-gap ); padding: var( --tag-padding ); border-radius: var( --tag-border-radius ); background: var( --tag-bg ); color: var( --tag-text-color ); font-size: var( --tag-font-size ); }
cnc-select-tree .cnc-select-tree_tag-remove { margin-inline-start: 0.125rem; }
cnc-select-tree .cnc-select-tree_clear, cnc-select-tree .cnc-select-tree_chevron { width: var( --control-size ); height: var( --control-size ); margin-inline-start: var( --control-margin-start ); }
cnc-select-tree .cnc-select-tree_clear { color: var( --clear-text-color ); }
cnc-select-tree .cnc-select-tree_chevron { color: var( --chevron-text-color ); }
cnc-select-tree .cnc-select-tree_dropdown { margin-top: var( --dropdown-margin-top ); border-radius: var( --dropdown-border-radius ); background: var( --dropdown-bg ); box-shadow: var( --dropdown-shadow ); font-size: var( --dropdown-font-size ); }
cnc-select-tree .cnc-select-tree_search-wrap { padding: var( --search-padding ); border-bottom: 1px solid var( --search-border-color ); }
cnc-select-tree .cnc-select-tree_search { padding: var( --search-input-padding ); color: var( --search-text-color ); font-size: var( --dropdown-font-size ); }
cnc-select-tree .cnc-select-tree_search::placeholder { color: var( --search-placeholder-color ); }
cnc-select-tree .cnc-select-tree_options { max-height: var( --options-max-height ); }
cnc-select-tree .cnc-select-tree_item { padding: var( --item-padding ); color: var( --item-text-color ); transition: background-color var( --toggle-transition-duration ) , color var( --toggle-transition-duration ); }
cnc-select-tree .cnc-select-tree_heading { font-weight: var( --heading-font-weight ); }
cnc-select-tree .cnc-select-tree_check { width: var( --check-size ); height: var( --check-size ); margin-inline-start: 0.5rem; color: var( --check-color ); }
cnc-select-tree .cnc-select-tree_toggle { width: var( --toggle-size ); height: var( --toggle-size ); margin-inline-start: 0.5rem; color: var( --toggle-color ); transition: transform var( --toggle-transition-duration ); }
cnc-select-tree .cnc-select-tree_children { margin-inline-start: var( --children-margin-start ); padding-inline-start: var( --children-padding-start ); border-inline-start: 1px solid var( --children-border-color ); }
cnc-select-tree .cnc-select-tree_empty { padding: var( --item-padding ); color: var( --empty-text-color ); }
cnc-select-tree .cnc-select-tree_trigger:focus-within { box-shadow: var( --trigger-shadow ) , 0 0 0 2px var( --trigger-ring-color-focus ); }
cnc-select-tree[disabled] .cnc-select-tree_trigger { background: var( --trigger-bg-disabled ); opacity: var( --container-opacity-disabled ); cursor: not-allowed; }
cnc-select-tree[readonly] .cnc-select-tree_trigger { background: var( --trigger-bg-disabled ); pointer-events: none; }
cnc-select-tree .cnc-select-tree_item:hover { background: var( --item-bg-hover ); }
cnc-select-tree .cnc-select-tree_item[aria-selected="true"] { color: var( --item-text-color-selected ); background: var( --item-bg-selected ); }
cnc-select-tree .cnc-select-tree_toggle:hover { color: var( --toggle-color-hover ); }
cnc-select-tree .cnc-select-tree_node.collapsed > .cnc-select-tree_item .cnc-select-tree_toggle { transform: rotate( -90deg ); }
cnc-select-tree .cnc-select-tree_item:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: -2px; }
@media (prefers-reduced-motion: reduce) {
cnc-select-tree *, cnc-select-tree *::before, cnc-select-tree *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-signature { --wrapper-border-radius: var( --radius-md , 0.375rem ); --tool-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-signature { --toolbar-padding: 0.375rem 0.5rem; --toolbar-gap: 0.25rem; --tool-padding: 0.375rem; --button-font-size: 0.75rem; --divider-height: 1rem; --divider-margin: 0 0.25rem; --text-input-padding: 0.375rem 0.75rem; --text-input-font-size: 0.875rem; --text-apply-padding: 0.25rem 0.5rem; --footer-padding: 0.25rem 0.75rem; --hint-font-size: 0.75rem; }
cnc-signature { --wrapper-bg: white; --wrapper-border-color: var( --color-neutral-300 ); --toolbar-bg: var( --color-neutral-50 ); --toolbar-border-color: var( --color-neutral-200 ); --tool-text-color: var( --color-neutral-500 ); --tool-text-color-hover: var( --color-primary-600 ); --tool-text-color-active: var( --color-primary-600 ); --tool-bg-active: var( --color-primary-100 ); --button-text-color: var( --color-neutral-500 ); --button-text-color-hover: var( --color-primary-600 ); --button-opacity-disabled: 0.3; --divider-bg: var( --color-neutral-300 ); --text-input-text-color: var( --color-neutral-700 ); --text-apply-text-color: var( --color-primary-600 ); --text-apply-text-color-hover: var( --color-primary-500 ); --hint-text-color: var( --color-neutral-400 ); }
.dark cnc-signature { --wrapper-bg: var( --color-neutral-900 ); --wrapper-border-color: var( --color-neutral-600 ); --toolbar-bg: var( --color-neutral-800 ); --toolbar-border-color: var( --color-neutral-700 ); --tool-text-color-active: var( --color-primary-400 ); --tool-bg-active: rgb( from var( --color-primary-900 ) r g b / 30% ); --button-text-color: var( --color-neutral-400 ); --button-text-color-hover: var( --color-primary-400 ); --divider-bg: var( --color-neutral-600 ); --text-input-text-color: var( --color-neutral-200 ); --text-apply-text-color: var( --color-primary-400 ); --hint-text-color: var( --color-neutral-500 ); }
cnc-signature { display: block; }
cnc-signature .cnc-signature_wrapper { border: 1px solid var( --wrapper-border-color ); border-radius: var( --wrapper-border-radius ); background: var( --wrapper-bg ); }
cnc-signature .cnc-signature_toolbar, cnc-signature .cnc-signature_text-bar, cnc-signature .cnc-signature_footer { background: var( --toolbar-bg ); }
cnc-signature .cnc-signature_toolbar { gap: var( --toolbar-gap ); padding: var( --toolbar-padding ); border-bottom: 1px solid var( --toolbar-border-color ); }
cnc-signature .cnc-signature_tool { padding: var( --tool-padding ); border-radius: var( --tool-border-radius ); color: var( --tool-text-color ); cursor: pointer; }
cnc-signature .cnc-signature_button { color: var( --button-text-color ); font-size: var( --button-font-size ); cursor: pointer; }
cnc-signature .cnc-signature_divider { width: 1px; height: var( --divider-height ); margin: var( --divider-margin ); background: var( --divider-bg ); }
cnc-signature .cnc-signature_text-bar { border-bottom: 1px solid var( --toolbar-border-color ); }
cnc-signature .cnc-signature_text-input { padding: var( --text-input-padding ); color: var( --text-input-text-color ); font-size: var( --text-input-font-size ); }
cnc-signature .cnc-signature_text-apply { padding: var( --text-apply-padding ); color: var( --text-apply-text-color ); cursor: pointer; }
cnc-signature .cnc-signature_footer { padding: var( --footer-padding ); border-top: 1px solid var( --toolbar-border-color ); }
cnc-signature .cnc-signature_hint { color: var( --hint-text-color ); font-size: var( --hint-font-size ); }
cnc-signature .cnc-signature_tool:hover:not(:disabled) { color: var( --tool-text-color-hover ); }
cnc-signature .cnc-signature_tool.active { color: var( --tool-text-color-active ); background: var( --tool-bg-active ); }
cnc-signature .cnc-signature_button:hover:not(:disabled) { color: var( --button-text-color-hover ); }
cnc-signature .cnc-signature_text-apply:hover:not(:disabled) { color: var( --text-apply-text-color-hover ); }
cnc-signature .cnc-signature_tool:disabled, cnc-signature .cnc-signature_button:disabled, cnc-signature .cnc-signature_text-input:disabled, cnc-signature .cnc-signature_text-apply:disabled { opacity: var( --button-opacity-disabled ); cursor: default; }
}
@layer widgets {
cnc-skeleton[shape="square"] { --block-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-skeleton[shape="circle"] { --block-border-radius: var( --radius-full , 9999px ); }
cnc-skeleton { --block-min-height: 1rem; }
cnc-skeleton { --block-bg: var( --color-neutral-300 ); --sheen-start: var( --color-neutral-300 ); --sheen-mid: var( --color-neutral-200 ); --sheen-end: var( --color-neutral-400 ); --pulse-duration: 2s; --sheen-duration: 8s; }
.dark cnc-skeleton { --block-bg: var( --color-neutral-600 ); --sheen-start: var( --color-neutral-600 ); --sheen-mid: var( --color-neutral-500 ); --sheen-end: var( --color-neutral-700 ); }
cnc-skeleton .cnc-skeleton_block { flex: 1 1 auto; min-height: var( --block-min-height ); background: var( --block-bg ); border-radius: var( --block-border-radius , 0 ); }
cnc-skeleton[shape="triangle"] .cnc-skeleton_block { clip-path: polygon( 50% 0 , 0 100% , 100% 100% ); }
cnc-skeleton[shape="cross"] .cnc-skeleton_block { clip-path: polygon( 20% 0% , 0% 20% , 30% 50% , 0% 80% , 20% 100% , 50% 70% , 80% 100% , 100% 80% , 70% 50% , 100% 20% , 80% 0% , 50% 30% ); }
cnc-skeleton[shape="comment"] .cnc-skeleton_block { clip-path: polygon( 0% 0% , 100% 0% , 100% 75% , 75% 75% , 75% 100% , 50% 75% , 0% 75% ); }
cnc-skeleton[effect="pulse"] .cnc-skeleton_block { animation: cnc-skeleton-pulse var( --pulse-duration ) cubic-bezier( 0.4 , 0 , 0.6 , 1 ) infinite; }
cnc-skeleton[effect="sheen"] .cnc-skeleton_block { background: linear-gradient( 90deg , var( --sheen-start ) 0% , var( --sheen-mid ) 48% , var( --sheen-end ) 100% ); background-size: 400% 100%; animation: cnc-skeleton-sheen var( --sheen-duration ) linear infinite; }
@media (prefers-reduced-motion: reduce) {
cnc-skeleton .cnc-skeleton_block { animation-duration: 1ms; animation-iteration-count: 1; }
}
@keyframes cnc-skeleton-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}
@keyframes cnc-skeleton-sheen {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}
}
@layer widgets {
cnc-slider { --track-border-radius: var( --radius-DEFAULT , 0.25rem ); --thumb-border-radius: var( --radius-full , 9999px ); --tooltip-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-slider { --wrapper-padding-y: 0.5rem; --track-height: 0.5rem; --thumb-size: 1.25rem; --tooltip-padding: 0.25rem 0.5rem; --tooltip-margin-bottom: 0.25rem; --tooltip-font-size: 0.75rem; --labels-height: 1rem; --labels-margin-top: 0.5rem; --labels-font-size: 0.75rem; }
cnc-slider { --track-bg: var( --color-neutral-300 ); --fill-bg: var( --color-neutral-400 ); --thumb-bg: var( --color-neutral-300 ); --thumb-border-width: 0; --thumb-border-color: transparent; --thumb-shadow: none; --thumb-shadow-focus: 0 0 0 4px rgb( from var( --color-primary-500 ) r g b / 35% ); --tooltip-bg: var( --color-neutral-900 ); --tooltip-text-color: white; --tooltip-transition-duration: 150ms; --labels-text-color: var( --color-neutral-500 ); --container-opacity-disabled: var( --slider-opacity-disabled , 0.6 ); }
cnc-slider[kind="primary"] { --fill-bg: var( --color-primary-500 ); --thumb-bg: var( --color-primary-500 ); }
cnc-slider[kind="danger"] { --fill-bg: var( --color-danger-500 ); --thumb-bg: var( --color-danger-500 ); }
cnc-slider[kind="success"] { --fill-bg: var( --color-success-500 ); --thumb-bg: var( --color-success-500 ); }
cnc-slider[kind="warning"] { --fill-bg: var( --color-warning-500 ); --thumb-bg: var( --color-warning-500 ); }
cnc-slider[kind="info"] { --fill-bg: var( --color-info-500 ); --thumb-bg: var( --color-info-500 ); }
.dark cnc-slider { --track-bg: var( --color-neutral-600 ); --tooltip-bg: var( --color-neutral-100 ); --tooltip-text-color: var( --color-neutral-900 ); --labels-text-color: var( --color-neutral-400 ); }
cnc-slider { display: block; width: 100%; user-select: none; }
cnc-slider .cnc-slider_wrapper { padding: var( --wrapper-padding-y ) 0; }
cnc-slider .cnc-slider_track { height: var( --track-height ); border-radius: var( --track-border-radius ); background: var( --track-bg ); }
cnc-slider .cnc-slider_fill { border-radius: var( --track-border-radius ); background: var( --fill-bg ); }
cnc-slider .cnc-slider_thumb { top: 50%; width: var( --thumb-size ); height: var( --thumb-size ); border: var( --thumb-border-width ) solid var( --thumb-border-color ); border-radius: var( --thumb-border-radius ); background: var( --thumb-bg ); box-shadow: var( --thumb-shadow ); transform: translate( -50% , -50% ); }
cnc-slider .cnc-slider_tooltip { bottom: 100%; left: 50%; margin-bottom: var( --tooltip-margin-bottom ); padding: var( --tooltip-padding ); border-radius: var( --tooltip-border-radius ); background: var( --tooltip-bg ); color: var( --tooltip-text-color ); font-size: var( --tooltip-font-size ); opacity: 0; transform: translateX( -50% ); transition: opacity var( --tooltip-transition-duration ); }
cnc-slider .cnc-slider_labels { height: var( --labels-height ); margin-top: var( --labels-margin-top ); color: var( --labels-text-color ); font-size: var( --labels-font-size ); }
cnc-slider .cnc-slider_label-value { transform: translateX( -50% ); }
cnc-slider .cnc-slider_thumb:hover .cnc-slider_tooltip, cnc-slider .cnc-slider_thumb.dragging .cnc-slider_tooltip { opacity: 1; }
cnc-slider .cnc-slider_thumb.dragging { cursor: grabbing; }
cnc-slider .cnc-slider_thumb:focus-visible { box-shadow: var( --thumb-shadow-focus ); outline: 2px solid var( --color-primary-500 ); outline-offset: 2px; }
cnc-slider.disabled { cursor: not-allowed; opacity: var( --container-opacity-disabled ); }
cnc-slider.readonly { cursor: default; }
cnc-slider.disabled .cnc-slider_wrapper, cnc-slider.readonly .cnc-slider_wrapper { pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
cnc-slider *, cnc-slider *::before, cnc-slider *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
@media (forced-colors: active) {
cnc-slider .cnc-slider_track { border: 1px solid ButtonText; }
cnc-slider .cnc-slider_fill { background: Highlight; forced-color-adjust: none; }
cnc-slider .cnc-slider_thumb { border: 2px solid ButtonText; background: ButtonFace; }
}
}
@layer widgets {
cnc-slides { --track-transition-duration: 0.3s; }
cnc-slides { display: block; width: 100%; height: 100%; overflow: hidden; }
cnc-slides .cnc-slides_all { width: 0; height: 0; visibility: hidden; }
cnc-slides .cnc-slides_slide { flex: 0 0 100%; min-width: 0; }
cnc-slides .cnc-slides_track { transition: transform var( --track-transition-duration ) ease; }
@media (prefers-reduced-motion: reduce) {
cnc-slides .cnc-slides_track { transition-duration: 0s; }
}
}
@layer widgets {
cnc-sort-view { --menu-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-sort-view { --trigger-gap: 0.25rem; --label-font-size: 0.875rem; --summary-font-size: 0.875rem; --direction-margin-start: 0.125rem; --menu-min-width: 160px; --menu-margin-top: 0.25rem; --item-padding: 0.5rem 0.75rem; --item-font-size: 0.875rem; --item-icon-margin-start: 0.75rem; }
cnc-sort-view { --icon-color: var( --color-neutral-500 ); --label-text-color: var( --color-neutral-900 ); --label-font-weight: 500; --summary-text-color: var( --color-neutral-900 ); --direction-color: var( --color-neutral-600 ); --menu-bg: white; --menu-border-color: var( --color-neutral-200 ); --menu-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ); --item-text-color: var( --color-neutral-700 ); --item-bg-hover: var( --color-neutral-100 ); --item-text-color-hover: var( --color-primary-600 ); --item-icon-color: var( --color-neutral-400 ); --fill-color-active: var( --color-neutral-600 ); --fill-color-muted: var( --color-neutral-300 ); }
.dark cnc-sort-view { --icon-color: var( --color-neutral-400 ); --label-text-color: var( --color-neutral-100 ); --summary-text-color: var( --color-neutral-100 ); --direction-color: var( --color-neutral-300 ); --menu-bg: var( --color-neutral-800 ); --menu-border-color: var( --color-neutral-700 ); --item-text-color: var( --color-neutral-200 ); --item-bg-hover: var( --color-neutral-700 ); --item-text-color-hover: var( --color-primary-400 ); --item-icon-color: var( --color-neutral-500 ); --fill-color-active: var( --color-neutral-300 ); --fill-color-muted: var( --color-neutral-600 ); }
cnc-sort-view .cnc-sort-view_trigger { gap: var( --trigger-gap ); }
cnc-sort-view .cnc-sort-view_icon { color: var( --icon-color ); }
cnc-sort-view .cnc-sort-view_label { color: var( --label-text-color ); font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); }
cnc-sort-view .cnc-sort-view_summary { color: var( --summary-text-color ); font-size: var( --summary-font-size ); }
cnc-sort-view .cnc-sort-view_direction { margin-inline-start: var( --direction-margin-start ); color: var( --direction-color ); }
cnc-sort-view .cnc-sort-view_menu { z-index: 50; min-width: var( --menu-min-width ); margin-top: var( --menu-margin-top ); border: 1px solid var( --menu-border-color ); border-radius: var( --menu-border-radius ); background: var( --menu-bg ); box-shadow: var( --menu-shadow ); }
cnc-sort-view .cnc-sort-view_item { padding: var( --item-padding ); color: var( --item-text-color ); font-size: var( --item-font-size ); }
cnc-sort-view .cnc-sort-view_item-icon { margin-inline-start: var( --item-icon-margin-start ); color: var( --item-icon-color ); }
cnc-sort-view .fill-active { color: var( --fill-color-active ); }
cnc-sort-view .fill-muted { color: var( --fill-color-muted ); }
cnc-sort-view .cnc-sort-view_item:hover { background: var( --item-bg-hover ); color: var( --item-text-color-hover ); }
cnc-sort-view .cnc-sort-view_trigger { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-sort-view .cnc-sort-view_trigger:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
cnc-sort-view .cnc-sort-view_item { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-sort-view .cnc-sort-view_item:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
}
@layer widgets {
cnc-sparkbar { --bar-color: var( --color-primary-500 ); }
cnc-sparkbar { display: block; width: 100%; height: 100%; }
cnc-sparkbar .cnc-sparkbar_chart { fill: var( --bar-color ); stroke: var( --bar-color ); }
}
@layer widgets {
cnc-sparkline { --line-color: var( --color-primary-500 ); --area-color: rgb( from var( --color-primary-500 ) r g b / 20% ); }
cnc-sparkline { display: block; width: 100%; height: 100%; }
cnc-sparkline .cnc-sparkline_area { fill: var( --area-color ); }
cnc-sparkline .cnc-sparkline_line { fill: none; stroke: var( --line-color ); stroke-linecap: round; }
}
@layer widgets {
cnc-speach2text { --recorder-gap: 0.5rem; --icon-margin: 0.75rem; }
cnc-speach2text { --mic-color: var( --color-primary-500 ); --icon-color-recording: var( --color-danger-500 ); --icon-opacity-silence: 0.5; --ring-color: var( --color-primary-700 ); --ring-bg-opacity: 0.25; --ring-arc-opacity: 0.75; --pulse-duration: 2s; --spin-duration: 1s; }
cnc-speach2text { position: absolute; display: flex; flex-direction: column; z-index: 10; touch-action: none; }
cnc-speach2text .cnc-speach2text_recorder { gap: var( --recorder-gap ); }
cnc-speach2text .cnc-speach2text_mic { color: var( --mic-color ); }
cnc-speach2text .cnc-speach2text_icon { margin: var( --icon-margin ); transition: color 0.2s; }
cnc-speach2text .cnc-speach2text_ring { color: var( --ring-color ); }
cnc-speach2text .cnc-speach2text_ring-bg { opacity: var( --ring-bg-opacity ); }
cnc-speach2text .cnc-speach2text_ring-arc { display: none; opacity: var( --ring-arc-opacity ); }
cnc-speach2text .cnc-speach2text_icon.recording { color: var( --icon-color-recording ); }
cnc-speach2text .cnc-speach2text_icon.recording.silence { opacity: var( --icon-opacity-silence ); }
cnc-speach2text .cnc-speach2text_icon.recording { animation: cnc-speach2text-pulse var( --pulse-duration ) cubic-bezier( 0.4 , 0 , 0.6 , 1 ) infinite; }
cnc-speach2text .cnc-speach2text_ring.spinning { animation: cnc-speach2text-spin var( --spin-duration ) linear infinite; }
@media (prefers-reduced-motion: reduce) {
cnc-speach2text .cnc-speach2text_icon.recording { animation: none; }
}
@keyframes cnc-speach2text-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}
@keyframes cnc-speach2text-spin {
  from { transform: rotate( 0deg ); }
  to { transform: rotate( 360deg ); }
}
cnc-speach2text .cnc-speach2text_mic { appearance: none; border: 0; background: none; font: inherit; color: inherit; }
cnc-speach2text .cnc-speach2text_mic:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
cnc-speach2text .cnc-speach2text_mic { padding: 0; }
}
@layer widgets {
cnc-steps { --dot-border-radius: var( --radius-full , 9999px ); --line-border-radius: 2px; }
cnc-steps { --dot-size: 2rem; --dot-border-width: 2px; --icon-size: 1.25rem; --number-font-size: 0.875rem; --label-font-size: 0.875rem; --description-font-size: 0.75rem; --text-margin-start: 0.5rem; --line-thickness: 4px; --line-margin-x: 0.5rem; --line-min-width: 0; --step-gap: 0.75rem; --step-padding-bottom: 1.75rem; --text-padding-top: 0.375rem; --connector-width: 2px; --connector-inset-start: 15px; }
cnc-steps[direction="horizontal"] { --dot-size: 2.5rem; }
cnc-steps { --dot-bg-completed: var( --color-primary-100 ); --dot-text-color-completed: var( --color-primary-600 ); --dot-border-color-completed: var( --dot-bg-completed ); --dot-bg-active: var( --color-primary-500 ); --dot-text-color-active: white; --dot-border-color-active: var( --dot-bg-active ); --dot-ring-active: 0 0 0 4px color-mix( in srgb , var( --color-primary-500 ) 22% , transparent ); --dot-bg-pending: var( --color-neutral-100 ); --dot-text-color-pending: var( --color-neutral-500 ); --dot-border-color-pending: var( --color-neutral-300 ); --dot-transition-duration: 0.25s; --line-color: var( --color-neutral-200 ); --line-color-completed: var( --color-primary-500 ); --line-transition-duration: 0.35s; --label-text-color: var( --color-neutral-600 ); --label-font-weight: 500; --label-text-color-active: var( --color-neutral-900 ); --label-font-weight-active: 600; --label-text-color-hover: var( --color-neutral-900 ); --description-text-color: var( --color-neutral-500 ); --step-opacity-disabled: 0.55; }
cnc-steps:not([direction="horizontal"]) { --dot-bg-pending: var( --color-neutral-50 ); }
.dark cnc-steps { --dot-bg-completed: var( --color-primary-900 ); --dot-text-color-completed: var( --color-primary-400 ); --dot-bg-pending: var( --color-neutral-700 ); --dot-text-color-pending: var( --color-neutral-400 ); --dot-border-color-pending: var( --color-neutral-600 ); --line-color: var( --color-neutral-700 ); --label-text-color: var( --color-neutral-300 ); --label-text-color-active: white; --label-text-color-hover: white; --description-text-color: var( --color-neutral-400 ); }
.dark cnc-steps:not([direction="horizontal"]) { --dot-bg-pending: var( --color-neutral-800 ); }
cnc-steps .cnc-steps_list { margin: 0; padding: 0; list-style: none; }
cnc-steps .cnc-steps_dot { width: var( --dot-size ); height: var( --dot-size ); border: var( --dot-border-width ) solid transparent; border-radius: var( --dot-border-radius ); transition: background-color var( --dot-transition-duration ) ease , color var( --dot-transition-duration ) ease , border-color var( --dot-transition-duration ) ease , box-shadow var( --dot-transition-duration ) ease; }
cnc-steps .cnc-steps_icon { width: var( --icon-size ); height: var( --icon-size ); }
cnc-steps .cnc-steps_icon svg { display: block; width: 100%; height: 100%; fill: currentColor; }
cnc-steps .cnc-steps_number { font-size: var( --number-font-size ); font-weight: 700; }
cnc-steps .cnc-steps_label { color: var( --label-text-color ); font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); }
cnc-steps .cnc-steps_description { color: var( --description-text-color ); font-size: var( --description-font-size ); }
cnc-steps[direction="horizontal"] .cnc-steps_text { margin-inline-start: var( --text-margin-start ); }
cnc-steps[direction="horizontal"] .cnc-steps_label, cnc-steps[direction="horizontal"] .cnc-steps_description { white-space: nowrap; }
cnc-steps[direction="horizontal"] .cnc-steps_step.has-line { flex: 1; }
cnc-steps[direction="horizontal"] .cnc-steps_step.has-line::after { content: ""; flex: 1; min-width: var( --line-min-width ); height: var( --line-thickness ); margin: 0 var( --line-margin-x ); border-radius: var( --line-border-radius ); background: var( --line-color ); transition: background-color var( --line-transition-duration ) ease; }
cnc-steps:not([direction="horizontal"]) .cnc-steps_step { gap: var( --step-gap ); padding-bottom: var( --step-padding-bottom ); }
cnc-steps:not([direction="horizontal"]) .cnc-steps_step:last-child { padding-bottom: 0; }
cnc-steps:not([direction="horizontal"]) .cnc-steps_step:not(:last-child)::before { content: ""; position: absolute; left: var( --connector-inset-start ); top: calc( var( --dot-size ) + 6px ); bottom: 6px; width: var( --connector-width ); border-radius: 1px; background: var( --line-color ); transition: background-color var( --line-transition-duration ) ease; }
cnc-steps:not([direction="horizontal"]) .cnc-steps_text { padding-top: var( --text-padding-top ); }
cnc-steps .cnc-steps_dot.completed { border-color: var( --dot-border-color-completed ); background: var( --dot-bg-completed ); color: var( --dot-text-color-completed ); }
cnc-steps .cnc-steps_dot.active { border-color: var( --dot-border-color-active ); background: var( --dot-bg-active ); color: var( --dot-text-color-active ); }
cnc-steps:not([direction="horizontal"]) .cnc-steps_dot.active { box-shadow: var( --dot-ring-active ); }
cnc-steps .cnc-steps_dot.pending { border-color: var( --dot-border-color-pending ); background: var( --dot-bg-pending ); color: var( --dot-text-color-pending ); }
cnc-steps[direction="horizontal"] .cnc-steps_step.completed.has-line::after, cnc-steps:not([direction="horizontal"]) .cnc-steps_step.completed:not(:last-child)::before { background: var( --line-color-completed ); }
cnc-steps .cnc-steps_step.active .cnc-steps_label { color: var( --label-text-color-active ); font-weight: var( --label-font-weight-active ); }
cnc-steps:not([direction="horizontal"]) .cnc-steps_step:not(.disabled):not(.active):hover .cnc-steps_label { color: var( --label-text-color-hover ); }
cnc-steps .cnc-steps_step.disabled { cursor: not-allowed; }
cnc-steps .cnc-steps_step.disabled .cnc-steps_dot, cnc-steps .cnc-steps_step.disabled .cnc-steps_text { opacity: var( --step-opacity-disabled ); }
@media (max-width: 639px) {
cnc-steps[direction="horizontal"] { --dot-size: 1.75rem; --icon-size: 1rem; --number-font-size: 0.75rem; --line-margin-x: 0.25rem; --line-min-width: 0.75rem; --text-margin-start: 0.375rem; }
cnc-steps[direction="horizontal"] .cnc-steps_step:not(.active) .cnc-steps_text, cnc-steps[direction="horizontal"] .cnc-steps_description { display: none; }
cnc-steps[direction="horizontal"] .cnc-steps_step { min-width: 0; }
cnc-steps[direction="horizontal"] .cnc-steps_step.active { flex: 0 1 auto; }
cnc-steps[direction="horizontal"] .cnc-steps_text { overflow: hidden; }
cnc-steps[direction="horizontal"] .cnc-steps_label { overflow: hidden; text-overflow: ellipsis; }
}
cnc-steps .cnc-steps_button { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-steps .cnc-steps_button:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
cnc-steps .cnc-steps_button { padding: 0; cursor: pointer; gap: inherit; min-width: 0; max-width: 100%; flex: 1 1 auto; }
cnc-steps .cnc-steps_button:disabled { cursor: not-allowed; }
@media (prefers-reduced-motion: reduce) {
cnc-steps *, cnc-steps *::before, cnc-steps *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-switch { --track-border-radius: var( --radius-full , 9999px ); --thumb-border-radius: var( --radius-full , 9999px ); }
cnc-switch { --track-width: 2.75rem; --track-height: 1.5rem; --track-border-width: 2px; --thumb-size: 1.25rem; --thumb-translate-on: 1.25rem; --wrapper-gap: 0.5rem; }
cnc-switch { --track-bg-on: var( --color-primary-600 ); --track-bg-off: var( --color-neutral-300 ); --track-border-color: transparent; --track-border-color-on: var( --track-border-color ); --track-outline-width-focus: 2px; --track-outline-color-focus: var( --color-primary-500 ); --track-shadow-focus: none; --track-transition-duration: 0.2s; --thumb-bg: var( --color-neutral-100 ); --thumb-shadow: 0 1px 3px rgb( 0 0 0 / 20% ); --label-text-color: var( --color-neutral-700 ); --label-font-weight: 500; --container-opacity-disabled: 0.7; --label-opacity-disabled: 0.5; }
.dark cnc-switch { --track-bg-off: var( --color-neutral-600 ); --label-text-color: var( --color-neutral-200 ); }
cnc-switch { display: inline-flex; align-items: center; line-height: 1; }
cnc-switch .cnc-switch_wrapper { gap: var( --wrapper-gap ); }
cnc-switch .cnc-switch_track { width: var( --track-width ); height: var( --track-height ); border: var( --track-border-width ) solid var( --track-border-color ); border-radius: var( --track-border-radius ); transition: background-color var( --track-transition-duration ) ease-in-out; }
cnc-switch .cnc-switch_thumb { width: var( --thumb-size ); height: var( --thumb-size ); border-radius: var( --thumb-border-radius ); background: var( --thumb-bg ); box-shadow: var( --thumb-shadow ); transition: transform var( --track-transition-duration ) ease-in-out; }
cnc-switch .cnc-switch_label { color: var( --label-text-color ); font-weight: var( --label-font-weight ); }
cnc-switch .cnc-switch_track:focus { outline: var( --track-outline-width-focus ) solid var( --track-outline-color-focus ); outline-offset: 2px; box-shadow: var( --track-shadow-focus ); }
cnc-switch .cnc-switch_track.on { background-color: var( --track-bg-on ); border-color: var( --track-border-color-on ); }
cnc-switch .cnc-switch_track.off { background-color: var( --track-bg-off ); }
cnc-switch .cnc-switch_track:disabled { opacity: var( --container-opacity-disabled ); cursor: not-allowed; }
cnc-switch .cnc-switch_thumb.on { transform: translateX( var( --thumb-translate-on ) ); }
cnc-switch .cnc-switch_thumb.off { transform: translateX( 0 ); }
cnc-switch .cnc-switch_wrapper.readonly { pointer-events: none; }
cnc-switch .cnc-switch_wrapper.disabled .cnc-switch_label { cursor: not-allowed; opacity: var( --label-opacity-disabled ); }
@media (prefers-reduced-motion: reduce) {
cnc-switch *, cnc-switch *::before, cnc-switch *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
@media (forced-colors: active) {
cnc-switch .cnc-switch_track { border: 1px solid ButtonText; forced-color-adjust: none; background: Canvas; }
cnc-switch .cnc-switch_track.on { background: Highlight; }
cnc-switch .cnc-switch_thumb { background: ButtonText; }
cnc-switch .cnc-switch_track.on .cnc-switch_thumb { background: HighlightText; }
}
}
@layer widgets {
cnc-tabbar { --badge-border-radius: var( --radius-full , 9999px ); }
cnc-tabbar { --item-padding-y: 0.25rem; --content-padding-y: 0.5rem; --icon-size: 1.25rem; --label-font-size: 0.75rem; --label-margin-top: 0.25rem; --badge-size: 1rem; --badge-padding-x: 0.25rem; --badge-font-size: 0.6rem; --badge-offset: -0.25rem; }
cnc-tabbar { --nav-z-index: 999; --nav-bg: var( --color-neutral-100 ); --nav-border-color: var( --color-neutral-200 ); --nav-border-top-width: 1px; --nav-border-bottom-width: 0; --nav-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ); --content-text-color: var( --color-neutral-500 ); --content-text-color-active: var( --color-primary-600 ); --badge-bg: var( --color-danger-500 ); --badge-text-color: white; }
.dark cnc-tabbar { --nav-bg: var( --color-neutral-800 ); --nav-border-color: var( --color-neutral-700 ); --content-text-color: var( --color-neutral-400 ); --content-text-color-active: var( --color-primary-400 ); }
cnc-tabbar { display: block; }
cnc-tabbar .cnc-tabbar_nav { z-index: var( --nav-z-index ); background: var( --nav-bg ); border-top: var( --nav-border-top-width ) solid var( --nav-border-color ); border-bottom: var( --nav-border-bottom-width ) solid var( --nav-border-color ); box-shadow: var( --nav-shadow ); }
cnc-tabbar .cnc-tabbar_item { width: 100%; padding: var( --item-padding-y ) 0; text-align: center; cursor: pointer; }
cnc-tabbar .cnc-tabbar_link { text-decoration: none; }
cnc-tabbar .cnc-tabbar_content { display: flex; flex-direction: column; align-items: center; padding: var( --content-padding-y ) 0; color: var( --content-text-color ); }
cnc-tabbar .cnc-tabbar_icon { display: flex; align-items: center; justify-content: center; width: var( --icon-size ); height: var( --icon-size ); margin: 0 auto; }
cnc-tabbar .cnc-tabbar_icon svg { display: block; width: 100%; height: 100%; fill: currentColor; }
cnc-tabbar .cnc-tabbar_label { display: block; margin-top: var( --label-margin-top ); font-size: var( --label-font-size ); }
cnc-tabbar .cnc-tabbar_badge-wrapper { position: relative; display: inline-flex; }
cnc-tabbar .cnc-tabbar_badge { position: absolute; top: var( --badge-offset ); right: var( --badge-offset ); display: flex; align-items: center; justify-content: center; min-width: var( --badge-size ); height: var( --badge-size ); padding: 0 var( --badge-padding-x ); border-radius: var( --badge-border-radius ); background: var( --badge-bg ); color: var( --badge-text-color ); font-size: var( --badge-font-size ); line-height: 1; }
cnc-tabbar .cnc-tabbar_content.active { color: var( --content-text-color-active ); }
cnc-tabbar button.cnc-tabbar_content { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-tabbar button.cnc-tabbar_content:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
}
@layer widgets {
cnc-table { --container-border-radius: var( --radius-lg , 0.5rem ); }
cnc-table { --column-header-padding: 0.625rem 0.75rem; --column-header-font-size: 0.75rem; --cell-padding: 0.5rem 0.75rem; --cell-font-size: 0.875rem; --indicator-font-size: 0.5rem; --handle-width: 4px; }
cnc-table { --container-border-width: 1px; --container-border-color: var( --color-neutral-200 ); --column-header-bg: var( --color-neutral-50 ); --column-header-border-color: var( --color-neutral-200 ); --column-header-text-color: var( --color-neutral-500 ); --column-header-text-color-hover: var( --color-neutral-700 ); --column-header-font-weight: 600; --column-header-letter-spacing: 0.025em; --indicator-color: var( --color-neutral-300 ); --indicator-color-active: var( --color-primary-500 ); --handle-bg-hover: var( --color-neutral-300 ); --cell-border-color: var( --color-neutral-100 ); --cell-text-color: var( --color-neutral-700 ); --cell-bg-hover: var( --color-neutral-50 ); }
.dark cnc-table { --container-border-color: var( --color-neutral-700 ); --column-header-bg: var( --color-neutral-900 ); --column-header-border-color: var( --color-neutral-700 ); --column-header-text-color: var( --color-neutral-400 ); --column-header-text-color-hover: var( --color-neutral-200 ); --indicator-color: var( --color-neutral-600 ); --handle-bg-hover: var( --color-neutral-600 ); --cell-border-color: var( --color-neutral-800 ); --cell-text-color: var( --color-neutral-200 ); --cell-bg-hover: rgb( from var( --color-neutral-700 ) r g b / 30% ); }
cnc-table { border: var( --container-border-width ) solid var( --container-border-color ); border-radius: var( --container-border-radius ); }
cnc-table .cnc-table_column-header { z-index: 2; padding: var( --column-header-padding ); border-bottom: 1px solid var( --column-header-border-color ); background: var( --column-header-bg ); color: var( --column-header-text-color ); font-size: var( --column-header-font-size ); font-weight: var( --column-header-font-weight ); letter-spacing: var( --column-header-letter-spacing ); text-transform: uppercase; }
cnc-table .cnc-table_column-header[data-sortable] { cursor: pointer; }
cnc-table .cnc-table_column-label { text-overflow: ellipsis; }
cnc-table .cnc-table_sort { display: inline-flex; flex-direction: column; align-items: center; gap: 1px; line-height: 1; }
cnc-table .cnc-table_sort-up, cnc-table .cnc-table_sort-down { color: var( --indicator-color ); font-size: var( --indicator-font-size ); line-height: 1; }
cnc-table .cnc-table_handle { position: absolute; right: 0; top: 0; height: 100%; width: var( --handle-width ); cursor: col-resize; }
cnc-table .cnc-table_cell { padding: var( --cell-padding ); border-bottom: 1px solid var( --cell-border-color ); color: var( --cell-text-color ); font-size: var( --cell-font-size ); text-overflow: ellipsis; }
cnc-table .cnc-table_column-header[data-sortable]:hover { color: var( --column-header-text-color-hover ); }
cnc-table .cnc-table_sort-up.active, cnc-table .cnc-table_sort-down.active { color: var( --indicator-color-active ); }
cnc-table .cnc-table_handle:hover { background: var( --handle-bg-hover ); }
cnc-table .cnc-table_cell:hover { background: var( --cell-bg-hover ); }
cnc-table .cnc-table_sort-button { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; padding: 0; cursor: pointer; }
cnc-table .cnc-table_sort-button:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: -2px; }
}
@layer widgets {
cnc-table2 { --container-border-radius: 0.625rem; }
cnc-table2 { --column-header-padding: 0.7rem 0.75rem; --column-header-gap: 0.35rem; --column-header-font-size: 0.75rem; --cell-padding: 0.7rem 0.75rem; --cell-gap: 0.45rem; --cell-font-size: 0.875rem; --icon-size: 1rem; --handle-width: 4px; }
cnc-table2 { --container-bg: var( --color-neutral-50 , white ); --container-border-width: 1px; --container-border-color: var( --color-neutral-200 , #e5e5e5 ); --column-header-bg: var( --color-neutral-100 , #fafafa ); --column-header-border-color: var( --color-neutral-200 , #e5e5e5 ); --column-header-text-color: var( --color-neutral-500 , #737373 ); --column-header-font-weight: 600; --indicator-color: var( --color-primary-500 ); --cell-border-color: var( --color-neutral-200 , #e5e5e5 ); --cell-text-color: var( --color-neutral-700 , #404040 ); --cell-bg-hover: color-mix( in srgb , var( --color-primary-500 ) 8% , transparent ); --cell-bg-selected: var( --cell-bg-hover ); --icon-color: var( --color-neutral-400 ); --icon-color-folder: var( --color-primary-500 ); }
.dark cnc-table2 { --container-bg: var( --color-neutral-900 , #171717 ); --column-header-bg: var( --color-neutral-800 , #262626 ); --column-header-border-color: var( --color-neutral-700 , #404040 ); --column-header-text-color: var( --color-neutral-200 , #e5e5e5 ); --cell-border-color: var( --color-neutral-800 , #262626 ); --cell-text-color: var( --color-neutral-200 , #e5e5e5 ); }
cnc-table2 { border: var( --container-border-width ) solid var( --container-border-color ); border-radius: var( --container-border-radius ); background: var( --container-bg ); }
cnc-table2 .cnc-table2_column-header, cnc-table2 .cnc-table2_cell { min-width: 0; }
cnc-table2 .cnc-table2_column-header { z-index: 2; gap: var( --column-header-gap ); padding: var( --column-header-padding ); border-bottom: 1px solid var( --column-header-border-color ); background: var( --column-header-bg ); color: var( --column-header-text-color ); font-size: var( --column-header-font-size ); font-weight: var( --column-header-font-weight ); }
cnc-table2 .cnc-table2_column-header[data-sortable] { cursor: pointer; }
cnc-table2 .cnc-table2_indicator { color: var( --indicator-color ); }
cnc-table2 .cnc-table2_handle { inset-block: 0; inset-inline-end: 0; width: var( --handle-width ); cursor: col-resize; }
cnc-table2 .cnc-table2_cell { gap: var( --cell-gap ); padding: var( --cell-padding ); border-bottom: 1px solid var( --cell-border-color ); color: var( --cell-text-color ); font-size: var( --cell-font-size ); }
cnc-table2 .cnc-table2_icon { width: var( --icon-size ); height: var( --icon-size ); color: var( --icon-color ); }
cnc-table2 .cnc-table2_icon[data-kind="folder"] { color: var( --icon-color-folder ); }
cnc-table2 .cnc-table2_cell:hover { background: var( --cell-bg-hover ); }
cnc-table2 .cnc-table2_cell.selected { background: var( --cell-bg-selected ); }
cnc-table2 .cnc-table2_sort-button { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; padding: 0; cursor: pointer; }
cnc-table2 .cnc-table2_sort-button:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: -2px; }
cnc-table2 .cnc-table2_sort-button { gap: var( --column-header-gap ); }
}
@layer widgets {
cnc-table5:where([shape="square"], [shape="rectangle"], :not([shape])) { --shape-border-radius: 0; }
cnc-table5:where([shape="rounded"]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-table5:where([shape="soft"]) { --shape-border-radius: var( --shape-border-radius-soft , var( --radius-md , 0.375rem ) ); }
cnc-table5:where([size="sm"]) { --column-header-padding-x: calc( var( --spacing ) * 3 ); --column-header-padding-y: calc( var( --spacing ) * 2 ); --column-header-font-size: var( --text-xs ); --cell-padding-x: calc( var( --spacing ) * 3 ); --cell-padding-y: calc( var( --spacing ) * 1 ); --cell-font-size: var( --text-sm ); --cell-line-height: var( --text-sm--line-height ); }
cnc-table5:where([size="md"], :not([size])) { --column-header-padding-x: calc( var( --spacing ) * 4 ); --column-header-padding-y: calc( var( --spacing ) * 3.5 ); --column-header-font-size: var( --text-sm ); --cell-padding-x: calc( var( --spacing ) * 2 ); --cell-padding-y: calc( var( --spacing ) * 2 ); --cell-font-size: initial; --cell-line-height: initial; }
cnc-table5:where([size="lg"]) { --column-header-padding-x: calc( var( --spacing ) * 6 ); --column-header-padding-y: calc( var( --spacing ) * 4 ); --column-header-font-size: var( --text-sm ); --cell-padding-x: calc( var( --spacing ) * 6 ); --cell-padding-y: calc( var( --spacing ) * 4 ); --cell-font-size: var( --text-base ); --cell-line-height: var( --text-base--line-height ); }
cnc-table5 { --column-width-min: 5em; --wrapper-padding-x: 0; --container-bg: transparent; --container-border-color: var( --color-neutral-300 ); --container-border-radius: var( --shape-border-radius , 0 ); --container-shadow: none; --column-header-bg: var( --color-neutral-50 ); --column-header-text-color: var( --color-neutral-900 ); --column-header-font-weight: var( --font-weight-semibold ); --column-header-line-height: calc( var( --spacing ) * 5 ); --column-header-border-right-color: var( --color-neutral-200 ); --column-header-border-bottom-color: color-mix( in oklab , var( --color-black ) 10% , transparent ); --column-header-padding-x-condensed: calc( var( --spacing ) * 2 ); --cell-bg: transparent; --cell-text-color: initial; --cell-border-color: transparent; --indicator-size: calc( var( --spacing ) * 3 ); --handle-width: calc( var( --spacing ) * 1 ); --handle-bg-hover: var( --color-neutral-200 ); }
@media (min-width: 48rem) {
cnc-table5[data-inset] { --wrapper-padding-x: calc( var( --spacing ) * 6 ); }
}
@media (min-width: 64rem) {
cnc-table5[data-inset] { --wrapper-padding-x: calc( var( --spacing ) * 8 ); }
}
.dark cnc-table5 { --column-header-bg: var( --color-neutral-900 ); --column-header-text-color: var( --color-neutral-500 ); --column-header-border-right-color: var( --color-neutral-700 ); --handle-bg-hover: var( --color-neutral-700 ); }
cnc-table5 { padding-inline: var( --wrapper-padding-x ); }
cnc-table5 .cnc-table5_container { background: var( --container-bg ); border: 1px solid var( --container-border-color ); border-radius: var( --container-border-radius ); box-shadow: var( --container-shadow ); }
cnc-table5 .cnc-table5_content { min-width: 777px; display: grid; grid-template-columns: repeat( calc( var( --columns-count ) + 1 ) , max-content ); grid-template-rows: repeat( auto-fit , minmax( 1.5em , auto ) ); grid-row-gap: 0; grid-column-gap: 0; align-items: center; align-content: stretch; min-height: 0; min-width: 0; }
cnc-table5 .cnc-table5_column-header { padding: var( --column-header-padding-y ) var( --column-header-padding-x ); background: var( --column-header-bg ); color: var( --column-header-text-color ); font-size: var( --column-header-font-size ); font-weight: var( --column-header-font-weight ); line-height: var( --column-header-line-height ); border-right: 1px solid var( --column-header-border-right-color ); border-bottom: 1px solid var( --column-header-border-bottom-color ); white-space: nowrap; text-overflow: ellipsis; height: 100%; z-index: 22; }
cnc-table5 .cnc-table5_column-header[data-condensed="true"] { padding-inline: var( --column-header-padding-x-condensed ); }
cnc-table5 .cnc-table5_column-header:first-of-type { border-top-left-radius: calc( var( --container-border-radius ) - 1px ); }
cnc-table5 .cnc-table5_column-header:not(:has(~ .cnc-table5_column-header)) { border-top-right-radius: calc( var( --container-border-radius ) - 1px ); }
cnc-table5 .cnc-table5_indicator { display: inline-block; inline-size: var( --indicator-size ); block-size: var( --indicator-size ); }
cnc-table5 .cnc-table5_handle { inline-size: var( --handle-width ); }
cnc-table5 .cnc-table5_handle:hover { background: var( --handle-bg-hover ); }
cnc-table5 .cnc-table5_cell { padding: var( --cell-padding-y ) var( --cell-padding-x ); background: var( --cell-bg ); color: var( --cell-text-color ); font-size: var( --cell-font-size ); line-height: var( --cell-line-height ); border-bottom: 1px solid var( --cell-border-color ); display: grid; grid-template-columns: repeat( auto-fit , 1fr ); height: 100%; align-items: center; }
cnc-table5 .cnc-table5_row:last-of-type .cnc-table5_cell { border-bottom-width: 0; }
cnc-table5 .cnc-table5_row:last-of-type .cnc-table5_cell:first-of-type { border-bottom-left-radius: calc( var( --container-border-radius ) - 1px ); }
cnc-table5 .cnc-table5_row:last-of-type .cnc-table5_cell:not(:has(~ .cnc-table5_cell)) { border-bottom-right-radius: calc( var( --container-border-radius ) - 1px ); }
cnc-table5 .cnc-table5_row:hover .cnc-table5_cell { color: var( --cell-text-color-hover , var( --cell-text-color ) ); background: var( --cell-bg-hover , var( --cell-bg ) ); }
cnc-table5 .fixed-left { position: sticky; left: 0; z-index: 23; }
cnc-table5 .cnc-table5_column-header.fixed-left { z-index: 24; }
cnc-table5 .fixed-right { position: sticky; right: 0; z-index: 23; }
cnc-table5 .cnc-table5_column-header.fixed-right { z-index: 24; }
cnc-table5 cnc-link:hover { text-decoration: underline; }
cnc-table5 button.cnc-table5_indicator { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; padding: 0; cursor: pointer; }
cnc-table5 button.cnc-table5_indicator:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: -2px; }
cnc-table5 button.cnc-table5_indicator { display: inline-block; }
}
@layer widgets {
cnc-tabs[size="sm"] { --shape-border-radius-rounded: var( --radius-sm , 0.25rem ); }
cnc-tabs[size="md"], cnc-tabs:not([size]) { --shape-border-radius-rounded: var( --radius-md , 0.375rem ); }
cnc-tabs[size="lg"] { --shape-border-radius-rounded: var( --radius-lg , 0.5rem ); }
cnc-tabs:where([shape="square"], [shape="rectangle"]) { --shape-border-radius: 0; }
cnc-tabs:where([shape="pill"]) { --shape-border-radius: var( --radius-full , 9999px ); }
cnc-tabs:where([shape="rounded"]), cnc-tabs:where(:not([shape])) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-md , 0.375rem ) ); }
cnc-tabs[size="sm"] { --item-height: 1.75rem; --item-padding: 0 0.5rem; --item-gap: 0.25rem; --item-font-size: 0.8125rem; --item-line-height: 1.125rem; --list-gap: 0.125rem; --icon-size: 0.875rem; --control-size: 0.75rem; --indicator-size: 0.125rem; --panel-padding: 0.75rem; }
cnc-tabs[size="md"], cnc-tabs:not([size]) { --item-height: 2.25rem; --item-padding: 0 0.75rem; --item-gap: 0.375rem; --item-font-size: 0.875rem; --item-line-height: 1.25rem; --list-gap: 0.25rem; --icon-size: 1rem; --control-size: 0.875rem; --indicator-size: 0.125rem; --panel-padding: 1rem; }
cnc-tabs[size="lg"] { --item-height: 2.75rem; --item-padding: 0 1rem; --item-gap: 0.5rem; --item-font-size: 1rem; --item-line-height: 1.5rem; --list-gap: 0.25rem; --icon-size: 1.25rem; --control-size: 1rem; --indicator-size: 0.1875rem; --panel-padding: 1.25rem; }
cnc-tabs { --item-font-weight: 600; --item-border-width: 0; --item-border-color: transparent; --item-border-color-selected: transparent; --item-border-radius: 0; --item-bg: transparent; --item-bg-hover: transparent; --item-bg-selected: transparent; --item-shadow-selected: none; --item-flex: 0 0 auto; --list-padding: 0; --list-bg: transparent; --list-border-width: 0; --list-border-color: transparent; --list-border-radius: 0; --list-align: stretch; --list-shadow-gutter: 0px; --indicator-color: transparent; --indicator-color-selected: transparent; --icon-color: currentColor; --control-color: currentColor; --panel-bg: transparent; --panel-border-width: 0; --panel-border-color: transparent; --panel-border-radius: 0; --scroll-size: 1.375rem; --scroll-bg: rgb( 255 255 255 / 0.82 ); --scroll-bg-hover: rgb( 255 255 255 / 0.95 ); --scroll-color: var( --color-neutral-600 , #414651 ); --scroll-color-hover: var( --color-neutral-900 , #181d27 ); --scroll-shadow: 0 1px 4px rgb( 0 0 0 / 0.18 ); --transition-duration: 150ms; --transition-timing: linear; }
.dark cnc-tabs { --scroll-bg: rgb( 40 40 40 / 0.85 ); --scroll-bg-hover: rgb( 55 55 55 / 0.95 ); --scroll-color: var( --color-neutral-300 , #d1d5db ); --scroll-color-hover: var( --color-neutral-100 , #f0f0f0 ); --scroll-shadow: 0 1px 4px rgb( 0 0 0 / 0.45 ); }
cnc-tabs[kind="line"], cnc-tabs:not([kind]) { --list-border-width: 1px; --list-border-color: var( --color-neutral-200 , #e5e5e5 ); --item-text-color: var( --color-neutral-500 , #737373 ); --item-text-color-hover: var( --color-neutral-700 , #404040 ); --item-text-color-selected: var( --color-600 , var( --color-neutral-900 ) ); --indicator-color-selected: var( --color-500 , var( --color-neutral-900 ) ); }
.dark cnc-tabs[kind="line"], .dark cnc-tabs:not([kind]) { --list-border-color: var( --color-neutral-800 , #262626 ); --item-text-color: var( --color-neutral-400 , #a3a3a3 ); --item-text-color-hover: var( --color-neutral-200 , #e5e5e5 ); --item-text-color-selected: var( --color-400 , var( --color-neutral-100 ) ); --indicator-color-selected: var( --color-400 , var( --color-neutral-100 ) ); }
cnc-tabs[kind="soft"] { --item-border-radius: var( --shape-border-radius , 0 ); --item-bg-hover: color-mix( in srgb , var( --color-neutral-500 , #737373 ) 8% , transparent ); --item-bg-selected: color-mix( in srgb , var( --color-500 , var( --color-neutral-500 ) ) 12% , transparent ); --item-text-color: var( --color-neutral-500 , #737373 ); --item-text-color-hover: var( --color-neutral-700 , #404040 ); --item-text-color-selected: var( --color-700 , var( --color-neutral-800 ) ); }
.dark cnc-tabs[kind="soft"] { --item-bg-hover: color-mix( in srgb , var( --color-neutral-400 , #a3a3a3 ) 12% , transparent ); --item-bg-selected: color-mix( in srgb , var( --color-400 , var( --color-neutral-400 ) ) 22% , transparent ); --item-text-color: var( --color-neutral-400 , #a3a3a3 ); --item-text-color-hover: var( --color-neutral-200 , #e5e5e5 ); --item-text-color-selected: var( --color-200 , var( --color-neutral-100 ) ); }
cnc-tabs[kind="filled"] { --list-padding: 0.125rem; --list-shadow-gutter: 0.125rem; --list-bg: var( --color-neutral-50 , #fafafa ); --list-border-width: 1px; --list-border-color: var( --color-neutral-200 , #e5e5e5 ); --list-border-radius: var( --shape-border-radius , 0 ); --item-border-radius: var( --shape-border-radius , 0 ); --item-border-width: 1px; --item-border-color: transparent; --item-border-color-selected: rgb( 0 0 0 / 0.08 ); --item-bg-selected: #ffffff; --item-shadow-selected: 0 1px 2px rgb( 0 0 0 / 0.08 ); --item-text-color: var( --color-neutral-500 , #737373 ); --item-text-color-hover: var( --color-neutral-700 , #404040 ); --item-text-color-selected: var( --color-700 , var( --color-neutral-900 ) ); }
.dark cnc-tabs[kind="filled"] { --list-bg: var( --color-neutral-800 , #262626 ); --list-border-color: var( --color-neutral-700 , #404040 ); --item-border-color-selected: rgb( 255 255 255 / 0.08 ); --item-bg-selected: var( --color-neutral-700 , #404040 ); --item-text-color: var( --color-neutral-400 , #a3a3a3 ); --item-text-color-hover: var( --color-neutral-200 , #e5e5e5 ); --item-text-color-selected: var( --color-200 , var( --color-neutral-100 ) ); }
cnc-tabs[kind="curved"] { --list-align: flex-end; --item-border-width: 1px; --item-border-color: transparent; --item-border-color-selected: var( --panel-border-color ); --item-border-radius: 0.5rem 0.5rem 0 0; --item-bg: var( --color-neutral-200 , #e9eaeb ); --item-bg-hover: rgb( 0 0 0 / 0.06 ); --item-bg-selected: var( --panel-bg ); --item-text-color: var( --color-neutral-500 , #717680 ); --item-text-color-hover: var( --color-neutral-700 , #414651 ); --item-text-color-selected: var( --color-700 , var( --color-neutral-900 ) ); --panel-bg: #ffffff; --panel-border-width: 1px; --panel-border-color: var( --color-neutral-300 , #d5d7da ); --panel-border-radius: 0 0 0.5rem 0.5rem; }
.dark cnc-tabs[kind="curved"] { --item-bg: var( --color-neutral-800 , #2d2d2d ); --item-bg-hover: rgb( 255 255 255 / 0.06 ); --item-text-color: var( --color-neutral-400 , #9ca3af ); --item-text-color-hover: var( --color-neutral-300 , #d1d5db ); --item-text-color-selected: var( --color-200 , var( --color-neutral-100 ) ); --panel-bg: var( --color-neutral-900 , #1e1e1e ); --panel-border-color: var( --color-neutral-700 , #404040 ); }
cnc-tabs[data-orientation="horizontal"], cnc-tabs:not([data-orientation]) { --container-flex-direction: column; --list-flex-direction: row; --item-justify: center; }
cnc-tabs[data-orientation="vertical"] { --container-flex-direction: row; --list-flex-direction: column; --item-justify: flex-start; --list-align: stretch; container-name: none; }
cnc-tabs[kind="curved"][data-orientation="vertical"] { --item-border-radius: 0.5rem 0 0 0.5rem; --panel-border-radius: 0 0.5rem 0.5rem 0; }
cnc-tabs:where([data-placement="top-start"], [data-placement="bottom-start"]) > .cnc-tabs_nav > .cnc-tabs_list { justify-content: flex-start; }
cnc-tabs:where([data-placement="top-center"], [data-placement="bottom-center"]) > .cnc-tabs_nav > .cnc-tabs_list { justify-content: safe center; }
cnc-tabs:where([data-placement="top-end"], [data-placement="bottom-end"]) > .cnc-tabs_nav > .cnc-tabs_list { justify-content: safe flex-end; }
cnc-tabs:where([data-placement="left-top"], [data-placement="right-top"]) > .cnc-tabs_nav { align-self: flex-start; }
cnc-tabs:where([data-placement="left-center"], [data-placement="right-center"]) > .cnc-tabs_nav { align-self: center; }
cnc-tabs:where([data-placement="left-bottom"], [data-placement="right-bottom"]) > .cnc-tabs_nav { align-self: flex-end; }
cnc-tabs[data-placement^="right"] > .cnc-tabs_nav { order: 2; }
cnc-tabs[data-placement^="right"] > .cnc-tabs_panel { order: 1; }
cnc-tabs[data-placement^="bottom"] > .cnc-tabs_nav { order: 2; }
cnc-tabs[data-placement^="bottom"] > .cnc-tabs_compact { order: 2; border-block-start: var( --list-border-width ) solid var( --list-border-color ); border-block-end: 0; }
cnc-tabs[data-placement^="bottom"] > .cnc-tabs_panel { order: 1; }
cnc-tabs[kind="curved"][data-placement^="right"] { --item-border-radius: 0 0.5rem 0.5rem 0; --panel-border-radius: 0.5rem 0 0 0.5rem; }
cnc-tabs { display: flex; flex-direction: var( --container-flex-direction ); width: 100%; min-width: 0; container: cnc-tabs / inline-size; }
cnc-tabs > .cnc-tabs_compact { display: none; width: 100%; padding: var( --list-padding ); background: var( --list-bg ); border-block-end: var( --list-border-width ) solid var( --list-border-color ); }
cnc-tabs > .cnc-tabs_compact .cnc-tabs_compact-select { width: 100%; min-width: 0; }
cnc-tabs .cnc-tabs_compact-select .cnc-select_trigger { border-bottom-right-radius: 0 !important; border-bottom-left-radius: 0 !important; }
cnc-tabs > .cnc-tabs_compact .cnc-tabs_compact-close { inline-size: var( --control-size ); block-size: var( --control-size ); color: var( --control-color ); background: transparent; border: 0; border-radius: var( --radius-sm , 0.25rem ); cursor: pointer; }
@container cnc-tabs (max-width: 499px) {
cnc-tabs:not([drag]):not([no-compact]) > .cnc-tabs_nav { display: none !important; }
cnc-tabs:not([drag]):not([no-compact]) > .cnc-tabs_compact { display: block; }
}
cnc-tabs[data-compact]:not([drag]) > .cnc-tabs_nav { display: none !important; }
cnc-tabs[data-compact]:not([drag]) > .cnc-tabs_compact { display: block; }
cnc-tabs > .cnc-tabs_nav { align-items: var( --list-align ); }
cnc-tabs[data-orientation="horizontal"] > .cnc-tabs_nav { inline-size: 100%; }
cnc-tabs[data-orientation="vertical"] > .cnc-tabs_nav { block-size: max-content; max-block-size: 100%; }
cnc-tabs[full-width][data-orientation="horizontal"] > .cnc-tabs_nav { inline-size: 100%; }
cnc-tabs[kind="curved"][data-orientation="horizontal"]:has( > .cnc-tabs_nav > .cnc-tabs_list > .cnc-tabs_item:only-child ) > .cnc-tabs_nav { inline-size: 100%; }
cnc-tabs > .cnc-tabs_nav > .cnc-tabs_list { flex-direction: var( --list-flex-direction ); align-items: var( --list-align ); gap: var( --list-gap ); padding: var( --list-padding ); background: var( --list-bg ); border-radius: var( --list-border-radius ); scrollbar-width: none; -ms-overflow-style: none; }
cnc-tabs > .cnc-tabs_nav > .cnc-tabs_list::-webkit-scrollbar { display: none; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item { flex: var( --item-flex ); justify-content: var( --item-justify ); cursor: pointer; gap: var( --item-gap ); min-block-size: var( --item-height ); padding: var( --item-padding ); color: var( --item-text-color ); background: var( --item-bg ); border: var( --item-border-width ) solid var( --item-border-color ); border-radius: var( --item-border-radius ); font-size: var( --item-font-size ); line-height: var( --item-line-height ); font-weight: var( --item-font-weight ); transition: color var( --transition-duration ) var( --transition-timing ) , background var( --transition-duration ) var( --transition-timing ); }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item:focus-visible { outline: 2px solid var( --color-500 , var( --color-neutral-500 ) ); outline-offset: -2px; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_icon { inline-size: var( --icon-size ); block-size: var( --icon-size ); color: var( --icon-color ); }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_icon svg { display: block; inline-size: 100%; block-size: 100%; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_label { font-size: inherit; font-weight: inherit; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_pin, cnc-tabs > .cnc-tabs_nav .cnc-tabs_close { inline-size: var( --control-size ); block-size: var( --control-size ); color: var( --control-color ); background: transparent; border: 0; border-radius: var( --radius-sm , 0.25rem ); opacity: 0.4; transition: opacity var( --transition-duration ) var( --transition-timing ); }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_pin:hover, cnc-tabs > .cnc-tabs_nav .cnc-tabs_close:hover, cnc-tabs > .cnc-tabs_nav .cnc-tabs_pin:focus-visible, cnc-tabs > .cnc-tabs_nav .cnc-tabs_close:focus-visible { opacity: 1; }
cnc-tabs > .cnc-tabs_panel { display: flex; overflow-x: hidden; flex: 1; min-block-size: 0; position: relative; background: var( --panel-bg ); border: var( --panel-border-width ) solid var( --panel-border-color ); border-radius: var( --panel-border-radius ); }
cnc-tabs > .cnc-tabs_panel > .cnc-tabs_panelitem { display: flex; flex: 1; flex-direction: column; min-inline-size: 0; min-block-size: 0; overflow: auto; }
cnc-tabs > .cnc-tabs_panel > .cnc-tabs_panelitem:focus { outline: none; }
cnc-tabs > .cnc-tabs_panel:focus { outline: none; }
cnc-tabs > .cnc-tabs_panel:focus-visible { outline: 2px solid var( --color-500 , var( --color-neutral-500 ) ); outline-offset: -2px; }
cnc-tabs > .cnc-tabs_nav > .cnc-tabs_scroll { position: absolute; display: none; align-items: center; justify-content: center; inline-size: var( --scroll-size ); block-size: var( --scroll-size ); padding: 0; border: none; border-radius: var( --radius-full , 9999px ); cursor: pointer; z-index: 4; color: var( --scroll-color ); background: var( --scroll-bg ); box-shadow: var( --scroll-shadow ); }
cnc-tabs > .cnc-tabs_nav > .cnc-tabs_scroll.visible { display: flex; }
cnc-tabs > .cnc-tabs_nav:has(> .cnc-tabs_scroll-end.visible) > .cnc-tabs_list { padding-inline-end: calc( var( --scroll-size ) + 0.375rem ); }
cnc-tabs > .cnc-tabs_nav:has(> .cnc-tabs_scroll-start.visible) > .cnc-tabs_list { padding-inline-start: calc( var( --scroll-size ) + 0.375rem ); }
cnc-tabs > .cnc-tabs_nav > .cnc-tabs_scroll:hover { color: var( --scroll-color-hover ); background: var( --scroll-bg-hover ); }
cnc-tabs > .cnc-tabs_nav > .cnc-tabs_scroll svg { display: block; inline-size: 0.9375rem; block-size: 0.9375rem; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item:hover { color: var( --item-text-color-hover , var( --item-text-color ) ); background: var( --item-bg-hover , var( --item-bg ) ); }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"] { color: var( --item-text-color-selected , var( --item-text-color ) ); background: var( --item-bg-selected , var( --item-bg ) ); border-color: var( --item-border-color-selected , var( --item-border-color ) ); box-shadow: var( --item-shadow-selected ); cursor: default; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item[aria-disabled="true"] { opacity: 0.5; cursor: not-allowed; pointer-events: none; }
cnc-tabs[full-width] > .cnc-tabs_nav .cnc-tabs_item { --item-flex: 1 1 0; }
cnc-tabs[direction="horizontal"] > .cnc-tabs_nav > .cnc-tabs_list, cnc-tabs:not([direction]) > .cnc-tabs_nav > .cnc-tabs_list { border-block-end: var( --list-border-width ) solid var( --list-border-color ); padding-block: calc( var( --list-padding ) + var( --list-shadow-gutter ) ); overflow-x: auto; overflow-y: hidden; }
cnc-tabs[direction="horizontal"] > .cnc-tabs_nav > .cnc-tabs_scroll, cnc-tabs:not([direction]) > .cnc-tabs_nav > .cnc-tabs_scroll { top: 50%; transform: translateY( -50% ); }
cnc-tabs[direction="horizontal"] > .cnc-tabs_nav > .cnc-tabs_scroll-start, cnc-tabs:not([direction]) > .cnc-tabs_nav > .cnc-tabs_scroll-start { left: 0.1875rem; }
cnc-tabs[direction="horizontal"] > .cnc-tabs_nav > .cnc-tabs_scroll-end, cnc-tabs:not([direction]) > .cnc-tabs_nav > .cnc-tabs_scroll-end { right: 0.1875rem; }
cnc-tabs[direction="vertical"] > .cnc-tabs_nav > .cnc-tabs_list { border-inline-end: var( --list-border-width ) solid var( --list-border-color ); overflow-x: hidden; overflow-y: auto; }
cnc-tabs[direction="vertical"] > .cnc-tabs_nav { max-block-size: 100%; }
cnc-tabs[direction="vertical"] > .cnc-tabs_nav > .cnc-tabs_scroll { left: 50%; transform: translateX( -50% ) rotate( 90deg ); }
cnc-tabs[direction="vertical"] > .cnc-tabs_nav > .cnc-tabs_scroll-start { top: 0.1875rem; }
cnc-tabs[direction="vertical"] > .cnc-tabs_nav > .cnc-tabs_scroll-end { bottom: 0.1875rem; }
cnc-tabs[direction="vertical"][full-width] > .cnc-tabs_nav .cnc-tabs_item { --item-flex: 0 0 auto; inline-size: 100%; }
cnc-tabs[kind="line"] > .cnc-tabs_nav .cnc-tabs_item::after, cnc-tabs:not([kind]) > .cnc-tabs_nav .cnc-tabs_item::after { content: ""; position: absolute; background: var( --indicator-color ); transition: background var( --transition-duration ) var( --transition-timing ); }
cnc-tabs[kind="line"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after, cnc-tabs:not([kind]) > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { --indicator-color: var( --indicator-color-selected ); }
cnc-tabs[kind="line"][direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item::after, cnc-tabs[kind="line"]:not([direction]) > .cnc-tabs_nav .cnc-tabs_item::after, cnc-tabs:not([kind])[direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item::after, cnc-tabs:not([kind]):not([direction]) > .cnc-tabs_nav .cnc-tabs_item::after { inset-inline: 0; bottom: 0; block-size: var( --indicator-size ); }
cnc-tabs[kind="line"][direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item::after, cnc-tabs:not([kind])[direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item::after { inset-block: 0; inset-inline-end: 0; inline-size: var( --indicator-size ); }
cnc-tabs[kind="curved"][direction="horizontal"] > .cnc-tabs_nav, cnc-tabs[kind="curved"]:not([direction]) > .cnc-tabs_nav { margin-block-end: calc( -1 * var( --panel-border-width ) ); }
cnc-tabs[kind="curved"][direction="vertical"] > .cnc-tabs_nav { margin-inline-end: calc( -1 * var( --panel-border-width ) ); }
cnc-tabs[kind="curved"] > .cnc-tabs_nav > .cnc-tabs_list { position: relative; z-index: 1; }
cnc-tabs[kind="curved"][direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item, cnc-tabs[kind="curved"]:not([direction]) > .cnc-tabs_nav .cnc-tabs_item { border-block-end: none; }
cnc-tabs[kind="curved"][direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item { border-inline-end: none; }
cnc-tabs[kind="curved"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"] { filter: drop-shadow( 2px -1px 1px rgb( 0 0 0 / 0.06 ) ); z-index: 1; }
cnc-tabs[kind="curved"][direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"] { filter: drop-shadow( -1px 2px 1px rgb( 0 0 0 / 0.06 ) ); }
cnc-tabs[kind="curved"][direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item:not([aria-selected="true"]), cnc-tabs[kind="curved"]:not([direction]) > .cnc-tabs_nav .cnc-tabs_item:not([aria-selected="true"]) { border-block-end: var( --item-border-width ) solid var( --panel-border-color ); }
cnc-tabs[kind="curved"][direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item:not([aria-selected="true"]) { border-inline-end: var( --item-border-width ) solid var( --panel-border-color ); }
cnc-tabs[kind="curved"][border] > .cnc-tabs_nav .cnc-tabs_item:not([aria-selected="true"]) { border: var( --item-border-width ) solid var( --panel-border-color ); }
cnc-tabs[kind="curved"][direction="vertical"][border] > .cnc-tabs_nav .cnc-tabs_item:not([aria-selected="true"]) { border-inline-end: none; }
cnc-tabs[kind="curved"][direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before, cnc-tabs[kind="curved"]:not([direction]) > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before, cnc-tabs[kind="curved"][direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after, cnc-tabs[kind="curved"]:not([direction]) > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { content: ""; position: absolute; bottom: 0; inline-size: 0.5rem; block-size: 0.5rem; }
cnc-tabs[kind="curved"][direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before, cnc-tabs[kind="curved"]:not([direction]) > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before { left: -0.5rem; z-index: 1; background: radial-gradient( 0.5rem 0.5rem at top left , transparent 0.4375rem , var( --panel-border-color ) 0.4375rem , var( --panel-border-color ) 0.5rem , var( --panel-bg ) 0.5rem ); }
cnc-tabs[kind="curved"][direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before, cnc-tabs[kind="curved"][direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { content: ""; position: absolute; right: 0; inline-size: 0.43rem; block-size: 0.43rem; }
cnc-tabs[kind="curved"][direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before { top: -0.43rem; z-index: 1; background: radial-gradient( 0.5rem 0.5rem at top left , transparent 0.4375rem , var( --panel-border-color ) 0.4375rem , var( --panel-border-color ) 0.5rem , var( --panel-bg ) 0.5rem ); }
cnc-tabs[kind="curved"][direction="vertical"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { bottom: -0.4375rem; background: radial-gradient( 0.5rem 0.5rem at bottom left , transparent 0.4375rem , var( --panel-border-color ) 0.4375rem , var( --panel-border-color ) 0.5rem , var( --panel-bg ) 0.5rem ); }
cnc-tabs[kind="curved"][direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after, cnc-tabs[kind="curved"]:not([direction]) > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { right: -0.5rem; background: radial-gradient( 0.5rem 0.5rem at top right , transparent 0.4375rem , var( --panel-border-color ) 0.4375rem , var( --panel-border-color ) 0.5rem , var( --panel-bg ) 0.5rem ); }
cnc-tabs[kind="curved"] > .cnc-tabs_nav .cnc-tabs_item:first-child[aria-selected="true"]::before { display: none; }
cnc-tabs[kind="curved"][direction="horizontal"] > .cnc-tabs_nav .cnc-tabs_item:only-child, cnc-tabs[kind="curved"]:not([direction]) > .cnc-tabs_nav .cnc-tabs_item:only-child { flex: 1 1 auto; transition: flex-grow 0.4s ease-in-out; }
cnc-tabs[kind="curved"] > .cnc-tabs_nav .cnc-tabs_item:only-child[aria-selected="true"] { filter: none; }
cnc-tabs[kind="curved"] > .cnc-tabs_nav .cnc-tabs_item:only-child[aria-selected="true"]::after { opacity: 0; }
cnc-tabs[kind="curved"]:not([lone]) > .cnc-tabs_nav > .cnc-tabs_list:hover .cnc-tabs_item:only-child, cnc-tabs[kind="curved"][lone="tab"] > .cnc-tabs_nav .cnc-tabs_item:only-child { flex-grow: 0; }
cnc-tabs[kind="curved"]:not([lone]) > .cnc-tabs_nav > .cnc-tabs_list:hover .cnc-tabs_item:only-child[aria-selected="true"], cnc-tabs[kind="curved"][lone="tab"] > .cnc-tabs_nav .cnc-tabs_item:only-child[aria-selected="true"] { filter: drop-shadow( 1px 0 1px rgb( 0 0 0 / 0.06 ) ); }
cnc-tabs[kind="curved"]:not([lone]) > .cnc-tabs_nav > .cnc-tabs_list:hover .cnc-tabs_item:only-child[aria-selected="true"]::after, cnc-tabs[kind="curved"][lone="tab"] > .cnc-tabs_nav .cnc-tabs_item:only-child[aria-selected="true"]::after { opacity: 1; }
cnc-tabs[kind="curved"][lone] > .cnc-tabs_nav .cnc-tabs_item:only-child { justify-content: flex-start; }
cnc-tabs[kind="curved"][lone] > .cnc-tabs_nav .cnc-tabs_item:only-child .cnc-tabs_label { flex-grow: 1; }
cnc-tabs[kind="curved"]:not([lone]) > .cnc-tabs_nav .cnc-tabs_item:only-child .cnc-tabs_pin, cnc-tabs[kind="curved"]:not([lone]) > .cnc-tabs_nav .cnc-tabs_item:only-child .cnc-tabs_close { max-inline-size: 0; margin-inline-start: 0; padding-inline: 0; opacity: 0; overflow: hidden; pointer-events: none; transform: scale( 0.75 ); transition: max-inline-size 0.2s ease , margin-inline-start 0.2s ease , padding 0.2s ease , opacity 0.15s ease , transform 0.2s ease; }
cnc-tabs[kind="curved"]:not([lone]) > .cnc-tabs_nav > .cnc-tabs_list:hover .cnc-tabs_item:only-child .cnc-tabs_pin, cnc-tabs[kind="curved"]:not([lone]) > .cnc-tabs_nav > .cnc-tabs_list:hover .cnc-tabs_item:only-child .cnc-tabs_close, cnc-tabs[kind="curved"]:not([lone]) > .cnc-tabs_nav .cnc-tabs_item:only-child .cnc-tabs_pin[aria-pressed="true"] { max-inline-size: var( --control-size ); margin-inline-start: 0.125rem; opacity: 1; pointer-events: auto; transform: scale( 1 ); }
cnc-tabs[data-placement^="right"] > .cnc-tabs_nav > .cnc-tabs_list { border-inline-end: 0; border-inline-start: var( --list-border-width ) solid var( --list-border-color ); }
cnc-tabs:where([kind="line"], :not([kind]))[data-placement^="right"] > .cnc-tabs_nav .cnc-tabs_item::after { inset-inline-start: 0; inset-inline-end: auto; }
cnc-tabs[kind="curved"][data-placement^="right"] > .cnc-tabs_nav { margin-inline-end: 0; margin-inline-start: calc( -1 * var( --panel-border-width ) ); }
cnc-tabs[kind="curved"][data-placement^="right"] > .cnc-tabs_nav .cnc-tabs_item { border-inline-end: var( --item-border-width ) solid var( --item-border-color ); border-inline-start: none; }
cnc-tabs[kind="curved"][data-placement^="right"] > .cnc-tabs_nav .cnc-tabs_item:not([aria-selected="true"]) { border-inline-end: var( --item-border-width ) solid var( --panel-border-color ); border-inline-start: var( --item-border-width ) solid var( --panel-border-color ); }
cnc-tabs[kind="curved"][data-placement^="right"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before, cnc-tabs[kind="curved"][data-placement^="right"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { right: auto; left: 0; }
cnc-tabs[kind="curved"][data-placement^="right"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before { background: radial-gradient( 0.5rem 0.5rem at top right , transparent 0.4375rem , var( --panel-border-color ) 0.4375rem , var( --panel-border-color ) 0.5rem , var( --panel-bg ) 0.5rem ); }
cnc-tabs[kind="curved"][data-placement^="right"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { background: radial-gradient( 0.5rem 0.5rem at bottom right , transparent 0.4375rem , var( --panel-border-color ) 0.4375rem , var( --panel-border-color ) 0.5rem , var( --panel-bg ) 0.5rem ); }
cnc-tabs[data-placement^="bottom"] > .cnc-tabs_nav > .cnc-tabs_list { border-block-end: 0; border-block-start: var( --list-border-width ) solid var( --list-border-color ); }
cnc-tabs:where([kind="line"], :not([kind]))[data-placement^="bottom"] > .cnc-tabs_nav .cnc-tabs_item::after { top: 0; bottom: auto; }
cnc-tabs[kind="curved"][data-placement^="bottom"] { --item-border-radius: 0 0 0.5rem 0.5rem; --panel-border-radius: 0.5rem 0.5rem 0 0; }
cnc-tabs[kind="curved"][data-placement^="bottom"] > .cnc-tabs_nav { margin-block-end: 0; margin-block-start: calc( -1 * var( --panel-border-width ) ); }
cnc-tabs[kind="curved"][data-placement^="bottom"] > .cnc-tabs_nav .cnc-tabs_item { border-block-end: var( --item-border-width ) solid var( --item-border-color ); border-block-start: none; }
cnc-tabs[kind="curved"][data-placement^="bottom"] > .cnc-tabs_nav .cnc-tabs_item:not([aria-selected="true"]) { border-block-end: var( --item-border-width ) solid var( --panel-border-color ); border-block-start: var( --item-border-width ) solid var( --panel-border-color ); }
cnc-tabs[kind="curved"][data-placement^="bottom"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before, cnc-tabs[kind="curved"][data-placement^="bottom"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { top: 0; bottom: auto; }
cnc-tabs[kind="curved"][data-placement^="bottom"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::before { background: radial-gradient( 0.5rem 0.5rem at bottom left , transparent 0.4375rem , var( --panel-border-color ) 0.4375rem , var( --panel-border-color ) 0.5rem , var( --panel-bg ) 0.5rem ); }
cnc-tabs[kind="curved"][data-placement^="bottom"] > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"]::after { background: radial-gradient( 0.5rem 0.5rem at bottom right , transparent 0.4375rem , var( --panel-border-color ) 0.4375rem , var( --panel-border-color ) 0.5rem , var( --panel-bg ) 0.5rem ); }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_drag { inline-size: 0; overflow: hidden; opacity: 0; pointer-events: none; transform: scale( 0.75 ); cursor: grab; transition: inline-size 0.2s ease , opacity 0.15s ease , transform 0.2s ease; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item:has(.cnc-tabs_icon:not(.cnc-tabs_drag)) .cnc-tabs_drag { position: absolute; inset-inline-start: 0.625rem; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item:hover .cnc-tabs_drag { inline-size: var( --icon-size ); opacity: 0.5; pointer-events: auto; transform: scale( 1 ); z-index: 1; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_icon:not(.cnc-tabs_drag) { transition: opacity 0.15s ease , transform 0.2s ease; }
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item:has(.cnc-tabs_drag):hover .cnc-tabs_icon:not(.cnc-tabs_drag) { opacity: 0; pointer-events: none; transform: scale( 0.75 ); }
@media (prefers-reduced-motion: reduce) {
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item, cnc-tabs > .cnc-tabs_nav .cnc-tabs_drag, cnc-tabs > .cnc-tabs_nav .cnc-tabs_icon, cnc-tabs > .cnc-tabs_nav .cnc-tabs_pin, cnc-tabs > .cnc-tabs_nav .cnc-tabs_close { transition-duration: 1ms; }
}
}
cnc-tabs[data-dock-fixed-single="true"] .cnc-tabs_nav, cnc-tabs[data-dock-fixed-single="true"] .cnc-tabs_compact { display: none; }
@media (forced-colors: active) {
cnc-tabs > .cnc-tabs_nav .cnc-tabs_item[aria-selected="true"] { border: 2px solid Highlight; forced-color-adjust: none; color: CanvasText; }
}
@layer widgets {
cnc-tag:where([shape="square"], [shape="rectangle"]) { --shape-border-radius: 0; }
cnc-tag:where([shape="pill"]) { --shape-border-radius: var( --radius-full , 9999px ); }
cnc-tag:where([shape="circle"]) { --shape-border-radius: 50%; }
cnc-tag:where([size="xxs"], [size="xs"], [size="sm"]) { --shape-border-radius-rounded: var( --radius-sm , 0.5rem ); }
cnc-tag:where([size="md"], [size="lg"]) { --shape-border-radius-rounded: var( --radius-md , 0.55rem ); }
cnc-tag:where([size="xl"], [size="2xl"]) { --shape-border-radius-rounded: var( --radius-lg , 0.65rem ); }
cnc-tag:where([shape="rounded"]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-lg , 0.5rem ) ); }
cnc-tag[size="xxs"] { --container-font-size: 0.625rem; --container-line-height: 0.875rem; --container-padding: 0.0625rem 0.375rem; --container-gap: 0.25rem; --icon-size: 0.75rem; --control-size: 0.75rem; --indicator-size: 0.35rem; }
cnc-tag[size="xs"] { --container-font-size: 0.75rem; --container-line-height: 1rem; --container-padding: 0.125rem 0.375rem; --container-gap: 0.25rem; --icon-size: 0.875rem; --control-size: 0.75rem; --indicator-size: 0.4rem; }
cnc-tag[size="sm"] { --container-font-size: 0.875rem; --container-line-height: 1.25rem; --container-padding: 0.125rem 0.5rem; --container-gap: 0.35rem; --icon-size: 1rem; --control-size: 0.875rem; --indicator-size: 0.45rem; }
cnc-tag[size="md"], cnc-tag:not([size]) { --container-font-size: 0.875rem; --container-line-height: 1.25rem; --container-padding: 0.25rem 0.625rem; --container-gap: 0.4rem; --icon-size: 1rem; --control-size: 0.875rem; --indicator-size: 0.5rem; }
cnc-tag[size="lg"] { --container-font-size: 1rem; --container-line-height: 1.5rem; --container-padding: 0.25rem 0.75rem; --container-gap: 0.45rem; --icon-size: 1rem; --control-size: 1rem; --indicator-size: 0.55rem; }
cnc-tag[size="xl"] { --container-font-size: 1.125rem; --container-line-height: 1.75rem; --container-padding: 0.25rem 0.875rem; --container-gap: 0.5rem; --icon-size: 1.25rem; --control-size: 1.125rem; --indicator-size: 0.6rem; }
cnc-tag[size="2xl"] { --container-font-size: 1.25rem; --container-line-height: 1.75rem; --container-padding: 0.375rem 1rem; --container-gap: 0.55rem; --icon-size: 1.25rem; --control-size: 1.25rem; --indicator-size: 0.65rem; }
cnc-tag { line-height: 0; --container-shadow: inset 0 0 0 1px var( --container-border-color ); --container-font-weight: 500; --container-border-radius: var( --shape-border-radius , var( --radius-md , 0.5rem ) ); --container-animation-duration: 2s; --container-animation-timing: cubic-bezier( 0.4 , 0 , 0.6 , 1 ); --indicator-margin-inline-end: calc( var( --indicator-size ) * -0.3 ); --control-opacity: 0.6; --control-opacity-hover: 1; --control-margin-inline-start: 0.25rem; }
cnc-tag:not([kind]), cnc-tag:not([kind="plain"]):not([kind="modern"]):not([kind="outline"]) { --container-bg: var( --color-50 , white ); --container-text-color: var( --color-700 , var( --color-neutral-700 ) ); --container-border-color: var( --color-200 , var( --color-neutral-200 ) ); --icon-color: var( --color-500 , var( --color-neutral-500 ) ); --indicator-color: var( --icon-color ); --control-color: var( --color-600 , var( --color-neutral-600 ) ); }
.dark cnc-tag:not([kind]), .dark cnc-tag:not([kind="plain"]):not([kind="modern"]):not([kind="outline"]) { --container-bg: var( --color-950 , black ); --container-text-color: var( --color-600 , var( --color-neutral-500 ) ); --container-border-color: var( --color-800 , var( --color-neutral-800 ) ); --icon-color: var( --color-600 , var( --color-neutral-600 ) ); --control-color: var( --color-400 , var( --color-neutral-400 ) ); }
cnc-tag[kind="plain"] { --container-bg: transparent; --container-text-color: var( --color-neutral-700 ); --container-border-color: var( --color-300 , var( --color-neutral-300 ) ); --icon-color: var( --color-neutral-400 ); }
.dark cnc-tag[kind="plain"] { --container-text-color: var( --color-neutral-400 ); --container-border-color: var( --color-700 , var( --color-neutral-700 ) ); --icon-color: var( --color-neutral-700 ); }
cnc-tag[kind="modern"] { --container-bg: white; --container-text-color: var( --color-neutral-700 ); --container-border-color: var( --color-neutral-300 ); --icon-color: var( --color-neutral-400 ); --indicator-color: var( --color-500 , var( --color-neutral-500 ) ); }
.dark cnc-tag[kind="modern"] { --container-bg: black; --container-text-color: var( --color-neutral-400 ); --container-border-color: var( --color-neutral-700 ); --icon-color: var( --color-neutral-600 ); --indicator-color: var( --color-500 , var( --color-neutral-500 ) ); }
cnc-tag[kind="outline"], cnc-tag[outline]:not([outline="false"]):not([kind="plain"]):not([kind="modern"]) { --container-bg: var( --color-50 , white ); --container-text-color: var( --color-700 , var( --color-neutral-700 ) ); --container-border-color: var( --color-700 , var( --color-neutral-700 ) ); --icon-color: var( --color-500 , var( --color-neutral-500 ) ); }
.dark cnc-tag[kind="outline"], .dark cnc-tag[outline]:not([outline="false"]):not([kind="plain"]):not([kind="modern"]) { --container-bg: var( --color-950 , black ); --container-text-color: var( --color-600 , var( --color-neutral-500 ) ); --container-border-color: var( --color-400 , var( --color-neutral-400 ) ); --icon-color: var( --color-700 , var( --color-neutral-700 ) ); }
cnc-tag [outline]:not([outline="false"]):not([kind="plain"]):not([kind="modern"]):not([kind="outline"])  { --container-border-color: color-mix( in oklab , var( --color-600 , var( --color-neutral-600 ) ) 20% , transparent ); }
cnc-tag .cnc-tag_container { gap: var( --container-gap ); padding: var( --container-padding , 0.25rem 0.625rem ); border-radius: var( --container-border-radius ); background-color: var( --container-bg ); box-shadow: var( --container-shadow ); color: var( --container-text-color ); cursor: var( --container-cursor , default ); font-family: inherit; font-size: var( --container-font-size , 0.875rem ); font-weight: var( --container-font-weight ); line-height: var( --container-line-height , 1.25rem ); }
cnc-tag .cnc-tag_container.disabled { --container-cursor: not-allowed; opacity: var( --container-opacity-disabled , 1 ); }
cnc-tag .cnc-tag_container.pulse { animation: cnc-tag-cnc-tag-pulse var( --container-animation-duration ) var( --container-animation-timing ) infinite; }
cnc-tag .cnc-tag_icon { width: var( --icon-size ); height: var( --icon-size ); color: var( --icon-color ); }
cnc-tag .cnc-tag_indicator { width: var( --indicator-size ); height: var( --indicator-size ); margin-inline-end: var( --indicator-margin-inline-end ); color: var( --indicator-color ); }
cnc-tag .cnc-tag_label { color: var( --label-text-color , inherit ); }
cnc-tag .cnc-tag_control { position: relative; border: 0; padding: 0; background: none; width: var( --control-size ); height: var( --control-size ); margin-inline-start: var( --control-margin-inline-start ); color: var( --control-color ); font-size: var( --control-size ); opacity: var( --control-opacity ); transition: opacity var( --control-transition-duration , 150ms ) var( --control-transition-timing , ease ); }
cnc-tag .cnc-tag_control:hover, cnc-tag .cnc-tag_control:focus-visible { opacity: var( --control-opacity-hover ); }
cnc-tag .cnc-tag_control::before { content: ""; position: absolute; inset: calc( ( var( --control-size ) - 24px ) / 2 ); }
cnc-tag .cnc-tag_control:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
@keyframes cnc-tag-cnc-tag-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}
@media (prefers-reduced-motion: reduce) {
cnc-tag *, cnc-tag *::before, cnc-tag *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-tailwind-editor .cnc-tailwind-editor_swatch { background-color: #fff; background-image: conic-gradient( #d4d4d4 25% , transparent 0 50% , #d4d4d4 0 75% , transparent 0 ); background-size: 8px 8px; }
cnc-tailwind-editor .cnc-tailwind-editor_device > svg { display: block; width: 100%; height: 100%; }
cnc-tailwind-editor .cnc-tailwind-editor_side { appearance: none; background: transparent; border: 0; border-radius: 3px; padding: 1px 2px; font: inherit; text-align: center; text-align-last: center; cursor: pointer; outline: none; }
cnc-tailwind-editor .cnc-tailwind-editor_side:hover:not(:disabled), cnc-tailwind-editor .cnc-tailwind-editor_side:focus-visible { background: rgb( 255 255 255 / 0.8 ); box-shadow: 0 0 0 1px rgb( 0 0 0 / 0.15 ); }
cnc-tailwind-editor .cnc-tailwind-editor_side:disabled { cursor: not-allowed; opacity: 0.6; }
cnc-tailwind-editor .cnc-tailwind-editor_fold { display: grid; grid-template-rows: 0fr; transition: grid-template-rows 200ms ease-out; }
cnc-tailwind-editor .cnc-tailwind-editor_fold[data-open] { grid-template-rows: 1fr; }
cnc-tailwind-editor .cnc-tailwind-editor_fold-inner { min-height: 0; overflow: hidden; }
cnc-tailwind-editor .cnc-tailwind-editor_caret { transition: transform 200ms ease-out; }
cnc-tailwind-editor .cnc-tailwind-editor_caret[data-open] { transform: rotate( 90deg ); }
cnc-tailwind-editor .cnc-tailwind-editor_hue { appearance: none; height: 0.75rem; border-radius: 9999px; background: linear-gradient( to right , #f00 0% , #ff0 17% , #0f0 33% , #0ff 50% , #00f 67% , #f0f 83% , #f00 100% ); cursor: pointer; }
cnc-tailwind-editor .cnc-tailwind-editor_hue::-webkit-slider-thumb { appearance: none; width: 1rem; height: 1rem; border-radius: 9999px; background: #fff; box-shadow: 0 0 0 1px rgb( 0 0 0 / 0.2 ) , 0 1px 3px rgb( 0 0 0 / 0.3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_hue::-moz-range-thumb { width: 1rem; height: 1rem; border: 0; border-radius: 9999px; background: #fff; box-shadow: 0 0 0 1px rgb( 0 0 0 / 0.2 ) , 0 1px 3px rgb( 0 0 0 / 0.3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig { font-family: Inter , ui-sans-serif , system-ui , -apple-system , "Segoe UI" , Roboto , "Noto Sans" , sans-serif; font-size: 11px; font-weight: 450; line-height: 16px; letter-spacing: 0.055px; color: var( --fig-text ); background: var( --fig-bg ); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; cursor: default; }
cnc-tailwind-editor .cnc-tailwind-editor_fig :where(button, input, select) { font: inherit; letter-spacing: inherit; color: inherit; cursor: default; }
cnc-tailwind-editor .cnc-tailwind-editor_fig :where(button) { background: transparent; border: 0; padding: 0; margin: 0; }
cnc-tailwind-editor .cnc-tailwind-editor_fig :where(button, input, select):focus-visible { outline: 1px solid var( --fig-brand ); outline-offset: -1px; }
cnc-tailwind-editor .cnc-tailwind-editor_fig select option { background: var( --fig-bg ); color: var( --fig-text ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-muted { color: var( --fig-text2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-faint { color: var( --fig-text3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-strong { font-weight: 550; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-bar { display: flex; flex-shrink: 0; align-items: center; justify-content: space-between; gap: 8px; height: 40px; padding: 0 8px; border-bottom: 1px solid var( --fig-border ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-section { padding: 0 8px 12px 16px; border-bottom: 1px solid var( --fig-border ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-section:has(> .cnc-tailwind-editor_fig-head:only-child) { padding-bottom: 0; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; height: 40px; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-title { display: flex; flex: 1; align-items: center; height: 100%; text-align: left; font-weight: 550; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-title[data-idle] { font-weight: 450; color: var( --fig-text2 ); }
cnc-tailwind-editor button.cnc-tailwind-editor_fig-title[data-idle]:hover { color: var( --fig-text ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-rows { display: flex; flex-direction: column; gap: 8px; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-row { display: grid; grid-template-columns: minmax( 0 , 1fr ) minmax( 0 , 1fr ) 24px; gap: 8px; align-items: center; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-wide { grid-column: span 2 / span 2; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-row[data-top] { align-items: start; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-note { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 24px; padding: 0 4px 0 8px; border-radius: 5px; background: var( --fig-selected ); color: var( --fig-brand-text ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-box { border-radius: 5px; background: var( --fig-bg2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-dot { background: var( --fig-text3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-mark { background: var( --fig-brand ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-hint { background: var( --fig-text3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field .cnc-tailwind-editor_fig-alpha { flex: none; width: 32px; padding: 0 0 0 8px; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-chip { border-radius: 4px; background: var( --fig-bg ); box-shadow: inset 0 0 0 1px var( --fig-border ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-labels { height: 16px; margin-bottom: -4px; color: var( --fig-text2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field { position: relative; display: flex; align-items: center; min-width: 0; height: 24px; border-radius: 5px; background: var( --fig-bg2 ); outline: 1px solid transparent; outline-offset: -1px; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field:hover { outline-color: var( --fig-border ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field:focus-within { outline-color: var( --fig-brand ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field input, cnc-tailwind-editor .cnc-tailwind-editor_fig-field select { appearance: none; flex: 1; min-width: 0; height: 100%; margin: 0; border: 0; outline: 0; background: transparent; box-sizing: border-box; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field input { padding: 0 8px 0 0; cursor: text; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field input:first-child { padding-left: 8px; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field input::placeholder { color: var( --fig-text3 ); opacity: 1; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field select { padding: 0 24px 0 8px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field :where(input, select):focus-visible { outline: 0; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-lead { display: flex; flex-shrink: 0; align-items: center; justify-content: center; width: 24px; height: 24px; color: var( --fig-text2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-lead[data-figma-scrub] { cursor: ew-resize; touch-action: none; user-select: none; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-unit { flex-shrink: 0; padding-right: 8px; color: var( --fig-text2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-chevron { position: absolute; top: 0; right: 0; width: 24px; height: 24px; color: var( --fig-text2 ); pointer-events: none; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-menuat { position: relative; display: flex; flex-shrink: 0; align-items: center; justify-content: center; width: 24px; height: 24px; color: var( --fig-text2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-menuat select { position: absolute; inset: 0; width: 100%; padding: 0; opacity: 0; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-field:not(:hover, :focus-within) .cnc-tailwind-editor_fig-menuat { visibility: hidden; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-split { align-self: stretch; width: 1px; background: var( --fig-bg ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-icon { display: flex; flex-shrink: 0; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 5px; color: var( --fig-text ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-icon:hover:not(:disabled) { background: var( --fig-hover ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-icon:is([aria-pressed="true"], [aria-expanded="true"]) { background: var( --fig-selected ); color: var( --fig-brand-text ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-icon:disabled { color: var( --fig-text3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-seg { display: flex; min-width: 0; border-radius: 5px; background: var( --fig-bg2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-seg > button { position: relative; display: flex; flex: 1 0 auto; align-items: center; justify-content: center; min-width: 24px; height: 24px; border-radius: 5px; color: var( --fig-text2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-seg > button:hover:not(:disabled) { color: var( --fig-text ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-seg > button:disabled { color: var( --fig-text3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-seg > button:is([aria-checked="true"], [aria-pressed="true"]) { background: var( --fig-bg ); color: var( --fig-text ); box-shadow: inset 0 0 0 1px var( --fig-border ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-check { display: inline-flex; align-items: center; gap: 8px; height: 24px; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-check > span:first-child { display: flex; align-items: center; justify-content: center; width: 16px; height: 16px; box-sizing: border-box; border: 1px solid var( --fig-strong ); border-radius: 4px; color: #fff; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-check[aria-checked="true"] > span:first-child { border-color: transparent; background: var( --fig-brand ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-switch { position: relative; display: inline-flex; flex-shrink: 0; align-items: center; width: 28px; height: 16px; border-radius: 9999px; background: var( --fig-border ); transition: background-color 120ms ease-out; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-switch::after { content: ""; position: absolute; left: 2px; width: 12px; height: 12px; border-radius: 9999px; background: #fff; box-shadow: 0 1px 2px rgb( 0 0 0 / 0.2 ); transition: transform 120ms ease-out; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-switch[aria-checked="true"] { background: var( --fig-brand ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-switch[aria-checked="true"]::after { transform: translateX( 12px ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-switch:disabled { opacity: 0.4; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-tab { height: 24px; padding: 0 8px; border-radius: 5px; color: var( --fig-text2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-tab:hover { color: var( --fig-text ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-tab[aria-selected="true"] { font-weight: 550; color: var( --fig-text ); background: var( --fig-bg2 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-button { display: flex; align-items: center; justify-content: center; gap: 4px; height: 24px; padding: 0 8px; border-radius: 5px; box-shadow: inset 0 0 0 1px var( --fig-border ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-button:hover { background: var( --fig-hover ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-menu { position: absolute; z-index: 40; min-width: 11rem; padding: 8px; border-radius: 13px; background: #1e1e1e; color: #fff; font-size: 12px; box-shadow: 0 0 0.5px rgb( 0 0 0 / 0.12 ) , 0 10px 16px rgb( 0 0 0 / 0.12 ) , 0 2px 5px rgb( 0 0 0 / 0.15 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-menu > button { position: relative; display: flex; align-items: center; width: 100%; height: 24px; padding: 0 8px 0 24px; border-radius: 5px; white-space: nowrap; color: #fff; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-menu > button:hover { background: #0d99ff; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-menu > button > [data-tick] { position: absolute; left: 4px; width: 16px; height: 16px; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-menu > hr { height: 1px; margin: 8px 0; border: 0; background: #383838; }
cnc-tailwind-editor .cnc-tailwind-editor_fig-pop { border-radius: 13px; background: var( --fig-bg ); box-shadow: 0 0 0.5px rgb( 0 0 0 / 0.08 ) , 0 10px 24px rgb( 0 0 0 / 0.18 ) , 0 2px 5px rgb( 0 0 0 / 0.15 ) , inset 0 0 0.5px var( --fig-edge ); }
cnc-tailwind-editor .cnc-tailwind-editor_alpha { appearance: none; height: 0.75rem; border-radius: 9999px; background: linear-gradient( to right , transparent , var( --fig-alpha-colour , #000 ) ) , conic-gradient( #d4d4d4 25% , #fff 0 50% , #d4d4d4 0 75% , #fff 0 ) 0 0 / 8px 8px; cursor: pointer; }
cnc-tailwind-editor .cnc-tailwind-editor_alpha::-webkit-slider-thumb { appearance: none; width: 1rem; height: 1rem; border-radius: 9999px; background: transparent; box-shadow: inset 0 0 0 3px #fff , 0 0 0 1px rgb( 0 0 0 / 0.2 ) , 0 1px 3px rgb( 0 0 0 / 0.3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_alpha::-moz-range-thumb { width: 1rem; height: 1rem; border: 0; border-radius: 9999px; background: transparent; box-shadow: inset 0 0 0 3px #fff , 0 0 0 1px rgb( 0 0 0 / 0.2 ) , 0 1px 3px rgb( 0 0 0 / 0.3 ); }
cnc-tailwind-editor .cnc-tailwind-editor_fig-body { scrollbar-width: thin; scrollbar-color: var( --fig-text3 ) transparent; }
@media (prefers-reduced-motion: reduce) {
cnc-tailwind-editor .cnc-tailwind-editor_fold, cnc-tailwind-editor .cnc-tailwind-editor_caret { transition-duration: 1ms; }
}
}
@layer widgets {
cnc-textarea { --control-border-radius: var( --radius-md , 0.375rem ); }
cnc-textarea { --control-padding: 0.5rem 0.75rem; --control-font-size: 0.875rem; }
cnc-textarea { --control-bg: transparent; --control-border-width: 1px; --control-border-color: var( --color-neutral-300 ); --control-border-color-focus: var( --color-primary-500 ); --control-shadow-focus: 0 0 0 2px rgb( from var( --color-primary-500 ) r g b / 30% ); --control-text-color: var( --color-neutral-800 ); --control-font-weight: 500; --placeholder-text-color: var( --color-neutral-400 ); --placeholder-font-weight: 400; --placeholder-opacity: 0.5; --container-opacity-disabled: 0.5; }
.dark cnc-textarea { --control-border-color: var( --color-neutral-600 ); --control-text-color: var( --color-neutral-200 ); --placeholder-text-color: var( --color-neutral-500 ); }
cnc-textarea { display: block; }
cnc-textarea .cnc-textarea_control { padding: var( --control-padding ); border: var( --control-border-width ) solid var( --control-border-color ); border-radius: var( --control-border-radius ); background: var( --control-bg ); color: var( --control-text-color ); font-family: inherit; font-size: var( --control-font-size ); font-weight: var( --control-font-weight ); }
cnc-textarea .cnc-textarea_control::placeholder { color: var( --placeholder-text-color ); font-weight: var( --placeholder-font-weight ); opacity: var( --placeholder-opacity ); }
cnc-textarea[resize="none"] .cnc-textarea_control { resize: none; }
cnc-textarea[resize="auto"] .cnc-textarea_control { resize: none; overflow: hidden; }
cnc-textarea[resize="vertical"] .cnc-textarea_control { resize: vertical; overflow: auto; }
cnc-textarea .cnc-textarea_control:focus { border-color: var( --control-border-color-focus ); box-shadow: var( --control-shadow-focus ); }
cnc-textarea .cnc-textarea_control:disabled { opacity: var( --container-opacity-disabled ); cursor: not-allowed; }
}
@layer widgets {
cnc-thumbnail { --fallback-padding: 0.25rem; }
cnc-thumbnail { --container-bg: rgb( 0 0 0 / 5% ); --fallback-color: rgb( 0 0 0 / 15% ); }
.dark cnc-thumbnail { --fallback-color: rgb( 255 255 255 / 20% ); }
cnc-thumbnail { display: inline-flex; align-items: center; justify-content: center; overflow: hidden; box-sizing: content-box; vertical-align: middle; line-height: 0; background: var( --container-bg ); color: var( --fallback-color ); user-select: none; }
cnc-thumbnail .cnc-thumbnail_fallback { padding: var( --fallback-padding ); }
}
@layer widgets {
cnc-timeline { --dot-border-radius: var( --radius-full , 9999px ); }
cnc-timeline { --item-padding-start: 2rem; --item-padding-y: 1rem; --dot-top: 1.875rem; --dot-top-titled: 3.375rem; --dot-size: 1rem; --dot-border-width: 4px; --line-width: 2px; --line-inset-start: 0.4375rem; --title-font-size: 0.875rem; --title-margin-bottom: 0.25rem; --title-margin-start: 1rem; --row-gap: 0.5rem; --row-margin-bottom: 0.25rem; --label-font-size: 1.125rem; --content-font-size: 0.875rem; --content-margin-start: 1rem; }
cnc-timeline { --line-color: var( --color-neutral-300 ); --dot-bg: var( --color-primary-500 ); --dot-border-color: white; --dot-pulse-duration: 2s; --title-text-color: var( --color-primary-600 ); --title-font-weight: 500; --label-text-color: var( --color-neutral-800 ); --label-font-weight: 700; --content-text-color: var( --color-neutral-500 ); }
.dark cnc-timeline { --line-color: var( --color-neutral-600 ); --dot-border-color: var( --color-neutral-800 ); --title-text-color: var( --color-primary-400 ); --label-text-color: var( --color-neutral-200 ); --content-text-color: var( --color-neutral-400 ); }
cnc-timeline .cnc-timeline_item { padding: var( --item-padding-y ) 0 var( --item-padding-y ) var( --item-padding-start ); }
cnc-timeline .cnc-timeline_item:has(.cnc-timeline_title) { --dot-top: var( --dot-top-titled ); }
cnc-timeline .cnc-timeline_item::before { content: ""; position: absolute; left: var( --line-inset-start ); top: var( --dot-top ); width: var( --line-width ); height: 100%; background: var( --line-color ); }
cnc-timeline .cnc-timeline_item:last-child::before { display: none; }
cnc-timeline .cnc-timeline_title { margin-bottom: var( --title-margin-bottom ); margin-inline-start: var( --title-margin-start ); color: var( --title-text-color ); font-size: var( --title-font-size ); font-weight: var( --title-font-weight ); text-transform: uppercase; }
cnc-timeline .cnc-timeline_row { gap: var( --row-gap ); margin-bottom: var( --row-margin-bottom ); }
cnc-timeline .cnc-timeline_marker { left: 0; top: var( --dot-top ); transform: translateY( -50% ); }
cnc-timeline .cnc-timeline_dot { width: var( --dot-size ); height: var( --dot-size ); border: var( --dot-border-width ) solid var( --dot-border-color ); border-radius: var( --dot-border-radius ); background: var( --dot-bg ); }
cnc-timeline .cnc-timeline_label { color: var( --label-text-color ); font-size: var( --label-font-size ); font-weight: var( --label-font-weight ); }
cnc-timeline .cnc-timeline_content { margin-inline-start: var( --content-margin-start ); color: var( --content-text-color ); font-size: var( --content-font-size ); }
cnc-timeline .cnc-timeline_dot.pulse { animation: cnc-timeline-pulse var( --dot-pulse-duration ) cubic-bezier( 0.4 , 0 , 0.6 , 1 ) infinite; }
@media (prefers-reduced-motion: reduce) {
cnc-timeline .cnc-timeline_dot.pulse { animation: none; }
}
@keyframes cnc-timeline-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}
}
@layer widgets {
cnc-timezone { --select-border-radius: var( --radius-md , 0.375rem ); }
cnc-timezone { --select-padding-y: 0.375rem; --select-padding-x: 0.5rem; --select-font-size: 0.875rem; }
cnc-timezone { --select-bg: var( --color-50 , white ); --select-border-color: var( --color-200 , var( --color-neutral-300 ) ); --select-border-width: 0.0625rem; --select-text-color: var( --color-700 , var( --color-neutral-800 ) ); --container-opacity-disabled: 0.5; }
.dark cnc-timezone { --select-bg: var( --color-950 , black ); --select-border-color: var( --color-700 , var( --color-neutral-600 ) ); --select-text-color: var( --color-600 , var( --color-neutral-500 ) ); }
cnc-timezone .cnc-timezone_select { box-sizing: border-box; block-size: 100%; padding-block: var( --select-padding-y ); padding-inline: var( --select-padding-x ); border: var( --select-border-width ) solid var( --select-border-color ); border-radius: var( --select-border-radius ); background-color: var( --select-bg ); color: var( --select-text-color ); font: inherit; font-size: var( --select-font-size ); outline: none; cursor: pointer; }
cnc-timezone .cnc-timezone_select:disabled { cursor: not-allowed; opacity: var( --container-opacity-disabled ); }
}
@layer widgets {
cnc-tiptap { --editor-padding: 0.5rem 1rem; --editor-min-height: 8rem; --editor-border-color-focus: var( --color-primary-500 ); }
cnc-tiptap .tiptap { padding: var( --editor-padding ); min-height: var( --editor-min-height ); outline: none; }
cnc-tiptap .tiptap-focused { border-color: var( --editor-border-color-focus ); }
}
@layer widgets {
cnc-toast[shape="rounded"], cnc-toast:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-xl , 0.75rem ) ); }
cnc-toast[shape="soft"] { --shape-border-radius: var( --shape-border-radius-soft , var( --radius-lg , 0.5rem ) ); }
cnc-toast[shape="square"], cnc-toast[shape="rectangle"] { --shape-border-radius: 0; }
cnc-toast[size="sm"] { --shape-border-radius-rounded: var( --radius-lg , 0.5rem ); --container-width: 20rem; --item-padding: 0.75rem; --item-gap: 0.875rem; --title-font-size: 0.8125rem; --message-font-size: 0.75rem; }
cnc-toast[size="md"], cnc-toast:not([size]) { --shape-border-radius-rounded: var( --radius-xl , 0.75rem ); --container-width: 25rem; --item-padding: 1rem; --item-gap: 1rem; --title-font-size: 0.875rem; --message-font-size: 0.875rem; }
cnc-toast[size="lg"] { --shape-border-radius-rounded: var( --radius-xl , 0.75rem ); --container-width: 30rem; --item-padding: 1.125rem; --item-gap: 1rem; --title-font-size: 1rem; --message-font-size: 0.875rem; }
cnc-toast { --container-offset: 0.5rem; --container-gap: 0.625rem; --stack-offset: 1rem; --item-border-radius: var( --toast-border-radius , var( --shape-border-radius , 0 ) ); --item-bg: white; --item-text-color: var( --color-neutral-900 , #171717 ); --message-text-color: var( --color-neutral-600 , #525252 ); --item-border-color: var( --color-neutral-200 , #e5e5e5 ); --item-border-width: 0px; --item-shadow: 0 0 0 1px rgb( 15 23 42 / 0.1 ) , 0 12px 16px -4px rgb( 15 23 42 / 0.08 ) , 0 4px 6px -2px rgb( 15 23 42 / 0.03 ) , 0 2px 2px -1px rgb( 15 23 42 / 0.04 ); --item-transition-duration: 400ms; --item-transition-timing: ease; --icon-color: var( --tone-color ); }
cnc-toast[kind="soft"], cnc-toast:not([kind]) { --item-bg: white; }
cnc-toast[kind="filled"] { --item-bg: transparent; --item-text-color: white; --message-text-color: rgb( 255 255 255 / 0.86 ); --item-border-color: transparent; --icon-color: currentColor; }
cnc-toast[kind="outline"] { --item-bg: white; --item-border-color: transparent; --item-border-width: 2px; }
.dark cnc-toast[kind="soft"], .dark cnc-toast:not([kind]) { --item-bg: var( --color-neutral-900 , #171717 ); --item-text-color: var( --color-neutral-50 , #fafafa ); --message-text-color: var( --color-neutral-300 , #d4d4d4 ); --item-border-color: var( --color-neutral-700 , #404040 ); }
.dark cnc-toast[kind="outline"] { --item-bg: var( --color-neutral-900 , #171717 ); --item-text-color: var( --color-neutral-50 , #fafafa ); --message-text-color: var( --color-neutral-300 , #d4d4d4 ); --item-border-color: transparent; }
cnc-toast { display: contents; }
cnc-toast .cnc-toast_overlay { position: fixed; }
cnc-toast .cnc-toast_overlay .cnc-overlay_surface { position: fixed; inset: auto; width: auto; height: auto; max-width: none; overflow: hidden; background: transparent; }
cnc-toast .cnc-toast_container { --entry-shift: -20px; position: fixed; width: min( var( --container-width ) , calc( 100vw - 2 * var( --container-offset ) ) ); isolation: isolate; }
cnc-toast .cnc-toast_item { --stack-scale: 1; --stack-blur: 0px; --stack-opacity: 1; --stack-z-index: 100; grid-template-rows: 1fr; align-self: start; flex: 0 0 auto; width: 100%; margin: 0; transform: scale( var( --stack-scale ) ); transform-origin: var( --stack-origin , top center ); filter: blur( var( --stack-blur ) ); opacity: var( --stack-opacity ); z-index: var( --stack-z-index ); transition: transform var( --item-transition-duration ) var( --item-transition-timing ) , filter var( --item-transition-duration ) var( --item-transition-timing ) , opacity var( --item-transition-duration ) var( --item-transition-timing ) , margin var( --item-transition-duration ) var( --item-transition-timing ) , grid-template-rows var( --item-transition-duration ) var( --item-transition-timing ); }
cnc-toast .cnc-toast_surface { box-sizing: border-box; color: var( --item-text-color ); background: var( --item-bg ); border: var( --item-border-width ) solid var( --item-border-color ); border-radius: var( --item-border-radius ); box-shadow: var( --item-shadow ); }
cnc-toast .cnc-toast_inner { gap: var( --item-gap ); padding: var( --item-padding ); }
cnc-toast[kind="soft"] .cnc-toast_surface, cnc-toast:not([kind]) .cnc-toast_surface { background: color-mix( in srgb , var( --item-bg ) 94% , var( --tone-color ) ); }
cnc-toast[kind="filled"] .cnc-toast_surface { background: var( --tone-color ); }
cnc-toast[kind="outline"] .cnc-toast_surface { border-color: var( --tone-color ); }
.dark cnc-toast[kind="soft"] .cnc-toast_surface, .dark cnc-toast:not([kind]) .cnc-toast_surface { background: color-mix( in srgb , var( --item-bg ) 92% , var( --tone-color ) ); }
cnc-toast .cnc-toast_item:nth-of-type(2) { --stack-scale: 0.96; --stack-blur: 0.45px; --stack-opacity: 0.86; --stack-z-index: 99; }
cnc-toast .cnc-toast_item:nth-of-type(3) { --stack-scale: 0.92; --stack-blur: 0.9px; --stack-opacity: 0.7; --stack-z-index: 98; }
cnc-toast .cnc-toast_item:nth-of-type(4) { --stack-scale: 0.88; --stack-blur: 1.35px; --stack-opacity: 0.54; --stack-z-index: 97; }
cnc-toast .cnc-toast_item:nth-of-type(5) { --stack-scale: 0.84; --stack-blur: 1.8px; --stack-opacity: 0.4; --stack-z-index: 96; }
cnc-toast .cnc-toast_item:nth-of-type(6) { --stack-scale: 0.8; --stack-blur: 2.25px; --stack-opacity: 0.28; --stack-z-index: 95; }
cnc-toast .cnc-toast_item:nth-of-type(n + 7) { --stack-scale: 0.76; --stack-blur: 2.7px; --stack-opacity: 0; --stack-z-index: 94; }
cnc-toast .cnc-toast_icon { z-index: 1; color: var( --icon-color ); }
cnc-toast .cnc-toast_header { gap: 0.5rem; }
cnc-toast .cnc-toast_content { padding-right: 2rem; }
cnc-toast .cnc-toast_title { flex: 1; font-size: var( --title-font-size ); font-weight: 600; line-height: 1.25rem; }
cnc-toast .cnc-toast_message { margin: 0.25rem 0 0; color: var( --message-text-color ); font-size: var( --message-font-size ); line-height: 1.25rem; overflow-wrap: anywhere; }
cnc-toast .cnc-toast_close { position: absolute; top: 0.5rem; right: 0.5rem; display: inline-grid; place-items: center; width: 2.25rem; height: 2.25rem; padding: 0.5rem; color: currentColor; background: transparent; border: 0; opacity: 0.55; cursor: pointer; }
cnc-toast .cnc-toast_placement-top-start { top: var( --container-offset ); left: var( --container-offset ); }
cnc-toast .cnc-toast_placement-top-center { top: var( --container-offset ); left: 50%; translate: -50% 0; }
cnc-toast .cnc-toast_placement-top-end { top: var( --container-offset ); right: var( --container-offset ); }
cnc-toast .cnc-toast_placement-bottom-start { bottom: var( --container-offset ); left: var( --container-offset ); }
cnc-toast .cnc-toast_placement-bottom-center { bottom: var( --container-offset ); left: 50%; translate: -50% 0; }
cnc-toast .cnc-toast_placement-bottom-end { right: var( --container-offset ); bottom: var( --container-offset ); }
cnc-toast [class*="cnc-toast_placement-bottom"] { --stack-origin: bottom center; --entry-shift: 20px; display: flex; flex-direction: column-reverse; }
cnc-toast [class*="cnc-toast_placement-top"]:not(.is-expanded) .cnc-toast_item:not(:first-of-type):not(.is-buffered):not(.is-dismissing) { margin-top: calc( var( --stack-offset ) - var( --card-height ) ); }
cnc-toast [class*="cnc-toast_placement-bottom"]:not(.is-expanded) .cnc-toast_item:not(:first-of-type):not(.is-buffered):not(.is-dismissing) { margin-bottom: calc( var( --stack-offset ) - var( --card-height ) ); }
cnc-toast [class*="cnc-toast_placement-top"].is-expanded .cnc-toast_item:not(:first-of-type):not(.is-buffered):not(.is-dismissing) { margin-top: var( --container-gap ); }
cnc-toast [class*="cnc-toast_placement-bottom"].is-expanded .cnc-toast_item:not(:first-of-type):not(.is-buffered):not(.is-dismissing) { margin-bottom: var( --container-gap ); }
cnc-toast .cnc-toast_tone-primary { --tone-color: var( --color-primary-600 , #155eef ); }
cnc-toast .cnc-toast_tone-success { --tone-color: var( --color-success-600 , #079455 ); }
cnc-toast .cnc-toast_tone-warning { --tone-color: var( --color-warning-600 , #dc6803 ); }
cnc-toast .cnc-toast_tone-danger { --tone-color: var( --color-danger-600 , #d92d20 ); }
cnc-toast .cnc-toast_tone-info { --tone-color: var( --color-info-600 , #0ba5ec ); }
cnc-toast .cnc-toast_item.is-expanded { transform: none; filter: blur( 0 ); opacity: 1; }
cnc-toast .cnc-toast_item.is-measuring + article { transform: none; transition: none; }
cnc-toast .cnc-toast_item.is-buffered { display: none; }
cnc-toast .cnc-toast_item.is-measuring { visibility: hidden; }
cnc-toast .cnc-toast_item.is-entering { animation: cnc-toast-cnc-toast-fly-in var( --item-transition-duration ) var( --item-transition-timing ) backwards; }
cnc-toast .cnc-toast_item.is-expanded.is-entering { animation-name: cnc-toast-cnc-toast-fly-in; }
cnc-toast .cnc-toast_item.is-expanded.is-promoting { animation: cnc-toast-cnc-toast-promote-in var( --item-exit-duration , 400ms ) var( --item-transition-timing ) both; }
cnc-toast .cnc-toast_item.is-dismissing { grid-template-rows: 0fr; margin-block: 0; pointer-events: none; opacity: 0; transform: translateY( var( --entry-shift ) ) scale( 0.98 ); transition-duration: var( --item-exit-duration , 400ms ); }
cnc-toast .cnc-toast_item.is-expanded.is-dismissing { transform: scale( 0.98 ); }
cnc-toast .cnc-toast_close:hover, cnc-toast .cnc-toast_close:focus-visible { opacity: 1; }
@keyframes cnc-toast-cnc-toast-fly-in {
  from { opacity: 0; transform: translateY( var( --entry-shift ) ) scale( 0.98 ); }
  to { opacity: 1; transform: translateY( 0 ) scale( 1 ); }
}
@keyframes cnc-toast-cnc-toast-promote-in {
  from { grid-template-rows: 0fr; opacity: 0; }
  to { grid-template-rows: 1fr; opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
cnc-toast .cnc-toast_item { transition-duration: 1ms; }
cnc-toast .cnc-toast_item.is-entering { animation-duration: 1ms; }
cnc-toast .cnc-toast_item.is-promoting { animation-duration: 1ms; }
}
}
@layer widgets {
cnc-toggle { --track-border-radius: 1rem; --thumb-border-radius: var( --radius-full , 9999px ); }
cnc-toggle { --track-width: 2rem; --track-height: 1rem; --track-border-width: 2px; --thumb-size: 1.25rem; --thumb-translate-off: -0.375rem; --thumb-translate-on: 0.875rem; --label-gap: 0.5rem; --label-font-size: 0.875rem; }
cnc-toggle { --track-bg-off: var( --color-neutral-300 ); --track-bg-on: var( --color-primary-500 ); --track-border-color: transparent; --track-outline-color-focus: var( --color-primary-500 ); --track-transition-duration: 0.15s; --thumb-bg: white; --thumb-border-color: var( --color-neutral-300 ); --thumb-border-color-on: var( --color-primary-500 ); --thumb-shadow: 0 1px 3px rgb( 0 0 0 / 20% ); --thumb-transition-duration: 0.2s; --label-text-color: var( --color-neutral-700 ); --container-opacity-disabled: 0.7; }
.dark cnc-toggle { --track-bg-off: var( --color-neutral-600 ); --track-bg-on: var( --color-primary-600 ); --thumb-bg: var( --color-neutral-700 ); --thumb-border-color: var( --color-neutral-600 ); --thumb-border-color-on: var( --color-primary-600 ); --label-text-color: var( --color-neutral-100 ); }
cnc-toggle { display: inline-flex; align-items: center; line-height: 1; }
cnc-toggle .cnc-toggle_label-left, cnc-toggle .cnc-toggle_label-right { color: var( --label-text-color ); font-size: var( --label-font-size ); }
cnc-toggle .cnc-toggle_label-left { margin-inline-end: var( --label-gap ); }
cnc-toggle .cnc-toggle_label-right { margin-inline-start: var( --label-gap ); }
cnc-toggle .cnc-toggle_track { width: var( --track-width ); height: var( --track-height ); border: var( --track-border-width ) solid var( --track-border-color ); border-radius: var( --track-border-radius ); cursor: pointer; transition: background-color var( --track-transition-duration ); }
cnc-toggle .cnc-toggle_thumb { width: var( --thumb-size ); height: var( --thumb-size ); border: 1px solid var( --thumb-border-color ); border-radius: var( --thumb-border-radius ); background: var( --thumb-bg ); box-shadow: var( --thumb-shadow ); transition: transform var( --thumb-transition-duration ) ease-in-out; }
cnc-toggle .cnc-toggle_track.off { background-color: var( --track-bg-off ); }
cnc-toggle .cnc-toggle_track.on { background-color: var( --track-bg-on ); }
cnc-toggle .cnc-toggle_track:focus-within { outline: 2px solid var( --track-outline-color-focus ); outline-offset: 2px; }
cnc-toggle .cnc-toggle_thumb.off { transform: translateX( var( --thumb-translate-off ) ); }
cnc-toggle .cnc-toggle_thumb.on { transform: translateX( var( --thumb-translate-on ) ); border-color: var( --thumb-border-color-on ); }
cnc-toggle .cnc-toggle_wrapper.disabled { opacity: var( --container-opacity-disabled ); cursor: not-allowed; }
cnc-toggle .cnc-toggle_wrapper.disabled .cnc-toggle_track, cnc-toggle .cnc-toggle_wrapper.disabled .cnc-toggle_label-left, cnc-toggle .cnc-toggle_wrapper.disabled .cnc-toggle_label-right { cursor: not-allowed; }
cnc-toggle .cnc-toggle_wrapper.readonly { pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
cnc-toggle *, cnc-toggle *::before, cnc-toggle *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
@media (forced-colors: active) {
cnc-toggle .cnc-toggle_track { border: 1px solid ButtonText; forced-color-adjust: none; background: Canvas; }
cnc-toggle .cnc-toggle_track.on { background: Highlight; }
cnc-toggle .cnc-toggle_thumb { background: ButtonText; }
cnc-toggle .cnc-toggle_track.on .cnc-toggle_thumb { background: HighlightText; }
}
}
@layer widgets {
cnc-tooltip[shape="rounded"], cnc-tooltip:not([shape]) { --shape-border-radius: var( --shape-border-radius-rounded , var( --radius-md , 0.375rem ) ); }
cnc-tooltip[shape="pill"] { --shape-border-radius: var( --radius-full , 9999px ); }
cnc-tooltip[shape="circle"] { --shape-border-radius: 50%; }
cnc-tooltip[shape="square"], cnc-tooltip[shape="rectangle"] { --shape-border-radius: 0; }
cnc-tooltip[size="xxs"] { --content-padding: 0.25rem 0.5rem; --text-font-size: 0.6875rem; --description-font-size: 0.625rem; }
cnc-tooltip[size="xs"] { --content-padding: 0.375rem 0.625rem; --text-font-size: 0.75rem; --description-font-size: 0.6875rem; }
cnc-tooltip[size="sm"] { --content-padding: 0.375rem 0.75rem; --text-font-size: 0.8125rem; --description-font-size: 0.75rem; }
cnc-tooltip[size="md"], cnc-tooltip:not([size]) { --content-padding: 0.5rem 0.75rem; --text-font-size: 0.875rem; --description-font-size: 0.8125rem; }
cnc-tooltip[size="lg"] { --content-padding: 0.625rem 0.875rem; --text-font-size: 1rem; --description-font-size: 0.875rem; }
cnc-tooltip[size="xl"] { --content-padding: 0.75rem 1rem; --text-font-size: 1.125rem; --description-font-size: 1rem; }
cnc-tooltip[size="2xl"] { --content-padding: 0.875rem 1.125rem; --text-font-size: 1.25rem; --description-font-size: 1.125rem; }
cnc-tooltip { --content-border-radius: var( --shape-border-radius , 0 ); --content-gap: 0.125rem; --description-opacity: 0.75; --description-font-weight: 500; --popup-transition-duration: 120ms; --popup-transition-timing: ease-out; --popup-transform-origin: center; --popup-translate-y-closed: 0.125rem; --popup-scale-closed: 0.95; --text-font-weight: 600; }
cnc-tooltip:not([kind]), cnc-tooltip[kind="filled"] { --content-shadow: 0 4px 12px rgb( 0 0 0 / 15% ); --content-bg: var( --color-neutral-900 , rgb( 23 23 23 ) ); --content-text-color: var( --color-neutral-100 , rgb( 245 245 245 ) ); --arrow-bg: var( --content-bg ); }
.dark cnc-tooltip:not([kind]), .dark cnc-tooltip[kind="filled"] { --content-shadow: 0 4px 12px rgba( 253 , 253 , 253 , 0.15 ); --content-bg: var( --color-neutral-50 , white ); --content-text-color: var( --color-neutral-700 , rgb( 64 64 64 ) ); --arrow-bg: var( --content-bg ); }
cnc-tooltip .cnc-tooltip_popup { position: absolute; }
cnc-tooltip .cnc-tooltip_content { max-inline-size: var( --content-max-inline-size , calc( 100vw - 0.5rem ) ); gap: var( --content-gap ); padding: var( --content-padding ); color: var( --content-text-color ); background: var( --content-bg ); border-radius: var( --content-border-radius ); box-shadow: var( --content-shadow ); overflow-wrap: anywhere; }
cnc-tooltip .cnc-tooltip_text { font-size: var( --text-font-size ); font-weight: var( --text-font-weight ); }
cnc-tooltip .cnc-tooltip_description { color: var( --description-text-color , currentColor ); font-size: var( --description-font-size ); font-weight: var( --description-font-weight ); opacity: var( --description-opacity ); }
cnc-tooltip .cnc-tooltip_arrow { inline-size: 10px; block-size: 10px; background: var( --arrow-bg ); transform: rotate( 45deg ); }
cnc-tooltip .cnc-tooltip_wrapper.open { visibility: visible; opacity: 1; pointer-events: auto; transform: translate3d( 0 , 0 , 0 ) scale3d( 1 , 1 , 1 ) rotate( 0deg ); }
cnc-tooltip .cnc-tooltip_wrapper.close { visibility: visible; opacity: 0; pointer-events: none; transform: translate3d( 0 , var( --popup-translate-y-closed ) , 0 ) scale3d( var( --popup-scale-closed ) , var( --popup-scale-closed ) , var( --popup-scale-closed ) ) rotate( 0deg ); animation: cnc-tooltip-cnc-tooltip-hide 0s var( --popup-transition-duration ) forwards; }
cnc-tooltip .cnc-tooltip_wrapper { transform-origin: var( --popup-transform-origin ); transition: opacity var( --popup-transition-duration ) var( --popup-transition-timing ) , transform var( --popup-transition-duration ) var( --popup-transition-timing ); will-change: opacity , transform; }
cnc-tooltip .cnc-tooltip_wrapper.open { animation: none; }
cnc-tooltip[animation="none"] { --popup-transition-duration: 0ms; }
@media (prefers-reduced-motion: reduce) {
cnc-tooltip { --popup-transition-duration: 0ms; }
}
@keyframes cnc-tooltip-cnc-tooltip-hide {
  to { visibility: hidden; }
}
}
@layer widgets {
cnc-tree { --row-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-tree { --row-padding-y: 0.5rem; --row-padding-y-condensed: 0.25rem; --row-padding-start: 0.25rem; --row-padding-end: 0.5rem; --row-gap: 0.25rem; --row-font-size: 0.875rem; --icon-size: 1.25rem; --icon-margin-end: 0.25rem; --children-padding-start: 1.25rem; }
cnc-tree { --container-text-color: var( --color-neutral-600 ); --row-bg-hover: var( --color-neutral-100 ); --row-text-color-selected: var( --color-primary-600 ); --row-bg-selected: var( --color-neutral-100 ); --row-text-color-highlighted: var( --color-neutral-500 ); --row-bg-highlighted: var( --color-neutral-100 ); --row-transition-duration: 0.15s; --icon-color: var( --color-neutral-400 ); --icon-color-hover: var( --color-neutral-600 ); }
.dark cnc-tree { --container-text-color: var( --color-neutral-300 ); --row-bg-hover: var( --color-neutral-700 ); --row-text-color-selected: var( --color-primary-400 ); --row-bg-selected: #1e3a5f; --row-text-color-highlighted: var( --color-neutral-200 ); --row-bg-highlighted: var( --color-neutral-800 ); --icon-color-hover: var( --color-neutral-200 ); }
cnc-tree { color: var( --container-text-color ); font-size: var( --row-font-size ); }
cnc-tree .cnc-tree_row { gap: var( --row-gap ); padding: var( --row-padding-y ) var( --row-padding-end ) var( --row-padding-y ) var( --row-padding-start ); border-radius: var( --row-border-radius ); transition: background var( --row-transition-duration ); }
cnc-tree .cnc-tree_row.condensed { padding-top: var( --row-padding-y-condensed ); padding-bottom: var( --row-padding-y-condensed ); }
cnc-tree .cnc-tree_toggle, cnc-tree .cnc-tree_icon { width: var( --icon-size ); height: var( --icon-size ); color: var( --icon-color ); transition: color var( --row-transition-duration ) , transform var( --row-transition-duration ); }
cnc-tree .cnc-tree_toggle, cnc-tree .cnc-tree_spacer { margin-inline-end: var( --icon-margin-end ); margin-inline-start: calc( -1 * var( --icon-margin-end ) ); }
cnc-tree .cnc-tree_toggle.right { margin-inline-start: 0.5rem; margin-inline-end: calc( -1 * var( --icon-margin-end ) ); }
cnc-tree .cnc-tree_spacer { width: var( --icon-size ); }
cnc-tree .cnc-tree_icon { margin-inline-end: var( --icon-margin-end ); }
cnc-tree .cnc-tree_children { padding-inline-start: var( --children-padding-start ); }
cnc-tree .cnc-tree_row:hover { background: var( --row-bg-hover ); }
cnc-tree .cnc-tree_row.active { color: var( --row-text-color-selected ); background: var( --row-bg-selected ); }
cnc-tree .cnc-tree_row.highlighted { color: var( --row-text-color-highlighted ); background: var( --row-bg-highlighted ); }
cnc-tree .cnc-tree_row:hover .cnc-tree_toggle, cnc-tree .cnc-tree_row:hover .cnc-tree_icon { color: var( --icon-color-hover ); }
cnc-tree .collapsed > .cnc-tree_row > .cnc-tree_toggle { transform: rotate( -90deg ); }
cnc-tree .cnc-tree_row:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: -2px; }
@media (prefers-reduced-motion: reduce) {
cnc-tree *, cnc-tree *::before, cnc-tree *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-tree-directory { --row-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-tree-directory { --row-padding-y: 0.5rem; --row-padding-start: 0.25rem; --row-padding-end: 0.5rem; --row-gap: 0.25rem; --row-font-size: 0.875rem; --icon-size: 1.25rem; --icon-margin-end: 0.25rem; --file-margin-start: 1.25rem; --children-padding-start: 1.25rem; }
cnc-tree-directory { --container-text-color: var( --color-neutral-600 ); --row-bg-hover: var( --color-neutral-100 ); --row-text-color-selected: var( --color-primary-600 ); --row-bg-selected: var( --color-neutral-100 ); --row-text-color-highlighted: var( --color-neutral-500 ); --row-bg-highlighted: var( --color-neutral-100 ); --row-transition-duration: 0.15s; --icon-color: var( --color-neutral-400 ); --icon-color-hover: var( --color-neutral-600 ); }
.dark cnc-tree-directory { --container-text-color: var( --color-neutral-300 ); --row-bg-hover: var( --color-neutral-700 ); --row-text-color-selected: var( --color-primary-400 ); --row-bg-selected: #1e3a5f; --row-text-color-highlighted: var( --color-neutral-200 ); --row-bg-highlighted: var( --color-neutral-800 ); --icon-color-hover: var( --color-neutral-200 ); }
cnc-tree-directory { color: var( --container-text-color ); font-size: var( --row-font-size ); }
cnc-tree-directory .cnc-tree-directory_row { gap: var( --row-gap ); padding: var( --row-padding-y ) var( --row-padding-end ) var( --row-padding-y ) var( --row-padding-start ); border-radius: var( --row-border-radius ); transition: background var( --row-transition-duration ); }
cnc-tree-directory .cnc-tree-directory_toggle, cnc-tree-directory .cnc-tree-directory_folder, cnc-tree-directory .cnc-tree-directory_file { width: var( --icon-size ); height: var( --icon-size ); color: var( --icon-color ); transition: color var( --row-transition-duration ) , transform var( --row-transition-duration ); }
cnc-tree-directory .cnc-tree-directory_toggle { margin-inline-end: var( --icon-margin-end ); margin-inline-start: calc( -1 * var( --icon-margin-end ) ); }
cnc-tree-directory .cnc-tree-directory_folder { margin-inline-end: var( --icon-margin-end ); }
cnc-tree-directory .cnc-tree-directory_file { margin-inline-start: var( --file-margin-start ); margin-inline-end: var( --icon-margin-end ); }
cnc-tree-directory .cnc-tree-directory_children { padding-inline-start: var( --children-padding-start ); }
cnc-tree-directory .cnc-tree-directory_row:hover { background: var( --row-bg-hover ); }
cnc-tree-directory .cnc-tree-directory_row.active { color: var( --row-text-color-selected ); background: var( --row-bg-selected ); }
cnc-tree-directory .cnc-tree-directory_row.highlighted { color: var( --row-text-color-highlighted ); background: var( --row-bg-highlighted ); }
cnc-tree-directory .cnc-tree-directory_row:hover .cnc-tree-directory_toggle, cnc-tree-directory .cnc-tree-directory_row:hover .cnc-tree-directory_folder, cnc-tree-directory .cnc-tree-directory_row:hover .cnc-tree-directory_file { color: var( --icon-color-hover ); }
cnc-tree-directory .collapsed > .cnc-tree-directory_row > .cnc-tree-directory_toggle { transform: rotate( -90deg ); }
cnc-tree-directory .cnc-tree-directory_row:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: -2px; }
@media (prefers-reduced-motion: reduce) {
cnc-tree-directory *, cnc-tree-directory *::before, cnc-tree-directory *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-treetable { --ghost-border-radius: var( --radius-DEFAULT , 0.25rem ); --spacer-border-radius: var( --radius-DEFAULT , 0.25rem ); }
cnc-treetable { --table-column-gap: 10px; --row-padding-y: 0.25rem; --label-font-size: 0.875rem; --toggle-cell-min-width: 1.5rem; --toggle-transition-duration: 0.2s; --group-transition-duration: 0.3s; --spacer-transition-duration: 0.25s; }
cnc-treetable { --row-bg: white; --row-bg-hover: var( --color-neutral-50 ); --row-bg-selected: var( --color-primary-50 ); --row-text-color-selected: var( --color-primary-700 ); --handle-color: var( --color-neutral-300 ); --handle-color-hover: var( --color-neutral-700 ); --toggle-color: var( --color-neutral-400 ); --toggle-color-hover: var( --color-neutral-700 ); --ghost-shadow: 0 10px 15px -3px rgb( 0 0 0 / 10% ) , 0 4px 6px -4px rgb( 0 0 0 / 10% ); --spacer-bg: var( --color-primary-100 ); --spacer-opacity: 0.5; --item-opacity-dragging: 0.2; }
.dark cnc-treetable { --row-bg: var( --color-neutral-900 ); --row-bg-hover: var( --color-neutral-800 ); --row-bg-selected: rgb( from var( --color-primary-900 ) r g b / 30% ); --row-text-color-selected: var( --color-primary-300 ); --handle-color-hover: var( --color-neutral-300 ); --toggle-color-hover: var( --color-neutral-300 ); --spacer-bg: rgb( from var( --color-primary-900 ) r g b / 20% ); }
cnc-treetable { display: block; }
cnc-treetable .cnc-treetable_table { display: inline-grid; width: 100%; row-gap: 0; column-gap: var( --table-column-gap ); grid-auto-flow: column; grid-auto-columns: max-content; white-space: nowrap; user-select: none; }
cnc-treetable .cnc-treetable_cell { overflow: hidden; min-height: 0; }
cnc-treetable .cnc-treetable_master { white-space: normal; overflow-wrap: anywhere; min-width: 0; }
cnc-treetable .cnc-treetable_group { display: grid; grid-template-columns: subgrid; grid-column: 1 / var( --columns-count ); grid-template-rows: 1fr; transition: grid-template-rows var( --group-transition-duration ) ease-out; }
cnc-treetable .cnc-treetable_group-inner { display: grid; grid-template-columns: subgrid; grid-column: 1 / var( --columns-count ); grid-template-rows: 1fr; overflow: hidden; min-height: 0; }
cnc-treetable .cnc-treetable_row { display: grid; grid-template-columns: subgrid; grid-column: 1 / var( --columns-count ); grid-template-rows: 1fr; grid-auto-flow: column; grid-auto-columns: max-content; padding: var( --row-padding-y ) 0; background: var( --row-bg ); white-space: nowrap; }
cnc-treetable .cnc-treetable_handle { color: var( --handle-color ); }
cnc-treetable .cnc-treetable_indent { display: inline-block; flex-shrink: 0; }
cnc-treetable .cnc-treetable_label { font-size: var( --label-font-size ); }
cnc-treetable .cnc-treetable_toggle-cell { display: flex; align-items: center; justify-content: center; min-width: var( --toggle-cell-min-width ); }
cnc-treetable .cnc-treetable_toggle { color: var( --toggle-color ); transition: transform var( --toggle-transition-duration ); }
cnc-treetable .cnc-treetable_row:hover { background: var( --row-bg-hover ); }
cnc-treetable .cnc-treetable_row.active { background: var( --row-bg-selected ); color: var( --row-text-color-selected ); }
cnc-treetable .cnc-treetable_handle:hover { color: var( --handle-color-hover ); }
cnc-treetable .cnc-treetable_toggle:hover { color: var( --toggle-color-hover ); }
cnc-treetable .cnc-treetable_toggle.collapsed-icon { transform: rotate( -90deg ); }
cnc-treetable .cnc-treetable_group.collapsed { grid-template-rows: 0fr; }
cnc-treetable .collapsed input { display: none; }
cnc-treetable .item.dragging-hidden { opacity: var( --item-opacity-dragging ); }
cnc-treetable .ghost { border-radius: var( --ghost-border-radius ); box-shadow: var( --ghost-shadow ); }
cnc-treetable .ghost .cnc-treetable_indent { opacity: 0; }
cnc-treetable .spacer { grid-column: 1 / var( --columns-count ); overflow: hidden; border-radius: var( --spacer-border-radius ); background: var( --spacer-bg ); color: transparent; opacity: var( --spacer-opacity ); transition: height var( --spacer-transition-duration ); }
@media (prefers-reduced-motion: reduce) {
cnc-treetable *, cnc-treetable *::before, cnc-treetable *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-treetable2[virtual] { height: 100%; min-height: 0; }
cnc-treetable2 .tree-table-virtual-host { height: 100%; min-height: 0; outline: none; }
cnc-treetable2 .tree-table-virtual-host:focus-visible { outline: 2px solid var( --color-primary-500 , #3b82f6 ); outline-offset: -2px; border-radius: 0.25rem; }
cnc-treetable2 .tree-table { display: inline-grid; row-gap: 0; grid-auto-flow: column; grid-auto-columns: max-content; white-space: nowrap; column-gap: 5px; user-select: none; width: 100%; --columns-count: 5; }
cnc-treetable2:not([drag]) .tree-table, cnc-treetable2[drag="row"] .tree-table { grid-template-columns: 1fr min-content min-content; }
cnc-treetable2[drag="left"] .tree-table { grid-template-columns: min-content 1fr min-content; }
cnc-treetable2 .tree-cell { overflow: hidden; min-height: 0; }
cnc-treetable2 .--item-master-cell { white-space: normal; overflow-wrap: anywhere; min-width: 0; }
cnc-treetable2 .tree-group { display: grid; grid-template-columns: subgrid; grid-column: 1 / var( --columns-count ); grid-template-rows: 1fr; }
cnc-treetable2 .tree-group.animating { transition: grid-template-rows 0.3s ease-out; }
cnc-treetable2 .tree-group.collapsed { grid-template-rows: 0fr; }
cnc-treetable2 .tree-group-inner { display: grid; grid-template-columns: subgrid; grid-column: 1 / var( --columns-count ); overflow: hidden; min-height: 0; grid-template-rows: 1fr; }
cnc-treetable2 .tree-row { display: grid; grid-template-columns: subgrid; grid-column: 1 / var( --columns-count ); grid-template-rows: 1fr; grid-auto-flow: column; grid-auto-columns: max-content; white-space: nowrap; --toggle-btn-bg: var( --color-white ); background-color: var(--color-white); }
.dark cnc-treetable2 .tree-row { background-color: var(--color-slate-900); }
.dark cnc-treetable2 .tree-row { --toggle-btn-bg: var( --color-slate-900 ); }
cnc-treetable2 .tree-row:hover { --toggle-btn-bg: var( --color-neutral-50 ); background-color: var(--color-neutral-50); }
.dark cnc-treetable2 .tree-row:hover { background-color: var(--color-neutral-800); }
cnc-treetable2 .tree-row.active { --toggle-btn-bg: var( --color-primary-50 ); background-color: var(--color-primary-50); color: var(--color-primary-700); }
.dark cnc-treetable2 .tree-row.active { background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent); color: var(--color-primary-300); }
.dark cnc-treetable2 .tree-row.active { --toggle-btn-bg: var( --color-primary-900 ); }
.dark cnc-treetable2 .tree-row:hover { --toggle-btn-bg: var( --color-neutral-800 ); }
cnc-treetable2 .indentation { display: flex; flex-shrink: 0; align-items: stretch; padding-left: 5px; }
cnc-treetable2 .branch-cell { position: relative; width: 16px; height: 100%; overflow: hidden; margin-right: 4px; flex-shrink: 0; }
cnc-treetable2 .branch-vline { width: 50%; height: 100%; left: 0; border-right-width: 2px; border-right-style: var(--tw-border-style); border-color: var(--color-neutral-200); }
.dark cnc-treetable2 .branch-vline { border-color: var(--color-neutral-700); }
cnc-treetable2 .branch-corner { position: absolute; width: 16px; height: 18px; top: -4px; right: -6px; border-radius: 4px; border-width: 2px; border-style: var(--tw-border-style); border-color: var(--color-neutral-200); }
.dark cnc-treetable2 .branch-corner { border-color: var(--color-neutral-700); }
cnc-treetable2 .branch-cell.expander-cell { display: flex; align-items: center; justify-content: center; }
cnc-treetable2 .branch-cell.expander-cell .branch-vline, cnc-treetable2 .branch-cell.expander-cell .branch-corner { position: absolute; z-index: 0; }
cnc-treetable2 { --_expander-chevron: var( --icon-chevron-svg , url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' stroke='black' stroke-width='2.25' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E" ) ); --_expander-plus: var( --icon-plus-square-svg , url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M8 12h8m-4-4v8'/%3E%3C/g%3E%3C/svg%3E" ) ); --_expander-minus: var( --icon-minus-square-svg , url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M8 12h8'/%3E%3C/g%3E%3C/svg%3E" ) ); }
cnc-treetable2 .branch-cell.expander-cell .toggle-btn { position: relative; z-index: 1; display: inline-block; flex-shrink: 0; left: -1px; bottom: -2px; background: transparent; }
cnc-treetable2 .branch-cell.expander-cell .toggle-btn::before { content: ""; position: absolute; background: var( --toggle-btn-bg , white ); pointer-events: none; z-index: 0; }
cnc-treetable2 .branch-cell.expander-cell .toggle-btn::after { content: ""; position: absolute; inset: 0; background: currentColor; pointer-events: none; z-index: 1; }
cnc-treetable2[kind="files"] .branch-cell.expander-cell .toggle-btn, cnc-treetable2[expander="plus"] .branch-cell.expander-cell .toggle-btn { width: 0.75em; height: 0.75em; }
cnc-treetable2[kind="files"] .branch-cell.expander-cell .toggle-btn::before, cnc-treetable2[expander="plus"] .branch-cell.expander-cell .toggle-btn::before { inset: 1px; }
cnc-treetable2[kind="files"] .branch-cell.expander-cell .toggle-btn::after, cnc-treetable2[expander="plus"] .branch-cell.expander-cell .toggle-btn::after { -webkit-mask: var( --_expander-minus ) center / contain no-repeat; mask: var( --_expander-minus ) center / contain no-repeat; }
cnc-treetable2[kind="files"] .branch-cell.expander-cell .toggle-btn.collapsed-icon::after, cnc-treetable2[expander="plus"] .branch-cell.expander-cell .toggle-btn.collapsed-icon::after { -webkit-mask: var( --_expander-plus ) center / contain no-repeat; mask: var( --_expander-plus ) center / contain no-repeat; }
cnc-treetable2:not([kind="files"]):not([expander="plus"]) .branch-cell.expander-cell .toggle-btn, cnc-treetable2[kind="chevron"] .branch-cell.expander-cell .toggle-btn, cnc-treetable2[expander="chevron"] .branch-cell.expander-cell .toggle-btn { width: 1em; height: 1em; }
cnc-treetable2:not([kind="files"]):not([expander="plus"]) .branch-cell.expander-cell .toggle-btn::before, cnc-treetable2[kind="chevron"] .branch-cell.expander-cell .toggle-btn::before, cnc-treetable2[expander="chevron"] .branch-cell.expander-cell .toggle-btn::before { inset: 2px; }
cnc-treetable2:not([kind="files"]):not([expander="plus"]) .branch-cell.expander-cell .toggle-btn::after, cnc-treetable2[kind="chevron"] .branch-cell.expander-cell .toggle-btn::after, cnc-treetable2[expander="chevron"] .branch-cell.expander-cell .toggle-btn::after { -webkit-mask: var( --_expander-chevron ) center / contain no-repeat; mask: var( --_expander-chevron ) center / contain no-repeat; transition: transform 160ms ease; transform: rotate( 180deg ); }
cnc-treetable2:not([kind="files"]):not([expander="plus"]) .branch-cell.expander-cell .toggle-btn.collapsed-icon::after, cnc-treetable2[kind="chevron"] .branch-cell.expander-cell .toggle-btn.collapsed-icon::after, cnc-treetable2[expander="chevron"] .branch-cell.expander-cell .toggle-btn.collapsed-icon::after { transform: rotate( 0deg ); }
cnc-treetable2 .toggle-cell.toggle-cell-vacant { min-width: 0; }
cnc-treetable2 .toggle-btn .expander-chevron { transition: transform 0.2s; }
cnc-treetable2 .toggle-btn.collapsed-icon .expander-chevron { transform: rotate( -90deg ); }
cnc-treetable2 .toggle-btn .expander-closed { display: none; }
cnc-treetable2 .toggle-btn.collapsed-icon .expander-open { display: none; }
cnc-treetable2 .toggle-btn.collapsed-icon .expander-closed { display: inline-flex; }
cnc-treetable2 .item.dragging, cnc-treetable2 .tree-group.drag-source-group { display: none; }
cnc-treetable2 [data-drag-preview-last] { display: none; }
cnc-treetable2 .tree-dragging .tree-row { transition: transform 0.15s ease-out; will-change: transform; }
cnc-treetable2 .tree-dragging .tree-group:not(.collapsed) > .tree-group-inner { overflow: visible; }
cnc-treetable2 .drag-ghost { pointer-events: none; z-index: 50; opacity: 0.7; background-color: var( --color-neutral-50 ); outline: 1px solid var( --color-primary-300 ); --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.dark cnc-treetable2 .drag-ghost { background-color: var(--color-neutral-900); }
cnc-treetable2 .drag-ghost .indentation { transition: width 0.2s cubic-bezier( 0.22 , 1 , 0.36 , 1 ); }
cnc-treetable2 .drag-ghost .indentation .branch-cell:last-child { margin-left: auto; }
@media (prefers-reduced-motion: reduce) {
cnc-treetable2 .tree-dragging .tree-row, cnc-treetable2 .drag-ghost .indentation { transition: none; }
}
cnc-treetable2 .item.nest-target { background-color: color-mix( in srgb , var( --color-primary-500 ) 12% , transparent ); box-shadow: inset 2px 0 0 0 var( --color-primary-500 ); }
cnc-treetable2 .tree-dragging .item:not(.dragging):hover { background-color: inherit; }
cnc-treetable2 .item-label { font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height)); }
cnc-treetable2 .toggle-cell { min-width: 1.5rem; display: flex; align-items: center; justify-content: center; }
}
@layer widgets {
cnc-view { --display-min-width: 250px; --grid-gap: 1rem; }
cnc-view .cnc-view_grid { gap: var( --grid-gap ); grid-template-columns: repeat( auto-fill , minmax( var( --display-min-width ) , 1fr ) ); }
}
@layer widgets {
cnc-virtual-list { display: block; }
}
@layer widgets {
cnc-virtual-rows { display: block; height: 100%; min-height: 0; }
cnc-virtual-rows .cnc-virtual-rows_scroll { height: 100%; min-height: 0; }
cnc-virtual-rows .cnc-virtual-rows_window { will-change: transform; }
}
@layer widgets {
cnc-wizard { --shell-border-radius: var( --radius-xl , 0.75rem ); --step-border-radius: var( --radius-lg , 0.5rem ); --marker-border-radius: var( --radius-full , 9999px ); --error-border-radius: var( --radius-lg , 0.5rem ); }
cnc-wizard { --steps-padding: 1.5rem 1rem; --steps-padding-narrow: 0.75rem; --step-padding: 0.625rem 0.75rem; --step-gap: 0.75rem; --marker-size: 1.75rem; --marker-border-width: 2px; --marker-font-size: 0.75rem; --check-size: 0.875rem; --title-font-size: 0.875rem; --description-font-size: 0.75rem; --content-padding: 2rem; --heading-font-size: 1.125rem; --heading-margin-bottom: 0.25rem; --lead-font-size: 0.875rem; --lead-margin-bottom: 1.5rem; --error-padding: 0.75rem; --error-margin-bottom: 1rem; --error-font-size: 0.875rem; --footer-padding: 1rem 2rem; --count-font-size: 0.75rem; }
cnc-wizard { --shell-border-color: var( --color-neutral-200 ); --steps-bg: var( --color-neutral-50 ); --steps-border-color: var( --color-neutral-200 ); --step-bg-active: white; --step-border-color-active: var( --color-primary-400 ); --step-shadow-active: 0 1px 2px 0 rgb( 0 0 0 / 5% ); --step-bg-hover: var( --color-neutral-100 ); --step-opacity-todo: 0.4; --step-transition-duration: 0.15s; --marker-border-color-active: var( --color-primary-500 ); --marker-bg-active: var( --color-primary-50 ); --marker-text-color-active: var( --color-primary-700 ); --marker-border-color-done: var( --color-primary-400 ); --marker-bg-done: var( --color-primary-500 ); --marker-text-color-done: white; --marker-border-color-todo: var( --color-neutral-300 ); --marker-text-color-todo: var( --color-neutral-400 ); --marker-font-weight: 600; --title-text-color: var( --color-neutral-500 ); --title-font-weight: 500; --title-text-color-active: var( --color-neutral-800 ); --title-font-weight-active: 600; --description-text-color: var( --color-neutral-400 ); --form-bg: white; --heading-text-color: var( --color-neutral-800 ); --heading-font-weight: 600; --lead-text-color: var( --color-neutral-500 ); --error-bg: var( --color-danger-50 ); --error-border-color: var( --color-danger-200 ); --error-text-color: var( --color-danger-700 ); --footer-border-color: var( --color-neutral-200 ); --count-text-color: var( --color-neutral-400 ); }
cnc-wizard { display: block; height: 100%; container-type: inline-size; }
cnc-wizard[hosted], cnc-wizard[hosted] .cnc-wizard_shell { height: auto; }
cnc-wizard .cnc-wizard_shell { height: 100%; border: 1px solid var( --shell-border-color ); border-radius: var( --shell-border-radius ); }
cnc-wizard .cnc-wizard_steps { flex-direction: column; padding: var( --steps-padding ); border-right: 1px solid var( --steps-border-color ); background: var( --steps-bg ); }
cnc-wizard .cnc-wizard_step { gap: var( --step-gap ); padding: var( --step-padding ); border: 1px solid transparent; border-radius: var( --step-border-radius ); transition: background-color var( --step-transition-duration ) , border-color var( --step-transition-duration ); }
cnc-wizard .cnc-wizard_marker { width: var( --marker-size ); height: var( --marker-size ); border: var( --marker-border-width ) solid var( --marker-border-color-todo ); border-radius: var( --marker-border-radius ); color: var( --marker-text-color-todo ); font-size: var( --marker-font-size ); font-weight: var( --marker-font-weight ); transition: background-color var( --step-transition-duration ) , border-color var( --step-transition-duration ) , color var( --step-transition-duration ); }
cnc-wizard .cnc-wizard_check, cnc-wizard .cnc-wizard_icon { width: var( --check-size ); height: var( --check-size ); }
cnc-wizard .cnc-wizard_icon svg { width: 100%; height: 100%; }
cnc-wizard .cnc-wizard_title { color: var( --title-text-color ); font-size: var( --title-font-size ); font-weight: var( --title-font-weight ); }
cnc-wizard .cnc-wizard_description { color: var( --description-text-color ); font-size: var( --description-font-size ); }
cnc-wizard .cnc-wizard_form { background: var( --form-bg ); }
cnc-wizard .cnc-wizard_content { padding: var( --content-padding ); }
cnc-wizard .cnc-wizard_heading { margin-bottom: var( --heading-margin-bottom ); color: var( --heading-text-color ); font-size: var( --heading-font-size ); font-weight: var( --heading-font-weight ); }
cnc-wizard .cnc-wizard_lead { margin-bottom: var( --lead-margin-bottom ); color: var( --lead-text-color ); font-size: var( --lead-font-size ); }
cnc-wizard .cnc-wizard_error { margin-bottom: var( --error-margin-bottom ); padding: var( --error-padding ); border: 1px solid var( --error-border-color ); border-radius: var( --error-border-radius ); background: var( --error-bg ); color: var( --error-text-color ); font-size: var( --error-font-size ); }
cnc-wizard .cnc-wizard_footer { padding: var( --footer-padding ); border-top: 1px solid var( --footer-border-color ); background: var( --form-bg ); }
cnc-wizard .cnc-wizard_count { color: var( --count-text-color ); font-size: var( --count-font-size ); }
cnc-wizard .cnc-wizard_step[data-state="active"] { background: var( --step-bg-active ); border-color: var( --step-border-color-active ); box-shadow: var( --step-shadow-active ); }
cnc-wizard .cnc-wizard_step[aria-disabled="true"] { pointer-events: none; }
cnc-wizard .cnc-wizard_step[data-state="active"] .cnc-wizard_marker { border-color: var( --marker-border-color-active ); background: var( --marker-bg-active ); color: var( --marker-text-color-active ); }
cnc-wizard .cnc-wizard_step[data-state="active"] .cnc-wizard_title { color: var( --title-text-color-active ); font-weight: var( --title-font-weight-active ); }
cnc-wizard .cnc-wizard_step[data-state="done"] { cursor: pointer; }
cnc-wizard .cnc-wizard_step[data-state="done"]:hover { background: var( --step-bg-hover ); }
cnc-wizard .cnc-wizard_step[data-state="done"] .cnc-wizard_marker { border-color: var( --marker-border-color-done ); background: var( --marker-bg-done ); color: var( --marker-text-color-done ); }
cnc-wizard .cnc-wizard_step[data-state="done"][data-locked] { cursor: not-allowed; }
cnc-wizard .cnc-wizard_step[data-state="done"][data-locked]:hover { background: transparent; }
cnc-wizard .cnc-wizard_step[data-state="todo"] { opacity: var( --step-opacity-todo ); }
@container (max-width: 36rem) {
cnc-wizard .cnc-wizard_shell { flex-direction: column; }
cnc-wizard .cnc-wizard_shell > .cnc-wizard_steps { flex-direction: row; overflow-x: auto; padding: var( --steps-padding-narrow ); border-right: 0; border-bottom: 1px solid var( --steps-border-color ); }
cnc-wizard .cnc-wizard_shell > .cnc-wizard_steps > .cnc-wizard_step { flex-shrink: 0; }
}
cnc-wizard .cnc-wizard_step { appearance: none; border: 0; background: none; font: inherit; color: inherit; text-align: inherit; }
cnc-wizard .cnc-wizard_step:focus-visible { outline: 2px solid var( --color-primary-500 , currentColor ); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
cnc-wizard *, cnc-wizard *::before, cnc-wizard *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-workspace .file-tree-blink { animation: cnc-workspace-file-tree-blink-anim 0.5s ease-out; }
@keyframes cnc-workspace-file-tree-blink-anim {
  0% { background-color: rgba( 59 , 130 , 246 , 0.3 ); }
  50% { background-color: rgba( 59 , 130 , 246 , 0.3 ); }
  100% { background-color: transparent; }
}
@media (prefers-reduced-motion: reduce) {
cnc-workspace *, cnc-workspace *::before, cnc-workspace *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; }
}
}
@layer widgets {
cnc-workspace-code .flash-line-highlight { background-color: rgba( 251 , 191 , 36 , 0.5 ) !important; animation: cnc-workspace-code-quick-flash 0.4s ease-out; }
cnc-workspace-code .dom-inspector-highlight { background-color: rgba( 59 , 130 , 246 , 0.15 ) !important; border-left: 2px solid rgba( 59 , 130 , 246 , 0.6 ); }
@keyframes cnc-workspace-code-quick-flash {
  0% { background-color: rgba( 251 , 191 , 36 , 0.7 ); }
  50% { background-color: rgba( 251 , 191 , 36 , 0.7 ); }
  100% { background-color: transparent; }
}
}
@layer widgets {
cnc-workspace-layout { display: flex; overflow: hidden; width: 100%; height: 100%; position: relative; display: block; }
cnc-workspace-layout .empty-state { color: #a3a3a3; }
cnc-workspace-layout .layout-node { min-width: 0; min-height: 0; }
cnc-workspace-layout .tabs-container { min-width: 0; min-height: 0; }
cnc-workspace-layout .tab-bar { background: #f5f5f5; border-color: #e5e5e5; scrollbar-width: none; }
.dark cnc-workspace-layout .tab-bar { background-color: var(--color-neutral-900); }
cnc-workspace-layout .tab-bar-horizontal { display: flex; flex-direction: row; overflow-x: auto; align-items: center; padding-inline: calc(var(--box-spacing) * 1); }
cnc-workspace-layout .tab-bar-vertical { display: flex; flex-direction: column; overflow-y: auto; align-items: center; padding-block: calc(var(--box-spacing) * 1); }
cnc-workspace-layout .tab-bar-top { border-bottom: 1px solid #e5e5e5; }
.dark cnc-workspace-layout .tab-bar-top { border-bottom-color: var(--color-neutral-700); }
cnc-workspace-layout .tab-bar-bottom { border-top: 1px solid #e5e5e5; }
.dark cnc-workspace-layout .tab-bar-bottom { border-top-color: var(--color-neutral-700); }
cnc-workspace-layout .tab-bar-left { border-right: 1px solid #e5e5e5; }
.dark cnc-workspace-layout .tab-bar-left { border-right-color: var(--color-neutral-700); }
cnc-workspace-layout .tab-bar-right { border-left: 1px solid #e5e5e5; }
.dark cnc-workspace-layout .tab-bar-right { border-left-color: var(--color-neutral-700); }
cnc-workspace-layout .tab { cursor: pointer; }
cnc-workspace-layout .tab-content-h { border-bottom: 2px solid transparent; transition: background 0.15s , border-color 0.15s; }
cnc-workspace-layout .tab-content-h:hover { background-color: var(--color-neutral-200); }
.dark cnc-workspace-layout .tab-content-h:hover { background-color: var(--color-neutral-700); }
cnc-workspace-layout .tab-content-h.active { background: white; border-bottom-color: var( --color-primary-500 ); }
.dark cnc-workspace-layout .tab-content-h.active { background-color: var(--color-neutral-900); }
cnc-workspace-layout .tab-content-v { transition: background 0.15s; }
cnc-workspace-layout .tab-content-v:hover { background-color: var(--color-neutral-200); }
.dark cnc-workspace-layout .tab-content-v:hover { background-color: var(--color-neutral-700); }
cnc-workspace-layout .tab-content-v.active { background: white; box-shadow: 0 1px 3px rgba( 0 , 0 , 0 , 0.1 ); }
.dark cnc-workspace-layout .tab-content-v.active { background-color: var(--color-neutral-800); }
cnc-workspace-layout .tab-pin:hover { background-color: var(--color-gray-100); }
.dark cnc-workspace-layout .tab-pin:hover { background-color: var(--color-neutral-700); }
cnc-workspace-layout .tab-pin.pinned { color: var( --color-primary-500 ); }
cnc-workspace-layout .tab-close:hover { background-color: var(--color-gray-100); }
.dark cnc-workspace-layout .tab-close:hover { background-color: var(--color-neutral-700); }
cnc-workspace-layout .tab-panels { min-height: 0; min-width: 0; }
cnc-workspace-layout .panel-empty { color: #a3a3a3; }
cnc-workspace-layout .gutter { transition: background 0.15s; }
cnc-workspace-layout .gutter-v { cursor: col-resize; }
cnc-workspace-layout .gutter-h { cursor: row-resize; }
}
