body[data-view] main{min-height:55vh}body[data-view] [hidden]{display:none!important}input,select,textarea{width:100%;padding:12px 14px;border:1px solid #bac6d6;border-radius:6px;font:inherit;color:var(--ink);background:white;margin:6px 0 18px}input:focus,select:focus,textarea:focus{outline:3px solid #dae7ff;border-color:var(--navy)}label{display:block;font-weight:700;font-size:14px}button{font:inherit;cursor:pointer}button:disabled{opacity:.65;cursor:wait}.button{border:1px solid transparent}.button.outline{border-color:var(--navy)}.text-button{background:none;border:0;padding:8px 0;color:var(--navy);text-decoration:underline;text-align:left;font-size:14px}.notice{margin:16px 0;font-size:15px;line-height:1.6;overflow-wrap:anywhere}.notice:not(:empty){background:#f2f5fb;padding:14px 16px;border-left:3px solid var(--navy);border-radius:4px}.notice.error{border-color:var(--red);color:#8b0924}.notice.success{border-color:#17694a}.portal-intro{max-width:1060px;margin:auto;padding:64px 28px 28px}.portal-intro h1{font-size:clamp(34px,4vw,52px);line-height:1.15;letter-spacing:-1.6px;margin:14px 0 20px}.portal-intro>p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:18px;line-height:1.7}.portal-shell{display:grid;grid-template-columns:240px minmax(0,1fr);max-width:1320px;margin:auto}.portal-nav{border-right:1px solid var(--line);padding:36px 26px;background:#f8faff;display:flex;flex-direction:column;gap:16px}.portal-nav>a{font-size:14px;color:var(--navy)}.portal-user{margin-top:36px;display:flex;flex-direction:column;gap:6px;overflow-wrap:anywhere;font-size:14px}.portal-user>span{color:var(--muted)}.portal-content{min-width:0;padding:36px 32px 60px}.portal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.portal-heading h1{font-size:36px;line-height:1.2;margin:10px 0}.portal-heading p:not(.eyebrow){color:var(--muted)}.portal-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}.portal-stats>div,.portal-card{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.portal-stats span{font-size:13px;color:var(--muted)}.portal-stats strong{display:block;font-size:30px;color:var(--navy);margin-top:5px}.request-list{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.request-list button{border:1px solid var(--line);border-radius:8px;background:white;padding:12px 16px;color:var(--navy);text-align:left}.request-list button.selected{border-color:var(--navy);background:#f2f5fb}.request-list small{display:block;color:var(--muted);margin-top:3px}.case-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(220px,1fr);gap:20px;align-items:start}.case-grid h2{font-size:25px;line-height:1.3;margin:6px 0 12px;overflow-wrap:anywhere}.case-grid h3{font-size:19px;margin:0 0 14px}.case-summary{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.portal-card{margin-bottom:20px}.portal-card p{line-height:1.65;overflow-wrap:anywhere}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.fields div{min-width:0}.fields dt{font-size:12px;color:var(--muted);margin-bottom:4px}.fields dd{margin:0;font-size:15px;overflow-wrap:anywhere}.tag{display:inline-block;font-size:12px;white-space:normal;border:1px solid var(--line);border-radius:30px;background:#f2f5fb;padding:5px 10px}.timeline{padding-left:20px}.timeline li{padding-bottom:18px}.timeline p{margin:5px 0;font-size:14px}.timeline time,.message time{font-size:12px;color:var(--muted)}.message{border-bottom:1px solid var(--line);padding:14px 0}.message p{white-space:pre-wrap;font-size:15px;margin:8px 0}.message time{display:block}.message-form{margin-top:20px}.message-form textarea{margin-bottom:12px}.empty-state{padding:42px 24px;background:#f8faff;border:1px solid var(--line);border-radius:12px;text-align:center}.empty-state p{color:var(--muted);margin:14px auto 24px;max-width:480px}.request-layout{max-width:1060px;margin:auto;padding:0 28px 70px;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(230px,1fr);gap:32px;align-items:start}.request-panel{background:white;border:1px solid var(--line);border-radius:12px;padding:28px}.request-aside{background:var(--navy);color:white;border-radius:12px;padding:28px}.request-aside p,.request-aside li{font-size:15px;line-height:1.75;color:#e4ebfa}.request-aside ol{padding-left:20px}.request-aside a{color:white}.request-aside h2{font-size:24px;line-height:1.3}.signed-in{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:22px;font-size:14px}.signed-in span{display:block;color:var(--muted);overflow-wrap:anywhere}.checkbox-label{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:13px;line-height:1.6;margin:6px 0 20px}.checkbox-label input{width:18px;height:18px;flex-shrink:0;margin:2px 0}.team-page{max-width:1280px;margin:auto}.team-table{width:100%;border-collapse:collapse;font-size:14px}.team-table td,.team-table th{text-align:left;padding:13px 12px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.table-scroll{overflow-x:auto}.team-table th{background:#f2f5fb;color:var(--navy)}.team-table td small{display:block;color:var(--muted);margin-top:3px}.team-table button{background:none;border:0;color:var(--navy);text-decoration:underline;padding:0}.back-button{margin:8px 0 20px}.admin-form{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.admin-form h3{font-size:17px}.admin-form label{margin-top:4px}.admin-form .button{width:100%}.email-log{margin-top:32px}.subtle{font-size:13px;line-height:1.7;color:var(--muted)}.login-panel form .full{margin-top:2px}.login-panel .account-note{font-size:14px}.login-panel input#code{letter-spacing:6px;font-size:24px}
.portal-content .portal-card{color:var(--ink);box-shadow:none}.portal-content .portal-card .eyebrow{color:var(--red)}.portal-content .portal-card .tag{color:var(--navy);background:var(--pale)}
.order-shell{max-width:1060px;margin:auto;padding:0 28px 70px}.checkout-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,1fr);gap:28px;align-items:start}.checkout-grid h2{font-size:25px;line-height:1.3;margin:0 0 20px}.checkout-grid form h2:not(:first-child){margin-top:28px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.checkout-steps{display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none;padding:0;margin:28px 0 0;font-size:14px;color:var(--navy)}.checkout-steps li{border-bottom:2px solid var(--line);padding-bottom:10px}.cart-totals{margin:24px 0}.cart-totals>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #ffffff36}.cart-totals dt{font-size:14px}.cart-totals dd{margin:0;font-weight:700;text-align:right;white-space:nowrap}.cart-totals .total-row{padding-top:20px;font-size:20px}.request-aside .subtle{color:#e4ebfa}.cart-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:28px}.optional{font-weight:400;color:var(--muted)}.verification-code{font-size:32px;letter-spacing:12px;max-width:240px}.payment-card{border-top:4px solid var(--navy)}.payment-amount{font-size:30px;font-weight:700;color:var(--navy);margin:14px 0}.payment-connection{margin-top:28px;overflow-wrap:anywhere}.payment-connection summary{font-size:18px;font-weight:700;color:var(--navy);cursor:pointer}.payment-connection pre{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--pale);border-radius:6px;padding:16px}.payment-connection code{font-size:13px;overflow-wrap:anywhere}.cart-link{font-size:14px;font-weight:600;color:var(--navy);white-space:nowrap}.full{width:100%;text-align:center}.admin-login-layout{padding-bottom:70px}
@media(max-width:800px){.checkout-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:0}.order-shell{padding:0 20px 44px}.checkout-steps{gap:12px;font-size:13px}.cart-actions .button{width:100%}}
@media(max-width:1000px){.portal-shell{grid-template-columns:190px minmax(0,1fr)}.portal-nav{padding:30px 18px}.portal-content{padding:30px 22px}.case-grid{grid-template-columns:1fr}.request-layout{grid-template-columns:minmax(0,1.6fr) minmax(220px,1fr);gap:20px}}
@media(max-width:700px){.portal-shell{display:block}.portal-nav{border-right:0;border-bottom:1px solid var(--line);padding:20px;flex-direction:row;flex-wrap:wrap;gap:10px 18px}.portal-nav>.eyebrow{width:100%;margin:0}.portal-user{width:100%;margin-top:8px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 14px}.portal-user>span{width:100%;order:3}.portal-content{padding:28px 18px 44px}.portal-heading{align-items:flex-start;flex-wrap:wrap;gap:8px}.portal-heading h1{font-size:30px}.portal-stats{gap:8px;margin:22px 0}.portal-stats>div{padding:13px 10px}.portal-stats span{font-size:11px}.portal-stats strong{font-size:25px}.case-grid{display:block}.portal-card{padding:20px}.fields{gap:18px 12px}.case-summary{flex-wrap:wrap}.request-list{display:grid;grid-template-columns:1fr}.portal-intro{padding:40px 20px 20px}.portal-intro h1{letter-spacing:-1px}.request-layout{display:block;padding:0 18px 44px}.request-panel{padding:22px}.request-aside{margin-top:24px;padding:24px}.request-aside ol{margin-top:20px}.team-table{min-width:700px}.portal-intro>p:not(.eyebrow){font-size:16px}.login-layout{padding-top:35px}.login-panel{min-width:0}input,select,textarea{font-size:16px}.portal-user strong{overflow-wrap:anywhere}.team-page{padding:24px 18px}}
