/* Atlus Shell — three-column layout */ * { margin: 0; padding: 0; box-sizing: border-box; } html, body { height: 100dvh; overflow: hidden; font-family: var(--font-ui); background: var(--bg-stage); color: var(--text-primary); -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%; } body { display: flex; flex-direction: row; } /* Utility */ .hidden { display: none !important; } /* Scrollbar styling */ ::-webkit-scrollbar { width: 6px; height: 6px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: var(--border-component); border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: var(--text-muted); } /* System menu overlay */ .system-menu { position: fixed; inset: 0; z-index: 1000; background: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; } .system-menu-content { background: var(--bg-titlebar); border: 1px solid var(--border-structural); border-radius: var(--radius-lg); padding: 8px; min-width: 200px; } .system-menu-item { display: block; width: 100%; padding: 12px 16px; background: none; border: none; color: var(--text-primary); font-family: var(--font-ui); font-size: 14px; text-align: left; border-radius: var(--radius-sm); cursor: pointer; min-height: var(--tap-min); display: flex; align-items: center; } .system-menu-item:hover { background: var(--accent-hover); } .system-menu-danger { color: var(--status-red); } .system-menu-sep { height: 1px; background: var(--border-structural); margin: 4px 8px; } .system-menu-about { padding: 8px 16px; color: var(--text-muted); font-family: var(--font-mono); font-size: 12px; text-align: center; } /* Welcome screen */ .welcome-screen { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; gap: 16px; } .welcome-logo { font-family: var(--font-mono); font-size: 72px; font-weight: 500; color: var(--text-ghost); } .welcome-text { font-size: 14px; color: var(--text-muted); } /* Responsive — portrait/narrow */ @media (max-width: 768px) { .dock { position: fixed; left: -var(--dock-width); z-index: 100; transition: transform var(--transition-base); } .dock.open { transform: translateX(var(--dock-width)); } .panel { position: fixed; right: calc(-1 * var(--panel-width)); z-index: 100; transition: transform var(--transition-base); } .panel.open { transform: translateX(calc(-1 * var(--panel-width))); } .stage { width: 100%; } }