body.dreams-ai-design-studio-page {
	margin: 0;
	background: #0a0e17;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	color: #fff;
	overflow: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.dai-admin-editor-wrap {
	margin-left: -20px;
	min-height: calc(100vh - 32px);
	background: #0f141f;
}

.dai-admin-editor-wrap .dai-studio-shell {
	height: calc(100vh - 32px);
}

.dreams-ai-design-studio-page #wpadminbar,
.dreams-ai-design-studio-page .site-header,
.dreams-ai-design-studio-page .site-footer,
.dreams-ai-design-studio-page .breadcrumb-bar,
.dreams-ai-design-studio-page header:not(.dai-studio-topbar),
.dreams-ai-design-studio-page footer:not(.dai-studio-topbar) {
	display: none !important;
}

.dai-studio-shell {
	height: 100vh;
	height: 100dvh;
	display: flex;
	flex-direction: column;
	background: #0f141f;
	overflow: hidden;
}

.dai-ai-image-box {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 16px;
	margin-bottom: 14px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.06);
}

.dai-ai-image-box__label {
	font-size: 13px;
	font-weight: 700;
	color: #f1f4f9;
}

.dai-ai-image-box__prompt {
	width: 100%;
	min-height: 96px;
	padding: 14px 16px;
	border-radius: 16px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(14, 22, 37, 0.9);
	color: #f1f4f9;
	font: inherit;
	resize: vertical;
	box-sizing: border-box;
}

.dai-upload-library--primary {
	background: linear-gradient(90deg, #ff7d1e 0%, #ef4b7d 42%, #a839e6 100%);
	border-color: transparent;
	color: #fff;
}

.dai-slide-thumb__preview {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 42px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
}

.dai-slide-thumb__actions {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.dai-slide-thumb__actions button {
	width: 24px;
	height: 24px;
	border: 0;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.06);
	color: rgba(255, 255, 255, 0.8);
	cursor: pointer;
}

.dai-slide-thumb__actions button:hover {
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}

.dai-studio-topbar {
	min-height: 70px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 22px 0 18px;
	background: linear-gradient(180deg, #0f141f 0%, #0a0e17 100%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	box-sizing: border-box;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.dai-studio-topbar__brand,
.dai-studio-topbar__actions,
.dai-controlbar,
.dai-controlbar__group,
.dai-controlbar__row,
.dai-sidebar,
.dai-sidebar__rail,
.dai-panel,
.dai-canvas-area,
.dai-zoom-control,
.dai-status-pill,
.dai-export-button,
.dai-action-button,
.dai-panel__header,
.dai-search-field,
.dai-icon-grid,
.dai-shape-grid,
.dai-asset-grid,
.dai-upload-list,
.dai-layer-list,
.dai-layer-card__meta,
.dai-layer-card__actions,
.dai-layer-card__toolbar {
	display: flex;
}

.dai-studio-topbar__brand {
	align-items: center;
	gap: 18px;
}

.dai-icon-button {
	width: 34px;
	height: 34px;
	border-radius: 999px;
	border: 0;
	padding: 0;
	cursor: pointer;
}

.dai-icon-button--ghost {
	background: transparent;
	color: #cfd4df;
}

.dai-studio-topbar__divider {
	width: 1px;
	height: 31px;
	background: rgba(255, 255, 255, 0.15);
}

.dai-studio-topbar__title-wrap {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.dai-studio-topbar__title-row {
	display: flex;
	align-items: center;
	gap: 10px;
}

.dai-studio-topbar__title {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.15;
	width: min(420px, 34vw);
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: inherit;
}

.dai-studio-topbar__title:focus {
	outline: 2px solid var(--dreamsai-primary, #7a13f0);
	outline-offset: 3px;
}

.dai-studio-topbar__meta {
	margin: 0;
	color: rgba(255, 255, 255, 0.55);
	font-size: 12px;
	font-weight: 600;
}

.dai-studio-topbar__actions {
	align-items: center;
	gap: 16px;
}

.dai-status-pill {
	align-items: center;
	gap: 8px;
	padding: 0 16px;
	height: 34px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.58);
	font-size: 13px;
	font-weight: 600;
}

.dai-status-pill__dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.35);
}

.dai-export-button {
	align-items: center;
	gap: 11px;
	height: 50px;
	padding: 0 20px;
	border: 0;
	border-radius: 18px;
	background: linear-gradient(90deg, #ff7d1e 0%, #ef4b7d 38%, #a839e6 100%);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
}

.dai-topbar-button {
	height: 42px;
	padding: 0 16px;
	border-radius: 14px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.06);
	color: #f1f4f9;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.dai-topbar-button--muted {
	color: rgba(255, 255, 255, 0.68);
}

.dai-studio-workspace {
	display: flex;
	flex-direction: column;
	min-height: 0;
	flex: 1;
}

.dai-controlbar {
	align-items: center;
	min-height: 72px;
	padding: 0 16px;
	gap: 10px;
	background: linear-gradient(180deg, #1a2233 0%, #141b2a 100%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	overflow-x: auto;
	overflow-y: hidden;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
}

.dai-controlbar__view {
	display: none;
	align-items: center;
	gap: 10px;
	width: 100%;
}

.dai-controlbar__view.is-active {
	display: flex;
}

.dai-controlbar__group {
	align-items: center;
	gap: 10px;
	padding-right: 16px;
	border-right: 1px solid rgba(255, 255, 255, 0.08);
	flex-shrink: 0;
}

.dai-controlbar__group--label {
	padding-right: 18px;
}

.dai-controlbar__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-left: auto;
	flex-shrink: 0;
}

.dai-controlbar__title,
.dai-controlbar__section-label {
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: rgba(255, 255, 255, 0.48);
}

.dai-controlbar__section-label--active {
	display: inline-flex;
	align-items: center;
	color: #f1f4f9;
	gap: 10px;
}

.dai-controlbar__row {
	align-items: center;
	gap: 8px;
}

.dai-controlbar__row--buttons {
	gap: 6px;
}

.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button {
	height: 38px;
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: linear-gradient(180deg, #1f2a3d 0%, #1a2233 100%);
	color: #fff;
	box-sizing: border-box;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease;
}

.dai-field {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 10px;
}

.dai-field select,
.dai-field input {
	border: 0;
	background: transparent;
	color: #fff;
	font: inherit;
	outline: none;
	width: auto;
}

.dai-field input[type='number'] {
	width: 46px;
	text-align: right;
	appearance: textfield;
	-moz-appearance: textfield;
}

.dai-field input[type='number']::-webkit-outer-spin-button,
.dai-field input[type='number']::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.dai-field--select {
	width: 82px;
	justify-content: space-between;
}

.dai-field--size {
	width: 46px;
	justify-content: space-between;
}

.dai-field--compact {
	min-width: 95px;
	justify-content: space-between;
}

.dai-field span,
.dai-field small {
	color: rgba(255, 255, 255, 0.56);
	font-size: 12px;
	font-weight: 600;
}

.dai-tool-button,
.dai-clear-button,
.dai-action-button {
	padding: 0 14px;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
}

.dai-tool-button {
	min-width: 38px;
	justify-content: center;
}

.dai-tool-button--wide {
	min-width: 96px;
	padding: 0 16px;
}

.dai-tool-button--active,
.dai-tool-button:hover,
.dai-rail-button.is-active {
	background: rgba(255, 122, 24, 0.2);
	border-color: rgba(255, 122, 24, 0.48);
	color: #ff8a2b;
}

.dai-tool-button--italic {
	font-style: italic;
}

.dai-tool-button--underline {
	text-decoration: underline;
}

.dai-tool-button__strike {
	text-decoration: line-through;
}

.dai-toolbar-status {
	display: block;
	margin-top: 8px;
	font-size: 12px;
	line-height: 1.4;
	color: rgba(255, 255, 255, 0.62);
}

.dai-toolbar-status.is-error {
	color: #ff9c9c;
}

.dai-toolbar-status.is-success {
	color: #87efb1;
}

.dai-studio-notices {
	position: fixed;
	top: 98px;
	right: 24px;
	z-index: 1200;
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-width: 360px;
}

.dai-notice {
	padding: 14px 16px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 14px;
	background: rgba(18, 25, 39, 0.96);
	box-shadow: 0 18px 36px rgba(0, 0, 0, 0.24);
	color: #f4f7fb;
	font-size: 13px;
	line-height: 1.45;
}

.dai-notice--error {
	border-color: rgba(255, 113, 113, 0.42);
	color: #ffd4d4;
}

.dai-notice--success {
	border-color: rgba(85, 217, 145, 0.42);
	color: #d8ffe8;
}

.dai-notice--info {
	border-color: rgba(119, 160, 255, 0.38);
	color: #dbe6ff;
}

.dai-modal[hidden] {
	display: none;
}

.dai-modal {
	position: fixed;
	inset: 0;
	z-index: 1300;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

.dai-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(5, 10, 19, 0.72);
	backdrop-filter: blur(6px);
}

.dai-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(100%, 560px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 20px;
	background: linear-gradient(180deg, #1a2233 0%, #141b2a 100%);
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.5);
}

.dai-modal__header,
.dai-modal__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px;
}

.dai-modal__header {
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.dai-modal__body {
	padding: 20px;
}

.dai-modal__title {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	color: #f8fbff;
}

.dai-modal__copy {
	margin: 0 0 12px;
	font-size: 14px;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.68);
}

.dai-modal__textarea {
	width: 100%;
	min-height: 128px;
	padding: 14px 16px;
	border: 1px solid rgba(255, 255, 255, 0.09);
	border-radius: 14px;
	background: #121a27;
	color: #fff;
	font: inherit;
	line-height: 1.5;
	resize: vertical;
	box-sizing: border-box;
}

.dai-modal__textarea:focus {
	outline: 1px solid rgba(255, 138, 43, 0.6);
}

.dai-modal__close {
	width: 36px;
	height: 36px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	background: #334155;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}

.dai-modal__footer {
	gap: 12px;
	justify-content: flex-end;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.dai-slide-rail[hidden],
.dai-start-screen[hidden] {
	display: none;
}

.dai-slide-rail {
	width: 244px;
	min-width: 244px;
	padding: 18px 14px;
	background: #182334;
	border-right: 1px solid rgba(255, 255, 255, 0.08);
	box-sizing: border-box;
	overflow-y: auto;
}

.dai-slide-rail__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
}

.dai-slide-rail__header h2 {
	margin: 0;
	font-size: 18px;
}

.dai-slide-rail__add {
	padding: 8px 12px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	background: #334155;
	color: #fff;
	cursor: pointer;
}

.dai-slide-rail__list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.dai-slide-thumb {
	padding: 12px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.03);
	cursor: pointer;
}

.dai-slide-thumb.is-active {
	border-color: rgba(255, 122, 24, 0.48);
	background: rgba(255, 122, 24, 0.12);
}

.dai-slide-thumb__preview {
	position: relative;
	height: 92px;
	margin-bottom: 10px;
	border-radius: 12px;
	background: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.12);
}

.dai-slide-thumb__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
	image-rendering: -webkit-optimize-contrast;
	image-rendering: crisp-edges;
}

.dai-slide-thumb__badge {
	position: absolute;
	bottom: 6px;
	left: 6px;
	background: rgba(15, 20, 31, 0.82);
	color: #ffffff;
	font-size: 11px;
	font-weight: 700;
	padding: 2px 7px;
	border-radius: 6px;
	backdrop-filter: blur(4px);
}

.dai-slide-thumb__number {
	font-size: 22px;
	font-weight: 800;
	color: #334155;
}

.dai-slide-thumb__title {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: #f8fbff;
}

.dai-slide-thumb__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 8px;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.62);
}

.dai-slide-thumb__actions {
	display: flex;
	gap: 8px;
}

.dai-slide-thumb__actions button {
	width: 24px;
	height: 24px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 8px;
	background: #263243;
	color: #fff;
	cursor: pointer;
}

.dai-start-screen {
	position: fixed;
	inset: 0;
	z-index: 1150;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 32px;
	background: rgba(10, 14, 23, 0.92);
	backdrop-filter: blur(12px);
}

.dai-start-screen__panel {
	width: min(100%, 920px);
	padding: 28px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 28px;
	background: linear-gradient(180deg, #1a2233 0%, #141b2a 100%);
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.5);
}

.dai-start-screen__header h2 {
	margin: 0 0 8px;
	font-size: 34px;
}

.dai-start-screen__header p {
	margin: 0 0 22px;
	color: rgba(255, 255, 255, 0.68);
}

.dai-start-screen__templates {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-bottom: 20px;
}

.dai-start-template {
	padding: 18px 14px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.03);
	color: #fff;
	text-align: left;
	cursor: pointer;
}

.dai-start-template.is-active {
	border-color: rgba(255, 122, 24, 0.48);
	background: rgba(255, 122, 24, 0.12);
}

.dai-start-template strong,
.dai-start-template span {
	display: block;
}

.dai-start-template span {
	margin-top: 6px;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.62);
}

.dai-start-screen__label {
	display: block;
	margin-bottom: 10px;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #ffb266;
}

.dai-start-screen__prompt {
	width: 100%;
	min-height: 142px;
	padding: 18px 20px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 18px;
	background: #0f1724;
	color: #fff;
	font: inherit;
	box-sizing: border-box;
	resize: vertical;
}

.dai-start-screen__actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 18px;
}

.dai-start-screen__link {
	color: #b9d2ff;
	text-decoration: none;
}

.dai-color-stack {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 10px;
	height: 38px;
	border-radius: 8px;
	background: #fff;
}

.dai-color-stack__label {
	font-size: 12px;
	font-weight: 700;
	color: #c2c6d0;
	text-transform: uppercase;
}

.dai-color-chip {
	position: relative;
	width: 46px;
	height: 34px;
	border-radius: 8px;
	overflow: hidden;
	display: inline-flex;
	border: 1px solid rgba(11, 16, 28, 0.12);
}

.dai-color-chip input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.dai-color-chip__swatch {
	display: block;
	flex: 1;
	background: var(--dai-chip, #111111);
}

.dai-clear-button {
	background: #f8f9fb;
	color: #8d95a6;
	border-color: rgba(11, 16, 28, 0.08);
}

.dai-action-button {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.06);
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 0.02em;
}

.dai-action-button--muted {
	color: rgba(255, 255, 255, 0.58);
}

.dai-canvas-toggle,
.dai-canvas-swatch,
.dai-dimension-pill {
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.dai-canvas-toggle {
	height: 42px;
	padding: 0 16px;
	background: #ffffff;
	color: #8d95a6;
	font-size: 13px;
	font-weight: 700;
	border: 0;
}

.dai-canvas-swatch {
	width: 36px;
	height: 36px;
	background: #f5f5f5;
}

.dai-dimension-pill {
	height: 42px;
	padding: 0 16px;
	display: inline-flex;
	align-items: center;
	background: rgba(255, 255, 255, 0.94);
	color: #98a0b2;
	font-size: 14px;
	font-weight: 600;
}

.dai-studio-main {
	display: flex;
	flex: 1;
	min-height: 0;
	min-width: 0;
}

.dai-sidebar {
	width: 500px;
	min-width: 500px;
	background: linear-gradient(180deg, #141b2a 0%, #0f141f 100%);
	color: #d6dbea;
	min-height: 0;
	align-items: stretch;
	box-shadow: -4px 0 20px rgba(0, 0, 0, 0.3);
}

.dai-sidebar__rail {
	width: 96px;
	flex-direction: column;
	align-items: stretch;
	background: linear-gradient(180deg, #0f141f 0%, #0a0e17 100%);
	border-right: 1px solid rgba(255, 255, 255, 0.08);
	padding-top: 0;
}

.dai-rail-button {
	min-height: 88px;
	padding: 14px 8px;
	border: 0;
	border-left: 4px solid transparent;
	background: transparent;
	color: #8994a8;
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
}

.dai-rail-button.is-active {
	background: #5a331e;
	border-left-color: #ff7d19;
}

.dai-sidebar__content {
	flex: 1;
	min-width: 0;
	display: flex;
}

.dai-panel {
	display: none;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	align-items: stretch;
}

.dai-panel.is-active {
	display: flex;
}

.dai-panel__header {
	align-items: center;
	justify-content: space-between;
	padding: 12px 20px 0;
}

.dai-sidebar__title {
	margin: 0;
	font-size: 22px;
	font-weight: 700;
	color: #f2f5fb;
}

.dai-sidebar__preset-list,
.dai-icon-grid,
.dai-shape-grid,
.dai-asset-grid,
.dai-upload-list,
.dai-layer-list {
	padding: 16px 18px 20px;
	box-sizing: border-box;
}

.dai-sidebar__preset-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.dai-preset-card {
	width: 100%;
	min-height: 82px;
	border-radius: 30px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: linear-gradient(180deg, #1f2a3d 0%, #1a2233 100%);
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 0 22px;
	color: rgba(255, 255, 255, 0.86);
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease;
}

.dai-preset-card--heading {
	min-height: 84px;
}

.dai-preset-card__text {
	font-weight: 700;
	line-height: 1.1;
}

.dai-preset-card--heading .dai-preset-card__text {
	font-size: 23px;
}

.dai-preset-card--subheading .dai-preset-card__text {
	font-size: 18px;
}

.dai-preset-card--body .dai-preset-card__text {
	font-size: 15px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.56);
}

.dai-search-field {
	position: relative;
	align-items: center;
	gap: 12px;
	margin: 12px 20px 0;
	padding: 0 18px;
	height: 52px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 28px;
	background: linear-gradient(180deg, #1f2a3d 0%, #1a2233 100%);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.dai-search-field input {
	flex: 1;
	border: 0;
	background: transparent;
	color: #f2f5fb;
	font-size: 14px;
	outline: none;
}

.dai-search-field input::placeholder {
	color: rgba(255, 255, 255, 0.72);
}

.dai-icon-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	overflow-y: auto;
}

.dai-icon-chip,
.dai-shape-card,
.dai-asset-card {
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: linear-gradient(180deg, #1f2a3d 0%, #1a2233 100%);
	color: rgba(255, 255, 255, 0.84);
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease;
}

.dai-icon-chip {
	aspect-ratio: 1;
	border-radius: 999px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.dai-icon-chip svg {
	width: 34px;
	height: 34px;
}

.dai-shape-grid,
.dai-asset-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.dai-shape-card,
.dai-asset-card {
	min-height: 172px;
	border-radius: 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 14px;
	padding: 18px;
	font-size: 14px;
	font-weight: 600;
}

.dai-shape-card__icon {
	position: relative;
	display: inline-block;
	width: 40px;
	height: 40px;
	color: rgba(255, 255, 255, 0.8);
}

.dai-shape-card__icon--rect::before,
.dai-shape-card__icon--circle::before,
.dai-shape-card__icon--triangle::before,
.dai-shape-card__icon--star::before,
.dai-shape-card__icon--line::before,
.dai-shape-card__icon--arrow::before,
.dai-shape-card__icon--arrow::after {
	content: '';
	position: absolute;
	box-sizing: border-box;
}

.dai-shape-card__icon--rect::before {
	inset: 8px;
	border: 3px solid currentColor;
	border-radius: 4px;
}

.dai-shape-card__icon--circle::before {
	inset: 8px;
	border: 3px solid currentColor;
	border-radius: 50%;
}

.dai-shape-card__icon--triangle::before {
	left: 10px;
	top: 8px;
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 20px solid currentColor;
}

.dai-shape-card__icon--star::before {
	left: 7px;
	top: 6px;
	width: 24px;
	height: 24px;
	background: currentColor;
	clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

.dai-shape-card__icon--line::before {
	left: 8px;
	right: 8px;
	top: 19px;
	height: 3px;
	background: currentColor;
}

.dai-shape-card__icon--arrow::before {
	left: 7px;
	right: 11px;
	top: 19px;
	height: 3px;
	background: currentColor;
}

.dai-shape-card__icon--arrow::after {
	top: 13px;
	right: 8px;
	width: 10px;
	height: 10px;
	border-top: 3px solid currentColor;
	border-right: 3px solid currentColor;
	transform: rotate(45deg);
}

.dai-asset-card__preview {
	width: 92px;
	height: 68px;
	border-radius: 18px;
	display: inline-block;
}

.dai-asset-card--gradient .dai-asset-card__preview {
	background: radial-gradient(circle at 30% 35%, #ff9a3d 0, #ff9a3d 20%, transparent 21%), radial-gradient(circle at 65% 40%, #fc4d8f 0, #fc4d8f 26%, transparent 27%), radial-gradient(circle at 50% 70%, #844cff 0, #844cff 30%, transparent 31%), #1f2740;
}

.dai-asset-card--badge .dai-asset-card__preview {
	background: linear-gradient(135deg, #ff8a2b, #ed4e83);
	position: relative;
}

.dai-asset-card--badge .dai-asset-card__preview::before {
	content: 'NEW';
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.08em;
}

.dai-asset-card--frame .dai-asset-card__preview {
	background: transparent;
	border: 5px solid #fff;
	box-shadow: inset 0 0 0 3px rgba(255, 255, 255, 0.22);
}

.dai-asset-card--highlight .dai-asset-card__preview {
	background: linear-gradient(90deg, rgba(255, 201, 81, 0.2), rgba(255, 201, 81, 0.95) 35%, rgba(255, 201, 81, 0.2));
}

.dai-upload-dropzone,
.dai-upload-library {
	margin: 16px 20px 0;
	border: 1px dashed rgba(255, 255, 255, 0.18);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.03);
	color: #f2f5fb;
}

.dai-upload-dropzone {
	min-height: 154px;
	padding: 22px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	text-align: center;
}

.dai-upload-dropzone strong {
	font-size: 16px;
}

.dai-upload-dropzone span:last-child {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.58);
}

.dai-upload-library {
	height: 46px;
	padding: 0 16px;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
}

.dai-upload-list,
.dai-layer-list {
	flex-direction: column;
	align-items: stretch;
	gap: 12px;
	overflow-y: auto;
}

.dai-upload-thumb {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px;
	border-radius: 18px;
	background: #3a465c;
	border: 1px solid rgba(255, 255, 255, 0.08);
	cursor: pointer;
}

.dai-upload-thumb img {
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 12px;
}

.dai-upload-thumb__meta {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.dai-upload-thumb__meta strong {
	font-size: 14px;
}

.dai-upload-thumb__meta span {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.58);
}

.dai-layer-card {
	border-radius: 22px;
	background: #404b61;
	border: 1px solid rgba(255, 255, 255, 0.08);
	padding: 14px;
	color: #f2f5fb;
}

.dai-layer-card.is-selected {
	border-color: rgba(255, 145, 61, 0.56);
	box-shadow: inset 0 0 0 1px rgba(255, 145, 61, 0.22);
}

.dai-layer-card__meta {
	align-items: center;
	gap: 12px;
}

.dai-layer-card__glyph {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.08);
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.4);
	font-weight: 700;
	flex-shrink: 0;
}

.dai-layer-card__copy {
	flex: 1;
	min-width: 0;
}

.dai-layer-card__copy strong,
.dai-layer-card__copy span {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.dai-layer-card__copy strong {
	font-size: 14px;
}

.dai-layer-card__copy span {
	margin-top: 4px;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.54);
}

.dai-layer-card__actions,
.dai-layer-card__toolbar {
	align-items: center;
	gap: 10px;
}

.dai-layer-card__toolbar {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.dai-layer-button {
	min-width: 34px;
	height: 24px;
	padding: 0 6px;
	border: 0;
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.06);
	color: rgba(255, 255, 255, 0.54);
	cursor: pointer;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
}

.dai-layer-button--spacer {
	margin-left: auto;
}

.dai-layer-button:hover,
.dai-upload-thumb:hover,
.dai-icon-chip:hover,
.dai-shape-card:hover,
.dai-asset-card:hover,
.dai-upload-dropzone:hover,
.dai-upload-library:hover,
.dai-preset-card:hover {
	filter: brightness(1.08);
}

.dai-panel__hint {
	margin: 0 20px 18px;
	font-size: 13px;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.58);
}

.dai-canvas-area {
	position: relative;
	flex: 1;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #0f141f 0%, #0a0e17 50%, #0f141f 100%);
	overflow: auto;
	min-width: 0;
}

.dai-canvas-area__surface {
	min-width: 100%;
	min-height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px 32px 72px;
	box-sizing: border-box;
}

.dai-canvas-stage {
	position: relative;
	width: 1240px;
	height: 1754px;
	isolation: isolate;
	box-shadow: 0 26px 46px rgba(27, 35, 49, 0.18);
	transform-origin: center center;
	cursor: text;
	border-radius: 10px;
	overflow: hidden;
	background:
		radial-gradient(circle at top right, rgba(255, 137, 61, 0.12), transparent 28%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.06));
}

.dai-canvas-stage canvas {
	display: block;
	width: 100%;
	height: 100%;
}

.dai-canvas-stage .lower-canvas {
	background: #fff;
	z-index: 10 !important;
}

.dai-canvas-stage .upper-canvas {
	background: transparent !important;
	z-index: 30 !important;
	pointer-events: auto;
}

.dai-canvas-stage__grid,
.dai-canvas-stage__safe-area {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 1;
}

.dai-canvas-stage__grid {
	opacity: 0.32;
	background-image:
		linear-gradient(rgba(85, 105, 142, 0.08) 1px, transparent 1px),
		linear-gradient(90deg, rgba(85, 105, 142, 0.08) 1px, transparent 1px);
	background-size: 48px 48px;
	mix-blend-mode: multiply;
}

.dai-canvas-stage__safe-area {
	inset: 44px;
	border: 1px dashed rgba(76, 111, 170, 0.34);
	border-radius: 8px;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18);
}

.dai-canvas-stage .lower-canvas,
.dai-canvas-stage .upper-canvas {
	position: relative;
	z-index: 2;
}

.dai-zoom-control {
	position: absolute;
	right: 38px;
	bottom: 18px;
	height: 54px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 12px 22px rgba(15, 21, 35, 0.1);
	color: #41506a;
	overflow: hidden;
	align-items: center;
}

.dai-zoom-control__button,
.dai-zoom-control__value {
	height: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.dai-zoom-control__button {
	width: 58px;
	border: 0;
	background: transparent;
	font-size: 30px;
	color: #43546c;
	cursor: pointer;
}

.dai-zoom-control__value {
	min-width: 100px;
	font-size: 28px;
	font-weight: 700;
	border-left: 1px solid rgba(70, 86, 111, 0.18);
	border-right: 1px solid rgba(70, 86, 111, 0.18);
}

.dai-zoom-control__value span {
	font-size: 18px;
	margin-right: 4px;
}

.canvas-container {
	box-shadow: inherit;
	position: absolute !important;
	inset: 0 auto auto 0;
	z-index: 20;
	overflow: visible !important;
	pointer-events: auto;
}

[data-dai-tooltip] {
	position: relative;
}

[data-dai-tooltip]::after {
	content: attr(data-dai-tooltip);
	position: absolute;
	left: 50%;
	top: calc(100% + 8px);
	z-index: 100;
	transform: translateX(-50%) translateY(-4px);
	padding: 6px 9px;
	border-radius: 8px;
	background: rgba(7, 13, 25, 0.96);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.16s ease, transform 0.16s ease;
}

[data-dai-tooltip]:hover::after,
[data-dai-tooltip]:focus-visible::after {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

.dai-icon {
	position: relative;
	display: inline-block;
	width: 18px;
	height: 18px;
	color: currentColor;
}

.dai-icon::before,
.dai-icon::after {
	content: '';
	position: absolute;
	box-sizing: border-box;
}

.dai-icon--arrow-left::before {
	inset: 8px 1px 8px 2px;
	border-top: 2px solid currentColor;
	transform: rotate(-35deg);
	transform-origin: left center;
}

.dai-icon--arrow-left::after {
	left: 2px;
	right: 2px;
	top: 8px;
	height: 2px;
	background: currentColor;
}

.dai-icon--document::before {
	inset: 2px 3px 2px 4px;
	border: 2px solid #ff8d2f;
	border-radius: 3px;
}

.dai-icon--document::after {
	top: 2px;
	right: 3px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #ff8d2f;
	border-right: 2px solid #ff8d2f;
}

.dai-icon--download::before {
	left: 8px;
	top: 2px;
	width: 2px;
	height: 10px;
	background: currentColor;
}

.dai-icon--download::after {
	left: 4px;
	top: 9px;
	width: 10px;
	height: 10px;
	border-left: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(-45deg);
}

.dai-icon--save::before {
	left: 2px;
	top: 1px;
	width: 14px;
	height: 16px;
	border: 2px solid currentColor;
	border-radius: 3px;
}

.dai-icon--save::after {
	left: 5px;
	bottom: 3px;
	width: 8px;
	height: 5px;
	border: 2px solid currentColor;
	border-bottom: 0;
	border-radius: 2px 2px 0 0;
}

.dai-icon--folder::before {
	left: 1px;
	top: 5px;
	width: 16px;
	height: 11px;
	border: 2px solid currentColor;
	border-radius: 3px;
}

.dai-icon--folder::after {
	left: 3px;
	top: 2px;
	width: 7px;
	height: 5px;
	border: 2px solid currentColor;
	border-bottom: 0;
	border-radius: 3px 3px 0 0;
}

.dai-icon--chevron-down::before {
	inset: 5px 4px 4px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
}

.dai-icon--text::before {
	left: 7px;
	top: 2px;
	width: 2px;
	height: 14px;
	background: currentColor;
}

.dai-icon--text::after {
	left: 3px;
	top: 3px;
	width: 10px;
	height: 2px;
	background: currentColor;
	box-shadow: 0 11px 0 currentColor;
}

.dai-icon--align-left::before,
.dai-icon--align-center::before,
.dai-icon--align-right::before,
.dai-icon--list::before {
	left: 2px;
	right: 2px;
	top: 4px;
	height: 2px;
	background: currentColor;
	box-shadow: 0 5px 0 currentColor, 0 10px 0 currentColor;
}

.dai-icon--align-center::before {
	left: 3px;
	right: 3px;
}

.dai-icon--align-right::before {
	left: 5px;
	right: 1px;
}

.dai-icon--list::after {
	left: 1px;
	top: 4px;
	width: 2px;
	height: 2px;
	background: currentColor;
	box-shadow: 0 5px 0 currentColor, 0 10px 0 currentColor;
}

.dai-icon--spacing-horizontal::before {
	left: 1px;
	right: 1px;
	top: 8px;
	height: 2px;
	background: currentColor;
}

.dai-icon--spacing-horizontal::after {
	inset: 4px 1px;
	border-left: 2px solid currentColor;
	border-right: 2px solid currentColor;
}

.dai-icon--spacing-vertical::before {
	top: 1px;
	bottom: 1px;
	left: 8px;
	width: 2px;
	background: currentColor;
}

.dai-icon--spacing-vertical::after {
	inset: 1px 4px;
	border-top: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
}

.dai-icon--corner-radius::before {
	inset: 2px;
	border: 2px dashed currentColor;
	border-radius: 5px;
}

.dai-icon--opacity::before {
	left: 4px;
	top: 2px;
	width: 10px;
	height: 14px;
	border-radius: 10px 10px 12px 12px;
	border: 2px solid currentColor;
	transform: rotate(45deg);
}

.dai-icon--smile::before {
	inset: 2px;
	border: 2px solid currentColor;
	border-radius: 50%;
}

.dai-icon--smile::after {
	left: 5px;
	top: 9px;
	width: 8px;
	height: 4px;
	border-bottom: 2px solid currentColor;
	border-radius: 0 0 8px 8px;
}

.dai-icon--sparkles::before {
	left: 2px;
	top: 2px;
	width: 14px;
	height: 14px;
	border: 2px solid currentColor;
	transform: rotate(45deg);
}

.dai-icon--sparkles::after {
	right: 1px;
	bottom: 1px;
	width: 6px;
	height: 6px;
	border: 2px solid currentColor;
	transform: rotate(45deg);
}

.dai-icon--triangle::before {
	left: 3px;
	top: 3px;
	width: 0;
	height: 0;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-bottom: 10px solid currentColor;
}

.dai-icon--triangle::after {
	left: 2px;
	bottom: 2px;
	width: 4px;
	height: 4px;
	border: 2px solid currentColor;
	border-radius: 50%;
	box-shadow: 8px 0 0 -2px currentColor, 16px 0 0 -2px currentColor;
}

.dai-icon--cube::before {
	inset: 3px;
	border: 2px solid currentColor;
	transform: rotate(45deg);
}

.dai-icon--upload::before {
	left: 8px;
	top: 2px;
	width: 2px;
	height: 10px;
	background: currentColor;
}

.dai-icon--upload::after {
	left: 4px;
	top: 2px;
	width: 10px;
	height: 10px;
	border-left: 2px solid currentColor;
	border-top: 2px solid currentColor;
	transform: rotate(45deg);
}

.dai-icon--layers::before,
.dai-icon--layers::after {
	left: 2px;
	right: 2px;
	height: 6px;
	border: 2px solid currentColor;
	transform: skewX(-18deg);
}

.dai-icon--layers::before {
	top: 2px;
}

.dai-icon--layers::after {
	top: 10px;
}

.dai-icon--layout::before,
.dai-icon--layout::after {
	content: '';
	position: absolute;
	border: 2px solid currentColor;
	border-radius: 2px;
}

.dai-icon--layout::before {
	left: 1px;
	top: 3px;
	width: 16px;
	height: 5px;
}

.dai-icon--layout::after {
	left: 1px;
	top: 11px;
	width: 6px;
	height: 6px;
	box-shadow: 10px 0 0 -2px currentColor;
}

.dai-icon--search::before {
	left: 1px;
	top: 1px;
	width: 11px;
	height: 11px;
	border: 2px solid currentColor;
	border-radius: 50%;
}

.dai-icon--search::after {
	right: 1px;
	bottom: 1px;
	width: 7px;
	height: 2px;
	background: currentColor;
	transform: rotate(45deg);
	transform-origin: right center;
}

.dai-icon--upload-cloud::before {
	left: 1px;
	right: 1px;
	bottom: 2px;
	height: 8px;
	border: 2px solid currentColor;
	border-top: 0;
	border-radius: 0 0 10px 10px;
}

.dai-icon--upload-cloud::after {
	left: 6px;
	top: 0;
	width: 6px;
	height: 10px;
	border-left: 2px solid currentColor;
	border-top: 2px solid currentColor;
	transform: rotate(45deg);
}

@media (max-width: 1200px) {
	.dai-sidebar {
		width: 360px;
		min-width: 320px;
	}

	.dai-icon-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.dai-controlbar {
		padding-bottom: 10px;
	}
}

@media (max-width: 991px) {
	body.dreams-ai-design-studio-page {
		overflow: hidden;
	}

	.dai-studio-shell {
		height: 100vh;
		height: 100dvh;
		min-height: 0;
	}

	.dai-studio-topbar,
	.dai-controlbar {
		flex-wrap: wrap;
	}

	.dai-studio-topbar {
		height: auto;
		padding-top: 18px;
		padding-bottom: 18px;
		gap: 18px;
	}

	.dai-studio-topbar__actions {
		gap: 10px;
	}

	.dai-sidebar {
		width: 320px;
		min-width: 280px;
		z-index: 35;
	}

	.dai-sidebar-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.dai-studio-shell.is-sidebar-collapsed .dai-sidebar {
		width: 0;
		min-width: 0;
		transform: translateX(-100%);
	}

	.dai-studio-shell.is-sidebar-collapsed .dai-sidebar__rail,
	.dai-studio-shell.is-sidebar-collapsed .dai-sidebar__content {
		visibility: hidden;
		pointer-events: none;
	}
}

.dai-sidebar__rail {
	width: 74px;
	flex-direction: column;
	overflow-x: hidden;
	overflow-y: auto;
}

.dai-rail-button {
	min-width: 0;
	min-height: 76px;
	border-left-width: 0;
	border-left-width: 4px;
	border-bottom: 0;
}

.dai-rail-button.is-active {
	border-left-color: #ff7d19;
	border-bottom-color: transparent;
}

.dai-canvas-area {
	min-height: 0;
}


@media (max-width: 767px) {
	.dai-studio-topbar {
		padding: 12px;
		gap: 12px;
	}

	.dai-studio-topbar__actions {
		width: auto;
		gap: 8px;
		justify-content: flex-end;
		margin-left: auto;
	}

	.dai-topbar-button,
	.dai-export-button {
		width: 42px;
		height: 42px;
		padding: 0;
		justify-content: center;
		border-radius: 12px;
	}

	.dai-topbar-button__label,
	.dai-export-button .dai-icon--chevron-down {
		display: none;
	}

	.dai-studio-topbar__title {
		width: min(210px, 42vw);
	}

	.dai-status-pill {
		display: none;
	}

	.dai-controlbar__actions {
		margin-left: 0;
	}

	.dai-sidebar {
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		width: min(82vw, 300px);
		min-width: min(82vw, 300px);
		box-shadow: 18px 0 38px rgba(8, 12, 22, 0.3);
	}

	.dai-sidebar__rail {
		width: 62px;
	}

	.dai-rail-button {
		min-height: 66px;
		font-size: 11px;
		gap: 8px;
	}

	.dai-panel__header,
	.dai-sidebar__preset-list,
	.dai-icon-grid,
	.dai-shape-grid,
	.dai-asset-grid,
	.dai-upload-list,
	.dai-layer-list {
		padding-left: 12px;
		padding-right: 12px;
	}

	.dai-canvas-area__surface {
		padding: 16px 12px 74px;
	}

	.dai-icon-grid,
	.dai-shape-grid,
	.dai-asset-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.dai-zoom-control {
		right: 18px;
	}
}

/* Modern responsive refresh. Kept at the end so existing editor behavior and JS hooks remain unchanged. */
body.dreams-ai-design-studio-page {
	--dai-bg: #eef1f5;
	--dai-surface: #ffffff;
	--dai-panel: #111827;
	--dai-panel-soft: #172033;
	--dai-panel-raised: #202a3d;
	--dai-border: rgba(148, 163, 184, 0.18);
	--dai-border-strong: rgba(148, 163, 184, 0.28);
	--dai-text: #f8fafc;
	--dai-text-muted: #a9b4c7;
	--dai-accent: #ff7a1a;
	--dai-accent-2: #22c6a8;
	--dai-danger: #ef4444;
	--dai-shadow: 0 18px 38px rgba(15, 23, 42, 0.18);
	background: var(--dai-bg);
	color: var(--dai-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.dai-admin-editor-wrap,
.dai-studio-shell,
.dai-canvas-area {
	background: var(--dai-bg);
}

.dai-studio-topbar {
	min-height: 64px;
	padding: 10px 18px;
	background: rgba(15, 23, 42, 0.96);
	border-bottom: 1px solid var(--dai-border);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.04), 0 10px 30px rgba(15, 23, 42, 0.18);
	backdrop-filter: blur(14px);
}

.dai-studio-topbar__brand {
	min-width: 0;
	gap: 14px;
}

.dai-icon-button--ghost,
.dai-topbar-button,
.dai-export-button,
.dai-tool-button,
.dai-clear-button,
.dai-action-button,
.dai-upload-library,
.dai-slide-rail__add,
.dai-layer-button,
.dai-modal__close {
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

.dai-icon-button--ghost {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.dai-icon-button--ghost:hover,
.dai-topbar-button:hover,
.dai-export-button:hover,
.dai-tool-button:hover,
.dai-clear-button:hover,
.dai-action-button:hover,
.dai-upload-library:hover,
.dai-slide-rail__add:hover,
.dai-layer-button:hover,
.dai-modal__close:hover {
	transform: translateY(-1px);
}

.dai-studio-topbar__divider {
	background: var(--dai-border-strong);
}

.dai-studio-topbar__title {
	width: min(460px, 38vw);
	color: var(--dai-text);
	font-size: 15px;
}

.dai-studio-topbar__meta,
.dai-status-pill,
.dai-topbar-button--muted,
.dai-action-button--muted {
	color: var(--dai-text-muted);
}

.dai-status-pill,
.dai-topbar-button {
	height: 38px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.07);
	border-color: rgba(255, 255, 255, 0.1);
}

.dai-status-pill__dot {
	background: var(--dai-accent-2);
	box-shadow: 0 0 0 4px rgba(34, 198, 168, 0.14);
}

.dai-export-button,
.dai-upload-library--primary {
	border-radius: 10px;
	background: linear-gradient(135deg, var(--dai-accent) 0%, #f04f77 58%, #6d5dfc 100%);
	box-shadow: 0 12px 24px rgba(255, 122, 26, 0.22);
}

.dai-controlbar {
	min-height: 66px;
	padding: 10px 14px;
	background: rgba(30, 41, 59, 0.96);
	border-bottom: 1px solid var(--dai-border);
	flex-wrap: nowrap;
	scrollbar-width: thin;
}

.dai-controlbar__view {
	gap: 8px;
}

.dai-controlbar__group {
	gap: 8px;
	padding-right: 14px;
}

.dai-controlbar__title,
.dai-controlbar__section-label {
	letter-spacing: 0;
	color: #b8c2d4;
}

.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack {
	height: 36px;
	border-radius: 8px;
	border-color: rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.08);
	color: var(--dai-text);
}

.dai-field select,
.dai-field input {
	min-width: 0;
}

.dai-tool-button--active,
.dai-tool-button:hover,
.dai-rail-button.is-active {
	background: rgba(255, 122, 26, 0.16);
	border-color: rgba(255, 122, 26, 0.5);
	color: #ffac66;
}

.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack {
	color: #475569;
	background: #fff;
	border-color: rgba(15, 23, 42, 0.1);
}

.dai-action-button {
	letter-spacing: 0;
	text-transform: none;
}

.dai-studio-main {
	background: var(--dai-bg);
}

.dai-sidebar,
.dai-slide-rail {
	background: var(--dai-panel);
	border-color: var(--dai-border);
}

.dai-sidebar {
	width: 420px;
	min-width: 360px;
	box-shadow: 12px 0 32px rgba(15, 23, 42, 0.14);
}

.dai-sidebar__rail {
	width: 82px;
	background: #0c1220;
}

.dai-rail-button {
	min-height: 74px;
	gap: 8px;
	color: #9aa7bd;
	font-size: 12px;
	border-left-width: 3px;
}

.dai-rail-button:hover {
	color: var(--dai-text);
	background: rgba(255, 255, 255, 0.05);
}

.dai-rail-button.is-active {
	background: rgba(255, 122, 26, 0.13);
	border-left-color: var(--dai-accent);
}

.dai-panel__header {
	padding: 18px 20px 4px;
}

.dai-sidebar__title {
	font-size: 20px;
}

.dai-preset-card,
.dai-start-template,
.dai-shape-card,
.dai-asset-card,
.dai-upload-thumb,
.dai-layer-card,
.dai-slide-thumb,
.dai-ai-image-box,
.dai-upload-dropzone {
	border-radius: 8px;
	background: var(--dai-panel-raised);
	border-color: var(--dai-border);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.dai-preset-card {
	min-height: 72px;
	padding: 0 18px;
}

.dai-preset-card--heading .dai-preset-card__text {
	font-size: 21px;
}

.dai-search-field {
	height: 46px;
	border-radius: 8px;
	background: var(--dai-panel-raised);
	border-color: var(--dai-border);
}

.dai-icon-grid,
.dai-shape-grid,
.dai-asset-grid {
	gap: 12px;
}

.dai-shape-card,
.dai-asset-card {
	min-height: 142px;
}

.dai-ai-image-box__prompt,
.dai-start-screen__prompt,
.dai-modal__textarea {
	border-radius: 8px;
	background: #0c1220;
	border-color: var(--dai-border);
}

.dai-panel__hint {
	color: var(--dai-text-muted);
}

.dai-canvas-area {
	background:
		linear-gradient(rgba(148, 163, 184, 0.18) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.18) 1px, transparent 1px),
		var(--dai-bg);
	background-size: 28px 28px;
}

.dai-canvas-area__surface {
	padding: 34px 38px 88px;
}

.dai-canvas-stage {
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 28px 70px rgba(15, 23, 42, 0.22), 0 0 0 1px rgba(15, 23, 42, 0.08);
}

.dai-canvas-stage__grid {
	opacity: 0.22;
}

.dai-canvas-stage__safe-area {
	border-color: rgba(34, 198, 168, 0.42);
	border-radius: 6px;
}

.dai-zoom-control {
	right: 28px;
	bottom: 22px;
	height: 46px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid rgba(15, 23, 42, 0.08);
	box-shadow: var(--dai-shadow);
}

.dai-zoom-control__button {
	width: 48px;
	font-size: 24px;
}

.dai-zoom-control__value {
	min-width: 82px;
	font-size: 20px;
}

.dai-zoom-control__value span {
	font-size: 16px;
}

.dai-start-screen,
.dai-modal__backdrop {
	background: rgba(15, 23, 42, 0.72);
}

.dai-start-screen__panel,
.dai-modal__dialog {
	border-radius: 12px;
	background: #111827;
	border-color: var(--dai-border);
	box-shadow: 0 28px 70px rgba(0, 0, 0, 0.36);
}

.dai-start-screen__header h2 {
	font-size: 30px;
}

.dai-start-screen__templates {
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.dai-modal__close {
	border-radius: 8px;
}

@media (max-width: 1280px) {
	.dai-sidebar {
		width: 360px;
		min-width: 320px;
	}

	.dai-sidebar__rail {
		width: 74px;
	}

	.dai-controlbar__view {
		min-width: max-content;
	}

	.dai-shape-card,
	.dai-asset-card {
		min-height: 124px;
	}
}

@media (max-width: 1024px) {
	.dai-studio-topbar {
		align-items: flex-start;
	}

	.dai-studio-topbar__actions {
		gap: 10px;
	}

	.dai-export-button {
		height: 42px;
		padding: 0 15px;
	}

	.dai-studio-main {
		flex-direction: column;
	}

	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: 270px;
		min-height: 270px;
		flex-direction: column;
		box-shadow: 0 12px 28px rgba(15, 23, 42, 0.13);
	}

	.dai-sidebar__rail {
		width: 100%;
		min-height: 66px;
		flex-direction: row;
		overflow-x: auto;
		overflow-y: hidden;
		border-right: 0;
		border-bottom: 1px solid var(--dai-border);
	}

	.dai-rail-button {
		min-width: 86px;
		min-height: 66px;
		border-left: 0;
		border-bottom: 3px solid transparent;
	}

	.dai-rail-button.is-active {
		border-bottom-color: var(--dai-accent);
	}

	.dai-sidebar__content {
		min-height: 0;
		overflow: hidden;
	}

	.dai-panel {
		width: 100%;
	}

	.dai-sidebar__preset-list,
	.dai-icon-grid,
	.dai-shape-grid,
	.dai-asset-grid,
	.dai-upload-list,
	.dai-layer-list {
		overflow-y: auto;
	}

	.dai-canvas-area {
		min-height: 360px;
	}

	.dai-canvas-area__surface {
		align-items: flex-start;
		padding-top: 28px;
	}
}

@media (max-width: 780px) {
	body.dreams-ai-design-studio-page {
		overflow: hidden;
	}

	.dai-studio-shell {
		min-width: 0;
	}

	.dai-studio-topbar {
		padding: 10px 12px;
	}

	.dai-studio-topbar__brand,
	.dai-studio-topbar__actions {
		width: 100%;
	}

	.dai-studio-topbar__brand {
		gap: 10px;
	}

	.dai-studio-topbar__title {
		width: 100%;
		font-size: 14px;
	}

	.dai-studio-topbar__title-wrap {
		min-width: 0;
		flex: 1;
	}

	.dai-studio-topbar__actions {
		justify-content: flex-start;
		overflow-x: auto;
		padding-bottom: 2px;
	}

	.dai-topbar-button,
	.dai-export-button {
		flex: 0 0 auto;
	}

	.dai-controlbar {
		min-height: 58px;
		padding: 8px;
	}

	.dai-controlbar__group {
		padding-right: 10px;
	}

	.dai-controlbar__title,
	.dai-controlbar__section-label {
		font-size: 11px;
	}

	.dai-field--select {
		width: 128px;
	}

	.dai-field--size,
	.dai-field--compact {
		width: auto;
		min-width: 96px;
	}

	.dai-sidebar {
		height: 238px;
		min-height: 238px;
	}

	.dai-sidebar__rail {
		min-height: 58px;
	}

	.dai-rail-button {
		min-width: 72px;
		min-height: 58px;
		padding: 8px 6px;
		font-size: 11px;
	}

	.dai-sidebar__title {
		font-size: 18px;
	}

	.dai-panel__header,
	.dai-sidebar__preset-list,
	.dai-icon-grid,
	.dai-shape-grid,
	.dai-asset-grid,
	.dai-upload-list,
	.dai-layer-list {
		padding-left: 12px;
		padding-right: 12px;
	}

	.dai-icon-grid {
		grid-template-columns: repeat(4, minmax(52px, 1fr));
	}

	.dai-shape-grid,
	.dai-asset-grid,
	.dai-start-screen__templates {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.dai-shape-card,
	.dai-asset-card {
		min-height: 112px;
		padding: 12px;
	}

	.dai-canvas-area__surface {
		padding: 18px 12px 74px;
	}

	.dai-zoom-control {
		right: 12px;
		bottom: 12px;
		height: 42px;
	}

	.dai-zoom-control__button {
		width: 42px;
	}

	.dai-zoom-control__value {
		min-width: 70px;
		font-size: 18px;
	}

	.dai-start-screen {
		align-items: flex-start;
		padding: 12px;
		overflow-y: auto;
	}

	.dai-start-screen__panel {
		padding: 18px;
	}

	.dai-start-screen__header h2 {
		font-size: 24px;
	}

	.dai-start-screen__actions,
	.dai-modal__footer {
		flex-direction: column-reverse;
		align-items: stretch;
	}

	.dai-start-screen__actions .dai-action-button,
	.dai-modal__footer .dai-action-button {
		width: 100%;
		justify-content: center;
	}
}

@media (max-width: 520px) {

	.dai-studio-topbar__divider,
	.dai-status-pill {
		display: none;
	}

	.dai-studio-topbar__actions {
		gap: 8px;
	}

	.dai-topbar-button {
		padding: 0 12px;
	}

	.dai-export-button {
		padding: 0 12px;
	}

	.dai-export-button .dai-icon--chevron-down {
		display: none;
	}

	.dai-sidebar {
		height: 226px;
		min-height: 226px;
	}

	.dai-rail-button span:last-child {
		display: none;
	}

	.dai-rail-button {
		min-width: 52px;
	}

	.dai-icon-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.dai-shape-grid,
	.dai-asset-grid,
	.dai-start-screen__templates {
		grid-template-columns: 1fr;
	}

	.dai-preset-card {
		min-height: 60px;
	}

	.dai-start-screen__prompt,
	.dai-modal__textarea {
		min-height: 112px;
	}

	.dai-studio-notices {
		top: 12px;
		right: 12px;
		left: 12px;
		max-width: none;
	}
}

/* Final modern website-style layer. */
body.dreams-ai-design-studio-page {
	--dai-modern-bg: #f6f8fb;
	--dai-modern-panel: #ffffff;
	--dai-modern-ink: #111827;
	--dai-modern-muted: #64748b;
	--dai-modern-line: #e5e7eb;
	--dai-modern-line-strong: #cbd5e1;
	--dai-modern-primary: #ff6a1a;
	--dai-modern-blue: #2563eb;
	--dai-modern-teal: #0fbea8;
	--dai-modern-shadow: 0 22px 60px rgba(15, 23, 42, 0.12);
	--dai-modern-shadow-soft: 0 10px 28px rgba(15, 23, 42, 0.08);
	background: #f6f8fb;
	color: var(--dai-modern-ink);
}

.dai-studio-shell {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(246, 248, 251, 0.92)),
		linear-gradient(90deg, rgba(37, 99, 235, 0.08), rgba(255, 106, 26, 0.08));
}

.dai-studio-topbar {
	min-height: 72px;
	padding: 12px 24px;
	background: rgba(255, 255, 255, 0.92);
	border-bottom: 1px solid rgba(226, 232, 240, 0.9);
	color: var(--dai-modern-ink);
	box-shadow: 0 12px 34px rgba(15, 23, 42, 0.07);
	backdrop-filter: blur(18px);
}

.dai-studio-topbar__brand {
	gap: 16px;
}

.dai-studio-topbar__title-wrap {
	min-width: 0;
}

.dai-studio-topbar__title-row {
	gap: 12px;
}

.dai-studio-topbar__title-row>.dai-icon {
	width: 36px;
	height: 36px;
	border-radius: 8px;
	background: linear-gradient(135deg, #fff7ed, #eff6ff);
	color: var(--dai-modern-primary);
	box-shadow: inset 0 0 0 1px rgba(255, 106, 26, 0.18);
}

.dai-studio-topbar__title {
	color: var(--dai-modern-ink);
	font-size: 16px;
	font-weight: 800;
}

.dai-studio-topbar__meta,
.dai-topbar-button--muted,
.dai-status-pill {
	color: var(--dai-modern-muted);
}

.dai-icon-button--ghost,
.dai-topbar-button,
.dai-status-pill {
	background: #fff;
	border: 1px solid var(--dai-modern-line);
	color: #475569;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
}

.dai-icon-button--ghost:hover,
.dai-topbar-button:hover {
	background: #f8fafc;
	border-color: var(--dai-modern-line-strong);
	color: var(--dai-modern-ink);
}

.dai-studio-topbar__divider {
	background: var(--dai-modern-line);
}

.dai-status-pill__dot {
	background: var(--dai-modern-teal);
	box-shadow: 0 0 0 4px rgba(15, 190, 168, 0.14);
}

.dai-export-button,
.dai-upload-library--primary {
	border-radius: 8px;
	background: linear-gradient(135deg, #ff6a1a 0%, #ef3f68 48%, #6d5dfc 100%);
	box-shadow: 0 14px 28px rgba(239, 63, 104, 0.24);
}

.dai-controlbar {
	min-height: 74px;
	padding: 12px 18px;
	background: rgba(255, 255, 255, 0.9);
	border-bottom: 1px solid rgba(226, 232, 240, 0.9);
	color: var(--dai-modern-ink);
	box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
	backdrop-filter: blur(18px);
}

.dai-controlbar__group {
	border-right-color: var(--dai-modern-line);
}

.dai-controlbar__title,
.dai-controlbar__section-label {
	color: var(--dai-modern-muted);
	font-size: 11px;
	letter-spacing: 0;
}

.dai-controlbar__section-label--active {
	color: var(--dai-modern-ink);
}

.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack {
	background: #fff;
	border: 1px solid var(--dai-modern-line);
	color: var(--dai-modern-ink);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.dai-field select,
.dai-field input {
	color: var(--dai-modern-ink);
}

.dai-field span,
.dai-field small,
.dai-color-stack__label {
	color: var(--dai-modern-muted);
}

.dai-tool-button:hover,
.dai-tool-button--active {
	background: #fff7ed;
	border-color: rgba(255, 106, 26, 0.35);
	color: #ea580c;
	box-shadow: 0 8px 18px rgba(255, 106, 26, 0.12);
}

.dai-action-button {
	color: #475569;
}

.dai-action-button:not(.dai-action-button--muted),
.dai-start-screen__actions .dai-action-button,
.dai-modal__footer .dai-action-button:not(.dai-action-button--muted) {
	background: #111827;
	border-color: #111827;
	color: #fff;
	box-shadow: 0 12px 24px rgba(17, 24, 39, 0.18);
}

.dai-action-button:hover,
.dai-clear-button:hover {
	background: #f8fafc;
	border-color: var(--dai-modern-line-strong);
	color: var(--dai-modern-ink);
}

.dai-action-button:not(.dai-action-button--muted):hover,
.dai-start-screen__actions .dai-action-button:hover,
.dai-modal__footer .dai-action-button:not(.dai-action-button--muted):hover {
	background: #020617;
	border-color: #020617;
	color: #fff;
}

.dai-studio-main {
	background: transparent;
}

.dai-sidebar {
	width: 430px;
	min-width: 370px;
	background: #fff;
	color: var(--dai-modern-ink);
	border-right: 1px solid var(--dai-modern-line);
	box-shadow: 16px 0 40px rgba(15, 23, 42, 0.08);
}

.dai-sidebar__rail {
	width: 88px;
	background: #111827;
	border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.dai-rail-button {
	color: #94a3b8;
}

.dai-rail-button:hover {
	background: rgba(255, 255, 255, 0.07);
	color: #fff;
}

.dai-rail-button.is-active {
	background: rgba(255, 255, 255, 0.11);
	border-left-color: var(--dai-modern-primary);
	color: #fff;
}

.dai-sidebar__content {
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.dai-panel {
	color: var(--dai-modern-ink);
}

.dai-panel__header {
	padding: 20px 20px 6px;
}

.dai-sidebar__title {
	color: var(--dai-modern-ink);
	font-size: 22px;
	font-weight: 800;
}

.dai-panel__hint {
	color: var(--dai-modern-muted);
}

.dai-preset-card,
.dai-start-template,
.dai-shape-card,
.dai-asset-card,
.dai-upload-thumb,
.dai-layer-card,
.dai-slide-thumb,
.dai-ai-image-box,
.dai-upload-dropzone,
.dai-upload-library,
.dai-icon-chip {
	background: #fff;
	border: 1px solid var(--dai-modern-line);
	color: var(--dai-modern-ink);
	box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

.dai-preset-card,
.dai-upload-dropzone,
.dai-ai-image-box {
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.dai-preset-card:hover,
.dai-start-template:hover,
.dai-shape-card:hover,
.dai-asset-card:hover,
.dai-upload-thumb:hover,
.dai-layer-card:hover,
.dai-slide-thumb:hover,
.dai-upload-dropzone:hover,
.dai-upload-library:hover,
.dai-icon-chip:hover {
	filter: none;
	border-color: rgba(37, 99, 235, 0.32);
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.1);
	transform: translateY(-1px);
}

.dai-preset-card__text,
.dai-upload-thumb__meta strong,
.dai-layer-card__copy strong,
.dai-slide-thumb__title {
	color: var(--dai-modern-ink);
}

.dai-preset-card--body .dai-preset-card__text,
.dai-upload-dropzone span:last-child,
.dai-upload-thumb__meta span,
.dai-layer-card__copy span,
.dai-slide-thumb__meta,
.dai-start-template span {
	color: var(--dai-modern-muted);
}

.dai-search-field {
	background: #fff;
	border-color: var(--dai-modern-line);
	box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

.dai-search-field input {
	color: var(--dai-modern-ink);
}

.dai-search-field input::placeholder,
.dai-ai-image-box__prompt::placeholder,
.dai-start-screen__prompt::placeholder {
	color: #94a3b8;
}

.dai-icon-chip {
	color: #475569;
}

.dai-icon-chip:hover,
.dai-shape-card__icon {
	color: var(--dai-modern-blue);
}

.dai-ai-image-box {
	margin: 16px 20px;
}

.dai-ai-image-box__label {
	color: var(--dai-modern-ink);
}

.dai-ai-image-box__prompt,
.dai-start-screen__prompt,
.dai-modal__textarea {
	background: #fff;
	border: 1px solid var(--dai-modern-line);
	color: var(--dai-modern-ink);
	box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
}

.dai-layer-card.is-selected,
.dai-slide-thumb.is-active,
.dai-start-template.is-active {
	background: #fff7ed;
	border-color: rgba(255, 106, 26, 0.42);
	box-shadow: 0 14px 30px rgba(255, 106, 26, 0.12);
}

.dai-layer-card__glyph {
	background: #f1f5f9;
	color: var(--dai-modern-muted);
}

.dai-layer-card__toolbar {
	border-top-color: var(--dai-modern-line);
}

.dai-layer-button,
.dai-slide-rail__add,
.dai-slide-thumb__actions button {
	background: #f8fafc;
	border: 1px solid var(--dai-modern-line);
	color: #475569;
}

.dai-slide-rail {
	background: #fff;
	border-right: 1px solid var(--dai-modern-line);
	color: var(--dai-modern-ink);
	box-shadow: 14px 0 34px rgba(15, 23, 42, 0.06);
}

.dai-slide-rail__header h2 {
	color: var(--dai-modern-ink);
}

.dai-canvas-area {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.74), rgba(241, 245, 249, 0.72)),
		linear-gradient(rgba(148, 163, 184, 0.16) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.16) 1px, transparent 1px),
		#eef2f7;
	background-size: auto, 28px 28px, 28px 28px, auto;
}

.dai-canvas-area__surface {
	padding: 42px 48px 96px;
}

.dai-canvas-stage {
	background: #fff;
	box-shadow:
		0 34px 90px rgba(15, 23, 42, 0.2),
		0 0 0 1px rgba(15, 23, 42, 0.08);
}

.dai-canvas-stage__safe-area {
	border-color: rgba(15, 190, 168, 0.42);
}

.dai-zoom-control {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid var(--dai-modern-line);
	color: var(--dai-modern-ink);
	box-shadow: var(--dai-modern-shadow-soft);
	backdrop-filter: blur(16px);
}

.dai-zoom-control__button {
	color: #475569;
}

.dai-zoom-control__button:hover {
	background: #f8fafc;
	color: var(--dai-modern-ink);
}

.dai-zoom-control__value {
	color: var(--dai-modern-ink);
}

.dai-start-screen {
	background:
		linear-gradient(180deg, rgba(15, 23, 42, 0.2), rgba(15, 23, 42, 0.38)),
		rgba(248, 250, 252, 0.82);
}

.dai-start-screen__panel,
.dai-modal__dialog {
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid rgba(226, 232, 240, 0.95);
	color: var(--dai-modern-ink);
	box-shadow: 0 34px 90px rgba(15, 23, 42, 0.24);
	backdrop-filter: blur(18px);
}

.dai-start-screen__header {
	padding-bottom: 16px;
	margin-bottom: 18px;
	border-bottom: 1px solid var(--dai-modern-line);
}

.dai-start-screen__header h2,
.dai-modal__title {
	color: var(--dai-modern-ink);
	font-size: 32px;
	font-weight: 800;
}

.dai-start-screen__header p,
.dai-modal__copy {
	color: var(--dai-modern-muted);
}

.dai-start-screen__label {
	color: #ea580c;
	letter-spacing: 0;
}

.dai-start-screen__link {
	color: var(--dai-modern-blue);
	font-weight: 700;
}

.dai-modal__header,
.dai-modal__footer {
	border-color: var(--dai-modern-line);
}

.dai-modal__close {
	background: #f8fafc;
	border-color: var(--dai-modern-line);
	color: #475569;
}

.dai-modal__close:hover {
	background: #fee2e2;
	border-color: #fecaca;
	color: #b91c1c;
}

.dai-notice {
	background: rgba(255, 255, 255, 0.96);
	border-color: var(--dai-modern-line);
	color: var(--dai-modern-ink);
	box-shadow: var(--dai-modern-shadow);
}

@media (max-width: 1280px) {
	.dai-sidebar {
		width: 380px;
		min-width: 330px;
	}
}

@media (max-width: 1024px) {
	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: 282px;
		min-height: 282px;
		border-right: 0;
		border-bottom: 1px solid var(--dai-modern-line);
	}

	.dai-sidebar__rail {
		width: 100%;
	}

	.dai-rail-button.is-active {
		border-left-color: transparent;
		border-bottom-color: var(--dai-modern-primary);
	}
}

@media (max-width: 780px) {
	.dai-studio-topbar {
		padding: 10px 12px;
	}

	.dai-controlbar {
		padding: 9px 10px;
	}

	.dai-sidebar {
		height: 246px;
		min-height: 246px;
	}

	.dai-canvas-area__surface {
		padding: 22px 14px 78px;
	}

	.dai-start-screen__header h2,
	.dai-modal__title {
		font-size: 24px;
	}
}

@media (max-width: 520px) {
	.dai-studio-topbar__title-row>.dai-icon {
		width: 30px;
		height: 30px;
	}

	.dai-topbar-button,
	.dai-export-button {
		height: 38px;
	}

	.dai-sidebar {
		height: 232px;
		min-height: 232px;
	}

	.dai-start-screen__panel,
	.dai-modal__dialog {
		border-radius: 8px;
	}
}

/* Product-dashboard refinement: floating chrome, richer hierarchy, and tighter mobile ergonomics. */
body.dreams-ai-design-studio-page {
	--dai-app-bg: #eef3f8;
	--dai-app-card: rgba(255, 255, 255, 0.94);
	--dai-app-card-solid: #ffffff;
	--dai-app-text: #0b1220;
	--dai-app-muted: #667085;
	--dai-app-subtle: #f8fafc;
	--dai-app-border: rgba(203, 213, 225, 0.82);
	--dai-app-ring: rgba(37, 99, 235, 0.26);
	--dai-app-orange: #ff6417;
	--dai-app-pink: #ec407a;
	--dai-app-blue: #2563eb;
	--dai-app-green: #10b981;
	--dai-app-shadow: 0 24px 70px rgba(15, 23, 42, 0.14);
	--dai-app-shadow-sm: 0 10px 30px rgba(15, 23, 42, 0.09);
	background:
		radial-gradient(circle at 12% 0%, rgba(37, 99, 235, 0.11), transparent 26%),
		radial-gradient(circle at 88% 10%, rgba(255, 100, 23, 0.12), transparent 28%),
		linear-gradient(180deg, #fbfdff 0%, var(--dai-app-bg) 58%, #e8eef6 100%);
	color: var(--dai-app-text);
}

.dai-studio-shell {
	position: relative;
	background: transparent;
}

.dai-studio-shell::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		linear-gradient(rgba(148, 163, 184, 0.08) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.08) 1px, transparent 1px);
	background-size: 32px 32px;
	mask-image: linear-gradient(180deg, #000 0%, transparent 72%);
}

.dai-studio-topbar {
	position: relative;
	z-index: 5;
	min-height: 76px;
	margin: 12px 16px 0;
	padding: 12px 18px;
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.84);
	box-shadow: var(--dai-app-shadow-sm);
	backdrop-filter: blur(22px) saturate(1.18);
}

.dai-studio-topbar::before {
	content: '';
	position: absolute;
	left: 18px;
	right: 18px;
	top: 0;
	height: 3px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--dai-app-orange), var(--dai-app-pink), var(--dai-app-blue));
}

.dai-studio-topbar__title-row>.dai-icon {
	width: 40px;
	height: 40px;
	border-radius: 12px;
	background:
		linear-gradient(135deg, rgba(255, 100, 23, 0.16), rgba(37, 99, 235, 0.13)),
		#fff;
	color: var(--dai-app-orange);
	box-shadow: inset 0 0 0 1px rgba(255, 100, 23, 0.2), 0 10px 22px rgba(255, 100, 23, 0.12);
}

.dai-studio-topbar__title {
	color: var(--dai-app-text);
	font-size: 17px;
	font-weight: 850;
}

.dai-studio-topbar__meta {
	color: var(--dai-app-muted);
}

.dai-icon-button--ghost,
.dai-topbar-button,
.dai-status-pill,
.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack {
	border-color: var(--dai-app-border);
	background: rgba(255, 255, 255, 0.9);
	color: #334155;
}

.dai-icon-button--ghost:focus-visible,
.dai-topbar-button:focus-visible,
.dai-export-button:focus-visible,
.dai-tool-button:focus-visible,
.dai-action-button:focus-visible,
.dai-clear-button:focus-visible,
.dai-rail-button:focus-visible,
.dai-preset-card:focus-visible,
.dai-shape-card:focus-visible,
.dai-asset-card:focus-visible,
.dai-upload-dropzone:focus-visible,
.dai-upload-library:focus-visible {
	outline: 3px solid var(--dai-app-ring);
	outline-offset: 2px;
}

.dai-studio-topbar__actions {
	gap: 9px;
}

.dai-status-pill {
	height: 40px;
	border-radius: 999px;
	padding: 0 14px;
	color: #667085;
}

.dai-status-pill__dot {
	width: 9px;
	height: 9px;
	background: var(--dai-app-green);
	box-shadow: 0 0 0 5px rgba(16, 185, 129, 0.13);
}

.dai-topbar-button {
	height: 40px;
	border-radius: 10px;
	font-weight: 750;
}

.dai-export-button {
	height: 44px;
	border-radius: 12px;
	box-shadow: 0 16px 34px rgba(236, 64, 122, 0.24);
}

.dai-controlbar {
	position: relative;
	z-index: 4;
	min-height: 76px;
	margin: 10px 16px 0;
	padding: 12px;
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
	backdrop-filter: blur(22px) saturate(1.16);
}

.dai-controlbar__view {
	gap: 10px;
}

.dai-controlbar__group {
	min-height: 48px;
	padding: 6px 12px;
	border: 1px solid rgba(226, 232, 240, 0.74);
	border-radius: 12px;
	background: rgba(248, 250, 252, 0.72);
}

.dai-controlbar__group--label {
	background: #111827;
	border-color: #111827;
	color: #fff;
}

.dai-controlbar__group--label .dai-controlbar__section-label--active {
	color: #fff;
}

.dai-controlbar__title,
.dai-controlbar__section-label {
	color: #667085;
	font-weight: 800;
}

.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack {
	height: 38px;
	border-radius: 10px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.dai-tool-button,
.dai-action-button,
.dai-clear-button {
	font-size: 14px;
	font-weight: 800;
}

.dai-tool-button:hover,
.dai-tool-button--active {
	background: linear-gradient(180deg, #fff7ed, #ffedd5);
	border-color: rgba(255, 100, 23, 0.38);
	color: #c2410c;
	box-shadow: 0 10px 22px rgba(255, 100, 23, 0.14);
}

.dai-action-button:not(.dai-action-button--muted),
.dai-start-screen__actions .dai-action-button,
.dai-modal__footer .dai-action-button:not(.dai-action-button--muted) {
	border-color: transparent;
	background: linear-gradient(135deg, #111827, #020617);
	color: #fff;
}

.dai-studio-main {
	position: relative;
	z-index: 1;
	gap: 14px;
	padding: 14px 16px 16px;
}

.dai-sidebar {
	width: 440px;
	min-width: 380px;
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 18px;
	background: var(--dai-app-card);
	box-shadow: var(--dai-app-shadow-sm);
	overflow: hidden;
	backdrop-filter: blur(18px);
}

.dai-sidebar__rail {
	width: 90px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent),
		#0b1220;
}

.dai-rail-button {
	position: relative;
	min-height: 78px;
	color: #98a2b3;
	font-weight: 750;
}

.dai-rail-button::after {
	content: '';
	position: absolute;
	left: 10px;
	right: 10px;
	bottom: 0;
	height: 1px;
	background: rgba(255, 255, 255, 0.07);
}

.dai-rail-button.is-active {
	background:
		linear-gradient(90deg, rgba(255, 100, 23, 0.18), rgba(255, 255, 255, 0.04)),
		rgba(255, 255, 255, 0.08);
	color: #fff;
}

.dai-rail-button.is-active .dai-icon {
	color: #ffb076;
}

.dai-sidebar__content {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(248, 250, 252, 0.94));
}

.dai-panel__header {
	padding: 22px 22px 8px;
}

.dai-sidebar__title {
	font-size: 23px;
	font-weight: 850;
	color: var(--dai-app-text);
}

.dai-sidebar__preset-list,
.dai-icon-grid,
.dai-shape-grid,
.dai-asset-grid,
.dai-upload-list,
.dai-layer-list {
	padding: 18px 20px 22px;
}

.dai-preset-card,
.dai-start-template,
.dai-shape-card,
.dai-asset-card,
.dai-upload-thumb,
.dai-layer-card,
.dai-slide-thumb,
.dai-ai-image-box,
.dai-upload-dropzone,
.dai-upload-library,
.dai-icon-chip {
	border-color: rgba(226, 232, 240, 0.94);
	background: #fff;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

.dai-preset-card {
	position: relative;
	min-height: 76px;
	padding-left: 22px;
	overflow: hidden;
}

.dai-preset-card::before {
	content: '';
	position: absolute;
	left: 0;
	top: 14px;
	bottom: 14px;
	width: 4px;
	border-radius: 0 999px 999px 0;
	background: linear-gradient(180deg, var(--dai-app-orange), var(--dai-app-pink));
}

.dai-preset-card--heading .dai-preset-card__text {
	font-size: 22px;
}

.dai-preset-card__text,
.dai-layer-card__copy strong,
.dai-upload-thumb__meta strong {
	color: var(--dai-app-text);
}

.dai-preset-card:hover,
.dai-start-template:hover,
.dai-shape-card:hover,
.dai-asset-card:hover,
.dai-upload-thumb:hover,
.dai-layer-card:hover,
.dai-slide-thumb:hover,
.dai-upload-dropzone:hover,
.dai-upload-library:hover,
.dai-icon-chip:hover {
	border-color: rgba(37, 99, 235, 0.34);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
}

.dai-search-field {
	height: 50px;
	margin: 14px 20px 0;
	border-radius: 12px;
	border-color: rgba(226, 232, 240, 0.94);
	background: #fff;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

.dai-icon-chip {
	border-radius: 14px;
}

.dai-shape-card,
.dai-asset-card {
	border-radius: 14px;
}

.dai-shape-card__icon,
.dai-icon-chip:hover {
	color: var(--dai-app-blue);
}

.dai-ai-image-box {
	margin: 18px 20px;
	padding: 18px;
	border-radius: 16px;
	background:
		linear-gradient(180deg, #ffffff, #f8fafc);
}

.dai-ai-image-box__label {
	color: var(--dai-app-text);
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0;
}

.dai-ai-image-box__prompt,
.dai-start-screen__prompt,
.dai-modal__textarea {
	border-radius: 12px;
	border-color: rgba(203, 213, 225, 0.88);
	color: var(--dai-app-text);
	background: #fff;
}

.dai-upload-dropzone {
	border-radius: 16px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.96));
}

.dai-upload-dropzone .dai-icon {
	width: 28px;
	height: 28px;
	color: var(--dai-app-blue);
}

.dai-layer-card.is-selected,
.dai-slide-thumb.is-active,
.dai-start-template.is-active {
	background: linear-gradient(180deg, #fff7ed, #fff);
	border-color: rgba(255, 100, 23, 0.42);
	box-shadow: 0 16px 34px rgba(255, 100, 23, 0.14);
}

.dai-canvas-area {
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 18px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(241, 245, 249, 0.78)),
		linear-gradient(rgba(148, 163, 184, 0.17) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.17) 1px, transparent 1px),
		#eef3f8;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.dai-canvas-area__surface {
	padding: 44px 50px 98px;
}

.dai-canvas-stage {
	border-radius: 14px;
	box-shadow:
		0 36px 100px rgba(15, 23, 42, 0.22),
		0 0 0 1px rgba(15, 23, 42, 0.08),
		inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.dai-canvas-stage__safe-area {
	border-color: rgba(16, 185, 129, 0.46);
}

.dai-zoom-control {
	right: 30px;
	bottom: 24px;
	height: 48px;
	background: rgba(255, 255, 255, 0.86);
	border-color: rgba(226, 232, 240, 0.9);
	box-shadow: var(--dai-app-shadow-sm);
	backdrop-filter: blur(18px);
}

.dai-zoom-control__button:hover {
	background: #f1f5f9;
}

.dai-start-screen {
	background:
		radial-gradient(circle at top left, rgba(37, 99, 235, 0.16), transparent 34%),
		radial-gradient(circle at bottom right, rgba(255, 100, 23, 0.16), transparent 34%),
		rgba(15, 23, 42, 0.5);
}

.dai-start-screen__panel,
.dai-modal__dialog {
	border-radius: 20px;
	border: 1px solid rgba(255, 255, 255, 0.72);
	background: rgba(255, 255, 255, 0.92);
	color: var(--dai-app-text);
	box-shadow: 0 38px 110px rgba(15, 23, 42, 0.32);
	backdrop-filter: blur(22px) saturate(1.16);
}

.dai-start-screen__panel {
	position: relative;
	overflow: hidden;
}

.dai-start-screen__panel::before {
	content: '';
	position: absolute;
	left: 28px;
	right: 28px;
	top: 0;
	height: 4px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--dai-app-orange), var(--dai-app-pink), var(--dai-app-blue));
}

.dai-start-screen__header {
	padding-bottom: 18px;
	margin-bottom: 18px;
	border-bottom: 1px solid rgba(226, 232, 240, 0.9);
}

.dai-start-screen__header h2,
.dai-modal__title {
	color: var(--dai-app-text);
	font-size: 34px;
	font-weight: 850;
}

.dai-start-screen__header p,
.dai-modal__copy,
.dai-start-template span {
	color: var(--dai-app-muted);
}

.dai-start-screen__label {
	color: #c2410c;
	letter-spacing: 0;
}

.dai-start-screen__link {
	color: var(--dai-app-blue);
	font-weight: 800;
}

.dai-modal__header,
.dai-modal__footer {
	border-color: rgba(226, 232, 240, 0.9);
}

.dai-modal__close {
	background: #f8fafc;
	color: #475569;
	border-color: rgba(203, 213, 225, 0.86);
}

.dai-notice {
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.92);
	border-color: rgba(255, 255, 255, 0.72);
	color: var(--dai-app-text);
	box-shadow: var(--dai-app-shadow-sm);
	backdrop-filter: blur(16px);
}

@media (max-width: 1280px) {
	.dai-sidebar {
		width: 390px;
		min-width: 340px;
	}

	.dai-studio-main {
		gap: 12px;
	}
}

@media (max-width: 1024px) {
	.dai-studio-main {
		padding: 12px;
	}

	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: 292px;
		min-height: 292px;
	}

	.dai-sidebar__rail {
		width: 100%;
	}

	.dai-rail-button {
		min-height: 68px;
	}

	.dai-rail-button::after {
		display: none;
	}

	.dai-rail-button.is-active {
		border-left-color: transparent;
		border-bottom-color: var(--dai-app-orange);
	}

	.dai-canvas-area {
		border-radius: 16px;
	}
}

@media (max-width: 780px) {

	.dai-studio-topbar,
	.dai-controlbar {
		margin-left: 10px;
		margin-right: 10px;
		border-radius: 14px;
	}

	.dai-studio-topbar {
		min-height: 0;
		padding: 12px;
	}

	.dai-controlbar {
		min-height: 62px;
	}

	.dai-controlbar__group {
		min-height: 42px;
		padding: 5px 10px;
	}

	.dai-studio-main {
		padding: 10px;
	}

	.dai-sidebar {
		height: 250px;
		min-height: 250px;
		border-radius: 14px;
	}

	.dai-sidebar__rail {
		min-height: 60px;
	}

	.dai-rail-button {
		min-width: 70px;
		min-height: 60px;
	}

	.dai-canvas-area {
		border-radius: 14px;
	}

	.dai-canvas-area__surface {
		padding: 22px 14px 78px;
	}

	.dai-start-screen__header h2,
	.dai-modal__title {
		font-size: 25px;
	}
}

@media (max-width: 520px) {
	.dai-studio-topbar__title-row>.dai-icon {
		width: 32px;
		height: 32px;
		border-radius: 10px;
	}

	.dai-studio-topbar__title {
		font-size: 14px;
	}

	.dai-topbar-button,
	.dai-export-button,
	.dai-status-pill {
		height: 38px;
	}

	.dai-sidebar {
		height: 236px;
		min-height: 236px;
	}

	.dai-rail-button {
		min-width: 54px;
	}

	.dai-start-screen__panel,
	.dai-modal__dialog {
		border-radius: 14px;
	}
}

/* Final hotfix: uploads visibility and working background color palette */
.dai-sidebar,
.dai-sidebar__content,
.dai-panel.is-active {
	min-height: 0;
}

.dai-sidebar__content {
	overflow: hidden;
}

.dai-sidebar__rail {
	overflow-y: auto !important;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(148, 163, 184, 0.42) transparent;
}

.dai-panel.is-active {
	width: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(148, 163, 184, 0.42) rgba(15, 23, 42, 0.42);
}

.dai-panel[data-dai-panel-view="uploads"] {
	padding-bottom: 18px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box {
	margin: 14px 18px 12px;
	padding: 14px;
	gap: 10px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box__prompt {
	min-height: 72px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-dropzone {
	min-height: 110px;
	margin-top: 12px;
	padding: 16px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-library {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: calc(100% - 40px);
	min-height: 44px;
	margin: 12px 20px 0;
	flex: 0 0 auto;
	white-space: normal;
	line-height: 1.25;
	text-align: center;
	opacity: 1;
	visibility: visible;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-list {
	min-height: 56px;
	padding-top: 12px;
	padding-bottom: 18px;
	overflow: visible;
}

.dai-canvas-swatch {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 38px;
	padding: 3px;
	border-radius: 10px;
	border: 1px solid rgba(148, 163, 184, 0.3);
	background:
		linear-gradient(45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(-45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		linear-gradient(-45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		rgba(15, 23, 42, 0.92);
	background-position: 0 0, 0 8px, 8px -8px, -8px 0;
	background-size: 16px 16px;
	box-sizing: border-box;
	cursor: pointer;
}

.dai-canvas-swatch input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.dai-canvas-swatch__preview {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 7px;
	background: var(--dai-canvas-bg, #ffffff);
	box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.24), 0 0 0 1px rgba(255, 255, 255, 0.1);
}

.dai-color-stack {
	min-width: 106px;
	gap: 8px;
}

.dai-color-chip {
	width: 44px;
	height: 32px;
	border-radius: 9px;
	border-color: rgba(148, 163, 184, 0.32);
	background:
		linear-gradient(45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(-45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		linear-gradient(-45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		rgba(15, 23, 42, 0.92);
	background-position: 0 0, 0 8px, 8px -8px, -8px 0;
	background-size: 16px 16px;
}

.dai-color-chip__swatch {
	border-radius: 8px;
	box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.24);
}

.dai-canvas-toggle {
	min-width: 76px;
}

@media (min-width: 1025px) {

	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100vh - 184px);
	}
}

@media (max-width: 1024px) {
	.dai-sidebar__rail {
		overflow-x: auto !important;
		overflow-y: hidden !important;
	}

	.dai-sidebar {
		height: min(340px, 38vh);
		min-height: 280px;
	}

	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100% - 62px);
	}
}

@media (max-width: 780px) {
	.dai-sidebar {
		height: min(330px, 40vh);
		min-height: 260px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box__prompt {
		min-height: 64px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-upload-dropzone {
		min-height: 104px;
	}
}

@media (max-width: 520px) {
	.dai-sidebar {
		height: min(320px, 42vh);
		min-height: 250px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-upload-library {
		width: calc(100% - 24px);
		margin-left: 12px;
		margin-right: 12px;
	}
}

/* Absolute final override: keep Uploads reachable at 100% zoom */
.dai-sidebar,
.dai-sidebar__content,
.dai-panel,
.dai-panel.is-active {
	min-height: 0;
}

.dai-sidebar__rail {
	overflow-y: auto !important;
	overflow-x: hidden;
	scrollbar-width: thin;
}

.dai-sidebar__content {
	overflow: hidden;
}

.dai-sidebar__rail {
	overflow-y: auto !important;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(148, 163, 184, 0.42) transparent;
}

.dai-panel.is-active {
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

.dai-panel[data-dai-panel-view="uploads"].is-active {
	display: flex;
	flex-direction: column;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-panel__header {
	position: sticky;
	top: 0;
	z-index: 4;
	background: linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(15, 23, 42, 0.9));
	backdrop-filter: blur(14px);
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-library,
.dai-panel[data-dai-panel-view="uploads"] .dai-upload-dropzone,
.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box {
	flex-shrink: 0;
}

@media (min-width: 1025px) {

	.dai-sidebar,
	.dai-sidebar__rail,
	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100vh - 176px);
	}
}

@media (max-width: 1024px) {
	.dai-sidebar__rail {
		overflow-x: auto !important;
		overflow-y: hidden !important;
	}

	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100% - 62px);
	}
}

/* Uploads panel clipping fix */
.dai-sidebar {
	min-height: 0;
}

.dai-sidebar__rail {
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(148, 163, 184, 0.42) transparent;
}

.dai-sidebar__rail::-webkit-scrollbar {
	width: 3px;
	height: 6px;
}

.dai-sidebar__rail::-webkit-scrollbar-thumb {
	background: rgba(148, 163, 184, 0.42);
	border-radius: 999px;
}

.dai-sidebar__content {
	min-height: 0;
	overflow: hidden;
}

.dai-panel {
	min-height: 0;
}

.dai-panel.is-active {
	min-height: 0;
	overflow-y: auto !important;
	overflow-x: hidden;
}

.dai-panel[data-dai-panel-view="uploads"].is-active {
	display: flex;
	flex-direction: column;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-panel__header {
	position: sticky;
	top: 0;
	z-index: 3;
	padding-bottom: 10px;
	background: linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(15, 23, 42, 0.86));
	backdrop-filter: blur(14px);
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-library,
.dai-panel[data-dai-panel-view="uploads"] .dai-upload-dropzone {
	flex-shrink: 0;
}

@media (min-width: 1025px) {

	.dai-sidebar,
	.dai-sidebar__rail,
	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100vh - 176px);
	}
}

@media (max-width: 1024px) {
	.dai-sidebar__rail {
		overflow-x: auto;
		overflow-y: hidden;
	}

	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100% - 62px);
	}
}

/* Visibility fixes: uploads panel and canvas background palette */
.dai-sidebar,
.dai-sidebar__content,
.dai-panel.is-active {
	min-height: 0;
}

.dai-sidebar__content {
	overflow: hidden;
}

.dai-sidebar__rail {
	overflow-y: auto !important;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(148, 163, 184, 0.42) transparent;
}

.dai-panel.is-active {
	width: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(148, 163, 184, 0.42) rgba(15, 23, 42, 0.42);
}

.dai-panel.is-active::-webkit-scrollbar {
	width: 3px;
}

.dai-panel.is-active::-webkit-scrollbar-track {
	background: rgba(15, 23, 42, 0.42);
}

.dai-panel.is-active::-webkit-scrollbar-thumb {
	background: rgba(148, 163, 184, 0.42);
	border-radius: 999px;
}

.dai-panel[data-dai-panel-view="uploads"] {
	padding-bottom: 18px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box {
	margin: 14px 18px 12px;
	padding: 14px;
	gap: 10px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box__prompt {
	min-height: 74px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-dropzone {
	min-height: 118px;
	margin-top: 12px;
	padding: 16px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-library {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: calc(100% - 40px);
	min-height: 44px;
	margin: 12px 20px 0;
	flex: 0 0 auto;
	white-space: normal;
	line-height: 1.25;
	text-align: center;
	opacity: 1;
	visibility: visible;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-list {
	min-height: 56px;
	max-height: none;
	padding-top: 12px;
	padding-bottom: 18px;
	overflow: visible;
}

.dai-canvas-swatch {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 38px;
	padding: 3px;
	border-radius: 10px;
	border: 1px solid rgba(148, 163, 184, 0.28);
	background:
		linear-gradient(45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(-45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		linear-gradient(-45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		rgba(15, 23, 42, 0.9);
	background-position: 0 0, 0 8px, 8px -8px, -8px 0;
	background-size: 16px 16px;
	box-sizing: border-box;
	cursor: pointer;
}

.dai-canvas-swatch input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.dai-canvas-swatch__preview {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 7px;
	background: var(--dai-canvas-bg, #ffffff);
	box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.22), 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.dai-color-stack {
	min-width: 106px;
	gap: 8px;
}

.dai-color-chip {
	width: 44px;
	height: 32px;
	border-radius: 9px;
	border-color: rgba(148, 163, 184, 0.32);
	background:
		linear-gradient(45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(-45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		linear-gradient(-45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		rgba(15, 23, 42, 0.9);
	background-position: 0 0, 0 8px, 8px -8px, -8px 0;
	background-size: 16px 16px;
}

.dai-color-chip__swatch {
	border-radius: 8px;
	box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.24);
}

.dai-canvas-toggle {
	min-width: 76px;
}

@media (min-width: 1025px) {
	.dai-sidebar {
		height: auto;
	}

	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100vh - 184px);
	}
}

@media (max-width: 1024px) {
	.dai-sidebar__rail {
		overflow-x: auto !important;
		overflow-y: hidden !important;
	}

	.dai-sidebar {
		height: min(340px, 38vh);
		min-height: 280px;
	}

	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100% - 62px);
	}
}

@media (max-width: 780px) {
	.dai-sidebar {
		height: min(330px, 40vh);
		min-height: 260px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box__prompt {
		min-height: 64px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-upload-dropzone {
		min-height: 104px;
	}
}

@media (max-width: 520px) {
	.dai-sidebar {
		height: min(320px, 42vh);
		min-height: 250px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-upload-library {
		width: calc(100% - 24px);
		margin-left: 12px;
		margin-right: 12px;
	}
}

/* New responsive dark studio design */
body.dreams-ai-design-studio-page {
	--dai-new-bg: #050712;
	--dai-new-shell: #080c18;
	--dai-new-panel: #0f172a;
	--dai-new-panel-2: #151f34;
	--dai-new-panel-3: #1d2940;
	--dai-new-line: rgba(148, 163, 184, 0.18);
	--dai-new-line-strong: rgba(148, 163, 184, 0.32);
	--dai-new-text: #f8fafc;
	--dai-new-muted: #9aa7ba;
	--dai-new-soft: #cbd5e1;
	--dai-new-orange: #ff7a18;
	--dai-new-coral: #fb4b72;
	--dai-new-violet: #8b5cf6;
	--dai-new-cyan: #38bdf8;
	--dai-new-green: #34d399;
	--dai-new-shadow: 0 28px 86px rgba(0, 0, 0, 0.48);
	--dai-new-shadow-sm: 0 16px 38px rgba(0, 0, 0, 0.3);
	background:
		radial-gradient(circle at 18% 0%, rgba(56, 189, 248, 0.18), transparent 30%),
		radial-gradient(circle at 88% 12%, rgba(251, 75, 114, 0.16), transparent 34%),
		linear-gradient(180deg, #0b1020 0%, #050712 64%, #03050d 100%);
	color: var(--dai-new-text);
}

.dai-studio-shell {
	display: flex;
	gap: 0;
	background:
		linear-gradient(rgba(148, 163, 184, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.045) 1px, transparent 1px),
		transparent;
	background-size: 36px 36px;
	padding: 12px;
	box-sizing: border-box;
}

.dai-studio-topbar,
.dai-controlbar,
.dai-sidebar,
.dai-canvas-area,
.dai-slide-rail {
	border: 1px solid var(--dai-new-line);
	background: rgba(15, 23, 42, 0.86);
	color: var(--dai-new-text);
	box-shadow: var(--dai-new-shadow-sm);
	backdrop-filter: blur(22px) saturate(1.14);
}

.dai-studio-topbar {
	min-height: 68px;
	margin: 0;
	padding: 10px 16px;
	border-radius: 20px 20px 0 0;
	border-bottom-color: rgba(148, 163, 184, 0.12);
}

.dai-studio-topbar::before {
	content: '';
	position: absolute;
	left: 16px;
	right: 16px;
	bottom: -1px;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(255, 122, 24, 0.7), rgba(56, 189, 248, 0.55), transparent);
}

.dai-studio-topbar__brand {
	gap: 14px;
	min-width: 0;
}

.dai-studio-topbar__title-row {
	gap: 12px;
}

.dai-studio-topbar__title-row>.dai-icon {
	width: 38px;
	height: 38px;
	border-radius: 12px;
	background:
		linear-gradient(135deg, rgba(255, 122, 24, 0.24), rgba(56, 189, 248, 0.16)),
		rgba(8, 12, 24, 0.86);
	color: #ffb26f;
	box-shadow: inset 0 0 0 1px rgba(255, 122, 24, 0.24);
}

.dai-studio-topbar__title {
	color: var(--dai-new-text);
	font-size: 16px;
	font-weight: 850;
}

.dai-studio-topbar__meta {
	color: var(--dai-new-muted);
}

.dai-studio-topbar__divider {
	background: var(--dai-new-line);
}

.dai-studio-topbar__actions {
	gap: 8px;
}

.dai-icon-button--ghost,
.dai-topbar-button,
.dai-status-pill,
.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack,
.dai-layer-button,
.dai-slide-rail__add,
.dai-slide-thumb__actions button {
	border-color: var(--dai-new-line);
	background: rgba(30, 41, 59, 0.82);
	color: var(--dai-new-soft);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.dai-icon-button--ghost:hover,
.dai-topbar-button:hover,
.dai-tool-button:hover,
.dai-action-button:hover,
.dai-clear-button:hover,
.dai-layer-button:hover,
.dai-slide-rail__add:hover {
	background: rgba(51, 65, 85, 0.92);
	border-color: var(--dai-new-line-strong);
	color: #fff;
}

.dai-status-pill {
	height: 38px;
	color: var(--dai-new-muted);
}

.dai-status-pill__dot {
	background: var(--dai-new-green);
	box-shadow: 0 0 0 5px rgba(52, 211, 153, 0.13);
}

.dai-export-button,
.dai-upload-library--primary,
.dai-action-button:not(.dai-action-button--muted),
.dai-start-screen__actions .dai-action-button,
.dai-modal__footer .dai-action-button:not(.dai-action-button--muted) {
	border-color: transparent;
	background: linear-gradient(135deg, var(--dai-new-orange), var(--dai-new-coral) 52%, var(--dai-new-violet));
	color: #fff;
	box-shadow: 0 18px 38px rgba(251, 75, 114, 0.22);
}

.dai-export-button {
	height: 42px;
	border-radius: 12px;
}

.dai-studio-workspace {
	min-height: 0;
	overflow: hidden;
}

.dai-controlbar {
	min-height: 66px;
	margin: 0;
	padding: 10px;
	border-top: 0;
	border-radius: 0;
	box-shadow: none;
	overflow-x: auto;
}

.dai-controlbar__view {
	gap: 8px;
	min-width: max-content;
}

.dai-controlbar__group {
	min-height: 44px;
	gap: 8px;
	padding: 6px 10px;
	border: 1px solid rgba(148, 163, 184, 0.14);
	border-radius: 12px;
	background: rgba(8, 12, 24, 0.58);
}

.dai-controlbar__group--label {
	background: linear-gradient(135deg, rgba(255, 122, 24, 0.2), rgba(56, 189, 248, 0.12));
	border-color: rgba(255, 122, 24, 0.26);
}

.dai-controlbar__title,
.dai-controlbar__section-label {
	color: var(--dai-new-muted);
	letter-spacing: 0;
	font-size: 11px;
}

.dai-controlbar__section-label--active {
	color: #fff;
}

.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack {
	height: 32px;
	border-radius: 8px;
}

.dai-field select,
.dai-field input {
	color: var(--dai-new-text);
}

.dai-field span,
.dai-field small,
.dai-color-stack__label {
	color: var(--dai-new-muted);
}

.dai-tool-button--active,
.dai-tool-button:hover {
	background: rgba(255, 122, 24, 0.16);
	border-color: rgba(255, 122, 24, 0.44);
	color: #ffb26f;
	box-shadow: 0 10px 20px rgba(255, 122, 24, 0.12);
}

.dai-studio-main {
	gap: 12px;
	padding: 12px 0 0;
	background: transparent;
}

.dai-sidebar {
	width: clamp(340px, 28vw, 460px);
	min-width: 340px;
	border-radius: 0 0 0 20px;
	overflow: hidden;
	box-shadow: var(--dai-new-shadow-sm);
}

.dai-sidebar__rail {
	width: 86px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent),
		#060a14;
	border-right: 1px solid rgba(148, 163, 184, 0.12);
}

.dai-rail-button {
	min-height: 74px;
	color: #8997ad;
	font-weight: 750;
}

.dai-rail-button:hover {
	background: rgba(255, 255, 255, 0.06);
	color: #fff;
}

.dai-rail-button.is-active {
	background:
		linear-gradient(90deg, rgba(255, 122, 24, 0.26), rgba(56, 189, 248, 0.1)),
		rgba(255, 255, 255, 0.05);
	border-left-color: var(--dai-new-orange);
	color: #fff;
}

.dai-rail-button.is-active .dai-icon {
	color: #ffb26f;
}

.dai-sidebar__content {
	background: linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(8, 12, 24, 0.98));
}

.dai-panel__header {
	padding: 18px 18px 4px;
}

.dai-sidebar__title {
	color: var(--dai-new-text);
	font-size: 22px;
	font-weight: 850;
}

.dai-panel,
.dai-ai-image-box__label,
.dai-preset-card__text,
.dai-layer-card__copy strong,
.dai-upload-thumb__meta strong,
.dai-slide-thumb__title,
.dai-slide-rail__header h2 {
	color: var(--dai-new-text);
}

.dai-panel__hint,
.dai-preset-card--body .dai-preset-card__text,
.dai-upload-dropzone span:last-child,
.dai-upload-thumb__meta span,
.dai-layer-card__copy span,
.dai-slide-thumb__meta,
.dai-start-template span,
.dai-modal__copy,
.dai-start-screen__header p {
	color: var(--dai-new-muted);
}

.dai-preset-card,
.dai-start-template,
.dai-shape-card,
.dai-asset-card,
.dai-upload-thumb,
.dai-layer-card,
.dai-slide-thumb,
.dai-ai-image-box,
.dai-upload-dropzone,
.dai-upload-library,
.dai-icon-chip,
.dai-search-field {
	border: 1px solid rgba(148, 163, 184, 0.16);
	border-radius: 14px;
	background: rgba(30, 41, 59, 0.68);
	color: var(--dai-new-text);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

.dai-preset-card,
.dai-ai-image-box,
.dai-upload-dropzone {
	background: linear-gradient(180deg, rgba(30, 41, 59, 0.78), rgba(15, 23, 42, 0.82));
}

.dai-preset-card {
	min-height: 60px;
	padding: 0 14px 0 18px;
}

.dai-preset-card::before {
	background: linear-gradient(180deg, var(--dai-new-orange), var(--dai-new-coral));
}

.dai-preset-card:hover,
.dai-start-template:hover,
.dai-shape-card:hover,
.dai-asset-card:hover,
.dai-upload-thumb:hover,
.dai-layer-card:hover,
.dai-slide-thumb:hover,
.dai-upload-dropzone:hover,
.dai-upload-library:hover,
.dai-icon-chip:hover {
	filter: none;
	border-color: rgba(56, 189, 248, 0.36);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.3);
	transform: translateY(-1px);
}

.dai-search-field {
	height: 48px;
	margin: 14px 18px 0;
	background: rgba(8, 12, 24, 0.7);
}

.dai-search-field input,
.dai-ai-image-box__prompt,
.dai-start-screen__prompt,
.dai-modal__textarea {
	color: var(--dai-new-text);
}

.dai-search-field input::placeholder,
.dai-ai-image-box__prompt::placeholder,
.dai-start-screen__prompt::placeholder {
	color: #76859a;
}

.dai-ai-image-box__prompt,
.dai-start-screen__prompt,
.dai-modal__textarea {
	border-color: rgba(148, 163, 184, 0.18);
	background: rgba(5, 7, 18, 0.72);
}

.dai-icon-chip,
.dai-shape-card__icon {
	color: var(--dai-new-cyan);
}

.dai-layer-card.is-selected,
.dai-slide-thumb.is-active,
.dai-start-template.is-active {
	background: linear-gradient(180deg, rgba(255, 122, 24, 0.2), rgba(30, 41, 59, 0.72));
	border-color: rgba(255, 122, 24, 0.48);
	box-shadow: 0 18px 36px rgba(255, 122, 24, 0.12);
}

.dai-slide-rail {
	border-radius: 0;
	background: rgba(15, 23, 42, 0.9);
}

.dai-canvas-area {
	border-radius: 0 0 20px 0;
	background:
		linear-gradient(180deg, rgba(15, 23, 42, 0.74), rgba(5, 7, 18, 0.86)),
		linear-gradient(rgba(148, 163, 184, 0.08) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.08) 1px, transparent 1px),
		#060a14;
	background-size: auto, 28px 28px, 28px 28px, auto;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.dai-canvas-area__surface {
	padding: clamp(18px, 3vw, 46px) clamp(14px, 3vw, 52px) 96px;
}

.dai-canvas-stage {
	border-radius: 16px;
	background: #fff;
	box-shadow:
		0 42px 120px rgba(0, 0, 0, 0.48),
		0 0 0 1px rgba(255, 255, 255, 0.08);
}

.dai-canvas-stage__grid {
	opacity: 0.16;
}

.dai-canvas-stage__safe-area {
	border-color: rgba(52, 211, 153, 0.52);
}

.dai-zoom-control {
	right: 28px;
	bottom: 22px;
	height: 48px;
	border-color: rgba(148, 163, 184, 0.18);
	background: rgba(15, 23, 42, 0.86);
	color: var(--dai-new-text);
	box-shadow: var(--dai-new-shadow-sm);
	backdrop-filter: blur(18px);
}

.dai-zoom-control__button,
.dai-zoom-control__value {
	color: var(--dai-new-text);
}

.dai-zoom-control__button:hover {
	background: rgba(51, 65, 85, 0.72);
}

.dai-start-screen {
	background:
		radial-gradient(circle at top left, rgba(56, 189, 248, 0.18), transparent 34%),
		radial-gradient(circle at bottom right, rgba(251, 75, 114, 0.17), transparent 34%),
		rgba(3, 7, 18, 0.76);
}

.dai-start-screen__panel,
.dai-modal__dialog {
	border: 1px solid rgba(148, 163, 184, 0.2);
	border-radius: 22px;
	background: rgba(15, 23, 42, 0.94);
	color: var(--dai-new-text);
	box-shadow: var(--dai-new-shadow);
	backdrop-filter: blur(24px) saturate(1.12);
}

.dai-start-screen__panel::before {
	background: linear-gradient(90deg, var(--dai-new-orange), var(--dai-new-coral), var(--dai-new-cyan));
}

.dai-start-screen__header,
.dai-modal__header,
.dai-modal__footer {
	border-color: rgba(148, 163, 184, 0.16);
}

.dai-start-screen__header h2,
.dai-modal__title {
	color: var(--dai-new-text);
}

.dai-start-screen__label {
	color: #ffb26f;
	letter-spacing: 0;
}

.dai-start-screen__link {
	color: #93c5fd;
}

.dai-modal__close {
	background: rgba(30, 41, 59, 0.86);
	border-color: rgba(148, 163, 184, 0.18);
	color: var(--dai-new-soft);
}

.dai-notice {
	border-color: rgba(148, 163, 184, 0.18);
	background: rgba(15, 23, 42, 0.94);
	color: var(--dai-new-text);
	box-shadow: var(--dai-new-shadow-sm);
}

@media (min-width: 1440px) {
	.dai-studio-shell {
		padding: 16px;
	}

	.dai-sidebar {
		width: 460px;
		min-width: 460px;
	}

	.dai-sidebar__rail {
		width: 92px;
	}
}

@media (max-width: 1024px) {
	.dai-studio-shell {
		padding: 10px;
	}

	.dai-studio-topbar {
		border-radius: 18px 18px 0 0;
	}

	.dai-studio-main {
		flex-direction: column;
		gap: 10px;
		padding-top: 10px;
	}

	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: 280px;
		min-height: 280px;
		border-radius: 0;
	}

	.dai-sidebar__rail {
		width: 100%;
		min-height: 62px;
		flex-direction: row;
		overflow-x: auto;
		overflow-y: hidden;
		border-right: 0;
		border-bottom: 1px solid rgba(148, 163, 184, 0.12);
	}

	.dai-rail-button {
		min-width: 82px;
		min-height: 62px;
		border-left: 0;
		border-bottom: 3px solid transparent;
	}

	.dai-rail-button.is-active {
		border-left-color: transparent;
		border-bottom-color: var(--dai-new-orange);
	}

	.dai-canvas-area {
		min-height: 360px;
		border-radius: 0 0 18px 18px;
	}
}

@media (max-width: 780px) {
	.dai-studio-shell {
		padding: 8px;
	}

	.dai-studio-topbar {
		min-height: 0;
		padding: 10px;
	}

	.dai-studio-topbar__brand,
	.dai-studio-topbar__actions {
		width: 100%;
	}

	.dai-studio-topbar__actions {
		overflow-x: auto;
		padding-bottom: 2px;
	}

	.dai-controlbar {
		min-height: 60px;
		padding: 8px;
	}

	.dai-controlbar__group {
		min-height: 40px;
		padding: 5px 8px;
	}

	.dai-sidebar {
		height: 246px;
		min-height: 246px;
	}

	.dai-sidebar__rail {
		min-height: 56px;
	}

	.dai-rail-button {
		min-width: 68px;
		min-height: 56px;
		font-size: 11px;
	}

	.dai-sidebar__title {
		font-size: 19px;
	}

	.dai-canvas-area__surface {
		padding: 18px 12px 76px;
	}

	.dai-zoom-control {
		right: 12px;
		bottom: 12px;
		height: 42px;
	}
}

@media (max-width: 520px) {

	.dai-studio-topbar__divider,
	.dai-status-pill {
		display: none;
	}

	.dai-studio-topbar__title-row>.dai-icon {
		width: 32px;
		height: 32px;
	}

	.dai-studio-topbar__title {
		font-size: 14px;
	}

	.dai-topbar-button,
	.dai-export-button {
		height: 38px;
	}

	.dai-sidebar {
		height: 230px;
		min-height: 230px;
	}

	.dai-rail-button span:last-child {
		display: none;
	}

	.dai-rail-button {
		min-width: 52px;
	}

	.dai-start-screen__panel,
	.dai-modal__dialog {
		border-radius: 16px;
	}
}

/* Large Desktop (1440px and above) */
@media (min-width: 1440px) {
	.dai-studio-topbar {
		min-height: 80px;
		padding: 0 32px 0 28px;
	}

	.dai-studio-topbar__title {
		font-size: 18px;
		width: min(480px, 36vw);
	}

	.dai-controlbar {
		min-height: 80px;
		padding: 0 20px;
	}

	.dai-sidebar {
		width: 560px;
		min-width: 560px;
	}

	.dai-sidebar__rail {
		width: 110px;
	}

	.dai-rail-button {
		min-height: 96px;
		font-size: 14px;
	}

	.dai-canvas-stage {
		width: 1400px;
		height: 1984px;
	}

	.dai-start-screen__panel {
		padding: 36px;
	}

	.dai-start-screen__header h2 {
		font-size: 40px;
	}

	.dai-start-screen__templates {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 18px;
	}

	.dai-modal__dialog {
		width: min(100%, 640px);
	}

	.dai-modal__title {
		font-size: 24px;
	}
}

/* Desktop (1024px - 1439px) */
@media (min-width: 1024px) and (max-width: 1439px) {
	.dai-studio-topbar {
		min-height: 72px;
		padding: 0 24px 0 20px;
	}

	.dai-studio-topbar__title {
		font-size: 16px;
	}

	.dai-controlbar {
		min-height: 72px;
		padding: 0 16px;
	}

	.dai-sidebar {
		width: 480px;
		min-width: 480px;
	}

	.dai-sidebar__rail {
		width: 100px;
	}

	.dai-rail-button {
		min-height: 88px;
	}

	.dai-canvas-stage {
		width: 1240px;
		height: 1754px;
	}

	.dai-start-screen__panel {
		padding: 28px;
	}

	.dai-start-screen__header h2 {
		font-size: 34px;
	}

	.dai-start-screen__templates {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 14px;
	}
}

/* Tablet Landscape (768px - 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
	.dai-studio-topbar {
		min-height: 64px;
		padding: 0 18px 0 14px;
	}

	.dai-studio-topbar__title {
		font-size: 15px;
		width: min(360px, 40vw);
	}

	.dai-studio-topbar__meta {
		font-size: 11px;
	}

	.dai-controlbar {
		min-height: 64px;
		padding: 0 12px;
	}

	.dai-controlbar__group {
		padding-right: 12px;
	}

	.dai-tool-button,
	.dai-action-button {
		height: 36px;
		font-size: 14px;
		padding: 0 12px;
	}

	.dai-sidebar {
		width: 420px;
		min-width: 420px;
	}

	.dai-sidebar__rail {
		width: 88px;
	}

	.dai-rail-button {
		min-height: 80px;
		font-size: 12px;
		padding: 12px 6px;
	}

	.dai-canvas-stage {
		width: 1000px;
		height: 1414px;
	}

	.dai-canvas-area__surface {
		padding: 20px 24px 64px;
	}

	.dai-start-screen__panel {
		padding: 24px;
		margin: 20px;
	}

	.dai-start-screen__header h2 {
		font-size: 28px;
	}

	.dai-start-screen__templates {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 12px;
	}

	.dai-start-screen__prompt {
		min-height: 120px;
		padding: 16px 18px;
	}

	.dai-modal__dialog {
		width: min(100%, 520px);
	}

	.dai-modal__title {
		font-size: 18px;
	}

	.dai-modal__body {
		padding: 18px;
	}

	.dai-modal__textarea {
		min-height: 110px;
	}
}

/* Tablet Portrait (600px - 767px) */
@media (min-width: 600px) and (max-width: 767px) {
	.dai-studio-topbar {
		min-height: 60px;
		padding: 0 16px 0 12px;
	}

	.dai-studio-topbar__brand {
		gap: 12px;
	}

	.dai-studio-topbar__title {
		font-size: 14px;
		width: min(280px, 45vw);
	}

	.dai-studio-topbar__meta {
		display: none;
	}

	.dai-studio-topbar__actions {
		gap: 12px;
	}

	.dai-status-pill {
		height: 32px;
		padding: 0 12px;
		font-size: 12px;
	}

	.dai-export-button {
		height: 44px;
		padding: 0 16px;
		font-size: 14px;
	}

	.dai-controlbar {
		min-height: 60px;
		padding: 0 10px;
	}

	.dai-controlbar__group {
		padding-right: 10px;
	}

	.dai-tool-button,
	.dai-action-button {
		height: 34px;
		font-size: 13px;
		padding: 0 10px;
	}

	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: 260px;
		min-height: 260px;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.dai-sidebar__rail {
		width: 100%;
		flex-direction: row;
		height: 52px;
	}

	.dai-rail-button {
		flex-direction: row;
		min-height: auto;
		height: 100%;
		padding: 0 12px;
		border-left: 0;
		border-bottom: 4px solid transparent;
		gap: 8px;
	}

	.dai-rail-button.is-active {
		border-left-color: transparent;
		border-bottom-color: #ff7d19;
		background: rgba(255, 122, 24, 0.08);
	}

	.dai-canvas-stage {
		width: 800px;
		height: 1131px;
	}

	.dai-canvas-area__surface {
		padding: 18px 20px 72px;
	}

	.dai-start-screen__panel {
		padding: 20px;
		margin: 16px;
	}

	.dai-start-screen__header h2 {
		font-size: 24px;
	}

	.dai-start-screen__templates {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.dai-start-screen__prompt {
		min-height: 110px;
		padding: 14px 16px;
	}

	.dai-start-screen__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.dai-modal__dialog {
		width: min(100%, 480px);
	}

	.dai-modal__title {
		font-size: 16px;
	}

	.dai-modal__body {
		padding: 16px;
	}

	.dai-modal__textarea {
		min-height: 100px;
	}
}

/* Mobile Landscape (480px - 599px) */
@media (min-width: 480px) and (max-width: 599px) {
	.dai-studio-topbar {
		min-height: 56px;
		padding: 0 14px 0 10px;
	}

	.dai-studio-topbar__brand {
		gap: 10px;
	}

	.dai-studio-topbar__title {
		font-size: 13px;
		width: min(240px, 50vw);
	}

	.dai-studio-topbar__meta {
		display: none;
	}

	.dai-studio-topbar__actions {
		gap: 10px;
	}

	.dai-status-pill {
		display: none;
	}

	.dai-export-button {
		height: 40px;
		padding: 0 14px;
		font-size: 13px;
	}

	.dai-controlbar {
		min-height: 56px;
		padding: 0 8px;
	}

	.dai-controlbar__group {
		padding-right: 8px;
	}

	.dai-controlbar__title,
	.dai-controlbar__section-label {
		font-size: 11px;
	}

	.dai-tool-button,
	.dai-action-button {
		height: 32px;
		font-size: 12px;
		padding: 0 8px;
	}

	.dai-tool-button--wide {
		min-width: 80px;
	}

	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: 240px;
		min-height: 240px;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.dai-sidebar__rail {
		width: 100%;
		flex-direction: row;
		height: 48px;
	}

	.dai-rail-button {
		flex-direction: row;
		min-height: auto;
		height: 100%;
		padding: 0 10px;
		border-left: 0;
		border-bottom: 4px solid transparent;
		gap: 6px;
		font-size: 11px;
	}

	.dai-rail-button.is-active {
		border-left-color: transparent;
		border-bottom-color: #ff7d19;
		background: rgba(255, 122, 24, 0.08);
	}

	.dai-canvas-stage {
		width: 640px;
		height: 905px;
	}

	.dai-canvas-area__surface {
		padding: 16px 18px 76px;
	}

	.dai-start-screen__panel {
		padding: 18px;
		margin: 14px;
	}

	.dai-start-screen__header h2 {
		font-size: 22px;
	}

	.dai-start-screen__templates {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.dai-start-template {
		padding: 14px 12px;
	}

	.dai-start-screen__prompt {
		min-height: 100px;
		padding: 12px 14px;
	}

	.dai-start-screen__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.dai-modal__dialog {
		width: min(100%, 440px);
	}

	.dai-modal__title {
		font-size: 15px;
	}

	.dai-modal__body {
		padding: 14px;
	}

	.dai-modal__textarea {
		min-height: 90px;
	}
}

/* Mobile Portrait (max-width: 479px) */
@media (max-width: 479px) {
	.dai-studio-topbar {
		min-height: 52px;
		padding: 0 12px 0 8px;
	}

	.dai-studio-topbar__brand {
		gap: 8px;
	}

	.dai-studio-topbar__title {
		font-size: 12px;
		width: min(200px, 55vw);
	}

	.dai-studio-topbar__meta {
		display: none;
	}

	.dai-studio-topbar__actions {
		gap: 8px;
	}

	.dai-status-pill {
		display: none;
	}

	.dai-export-button {
		height: 38px;
		padding: 0 12px;
		font-size: 12px;
	}

	.dai-topbar-button {
		height: 36px;
		padding: 0 12px;
		font-size: 12px;
	}

	.dai-controlbar {
		min-height: 52px;
		padding: 0 6px;
	}

	.dai-controlbar__group {
		padding-right: 6px;
	}

	.dai-controlbar__title,
	.dai-controlbar__section-label {
		font-size: 10px;
	}

	.dai-tool-button,
	.dai-action-button {
		height: 30px;
		font-size: 11px;
		padding: 0 6px;
	}

	.dai-tool-button--wide {
		min-width: 70px;
	}

	.dai-field {
		height: 34px;
		padding: 0 8px;
	}

	.dai-field--select {
		width: 120px;
	}

	.dai-field--size {
		width: 100px;
	}

	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: 220px;
		min-height: 220px;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.dai-sidebar__rail {
		width: 100%;
		flex-direction: row;
		height: 44px;
	}

	.dai-rail-button {
		flex-direction: row;
		min-height: auto;
		height: 100%;
		padding: 0 8px;
		border-left: 0;
		border-bottom: 4px solid transparent;
		gap: 4px;
		font-size: 10px;
	}

	.dai-rail-button.is-active {
		border-left-color: transparent;
		border-bottom-color: #ff7d19;
		background: rgba(255, 122, 24, 0.08);
	}

	.dai-canvas-stage {
		width: 480px;
		height: 678px;
	}

	.dai-canvas-area__surface {
		padding: 14px 16px 80px;
	}

	.dai-start-screen__panel {
		padding: 16px;
		margin: 12px;
	}

	.dai-start-screen__header h2 {
		font-size: 20px;
	}

	.dai-start-screen__header p {
		font-size: 14px;
	}

	.dai-start-screen__templates {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.dai-start-template {
		padding: 12px 10px;
	}

	.dai-start-template span {
		font-size: 11px;
	}

	.dai-start-screen__label {
		font-size: 12px;
	}

	.dai-start-screen__prompt {
		min-height: 90px;
		padding: 10px 12px;
		font-size: 13px;
	}

	.dai-start-screen__actions {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	.dai-start-screen__link {
		font-size: 13px;
	}

	.dai-modal {
		padding: 16px;
	}

	.dai-modal__dialog {
		width: 100%;
		border-radius: 16px;
	}

	.dai-modal__header,
	.dai-modal__footer {
		padding: 14px 16px;
	}

	.dai-modal__title {
		font-size: 14px;
	}

	.dai-modal__body {
		padding: 14px;
	}

	.dai-modal__copy {
		font-size: 13px;
	}

	.dai-modal__textarea {
		min-height: 80px;
		padding: 12px 14px;
		font-size: 13px;
	}

	.dai-modal__close {
		width: 32px;
		height: 32px;
		font-size: 18px;
	}

	.dai-studio-notices {
		top: 80px;
		right: 12px;
		max-width: 300px;
	}

	.dai-notice {
		padding: 12px 14px;
		font-size: 12px;
	}
}

/* Touch device optimizations */
@media (hover: none) and (pointer: coarse) {

	.dai-tool-button:hover,
	.dai-action-button:hover,
	.dai-icon-button:hover,
	.dai-rail-button:hover,
	.dai-preset-card:hover,
	.dai-icon-chip:hover,
	.dai-shape-card:hover,
	.dai-asset-card:hover,
	.dai-upload-thumb:hover,
	.dai-layer-button:hover {
		filter: none;
	}

	.dai-tool-button:active,
	.dai-action-button:active,
	.dai-icon-button:active,
	.dai-rail-button:active,
	.dai-preset-card:active,
	.dai-icon-chip:active,
	.dai-shape-card:active,
	.dai-asset-card:active,
	.dai-upload-thumb:active,
	.dai-layer-button:active {
		filter: brightness(0.9);
		transform: scale(0.98);
	}

	.dai-tool-button,
	.dai-action-button,
	.dai-icon-button,
	.dai-rail-button,
	.dai-preset-card,
	.dai-icon-chip,
	.dai-shape-card,
	.dai-asset-card,
	.dai-upload-thumb,
	.dai-layer-button {
		-webkit-tap-highlight-color: transparent;
	}
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {

	.dai-tool-button,
	.dai-action-button,
	.dai-icon-button,
	.dai-rail-button,
	.dai-preset-card,
	.dai-icon-chip,
	.dai-shape-card,
	.dai-asset-card,
	.dai-upload-thumb,
	.dai-layer-button,
	.dai-modal__backdrop,
	.dai-start-screen {
		transition: none;
		animation: none;
	}
}

/* Dark theme override */
body.dreams-ai-design-studio-page {
	--dai-dark-bg: #070b14;
	--dai-dark-shell: #0b1020;
	--dai-dark-panel: #111827;
	--dai-dark-panel-2: #172033;
	--dai-dark-panel-3: #1f2937;
	--dai-dark-border: rgba(148, 163, 184, 0.16);
	--dai-dark-border-strong: rgba(148, 163, 184, 0.28);
	--dai-dark-text: #f8fafc;
	--dai-dark-muted: #a7b0c2;
	--dai-dark-soft: #cbd5e1;
	--dai-dark-orange: #ff7a1a;
	--dai-dark-pink: #f43f72;
	--dai-dark-blue: #60a5fa;
	--dai-dark-teal: #2dd4bf;
	--dai-dark-shadow: 0 24px 70px rgba(0, 0, 0, 0.42);
	--dai-dark-shadow-soft: 0 14px 34px rgba(0, 0, 0, 0.28);
	background:
		radial-gradient(circle at 14% 0%, rgba(96, 165, 250, 0.16), transparent 28%),
		radial-gradient(circle at 88% 12%, rgba(255, 122, 26, 0.16), transparent 30%),
		linear-gradient(180deg, #090d18 0%, #070b14 52%, #050814 100%);
	color: var(--dai-dark-text);
}

.dai-studio-shell {
	position: relative;
	background:
		linear-gradient(180deg, rgba(15, 23, 42, 0.42), rgba(7, 11, 20, 0.72)),
		var(--dai-dark-bg);
}

.dai-studio-shell::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		linear-gradient(rgba(148, 163, 184, 0.06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.06) 1px, transparent 1px);
	background-size: 34px 34px;
	mask-image: linear-gradient(180deg, #000 0%, transparent 78%);
}

.dai-studio-topbar,
.dai-controlbar,
.dai-sidebar,
.dai-canvas-area,
.dai-slide-rail {
	position: relative;
	z-index: 1;
}

.dai-studio-topbar {
	min-height: 56px;
	margin: 8px 12px 0;
	padding: 8px 12px;
	border: 1px solid rgba(148, 163, 184, 0.2);
	border-radius: 12px;
	background: rgba(15, 23, 42, 0.82);
	color: var(--dai-dark-text);
	box-shadow: var(--dai-dark-shadow-soft);
	backdrop-filter: blur(20px) saturate(1.15);
}

.dai-studio-topbar::before {
	content: '';
	position: absolute;
	left: 18px;
	right: 18px;
	top: 0;
	height: 3px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--dai-dark-orange), var(--dai-dark-pink), var(--dai-dark-blue));
}

.dai-studio-topbar__divider {
	background: var(--dai-dark-border-strong);
}

.dai-studio-topbar__title-row>.dai-icon {
	width: 32px;
	height: 32px;
	border-radius: 10px;
	background:
		linear-gradient(135deg, rgba(255, 122, 26, 0.22), rgba(96, 165, 250, 0.14)),
		#111827;
	color: #ffb076;
	box-shadow: inset 0 0 0 1px rgba(255, 122, 26, 0.22), 0 12px 28px rgba(255, 122, 26, 0.14);
}

.dai-studio-topbar__title {
	color: var(--dai-dark-text);
	font-size: 14px;
	font-weight: 850;
}

.dai-studio-topbar__meta,
.dai-status-pill,
.dai-topbar-button--muted,
.dai-action-button--muted {
	color: var(--dai-dark-muted);
}

.dai-icon-button--ghost,
.dai-topbar-button,
.dai-status-pill,
.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack {
	border-color: var(--dai-dark-border);
	background: rgba(30, 41, 59, 0.86);
	color: var(--dai-dark-soft);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.dai-icon-button--ghost:hover,
.dai-topbar-button:hover,
.dai-action-button:hover,
.dai-clear-button:hover,
.dai-canvas-toggle:hover {
	background: rgba(51, 65, 85, 0.92);
	border-color: var(--dai-dark-border-strong);
	color: var(--dai-dark-text);
}

.dai-status-pill__dot {
	background: var(--dai-dark-teal);
	box-shadow: 0 0 0 5px rgba(45, 212, 191, 0.13);
}

.dai-export-button,
.dai-upload-library--primary {
	border-color: transparent;
	border-radius: 12px;
	background: linear-gradient(135deg, #ff7a1a 0%, #f43f72 52%, #6d5dfc 100%);
	color: #fff;
	box-shadow: 0 18px 34px rgba(244, 63, 114, 0.22);
}

.dai-controlbar {
	min-height: 52px;
	margin: 6px 12px 0;
	padding: 8px;
	border: 1px solid rgba(148, 163, 184, 0.18);
	border-radius: 12px;
	background: rgba(15, 23, 42, 0.78);
	color: var(--dai-dark-text);
	box-shadow: var(--dai-dark-shadow-soft);
	backdrop-filter: blur(20px) saturate(1.12);
}

.dai-controlbar__view {
	gap: 10px;
}

.dai-controlbar__group {
	min-height: 36px;
	padding: 4px 8px;
	border: 1px solid rgba(148, 163, 184, 0.14);
	border-radius: 8px;
	background: rgba(17, 24, 39, 0.72);
}

.dai-controlbar__group--label {
	background: linear-gradient(135deg, rgba(255, 122, 26, 0.18), rgba(96, 165, 250, 0.12));
	border-color: rgba(255, 122, 26, 0.24);
}

.dai-controlbar__title,
.dai-controlbar__section-label {
	color: var(--dai-dark-muted);
	letter-spacing: 0;
}

.dai-controlbar__section-label--active,
.dai-controlbar__group--label .dai-controlbar__section-label--active {
	color: var(--dai-dark-text);
}

.dai-field select,
.dai-field input {
	color: var(--dai-dark-text);
}

.dai-field span,
.dai-field small,
.dai-color-stack__label {
	color: var(--dai-dark-muted);
}

.dai-tool-button:hover,
.dai-tool-button--active {
	background: rgba(255, 122, 26, 0.16);
	border-color: rgba(255, 122, 26, 0.42);
	color: #ffb076;
	box-shadow: 0 12px 24px rgba(255, 122, 26, 0.12);
}

.dai-tool-button--icon-only,
.dai-action-button--icon-only {
	padding: 0;
	min-width: 32px;
	width: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.dai-tool-button--icon-only .dai-icon,
.dai-action-button--icon-only .dai-icon {
	font-size: 16px;
}

/* Compact design: hide text labels, show only icons */
.dai-controlbar__section-label--icon-only span:not(.dai-icon) {
	display: none;
}

.dai-controlbar__title {
	display: none;
}

.dai-tool-button:not(.dai-tool-button--icon-only):not([data-dai-action="toggleBold"]):not([data-dai-action="toggleItalic"]):not([data-dai-action="toggleUnderline"]):not([data-dai-action="toggleStrike"]) {
	font-size: 0;
}

.dai-tool-button:not(.dai-tool-button--icon-only):not([data-dai-action="toggleBold"]):not([data-dai-action="toggleItalic"]):not([data-dai-action="toggleUnderline"]):not([data-dai-action="toggleStrike"]) .dai-icon {
	display: inline-block;
}

.dai-action-button:not(.dai-action-button--icon-only) {
	font-size: 0;
}

.dai-action-button:not(.dai-action-button--icon-only) .dai-icon {
	display: inline-block;
}

.dai-clear-button {
	font-size: 0;
}

.dai-clear-button .dai-icon {
	display: inline-block;
}

.dai-color-stack__label {
	display: none;
}

.dai-field span:not(.dai-icon),
.dai-field small {
	display: none;
}

.dai-canvas-toggle {
	font-size: 0;
}

.dai-canvas-toggle::after {
	content: '';
	display: inline-block;
}

.dai-dimension-pill {
	font-size: 11px;
	padding: 0 8px;
}

.dai-action-button:not(.dai-action-button--muted),
.dai-start-screen__actions .dai-action-button,
.dai-modal__footer .dai-action-button:not(.dai-action-button--muted) {
	background: linear-gradient(135deg, #ff7a1a, #f43f72);
	border-color: transparent;
	color: #fff;
	box-shadow: 0 14px 28px rgba(244, 63, 114, 0.2);
}

.dai-studio-main {
	position: relative;
	z-index: 1;
	gap: 10px;
	padding: 10px 12px 12px;
	background: transparent;
}

.dai-sidebar {
	width: 380px;
	min-width: 320px;
	border: 1px solid rgba(148, 163, 184, 0.18);
	border-radius: 14px;
	background: rgba(15, 23, 42, 0.88);
	color: var(--dai-dark-text);
	box-shadow: var(--dai-dark-shadow-soft);
	overflow: hidden;
	backdrop-filter: blur(18px);
}

.dai-sidebar__rail {
	width: 72px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent),
		#080d18;
	border-right: 1px solid rgba(148, 163, 184, 0.12);
}

.dai-rail-button {
	position: relative;
	min-height: 64px;
	color: #8d9ab0;
	font-weight: 750;
}

.dai-rail-button::after {
	content: '';
	position: absolute;
	left: 10px;
	right: 10px;
	bottom: 0;
	height: 1px;
	background: rgba(148, 163, 184, 0.1);
}

.dai-rail-button:hover {
	background: rgba(255, 255, 255, 0.06);
	color: var(--dai-dark-text);
}

.dai-rail-button.is-active {
	background:
		linear-gradient(90deg, rgba(255, 122, 26, 0.22), rgba(96, 165, 250, 0.1)),
		rgba(255, 255, 255, 0.05);
	border-left-color: var(--dai-dark-orange);
	color: #fff;
}

.dai-rail-button.is-active .dai-icon {
	color: #ffb076;
}

.dai-sidebar__content {
	background: linear-gradient(180deg, rgba(17, 24, 39, 0.94), rgba(11, 16, 32, 0.96));
}

.dai-panel,
.dai-sidebar__title,
.dai-ai-image-box__label,
.dai-preset-card__text,
.dai-layer-card__copy strong,
.dai-upload-thumb__meta strong,
.dai-slide-thumb__title,
.dai-slide-rail__header h2 {
	color: var(--dai-dark-text);
}

.dai-sidebar__title {
	font-size: 20px;
	font-weight: 850;
}

.dai-panel__hint,
.dai-preset-card--body .dai-preset-card__text,
.dai-upload-dropzone span:last-child,
.dai-upload-thumb__meta span,
.dai-layer-card__copy span,
.dai-slide-thumb__meta,
.dai-start-template span,
.dai-modal__copy,
.dai-start-screen__header p {
	color: var(--dai-dark-muted);
}

.dai-preset-card,
.dai-start-template,
.dai-shape-card,
.dai-asset-card,
.dai-upload-thumb,
.dai-layer-card,
.dai-slide-thumb,
.dai-ai-image-box,
.dai-upload-dropzone,
.dai-upload-library,
.dai-icon-chip,
.dai-search-field {
	border-color: rgba(148, 163, 184, 0.16);
	background: rgba(30, 41, 59, 0.74);
	color: var(--dai-dark-text);
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.18);
}

.dai-preset-card,
.dai-upload-dropzone,
.dai-ai-image-box {
	background: linear-gradient(180deg, rgba(30, 41, 59, 0.8), rgba(17, 24, 39, 0.82));
}

.dai-preset-card::before {
	background: linear-gradient(180deg, var(--dai-dark-orange), var(--dai-dark-pink));
}

.dai-preset-card:hover,
.dai-start-template:hover,
.dai-shape-card:hover,
.dai-asset-card:hover,
.dai-upload-thumb:hover,
.dai-layer-card:hover,
.dai-slide-thumb:hover,
.dai-upload-dropzone:hover,
.dai-upload-library:hover,
.dai-icon-chip:hover {
	filter: none;
	border-color: rgba(96, 165, 250, 0.34);
	box-shadow: 0 20px 44px rgba(0, 0, 0, 0.28);
	transform: translateY(-1px);
}

.dai-search-field input,
.dai-ai-image-box__prompt,
.dai-start-screen__prompt,
.dai-modal__textarea {
	color: var(--dai-dark-text);
}

.dai-search-field input::placeholder,
.dai-ai-image-box__prompt::placeholder,
.dai-start-screen__prompt::placeholder {
	color: #7f8da3;
}

.dai-ai-image-box__prompt,
.dai-start-screen__prompt,
.dai-modal__textarea {
	border-color: rgba(148, 163, 184, 0.2);
	background: rgba(8, 13, 24, 0.72);
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.22);
}

.dai-icon-chip,
.dai-shape-card__icon {
	color: var(--dai-dark-blue);
}

.dai-layer-card.is-selected,
.dai-slide-thumb.is-active,
.dai-start-template.is-active {
	background: linear-gradient(180deg, rgba(255, 122, 26, 0.18), rgba(30, 41, 59, 0.76));
	border-color: rgba(255, 122, 26, 0.44);
	box-shadow: 0 18px 36px rgba(255, 122, 26, 0.1);
}

.dai-layer-card__glyph,
.dai-layer-button,
.dai-slide-rail__add,
.dai-slide-thumb__actions button {
	background: rgba(15, 23, 42, 0.9);
	border-color: rgba(148, 163, 184, 0.16);
	color: var(--dai-dark-muted);
}

.dai-layer-card__toolbar {
	border-top-color: rgba(148, 163, 184, 0.14);
}

.dai-slide-rail {
	border: 1px solid rgba(148, 163, 184, 0.18);
	border-radius: 18px;
	background: rgba(15, 23, 42, 0.88);
	color: var(--dai-dark-text);
	box-shadow: var(--dai-dark-shadow-soft);
}

.dai-canvas-area {
	border: 1px solid rgba(148, 163, 184, 0.18);
	border-radius: 18px;
	background:
		linear-gradient(180deg, rgba(15, 23, 42, 0.7), rgba(8, 13, 24, 0.84)),
		linear-gradient(rgba(148, 163, 184, 0.08) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.08) 1px, transparent 1px),
		#080d18;
	background-size: auto, 30px 30px, 30px 30px, auto;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.dai-canvas-area__surface {
	padding: 44px 50px 98px;
}

.dai-canvas-stage {
	border-radius: 14px;
	background: #fff;
	box-shadow:
		0 38px 110px rgba(0, 0, 0, 0.42),
		0 0 0 1px rgba(255, 255, 255, 0.08);
}

.dai-canvas-stage__grid {
	opacity: 0.18;
}

.dai-canvas-stage__safe-area {
	border-color: rgba(45, 212, 191, 0.5);
}

.dai-zoom-control {
	right: 30px;
	bottom: 24px;
	height: 48px;
	border-color: rgba(148, 163, 184, 0.18);
	background: rgba(15, 23, 42, 0.84);
	color: var(--dai-dark-text);
	box-shadow: var(--dai-dark-shadow-soft);
	backdrop-filter: blur(18px);
}

.dai-zoom-control__button,
.dai-zoom-control__value {
	color: var(--dai-dark-text);
}

.dai-zoom-control__button:hover {
	background: rgba(51, 65, 85, 0.72);
}

.dai-start-screen {
	background:
		radial-gradient(circle at top left, rgba(96, 165, 250, 0.18), transparent 34%),
		radial-gradient(circle at bottom right, rgba(255, 122, 26, 0.16), transparent 34%),
		rgba(3, 7, 18, 0.72);
}

.dai-start-screen__panel,
.dai-modal__dialog {
	border: 1px solid rgba(148, 163, 184, 0.2);
	border-radius: 20px;
	background: rgba(15, 23, 42, 0.92);
	color: var(--dai-dark-text);
	box-shadow: 0 38px 110px rgba(0, 0, 0, 0.54);
	backdrop-filter: blur(22px) saturate(1.1);
}

.dai-start-screen__panel::before {
	background: linear-gradient(90deg, var(--dai-dark-orange), var(--dai-dark-pink), var(--dai-dark-blue));
}

.dai-start-screen__header,
.dai-modal__header,
.dai-modal__footer {
	border-color: rgba(148, 163, 184, 0.16);
}

.dai-start-screen__header h2,
.dai-modal__title {
	color: var(--dai-dark-text);
}

.dai-start-screen__label {
	color: #ffb076;
	letter-spacing: 0;
}

.dai-start-screen__link {
	color: #93c5fd;
}

.dai-modal__close {
	background: rgba(30, 41, 59, 0.86);
	border-color: rgba(148, 163, 184, 0.18);
	color: var(--dai-dark-soft);
}

.dai-modal__close:hover {
	background: rgba(127, 29, 29, 0.72);
	border-color: rgba(248, 113, 113, 0.38);
	color: #fecaca;
}

.dai-notice {
	border-color: rgba(148, 163, 184, 0.18);
	background: rgba(15, 23, 42, 0.92);
	color: var(--dai-dark-text);
	box-shadow: var(--dai-dark-shadow-soft);
	backdrop-filter: blur(16px);
}

.dai-notice--success {
	border-color: rgba(45, 212, 191, 0.34);
	color: #99f6e4;
}

.dai-notice--error {
	border-color: rgba(248, 113, 113, 0.34);
	color: #fecaca;
}

.dai-notice--info {
	border-color: rgba(96, 165, 250, 0.34);
	color: #bfdbfe;
}

@media (max-width: 1024px) {
	.dai-studio-main {
		padding: 8px 10px 10px;
	}

	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: 240px;
		min-height: 240px;
		border-radius: 12px;
	}

	.dai-sidebar__rail {
		width: 100%;
		min-height: 56px;
	}

	.dai-rail-button {
		min-height: 56px;
	}

	.dai-rail-button::after {
		display: none;
	}

	.dai-rail-button.is-active {
		border-left-color: transparent;
		border-bottom-color: var(--dai-dark-orange);
	}
}

@media (max-width: 780px) {

	.dai-studio-topbar,
	.dai-controlbar {
		margin-left: 8px;
		margin-right: 8px;
		border-radius: 10px;
	}

	.dai-studio-topbar {
		min-height: 48px;
		padding: 6px 10px;
	}

	.dai-controlbar {
		min-height: 44px;
		padding: 6px;
	}

	.dai-controlbar__group {
		min-height: 32px;
		padding: 3px 6px;
	}

	.dai-studio-main {
		padding: 6px 8px 8px;
		gap: 8px;
	}

	.dai-sidebar {
		height: 200px;
		min-height: 200px;
		border-radius: 10px;
	}

	.dai-sidebar__rail {
		min-height: 48px;
	}

	.dai-rail-button {
		min-height: 48px;
	}

	.dai-canvas-area {
		border-radius: 10px;
	}

	.dai-canvas-area__surface {
		padding: 16px 10px 70px;
	}

	.dai-zoom-control {
		right: 12px;
		bottom: 12px;
		height: 40px;
	}
}

@media (max-width: 520px) {
	.dai-studio-topbar {
		min-height: 44px;
		padding: 5px 8px;
		margin-left: 6px;
		margin-right: 6px;
		border-radius: 8px;
	}

	.dai-studio-topbar__title-row>.dai-icon {
		width: 28px;
		height: 28px;
		border-radius: 8px;
	}

	.dai-studio-topbar__title {
		font-size: 12px;
	}

	.dai-controlbar {
		min-height: 40px;
		padding: 4px;
		margin-left: 6px;
		margin-right: 6px;
		border-radius: 8px;
	}

	.dai-controlbar__group {
		min-height: 28px;
		padding: 2px 4px;
	}

	.dai-field,
	.dai-tool-button,
	.dai-action-button,
	.dai-clear-button,
	.dai-canvas-toggle,
	.dai-dimension-pill,
	.dai-color-stack {
		height: 28px;
		border-radius: 6px;
	}

	.dai-tool-button--icon-only,
	.dai-action-button--icon-only {
		min-width: 28px;
		width: 28px;
	}

	.dai-studio-main {
		padding: 4px 6px 6px;
		gap: 6px;
	}

	.dai-sidebar {
		height: 180px;
		min-height: 180px;
		border-radius: 8px;
	}

	.dai-sidebar__rail {
		min-height: 44px;
	}

	.dai-rail-button {
		min-height: 44px;
	}

	.dai-canvas-area {
		border-radius: 8px;
	}

	.dai-canvas-area__surface {
		padding: 12px 8px 60px;
	}

	.dai-zoom-control {
		right: 8px;
		bottom: 8px;
		height: 36px;
	}

	.dai-start-screen__panel,
	.dai-modal__dialog {
		border-radius: 12px;
	}
}

/* Final hotfix: uploads visibility and working background color palette */
.dai-sidebar,
.dai-sidebar__content,
.dai-panel.is-active {
	min-height: 0;
}

.dai-sidebar__content {
	overflow: hidden;
}

.dai-panel.is-active {
	width: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(148, 163, 184, 0.42) rgba(15, 23, 42, 0.42);
}

.dai-panel[data-dai-panel-view="uploads"] {
	padding-bottom: 18px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box {
	margin: 14px 18px 12px;
	padding: 14px;
	gap: 10px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box__prompt {
	min-height: 72px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-dropzone {
	min-height: 110px;
	margin-top: 12px;
	padding: 16px;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-library {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: calc(100% - 40px);
	min-height: 44px;
	margin: 12px 20px 0;
	flex: 0 0 auto;
	white-space: normal;
	line-height: 1.25;
	text-align: center;
	opacity: 1;
	visibility: visible;
}

.dai-panel[data-dai-panel-view="uploads"] .dai-upload-list {
	min-height: 56px;
	padding-top: 12px;
	padding-bottom: 18px;
	overflow: visible;
}

.dai-canvas-swatch {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 38px;
	padding: 3px;
	border-radius: 10px;
	border: 1px solid rgba(148, 163, 184, 0.3);
	background:
		linear-gradient(45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(-45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		linear-gradient(-45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		rgba(15, 23, 42, 0.92);
	background-position: 0 0, 0 8px, 8px -8px, -8px 0;
	background-size: 16px 16px;
	box-sizing: border-box;
	cursor: pointer;
}

.dai-canvas-swatch input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.dai-canvas-swatch__preview {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 7px;
	background: var(--dai-canvas-bg, #ffffff);
	box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.24), 0 0 0 1px rgba(255, 255, 255, 0.1);
}

.dai-color-stack {
	min-width: 66px;
	gap: 8px;
}

.dai-color-chip {
	width: 44px;
	height: 32px;
	border-radius: 9px;
	border-color: rgba(148, 163, 184, 0.32);
	background:
		linear-gradient(45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(-45deg, rgba(255, 255, 255, 0.16) 25%, transparent 25%),
		linear-gradient(45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		linear-gradient(-45deg, transparent 75%, rgba(255, 255, 255, 0.16) 75%),
		rgba(15, 23, 42, 0.92);
	background-position: 0 0, 0 8px, 8px -8px, -8px 0;
	background-size: 16px 16px;
}

.dai-color-chip__swatch {
	border-radius: 8px;
	box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.24);
}

.dai-canvas-toggle {
	min-width: 76px;
}

@media (min-width: 1025px) {

	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100vh - 184px);
	}
}

@media (max-width: 1024px) {
	.dai-sidebar {
		height: min(340px, 38vh);
		min-height: 280px;
	}

	.dai-sidebar__content,
	.dai-panel.is-active {
		max-height: calc(100% - 62px);
	}
}

@media (max-width: 780px) {
	.dai-sidebar {
		height: min(330px, 40vh);
		min-height: 260px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-ai-image-box__prompt {
		min-height: 64px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-upload-dropzone {
		min-height: 104px;
	}
}

@media (max-width: 520px) {
	.dai-sidebar {
		height: min(320px, 42vh);
		min-height: 250px;
	}

	.dai-panel[data-dai-panel-view="uploads"] .dai-upload-library {
		width: calc(100% - 24px);
		margin-left: 12px;
		margin-right: 12px;
	}
}

/* Last-mile Uploads scroll override */
.dai-sidebar__rail {
	overflow-y: auto !important;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(148, 163, 184, 0.42) transparent;
}

@media (max-width: 1024px) {
	.dai-sidebar__rail {
		overflow-x: auto !important;
		overflow-y: hidden !important;
	}
}

/* Icon-only toolbar labels */
.dai-clear-button--icon-only,
.dai-canvas-toggle--icon-only {
	width: 32px;
	min-width: 32px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
}

.dai-clear-button--icon-only .dai-icon,
.dai-canvas-toggle--icon-only .dai-icon {
	display: inline-block;
}

.dai-icon--undo::before,
.dai-icon--redo::before {
	inset: 3px 2px 4px 3px;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-bottom-color: transparent;
	border-radius: 50%;
	transform: rotate(-28deg);
}

.dai-icon--undo::after,
.dai-icon--redo::after {
	left: 1px;
	top: 3px;
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-right: 7px solid currentColor;
}

.dai-icon--redo::before {
	transform: scaleX(-1) rotate(-28deg);
}

.dai-icon--redo::after {
	left: auto;
	right: 1px;
	border-right: 0;
	border-left: 7px solid currentColor;
}

.dai-icon--group::before,
.dai-icon--ungroup::before {
	left: 1px;
	top: 3px;
	width: 10px;
	height: 10px;
	border: 2px solid currentColor;
	border-radius: 3px;
	box-shadow: 7px 5px 0 -2px currentColor;
}

.dai-icon--ungroup::after {
	inset: 0;
	border: 1px dashed currentColor;
	border-radius: 4px;
	opacity: 0.7;
}

.dai-icon--clone::before,
.dai-icon--clone::after {
	width: 11px;
	height: 11px;
	border: 2px solid currentColor;
	border-radius: 3px;
}

.dai-icon--clone::before {
	left: 2px;
	top: 5px;
	opacity: 0.65;
}

.dai-icon--clone::after {
	left: 6px;
	top: 1px;
}

.dai-icon--trash::before {
	left: 4px;
	right: 4px;
	top: 5px;
	bottom: 2px;
	border: 2px solid currentColor;
	border-top: 0;
	border-radius: 0 0 3px 3px;
}

.dai-icon--trash::after {
	left: 3px;
	right: 3px;
	top: 2px;
	height: 2px;
	background: currentColor;
	box-shadow: 5px -2px 0 -1px currentColor;
}

.dai-icon--microphone::before {
	left: 6px;
	top: 1px;
	width: 8px;
	height: 12px;
	border: 2px solid currentColor;
	border-radius: 7px;
}

.dai-icon--microphone::after {
	left: 4px;
	top: 9px;
	width: 12px;
	height: 8px;
	border-bottom: 2px solid currentColor;
	border-left: 2px solid transparent;
	border-right: 2px solid transparent;
	box-shadow: 5px 7px 0 -4px currentColor;
}

.dai-icon--fit::before {
	inset: 2px;
	border: 2px solid currentColor;
	border-radius: 3px;
}

.dai-icon--fit::after {
	left: 5px;
	top: 5px;
	width: 8px;
	height: 8px;
	border: 2px solid currentColor;
	border-radius: 2px;
}

.dai-icon--clear::before,
.dai-icon--no-fill::before {
	inset: 3px;
	border: 2px solid currentColor;
	border-radius: 50%;
}

.dai-icon--clear::after,
.dai-icon--no-fill::after {
	left: 2px;
	right: 2px;
	top: 8px;
	height: 2px;
	background: currentColor;
	transform: rotate(-45deg);
}

.dai-icon--rotate::before {
	inset: 3px;
	border: 2px solid currentColor;
	border-left-color: transparent;
	border-radius: 50%;
	transform: rotate(-22deg);
}

.dai-icon--rotate::after {
	right: 1px;
	top: 2px;
	width: 0;
	height: 0;
	border-left: 6px solid currentColor;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
}

/* Responsive scrollbar and modern studio polish. */
body.dreams-ai-design-studio-page {
	--dai-scroll-size: 1px;
	--dai-scroll-track: rgba(8, 13, 24, 0.62);
	--dai-scroll-thumb: #ff7a18;
	--dai-scroll-thumb-2: #fb4b72;
	--dai-scroll-thumb-3: #38bdf8;
	--dai-glass-bg: rgba(10, 15, 29, 0.82);
	--dai-glass-bg-strong: rgba(15, 23, 42, 0.94);
	--dai-glass-line: rgba(148, 163, 184, 0.2);
	--dai-glass-text: #f8fafc;
	--dai-glass-muted: #a8b3c7;
	--dai-glass-shadow: 0 22px 60px rgba(0, 0, 0, 0.3);
}

.dai-controlbar,
.dai-sidebar__rail,
.dai-panel.is-active,
.dai-slide-rail,
.dai-icon-grid,
.dai-upload-list,
.dai-layer-list,
.dai-canvas-area,
.dai-start-screen__panel,
.dai-modal__body {
	scrollbar-width: thin;
	scrollbar-color: var(--dai-scroll-thumb-2) var(--dai-scroll-track);
}

.dai-controlbar::-webkit-scrollbar,
.dai-sidebar__rail::-webkit-scrollbar,
.dai-panel.is-active::-webkit-scrollbar,
.dai-slide-rail::-webkit-scrollbar,
.dai-icon-grid::-webkit-scrollbar,
.dai-upload-list::-webkit-scrollbar,
.dai-layer-list::-webkit-scrollbar,
.dai-canvas-area::-webkit-scrollbar,
.dai-start-screen__panel::-webkit-scrollbar,
.dai-modal__body::-webkit-scrollbar {
	width: var(--dai-scroll-size);
	height: var(--dai-scroll-size);
}

.dai-controlbar::-webkit-scrollbar-track,
.dai-sidebar__rail::-webkit-scrollbar-track,
.dai-panel.is-active::-webkit-scrollbar-track,
.dai-slide-rail::-webkit-scrollbar-track,
.dai-icon-grid::-webkit-scrollbar-track,
.dai-upload-list::-webkit-scrollbar-track,
.dai-layer-list::-webkit-scrollbar-track,
.dai-canvas-area::-webkit-scrollbar-track,
.dai-start-screen__panel::-webkit-scrollbar-track,
.dai-modal__body::-webkit-scrollbar-track {
	background: var(--dai-scroll-track);
	border-radius: 999px;
}

.dai-controlbar::-webkit-scrollbar-thumb,
.dai-sidebar__rail::-webkit-scrollbar-thumb,
.dai-panel.is-active::-webkit-scrollbar-thumb,
.dai-slide-rail::-webkit-scrollbar-thumb,
.dai-icon-grid::-webkit-scrollbar-thumb,
.dai-upload-list::-webkit-scrollbar-thumb,
.dai-layer-list::-webkit-scrollbar-thumb,
.dai-canvas-area::-webkit-scrollbar-thumb,
.dai-start-screen__panel::-webkit-scrollbar-thumb,
.dai-modal__body::-webkit-scrollbar-thumb {
	border: 2px solid transparent;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--dai-dark-orange), var(--dai-dark-pink), var(--dai-dark-blue));
	background-clip: border-box;
	box-shadow: 0 0 18px rgba(251, 75, 114, 0.28);
}

.dai-controlbar::-webkit-scrollbar-thumb:hover,
.dai-sidebar__rail::-webkit-scrollbar-thumb:hover,
.dai-panel.is-active::-webkit-scrollbar-thumb:hover,
.dai-slide-rail::-webkit-scrollbar-thumb:hover,
.dai-icon-grid::-webkit-scrollbar-thumb:hover,
.dai-upload-list::-webkit-scrollbar-thumb:hover,
.dai-layer-list::-webkit-scrollbar-thumb:hover,
.dai-canvas-area::-webkit-scrollbar-thumb:hover,
.dai-start-screen__panel::-webkit-scrollbar-thumb:hover,
.dai-modal__body::-webkit-scrollbar-thumb:hover {
	background: linear-gradient(90deg, var(--dai-dark-orange), var(--dai-dark-pink), var(--dai-dark-blue));
	background-clip: border-box;
}

.dai-studio-shell {
	background:
		radial-gradient(circle at 10% -10%, rgba(56, 189, 248, 0.2), transparent 30%),
		radial-gradient(circle at 92% 4%, rgba(251, 75, 114, 0.18), transparent 28%),
		linear-gradient(135deg, #050814 0%, #0a1020 45%, #070b16 100%);
}

.dai-studio-topbar,
.dai-controlbar,
.dai-sidebar,
.dai-slide-rail,
.dai-zoom-control,
.dai-modal__dialog,
.dai-start-screen__panel {
	border-color: var(--dai-glass-line);
	background: var(--dai-glass-bg);
	color: var(--dai-glass-text);
	box-shadow: var(--dai-glass-shadow);
	backdrop-filter: blur(22px) saturate(1.14);
}

.dai-studio-topbar,
.dai-controlbar {
	margin-inline: clamp(8px, 1.25vw, 18px);
	border-radius: 16px;
}

.dai-studio-topbar {
	min-height: 64px;
	margin-top: clamp(8px, 1vw, 14px);
	padding: 8px clamp(10px, 1.4vw, 18px);
	width: auto;
}

.dai-controlbar {
	min-height: 58px;
	padding: 8px;
}

.dai-controlbar__view {
	gap: 8px;
	min-width: max-content;
}

.dai-controlbar__group {
	border-radius: 12px;
	border-color: rgba(148, 163, 184, 0.16);
	background: rgba(15, 23, 42, 0.72);
}

.dai-field,
.dai-tool-button,
.dai-action-button,
.dai-clear-button,
.dai-canvas-toggle,
.dai-dimension-pill,
.dai-color-stack,
.dai-topbar-button,
.dai-status-pill,
.dai-icon-button--ghost {
	border-color: rgba(148, 163, 184, 0.18);
	background: rgba(30, 41, 59, 0.84);
	color: var(--dai-glass-text);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 10px 24px rgba(0, 0, 0, 0.12);
}

.dai-export-button,
.dai-action-button:not(.dai-action-button--muted),
.dai-start-screen__actions .dai-action-button,
.dai-modal__footer .dai-action-button:not(.dai-action-button--muted),
.dai-upload-library--primary {
	border-color: transparent;
	background: linear-gradient(135deg, #ff7a18 0%, #fb4b72 48%, #7c3aed 100%);
	box-shadow: 0 16px 36px rgba(251, 75, 114, 0.26);
}

.dai-start-screen__actions .dai-action-button,
.dai-modal__footer .dai-action-button {
	font-size: 14px !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.dai-start-screen__actions .dai-action-button .ti,
.dai-modal__footer .dai-action-button .ti {
	font-size: 18px;
}

.dai-studio-main {
	gap: clamp(8px, 1vw, 14px);
	padding: clamp(8px, 1vw, 14px) clamp(8px, 1.25vw, 18px) clamp(8px, 1.25vw, 18px);
	padding-bottom: 50px !important;
}

.dai-sidebar {
	width: clamp(320px, 27vw, 440px);
	min-width: 300px;
	border-radius: 18px;
	overflow: hidden;
}

.dai-sidebar__rail {
	width: clamp(68px, 5.5vw, 86px);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0)),
		rgba(5, 8, 20, 0.92);
}

.dai-rail-button {
	min-height: 64px;
}

.dai-sidebar__content,
.dai-panel.is-active {
	background: var(--dai-glass-bg-strong);
}

.dai-panel__header {
	padding: 16px 18px 4px;
}

.dai-sidebar__title {
	font-size: clamp(18px, 1.45vw, 22px);
}

.dai-preset-card,
.dai-start-template,
.dai-shape-card,
.dai-asset-card,
.dai-upload-thumb,
.dai-layer-card,
.dai-slide-thumb,
.dai-ai-image-box,
.dai-upload-dropzone,
.dai-upload-library,
.dai-icon-chip,
.dai-search-field {
	border-color: rgba(148, 163, 184, 0.16);
	border-radius: 14px;
	background: rgba(30, 41, 59, 0.74);
	color: var(--dai-glass-text);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
}

.dai-canvas-area {
	border-radius: 18px;
	background:
		linear-gradient(180deg, rgba(10, 15, 29, 0.68), rgba(5, 8, 20, 0.9)),
		linear-gradient(rgba(148, 163, 184, 0.08) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 163, 184, 0.08) 1px, transparent 1px),
		#060914;
	background-size: auto, 28px 28px, 28px 28px, auto;
}

.dai-canvas-area__surface {
	padding: clamp(16px, 3vw, 46px) clamp(12px, 3vw, 50px) clamp(76px, 7vw, 104px);
}

@media (max-width: 1024px) {
	body.dreams-ai-design-studio-page {
		--dai-scroll-size: 1px;
	}

	.dai-studio-shell {
		overflow: hidden;
	}

	.dai-studio-topbar {
		flex-wrap: wrap;
		gap: 8px;
	}

	.dai-studio-topbar__title {
		width: min(360px, 48vw);
	}

	.dai-studio-topbar__actions {
		gap: 8px;
		margin-left: auto;
	}

	.dai-studio-main {
		flex-direction: column;
	}

	.dai-sidebar {
		width: 100%;
		min-width: 0;
		height: min(330px, 38vh);
		min-height: 240px;
		border-radius: 16px;
	}

	.dai-sidebar__rail {
		width: 100%;
		min-height: 58px;
		overflow-x: auto !important;
		overflow-y: hidden !important;
	}

	.dai-rail-button {
		min-width: 74px;
		min-height: 56px;
	}

	.dai-canvas-area {
		min-height: 360px;
	}
}

@media (max-width: 640px) {
	body.dreams-ai-design-studio-page {
		--dai-scroll-size: 1px;
	}

	.dai-studio-topbar,
	.dai-controlbar {
		margin-inline: 6px;
		border-radius: 12px;
	}

	.dai-studio-topbar__brand,
	.dai-studio-topbar__actions {
		width: 100%;
	}

	.dai-studio-topbar__actions {
		justify-content: space-between;
	}

	.dai-studio-topbar__secondary-actions,
	.dai-status-pill {
		display: none;
	}

	.dai-studio-topbar__title {
		width: min(100%, 58vw);
		font-size: 13px;
	}

	.dai-export-button {
		height: 38px;
		padding-inline: 14px;
		border-radius: 10px;
	}

	.dai-controlbar {
		min-height: 48px;
		padding: 6px;
	}

	.dai-controlbar__group {
		min-height: 34px;
		padding: 4px 6px;
	}

	.dai-field,
	.dai-tool-button,
	.dai-action-button,
	.dai-clear-button,
	.dai-canvas-toggle,
	.dai-dimension-pill,
	.dai-color-stack {
		height: 30px;
	}

	.dai-sidebar {
		height: min(310px, 42vh);
		min-height: 220px;
	}

	.dai-shape-grid,
	.dai-asset-grid {
		grid-template-columns: 1fr;
	}

	.dai-canvas-area__surface {
		padding: 12px 8px 64px;
	}

	.dai-zoom-control {
		right: 10px;
		bottom: 10px;
		height: 38px;
		border-radius: 12px;
	}
}

/* Final scrollbar override for every scrollable studio element. */
body.dreams-ai-design-studio-page,
body.dreams-ai-design-studio-page * {
	scrollbar-width: thin;
	scrollbar-color: var(--dai-dark-pink) transparent;
}

body.dreams-ai-design-studio-page ::-webkit-scrollbar {
	width: 3px !important;
	height: 3px !important;
}

body.dreams-ai-design-studio-page ::-webkit-scrollbar-track {
	background: transparent !important;
	border-radius: 999px !important;
}

body.dreams-ai-design-studio-page ::-webkit-scrollbar-thumb {
	min-width: 3px !important;
	min-height: 3px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(90deg, var(--dai-dark-orange), var(--dai-dark-pink), var(--dai-dark-blue)) !important;
}

body.dreams-ai-design-studio-page ::-webkit-scrollbar-corner {
	background: transparent !important;
}

/* Final toolbar minimize behavior. */
.dai-controlbar__minimize {
	position: sticky;
	left: 0;
	z-index: 5;
	width: 34px;
	min-width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid rgba(148, 163, 184, 0.2);
	border-radius: 999px;
	background: rgba(30, 41, 59, 0.92);
	color: var(--dai-glass-text, #f8fafc);
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
	cursor: pointer;
	flex: 0 0 auto;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.dai-controlbar__minimize:hover {
	background: rgba(51, 65, 85, 0.96);
	border-color: rgba(148, 163, 184, 0.34);
	color: #fff;
}

.dai-controlbar__minimize .dai-icon,
.dai-controlbar__minimize .ti {
	transition: transform 180ms ease;
}

.dai-controlbar.is-minimized {
	min-height: 0 !important;
	height: auto;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	pointer-events: none !important;
	overflow: visible;
}

.dai-controlbar.is-minimized .dai-controlbar__minimize {
	pointer-events: auto !important;
}

.dai-controlbar.is-minimized .dai-controlbar__view {
	display: none !important;
}

.dai-controlbar.is-minimized .dai-controlbar__minimize .dai-icon,
.dai-controlbar.is-minimized .dai-controlbar__minimize .ti {
	transform: rotate(180deg);
}

@media (max-width: 640px) {
	.dai-controlbar__minimize {
		width: 30px;
		min-width: 30px;
		height: 30px;
	}

	.dai-controlbar.is-minimized {
		min-height: 0 !important;
		height: auto;
	}
}

/* Icon-only topbar file actions. */
.dai-studio-topbar__secondary-actions {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.dai-topbar-button--icon-only {
	width: 42px;
	min-width: 42px;
	height: 42px;
	padding: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
}

.dai-topbar-button--icon-only .dai-icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	font-size: 16px;
}

.dai-icon--save::before {
	inset: 2px;
	border: 2px solid currentColor;
	border-radius: 4px;
}

.dai-icon--save::after {
	left: 5px;
	right: 5px;
	bottom: 3px;
	height: 7px;
	border: 2px solid currentColor;
	border-bottom: 0;
	border-radius: 3px 3px 0 0;
	box-shadow: 6px -10px 0 -5px currentColor;
}

@media (max-width: 640px) {
	.dai-topbar-button--icon-only {
		width: 38px;
		min-width: 38px;
		height: 38px;
	}
}

/* Icon-only layer controls. Native title attributes provide hover tooltips. */
.dai-layer-card__actions,
.dai-layer-card__toolbar {
	gap: 8px;
}

.dai-layer-card__toolbar {
	flex-wrap: wrap;
}

.dai-layer-button--icon-only {
	position: relative;
	width: 30px;
	min-width: 30px;
	height: 30px;
	padding: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
}

.dai-layer-button--icon-only .dai-icon {
	display: inline-block;
	width: 18px;
	height: 18px;
	font-size: 16px;
}

.dai-layer-button--icon-only::before {
	content: attr(title);
	position: absolute;
	left: 50%;
	bottom: calc(100% + 8px);
	z-index: 20;
	max-width: 160px;
	padding: 6px 8px;
	border-radius: 6px;
	background: rgba(2, 6, 23, 0.96);
	color: #f8fafc;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, 4px);
	transition: opacity 140ms ease, transform 140ms ease;
}

.dai-layer-button--icon-only::after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: calc(100% + 3px);
	z-index: 20;
	width: 8px;
	height: 8px;
	background: rgba(2, 6, 23, 0.96);
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, 4px) rotate(45deg);
	transition: opacity 140ms ease, transform 140ms ease;
}

.dai-layer-button--icon-only:hover::before,
.dai-layer-button--icon-only:focus-visible::before,
.dai-layer-button--icon-only:hover::after,
.dai-layer-button--icon-only:focus-visible::after {
	opacity: 1;
	transform: translate(-50%, 0);
}

.dai-layer-button--icon-only:hover::after,
.dai-layer-button--icon-only:focus-visible::after {
	transform: translate(-50%, 0) rotate(45deg);
}

.dai-layer-button--danger:hover {
	border-color: rgba(248, 113, 113, 0.42);
	background: rgba(127, 29, 29, 0.62);
	color: #fecaca;
}

.dai-icon--eye::before {
	left: 1px;
	right: 1px;
	top: 5px;
	height: 8px;
	border: 2px solid currentColor;
	border-radius: 999px 999px 8px 8px;
	transform: rotate(-8deg);
}

.dai-icon--eye::after {
	left: 7px;
	top: 7px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: currentColor;
}

.dai-icon--eye-off::before {
	left: 1px;
	right: 1px;
	top: 5px;
	height: 8px;
	border: 2px solid currentColor;
	border-radius: 999px 999px 8px 8px;
	opacity: 0.72;
	transform: rotate(-8deg);
}

.dai-icon--eye-off::after {
	left: 1px;
	right: 1px;
	top: 8px;
	height: 2px;
	border-radius: 999px;
	background: currentColor;
	transform: rotate(-42deg);
}

.dai-icon--layer-front::before,
.dai-icon--layer-back::before {
	left: 4px;
	right: 4px;
	height: 2px;
	background: currentColor;
	border-radius: 999px;
}

.dai-icon--layer-front::before {
	top: 2px;
	box-shadow: 0 5px 0 currentColor, 0 10px 0 currentColor;
}

.dai-icon--layer-back::before {
	bottom: 2px;
	box-shadow: 0 -5px 0 currentColor, 0 -10px 0 currentColor;
}

.dai-icon--layer-front::after,
.dai-icon--layer-forward::after {
	left: 6px;
	top: 8px;
	width: 6px;
	height: 6px;
	border-top: 2px solid currentColor;
	border-left: 2px solid currentColor;
	transform: rotate(45deg);
}

.dai-icon--layer-back::after,
.dai-icon--layer-backward::after {
	left: 6px;
	bottom: 8px;
	width: 6px;
	height: 6px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
}

.dai-icon--layer-forward::before,
.dai-icon--layer-backward::before {
	left: 8px;
	top: 4px;
	bottom: 4px;
	width: 2px;
	border-radius: 999px;
	background: currentColor;
}

.dai-icon--lock::before,
.dai-icon--unlock::before {
	left: 4px;
	right: 4px;
	bottom: 2px;
	height: 9px;
	border: 2px solid currentColor;
	border-radius: 4px;
}

.dai-icon--lock::after,
.dai-icon--unlock::after {
	left: 6px;
	top: 1px;
	width: 7px;
	height: 9px;
	border: 2px solid currentColor;
	border-bottom: 0;
	border-radius: 8px 8px 0 0;
}

.dai-icon--unlock::after {
	left: 8px;
	border-right-color: transparent;
}

@media (hover: none) and (pointer: coarse) {

	.dai-layer-button--icon-only::before,
	.dai-layer-button--icon-only::after {
		display: none;
	}
}

/* Tabler icon sizing in the studio chrome. */
.dai-studio-topbar .ti,
.dai-controlbar .ti,
.dai-sidebar .ti,
.dai-upload-dropzone .ti,
.dai-modal .ti,
.dai-layer-button .ti {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1em;
	height: 1em;
	font-size: 20px;
	line-height: 1;
}

.dai-icon-button--ghost .ti,
.dai-topbar-button--icon-only .ti,
.dai-tool-button--icon-only .ti,
.dai-action-button--icon-only .ti,
.dai-clear-button--icon-only .ti,
.dai-canvas-toggle--icon-only .ti,
.dai-layer-button--icon-only .ti {
	pointer-events: none;
}

.dai-studio-topbar__title-row>.ti {
	width: 32px;
	height: 32px;
	border-radius: 10px;
	background:
		linear-gradient(135deg, rgba(255, 122, 26, 0.22), rgba(96, 165, 250, 0.14)),
		#111827;
	color: #ffb076;
	font-size: 18px;
	box-shadow: inset 0 0 0 1px rgba(255, 122, 26, 0.22), 0 12px 28px rgba(255, 122, 26, 0.14);
}

.dai-icon-button--ghost .ti {
	font-size: 18px;
}

.dai-topbar-button--icon-only .ti {
	font-size: 19px;
}

.dai-export-button .ti {
	font-size: 18px;
}

.dai-layer-button--icon-only .ti {
	font-size: 18px;
}

.dai-rail-button .ti {
	font-size: 22px;
}

.dai-search-field .ti,
.dai-field .ti {
	color: currentColor;
	font-size: 16px;
	flex: 0 0 auto;
}

.dai-shape-card__icon.ti,
.dai-upload-dropzone>.ti {
	width: 40px;
	height: 40px;
	font-size: 38px;
}

@media (max-width: 640px) {
	.dai-studio-topbar__secondary-actions {
		display: inline-flex;
	}

	.dai-studio-topbar__title-row>.ti {
		width: 28px;
		height: 28px;
		border-radius: 8px;
		font-size: 16px;
	}
}

.dreams-ai-design-studio-page textarea[data-fabric-hiddentextarea] {
	position: fixed !important;
	left: 0 !important;
	top: 0 !important;
	width: 1px !important;
	height: 1px !important;
	opacity: 0 !important;
	pointer-events: none !important;
}