:root {
    --aui-bg: #f5f5f7;
    --aui-surface: rgba(255, 255, 255, 0.86);
    --aui-surface-solid: #ffffff;
    --aui-surface-muted: #fbfbfd;
    --aui-ink: #1d1d1f;
    --aui-muted: #6e6e73;
    --aui-subtle: #86868b;
    --aui-line: rgba(0, 0, 0, 0.08);
    --aui-line-strong: rgba(0, 0, 0, 0.12);
    --aui-blue: #007aff;
    --aui-blue-soft: rgba(0, 122, 255, 0.10);
    --aui-red: #ff3b30;
    --aui-red-soft: rgba(255, 59, 48, 0.10);
    --aui-green: #34c759;
    --aui-orange: #ff9f0a;
    --aui-radius: 12px;
    --aui-radius-sm: 9px;
    --aui-shadow: 0 18px 44px rgba(0, 0, 0, 0.07);
    --aui-shadow-soft: 0 8px 24px rgba(0, 0, 0, 0.045);
    --aui-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "PingFang SC", "Helvetica Neue", Arial, sans-serif;
}

html {
    background: var(--aui-bg) !important;
}

body,
button,
input,
select,
textarea {
    font-family: var(--aui-font) !important;
    letter-spacing: 0 !important;
}

body.workspace-page,
body.apple-workspace,
body.share-page,
body.admin-page,
body.history-page-web,
body.teams-page,
body.auth-page,
body.feedback-page,
body.share-created-page,
body.team-space-page {
    background: var(--aui-bg) !important;
    color: var(--aui-ink) !important;
}

body.workspace-page::before,
body.workspace-page::after,
body.apple-workspace::before,
body.apple-workspace::after,
body.share-page::before,
body.share-page::after,
body.admin-page::before,
body.admin-page::after,
body.auth-page::before,
body.auth-page::after,
body.feedback-page::before,
body.feedback-page::after {
    display: none !important;
}

a {
    color: inherit;
}

.navbar,
.header,
.topbar,
.apple-topbar,
.admin-topbar {
    border: 1px solid var(--aui-line) !important;
    background: rgba(255, 255, 255, 0.78) !important;
    color: var(--aui-ink) !important;
    box-shadow: var(--aui-shadow-soft) !important;
    backdrop-filter: blur(22px) saturate(1.4) !important;
    -webkit-backdrop-filter: blur(22px) saturate(1.4) !important;
}

.navbar *,
.header *,
.topbar *,
.apple-topbar *,
.admin-topbar * {
    color: inherit;
}

.main-panel,
.sidebar,
.main-card,
.editor-section,
.setting-card,
.history-card,
.share-panel,
.admin-card,
.team-card,
.surface-card,
.inspector-card,
.drive-overview-card,
.sidebar-block,
.cloud-tools,
.selection-helper,
.selection-bar,
.upload-card,
.list-header,
.file-row,
.share-row,
.panel {
    border: 1px solid var(--aui-line) !important;
    background: var(--aui-surface) !important;
    color: var(--aui-ink) !important;
    box-shadow: var(--aui-shadow-soft) !important;
    border-radius: var(--aui-radius) !important;
    backdrop-filter: blur(18px) saturate(1.25);
    -webkit-backdrop-filter: blur(18px) saturate(1.25);
}

.btn,
.btn-primary,
.apple-btn,
.primary-link,
.ghost-link,
.share-btn,
.action-btn,
.submit-btn,
.mini-btn,
.chip-btn,
.filter-chip,
.admin-action,
.nav-links a,
.smart-filter,
.view-toggle button,
.share-chip-btn,
.admin-nav-link,
.admin-segment button,
.primary-btn,
.ghost-btn,
.plain-btn {
    min-height: 36px !important;
    padding: 0 13px !important;
    border: 1px solid var(--aui-line) !important;
    border-radius: var(--aui-radius-sm) !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--aui-ink) !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    white-space: nowrap !important;
    transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease, opacity 0.16s ease !important;
}

.btn::after,
.btn-primary::after,
.apple-btn::after,
.share-btn::after,
.action-btn::after,
.submit-btn::after,
.mini-btn::after,
.admin-action::after {
    display: none !important;
}

.btn:hover,
.apple-btn:hover,
.share-btn.secondary:hover,
.admin-action.secondary:hover,
.nav-links a:hover,
.smart-filter:hover,
.view-toggle button:hover,
.chip-btn:hover,
.filter-chip:hover {
    background: #f5f5f7 !important;
    border-color: var(--aui-line-strong) !important;
    transform: translateY(-1px);
}

.btn-primary,
.apple-btn.primary,
.primary-link,
.share-btn:not(.secondary),
.action-btn.primary,
.submit-btn,
.admin-action:not(.secondary):not(.danger),
.primary-btn {
    background: var(--aui-blue) !important;
    border-color: var(--aui-blue) !important;
    color: #fff !important;
}

.btn-primary:hover,
.apple-btn.primary:hover,
.primary-link:hover,
.submit-btn:hover,
.action-btn.primary:hover,
.primary-btn:hover {
    background: #006be6 !important;
    border-color: #006be6 !important;
    color: #fff !important;
}

.btn.danger,
.admin-action.danger,
.plain-btn.danger,
button[value="delete_permanent"],
button[value="trash"] {
    background: var(--aui-red-soft) !important;
    border-color: rgba(255, 59, 48, 0.22) !important;
    color: var(--aui-red) !important;
}

button:disabled,
.btn:disabled,
.btn-primary:disabled,
.action-btn:disabled,
.submit-btn:disabled {
    opacity: 0.38 !important;
    cursor: not-allowed !important;
    transform: none !important;
    filter: grayscale(0.15);
}

input,
select,
textarea,
.field,
.admin-input,
.admin-textarea,
.share-search,
.share-select,
.search-box,
.input-wrap,
.picker-box {
    border: 1px solid var(--aui-line) !important;
    border-radius: var(--aui-radius-sm) !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--aui-ink) !important;
    box-shadow: none !important;
}

input:focus,
select:focus,
textarea:focus,
.field:focus,
.admin-input:focus,
.admin-textarea:focus {
    outline: none !important;
    border-color: rgba(0, 122, 255, 0.45) !important;
    box-shadow: 0 0 0 4px rgba(0, 122, 255, 0.10) !important;
}

.apple-pill,
.share-pill,
.admin-pill,
.history-badge,
.preview-pill,
.chip,
.badge {
    border: 1px solid var(--aui-line) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.76) !important;
    color: var(--aui-muted) !important;
    box-shadow: none !important;
}

.toast,
.admin-message,
.message,
.error-note,
.info-note {
    border-radius: var(--aui-radius) !important;
    box-shadow: var(--aui-shadow-soft) !important;
}

/* Auth and lightweight utility pages */
body.auth-page .page {
    width: min(1040px, calc(100% - 32px)) !important;
    gap: 14px !important;
}

body.auth-page .panel,
body.auth-page .form-card,
body.feedback-page .feedback-nav,
body.feedback-page .feedback-hero,
body.feedback-page .feedback-form-card,
body.feedback-page .qr-card,
body.team-space-page .header,
body.team-space-page .card,
body.team-space-page .upload-section,
body.team-space-page .file-list,
body.certificate-page .certificate-topbar,
body.certificate-page .certificate-card,
body.share-created-page .share-created-card {
    border: 1px solid var(--aui-line) !important;
    border-radius: 14px !important;
    background: var(--aui-surface) !important;
    color: var(--aui-ink) !important;
    box-shadow: var(--aui-shadow-soft) !important;
    backdrop-filter: blur(18px) saturate(1.25) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.25) !important;
}

body.auth-page .brand-mark,
body.feedback-page .feedback-brand span {
    border-radius: 10px !important;
    background: var(--aui-blue) !important;
    color: #fff !important;
    box-shadow: none !important;
}

body.auth-page .eyebrow,
body.feedback-page .feedback-kicker,
body.feedback-page .feedback-badges span,
body.certificate-page .certificate-kicker,
body.share-created-page .share-created-meta span {
    border: 1px solid rgba(0, 122, 255, 0.18) !important;
    border-radius: 999px !important;
    background: var(--aui-blue-soft) !important;
    color: var(--aui-blue) !important;
    letter-spacing: 0 !important;
}

body.auth-page h1,
body.auth-page h2,
body.feedback-page h1,
body.feedback-page h2,
body.team-space-page h1,
body.team-space-page h2,
body.certificate-page h1,
body.certificate-page h2,
body.share-created-page h1 {
    color: var(--aui-ink) !important;
    letter-spacing: -0.02em !important;
}

body.auth-page .copy,
body.auth-page .subcopy,
body.auth-page .footer-note,
body.auth-page li,
body.feedback-page p,
body.feedback-page .feedback-nav-actions a,
body.team-space-page p,
body.certificate-page p,
body.share-created-page p {
    color: var(--aui-muted) !important;
}

body.auth-page .error,
body.feedback-page .feedback-error,
body.certificate-page .alert-error {
    border: 1px solid rgba(255, 59, 48, 0.22) !important;
    border-radius: 12px !important;
    background: var(--aui-red-soft) !important;
    color: var(--aui-red) !important;
}

body.auth-page .success,
body.feedback-page .feedback-success,
body.certificate-page .alert-success {
    border: 1px solid rgba(52, 199, 89, 0.22) !important;
    border-radius: 12px !important;
    background: rgba(52, 199, 89, 0.10) !important;
    color: #1f8f3a !important;
}

body.feedback-page .feedback-shell,
body.certificate-page .certificate-shell,
body.share-created-page .share-created-shell {
    width: min(1120px, calc(100% - 32px)) !important;
}

body.feedback-page .feedback-nav,
body.team-space-page .header,
body.certificate-page .certificate-topbar {
    position: sticky !important;
    top: 12px !important;
    z-index: 20 !important;
    background: rgba(255, 255, 255, 0.78) !important;
}

body.feedback-page .feedback-hero,
body.feedback-page .feedback-form-card {
    background-image: none !important;
}

body.team-space-page .container {
    width: min(1280px, calc(100% - 32px)) !important;
}

body.team-space-page .nav-links {
    gap: 8px !important;
}

body.team-space-page .file-item,
body.certificate-page .template-card,
body.certificate-page .generated-file-card {
    border: 1px solid var(--aui-line) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.78) !important;
    box-shadow: none !important;
}

body.share-created-page .share-created-card {
    max-width: 560px !important;
}

body.share-created-page .qr-box,
body.share-created-page .link-box {
    border: 1px solid var(--aui-line) !important;
    border-radius: 12px !important;
    background: rgba(245, 245, 247, 0.82) !important;
}

/* Public landing page: align colors without rebuilding the marketing layout */
body:not(.workspace-page):not(.admin-page) .site-shell {
    background: var(--aui-bg) !important;
    color: var(--aui-ink) !important;
}

body:not(.workspace-page):not(.admin-page) .site-header {
    border: 1px solid var(--aui-line) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, 0.78) !important;
    box-shadow: var(--aui-shadow-soft) !important;
    backdrop-filter: blur(22px) saturate(1.35) !important;
    -webkit-backdrop-filter: blur(22px) saturate(1.35) !important;
}

body:not(.workspace-page):not(.admin-page) .site-nav a,
body:not(.workspace-page):not(.admin-page) .nav-contact,
body:not(.workspace-page):not(.admin-page) .login-link {
    color: var(--aui-muted) !important;
}

body:not(.workspace-page):not(.admin-page) .primary-link,
body:not(.workspace-page):not(.admin-page) .hero-actions .primary-link,
body:not(.workspace-page):not(.admin-page) .cta-actions .primary-link {
    background: var(--aui-blue) !important;
    border-color: var(--aui-blue) !important;
    color: #fff !important;
}

body:not(.workspace-page):not(.admin-page) .secondary-link,
body:not(.workspace-page):not(.admin-page) .hero-flow-item,
body:not(.workspace-page):not(.admin-page) .hero-stat,
body:not(.workspace-page):not(.admin-page) .hero-media-card,
body:not(.workspace-page):not(.admin-page) .feature-card,
body:not(.workspace-page):not(.admin-page) .scenario-card,
body:not(.workspace-page):not(.admin-page) .step-card,
body:not(.workspace-page):not(.admin-page) .cta-section {
    border: 1px solid var(--aui-line) !important;
    border-radius: 14px !important;
    background: var(--aui-surface) !important;
    color: var(--aui-ink) !important;
    box-shadow: var(--aui-shadow-soft) !important;
}

body:not(.workspace-page):not(.admin-page) .hero-backdrop,
body:not(.workspace-page):not(.admin-page) .orb,
body:not(.workspace-page):not(.admin-page) .gradient-orb {
    display: none !important;
}

/* Finder-style cloud drive */
body.drive-page-web {
    padding: 18px !important;
}

body.drive-page-web .container {
    width: min(100%, 1500px) !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

body.drive-page-web .navbar {
    position: sticky !important;
    top: 12px !important;
    z-index: 50 !important;
    min-height: 64px !important;
    margin: 0 0 16px !important;
    padding: 10px 14px !important;
    border-radius: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
}

body.drive-page-web .logo {
    color: var(--aui-ink) !important;
    font-size: 22px !important;
    font-weight: 750 !important;
    letter-spacing: -0.01em !important;
}

body.drive-page-web .logo span {
    color: var(--aui-blue) !important;
}

body.drive-page-web .user-menu,
body.drive-page-web .nav-links {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
}

body.drive-page-web .username {
    height: 36px !important;
    padding: 0 12px !important;
    border: 1px solid var(--aui-line) !important;
    border-radius: var(--aui-radius-sm) !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--aui-ink) !important;
    display: inline-flex !important;
    align-items: center !important;
    font-size: 13px !important;
    font-weight: 650 !important;
}

body.drive-page-web .nav-links a {
    height: 36px !important;
    min-width: 0 !important;
}

body.drive-page-web .workspace-hero,
body.drive-page-web .drive-commandbar,
body.drive-page-web .toolbar-secondary {
    display: none !important;
}

body.drive-page-web .file-manager {
    display: grid !important;
    grid-template-columns: 248px minmax(620px, 1fr) 292px !important;
    gap: 14px !important;
    align-items: start !important;
    min-height: 0 !important;
}

body.drive-page-web .sidebar,
body.drive-page-web .inspector-panel {
    position: sticky !important;
    top: 92px !important;
    width: auto !important;
    align-self: start !important;
}

body.drive-page-web .sidebar,
body.drive-page-web .main-panel,
body.drive-page-web .inspector-card {
    padding: 14px !important;
    border-radius: 14px !important;
}

body.drive-page-web .main-panel {
    min-height: 0 !important;
    background: rgba(255, 255, 255, 0.88) !important;
}

body.drive-page-web .inspector-panel {
    display: grid !important;
    gap: 12px !important;
}

body.drive-page-web .drive-overview-card,
body.drive-page-web .sidebar-block {
    padding: 12px !important;
    margin: 0 0 12px !important;
    box-shadow: none !important;
    background: rgba(255, 255, 255, 0.70) !important;
}

body.drive-page-web .drive-overview-card strong,
body.drive-page-web .sidebar h3,
body.drive-page-web .inspector-card h3,
body.drive-page-web .selection-bar strong {
    color: var(--aui-ink) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}

body.drive-page-web .drive-overview-card span,
body.drive-page-web .drive-overview-card p,
body.drive-page-web .sidebar-subtitle,
body.drive-page-web .inspector-kicker,
body.drive-page-web .inspector-card p,
body.drive-page-web .inspector-meta-list,
body.drive-page-web #selectionBarText {
    display: block !important;
    color: var(--aui-muted) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}

body.drive-page-web .sidebar-action-grid {
    display: grid !important;
    gap: 8px !important;
    margin-top: 12px !important;
}

body.drive-page-web .sidebar-action-grid .btn,
body.drive-page-web .inspector-actions .btn {
    width: 100% !important;
}

body.drive-page-web .smart-filter-list {
    display: grid !important;
    gap: 6px !important;
}

body.drive-page-web .smart-filter {
    min-height: 36px !important;
    justify-content: space-between !important;
    padding: 0 10px !important;
    border-radius: 9px !important;
    background: transparent !important;
    border-color: transparent !important;
    color: var(--aui-ink) !important;
}

body.drive-page-web .smart-filter.active {
    background: var(--aui-blue-soft) !important;
    border-color: rgba(0, 122, 255, 0.18) !important;
    color: var(--aui-blue) !important;
}

body.drive-page-web .tree li {
    min-height: 34px !important;
    padding: 0 10px !important;
    border-radius: 9px !important;
    color: var(--aui-ink) !important;
}

body.drive-page-web .tree li.active {
    background: var(--aui-blue-soft) !important;
    color: var(--aui-blue) !important;
}

body.drive-page-web .toolbar {
    display: grid !important;
    grid-template-columns: minmax(180px, 1fr) auto !important;
    align-items: start !important;
    gap: 12px !important;
    margin: 0 0 10px !important;
}

body.drive-page-web .toolbar-title .toolbar-kicker {
    display: none !important;
}

body.drive-page-web .breadcrumb {
    min-height: 36px !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    color: var(--aui-muted) !important;
    font-size: 15px !important;
    font-weight: 650 !important;
}

body.drive-page-web .breadcrumb a {
    color: var(--aui-blue) !important;
    text-decoration: none !important;
}

body.drive-page-web .actions {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 7px !important;
}

body.drive-page-web .actions .btn {
    min-width: 0 !important;
    height: 36px !important;
}

body.drive-page-web #renameBtn,
body.drive-page-web #moveBtn,
body.drive-page-web #copyBtn,
body.drive-page-web #deleteBtn {
    display: none !important;
}

body.drive-page-web:has(.file-row.selected) #renameBtn,
body.drive-page-web:has(.file-row.selected) #moveBtn,
body.drive-page-web:has(.file-row.selected) #copyBtn,
body.drive-page-web:has(.file-row.selected) #deleteBtn {
    display: inline-flex !important;
}

body.drive-page-web #deleteBtn {
    background: var(--aui-red-soft) !important;
    border-color: rgba(255, 59, 48, 0.22) !important;
    color: var(--aui-red) !important;
}

body.drive-page-web .cloud-tools {
    display: grid !important;
    grid-template-columns: minmax(220px, 1fr) 160px auto auto !important;
    gap: 8px !important;
    align-items: center !important;
    padding: 10px !important;
    margin: 0 0 10px !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

body.drive-page-web .search-box {
    height: 38px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 12px !important;
    min-width: 0 !important;
}

body.drive-page-web .search-box input {
    border: 0 !important;
    background: transparent !important;
    min-height: 0 !important;
    height: 100% !important;
    padding: 0 !important;
}

body.drive-page-web #sortSelect {
    height: 38px !important;
    min-height: 38px !important;
}

body.drive-page-web .view-toggle {
    height: 38px !important;
    padding: 3px !important;
    border: 1px solid var(--aui-line) !important;
    border-radius: 10px !important;
    background: rgba(245, 245, 247, 0.90) !important;
    display: inline-flex !important;
    gap: 3px !important;
}

body.drive-page-web .view-toggle button {
    min-height: 30px !important;
    height: 30px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--aui-muted) !important;
    padding: 0 10px !important;
}

body.drive-page-web .view-toggle button.active {
    background: #fff !important;
    color: var(--aui-blue) !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08) !important;
}

body.drive-page-web .folder-stats {
    min-height: 38px !important;
    height: 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
    border: 1px solid rgba(0, 122, 255, 0.18) !important;
    border-radius: 10px !important;
    background: var(--aui-blue-soft) !important;
    color: var(--aui-blue) !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
}

body.drive-page-web .selection-helper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    padding: 10px !important;
    margin: 0 0 10px !important;
    box-shadow: none !important;
}

body.drive-page-web .selection-helper .btn {
    height: 34px !important;
    min-height: 34px !important;
}

body.drive-page-web .selection-bar {
    margin: 0 0 8px !important;
    padding: 10px 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    box-shadow: none !important;
}

body.drive-page-web .selection-actions {
    display: flex !important;
    gap: 8px !important;
    flex: none !important;
}

body.drive-page-web .upload-card {
    min-height: 48px !important;
    margin: 0 0 8px !important;
    padding: 10px 14px !important;
    border-style: dashed !important;
    border-color: rgba(0, 122, 255, 0.24) !important;
    background: rgba(0, 122, 255, 0.055) !important;
    box-shadow: none !important;
}

body.drive-page-web .upload-info {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: var(--aui-muted) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

body.drive-page-web .upload-info i {
    color: var(--aui-blue) !important;
    font-size: 18px !important;
}

body.drive-page-web .list-header {
    display: grid !important;
    grid-template-columns: 36px minmax(240px, 1fr) 140px 190px 132px !important;
    gap: 0 !important;
    align-items: center !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border-radius: 12px 12px 0 0 !important;
    background: rgba(245, 245, 247, 0.92) !important;
    box-shadow: none !important;
    color: var(--aui-muted) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

body.drive-page-web #fileList {
    overflow: hidden !important;
    border: 1px solid var(--aui-line) !important;
    border-top: 0 !important;
    border-radius: 0 0 12px 12px !important;
    background: rgba(255, 255, 255, 0.74) !important;
    min-height: 220px !important;
    margin: 0 !important;
}

body.drive-page-web .file-row {
    display: grid !important;
    grid-template-columns: 36px minmax(240px, 1fr) 140px 190px 132px !important;
    align-items: center !important;
    gap: 0 !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.055) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    animation: none !important;
}

body.drive-page-web .file-row:last-child {
    border-bottom: 0 !important;
}

body.drive-page-web .file-row:hover {
    background: rgba(0, 122, 255, 0.055) !important;
    transform: none !important;
}

body.drive-page-web .file-row.selected {
    background: rgba(0, 122, 255, 0.10) !important;
}

body.drive-page-web .file-row .checkbox {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body.drive-page-web input[type="checkbox"] {
    accent-color: var(--aui-blue) !important;
}

body.drive-page-web .file-row .name {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: var(--aui-ink) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

body.drive-page-web .file-row .name i {
    width: 20px !important;
    color: var(--aui-blue) !important;
    font-size: 17px !important;
}

body.drive-page-web .file-row.folder .name i {
    color: var(--aui-orange) !important;
}

body.drive-page-web .file-row .size,
body.drive-page-web .file-row .modified {
    color: var(--aui-muted) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
}

body.drive-page-web .file-row .actions {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    min-width: 0 !important;
}

body.drive-page-web .file-row .actions a,
body.drive-page-web .file-row .actions button {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    padding: 0 !important;
    border: 1px solid var(--aui-line) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.80) !important;
    color: var(--aui-muted) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body.drive-page-web .file-row .actions a:hover,
body.drive-page-web .file-row .actions button:hover {
    background: #fff !important;
    color: var(--aui-blue) !important;
    border-color: rgba(0, 122, 255, 0.25) !important;
}

body.drive-page-web .file-list.is-grid-view {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)) !important;
    gap: 10px !important;
    padding: 10px !important;
    border-top: 1px solid var(--aui-line) !important;
    border-radius: 12px !important;
}

body.drive-page-web .file-list.is-grid-view .file-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: start !important;
    min-height: 148px !important;
    padding: 12px !important;
    border: 1px solid var(--aui-line) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.76) !important;
}

body.drive-page-web .file-list.is-grid-view .file-row .checkbox {
    justify-content: flex-start !important;
}

body.drive-page-web .file-list.is-grid-view .file-row .size,
body.drive-page-web .file-list.is-grid-view .file-row .modified {
    display: block !important;
}

body.drive-page-web .file-list.is-grid-view .file-row .actions {
    justify-content: flex-start !important;
}

body.drive-page-web .cloud-empty {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--aui-muted) !important;
}

body.drive-page-web .cloud-dialog {
    border-radius: 18px !important;
    border: 1px solid var(--aui-line) !important;
    background: rgba(255, 255, 255, 0.92) !important;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.18) !important;
}

/* Create/share/history/admin visual convergence */
body.share-editor-page .header,
body.teams-page .header {
    border-radius: 14px !important;
    padding: 12px 16px !important;
}

body.share-editor-page .main-card,
body.share-editor-page .editor-section,
body.history-page-web .panel,
body.share-page .share-panel,
body.share-page .share-summary-card,
body.teams-page .main-card,
body.teams-page .team-card,
body.admin-page .admin-card,
body.admin-page .admin-stat-card,
body.admin-page .admin-list-row {
    border-radius: 14px !important;
    border-color: var(--aui-line) !important;
    background: var(--aui-surface) !important;
    box-shadow: var(--aui-shadow-soft) !important;
}

body.share-editor-page .share-hero,
body.share-editor-page .share-live-preview,
body.share-editor-page .template-grid {
    background: var(--aui-surface) !important;
    border-color: var(--aui-line) !important;
    box-shadow: var(--aui-shadow-soft) !important;
}

body.share-editor-page .category-card.active,
body.share-editor-page .enterprise-template-card.active,
body.share-editor-page .template-card.active,
body.history-page-web .tab.active,
.share-chip-btn.is-active,
.chip-btn.active,
.admin-segment button.active {
    background: var(--aui-blue-soft) !important;
    border-color: rgba(0, 122, 255, 0.25) !important;
    color: var(--aui-blue) !important;
}

body.history-page-web .topbar {
    border-radius: 14px !important;
}

body.history-page-web .hero h1,
body.share-editor-page .share-hero-copy h1,
body.share-page .share-title h1,
body.admin-page h1,
body.admin-page h2 {
    color: var(--aui-ink) !important;
    letter-spacing: -0.02em !important;
}

body.history-page-web .hero p,
body.share-editor-page .share-hero-copy p,
body.share-page .share-description,
body.admin-page p {
    color: var(--aui-muted) !important;
}

body.share-page .share-file-row,
body.share-page .share-board,
body.share-page .share-toolbar {
    border-color: var(--aui-line) !important;
    background: var(--aui-surface) !important;
    box-shadow: none !important;
}

/* AI assistant: keep it useful but quiet */
.ai-chat-launcher {
    left: 18px !important;
    bottom: 18px !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 12px !important;
    border: 1px solid var(--aui-line) !important;
    background: rgba(255, 255, 255, 0.86) !important;
    color: var(--aui-blue) !important;
    box-shadow: var(--aui-shadow-soft) !important;
    backdrop-filter: blur(18px) saturate(1.35) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.35) !important;
}

.ai-chat-launcher span {
    font-size: 0 !important;
}

.ai-chat-launcher span::before {
    content: "AI";
    font-size: 13px;
    font-weight: 760;
    letter-spacing: 0;
}

.ai-chat-panel {
    left: 18px !important;
    bottom: 18px !important;
    border-radius: 18px !important;
    border-color: var(--aui-line) !important;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.18) !important;
}

.ai-chat-header,
.ai-chat-body,
.ai-chat-input {
    background: rgba(255, 255, 255, 0.92) !important;
}

.ai-chat-input button,
.ai-chat-message.user .ai-chat-bubble {
    background: var(--aui-blue) !important;
}

@media (max-width: 1180px) {
    body.drive-page-web .file-manager {
        grid-template-columns: 230px minmax(0, 1fr) !important;
    }

    body.drive-page-web .inspector-panel {
        grid-column: 1 / -1 !important;
        position: static !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body.drive-page-web .cloud-tools {
        grid-template-columns: minmax(220px, 1fr) 160px auto !important;
    }

    body.drive-page-web .folder-stats {
        grid-column: 1 / -1 !important;
        justify-content: flex-start !important;
    }
}

@media (max-width: 900px) {
    body.drive-page-web {
        padding: 10px !important;
    }

    body.drive-page-web .navbar,
    body.drive-page-web .user-menu,
    body.drive-page-web .nav-links,
    body.drive-page-web .toolbar,
    body.drive-page-web .cloud-tools,
    body.drive-page-web .selection-bar {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: stretch !important;
    }

    body.drive-page-web .file-manager {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.drive-page-web .sidebar,
    body.drive-page-web .inspector-panel {
        position: static !important;
    }

    body.drive-page-web .inspector-panel {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.drive-page-web .actions,
    body.drive-page-web .selection-helper,
    body.drive-page-web .selection-actions {
        justify-content: stretch !important;
    }

    body.drive-page-web .actions .btn,
    body.drive-page-web .selection-helper .btn,
    body.drive-page-web .selection-actions .btn,
    body.drive-page-web .nav-links a {
        width: 100% !important;
    }

    body.drive-page-web .list-header {
        display: none !important;
    }

    body.drive-page-web #fileList {
        border-top: 1px solid var(--aui-line) !important;
        border-radius: 12px !important;
    }

    body.drive-page-web .file-row {
        grid-template-columns: 32px minmax(0, 1fr) !important;
        gap: 8px !important;
        padding: 12px !important;
        min-height: 0 !important;
    }

    body.drive-page-web .file-row .size,
    body.drive-page-web .file-row .modified,
    body.drive-page-web .file-row .actions {
        grid-column: 2 / -1 !important;
    }

    body.drive-page-web .file-row .actions {
        justify-content: flex-start !important;
    }
}
