/* LAB 21.19: help, account, expanded forms, catalog and mobile registration. */
.builder-mode label>.lab-help-wrap{display:inline-flex;margin:0 0 0 4px;vertical-align:middle;line-height:1}.lab-help-wrap button.lab-help-icon{position:relative;display:inline-flex;width:24px!important;min-width:24px!important;height:24px!important;min-height:24px!important;font-size:0!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;vertical-align:middle}.lab-help-wrap button.lab-help-icon::before{content:'?';display:flex;align-items:center;justify-content:center;width:10.4px;height:10.4px;font:700 8px/1 Arial,sans-serif;border:1px solid #568674;border-radius:50%;color:#175e3d;background:#fff}.lab-help-icon:focus-visible{outline:2px solid #12a86a;outline-offset:0}.lab-help-stage{background:none!important;border:0!important;border-radius:0!important;padding:4px 0!important;font-size:13px!important;text-decoration:underline!important;min-height:32px!important;box-shadow:none!important}.panel>.lab-help-wrap{margin:0 0 18px}.lab-help-wrap .lab-help-tooltip{left:auto;right:0}.builder-mode .panel label>input,.builder-mode .panel label>select,.builder-mode .panel label>textarea{display:block;width:100%;margin-top:5px}.builder-mode section.builder-details,.builder-mode section.advanced-rules,.builder-mode section.builder-product-extra{padding:16px!important;display:block!important}.builder-mode .builder-details>h3,.builder-mode .advanced-rules>h3{font-size:16px;margin:4px 0 14px}.builder-mode .builder-plan .builder-details{margin-left:0;margin-right:0}.lab-account-menu{position:relative;color:white}.lab-account-menu summary{cursor:pointer;font-weight:600;font-size:14px;min-height:44px;padding:12px;list-style:none}.lab-account-menu summary::after{content:' ▾'}.lab-account-menu>button{position:absolute;right:0;top:100%;width:160px;z-index:100;background:white!important;color:#174c35!important;box-shadow:0 8px 30px #0002}.lab-password-dialog{width:min(460px,94vw);border:1px solid #d3e4da;border-radius:18px;padding:24px;color:#173e2c;max-height:90dvh;overflow:auto;font-family:system-ui}.lab-password-dialog::backdrop{background:#062b22a0}.lab-password-dialog label{display:block;margin:14px 0;font-size:14px}.lab-password-dialog input{width:100%;display:block;margin-top:6px;padding:12px;border:1px solid #bfd4c6;border-radius:8px;font-size:16px}.lab-password-dialog h2{font-size:21px;margin:0}.lab-password-dialog button{min-height:44px;padding:10px 16px;border-radius:9px}.catalog-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0}.catalog-toolbar>p,.catalog-toolbar>strong:first-child{flex:1}.catalog-toolbar button,.catalog-actions button{min-height:44px}.catalog-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;background:#f4f8f7;padding:16px;border:1px solid #deebe5;border-radius:12px;margin:20px 0}.catalog-filters>input{flex:2;min-width:180px;width:auto!important;margin:0!important}.catalog-filters label{flex:1;min-width:130px;margin:0!important}.catalog-filters button{min-height:44px}.catalog-count{font-size:13px;color:#5c736a}.catalog-list{overflow:auto}.catalog-table{width:100%;border-collapse:collapse;font-size:13px}.catalog-table th{background:#eaf3ef;padding:13px 9px;text-align:left;font-size:12px;color:#255042}.catalog-table td{padding:14px 9px;border-bottom:1px solid #e0eae6;vertical-align:middle}.catalog-table td:first-child{min-width:160px}.catalog-table img{width:42px;height:48px;object-fit:contain;border-radius:7px;margin-right:10px;vertical-align:middle}.catalog-table td strong{font-size:13px}.catalog-row-actions{white-space:nowrap}.catalog-row-actions button{font-size:11px;padding:8px;min-height:36px;margin-right:3px}.catalog-remove{background:none!important;color:#ac3434!important;border:0!important}.catalog-total{background:#edf9f2;padding:16px;border-radius:10px;font-size:13px}.catalog-total strong{color:#006d43}.catalog-section{border:1px solid #deebe5;border-radius:14px;padding:20px;margin:18px 0;background:white}.catalog-section h3{margin:0 0 16px!important}.catalog-photo{margin-bottom:16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.catalog-photo .builder-product-photo{width:92px;height:100px}.catalog-photo .builder-photo-label input{max-width:92px}.catalog-photo small{font-size:12px;color:#60776c}.catalog-price-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:end}.catalog-metric{display:flex;flex-direction:column;gap:5px;background:#edf8f2;padding:14px;border-radius:10px;min-height:92px}.catalog-metric strong{font-size:23px;color:#065640}.catalog-metric small,.catalog-metric span{font-size:12px}.catalog-actions{display:flex;justify-content:flex-end;gap:12px;margin:20px 0}.catalog-error{color:#a42d32;font-size:14px;white-space:pre-wrap}.catalog-editor .formgrid{grid-template-columns:1fr 1fr}.catalog-editor .catalog-section>label{max-width:260px}.catalog-categories .catalog-toolbar{border-bottom:1px solid #e2ece7;padding:12px 0}.catalog-categories .catalog-toolbar span{font-size:13px}.catalog-editor input:invalid:focus{outline-color:#c26c48}.workspace[data-step="2"]{grid-template-columns:210px minmax(0,1fr)!important}.workspace[data-step="2"]>.side{display:none}
@media(max-width:900px){.catalog-price-grid{grid-template-columns:1fr 1fr}.catalog-toolbar{gap:8px}.catalog-toolbar>p{flex-basis:100%}.catalog-table th,.catalog-table td{padding:10px 6px}}
@media(max-width:700px){.catalog-toolbar>button{flex:1}.catalog-filters{padding:12px;gap:10px}.catalog-filters>input{flex-basis:100%}.catalog-filters label{min-width:100px}.catalog-filters>button{flex-basis:100%}.catalog-editor .formgrid{grid-template-columns:1fr}.catalog-section{padding:14px}.catalog-table thead{display:none}.catalog-table,.catalog-table tbody{display:block}.catalog-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid #deebe5;border-radius:12px;padding:12px;margin-bottom:10px;background:white}.catalog-table td{display:block;border:0;padding:0;min-width:0!important;font-size:12px}.catalog-table td:first-child,.catalog-table td:last-child{grid-column:1/-1}.catalog-table td:not(:first-child):not(:last-child)::before{content:attr(data-label) ': ';color:#62776e}.catalog-row-actions{display:flex!important;justify-content:flex-end;gap:10px}.catalog-row-actions button{min-height:44px}.catalog-list{overflow:visible}.catalog-actions{flex-wrap:wrap}.catalog-actions>button{flex:1;font-size:13px}.catalog-metric strong{font-size:20px}.lab-account-menu summary{font-size:13px}.lab-account-menu>button{position:static}.lab-password-dialog{padding:18px}}
/* Registration only: retain scroll when keyboard or accessibility text needs it. */
@media(max-width:700px){body.auth-mode[data-access="register"]{min-height:100dvh;background:#f5faf7;padding:0!important}body.auth-mode[data-access="register"]>.topbar{display:none!important}body.auth-mode[data-access="register"] #lab{padding:0!important;margin:0!important;min-height:0!important}body.auth-mode[data-access="register"] .auth-story,body.auth-mode[data-access="register"] .access-caption,body.auth-mode[data-access="register"] .access-heading-copy,body.auth-mode[data-access="register"] .access-benefits{display:none!important}body.auth-mode[data-access="register"] .access-page{width:100%;max-width:440px;margin:0 auto!important;padding:12px 16px!important;min-height:0!important;background:none!important}body.auth-mode[data-access="register"] .access-heading{display:flex!important;justify-content:center!important;align-items:center!important;padding:0!important;margin:0 0 8px!important;min-height:0!important}body.auth-mode[data-access="register"] .access-logo{display:flex!important;align-items:center;justify-content:center;margin:0!important;padding:0!important;width:auto!important;position:static!important}body.auth-mode[data-access="register"] .access-logo img{height:48px!important;width:auto!important;max-width:150px!important;object-fit:contain}body.auth-mode[data-access="register"] .access-logo small{display:none!important}body.auth-mode[data-access="register"] .auth-shell{display:block!important;padding:0!important;margin:0!important}body.auth-mode[data-access="register"] section.auth{padding:14px!important;margin:0!important;width:100%!important;min-height:0!important;border-radius:16px!important}body.auth-mode[data-access="register"] .auth h2{font-size:21px!important;line-height:1.2!important;margin:0 0 12px!important}body.auth-mode[data-access="register"] .auth form>label{margin:8px 0!important;font-size:12px!important}body.auth-mode[data-access="register"] .access-input{margin-top:3px!important}body.auth-mode[data-access="register"] .access-input input{height:44px!important;min-height:44px!important;font-size:16px!important;padding-top:8px!important;padding-bottom:8px!important}body.auth-mode[data-access="register"] .auth-consent{font-size:11px!important;line-height:1.4!important;gap:8px!important}body.auth-mode[data-access="register"] .auth form>.muted{font-size:10px!important;margin:6px 0!important}body.auth-mode[data-access="register"] .auth .actions{margin:10px 0 0!important}body.auth-mode[data-access="register"] .auth .actions>button{min-height:44px!important;padding:10px!important;font-size:14px!important}body.auth-mode[data-access="register"] .access-links{margin:8px 0 0!important;padding:0!important;font-size:12px!important}body.auth-mode[data-access="register"] .access-links button{min-height:36px!important;padding:5px!important;font-size:12px!important}body.auth-mode[data-access="register"] .access-status:not([hidden]){font-size:12px;margin:8px 0!important}}
.panel>.catalog-back{display:block;margin:4px 0 20px}.panel>.lab-help-wrap{display:block;width:fit-content}
@media(max-width:700px){body.auth-mode[data-access="register"] .access-heading{padding:8px!important;border-radius:14px!important;overflow:visible!important}body.auth-mode[data-access="register"] .access-logo{min-height:0!important;height:auto!important;overflow:visible!important}body.auth-mode[data-access="register"] .auth-shell{width:100%!important}body.auth-mode[data-access="register"] .access-logo img{display:block;height:48px!important;max-height:none!important}}
