/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.text-align-left{text-align:left;}.text-align-right{text-align:right;}.text-align-center{text-align:center;}.text-align-justify{text-align:justify;}.align-left{float:left;}.align-right{float:right;}.align-center{display:block;margin-right:auto;margin-left:auto;}
.container-inline div,.container-inline label{display:inline-block;}.container-inline .details-wrapper{display:block;}.container-inline .hidden{display:none;}
.clearfix::after{display:table;clear:both;content:"";}
.hidden{display:none;}.visually-hidden{position:absolute !important;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;word-wrap:normal;}.visually-hidden.focusable:active,.visually-hidden.focusable:focus-within{position:static !important;overflow:visible;clip:auto;width:auto;height:auto;}.invisible{visibility:hidden;}
.js .js-hide{display:none;}.js-show{display:none;}.js .js-show{display:block;}@media (scripting:enabled){.js-hide.js-hide{display:none;}.js-show{display:block;}}
:root{--ai-font-size-base:var(--font-size-base);--ai-font-size-s:var(--font-size-s);--ai-font-size-xs:var(--font-size-xs);--ai-font-size-xxs:var(--font-size-xxs);--ai-font-size-h1:var(--font-size-h1);--ai-font-size-h2:var(--font-size-h2);--ai-font-size-h3:var(--font-size-h3);--ai-font-size-h4:var(--font-size-h4);--ai-font-size-h5:var(--font-size-h5);--ai-font-size-h6:var(--font-size-h6);--ai-text-color-muted:var(--color-text-light);--ai-icon-size:1.25rem;--ai-icon-size-lg:2rem;}.ai-font-size-base{font-size:var(--ai-font-size-base);}.ai-font-size-s{font-size:var(--ai-font-size-s);}.ai-font-size-xs{font-size:var(--ai-font-size-xs);}.ai-font-size-xxs{font-size:var(--ai-font-size-xxs);}.ai-text-muted{color:var(--ai-text-color-muted);}.ai-description{font-size:var(--ai-font-size-xs);line-height:1.25;color:var(--ai-text-color-muted);hyphens:none;text-wrap:balance;}.ai-heading-h1{font-size:var(--ai-font-size-h1);}.ai-heading-h2{font-size:var(--ai-font-size-h2);}.ai-heading-h3{font-size:var(--ai-font-size-h3);}.ai-heading-h4{font-size:var(--ai-font-size-h4);}.ai-heading-h5{font-size:var(--ai-font-size-h5);}.ai-heading-h6{font-size:var(--ai-font-size-h6);}select.ai-select,select.ai-select--narrow,select.ai-select--wide{max-width:200px;}select.ai-select--narrow{max-width:150px;}select.ai-select--wide{max-width:300px;}.ai-icon-button{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:calc(var(--ai-icon-size) + 0.5rem);height:calc(var(--ai-icon-size) + 0.5rem);padding:0.25rem;color:var(--gin-icon-color,var(--ai-text-color-muted));text-decoration:none;background-color:transparent;background-repeat:no-repeat;background-position:center;background-size:var(--ai-icon-size) var(--ai-icon-size);border:1px solid var(--color-gray-200,rgba(0,0,0,0.08));border-radius:var(--gin-border-m,0.5rem);transition:background-color 0.15s var(--gin-easing,cubic-bezier(0.19,1,0.22,1)),border-color 0.15s var(--gin-easing,cubic-bezier(0.19,1,0.22,1));cursor:pointer;}.ai-icon-button:hover{background-color:var(--color-gray-100,rgba(0,0,0,0.06));border-color:var(--color-gray-200,rgba(0,0,0,0.08));}.ai-icon-button:focus{outline:none;}.ai-icon-button:focus-visible{background-color:var(--color-gray-100,rgba(0,0,0,0.06));outline:2px solid var(--gin-color-focus,var(--color-focus,#007dfacc));outline-offset:2px;}.ai-icon-button:active{background-color:var(--color-gray-200,rgba(0,0,0,0.12));border-color:var(--color-gray-300,rgba(0,0,0,0.15));}.ai-icon-button--lg{--ai-icon-size:var(--ai-icon-size-lg);}.ai-icon{display:inline-block;flex-shrink:0;width:var(--ai-icon-size);height:var(--ai-icon-size);background-repeat:no-repeat;background-position:center;background-size:100%;}.ai-icon--lg{--ai-icon-size:var(--ai-icon-size-lg);}.ai-icon--provider{background-image:url(/modules/contrib/ai/assets/icons/plugs.svg);}.ai-icon--model{background-image:url(/modules/contrib/ai/assets/icons/cube.svg);}.ai-icon--external{background-image:url(/modules/contrib/ai/assets/icons/external.svg);}.ai-icon--settings{background-image:url(/modules/contrib/ai/assets/icons/gear.svg);}.ai-icon--supported{background-image:url(/modules/contrib/ai/assets/icons/checkmark-circle.svg);}.ai-icon--not-supported{background-image:url(/modules/contrib/ai/assets/icons/x-circle.svg);}.ai-icon--warning{background-image:url(/modules/contrib/ai/assets/icons/warning.svg);}.ai-icon--option{background-image:url(/modules/contrib/ai/assets/icons/option.svg);}.ai-icon--arrow-left-up{background-image:url(/modules/contrib/ai/assets/icons/arrow-left-up.svg);}.ai-icon--cloud-arrow-down{background-image:url(/modules/contrib/ai/assets/icons/cloud-arrow-down.svg);}.ai-icon--file{background-image:url(/modules/contrib/ai/assets/icons/file.svg);}.ai-pill{font-size:var(--gin-font-size-xxs,.75rem);font-weight:var(--gin-font-weight-semibold,600);display:inline-block;padding:.125em .75em;vertical-align:.125em;border:1px solid transparent;border-radius:var(--gin-border-l,.75rem);color:var(--messages-fg-color);background:var(--messages-bg-color);text-transform:capitalize;}.ai-pill.light{color:var(--gin-status-text,white);background:var(--gin-status-bg,var(--color-gray-400));}.ai-pill.success{color:var(--gin-status-success-text,var(--messages-fg-color));background-color:var(--gin-status-success-bg,var(--messages--status-color));}.ai-pill.danger{color:var(--gin-status-danger-text,var(--messages-fg-color));background:var(--gin-status-danger-bg,var(--messages--error-color));}.ai-pill.warning{color:var(--gin-status-warning-text,var(--messages-fg-color));background:var(--gin-status-warning-bg,var(--messages--warning-color));}.ai-tooltip{margin:0px;inset:auto;position-area:bottom right;position-try-fallbacks:flip-inline;border:1px solid var(--gin-border-color,var(--color-gray-100,#dbdbdb));padding:var(--gin-spacing-xxs,4px) var(--gin-spacing-xs,8px);color:var(--gin-color-text-light,var(--color-gray-800,#55565b));font-size:var(--font-size-xs);border-radius:var(--gin-border-s,6px);box-shadow:2px 4px 8px var(--gin-color-primary-light,rgba(0,0,0,0.15));max-width:16rem;}
.dp-autocomplete{display:none;position:absolute;top:100%;left:0;right:0;max-width:600px;background:#fff;border:1px solid #d1d5db;border-top:none;border-radius:0 0 6px 6px;box-shadow:0 4px 12px rgba(0,0,0,0.1);z-index:1000;max-height:360px;overflow-y:auto;}.dp-autocomplete__item{display:flex;flex-direction:column;padding:10px 16px;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background 0.15s ease;}.dp-autocomplete__item:last-child{border-bottom:none;}.dp-autocomplete__item:hover,.dp-autocomplete__item--active{background:#f0f5ff;}.dp-autocomplete__item[aria-selected="true"]{background:#f0f5ff;}.dp-autocomplete__title{font-size:14px;font-weight:600;color:#1e293b;line-height:1.4;}.dp-autocomplete__snippet{font-size:12px;color:#6b7280;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.dp-autocomplete__title mark,.dp-autocomplete__snippet mark{background:#fef08a;color:inherit;border-radius:2px;padding:0 1px;}[data-theme="dark"] .dp-autocomplete{background:#1e293b;border-color:#334155;box-shadow:0 4px 12px rgba(0,0,0,0.3);}[data-theme="dark"] .dp-autocomplete__item{border-bottom-color:#334155;}[data-theme="dark"] .dp-autocomplete__item:hover,[data-theme="dark"] .dp-autocomplete__item--active,[data-theme="dark"] .dp-autocomplete__item[aria-selected="true"]{background:#334155;}[data-theme="dark"] .dp-autocomplete__title{color:#f1f5f9;}[data-theme="dark"] .dp-autocomplete__snippet{color:#94a3b8;}[data-theme="dark"] .dp-autocomplete__title mark,[data-theme="dark"] .dp-autocomplete__snippet mark{background:#854d0e;color:#fef08a;}
.product-discovery{max-width:1400px;margin:0 auto;padding:20px;}.product-discovery__topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap;}.product-discovery__search{display:flex;align-items:center;gap:0;flex:1;max-width:600px;}.product-discovery__search-wrapper{position:relative;flex:1;display:flex;align-items:center;}.product-discovery__search-input{width:100%;padding:10px 36px 10px 16px;font-size:15px;border:1px solid #d1d5db;border-radius:6px 0 0 6px;outline:none;transition:border-color 0.2s;}.product-discovery__search-input:focus{border-color:#2563eb;}.product-discovery__search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#e5e7eb;color:#6b7280;cursor:pointer;transition:background 0.2s,color 0.2s;}.product-discovery__search-clear:hover{background:#d1d5db;color:#374151;}.product-discovery__search-btn{padding:10px 24px;font-size:15px;font-weight:600;color:#fff;background:#2563eb;border:1px solid #2563eb;border-radius:0 6px 6px 0;cursor:pointer;transition:background 0.2s;}.product-discovery__search-btn:hover{background:#1d4ed8;}.product-discovery__view-toggle{display:flex;gap:0;border:1px solid #d1d5db;border-radius:6px;overflow:hidden;}.product-discovery__toggle-btn{padding:8px 12px;background:#fff;border:none;cursor:pointer;color:#6b7280;transition:all 0.2s;display:flex;align-items:center;}.product-discovery__toggle-btn + .product-discovery__toggle-btn{border-left:1px solid #d1d5db;}.product-discovery__toggle-btn--active{background:#2563eb;color:#fff;}.product-discovery__toggle-btn:hover:not(.product-discovery__toggle-btn--active){background:#f3f4f6;}.product-discovery__cards.product-discovery--grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}@media (max-width:1024px){.product-discovery__cards.product-discovery--grid{grid-template-columns:repeat(2,1fr);}}@media (max-width:640px){.product-discovery__cards.product-discovery--grid{grid-template-columns:1fr;}}.product-discovery__cards.product-discovery--list{display:flex;flex-direction:column;gap:12px;}.product-discovery--list .product-card{display:flex;flex-direction:row;align-items:center;padding:16px 20px;gap:20px;}.product-discovery--list .product-card__header{flex-shrink:0;margin-bottom:0;}.product-discovery--list .product-card__body{flex:1;min-width:0;}.product-discovery--list .product-card__description{-webkit-line-clamp:1;max-height:1.5em;}.product-discovery--list .product-card__footer{flex-shrink:0;border-top:none;padding-top:0;margin-top:0;gap:16px;}.product-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:20px;display:flex;flex-direction:column;min-width:0;transition:box-shadow 0.2s;}.product-card:hover{box-shadow:0 4px 16px rgba(0,0,0,0.08);}.product-card__header{display:flex;align-items:center;gap:12px;margin-bottom:12px;min-width:0;}.product-card__icon{width:30px;height:30px;flex-shrink:0;border-radius:8px;color:#7c3aed;}.product-card__title-group{display:flex;flex-direction:column;gap:4px;min-width:0;}.product-card__title{font-size:16px;font-weight:600;color:#2563eb;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;max-height:2.8em;min-width:0;word-break:break-word;}.product-card__title:hover{text-decoration:underline;}.product-card__badge{font-size:11px;font-weight:600;color:#7c3aed;background:#ede9fe;padding:2px 8px;border-radius:4px;text-transform:uppercase;display:inline-block;width:fit-content;}.product-card__body{flex:1;margin-bottom:16px;}.product-card__description{font-size:14px;color:#6b7280;line-height:1.5;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-height:4.5em;}.product-card__apis{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280;}.product-card__apis svg{flex-shrink:0;color:#9ca3af;}.product-card__api-count{font-weight:600;color:#374151;}.product-card__api-names{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.product-card__footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f3f4f6;padding-top:12px;margin-top:auto;}.product-card__meta{display:flex;align-items:center;gap:8px;}.product-card__quota{font-size:12px;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:4px;}.product-card__state{font-size:12px;font-weight:500;padding:2px 8px;border-radius:4px;}.product-card__state--approved,.product-card__state--active{color:#059669;background:#ecfdf5;}.product-card__state--pending{color:#d97706;background:#fffbeb;}.product-card__state--deprecated{color:#dc2626;background:#fef2f2;}.product-card__view-link{color:#b45309;transition:color 0.2s;display:flex;align-items:center;}.product-card__view-link:hover{color:#92400e;}.product-discovery__empty{grid-column:1 / -1;text-align:center;padding:60px 20px;font-size:16px;color:#9ca3af;}.product-discovery__pagination{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px 20px;margin-top:20px;}.product-discovery__pagination-left,.product-discovery__pagination-center,.product-discovery__pagination-right{display:flex;align-items:center;gap:8px;}.product-discovery__pagination-info{font-size:13px;color:#666;white-space:nowrap;}.product-discovery__page-links{display:flex;align-items:center;gap:4px;}.product-discovery__page-link{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;font-size:13px;color:#333;background:#f5f6fa;border:1px solid #ddd;border-radius:4px;text-decoration:none;cursor:pointer;transition:background 0.15s,border-color 0.15s;user-select:none;}.product-discovery__page-link:hover{background:#e8f0fe;border-color:#0073e6;color:#0073e6;text-decoration:none;}.product-discovery__page-link--active{background:#0073e6;border-color:#0073e6;color:#fff;cursor:default;font-weight:600;}.product-discovery__page-link--active:hover{background:#0073e6;border-color:#0073e6;color:#fff;}.product-discovery__page-link--disabled{color:#bbb;background:#f9f9f9;border-color:#eee;cursor:default;pointer-events:none;}.product-discovery__page-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:32px;font-size:14px;color:#999;}.product-discovery__per-page-label{font-size:13px;color:#666;white-space:nowrap;}.product-discovery__per-page-select{padding:4px 8px;font-size:13px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;}@media (max-width:768px){.product-discovery__pagination{flex-direction:column;gap:10px;}}.product-card--skeleton{pointer-events:none;}.product-card--skeleton .skeleton-block{border-radius:4px;background:linear-gradient(90deg,#e2e2e2 25%,#f0f0f0 50%,#e2e2e2 75%);background-size:200% 100%;animation:product-skeleton-pulse 1.5s ease-in-out infinite;}.product-card--skeleton .skeleton-block--icon{width:40px;height:40px;border-radius:8px;flex-shrink:0;}.product-card--skeleton .skeleton-block--title{height:16px;width:70%;}.product-card--skeleton .skeleton-block--text{height:12px;width:100%;margin-bottom:8px;}.product-card--skeleton .skeleton-block--short{width:60%;}.product-card--skeleton .skeleton-block--badge{height:12px;width:80px;}.product-card--skeleton .skeleton-block--icon-sm{width:22px;height:22px;border-radius:50%;}@keyframes product-skeleton-pulse{0%{background-position:200% 0;}100%{background-position:-200% 0;}}.product-discovery--list .product-card--skeleton{flex-direction:row;align-items:center;gap:20px;}.product-discovery--list .product-card--skeleton .product-card__header{flex-shrink:0;margin-bottom:0;}.product-discovery--list .product-card--skeleton .product-card__body{flex:1;}.product-discovery--list .product-card--skeleton .product-card__footer{flex-shrink:0;border-top:none;padding-top:0;margin-top:0;}
.product-search-autocomplete{display:none;position:absolute;top:100%;left:0;right:0;max-width:600px;background:#fff;border:1px solid #d1d5db;border-top:none;border-radius:0 0 6px 6px;box-shadow:0 4px 12px rgba(0,0,0,0.1);z-index:1000;max-height:360px;overflow-y:auto;}.product-search-autocomplete__item{display:flex;flex-direction:column;padding:10px 16px;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background 0.15s;}.product-search-autocomplete__item:last-child{border-bottom:none;}.product-search-autocomplete__item:hover,.product-search-autocomplete__item--active{background:#f0f5ff;}.product-search-autocomplete__title{font-size:14px;font-weight:600;color:#1e293b;}.product-search-autocomplete__snippet{font-size:12px;color:#6b7280;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
