button,input,select,textarea{font:inherit}
small{font-family:inherit;font-size:var(--text-xs)}
.c-btn{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.35rem;border:1px solid var(--color-primary);border-radius:var(--radius-sm);font-weight:700;line-height:1.3;text-align:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}
.c-btn:hover{transform:translateY(-2px)}
.c-btn:active{transform:translateY(0)}
.c-btn--primary{background:var(--color-primary);color:var(--color-surface)}
.c-btn--primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}
.c-btn--secondary{background:var(--color-surface);color:var(--color-primary);border-color:rgba(87,32,111,.22)}
.c-btn--secondary:hover{background:var(--color-primary-pale);border-color:rgba(87,32,111,.38)}
.c-btn--ghost{background:transparent;color:var(--color-primary);border-color:rgba(87,32,111,.18)}
.c-btn--ghost:hover{background:var(--color-primary-pale);border-color:var(--color-primary)}
.c-cta .c-btn--ghost{color:#f7f0f8;border-color:rgba(255,255,255,.34)}
.c-cta .c-btn--ghost:hover{background:rgba(255,255,255,.1);color:#fff;border-color:#fff}
.c-btn--dark{background:var(--color-dark);border-color:var(--color-dark);color:var(--color-surface)}
.c-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.75rem}
.u-center .c-actions,.c-actions--center{justify-content:center}
.c-card{min-width:0;min-height:0;padding:var(--space-4);background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
.c-card h2,.c-card h3,.c-card h4{color:var(--color-ink)}
.c-card p{color:var(--color-muted)}
.c-card--line{box-shadow:none;border:1px solid var(--color-line)}
.c-card--tint{background:var(--color-primary-pale);color:var(--color-ink);box-shadow:none}
.c-card--dark{background:var(--color-dark);color:var(--color-surface)}
.c-card--dark h2,.c-card--dark h3,.c-card--dark h4{color:var(--color-surface)}
.c-card--dark p{color:#c8c0cc}
.c-price{position:relative;min-width:0;padding:var(--space-4);background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
.c-price--featured{box-shadow:inset 0 4px 0 var(--color-primary),var(--shadow-card)}
.c-price__value{margin:1.5rem 0 .25rem;font-family:var(--font-mono);font-size:clamp(2.25rem,5vw,3.25rem);font-weight:750;line-height:1;font-variant-numeric:tabular-nums}
.c-price__value small{font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;color:var(--color-muted)}
.c-price__spec{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-muted)}
.c-price__list{display:grid;gap:.65rem;margin:1.5rem 0;padding:1.5rem 0;list-style:none;border-block:1px solid var(--color-line)}
.c-price__list li::before{content:"✓";margin-right:.65rem;color:var(--color-accent);font-weight:800}
.c-badge{display:inline-flex;width:fit-content;align-self:flex-start;align-items:center;gap:.4rem;padding:.3rem .65rem;border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--text-xs);font-weight:800;line-height:1.3}
.c-badge--success{background:#e3f3f1;color:#216965}
.c-notice{padding:1.5rem 1.75rem;background:var(--color-primary-pale);color:var(--color-ink);border-left:3px solid var(--color-primary);border-radius:var(--radius-md)}
.c-notice strong{color:var(--color-primary-dark)}
.c-table-scroll{max-width:100%;overflow-x:auto;border-radius:var(--radius-md)}
.c-table{display:table;width:100%;min-width:42rem;background:var(--color-surface);color:var(--color-ink);font-size:var(--text-sm)}
.c-table th,.c-table td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--color-line)}
.c-table th{background:var(--color-primary-pale);color:var(--color-ink);font-weight:800}
.c-table td[data-mono]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.c-table tr:last-child td{border-bottom:0}
.c-faq{border-top:1px solid var(--color-line)}
.c-faq details{border-bottom:1px solid var(--color-line)}
.c-faq summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem .25rem;list-style:none;font-weight:750;cursor:pointer}
.c-faq summary::-webkit-details-marker{display:none}
.c-faq summary::after{content:"";flex:0 0 auto;width:.6rem;height:.6rem;border-right:1.5px solid var(--color-primary);border-bottom:1.5px solid var(--color-primary);transform:rotate(45deg);transition:transform var(--transition-fast)}
.c-faq details[open] summary::after{transform:rotate(225deg)}
.c-faq__body{padding:0 .25rem 1.5rem;padding-top:.15rem;color:var(--color-muted)}
.c-field{display:grid;gap:.5rem;min-width:0}
.c-field label{font-size:var(--text-sm);font-weight:750}
.c-field input,.c-field textarea,.c-field select{width:100%;min-height:3rem;padding:.7rem .85rem;border:1px solid #cfc5d1;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink)}
.c-field textarea{min-height:9rem;resize:vertical}
.c-field select{appearance:none;padding-inline-end:2.5rem;background-image:linear-gradient(45deg,transparent 50%,var(--color-primary) 50%),linear-gradient(135deg,var(--color-primary) 50%,transparent 50%);background-position:calc(100% - 1rem) 50%,calc(100% - .7rem) 50%;background-size:.3rem .3rem,.3rem .3rem;background-repeat:no-repeat}
.c-field input:focus,.c-field textarea:focus,.c-field select:focus{border-color:var(--color-primary);outline:3px solid rgba(87,32,111,.12)}
.c-filter{display:flex;flex-wrap:wrap;gap:.5rem}
.c-filter button{padding:.5rem .85rem;border:1px solid var(--color-line);border-radius:999px;background:var(--color-surface);color:var(--color-muted);cursor:pointer}
.c-filter button[aria-pressed="true"]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-surface)}
.c-breadcrumb,.c-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin:0;padding:0;list-style:none;color:var(--color-muted);font-size:var(--text-sm)}
.c-breadcrumb span+span::before,.c-breadcrumb li+li::before{content:"/";margin-right:.55rem;color:#aaa1ac}
.doc-hero:has(.c-breadcrumb){padding-top:4rem}
.doc-hero:has(.c-breadcrumb)>.l-container-narrow{gap:0;padding-top:0}
.doc-hero:has(.c-breadcrumb) .c-breadcrumb,.mml-article-breadcrumb{margin-bottom:2.5rem}
.doc-hero:has(.c-breadcrumb) .c-breadcrumb+*,.mml-article-breadcrumb+*{margin-top:0;padding-top:0}
.c-code{max-width:100%;overflow-x:auto;padding:1.5rem;background:var(--color-dark);color:#eee8f1;border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-sm)}
.c-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-dark);color:var(--color-surface)}
.c-cta h2,.c-cta h3{color:var(--color-surface)}
.c-cta p{color:#c8c0cc}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(87,32,111,.08);backdrop-filter:blur(14px)}
.site-nav{display:grid;grid-template-columns:minmax(10rem,auto) minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:5rem}
.site-brand{display:flex;min-width:0;align-items:center;gap:.55rem;font-weight:800;letter-spacing:-.02em}
.site-brand img{width:2rem;height:2rem;flex:0 0 auto}
.site-brand span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.site-nav__panel{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.35rem .7rem}
.site-nav__panel a{font-size:.75rem;color:#504a55;white-space:nowrap}
.site-nav__portal,.site-lang__button{font-size:.8125rem}
.site-nav__panel a:hover,.site-nav__panel a.active{color:var(--color-primary)}
.site-nav__tools{display:flex;align-items:center;gap:.5rem}
.site-nav__portal{min-height:2.65rem;padding:.55rem .9rem}
.site-lang{position:relative}
.site-lang__button{display:inline-flex;height:29px;align-items:center;gap:.35rem;padding:0 .5rem;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);font-size:.8125rem;line-height:1;cursor:pointer}
.site-lang__button svg{width:13px;height:13px}
.site-lang__button .chevron{width:8px;height:8px;transition:transform var(--transition-fast)}
.site-lang__button[aria-expanded="true"] .chevron{transform:rotate(180deg)}
.site-lang__menu{position:absolute;right:0;top:calc(100% + .55rem);z-index:110;display:grid;min-width:10rem;padding:.5rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
.site-lang__menu[hidden]{display:none}
.site-lang__menu a{padding:.45rem .65rem;border-radius:var(--radius-sm);font-size:var(--text-sm)}
.site-lang__menu a:hover,.site-lang__menu a[aria-current="true"]{background:var(--color-primary-pale);color:var(--color-primary)}
.site-nav__toggle{display:none;width:2.5rem;height:2.5rem;padding:.55rem;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface)}
.site-nav__toggle span{display:block;height:1.5px;margin:.27rem 0;background:var(--color-ink)}
.site-footer{padding:5rem 0 2rem;background:var(--color-dark);color:var(--color-surface)}
.site-footer__grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:var(--space-4)}
.site-footer__brand img{width:2rem;height:2rem}
.site-footer__brand p{max-width:20rem;color:#aaa2ae;font-size:var(--text-sm)}
.site-footer h2{color:var(--color-surface);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase}
.site-footer a{display:block;margin:.45rem 0;color:#d8d2db;font-size:var(--text-sm)}
.site-footer a:hover{color:var(--color-surface)}
.site-footer__words{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:var(--space-4);padding:1.5rem 0;border-block:1px solid rgba(255,255,255,.1)}
.site-footer__words a{margin:0;padding:.3rem .65rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#aaa2ae;font-size:var(--text-xs)}
.site-footer__bottom{display:flex;justify-content:space-between;gap:1rem;padding-top:1.5rem;color:#918895;font-size:var(--text-xs)}
@media (max-width:1024px){
  .site-nav{grid-template-columns:minmax(0,1fr) auto auto auto;gap:.5rem;min-height:4.5rem}
  .site-nav__toggle{display:block}
  .site-nav__panel{position:absolute;left:var(--page-gutter);right:var(--page-gutter);top:calc(100% + .5rem);display:none;align-items:stretch;padding:1rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
  .site-nav__panel.is-open{display:grid}
  .site-nav__panel a{padding:.65rem}
  .site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .site-nav{grid-template-columns:minmax(0,1fr) auto auto auto}
  .site-brand{font-size:.78rem;gap:.4rem}
  .site-brand img{width:1.65rem;height:1.65rem}
  .site-lang__label{display:none}
  .site-lang__button{width:29px;justify-content:center;padding:0}
  .site-lang__button .chevron{display:none}
  .site-nav__portal{min-height:2.35rem;padding:.45rem .55rem;font-size:var(--text-xs)}
  .site-nav__portal span{display:inline;font-size:.7rem;line-height:1}
  .site-footer__grid{grid-template-columns:1fr}
  .site-footer__bottom{flex-direction:column}
  .c-cta{grid-template-columns:1fr}
  .c-actions .c-btn{flex:1 1 100%}
}
