@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";*{padding:0;margin:0;box-sizing:border-box}a{text-decoration:none;color:inherit}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--color-bg);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .18s ease,color .18s ease}button{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;cursor:pointer;border:none;outline:none}input,select{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;outline:none}.loginPage{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-sidebar-bg) 0%,#232731 60%,#1e2940 100%);padding:16px}.loginPage .loginCard{background:var(--color-card-bg);border-radius:16px;padding:48px 32px;width:100%;max-width:420px;box-shadow:0 20px 60px #0000004d}.loginPage .loginCard .loginHeader{text-align:center;margin-bottom:32px}.loginPage .loginCard .loginHeader .logoRow{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:24px}.loginPage .loginCard .loginHeader .logoRow .logoIcon{width:40px;height:40px;background:var(--color-primary);border-radius:6px;display:flex;align-items:center;justify-content:center}.loginPage .loginCard .loginHeader .logoRow .logoIcon img{width:22px;height:22px;object-fit:contain}.loginPage .loginCard .loginHeader .logoRow .logoText{font-size:20px;font-weight:700;color:var(--color-text-primary);letter-spacing:-.3px}.loginPage .loginCard .loginHeader h1{font-size:22px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.loginPage .loginCard .loginHeader p{font-size:14px;color:var(--color-text-secondary)}.loginPage .loginCard .loginForm{display:flex;flex-direction:column;gap:16px}.loginPage .loginCard .loginForm .formGroup{display:flex;flex-direction:column;gap:4px}.loginPage .loginCard .loginForm .formGroup label{font-size:13px;font-weight:500;color:var(--color-text-primary)}.loginPage .loginCard .loginForm .formGroup input{height:44px;padding:0 16px;border:1.5px solid var(--color-border);border-radius:6px;font-size:14px;color:var(--color-text-primary);background:var(--color-bg);transition:border-color .2s,box-shadow .2s}.loginPage .loginCard .loginForm .formGroup input::placeholder{color:var(--color-text-muted)}.loginPage .loginCard .loginForm .formGroup input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.12);background:var(--color-card-bg)}.loginPage .loginCard .loginForm .rememberRow{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.loginPage .loginCard .loginForm .rememberRow input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.loginPage .loginCard .loginForm .rememberRow span{font-size:13px;color:var(--color-text-secondary)}.loginPage .loginCard .loginForm .loginError{background:rgba(var(--color-danger-rgb),.08);border:1px solid rgba(var(--color-danger-rgb),.2);border-radius:6px;padding:8px 16px;font-size:13px;color:var(--color-danger);text-align:center}.loginPage .loginCard .loginForm .loginButton{height:46px;background:var(--color-primary);color:#fff;border-radius:6px;font-size:15px;font-weight:600;letter-spacing:.2px;transition:background .2s,transform .1s}.loginPage .loginCard .loginForm .loginButton:hover:not(:disabled){background:var(--color-primary-dark)}.loginPage .loginCard .loginForm .loginButton:active:not(:disabled){transform:scale(.99)}.loginPage .loginCard .loginForm .loginButton:disabled{opacity:.6;cursor:not-allowed}.adminLayout{display:flex;min-height:100vh}.adminLayout .sidebar{width:240px;min-width:240px;background:var(--color-sidebar-bg);display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;border-right:1px solid var(--color-sidebar-border)}.adminLayout .sidebar .sidebarHeader{padding:24px 16px;border-bottom:1px solid var(--color-sidebar-border)}.adminLayout .sidebar .sidebarHeader .logoRow{display:flex;align-items:center;gap:8px}.adminLayout .sidebar .sidebarHeader .logoRow .logoIcon{width:34px;height:34px;background:var(--color-primary);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.adminLayout .sidebar .sidebarHeader .logoRow .logoIcon img{width:18px;height:18px;object-fit:contain}.adminLayout .sidebar .sidebarHeader .logoRow .logoText{font-size:15px;font-weight:700;color:#fff;letter-spacing:-.2px;line-height:1.2}.adminLayout .sidebar .sidebarHeader .logoRow .logoText span{display:block;font-size:10px;font-weight:400;color:var(--color-sidebar-text);letter-spacing:.5px;text-transform:uppercase}.adminLayout .sidebar .sidebarNav{flex:1;padding:16px 0}.adminLayout .sidebar .sidebarNav .navItem{display:flex;align-items:center;gap:8px;padding:8px 16px;color:var(--color-sidebar-text);font-size:14px;font-weight:400;border-left:3px solid transparent;transition:all .15s}.adminLayout .sidebar .sidebarNav .navItem svg{width:18px;height:18px;flex-shrink:0;opacity:.7}.adminLayout .sidebar .sidebarNav .navItem.active{color:var(--color-sidebar-text-active);background:var(--color-sidebar-active-bg);border-left-color:var(--color-primary);font-weight:500}.adminLayout .sidebar .sidebarNav .navItem.active svg{opacity:1}.adminLayout .sidebar .sidebarNav .navItem:hover:not(.active){background:var(--color-sidebar-hover);color:#fff}.adminLayout .sidebar .sidebarNav .navItem .navBadge{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:9px;background:var(--color-danger);color:#fff;font-size:11px;font-weight:600;line-height:1;flex-shrink:0}.adminLayout .sidebar .sidebarNav .navSection{padding:24px 16px 4px;font-size:10px;font-weight:600;color:var(--color-sidebar-text);letter-spacing:1px;text-transform:uppercase;opacity:.5}.adminLayout .sidebar .sidebarFooter{padding:16px;border-top:1px solid var(--color-sidebar-border)}.adminLayout .sidebar .sidebarFooter .logoutButton{width:100%;display:flex;align-items:center;gap:8px;padding:8px 16px;background:none;color:var(--color-sidebar-text);font-size:14px;border-radius:6px;transition:all .15s}.adminLayout .sidebar .sidebarFooter .logoutButton svg{width:16px;height:16px;flex-shrink:0}.adminLayout .sidebar .sidebarFooter .logoutButton:hover{background:rgba(var(--color-danger-rgb),.12);color:var(--color-danger)}.adminLayout .mainContent{margin-left:240px;flex:1;display:flex;flex-direction:column;min-width:0}.adminLayout .mainContent .topbar{height:64px;background:var(--color-card-bg);border-bottom:1px solid var(--color-border);display:flex;align-items:center;padding:0 32px;position:sticky;top:0;z-index:50}.adminLayout .mainContent .topbar h1{font-size:17px;font-weight:600;color:var(--color-text-primary)}.adminLayout .mainContent .topbar .topbarRight{margin-left:auto;display:flex;align-items:center;gap:16px}.adminLayout .mainContent .topbar .topbarRight .daysSelector{display:flex;align-items:center;gap:8px}.adminLayout .mainContent .topbar .topbarRight .daysSelector label{font-size:13px;color:var(--color-text-secondary);font-weight:500}.adminLayout .mainContent .topbar .topbarRight .daysSelector select{height:34px;padding:0 8px;border:1.5px solid var(--color-border);border-radius:6px;font-size:13px;color:var(--color-text-primary);background:var(--color-card-bg);cursor:pointer}.adminLayout .mainContent .topbar .topbarRight .daysSelector select:focus{border-color:var(--color-primary)}.adminLayout .mainContent .topbar .topbarRight .adminBadge{font-size:12px;font-weight:500;color:var(--color-text-secondary);background:var(--color-bg);padding:4px 10px;border-radius:20px;border:1px solid var(--color-border)}.adminLayout .mainContent .topbar .topbarRight .themeToggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--color-text-secondary);background:var(--color-bg);padding:6px 12px;border-radius:20px;border:1px solid var(--color-border);transition:background .15s ease,color .15s ease,border-color .15s ease}.adminLayout .mainContent .topbar .topbarRight .themeToggle svg{width:16px;height:16px;flex-shrink:0}.adminLayout .mainContent .topbar .topbarRight .themeToggle:hover{color:var(--color-text-primary);border-color:var(--color-primary)}.adminLayout .mainContent .topbar .topbarRight .themeToggle:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.25)}.adminLayout .mainContent .topbar .topbarRight .themeToggleLabel{line-height:1}.adminLayout .mainContent .pageContent{padding:32px;display:flex;flex-direction:column;gap:32px}.dashSection .sectionHeader{margin-bottom:24px}.dashSection .sectionHeader h2{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:2px}.dashSection .sectionHeader p{font-size:13px;color:var(--color-text-secondary)}.dashSection .chartsGrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:1024px){.dashSection .chartsGrid{grid-template-columns:1fr}}.dashSection .builderControls{display:flex;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap}.chartCard{background:var(--color-card-bg);border-radius:10px;padding:24px;border:1px solid var(--color-border);box-shadow:var(--shadow-card)}.chartCard .chartCardHeader{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.chartCard .chartCardHeader .chartTitle{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.chartCard .chartCardHeader .chartSubtitle{font-size:12px;color:var(--color-text-secondary)}.chartCard .chartCardHeader .totalBadge{font-size:22px;font-weight:700;color:var(--color-text-primary)}.chartCard .chartWrapper{height:220px}.chartCard .chartLoading,.chartCard .chartEmpty{height:220px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--color-text-muted);background:var(--color-bg);border-radius:6px}.builderSelect{display:flex;align-items:center;gap:8px}.builderSelect label{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.builderSelect select{height:38px;padding:0 16px;border:1.5px solid var(--color-border);border-radius:6px;font-size:14px;color:var(--color-text-primary);background:var(--color-card-bg);min-width:200px;cursor:pointer;transition:border-color .2s}.builderSelect select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.builderMultiSelect{position:relative;display:flex;align-items:center;gap:8px}.builderMultiSelect .builderMultiSelectLabel{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;cursor:default}.builderMultiSelect .builderMultiSelectTrigger{display:flex;align-items:center;gap:8px;height:38px;padding:0 16px;border:1.5px solid var(--color-border);border-radius:6px;font-size:14px;color:var(--color-text-primary);background:var(--color-card-bg);min-width:180px;cursor:pointer;transition:border-color .2s;justify-content:space-between}.builderMultiSelect .builderMultiSelectTrigger:hover,.builderMultiSelect .builderMultiSelectTrigger--open{border-color:var(--color-primary)}.builderMultiSelect .builderMultiSelectTrigger--open{box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.builderMultiSelect .builderMultiSelectChevron{color:var(--color-text-secondary);flex-shrink:0}.builderMultiSelect .builderMultiSelectPanel{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:var(--color-card-bg);border:1.5px solid var(--color-border);border-radius:6px;box-shadow:0 8px 24px #0000001a;z-index:200;padding:8px 0}.builderMultiSelect .builderMultiSelectToggleAll{display:block;width:100%;text-align:left;padding:4px 16px;font-size:12px;font-weight:600;color:var(--color-primary);background:none;border:none;cursor:pointer;transition:background .12s}.builderMultiSelect .builderMultiSelectToggleAll:hover{background:rgba(var(--color-primary-rgb),.07)}.builderMultiSelect .builderMultiSelectDivider{height:1px;background:var(--color-border);margin:4px 0}.builderMultiSelect .builderMultiSelectList{list-style:none;margin:0;padding:0;max-height:260px;overflow-y:auto}.builderMultiSelect .builderMultiSelectItem{display:flex;align-items:center;gap:8px;padding:4px 16px;font-size:13px;color:var(--color-text-primary);cursor:pointer;transition:background .12s}.builderMultiSelect .builderMultiSelectItem:hover{background:var(--color-bg)}.builderMultiSelect .builderMultiSelectItem input[type=checkbox]{accent-color:var(--color-primary);width:14px;height:14px;cursor:pointer;flex-shrink:0}.builderRowList{display:flex;flex-direction:column;gap:32px}.builderRow .builderRowName{font-size:14px;font-weight:600;color:var(--color-text-secondary);margin-bottom:16px;padding-bottom:4px;border-bottom:1px solid var(--color-border)}.sectionDivider{border:none;border-top:1px solid var(--color-border);margin:0}.loadingOverlay{display:flex;align-items:center;justify-content:center;height:300px;color:var(--color-text-muted);font-size:14px;gap:8px}.loadingOverlay .spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.adminLayout .sidebarNav a.navItem{text-decoration:none;color:inherit}.crawlTableWrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:6px;background:var(--color-card-bg)}.crawlTable{width:100%;border-collapse:collapse;font-size:13px}.crawlTable th,.crawlTable td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--color-border)}.crawlTable th{font-weight:600;color:var(--color-text-secondary);background:var(--color-bg)}.crawlTable--compact th,.crawlTable--compact td{padding:6px 10px}.crawlTable .numCell{text-align:right;font-variant-numeric:tabular-nums}.crawlTable .numCellWarn{color:var(--color-warning);font-weight:600}.crawlStatus{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.crawlStatus--success{color:var(--color-success)}.crawlStatus--failed{color:var(--color-danger)}.linkButton{background:none;border:none;color:var(--color-primary);font-size:13px;font-weight:500;cursor:pointer;padding:0}.linkButton:hover{text-decoration:underline}.detailBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px;overflow-y:auto}.detailPanel{background:var(--color-card-bg);border-radius:6px;max-width:720px;width:100%;box-shadow:0 20px 50px #00000026;border:1px solid var(--color-border)}.detailPanelHeader{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--color-border)}.detailPanelHeader h3{margin:0;font-size:16px;font-weight:600}.detailPanelBody{padding:24px;max-height:min(70vh,640px);overflow-y:auto}.detailDl{display:grid;grid-template-columns:120px 1fr;gap:8px 16px;margin:0 0 24px;font-size:13px}.detailDl dt{color:var(--color-text-secondary);font-weight:500}.detailDl dd{margin:0;color:var(--color-text-primary)}.detailError{color:var(--color-danger);font-weight:500}.detailSubhead{margin:24px 0 8px;font-size:14px;font-weight:600;color:var(--color-text-primary)}.detailPre{margin:0;padding:16px;background:var(--color-bg);border-radius:6px;font-size:11px;line-height:1.45;overflow-x:auto;border:1px solid var(--color-border)}.detailPre--stack{white-space:pre-wrap;word-break:break-word}.errorSampleList{list-style:none;margin:0;padding:0;font-size:13px}.errorSampleList li{padding:8px 0;border-bottom:1px solid var(--color-border)}.errorSampleList li:last-child{border-bottom:none}.errorSamplePhase{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:4px}.errorSampleUrl{font-size:11px;color:var(--color-primary);word-break:break-all;margin-bottom:4px}.errorSampleMsg{color:var(--color-text-primary)}.fixRuleGrid{display:flex;flex-direction:column;gap:24px;max-width:720px}.fixRuleCard{background:var(--color-card-bg);border-radius:10px;padding:24px;border:1px solid var(--color-border);box-shadow:var(--shadow-card)}.fixRuleCardHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}.fixRuleCardHeader h3{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.fixRuleRunBtn{flex-shrink:0;height:34px;padding:0 16px;font-size:13px;font-weight:500;color:#fff;background:var(--color-primary);border:none;border-radius:6px;cursor:pointer;transition:opacity .15s}.fixRuleRunBtn:hover:not(:disabled){opacity:.92}.fixRuleRunBtn:disabled{opacity:.55;cursor:not-allowed}.fixRuleRunBtn--danger{background:var(--color-danger)}.fixRuleDescription{margin:0 0 8px;font-size:13px;color:var(--color-text-secondary);line-height:1.5}.deletionControls{margin-top:8px}.deletionConfirmPanel{max-width:560px}.deletionConfirmWarning{margin:0 0 16px;padding:8px;border:1px solid rgba(var(--color-danger-rgb),.35);border-radius:6px;background:rgba(var(--color-danger-rgb),.06);color:var(--color-danger);font-size:13px;line-height:1.45}.deletionConfirmBuilder{margin:0;font-size:13px;color:var(--color-text-primary)}.deletionConfirmActions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.fixRuleId{display:block;font-size:11px;color:var(--color-text-secondary);margin-bottom:8px}.fixRuleProgress{margin:16px 0 0}.fixRuleProgressPhase{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:4px}.fixRuleProgressLabel{font-size:12px;color:var(--color-text-primary);margin-bottom:6px;line-height:1.35}.fixRuleProgressBar{display:block;width:100%;height:8px;accent-color:var(--color-primary);border-radius:6px;overflow:hidden;vertical-align:middle;margin:0 0 4px}.fixRuleProgressBar::-webkit-progress-bar{background:var(--color-bg);border-radius:6px}.fixRuleProgressBar::-webkit-progress-value{background:var(--color-primary);border-radius:6px}.fixRuleProgressBar::-moz-progress-bar{background:var(--color-primary);border-radius:6px}.fixRuleProgressBar:indeterminate::-webkit-progress-value{background:var(--color-primary)}.fixRuleProgressFrac{font-size:11px;font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.fixRuleOutput{margin:8px 0 0;padding:16px;background:var(--color-bg);border-radius:6px;font-size:12px;line-height:1.45;overflow-x:auto;border:1px solid var(--color-border);white-space:pre-wrap;word-break:break-word}.fixRuleOutputError{color:var(--color-danger);border-color:rgba(var(--color-danger-rgb),.35);background:rgba(var(--color-danger-rgb),.06)}.unfixableSection{margin-top:16px}.unfixableToggle,.unfixableLoadMore{font-size:12px;background:transparent;border:1px solid var(--color-border);border-radius:6px;padding:4px 10px;cursor:pointer}.unfixableToggle:hover,.unfixableLoadMore:hover{background:var(--color-bg)}.unfixableList{margin-top:8px;display:flex;flex-direction:column;gap:8px}.unfixableRow{padding:8px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;font-size:12px}.unfixableRowTop{display:flex;gap:8px;align-items:center;justify-content:space-between}.unfixableBuilder{font-weight:600;color:var(--color-text-secondary)}.unfixableUrl{font-size:11px;color:var(--color-text-secondary);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}.unfixableUrl:hover{text-decoration:underline}.unfixableAddress{font-family:SF Mono,Menlo,monospace;margin-top:4px;word-break:break-word}.unfixableLocation{color:var(--color-text-secondary);margin-top:2px}.unfixableEmpty{font-size:12px;color:var(--color-text-secondary);margin:8px 0 0}.unfixableLoading{font-size:12px;color:var(--color-text-secondary);padding:8px 0}.migrationJobCard{max-width:720px}.migrationProgress{margin-top:16px;display:flex;flex-direction:column;gap:8px}.migrationProgressMeta{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--color-text-secondary)}.migrationDuration{font-size:12px;color:var(--color-text-muted)}.migrationProgressBar{position:relative;height:8px;background:var(--color-border);border-radius:100px;overflow:hidden}.migrationProgressFill{position:absolute;left:0;top:0;height:100%;background:var(--color-primary);border-radius:100px;transition:width .4s ease}.migrationProgressLabel{position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:10px;font-weight:600;color:var(--color-text-secondary);padding-right:2px;line-height:1;display:none}.migrationStats{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}.migrationStat{display:flex;flex-direction:column;align-items:center;padding:8px 16px;border-radius:6px;border:1px solid var(--color-border);min-width:80px;background:var(--color-bg)}.migrationStat--success{border-color:rgba(var(--color-success-rgb),.4);background:rgba(var(--color-success-rgb),.06)}.migrationStat--success .migrationStatValue{color:var(--color-success)}.migrationStat--warning{border-color:rgba(var(--color-warning-rgb),.4);background:rgba(var(--color-warning-rgb),.06)}.migrationStat--warning .migrationStatValue{color:var(--color-warning)}.migrationStat--danger{border-color:rgba(var(--color-danger-rgb),.4);background:rgba(var(--color-danger-rgb),.06)}.migrationStat--danger .migrationStatValue{color:var(--color-danger)}.migrationStatValue{font-size:20px;font-weight:700;color:var(--color-text-primary);line-height:1.2}.migrationStatLabel{font-size:11px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500;margin-top:2px}.migrationDoneNote{font-size:12px;color:var(--color-text-muted);margin-top:2px}.builderIconGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}.builderIconCard{position:relative;display:flex;flex-direction:column;align-items:center;gap:24px;padding:24px;background:var(--color-card-bg);border-radius:10px;border:1px solid var(--color-border);box-shadow:var(--shadow-card);text-align:center}.builderIconCardOffline{border-color:var(--color-danger);opacity:.85}.builderIconOfflineBadge{position:absolute;top:8px;right:8px;padding:2px 8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#fff;background:var(--color-danger);border-radius:6px}.builderIconPreview{position:relative;width:100%;height:96px;padding:8px;border-radius:6px;border:1px solid var(--color-border);background:var(--color-bg);display:flex;align-items:center;justify-content:center;overflow:visible}.builderIconPreview img{max-width:100%;max-height:100%;object-fit:contain}.builderIconPreviewPicking{cursor:crosshair;border-color:var(--color-primary);box-shadow:0 0 0 2px #2ecc7133}.builderIconPreviewPicking img{pointer-events:none}.builderIconPlaceholder{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.builderIconName{font-size:13px;font-weight:600;color:var(--color-text-primary);word-break:break-word;max-width:100%}.builderIconNameLink{color:var(--color-primary);text-decoration:none}.builderIconNameLink:hover{text-decoration:underline}.builderIconUploadBtn{height:32px;padding:0 16px;font-size:12px;font-weight:500;color:#fff;background:var(--color-primary);border:none;border-radius:6px;cursor:pointer;transition:opacity .15s}.builderIconUploadBtn:hover:not(:disabled){opacity:.92}.builderIconUploadBtn:disabled{opacity:.55;cursor:not-allowed}.builderIconError{margin-top:4px;font-size:11px;color:var(--color-danger);word-break:break-word}.builderIconNameRow{display:flex;align-items:center;justify-content:center;gap:8px;max-width:100%}.builderIconColorSwatch{display:inline-block;width:16px;height:16px;border-radius:4px;border:1px solid var(--color-border);flex-shrink:0;background-size:10px 10px}.builderIconActions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.builderIconPickBtn{height:32px;padding:0 16px;font-size:12px;font-weight:500;color:var(--color-text-primary);background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:background .15s,border-color .15s}.builderIconPickBtn:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-primary)}.builderIconPickBtn:disabled{opacity:.55;cursor:not-allowed}.builderIconPickBtnActive{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.builderIconPickBtnActive:hover:not(:disabled){background:var(--color-primary-dark);color:#fff}.builderIconStatusBtn{height:32px;padding:0 16px;font-size:12px;font-weight:500;color:var(--color-text-primary);background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:background .15s,border-color .15s}.builderIconStatusBtn:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-danger)}.builderIconStatusBtn:disabled{opacity:.55;cursor:not-allowed}.builderIconStatusBtnOffline{color:#fff;background:var(--color-danger);border-color:var(--color-danger)}.builderIconStatusBtnOffline:hover:not(:disabled){opacity:.92;background:var(--color-danger);color:#fff}.builderMagnifier{position:absolute;z-index:10;pointer-events:none;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 6px 18px #0000002e;padding:4px}.builderMagnifierCanvas{display:block;border-radius:4px;background:var(--color-bg)}.builderMagnifierLabel{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:11px;font-family:SF Mono,Menlo,monospace;color:var(--color-text-primary)}.builderMagnifierSwatch{display:inline-block;width:12px;height:12px;border-radius:2px;border:1px solid var(--color-border)}.builderMagnifierHex{text-transform:uppercase}.builderCarouselGrid{display:flex;flex-direction:column;gap:24px}.builderCarouselCard{padding:24px;background:var(--color-card-bg);border-radius:10px;border:1px solid var(--color-border);box-shadow:var(--shadow-card)}.builderCarouselNameRow{margin-bottom:16px}.builderCarouselStrip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:88px;margin-bottom:16px;padding:8px;border-radius:6px;border:1px dashed var(--color-border);background:var(--color-bg)}.builderCarouselEmpty{font-size:12px;color:var(--color-text-muted)}.builderCarouselThumbWrap{position:relative;width:120px;height:80px;border-radius:6px;overflow:hidden;border:1px solid var(--color-border);flex-shrink:0;background:var(--color-border)}.builderCarouselThumb{width:100%;height:100%;object-fit:cover;display:block}.builderCarouselDeleteBtn{position:absolute;top:4px;right:4px;width:24px;height:24px;padding:0;line-height:22px;font-size:18px;font-weight:700;color:#fff;background:#0000008c;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.builderCarouselDeleteBtn:hover:not(:disabled){background:#dc2626e6}.builderCarouselDeleteBtn:disabled{opacity:.5;cursor:not-allowed}.builderCarouselHint{font-size:12px;color:var(--color-text-muted);align-self:center}.statsGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;margin-top:24px}.statCard{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-card);padding:24px;display:flex;align-items:flex-start;gap:16px;transition:box-shadow .15s,transform .15s}.statCard:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.statCard .statCardIcon{width:48px;height:48px;border-radius:6px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.statCard .statCardBody{min-width:0;flex:1}.statCard .statCardValue{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.1;letter-spacing:-.5px}.statCard .statCardLabel{font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-top:4px}.statCard .statCardDesc{font-size:11px;color:var(--color-text-muted);margin-top:2px}.statCard .statSkeleton{display:inline-block;width:72px;height:28px;border-radius:6px;background:linear-gradient(90deg,var(--color-border) 25%,var(--color-bg) 50%,var(--color-border) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.crawlTesterPage .crawlTesterControls{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}.crawlTesterPage .crawlTesterField{display:flex;flex-direction:column;gap:4px}.crawlTesterPage .crawlTesterField label{font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.crawlTesterPage .crawlTesterField select,.crawlTesterPage .crawlTesterField input[type=number]{height:36px;padding:0 8px;border:1px solid var(--color-border);border-radius:6px;font-size:13px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--color-text-primary);background:var(--color-card-bg);outline:none;min-width:160px}.crawlTesterPage .crawlTesterField select:focus,.crawlTesterPage .crawlTesterField input[type=number]:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.15)}.crawlTesterPage .crawlTesterField select:disabled,.crawlTesterPage .crawlTesterField input[type=number]:disabled{background:var(--color-bg);color:var(--color-text-muted)}.crawlTesterPage .crawlTesterField input[type=number]{min-width:90px;max-width:90px}.crawlTesterPage .crawlTesterRunBtn{height:36px;padding:0 24px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap}.crawlTesterPage .crawlTesterRunBtn:hover:not(:disabled){background:var(--color-primary-dark)}.crawlTesterPage .crawlTesterRunBtn:disabled{opacity:.5;cursor:not-allowed}.crawlTesterPage .crawlTesterRunBtn--stop{background:var(--color-danger)}.crawlTesterPage .crawlTesterRunBtn--stop:hover{background:#c0392b}.crawlTesterPage .crawlTesterSummaryBar{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:16px;background:var(--color-bg);border-radius:6px;border:1px solid var(--color-border);margin-bottom:16px}.crawlTesterPage .crawlTesterPassBadge{display:flex;flex-direction:column;align-items:center;min-width:120px;padding:8px 16px;background:var(--color-card-bg);border-radius:6px;border:1px solid var(--color-border)}.crawlTesterPage .crawlTesterPassBadge--high{border-color:var(--color-success);background:rgba(var(--color-success-rgb),.08)}.crawlTesterPage .crawlTesterPassBadge--high .crawlTesterPassBadgeValue{color:var(--color-success)}.crawlTesterPage .crawlTesterPassBadge--mid{border-color:var(--color-warning);background:rgba(var(--color-warning-rgb),.1)}.crawlTesterPage .crawlTesterPassBadge--mid .crawlTesterPassBadgeValue{color:var(--color-warning)}.crawlTesterPage .crawlTesterPassBadge--low{border-color:var(--color-danger);background:rgba(var(--color-danger-rgb),.08)}.crawlTesterPage .crawlTesterPassBadge--low .crawlTesterPassBadgeValue{color:var(--color-danger)}.crawlTesterPage .crawlTesterPassBadgeLabel{font-size:11px;color:var(--color-text-secondary);text-align:center;margin-bottom:2px}.crawlTesterPage .crawlTesterPassBadgeValue{font-size:22px;font-weight:700;color:var(--color-text-primary)}.crawlTesterPage .crawlTesterSummaryStats{display:flex;gap:24px;margin-left:auto}.crawlTesterPage .crawlTesterStat{display:flex;flex-direction:column;align-items:center}.crawlTesterPage .crawlTesterStatValue{font-size:20px;font-weight:700;color:var(--color-text-primary)}.crawlTesterPage .crawlTesterStatValue--warn{color:var(--color-danger)}.crawlTesterPage .crawlTesterStatLabel{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.crawlTesterPage .crawlTesterStatusMsg{font-size:13px;color:var(--color-text-secondary);margin-left:8px}.crawlTesterPage .crawlTesterStatusMsg--standalone{margin:8px 24px;color:var(--color-danger)}.crawlTesterPage .crawlTesterProgressBar{height:4px;background:var(--color-border);border-radius:2px;overflow:hidden;margin-top:4px}.crawlTesterPage .crawlTesterProgressFill{height:100%;background:var(--color-primary);border-radius:2px;transition:width .3s ease}.crawlTesterPage .crawlTesterTable{font-size:12px}.crawlTesterPage .crawlTesterTable th{white-space:nowrap}.crawlTesterPage .crawlTesterRow--pass{background:rgba(var(--color-success-rgb),.07)}.crawlTesterPage .crawlTesterRow--fail{background:rgba(var(--color-warning-rgb),.07)}.crawlTesterPage .crawlTesterRow--error{background:rgba(var(--color-danger-rgb),.07)}.crawlTesterPage .crawlTesterFieldCell{text-align:center;font-weight:600}.crawlTesterPage .crawlTesterFieldCell--pass{color:var(--color-success)}.crawlTesterPage .crawlTesterFieldCell--fail{color:var(--color-danger)}.crawlTesterPage .crawlTesterFieldCell--na{color:var(--color-text-muted)}.crawlTesterPage .crawlTesterUrlLink{color:var(--color-primary-dark);text-decoration:none;font-size:11px;max-width:280px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.crawlTesterPage .crawlTesterUrlLink:hover{text-decoration:underline}.crawlTesterPage .crawlTesterErrorCell{font-size:11px;color:var(--color-danger);max-width:200px;white-space:normal;word-break:break-word}.crawlTesterPage .crawlTesterBuilderSiteLink{display:inline-block;font-size:12px;color:var(--color-primary);text-decoration:none}.crawlTesterPage .crawlTesterBuilderSiteLink:hover{text-decoration:underline}.crawlTesterPage .crawlTesterRandomUrlLink{display:inline-block;padding:0;font-size:12px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--color-primary);text-align:left;background:none;border:none;cursor:pointer;text-decoration:none}.crawlTesterPage .crawlTesterRandomUrlLink:hover:not(:disabled){text-decoration:underline}.crawlTesterPage .crawlTesterRandomUrlLink:disabled{color:var(--color-text-secondary);cursor:default}.crawlTesterPage .crawlTesterUrlControls{display:grid;grid-template-columns:auto 1fr auto;column-gap:16px;row-gap:4px;align-items:end}.crawlTesterPage .crawlTesterUrlInputField{flex:1 1 320px}.crawlTesterPage .crawlTesterUrlInputField input[type=url]{width:100%;min-width:260px;max-width:none;height:36px;padding:0 8px;border:1px solid var(--color-border);border-radius:6px;font-size:13px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--color-text-primary);background:var(--color-card-bg);outline:none;box-sizing:border-box}.crawlTesterPage .crawlTesterUrlInputField input[type=url]:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.15)}.crawlTesterPage .crawlTesterUrlInputField input[type=url]:disabled{background:var(--color-bg);color:var(--color-text-muted)}.crawlTesterPage .crawlTesterUrlInputField input[type=url]::placeholder{color:var(--color-text-muted)}.crawlTesterPage .crawlTesterUrlLoading{margin-top:16px;font-size:13px;color:var(--color-text-secondary)}.crawlTesterPage .crawlTesterStatusMsg--error{color:var(--color-danger)}.crawlTesterPage .crawlTesterUrlResult{margin-top:16px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-card-bg);overflow:hidden}.crawlTesterPage .crawlTesterUrlResultHeader{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.crawlTesterPage .crawlTesterUrlResultTitle{font-size:13px;font-weight:600;color:var(--color-text-primary)}.crawlTesterPage .crawlTesterUrlFieldGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1px;background:var(--color-border)}.crawlTesterPage .crawlTesterUrlField{display:flex;flex-direction:column;gap:2px;padding:8px 16px;background:var(--color-card-bg)}.crawlTesterPage .crawlTesterUrlFieldLabel{font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.crawlTesterPage .crawlTesterUrlFieldValue{font-size:13px;color:var(--color-text-primary);word-break:break-word}.crawlTesterPage .crawlTesterUrlFieldValue--missing{color:var(--color-text-muted);font-style:italic}.crawlTesterPage .crawlTesterUrlGallery{border-top:1px solid var(--color-border);padding:16px}.crawlTesterPage .crawlTesterUrlGalleryHeader{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.crawlTesterPage .crawlTesterUrlGalleryCount{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--color-primary);color:#fff;border-radius:10px;font-size:11px;font-weight:700}.crawlTesterPage .crawlTesterUrlGalleryEmpty{font-size:13px;color:var(--color-text-muted);margin:0}.crawlTesterPage .crawlTesterUrlGalleryList{margin:0;padding-left:24px;display:flex;flex-direction:column;gap:4px}.crawlTesterPage .crawlTesterUrlGalleryItem{display:flex;align-items:baseline;gap:8px;font-size:12px}.crawlTesterPage .crawlTesterUrlGalleryLink{color:var(--color-primary-dark);text-decoration:none;word-break:break-all}.crawlTesterPage .crawlTesterUrlGalleryLink:hover{text-decoration:underline}.crawlTesterPage .crawlTesterUrlGalleryTitle{flex-shrink:0;font-size:11px;color:var(--color-text-muted)}.unsetBuildersList{display:flex;flex-wrap:wrap;gap:8px}.unsetBuilderChip{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface-hover);color:var(--color-text-primary);font-size:13px;font-weight:500}.unsetBuildersEmpty{font-size:13px;color:var(--color-text-muted)}.usersFilters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:24px}.usersFilterField{display:flex;flex-direction:column;gap:6px;min-width:0}.usersFilterField label{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.usersFilterField input[type=text],.usersFilterField input[type=date],.usersFilterField select{height:38px;padding:0 16px;border:1.5px solid var(--color-border);border-radius:6px;font-size:14px;color:var(--color-text-primary);background:var(--color-card-bg)}.usersFilterField input[type=text]:focus,.usersFilterField input[type=date]:focus,.usersFilterField select:focus{outline:none;border-color:var(--color-primary)}.usersFilterField input[type=text]{min-width:160px}.usersFilterField select{min-width:110px;cursor:pointer}.usersFilterField:has(input[type=text]){flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px}.usersFilterField:has(input[type=text]) label{width:100%}.usersFilterField:has(input[type=text]) input[type=text]{flex:1 1 140px}.usersFilterField:has(input[type=text]) select{flex:0 0 auto;min-width:108px}.usersFilterActions{display:flex;align-items:center;gap:8px;padding-bottom:1px}.usersTable{width:100%;border-collapse:collapse;margin-top:16px}.usersTable th,.usersTable td{text-align:left;padding:8px 16px;border-bottom:1px solid var(--color-border);font-size:.9rem}.usersTable th{color:var(--color-text-secondary);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.usersTable td{color:var(--color-text-secondary)}.usersTable tbody tr:hover{background:var(--color-surface-hover)}.usersUserId{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.usersSourceBadge{display:inline-block;padding:2px 8px;border-radius:6px;border:1px solid var(--color-border);background:var(--color-surface-hover);color:var(--color-text-primary);font-size:.78rem;font-weight:600;text-transform:capitalize}.usersEmpty{padding:32px;text-align:center;color:var(--color-text-secondary);font-size:.95rem}.usersPager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px}.usersPagerLabel{font-size:.9rem;color:var(--color-text-secondary);min-width:7rem;text-align:center}.usersPagerBtn{background:var(--color-card-bg);border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:6px;padding:6px 14px;font-size:.85rem;cursor:pointer;transition:background .12s ease,border-color .12s ease}.usersPagerBtn:hover:not(:disabled){background:var(--color-surface-hover)}.usersPagerBtn:disabled{opacity:.45;cursor:not-allowed}.pathsEmpty{padding:32px;text-align:center;color:var(--color-text-secondary);font-size:.92rem}.pathsEmpty code{background:var(--color-surface-hover);border-radius:6px;padding:2px 6px}.pathsNotice{margin-bottom:16px;padding:8px 16px;border-radius:6px;background:rgba(var(--color-success-rgb),.12);color:var(--color-text-primary);font-size:.88rem}.pathsRow--active{background:var(--color-surface-hover)}.pathsStatus{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--color-border);color:var(--color-text-secondary)}.pathsStatus--published{background:rgba(var(--color-success-rgb),.15);border-color:transparent;color:var(--color-primary-dark)}.pathsStatus--draft{background:rgba(var(--color-warning-rgb),.15);border-color:transparent;color:var(--color-warning)}.pathsActions{display:flex;gap:8px;justify-content:flex-end}.pathsField{display:block;margin-bottom:16px}.pathsField>span{display:block;margin-bottom:4px;font-size:.82rem;font-weight:600;color:var(--color-text-secondary)}.pathsField input,.pathsField textarea,.pathsField select{width:100%;padding:8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-card-bg);color:var(--color-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.88rem;resize:vertical}.pathsField input:disabled,.pathsField textarea:disabled,.pathsField select:disabled{background:var(--color-surface-hover);color:var(--color-text-secondary);cursor:not-allowed}.pathsFieldRow{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:900px){.pathsFieldRow{grid-template-columns:1fr}}.pathsTabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.pathsTab{padding:4px 16px;border:1px solid var(--color-border);border-radius:999px;background:transparent;color:var(--color-text-secondary);font-size:.85rem;font-weight:600;cursor:pointer}.pathsTab:hover{background:var(--color-surface-hover)}.pathsTab--active{background:var(--color-primary);border-color:transparent;color:#fff}.pathsStepTable{table-layout:fixed}.pathsStepTable th:nth-child(1){width:40px}.pathsStepTable th:nth-child(2){width:150px}.pathsStepTable th:nth-child(3){width:180px}.pathsStepTable th:nth-child(6){width:110px}.pathsStepTable td{vertical-align:top}.pathsStepTable input,.pathsStepTable textarea,.pathsStepTable select{width:100%;padding:4px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-card-bg);color:var(--color-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;resize:vertical}.pathsStepTable input:disabled,.pathsStepTable textarea:disabled,.pathsStepTable select:disabled{background:var(--color-surface-hover);color:var(--color-text-secondary);cursor:not-allowed}:root{--color-primary: #2ecc71;--color-primary-rgb: 46, 204, 113;--color-primary-dark: #27ae60;--color-primary-light: #a8f0c6;--color-sidebar-bg: #1a1d23;--color-sidebar-text: #a0aab8;--color-sidebar-text-active: #ffffff;--color-sidebar-border: #2a2e38;--color-sidebar-hover: #22262f;--color-sidebar-active-bg: #22262f;--color-bg: #f4f6f9;--color-card-bg: #ffffff;--color-border: #e8ecf0;--color-surface-hover: #eef1f5;--color-text-primary: #1a1d23;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-danger: #e74c3c;--color-danger-rgb: 231, 76, 60;--color-warning: #f39c12;--color-warning-rgb: 243, 156, 18;--color-success: #2ecc71;--color-success-rgb: 46, 204, 113;--color-chart-house: #2ecc71;--color-chart-media: #3498db;--shadow-card: 0 1px 3px rgba(0, 0, 0, .06), 0 2px 8px rgba(0, 0, 0, .04);--shadow-card-hover: 0 4px 16px rgba(0, 0, 0, .1);color-scheme:light}[data-theme=dark]{--color-primary: #34d17f;--color-primary-rgb: 52, 209, 127;--color-primary-dark: #28b96b;--color-primary-light: #1e3a2a;--color-sidebar-bg: #0b0d11;--color-sidebar-text: #c0c6d2;--color-sidebar-text-active: #ffffff;--color-sidebar-border: #1f242d;--color-sidebar-hover: #161a21;--color-sidebar-active-bg: #1c2129;--color-bg: #0f1115;--color-card-bg: #181b22;--color-border: #2a2f3a;--color-surface-hover: #232834;--color-text-primary: #e6e8ec;--color-text-secondary: #9aa3b2;--color-text-muted: #6f7785;--color-danger: #ff6b5a;--color-danger-rgb: 255, 107, 90;--color-warning: #f5b041;--color-warning-rgb: 245, 176, 65;--color-success: #34d17f;--color-success-rgb: 52, 209, 127;--color-chart-house: #34d17f;--color-chart-media: #5dade2;--shadow-card: 0 1px 2px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .35);--shadow-card-hover: 0 6px 20px rgba(0, 0, 0, .5);color-scheme:dark}.docListHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.docPrimaryBtn{background:var(--color-primary);color:#fff;border:none;border-radius:6px;padding:8px 16px;font-weight:600;font-size:.9rem;cursor:pointer;white-space:nowrap;transition:background .15s ease}.docPrimaryBtn:hover:not(:disabled){background:var(--color-primary-dark)}.docPrimaryBtn:disabled{opacity:.6;cursor:not-allowed}.docSecondaryBtn{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:6px;padding:8px 16px;font-weight:600;font-size:.9rem;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease}.docSecondaryBtn:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text-primary)}.docSecondaryBtn:disabled{opacity:.6;cursor:not-allowed}.docListEmpty{padding:32px;text-align:center;color:var(--color-text-secondary)}.docTable{width:100%;border-collapse:collapse;margin-top:16px}.docTable th,.docTable td{text-align:left;padding:8px 16px;border-bottom:1px solid var(--color-border);font-size:.9rem}.docTable th{color:var(--color-text-secondary);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.docTable .docRow{cursor:pointer;transition:background .12s ease}.docTable .docRow:hover{background:var(--color-surface-hover)}.docTable .docRowTitle{color:var(--color-text-primary);font-weight:600}.docTable td{color:var(--color-text-secondary)}.docTable .docRowActions{text-align:right;width:1%;white-space:nowrap}.docDeleteBtn{background:transparent;border:1px solid var(--color-border);color:var(--color-danger);border-radius:6px;padding:4px 10px;font-size:.82rem;cursor:pointer;transition:background .12s ease,border-color .12s ease}.docDeleteBtn:hover:not(:disabled){background:rgba(var(--color-danger-rgb),.1);border-color:var(--color-danger)}.docDeleteBtn:disabled{opacity:.6;cursor:not-allowed}.docTopbarLeft{display:flex;align-items:center;gap:16px}.docBackBtn{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:6px;padding:6px 12px;font-size:.85rem;cursor:pointer;transition:background .12s ease}.docBackBtn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.docSaveStatus{font-size:.82rem;color:var(--color-text-secondary)}.docSaveStatus--unsaved{color:var(--color-warning)}.docSaveStatus--saving{color:var(--color-text-secondary)}.docSaveStatus--error{color:var(--color-danger)}.docSaveStatus--saved{color:var(--color-success)}.docEditorPage{display:flex;justify-content:center;padding:16px 24px}.docEditorShell{width:100%;max-width:860px}.docTitleInput{width:100%;border:none;background:transparent;color:var(--color-text-primary);font-size:1.35rem;font-weight:700;padding:8px 0;margin-bottom:8px}.docTitleInput:focus{outline:none}.docTitleInput::placeholder{color:var(--color-text-muted)}.docToolbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:8px;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-card);margin-bottom:16px}.docBlockSelect{background:var(--color-card-bg);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:6px;padding:6px 8px;font-size:.85rem;cursor:pointer}.docBlockSelect:focus{outline:none;border-color:var(--color-primary)}.docToolbarDivider{width:1px;height:22px;background:var(--color-border);margin:0 4px}.docToolBtn{background:transparent;border:1px solid transparent;color:var(--color-text-secondary);border-radius:6px;padding:6px 10px;font-size:.85rem;cursor:pointer;transition:background .12s ease,color .12s ease}.docToolBtn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.docToolBtn.is-active{background:rgba(var(--color-primary-rgb),.15);color:var(--color-primary);border-color:rgba(var(--color-primary-rgb),.4)}.docEditorSurface{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-card);padding:16px 24px;min-height:70vh}.docEditorSurface .ProseMirror{min-height:60vh;color:var(--color-text-primary);font-size:1rem;outline:none}.docEditorSurface .ProseMirror p{font-size:13px;line-height:1.5;margin:0 0 .35em}.docEditorSurface .ProseMirror h1,.docEditorSurface .ProseMirror h2,.docEditorSurface .ProseMirror h3{margin:1.5em 0 .6em;line-height:1.25;text-transform:capitalize}.docEditorSurface .ProseMirror h1{font-size:16px;font-weight:700}.docEditorSurface .ProseMirror h2{font-size:1.5rem;font-weight:700}.docEditorSurface .ProseMirror h3{font-size:1.2rem;font-weight:600}.docEditorSurface .ProseMirror ul,.docEditorSurface .ProseMirror ol{font-size:13px;padding-left:1.4em;margin:0 0 .35em}.docEditorSurface .ProseMirror ul{list-style:disc}.docEditorSurface .ProseMirror ol{list-style:decimal}.docEditorSurface .ProseMirror a{color:var(--color-primary)}.docEditorSurface .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--color-text-muted);float:left;height:0;pointer-events:none}.docModalOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000080}.docModal{background:var(--color-card-bg);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-card-hover);padding:24px;width:100%;max-width:420px}.docModal h3{margin:0 0 8px;font-size:1.15rem}.docModal p{margin:0 0 24px;color:var(--color-text-secondary);font-size:.92rem}.docModal .docConfirmHint{margin:0 0 8px;font-size:.85rem}.docConfirmInput{width:100%;box-sizing:border-box;background:var(--color-card-bg);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:6px;padding:8px;font-size:.9rem;margin-bottom:24px}.docConfirmInput:focus{outline:none;border-color:var(--color-primary)}.docConfirmInput::placeholder{color:var(--color-text-muted)}.docModalActions{display:flex;justify-content:flex-end;gap:8px}.docModalBtn{border-radius:6px;padding:8px 16px;font-size:.88rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .12s ease,border-color .12s ease}.docModalBtn--ghost{background:transparent;border-color:var(--color-border);color:var(--color-text-secondary)}.docModalBtn--ghost:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.docModalBtn--danger{background:transparent;border-color:var(--color-border);color:var(--color-danger)}.docModalBtn--danger:hover{background:rgba(var(--color-danger-rgb),.1);border-color:var(--color-danger)}.docModalBtn--primary{background:var(--color-primary);color:#fff}.docModalBtn--primary:hover{background:var(--color-primary-dark)}
