.gicell-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

.gicell-auth { max-width: 420px; margin: 3rem auto; padding: 2rem; border: 1px solid #eee; border-radius: 12px; }
.gicell-auth__title { margin-top: 0; }
.gicell-auth__errors { background: #fdecea; border: 1px solid #f5c6cb; color: #8a1f1f; padding: .75rem 1rem; border-radius: 8px; margin-bottom: 1rem; }
.gicell-auth__errors p { margin: .25rem 0; }
.gicell-field { display: flex; flex-direction: column; margin-bottom: 1rem; }
.gicell-field label { font-weight: 600; margin-bottom: .35rem; }
.gicell-field input[type="text"], .gicell-field input[type="email"], .gicell-field input[type="password"] { padding: .6rem .75rem; border: 1px solid #ccc; border-radius: 8px; }
.gicell-field--check { flex-direction: row; align-items: center; gap: .4rem; }
.gicell-field small { color: #666; margin-top: .25rem; }
.gicell-btn { width: 100%; padding: .75rem 1rem; border: 0; border-radius: 8px; background: #111; color: #fff; font-weight: 600; cursor: pointer; }
.gicell-btn:hover { background: #333; }
.gicell-auth__alt { text-align: center; margin: .5rem 0 0; }

.gicell-account { max-width: 900px; margin: 2rem auto; }
.gicell-account__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.gicell-account__logout { font-size: .9rem; }
.gicell-account__section { margin-top: 2rem; }
.gicell-account__courses { list-style: none; padding: 0; display: grid; gap: .5rem; }
.gicell-account__courses li a { display: block; padding: .75rem 1rem; border: 1px solid #eee; border-radius: 8px; }
