.application-hero { min-height: calc(100vh - 154px); padding: 82px 0; background: radial-gradient(ellipse at 82% 15%, var(--glow), transparent 35%), var(--paper); }
.form-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); align-items: start; gap: 58px; }
.application-hero h1 { margin-bottom: 16px; font-size: clamp(2.7rem, 5vw, 4.5rem); }
.application-hero h1 span { color: var(--green); }
.section-heading > p { color: var(--muted); font-size: 1.08rem; }
.server-note { display: inline-flex; flex-direction: column; gap: 4px; margin-top: 22px; padding: 15px 18px; border: 1px solid var(--line); border-radius: 9px; background: var(--card); color: var(--muted); font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; }
.server-note button { padding: 0; border: 0; background: none; color: var(--ink); font: inherit; font-size: 1rem; font-weight: 700; letter-spacing: normal; text-align: left; text-transform: none; cursor: pointer; }
.application-card { padding: 36px; border: 1px solid var(--line); border-radius: 10px; background: var(--card); box-shadow: 0 20px 50px var(--glow); }
.application-card h2 { margin-bottom: 4px; font-size: clamp(1.8rem, 3vw, 2.4rem); }
.form-intro { margin-bottom: 28px; color: var(--muted); }
.form-intro b, label b { color: var(--green); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.form-grid.discord-age { grid-template-columns: 1.4fr .7fr; }
.application-card label { display: block; margin-bottom: 17px; color: var(--muted); font-size: .77rem; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.application-card input, .application-card textarea, .application-card select { display: block; width: 100%; margin-top: 8px; padding: 12px 13px; border: 1px solid var(--line); border-radius: 7px; background: var(--paper); color: var(--ink); font: inherit; letter-spacing: normal; text-transform: none; }
.application-card input, .application-card select { height: 48px; }
.application-card textarea { min-height: 112px; resize: vertical; line-height: 1.5; }
.application-card input:focus, .application-card textarea:focus, .application-card select:focus { border-color: var(--green); outline: 2px solid var(--glow); outline-offset: 1px; }
.application-card .consent { display: flex; align-items: flex-start; gap: 10px; color: var(--muted); font-size: .84rem; font-weight: 400; letter-spacing: normal; text-transform: none; }
.consent input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--green); }
.submit-button { width: 100%; margin-top: 4px; cursor: pointer; }
.submit-button:disabled { cursor: wait; opacity: .7; transform: none; }
.form-notice { margin: 0 0 18px; padding: 11px 13px; border: 1px solid #cf6b6b; border-radius: 7px; background: #cf6b6b1a; color: var(--ink); }
.success-view { padding: 24px 10px; text-align: center; }
.success-view p:not(.eyebrow) { max-width: 420px; margin: 0 auto 25px; color: var(--muted); }
.success-icon { display: grid; place-items: center; width: 62px; height: 62px; margin: 0 auto 20px; border-radius: 50%; background: var(--green); color: #18221f; font-size: 2rem; font-weight: 800; }
@media (max-width: 800px) { .form-layout { grid-template-columns: 1fr; gap: 32px; } .application-hero { padding: 58px 0; } }
@media (max-width: 520px) { .application-card { padding: 27px 20px; } .form-grid, .form-grid.discord-age { grid-template-columns: 1fr; gap: 0; } }
.admin-main { min-height: calc(100vh - 154px); padding: 64px 0 80px; background: radial-gradient(ellipse at 20% 5%, var(--glow), transparent 34%), var(--paper); }
.login-card { width: min(100%, 480px); margin: 0 auto; padding: 36px; border: 1px solid var(--line); border-radius: 10px; background: var(--card); }
.login-card h1, .dashboard-heading h1 { margin-bottom: 8px; font-size: clamp(2.2rem, 5vw, 3.4rem); }
.login-card > p:not(.eyebrow):not(.form-notice) { margin-bottom: 28px; color: var(--muted); }
.login-card label { display: block; margin-bottom: 17px; color: var(--muted); font-size: .77rem; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.login-card input, .chat-form input { display: block; width: 100%; height: 48px; margin-top: 8px; padding: 12px 13px; border: 1px solid var(--line); border-radius: 7px; background: var(--paper); color: var(--ink); font: inherit; }
.dashboard-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 30px; }
.dashboard-heading h1 span { color: var(--green); }
.outline-button, .filters button { border: 1px solid var(--line); border-radius: 7px; background: var(--card); color: var(--ink); font: inherit; cursor: pointer; }
.outline-button { padding: 10px 14px; }
.outline-button:hover { border-color: var(--muted); }
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 24px; }
.stats > div { padding: 18px; border: 1px solid var(--line); border-radius: 10px; background: var(--card); }
.stats span { display: block; color: var(--muted); font-size: .85rem; }
.stats strong { display: block; margin-top: 3px; font-size: 1.75rem; }
.filters { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 17px; }
.filters button { padding: 8px 12px; color: var(--muted); }
.filters button.active { border-color: var(--green); color: var(--ink); background: var(--glow); }
.applications { display: grid; gap: 13px; }
.application-item { overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: var(--card); }
.application-heading { display: grid; grid-template-columns: 1.2fr 1fr 1fr auto; align-items: center; width: 100%; gap: 15px; padding: 17px 19px; border: 0; background: transparent; color: var(--muted); font: inherit; text-align: left; cursor: pointer; }
.application-heading:hover { background: var(--band); }
.application-name { color: var(--ink); font-weight: 750; }
.status { padding: 5px 8px; border: 1px solid; border-radius: 99px; font-size: .75rem; font-weight: 750; text-align: center; }
.status.pending { border-color: #c79643; color: #9d701b; }.status.accepted { border-color: #4e9b74; color: #26734c; }.status.rejected { border-color: #bc6464; color: #943b3b; }
:root[data-theme="dark"] .status.pending { color: #f6c66e; }:root[data-theme="dark"] .status.accepted { color: #76d59e; }:root[data-theme="dark"] .status.rejected { color: #f38b8b; }
.application-body { display: none; padding: 0 19px 22px; border-top: 1px solid var(--line); }.application-item.open .application-body { display: block; }
.details { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; margin: 18px 0; }.detail { padding: 12px; border-radius: 7px; background: var(--band); }.detail small { display: block; margin-bottom: 2px; color: var(--muted); }.detail strong { font-size: .94rem; }
.answer { margin-top: 17px; }.answer h3, .team-chat h3 { margin-bottom: 5px; color: var(--muted); font-size: .76rem; letter-spacing: .07em; text-transform: uppercase; }.answer p { margin-bottom: 0; white-space: pre-wrap; }
.actions { display: flex; gap: 10px; margin-top: 20px; }.actions button { flex: 1; padding: 10px; border: 1px solid; border-radius: 7px; background: transparent; font: inherit; font-weight: 700; cursor: pointer; }.actions .accepted { border-color: #4e9b74; color: #26734c; }.actions .rejected { border-color: #bc6464; color: #943b3b; }.actions button:disabled { opacity: .45; cursor: default; }
.team-chat { margin-top: 24px; padding-top: 19px; border-top: 1px solid var(--line); }.chat-list { display: grid; gap: 8px; max-height: 290px; overflow-y: auto; margin-bottom: 10px; }.chat-comment { padding: 10px 12px; border-radius: 7px; background: var(--band); }.chat-comment small, .empty-chat, .empty-state { color: var(--muted); }.chat-comment p { margin: 3px 0 0; white-space: pre-wrap; }.chat-form { display: flex; gap: 9px; }.chat-form input { margin: 0; }.chat-form button { padding: 0 16px; border: 0; border-radius: 7px; background: var(--muted); color: var(--on-muted); font: inherit; font-weight: 700; cursor: pointer; }
@media (max-width: 680px) { .admin-main { padding: 42px 0 58px; }.stats { grid-template-columns: 1fr 1fr; }.application-heading { grid-template-columns: 1fr auto; }.application-heading > span:nth-child(2), .application-heading > span:nth-child(3) { display: none; }.details { grid-template-columns: 1fr; }.dashboard-heading { align-items: flex-start; flex-direction: column; gap: 10px; }.chat-form { flex-direction: column; }.chat-form button { min-height: 42px; } }
