body:has(dialog[open]){overflow:hidden}
#accountArea .account-name{display:inline-flex;align-items:center;gap:9px;padding:5px 0;border:0;background:transparent;box-shadow:none;max-width:220px}
.account-avatar{width:32px;height:32px;flex:0 0 32px;display:inline-grid;place-items:center;border:0;border-radius:50%;overflow:hidden;background:var(--bg-panel-hover);color:var(--ink);font-size:14px}
.account-avatar img{width:100%;height:100%;object-fit:cover}
.account-nickname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gf-dialog{box-sizing:border-box;width:min(540px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:24px;color:var(--ink);background:var(--bg-panel);border:1px solid var(--line);border-top:2px solid var(--accent);box-shadow:0 24px 100px #0008;font:14px/1.5 var(--font-body);overflow:auto}
.gf-dialog::backdrop{background:#080a0bcc;backdrop-filter:blur(4px)}
.gf-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.gf-dialog h2,.gf-dialog h3{margin:0;color:var(--ink);font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.04em}
.gf-dialog h2{font-size:28px}.gf-dialog h3{font-size:20px}
.gf-dialog button{cursor:pointer;border:1px solid var(--line);border-radius:2px;padding:9px 13px;background:var(--bg-panel-hover);color:var(--ink);font:inherit;min-height:40px}
.gf-dialog button:hover{border-color:var(--accent)}.gf-dialog button:disabled{opacity:.5;cursor:wait}
.gf-dialog button.gf-dialog-close{border:0;background:transparent;padding:4px 10px;font-size:26px}
.gf-dialog .gf-primary,.gf-dialog button[type=submit]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}
.gf-dialog .gf-primary:hover,.gf-dialog button[type=submit]:hover{background:var(--accent-hover)}
.gf-dialog .gf-quiet{background:transparent;font-size:12px}
.gf-profile-identity{display:flex;align-items:center;gap:14px;margin-bottom:24px;overflow-wrap:anywhere}
.gf-profile-identity .account-avatar{width:56px;height:56px;flex-basis:56px}
.gf-profile-names{min-width:0}.gf-profile-names strong,.gf-profile-names small{display:block}.gf-profile-names strong{font-size:18px}.gf-profile-names small{color:var(--muted);margin:2px 0 8px}
.gf-role-badge{display:inline-flex;padding:3px 8px;border:1px solid var(--accent-dark);color:var(--accent);background:var(--bg-dark);font:700 12px var(--font-heading);letter-spacing:.09em;overflow-wrap:anywhere}
.gf-profile-tabs{display:flex;gap:0;border-bottom:1px solid var(--line);margin-bottom:22px}
.gf-profile-tabs button{flex:1;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;font:16px var(--font-heading);letter-spacing:.04em}
.gf-profile-tabs [aria-pressed=true]{color:var(--accent);border-bottom-color:var(--accent)}
.gf-profile-form{display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.gf-field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}
.gf-field input{box-sizing:border-box;width:100%;min-width:0;background:var(--bg-dark);color:var(--ink);border:1px solid var(--line);border-radius:2px;font:16px/1.4 var(--font-body);padding:10px}
.gf-field input:focus{outline:1px solid var(--accent);outline-offset:2px}.gf-field input[type=range]{accent-color:var(--accent);padding:2px}
.gf-form-footer{order:5}.gf-status{color:var(--ink);overflow-wrap:anywhere;margin:8px 0 0;min-height:1em}.gf-hint{color:var(--muted);font-size:12px}
.gf-status:empty{display:none}
.gf-dialog .gf-dropzone{width:100%;margin-top:12px;min-height:90px;border-style:dashed;background:var(--bg-dark)}.gf-dropzone.dragging{border-color:var(--accent)}
.gf-danger{margin-top:24px;border-top:1px solid var(--line);padding-top:14px;color:var(--danger)}.gf-danger summary{cursor:pointer}
.gf-crop-stage{width:min(320px,100%);aspect-ratio:1;position:relative;margin:16px auto;overflow:hidden;background:repeating-conic-gradient(#292d2f 0 25%,#16191b 0 50%) 0/20px 20px}
.gf-crop-stage canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}
.gf-crop-stage::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:50%;border:2px solid var(--accent);box-shadow:0 0 0 120px #080a0baa}
.gf-crop-dialog .gf-field{margin:10px 0}.gf-code-input{text-transform:uppercase;letter-spacing:.35em;text-align:center}
.gf-drawer-shade{position:fixed;inset:var(--gf-drawer-top,72px) 0 0;z-index:88;background:#080a0b66}
body:has(.gf-drawer[open]) .topbar{z-index:90}
.gf-dialog.gf-drawer{position:fixed;inset:var(--gf-drawer-top,72px) 0 0 auto;margin:0;width:min(480px,100vw);height:calc(100dvh - var(--gf-drawer-top,72px));max-height:none;max-width:100vw;border-right:0;border-bottom:0;border-top:2px solid var(--accent);box-shadow:-16px 12px 60px #0006;z-index:89;overscroll-behavior:contain;padding-bottom:max(24px,env(safe-area-inset-bottom))}
.gf-drawer[open]{animation:gf-drawer-in .22s ease-out}.gf-drawer.is-closing{animation:gf-drawer-out .18s ease-in forwards}
@keyframes gf-drawer-in{from{transform:translateX(100%);opacity:.6}to{transform:translateX(0);opacity:1}}
@keyframes gf-drawer-out{to{transform:translateX(100%);opacity:0}}
@media(max-width:600px){.gf-dialog{padding:18px;max-height:calc(100dvh - 20px)}.gf-dialog h2{font-size:25px}#accountArea .account-name{gap:7px;max-width:160px}.account-avatar{width:28px;height:28px;flex-basis:28px}.header-logout{padding:8px!important;font-size:12px!important}.gf-profile-form{gap:12px}.gf-dialog-heading{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.gf-drawer[open],.gf-drawer.is-closing{animation:none}}
.gf-wallet{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 22px;padding:16px;border:1px solid var(--line);background:var(--bg-dark)}.gf-wallet small,.gf-wallet strong{display:block}.gf-wallet small{color:var(--muted);font-size:12px}.gf-wallet strong{color:var(--ink);font:700 25px var(--font-heading)}.gf-wallet a{grid-column:1/-1;color:var(--accent);font-size:13px}.gf-dialog button.gf-public-name{border:0;background:none;min-height:28px;padding:0;font-weight:bold;text-align:left;overflow-wrap:anywhere}.gf-public-name:hover{text-decoration:underline}

.gf-dialog.gf-public-profile{width:min(350px,calc(100vw - 24px));padding:20px;border-radius:8px;border-top:3px solid var(--accent)}
.gf-public-profile .gf-dialog-heading{margin-bottom:18px;padding-bottom:10px}.gf-public-profile h2{font-size:18px}
.gf-public-profile .gf-profile-identity,.gf-public-page .gf-profile-identity{margin-bottom:14px;align-items:center}
.gf-public-profile .account-avatar,.gf-public-page .account-avatar{width:64px;height:64px;flex-basis:64px}
.gf-public-status{border-top:1px solid var(--line);padding-top:12px;margin-top:16px}.gf-public-status p{margin:4px 0;color:var(--muted);font-size:13px}
.gf-public-status .is-online{color:#88bf95}.gf-public-status .is-online:before,.gf-public-status .is-offline:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;background:currentColor}
.gf-public-wallet{background:var(--bg-dark);padding:12px;margin-top:16px;border:1px solid var(--line);border-radius:4px}.gf-public-wallet small,.gf-public-wallet strong{display:block}.gf-public-wallet small{font-size:12px;color:var(--muted)}.gf-public-wallet strong{font:700 25px var(--font-heading);color:var(--ink)}
.gf-public-link{display:inline-block;margin-top:14px;color:var(--accent);font-size:12px}.gf-public-page{max-width:350px;margin:24px auto;padding:22px;background:var(--bg-panel);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:8px}
/* Dossiers and drawers share the site's restrained panels and orange rules. */
.gf-dialog.gf-drawer{width:min(510px,100vw);background:#0e1214;padding:24px}.gf-dialog-heading{margin-bottom:24px;align-items:start}.gf-dialog-heading h2{font-size:30px;letter-spacing:.02em}.gf-dialog-heading::before{content:'';width:3px;height:28px;background:var(--accent);align-self:center}.gf-dialog-heading h2{flex:1}.gf-dialog-heading .gf-dialog-close{color:var(--muted)}
.gf-profile-dialog>.gf-profile-identity{padding:22px;background:linear-gradient(110deg,#151a1dee,#171b1cdc),url('/site-assets/frontier-v2.webp') center/cover;border:1px solid var(--line);margin-bottom:16px;min-height:122px}.gf-profile-dialog>.gf-profile-identity .account-avatar{width:72px;height:72px;flex-basis:72px;box-shadow:0 0 0 4px #0d1113}.gf-profile-names strong{font:700 28px var(--font-heading);letter-spacing:.02em}.gf-profile-names small{font-size:12px;margin:5px 0 10px}.gf-role-badge{font-size:11px;background:#201a14;border-color:#5a3928;color:#edaa77;padding:4px 8px}
.gf-wallet{padding:0;gap:0;border-color:var(--line);background:#11171a}.gf-wallet>div{padding:16px}.gf-wallet>div+div{border-left:1px solid var(--line)}.gf-wallet small{font-size:10px;text-transform:uppercase;letter-spacing:.06em}.gf-wallet strong{font-size:30px;margin-top:5px}.gf-wallet a{border-top:1px solid var(--line);padding:10px 16px;text-decoration:none;font-size:12px}.gf-wallet a:hover{background:var(--bg-panel-hover)}
.gf-profile-tabs{background:var(--bg-panel);margin-bottom:20px}.gf-profile-tabs button{padding:12px 14px;font-size:16px}.gf-profile-form{margin-top:18px;padding:20px;background:var(--bg-panel);border:1px solid var(--line)}.gf-profile-form h3{font-size:21px}.gf-form-footer button{width:100%;margin-top:6px}.gf-avatar-editor{border:1px solid var(--line);background:var(--bg-panel);padding:16px 20px}.gf-avatar-editor summary{cursor:pointer;font:19px var(--font-heading);color:var(--ink)}.gf-profile-form .gf-hint{margin:0}.gf-public-profile .gf-profile-identity{padding:12px 0}.gf-dialog.gf-public-profile{border-radius:2px}.gf-public-wallet{border-radius:0}.gf-public-status{padding-top:15px}.gf-public-profile .gf-dialog-heading::before{height:18px}.gf-public-profile .gf-dialog-heading h2{font-size:20px}
@media(max-width:600px){.gf-dialog.gf-drawer{padding:18px}.gf-dialog-heading h2{font-size:26px}.gf-profile-dialog>.gf-profile-identity{padding:18px;min-height:110px}.gf-profile-dialog>.gf-profile-identity .account-avatar{width:60px;height:60px;flex-basis:60px}.gf-profile-names strong{font-size:25px}.gf-profile-form{padding:16px}.gf-avatar-editor{padding:15px}.gf-wallet>div{padding:14px}}
@media(max-width:600px){.gf-dialog.gf-drawer{padding:16px}.gf-dialog-heading{margin-bottom:16px}.gf-dialog-heading h2{font-size:24px}.gf-profile-dialog>.gf-profile-identity{padding:14px;min-height:90px}.gf-profile-dialog>.gf-profile-identity .account-avatar{width:50px;height:50px;flex-basis:50px}.gf-profile-names strong{font-size:23px}.gf-wallet>div{padding:12px}.gf-wallet strong{font-size:25px}.gf-profile-tabs{margin-bottom:14px}.gf-profile-tabs button{font-size:14px;padding:10px;min-height:42px}.gf-profile-form{padding:14px;margin-top:14px}.gf-profile-form input{font-size:16px;min-height:42px}.gf-avatar-editor summary{font-size:17px}}
