:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f7fb;--panel:#fff;--panel-soft:#eef3f9;--ink:#182434;--muted:#64748b;--line:#d8e0ea;--blue:#1d4ed8;--blue-dark:#173f9f;--green:#047857;--red:#b42318;--violet:#6d28d9;--amber:#b45309;--shadow:0 20px 60px #19263a24;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--ink);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.boot-screen,.login-shell{background:linear-gradient(135deg, #1d4ed81a, transparent 34%), linear-gradient(315deg, #0478571f, transparent 32%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:var(--panel);border:1px solid var(--line);width:min(100%,440px);box-shadow:var(--shadow);border-radius:8px;padding:28px}.brand-lockup{align-items:center;gap:14px;display:flex}.brand-lockup p,.page-header p{color:var(--muted);text-transform:uppercase;margin:0;font-size:.82rem;font-weight:700}.brand-lockup h1,.page-header h1{margin:2px 0 0;font-size:1.45rem;line-height:1.1}.brand-lockup--compact h1{font-size:1.15rem}.brand-mark{color:#fff;letter-spacing:0;background:#12376d;border-radius:8px;flex:none;place-items:center;width:46px;height:46px;font-size:.78rem;font-weight:900;display:grid}.brand-logo{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:8px;flex:none;width:52px;height:52px;padding:4px}.brand-lockup--compact .brand-logo{width:44px;height:44px}.auth-form,.stack-form{gap:16px;margin-top:26px;display:grid}label{color:#344256;gap:7px;font-size:.86rem;font-weight:750;display:grid}input,select,textarea{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);background:#fff;border-radius:6px;outline:none;padding:9px 11px}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1d4ed81f}textarea{resize:vertical;min-height:92px}.primary-button,.secondary-button,.danger-button,.ghost-button,.logout-button,.icon-button{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:8px 13px;font-weight:800;display:inline-flex}.primary-button{background:var(--blue);color:#fff}.primary-button:hover{background:var(--blue-dark)}.secondary-button{border-color:var(--line);color:var(--ink);background:#fff}.danger-button{background:var(--red);color:#fff}.ghost-button{border-color:var(--line);color:#294059;background:0 0;min-height:32px;padding:6px 9px}.icon-button{border-color:var(--line);width:36px;height:36px;color:var(--muted);background:#fff;padding:0}.logout-button{border-color:var(--line);color:#334155;background:#fff;width:100%;margin-top:auto}.form-error,.error-panel{color:var(--red);margin:0}.form-error{font-size:.9rem}.field-hint{color:var(--muted);margin-top:6px;font-size:.82rem;font-weight:500;display:block}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;gap:26px;height:100vh;padding:22px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar nav{gap:6px;display:grid}.sidebar a,.nav-tree>button,.subnav button{color:#42526a;text-align:left;background:0 0;border:0;border-radius:6px;padding:10px 12px;font-weight:800;text-decoration:none}.sidebar a.active,.nav-tree>button.active{color:var(--blue);background:#eaf1ff}.subnav{border-left:1px solid var(--line);gap:4px;margin:-2px 0 6px 12px;padding-left:10px;display:grid}.subnav button{color:#66758a;padding:8px 10px;font-size:.82rem}.subnav button.active{color:var(--blue);background:#f0f6ff}.subnav-stack{gap:10px;margin:0 0 8px;display:grid}.nav-group{gap:4px;display:grid}.nav-group-label{color:#8a97a8;letter-spacing:.06em;text-transform:uppercase;margin:6px 0 2px 12px;font-size:.68rem;font-weight:800}.report-actions-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.report-actions-toolbar--filters-only{justify-content:flex-start}.report-filter-trigger{min-height:40px;color:var(--blue);background:#eef5ff;border:1px solid #1d4ed838;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-weight:800;display:inline-flex}.report-filter-trigger:hover{background:#e3eeff;border-color:#1d4ed859}.report-export-actions{margin-left:auto}.sidebar a[aria-disabled=true]{color:#9aa7b7}.workspace{width:min(100%,1280px);margin:0 auto;padding:28px}.page-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.profile-pill{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:10px;min-height:40px;padding:6px 8px 6px 14px;font-weight:800;display:inline-flex}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.stat-tile{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:center;gap:8px;min-height:92px;padding:18px;display:grid}.stat-tile span{color:var(--muted);font-size:.82rem;font-weight:800}.stat-tile strong{font-size:1.8rem;line-height:1}.stat-tile--blue{border-top:4px solid var(--blue)}.stat-tile--green{border-top:4px solid var(--green)}.stat-tile--violet{border-top:4px solid var(--violet)}.stat-tile--red{border-top:4px solid var(--red)}.toolbar{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;margin-bottom:14px;padding:14px;display:grid}.report-hint{color:var(--muted);margin:0 0 14px;font-size:.88rem;font-weight:700}.institution-report-tab-row{flex-wrap:wrap;gap:8px;display:flex}.institution-report-tab-row .secondary-button.is-active{border-color:var(--blue);color:var(--blue);background:#eef4ff}.search-box{grid-template-columns:minmax(220px,1fr) auto;gap:10px;display:grid}.filter-row{grid-template-columns:repeat(3,minmax(150px,1fr)) auto;gap:10px;display:grid}.filter-row--single{justify-content:flex-end;display:flex}.notice,.error-panel,.state-panel{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:14px;padding:13px 14px}.notice{color:var(--green);border-color:#04785747;justify-content:space-between;align-items:center;gap:12px;font-weight:800;display:flex}.notice button{color:inherit;background:0 0;border:0;font-weight:900}.table-shell{border:1px solid var(--line);background:#fff;border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:980px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:13px 14px;font-size:.9rem}th{color:#526176;text-transform:uppercase;background:#f8fafc;font-size:.74rem;font-weight:900}tbody tr:last-child td{border-bottom:0}td strong{color:var(--ink);display:block}td span{color:var(--muted);font-size:.8rem;display:block}.chip-row{flex-wrap:wrap;gap:5px;max-width:230px;display:flex}.chip-row span{background:var(--panel-soft);color:#3f4e63;border-radius:999px;align-items:center;min-height:24px;padding:4px 8px;font-size:.75rem;font-weight:800;display:inline-flex}.toolbar .chip-row{gap:8px;max-width:none}.chip-button{color:#3f4e63;cursor:pointer;background:#fff;border:1px solid #d5dde8;border-radius:999px;align-items:center;min-height:34px;padding:6px 12px;font-size:.84rem;font-weight:700;display:inline-flex}.chip-button.active{color:#fff;background:#146c4f;border-color:#146c4f}.badge{color:#374151;background:#e5e7eb;border-radius:999px;align-items:center;min-height:26px;padding:4px 9px;font-size:.76rem;font-weight:900;display:inline-flex}.badge--active,.badge--admin,.badge--approved,.badge--completed{color:var(--green);background:#dff7ec}.badge--pending,.badge--submitted,.badge--under_review,.badge--on_hold,.badge--certificate_pending{color:var(--amber);background:#fff4d6}.badge--suspended,.badge--deactivated,.badge--inactive,.badge--rejected,.badge--cancelled,.badge--deleted{color:var(--red);background:#ffe8e5}.badge--public{color:var(--blue);background:#eaf1ff}.badge--system{color:var(--violet);background:#f0e9ff}.badge--subtle{background:var(--panel-soft)}.action-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.danger-text{color:var(--red)}.pagination{color:var(--muted);justify-content:space-between;align-items:center;gap:14px;padding:14px 0;font-weight:800;display:flex}.pagination div,.form-actions{justify-content:flex-end;gap:10px;display:flex}.modal-backdrop{z-index:20;background:#0f172a75;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{border:1px solid var(--line);width:min(100%,560px);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:20px}.modal--media-viewer{width:min(100%,980px)}.modal--merge-record{width:min(100%,860px)}.modal-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.modal-header h2{margin:0;font-size:1.15rem}.modal-kicker{color:var(--muted);text-transform:uppercase;margin:0 0 3px;font-size:.76rem;font-weight:900}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.resource-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field-full{grid-column:1/-1}.inline-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.role-list{gap:8px;display:grid}.role-row{border:1px solid var(--line);background:#fbfcfe;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:8px 10px;display:flex}.role-row span{font-weight:850}.role-row small{color:var(--muted);margin-top:3px;font-size:.78rem;font-weight:700;display:block}.empty-copy{color:var(--muted);margin:0}.checkbox-label{grid-template-columns:auto 1fr;align-items:center;gap:10px}.checkbox-label input{width:18px;min-height:18px}.backoffice-grid{grid-template-columns:minmax(260px,.85fr) minmax(0,1.4fr);align-items:start;gap:14px;display:grid}.panel-block{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:14px}.panel-block--wide,.panel-block--matrix{grid-column:span 1}.panel-block:nth-child(3){grid-column:1/-1}.panel-search,.matrix-search{color:var(--muted);gap:6px;margin-bottom:12px;font-size:.8rem;font-weight:700;display:grid}.panel-search input,.matrix-search input{width:100%}.record-item--role{gap:8px;padding:0;display:grid;overflow:hidden}.record-item-main{width:100%;min-height:62px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.record-item-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.record-item-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:4px;padding:4px 8px 8px;display:flex}.system-pill{color:#4338ca;background:#eef2ff;border-radius:999px;align-items:center;min-height:22px;padding:0 8px;font-size:.72rem;font-weight:800;display:inline-flex}.matrix-toolbar{gap:10px;margin-bottom:12px;display:grid}.matrix-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:.84rem;font-weight:700;display:flex}.matrix-dirty{color:var(--amber)}.matrix-clean{color:var(--green)}.matrix-groups{gap:12px;max-height:560px;padding-right:4px;display:grid;overflow:auto}.matrix-group{border:1px solid var(--line);background:#fbfcfe;border-radius:8px;overflow:hidden}.matrix-group-header{border-bottom:1px solid var(--line);color:var(--muted);background:#f3f7fc;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:.8rem;font-weight:700;display:flex}.matrix-module-toggle{margin:0}.matrix-module-toggle strong{color:var(--ink);font-size:.9rem}.matrix-privilege-list{gap:0;display:grid}.matrix-privilege{border-top:1px solid var(--line);cursor:pointer;grid-template-columns:auto 1fr;align-items:start;gap:10px;margin:0;padding:10px;display:grid}.matrix-privilege:first-child{border-top:0}.matrix-privilege.is-checked{background:#eef5ff}.matrix-privilege input{width:18px;min-height:18px;margin-top:2px}.matrix-privilege strong,.matrix-privilege small{display:block}.matrix-privilege small{color:var(--muted);margin-top:3px;font-size:.78rem;font-weight:600}.matrix-save-bar{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:14px;padding-top:12px;display:flex}.matrix-readonly{margin-top:12px}.privilege-catalog{margin-top:14px}.modal--wide{width:min(920px,100vw - 32px)}.section-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.section-header h2{margin:0;font-size:1rem}.section-header p{color:var(--muted);margin:4px 0 0;font-size:.86rem}.record-list{gap:8px;max-height:520px;display:grid;overflow:auto}.record-item{border:1px solid var(--line);width:100%;min-height:62px;color:var(--ink);text-align:left;background:#fbfcfe;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.record-item.active{background:#eef5ff;border-color:#1d4ed873}.record-item strong,.record-item small{display:block}.record-item small{color:var(--muted);margin-top:3px;font-size:.78rem}.attach-form{margin-bottom:14px}.privilege-autocomplete-field small{color:var(--muted);margin-top:5px;font-size:.8rem;font-weight:750}.compact-table table{min-width:820px}.report-filter-grid{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:end;gap:10px;display:grid}.report-filter-actions{justify-content:flex-end;display:flex}.dashboard-filter-grid{grid-template-columns:minmax(240px,1fr) repeat(2,minmax(150px,.35fr)) auto;align-items:end;gap:10px;display:grid}.upload-filter-grid{grid-template-columns:minmax(260px,1fr) minmax(180px,.35fr) auto;align-items:end;gap:10px;display:grid}.participation-record-filter-grid{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(150px,.34fr)) auto;align-items:end;gap:10px;display:grid}.media-approval-filter-grid{grid-template-columns:repeat(3,minmax(160px,.35fr));align-items:end;gap:10px;display:grid}.participation-upload-table table{min-width:1120px}.participation-upload-table td{vertical-align:top}.participation-upload-table td:nth-child(5) span{word-break:break-all;max-width:300px}.overview-accordion{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:16px}.overview-accordion summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:15px 16px;font-weight:900;display:flex}.overview-accordion summary strong{color:var(--blue);font-size:.9rem}.overview-accordion[open] summary{border-bottom:1px solid var(--line)}.overview-accordion .state-panel,.overview-accordion .table-shell{margin:14px}.overview-table table{min-width:1120px}.overview-table tfoot th{border-top:1px solid var(--line);color:var(--ink);background:#eef3f9;border-bottom:0}.overview-count-cell{text-align:right;font-variant-numeric:tabular-nums;font-weight:900}.media-count-button{color:var(--blue);cursor:pointer;font:inherit;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:900;text-decoration:underline}.media-viewer-stage{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;margin-top:16px;display:grid;position:relative}.media-preview-frame{border:1px solid var(--line);background:#0f172a;border-radius:8px;grid-column:2;place-items:center;min-height:420px;display:grid;overflow:hidden}.media-preview-frame img,.media-preview-frame video{object-fit:contain;max-width:100%;max-height:68vh;display:block}.media-preview-frame video{width:100%}.media-nav-button{border:1px solid var(--line);width:42px;height:42px;color:var(--ink);background:#fff;border-radius:50%;place-items:center;padding:0;font-size:1.8rem;font-weight:800;line-height:1;display:inline-grid}.media-nav-button--prev{grid-column:1}.media-nav-button--next{grid-column:3}.media-fallback{color:#fff;text-align:center;place-items:center;gap:12px;padding:24px;display:grid}.media-viewer-footer{gap:12px;margin-top:14px;display:grid}.media-record-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.media-record-details div{border:1px solid var(--line);background:#fbfcfe;border-radius:6px;min-width:0;padding:10px}.media-record-details span,.media-record-details strong{display:block}.media-record-details span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.media-record-details strong{overflow-wrap:anywhere;margin-top:4px;font-size:.86rem}.media-actions{justify-content:flex-end;gap:10px;display:flex}.media-share-notice{color:var(--green);margin:0;font-weight:850}.merge-search-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-top:16px;display:grid}.merge-candidate-table{max-height:420px;margin-top:14px;overflow:auto}.merge-candidate-table table{min-width:780px}.media-approval-table table{min-width:1380px}.media-thumb-button{border:1px solid var(--line);color:#fff;background:#0f172a;border-radius:6px;place-items:center;width:74px;height:52px;padding:0;font-size:.72rem;font-weight:900;display:grid;overflow:hidden}.media-thumb-button img{object-fit:cover;width:100%;height:100%}.participation-records-panel{gap:0;display:grid}.participation-record-table table{min-width:1360px}.table-sort-button{color:inherit;cursor:pointer;font:inherit;font-weight:inherit;text-align:left;text-transform:inherit;background:0 0;border:0;padding:0}.participation-action-control{grid-template-columns:minmax(150px,1fr) 34px;align-items:center;gap:8px;min-width:198px;display:grid}.participation-action-control select{min-height:34px;padding:6px 8px}.round-submit-button{border:1px solid var(--blue);background:var(--blue);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;font-size:1.05rem;font-weight:900;line-height:1;display:inline-grid}.round-submit-button:hover:not(:disabled){background:var(--blue-dark);border-color:var(--blue-dark)}.upload-open-link{white-space:nowrap;text-decoration:none}.upload-file-name-link,.upload-file-url{color:var(--blue);text-decoration:none}.upload-file-name-link:hover,.upload-file-url:hover{text-decoration:underline}.upload-file-url{overflow-wrap:anywhere;max-width:300px;margin-top:4px;font-size:.78rem;font-weight:800;display:block}.dashboard-stats{margin-top:0}.dashboard-stats--secondary .stat-tile strong{word-break:break-word;font-size:1.2rem;line-height:1.15}.json-details{max-width:360px;margin:3px 0}.json-details summary{color:var(--blue);cursor:pointer;font-size:.78rem;font-weight:900}.json-details pre{border:1px solid var(--line);color:#334155;white-space:pre-wrap;word-break:break-word;background:#f8fafc;border-radius:6px;max-height:220px;padding:10px;overflow:auto}.pledge-card-list{gap:12px;display:grid}.pledge-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.pledge-card header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.pledge-card header p{color:var(--muted);text-transform:uppercase;margin:0 0 4px;font-size:.78rem;font-weight:900}.pledge-card h2{word-break:break-word;margin:0;font-size:1rem}.pledge-public-id{color:var(--muted);word-break:break-word;margin-top:4px;font-size:.78rem;font-weight:750;display:block}.pledge-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.pledge-meta dt{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:900}.pledge-meta dd{color:var(--ink);word-break:break-word;margin:4px 0 0;font-size:.9rem;font-weight:750}.pledge-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.volunteer-detail-meta__full{grid-column:1/-1}.volunteer-detail-meta__full dd{overflow-wrap:anywhere;white-space:pre-wrap;max-height:min(40vh,320px);font-weight:600;line-height:1.45;overflow-y:auto}@media (width<=980px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-flow:wrap;align-items:center;height:auto;position:static}.sidebar nav{grid-template-columns:repeat(2,minmax(180px,1fr));overflow-x:auto}.subnav{margin:0}.logout-button{width:auto;margin-left:auto}.stats-grid,.filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.backoffice-grid{grid-template-columns:1fr}.report-filter-grid,.dashboard-filter-grid,.upload-filter-grid,.pledge-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-block:nth-child(3){grid-column:auto}}.panel-stack{gap:18px;display:grid}.card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.info-card{background:#fff;border:1px solid #d7e1de;border-radius:12px;padding:18px}.checkbox-list{gap:10px;max-height:320px;margin:12px 0 18px;display:grid;overflow:auto}.checkbox-row{align-items:flex-start;gap:10px;display:flex}@media (width<=640px){.workspace{padding:18px}.page-header,.pagination,.sidebar{flex-direction:column;align-items:stretch}.stats-grid,.filter-row,.search-box,.form-grid,.inline-form,.resource-form-grid,.report-filter-grid,.dashboard-filter-grid,.upload-filter-grid{grid-template-columns:1fr}.profile-pill,.logout-button{width:100%}.pledge-card header,.pledge-actions{flex-direction:column;align-items:stretch}.pledge-meta{grid-template-columns:1fr}}.home-settings-grid{grid-template-columns:minmax(0,1fr)}.home-settings-grid .home-settings-state .record-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));max-height:none;overflow:visible}.home-settings-grid .home-settings-state .record-item{min-height:54px}.video-carousel-editor{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;gap:14px;padding:18px;display:grid;container:video-editor/inline-size}.video-carousel-editor__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;display:flex}.video-carousel-editor__header>div:first-child{flex:360px;min-width:0}.video-carousel-editor__header h3{margin:0 0 4px}.video-carousel-editor__header p{max-width:760px;color:var(--muted);margin:0;font-size:.86rem}.video-carousel-editor__toolbar{flex:none;align-items:center;gap:10px;display:flex}.video-carousel-editor__count{border:1px solid var(--line);background:var(--panel);color:var(--muted);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:750}.video-carousel-editor__list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.video-row{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:32px 30px 128px minmax(200px,1.3fr) minmax(260px,1.2fr) 168px 96px;grid-template-areas:"handle seq thumb url preview autoscroll actions";align-items:start;gap:12px;padding:14px 16px;transition:border-color .15s,box-shadow .15s,opacity .15s;display:grid;box-shadow:0 1px 2px #1824340a}.video-row--dragging{opacity:.5}.video-row--drag-over{border-color:var(--blue);box-shadow:0 0 0 3px #1d4ed81f}.video-row__cell{align-content:start;gap:6px;min-width:0;display:grid}.video-row__handle-cell{grid-area:handle;justify-items:center}.video-row__seq-cell{grid-area:seq;justify-items:center;padding-top:3px}.video-row__thumb{grid-area:thumb}.video-row__url-cell{grid-area:url}.video-row__preview-cell{grid-area:preview}.video-row__auto-cell{grid-area:autoscroll}.video-row__actions{grid-area:actions}.video-row__caption{color:#344256;letter-spacing:.02em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;height:18px;margin:0;font-size:.76rem;font-weight:800;line-height:18px;display:block;overflow:hidden}.video-row__handle{border:1px dashed var(--line);background:var(--panel-soft);width:32px;height:32px;color:var(--muted);cursor:grab;letter-spacing:-2px;border-radius:6px;place-items:center;padding:0;display:grid}.video-row__handle:active{cursor:grabbing}.video-row__move{gap:4px;display:grid}.video-row__move .icon-button{width:24px;height:24px;min-height:24px;padding:0;font-size:.8rem}.video-row__move .icon-button:disabled{opacity:.4;cursor:not-allowed}.video-row__sequence{background:var(--blue);color:#fff;border-radius:999px;place-items:center;width:26px;height:26px;font-size:.78rem;font-weight:800;display:grid}.video-row__thumb{aspect-ratio:16/9;border:1px solid var(--line);background:var(--panel-soft);border-radius:6px;width:100%;display:block;position:relative;overflow:hidden}.video-row__thumb img{object-fit:cover;width:100%;height:100%;display:block}.video-row__thumb-empty{height:100%;color:var(--muted);place-items:center;font-size:.78rem;display:grid}.video-row__thumb-tag{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#182434bf;border-radius:4px;max-width:calc(100% - 12px);padding:2px 6px;font-size:.68rem;font-weight:700;position:absolute;bottom:6px;left:6px;overflow:hidden}.video-row__input{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;min-height:38px;overflow:hidden}.video-row__preview-controls{align-items:center;gap:8px;min-width:0;display:flex}.video-row__preview-controls .video-row__input{flex:auto;width:auto}.video-row__upload,.video-row__clear{white-space:nowrap;flex:none}.video-row__upload{min-height:38px;padding:8px 12px}.video-row__clear{width:38px;height:38px;min-height:38px;font-size:1.1rem;line-height:1}.video-row__hint{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:500;overflow:hidden}.video-row__toggle{color:#344256;min-height:38px;font-size:.86rem;font-weight:750}.video-row__seconds{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:.8rem;font-weight:700;display:flex}.video-row__seconds input{flex:none;width:72px;min-height:34px;padding:6px 8px}.video-row__actions .secondary-button,.video-row__actions .ghost-button{width:100%;min-height:38px}.field-error{color:var(--red);overflow-wrap:anywhere;font-size:.78rem;font-weight:650}input[aria-invalid=true]{border-color:var(--red)}.toggle-switch{cursor:pointer;align-items:center;gap:10px;display:inline-flex}.toggle-switch input{opacity:0;width:1px;height:1px;min-height:0;position:absolute}.toggle-switch__track{background:var(--line);border-radius:999px;flex:none;width:38px;height:22px;transition:background .15s;position:relative}.toggle-switch__track:after{content:"";background:#fff;border-radius:999px;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #1824344d}.toggle-switch input:checked+.toggle-switch__track{background:var(--blue)}.toggle-switch input:checked+.toggle-switch__track:after{transform:translate(16px)}.toggle-switch input:focus-visible+.toggle-switch__track{box-shadow:0 0 0 3px #1d4ed840}.video-preview-frame{aspect-ratio:16/9;background:#000;border-radius:8px;overflow:hidden}.video-preview-frame iframe{border:0;width:100%;height:100%}@container video-editor (width<=1019px){.video-row{grid-template-columns:32px 30px 144px minmax(0,1fr) 180px;grid-template-areas:"handle seq thumb url actions""handle seq thumb preview autoscroll";gap:12px 14px}.video-row__actions{grid-template-columns:1fr 1fr}.video-row__actions .video-row__caption--spacer{grid-column:1/-1}}@container video-editor (width<=720px){.video-row{grid-template-columns:32px 30px minmax(0,1fr);grid-template-areas:"handle seq thumb""url url url""preview preview preview""autoscroll autoscroll autoscroll""actions actions actions";padding:12px}.video-row__thumb{width:min(100%,220px)}.video-row__actions{gap:8px;display:flex}.video-row__actions .video-row__caption--spacer{display:none}.video-row__actions .secondary-button,.video-row__actions .ghost-button{flex:1 1 0;width:auto}.video-row__auto-cell{grid-template-columns:auto 1fr;align-items:center;column-gap:16px}.video-row__auto-cell .video-row__caption,.video-row__auto-cell .field-error{grid-column:1/-1}}@container video-editor (width<=440px){.video-row__preview-controls{flex-wrap:wrap}.video-row__preview-controls .video-row__input{flex-basis:100%;order:3}.video-row__hint{white-space:normal}}.cp-settings__grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.cp-settings__card{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;align-content:start;gap:8px;padding:14px;display:grid}.cp-settings__card h3{margin:0;font-size:.98rem}.cp-settings__card p{color:var(--muted);margin:0;font-size:.84rem}.nav-manager__header .primary-button{flex:none}.nav-manager__unsaved{z-index:5;color:var(--amber);background:#fff8eb;border:1px solid #f4c77d;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;font-weight:750;display:flex;position:sticky;top:8px;box-shadow:0 6px 18px #19263a14}.nav-manager__unsaved>div{gap:8px;display:flex}.nav-tree-list,.nav-tree-children{gap:10px;margin:0;padding:0;list-style:none;display:grid}.nav-tree-children{gap:6px}.nav-tree-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;overflow:hidden}.nav-tree-card__children{border-top:1px dashed var(--line);background:#fafcff;gap:8px;padding:8px 12px 12px 44px;display:grid}.nav-tree-card__empty{color:var(--muted);margin:0;font-size:.84rem}.nav-tree-card__add{justify-self:start}.nav-row{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;transition:opacity .15s,background .15s;display:grid;position:relative}.nav-row--child{border:1px solid var(--line);background:var(--panel);border-radius:6px}.nav-row--disabled .nav-row__title strong,.nav-row--disabled .nav-row__link{opacity:.55}.nav-row--dragging{opacity:.45}.nav-row--drop-before:before,.nav-row--drop-after:after{content:"";background:var(--blue);border-radius:2px;height:3px;position:absolute;left:8px;right:8px}.nav-row--drop-before:before{top:-2px}.nav-row--drop-after:after{bottom:-2px}.nav-row__order{align-items:center;gap:6px;display:flex}.nav-row__handle{border:1px dashed var(--line);background:var(--panel-soft);width:30px;height:30px;color:var(--muted);cursor:grab;letter-spacing:-2px;border-radius:6px;place-items:center;padding:0;display:grid}.nav-row__handle:active{cursor:grabbing}.nav-row__move{gap:4px;display:flex}.nav-row__move .icon-button{width:28px;height:28px;min-height:28px;font-size:.85rem}.nav-row__main{gap:3px;min-width:0;display:grid}.nav-row__title{align-items:center;gap:8px;min-width:0;display:flex}.nav-row__title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav-row__link{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.nav-row__link--muted{font-style:italic}.nav-row__note{color:var(--amber);font-size:.76rem;font-weight:650}.nav-row__actions{justify-content:flex-end;gap:6px;min-width:128px;display:flex}.nav-row__delete{color:var(--red)}.nav-badge{background:var(--panel-soft);color:#344256;letter-spacing:.02em;text-transform:uppercase;border-radius:999px;flex:none;padding:2px 8px;font-size:.7rem;font-weight:800}.nav-badge--external{color:var(--violet);background:#ede9fe}.nav-badge--custom{color:var(--green);background:#dcfce7}.nav-badge--none{color:var(--amber);background:#fef3c7}.nav-badge--blocked{color:var(--red);background:#ffe8e5;display:inline-flex}.file-type-table td .nav-badge{white-space:nowrap;display:inline-flex}.file-type-table__row--inactive td{color:var(--muted);background:#fafbfc}.file-type-table__actions{flex-wrap:nowrap;justify-content:flex-start}.nav-switch{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;font-size:.8rem;font-weight:750;display:inline-flex}.nav-switch input{opacity:0;width:1px;height:1px;min-height:0;position:absolute}.nav-switch__track{background:#cbd5e1;border-radius:999px;width:36px;height:20px;transition:background .15s;position:relative}.nav-switch__track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0f172a40}.nav-switch input:checked+.nav-switch__track{background:var(--green)}.nav-switch input:checked+.nav-switch__track:after{transform:translate(16px)}.nav-switch input:focus-visible+.nav-switch__track{box-shadow:0 0 0 3px #1d4ed840}.nav-switch__text{min-width:56px;color:var(--muted)}.nav-switch--locked{cursor:not-allowed}.nav-switch--locked .nav-switch__track{opacity:.55}.nav-drop-zone{border:2px dashed var(--line);color:var(--muted);text-align:center;border-radius:6px;padding:10px;font-size:.82rem;font-weight:700}.nav-drop-zone--active{border-color:var(--blue);color:var(--blue);background:#1d4ed80f}.nav-drop-zone--blocked{color:var(--red);cursor:not-allowed;background:#b91c1c0a;border-color:#b91c1c59}.nav-row__main--thumb{grid-template-columns:44px minmax(0,1fr);column-gap:10px}.nav-row__main--thumb>:not(.nav-row__thumb){grid-column:2}.nav-row__thumb{border:1px solid var(--line);object-fit:cover;border-radius:6px;grid-row:1/span 4;width:44px;height:44px}.nav-row__subtitle{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:600;overflow:hidden}.nav-row__style{color:var(--muted);font-size:.74rem}.nav-image-field{gap:6px;display:grid}.nav-image-field__label{font-weight:700}.nav-image-field__body{grid-template-columns:96px minmax(0,1fr);align-items:start;gap:12px;display:grid}.nav-image-field__preview{border:1px solid var(--line);background:var(--panel);width:96px;height:72px;color:var(--muted);text-align:center;border-radius:8px;place-items:center;font-size:.74rem;display:grid;overflow:hidden}.nav-image-field__preview img{object-fit:cover;width:100%;height:100%}.nav-image-field__controls{gap:6px;min-width:0;display:grid}.nav-image-field__row{align-items:center;gap:8px;display:flex}.nav-image-field__row input{flex:1;min-width:0}@media (width<=760px){.nav-row{grid-template-columns:auto minmax(0,1fr)}.nav-row__order{flex-direction:column;grid-row:span 2}.nav-row__actions{justify-content:flex-start;min-width:0}.nav-tree-card__children{padding-left:16px}}.upload-queue{gap:8px;display:grid}.upload-dropzone{border:2px dashed var(--line);background:var(--panel-soft);color:var(--muted);text-align:center;border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;padding:18px;display:flex}.upload-dropzone .field-hint{flex-basis:100%}.upload-dropzone--over{border-color:var(--blue);color:var(--blue);background:#1d4ed80f}.upload-dropzone--disabled{opacity:.6}.upload-queue__list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.upload-queue__row{border:1px solid var(--line);background:var(--panel);border-radius:6px;grid-template-columns:minmax(0,1fr) 70px minmax(100px,200px) 70px;align-items:center;gap:10px;padding:6px 10px;font-size:.82rem;display:grid}.upload-queue__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-queue__size,.upload-queue__state{color:var(--muted);text-align:right}.upload-queue__bar{background:var(--line);border-radius:999px;height:6px;display:block;overflow:hidden}.upload-queue__bar span{background:var(--blue);height:100%;transition:width .2s;display:block}.upload-queue__row--done .upload-queue__bar span{background:var(--green)}.upload-queue__row--error{border-color:#b4231859}.upload-queue__clear{justify-self:end}.gallery-editor{gap:14px;display:grid}.gallery-editor__add{gap:12px;display:grid}.gallery-editor__youtube{align-items:flex-end;gap:10px;display:flex}.gallery-editor__youtube label{flex:1}.gallery-editor__summary{color:var(--muted);margin:0;font-size:.84rem}.gallery-card-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.gallery-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-content:start;display:grid;overflow:hidden}.gallery-card[draggable=true]{cursor:grab}.gallery-card--editing{grid-column:1/-1;grid-template-columns:220px minmax(0,1fr)}.gallery-card--editing .gallery-card-editor{grid-column:1/-1}.gallery-card--hidden .gallery-card__media{opacity:.5}.gallery-card--dragging{opacity:.4}.gallery-card__media{aspect-ratio:4/3;color:#cbd5e1;background:#0f172a;place-items:center;min-height:0;font-size:.8rem;display:grid;position:relative;overflow:hidden}.gallery-card__media img,.gallery-card__media video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.gallery-card__media .media-preview--fallback{position:absolute;inset:0}.media-preview--fallback{color:#cbd5e1;text-align:center;background:linear-gradient(135deg,#1e293b,#0f172a);align-content:center;justify-items:center;gap:4px;width:100%;min-width:0;height:100%;padding:8px;display:grid}.media-preview__icon{color:#fff;background:#ffffff1f;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.media-preview__type{color:#fca5a5;letter-spacing:.06em;border:2px solid;border-radius:6px;padding:3px 8px;font-size:.74rem;font-weight:900}.media-preview__name{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.68rem;overflow:hidden}.resource-item__thumb .media-preview--fallback,.nav-image-field__preview .media-preview--fallback{padding:2px}.resource-item__thumb .media-preview__name{display:none}.resource-item__thumb .media-preview__icon,.nav-image-field__preview .media-preview__icon{width:26px;height:26px}.resource-item__thumb .media-preview__type{padding:1px 4px;font-size:.6rem}.gallery-card__kind,.gallery-card__hidden-badge{color:#fff;text-transform:uppercase;background:#0f172abf;border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:800;position:absolute;top:6px}.gallery-card__kind{left:6px}.gallery-card__kind--youtube{background:#c4302b}.gallery-card__hidden-badge{background:var(--amber);right:6px}.gallery-card__body{gap:2px;min-width:0;padding:8px 10px 4px;display:grid}.gallery-card__body strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.gallery-card__body span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.gallery-card__actions{flex-wrap:nowrap;align-items:center;gap:4px;min-width:0;padding:6px 8px 8px;display:flex}.gallery-card__actions .icon-button{flex:none;place-items:center;width:28px;height:28px;min-height:28px;padding:0;display:inline-grid}.gallery-card__actions .nav-switch{flex:none}.gallery-card__actions-end{gap:4px;margin-left:auto;display:inline-flex}.gallery-card--editing .gallery-card__actions{align-self:start}.gallery-card__actions .ghost-button{padding:4px 8px}.gallery-card-editor{border-top:1px solid var(--line);background:#fafcff;gap:12px;padding:12px;display:grid}.gallery-card-editor__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.gallery-card-editor__details{gap:8px;display:grid}.gallery-card-editor__details-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.gallery-detail-row{border:1px solid var(--line);background:var(--panel);border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:start;gap:8px;padding:8px;display:grid}.gallery-detail-row__pair{gap:4px;display:grid}.gallery-list{gap:8px;display:grid}.resource-item-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.resource-item{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.resource-item[draggable=true]{cursor:grab}.resource-item--hidden .resource-item__thumb,.resource-item--hidden .resource-item__main strong{opacity:.5}.resource-item__thumb{background:var(--panel-soft);width:64px;height:48px;color:var(--muted);border-radius:6px;place-items:center;font-size:.72rem;font-weight:800;display:grid;overflow:hidden}.resource-item__thumb img{object-fit:cover;width:100%;height:100%}.resource-item__main{gap:2px;min-width:0;display:grid}.resource-item__main strong,.resource-item__main>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.resource-item__main>span{color:var(--muted);font-size:.8rem}.resource-item__main a{font-size:.8rem}.resource-item__controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.resource-item-editor{border-top:1px dashed var(--line);grid-column:1/-1;gap:10px;padding-top:10px;display:grid}@media (width<=760px){.gallery-card--editing,.gallery-card-editor__grid,.gallery-detail-row{grid-template-columns:1fr}.upload-queue__row{grid-template-columns:minmax(0,1fr) 60px}.resource-item{grid-template-columns:56px minmax(0,1fr)}.resource-item__controls{grid-column:1/-1;justify-content:flex-start}}
