html,body.login-page{height:100%;min-height:100vh;margin:0;padding:0;box-sizing:border-box}body.login-page{height:auto;background:#f0eeeb;display:flex;flex-direction:column}body.login-page .login-navbar{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 20px;background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 1px 4px rgba(0,0,0,.06);flex-shrink:0;z-index:10}body.login-page .login-navbar span,body.login-page .login-navbar a,body.login-page .login-navbar .login-header-school-wrap,body.login-page .login-navbar .login-header-school-name,body.login-page .login-navbar .login-header-municipality{visibility:visible!important;opacity:1!important;overflow:visible!important;clip:auto!important}body.login-page .login-brand-link{display:flex!important;align-items:center;gap:12px;text-decoration:none;color:#1a1a1a;white-space:nowrap}body.login-page .login-brand-link:hover{text-decoration:none;color:#1a1a1a}body.login-page .login-header-school-wrap{display:flex!important;flex-direction:column;line-height:1.2}body.login-page .login-header-icon{height:35px;width:auto;max-width:35px;object-fit:contain;flex-shrink:0}body.login-page .login-header-logo{height:35px;width:auto;max-width:120px;object-fit:contain;flex-shrink:0}body.login-page .login-header-school-name{display:block!important;font-size:14px;font-weight:600;color:#000!important;white-space:nowrap}body.login-page .login-header-municipality{display:block!important;font-size:10px;font-weight:400;color:#000!important;opacity:.9}body.login-page .login-main{flex:1 1 auto;display:flex;min-height:calc(100vh - 52px);position:relative}body.login-page .login-panel-col{width:315px;max-width:90vw;padding:13px;z-index:2;margin:auto}body.login-page .login-bg-col{position:absolute;inset:0;z-index:1;background:#e8e4df center center/cover no-repeat}body.login-page .login-bg-col.has-bg{background-size:cover;background-position:center center}body.login-page .login-panel{width:100%;max-width:315px;background:#fff;border-radius:10px;box-shadow:0 4px 24px rgba(0,0,0,.1);padding:21px 16px;position:relative;z-index:5}body.login-page .login-panel-logo{display:flex;align-items:center;gap:10px;margin-bottom:12px}body.login-page .login-panel-logo img{height:32px;width:auto;max-width:32px;object-fit:contain;flex-shrink:0}body.login-page .login-panel-school-wrap{display:flex;flex-direction:column;justify-content:center;line-height:1.15;min-width:0}body.login-page .login-panel-school-name{font-size:12px;font-weight:700;color:#1a1a1a;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.login-page .login-panel-municipality{font-size:9px;font-weight:400;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.login-page .panel.panel-login,body.login-page .panel-default{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;color:#1a1a1a!important;margin:0;padding:0}body.login-page .panel-heading{background:transparent!important;border-bottom:none!important;padding:0 0 10px 0!important;border-radius:0!important}body.login-page .panel-heading h4{color:#1a1a1a;font-size:14px;font-weight:700;margin:0}body.login-page .panel-body{padding:0}body.login-page label{color:#333;font-weight:500;font-size:9px;margin-bottom:3px}body.login-page .form-control{background:#f3f4f7!important;border:1px solid #dde1ea!important;color:#1a1a1a!important;border-radius:6px;height:30px;font-size:11px;padding:6px 8px;box-shadow:none!important}body.login-page .form-control::placeholder{color:#aaa}body.login-page .form-control:focus{background:#fff!important;border-color:#c0386b!important;outline:none;box-shadow:0 0 0 2px rgba(192,56,107,.15)!important}body.login-page .btn{height:30px;font-size:11px;font-weight:600;border-radius:6px;padding:0 13px;transition:background .15s,box-shadow .15s;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer}body.login-page .btn-default:not(.btn-external-login):not(.btn-link),input[type="submit"].btn{background:#c0386b!important;color:#fff!important;border:none!important;box-shadow:0 2px 8px rgba(192,56,107,.3);width:100%}body.login-page .btn-default:not(.btn-external-login):not(.btn-link):hover,body.login-page .btn-default:not(.btn-external-login):not(.btn-link):focus,input[type="submit"].btn:hover,input[type="submit"].btn:focus{background:#a02f59!important;box-shadow:0 4px 12px rgba(192,56,107,.4);color:#fff!important}body.login-page .btn-external-login{background:#fff!important;color:#1a1a1a!important;border:1px solid #dde1ea!important;width:100%;justify-content:flex-start;gap:12px;font-weight:500;box-shadow:0 1px 3px rgba(0,0,0,.06)}body.login-page .btn-external-login img{height:22px;width:auto;flex-shrink:0}body.login-page .btn-external-login:hover{background:#f5f6fa!important;border-color:#c0c6d4!important;box-shadow:0 2px 6px rgba(0,0,0,.08)}#google-button{font-family:'Roboto',sans-serif;background:#fff!important;color:#1a1a1a!important;border:1px solid #dde1ea!important;width:100%;height:30px;border-radius:6px;font-size:11px;display:flex;align-items:center;justify-content:flex-start;padding:0 16px;gap:12px;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.06)}#google-button:hover{background:#f5f6fa!important}body.login-page .section{margin-bottom:7px}body.login-page .section:last-child{margin-bottom:0}body.login-page .quiculum-login-form{margin-bottom:0}body.login-page .quiculum-login-form .row{display:flex;flex-direction:column;gap:7px;margin-top:8px}body.login-page .quiculum-login-form .row .col-xs-6{width:100%;float:none;padding:0;text-align:center}body.login-page .quiculum-login-form .row .col-xs-6.text-right{order:99;text-align:center!important;margin-top:3px}body.login-page .quiculum-login-form input[type="submit"],body.login-page .quiculum-login-form .btn[type="submit"]{width:100%}body.login-page .quiculum-login-form a.btn{background:transparent!important;color:#888!important;font-weight:400;font-size:9px;box-shadow:none;border:none!important;height:auto;padding:3px 0;text-decoration:underline}body.login-page .quiculum-login-form a.btn:hover{color:#c0386b!important}body.login-page .validation-summary-errors,body.login-page .field-validation-error{color:#c0386b;font-size:9px}.bankid-login-buttons>.bankid-info-text{color:#555;margin-bottom:8px;font-size:9px}.bankid-login-buttons>.btn:not(:last-child){margin-bottom:6px}.bankid-progress{color:#333}.bankid-progress>*:not(:last-child){margin-bottom:6px}.bankid-error>.btn:not(:last-child){margin-bottom:6px}body.login-page.theme-modern{background:#f6f8fb!important}body.login-page.theme-modern .login-navbar{background:#fff!important;border-bottom:1px solid #e0e0e0!important}body.login-page.theme-modern .login-navbar .login-brand-link{color:#000!important}body.login-page.theme-modern .login-navbar .login-header-school-name{color:#000!important}body.login-page.theme-modern .login-navbar .login-header-municipality{color:#333!important}body.login-page.theme-modern .login-panel{background:#fff!important;box-shadow:0 4px 24px rgba(0,0,0,.1)!important}body.login-page.theme-modern .login-panel h4,body.login-page.theme-modern .login-panel label{color:#000!important}body.login-page.theme-modern .login-panel .login-panel-school-name{color:#000!important}body.login-page.theme-modern .login-panel .login-panel-municipality{color:#333!important}.padding{padding:1em}.margin{margin:1em}a.btn-default{text-decoration:none}body.login-page .login-actions{margin-top:16px;display:flex;flex-direction:column;gap:8px}