113 lines
12 KiB
CSS
113 lines
12 KiB
CSS
/* Creation-specific geometry. Shared controls still use the workspace tokens. */
|
|
.creation-mode-tabs { position: relative; isolation: isolate; display: grid; width: min(456px, 100%); margin: 0 auto 20px; padding: 4px; border-radius: 18px; background: var(--user-surface-muted); }
|
|
.creation-mode-indicator { position: absolute; z-index: -1; top: 4px; left: 4px; bottom: 4px; border-radius: 14px; background: var(--user-surface); box-shadow: 0 2px 8px color-mix(in srgb, var(--user-ink) 5%, transparent); }
|
|
.creation-mode-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; height: 44px; padding: 0 12px; border: 0; border-radius: 14px; background: transparent; color: var(--user-ink-muted); font-size: 14px; font-weight: 600; cursor: pointer; transition: color var(--user-motion), transform var(--user-motion); }
|
|
.creation-mode-button svg { width: 18px; height: 18px; stroke-width: 1.8; }
|
|
.creation-mode-button[data-mode="video"] svg { color: var(--user-accent); }
|
|
.creation-mode-button[data-mode="image"] svg { color: var(--product-accent-green); }
|
|
.creation-mode-button[data-mode="text"] svg { color: var(--product-accent-orange); }
|
|
.creation-mode-button[data-mode="agent"] svg { color: var(--product-accent-blue); }
|
|
.creation-mode-button[aria-pressed="true"], .creation-mode-button:hover { color: var(--user-ink); }
|
|
.creation-mode-button:active { transform: scale(.97); }
|
|
.creation-mode-button:focus-visible { outline: 2px solid var(--user-accent); outline-offset: 2px; }
|
|
.creation-mode-spark { width: 5px; height: 5px; border-radius: 50%; background: var(--user-accent); box-shadow: 0 0 0 3px var(--user-accent-soft); }
|
|
.creation-mode-tabs[data-active-mode="agent"] .creation-mode-indicator { background: linear-gradient(115deg, var(--user-accent-soft), color-mix(in srgb, var(--product-accent-blue) 12%, var(--user-surface))); }
|
|
.creation-mode-tabs[data-active-mode="video"] .creation-mode-indicator { background: linear-gradient(115deg, var(--user-surface), var(--user-accent-soft)); }
|
|
.creation-mode-tabs[data-active-mode="image"] .creation-mode-indicator { background: color-mix(in srgb, var(--product-accent-green) 9%, var(--user-surface)); }
|
|
.creation-mode-tabs[data-active-mode="text"] .creation-mode-indicator { background: color-mix(in srgb, var(--product-accent-orange) 9%, var(--user-surface)); }
|
|
.creation-agent-entry { display: grid; grid-template-columns: 88px minmax(0, 1fr); align-items: center; gap: 16px 24px; padding: 28px; margin-bottom: 20px; border-radius: var(--user-radius-card); background: radial-gradient(ellipse at top right, var(--user-accent-soft), transparent 60%), var(--user-surface); animation: product-card-enter var(--product-enter) var(--product-ease) backwards; }
|
|
.creation-agent-orb { grid-row: span 2; }
|
|
.creation-agent-eyebrow { font-size: 10px; font-weight: 650; letter-spacing: .14em; color: var(--user-accent); }
|
|
.creation-agent-copy h2 { margin: 4px 0 8px; font-size: 21px; font-weight: 650; color: var(--user-ink); }
|
|
.creation-agent-copy p { margin: 0; max-width: 62ch; font-size: 13px; line-height: 1.8; color: var(--user-ink-muted); }
|
|
.creation-agent-actions { display: flex; flex-wrap: wrap; gap: 8px; }
|
|
.creation-agent-error { grid-column: 1 / -1; color: var(--status-error); font-size: 12px; margin: 0; }
|
|
.creation-home .creation-empty-composer[hidden] { display: none; }
|
|
.creation-submit { margin-left: auto; flex: 0 0 auto; display: inline-flex; gap: 8px; }
|
|
.creation-submit-cost { display: inline-flex; align-items: center; gap: 4px; color: var(--user-ink-muted); font-size: 12px; padding-inline: 8px; }
|
|
.creation-submit-cost svg { width: 14px; height: 14px; }
|
|
@layer utilities {
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn { height: auto; min-height: 40px; padding: 0; border: 0; background: transparent !important; box-shadow: none; border-radius: 999px; opacity: 1; }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn .creation-submit-action { position: relative; overflow: hidden; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; gap: 8px; width: auto; height: 40px; padding: 0 18px; border-radius: 999px; background: var(--user-action-gradient); color: var(--user-action-foreground); transition: background var(--user-motion), box-shadow var(--user-motion), transform var(--user-motion); }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn .creation-submit-action::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 28%, rgb(255 255 255 / .28) 48%, transparent 68%); transform: translateX(-120%); pointer-events: none; }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn .creation-submit-action span { font-size: 13px; font-weight: 600; }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn .creation-submit-action svg { width: 17px; height: 17px; color: currentColor; transition: transform var(--user-motion); }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn:disabled .creation-submit-action { background: var(--user-surface-hover); color: var(--user-ink-muted); }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn:not(:disabled):hover .creation-submit-action { box-shadow: 0 8px 22px color-mix(in srgb, var(--user-accent) 28%, transparent); transform: translateY(-1px); }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn:not(:disabled):hover .creation-submit-action::after { animation: creation-submit-sheen 640ms cubic-bezier(.16, 1, .3, 1); }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn:not(:disabled):hover .creation-submit-action svg { transform: translateY(-1px); }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn:not(:disabled):active .creation-submit-action { transform: scale(.97); }
|
|
}
|
|
.creation-inspiration-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
|
|
.creation-inspiration-filters button { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; min-height: 36px; border: 0; border-radius: 999px; color: var(--user-ink-muted); background: transparent; font-size: 13px; transition: background var(--user-motion), color var(--user-motion); }
|
|
.creation-inspiration-filters button span { font-size: 11px; opacity: .65; font-variant-numeric: tabular-nums; }
|
|
.creation-inspiration-filters button:hover { background: var(--user-surface-hover); }
|
|
.creation-inspiration-filters button[aria-pressed="true"] { background: var(--user-ink); color: var(--user-surface); }
|
|
.creation-inspiration-filters button:focus-visible { outline: 2px solid var(--user-accent); outline-offset: 2px; }
|
|
.creation-inspiration-overlay { position: absolute; inset: auto 12px 12px; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 6px; padding: 8px 12px; border-radius: var(--user-radius-control); background: var(--user-surface); color: var(--user-ink); font-size: 12px; transform: translateY(6px); opacity: 0; transition: opacity var(--user-motion), transform var(--user-motion); }
|
|
.creation-inspiration-overlay svg { width: 14px; height: 14px; transform: rotate(45deg); }
|
|
.creation-featured-card:hover .creation-inspiration-overlay, .creation-featured-card:focus-visible .creation-inspiration-overlay { opacity: 1; transform: translateY(0); }
|
|
.creation-inspiration-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-top: 24px; color: var(--user-ink-muted); font-size: 12px; }
|
|
.creation-inspiration-footer details { max-width: 60ch; }
|
|
.creation-inspiration-footer summary { cursor: pointer; padding-block: 8px; }
|
|
.creation-inspiration-footer p { line-height: 1.7; margin: 8px 0; }
|
|
.creation-inspiration-footer a { color: var(--user-accent); }
|
|
@media (max-width: 620px) {
|
|
.creation-mode-button { padding-inline: 6px; font-size: 12px; gap: 6px; }
|
|
.creation-agent-entry { grid-template-columns: 1fr; padding: 20px; gap: 12px; }
|
|
.creation-agent-orb { display: none; }
|
|
.creation-agent-copy h2 { font-size: 18px; }
|
|
.creation-agent-actions > .ant-btn { width: 100%; }
|
|
.creation-inspiration-filters { gap: 4px; }
|
|
.creation-inspiration-filters button { padding-inline: 10px; }
|
|
.creation-inspiration-footer { align-items: flex-start; flex-direction: column; }
|
|
.creation-home .creation-chat-dock { flex-wrap: wrap; gap: 12px; }
|
|
.creation-home .creation-chat-controls { flex: 1 1 100%; width: 100%; }
|
|
}
|
|
.app-user-workspace .creation-voice-trigger.ant-btn {
|
|
width: 36px !important;
|
|
min-width: 36px !important;
|
|
height: 36px !important;
|
|
border-radius: 999px !important;
|
|
background: color-mix(in srgb, var(--product-accent-blue) 12%, var(--user-surface-muted)) !important;
|
|
color: var(--product-accent-blue) !important;
|
|
transition: background var(--user-motion), color var(--user-motion), transform var(--user-motion), box-shadow var(--user-motion) !important;
|
|
}
|
|
.app-user-workspace .creation-voice-trigger.ant-btn:hover,
|
|
.app-user-workspace .creation-voice-trigger.ant-btn:focus-visible {
|
|
background: color-mix(in srgb, var(--product-accent-blue) 20%, var(--user-surface)) !important;
|
|
color: var(--product-accent-blue) !important;
|
|
transform: translateY(-1px);
|
|
box-shadow: 0 8px 18px color-mix(in srgb, var(--product-accent-blue) 18%, transparent);
|
|
}
|
|
.app-user-workspace .creation-chat-control > svg:first-child,
|
|
.app-user-workspace .creation-model-picker .canvas-model-picker-trigger-icon { transition: transform var(--user-motion), color var(--user-motion); }
|
|
.app-user-workspace .creation-chat-control:hover > svg:first-child,
|
|
.app-user-workspace .creation-model-picker:hover .canvas-model-picker-trigger-icon { transform: scale(1.08); }
|
|
.app-user-workspace .creation-chat-control:has(.lucide-wand-sparkles) > svg:first-child { color: var(--product-accent-violet); }
|
|
.app-user-workspace .creation-chat-control:has(.lucide-clock-3) > svg:first-child { color: var(--product-accent-orange); }
|
|
.app-user-workspace .creation-chat-control:has(.lucide-sliders-horizontal) > svg:first-child { color: var(--product-accent-green); }
|
|
.app-user-workspace .creation-chat-control:has(.lucide-waves) > svg:first-child { color: var(--product-accent-cyan); }
|
|
.app-user-workspace .creation-chat-control:has(.lucide-brain) > svg:first-child { color: var(--product-accent-blue); }
|
|
.app-user-workspace .creation-chat-control.is-clear > svg:first-child { color: #c45b5b; }
|
|
.app-user-workspace .creation-chat-control.is-clear:hover { background: color-mix(in srgb, #c45b5b 12%, var(--user-surface)) !important; color: #c45b5b !important; }
|
|
.app-user-workspace .creation-model-picker .canvas-model-picker-trigger-icon { color: var(--product-accent-orange); }
|
|
.app-user-workspace .creation-launchpad .creation-reference-add-button:hover:not(:disabled) {
|
|
border-style: solid;
|
|
border-color: var(--user-accent);
|
|
background: color-mix(in srgb, var(--user-accent) 12%, var(--user-surface));
|
|
color: var(--user-accent);
|
|
transform: translateY(-1px);
|
|
}
|
|
.app-user-workspace .creation-launchpad .creation-reference-add-button:active:not(:disabled) { transform: scale(.97); }
|
|
@keyframes creation-submit-sheen { to { transform: translateX(120%); } }
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.creation-mode-button:active { transform: none; }
|
|
.creation-agent-entry { animation: none; }
|
|
.app-user-workspace .creation-chat-composer,
|
|
.app-user-workspace .creation-chat-control,
|
|
.app-user-workspace .creation-voice-trigger.ant-btn,
|
|
.app-user-workspace .creation-submit-action { transition: none !important; transform: none !important; }
|
|
.app-product-workspace .creation-home .creation-submit.ant-btn:not(:disabled):hover .creation-submit-action::after { animation: none; }
|
|
}
|