.profile-main{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:96px 0 56px}
.profile-hero{padding:34px;border-radius:18px;background:linear-gradient(135deg,#f7fbff,#fff6fd);border:1px solid #dbeafe;box-shadow:0 18px 50px #2563eb18}
.profile-hero h1{max-width:720px;margin:8px 0 12px;font-size:clamp(34px,6vw,64px);line-height:1}
.profile-hero p{max-width:760px}
.sync-status{font-weight:800;color:#2563eb}
.metric-grid,.rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.metric-grid article,.rule-grid article{padding:16px;border-radius:14px;background:#fff;border:1px solid #e9d5ff}
.metric-grid b,.rule-grid b{display:block;font-size:24px;color:#341065;overflow-wrap:anywhere}
.metric-grid span,.rule-grid span{display:block;margin-top:6px;color:#6b587c}
.profile-panel{margin-top:18px;display:block}
.table-wrap{overflow:auto;margin-top:12px}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}
th,td{padding:12px;text-align:left;border-bottom:1px solid #f1e7ff;vertical-align:top}
th{background:#f5edff;color:#341065}
.job-list{display:grid;gap:10px;margin-top:12px}
.job-list article{padding:14px;border:1px solid #e0e7ff;border-radius:12px;background:#fff}
.job-list a{font-weight:800;color:#2563eb}
.profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.profile-form label{display:block;font-weight:800;color:#341065}
.profile-form input{width:100%;margin-top:7px;border:1px solid #d8c2e8;border-radius:12px;padding:12px;font:inherit;background:#fff;color:#261437}
.profile-form .check{grid-column:1/-1;display:flex;align-items:flex-start;gap:10px;font-weight:700;color:#5f4f6f}
.profile-form .check input{width:auto;margin-top:2px}
.profile-form button{grid-column:1/-1}
.profile-locked #profileAccessPanel,.profile-locked #answerAccessPanel{background:linear-gradient(135deg,#fff7ed,#f8fafc);border-color:#fed7aa}
.profile-form input:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}
.profile-form button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:760px){.metric-grid,.rule-grid{grid-template-columns:1fr}.profile-main{padding-top:82px}.profile-hero{padding:22px}}
@media(max-width:760px){.profile-form{grid-template-columns:1fr}}
