/* Neobank component styles. Token-driven: include tokens.css first.
   Every value is a var(--token); swapping tokens.css restyles all of these. */

.ui-label{font-family:var(--font-mono);font-size:var(--fontsize-sm);font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--color-primary-500);} .ui-label::before{content:var(--label-prefix,'');color:var(--color-text-muted);}
.ui-brand{position:relative;display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-heading);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-heading);letter-spacing:var(--letter-spacing-heading);color:var(--color-text);font-size:var(--fontsize-lg);} .ui-brand__mark{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--space-6);height:var(--space-6);background:var(--color-primary-500);color:var(--color-primary-contrast);border-radius:var(--radius-sm);clip-path:var(--shape-clip,none);font-family:var(--font-heading);font-size:var(--fontsize-base);} .ui-brand__mark::before{content:'';position:absolute;inset:-45%;z-index:-1;border-radius:50%;background:radial-gradient(circle,var(--color-primary-500),transparent 65%);opacity:0.5;}
.ui-button--default{background-color:var(--color-primary-500);background-image:var(--primary-image);color:var(--color-primary-contrast);border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);clip-path:var(--shape-clip,none);font-family:var(--font-sans);font-size:var(--fontsize-base);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-ui);text-transform:var(--text-transform-ui);box-shadow:var(--shadow-sm);cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-ease-standard);}
.ui-button--default:hover{background:var(--color-primary-600);}
.ui-button--default:active{background:var(--color-primary-700);}
.ui-button--outline{background:transparent;color:var(--color-primary-600);border:var(--border-width) var(--border-style) var(--color-primary-500);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);clip-path:var(--shape-clip,none);font-family:var(--font-sans);font-size:var(--fontsize-base);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-ui);text-transform:var(--text-transform-ui);cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-ease-standard);}
.ui-button--outline:hover{background:var(--color-surface);}
.ui-button--ghost{background:transparent;color:var(--color-primary-600);border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);clip-path:var(--shape-clip,none);font-family:var(--font-sans);font-size:var(--fontsize-base);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-ui);text-transform:var(--text-transform-ui);cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-ease-standard);}
.ui-button--ghost:hover{background:var(--color-surface);}
.ui-card--default{background-color:var(--color-surface);background-image:var(--surface-image);color:var(--color-text);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);clip-path:var(--shape-clip,none);padding:var(--space-5);box-shadow:var(--shadow-md);backdrop-filter:var(--effect-backdrop);font-family:var(--font-sans);max-width:320px;} .ui-card--default__title{margin:0 0 var(--space-2);font-size:var(--fontsize-lg);font-family:var(--font-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-heading);text-transform:var(--text-transform-heading);text-shadow:var(--effect-text-glow);} .ui-card--default__body{margin:0;color:var(--color-text-muted);font-size:var(--fontsize-sm);}
.ui-input--default{display:flex;flex-direction:column;gap:var(--space-1);font-family:var(--font-sans);} .ui-input--default__label{font-size:var(--fontsize-sm);color:var(--color-text-muted);} .ui-input--default__field{background:var(--color-bg);color:var(--color-text);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-2) var(--space-3);font-size:var(--fontsize-base);font-family:var(--font-sans);transition:border-color var(--motion-duration-fast) var(--motion-ease-standard);}
.ui-input--default__field:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 var(--border-width) var(--color-primary-500);}
.ui-badge--solid{display:inline-block;background:var(--color-primary-500);color:var(--color-primary-contrast);font-family:var(--font-sans);font-size:var(--fontsize-sm);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);}
.ui-badge--soft{display:inline-block;background:var(--color-surface);color:var(--color-text);border:var(--border-width) solid var(--color-border);font-family:var(--font-sans);font-size:var(--fontsize-sm);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);}
.ui-badge--success{display:inline-block;background:var(--color-success-500);color:var(--color-primary-contrast);font-family:var(--font-sans);font-size:var(--fontsize-sm);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);}
.ui-alert--info{font-family:var(--font-sans);font-size:var(--fontsize-sm);color:var(--color-text);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-left:var(--space-1) solid var(--color-primary-500);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);max-width:360px;}
.ui-alert--success{font-family:var(--font-sans);font-size:var(--fontsize-sm);color:var(--color-text);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-left:var(--space-1) solid var(--color-success-500);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);max-width:360px;}
.ui-alert--danger{font-family:var(--font-sans);font-size:var(--fontsize-sm);color:var(--color-text);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-left:var(--space-1) solid var(--color-danger-500);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);max-width:360px;}
.ui-switch--on{display:inline-flex;align-items:center;width:calc(var(--space-6) + var(--space-4));height:var(--space-5);background:var(--color-primary-500);border-radius:var(--radius-full);padding:var(--space-1);box-sizing:border-box;justify-content:flex-end;transition:background var(--motion-duration-fast) var(--motion-ease-standard);} .ui-switch--on__knob{width:var(--space-4);height:var(--space-4);background:var(--color-primary-contrast);border-radius:var(--radius-full);}
.ui-switch--off{display:inline-flex;align-items:center;width:calc(var(--space-6) + var(--space-4));height:var(--space-5);background:var(--color-border);border-radius:var(--radius-full);padding:var(--space-1);box-sizing:border-box;justify-content:flex-start;} .ui-switch--off__knob{width:var(--space-4);height:var(--space-4);background:var(--color-bg);border-radius:var(--radius-full);}
.ui-avatar--circle{display:inline-flex;align-items:center;justify-content:center;width:var(--space-6);height:var(--space-6);background:var(--color-primary-500);color:var(--color-primary-contrast);font-family:var(--font-sans);font-size:var(--fontsize-sm);border-radius:var(--radius-full);}
.ui-avatar--rounded{display:inline-flex;align-items:center;justify-content:center;width:var(--space-6);height:var(--space-6);background:var(--color-surface);color:var(--color-text);border:var(--border-width) solid var(--color-border);font-family:var(--font-sans);font-size:var(--fontsize-sm);border-radius:var(--radius-md);}
.ui-breadcrumb--default{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--fontsize-sm);} .ui-breadcrumb--default a{color:var(--color-primary-600);text-decoration:none;} .ui-breadcrumb--default__sep{color:var(--color-text-muted);} .ui-breadcrumb--default__current{color:var(--color-text);font-weight:600;}
.ui-tabs--underline{display:flex;gap:var(--space-4);border-bottom:var(--border-width) var(--border-style) var(--color-border);font-family:var(--font-sans);font-size:var(--fontsize-base);} .ui-tabs--underline__tab{padding:var(--space-2) 0;color:var(--color-text-muted);border-bottom:var(--space-1) solid transparent;cursor:pointer;text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);} .ui-tabs--underline__tab.is-active{color:var(--color-primary-600);border-bottom-color:var(--color-primary-500);}
.ui-table--default{border-collapse:collapse;font-family:var(--font-sans);font-size:var(--fontsize-sm);color:var(--color-text);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);overflow:hidden;} .ui-table--default th{text-align:left;background:var(--color-bg);color:var(--color-text-muted);padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) var(--border-style) var(--color-border);} .ui-table--default td{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) var(--border-style) var(--color-border);}
.ui-progress--default{width:calc(var(--space-6) * 5);height:var(--space-2);background:var(--color-border);border-radius:var(--radius-full);overflow:hidden;} .ui-progress--default__fill{width:65%;height:100%;background:var(--color-primary-500);border-radius:var(--radius-full);}
.ui-modal--default{background-color:var(--color-surface);background-image:var(--surface-image);color:var(--color-text);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);clip-path:var(--shape-clip,none);padding:var(--space-5);box-shadow:var(--shadow-lg);backdrop-filter:var(--effect-backdrop);font-family:var(--font-sans);max-width:320px;} .ui-modal--default__title{margin:0 0 var(--space-2);font-size:var(--fontsize-lg);font-family:var(--font-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-heading);text-transform:var(--text-transform-heading);text-shadow:var(--effect-text-glow);} .ui-modal--default__body{margin:0 0 var(--space-4);color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-modal--default__actions{display:flex;gap:var(--space-2);justify-content:flex-end;} .ui-modal--default__cancel{background:transparent;color:var(--color-text-muted);border:var(--border-width) solid var(--color-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--fontsize-sm);} .ui-modal--default__ok{background:var(--color-primary-500);color:var(--color-primary-contrast);border:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--fontsize-sm);}
.ui-stat{background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);font-family:var(--font-sans);min-width:180px;box-shadow:var(--shadow-sm);} .ui-stat__label{margin:0;font-size:var(--fontsize-sm);color:var(--color-text-muted);} .ui-stat__value{margin:var(--space-1) 0;font-size:var(--fontsize-xl);font-weight:var(--font-weight-bold);font-family:var(--font-heading);color:var(--color-text);} .ui-stat__delta{margin:0;font-size:var(--fontsize-sm);color:var(--color-success-500);}
.ui-dl{font-family:var(--font-sans);font-size:var(--fontsize-sm);min-width:280px;margin:0;} .ui-dl__row{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:var(--border-width) var(--border-style) var(--color-border);} .ui-dl dt{color:var(--color-text-muted);} .ui-dl dd{margin:0;color:var(--color-text);font-weight:600;text-align:right;}
.ui-stack{list-style:none;margin:0;padding:0;font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);overflow:hidden;min-width:320px;} .ui-stack__row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:var(--border-width) var(--border-style) var(--color-border);} .ui-stack__row:last-child{border-bottom:none;} .ui-stack__av{display:inline-flex;align-items:center;justify-content:center;width:var(--space-6);height:var(--space-6);border-radius:var(--radius-full);background:var(--color-primary-500);color:var(--color-primary-contrast);font-size:var(--fontsize-sm);flex:none;} .ui-stack__main{display:flex;flex-direction:column;flex:1;} .ui-stack__title{color:var(--color-text);font-weight:600;font-size:var(--fontsize-base);} .ui-stack__sub{color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-stack__meta{color:var(--color-text-muted);font-size:var(--fontsize-sm);}
.ui-pageheading{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);font-family:var(--font-sans);border-bottom:var(--border-width) var(--border-style) var(--color-border);padding-bottom:var(--space-4);min-width:340px;} .ui-pageheading__eyebrow{margin:0;font-size:var(--fontsize-sm);color:var(--color-text-muted);} .ui-pageheading__title{margin:var(--space-1) 0 0;font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--fontsize-xl);color:var(--color-text);text-transform:var(--text-transform-heading);letter-spacing:var(--letter-spacing-heading);} .ui-pageheading__btn{background:var(--color-primary-500);background-image:var(--primary-image);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-2) var(--space-4);font-size:var(--fontsize-sm);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);cursor:pointer;}
.ui-empty{text-align:center;font-family:var(--font-sans);border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);max-width:340px;} .ui-empty__icon{width:var(--space-6);height:var(--space-6);margin:0 auto var(--space-3);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-primary-500);font-size:var(--fontsize-xl);} .ui-empty__title{margin:0;font-weight:600;color:var(--color-text);} .ui-empty__text{margin:var(--space-1) 0 var(--space-4);color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-empty__btn{background:var(--color-primary-500);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-2) var(--space-4);font-size:var(--fontsize-sm);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-navbar{display:flex;align-items:center;gap:var(--space-5);font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);min-width:480px;box-shadow:var(--shadow-sm);} .ui-navbar__brand{font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-text);text-transform:var(--text-transform-heading);} .ui-navbar__links{display:flex;gap:var(--space-4);flex:1;} .ui-navbar__links a{color:var(--color-text-muted);font-size:var(--fontsize-sm);cursor:pointer;text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);} .ui-navbar__links a.is-active{color:var(--color-primary-600);font-weight:600;} .ui-navbar__btn{background:var(--color-primary-500);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-2) var(--space-4);font-size:var(--fontsize-sm);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-pager{display:inline-flex;font-family:var(--font-sans);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);overflow:hidden;} .ui-pager a{padding:var(--space-2) var(--space-3);font-size:var(--fontsize-sm);color:var(--color-text-muted);cursor:pointer;border-left:var(--border-width) var(--border-style) var(--color-border);} .ui-pager a:first-child{border-left:none;} .ui-pager a.is-active{background:var(--color-primary-500);color:var(--color-primary-contrast);} .ui-pager__edge{color:var(--color-text);}
.ui-dropdown{font-family:var(--font-sans);display:inline-block;} .ui-dropdown__btn{background:var(--color-surface);color:var(--color-text);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);font-size:var(--fontsize-sm);cursor:pointer;} .ui-dropdown__menu{margin-top:var(--space-1);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;width:180px;} .ui-dropdown__menu a{display:block;padding:var(--space-2) var(--space-4);font-size:var(--fontsize-sm);color:var(--color-text);cursor:pointer;} .ui-dropdown__menu a:hover{background:var(--color-bg);} .ui-dropdown__danger{color:var(--color-danger-500);}
.ui-note{display:flex;gap:var(--space-3);align-items:flex-start;font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-4);max-width:340px;} .ui-note__dot{width:var(--space-3);height:var(--space-3);border-radius:var(--radius-full);background:var(--color-success-500);margin-top:var(--space-1);flex:none;} .ui-note__body{flex:1;} .ui-note__title{margin:0;font-weight:600;color:var(--color-text);font-size:var(--fontsize-sm);} .ui-note__text{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-note__close{color:var(--color-text-muted);cursor:pointer;}
.ui-bgroup{display:inline-flex;font-family:var(--font-sans);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);overflow:hidden;} .ui-bgroup button{background:var(--color-surface);color:var(--color-text);border:none;border-left:var(--border-width) var(--border-style) var(--color-border);padding:var(--space-2) var(--space-4);font-size:var(--fontsize-sm);cursor:pointer;text-transform:var(--text-transform-ui);} .ui-bgroup button:first-child{border-left:none;} .ui-bgroup button.is-active{background:var(--color-primary-500);color:var(--color-primary-contrast);}
.ui-select{display:flex;flex-direction:column;gap:var(--space-1);font-family:var(--font-sans);min-width:240px;} .ui-select__label{font-size:var(--fontsize-sm);color:var(--color-text-muted);} .ui-select__field{display:flex;justify-content:space-between;align-items:center;background:var(--color-bg);color:var(--color-text);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:var(--fontsize-base);} .ui-select__chev{color:var(--color-text-muted);}
.ui-check{display:flex;flex-direction:column;gap:var(--space-3);font-family:var(--font-sans);font-size:var(--fontsize-base);color:var(--color-text);} .ui-check label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;} .ui-check__box{display:inline-flex;align-items:center;justify-content:center;width:var(--space-4);height:var(--space-4);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);font-size:var(--fontsize-sm);color:transparent;} .ui-check__box.is-on{background:var(--color-primary-500);border-color:var(--color-primary-500);color:var(--color-primary-contrast);}
.ui-signin{display:flex;flex-direction:column;gap:var(--space-3);font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-5);width:300px;} .ui-signin__title{margin:0 0 var(--space-2);font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-text);text-transform:var(--text-transform-heading);} .ui-signin__field{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--fontsize-sm);color:var(--color-text-muted);} .ui-signin__input{background:var(--color-bg);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-text);} .ui-signin__btn{margin-top:var(--space-2);background:var(--color-primary-500);background-image:var(--primary-image);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-2) var(--space-4);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-divider{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-sans);min-width:300px;} .ui-divider__line{height:var(--border-width);background:var(--color-border);flex:1;} .ui-divider__label{font-size:var(--fontsize-sm);color:var(--color-text-muted);text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);}
.ui-hero{text-align:center;font-family:var(--font-sans);background:var(--color-surface);background-image:var(--surface-image);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);max-width:560px;} .ui-hero__eyebrow{margin:0;color:var(--color-primary-600);font-size:var(--fontsize-sm);text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);} .ui-hero__title{margin:var(--space-2) 0;font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--fontsize-xl);line-height:1.15;color:var(--color-text);text-transform:var(--text-transform-heading);letter-spacing:var(--letter-spacing-heading);} .ui-hero__sub{margin:0 auto var(--space-5);max-width:420px;color:var(--color-text-muted);font-size:var(--fontsize-base);} .ui-hero__cta{display:flex;gap:var(--space-3);justify-content:center;} .ui-hero__primary{background:var(--color-primary-500);background-image:var(--primary-image);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-3) var(--space-5);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;} .ui-hero__ghost{background:transparent;color:var(--color-primary-600);border:var(--border-width) var(--border-style) var(--color-primary-500);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-features{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);font-family:var(--font-sans);max-width:620px;} .ui-feature{background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);} .ui-feature__icon{width:var(--space-6);height:var(--space-6);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--color-primary-500);color:var(--color-primary-contrast);margin-bottom:var(--space-3);} .ui-feature h4{margin:0 0 var(--space-1);font-family:var(--font-heading);color:var(--color-text);font-size:var(--fontsize-base);} .ui-feature p{margin:0;color:var(--color-text-muted);font-size:var(--fontsize-sm);}
.ui-cta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);font-family:var(--font-sans);background:var(--color-primary-500);background-image:var(--primary-image);border-radius:var(--radius-lg);padding:var(--space-5);max-width:560px;} .ui-cta__title{margin:0;font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-primary-contrast);font-size:var(--fontsize-lg);} .ui-cta__sub{margin:var(--space-1) 0 0;color:var(--color-primary-contrast);opacity:0.85;font-size:var(--fontsize-sm);} .ui-cta__btn{background:var(--color-primary-contrast);color:var(--color-primary-700);border:none;border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;white-space:nowrap;}
.ui-price{font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-5);width:260px;} .ui-price__name{margin:0;color:var(--color-primary-600);font-weight:600;text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);font-size:var(--fontsize-sm);} .ui-price__amt{margin:var(--space-2) 0;font-family:var(--font-heading);font-weight:var(--font-weight-bold);font-size:var(--fontsize-xl);color:var(--color-text);} .ui-price__amt span{font-size:var(--fontsize-sm);color:var(--color-text-muted);font-weight:400;} .ui-price__list{list-style:none;margin:0 0 var(--space-4);padding:0;display:flex;flex-direction:column;gap:var(--space-2);color:var(--color-text);font-size:var(--fontsize-sm);} .ui-price__btn{width:100%;background:var(--color-primary-500);background-image:var(--primary-image);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-3);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-quote{font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);max-width:440px;margin:0;} .ui-quote__text{margin:0 0 var(--space-4);font-size:var(--fontsize-lg);line-height:1.5;color:var(--color-text);font-family:var(--font-heading);} .ui-quote__by{display:flex;align-items:center;gap:var(--space-3);} .ui-quote__av{display:inline-flex;align-items:center;justify-content:center;width:var(--space-6);height:var(--space-6);border-radius:var(--radius-full);background:var(--color-primary-500);color:var(--color-primary-contrast);font-size:var(--fontsize-sm);} .ui-quote__name{display:block;font-weight:600;color:var(--color-text);font-size:var(--fontsize-sm);} .ui-quote__role{display:block;color:var(--color-text-muted);font-size:var(--fontsize-sm);}
.ui-news{font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);max-width:480px;} .ui-news__title{margin:0;font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-text);} .ui-news__sub{margin:var(--space-1) 0 var(--space-4);color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-news__form{display:flex;gap:var(--space-2);} .ui-news__input{flex:1;background:var(--color-bg);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-news__btn{background:var(--color-primary-500);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-2) var(--space-4);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-footer{font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);max-width:520px;} .ui-footer__cols{display:flex;gap:var(--space-6);} .ui-footer__brand{margin:0;font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-text);} .ui-footer__tag{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--fontsize-sm);max-width:160px;} .ui-footer__col{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--fontsize-sm);} .ui-footer__col span{color:var(--color-text);font-weight:600;text-transform:var(--text-transform-ui);letter-spacing:var(--letter-spacing-ui);} .ui-footer__col a{color:var(--color-text-muted);cursor:pointer;} .ui-footer__legal{margin:var(--space-5) 0 0;padding-top:var(--space-4);border-top:var(--border-width) var(--border-style) var(--color-border);color:var(--color-text-muted);font-size:var(--fontsize-sm);}
.ui-product{font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);overflow:hidden;width:220px;box-shadow:var(--shadow-sm);} .ui-product__img{display:block;width:100%;height:150px;object-fit:cover;background:var(--color-bg);border-bottom:var(--border-width) var(--border-style) var(--color-border);} .ui-product__body{padding:var(--space-4);} .ui-product__name{margin:0;font-weight:600;color:var(--color-text);} .ui-product__cat{margin:var(--space-1) 0 var(--space-3);color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-product__row{display:flex;align-items:center;justify-content:space-between;} .ui-product__price{font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-text);} .ui-product__btn{background:var(--color-primary-500);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-1) var(--space-3);font-size:var(--fontsize-sm);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-product{font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);overflow:hidden;width:220px;box-shadow:var(--shadow-sm);} .ui-product__img{display:block;width:100%;height:150px;object-fit:cover;background:var(--color-bg);border-bottom:var(--border-width) var(--border-style) var(--color-border);} .ui-product__body{padding:var(--space-4);} .ui-product__name{margin:0;font-weight:600;color:var(--color-text);} .ui-product__cat{margin:var(--space-1) 0 var(--space-3);color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-product__row{display:flex;align-items:center;justify-content:space-between;} .ui-product__price{font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-text);} .ui-product__btn{background:var(--color-primary-500);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-1) var(--space-3);font-size:var(--fontsize-sm);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-cart{display:flex;gap:var(--space-4);align-items:center;font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);max-width:420px;} .ui-cart__img{width:64px;height:64px;object-fit:cover;border-radius:var(--radius-md);background:var(--color-bg);border:var(--border-width) var(--border-style) var(--color-border);flex:none;} .ui-cart__main{flex:1;} .ui-cart__name{margin:0;font-weight:600;color:var(--color-text);} .ui-cart__meta{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-cart__right{text-align:right;display:flex;flex-direction:column;gap:var(--space-1);} .ui-cart__price{font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-text);} .ui-cart__qty{color:var(--color-text-muted);font-size:var(--fontsize-sm);} .ui-cart__rm{color:var(--color-primary-600);font-size:var(--fontsize-sm);cursor:pointer;}
.ui-order{font-family:var(--font-sans);background:var(--color-surface);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);width:280px;} .ui-order__title{margin:0 0 var(--space-3);font-family:var(--font-heading);font-weight:var(--font-weight-bold);color:var(--color-text);} .ui-order__row{display:flex;justify-content:space-between;padding:var(--space-2) 0;color:var(--color-text-muted);font-size:var(--fontsize-sm);border-bottom:var(--border-width) var(--border-style) var(--color-border);} .ui-order__total{color:var(--color-text);font-weight:700;font-size:var(--fontsize-base);border-bottom:none;} .ui-order__btn{margin-top:var(--space-3);width:100%;background:var(--color-primary-500);background-image:var(--primary-image);color:var(--color-primary-contrast);border:none;border-radius:var(--radius-md);clip-path:var(--shape-clip,none);padding:var(--space-3);font-weight:var(--font-weight-bold);text-transform:var(--text-transform-ui);cursor:pointer;}
.ui-cat{font-family:var(--font-sans);border-radius:var(--radius-lg);overflow:hidden;width:220px;border:var(--border-width) var(--border-style) var(--color-border);} .ui-cat__img{display:block;width:100%;height:120px;object-fit:cover;} .ui-cat__label{display:flex;justify-content:space-between;align-items:center;background:var(--color-surface);padding:var(--space-3) var(--space-4);} .ui-cat__label span{font-weight:600;color:var(--color-text);} .ui-cat__label a{color:var(--color-primary-600);font-size:var(--fontsize-sm);cursor:pointer;}
.ui-reviews{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-sans);} .ui-reviews__stars{color:var(--color-primary-500);font-size:var(--fontsize-lg);letter-spacing:2px;} .ui-reviews__off{color:var(--color-border);} .ui-reviews__count{color:var(--color-text-muted);font-size:var(--fontsize-sm);}