.settings .settings-section{margin-top:var(--space-6)}.settings .section-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.settings .section-heading-row .section-title{margin:0 0 var(--space-1);font-size:var(--text-subhead);font-weight:var(--weight-semibold);color:var(--color-text)}.settings .section-heading-row .section-description{margin:0;font-size:var(--text-small);color:var(--color-text-muted);max-width:640px;line-height:1.5}.settings .connected-pages{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.settings .connected-page-row{display:grid;grid-template-columns:auto 1fr auto auto;grid-gap:var(--space-4);gap:var(--space-4);align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);transition:opacity .12s ease}.settings .connected-page-row:last-child{border-bottom:none}.settings .connected-page-row:has(.switch input:not(:checked)){opacity:.55}.settings .connected-page-info{display:flex;flex-direction:column;gap:2px;min-width:0}.settings .connected-page-name{font-weight:var(--weight-semibold);font-size:var(--text-body);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings .connected-page-meta{font-size:var(--text-small);color:var(--color-text-muted)}.settings .section-title{margin:0 0 var(--space-2);font-size:var(--text-subhead);font-weight:var(--weight-semibold);color:var(--color-text)}.settings .section-description{margin:0;font-size:var(--text-small);color:var(--color-text-muted);line-height:1.5;max-width:560px}.settings .profile-row{display:flex;align-items:flex-start;gap:var(--space-6);margin-top:var(--space-4)}.settings .profile-avatar{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);flex-shrink:0}.settings .profile-avatar .avatar.avatar-placeholder{width:80px;height:80px;background:var(--color-surface-muted);color:var(--color-text-subtle);font-size:var(--text-h1);border:1px solid var(--color-border)}.settings .profile-avatar .avatar.avatar-placeholder svg{width:40px;height:40px}.settings .profile-avatar-upload{font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-primary);background:transparent;border:none;padding:0;cursor:pointer}.settings .profile-avatar-upload:hover{text-decoration:underline}.settings .profile-fields{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:var(--space-4);max-width:480px}.settings .profile-actions{display:flex;justify-content:flex-start;margin-top:var(--space-2)}.settings .settings-section.danger-zone{margin-top:var(--space-8);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.settings .danger-zone .section-title{color:var(--color-danger-text);margin:0 0 var(--space-1)}.settings .danger-zone-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.signin-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-surface-muted)}.signin-shell{flex:1 1;display:flex;align-items:center;justify-content:center;padding:var(--space-5) var(--space-4)}.signin-card{width:100%;max-width:400px;padding:var(--space-8) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center}.signin-brand{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);font-size:var(--text-h2);font-weight:var(--weight-semibold);color:var(--color-text)}.signin-brand img{display:block;max-width:70px;height:auto}.signin-headline{margin:0 0 var(--space-2);font-size:var(--text-display);font-weight:var(--weight-bold);line-height:1.2;letter-spacing:-.01em;color:var(--color-text)}.signin-sub{margin:0 0 var(--space-5);color:var(--color-text-muted);line-height:1.5}.signin-google-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:12px var(--space-3);border:1px solid #dadce0;border-radius:var(--radius-md);background:var(--color-surface);color:#1F1F1F;font-size:var(--text-body);font-weight:var(--weight-semibold);text-decoration:none;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.signin-google-btn:hover{background:#F8F9FA;border-color:#C8CCD0;box-shadow:var(--shadow-sm)}.signin-google-btn .google-g{width:18px;height:18px;flex:0 0 auto}.signin-fineprint{margin:var(--space-5) 0 0;font-size:var(--text-small);color:var(--color-text-subtle);line-height:1.5}.signin-footer{display:flex;justify-content:center;padding:var(--space-4);font-size:var(--text-small);color:var(--color-text-muted)}.signin-alert{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3);background:#FEF2F2;border:1px solid #fecaca;border-radius:var(--radius-md);text-align:left}.signin-alert[hidden]{display:none}.signin-alert-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-pill);background:#FEE2E2;color:#B91C1C}.signin-alert-icon .icon{width:16px;height:16px}.signin-alert-message{margin:0;font-size:var(--text-small);color:var(--color-text);line-height:1.5}.team .team-list{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface)}.team .team-list-head,.team .team-row{display:grid;grid-template-columns:minmax(220px,1.4fr) auto auto auto auto auto;grid-gap:var(--space-4);gap:var(--space-4);align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.team .team-row:last-child{border-bottom:none}.team .team-list-head{background:var(--color-surface-muted);font-size:var(--text-micro);font-weight:var(--weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em}.team .team-member-identity{display:flex;align-items:center;gap:var(--space-3);min-width:0}.team .team-member-info{display:flex;flex-direction:column;gap:2px;min-width:0}.team .team-member-name{font-weight:var(--weight-semibold);font-size:var(--text-body);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team .team-member-self-tag{font-weight:400;margin-left:2px}.team .team-member-email,.team .team-member-self-tag{font-size:var(--text-small);color:var(--color-text-muted)}.team .team-member-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team .th-action{width:32px}.role-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:.04em;white-space:nowrap}.role-badge.role-admin{background:#DBEAFE;color:#1E40AF}.role-badge.role-manager{background:#DCFCE7;color:#166534}.role-badge.role-scheduler{background:#FEF3C7;color:#92400E}.role-badge.role-viewer{background:#F3F4F6;color:#6B7280}.library-access-pill,.page-access-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-pill);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--text-small);white-space:nowrap}.library-access-pill.is-all,.page-access-pill.is-all{background:#EFF6FF;color:#1D4ED8}.member-status{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-small);white-space:nowrap}.member-status:before{content:"";display:inline-block;width:8px;height:8px;border-radius:var(--radius-pill);background:currentColor}.member-status.is-active{color:#15803D}.member-status.is-pending{color:#B45309}.roles-cheatsheet{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.roles-cheatsheet>summary{cursor:pointer;font-size:var(--text-small);font-weight:var(--weight-semibold);color:var(--color-text);list-style:none;display:inline-flex;align-items:center;gap:var(--space-2)}.roles-cheatsheet>summary::-webkit-details-marker{display:none}.roles-cheatsheet>summary:before{content:"";width:0;height:0;border-left:5px solid var(--color-text-muted);border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform .12s ease}.roles-cheatsheet[open]>summary:before{transform:rotate(90deg)}.roles-cheatsheet-grid{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.roles-cheatsheet-row{display:grid;grid-template-columns:110px 1fr;grid-gap:var(--space-3);gap:var(--space-3);align-items:start}.roles-cheatsheet-row p{margin:0;font-size:var(--text-small);color:var(--color-text-muted);line-height:1.5}.modal .modal-panel.member-form-modal{max-width:560px;padding:var(--space-6);gap:var(--space-4)}.member-form-modal .modal-title{margin:0;font-size:var(--text-h1);font-weight:var(--weight-semibold);color:var(--color-text);line-height:1.3;padding-right:var(--space-8)}.member-form-modal .modal-subtitle{margin:0;font-size:var(--text-small);color:var(--color-text-muted);line-height:1.5}.member-form-modal .member-form{display:flex;flex-direction:column;gap:var(--space-4);flex:1 1 auto;min-height:0;overflow-y:auto}.member-form-modal .modal-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.library-access-picker,.page-access-picker,.role-picker{display:flex;flex-direction:column;gap:var(--space-2)}.library-access-mode,.page-access-mode,.role-option{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.library-access-mode:hover,.page-access-mode:hover,.role-option:hover{border-color:var(--color-border-strong)}.library-access-mode.is-selected,.page-access-mode.is-selected,.role-option.is-selected{border-color:var(--color-primary);background:#F5F8FF}.library-access-mode input[type=radio],.page-access-mode input[type=radio],.role-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.library-access-mode-name,.page-access-mode-name,.role-option-name{font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--color-text);margin-bottom:2px;display:flex;align-items:center;gap:var(--space-2)}.library-access-mode-desc,.page-access-mode-desc,.role-option-desc{font-size:var(--text-small);color:var(--color-text-muted);line-height:1.5}.library-access-list,.page-access-list{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.library-access-list[hidden],.page-access-list[hidden]{display:none}.library-access-option,.page-access-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background-color .12s ease}.library-access-option:hover,.page-access-option:hover{background:var(--color-surface-muted)}.library-access-option input[type=checkbox],.page-access-option input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.library-access-option-name,.page-access-option-name{flex:1 1;font-size:var(--text-body);color:var(--color-text)}.library-access-option-meta,.page-access-option-meta{flex:0 0 auto;font-size:var(--text-small);color:var(--color-text-muted)}.library-access-option-icon{flex:0 0 auto;width:18px;height:18px;color:var(--color-text-muted)}.member-form-empty{margin:0;padding:var(--space-2) var(--space-3);font-size:var(--text-small);color:var(--color-text-muted)}.tools-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-5)}.tools-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:inherit;text-decoration:none;transition:border-color .12s ease,background-color .12s ease,box-shadow .12s ease}.tools-card:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover);box-shadow:var(--shadow-sm)}.tools-card:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.tools-card-icon{flex:none;width:56px;height:56px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center}.tools-card-icon .icon{width:28px;height:28px}.tools-card-body{flex:1 1 auto;min-width:0}.tools-card-title{margin:0 0 4px;font-size:var(--text-subhead);font-weight:var(--weight-semibold);color:var(--color-text)}.tools-card-desc{margin:0;font-size:var(--text-body);line-height:1.5}.tools-card-arrow{flex:none;width:20px;height:20px;color:var(--color-text-subtle);transition:color .12s ease}.tools-card:hover .tools-card-arrow{color:var(--color-text)}.uploader-body{background:var(--color-canvas);min-height:100vh}.uploader-main{display:flex;flex-direction:column;min-height:calc(100vh - 80px)}.uploader-toolbar{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-6);background:var(--color-surface);border-bottom:1px solid var(--color-border);position:-webkit-sticky;position:sticky;top:80px;z-index:10;flex-wrap:wrap}.uploader-breadcrumbs{flex:1 1 auto;min-width:0}.uploader-breadcrumb-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;flex-wrap:wrap;gap:0 var(--space-1);font-size:var(--text-body);min-width:0}.uploader-breadcrumb-item{display:inline-flex;align-items:center;gap:var(--space-1)}.uploader-breadcrumb-item+.uploader-breadcrumb-item:before{content:"/";color:var(--color-text-subtle);margin:0 var(--space-1)}.uploader-breadcrumb-link{color:var(--color-text-muted);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-weight:var(--weight-medium);transition:color .12s ease,background-color .12s ease;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.uploader-breadcrumb-link:hover{color:var(--color-text);background:var(--color-surface-hover)}.uploader-breadcrumb-link.is-current{color:var(--color-text);font-weight:var(--weight-semibold)}.uploader-toolbar-controls{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.uploader-search{display:inline-flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);height:36px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:240px;transition:border-color .12s ease,box-shadow .12s ease}.uploader-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.uploader-search .icon{width:16px;height:16px;color:var(--color-text-muted);flex:none}.uploader-search input{border:none;outline:none;background:none;width:100%;font:inherit;color:var(--color-text)}.uploader-search input::placeholder{color:var(--color-text-subtle)}.uploader-sort{position:relative}.uploader-sort-trigger{display:inline-flex;align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:var(--text-body);font-weight:var(--weight-medium);color:var(--color-text);transition:border-color .12s ease,background-color .12s ease}.uploader-sort-trigger:hover{border-color:var(--color-border-strong)}.uploader-sort-trigger:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.uploader-sort-trigger .icon-chevron{width:14px;height:14px;color:var(--color-text-muted);transition:transform .12s ease}.uploader-sort-trigger[aria-expanded=true] .icon-chevron{transform:rotate(180deg)}.uploader-sort-panel{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;margin:0;padding:var(--space-1);list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:20}.uploader-sort-option{display:flex;align-items:center;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-body);color:var(--color-text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.uploader-sort-option:hover{background:var(--color-surface-hover)}.uploader-sort-option.is-active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:var(--weight-semibold)}.uploader-view-toggle{display:inline-flex;height:36px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.uploader-view-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:100%;color:var(--color-text-muted);transition:background-color .12s ease,color .12s ease}.uploader-view-btn+.uploader-view-btn{border-left:1px solid var(--color-border)}.uploader-view-btn:hover{background:var(--color-surface-hover);color:var(--color-text)}.uploader-view-btn.is-active{background:var(--color-primary-soft);color:var(--color-primary)}.uploader-view-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-primary)}.uploader-view-btn .icon{width:16px;height:16px}.uploader-toolbar-btn{height:36px;padding:0 var(--space-3)}.uploader-toolbar-btn .icon{width:16px;height:16px}.uploader-more-btn{width:36px;padding:0;color:var(--color-text-muted)}.uploader-more-btn:hover{color:var(--color-text)}.uploader-upload-trigger{cursor:pointer;position:relative}.uploader-upload-trigger input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.uploader-browser{flex:1 1 auto;padding:var(--space-6);min-height:320px}.uploader-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.uploader-card{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;position:relative;transition:border-color .12s ease,background-color .12s ease,box-shadow .12s ease}.uploader-card:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.uploader-card:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.uploader-card-thumb{aspect-ratio:1/1;background:var(--color-surface-muted);display:flex;align-items:center;justify-content:center;overflow:hidden}.uploader-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}.uploader-card-thumb-folder .icon{width:56px;height:56px;color:var(--color-text-muted)}.uploader-card-body{padding:var(--space-3);display:flex;flex-direction:column;gap:2px}.uploader-card-name{font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uploader-card-meta{font-size:var(--text-small)}.uploader-list{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.uploader-row{display:grid;grid-template-columns:48px 1fr auto 32px;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-4);cursor:pointer;transition:background-color .12s ease}.uploader-row+.uploader-row{border-top:1px solid var(--color-border)}.uploader-row:hover{background:var(--color-surface-hover)}.uploader-row:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-primary)}.uploader-row-thumb{width:48px;height:48px;border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface-muted);display:flex;align-items:center;justify-content:center}.uploader-row-thumb img{width:100%;height:100%;object-fit:cover}.uploader-row-thumb-folder .icon{width:24px;height:24px;color:var(--color-text-muted)}.uploader-row-name{font-size:var(--text-body);font-weight:var(--weight-medium);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uploader-row-meta{font-size:var(--text-small);color:var(--color-text-muted);white-space:nowrap}.uploader-list-header{display:grid;grid-template-columns:48px 1fr auto 32px;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-4);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);font-size:var(--text-micro);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.uploader-list-header-sort{display:inline-flex;align-items:center;gap:var(--space-1);padding:4px var(--space-2);margin:-4px calc(var(--space-2) * -1);border-radius:var(--radius-sm);font:inherit;color:inherit;text-align:left;transition:background-color .12s ease,color .12s ease}.uploader-list-header-sort:hover{background:var(--color-surface-hover);color:var(--color-text)}.uploader-list-header-sort:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-primary-ring)}.uploader-list-header-sort.is-active{color:var(--color-primary)}.uploader-list-header-arrow{width:14px;height:14px;flex:none}.uploader-list-header-date{justify-self:end}.uploader-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px;padding:var(--space-8) var(--space-4);text-align:center;gap:var(--space-3)}.uploader-empty-state p{color:var(--color-text-muted);font-size:var(--text-body);max-width:460px}.uploader-empty-state strong{color:var(--color-text);font-weight:var(--weight-semibold)}.uploader-link-btn{color:var(--color-primary);font-weight:var(--weight-semibold);font-size:var(--text-body);background:none;border:none;padding:0;cursor:pointer}.uploader-link-btn:hover{color:var(--color-primary-hover)}.uploader-link-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-primary-ring);border-radius:var(--radius-sm)}.uploader-card.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-ring)}.uploader-row.is-selected,.uploader-row.is-selected:hover{background:var(--color-primary-soft)}.uploader-side-panel{position:fixed;top:var(--uploader-chrome-h,140px);right:0;bottom:0;width:440px;background:var(--color-surface);border-left:1px solid var(--color-border);box-shadow:-8px 0 24px rgba(15,23,42,.06);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .2s ease;z-index:9;pointer-events:none}.uploader-side-panel.is-open{transform:translateX(0);pointer-events:auto}.uploader-side-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);flex:none}.uploader-side-title{margin:0;font-size:var(--text-h2);font-weight:var(--weight-semibold);color:var(--color-text)}.uploader-side-close,.uploader-side-collapse{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--color-text-muted);transition:background-color .12s ease,color .12s ease}.uploader-side-close:hover,.uploader-side-collapse:hover{background:var(--color-surface-hover);color:var(--color-text)}.uploader-side-close:focus-visible,.uploader-side-collapse:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-primary-ring)}.uploader-side-close .icon,.uploader-side-collapse .icon{width:18px;height:18px}.uploader-side-collapse .icon{transition:transform .12s ease}.uploader-side-panel.is-collapsed .uploader-side-collapse .icon{transform:rotate(180deg)}.uploader-side-panel.is-collapsed{bottom:auto}.uploader-side-panel.is-collapsed .uploader-side-content{display:none}.uploader-side-panel.is-collapsed .uploader-side-header{padding-top:var(--space-2);padding-bottom:var(--space-2)}.uploader-side-panel.is-collapsed .uploader-side-title{font-size:var(--text-body)}.uploader-side-panel.is-collapsed .uploader-side-close,.uploader-side-panel.is-collapsed .uploader-side-collapse{width:28px;height:28px}.uploader-side-panel.is-collapsed .uploader-side-close .icon,.uploader-side-panel.is-collapsed .uploader-side-collapse .icon{width:16px;height:16px}.uploader-side-content{flex:1 1 auto;overflow-y:auto;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.uploader-side-preview{background:var(--color-surface-muted);border-radius:var(--radius-md);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden}.uploader-side-preview img{max-width:100%;max-height:100%;object-fit:contain;display:block}.uploader-side-name{margin:0;font-size:var(--text-h2);font-weight:var(--weight-semibold);color:var(--color-text);word-break:break-word;line-height:1.35}.uploader-side-meta{margin:0;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);font-size:var(--text-small)}.uploader-side-meta-row{display:flex;flex-direction:column;gap:2px;min-width:0}.uploader-side-meta dt{color:var(--color-text-muted);font-weight:var(--weight-medium)}.uploader-side-meta dd{margin:0;color:var(--color-text)}.uploader-side-actions{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.uploader-side-actions .btn{flex:1 1;justify-content:center}.uploader-side-actions .btn .icon{width:16px;height:16px}.uploader-copy-btn.is-copied,.uploader-copy-btn.is-copied:hover{background:var(--color-success)}.uploader-side-name-row{display:flex;align-items:center;gap:var(--space-2)}.uploader-side-name-row .uploader-side-name{flex:1 1 auto;min-width:0}.uploader-side-pencil{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background-color .12s ease,color .12s ease}.uploader-side-pencil:hover{background:var(--color-surface-hover);color:var(--color-text)}.uploader-side-pencil:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-primary-ring)}.uploader-side-pencil .icon{width:16px;height:16px}.uploader-side-secondary{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-2);gap:var(--space-2);margin-top:var(--space-2)}.uploader-side-secondary .btn{justify-content:center}.uploader-side-secondary .btn .icon{width:16px;height:16px}.uploader-side-secondary .uploader-side-delete-btn{color:var(--color-danger-text)}.uploader-side-secondary .uploader-side-delete-btn:hover{background:var(--color-danger-bg);color:var(--color-danger-text)}.uploader-side-secondary .btn:disabled{color:var(--color-text-subtle);cursor:not-allowed;opacity:.6}.uploader-side-secondary .btn:disabled:hover{background:transparent;color:var(--color-text-subtle)}.uploader-kebab-wrap{position:relative}.uploader-card .uploader-kebab-wrap{position:absolute;top:var(--space-2);right:var(--space-2);z-index:2}.uploader-kebab{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--color-text-muted);background:rgba(255,255,255,.92);border:1px solid transparent;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.uploader-row .uploader-kebab{background:transparent}.uploader-kebab:hover{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.uploader-kebab:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.uploader-kebab .icon{width:16px;height:16px}.uploader-kebab-menu{position:fixed;top:0;left:0;width:180px;list-style:none;margin:0;padding:var(--space-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:1000}.uploader-kebab-menu li{margin:0}.uploader-kebab-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-body);color:var(--color-text);text-align:left;background:none;border:none;cursor:pointer;transition:background-color .12s ease}.uploader-kebab-item:hover{background:var(--color-surface-hover)}.uploader-kebab-item.is-danger{color:var(--color-danger-text)}.uploader-kebab-item.is-danger:hover{background:var(--color-danger-bg)}.uploader-kebab-item.is-disabled{color:var(--color-text-subtle);cursor:not-allowed}.uploader-kebab-item.is-disabled:hover{background:transparent}.uploader-kebab-item .icon{width:14px;height:14px;flex:none}.uploader-inline-input{width:100%;font:inherit;font-weight:var(--weight-semibold);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-primary);border-radius:var(--radius-sm);padding:4px 8px;box-shadow:0 0 0 3px var(--color-primary-ring);outline:none}.uploader-inline-input.is-error{border-color:var(--color-danger);background:var(--color-danger-bg);box-shadow:0 0 0 3px rgba(239,68,68,.18)}.uploader-inline-error{position:absolute;top:100%;left:0;right:0;margin-top:4px;padding:var(--space-1) var(--space-2);font-size:var(--text-small);color:var(--color-danger-text);background:var(--color-danger-bg);border:1px solid rgba(185,28,28,.25);border-radius:var(--radius-sm);z-index:40;pointer-events:none}.uploader-card-body,.uploader-row{position:relative}.uploader-rename-wrap{display:flex;align-items:baseline;gap:4px;width:100%;min-width:0;position:relative}.uploader-rename-wrap .uploader-inline-input{flex:1 1 auto;min-width:0}.uploader-rename-ext{flex:none;color:var(--color-text-muted);font-weight:var(--weight-semibold);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.uploader-side-name-input{font-size:var(--text-h2);font-weight:var(--weight-semibold)}.uploader-side-name-input+.uploader-rename-ext{font-size:var(--text-h2)}.uploader-draft{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);margin-bottom:var(--space-4);background:var(--color-surface);border:1px dashed var(--color-primary);border-radius:var(--radius-md);position:relative}.uploader-draft-icon{flex:none;width:40px;height:40px;border-radius:var(--radius-sm);background:var(--color-surface-muted);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center}.uploader-draft-icon .icon{width:22px;height:22px}.uploader-draft-input{flex:0 1 360px;width:100%;min-width:200px;max-width:100%;field-sizing:content;height:38px;padding:0 var(--space-3);font:inherit;font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-primary);border-radius:var(--radius-md);outline:none;box-shadow:0 0 0 3px var(--color-primary-ring)}.uploader-draft-input::placeholder{color:var(--color-text-subtle);font-weight:var(--weight-regular)}.uploader-draft-input.is-error{border-color:var(--color-danger);background:var(--color-danger-bg);box-shadow:0 0 0 3px rgba(239,68,68,.18)}.uploader-draft-save{flex:none;height:38px;padding:0 var(--space-4)}.uploader-draft-save:disabled{cursor:not-allowed;opacity:.7}.uploader-draft-save:disabled,.uploader-draft-save:disabled:hover{background:var(--color-text-subtle)}.uploader-draft.is-creating{opacity:.85}.uploader-draft.is-creating .btn-ghost,.uploader-draft.is-creating .uploader-draft-icon,.uploader-draft.is-creating .uploader-draft-input{opacity:.55;pointer-events:none}.uploader-modal{border:none;padding:0;border-radius:var(--radius-lg);width:min(440px,calc(100vw - 32px));background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg)}.uploader-modal::-webkit-backdrop{background:rgba(15,23,42,.45)}.uploader-modal::backdrop{background:rgba(15,23,42,.45)}.uploader-modal-header{padding:var(--space-5) var(--space-5) var(--space-2)}.uploader-modal-title{margin:0;font-size:var(--text-subhead);font-weight:var(--weight-semibold);color:var(--color-text)}.uploader-modal-body{padding:0 var(--space-5) var(--space-5);color:var(--color-text-muted);font-size:var(--text-body);line-height:1.5}.uploader-modal-body code{font-family:var(--font-mono);font-size:.95em;padding:1px 6px;background:var(--color-surface-muted);border-radius:var(--radius-sm);color:var(--color-text)}.uploader-modal-actions{display:flex;gap:var(--space-2);justify-content:flex-end;padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface)}.uploader-move-modal{width:min(520px,calc(100vw - 32px))}.uploader-move-body{padding:0;max-height:360px;overflow-y:auto;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-surface)}.uploader-move-tree{padding:var(--space-2) var(--space-3)}.uploader-tree,.uploader-tree ul{list-style:none;margin:0;padding:0}.uploader-tree-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) 4px;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .12s ease,color .12s ease}.uploader-tree-row:hover{background:var(--color-surface-hover)}.uploader-tree-row:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-primary)}.uploader-tree-row.is-selected{color:var(--color-primary)}.uploader-tree-row.is-selected,.uploader-tree-row.is-selected:hover{background:var(--color-primary-soft)}.uploader-tree-row.is-disabled{color:var(--color-text-subtle);cursor:not-allowed}.uploader-tree-row.is-disabled:hover{background:transparent}.uploader-tree-chevron,.uploader-tree-chevron-placeholder{width:20px;height:20px;flex:none}.uploader-tree-chevron{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background-color .12s ease,transform .12s ease}.uploader-tree-chevron:hover{background:var(--color-surface);color:var(--color-text)}.uploader-tree-chevron:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-primary)}.uploader-tree-chevron .icon{width:12px;height:12px}.uploader-tree-chevron[aria-expanded=true] .icon{transform:rotate(90deg)}.uploader-tree-icon{width:18px;height:18px;flex:none;color:var(--color-text-muted)}.uploader-tree-row.is-selected .uploader-tree-icon{color:var(--color-primary)}.uploader-tree-name{flex:1 1 auto;font-size:var(--text-body);font-weight:var(--weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.uploader-tree-check{width:16px;height:16px;flex:none;color:var(--color-primary)}.uploader-loading-overlay{position:absolute;inset:0;background:rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;z-index:5;animation:uploader-loading-fade .12s ease-out}.uploader-loading-stack{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.uploader-loading-stack .uploader-spinner{width:36px;height:36px}.uploader-loading-label{font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-text-muted)}@keyframes uploader-loading-fade{0%{opacity:0}to{opacity:1}}.uploader-browser{position:relative}.uploader-drop-overlay{position:absolute;inset:var(--space-2);background:rgba(37,99,235,.06);border:2px dashed var(--color-primary);border-radius:var(--radius-lg);z-index:6;display:flex;align-items:center;justify-content:center;pointer-events:none}.uploader-drop-overlay[hidden]{display:none}.uploader-drop-message{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--text-subhead);font-weight:var(--weight-semibold);color:var(--color-text)}.uploader-drop-message strong{color:var(--color-primary)}.uploader-drop-message .icon{width:28px;height:28px;color:var(--color-primary)}.uploader-card-uploading,.uploader-row-uploading{cursor:default}.uploader-card-uploading:hover,.uploader-row-uploading:hover{background:var(--color-surface);border-color:var(--color-border)}.uploader-card-uploading .uploader-card-thumb{background:var(--color-surface-muted)}.uploader-spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:uploader-spin .8s linear infinite}.uploader-row-thumb .uploader-spinner{width:24px;height:24px;border-width:2px}@keyframes uploader-spin{to{transform:rotate(1turn)}}.uploader-upload-progress{height:4px;background:var(--color-border);border-radius:2px;overflow:hidden;margin-top:4px}.uploader-upload-progress-bar{height:100%;background:var(--color-primary);transition:width .15s ease}.uploader-card-upload-error,.uploader-row-upload-error{border-color:var(--color-danger);background:var(--color-danger-bg)}.uploader-card-upload-error .uploader-card-thumb,.uploader-row-upload-error .uploader-row-thumb{background:var(--color-danger-bg);color:var(--color-danger-text)}.uploader-card-upload-error .uploader-card-thumb .icon,.uploader-row-upload-error .uploader-row-thumb .icon{width:28px;height:28px;color:var(--color-danger-text)}.uploader-row-upload-error .uploader-row-thumb .icon{width:20px;height:20px}.uploader-upload-error-msg{color:var(--color-danger-text);font-size:var(--text-small)}.uploader-upload-error-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.uploader-btn-mini{height:26px;padding:0 var(--space-2);font-size:var(--text-small)}.uploader-row-upload-body{display:flex;flex-direction:column;gap:2px;min-width:0}.uploader-row-upload-body .uploader-row-name{flex:none}.uploader-card.is-new,.uploader-row.is-new{position:relative}.uploader-card.is-new:after,.uploader-row.is-new:after{content:"";position:absolute;inset:0;background:var(--color-primary-soft);border-radius:inherit;pointer-events:none;animation:uploader-new-fade 10s ease-out forwards}.uploader-row.is-new:after{border-radius:0}@keyframes uploader-new-fade{0%{opacity:.7}to{opacity:0}}.uploader-toasts{position:fixed;top:var(--space-4);right:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);z-index:60;pointer-events:none;max-width:calc(100vw - 32px)}.uploader-toast{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-text-muted);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:280px;max-width:420px;pointer-events:auto;animation:uploader-toast-in .2s ease-out}.uploader-toast.is-error{border-left-color:var(--color-danger)}.uploader-toast.is-info{border-left-color:var(--color-primary)}.uploader-toast-message{flex:1 1 auto;font-size:var(--text-body);line-height:1.45;color:var(--color-text);word-break:break-word}.uploader-toast-close{flex:none;width:22px;height:22px;border-radius:var(--radius-sm);color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;transition:background-color .12s ease,color .12s ease}.uploader-toast-close:hover{background:var(--color-surface-hover);color:var(--color-text)}.uploader-toast-close:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-primary)}.uploader-toast-close .icon{width:14px;height:14px}@keyframes uploader-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes uploader-toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@media (max-width:900px){.uploader-toolbar{padding:var(--space-3) var(--space-4)}.uploader-browser{padding:var(--space-4)}.uploader-search{width:180px}}@font-face{font-family:Bebas Neue;src:url(/tools/fb-graphics-creator/fonts/BebasNeue-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:League Gothic;src:url(/tools/fb-graphics-creator/fonts/LeagueGothic-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Roboto Condensed Bold;src:url(/tools/fb-graphics-creator/fonts/RobotoCondensed-Bold.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.fbg-body{background:#0f1115;color:#e6e6e6;height:100vh;display:flex;flex-direction:column;overflow:hidden}.fbg-app{flex:1 1 auto;display:grid;grid-template-columns:minmax(340px,35%) 1fr;min-height:0}@media (max-width:900px){.fbg-app{grid-template-columns:1fr}}.fbg-controls{overflow-y:auto;padding:var(--space-6);background:#272b34;border-right:1px solid #1a1d22}.fbg-controls-header{margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid #363a44}.fbg-controls-header h1{margin:0;font-size:16px;font-weight:var(--weight-semibold);letter-spacing:.02em;color:#e6e6e6}.fbg-control-group{margin-bottom:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid #363a44}.fbg-control-group:last-child{border-bottom:0;padding-bottom:0;margin-bottom:0}.fbg-control-group h2{margin:0 0 var(--space-2);font-size:11px;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.08em;color:#9aa0aa;transition:color .12s ease}.fbg-control-group.fbg-section-has-dropzone h2{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fbg-control-group.fbg-section-has-dropzone:hover h2{color:#c0c0c0}.fbg-control-group.fbg-section-has-dropzone:has(.fbg-drop-zone:focus) h2{color:#6aa9ff}.fbg-controls textarea{width:100%;background:#1a1d22;color:#e6e6e6;border:1px solid #3a3f4a;border-radius:var(--radius-sm);padding:var(--space-2);font:inherit;resize:vertical}.fbg-controls textarea:focus{outline:none;border-color:#6aa9ff}.fbg-controls input[type=number],.fbg-controls input[type=text],.fbg-controls select{background:#1a1d22;color:#e6e6e6;border:1px solid #3a3f4a;border-radius:var(--radius-sm);padding:4px 6px;font:inherit}.fbg-controls input[type=number]:focus,.fbg-controls input[type=text]:focus,.fbg-controls select:focus{outline:none;border-color:#6aa9ff}.fbg-controls input[type=number]{width:70px}.fbg-controls input[type=text]{width:140px}.fbg-controls input[type=text]#fbg-pill-color{width:84px;font-family:var(--font-mono)}.fbg-controls input[type=color]{width:32px;height:28px;border:1px solid #3a3f4a;border-radius:var(--radius-sm);background:transparent;padding:2px;cursor:pointer}.fbg-inline-label{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);font-size:var(--text-small);cursor:pointer}.fbg-inline-label .fbg-unit{color:#8a8f97;font-size:12px}.fbg-radio-group{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.fbg-radio-group label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;padding:4px 0}.fbg-radio-group legend{margin:0 0 4px;padding:0;font-size:12px;color:#8a8f97}.fbg-char-count,.fbg-hint{margin:6px 0 0;color:#8a8f97;font-size:12px}.fbg-drop-zone{position:relative;border:2px dashed #3a3f4a;border-radius:var(--radius-sm);padding:var(--space-4);text-align:center;cursor:pointer;outline:none;transition:border-color .12s ease,background-color .12s ease;min-height:92px;display:flex;align-items:center;justify-content:center}.fbg-drop-zone.is-dragover,.fbg-drop-zone:focus,.fbg-drop-zone:hover{border-color:#6aa9ff;background:#2a3140}.fbg-drop-zone.has-image{padding:var(--space-2)}.fbg-drop-zone-prompt{margin:0;color:#8a8f97;font-size:var(--text-small)}.fbg-drop-zone-thumb{max-width:100%;max-height:140px;object-fit:contain;border-radius:4px;display:block}.fbg-clear-btn{margin-top:var(--space-2);background:transparent;border:1px solid #3a3f4a;color:#c8ccd3;padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;font:inherit;font-size:12px}.fbg-clear-btn:hover{border-color:#6a6e78;color:#fff}.fbg-image-adjust{margin-top:var(--space-3)}.fbg-straighten input[type=range]{flex:1 1;min-width:0;accent-color:var(--color-primary)}.fbg-straighten .fbg-unit{min-width:36px;text-align:right}.fbg-warning{margin:var(--space-2) 0 0;padding:6px var(--space-2);background:#3a2c1a;border:1px solid #6b4f24;border-radius:4px;color:#f0a04b;font-size:12px}.fbg-grid-images{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-2);margin-bottom:var(--space-3)}.fbg-grid-row{display:flex;gap:var(--space-2)}.fbg-grid-cell-control{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.fbg-grid-cell-label{display:block;width:100%;padding:2px 0;font-size:11px;color:#8a8f97;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .12s ease}.fbg-grid-cell-control:hover .fbg-grid-cell-label{color:#c0c0c0}.fbg-grid-cell-control:has(.fbg-drop-zone:focus) .fbg-grid-cell-label{color:#6aa9ff}.fbg-grid-cell-control .fbg-drop-zone{min-height:64px;padding:var(--space-2)}.fbg-grid-cell-control .fbg-drop-zone-prompt{font-size:11px}.fbg-grid-cell-control .fbg-drop-zone-thumb{max-height:80px}.fbg-grid-cell-control .fbg-clear-btn{margin-top:0;padding:2px 6px;font-size:11px}.fbg-export-group{display:flex;flex-direction:column;gap:var(--space-2)}.fbg-btn-primary{background:#2c5fa3;color:var(--color-text-invert);border:0;border-radius:var(--radius-sm);padding:10px 14px;font:inherit;font-weight:var(--weight-semibold);cursor:pointer;transition:background-color .12s ease}.fbg-btn-primary:hover{background:#3877c5}.fbg-btn-primary:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(106,169,255,.45)}.fbg-preview{padding:var(--space-6);background:#0f1115;overflow:hidden;min-height:0}.fbg-canvas-wrap,.fbg-preview{display:flex;align-items:center;justify-content:center}.fbg-canvas-wrap{background-color:#2a2e36;background-image:linear-gradient(45deg,#1f232a 25%,transparent 0),linear-gradient(-45deg,#1f232a 25%,transparent 0),linear-gradient(45deg,transparent 75%,#1f232a 0),linear-gradient(-45deg,transparent 75%,#1f232a 0);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;box-shadow:0 4px 32px rgba(0,0,0,.5)}.fbg-canvas,.fbg-canvas-wrap{max-width:100%;max-height:calc(100vh - 80px - 48px)}.fbg-canvas{display:block;width:auto;height:auto;touch-action:none}.fbg-toast{position:fixed;bottom:var(--space-6);left:50%;transform:translateX(-50%);background:#3a2c1a;border:1px solid #6b4f24;color:#f0a04b;padding:10px var(--space-4);border-radius:var(--radius-sm);font-size:13px;max-width:80vw;z-index:100;box-shadow:0 4px 16px rgba(0,0,0,.5)}.cscan-main{max-width:960px;margin:0 auto;padding:var(--space-6) var(--space-4)}.cscan-form,.cscan-main{display:flex;flex-direction:column;gap:var(--space-5)}.cscan-fieldset{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.cscan-legend{padding:0 var(--space-2);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.cscan-help{line-height:1.5}.cscan-error,.cscan-help{font-size:var(--text-small)}.cscan-error{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger-text)}.cscan-page-actions{display:flex;align-items:center;gap:var(--space-2)}.cscan-selected-count{font-size:var(--text-small);margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cscan-page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:var(--space-2);gap:var(--space-2)}.cscan-page-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-small);cursor:pointer}.cscan-page-option.is-disabled{opacity:.55;cursor:not-allowed}.cscan-page-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cscan-page-hint{margin-left:auto;font-size:var(--text-micro);white-space:nowrap}.cscan-row{display:flex;gap:var(--space-4);flex-wrap:wrap}.cscan-field{display:flex;flex-direction:column;gap:var(--space-1);flex:1 1;min-width:200px}.cscan-field-narrow{max-width:260px}.cscan-label{font-size:var(--text-small);font-weight:var(--weight-semibold)}.cscan-submit{display:flex;align-items:center;gap:var(--space-3)}.cscan-status{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-pill);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase;background:var(--color-surface-muted);color:var(--color-text-muted)}.cscan-status.is-completed{background:var(--color-success-bg);color:var(--color-success-text)}.cscan-status.is-pending,.cscan-status.is-running{background:var(--color-primary-soft);color:var(--color-primary)}.cscan-status.is-failed{background:var(--color-danger-bg);color:var(--color-danger-text)}.cscan-status.is-partial{background:var(--color-warning-bg);color:var(--color-warning-text)}.cscan-recent{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.cscan-recent-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);transition:border-color .12s ease}.cscan-recent-link:hover{border-color:var(--color-border-strong)}.cscan-recent-window{font-size:var(--text-small);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cscan-recent-meta{font-size:var(--text-small);margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cscan-empty,.cscan-running{font-size:var(--text-small);padding:var(--space-4);background:var(--color-surface-muted);border-radius:var(--radius-md)}.cscan-summary{font-size:var(--text-body)}.cscan-hits{list-style:none;margin:0;padding:0;gap:var(--space-3)}.cscan-hit,.cscan-hits{display:flex;flex-direction:column}.cscan-hit{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);gap:var(--space-2)}.cscan-hit-head{display:flex;align-items:center;gap:var(--space-3)}.cscan-hit-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-pill);background:var(--color-warning-bg);color:var(--color-warning-text);font-size:var(--text-micro);font-weight:var(--weight-semibold)}.cscan-hit-date{font-size:var(--text-small);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cscan-hit-link{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-small);color:var(--color-primary)}.cscan-hit-excerpt{margin:0;font-size:var(--text-small);line-height:1.5}.cscan-comments{list-style:none;margin:0;padding:0;gap:var(--space-2);border-left:2px solid var(--color-border-strong);padding-left:var(--space-3)}.cscan-comment,.cscan-comments{display:flex;flex-direction:column}.cscan-comment{gap:2px}.cscan-comment-author{font-size:var(--text-small);font-weight:var(--weight-semibold)}.cscan-comment-message{font-size:var(--text-small);line-height:1.45}.cscan-comment-meta{font-size:var(--text-micro)}