:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: #f5f7f9; color: #18202a; } * { box-sizing: border-box; } body { margin: 0; min-height: 100vh; } a { color: #0f6b6e; text-decoration: none; } a:hover { text-decoration: underline; } .topbar { align-items: center; background: #ffffff; border-bottom: 1px solid #d8e0e7; display: flex; gap: 24px; justify-content: space-between; min-height: 64px; padding: 0 32px; } .brand { color: #18202a; font-weight: 700; } nav { align-items: center; display: flex; gap: 18px; } .link-button { background: transparent; border: 0; color: #0f6b6e; cursor: pointer; font: inherit; padding: 0; } main { display: grid; min-height: calc(100vh - 64px); padding: 48px 20px; place-items: start center; } .panel { background: #ffffff; border: 1px solid #d8e0e7; border-radius: 8px; box-shadow: 0 16px 40px rgb(24 32 42 / 8%); max-width: 440px; padding: 28px; width: 100%; } .panel.wide { max-width: 640px; } h1 { font-size: 1.5rem; line-height: 1.2; margin: 0 0 24px; } form { display: grid; gap: 18px; } .grid { display: grid; gap: 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); } label { color: #3a4551; display: grid; font-size: 0.92rem; font-weight: 600; gap: 7px; } input { border: 1px solid #bcc8d3; border-radius: 6px; color: #18202a; font: inherit; min-height: 44px; padding: 10px 12px; width: 100%; } textarea { border: 1px solid #bcc8d3; border-radius: 6px; color: #18202a; font: inherit; padding: 10px 12px; resize: vertical; width: 100%; } input:focus { border-color: #0f6b6e; box-shadow: 0 0 0 3px rgb(15 107 110 / 15%); outline: 0; } textarea:focus { border-color: #0f6b6e; box-shadow: 0 0 0 3px rgb(15 107 110 / 15%); outline: 0; } button[type="submit"] { background: #0f6b6e; border: 1px solid #0f6b6e; border-radius: 6px; color: #ffffff; cursor: pointer; font: inherit; font-weight: 700; min-height: 44px; padding: 10px 14px; } button[type="submit"]:disabled { background: #a9b8c4; border-color: #a9b8c4; cursor: not-allowed; } .message { background: #edf7f4; border: 1px solid #b8ddd3; border-radius: 6px; color: #24564f; margin: 0; padding: 12px; } .message.error { background: #fff1f0; border-color: #efb5ae; color: #8d2b20; } .actions { display: flex; gap: 18px; justify-content: space-between; margin-top: 22px; } .account { color: #637083; margin: -12px 0 24px; } .account-layout { display: grid; gap: 22px; max-width: 1120px; width: 100%; } .account-header { align-items: end; display: flex; gap: 16px; justify-content: space-between; } .account-header h1, .account-header p { margin: 0; } .account-header p { color: #637083; margin-top: 6px; } .button-link { background: #0f6b6e; border-radius: 6px; color: #ffffff; font-weight: 700; padding: 10px 14px; } .button-link:hover { text-decoration: none; } .overview-grid { display: grid; gap: 22px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .info-panel { background: #ffffff; border: 1px solid #d8e0e7; border-radius: 8px; padding: 22px; } .info-panel.full { width: 100%; } .info-panel h2 { font-size: 1.08rem; margin: 0 0 16px; } .avatar { border-radius: 8px; display: block; height: 96px; margin-bottom: 16px; object-fit: cover; width: 96px; } dl { display: grid; gap: 12px; margin: 0; } dl div, .attribute-row { display: grid; gap: 6px; } dt { color: #637083; font-size: 0.82rem; font-weight: 700; } dd { margin: 0; overflow-wrap: anywhere; } .group-list, .attribute-table, .client-list { display: grid; gap: 12px; } .group-item, .attribute-row, .client-item { border: 1px solid #d8e0e7; border-radius: 6px; padding: 12px; } .group-item { display: grid; gap: 5px; } .client-item { display: grid; gap: 12px; } .client-heading { align-items: flex-start; display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; } .client-heading > div:first-child { display: grid; gap: 6px; } .client-edit-form { gap: 14px; } .group-item span, .group-item small, .attribute-row small, .muted { color: #637083; } .attribute-mini-list, .flags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; } .attribute-mini-list span, .flags span { background: #edf2f5; border-radius: 999px; color: #3a4551; font-size: 0.78rem; padding: 4px 8px; } pre { background: #18202a; border-radius: 6px; color: #edf7f4; margin: 0; max-height: 420px; overflow: auto; padding: 14px; white-space: pre-wrap; word-break: break-word; } .check-row { align-items: center; display: flex; flex-direction: row; gap: 10px; } .check-row input { min-height: auto; width: auto; } .secret-box { background: #fff9e8; border: 1px solid #e7cf86; border-radius: 6px; display: grid; gap: 8px; margin-top: 18px; padding: 12px; } code { background: #edf2f5; border-radius: 4px; display: inline-block; max-width: 100%; overflow-wrap: anywhere; padding: 3px 6px; } .row-actions { display: flex; flex-wrap: wrap; gap: 8px; } .muted-action { align-items: center; color: #637083; display: inline-flex; font-size: 0.9rem; min-height: 38px; } .inline-form { align-items: end; display: flex; flex-wrap: wrap; gap: 8px; } select { border: 1px solid #bcc8d3; border-radius: 6px; color: #18202a; font: inherit; min-height: 38px; padding: 8px 10px; } .secondary-action, .danger-action { border-radius: 6px; cursor: pointer; font: inherit; min-height: 38px; padding: 8px 12px; } .secondary-action { background: #ffffff; border: 1px solid #0f6b6e; color: #0f6b6e; } .danger-action { background: #fff1f0; border: 1px solid #efb5ae; color: #8d2b20; } @media (max-width: 560px) { .topbar { align-items: flex-start; flex-direction: column; gap: 10px; padding: 16px 20px; } nav, .actions { flex-wrap: wrap; } main { min-height: calc(100vh - 104px); padding: 24px 14px; } .panel { padding: 22px; } .grid { grid-template-columns: 1fr; } .account-header, .overview-grid { align-items: stretch; grid-template-columns: 1fr; } .account-header { display: grid; } }