/*
 * Shell Android (launcher Pixel, SystemUI) — géométrie en dp (1 dp = 1 px CSS dans la scène).
 * Mesures : arbres uiautomator de la GT Pixel Tablet Android 15 (root/docs/campagne-ground-truth-android.md).
 * Couleurs : jetons --and-* générés par build-android-tokens.mjs (home/Android/<v>/style/tokens.css).
 * Portée : html.android-form-tablet / html.android-form-phone + body.and-shell.
 */

html.android-form-tablet,
html.android-form-phone {
    width: 100%;
    height: 100%;
    margin: 0;
    background: #000;
    overflow: hidden;
}

html.android-form-tablet body.and-shell,
html.android-form-phone body.and-shell {
    position: relative;
    width: 100%;
    height: 100%;
    margin: 0;
    font: 400 14px/20px var(--and-font-body, sans-serif);
    color: var(--and-on-surface);
    background: #000;
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
    user-select: none;
}

/* ── Scène logique (1280 × 800 dp en tablette paysage), mise à l'échelle de la fenêtre ── */
html.android-form-tablet body.and-shell #and-stage {
    position: absolute;
    top: 0;
    left: 0;
    width: 1280px;
    height: 800px;
    background: #000;
    transform-origin: 0 0;
    overflow: hidden;
}

html.android-form-tablet.android-orient-port body.and-shell #and-stage {
    width: 800px;
    height: 1280px;
}

html.android-form-tablet body.and-shell #and-wallpaper {
    position: absolute;
    inset: 0;
    background-color: #0f0f19;
    background-image: var(--and-wallpaper);
    background-position: var(--and-wallpaper-position, center);
    background-size: var(--and-wallpaper-size, cover);
    transition: filter 250ms cubic-bezier(0.2, 0, 0, 1);
}

/* ── Barre d'état (24 dp) ── */
html.android-form-tablet body.and-shell #and-statusbar {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    width: 100%;
    height: 24px;
    padding: 0 28.5px 0 8px;
    box-sizing: border-box;
    align-items: center;
    font: 500 14px/24px var(--and-font-body, sans-serif);
    color: #fff;
    z-index: 40;
}

html.android-form-tablet body.and-shell.and-light-status #and-statusbar {
    color: var(--and-on-surface);
}

html.android-form-tablet body.and-shell #and-statusbar .and-sb-time {
    letter-spacing: 0.1px;
}

html.android-form-tablet body.and-shell #and-statusbar .and-sb-icons {
    display: flex;
    margin-left: auto;
    gap: 4px;
    align-items: center;
}

html.android-form-tablet body.and-shell .and-ico {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-color: currentColor;
    -webkit-mask: var(--and-ico) center / contain no-repeat;
    mask: var(--and-ico) center / contain no-repeat;
}

html.android-form-tablet body.and-shell #and-statusbar .and-ico {
    width: 15px;
    height: 15px;
}

html.android-form-tablet body.and-shell .and-batt {
    position: relative;
    display: inline-block;
    width: 8px;
    height: 13px;
    border-radius: 1.5px;
    background: currentColor;
}

html.android-form-tablet body.and-shell .and-batt::before {
    position: absolute;
    top: -1.5px;
    left: 2px;
    width: 4px;
    height: 1.5px;
    border-radius: 0.5px 0.5px 0 0;
    background: currentColor;
    content: "";
}

/* ── Accueil : grille 6 × 5 (cellule 120 × 108,5 dp, pas 184 × 124,5) ── */
html.android-form-tablet body.and-shell #and-home {
    position: absolute;
    inset: 0;
    transition: opacity 250ms cubic-bezier(0.2, 0, 0, 1), transform 250ms cubic-bezier(0.2, 0, 0, 1);
}

html.android-form-tablet body.and-shell #and-workspace {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 699px;
}

html.android-form-tablet body.and-shell .and-cell {
    position: absolute;
    display: block;
    color: #fff;
    text-decoration: none;
}

html.android-form-tablet body.and-shell .and-app {
    display: flex;
    width: 120px;
    height: 108.5px;
    padding-top: 11px;
    box-sizing: border-box;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-app-icon {
    display: block;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    transition: transform 150ms cubic-bezier(0.2, 0, 0, 1);
}

html.android-form-tablet body.and-shell .and-app:active .and-app-icon {
    transform: scale(0.92);
}

html.android-form-tablet body.and-shell .and-app-icon--legacy {
    padding: 9px;
    box-sizing: border-box;
    background: #fff;
    object-fit: contain;
}

html.android-form-tablet body.and-shell .and-app-label {
    display: block;
    max-width: 112px;
    margin-top: 7px;
    font: 400 14px/20px var(--and-font-body, sans-serif);
    color: inherit;
    text-align: center;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.35), 0 1px 3px rgba(0, 0, 0, 0.3);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Dossier : aperçu 2 × 2 sur disque */
html.android-form-tablet body.and-shell .and-folder-icon {
    position: relative;
    display: grid;
    width: 60px;
    height: 60px;
    padding: 9px;
    box-sizing: border-box;
    border-radius: 50%;
    background: var(--and-surface-container-highest);
    grid-template-columns: 1fr 1fr;
    gap: 2px;
}

html.android-form-tablet body.and-shell .and-folder-icon img {
    width: 20px;
    height: 20px;
    border-radius: 50%;
}

/* Carte « Aperçu » (smartspace) */
html.android-form-tablet body.and-shell .and-smartspace {
    width: 434px;
    height: 104px;
    color: #fff;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.3), 0 1px 3px rgba(0, 0, 0, 0.25);
}

html.android-form-tablet body.and-shell .and-ss-date {
    position: absolute;
    top: 22px;
    left: 0;
    font: 400 20px/23.5px var(--and-font-headline, sans-serif);
}

html.android-form-tablet body.and-shell .and-ss-sub {
    position: absolute;
    top: 50.5px;
    left: 0;
    display: flex;
    height: 32px;
    gap: 6px;
    align-items: center;
    font: 400 16px/32px var(--and-font-body, sans-serif);
}

html.android-form-tablet body.and-shell.and-ss-date-only .and-ss-date {
    top: 40px;
}

html.android-form-tablet body.and-shell.and-ss-date-only .and-ss-sub {
    display: none;
}

html.android-form-tablet body.and-shell .and-ss-weather {
    width: 20px;
    height: 20px;
}

/* Widget Horloge « cookie » */
html.android-form-tablet body.and-shell .and-clock {
    width: 304px;
    height: 233px;
}

html.android-form-tablet body.and-shell .and-clock svg {
    position: absolute;
    top: 3px;
    left: 38px;
    width: 228px;
    height: 228px;
}

/* Widget Agenda (non connecté) */
html.android-form-tablet body.and-shell .and-calw {
    width: 304px;
    height: 233px;
    border-radius: 24px;
    color: var(--and-on-surface);
    background: var(--and-widget-background);
    overflow: hidden;
}

html.android-form-tablet body.and-shell .and-calw-head {
    height: 72px;
    padding: 0 12px;
    font: 400 18px/72px var(--and-font-headline, sans-serif);
}

html.android-form-tablet body.and-shell .and-calw-body {
    position: absolute;
    top: 72px;
    left: 4px;
    right: 4px;
    bottom: 4px;
    display: flex;
    border-radius: 20px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--and-secondary-container);
}

html.android-form-tablet body.and-shell .and-calw-info {
    max-width: 260px;
    margin: 0 0 6px;
    font: 400 16px/19px var(--and-font-body, sans-serif);
    color: var(--and-primary);
    text-align: center;
}

html.android-form-tablet body.and-shell .and-btn-filled {
    height: 48px;
    padding: 0 16px;
    border: 0;
    border-radius: 24px;
    font: 400 14px/48px var(--and-font-body, sans-serif);
    color: var(--and-on-primary);
    background: var(--and-primary);
    cursor: pointer;
}

/* ── Dock (hotseat) : barre Google + 6 apps, icônes 60 dp centrées sur y = 731 ── */
html.android-form-tablet body.and-shell #and-hotseat {
    position: absolute;
    top: 699px;
    left: 0;
    width: 100%;
    height: 101px;
}

html.android-form-tablet body.and-shell .and-qsb {
    position: absolute;
    top: 7.5px;
    left: 149.5px;
    display: flex;
    width: 320px;
    height: 50.5px;
    border-radius: 25.25px;
    align-items: center;
    background: #fff;
    cursor: text;
}

html.android-form-tablet body.and-shell .and-qsb-g {
    width: 24px;
    height: 24px;
    margin-left: 16px;
}

html.android-form-tablet body.and-shell .and-qsb-end {
    display: flex;
    margin-left: auto;
    margin-right: 6px;
}

html.android-form-tablet body.and-shell .and-qsb-btn {
    display: flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
}

html.android-form-tablet body.and-shell .and-qsb-btn svg {
    width: 24px;
    height: 24px;
}

html.android-form-tablet body.and-shell .and-hot-app {
    position: absolute;
    top: 2.5px;
    width: 60px;
    height: 60px;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-hot-app img {
    display: block;
    width: 60px;
    height: 60px;
    transition: transform 150ms cubic-bezier(0.2, 0, 0, 1);
}

/* Apps suggérées du dock : anneau de 3 dp (couleur tirée de l'icône), icône réduite à 47,5 dp. */
html.android-form-tablet body.and-shell .and-hot-app.is-predicted {
    display: flex;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: var(--and-ring);
}

html.android-form-tablet body.and-shell .and-hot-app.is-predicted img {
    width: 47.5px;
    height: 47.5px;
}

html.android-form-tablet body.and-shell .and-hot-app:active img {
    transform: scale(0.92);
}

/* ── Tiroir d'apps : panneau 848 dp centré, coins hauts 28 dp ── */
html.android-form-tablet body.and-shell #and-drawer {
    position: absolute;
    top: 24px;
    left: 216px;
    width: 848px;
    height: 776px;
    border-radius: 28px 28px 0 0;
    background: var(--and-surface-dim);
    transform: translateY(100%);
    transition: transform 300ms cubic-bezier(0.2, 0, 0, 1);
    overflow: hidden;
    z-index: 20;
}

html.android-form-tablet body.and-shell.and-drawer-open #and-drawer {
    transform: translateY(0);
}

/* Sous le tiroir : voile noir ≈ 32 % sur fond et accueil (blanc 255 → 173 mesuré), accueil réduit à 0,972. */
html.android-form-tablet body.and-shell.and-drawer-open #and-wallpaper {
    filter: brightness(0.68);
}

html.android-form-tablet body.and-shell.and-drawer-open #and-home {
    filter: brightness(0.68);
    transform: scale(0.972);
}

html.android-form-tablet body.and-shell .and-drawer-handle {
    position: absolute;
    top: 16px;
    left: 408px;
    width: 32px;
    height: 4px;
    border-radius: 2px;
    background: var(--and-outline-variant);
}

html.android-form-tablet body.and-shell .and-drawer-search {
    position: absolute;
    top: 42px;
    left: 60px;
    display: flex;
    width: 728px;
    height: 50.5px;
    border-radius: 25.25px;
    align-items: center;
    background: #fff;
}

html.android-form-tablet body.and-shell .and-drawer-search input {
    flex: 1;
    min-width: 0;
    height: 50.5px;
    margin-left: 8px;
    padding: 0;
    border: 0;
    font: 400 16px/50.5px var(--and-font-body, sans-serif);
    color: var(--and-on-surface);
    background: transparent;
    outline: none;
}

/* GT : champ vide sans texte indicatif visible (le libellé « Recherche Web/applis » reste accessible). */
html.android-form-tablet body.and-shell .and-drawer-search input::placeholder {
    color: transparent;
}

html.android-form-tablet body.and-shell .and-drawer-scroll {
    position: absolute;
    top: 69px;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 36px 24px 24px;
    overflow-y: auto;
    scrollbar-width: none;
}

html.android-form-tablet body.and-shell .and-drawer-grid {
    display: grid;
    grid-template-columns: repeat(6, 133.33px);
    grid-auto-rows: 125px;
}

html.android-form-tablet body.and-shell .and-drawer-grid--predictions {
    grid-auto-rows: 112.5px;
}

html.android-form-tablet body.and-shell .and-drawer-grid .and-app {
    width: 133.33px;
    height: 125px;
    padding-top: 18.5px;
    color: var(--and-on-surface);
}

html.android-form-tablet body.and-shell .and-drawer-grid .and-app-label {
    max-width: 120px;
    text-shadow: none;
}

html.android-form-tablet body.and-shell .and-drawer-grid--predictions .and-app {
    height: 112.5px;
    padding-top: 13px;
}

html.android-form-tablet body.and-shell .and-drawer-divider {
    height: 43px;
    font: 500 14px/43px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant);
    text-align: center;
}

html.android-form-tablet body.and-shell .and-drawer-empty {
    padding: 48px 0;
    font: 400 16px/24px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant);
    text-align: center;
}

/* ── Volet : réglages rapides (gauche, 640 dp) + notifications (droite) sur fond opaque ── */
html.android-form-tablet body.and-shell #and-shade {
    position: absolute;
    inset: 0;
    color: var(--and-on-shade-inactive);
    background: #000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 200ms cubic-bezier(0.2, 0, 0, 1), visibility 0s linear 200ms;
    z-index: 50;
}

html.android-form-tablet body.and-shell.and-shade-open #and-shade {
    opacity: 1;
    visibility: visible;
    transition: opacity 200ms cubic-bezier(0.2, 0, 0, 1);
}

html.android-form-tablet body.and-shell .and-shade-head {
    position: absolute;
    top: 0;
    left: 40px;
    right: 24px;
    display: flex;
    height: 56px;
    gap: 8px;
    align-items: center;
    font: 400 14px/56px var(--and-font-body, sans-serif);
    color: #fff;
}

html.android-form-tablet body.and-shell .and-shade-head .and-shade-icons {
    display: flex;
    margin-left: auto;
    gap: 6px;
    align-items: center;
}

html.android-form-tablet body.and-shell .and-shade-head .and-ico {
    width: 15px;
    height: 15px;
}

html.android-form-tablet body.and-shell .and-qs {
    position: absolute;
    top: 56px;
    left: 40px;
    width: 560px;
}

html.android-form-tablet body.and-shell .and-brightness {
    position: relative;
    height: 48px;
    margin: 16px 0;
}

/* Luminosité : pilule remplie jusqu'au curseur (icône soleil), piste restante en trait fin. */
html.android-form-tablet body.and-shell .and-brightness-track {
    position: absolute;
    top: 22px;
    left: 0;
    right: 22px;
    height: 4px;
    border-radius: 2px;
    background: var(--and-shade-inactive);
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-brightness-fill {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--and-brightness, 84%);
    height: 48px;
    border-radius: 24px;
    background: var(--and-shade-active);
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-brightness-fill .and-ico {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 20px;
    height: 20px;
    color: var(--and-on-shade-active);
}

html.android-form-tablet body.and-shell .and-tiles {
    display: grid;
    grid-template-columns: repeat(3, 181px);
    grid-auto-rows: 80px;
    gap: 8px 8.5px;
}

html.android-form-tablet body.and-shell .and-tile {
    position: relative;
    display: flex;
    height: 80px;
    padding: 0 12px 0 16px;
    box-sizing: border-box;
    border: 0;
    border-radius: 40px;
    align-items: center;
    font: inherit;
    color: var(--and-on-shade-inactive);
    background: var(--and-shade-inactive);
    text-align: left;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-tile.is-on {
    color: var(--and-on-shade-active);
    background: var(--and-shade-active);
}

html.android-form-tablet body.and-shell .and-tile .and-ico {
    flex: none;
    width: 20px;
    height: 20px;
}

html.android-form-tablet body.and-shell .and-tile-text {
    display: flex;
    min-width: 0;
    margin-left: 10px;
    flex: 1;
    flex-direction: column;
}

html.android-form-tablet body.and-shell .and-tile-label {
    font: 400 14px/19px var(--and-font-body, sans-serif);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

html.android-form-tablet body.and-shell .and-tile-sub {
    font: 400 14px/19px var(--and-font-body, sans-serif);
    color: var(--and-on-shade-inactive-variant);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

html.android-form-tablet body.and-shell .and-tile.is-on .and-tile-sub {
    color: var(--and-on-shade-active-variant);
}

html.android-form-tablet body.and-shell .and-tile.is-dim {
    color: var(--and-on-shade-inactive-variant);
    background: var(--and-shade-disabled);
}

html.android-form-tablet body.and-shell .and-tile.is-dim .and-tile-sub {
    color: var(--and-on-shade-inactive-variant);
}

html.android-form-tablet body.and-shell .and-tile-chev {
    flex: none;
    width: 20px;
    height: 20px;
    margin-left: 4px;
}

html.android-form-tablet body.and-shell .and-qs-edit {
    display: flex;
    height: 48px;
    margin-top: 0;
    justify-content: flex-end;
}

html.android-form-tablet body.and-shell .and-round-btn {
    display: flex;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    color: var(--and-on-shade-inactive);
    background: transparent;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-round-btn .and-ico {
    width: 20px;
    height: 20px;
}

html.android-form-tablet body.and-shell .and-qs-foot {
    position: absolute;
    top: 716px;
    left: 460px;
    display: flex;
}

html.android-form-tablet body.and-shell .and-qs-foot .and-round-btn {
    width: 40px;
    height: 40px;
    margin: 4px;
    color: var(--and-on-shade-inactive);
    background: var(--and-shade-inactive);
}

html.android-form-tablet body.and-shell .and-qs-foot .and-round-btn.is-accent {
    color: var(--and-on-shade-active);
    background: var(--and-shade-active);
}

html.android-form-tablet body.and-shell .and-notifs {
    position: absolute;
    top: 56px;
    left: 640px;
    width: 616px;
    height: 704px;
    border-radius: 28px;
    background: var(--and-surface-dim);
    overflow: hidden;
}

html.android-form-tablet body.and-shell .and-notifs-empty {
    position: absolute;
    top: 340px;
    height: 64px;
    left: 0;
    width: 100%;
    font: 400 14px/64px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant);
    text-align: center;
}

html.android-form-tablet body.and-shell .and-notif {
    margin: 16px 16px 0;
    padding: 16px;
    border-radius: 24px;
    color: var(--and-on-surface);
    background: var(--and-surface-container-highest);
}

html.android-form-tablet body.and-shell .and-notif-app {
    font: 400 12px/16px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant);
}

html.android-form-tablet body.and-shell .and-notif-title {
    margin-top: 4px;
    font: 500 16px/22px var(--and-font-body, sans-serif);
}

html.android-form-tablet body.and-shell .and-notif-text {
    font: 400 14px/20px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant);
}

html.android-form-tablet body.and-shell .and-notifs-actions {
    display: flex;
    margin: 12px 16px 0;
    justify-content: space-between;
}

html.android-form-tablet body.and-shell .and-chip {
    height: 32px;
    padding: 0 16px;
    border: 0;
    border-radius: 16px;
    font: 500 14px/32px var(--and-font-body, sans-serif);
    color: var(--and-on-surface);
    background: var(--and-surface-container-low);
    cursor: pointer;
}

/* ── Menu Marche/Arrêt (264 × 203 dp, centré) ── */
html.android-form-tablet body.and-shell #and-power {
    position: absolute;
    top: 298.5px;
    left: 508px;
    display: none;
    width: 264px;
    height: 171px;
    padding: 24px;
    box-sizing: border-box;
    border-radius: 28px;
    gap: 24px;
    background: #303030;
    z-index: 60;
}

html.android-form-tablet body.and-shell.and-power-open #and-power {
    display: flex;
}

/* Menu ouvert : voile noir 60 % sur tout le volet (facteur 0,40 mesuré) ; le bouton devient la boîte. */
html.android-form-tablet body.and-shell.and-power-open #and-shade::after {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    content: "";
}

html.android-form-tablet body.and-shell.and-power-open #and-shade [data-and-act="power"] {
    visibility: hidden;
}

html.android-form-tablet body.and-shell .and-power-act {
    display: flex;
    width: 96px;
    padding: 0;
    border: 0;
    flex-direction: column;
    align-items: center;
    font: 400 14px/19px var(--and-font-body, sans-serif);
    color: #e3e3e3;
    background: transparent;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-power-act i {
    display: flex;
    width: 96px;
    height: 96px;
    margin-bottom: 8px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: #1b1b1b;
}

html.android-form-tablet body.and-shell .and-power-act .and-ico {
    width: 24px;
    height: 24px;
    color: #e3e3e3;
}

/* ── Écran éteint / démarrage ── */
html.android-form-tablet body.and-shell #and-off {
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    font: 400 16px/24px var(--and-font-body, sans-serif);
    color: #5f6368;
    background: #000;
    z-index: 90;
}

html.android-form-tablet body.and-shell.and-off #and-off {
    display: flex;
}

/* ── Récents ── */
html.android-form-tablet body.and-shell #and-recents {
    position: absolute;
    inset: 0;
    display: none;
    background: var(--and-recents-bg, #c5c6d0);
    z-index: 30;
}

html.android-form-tablet body.and-shell.and-recents-open #and-recents {
    display: block;
}

html.android-form-tablet body.and-shell .and-recents-track {
    position: absolute;
    top: 24px;
    left: 0;
    right: 0;
    height: 579.5px;
}

html.android-form-tablet body.and-shell .and-task {
    position: absolute;
    top: 0;
    width: 825px;
    height: 579.5px;
    transition: transform 250ms cubic-bezier(0.2, 0, 0, 1), opacity 250ms;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-task-icon {
    position: absolute;
    top: 0;
    left: 50%;
    width: 48px;
    height: 48px;
    margin-left: -24px;
}

html.android-form-tablet body.and-shell .and-task-snap {
    position: absolute;
    top: 64px;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 16px;
    background: var(--and-surface-container);
    overflow: hidden;
}

html.android-form-tablet body.and-shell .and-task-snap iframe {
    width: 1280px;
    height: 776px;
    border: 0;
    transform: scale(0.6445);
    transform-origin: 0 0;
    pointer-events: none;
}

html.android-form-tablet body.and-shell .and-recents-empty {
    position: absolute;
    top: 360px;
    width: 100%;
    font: 400 16px/24px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant);
    text-align: center;
}

html.android-form-tablet body.and-shell .and-recents-actions {
    position: absolute;
    top: 627.5px;
    left: 0;
    display: flex;
    width: 100%;
    gap: 36px;
    justify-content: center;
}

html.android-form-tablet body.and-shell .and-recents-actions button {
    display: flex;
    height: 48px;
    padding: 0 12px;
    border: 0;
    border-radius: 24px;
    gap: 8px;
    align-items: center;
    font: 400 16px/48px var(--and-font-body, sans-serif);
    color: var(--and-on-surface);
    background: transparent;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-recents-actions .and-ico {
    width: 20px;
    height: 20px;
}

/* ── Barre des tâches (apps et récents) : pilule 539 × 75 dp centrée, y 700–775 (GT) ── */
html.android-form-tablet body.and-shell #and-taskbar {
    position: absolute;
    bottom: 25px;
    left: 50%;
    display: flex;
    height: 75px;
    padding: 0 16px 0 23px;
    box-sizing: border-box;
    border-radius: 37.5px;
    align-items: center;
    background: var(--and-background);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
    transform: translate(-50%, 140%);
    transition: transform 250ms cubic-bezier(0.2, 0, 0, 1);
    z-index: 35;
}

html.android-form-tablet body.and-shell.and-taskbar-on #and-taskbar {
    transform: translate(-50%, 0);
}

html.android-form-tablet body.and-shell #and-taskbar .and-tb-app {
    display: flex;
    width: 52px;
    height: 52px;
    margin-right: 23px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: var(--and-ring, transparent);
    cursor: pointer;
}

html.android-form-tablet body.and-shell #and-taskbar .and-tb-app:last-child {
    margin-right: 0;
}

html.android-form-tablet body.and-shell #and-taskbar .and-tb-app img {
    display: block;
    width: 52px;
    height: 52px;
}

html.android-form-tablet body.and-shell #and-taskbar .and-tb-app.is-predicted img {
    width: 41px;
    height: 41px;
}

/* Bouton « Toutes les applis » : pictogramme du launcher (trois points + loupe en 2 × 2). */
html.android-form-tablet body.and-shell #and-taskbar .and-tb-all {
    display: flex;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    color: var(--and-on-surface);
    background: transparent;
    cursor: pointer;
}

html.android-form-tablet body.and-shell #and-taskbar .and-tb-all .and-ico {
    width: 48px;
    height: 48px;
}

html.android-form-tablet body.and-shell #and-taskbar .and-tb-sep {
    width: 2px;
    height: 36px;
    margin: 0 29.5px 0 13.5px;
    border-radius: 1px;
    background: var(--and-outline);
}

/* ── Apps plein écran ── */
html.android-form-tablet body.and-shell #and-apps {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 25;
}

html.android-form-tablet body.and-shell .and-window {
    position: absolute;
    inset: 0;
    background: var(--and-surface-container);
    opacity: 0;
    visibility: hidden;
    transform: scale(0.9);
    transition: opacity 220ms cubic-bezier(0.2, 0, 0, 1), transform 300ms cubic-bezier(0.2, 0, 0, 1), visibility 0s linear 300ms;
    pointer-events: auto;
}

html.android-form-tablet body.and-shell .and-window.is-front {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: opacity 220ms cubic-bezier(0.2, 0, 0, 1), transform 300ms cubic-bezier(0.2, 0, 0, 1);
}

html.android-form-tablet body.and-shell .and-window iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: var(--and-surface-container);
}

html.android-form-tablet body.and-shell .and-splash {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--and-surface-container);
    transition: opacity 200ms;
}

html.android-form-tablet body.and-shell .and-splash img {
    width: 160px;
    height: 160px;
    border-radius: 50%;
}

html.android-form-tablet body.and-shell .and-splash.is-gone {
    opacity: 0;
    pointer-events: none;
}

html.android-form-tablet body.and-shell .and-app-pending {
    position: absolute;
    top: 24px;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font: 400 16px/24px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant);
}

html.android-form-tablet body.and-shell .and-app-pending img {
    width: 96px;
    height: 96px;
}

/* Poignée d'app (tablette) : 80 × 4 dp à (600, 16), en haut des apps plein écran (GT Paramètres). */
html.android-form-tablet body.and-shell #and-apphandle {
    position: absolute;
    top: 6px;
    left: 580px;
    display: none;
    width: 120px;
    height: 24px;
    cursor: pointer;
    z-index: 45;
}

html.android-form-tablet body.and-shell #and-apphandle::after {
    position: absolute;
    top: 10px;
    left: 20px;
    width: 80px;
    height: 4px;
    border-radius: 2px;
    background: var(--and-on-surface);
    content: "";
}

html.android-form-tablet body.and-shell.and-in-app #and-apphandle {
    display: block;
}

html.android-form-tablet body.and-shell.and-dark-app #and-apphandle::after {
    background: #fff;
}

html.android-form-tablet body.and-shell.and-dark-status #and-apphandle::after {
    background: #fff;
}

html.android-form-tablet body.and-shell.and-dark-app #and-navhandle {
    --and-navhandle: #ececed;
}

html.android-form-tablet body.and-shell.and-recents-open #and-apphandle,
html.android-form-tablet body.and-shell.and-shade-open #and-apphandle {
    display: none;
}

/* Poignée de navigation gestuelle (apps, verrouillage) */
html.android-form-tablet body.and-shell #and-navhandle {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: none;
    width: 260px;
    height: 24px;
    margin-left: -130px;
    cursor: pointer;
    z-index: 70;
}

/* Poignée gestuelle : 220 × 3 dp à y ≈ 783,5 (GT verrouillage et Paramètres). */
html.android-form-tablet body.and-shell #and-navhandle::after {
    position: absolute;
    top: 7px;
    left: 20px;
    width: 220px;
    height: 3px;
    border-radius: 1.5px;
    background: var(--and-navhandle, rgba(0, 0, 0, 0.55));
    content: "";
}

html.android-form-tablet body.and-shell.and-in-app #and-navhandle,
html.android-form-tablet body.and-shell.and-locked #and-navhandle {
    display: block;
}

html.android-form-tablet body.and-shell.and-locked #and-navhandle {
    --and-navhandle: #ececed;
}

html.android-form-tablet body.and-shell.and-recents-open #and-navhandle {
    display: none;
}

/* Verrouillé : fond seul ; barre d'état réduite à la batterie (GT). */
html.android-form-tablet body.and-shell.and-locked #and-home,
html.android-form-tablet body.and-shell.and-locked #and-apps,
html.android-form-tablet body.and-shell.and-locked #and-statusbar .and-sb-time,
html.android-form-tablet body.and-shell.and-locked #and-statusbar .and-ico {
    visibility: hidden;
}

/* ── Écran de verrouillage ── */
html.android-form-tablet body.and-shell #and-lock {
    position: absolute;
    inset: 0;
    display: none;
    color: #fff;
    z-index: 80;
}

html.android-form-tablet body.and-shell.and-locked #and-lock {
    display: block;
}

html.android-form-tablet body.and-shell #and-lock .and-lock-dim {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.2);
}

html.android-form-tablet body.and-shell .and-lock-status {
    position: absolute;
    top: 72px;
    left: 56px;
    display: flex;
    height: 24px;
    gap: 8px;
    align-items: center;
    font: 400 16px/24px var(--and-font-body, sans-serif);
}

/* Grande horloge : chiffres 540–740 × 245–547 dp (GT), corps 204, interligne 157, chasse ≈ 87 %. */
html.android-form-tablet body.and-shell .and-lock-clock {
    position: absolute;
    top: 241.7px;
    left: 440px;
    width: 400px;
    font: 300 204px/157px var(--and-font-clock, var(--and-font-headline, sans-serif));
    font-stretch: 87%;
    color: var(--and-control-activated);
    text-align: center;
}

html.android-form-tablet body.and-shell .and-lock-shortcut {
    position: absolute;
    top: 696px;
    left: 40px;
    display: flex;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    color: var(--and-on-surface);
    background: var(--and-surface-container-high);
}

html.android-form-tablet body.and-shell .and-lock-unlock {
    position: absolute;
    top: 668px;
    left: 604px;
    display: flex;
    width: 72px;
    height: 72px;
    align-items: center;
    justify-content: center;
}

html.android-form-tablet body.and-shell .and-lock-unlock .and-ico {
    width: 18px;
    height: 24px;
}

html.android-form-tablet body.and-shell .and-lock-hint {
    position: absolute;
    top: 740px;
    left: 0;
    width: 100%;
    font: 400 14px/20px var(--and-font-body, sans-serif);
    color: rgba(255, 255, 255, 0.85);
    text-align: center;
    opacity: 0;
    transition: opacity 200ms;
}

html.android-form-tablet body.and-shell.and-lock-hinting .and-lock-hint {
    opacity: 1;
}

/* ── Volume (curseur vertical à droite) ── */
html.android-form-tablet body.and-shell #and-volume {
    position: absolute;
    top: 300px;
    right: 8px;
    display: flex;
    width: 52px;
    padding: 8px 6px;
    box-sizing: border-box;
    border-radius: 26px;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    background: var(--and-background);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    opacity: 0;
    visibility: hidden;
    transform: translateX(16px);
    transition: opacity 180ms, transform 180ms, visibility 0s linear 180ms;
    z-index: 65;
}

html.android-form-tablet body.and-shell.and-volume-open #and-volume {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: opacity 180ms, transform 180ms;
}

html.android-form-tablet body.and-shell .and-vol-ring {
    display: flex;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    color: var(--and-on-shade-active);
    background: var(--and-shade-active);
}

html.android-form-tablet body.and-shell .and-vol-slider {
    position: relative;
    width: 40px;
    height: 200px;
    border-radius: 20px;
    background: var(--and-surface-container-highest);
    overflow: hidden;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-vol-fill {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: var(--and-volume, 40%);
    border-radius: 20px;
    background: var(--and-primary);
}

html.android-form-tablet body.and-shell .and-vol-fill .and-ico {
    position: absolute;
    left: 10px;
    bottom: 10px;
    width: 20px;
    height: 20px;
    color: var(--and-on-primary);
}

html.android-form-tablet body.and-shell .and-vol-more {
    width: 40px;
    height: 24px;
    font: 700 16px/16px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant);
    text-align: center;
}

/* ── Assistant (appui long Marche) ── */
html.android-form-tablet body.and-shell #and-assistant {
    position: absolute;
    left: 50%;
    bottom: 0;
    display: flex;
    width: 560px;
    height: 180px;
    margin-left: -280px;
    border-radius: 24px 24px 0 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font: 500 22px/28px var(--and-font-headline, sans-serif);
    color: #fff;
    background: #1f1f1f;
    transform: translateY(100%);
    transition: transform 250ms cubic-bezier(0.2, 0, 0, 1);
    z-index: 66;
}

html.android-form-tablet body.and-shell.and-assistant-open #and-assistant {
    transform: none;
}

/* Assistant à l'écoute : arrière-plan assombri (facteur 0,84 mesuré), barre lumineuse Google de 3 dp. */
html.android-form-tablet body.and-shell.and-assistant-open #and-wallpaper,
html.android-form-tablet body.and-shell.and-assistant-open #and-home {
    filter: brightness(0.84);
}

html.android-form-tablet body.and-shell #and-assistant::after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    background: linear-gradient(90deg, #4285f4 0 25%, #ea4335 25% 50%, #fbbc04 50% 75%, #34a853 75% 100%);
    box-shadow: 0 -6px 18px rgba(251, 188, 4, 0.35);
    content: "";
}

html.android-form-tablet body.and-shell #and-assistant .and-assistant-kbd {
    position: absolute;
    right: 24px;
    bottom: 40px;
    width: 20px;
    height: 20px;
    color: #e3e3e3;
}

/* ── Dossier ouvert ── */
html.android-form-tablet body.and-shell #and-folder {
    position: absolute;
    display: none;
    width: 370px;
    padding: 24px 16px 0;
    box-sizing: border-box;
    border-radius: 28px;
    background: var(--and-surface-container);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    z-index: 22;
}

html.android-form-tablet body.and-shell.and-folder-open #and-folder {
    display: block;
}

html.android-form-tablet body.and-shell #and-folder .and-folder-grid {
    display: grid;
    grid-template-columns: repeat(3, 102px);
    grid-auto-rows: 104px;
    gap: 16px;
}

html.android-form-tablet body.and-shell #and-folder .and-app {
    width: 102px;
    height: 104px;
    padding-top: 0;
    color: var(--and-on-surface);
}

html.android-form-tablet body.and-shell #and-folder .and-app-label {
    text-shadow: none;
}

html.android-form-tablet body.and-shell #and-folder .and-folder-name {
    height: 64px;
    font: 400 16px/64px var(--and-font-body, sans-serif);
    color: var(--and-on-surface);
    text-align: center;
}

/* ── Voile cliquable des surfaces modales ── */
html.android-form-tablet body.and-shell #and-scrim {
    position: absolute;
    inset: 0;
    display: none;
    z-index: 21;
}

html.android-form-tablet body.and-shell.and-folder-open #and-scrim,
html.android-form-tablet body.and-shell.and-power-open #and-scrim {
    display: block;
}

html.android-form-tablet body.and-shell.and-power-open #and-scrim {
    z-index: 55;
}

/* ── Gboard (clavier à l'écran) — GT nouvel-onglet-clavier : clavier y 432–800 dp (fond #f1f0f7, propre à Gboard),
   barre d'outils 432–488, rangées de 54 dp à 488 / 554 / 620 / 686, touches lettres 88 dp au pas de 100,4,
   poignée de navigation incluse en bas. L'app au premier plan se redimensionne au-dessus (adjustResize). ── */
html.android-form-tablet body.and-shell #and-ime {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    height: 368px;
    padding: 0 16px;
    box-sizing: border-box;
    flex-direction: column;
    font-family: var(--and-font-body, sans-serif);
    color: var(--and-on-surface);
    background: #f1f0f7;
    box-shadow: 0 -1px 3px rgba(0, 0, 0, 0.06);
    transform: translateY(100%);
    transition: transform 250ms cubic-bezier(0.2, 0, 0, 1), visibility 0s linear 250ms;
    visibility: hidden;
    user-select: none;
    z-index: 60;
}

html.android-form-tablet body.and-shell.and-ime-open #and-ime {
    transform: none;
    transition: transform 250ms cubic-bezier(0.2, 0, 0, 1);
    visibility: visible;
}

html.android-form-tablet body.and-shell.and-ime-open .and-window.is-front {
    bottom: 368px;
}

html.android-form-tablet body.and-shell #and-ime button {
    border: 0;
    font-family: inherit;
    color: inherit;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-ime-bar {
    position: relative;
    height: 56px;
    margin: 0 -16px;
    flex: none;
}

html.android-form-tablet body.and-shell .and-ime-tool {
    position: absolute;
    top: 6px;
    display: flex;
    width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    color: var(--and-on-surface-variant);
    background: transparent;
}

html.android-form-tablet body.and-shell .and-ime-tool.is-on {
    color: var(--and-on-surface);
    background: var(--and-primary-fixed-dim);
}

html.android-form-tablet body.and-shell .and-ime-tool.and-ime-mic {
    color: var(--and-on-surface);
    background: #fff;
}

html.android-form-tablet body.and-shell .and-ime-tool b {
    font: 700 14px/1 var(--and-font-body, sans-serif);
    color: #9a9ba3;
}

html.android-form-tablet body.and-shell .and-ime-sep {
    position: absolute;
    top: 6px;
    width: 1px;
    height: 36px;
    background: #c7c7cf;
}

html.android-form-tablet body.and-shell .and-ime-sugg {
    position: absolute;
    top: 6px;
    left: 137px;
    right: 137px;
    display: flex;
    height: 36px;
    align-items: center;
}

html.android-form-tablet body.and-shell .and-ime-sugg button {
    height: 36px;
    min-width: 0;
    padding: 0;
    flex: 1;
    font-size: 20px;
    background: transparent;
    white-space: nowrap;
}

html.android-form-tablet body.and-shell .and-ime-sugg i {
    width: 1px;
    height: 36px;
    background: #c7c7cf;
}

html.android-form-tablet body.and-shell .and-ime-row {
    display: flex;
    height: 54px;
    margin-bottom: 12px;
    gap: 12.4px;
    flex: none;
}

html.android-form-tablet body.and-shell .and-ime-row:nth-child(5) {
    gap: 12px;
}

html.android-form-tablet body.and-shell .and-ime-key {
    position: relative;
    display: flex;
    height: 54px;
    padding: 0;
    border-radius: 8px;
    align-items: center;
    justify-content: center;
    flex: none;
    font-size: 30px;
    line-height: 54px;
    background: #fff;
}

html.android-form-tablet body.and-shell .and-ime-key.is-special {
    font-size: 18px;
    background: var(--and-secondary-fixed);
}

html.android-form-tablet body.and-shell .and-ime-key.is-space {
    font-size: 16px;
    background: #fff;
}

html.android-form-tablet body.and-shell .and-ime-key.is-enter {
    border-radius: 27px;
    background: var(--and-primary-fixed-dim);
}

html.android-form-tablet body.and-shell .and-ime-key.is-on {
    background: var(--and-primary-fixed-dim);
}

html.android-form-tablet body.and-shell .and-ime-key:active {
    filter: brightness(0.92);
}

html.android-form-tablet body.and-shell .and-ime-key sup {
    position: absolute;
    top: 3px;
    right: 12px;
    font-size: 12.5px;
    line-height: 16px;
    color: #48494d;
}

html.android-form-tablet body.and-shell .and-ime-nav {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    height: 48px;
    padding: 0 16px;
    align-items: center;
    justify-content: space-between;
}

html.android-form-tablet body.and-shell #and-ime .and-ime-nav button + button {
    color: #8e8f97;
}

html.android-form-tablet body.and-shell .and-ime-nav button {
    display: flex;
    width: 54px;
    height: 48px;
    padding: 0;
    align-items: center;
    justify-content: center;
    color: var(--and-on-surface-variant);
    background: transparent;
}

/* ── Indicateur de confidentialité (Android 12+) : pastille verte quand une app utilise la caméra, puis point vert.
   GT appareil photo : 56 × 24 dp à x 1204, #3ddc84, pictogramme sombre ; remplace les icônes d'état. ── */
html.android-form-tablet body.and-shell .and-privacy {
    position: absolute;
    top: 0;
    left: 1204px;
    display: none;
    width: 56px;
    height: 24px;
    border-radius: 12px;
    align-items: center;
    justify-content: center;
    color: #1b1b1b;
    background: #3ddc84;
}

html.android-form-tablet body.and-shell.and-privacy-chip .and-privacy {
    display: flex;
}

/* Peaux à deux pictogrammes (micro / caméra) : un seul visible selon la source. */
html.android-form-tablet body.and-shell .and-privacy .is-mic,
html.android-form-tablet body.and-shell.and-privacy-mic .and-privacy .is-cam {
    display: none;
}

html.android-form-tablet body.and-shell.and-privacy-mic .and-privacy .is-mic {
    display: block;
}

html.android-form-tablet body.and-shell.and-privacy-mic.and-privacy-dot .and-privacy .is-mic {
    display: none;
}

html.android-form-tablet body.and-shell.and-privacy-chip #and-statusbar .and-sb-icons {
    visibility: hidden;
}

html.android-form-tablet body.and-shell.and-privacy-dot .and-privacy {
    top: 9px;
    left: 1265px;
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
}

html.android-form-tablet body.and-shell.and-privacy-dot .and-privacy svg {
    display: none;
}

html.android-form-tablet body.and-shell.and-status-hidden.and-in-app #and-statusbar {
    visibility: hidden;
}

/* ── Icône dynamique de l'Horloge (lanceur Pixel) : cadran = fond adaptatif masqué, aiguilles = couches de
   108 dp (150 % de la zone visible, décalées de -25 %) tournées autour du centre selon l'heure. ── */
html.android-form-tablet body.and-shell .and-clock-icon {
    position: relative;
    overflow: hidden;
}

html.android-form-tablet body.and-shell .and-clock-icon img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

html.android-form-tablet body.and-shell .and-clock-icon .and-clock-hand {
    top: -25%;
    left: -25%;
    width: 150%;
    height: 150%;
}

html.android-form-tablet body.and-shell .and-clock-h {
    transform: rotate(var(--and-h, 300deg));
}

html.android-form-tablet body.and-shell .and-clock-m {
    transform: rotate(var(--and-m, 60deg));
}

/* ── Autorisation d'exécution (boîte du contrôleur d'autorisations) ── */
html.android-form-tablet body.and-shell .and-perm {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 70;
}

html.android-form-tablet body.and-shell .and-perm[hidden] {
    display: none;
}

html.android-form-tablet body.and-shell .and-perm-box {
    position: absolute;
    top: 254.5px;
    left: 368px;
    width: 544px;
    padding: 24px 24px 26px;
    box-sizing: border-box;
    border-radius: 28px;
    text-align: center;
    background: var(--and-surface-container, #eeedf6);
}

html.android-form-tablet body.and-shell .and-perm-ic {
    width: 32px;
    height: 32px;
    color: var(--and-primary, #4e5e8b);
}

html.android-form-tablet body.and-shell .and-perm-box p {
    margin: 12px 0 28px;
    font: 400 24px/32.25px var(--and-font-body, sans-serif);
    color: var(--and-on-surface, #1a1b20);
}

html.android-form-tablet body.and-shell .and-perm-btn {
    display: block;
    width: 100%;
    height: 40px;
    margin-top: 16px;
    border: 0;
    border-radius: 20px;
    font: 400 14px/40px var(--and-font-body, sans-serif);
    color: var(--and-on-primary, #fff);
    background: var(--and-primary, #4e5e8b);
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-perm-btn:first-of-type {
    margin-top: 0;
}

/* Position (GT Appareil photo, image 16) : carte 368–912 dp (les bornes uiautomator incluent 16 dp d'ombre),
   message 24 sp sur deux lignes, choix de précision (disques de 130 dp à 32 dp d'écart, libellé en gras si
   choisi), trois boutons de 40 dp espacés de 16 dp. Carte centrée entre les barres système (shell). */

html.android-form-tablet body.and-shell .and-perm-box--location p {
    margin: 12px 0 24px;
}

html.android-form-tablet body.and-shell .and-perm-acc {
    display: flex;
    height: 181px;
    margin: 0 0 4px;
    gap: 32px;
    justify-content: center;
}

html.android-form-tablet body.and-shell .and-perm-acc button {
    display: flex;
    width: 130px;
    height: 157px;
    padding: 0;
    border: 0;
    flex-direction: column;
    align-items: center;
    font: 400 14px/20px var(--and-font-body, sans-serif);
    color: var(--and-on-surface, #1a1b20);
    background: transparent;
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-perm-acc button.is-on {
    font-weight: 700;
}

html.android-form-tablet body.and-shell .and-perm-acc .and-icc {
    display: block;
    width: 130px;
    height: 130px;
    margin: 0 0 7px;
    background: var(--and-icc) center / contain no-repeat;
}

/* ── Pages de réglages rapides (points de pagination ; numéro de build sur la dernière page) ── */
html.android-form-tablet body.and-shell .and-qs-pager {
    position: relative;
    display: flex;
    height: 24px;
    align-items: center;
    justify-content: center;
}

html.android-form-tablet body.and-shell .and-qs-dots {
    display: flex;
    gap: 4px;
    align-items: center;
}

html.android-form-tablet body.and-shell .and-qs-dot {
    width: 6px;
    height: 6px;
    padding: 0;
    border: 0;
    border-radius: 3px;
    background: rgba(48, 50, 59, 0.45);
    cursor: pointer;
}

html.android-form-tablet body.and-shell .and-qs-dot.is-on {
    width: 12px;
    background: #5d5f68;
}

html.android-form-tablet body.and-shell .and-qs-build {
    position: absolute;
    left: 0;
    font: 400 12px/24px var(--and-font-body, sans-serif);
    color: var(--and-on-surface-variant, #45464f);
}
