::-ms-expand {
	display: none;
}
:root {
	--accent-green: #81C995;
	--accent-primary: #00FFD1;
	--accent-red: #CF6679;
	--accent-secondary: #B388FF;
	--accent-yellow: #FDE293;
	--bg-base: #121212;
	--bg-elevated: #2D2D2D;
	--bg-surface: #1E1E1E;
	--bg-surface-hover: #282828;
	--border-color: #333333;
	--border-light: #2A2A2A;
	--danger-bg: rgba(207, 102, 121, .12);
	--danger-text: var(--accent-red);
	--info-bg: rgba(179, 136, 255, .12);
	--safe-bottom: env(safe-area-inset-bottom, 16px);
	--success-bg: rgba(129, 201, 149, .12);
	--success-text: var(--accent-green);
	--text-muted: rgba(255, 255, 255, .4);
	--text-primary: rgba(255, 255, 255, .9);
	--text-secondary: rgba(255, 255, 255, .65);
	--warning-bg: rgba(253, 226, 147, .12);
	--warning-text: var(--accent-yellow);
}
* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	-webkit-tap-highlight-color: transparent;
}
*,
::before,
::after {
	box-sizing: border-box;
}
a {
	color: inherit;
	text-decoration: none;
}
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
	touch-action: manipulation;
}
body {
	background-color: var(--bg-base);
	color: var(--text-primary);
	font-family: 'Inter', sans-serif;
	line-height: 1.5;
	overflow: hidden;
	width: 100vw;
}
button {
	font-family: inherit;
}
button:focus,
input:focus,
select:focus,
textarea:focus,
[contenteditable]:focus {
	outline: 0;
}
html,
body,
#app-root {
	height: 100%;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
}
input[type="number"] {
	-moz-appearance: textfield;
}
table {
	border-collapse: collapse;
}
.accent-text-secondary {
	color: var(--accent-secondary);
}
.animate-fade-in {
	animation: fadeInUp .4s cubic-bezier(.16, 1, .3, 1) forwards;
}
.app-layout {
	display: flex;
	flex-direction: column;
	height: 100%;
	width: 100%;
}
.auto-content {
	background: rgba(24, 24, 27, .5);
	border-top: 1px solid var(--border-color);
	padding: 0 16px 16px;
}
.auto-item {
	align-items: center;
	border-bottom: 1px solid var(--border-light);
	display: flex;
	justify-content: space-between;
	padding: 12px 0;
}
.auto-item-amount,
.card-amount {
	font-size: .875rem;
	font-weight: 600;
}
.auto-item-left {
	gap: 12px;
}
.auto-item-name,
.doc-name,
.list-title {
	font-size: .875rem;
	font-weight: 500;
}
.auto-item-right {
	gap: 12px;
}
.auto-item-source,
.doc-meta,
.list-meta {
	align-items: center;
	color: var(--text-muted);
	display: flex;
	font-size: .75rem;
	gap: 4px;
	margin-top: 2px;
}
.auto-item:last-child,
.data-row:last-child {
	border-bottom: none;
}
.auto-processed {
	background: var(--bg-surface);
	border: 1px solid var(--border-color);
	border-radius: 16px;
	overflow: hidden;
}
.auto-processed-summary {
	align-items: center;
	cursor: pointer;
	display: flex;
	font-size: .875rem;
	justify-content: space-between;
	list-style: none;
	padding: 16px;
	transition: background .2s;
	user-select: none;
}
.auto-processed-summary::-webkit-details-marker {
	display: none;
}
.auto-processed-summary:hover {
	background: var(--bg-surface-hover);
	color: var(--text-primary);
}
.auto-stats {
	gap: 8px;
}
.auto-title-wrapper {
	gap: 10px;
}
.auto-title-wrapper i {
	color: var(--accent-green);
	font-size: 1.125rem;
}
.auto-title-wrapper,
.auto-stats,
.auto-item-left,
.auto-item-right,
.card-meta-source,
.detail-header-title,
.stat-inline {
	align-items: center;
	display: flex;
}
.badge,
.pill {
	align-items: center;
	border-radius: 6px;
	display: inline-flex;
	font-size: .75rem;
	font-weight: 500;
	gap: 6px;
	padding: 4px 8px;
}
.badge-danger {
	background: var(--danger-bg);
	border: 1px solid rgba(255, 0, 85, .2);
	color: var(--danger-text);
}
.badge-neutral {
	background: var(--bg-elevated);
	border: 1px solid var(--border-light);
	color: var(--text-secondary);
}
.badge-warning,
.pill-warning {
	background: var(--warning-bg);
	border: 1px solid rgba(255, 234, 0, .2);
	color: var(--warning-text);
}
.bottom-nav {
	backdrop-filter: blur(12px);
	background: rgba(24, 24, 27, .9);
	border-top: 1px solid var(--border-color);
	bottom: 0;
	display: flex;
	justify-content: space-around;
	left: 0;
	padding: 8px 8px calc(8px + var(--safe-bottom));
	position: fixed;
	right: 0;
	z-index: 40;
	-webkit-backdrop-filter: blur(12px);
}
.bottom-nav-badge {
	border: 2px solid var(--bg-surface);
	border-radius: 50%;
	font-size: .5625rem;
	height: 16px;
	position: absolute;
	right: 12px;
	top: 4px;
	width: 16px;
}
.bottom-nav-icon {
	font-size: 1.5rem;
	transition: transform .2s;
}
.bottom-nav-item {
	align-items: center;
	background: none;
	border: none;
	color: var(--text-muted);
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 64px;
	padding: 8px 4px;
	position: relative;
}
.bottom-nav-item.active {
	color: var(--accent-primary);
}
.bottom-nav-item.active .bottom-nav-icon {
	transform: scale(1.1);
}
.bottom-nav-label {
	font-size: .625rem;
	font-weight: 500;
	letter-spacing: -.01em;
}
.bottom-sheet {
	background: var(--bg-base);
	border-top: 1px solid var(--border-color);
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	bottom: 0;
	box-shadow: 0 -8px 32px rgba(0, 0, 0, .5);
	display: flex;
	flex-direction: column;
	left: 0;
	max-height: 94vh;
	position: fixed;
	right: 0;
	transform: translateY(100%);
	transition: transform .3s cubic-bezier(.32, .72, 0, 1);
	z-index: 50;
}
.bottom-sheet-overlay {
	backdrop-filter: blur(4px);
	background: rgba(0, 0, 0, .6);
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	transition: opacity .3s;
	z-index: 50;
	-webkit-backdrop-filter: blur(4px);
}
.bottom-sheet-overlay.is-active {
	opacity: 1;
	pointer-events: auto;
}
.bottom-sheet.is-active {
	transform: translateY(0);
}
.btn {
	align-items: center;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	display: flex;
	flex: 1;
	font-size: .8125rem;
	gap: 6px;
	justify-content: center;
	padding: 8px;
	transition: all .2s;
}
.btn-large {
	border-radius: 12px;
	font-size: .9375rem;
	grid-column: 1 / -1;
	padding: 14px;
}
.btn-outline {
	background: var(--bg-surface-hover);
	border: 1px solid var(--border-color);
	color: var(--text-primary);
	font-weight: 500;
}
.btn-outline:hover {
	background: var(--bg-elevated);
	border-color: var(--text-secondary);
}
.btn-primary {
	background: var(--accent-primary);
	color: #000000;
	font-weight: 600;
}
.btn-primary:hover {
	background: #66FFDF;
	transform: translateY(-1px);
}
.card-actions {
	border-top: 1px solid var(--border-light);
	display: flex;
	gap: 8px;
	padding-top: 12px;
}
.card-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}
.card-copy {
	flex: 1;
	min-width: 0;
}
.card-foreground {
	background: var(--bg-surface);
	cursor: pointer;
	padding: 16px;
	position: relative;
	touch-action: pan-y;
	transition: transform .2s cubic-bezier(.32, .72, 0, 1), box-shadow .2s, border-color .2s;
	user-select: none;
	will-change: transform;
	z-index: 10;
}
.card-foreground.selected {
	border-radius: 16px;
	box-shadow: 0 0 0 2px var(--accent-primary);
}
.card-foreground:hover {
	background: var(--bg-surface-hover);
}
.card-header {
	display: flex;
	gap: 12px;
	margin-bottom: 12px;
}
.card-meta {
	align-items: center;
	color: var(--text-secondary);
	display: flex;
	font-size: .8125rem;
	gap: 8px;
}
.card-review-link {
	color: var(--accent-primary);
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .01em;
}
.card-review-link:hover {
	color: #66FFDF;
}
.card-supplier {
	color: var(--text-primary);
	font-size: 1rem;
	font-weight: 600;
}
.card-title-actions {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.card-title-row {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
	margin-bottom: 4px;
}
.confidence-tag {
	align-items: center;
	background: var(--success-bg);
	border: 1px solid rgba(129, 201, 149, .2);
	border-radius: 4px;
	color: var(--accent-green);
	display: flex;
	font-size: .6875rem;
	gap: 4px;
	padding: 2px 6px;
}
.content-scroll {
	flex: 1;
	overflow-y: auto;
	padding: 20px 16px;
	padding-bottom: calc(88px + var(--safe-bottom));
}
.content-scroll,
.detail-content-scroll {
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.content-scroll::-webkit-scrollbar,
.detail-content-scroll::-webkit-scrollbar {
	display: none;
}
.count-badge {
	background: var(--bg-elevated);
	border: 1px solid var(--border-color);
	border-radius: 12px;
	color: var(--text-primary);
	font-size: .75rem;
	font-weight: 700;
	padding: 2px 8px;
}
.data-grid {
	background: var(--bg-surface);
	border: 1px solid var(--border-color);
	border-radius: 12px;
	overflow: hidden;
}
.data-grid-title {
	color: var(--text-muted);
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .05em;
	margin-bottom: 12px;
	text-transform: uppercase;
}
.data-label {
	color: var(--text-secondary);
}
.data-row {
	border-bottom: 1px solid var(--border-light);
	display: flex;
	font-size: .875rem;
	justify-content: space-between;
	padding: 12px 16px;
}
.data-value {
	color: var(--text-primary);
	font-weight: 500;
}
.data-value-interactive {
	border-bottom: 1px dashed var(--text-muted);
	cursor: pointer;
}
.delay-300 {
	animation-delay: .3s;
}
.delay-400 {
	animation-delay: .4s;
}
.delay-500 {
	animation-delay: .5s;
}
.delay-600 {
	animation-delay: .6s;
}
.desktop-only {
	display: none;
}
.desktop-only-lg {
	display: none;
}
.detail-action-icon {
	font-size: 1.25rem;
}
.detail-body {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 24px;
}
.detail-content-scroll {
	flex: 1;
	overflow-y: auto;
	position: relative;
}
.detail-footer {
	background: var(--bg-base);
	border-top: 1px solid var(--border-color);
	bottom: 0;
	display: grid;
	gap: 12px;
	grid-template-columns: 1fr 1fr;
	padding: 16px 24px calc(16px + var(--safe-bottom));
	position: sticky;
	z-index: 10;
}
.detail-header {
	align-items: center;
	backdrop-filter: blur(12px);
	background: rgba(9, 9, 11, .9);
	border-bottom: 1px solid var(--border-color);
	display: flex;
	justify-content: space-between;
	padding: 20px 24px;
	position: sticky;
	top: 0;
	z-index: 10;
	-webkit-backdrop-filter: blur(12px);
}
.detail-header-title {
	font-size: .875rem;
	font-weight: 600;
	gap: 8px;
}
.detail-hero {
	text-align: center;
}
.detail-hero-amount {
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: -.02em;
	margin-bottom: 4px;
}
.detail-hero-icon {
	border-radius: 16px;
	color: var(--text-muted);
	font-size: 2rem;
	height: 64px;
	margin: 0 auto 16px;
	width: 64px;
}
.detail-hero-supplier {
	color: var(--text-secondary);
	font-size: 1.125rem;
}
.detail-insight-mark {
	color: var(--accent-primary);
	font-size: 6rem;
	opacity: .05;
	position: absolute;
	right: -20px;
	top: -20px;
}
.detail-overlay {
	background: rgba(0, 0, 0, .45);
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	transition: opacity .25s ease;
	z-index: 60;
}
.detail-overlay.is-active {
	opacity: 1;
	pointer-events: auto;
}
.detail-panel {
	background-color: var(--bg-base);
	border-left: 1px solid var(--border-color);
	display: none;
	flex-direction: column;
	flex-shrink: 0;
	z-index: 20;
}
.detail-wrap {
	display: flex;
	flex-direction: column;
	height: 100%;
}
.doc-card {
	align-items: center;
	background: var(--bg-surface);
	border: 1px solid var(--border-color);
	border-radius: 12px;
	cursor: pointer;
	display: flex;
	gap: 12px;
	padding: 12px;
	transition: background .2s;
}
.doc-card:hover {
	background: var(--bg-surface-hover);
}
.doc-chevron {
	color: var(--text-muted);
}
.doc-icon {
	align-items: center;
	background: rgba(207, 102, 121, .15);
	border-radius: 8px;
	color: var(--accent-red);
	display: flex;
	font-size: 1.5rem;
	height: 40px;
	justify-content: center;
	width: 40px;
}
.doc-info {
	flex: 1;
	min-width: 0;
}
.doc-name {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.documents-grid {
	grid-template-columns: 1fr;
}
.empty-icon {
	font-size: 3rem;
	margin-bottom: 16px;
	opacity: .3;
}
.empty-state {
	align-items: center;
	color: var(--text-muted);
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: center;
	padding: 32px;
	text-align: center;
}
.empty-state--page {
	gap: 12px;
	margin: 0 auto;
	max-width: 480px;
}
.empty-title {
	color: var(--text-primary);
	font-size: 1.25rem;
	margin-bottom: 8px;
}
.fab {
	align-items: center;
	background: var(--accent-secondary);
	border: none;
	border-radius: 50%;
	bottom: calc(80px + var(--safe-bottom));
	box-shadow: 0 4px 12px rgba(0, 0, 0, .5);
	color: #000000;
	cursor: pointer;
	display: flex;
	font-size: 1.5rem;
	height: 56px;
	justify-content: center;
	position: fixed;
	right: 20px;
	width: 56px;
	z-index: 30;
}
.handle-bar {
	background: var(--text-muted);
	border-radius: 2px;
	height: 4px;
	width: 40px;
}
.icon-btn {
	align-items: center;
	background: var(--bg-surface);
	border: 1px solid var(--border-color);
	border-radius: 50%;
	color: var(--text-secondary);
	cursor: pointer;
	display: flex;
	font-size: 1.25rem;
	height: 36px;
	justify-content: center;
	transition: all .2s ease;
	width: 36px;
}
.icon-btn:hover {
	border-color: var(--text-muted);
	color: var(--text-primary);
}
.inbox-container {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0 auto;
	max-width: 100%;
	width: 100%;
}
.insight-box {
	background: rgba(0, 255, 209, .08);
	border: 1px solid rgba(0, 255, 209, .15);
	border-radius: 12px;
	margin-bottom: 16px;
	overflow: hidden;
	padding: 12px;
	position: relative;
}
.insight-header {
	align-items: center;
	color: var(--accent-primary);
	display: flex;
	font-size: .75rem;
	font-weight: 600;
	justify-content: space-between;
	margin-bottom: 6px;
}
.insight-tag {
	background: var(--bg-surface-hover);
	border: 1px solid var(--border-color);
	border-radius: 4px;
	color: var(--text-primary);
	font-size: .625rem;
	letter-spacing: .05em;
	padding: 2px 6px;
	text-transform: uppercase;
}
.insight-text {
	color: var(--text-primary);
	font-size: .8125rem;
	line-height: 1.5;
}
.insight-text--detail {
	color: var(--text-primary);
}
.list-card-header {
	align-items: center;
	border-bottom: 1px solid var(--border-light);
	display: flex;
	justify-content: space-between;
	padding: 16px 20px;
}
.list-icon {
	border-radius: 12px;
	color: var(--text-secondary);
	font-size: 1.125rem;
	height: 40px;
	width: 40px;
}
.list-link {
	color: var(--accent-primary);
	font-size: .8125rem;
	font-weight: 600;
}
.list-main {
	min-width: 0;
}
.list-main,
.list-side {
	align-items: center;
	display: flex;
	gap: 12px;
}
.list-row {
	align-items: center;
	border-bottom: 1px solid var(--border-light);
	display: flex;
	gap: 16px;
	justify-content: space-between;
	padding: 16px 20px;
}
.list-row:last-child {
	border-bottom: none;
}
.list-side {
	flex-shrink: 0;
	flex-wrap: wrap;
	justify-content: flex-end;
}
.list-stack {
	display: flex;
	flex-direction: column;
}
.logo-icon {
	align-items: center;
	background: var(--accent-primary);
	border-radius: 8px;
	color: #000000;
	display: flex;
	font-size: 1.25rem;
	height: 32px;
	justify-content: center;
	width: 32px;
}
.logo-icon--ghost {
	background: rgba(0, 255, 209, .08);
	border: 1px solid rgba(0, 255, 209, .14);
	color: rgba(0, 255, 209, .78);
	height: 28px;
	width: 28px;
}
.logo-icon--small {
	font-size: 1rem;
	height: 24px;
	width: 24px;
}
.logo-text {
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: -.02em;
}
.logo-text--subtle {
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.main-area {
	background-color: var(--bg-base);
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	position: relative;
}
.mobile-only {
	display: flex;
}
.nav-badge {
	border-radius: 12px;
	font-size: .625rem;
	margin-left: auto;
	padding: 2px 6px;
}
.nav-badge,
.bottom-nav-badge {
	align-items: center;
	background: var(--accent-red);
	color: #000000;
	display: flex;
	font-weight: 700;
	justify-content: center;
}
.nav-icon {
	font-size: 1.25rem;
}
.nav-item {
	align-items: center;
	background: transparent;
	border: none;
	border-radius: 8px;
	color: var(--text-secondary);
	cursor: pointer;
	display: flex;
	font-size: .875rem;
	gap: 12px;
	padding: 10px 10px;
	position: relative;
	text-align: left;
	transition: all .2s ease;
}
.nav-item.active {
	background: rgba(0, 255, 209, .1);
	color: var(--accent-primary);
	font-weight: 600;
}
.nav-item:hover {
	background: var(--bg-surface);
	color: var(--text-primary);
}
.overview-grid {
	grid-template-columns: repeat(2, 1fr);
}
.overview-grid,
.documents-grid {
	display: grid;
	gap: 16px;
	margin-bottom: 24px;
}
.page-heading {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 24px;
}
.page-subtitle {
	font-size: 1rem;
	font-weight: 600;
}
.page-title {
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: -.01em;
}
.pill-positive {
	background: var(--success-bg);
	border: 1px solid rgba(129, 201, 149, .2);
	color: var(--success-text);
}
.section-stack {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0 auto;
	max-width: 100%;
}
.section-title {
	color: var(--text-secondary);
	display: flex;
	font-size: .75rem;
	font-weight: 700;
	justify-content: space-between;
	letter-spacing: .05em;
	margin: 8px 4px 4px;
	text-transform: uppercase;
}
.section-title-hint {
	font-weight: 400;
	gap: 6px;
	text-transform: none;
}
.sheet-content-scroll {
	flex: 1;
	overflow-y: auto;
}
.sheet-handle {
	display: flex;
	justify-content: center;
	padding: 12px;
}
.sidebar {
	background-color: var(--bg-base);
	border-right: 1px solid var(--border-color);
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	padding: 24px 0;
	z-index: 10;
}
.sidebar-brand {
	align-items: flex-start;
	display: flex;
	gap: 10px;
	margin-bottom: 16px;
	padding: 0 8px;
}
.sidebar-brand-copy {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.sidebar-column {
	display: flex;
	flex: 1;
	flex-direction: column;
	margin: 0 auto;
	max-width: 176px;
	width: 100%;
}
.sidebar-footer {
	align-items: center;
	display: flex;
	gap: 12px;
	margin-top: auto;
	padding: 16px 12px;
}
.sidebar-meta {
	color: var(--text-muted);
	font-size: .6875rem;
}
.sidebar-nav {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 4px;
	justify-content: flex-start;
	width: 100%;
}
.sidebar-user {
	align-items: center;
	display: flex;
	gap: 10px;
	margin-top: auto;
	padding: 12px 8px 6px;
}
.small-icon-box {
	align-items: center;
	background: var(--bg-elevated);
	border: 1px solid var(--border-color);
	border-radius: 50%;
	color: var(--text-secondary);
	display: flex;
	font-size: .75rem;
	height: 28px;
	justify-content: center;
	width: 28px;
}
.source-icon-lg {
	border-radius: 50%;
	color: var(--text-secondary);
	flex-shrink: 0;
	font-size: 1.25rem;
	height: 40px;
	width: 40px;
}
.source-icon-lg,
.detail-hero-icon,
.list-icon {
	align-items: center;
	background: var(--bg-elevated);
	border: 1px solid var(--border-light);
	display: flex;
	justify-content: center;
}
.stat-card {
	display: flex;
	flex-direction: column;
	padding: 20px;
}
.stat-card,
.list-card {
	background: var(--bg-surface);
	border: 1px solid var(--border-color);
	border-radius: 16px;
}
.stat-card-action {
	background: var(--bg-elevated);
	cursor: pointer;
	transition: background .2s;
}
.stat-card-action:hover {
	background: var(--bg-surface-hover);
}
.stat-icon {
	align-items: center;
	border-radius: 8px;
	display: flex;
	font-size: 1.25rem;
	height: 32px;
	justify-content: center;
	margin-bottom: 12px;
	width: 32px;
}
.stat-icon-neutral {
	background: var(--border-color);
	color: var(--text-primary);
}
.stat-icon.cyan {
	background: rgba(179, 136, 255, .15);
	color: var(--accent-secondary);
}
.stat-icon.green {
	background: rgba(129, 201, 149, .15);
	color: var(--accent-green);
}
.stat-icon.purple {
	background: rgba(0, 255, 209, .15);
	color: var(--accent-primary);
}
.stat-inline {
	gap: 8px;
}
.stat-label {
	color: var(--text-secondary);
	font-size: .8125rem;
	margin-bottom: 4px;
}
.stat-link {
	color: var(--text-muted);
	font-size: .875rem;
}
.stat-value {
	color: var(--text-primary);
	font-size: 1.5rem;
	font-weight: 700;
}
.summary-card,
.module-note {
	align-items: center;
	background: var(--bg-surface);
	border: 1px solid var(--border-color);
	border-radius: 16px;
	display: flex;
	gap: 16px;
	overflow: hidden;
	padding: 16px;
	position: relative;
}
.summary-card::before,
.module-note::before {
	background: var(--accent-primary);
	bottom: 0;
	content: '';
	left: 0;
	position: absolute;
	top: 0;
	width: 3px;
}
.summary-icon {
	align-items: center;
	background: rgba(0, 255, 209, .15);
	border-radius: 50%;
	color: var(--accent-primary);
	display: flex;
	flex-shrink: 0;
	font-size: 1.25rem;
	height: 40px;
	justify-content: center;
	width: 40px;
}
.summary-text p {
	font-size: .9375rem;
	margin-bottom: 2px;
}
.summary-text p:last-child {
	color: var(--text-secondary);
	font-size: .8125rem;
	margin-bottom: 0;
}
.swipe-bg-accept {
	background: var(--accent-green);
	inset: 0 50% 0 0;
	padding-left: 24px;
}
.swipe-bg-accept,
.swipe-bg-personal {
	align-items: center;
	color: #000000;
	display: flex;
	font-weight: 600;
	inset: 0 auto 0 0;
	position: absolute;
	z-index: 0;
}
.swipe-bg-icon {
	font-size: 1.5rem;
	margin: 0 8px;
}
.swipe-bg-personal {
	background: var(--accent-secondary);
	inset: 0 0 0 50%;
	justify-content: flex-end;
	padding-right: 24px;
}
.swipe-wrapper {
	background: var(--bg-surface);
	border: 1px solid var(--border-color);
	border-radius: 16px;
	margin-bottom: 12px;
	overflow: hidden;
	position: relative;
}
.text-positive {
	color: var(--accent-green);
}
.top-header {
	align-items: center;
	backdrop-filter: blur(12px);
	background-color: rgba(9, 9, 11, .8);
	border-bottom: 1px solid var(--border-color);
	display: flex;
	flex-shrink: 0;
	height: 64px;
	justify-content: space-between;
	padding: 0 24px;
	position: relative;
	z-index: 10;
	-webkit-backdrop-filter: blur(12px);
}
.upload-card,
.visual-placeholder {
	align-items: center;
	border: 1px dashed var(--border-color);
	border-radius: 12px;
	color: var(--text-secondary);
	cursor: pointer;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px;
	text-align: center;
	transition: all .2s;
}
.upload-card:hover,
.visual-placeholder:hover {
	border-color: var(--text-muted);
	color: var(--text-primary);
}
.upload-icon,
.visual-placeholder-icon {
	font-size: 1.5rem;
}
.user-avatar {
	background: var(--bg-surface-hover);
	border: 1px solid var(--border-color);
	border-radius: 50%;
	height: 32px;
	width: 32px;
}
.user-avatar--small {
	height: 24px;
	opacity: .72;
	width: 24px;
}
.user-company {
	color: var(--text-muted);
	font-size: .75rem;
}
.user-info {
	display: flex;
	flex-direction: column;
}
.user-info--subtle {
	gap: 1px;
}
.user-info--subtle .user-company {
	font-size: .6875rem;
}
.user-info--subtle .user-name {
	color: var(--text-secondary);
	font-size: .75rem;
}
.user-name {
	font-size: .875rem;
	font-weight: 500;
}
.visual-placeholder {
	height: 250px;
	justify-content: center;
}
.visual-placeholder-icon {
	font-size: 2.5rem;
	margin-bottom: 12px;
}
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@media (max-width: 560px){
	.card-actions {
		flex-wrap: wrap;
	}
}
@media (max-width: 767px){
	.btn-large {
		grid-column: auto;
	}
	.card-actions .btn {
		flex: 1 1 calc(50% - 4px);
	}
	.card-title-actions {
		align-items: flex-start;
	}
	.card-title-row {
		gap: 8px;
	}
	.detail-body {
		padding: 20px 16px;
	}
	.detail-footer {
		grid-template-columns: 1fr;
		padding: 16px;
	}
	.list-row {
		align-items: flex-start;
		flex-direction: column;
	}
	.list-side {
		width: 100%;
	}
	.page-title {
		font-size: 1rem;
	}
	.summary-card,
	.module-note,
	.swipe-wrapper,
	.list-card {
		border-radius: 14px;
	}
	.top-header {
		padding: 0 16px;
	}
}
@media (min-width: 1024px){
	.documents-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 1200px){
	.app-layout {
		display: grid;
		grid-template-columns: minmax(180px, 24vw) minmax(0, 1fr) minmax(320px, 26vw);
	}
	.content-scroll {
		padding: 24px;
		padding-bottom: 32px;
	}
	.desktop-only-lg {
		display: flex;
	}
	.detail-overlay {
		display: none;
	}
	.detail-panel {
		display: flex;
		height: 100%;
		position: relative;
		right: auto;
		top: auto;
		transform: none;
		width: auto;
		z-index: 20;
	}
	.inbox-container {
		max-width: 768px;
	}
	.nav-badge {
		position: static;
	}
	.nav-item {
		justify-content: flex-start;
		padding: 10px;
	}
	.section-stack {
		max-width: 960px;
	}
	.sidebar {
		display: flex;
		height: 100%;
	}
	.sidebar-brand-copy,
	.user-info--subtle,
	.nav-label {
		display: flex;
	}
	.sidebar-column {
		align-items: stretch;
		max-width: 176px;
		padding: 0;
	}
	.sidebar-user {
		justify-content: flex-start;
	}
}
@media (min-width: 768px){
	.desktop-only {
		display: flex;
	}
	.mobile-only {
		display: none;
	}
	.overview-grid {
		grid-template-columns: repeat(4, 1fr);
	}
}
@media (min-width: 768px) and (max-width: 1199px){
	.app-layout {
		display: grid;
		grid-template-columns: 88px minmax(0, 1fr);
	}
	.content-scroll {
		padding: 24px;
		padding-bottom: 32px;
	}
	.detail-panel {
		bottom: 0;
		box-shadow: -24px 0 48px rgba(0, 0, 0, .35);
		display: flex;
		position: fixed;
		right: 0;
		top: 0;
		transform: translateX(100%);
		transition: transform .28s ease;
		width: min(440px, 46vw);
		z-index: 70;
	}
	.detail-panel--active {
		transform: translateX(0);
	}
	.main-area {
		min-width: 0;
	}
	.nav-badge {
		position: absolute;
		right: 6px;
		top: 6px;
	}
	.nav-item {
		justify-content: center;
		padding: 12px 0;
		width: 100%;
	}
	.sidebar {
		display: flex;
		height: 100%;
	}
	.sidebar-brand {
		gap: 0;
		justify-content: center;
		margin-bottom: 18px;
		padding: 0;
		width: 100%;
	}
	.sidebar-brand-copy,
	.user-info--subtle,
	.nav-label {
		display: none;
	}
	.sidebar-column {
		align-items: center;
		max-width: 72px;
		padding: 0 8px;
	}
	.sidebar-nav {
		align-items: center;
	}
	.sidebar-user {
		justify-content: center;
		padding: 8px 0;
		width: 100%;
	}
	.user-avatar--small {
		height: 28px;
		width: 28px;
	}
}