/* Premium Dental Care — Client Portal */
[hidden]{display:none!important}
.portal-main{background:#f4f7f6;min-height:70vh;font-family:var(--sans),Arial,sans-serif;color:#19343b}
.portal-hero{background:radial-gradient(circle at 85% 40%,#18505b 0,#0a313d 44%,#092934 100%);color:#f4fcf9;overflow:hidden;position:relative}
.portal-hero-inner{padding:62px 0 60px;display:grid;grid-template-columns:1.55fr 1fr;gap:55px;align-items:center}
.portal-eyebrow{font-size:11px;letter-spacing:2px;color:#b8e9d5;font-weight:800;display:flex;align-items:center;gap:9px}
.portal-eyebrow.dark{color:#188477}
.portal-green-dot{width:7px;height:7px;background:#baf0cf;display:inline-block;border-radius:50%;box-shadow:0 0 10px #7eddad}
.portal-hero h1{font-family:Georgia,serif;font-size:clamp(35px,4.3vw,62px);font-weight:500;line-height:1.09;letter-spacing:-1.7px;margin:22px 0 20px}
.portal-hero h1 em{color:#baf3d0;font-style:italic;font-weight:400}
.portal-hero p{font-size:15px;line-height:1.8;max-width:580px;color:#d0e2e2}
.portal-pill-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
.portal-pill-row span{border:1px solid #67918b;color:#dbf8ed;font-size:11px;font-weight:700;letter-spacing:.35px;border-radius:100px;padding:8px 12px}
.portal-hero-graphic{position:relative;min-height:238px;display:flex;align-items:center;justify-content:center}
.portal-orbit-one,.portal-orbit-two{position:absolute;border:1px solid #407e80;border-radius:50%;width:260px;height:260px}
.portal-orbit-two{width:182px;height:182px;border:1px dashed #7fa4a3;transform:rotate(25deg)}
.portal-icon-model{font-family:Georgia,serif;font-size:116px;color:#c5eed9;text-shadow:0 3px 45px #52c5aa99}
.portal-graphic-copy{position:absolute;right:0;bottom:4px;display:flex;flex-direction:column;gap:3px;letter-spacing:1px;font-size:10px;color:#a9d9d1}
.portal-graphic-copy b{color:white;font-size:12px}
.portal-site{padding:33px 0 88px}
.portal-demo-banner{background:#eaf7ee;border:1px solid #afd5ba;color:#195d46;border-radius:13px;padding:14px 18px;display:flex;gap:12px;align-items:flex-start;margin-bottom:22px;font-size:13px}
.portal-demo-banner strong{white-space:nowrap}
.portal-alert{border-radius:10px;border:1px solid #b4d5c9;background:#eaf8f1;color:#155d48;padding:13px 17px;margin:15px 0;font-size:13px}
.portal-alert.error{border-color:#e7bdc0;background:#fff0f0;color:#9c3541}
.portal-login-layout{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e4eae6;border-radius:22px;overflow:hidden;background:white;box-shadow:0 12px 55px #0b303b0d}
.portal-login-card{padding:45px 50px 48px}
.portal-login-card h2,.portal-dash-top h2{font-family:Georgia,serif;font-size:38px;font-weight:500;letter-spacing:-1px;margin:12px 0 8px}
.portal-login-card>p{color:#718080;font-size:14px;margin:0 0 28px}
.portal-login-card form{display:grid;gap:16px}
.portal-login-card form label,.portal-case-form label{font-size:12px;font-weight:700;color:#29454b;display:flex;flex-direction:column;gap:8px}
.portal-login-card form input,.portal-case-form input:not([type=checkbox]):not([type=file]),.portal-case-form select,.portal-case-form textarea,.portal-toolbar input,.portal-toolbar select,.portal-modal input,.portal-modal select{height:46px;border-radius:9px;border:1px solid #d5e1df;background:#fff;padding:10px 12px;font-size:13px;font-family:inherit;color:#203b41;outline:none;min-width:0}
.portal-case-form textarea{height:auto;resize:vertical;min-height:115px}
.portal-login-card form input:focus,.portal-case-form input:focus,.portal-case-form textarea:focus,.portal-case-form select:focus{border-color:#218f82;box-shadow:0 0 0 3px #ccefe633}
.portal-primary{border:none;background:#113c45;color:white;border-radius:10px;display:flex;justify-content:space-between;align-items:center;padding:13px 18px;font-weight:800;font-size:13px;cursor:pointer;min-height:47px;gap:20px}
.portal-primary:hover{background:#17675c}
.portal-primary:disabled{opacity:.6;cursor:wait}
.portal-login-card .portal-helper{font-size:12px;color:#7b8989;margin:18px 0 0}
.portal-helper a,.portal-form-foot a{font-weight:800;color:#087c70;text-decoration:underline;text-underline-offset:2px}
.portal-preview-roles{margin-top:23px;padding-top:20px;border-top:1px solid #e5eeeb}
.portal-preview-roles>span{display:block;letter-spacing:1px;font-size:10px;font-weight:800;color:#739089;margin-bottom:10px}
.portal-preview-roles>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.portal-preview-roles button{border:1px solid #c9ded7;background:#eff9f5;color:#174f47;padding:11px;border-radius:9px;font-size:12px;font-weight:800;cursor:pointer}
.portal-preview-roles button:hover{background:#d9efe5}
.portal-login-aside{background:#e6f4ee;padding:52px 52px;display:flex;flex-direction:column;justify-content:center}
.portal-overline{color:#318a78;font-size:10px;font-weight:800;letter-spacing:1.7px}
.portal-login-aside h2{font-family:Georgia,serif;font-size:31px;font-weight:500;line-height:1.25;margin:16px 0 28px;color:#133e40}
.portal-onboard-steps{display:flex;flex-direction:column;gap:20px}
.portal-onboard-steps>div{display:flex;gap:17px;align-items:flex-start}
.portal-onboard-steps i{font-style:normal;border:1px solid #9ecdb9;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;color:#0c7c69;min-width:37px;height:37px;font-weight:800}
.portal-onboard-steps span{display:flex;flex-direction:column;gap:6px}
.portal-onboard-steps b{font-size:14px}
.portal-onboard-steps small{color:#64827a;font-size:12px;line-height:1.55}
.portal-private-note{font-size:11px;line-height:1.6;color:#457167;margin-top:30px;border-top:1px solid #bbd8cc;padding-top:20px}
.portal-dash-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}
.portal-dash-top h2{margin:7px 0 6px}
.portal-dash-top p{color:#6a7e81;margin:0;font-size:13px}
.portal-dash-controls{display:flex;align-items:center;gap:13px}
.portal-role-chip{border-radius:100px;background:#d9efe6;color:#157359;padding:7px 12px;font-size:10px;letter-spacing:1px;font-weight:800}
.portal-quiet{background:none;border:none;color:#315b5c;cursor:pointer;font-size:13px;font-weight:700}
.portal-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:29px}
.portal-stat-grid>div{padding:22px 21px;background:white;border:1px solid #e5eae8;border-radius:13px;display:flex;flex-direction:column;gap:9px}
.portal-stat-grid span{font-size:10px;letter-spacing:1.35px;font-weight:800;color:#718a87}
.portal-stat-grid strong{font-size:31px;color:#174e55;font-weight:650;line-height:1}
.portal-stat-grid small{font-size:11px;color:#869595}
.portal-tabs{border-bottom:1px solid #cadad7;display:flex;gap:8px;margin-bottom:26px}
.portal-tabs button{border:0;background:transparent;padding:13px 19px;color:#718785;font-size:13px;font-weight:800;cursor:pointer;border-bottom:3px solid transparent}
.portal-tabs button[aria-selected=true]{border-color:#15836e;color:#164e46}
.portal-pane{background:#fff;border:1px solid #e2ebe8;border-radius:17px;padding:27px;box-shadow:0 10px 28px #0a30380b}
.portal-section-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:22px}
.portal-section-head h3{margin:0 0 5px;font-size:22px;font-family:Georgia,serif;font-weight:500;color:#1e4146}
.portal-section-head p{margin:0;color:#768987;font-size:12px}
.portal-toolbar{display:flex;gap:8px}.portal-toolbar input{width:235px}.portal-toolbar select{width:160px}
.portal-order-list,.portal-admin-list{display:grid;gap:12px}
.portal-order-card{display:grid;grid-template-columns:1.1fr .9fr .85fr auto;align-items:center;gap:15px;border:1px solid #e4eeea;border-radius:12px;padding:18px;background:#fdfefe}
.portal-order-card h4{margin:0;font-size:14px;color:#1e4d50}
.portal-order-card small{font-size:11px;color:#82918e;display:block;margin-top:5px}
.portal-order-card p{color:#587675;font-size:12px;margin:0}
.portal-order-card button{font-size:12px;font-weight:800;border:1px solid #bed8ce;color:#17685b;background:#eaf6f0;border-radius:8px;padding:10px 13px;cursor:pointer}
.portal-badge{border-radius:20px;display:inline-block;padding:6px 11px;background:#edf2f4;color:#57707b;font-size:10px;letter-spacing:.2px;font-weight:800;white-space:nowrap}
.portal-badge.production{background:#e8f3fe;color:#225d96}
.portal-badge.review{background:#fdf0d7;color:#90652c}
.portal-badge.complete{background:#e7f6e9;color:#256e44}
.portal-empty{border:1px dashed #cbded7;border-radius:12px;padding:40px 30px;text-align:center;color:#78908c;font-size:14px}
.portal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.portal-wide{grid-column:1/-1}
.portal-upload{padding:18px;background:#f4f9f7;border:1px dashed #a4c9bb;border-radius:13px}
.portal-upload-head{display:flex;justify-content:space-between;align-items:center;gap:15px}
.portal-upload-head span{display:flex;flex-direction:column;gap:5px}
.portal-upload-head b{font-size:13px}.portal-upload-head small{font-size:11px;color:#68847a}
.portal-upload-action{display:inline-flex!important;border:1px solid #b1d0c1;color:#126b56!important;border-radius:8px;background:white;padding:9px 13px;font-size:12px!important;font-weight:800;cursor:pointer;white-space:nowrap}
.portal-upload-action span{display:inline!important}
.portal-upload input{position:absolute;left:-9999px;opacity:0}
.portal-file-preview{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;font-size:11px;color:#67877d}
.portal-file-preview .file-chip{background:white;border:1px solid #b9d8cc;border-radius:7px;padding:8px}
.portal-checkbox{margin:23px 0;font-size:12px!important;font-weight:400!important;display:flex!important;flex-direction:row!important;align-items:start;gap:10px!important;line-height:1.7;color:#587475!important}
.portal-checkbox input{accent-color:#126b59;margin-top:4px}
.portal-form-foot{border-top:1px solid #e3ebe8;padding-top:21px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;color:#718b85}
.portal-required-note{font-size:11px;color:#8b9897}
.portal-admin-label{font-size:10px;letter-spacing:1px;background:#e8f3f3;padding:9px;color:#227a6b;font-weight:800;border-radius:6px}
.portal-admin-card{display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:12px;align-items:center;border:1px solid #e4eeea;border-radius:12px;padding:15px}
.portal-admin-card strong{font-size:13px}.portal-admin-card small{display:block;font-size:11px;color:#7e918d;margin-top:5px}
.portal-admin-card button{border-radius:8px;border:1px solid #b7d0c5;background:#eaf6ef;color:#165c4d;font-weight:800;padding:9px 11px;cursor:pointer}
.portal-modal-backdrop{position:fixed;inset:0;background:#0e2e37bb;z-index:240;display:flex;justify-content:center;align-items:center;padding:20px}
.portal-modal{background:white;border-radius:17px;width:min(800px,100%);max-height:90vh;overflow:auto;padding:27px;box-shadow:0 23px 100px #0003}
.portal-modal-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid #e5eee9;padding-bottom:17px;margin-bottom:18px}
.portal-modal-head h2{font-size:24px;margin:7px 0 0;font-family:Georgia,serif;font-weight:500}
.portal-icon-close{border:1px solid #e0e9e6;background:#f7fbf9;border-radius:50%;height:33px;width:33px;font-size:22px;cursor:pointer}
.portal-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 24px}
.portal-detail-grid dt{font-size:10px;letter-spacing:.7px;font-weight:800;color:#7a9187}
.portal-detail-grid dd{font-size:13px;margin:5px 0 0;color:#20444a;overflow-wrap:anywhere}
.portal-detail-files{border-top:1px solid #e4ece8;padding-top:16px}
.portal-detail-files h4{margin:0 0 11px}
.portal-detail-files a,.portal-detail-files span{display:block;padding:8px 0;font-size:12px;color:#146d60;overflow-wrap:anywhere}
.portal-admin-actions{margin-top:20px;border-top:1px solid #e4ebe8;padding-top:20px;display:flex;flex-wrap:wrap;align-items:end;gap:12px}
.portal-admin-actions label{font-size:11px;display:flex;flex-direction:column;gap:5px;flex:1;min-width:160px}
.portal-admin-actions input,.portal-admin-actions select{width:100%}
.portal-admin-actions button{border:0;background:#154c51;color:white;padding:12px 14px;font-size:12px;font-weight:800;border-radius:8px;cursor:pointer}
.portal-detail-note{color:#758c86;line-height:1.6;font-size:11px;padding-top:12px}
@media(max-width:960px){.portal-hero-inner{grid-template-columns:1fr}.portal-hero-graphic{display:none}.portal-login-card,.portal-login-aside{padding:33px}.portal-toolbar input{width:170px}.portal-order-card{grid-template-columns:1fr 1fr}.portal-admin-card{grid-template-columns:1fr 1fr}}
@media(max-width:670px){.portal-hero-inner{padding:47px 0}.portal-hero h1{letter-spacing:-.8px}.portal-site{padding:22px 0 55px}.portal-login-layout{grid-template-columns:1fr}.portal-login-card,.portal-login-aside{padding:27px 24px}.portal-demo-banner{flex-direction:column}.portal-dash-top{align-items:start}.portal-dash-top h2{font-size:30px}.portal-stat-grid{grid-template-columns:repeat(2,1fr);gap:9px}.portal-stat-grid>div{padding:16px}.portal-stat-grid strong{font-size:26px}.portal-pane{padding:18px}.portal-section-head{align-items:start;flex-direction:column}.portal-toolbar{width:100%;flex-direction:column}.portal-toolbar input,.portal-toolbar select{width:100%}.portal-form-grid{grid-template-columns:1fr}.portal-order-card,.portal-admin-card{grid-template-columns:1fr;gap:8px}.portal-order-card button,.portal-admin-card button{width:100%}.portal-form-foot{flex-direction:column;align-items:stretch}.portal-form-foot .portal-primary{width:100%}.portal-upload-head{align-items:start;flex-direction:column}.portal-detail-grid{grid-template-columns:1fr 1fr;gap:10px}.portal-preview-roles>div{grid-template-columns:1fr}}
.portal-share-result{border:1px solid #a7d7bd;background:#e8f8ef;color:#155943;border-radius:9px;font-size:12px;font-weight:700;line-height:1.7;padding:14px;margin-top:13px;overflow-wrap:anywhere}
.portal-share-result.error{border-color:#e3a8aa;background:#fff0ef;color:#9b4142}

/* V21: two-version case editor and lab delivery history */
.portal-modal{width:min(1050px,100%);max-height:94vh}
.portal-version-original,.portal-version-draft,.portal-sent-history,.portal-lab-delivery{margin-top:22px;border-radius:14px;border:1px solid #dce9e4;padding:23px;background:#fff}
.portal-version-original{background:#fafcfb}
.portal-version-draft{background:#f6fbf8;border-color:#cbded4}
.portal-version-heading{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:18px}
.portal-version-heading h3{font-size:20px;margin:7px 0 0;color:#173e42}
.portal-version-heading small{font-size:11px;color:#65847d;max-width:230px;text-align:right}
.portal-version-tag{display:inline-block;font-weight:800;letter-spacing:1px;color:#385f64;font-size:10px}
.portal-version-tag.green{color:#138165}
.portal-lab-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.portal-lab-form label,.portal-lab-file label,.portal-lab-add{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#466764;font-size:12px}
.portal-lab-form input,.portal-lab-form select,.portal-lab-form textarea,.portal-lab-file input[type=text],.portal-lab-delivery input{width:100%;min-height:40px;background:#fff;color:#163e3d;border:1px solid #ccdcd7;border-radius:8px;padding:10px 12px;font:inherit;font-weight:400}
.portal-lab-form textarea{min-height:105px;resize:vertical;white-space:pre-wrap}
.portal-lab-wide{grid-column:1/-1}
.portal-lab-attachments{border-top:1px solid #d9e7e2;margin-top:22px;padding-top:18px}
.portal-lab-attachments h4{margin:0 0 6px;font-size:15px}
.portal-lab-attachments>p,.portal-lab-delivery>p{font-size:12px;line-height:1.65;color:#68867f}
.portal-lab-file{display:grid;grid-template-columns:90px minmax(0,1fr) minmax(0,1.2fr);gap:14px;align-items:center;border:1px solid #d5e6df;background:white;border-radius:9px;padding:12px;margin-top:10px}
.portal-lab-file b{display:block;font-size:12px;overflow-wrap:anywhere}
.portal-lab-file small{display:block;color:#758b85;font-size:11px;margin-top:4px}
.portal-lab-check{display:flex!important;flex-direction:row!important;align-items:center;gap:6px!important}
.portal-lab-check input{accent-color:#1c8b6b}
.portal-lab-add{margin-top:17px}
.portal-lab-add input{font-size:12px;font-weight:400}
.portal-lab-secondary{background:#e2efe9;color:#125947;border:1px solid #b6d1c4;border-radius:8px;padding:11px 15px;font-weight:800;font-size:12px;cursor:pointer;margin-top:10px}
.portal-lab-footer{display:flex;justify-content:flex-end;border-top:1px solid #d9e7e2;margin-top:20px;padding-top:12px}
.portal-lab-delivery .portal-admin-actions{border:0;padding:0}
.portal-lab-delivery .portal-admin-actions button{background:#126957;padding:13px 18px}
.portal-version-history{padding:14px 16px;margin:12px 0;border:1px solid #d6e3de;border-radius:10px;background:#fff}
.portal-version-history summary{cursor:pointer;font-weight:750;font-size:13px;color:#195c51}
.portal-version-history dl{margin-top:17px}
.portal-sent-file{font-size:12px;color:#28584f}
.portal-lab-muted{color:#6b8079;font-size:13px}
@media(max-width:650px){.portal-modal{padding:16px}.portal-version-original,.portal-version-draft,.portal-sent-history,.portal-lab-delivery{padding:16px}.portal-version-heading{flex-direction:column}.portal-version-heading small{text-align:left}.portal-lab-form,.portal-lab-file{grid-template-columns:1fr}.portal-lab-wide{grid-column:auto}}

/* V22 PDF export & subject builder */
.portal-pdf-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:17px;padding-top:15px;border-top:1px solid #dbe9e3}
.portal-download-pdf{border:1px solid #aad0bf;background:#e5f5ed;color:#12624f;border-radius:9px;font-size:12px;font-weight:800;padding:11px 15px;cursor:pointer}
.portal-download-pdf:hover{background:#d0ebdd}
.portal-pdf-actions small{font-size:11px;color:#64827a;line-height:1.5}
.portal-subject-block{border:1px solid #d0e4d9;border-radius:12px;background:#f6fbf8;padding:18px;margin-top:18px}
.portal-subject-title{display:flex;flex-direction:column;gap:6px;margin-bottom:15px}
.portal-subject-title strong{color:#205d51;font-size:15px}
.portal-subject-title small{font-size:11px;color:#708b82}
.portal-subject-grid{display:grid;grid-template-columns:minmax(120px,0.65fr) minmax(200px,1.7fr);gap:13px}
.portal-subject-grid label{font-size:11px;color:#46685f;display:flex;flex-direction:column;gap:7px}
.portal-subject-grid input,.portal-subject-grid select,.portal-prefix-actions input{width:100%;min-height:41px;border:1px solid #c6d9d2;border-radius:7px;padding:10px;font-size:13px;background:white;color:#183f40;box-sizing:border-box}
.portal-subject-preview{padding:10px 12px;background:#e5f1eb;border-radius:7px;color:#305e54;font-size:12px;overflow-wrap:anywhere}
.portal-subject-preview strong{color:#0b6250}
.portal-prefix-settings{border-top:1px solid #d2e5dc;margin-top:14px;padding-top:10px;font-size:12px;color:#335d54}
.portal-prefix-settings summary{font-weight:700;cursor:pointer}
.portal-prefix-settings p{font-size:11px;color:#68837b}
.portal-prefix-actions{display:flex;gap:9px;align-items:center}
.portal-prefix-actions button{border:0;background:#175c4e;color:#fff;border-radius:7px;padding:10px 12px;white-space:nowrap;cursor:pointer;font-size:12px}
.portal-email-history{font-size:12px;color:#587b70;overflow-wrap:anywhere}
@media(max-width:670px){.portal-subject-grid{grid-template-columns:1fr}.portal-prefix-actions{flex-direction:column;align-items:stretch}.portal-prefix-actions button{width:100%}}

/* V23 patient identifier reminder */
.portal-lab-sensitive{margin:0 0 17px;padding:11px 14px;border-radius:8px;border:1px solid #dce9e3;color:#4c6b65;background:#edf5f1;font-size:12px;line-height:1.65}

/* V29 — account management */
.portal-text-button{border:0;background:transparent;color:#0f745c;font-size:13px;cursor:pointer;padding:13px 0;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.portal-account-form{display:grid;gap:12px;margin-top:15px}
.portal-account-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#44635c;font-weight:700}
.portal-account-form input{min-height:42px;border-radius:9px;border:1px solid #cdded6;padding:10px 12px;width:100%;font:inherit;box-sizing:border-box}
.portal-form-grid input[readonly]{background:#eff6f2;color:#547468;border-style:dashed;cursor:not-allowed}
.portal-client-create{margin-top:28px;padding:24px;border:1px solid #d6e6de;border-radius:14px;background:#f7fbf9}
.portal-client-create h3{margin-top:0}.portal-client-create p{font-size:13px;color:#5b756a}
.portal-client-summary{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px;font-size:13px;color:#526e64}
.portal-client-summary label{font-size:11px;display:flex;flex-direction:column;gap:4px}
.portal-client-summary input{padding:10px;border:1px solid #d0ded7;border-radius:7px}
.portal-client-list{display:grid;gap:10px}.portal-client-card{display:grid;grid-template-columns:2fr 1fr auto;gap:15px;align-items:center;border:1px solid #dae9e1;padding:14px;border-radius:10px}
.portal-client-card strong{font-size:13px;display:block}.portal-client-card small{font-size:11px;color:#648277;display:block;margin-top:5px;overflow-wrap:anywhere}
.portal-client-status{font-size:11px;font-weight:800;padding:5px 9px;border-radius:50px;display:inline-block}.portal-client-status.is-active{background:#def5e8;color:#12664d}.portal-client-status.is-inactive{background:#f6e6e4;color:#9b4842}
.portal-client-card button,.portal-credentials button{border:1px solid #b7d5c4;color:#175a48;background:#e8f5ed;border-radius:9px;padding:9px 13px;font-weight:800;cursor:pointer}
.portal-credentials{margin-top:18px;background:#edf9f0;border:1px solid #7fcb9b;padding:16px;border-radius:9px;overflow-wrap:anywhere}
.portal-credentials p{margin:8px 0;color:#204a3d}
@media(max-width:750px){.portal-client-card{grid-template-columns:1fr}.portal-client-summary{align-items:stretch;flex-direction:column}}

.cf-storage-card{padding:24px;margin:20px 0;border:1px solid #dce7e2;border-radius:16px;background:#f7faf8}.cf-storage-card p{font-size:14px;line-height:1.7}.cf-storage-card button,.cf-storage-file a{padding:9px 14px;border:1px solid #b7cfc4;border-radius:8px;background:white;color:#115e57;cursor:pointer}.cf-storage-card label{display:block;margin:16px 0}.cf-storage-card meter{width:100%;height:22px}.cf-storage-file{display:flex;align-items:center;gap:16px;padding:16px 0;border-top:1px solid #dce7e2}.cf-storage-file div{flex:1;overflow-wrap:anywhere}.cf-storage-file small{display:block}.cf-storage-table{overflow-x:auto}.cf-storage-table table{width:100%;border-collapse:collapse;font-size:14px}.cf-storage-table th,.cf-storage-table td{text-align:left;padding:12px;border-bottom:1px solid #dce7e2;overflow-wrap:anywhere}.cf-storage-card input[type=number]{max-width:90px;padding:8px}@media(max-width:650px){.cf-storage-file{flex-wrap:wrap}.cf-storage-file div{flex-basis:100%}}
