:root{--p:#701779;--p2:#8b2395;--bg:#faf8fc;--line:#e7deea;--soft:#f2eaf5;--red:#bd4842;--green:#daf0df;--blue:#deebfb}*{box-sizing:border-box}body{margin:0;background:var(--bg);font:16px system-ui;color:#201d21}header{background:var(--p);padding:10px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;color:#fff;text-decoration:none;font-size:20px;font-weight:800}.brand img{width:48px;height:48px;object-fit:cover;margin-right:10px}.top-nav{display:flex;gap:8px}.nav-btn{color:#fff;text-decoration:none;padding:8px 12px;border-radius:8px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22)}.nav-btn:hover{background:#fff;color:var(--p)}.nav-btn.logout{background:rgba(0,0,0,.15)}main{max-width:1400px;margin:26px auto;padding:0 22px}footer{text-align:center;padding:24px}footer a{margin:0 10px;color:var(--p)}h1,h3{color:var(--p)}section,article.legal,.group-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;margin:16px 0}.grid,.group-grid,.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stats>*{background:#fff;border:1px solid var(--line);border-radius:10px;padding:15px;text-decoration:none;color:#222}.stats b{display:block;font-size:28px;color:var(--p)}.stats span{font-size:13px}label{display:block;margin:9px 0}input,select{display:block;width:100%;padding:9px;margin-top:4px;border:1px solid #aaa;border-radius:7px}button,.btn{display:inline-block;background:var(--p2);color:#fff;border:0;border-radius:8px;padding:9px 13px;text-decoration:none;cursor:pointer}.btn.secondary{background:var(--soft);color:var(--p);border:1px solid #ceb6d3}.danger{background:var(--red)}.flash,.warning{padding:13px;border-radius:8px;margin-bottom:14px;background:#fff0c9}.ok,.success{background:var(--green)}.err{background:#f7dada}.scroll{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:13px}.metric{display:inline-block;min-width:34px;text-align:center;padding:5px 9px;border-radius:15px;font-weight:800}.metric.neutral{background:#eee8f1}.metric.blue{background:var(--blue);color:#275b92}.metric.green{background:var(--green);color:#24673a}.metric.red{background:#f7dada;color:#983333}.filters{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}.filters input,.filters select{margin:0}.status{display:inline-block;padding:5px 9px;border-radius:14px;font-size:12px;font-weight:800}.status.active{background:var(--green);color:#24673a}.status.pending{background:#ffe2af;color:#795000}td small{display:block;color:#777;margin-top:4px}.group-card{margin:0}.group-card h3{margin-top:0}.date-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.date-row small{display:block;color:#777}.danger-zone{border-color:#e2a9a5}.auth{max-width:620px;margin:30px auto}.consents{display:grid;gap:12px;margin:18px 0}.check{display:grid;grid-template-columns:20px 1fr;gap:9px;margin:0}.check input{width:18px!important;height:18px;margin:2px 0}.cancel-form{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:7px}.cancel-form input{margin:0}.credit-title,.regulation-header{display:flex;align-items:center;justify-content:space-between;gap:14px}.credit-count{font-size:28px;font-weight:800;color:#275b92;background:var(--blue);padding:7px 15px;border-radius:12px}.legal{max-width:1000px;margin:20px auto;line-height:1.55}.legal h2{margin-top:26px;color:var(--p)}.regulation-page{max-width:1200px;margin:auto}.regulation-frame{display:block;width:100%;height:78vh;min-height:720px;border:1px solid #ddd;border-radius:8px}.page-head h1{margin-bottom:5px}.client-top{align-items:start}@media(max-width:800px){header{align-items:flex-start}.top-nav{display:block}.nav-btn{display:block;margin:5px 0}.grid,.group-grid,.admin-grid,.stats,.form-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.cancel-form{grid-template-columns:1fr}.regulation-header{display:block}.regulation-header .btn{margin-top:10px}}

/* v10.1 */
article.legal,section.legal{width:min(1100px,calc(100% - 40px));max-width:1100px;margin:30px auto!important}
.field-help{display:block;color:#6d6470;margin:-3px 0 12px}
.compact-btn{padding:7px 10px;white-space:nowrap}

/* #11 login layout */
.auth-actions{display:flex;gap:10px;align-items:center;margin-top:16px;flex-wrap:wrap}
.auth-actions .btn,.auth-actions button{margin:0}
