.media-library-page{min-width:0}.media-library-tools,.media-library-picker-tools{align-items:center;gap:var(--ui-space-2);width:100%;display:flex}.media-library-search{align-items:center;gap:var(--ui-space-2);min-width:300px;height:40px;padding:0 var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);flex:520px;display:flex}.media-library-kind-filter{flex:0 150px;width:150px}.media-library-category-filter{flex:0 180px;width:180px}.media-library-search:focus-within{border-color:var(--ui-primary);box-shadow:var(--ui-focus-ring)}.media-library-search svg{width:17px;color:var(--ui-text-muted)}.media-library-search input{min-width:0;color:var(--ui-text);font:inherit;background:0 0;border:0;outline:0;flex:1}.media-library-table .data-table-prefab-center{background:var(--ui-surface);overflow:hidden}.media-library-table .data-table-prefab-center table,.media-library-table tbody{width:100%;display:block}.media-library-table .data-table-prefab-center table{table-layout:fixed;min-width:0}.media-library-table thead,.media-library-table thead tr{table-layout:fixed;width:100%;display:table}.media-library-table tbody{gap:var(--ui-space-3);padding:var(--ui-space-3);flex-wrap:wrap;display:flex}.media-library-table .data-table-prefab-center tbody tr{flex:0 0 calc((100% - var(--ui-space-3) * 3) / 4);border:0;min-width:0;display:block;height:auto!important}.media-library-table .data-table-prefab-center tbody td{background:0 0;display:block;border:0!important;height:auto!important;padding:0!important}.media-library-table .data-table-prefab-center tbody tr:hover td{background:0 0}.media-library-table .data-table-prefab-center tbody .platform-table-index{display:none}.media-library-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);min-width:0;transition:border-color .16s,box-shadow .16s;position:relative;overflow:hidden}.media-library-card:hover{border-color:var(--ui-primary);box-shadow:var(--ui-shadow-sm)}.media-library-card.selected{border-color:var(--ui-primary);box-shadow:var(--ui-focus-ring)}.media-library-card-select{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.media-library-card-select:focus-visible{outline:2px solid var(--ui-primary);outline-offset:-2px}.media-library-preview{aspect-ratio:16/9;background:var(--ui-surface-subtle) center/cover no-repeat;width:100%;display:block}.media-library-video{color:var(--ui-primary);place-items:center;display:grid;position:relative}.media-library-video video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.media-library-video>svg{width:38px;height:38px;filter:drop-shadow(0 1px 2px var(--ui-surface));position:relative}.media-library-selected{top:var(--ui-space-2);right:var(--ui-space-2);background:var(--ui-primary);width:26px;height:26px;color:var(--ui-on-primary);border-radius:50%;place-items:center;display:grid;position:absolute}.media-library-selected svg{width:16px}.media-library-overlay-actions{right:var(--ui-space-2);bottom:var(--ui-space-2);z-index:2;gap:var(--ui-space-1);pointer-events:auto;display:flex;position:absolute}.media-library-overlay-actions .ui-icon-btn{border-color:color-mix(in srgb,var(--ui-border) 70%,transparent);background:color-mix(in srgb,var(--ui-surface) 92%,transparent);box-shadow:var(--ui-shadow-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.media-library-overlay-actions .media-library-danger{color:var(--ui-danger)}.media-library-empty{align-content:center;place-items:center;gap:var(--ui-space-2);min-height:240px;padding:var(--ui-space-5);color:var(--ui-text-muted);text-align:center;display:grid}.media-library-empty svg{width:42px;height:42px;color:var(--ui-primary)}.media-library-empty b{color:var(--ui-text)}.media-library-form{gap:var(--ui-space-4);display:grid}.media-library-category-row{gap:var(--ui-space-2);grid-template-columns:minmax(0,1fr) 34px;display:grid}.media-library-upload{align-items:center;gap:var(--ui-space-3);min-height:92px;padding:var(--ui-space-4);cursor:pointer;grid-template-columns:28px minmax(0,1fr);display:grid;position:relative}.media-library-upload>svg{color:var(--ui-primary)}.media-library-upload>span{gap:var(--ui-space-1);display:grid}.media-library-upload small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.media-library-upload input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.media-library-upload-list{gap:var(--ui-space-2);max-height:260px;display:grid;overflow-y:auto}.media-library-upload-item{grid-template-columns:28px minmax(0,1fr) 20px var(--ui-icon-button);background:var(--ui-surface)}.media-library-upload-item>svg:first-child{width:20px;height:20px;color:var(--ui-primary)}.media-library-upload-item>span{gap:var(--ui-space-1);min-width:0;display:grid}.media-library-upload-item>small{overflow-wrap:anywhere}.media-library-upload-item>.ui-icon-btn{grid-column:4}.media-library-upload-spinner,.media-library-upload-error{grid-column:3;width:18px;height:18px}.media-library-upload-spinner{color:var(--ui-primary);animation:.8s linear infinite media-library-spin}.media-library-upload-error{color:var(--ui-danger)}.media-library-upload-item.is-failed{border-color:var(--ui-danger);background:var(--ui-danger-soft)}@keyframes media-library-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.media-library-upload-spinner{animation:none}}.media-library-detail{gap:var(--ui-space-4);grid-template-columns:minmax(260px,1.1fr) minmax(260px,1fr);display:grid}.media-library-detail>.media-library-preview{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md)}.media-library-meta{gap:var(--ui-space-2);margin:0;display:grid}.media-library-meta>div{gap:var(--ui-space-2);grid-template-columns:76px minmax(0,1fr);display:grid}.media-library-meta dt{color:var(--ui-text-muted)}.media-library-meta dd{overflow-wrap:anywhere;min-width:0;margin:0}.media-library-type-maintenance{gap:var(--ui-space-4);display:grid}.media-library-type-list{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);display:grid;overflow:hidden}.media-library-type-list>div{align-items:center;gap:var(--ui-space-2);min-height:44px;padding:var(--ui-space-2) var(--ui-space-3);border-bottom:1px solid var(--ui-border);display:flex}.media-library-type-list>div:last-child{border-bottom:0}.media-library-type-list span{flex:1;min-width:0}.media-library-type-list small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.media-library-type-list .ui-icon-btn{color:var(--ui-danger)}.media-library-picker-tools{padding-bottom:var(--ui-space-3);border-bottom:1px solid var(--ui-border)}.media-library-picker-grid{gap:var(--ui-space-3);padding-top:var(--ui-space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (max-width:900px){.media-library-table .data-table-prefab-center tbody tr{flex-basis:calc((100% - var(--ui-space-3)) / 2)}.media-library-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-library-tools{flex-wrap:wrap}.media-library-search{flex-basis:100%;min-width:0}.media-library-detail{grid-template-columns:1fr}}@media (max-width:640px){.media-library-table .data-table-prefab-center tbody tr{flex-basis:100%}.media-library-picker-grid{grid-template-columns:1fr}.media-library-tools .ui-select,.media-library-picker-tools .ui-select{flex:1;min-width:0}.media-library-picker-tools{flex-wrap:wrap}.media-library-picker-tools .media-library-search{flex-basis:100%}}.business-asset-field{gap:var(--ui-space-2);display:grid}.business-asset-control{align-items:center;gap:var(--ui-space-4);grid-template-columns:180px minmax(0,1fr);display:grid}.business-asset-preview{aspect-ratio:16/9;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle) center/cover no-repeat;width:180px;color:var(--ui-text-muted);place-items:center;display:grid}.business-asset-preview svg{width:30px}.business-asset-actions{gap:var(--ui-space-3);min-width:0;display:grid}.business-asset-actions small{color:var(--ui-text-muted)}.business-asset-actions>div{gap:var(--ui-space-2);flex-wrap:wrap;display:flex}.business-asset-upload{cursor:pointer;position:relative;overflow:hidden}.business-asset-upload input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.business-asset-upload:focus-within{box-shadow:var(--ui-focus-ring)}@media (max-width:640px){.business-asset-control{grid-template-columns:1fr}.business-asset-preview{width:100%}}
.portal-config-loading{min-height:120px;padding:var(--ui-space-4);justify-content:center;align-items:center;gap:var(--ui-space-3);color:var(--ui-text-muted);display:flex}.portal-config-editor{gap:var(--ui-space-4);display:grid}.portal-section-config-list{gap:8px;display:grid}.portal-section-config-row{border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.portal-section-config-row b,.portal-section-config-row small{display:block}.portal-section-config-row small{color:var(--ui-text-muted);margin-top:2px;font-size:12px}.portal-section-config-row .ui-btn{min-height:32px;padding:0 10px}.portal-section-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.portal-hero-manager-toolbar{color:var(--ui-text-muted);justify-content:space-between;align-items:center;gap:12px;margin:16px 0;font-size:13px;display:flex}.portal-hero-manager .portal-material-grid{max-height:52vh;padding:2px;overflow:auto}.portal-hero-manager .portal-device-tabs{margin-bottom:8px}.portal-hero-manager .portal-material-card{flex-direction:column;min-height:0;display:flex}.portal-hero-manager .portal-material-preview{aspect-ratio:16/9;flex:none;width:100%;min-height:0}.portal-hero-manager .portal-material-content{flex:1}.portal-hero-manager .portal-material-content>b,.portal-hero-manager .portal-material-content>small{white-space:nowrap}.portal-hero-manager .portal-material-card>footer{padding-top:var(--ui-space-1);margin-top:auto}@media (max-width:620px){.portal-section-config-row{grid-template-columns:1fr}.portal-section-actions{flex-wrap:wrap;justify-content:flex-start}.portal-section-config-row .ui-btn{width:auto}}.portal-config-section{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);overflow:hidden}.portal-config-section>header{padding:var(--ui-space-3) var(--ui-space-4);border-bottom:1px solid var(--ui-divider);background:var(--ui-surface-subtle)}.portal-config-section>header h3{color:var(--ui-text);font-size:var(--ui-fs-card);margin:0}.portal-config-section>header p{margin:var(--ui-space-1) 0 0;color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.portal-config-body{padding:var(--ui-space-4);gap:var(--ui-space-4);display:grid}.portal-footer-config-body{gap:var(--ui-space-4);display:grid}.portal-footer-config-grid{gap:var(--ui-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.portal-footer-config-groups{gap:var(--ui-space-2);display:grid}.portal-footer-config-group{gap:var(--ui-space-2);padding:var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);grid-template-columns:minmax(150px,.4fr) minmax(0,1fr);display:grid}.portal-footer-config-links{gap:var(--ui-space-2);display:grid}.portal-footer-config-link{gap:var(--ui-space-2);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);display:grid}.portal-footer-qr-config{gap:var(--ui-space-3);display:grid}.portal-footer-qr-config>header{justify-content:space-between;align-items:flex-start;gap:var(--ui-space-3);display:flex}.portal-footer-qr-config>header>div{gap:var(--ui-space-1);display:grid}.portal-footer-qr-config>header strong{font-size:var(--ui-fs-card)}.portal-footer-qr-config>header p{color:var(--ui-text-muted);font-size:var(--ui-fs-caption);margin:0}.portal-footer-qr-list{gap:var(--ui-space-2);display:grid}.portal-footer-qr-row{align-items:end;gap:var(--ui-space-2);padding:var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);grid-template-columns:minmax(180px,.65fr) minmax(260px,1.35fr) 40px;display:grid}.portal-footer-qr-picker{align-items:center;gap:var(--ui-space-2);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-sm);background:var(--ui-surface);min-height:40px;color:var(--ui-text);font:inherit;text-align:left;padding:4px 10px;display:flex}.portal-footer-qr-picker:hover,.portal-footer-qr-picker:focus-visible{border-color:var(--ui-primary);color:var(--ui-primary)}.portal-footer-qr-picker>svg{width:18px;height:18px}.portal-footer-qr-preview{background-position:50%;background-size:cover;border-radius:4px;flex:0 0 30px;width:30px;height:30px}.portal-footer-qr-delete{margin-bottom:0}@media (max-width:640px){.portal-footer-config-grid,.portal-footer-config-group,.portal-footer-config-link,.portal-footer-qr-row{grid-template-columns:1fr}.portal-footer-qr-config>header{flex-direction:column;align-items:stretch}.portal-footer-qr-delete{justify-self:end}}.portal-compliance-config{gap:var(--ui-space-3);padding:var(--ui-space-4);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);display:grid}.portal-compliance-config strong{font-size:var(--ui-fs-body)}.portal-compliance-config p{color:var(--ui-text-muted);font-size:var(--ui-fs-caption);margin:4px 0 0}.portal-media-fields{gap:var(--ui-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.portal-media-upload{min-width:0;min-height:76px;padding:var(--ui-space-3);align-items:center;gap:var(--ui-space-3);cursor:pointer;grid-template-columns:24px minmax(0,1fr) auto;display:grid;position:relative}.portal-media-upload>svg{color:var(--ui-primary)}.portal-media-upload>span{gap:var(--ui-space-1);min-width:0;display:grid}.portal-media-upload b{font-size:var(--ui-fs-body)}.portal-media-upload small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-media-upload input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.portal-media-upload>i{align-items:center;gap:var(--ui-space-1);color:var(--ui-primary);font-size:var(--ui-fs-label);font-style:normal;font-weight:var(--ui-fw-bold);white-space:nowrap;display:flex}.portal-media-upload>i svg{width:14px;height:14px}.portal-brand-settings{align-items:center;gap:var(--ui-space-3);grid-template-columns:96px minmax(180px,1fr) minmax(280px,1.5fr);display:grid}.portal-brand-context+.portal-brand-context{margin-top:var(--ui-space-5);padding-top:var(--ui-space-4);border-top:1px solid var(--ui-border)}.portal-brand-context>header{margin-bottom:var(--ui-space-3)}.portal-brand-context>header h4{color:var(--ui-text);margin:0;font-size:14px}.portal-brand-context>header p{color:var(--ui-text-muted);margin:4px 0 0;font-size:12px}.portal-brand-logo-preview{border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle) center/contain no-repeat;width:80px;height:80px;color:var(--ui-text-muted);place-items:center;display:grid}.portal-brand-logo-preview.ready{background-color:var(--ui-primary);border-style:solid}.portal-device-tabs{width:max-content;max-width:100%}.portal-device-tabs button span{background:var(--ui-surface-subtle);min-width:20px;color:var(--ui-text-muted);font-size:var(--ui-fs-caption);border-radius:999px;padding:1px 6px}.portal-device-tabs button.active span{background:var(--ui-surface);color:var(--ui-primary)}.portal-device-panel{gap:var(--ui-space-3);display:grid}.portal-device-panel>header{justify-content:space-between;align-items:center;gap:var(--ui-space-3);display:flex}.portal-device-panel>header>div{align-items:center;gap:var(--ui-space-2);display:flex}.portal-device-panel>header>div>svg{width:22px;color:var(--ui-primary)}.portal-device-panel>header span{gap:2px;display:grid}.portal-device-panel>header b{font-size:var(--ui-fs-body)}.portal-device-panel>header small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.portal-device-panel>header .ui-btn svg{width:15px}.portal-device-fallback{padding:var(--ui-space-2) var(--ui-space-3);justify-content:space-between;align-items:center;gap:var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:var(--ui-fs-label);display:flex}.portal-material-grid{gap:var(--ui-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.portal-material-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);grid-template-rows:1fr auto;grid-template-columns:140px minmax(0,1fr);min-width:0;display:grid;overflow:hidden}.portal-material-card.disabled{opacity:.62}.portal-material-preview{background:var(--ui-surface-subtle) center/cover no-repeat;min-height:118px;color:var(--ui-primary);grid-row:1/3;place-items:center;display:grid}.portal-material-preview svg{width:30px;height:30px}.portal-material-content{min-width:0;padding:var(--ui-space-3);align-content:start;gap:var(--ui-space-2);display:grid}.portal-material-content>header{justify-content:space-between;align-items:center;gap:var(--ui-space-2);display:flex}.portal-material-content>b,.portal-material-content>small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-material-content>b{font-size:var(--ui-fs-body)}.portal-material-content>small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.portal-material-card>footer{padding:0 var(--ui-space-3) var(--ui-space-2);justify-content:flex-end;gap:var(--ui-space-1);display:flex}.portal-material-card .table-action svg{width:15px;height:15px}.portal-material-editor{gap:var(--ui-space-4);display:grid}.portal-library-select{min-width:0;min-height:76px;padding:var(--ui-space-3);align-items:center;gap:var(--ui-space-3);border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);color:var(--ui-text);text-align:left;cursor:pointer;grid-template-columns:24px minmax(0,1fr) auto;display:grid}.portal-library-select:hover{border-color:var(--ui-primary);background:var(--ui-primary-soft)}.portal-library-select:focus-visible{outline:2px solid var(--ui-primary);outline-offset:2px}.portal-library-select>svg{color:var(--ui-primary)}.portal-library-select>span{gap:var(--ui-space-1);min-width:0;display:grid}.portal-library-select b{font-size:var(--ui-fs-body)}.portal-library-select small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-library-select>i{color:var(--ui-primary);font-size:var(--ui-fs-label);font-style:normal;font-weight:var(--ui-fw-bold);white-space:nowrap}.portal-source-field{gap:var(--ui-space-2);display:grid}.portal-source-tabs{width:max-content;max-width:100%}.portal-source-tabs button svg{width:15px;height:15px}.portal-url-input{gap:var(--ui-space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.portal-url-input .ui-btn{white-space:nowrap}.portal-asset-status{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.portal-asset-status.valid{color:var(--ui-success)}.portal-asset-status.error{color:var(--ui-danger)}.portal-slides-manager{gap:var(--ui-space-2);display:grid}.portal-slides-heading{justify-content:space-between;align-items:center;gap:var(--ui-space-3);display:flex}.portal-slides-add{align-items:center;gap:var(--ui-space-1);display:inline-flex;position:relative}.portal-slides-add svg{width:15px;height:15px}.portal-slides-add input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.portal-slides-list{gap:7px;display:grid}.portal-slide-item{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);min-height:42px;color:var(--ui-text-secondary);align-items:center;gap:9px;padding:7px 10px;display:flex}.portal-slide-order{background:var(--ui-primary-soft);width:22px;height:22px;color:var(--ui-primary);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid}.portal-slide-url{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;overflow:hidden}.portal-slide-item .table-action{margin-left:auto}.portal-slides-empty{border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius-md);color:var(--ui-text-secondary);text-align:center;padding:14px;font-size:12px}.portal-bool-row{gap:var(--ui-space-4);flex-wrap:wrap;display:flex}.portal-bool-row label{justify-content:space-between;align-items:center;gap:var(--ui-space-3);min-width:150px;color:var(--ui-text);font-size:var(--ui-fs-label);font-weight:var(--ui-fw-bold);display:flex}.portal-theme-settings{grid-template-columns:minmax(180px,240px) repeat(2,minmax(0,1fr));align-items:end}.portal-theme-settings fieldset{border:0;min-width:0;margin:0;padding:0}.portal-theme-settings legend{margin-bottom:var(--ui-space-2);color:var(--ui-text);font-size:var(--ui-fs-label);font-weight:var(--ui-fw-bold)}.portal-palette-picker{gap:var(--ui-space-2);flex-wrap:wrap;min-width:0;display:flex}.portal-palette-picker label{min-height:40px;padding:0 var(--ui-space-3);align-items:center;gap:var(--ui-space-2);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);cursor:pointer;display:flex}.portal-palette-picker label.active{border-color:var(--ui-primary-border);background:var(--ui-primary-soft)}.portal-palette-picker input{opacity:0;pointer-events:none;position:absolute}.portal-palette-picker i{width:18px;height:18px;box-shadow:0 0 0 1px var(--ui-border-strong);border-radius:50%}.portal-palette-picker .coral{background:#c95235}.portal-palette-picker .blue{background:#176fc1}.portal-palette-picker .emerald{background:#087a73}.portal-palette-picker .violet{background:#7450bd}.portal-palette-picker span{font-size:var(--ui-fs-label)}.portal-card-surface-picker{gap:var(--ui-space-2);flex-wrap:wrap;min-width:0;display:flex}.portal-card-surface-picker label{min-height:40px;padding:0 var(--ui-space-2);align-items:center;gap:var(--ui-space-2);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);display:flex}.portal-course-selection{gap:var(--ui-space-4);grid-template-columns:1fr 1fr;display:grid}.portal-course-selection-pane{align-content:start;gap:var(--ui-space-2);min-width:0;padding:var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);display:grid}.portal-course-selection-pane h4{font-size:var(--ui-fs-label);margin:0}.portal-search-field{align-items:center;gap:var(--ui-space-2);display:flex}.portal-search-field .ui-input{flex:1;min-width:0}.portal-course-option,.portal-course-selected{justify-content:space-between;align-items:center;gap:var(--ui-space-2);min-width:0;padding:var(--ui-space-2);border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface);color:var(--ui-text);font:inherit;text-align:left;display:flex}.portal-course-option{cursor:pointer}.portal-course-option:hover{border-color:var(--ui-primary)}.portal-course-option span,.portal-course-selected span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-course-option small{color:var(--ui-primary);font-size:var(--ui-fs-caption)}.portal-course-selected input{width:84px}.portal-course-selected .table-action{flex:none}@media (max-width:760px){.portal-course-selection{grid-template-columns:1fr}}.portal-card-surface-picker i{width:22px;height:22px;box-shadow:0 0 0 1px var(--ui-border-strong);border-radius:5px;flex:none}.portal-card-surface-picker span{font-size:var(--ui-fs-label)}.portal-card-surface-picker input{cursor:pointer;background:0 0;border:0;width:30px;height:30px;padding:0}.portal-config-actions{justify-content:flex-end;display:flex}.portal-preparation-editor{gap:var(--ui-space-4);display:grid}@media (max-width:900px){.portal-media-fields,.portal-theme-settings{grid-template-columns:1fr}.portal-brand-settings{grid-template-columns:80px minmax(0,1fr)}.portal-brand-settings .portal-media-upload{grid-column:1/-1}.portal-material-grid{grid-template-columns:1fr}}@media (max-width:640px){.portal-config-body{padding:var(--ui-space-3)}.portal-media-upload,.portal-library-select{grid-template-columns:22px minmax(0,1fr)}.portal-media-upload>i,.portal-library-select>i{grid-column:2}.portal-config-actions .ui-btn{width:100%}.portal-bool-row{display:grid}.portal-bool-row label{width:100%}.portal-brand-settings{grid-template-columns:1fr}.portal-brand-settings .portal-media-upload{grid-column:auto}.portal-device-panel>header{flex-direction:column;align-items:stretch}.portal-device-panel>header .ui-btn{width:100%}.portal-device-fallback{flex-direction:column;align-items:flex-start}.portal-material-card{grid-template-columns:104px minmax(0,1fr)}.portal-device-tabs,.portal-source-tabs{width:100%}.portal-device-tabs button,.portal-source-tabs button{min-width:0;padding-inline:var(--ui-space-2);flex:1}.portal-url-input{grid-template-columns:1fr}.portal-url-input .ui-btn{width:100%}}.portal-builder-actions{gap:8px;display:flex}.portal-section-card-editor{gap:var(--ui-space-3);padding:var(--ui-space-4);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);display:grid}.portal-section-card-editor-head{justify-content:space-between;align-items:center;gap:var(--ui-space-2);padding-bottom:var(--ui-space-2);border-bottom:1px solid var(--ui-divider);display:flex}.portal-section-card-editor-head .ui-btn{min-height:34px}.portal-section-card-row{gap:var(--ui-space-2);padding:var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);grid-template-columns:minmax(120px,1fr) minmax(180px,2fr) minmax(150px,1.5fr) minmax(180px,2fr) 36px;align-items:center;display:grid}.portal-section-card-row .ui-input,.portal-section-card-row .ui-select{min-width:0}.portal-section-card-row .table-action{place-self:center end}.public-content-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.public-custom-card{border:1px solid var(--public-line);background:var(--public-surface);box-shadow:var(--public-shadow);border-radius:12px;overflow:hidden}.public-custom-card-media{aspect-ratio:16/9;background:var(--public-mint);position:relative;overflow:hidden}.public-custom-card-media img,.public-custom-card-media video{object-fit:cover;width:100%;height:100%}.public-custom-card-body{padding:16px}.public-custom-card-body h3{margin:0 0 7px;font-size:16px}.public-custom-card-body p{min-height:38px;color:var(--public-muted);margin:0 0 12px;font-size:12px}.public-custom-card-body .public-text-link{font-size:12px}@media (max-width:1100px){.portal-section-card-row{grid-template-columns:1fr 2fr}.portal-section-card-row>:nth-child(3),.portal-section-card-row>:nth-child(4){grid-column:1/-1}.portal-section-card-row>:last-child{grid-area:1/2}}@media (max-width:900px){.portal-section-card-row{grid-template-columns:1fr 1fr}.public-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.portal-section-card-row{grid-template-columns:1fr}.portal-section-card-row>:last-child{grid-area:auto;justify-self:end}.public-content-grid{grid-template-columns:1fr}}.portal-form-group{gap:var(--ui-space-4);padding:var(--ui-space-4);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);display:grid}.portal-form-group>header{justify-content:space-between;align-items:flex-start;gap:var(--ui-space-3);padding-bottom:var(--ui-space-3);border-bottom:1px solid var(--ui-divider);display:flex}.portal-form-group>header h3{color:var(--ui-text);font-size:var(--ui-fs-card);margin:0}.portal-form-group>header p{color:var(--ui-text-muted);font-size:var(--ui-fs-caption);margin:4px 0 0}.portal-template-summary{padding:var(--ui-space-3);border-left:3px solid var(--ui-primary);background:var(--ui-primary-soft);gap:4px;display:grid}.portal-template-summary strong{font-size:var(--ui-fs-label)}.portal-template-summary span,.ui-field-help{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.portal-choice-group{gap:var(--ui-space-3);min-width:0;padding:var(--ui-space-3);border:1px solid var(--ui-divider);border-radius:var(--ui-radius-md);display:grid}.portal-choice-group legend{padding:0 var(--ui-space-1);color:var(--ui-text-secondary);font-size:var(--ui-fs-label);font-weight:var(--ui-fw-semibold)}.portal-inline-fields,.portal-display-rules{gap:var(--ui-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.portal-switch-setting{justify-content:space-between;align-items:center;gap:var(--ui-space-4);min-height:52px;padding:var(--ui-space-3);border:1px solid var(--ui-divider);border-radius:var(--ui-radius-md);display:flex}.portal-switch-setting strong,.portal-switch-setting small{display:block}.portal-switch-setting small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption);margin-top:3px}.portal-content-step{gap:var(--ui-space-4);display:grid}.portal-published-only{min-height:var(--ui-control-height);align-self:end}.portal-card-field-options{align-items:center;gap:var(--ui-space-3);flex-wrap:wrap;display:flex}.portal-content-textarea{min-height:160px}.portal-section-card-editor-list{gap:var(--ui-space-3);display:grid}.portal-section-card-editor-card{gap:var(--ui-space-3);padding:var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);display:grid}.portal-section-card-editor-card-head{justify-content:space-between;align-items:center;gap:var(--ui-space-2);display:flex}.portal-section-card-editor-card-head strong{font-size:var(--ui-fs-body)}.portal-section-card-fields{gap:var(--ui-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.portal-section-card-empty{padding:var(--ui-space-4);border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius-md);color:var(--ui-text-muted);font-size:var(--ui-fs-caption);text-align:center}@media (max-width:640px){.portal-form-group{padding:var(--ui-space-3)}.portal-section-card-fields,.portal-inline-fields,.portal-display-rules{grid-template-columns:1fr}.portal-form-group>header{flex-direction:column;align-items:stretch}.portal-form-group>header .ui-btn{width:100%}.portal-switch-setting{align-items:flex-start}.portal-card-field-options{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}.portal-card-asset-field{gap:var(--ui-space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.portal-card-asset-field .ui-btn{white-space:nowrap}.portal-card-asset-field svg{width:15px}.portal-card-actions{align-items:center;gap:var(--ui-space-1);display:flex}@media (max-width:640px){.portal-card-asset-field{grid-template-columns:1fr}.portal-card-asset-field .ui-btn{width:100%}.portal-section-card-editor-card-head{align-items:flex-start}.portal-card-actions{flex-wrap:wrap;justify-content:flex-end}}.portal-button-link-field{grid-column:1/-1}.portal-link-target-control{align-items:center;gap:var(--ui-space-1);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-md);background:var(--ui-surface);grid-template-columns:minmax(0,1fr) 40px;min-width:0;min-height:40px;display:grid;overflow:hidden}.portal-link-target-trigger{align-items:center;gap:var(--ui-space-2);min-width:0;min-height:38px;padding:0 var(--ui-space-3);color:var(--ui-text-secondary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.portal-link-target-trigger:hover{background:var(--ui-surface-hover);color:var(--ui-text)}.portal-link-target-trigger:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.portal-link-target-trigger svg{flex:none;width:16px;height:16px}.portal-link-target-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-link-target-control .table-action{border:0;width:36px;height:36px}.portal-link-picker{gap:var(--ui-space-4);display:grid}.portal-link-target-table{min-width:0}.portal-link-target-table .data-table-scroll{max-height:440px}.portal-link-path{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--ui-text-secondary);display:block;overflow:hidden}.portal-link-description{margin-top:var(--ui-space-1);color:var(--ui-text-muted);font-weight:400;display:block}.portal-link-status.is-available{color:var(--ui-success);background:var(--ui-success-soft)}.portal-link-status.is-undeveloped,.portal-link-status.is-unpublished{color:var(--ui-warning);background:var(--ui-warning-soft)}.portal-link-status.is-disabled,.portal-link-status.is-unavailable{color:var(--ui-danger);background:var(--ui-danger-soft)}.portal-link-empty{padding:var(--ui-space-5);color:var(--ui-text-muted);text-align:center}.portal-link-row-actions{align-items:center;gap:var(--ui-space-1);display:flex}.portal-media-text-editor-card .portal-section-card-fields>.ui-field-full,.portal-media-text-editor-card .portal-section-card-fields>fieldset.ui-field-full{grid-column:1/-1}.portal-device-policy{align-items:center;gap:var(--ui-space-4);min-height:var(--ui-control-height);flex-wrap:wrap;display:flex}.portal-section-editor-footer{justify-content:space-between;align-items:center;gap:var(--ui-space-4);padding-top:var(--ui-space-4);border-top:1px solid var(--ui-divider);color:var(--ui-text-muted);font-size:var(--ui-fs-caption);display:flex}.portal-section-editor-footer .ui-btn{min-width:120px}@media (max-width:640px){.portal-section-editor-footer{flex-direction:column;align-items:stretch}.portal-section-editor-footer .ui-btn{width:100%}}
.portal-publish-section{display:block}.portal-publish-panel{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-subtle);justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.portal-publish-panel>div{gap:4px;display:grid}.portal-publish-panel span,.portal-publish-panel small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.portal-publish-panel b{color:var(--ui-success);font-size:var(--ui-fs-body)}.portal-publish-actions{align-items:center;gap:var(--ui-space-2);display:flex}.portal-version-list{gap:var(--ui-space-2);margin-top:var(--ui-space-4);display:grid}.portal-version-list>header{margin-bottom:var(--ui-space-1)}.portal-version-list>header h3,.portal-version-list>header p{margin:0}.portal-version-list>header p{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}.portal-version-list article{justify-content:space-between;align-items:center;gap:var(--ui-space-3);padding:var(--ui-space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);display:flex}.portal-version-list article>div{gap:var(--ui-space-1);display:grid}.portal-version-list article small{color:var(--ui-text-muted);font-size:var(--ui-fs-caption)}@media (max-width:640px){.portal-publish-panel,.portal-version-list article,.portal-publish-actions{flex-direction:column;align-items:stretch}}
