.permission-guide-link[hidden] {
    display: none;
}

.permission-guide-overlay {
    z-index: 1300;
}

.permission-guide-modal {
    width: min(960px, calc(100vw - 2rem));
}

.permission-guide-header {
    align-items: flex-start;
}

.permission-guide-eyebrow {
    margin: 0 0 0.25rem;
    color: var(--text-secondary, #5f6368);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.permission-guide-body {
    gap: 1rem;
}

.permission-guide-intro {
    margin: 0;
}

.permission-guide-sections {
    display: grid;
    gap: 1rem;
}

.permission-guide-section {
    display: grid;
    gap: 0.65rem;
}

.permission-guide-section h3,
.permission-guide-notes h3 {
    margin: 0;
    color: var(--text-primary, #202124);
    font-size: 0.95rem;
    line-height: 1.3;
}

.permission-guide-table-shell {
    overflow-x: auto;
    border: 1px solid var(--border-color, #dadce0);
    border-radius: 10px;
    background: #fff;
}

.permission-guide-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.86rem;
}

.permission-guide-table th,
.permission-guide-table td {
    padding: 0.72rem 0.85rem;
    border-bottom: 1px solid var(--border-color, #e8eaed);
    text-align: left;
    vertical-align: top;
    line-height: 1.45;
}

.permission-guide-table th {
    background: var(--panel-bg, #f8f9fa);
    color: var(--text-primary, #202124);
    font-weight: 700;
    white-space: nowrap;
}

.permission-guide-table tr:last-child td {
    border-bottom: 0;
}

.permission-guide-table th:nth-child(1),
.permission-guide-table td:nth-child(1) {
    width: 32%;
}

.permission-guide-table th:nth-child(2),
.permission-guide-table td:nth-child(2) {
    width: 26%;
}

.permission-guide-footer {
    justify-content: flex-start;
}

.permission-guide-notes {
    display: grid;
    gap: 0.4rem;
}

.permission-guide-notes ul {
    display: grid;
    gap: 0.25rem;
    margin: 0;
    padding-left: 1.1rem;
    color: var(--text-secondary, #5f6368);
    font-size: 0.8rem;
    line-height: 1.45;
}

.permission-guide-notes code {
    padding: 0 0.2em;
    border-radius: 4px;
    background: #f1f3f4;
    color: var(--text-primary, #202124);
    font-size: 0.95em;
}

@media (max-width: 640px) {
    .permission-guide-modal {
        width: min(960px, calc(100vw - 1rem));
        max-height: calc(100vh - 1rem);
    }

    .permission-guide-table {
        min-width: 640px;
    }
}
