@use '../variables' as vars; @use '../mixins' as mixins; // Basic form controls styling for CyberDuck form, .form-control, .form-select { font-family: vars.$cyberduck-font-body; background-color: var(--cyberduck-void-500); color: var(--color-text-primary); border: 1px solid var(--color-border-default); border-radius: 6px; } .form-control:focus, .form-select:focus { outline: none; box-shadow: 0 0 10px rgb(var(--color-variant-primary, 255, 211, 0), 0.08), 0 0 18px var(--color-variant-primary); border-color: var(--color-variant-primary); } label { font-family: vars.$cyberduck-font-display; font-variant-caps: small-caps; color: var(--color-text-secondary); font-size: 0.85rem; letter-spacing: 0.04em; } // Apply chamfered container style to form-group wrapper only .form-group { // keep existing simple group styling for generic use } // Treat a label combined with an input/select as a single chamfered card .form-group:has(> label + .form-control), .form-group:has(> label + .form-select) { @include mixins.cd-chamfered-container; padding: 0.5rem; display: flex; flex-direction: column; gap: 0.25rem; > label { margin: 0; background: transparent; padding: 0 0.25rem; color: var(--color-text-secondary); } > .form-control, > .form-select { border: none; background-color: transparent; box-shadow: none; margin: 0; padding: 0.5rem; border-radius: 0; } } // Treat input groups as a single chamfered card .input-group { @include mixins.cd-chamfered-container; display: flex; align-items: center; gap: 0; padding: 0.125rem; > .form-control, > .form-select { border: none; background-color: transparent; box-shadow: none; margin: 0; padding: 0.5rem 0.75rem; border-radius: 0; flex: 1 1 auto; } > .input-group-text { background: transparent; border: none; padding: 0 0.5rem; color: var(--color-text-primary); } }