:root{font-family:system-ui,sans-serif;background:#f4f6fa;color:#172b4d;--accent:#325bd8}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}a{color:var(--accent)}.brand{font-size:32px;font-weight:800;letter-spacing:-2px;text-decoration:none;color:#172b4d}.brand span{color:#477aff}.public-header{max-width:1180px;margin:auto;padding:30px;display:flex;justify-content:space-between;align-items:center}.public-header>span{font-size:13px;color:#65718a}.landing{max-width:1180px;padding:60px 30px 20px;margin:auto;position:relative}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#5272a7}h1{font-size:clamp(34px,5vw,62px);letter-spacing:-2px;line-height:1.08;margin:24px 0}p{color:#65718a;line-height:1.7}.lead{font-size:19px;max-width:580px}.hero-visual{position:absolute;right:35px;top:65px;width:330px;height:290px}.orbit{width:240px;height:240px;border:1px solid #cbd7f0;border-radius:50%;position:absolute;left:40px;top:25px}.tile{position:absolute;background:white;box-shadow:0 10px 35px #183b6512;border:1px solid #e0e7f1;padding:18px;border-radius:15px}.tile-main{font-size:34px;font-weight:800;left:95px;top:110px;background:#243f85;color:white}.tile-one{left:0;top:45px}.tile-two{right:0;top:70px}.tile-three{left:110px;bottom:0}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:95px 0 50px}article{border-top:1px solid #d5ddeb;padding-top:25px}article>span{color:#5272a7}h2{font-size:20px;line-height:1.4}footer{border-top:1px solid #d5ddeb;padding:22px 0;font-size:12px;color:#65718a}.shell{max-width:1100px;margin:0 auto;padding:30px}.notice{background:#fff1d5;color:#725523;border-radius:10px;padding:14px;font-size:13px}.panel{background:white;border:1px solid #e0e7f1;border-radius:15px;padding:25px;margin:20px 0}.tabs{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}button{border:0;padding:11px 17px;border-radius:8px;background:#e9eef8;color:#294572}button.active,.primary{background:var(--accent);color:white}label{display:block;margin:12px 0}input,select{padding:11px;border:1px solid #cbd4e4;border-radius:8px}input:not([type=checkbox]),select{width:100%;margin:6px 0 12px}.login{max-width:460px;margin:60px auto}.demo{padding:15px;background:#f3f6fc;font-size:13px;line-height:1.8;border-radius:8px}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:15px 8px;border-bottom:1px solid #e5eaf2;font-size:14px}.module{display:flex;align-items:center;gap:10px}.module input{width:auto}.toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center}.status{min-height:24px;color:#325bd8;font-size:14px}[hidden]{display:none!important}:focus-visible{outline:3px solid #e0a442;outline-offset:3px}@media(max-width:1000px){.hero-visual{position:relative;right:auto;top:auto;margin:35px auto}.features{margin-top:45px}}@media(max-width:650px){.features{grid-template-columns:1fr}.shell{padding:18px}.panel{overflow:auto}.toolbar{flex-wrap:wrap}.public-header>span{max-width:120px;text-align:right}.login{margin:25px auto}}

.list-avatar{display:inline-flex;width:40px;height:40px;min-width:40px;border-radius:50%;align-items:center;justify-content:center;background:#e4efeb;color:#1b6057;font-weight:700;margin-right:10px;vertical-align:middle;overflow:hidden}.list-avatar img{width:100%;height:100%;object-fit:cover}.photo-editor{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:14px 0}.photo-editor input[type=file]{max-width:280px}

/* Shared checkbox alignment for module and plan controls. */
label:has(> input[type=checkbox]){display:flex;align-items:center;gap:10px;line-height:1.4}
.module > input[type=checkbox],input[type=checkbox]{box-sizing:border-box;width:16px;height:16px;flex:0 0 16px;margin:0;padding:0;vertical-align:middle}
