79 lines
2.0 KiB
Dart
79 lines
2.0 KiB
Dart
import 'package:flutter/material.dart';
|
||
|
||
class LoginHeader extends StatelessWidget {
|
||
const LoginHeader({super.key});
|
||
|
||
@override
|
||
Widget build(BuildContext context) => Column(
|
||
children: [
|
||
const SizedBox(height: 40),
|
||
// Dekoratives Logo – der Schulname steht direkt darunter als Text.
|
||
const ExcludeSemantics(
|
||
child: Image(
|
||
image: AssetImage('assets/logo/icon.png'),
|
||
height: 110,
|
||
fit: BoxFit.contain,
|
||
gaplessPlayback: true,
|
||
),
|
||
),
|
||
const SizedBox(height: 20),
|
||
const Text(
|
||
'Marianum Fulda',
|
||
textAlign: TextAlign.center,
|
||
style: TextStyle(
|
||
color: Colors.white,
|
||
fontSize: 26,
|
||
fontWeight: FontWeight.w600,
|
||
letterSpacing: 0.3,
|
||
),
|
||
),
|
||
const SizedBox(height: 6),
|
||
Text(
|
||
'Stundenplan, Talk & Dateien an einem Ort.',
|
||
textAlign: TextAlign.center,
|
||
style: TextStyle(
|
||
color: Colors.white.withValues(alpha: 0.85),
|
||
fontSize: 14,
|
||
height: 1.3,
|
||
),
|
||
),
|
||
],
|
||
);
|
||
}
|
||
|
||
class LoginDisclaimer extends StatelessWidget {
|
||
const LoginDisclaimer({super.key});
|
||
|
||
@override
|
||
Widget build(BuildContext context) => Padding(
|
||
padding: const EdgeInsets.symmetric(horizontal: 8),
|
||
child: Text(
|
||
'Alles für deinen Schulalltag am Marianum Fulda.',
|
||
textAlign: TextAlign.center,
|
||
style: TextStyle(
|
||
color: Colors.white.withValues(alpha: 0.75),
|
||
fontSize: 11,
|
||
height: 1.4,
|
||
),
|
||
),
|
||
);
|
||
}
|
||
|
||
class LoginFooter extends StatelessWidget {
|
||
const LoginFooter({super.key});
|
||
|
||
@override
|
||
Widget build(BuildContext context) => Padding(
|
||
padding: const EdgeInsets.only(top: 16, bottom: 8),
|
||
child: Text(
|
||
'Marianum Fulda. Die persönliche Schule.',
|
||
textAlign: TextAlign.center,
|
||
style: TextStyle(
|
||
color: Colors.white.withValues(alpha: 0.7),
|
||
fontSize: 12,
|
||
fontStyle: FontStyle.italic,
|
||
),
|
||
),
|
||
);
|
||
}
|