@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap";.lang-toggle{display:inline-flex;gap:.25rem;align-items:center}.lang-btn{background:transparent;border:1px solid rgba(255,255,255,.4);color:var(--pure-white, #fff);padding:.2rem .4rem;border-radius:.35rem;font-weight:600;cursor:pointer}.lang-btn.selected,.lang-btn:focus{background:#fff3;outline:2px solid var(--pure-white, #fff)}.join-station-container{padding:20px;display:flex;justify-content:center;width:100%}.join-station-card{width:100%;max-width:600px}.join-station-card h2{margin-top:0;margin-bottom:10px;color:var(--text)}.join-station-card>.muted-text{margin-bottom:20px}.search-section{display:flex;flex-direction:column;gap:20px}.search-input-group{display:flex;flex-direction:column;gap:8px}.search-input{padding:12px;border:2px solid var(--border);border-radius:var(--radius);font-size:16px;font-family:inherit;background:var(--surface);color:var(--text);transition:border-color .2s,box-shadow .2s}.search-input:focus{outline:2px solid var(--suomi-blue);outline-offset:1px;border-color:var(--suomi-blue);box-shadow:0 0 0 3px #00358026}.search-input::placeholder{color:var(--muted)}.search-hint{color:var(--muted);font-size:12px}.loading-message{text-align:center;color:var(--muted);padding:20px;font-style:italic}.no-results-message{text-align:center;color:var(--muted);padding:20px;background:var(--surface);border-radius:var(--radius)}.search-results{display:flex;flex-direction:column;gap:12px}.results-info{margin:0;color:var(--muted);font-size:14px}.station-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.station-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px;background:var(--surface);border-radius:var(--radius);border-left:4px solid var(--suomi-blue);transition:background .2s;flex-wrap:wrap}.station-item:hover{background:#0035800d}.station-info{flex:1;min-width:0}.station-info h3{margin:0 0 8px;font-size:16px;color:var(--text)}.station-info p{margin:0;font-size:14px;color:var(--muted);line-height:1.5}.select-button{flex-shrink:0;padding:8px 16px;white-space:nowrap;align-self:center}@media(max-width:600px){.station-item{align-items:flex-start}.select-button{align-self:flex-start;margin-top:8px;width:100%;flex-basis:100%}}.confirmation-section{display:flex;flex-direction:column;gap:20px}.confirmation-section h3{margin:0 0 15px;color:var(--text-primary)}.confirmation-content{display:flex;flex-direction:column;gap:15px}.confirmation-content p{margin:0;color:var(--text-primary);line-height:1.6}.station-confirmation{padding:15px;background:var(--surface);border-radius:var(--radius);border-left:4px solid var(--suomi-blue)}.station-confirmation h4{margin:0 0 10px;color:var(--text)}.station-confirmation p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.confirmation-text{padding:12px;background:#0035801a;border-radius:var(--radius);border-left:3px solid var(--suomi-blue);font-size:14px;color:var(--text)}.confirmation-actions{display:flex;gap:12px}.confirmation-actions button{flex:1;padding:12px;border:none;border-radius:var(--radius);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;min-height:48px}.confirmation-actions .primary-button{background:var(--suomi-blue);color:var(--pure-white)}.confirmation-actions .primary-button:hover:not(:disabled){opacity:.92}.confirmation-actions .primary-button:disabled{opacity:.6;cursor:not-allowed}.confirmation-actions .secondary-button{background:transparent;color:var(--suomi-blue);border:2px solid var(--suomi-blue)}.confirmation-actions .secondary-button:hover:not(:disabled){background:var(--suomi-blue);color:var(--pure-white);opacity:.92}.confirmation-actions .secondary-button:disabled{opacity:.6;cursor:not-allowed}.error-message{padding:12px 16px;background:#e74c3c26;color:var(--busy);border-radius:var(--radius);margin-bottom:15px;font-size:14px;border-left:4px solid var(--busy)}.success-message{padding:12px 16px;background:#2ecc7126;color:var(--available);border-radius:var(--radius);margin-bottom:15px;font-size:14px;border-left:4px solid var(--available)}@media(max-width:480px){.join-station-container{padding:15px}.station-item{flex-direction:column;align-items:flex-start}.select-button{width:100%}.confirmation-actions{flex-direction:column}.confirmation-actions button{width:100%}}@media(prefers-color-scheme:dark){.search-input:focus{box-shadow:0 0 0 3px #4285f433}.error-message{background:#ff64641a;color:#ff6464}.success-message{background:#64ff641a;color:#64ff64}.confirmation-text{background:#4285f426}}.theme-toggle{display:flex;gap:.5rem;align-items:center;margin:.5rem 0}.theme-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;border-radius:.4em;transition:background .2s;position:relative}.theme-btn.selected,.theme-btn:focus{background:var(--surface, #e0e0e0);outline:2px solid #003580}.theme-btn:hover:after{content:attr(title);position:absolute;left:50%;top:120%;transform:translate(-50%);background:#003580;color:#fff;padding:.3em .7em;border-radius:.5em;font-size:.85rem;font-weight:500;white-space:nowrap;z-index:10;pointer-events:none;box-shadow:0 4px 6px -1px #0000001a}.theme-symbol{pointer-events:none}.profile-content{display:flex;justify-content:center;align-items:flex-start;padding:20px;min-height:calc(100vh - 60px)}.profile-section{background:var(--card-bg);border-radius:var(--border-radius);padding:30px;max-width:600px;width:100%;box-shadow:var(--card-shadow)}.profile-section h1{margin:0 0 30px;font-size:28px;color:var(--text-primary);text-align:center}.profile-section h2{margin:25px 0 15px;font-size:20px;color:var(--text-primary);border-bottom:2px solid var(--primary-color);padding-bottom:10px}.profile-header{display:flex;flex-direction:column;align-items:center;gap:15px;margin-bottom:30px}.profile-picture-container{position:relative}.profile-picture{width:120px;height:120px;border-radius:50%;border:3px solid var(--suomi-blue);object-fit:cover}.profile-picture-placeholder{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--suomi-blue),#0066cc);display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--pure-white);border:3px solid var(--suomi-blue)}.picture-upload-label{padding:8px 16px;background:var(--suomi-blue);color:var(--pure-white);border-radius:var(--radius);cursor:pointer;font-size:14px;transition:background .2s}.picture-upload-label:hover{background:#002547;opacity:.92}.profile-form{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:var(--text);font-size:14px}.form-group small{color:var(--muted);font-size:12px;margin-top:4px}.form-input{padding:12px;border:1px solid var(--border);border-radius:var(--radius);font-size:16px;font-family:inherit;background:var(--surface);color:var(--text);transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:2px solid var(--suomi-blue);outline-offset:1px;border-color:var(--suomi-blue);box-shadow:0 0 0 3px #00358026}.form-input:disabled,.disabled-input{background:var(--bg);cursor:not-allowed;color:var(--muted)}.assigned-stations-section{background:var(--surface);padding:20px;border-radius:var(--radius);margin-bottom:30px}.stations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px;margin-top:15px}.station-card{background:var(--surface);padding:15px;border-radius:var(--radius);border-left:4px solid var(--suomi-blue);box-shadow:var(--shadow)}.station-card h3{margin:0 0 10px;color:var(--text);font-size:16px}.station-card p{margin:5px 0;color:var(--muted);font-size:14px}.manage-station-link{display:inline-block;margin-top:12px;padding:8px 12px!important;font-size:14px!important;text-decoration:none;text-align:center;width:100%;box-sizing:border-box}.no-stations{text-align:center;color:var(--text-secondary);padding:20px;font-style:italic}.join-station-wrapper{margin-top:16px}.membership-requests-section{background:var(--surface);padding:20px;border-radius:var(--radius);margin-bottom:30px}.membership-requests-section h2{margin-top:0}.requests-list{display:flex;flex-direction:column;gap:12px}.request-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px;background:var(--surface);border-radius:var(--radius);border-left:4px solid var(--suomi-blue)}.request-item.status-pending{border-left-color:#f1c40f}.request-item.status-accepted{border-left-color:#2ecc71}.request-item.status-rejected{border-left-color:#e74c3c}.request-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.request-header h4{margin:0;color:var(--text);font-size:16px}.status-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.status-badge.status-pending{background:#f1c40f33;color:#f1c40f}.status-badge.status-accepted{background:#2ecc7133;color:#2ecc71}.status-badge.status-rejected{background:#e74c3c33;color:#e74c3c}.request-area{margin:0 0 4px;color:var(--muted);font-size:14px}.request-date{margin:0;color:var(--muted);font-size:12px;font-style:italic}.cancel-button{padding:6px 10px;background:var(--suomi-blue);color:var(--pure-white);border:none;border-radius:var(--radius);font-size:18px;cursor:pointer;transition:background .2s;flex-shrink:0}.cancel-button:hover{background:#002547;opacity:.92}.no-stations{text-align:center;color:var(--muted);padding:20px;font-style:italic}.profile-actions{display:flex;gap:12px;margin-bottom:20px}.profile-actions button{flex:1;padding:12px;border:none;border-radius:var(--radius);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;min-height:48px}.primary-button{background:var(--suomi-blue);color:var(--pure-white)}.primary-button:hover:not(:disabled){background:#002547;opacity:.92}.primary-button:disabled{opacity:.6;cursor:not-allowed}.secondary-button{background:transparent;color:var(--suomi-blue);border:2px solid var(--suomi-blue)}.secondary-button:hover:not(:disabled){background:var(--suomi-blue);color:var(--pure-white);opacity:.92}.error-message{padding:12px 16px;background:#e74c3c26;color:var(--busy);border-radius:var(--radius);margin-bottom:20px;font-size:14px;border-left:4px solid var(--busy)}.success-message{padding:12px 16px;background:#2ecc7126;color:var(--available);border-radius:var(--radius);margin-bottom:20px;font-size:14px;border-left:4px solid var(--available)}.back-link{display:inline-block;color:var(--suomi-blue);text-decoration:none;font-weight:500;margin-top:15px;transition:color .2s}.back-link:hover{color:#002547;text-decoration:underline}@media(max-width:480px){.profile-section{padding:20px}.profile-section h1{font-size:24px;margin-bottom:20px}.profile-picture{width:100px;height:100px}.profile-picture-placeholder{width:100px;height:100px;font-size:40px}.stations-grid{grid-template-columns:1fr}.profile-actions{flex-direction:column}.profile-actions button{width:100%}}.language-section{margin-top:24px;margin-bottom:24px;display:flex;flex-direction:column;gap:16px}.settings-control{display:flex;flex-direction:column;align-items:center;gap:8px}.settings-label{font-size:14px;font-weight:500;color:var(--text)}.action-button-spacing{margin-top:16px}.delete-account-section{margin-top:40px;border-top:1px solid var(--border);padding-top:24px;display:flex;justify-content:center}.delete-account-button{background:var(--busy);color:var(--pure-white);border:none;padding:12px 24px;border-radius:var(--radius);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.delete-account-button:hover{opacity:.92}.delete-account-button:focus{outline:2px solid var(--busy);outline-offset:2px}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--surface);border-radius:var(--radius);padding:32px;max-width:500px;width:90%;box-shadow:var(--shadow)}.modal-content h2{margin:0 0 16px;font-size:22px;color:var(--text)}.modal-content p{margin:12px 0;color:var(--text);line-height:1.5}.modal-content .form-input{width:100%;margin:16px 0;box-sizing:border-box}.warning-list{margin:16px 0;padding-left:24px;list-style:disc;color:var(--text)}.warning-list li{margin:8px 0}.warning-text{background:#e74c3c26;color:var(--busy);padding:12px;border-radius:var(--radius);border-left:4px solid var(--busy);font-weight:600;margin:16px 0}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions button{flex:1;padding:12px 16px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.modal-actions .primary-button,.modal-actions .secondary-button{width:100%}.delete-button{background:var(--busy);color:var(--pure-white);border:none;padding:12px 16px;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:all .2s}.delete-button:hover:not(:disabled){opacity:.92}.delete-button:disabled,.modal-actions button:disabled{opacity:.5;cursor:not-allowed}@media(prefers-color-scheme:dark){.form-input:focus{box-shadow:0 0 0 3px #4285f433}.error-message{background:#ff64641a;color:#ff6464}.success-message{background:#64ff641a;color:#64ff64}}.notification-section{margin-top:30px;padding-top:30px;border-top:1px solid var(--border-color, #e0e0e0)}.notification-section h2{margin-top:0}.notification-info{background:var(--secondary-bg, #f5f5f5);padding:15px;border-radius:8px;margin-bottom:15px}.notification-info p{margin:8px 0;color:var(--text)}.notification-info strong{font-weight:600}.notification-status{padding:4px 12px;border-radius:12px;font-weight:600;font-size:14px}.notification-status-granted{background:#4caf50;color:#fff}.notification-status-denied{background:#f44336;color:#fff}.notification-status-default{background:#ff9800;color:#fff}.notification-help{margin-top:10px;padding:10px;background:#ff98001a;border-left:3px solid #ff9800;border-radius:4px}.notification-help small{color:var(--text-secondary, #666)}.notification-message{padding:12px 16px;border-radius:8px;margin-bottom:15px;font-weight:500;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-actions{display:flex;flex-direction:column;gap:10px}.emergency-button{background:var(--busy, #f44336);color:var(--pure-white);border:none;padding:12px 16px;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:all .2s;font-size:16px}.emergency-button:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 4px 8px #f443364d}.emergency-button:disabled{opacity:.5;cursor:not-allowed}@media(prefers-color-scheme:dark){.notification-info{background:var(--card-bg-dark, #2a2a2a)}.notification-help{background:#ff980033}.notification-help small{color:var(--text-secondary-dark, #bbb)}}.station-manager-content{padding:20px}.station-selector{display:flex;flex-direction:column;gap:8px;margin:20px 0;padding:15px;background:var(--bg-secondary);border-radius:var(--border-radius)}.station-selector label{font-weight:600;color:var(--text-primary)}.selected-station-info{padding:15px;background:var(--bg-secondary);border-radius:var(--border-radius);border-left:4px solid var(--primary-color);margin-top:15px}.selected-station-info h3{margin:0 0 8px;color:var(--text-primary)}.selected-station-info p{margin:0;color:var(--text-secondary);font-size:14px}.requests-list{display:flex;flex-direction:column;gap:12px;margin-top:15px}.request-item{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px;background:var(--bg-secondary);border-radius:var(--border-radius);border-left:4px solid #F1C40F}.request-info{flex:1}.request-info h4{margin:0 0 5px;color:var(--text-primary);font-size:16px}.request-email{margin:0 0 5px;color:var(--text-secondary);font-size:14px}.request-date{margin:0;color:var(--text-secondary);font-size:12px;font-style:italic}.request-actions{display:flex;gap:8px;flex-shrink:0}.approve-button,.reject-button{padding:8px 16px;border:none;border-radius:var(--border-radius);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.approve-button{background:#2ecc71;color:#fff}.approve-button:hover{background:#27ae60;transform:translateY(-1px)}.reject-button{background:#e74c3c;color:#fff}.reject-button:hover{background:#c0392b;transform:translateY(-1px)}.personnel-list{display:flex;flex-direction:column;gap:12px;margin-top:15px}.personnel-item{display:flex;flex-direction:column;gap:12px;padding:15px;background:var(--bg-secondary);border-radius:var(--border-radius);border-left:4px solid var(--primary-color)}.personnel-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.personnel-header-right{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.personnel-info{min-width:0;flex:1}.personnel-info h4{margin:0 0 5px;color:var(--text-primary);font-size:16px}.personnel-email{margin:0 0 5px;color:var(--text-secondary);font-size:14px}.personnel-role{margin:0 0 5px;color:var(--text-primary);font-size:14px}.personnel-skills{margin:0;color:var(--text-secondary);font-size:13px}.personnel-actions{display:flex;gap:8px;flex-wrap:wrap;align-self:center}.remove-button{padding:8px 16px;background:var(--secondary-color);color:#fff;border:none;border-radius:var(--border-radius);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.remove-button:hover{background:var(--secondary-color-dark, #c9302c);transform:translateY(-1px)}.promote-button{padding:8px 16px;background:#3498db;color:#fff;border:none;border-radius:var(--border-radius);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.promote-button:hover{background:#2980b9;transform:translateY(-1px)}.demote-button{padding:8px 16px;background:#95a5a6;color:#fff;border:none;border-radius:var(--border-radius);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.demote-button:hover{background:#7f8c8d;transform:translateY(-1px)}.no-data{text-align:center;color:var(--text-secondary);padding:20px;font-style:italic;background:var(--bg-secondary);border-radius:var(--border-radius);margin-top:15px}.error-message{padding:12px;background:#fee;color:#c33;border-radius:var(--border-radius);margin-bottom:15px;font-size:14px}.success-message{padding:12px;background:#efe;color:#3c3;border-radius:var(--border-radius);margin-bottom:15px;font-size:14px}@media(max-width:768px){.request-item,.personnel-item{flex-direction:column;align-items:flex-start}.request-actions,.personnel-actions{width:100%;flex-wrap:wrap}.approve-button,.reject-button,.remove-button,.promote-button,.demote-button{flex:1}}@media(max-width:600px){.hamburger-menu{display:flex}.topbar-actions{position:absolute;top:100%;left:0;right:0;background-color:var(--suomi-blue);display:flex;flex-direction:column;gap:0;max-height:0;overflow:hidden;transition:max-height .3s ease;border-top:1px solid rgba(255,255,255,.2);z-index:1000}.topbar-actions.mobile-open{max-height:400px}.topbar-actions .topbar-link,.topbar-actions .topbar-button{width:100%;border:none;border-radius:0;border-bottom:1px solid rgba(255,255,255,.1);padding:12px 16px;justify-content:flex-start;min-height:auto;font-size:16px}.topbar-actions .topbar-link:last-child,.topbar-actions .topbar-button:last-child{border-bottom:none}}@media(prefers-color-scheme:dark){.error-message{background:#ff64641a;color:#ff6464}.success-message{background:#64ff641a;color:#64ff64}}:root{--suomi-blue: #003580;--pure-white: #FFFFFF;--deep-night: #0B1119;--available: #2ECC71;--busy: #E74C3C;--notice: #F1C40F;--radius: 12px;--bg: #F6F8FB;--surface: #FFFFFF;--text: #0B1119;--muted: #4A5568;--border: #E2E8F0;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1)}*{box-sizing:border-box}body{font-family:Inter,sans-serif;margin:0;padding:0;background-color:var(--bg);color:var(--text)}.skip-link{position:absolute;top:-40px;left:0;background:var(--suomi-blue);color:var(--pure-white);padding:8px 16px;border-radius:0 0 4px;z-index:10000;text-decoration:none;font-weight:500}.skip-link:focus{top:0;outline:2px solid var(--pure-white);outline-offset:2px}a{color:inherit;text-decoration:none}@media(prefers-color-scheme:dark){:root{--bg: #0B1119;--surface: #141C26;--text: #FFFFFF;--muted: #A0AEC0;--border: #243041;--shadow: 0 6px 14px rgba(0, 0, 0, .35)}}:root[data-theme=light]{--bg: #F6F8FB;--surface: #FFFFFF;--text: #0B1119;--muted: #4A5568;--border: #E2E8F0;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1)}:root[data-theme=dark]{--bg: #0B1119;--surface: #141C26;--text: #FFFFFF;--muted: #A0AEC0;--border: #243041;--shadow: 0 6px 14px rgba(0, 0, 0, .35)}.app-shell{min-height:100vh;display:flex;flex-direction:column;padding-bottom:70px}.topbar{background-color:var(--suomi-blue);color:var(--pure-white);padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative}.brand{display:flex;align-items:center;gap:12px;color:var(--pure-white)}.logo-mark{width:36px;height:36px}.brand-title{font-weight:700;font-size:20px;letter-spacing:.2px}.topbar-actions{display:flex;align-items:center;gap:8px}.topbar-link,.topbar-button{border:1px solid rgba(255,255,255,.5);color:var(--pure-white);padding:8px 12px;border-radius:var(--radius);font-weight:500;min-height:40px;display:inline-flex;align-items:center;justify-content:center;background:transparent;cursor:pointer}.hamburger-menu{display:none;flex-direction:column;gap:5px;background:transparent;border:none;cursor:pointer;padding:8px;z-index:1001}.hamburger-line{width:24px;height:2px;background-color:var(--pure-white);transition:all .3s ease}@media(max-width:600px){.hamburger-menu{display:flex}.topbar-actions{position:absolute;top:100%;left:0;right:0;background-color:var(--suomi-blue);display:flex!important;flex-direction:column;gap:0;max-height:0;overflow:hidden;transition:max-height .3s ease;border-top:1px solid rgba(255,255,255,.2);z-index:1000}.topbar-actions.mobile-open{max-height:400px}.topbar-actions .topbar-link,.topbar-actions .topbar-button{width:100%;border:none;border-radius:0;border-bottom:1px solid rgba(255,255,255,.1);padding:12px 16px;justify-content:flex-start;min-height:auto;font-size:16px}.topbar-actions .topbar-link:last-child,.topbar-actions .topbar-button:last-child{border-bottom:none}}.bottom-menu{position:fixed;bottom:0;left:0;right:0;background-color:var(--surface);border-top:1px solid var(--border);display:flex;justify-content:center;padding:0;z-index:100}.bottom-menu-item{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px;color:var(--text);text-decoration:none;font-size:14px;font-weight:500;cursor:pointer;background:transparent;border:none;border-right:1px solid var(--border);min-height:56px;transition:background-color .2s ease;flex-direction:column}.bottom-menu-item span{display:flex;align-items:center;justify-content:center}.bottom-menu-item span:first-child{font-size:20px}.bottom-menu-item:last-child{border-right:none}.bottom-menu-item:hover{background-color:#00358014;color:var(--suomi-blue)}.topbar-right{display:flex;align-items:center;gap:12px;margin-left:auto}.content{flex:1;display:flex;justify-content:center;padding:24px 16px 48px}.content-inner{width:100%;max-width:560px;display:flex;flex-direction:column;gap:20px}.card{background-color:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;border:1px solid var(--border)}.hero-title{font-size:28px;line-height:1.2;margin:0 0 12px;font-weight:700}.hero-text{font-size:16px;margin:0 0 20px;color:var(--muted)}.stack{display:flex;flex-direction:column;gap:12px}.primary-button{background-color:var(--suomi-blue);color:var(--pure-white);border:none;border-radius:var(--radius);min-height:64px;width:100%;font-size:18px;font-weight:500;cursor:pointer;padding:0 16px;display:inline-flex;align-items:center;justify-content:center}.primary-button:hover{opacity:.92}.primary-button:focus{outline:2px solid var(--suomi-blue);outline-offset:2px;opacity:.92}.secondary-button{background-color:transparent;color:var(--suomi-blue);border:2px solid var(--suomi-blue);border-radius:var(--radius);min-height:64px;width:100%;font-size:18px;font-weight:500;cursor:pointer;padding:0 16px;display:inline-flex;align-items:center;justify-content:center}.secondary-button:hover{opacity:.86}.secondary-button:focus{outline:2px solid var(--suomi-blue);outline-offset:2px;opacity:.86}.button-link{text-decoration:none}.auth-section form{display:flex;flex-direction:column;gap:12px;margin-top:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-weight:500;font-size:14px;color:var(--text)}.auth-section input[type=email],.auth-section input[type=password]{padding:14px 16px;border:1px solid var(--border);border-radius:10px;font-size:1rem;width:100%;background-color:var(--surface);color:var(--text)}.auth-section input[type=email]::placeholder,.auth-section input[type=password]::placeholder{color:var(--muted)}.auth-section input[type=email]:focus,.auth-section input[type=password]:focus{border-color:var(--suomi-blue);outline:none;box-shadow:0 0 0 3px #00358026}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.9rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background-color:var(--border)}.social-button{background-color:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);min-height:64px;width:100%;font-size:18px;font-weight:500;cursor:pointer;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow)}.social-button:hover{border-color:var(--suomi-blue)}.google-text{letter-spacing:.02em;font-weight:500}.error-message{background-color:#e74c3c26;color:var(--busy);padding:12px 16px;border-radius:var(--radius);font-size:14px;border-left:4px solid var(--busy);margin:4px 0 0}.muted-text{color:var(--muted);font-size:.95rem}.admin-table{display:flex;flex-direction:column;gap:12px;margin-top:16px}.admin-user-row{display:flex;flex-direction:column;gap:8px;padding:16px;background-color:var(--bg);border:1px solid var(--border);border-radius:8px}.user-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1;min-width:0}.user-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.role-select{padding:8px 12px;border:1px solid var(--border);border-radius:8px;background-color:var(--surface);color:var(--text);font-size:.95rem;cursor:pointer;flex:1;min-width:140px}.role-select:focus{outline:none;border-color:var(--suomi-blue);box-shadow:0 0 0 3px #00358026}.delete-button{padding:8px 16px;border:1px solid var(--busy);border-radius:8px;background-color:transparent;color:var(--busy);font-size:.9rem;font-weight:500;cursor:pointer}.delete-button:hover{background-color:var(--busy);color:var(--pure-white)}.station-form{display:flex;flex-direction:column;gap:12px;margin-top:16px;padding:16px;background-color:var(--bg);border:1px solid var(--border);border-radius:8px}.station-form input{padding:12px 16px;border:1px solid var(--border);border-radius:8px;background-color:var(--surface);color:var(--text);font-size:1rem}.station-form input:focus{outline:none;border-color:var(--suomi-blue);box-shadow:0 0 0 3px #00358026}.form-actions{display:flex;gap:8px;flex-wrap:wrap}.form-actions .primary-button,.form-actions .secondary-button{flex:1;min-width:140px;min-height:48px}.station-edit-form{display:flex;flex-direction:column;gap:8px;flex:1}.inline-input{padding:8px 12px;border:1px solid var(--border);border-radius:8px;background-color:var(--surface);color:var(--text);font-size:.95rem}.inline-input:focus{outline:none;border-color:var(--suomi-blue);box-shadow:0 0 0 3px #00358026}.edit-button,.save-button,.cancel-button{padding:8px 16px;border:1px solid var(--border);border-radius:8px;background-color:var(--surface);color:var(--text);font-size:.9rem;font-weight:500;cursor:pointer}.edit-button:hover{border-color:var(--suomi-blue);color:var(--suomi-blue)}.save-button{border-color:var(--available);color:var(--available)}.save-button:hover{background-color:var(--available);color:var(--pure-white)}.cancel-button{border-color:var(--muted);color:var(--muted)}.cancel-button:hover{background-color:var(--muted);color:var(--pure-white)}.search-bar{margin:16px 0}.search-input{width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:8px;background-color:var(--surface);color:var(--text);font-size:1rem}.search-input:focus{outline:none;border-color:var(--suomi-blue);box-shadow:0 0 0 3px #00358026}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.pagination-button{padding:10px 20px;border:1px solid var(--border);border-radius:8px;background-color:var(--surface);color:var(--text);font-size:.95rem;font-weight:500;cursor:pointer}.pagination-button:hover:not(:disabled){border-color:var(--suomi-blue);color:var(--suomi-blue)}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-info{color:var(--muted);font-size:.95rem}.status-container{display:flex;flex-direction:column;gap:12px;margin-top:24px;margin-bottom:20px}.status-button{border:none;border-radius:var(--radius);min-height:64px;width:100%;font-size:18px;font-weight:500;cursor:pointer;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.status-button:disabled{opacity:.6;cursor:not-allowed}.status-available{background-color:transparent;color:var(--available);border:2px solid var(--available)}.status-available:hover:not(:disabled){background-color:var(--available);color:var(--pure-white)}.status-available.active{background-color:var(--available);color:var(--pure-white);box-shadow:0 4px 12px #2ecc714d}.status-busy{background-color:transparent;color:var(--busy);border:2px solid var(--busy)}.status-busy:hover:not(:disabled){background-color:var(--busy);color:var(--pure-white)}.status-busy.active{background-color:var(--busy);color:var(--pure-white);box-shadow:0 4px 12px #e74c3c4d}.status-timestamp{margin-top:12px;font-size:14px;color:var(--muted);font-weight:400}.error-message{background-color:#e74c3c26;color:var(--busy);padding:12px 16px;border-radius:var(--radius);margin-bottom:16px;font-size:14px;border-left:4px solid var(--busy)}@media(min-width:600px){.admin-user-row{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap}.user-actions{flex-shrink:0}.station-edit-form{flex-direction:row;flex-wrap:wrap}}
