/* Ondativa Lab v4.9 — independent responsive creative studio. */
#olab-root{font-family:'DM Sans',sans-serif;background:#071a24;color:#f0faf8;overflow:hidden}
#olab-root *,#olab-root *:before,#olab-root *:after{box-sizing:border-box}
#olab-root .container{max-width:1260px;margin:auto;padding-inline:clamp(18px,3vw,32px)}
.lab9-hero{min-height:620px;position:relative;isolation:isolate;display:flex;align-items:center;padding:126px 0 100px;background:radial-gradient(ellipse 52% 88% at 85% 52%,#11695d,#092d39 62%,transparent 90%),linear-gradient(118deg,#071922,#102f3d)}
.lab9-hero:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(150deg,transparent 0,transparent 28px,#a5ffe40d 29px,transparent 31px);opacity:.35}
.lab9-hero-inner{position:relative;z-index:2}.lab9-kicker{font-size:11px;letter-spacing:.23em;font-weight:800;color:#8af4d8}.lab9-hero h1{font-family:Manrope,Arial,sans-serif;max-width:920px;margin:23px 0;font-size:clamp(48px,7vw,94px);line-height:1.05;letter-spacing:-.065em}.lab9-hero h1 em{font-style:normal;color:#48e1c1}.lab9-hero p{font-size:clamp(15px,2vw,20px);line-height:1.75;color:#b9d3d6;max-width:730px}.lab9-pills{display:flex;gap:9px;flex-wrap:wrap;margin:27px 0 35px}.lab9-pills span{border:1px solid #54a59777;background:#0c333e80;padding:9px 13px;border-radius:20px;color:#c2e8e0;font-size:11px;font-weight:750}.lab9-explore{font-size:12px;font-weight:800;color:#9efbe0;letter-spacing:.08em}.lab9-hero-orb{position:absolute;right:-11%;top:17%;width:550px;height:550px;border:1px solid #55c9bf33;border-radius:48% 52% 43% 57%;box-shadow:inset 40px 40px 60px #33a99612,0 0 140px #27ccb519;transform:rotate(-25deg);pointer-events:none}.lab9-hero-orb:before{content:'';position:absolute;inset:12%;border:1px solid #6ac9ba44;border-radius:45%}
.lab9-navigation{background:#081e28;border-top:1px solid #1d4a52;border-bottom:1px solid #1d4a52}.lab9-navigation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-block:18px}.lab9-nav{color:inherit;display:flex;flex-direction:column;gap:12px;padding:27px;border:1px solid #2a5159;border-radius:17px;background:linear-gradient(135deg,#153643bb,#0c202a);transition:transform .2s,border-color .2s}.lab9-nav:hover{transform:translateY(-4px);border-color:#50cfb1}.lab9-nav>span{font-size:11px;color:#72d7c4;display:flex;justify-content:space-between;font-weight:800}.lab9-nav strong{font-family:Manrope,Arial,sans-serif;font-size:clamp(19px,2vw,25px);letter-spacing:-.04em}.lab9-nav small{line-height:1.65;color:#a7c8c8;font-size:12px}
.lab9-section{padding:96px 0 115px;background:linear-gradient(180deg,#0a2430,#071a24);scroll-margin-top:80px}.lab9-section-dark{background:linear-gradient(140deg,#051521,#09232e)}.lab9-sectionhead{margin-bottom:34px}.lab9-sectionhead>span{font-size:11px;letter-spacing:.2em;color:#66e2c5;font-weight:800}.lab9-sectionhead h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(37px,5vw,62px);letter-spacing:-.055em;line-height:1.09;margin:14px 0 16px}.lab9-sectionhead p{max-width:750px;color:#b2cdd1;line-height:1.7;font-size:15px}
.lab9-workbench{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:21px;align-items:start}.lab9-stage,.lab9-panel{background:#0b2a34;border:1px solid #2f5660;border-radius:20px;overflow:hidden;box-shadow:0 20px 50px #00121f35}.lab9-stage{padding:22px}.lab9-stage-top{display:flex;justify-content:space-between;color:#91c2be;font-size:11px;letter-spacing:.15em;font-weight:800;padding:1px 1px 17px}.lab9-led{color:#70f3cf;letter-spacing:.08em}.lab9-stage small{color:#91aeb2;display:block;font-size:10px;line-height:1.6;margin-top:16px}.lab9-canvas-outer{min-width:0;display:flex;justify-content:center;align-items:center;min-height:180px;background:#041720;border-radius:9px;overflow:hidden}.lab9-canvas-outer canvas{display:block;height:auto;max-width:100%;box-shadow:0 0 20px #00000030}.lab9-post-outer canvas{width:min(100%,390px)}.lab9-brand-outer canvas{width:100%}.lab9-wall-outer{min-height:370px;padding:15px}.lab9-wall-outer canvas{width:100%}.lab9-wall-outer canvas.phone{width:190px;max-width:72%;max-height:415px;object-fit:contain;border-radius:13px}
.lab9-panel{padding:28px;display:flex;flex-direction:column;gap:21px}.lab9-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.lab9-field{display:flex;flex-direction:column;gap:9px;color:#ecf8f4;font-size:12px;font-weight:700}.lab9-field>span{display:flex;justify-content:space-between;align-items:center;gap:8px}.lab9-field>span small{font-size:10px;color:#8dadb7}.lab9-field>small{font-size:10px;color:#a3c1c4;line-height:1.6;font-weight:450}
.lab9-field input[type=text],.lab9-field input:not([type]),.lab9-field input[type=file],.lab9-field textarea,.lab9-field select{width:100%;min-width:0;border:1px solid #3a6872;border-radius:10px;padding:12px 13px;color:#eef7f5;background:#0a202b;font:500 13px 'DM Sans',sans-serif;outline:none}.lab9-field textarea{resize:vertical;line-height:1.5}.lab9-field input:focus,.lab9-field textarea:focus,.lab9-field select:focus{border-color:#66e8c6;box-shadow:0 0 0 3px #50cfa622}.lab9-field input[type=file]{font-size:10px}.lab9-field input[type=file]::file-selector-button{background:#1f5254;color:white;border:0;padding:9px;border-radius:6px;margin-right:10px;cursor:pointer}
.lab9-color{min-width:0;display:flex;flex-direction:column;gap:10px;font-size:12px;font-weight:750}.lab9-color-input{border:1px solid #3d6873;background:#0b202a;border-radius:10px;padding:6px 10px;display:flex;gap:8px;align-items:center}.lab9-color-input input{cursor:pointer;padding:0;border:0;background:transparent;width:44px;height:33px}.lab9-color-input output{font-size:12px;letter-spacing:.02em;color:#e4f6ee}.lab9-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lab9-photo,.lab9-wallthumb{position:relative;border:2px solid #45606a;border-radius:11px;overflow:hidden;cursor:pointer;background:linear-gradient(135deg,#26515c,#082d31);color:#fff;padding:0}.lab9-photo{height:106px}.lab9-photo.active,.lab9-wallthumb.active{border-color:#4deac5;box-shadow:0 0 0 2px #3ee9c522}.lab9-photo img,.lab9-wallthumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.lab9-photo:after,.lab9-wallthumb:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#04181acc,transparent 55%)}.lab9-photo span,.lab9-wallthumb span{position:absolute;bottom:8px;left:10px;color:#fff;font-weight:800;letter-spacing:.06em;font-size:10px;z-index:2}.lab9-segments{display:flex;flex-wrap:wrap;gap:8px}.lab9-segments button{border:1px solid #345b65;background:#102b36;color:#c0e0d9;padding:11px 14px;border-radius:9px;font-weight:750;font-size:11px;cursor:pointer}.lab9-segments button.active{color:#04332c;background:#7befc9;border-color:#7befc9}.lab9-wall-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.lab9-wallthumb{height:94px;text-align:left}.lab9-wallthumb span{font-size:10px;letter-spacing:0;line-height:1.2;text-shadow:0 1px 6px #000}
.lab9-button{background:#6cf0c9;color:#062a28;border:0;border-radius:10px;font-family:Manrope,Arial,sans-serif;font-weight:900;font-size:13px;padding:16px 18px;cursor:pointer;transition:transform .17s,background .17s;width:100%}.lab9-button:hover{background:#afffe0;transform:translateY(-2px)}.lab9-status{color:#91ddc9;font-size:12px;line-height:1.5;margin:0;min-height:8px}.lab9-hint{border-left:3px solid #59dcbf;padding:11px 13px;background:#0e3c464b;color:#add2d1;font-size:12px;line-height:1.65}
.lab9-footer{text-align:center;padding:110px 0;background:radial-gradient(ellipse at 50% 30%,#0a5d55,#071b24 65%)}.lab9-footer span{color:#70dec8;font-size:12px;letter-spacing:.2em;font-weight:800}.lab9-footer h2{font:800 clamp(36px,5vw,67px)/1.06 Manrope,sans-serif;letter-spacing:-.06em;margin:18px 0}.lab9-footer p{max-width:680px;margin:0 auto 28px;line-height:1.8;color:#b7d5d0}.lab9-link{display:inline-flex;justify-content:space-between;gap:26px;align-items:center;background:#6cf0c9;border-radius:10px;padding:17px 22px;color:#07332d;font-size:13px;font-weight:800}.lab9-link span{color:inherit}
@media(max-width:990px){.lab9-workbench{grid-template-columns:1fr}.lab9-stage{max-width:100%}.lab9-post-outer canvas{width:min(100%,410px)}.lab9-brand-outer canvas{width:min(100%,690px)}.lab9-wall-outer canvas{width:min(100%,730px)}}
@media(max-width:660px){.lab9-hero{min-height:525px;padding:104px 0 75px}.lab9-hero-orb{right:-60%;width:350px;height:350px;opacity:.45}.lab9-hero h1{font-size:clamp(44px,12vw,64px)}.lab9-navigation-grid{grid-template-columns:1fr;gap:10px}.lab9-nav{padding:18px;gap:6px}.lab9-nav strong{font-size:19px}.lab9-section{padding:70px 0}.lab9-sectionhead h2{font-size:clamp(35px,9vw,48px)}.lab9-panel{padding:19px;gap:18px}.lab9-stage{padding:14px}.lab9-stage-top{font-size:9px}.lab9-post-outer canvas{width:min(100%,350px)}.lab9-control-grid{gap:10px}.lab9-color-input{padding:5px}.lab9-color-input output{font-size:10px}.lab9-wallthumb{height:76px}.lab9-photo{height:88px}.lab9-wall-outer{min-height:250px}.lab9-footer{padding:80px 0}}
@media(max-width:380px){.lab9-control-grid{grid-template-columns:1fr}.lab9-photo{height:75px}}

/* Ondativa Lab v5.0 — printable business-card creator */
.lab50-workbench{grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr)}
.lab50-preview{display:grid;grid-template-columns:1fr;gap:22px;max-width:100%;padding:10px 6px 22px}
.lab50-preview-card{min-width:0;display:flex;flex-direction:column;align-items:center;gap:12px}
.lab50-preview-caption{align-self:stretch;display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.12em;color:#bad3da;font-weight:800}
.lab50-preview-caption b{font-size:11px;padding:6px 9px;background:#265962;color:#c9f8e9;border-radius:7px}
.lab50-preview-card canvas{width:100%;height:auto;display:block;aspect-ratio:9/5;border-radius:12px;box-shadow:0 22px 55px #0008;outline:1px solid #ffffff27}
.lab50-preview-card[hidden],.lab50-photo-controls[hidden]{display:none!important}
.lab50-stage-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:10px;font-weight:750;color:#8fb0b7;letter-spacing:.07em;padding:8px 5px}
.lab50-layout-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.lab50-layout{border:1px solid #3e6872;border-radius:10px;background:#102b36;color:#b4d4d2;display:flex;flex-direction:column;gap:6px;align-items:stretch;padding:6px;cursor:pointer;min-width:0}
.lab50-layout:hover{border-color:#87e6cb}.lab50-layout.active{border-color:#69f1cd;box-shadow:0 0 0 2px #69f1cd26;background:#214650}
.lab50-layout-name{font-weight:800;font-size:9px;line-height:1.25;text-align:center;min-height:24px}.lab50-layout small{color:#7ce5c7;font-size:8px;text-align:center}
.lab50-mini{position:relative;display:block;width:100%;aspect-ratio:9/5;border-radius:5px;background:#102e3a;overflow:hidden}
.lab50-mini i,.lab50-mini b,.lab50-mini em{position:absolute;display:block}.lab50-mini i{left:8%;top:20%;width:29%;height:36%;border-radius:4px;background:#66e9cb}.lab50-mini b{left:48%;top:27%;width:42%;height:7%;background:#d7fef0}.lab50-mini em{left:48%;top:51%;width:37%;height:5%;background:#8cbbbd}
.lab50-mini-0 i,.lab50-mini-8 i{top:0;left:0;height:100%;width:37%;border-radius:0}
.lab50-mini-1{background:#061921}.lab50-mini-1 i{transform:skew(-20deg);height:100%;top:0;left:0}
.lab50-mini-2,.lab50-mini-3,.lab50-mini-6{background:#e8e5db}.lab50-mini-2 i{left:0;top:0;height:100%;width:35%;background:#d2d8ce;border-radius:0}.lab50-mini-2 b,.lab50-mini-3 b,.lab50-mini-6 b{background:#123943}
.lab50-mini-3 i{left:0;top:0;height:21%;width:100%;border-radius:0}
.lab50-mini-4 i,.lab50-mini-9 i{top:0;left:0;height:100%;width:45%;transform:skew(-17deg)}
.lab50-mini-5 i{background:none;border:5px solid #69efd0;border-radius:100%;height:83%;width:45%;top:9%}
.lab50-mini-6 i{top:2%;left:8%;height:92%;width:25%;background:#c9d5d0;border-radius:100%}
.lab50-mini-7{background:linear-gradient(120deg,#186e77,#06202c,#317486)}.lab50-mini-7 i{background:#1b535c}
.lab50-mini-8 em,.lab50-mini-9 em{width:43%;height:15%;border:1px dashed #68e6cc;background:transparent;border-radius:15px}
.lab50-form-heading{font-family:Manrope,Arial;font-size:18px;font-weight:900;color:#e4faf2;border-bottom:1px solid #3c6068;padding-bottom:10px}
.lab50-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lab50-data-grid .lab9-field:first-child,.lab50-data-grid .lab9-field:nth-child(7){grid-column:1 / -1}
.lab50-actions{display:flex;gap:10px;align-items:stretch}.lab50-clear{background:#1b3c47;border:1px solid #376a72;color:#d4f2ea;border-radius:9px;padding:12px 14px;font-size:11px;font-weight:800;cursor:pointer;flex:0 0 auto}.lab50-actions .lab9-button{flex:1}
.lab50-printnote{font-size:11px;color:#aeced2;line-height:1.6;margin:0}.lab50-photo-controls{display:grid;gap:15px}.lab50-photo-controls .lab9-photo{height:94px}
@media(max-width:990px){.lab50-workbench{grid-template-columns:1fr}.lab50-preview{max-width:750px;margin:auto}}
@media(max-width:620px){.lab50-layout-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.lab50-layout{padding:4px}.lab50-layout-name{font-size:8px}.lab50-data-grid{grid-template-columns:1fr}.lab50-data-grid .lab9-field:first-child,.lab50-data-grid .lab9-field:nth-child(7){grid-column:auto}.lab50-actions{flex-direction:column}.lab50-preview-card canvas{border-radius:5px}.lab50-preview{padding:6px 0 12px}}

/* Ondativa Lab 5.1 — five integrated creation tools */
.lab9-navigation-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.lab9-nav{padding:20px 15px;min-height:176px}
.lab9-nav strong{font-size:clamp(17px,1.45vw,22px);line-height:1.2}
.lab9-nav small{font-size:11px;line-height:1.48}
.lab51-extra-tools .section{padding:85px 0;background:#08212b;color:#e6f7f3}
.lab51-extra-tools .section:nth-of-type(2){background:#071a24;color:#e6f7f3}
.lab51-extra-tools .section-head h2{color:inherit}
.lab51-extra-tools .section-head p{color:inherit;opacity:.75}
.lab51-extra-tools .tool-wrap{background:#0e2c35;border:1px solid #3c727066;border-radius:22px;padding:24px;box-shadow:0 23px 70px #0003}
.lab51-extra-tools .tool-panel,.lab51-extra-tools .tool-preview{min-width:0}
.lab51-extra-tools .tool-panel{border-radius:14px}
.lab51-extra-tools .section:nth-of-type(2) .tool-wrap{background:#0a2631}
.lab51-extra-tools .section:nth-of-type(2) .tool-preview{background:#0a2631;color:#d4eeeb}
.lab51-extra-tools .eyebrow{color:#47cbab}
.lab51-extra-tools .tool-panel h3{color:#f2fffa}
.lab51-extra-tools .tool-panel label{color:#d9f1e9}
.lab51-extra-tools .section{scroll-margin-top:90px}
@media(max-width:1200px){.lab9-navigation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.lab9-navigation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab51-extra-tools .tool-wrap{padding:12px}}
@media(max-width:540px){.lab9-navigation-grid{grid-template-columns:1fr}.lab9-nav{min-height:unset}.lab51-extra-tools .section{padding:64px 0}}

/* v5.2: Keep the QR Code laboratory section within the ocean-dark identity. */
#olab-extra-tools #qrcode,
#olab-extra-tools #qrcode.section-light{background:#071a24;color:#e6f7f3}
#olab-extra-tools #qrcode .section-head,
#olab-extra-tools #qrcode .section-head h2{color:#ecfaf6}
#olab-extra-tools #qrcode .section-head p{color:#b7d5d0;opacity:1}
#olab-extra-tools #qrcode .tool-wrap{background:#0b2a34}
#olab-extra-tools #qrcode .tool-preview{background:#0a2631;color:#d4eeeb}
/* The QR image itself intentionally retains a light background to be scannable. */
