/* Shared 2026 visual layer for the administration surfaces. */
@font-face {
    font-family: "Inter Variable";
    font-style: normal;
    font-display: swap;
    font-weight: 100 900;
    src: url("/image/fonts/inter/inter-vietnamese-wght-normal.woff2") format("woff2-variations");
    unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}

@font-face {
    font-family: "Inter Variable";
    font-style: normal;
    font-display: swap;
    font-weight: 100 900;
    src: url("/image/fonts/inter/inter-latin-ext-wght-normal.woff2") format("woff2-variations");
    unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

@font-face {
    font-family: "Inter Variable";
    font-style: normal;
    font-display: swap;
    font-weight: 100 900;
    src: url("/image/fonts/inter/inter-latin-wght-normal.woff2") format("woff2-variations");
    unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root {
    --primary-color: #9c1c24;
    --primary-dark: #681016;
    --primary-light: #b72a32;
    --accent-color: #e2ae2a;
    --accent-dark: #b47b0b;
    --success-color: #147d52;
    --danger-color: #bd2c36;
    --warning-color: #b46b08;
    --info-color: #2563a9;
    --bg-main: #f3f5f8;
    --bg-card: #ffffff;
    --text-primary: #17202f;
    --text-secondary: #657083;
    --border-color: #dfe4ec;
    --shadow-sm: 0 2px 8px rgba(20, 29, 45, .06);
    --shadow-md: 0 10px 30px rgba(20, 29, 45, .1);
    --shadow-lg: 0 24px 60px rgba(20, 29, 45, .18);
    --radius-sm: 9px;
    --radius-md: 14px;
    --radius-lg: 20px;
}

html {
    color-scheme: light;
    scrollbar-gutter: stable;
}

body.admin-desktop-page,
body.admin-mobile-page,
body.admin-landing {
    font-family: "Inter Variable", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--text-primary);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body.admin-desktop-page *,
body.admin-mobile-page *,
body.admin-landing * {
    font-family: inherit;
}

::selection {
    color: #fff;
    background: var(--primary-color);
}

:where(button, a, input, select, textarea, summary):focus-visible {
    outline: 3px solid rgba(37, 99, 169, .34) !important;
    outline-offset: 2px;
}

:where(button, input, select, textarea):disabled {
    cursor: not-allowed;
    opacity: .6;
}

.skip-link {
    position: fixed;
    top: 10px;
    left: 12px;
    z-index: 100000;
    padding: 10px 14px;
    color: #fff;
    background: #17202f;
    border-radius: 9px;
    box-shadow: var(--shadow-md);
    transform: translateY(-150%);
    transition: transform .18s ease;
}

.skip-link:focus { transform: translateY(0); }

/* Desktop application */
body.admin-desktop-page {
    min-width: 1040px;
    background:
        radial-gradient(circle at 88% 2%, rgba(226, 174, 42, .1), transparent 24rem),
        var(--bg-main);
}

.admin-desktop-page .admin-header {
    min-height: 72px;
    padding: 10px 22px;
    background: linear-gradient(112deg, #681016 0%, #941a22 58%, #6d1017 100%);
    border-bottom: 1px solid rgba(255, 220, 128, .38);
    box-shadow: 0 6px 24px rgba(61, 6, 10, .18);
}

.admin-desktop-page .header-logo {
    width: 46px !important;
    height: 46px !important;
    margin-right: 13px !important;
}

.admin-desktop-page .header-titles h1 {
    font-size: .75rem;
    font-weight: 650;
    letter-spacing: .115em;
    opacity: .82;
}

.admin-desktop-page .header-titles h2 {
    max-width: 620px;
    margin-top: 3px;
    font-size: .98rem;
    letter-spacing: .015em;
    line-height: 1.3;
}

.admin-desktop-page .user-profile-button {
    min-height: 46px;
    padding: 5px 10px 5px 6px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 12px;
    background: rgba(255, 255, 255, .08);
    transition: background .18s ease, border-color .18s ease;
}

.admin-desktop-page .user-profile-button:hover {
    background: rgba(255, 255, 255, .15);
    border-color: rgba(255, 255, 255, .28);
}

.admin-desktop-page .user-avatar {
    background: linear-gradient(135deg, #f6d779, var(--accent-color));
    color: #651017;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .52);
}

.admin-desktop-page .btn-back-home {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .15);
    transition: transform .18s ease, background .18s ease;
}

.admin-desktop-page .btn-back-home:hover {
    background: rgba(255, 255, 255, .2);
    transform: translateY(-1px);
}

.admin-desktop-page .admin-container { min-height: calc(100vh - 72px); }

.admin-desktop-page .admin-sidebar {
    width: 246px;
    padding: 15px 12px 12px;
    background: linear-gradient(180deg, #fff 0%, #f8f9fb 100%);
    border-right: 1px solid var(--border-color);
    box-shadow: 6px 0 24px rgba(23, 32, 47, .04);
    isolation: isolate;
}

.admin-desktop-page .admin-sidebar::before {
    content: "";
    position: absolute;
    inset: auto -40% -130px -40%;
    z-index: -1;
    aspect-ratio: 1;
    background: url("/image/heritage-pattern.svg") center / contain no-repeat;
    opacity: .028;
    pointer-events: none;
}

.admin-desktop-page .sidebar-nav { gap: 4px; }

.admin-desktop-page .nav-item {
    min-height: 44px;
    padding: 10px 12px;
    color: #4c5668;
    border: 1px solid transparent;
    border-radius: 11px;
    font-size: .79rem;
    font-weight: 590;
    transition: color .16s ease, background .16s ease, transform .16s ease;
}

.admin-desktop-page .nav-item:hover {
    color: var(--primary-color);
    background: #fff4f4;
    transform: translateX(2px);
}

.admin-desktop-page .nav-item.active {
    color: #fff;
    background: linear-gradient(112deg, var(--primary-color), #b12a32);
    border-color: rgba(104, 16, 22, .2);
    box-shadow: 0 6px 16px rgba(156, 28, 36, .2);
}

.admin-desktop-page .nav-icon,
.admin-desktop-page .button-icon {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: .94;
}

.admin-desktop-page #btn-change-conference {
    align-items: center;
    gap: 7px;
}

.admin-desktop-page .sidebar-footer {
    padding: 13px 10px 3px;
    color: #8992a2;
    border-top: 1px solid #e7eaf0;
    font-size: .67rem;
}

.admin-desktop-page .admin-main {
    padding: clamp(20px, 2.2vw, 32px);
    background:
        radial-gradient(circle at 95% 0, rgba(226, 174, 42, .07), transparent 24rem),
        linear-gradient(180deg, #f7f8fa 0%, #f1f3f7 100%);
}

.admin-desktop-page .page-header {
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--border-color);
}

.admin-desktop-page .page-header h2 {
    color: #182131;
    font-size: 1.42rem;
    font-weight: 720;
    letter-spacing: -.025em;
}

.admin-desktop-page .page-header p { margin-top: 5px; color: var(--text-secondary); }

.admin-desktop-page .dashboard-welcome-banner {
    padding: 24px !important;
    border: 1px solid rgba(226, 174, 42, .7) !important;
    border-radius: var(--radius-lg) !important;
    background: linear-gradient(118deg, #721018 0%, #9b1d25 62%, #681016 100%) !important;
    box-shadow: 0 15px 36px rgba(104, 16, 22, .18) !important;
}

.admin-desktop-page :where(.panel, .card, .stat-card, .settings-card, .security-card) {
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .96);
    box-shadow: var(--shadow-sm);
}

.admin-desktop-page :where(.panel, .card, .stat-card):hover {
    border-color: #d2d8e2;
}

.admin-desktop-page .stat-card {
    position: relative;
    overflow: hidden;
    padding: 20px;
}

.admin-desktop-page .stat-card::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 64px;
    height: 4px;
    border-radius: 0 0 0 4px;
    background: linear-gradient(90deg, var(--accent-color), var(--primary-color));
}

.admin-desktop-page :where(input, select, textarea) {
    min-height: 42px;
    color: #17202f;
    background-color: #fff;
    border: 1px solid #cfd6e1;
    border-radius: 10px;
    font-size: .84rem;
    transition: border-color .16s ease, box-shadow .16s ease;
}

.admin-desktop-page :where(input, select, textarea):hover { border-color: #aeb8c7; }

.admin-desktop-page :where(input, select, textarea):focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(156, 28, 36, .11);
}

.admin-desktop-page label {
    color: #384355;
    font-size: .78rem;
    font-weight: 630;
}

.admin-desktop-page :where(.btn, .m-btn) {
    min-height: 40px;
    border-radius: 10px;
    font-weight: 650;
    letter-spacing: .005em;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}

.admin-desktop-page :where(.btn, .m-btn):not(:disabled):hover { transform: translateY(-1px); }

.admin-desktop-page :where(.btn-primary, .m-btn-primary) {
    color: #fff;
    background: linear-gradient(115deg, var(--primary-color), #b52730);
    border-color: var(--primary-color);
    box-shadow: 0 5px 13px rgba(156, 28, 36, .18);
}

.admin-desktop-page :where(.btn-secondary, .m-btn-secondary) {
    color: #3e485a;
    background: #fff;
    border-color: #cfd6e1;
}

.admin-desktop-page :where(.table-container, .table-responsive) {
    overflow: auto;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    background: #fff;
    box-shadow: var(--shadow-sm);
}

.admin-desktop-page table { border-collapse: separate; border-spacing: 0; }
.admin-desktop-page thead th {
    color: #4e596b;
    background: #f6f7f9;
    border-bottom-color: #dfe4ec;
    font-size: .7rem;
    font-weight: 720;
    letter-spacing: .035em;
    text-transform: uppercase;
}
.admin-desktop-page tbody tr { transition: background .14s ease; }
.admin-desktop-page tbody tr:hover { background: #fffafa; }

.admin-desktop-page .company-groups-section { margin-top: 28px; }
.admin-desktop-page .section-heading-row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 13px;
}
.admin-desktop-page .section-heading-row h3 {
    margin: 3px 0 4px;
    color: #1e2838;
    font-size: 1.12rem;
}
.admin-desktop-page .company-group-heading-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 9px;
}
.admin-desktop-page .section-kicker {
    color: var(--primary-color);
    font-size: .67rem;
    font-weight: 760;
    letter-spacing: .1em;
}
.admin-desktop-page .company-code-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 9px;
    color: #671117;
    border: 1px solid #ead096;
    border-radius: 9px;
    background: #fff9e9;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .8rem;
    font-weight: 780;
    letter-spacing: .09em;
}
.admin-desktop-page .company-code-copy {
    width: 28px;
    min-height: 28px;
    padding: 4px;
    color: #7a4e0b;
    border: 0;
    background: transparent;
}
.admin-desktop-page .company-code-copy svg {
    width: 15px;
    height: 15px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}
.admin-desktop-page .quota-meter {
    width: 86px;
    height: 6px;
    overflow: hidden;
    margin-top: 6px;
    border-radius: 99px;
    background: #e9edf2;
}
.admin-desktop-page .quota-meter > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--accent-color), var(--primary-color));
}
.admin-desktop-page .company-code-preview {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 13px 14px;
    margin-bottom: 18px;
    color: #4f5969;
    border: 1px dashed #d8bd75;
    border-radius: 11px;
    background: #fffaf0;
}
.admin-desktop-page .company-code-preview[hidden] { display: none; }
.admin-desktop-page .company-code-preview strong {
    color: #681016;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 1rem;
    letter-spacing: .13em;
}

.admin-desktop-page :where(.modal-overlay, .login-overlay) {
    background: rgba(17, 24, 39, .62);
    backdrop-filter: blur(7px);
}

.admin-desktop-page :where(.modal-dialog, .login-card) {
    border: 1px solid rgba(255, 255, 255, .65);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-lg);
}

.admin-desktop-page .modal-header {
    border-bottom: 1px solid var(--border-color);
    background: linear-gradient(180deg, #fff, #fafbfc);
}

.admin-desktop-page :where(.conference-picker-overlay, .login-overlay)::before {
    background-image: url("/image/heritage-pattern.svg") !important;
}

/* Mobile administration application */
body.admin-mobile-page {
    background:
        radial-gradient(circle at 50% -10%, rgba(226, 174, 42, .17), transparent 28rem),
        #e9edf2;
}

.admin-mobile-page .phone-frame-wrapper { background: transparent; }
.admin-mobile-page .phone-device {
    border-color: #242935;
    box-shadow: 0 28px 70px rgba(23, 32, 47, .24);
}
.admin-mobile-page .phone-screen-content { background: #f4f6f9; }
.admin-mobile-page .vneid-mobile-header,
.admin-mobile-page .mobile-subpage-header {
    background: linear-gradient(118deg, #711017, #9c1c24 64%, #681016);
    border-bottom-color: rgba(226, 174, 42, .55);
}
.admin-mobile-page .vneid-mobile-header { position: relative; overflow: hidden; }
.admin-mobile-page .vneid-mobile-header::after {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    right: -48px;
    top: -63px;
    background: url("/image/heritage-pattern.svg") center / contain no-repeat;
    opacity: .08;
    pointer-events: none;
}
.admin-mobile-page .mobile-welcome-card,
.admin-mobile-page .m-stat-box,
.admin-mobile-page .menu-grid-item,
.admin-mobile-page :where(.m-admin-profile-card, .m-security-card, .mobile-list-card) {
    border: 1px solid var(--border-color);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 4px 13px rgba(23, 32, 47, .06);
}
.admin-mobile-page .mobile-welcome-card { margin: 12px; }
.admin-mobile-page .m-stat-box { padding: 13px 10px; }
.admin-mobile-page .m-stat-num { color: var(--primary-color); font-weight: 760; }
.admin-mobile-page .menu-grid-item {
    min-height: 112px;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.admin-mobile-page .menu-grid-item:active { transform: scale(.98); }
.admin-mobile-page .grid-icon-circle { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .7); }
.admin-mobile-page .grid-icon-circle svg,
.admin-mobile-page .button-icon {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.admin-mobile-page .button-icon { width: 14px; height: 14px; }
.admin-mobile-page #m-btn-change-conference { align-items: center; gap: 4px; }
.admin-mobile-page .m-company-groups-section {
    padding: 16px 12px 24px;
    border-top: 1px solid #dde2e9;
}
.admin-mobile-page .m-section-heading-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}
.admin-mobile-page .m-section-heading-row span {
    color: var(--primary-color);
    font-size: .58rem;
    font-weight: 750;
    letter-spacing: .08em;
}
.admin-mobile-page .m-section-heading-row h4 { margin-top: 2px; color: #243043; }
.admin-mobile-page .m-company-group-heading-actions {
    display: flex;
    align-items: center;
    gap: 7px;
}
.admin-mobile-page .m-import-txt-btn {
    min-height: 34px;
    padding: 6px 9px;
    color: var(--primary-color);
    border: 1px solid #e2bfc2;
    border-radius: 9px;
    background: #fff7f8;
    font-size: .67rem;
    font-weight: 740;
}
.admin-mobile-page .m-company-import-help {
    margin: -2px 0 12px;
    color: #697386;
    font-size: .68rem;
    line-height: 1.4;
}
.admin-mobile-page .m-company-code {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    color: #681016;
    border: 1px solid #ead096;
    border-radius: 8px;
    background: #fff9e9;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-weight: 760;
    letter-spacing: .08em;
}
.admin-mobile-page .m-company-group-card { gap: 9px; }
.admin-mobile-page .m-company-code-row,
.admin-mobile-page .m-company-quota-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.admin-mobile-page .m-copy-code-btn {
    min-height: 34px;
    padding: 5px 9px;
    color: var(--primary-color);
    border: 1px solid #e5c4c7;
    border-radius: 8px;
    background: #fff7f8;
    font-size: .7rem;
    font-weight: 700;
}
.admin-mobile-page .m-company-quota-row {
    color: #596579;
    font-size: .72rem;
}
.admin-mobile-page .quota-meter {
    height: 7px;
    overflow: hidden;
    border-radius: 99px;
    background: #e9edf2;
}
.admin-mobile-page .quota-meter > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--accent-color), var(--primary-color));
}
.admin-mobile-page .m-company-code-preview {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 12px;
    color: #596579;
    border: 1px dashed #d8bd75;
    border-radius: 10px;
    background: #fff9e9;
}
.admin-mobile-page .m-company-code-preview strong {
    color: #681016;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    letter-spacing: .1em;
}
.admin-mobile-page .m-form-help {
    margin: 6px 0 0;
    color: #667085;
    font-size: .72rem;
    line-height: 1.45;
}
.admin-mobile-page :where(input, select, textarea) {
    min-height: 44px;
    border: 1px solid #cfd6e1;
    border-radius: 10px;
    background: #fff;
    font-size: 16px;
}
.admin-mobile-page :where(input, select, textarea):focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(156, 28, 36, .11);
}
.admin-mobile-page :where(.m-btn, .mobile-inline-action, .mobile-logout-button) {
    min-height: 40px;
    border-radius: 10px;
    font-weight: 650;
}
.admin-mobile-page .m-btn-primary {
    background: linear-gradient(115deg, var(--primary-color), #b52730);
    box-shadow: 0 5px 12px rgba(156, 28, 36, .17);
}
.admin-mobile-page .phone-bottom-nav {
    border-top: 1px solid #e0e4eb;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 -8px 24px rgba(23, 32, 47, .07);
    backdrop-filter: blur(12px);
}
.admin-mobile-page .qr-floating-btn {
    background: linear-gradient(135deg, var(--primary-color), #b72a32);
    border-color: #fff;
    box-shadow: 0 8px 20px rgba(156, 28, 36, .27);
}
.admin-mobile-page :where(.m-modal-overlay, .m-login-overlay) {
    background: rgba(17, 24, 39, .62);
    backdrop-filter: blur(7px);
}
.admin-mobile-page :where(.m-modal-dialog, .m-login-card, .m-conference-picker-card) {
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 20px;
    box-shadow: var(--shadow-lg);
}

/* Admin interface selector */
body.admin-landing {
    padding: 28px 16px;
    background:
        radial-gradient(circle at 18% 16%, rgba(226, 174, 42, .18), transparent 25rem),
        linear-gradient(132deg, #500b11 0%, #83141c 48%, #3d080c 100%);
}

body.admin-landing::before {
    background-image: url("/image/heritage-pattern.svg") !important;
    background-size: min(76vh, 680px) !important;
    opacity: .055 !important;
}

.admin-landing .container { max-width: 540px; }
.admin-landing .emblem-svg {
    width: 86px !important;
    height: 86px !important;
    animation: none;
}
.admin-landing h1 { font-size: clamp(1.35rem, 4vw, 1.75rem); letter-spacing: .055em; }
.admin-landing h2 { margin: 7px 0 24px; opacity: .86; }
.admin-landing .card {
    padding: 26px;
    border: 1px solid rgba(255, 255, 255, .65);
    border-radius: 22px;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 28px 70px rgba(25, 0, 4, .32);
    backdrop-filter: blur(18px);
}
.admin-landing .selector-title {
    color: #263042;
    font-size: .84rem;
    font-weight: 700;
    letter-spacing: .075em;
    text-transform: uppercase;
}
.admin-landing .btn {
    min-height: 58px;
    margin-bottom: 12px;
    border-radius: 13px;
    font-size: .92rem;
}
.admin-landing .btn-desktop {
    background: linear-gradient(115deg, var(--primary-color), #b52730);
    box-shadow: 0 8px 20px rgba(156, 28, 36, .22);
}
.admin-landing .btn-mobile { border-color: #d7a228; color: #681016; background: #fffaf0; }
.admin-landing .btn-icon { fill: none; stroke: currentColor; stroke-width: 2; }
.admin-landing .footer { margin-top: 20px; color: rgba(255, 255, 255, .72); }

@media (max-width: 768px) {
    .admin-mobile-page .phone-device {
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }
}

/* Delegate questions and private notes */
.question-management-panel { margin-top: 18px; overflow: hidden; }
.question-management-header { align-items: flex-start; }
.question-management-header > div:first-child { display: block; }
.question-management-header .section-kicker { display: block; margin-bottom: 4px; color: #8f1720; font-size: .65rem; font-weight: 800; letter-spacing: .08em; }
.question-management-header h3 { margin: 0; }
.question-management-header p { margin: 4px 0 0; }
.question-management-header > div:first-child svg { width: 20px; height: 20px; color: #8c1820; fill: none; stroke: currentColor; stroke-width: 1.9; }
.question-count-badge { display: inline-grid; place-items: center; min-width: 28px; height: 28px; padding: 0 8px; color: #7f1d1d; font-size: .72rem; font-weight: 800; background: #fff1f2; border: 1px solid #fecdd3; border-radius: 999px; }
.question-management-table td { vertical-align: top; }
.question-ticket-code { display: block; margin-top: 4px; color: #8b95a5; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.question-preview { display: -webkit-box; min-width: 190px; max-width: 360px; overflow: hidden; color: #334155; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.question-action-buttons { display: flex; flex-wrap: wrap; gap: 7px; min-width: 190px; }
.delegate-information-dialog,.conference-editor-dialog { max-width: 620px; }
.delegate-information-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.delegate-information-grid > div,.question-reply-recipient { display: flex; flex-direction: column; gap: 4px; padding: 12px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 11px; }
.delegate-information-grid span,.question-reply-recipient span,.delegate-information-content > span { color: #64748b; font-size: .7rem; font-weight: 750; letter-spacing: .035em; text-transform: uppercase; }
.delegate-information-grid strong,.question-reply-recipient strong { color: #1e293b; overflow-wrap: anywhere; }
.question-reply-recipient small { color: #64748b; overflow-wrap: anywhere; }
.delegate-information-content { margin-top: 12px; padding: 14px; background: #fffdf7; border: 1px solid #f1dfb0; border-radius: 12px; }
.delegate-information-content p { margin: 7px 0 0; color: #263244; line-height: 1.65; overflow-wrap: anywhere; white-space: pre-wrap; }
.delegate-information-actions { padding-top: 12px; }

/* Mobile question workspace */
.admin-mobile-page .icon-questions { color: #7c3aed; background: #f3e8ff; }
.admin-mobile-page .m-question-count { display: grid; place-items: center; min-width: 27px; height: 27px; padding: 0 7px; color: #7f1d1d; font-size: .68rem; font-weight: 800; background: #fff1f2; border-radius: 999px; }
.admin-mobile-page .m-question-card { margin: 0 12px 10px; padding: 13px; background: #fff; border: 1px solid #e0e5ed; border-radius: 14px; box-shadow: 0 5px 15px rgba(23,32,47,.06); }
.admin-mobile-page .m-question-card-header { display: flex; justify-content: space-between; gap: 10px; }
.admin-mobile-page .m-question-card-header > div { min-width: 0; }
.admin-mobile-page .m-question-card-header strong,.admin-mobile-page .m-question-card-header small { display: block; }
.admin-mobile-page .m-question-card-header strong { color: #202939; font-size: .79rem; }
.admin-mobile-page .m-question-card-header small { margin-top: 2px; color: #8b95a5; font: .59rem ui-monospace,SFMono-Regular,Consolas,monospace; }
.admin-mobile-page .m-question-card-header > span { display: grid; place-items: center; flex: 0 0 32px; height: 32px; color: #7c3aed; background: #f3e8ff; border-radius: 9px; }
.admin-mobile-page .m-question-card-header svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2; }
.admin-mobile-page .m-question-delegate-info { display: grid; gap: 3px; margin-top: 10px; color: #64748b; font-size: .63rem; line-height: 1.4; overflow-wrap: anywhere; }
.admin-mobile-page .m-question-preview { display: -webkit-box; margin: 10px 0; overflow: hidden; color: #293548; font-size: .7rem; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.admin-mobile-page .m-question-actions,.admin-mobile-page .m-modal-action-row { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.admin-mobile-page .m-question-actions .m-btn { min-height: 36px; padding: 7px; font-size: .62rem; }
.admin-mobile-page .m-mobile-empty-state { margin: 0 12px; padding: 30px 15px; color: #667085; font-size: .7rem; text-align: center; background: #fff; border: 1px dashed #cdd5df; border-radius: 13px; }
.admin-mobile-page .m-delegate-info-grid { display: grid; gap: 8px; }
.admin-mobile-page .m-delegate-info-grid > div,.admin-mobile-page .m-question-recipient { display: flex; flex-direction: column; gap: 3px; padding: 10px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; }
.admin-mobile-page .m-delegate-info-grid span,.admin-mobile-page .m-question-recipient span,.admin-mobile-page .m-delegate-long-content > span { color: #687386; font-size: .59rem; font-weight: 800; text-transform: uppercase; }
.admin-mobile-page .m-delegate-info-grid strong,.admin-mobile-page .m-question-recipient strong { color: #202939; font-size: .71rem; overflow-wrap: anywhere; }
.admin-mobile-page .m-question-recipient small { color: #687386; font-size: .64rem; overflow-wrap: anywhere; }
.admin-mobile-page .m-delegate-long-content { margin: 10px 0; padding: 11px; background: #fffdf7; border: 1px solid #f0dfb7; border-radius: 10px; }
.admin-mobile-page .m-delegate-long-content p { margin: 5px 0 0; color: #293548; font-size: .69rem; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.admin-mobile-page .m-modal-full-button { width: 100%; margin-top: 10px; }

@media (max-width: 680px) {
    .delegate-information-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
