.platform-page main{max-width:1180px;margin:auto;padding:26px 30px 60px;display:block}.platform-page .platform-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.platform-page .platform-heading h1{margin:4px 0}.platform-page .platform-description{color:#466574;line-height:1.5;max-width:760px}.platform-page .platform-layout{display:grid;grid-template-columns:minmax(240px,340px) minmax(0,1fr);gap:20px}.platform-page .platform-panel,.administration-panel{background:#ffffffdf;border:1px solid #bad0d3;border-radius:14px;padding:20px;min-width:0}.platform-page h2,.administration-panel h2{font-size:20px;margin-top:0}.platform-page h3,.administration-panel h3{font-size:17px}.platform-page .platform-choir-list{display:grid;gap:10px}.platform-page .platform-choir-choice{width:100%;text-align:left;white-space:normal;padding:12px}.platform-page .platform-choir-choice[aria-pressed=true]{background:#d0ece4;border-color:#488b7b;box-shadow:inset 4px 0 #2c8675}.platform-page .platform-choir-choice strong,.platform-page .platform-choir-choice small{display:block;overflow-wrap:anywhere}.platform-page .platform-choir-choice small{margin-top:5px;color:#476777}.platform-page .platform-choir-create{margin-top:22px;border-top:1px solid #bdd0d2;padding-top:18px}.platform-page .platform-choir-create label{margin-top:12px}.platform-status:empty{display:none}.platform-status{padding:10px 13px;border-radius:8px;background:#e7f1f4;line-height:1.5;overflow-wrap:anywhere}.platform-status.error{background:#fbe6e3;color:#97382d}.platform-status.success{background:#e0f1e8;color:#246448}.platform-page .platform-actions,.administration-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.platform-page .platform-actions a{padding:11px 15px;background:#dcece9;border:1px solid #91bcb5;border-radius:7px;color:#20594f;text-decoration:none}.administration-count{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0}.administration-list{display:grid;gap:12px;margin-top:16px}.administration-card{border:1px solid #bcd2d4;border-left:4px solid #489786;background:#f4faf9;border-radius:10px;padding:15px}.administration-card h3{margin:0 0 7px}.administration-card p{margin:6px 0;line-height:1.45;overflow-wrap:anywhere}.administration-card .administration-actions{margin-top:12px}.administration-permission-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px;margin:12px 0}.administration-permission-list label{display:flex;gap:9px;align-items:flex-start;font-weight:400;margin:0;line-height:1.4}.administration-permission-list input{flex-shrink:0;margin-top:2px}.administration-dialog{width:min(720px,94vw);max-height:92dvh;overflow:auto}.administration-dialog label{margin-top:14px}.administration-dialog .dialog-actions{position:sticky;bottom:-28px;background:#f3faf8;padding:14px 0;margin-top:20px;border-top:1px solid #bed0d2}.administration-dialog .administration-super-choice{display:flex;align-items:center;gap:9px;font-weight:400}.administration-permissions-note{font-size:12px;color:#4d6876;line-height:1.5}.administration-current-label{background:#e8efe7;border:1px solid #a7bfac;padding:4px 8px;border-radius:5px;font-size:12px;display:inline-block}.platform-tenant-context{padding:10px 16px;background:#fff0d7;border-bottom:1px solid #d5b884;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.platform-tenant-context span{flex:1}.platform-login-page main{display:block;max-width:650px;min-height:0;margin:20px auto 35px;background:#ffffffde;border:1px solid #bed4d5;border-radius:20px;overflow:hidden;padding:34px}.platform-login-page h1{font-size:28px;line-height:1.3;margin:12px 0}.platform-login-page .panel-description{margin-bottom:24px}.platform-login-page .captcha-section{border:1px solid #b9d2d3;border-radius:12px;background:#edf7f4;padding:15px;margin:20px 0}.platform-login-page .captcha-visual{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.platform-login-page #captcha-image{width:220px;height:76px;max-width:100%;border:1px solid #9bbfc1;border-radius:8px;background:#fff}.platform-login-page .captcha-visual button{min-height:42px;border-radius:7px;padding:9px 12px;border:1px solid #94b8bd}.platform-login-page .platform-back{display:inline-block;margin-top:24px;font-size:14px;color:#205e6b;text-decoration:underline;text-underline-offset:4px}.platform-root-link{font-size:12px;text-decoration:underline;text-underline-offset:3px}.platform-login-page .platform-password-rule{font-size:12px;line-height:1.6;color:#4d6876}.administration-panel .banner{margin-bottom:15px}.platform-page button:focus-visible,.administration-panel button:focus-visible,.administration-dialog button:focus-visible{outline:3px solid #117c8e;outline-offset:3px}@media(max-width:800px){.platform-page main{padding:22px 16px 40px}.platform-page .platform-layout{grid-template-columns:1fr}.platform-page .platform-heading{align-items:flex-start;flex-direction:column}.administration-permission-list{grid-template-columns:1fr}.platform-login-page main{margin:12px 16px 25px;padding:25px}.administration-dialog{padding:20px}.administration-dialog .dialog-actions{bottom:-20px}}
.platform-root-banner{display:flex;align-items:center;gap:16px;padding:12px 28px;background:#fff1d5;border-bottom:2px solid #dc944b;color:#754716;flex-wrap:wrap}.platform-root-banner span{flex:1}.work-status-only{padding:18px;background:#e5f5ee;border:1px solid #91c9b4;border-radius:12px;margin-bottom:20px}.work-status-only label{display:block;max-width:600px;margin:10px 0}.work-status-only select,.work-status-only textarea{display:block;width:100%;margin-top:5px}.work-status-only h3{margin-top:0}
.platform-group-controls{border-top:3px solid #57aa98;border-bottom:1px solid #b7d2cb;padding:12px 0 18px;margin:15px 0 20px}.platform-group-controls .platform-actions{gap:8px}.platform-group-controls button.danger{background:#ffe4df;color:#92372d;border-color:#d29185}.group-state{display:inline-block;margin-top:7px;padding:3px 7px;border-radius:6px;font-size:12px;line-height:1.5;background:#fff0c9;color:#70471d}.group-state.danger{background:#ffe0db;color:#963d2e}.platform-discovery{margin-top:22px}.discovered-group{padding:12px;margin-top:10px;border:1px solid #aacdc5;border-left:4px solid #489786;border-radius:8px;background:#f0f8f4}.discovered-group p{margin:8px 0;overflow-wrap:anywhere}.template-added{margin:5px 0;color:#236147}.success-note{color:#246448}
.administration-password-rules{background:#e9f5ef;border:1px solid #bad6c9;border-left:3px solid #4b9d81;border-radius:8px;padding:10px 12px;margin:8px 0;line-height:1.5;font-size:13px;color:#2f5d4c}.administration-password-rules p{margin:5px 0}.administration-password-rules .administration-password-visibility{font-weight:600}.administration-password-feedback{min-height:1.5em;font-size:13px;margin:5px 0 0;line-height:1.5;overflow-wrap:anywhere}.administration-password-feedback.error{color:#9d352a}.administration-password-feedback.success{color:#246448}.administration-dialog input[aria-invalid=true]{border-color:#c35b4c;box-shadow:0 0 0 1px #c35b4c}

.platform-account-dialog{width:min(620px,94vw);box-sizing:border-box;background:#f4fbf8}.platform-account-passwords{display:grid;grid-template-columns:1fr 1fr;gap:14px}.platform-account-show{display:flex;align-items:center;gap:9px;font-weight:400!important}.platform-account-show input{width:auto;min-height:0}.platform-account-notice{padding:12px 14px;border-left:4px solid #319481;border-radius:8px;background:#e0f2eb;font-size:13px;line-height:1.5!important}.platform-account-dialog .hint{font-size:12px;line-height:1.6}.platform-account-dialog #root-account-message{margin-top:14px}.platform-account-dialog input{box-sizing:border-box;max-width:100%;width:100%}.platform-account-dialog .platform-account-show input{width:auto}.platform-page .account{flex-wrap:wrap}.platform-login-page .platform-credentials-updated{padding:12px 14px;background:#def1e8;color:#245c49;border-radius:9px;line-height:1.5;margin:0 0 18px}@media(max-width:600px){.platform-account-passwords{grid-template-columns:1fr;gap:0}.platform-account-dialog .dialog-actions{flex-wrap:wrap}.platform-account-dialog .dialog-actions button{flex:1}.platform-page .account{gap:7px}}


/* BUILD 048: grouped controls cannot overlap preceding hints or labels. */
.platform-page>header{height:auto;min-height:72px;gap:12px;box-sizing:border-box;flex-wrap:wrap;padding-top:calc(12px + env(safe-area-inset-top,0px));padding-bottom:12px;padding-left:calc(28px + env(safe-area-inset-left,0px));padding-right:calc(28px + env(safe-area-inset-right,0px))}
.platform-page>header .account{gap:8px;min-width:0;line-height:1.45}.platform-page>header .account button{min-height:44px;padding:8px 12px;font-size:14px;line-height:1.4;white-space:normal;max-width:100%}
.platform-group-controls p,.platform-group-controls .hint{line-height:1.55;margin:10px 0}
.platform-group-controls select{display:block;width:100%;max-width:100%;box-sizing:border-box;min-height:44px;line-height:1.4;margin:8px 0}
.platform-page .platform-actions{margin-top:12px;gap:10px;align-items:flex-start}
.platform-page .platform-actions button,.platform-group-controls>button,.administration-dialog>button:not(.countdown-button){display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;max-width:100%;padding:8px 12px;font-size:14px;line-height:1.4;white-space:normal;vertical-align:top}
.platform-group-controls>button,.platform-plan>button{margin:8px 8px 8px 0}
.platform-plan>button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;max-width:100%;padding:8px 12px;font-size:14px;line-height:1.4;white-space:normal}
.administration-dialog>button:not(.countdown-button){margin:14px 8px 0 0}
.administration-dialog>p{line-height:1.55;margin:10px 0}.administration-dialog>.hint{font-size:13px;line-height:1.55}
.administration-dialog{box-sizing:border-box;max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 32px)}
@media(max-width:600px){.platform-page>header{padding-left:calc(14px + env(safe-area-inset-left,0px));padding-right:calc(14px + env(safe-area-inset-right,0px));align-items:flex-start}.platform-page>header .account{width:100%;justify-content:flex-end;flex-wrap:wrap}.platform-page>header .account>span{display:block;flex:1 1 100%;overflow-wrap:anywhere}.platform-page .platform-actions button,.administration-dialog>button:not(.countdown-button){font-size:14px}}
