/* Production shell; approved Qala visual language retained from design.css. */
.auth-page{min-height:100vh;display:grid;place-items:center;padding:32px;background:radial-gradient(ellipse at 80% 15%,var(--green-soft),transparent 55%),var(--bg)}
.auth-card{width:min(100%,450px);padding:38px;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow)}.auth-logo{width:130px;height:auto;display:block;margin-bottom:32px}.auth-card h1{font-size:25px;margin-bottom:10px}.auth-card p{color:var(--muted);font-size:13px;line-height:1.9}.auth-card form{display:grid;gap:17px;margin-top:24px}.auth-card label,.form-field{display:grid;gap:7px;font-size:12px}.auth-card input,.auth-card select,.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px;color:var(--text);font:inherit}.auth-tools{display:flex;justify-content:space-between;margin-top:22px;gap:16px}.auth-card .btn{justify-content:center}.error-message{color:var(--red)!important;background:var(--red-bg);padding:12px;border-radius:8px;line-height:1.8;white-space:pre-wrap}.notice{background:var(--green-soft);padding:16px;border:1px solid var(--border);border-radius:10px;font-size:12px;line-height:1.8}.auth-qr{display:block;width:200px;height:200px;margin:16px auto;background:white}.auth-secret{direction:ltr;overflow-wrap:anywhere;font-family:monospace;display:block;padding:10px;background:var(--subtle);margin:12px 0}.account-select{display:grid;gap:9px;margin-top:20px}.account-select button{padding:18px;border:1px solid var(--border);border-radius:10px;text-align:start;background:var(--surface);color:var(--text)}.account-select button:hover{border-color:var(--green)}.shell-account-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scope-banner{background:var(--green-soft);border-bottom:1px solid var(--border);padding:10px 34px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px}.shell-loading{padding:60px;text-align:center;color:var(--muted)}.fatal-error{max-width:700px;margin:48px auto;padding:26px}.qa-modal{border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);width:min(700px,calc(100vw - 32px));max-height:90vh;padding:0;box-shadow:var(--shadow)}.qa-modal::backdrop{background:#101c1866;backdrop-filter:blur(3px)}.qa-modal form{display:flex;flex-direction:column;max-height:90vh}.qa-modal header,.qa-modal footer{padding:18px 24px;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border)}.qa-modal footer{border-bottom:0;border-top:1px solid var(--border);justify-content:flex-end}.qa-modal .modal-body{padding:24px;overflow:auto}.qa-modal .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.qa-modal .full{grid-column:1/-1}.toast-live{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);padding:16px 22px;border-radius:10px;margin-top:10px;max-width:450px;font-size:13px}.toast-live.error{border-color:var(--red)}.page-error{padding:30px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.page-error p{margin:10px 0;line-height:1.8}.security-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.security-grid .panel-body{line-height:1.9}.read-only-note{color:var(--muted);font-size:12px}.app-loading{opacity:.65;pointer-events:none}.sidebar a,.nav button{color:inherit}.nav button{display:flex;align-items:center;gap:12px;width:100%;text-align:start;padding:12px 15px;border:0;background:transparent;border-radius:8px;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}.nav button.active{background:var(--green-soft);color:var(--green-ink);font-weight:600}.nav button svg{height:19px;width:19px}.app-logo{width:112px}.sidebar-logo{padding:10px 16px 25px}.sidebar .account-chip{cursor:default}.sidebar [data-action="logout"]{margin-top:10px}.top-tools .icon-button{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--border);background:var(--surface);border-radius:8px;color:var(--text)}.top-tools svg{width:17px;height:17px}.busy-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:qa-spin .8s linear infinite}button:disabled{opacity:.55;cursor:wait}@keyframes qa-spin{to{transform:rotate(360deg)}}.btn-link{border:0;background:none;color:var(--green-ink);font:inherit;font-size:12px;cursor:pointer}.muted{color:var(--muted)}.wrap{white-space:normal;overflow-wrap:anywhere}.ltr{direction:ltr;unicode-bidi:isolate}.security-code{font:13px monospace;overflow-wrap:anywhere}.branch-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
@media(max-width:760px){.auth-page{padding:18px}.auth-card{padding:26px}.main{margin-inline-start:0}.sidebar{display:none}.sidebar.is-open{display:flex;z-index:100;width:min(290px,85vw);box-shadow:var(--shadow)}.mobile-menu{display:grid!important}.topbar{padding:0 16px;height:66px}.page{padding:22px 16px}.scope-banner{padding:10px 16px}.breadcrumb{max-width:130px;overflow:hidden}.security-grid{grid-template-columns:1fr}.qa-modal .form-grid{grid-template-columns:1fr}.top-tools{gap:5px}.branch-control select{max-width:95px}.sidebar-backdrop{position:fixed;inset:0;background:#0005;z-index:90}.top-tools .language{min-width:32px}.stats{grid-template-columns:repeat(2,1fr)}}

.public-form-header{max-width:1100px;margin:0 auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.public-form-header img{width:116px;height:auto}.public-form-header>div{display:flex;align-items:center;gap:10px}.public-form-page{max-width:1100px;margin:0 auto!important;padding:0 24px 40px!important}

@media(max-width:760px){.topbar .breadcrumb{display:flex;max-width:none;flex:0 0 auto;overflow:visible}.topbar .breadcrumb>span,.topbar .breadcrumb>strong,.topbar .breadcrumb>svg{display:none}.sidebar.is-open,[dir=ltr] .sidebar.is-open{transform:none}.mobile-menu svg{width:18px;height:18px}.sidebar-backdrop{border:0}}
