.card.card--wide{width:min(1100px,100%);transition:width .2s ease}.customer-layout{display:flex;gap:24px;margin-top:16px;align-items:flex-start}.customer-list{flex:1;min-width:0}.customer-list ul{list-style:none;padding:0;margin:0;display:grid;gap:2px}.customer-list li{padding:10px 14px;border-radius:10px;cursor:pointer;transition:background .15s ease,color .15s ease;line-height:1.5}.customer-list li:hover{background:#eef2ef}.customer-list li.active{background:#17211b;color:#fff}.search-bar{position:relative;margin-bottom:12px}.search-input{width:100%;padding-right:36px;font-size:14px}.search-input:focus{border-color:#17211b;outline:none}.search-input::placeholder{color:#93a098}button.search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;color:#657069;font-size:14px;padding:4px 6px;border-radius:6px;line-height:1;font-weight:400}button.search-clear:hover{color:#17211b;background:#eef2ef}.customer-detail{flex:1;min-width:0;background:#f8faf8;border:1px solid #dce3dd;border-radius:14px;padding:24px}.customer-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}.customer-detail-header h3{margin:0;font-size:18px}.detail-grid{display:grid;grid-template-columns:auto 1fr;gap:12px 20px;margin:0}.detail-grid dt{font-size:13px;font-weight:600;color:#657069;white-space:nowrap}.detail-grid dd{margin:0;font-size:14px;word-break:break-word}.detail-actions{display:flex;gap:8px;flex-shrink:0}.edit-form{display:grid;gap:14px}.edit-form hr{border:none;border-top:1px solid #dce3dd;margin:6px 0}.edit-form h4{margin:0;font-size:15px;color:#657069}.edit-form label{display:grid;gap:5px;font-size:13px;font-weight:600}.edit-form input,.edit-form select{padding:8px 12px;border:1px solid #cbd4ce;border-radius:8px;font-size:14px;font:inherit}.edit-form input:focus,.edit-form select:focus{border-color:#17211b;outline:none}.feedback{padding:10px 14px;border-radius:8px;font-size:13px;font-weight:600;margin:0 0 16px}.feedback.success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.feedback.error{background:#fbe9e7;color:#c62828;border:1px solid #ffccbc}.badge{display:inline-block;padding:2px 10px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.badge-active{background:#e8f5e9;color:#2e7d32}.badge-inactive{background:#fbe9e7;color:#c62828}.badge-access-primary{background:#e3f2fd;color:#1565c0}.badge-access-standard{background:#f3e5f5;color:#7b1fa2}.badge-access-read_only{background:#fff3e0;color:#e65100}@media(max-width:768px){.card.card--wide{width:100%}.customer-layout{flex-direction:column}}.consent-section h4{margin:0 0 12px;font-size:.95rem;font-weight:600}.consent-grid{display:flex;flex-direction:column;gap:8px}.consent-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:6px;border:1px solid #e0e0e0;gap:12px}.consent-row.granted{background:#f0faf0;border-color:#b8e6b8}.consent-row.not-granted{background:#fafafa}.consent-info{display:flex;flex-direction:column;gap:2px;min-width:0}.consent-label{font-weight:500;font-size:.88rem}.consent-meta{font-size:.75rem;color:#888}.consent-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}button.small,button.secondary.small{padding:4px 12px;font-size:.78rem}.consent-history{margin-top:16px}.consent-history summary{cursor:pointer;font-size:.85rem;color:#555;margin-bottom:8px}.consent-table{width:100%;border-collapse:collapse;font-size:.82rem}.consent-table th,.consent-table td{padding:6px 10px;text-align:left;border-bottom:1px solid #eee}.consent-table th{background:#f5f5f5;font-weight:600;font-size:.78rem;text-transform:uppercase;color:#777}.assessment-section h4{margin:16px 0 12px;font-size:.95rem;font-weight:600}.no-active-session{background:#fafafa;border:1px dashed #cbd4ce;padding:16px;border-radius:8px;text-align:center}.active-session-box{background:#f0f7f4;border:1px solid #cce3d8;padding:16px;border-radius:8px;margin-bottom:12px}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.88rem}.template-selector{background:#fff;border:1px solid #dce3dd;padding:12px;border-radius:6px}.template-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.questionnaire-form{background:#fff;border:1px solid #dce3dd;padding:16px;border-radius:6px;display:grid;gap:16px}.questionnaire-form h5{margin:0;font-size:1rem;font-weight:600}.form-section{display:grid;gap:12px}.form-section h6{margin:0;font-size:.88rem;font-weight:600;color:#657069;border-bottom:1px solid #eee;padding-bottom:4px}.form-section label{display:grid;gap:4px;font-size:.82rem;font-weight:600}.form-section input,.form-section select{padding:6px 10px;border:1px solid #cbd4ce;border-radius:6px;font-size:.88rem;width:100%}.form-actions{display:flex;gap:8px;margin-top:12px}.assessment-history{margin-top:16px}.assessment-history summary{cursor:pointer;font-size:.85rem;color:#555;margin-bottom:8px}.assessment-table{width:100%;border-collapse:collapse;font-size:.82rem}.assessment-table th,.assessment-table td{padding:6px 10px;text-align:left;border-bottom:1px solid #eee}.assessment-table th{background:#f5f5f5;font-weight:600;font-size:.78rem;text-transform:uppercase;color:#777}.assessment-detail-view{background:#fff;border:1px solid #dce3dd;border-radius:8px;padding:18px;display:grid;gap:16px}.detail-view-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:8px}.detail-view-header h4{margin:0;font-size:1.05rem;font-weight:600}.session-meta-grid{display:flex;gap:20px;font-size:.85rem;color:#555;flex-wrap:wrap}.notes-box,.responses-box{background:#fdfdfd;border:1px solid #f0f0f0;border-radius:6px;padding:14px}.notes-box h5,.responses-box h5{margin:0 0 10px;font-size:.92rem;font-weight:600;color:#444}.notes-edit{display:grid;gap:8px}.notes-edit textarea{width:100%;padding:8px 10px;border:1px solid #cbd4ce;border-radius:6px;font-size:.88rem;font-family:inherit;resize:vertical}.read-only-notes{font-size:.88rem;color:#333;margin:0;white-space:pre-wrap;line-height:1.45}.response-block{margin-bottom:16px}.response-block:last-child{margin-bottom:0}.qa-list{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:.85rem}.qa-list dt{font-weight:600;color:#657069}.qa-list dd{margin:0;color:#222}.device-measurements-section{background:#fdfdfd;border:1px solid #f0f0f0;border-radius:6px;padding:14px}.device-measurements-section h5{margin:0 0 12px;font-size:.92rem;font-weight:600;color:#444}.measurement-form{margin-bottom:16px;display:grid;gap:12px}.measurement-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.measurement-inputs label{display:flex;flex-direction:column;gap:4px;font-size:.82rem;font-weight:600}.measurement-inputs input,.measurement-inputs select{padding:6px 10px;border:1px solid #cbd4ce;border-radius:6px;font-size:.88rem}.measurement-table{width:100%;border-collapse:collapse;font-size:.82rem}.measurement-table th,.measurement-table td{padding:8px 10px;text-align:left;border-bottom:1px solid #eee}.measurement-table th{background:#f5f5f5;font-weight:600;font-size:.78rem;text-transform:uppercase;color:#777}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none;max-width:420px;width:calc(100vw - 40px)}.toast-list{display:flex;flex-direction:column;gap:10px}.toast-item{pointer-events:auto;display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:8px;background:#fff;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;border:1px solid #e2e8f0;animation:toast-slide-in .25s cubic-bezier(.16,1,.3,1);transition:all .2s ease}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-item:focus{outline:2px solid #0f766e;outline-offset:2px}.toast-icon-wrap{flex-shrink:0;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem}.toast-content{flex:1;min-width:0}.toast-title{font-weight:600;font-size:.9rem;color:#1e293b;margin-bottom:2px}.toast-message{font-size:.85rem;color:#475569;line-height:1.4;word-break:break-word}.toast-close{flex-shrink:0;background:none;border:none;color:#94a3b8;font-size:1rem;cursor:pointer;padding:2px 6px;line-height:1;border-radius:4px}.toast-close:hover{color:#1e293b;background:#f1f5f9}.toast-success{border-left:4px solid #10b981}.toast-success .toast-icon-wrap{background:#ecfdf5;color:#059669}.toast-error{border-left:4px solid #ef4444}.toast-error .toast-icon-wrap{background:#fef2f2;color:#dc2626}.toast-warning{border-left:4px solid #f59e0b}.toast-warning .toast-icon-wrap{background:#fffbeb;color:#d97706}.toast-info{border-left:4px solid #0ea5e9}.toast-info .toast-icon-wrap{background:#f0f9ff;color:#0284c7}.modal-overlay{position:fixed;inset:0;background:#0f172a99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:9998;padding:20px;animation:modal-fade-in .15s ease-out}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal-dialog{background:#fff;border-radius:12px;max-width:520px;width:100%;box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #00000014;border:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden;animation:modal-scale-in .2s cubic-bezier(.16,1,.3,1)}@keyframes modal-scale-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e2e8f0}.modal-close-btn{background:none;border:none;color:#64748b;font-size:1.1rem;cursor:pointer;padding:4px 8px;border-radius:6px;line-height:1}.modal-close-btn:hover{background:#f1f5f9;color:#0f172a}.modal-body{padding:20px;max-height:70vh;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc}.pagination-container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid #e2e8f0;font-size:.85rem}.pagination-info{color:#64748b}.pagination-buttons{display:flex;align-items:center;gap:6px}.pagination-btn{padding:4px 10px;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:6px;font-size:.82rem;cursor:pointer;transition:all .15s ease}.pagination-btn:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-btn.active{background:#0f766e;border-color:#0f766e;color:#fff;font-weight:600}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17211b;background:#f5f7f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}.shell{min-height:100vh;display:grid;place-items:center;padding:24px}.card{width:min(720px,100%);background:#fff;border:1px solid #dce3dd;border-radius:18px;padding:32px;box-shadow:0 12px 40px #0000000f}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700}h1{margin:8px 0 12px;font-size:32px}h2{margin-top:32px;font-size:20px}.muted{color:#657069}.error{color:#a32828;margin-top:16px}.row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}form{display:grid;gap:16px;margin-top:24px}label{display:grid;gap:7px;font-weight:600}input{padding:12px 14px;border:1px solid #cbd4ce;border-radius:10px}button{border:0;border-radius:10px;padding:12px 16px;cursor:pointer;font-weight:700}button:not(.secondary){background:#17211b;color:#fff}.secondary{background:#eef2ef;color:#17211b}ul{padding-left:20px;line-height:1.9}
