:root{--ia-green:#20a866;--ia-green-dark:#167a49;--ia-pale:#eef9f3;--ia-text:#17201b;--ia-muted:#68736d;--ia-line:#dfe6e2;--ia-surface:#f6f8f7}
body.ia-platform{margin:0;background:#fff;color:var(--ia-text);font-family:Inter,"Segoe UI",Arial,sans-serif}.ia-platform *{box-sizing:border-box}.ia-platform .container{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh;max-width:none;margin:0}.ia-platform .sidebar{position:sticky;top:0;width:auto;height:100vh;padding:24px 20px;background:#fff;border-right:1px solid #e8ecea;overflow:auto}.ia-brand{height:64px;display:flex;align-items:center;margin-bottom:24px}.ia-brand img{width:190px;height:auto;max-height:58px;object-fit:contain;object-position:left}.ia-nav-group{position:relative;margin:22px 0}.ia-nav-group.ia-flow{margin-top:40px}.ia-nav-group.ia-flow:before{content:"↓";position:absolute;left:10px;top:-29px;color:#7fba99}.ia-nav-label{margin:0 12px 7px;color:#8b958f;font-size:10px;letter-spacing:1.5px}.ia-nav{display:block;width:100%;min-height:40px;padding:9px 12px;border:0;border-left:3px solid transparent;border-radius:8px;background:transparent;color:#46524b;text-align:left;cursor:pointer}.ia-nav:hover,.ia-nav.active{background:var(--ia-pale);border-left-color:var(--ia-green);color:#14251b}.ia-account{margin-top:34px}.ia-platform .main-content{margin:0;min-width:0;padding:0 42px 52px;max-width:none}.ia-topbar{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1ef;color:#7a8580;font-size:12px}.ia-avatar{width:34px;height:34px;display:grid;place-items:center;border:1px solid #cee2d6;border-radius:50%;color:var(--ia-green-dark)}.ia-screen-host{padding-top:36px}.ia-screen{display:none}.ia-screen.active{display:block}.ia-screen h1{max-width:1050px;margin:0 0 12px;font-size:40px;line-height:1.12;letter-spacing:-1.3px}.ia-screen h2{color:var(--ia-text)}.ia-screen p{color:var(--ia-muted)}.ia-eyebrow{color:var(--ia-green-dark);font-size:11px;font-weight:700;letter-spacing:1.6px}.ia-status{display:inline-flex;padding:5px 9px;border:1px solid #a8d7be;border-radius:99px;background:var(--ia-pale);color:var(--ia-green-dark);font-size:10px;letter-spacing:1px}.ia-opportunity{display:grid;grid-template-columns:1fr minmax(380px,46%);gap:34px;align-items:center;min-height:246px;margin-top:28px;padding:18px 18px 18px 44px;border:1px solid #b7ddc8;border-radius:16px;background:#f7fbf8;overflow:hidden}.ia-opportunity h2{margin:10px 0 5px;font-size:26px}.ia-opportunity img{width:100%;height:210px;object-fit:cover}.ia-create-title{text-align:center;margin:50px 0 28px;font-size:19px}.ia-gateways{display:flex;justify-content:center;gap:100px}.ia-gateway{position:relative;width:270px;height:270px;border:1.5px solid #58b985;border-radius:50%;overflow:hidden;background:#fff center/cover no-repeat;cursor:pointer;isolation:isolate;transition:.2s}.ia-gateway:before,.ia-gateway:after{content:"";position:absolute;inset:0}.ia-gateway:before{z-index:-2;background:center/cover no-repeat;opacity:.58}.ia-gateway:after{z-index:-1;background:#ffffff94}.ia-gateway-document:before{background-image:url('/images/a90/optimized/home-3d-document.webp')}.ia-gateway-immersive:before{background-image:url('/images/a90/optimized/home-immersive.webp')}.ia-gateway:hover{transform:translateY(-3px);background-color:#f5fbf7;box-shadow:0 16px 38px #183d2a18}.ia-gateway span{display:flex;height:100%;padding:42px 35px 34px;flex-direction:column;align-items:center;justify-content:center}.ia-gateway b{font-size:17px;letter-spacing:.8px}.ia-gateway small{max-width:210px;margin:13px 0 18px;color:#5f6b64;font-size:14px}.ia-gateway em{color:var(--ia-green-dark);font-style:normal;font-weight:700}.ia-progress{display:grid;grid-template-columns:repeat(4,1fr);margin:28px 0 34px}.ia-progress button{padding:12px 0 0;border:0;border-top:1px solid #dce3df;background:transparent;color:#87918c;text-align:left;font-size:11px;letter-spacing:1px;cursor:pointer}.ia-progress button.active{border-top:3px solid var(--ia-green);color:var(--ia-green-dark)}.ia-model-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:24px}.ia-model-main,.ia-model-aside,.ia-config-group,.ia-live-review,.ia-review-summary{border:1px solid var(--ia-line);background:#fff;padding:22px;box-shadow:0 7px 24px #203a2a08}.ia-model-main #model-upload{min-height:390px;display:flex;flex-direction:column;justify-content:center}.ia-model-aside h2{margin:8px 0 15px}.ia-readiness{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid #e8ecea}.ia-readiness b{color:var(--ia-muted)}.ia-readiness b.ok{color:var(--ia-green-dark)}.ia-platform .form-section{padding:0;background:transparent;box-shadow:none}.ia-platform .section-header{display:none}.ia-platform .form-group{margin-bottom:16px}.ia-platform .file-upload-area{background:#f8faf9;border-color:#60ba88}.ia-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.ia-button,.ia-platform .btn{min-height:44px;border-radius:8px;font-weight:700}.ia-button{padding:10px 18px}.ia-button.primary,.ia-platform .btn-primary{border:1px solid var(--ia-green);background:var(--ia-green);color:#fff}.ia-button.secondary,.ia-platform .btn-secondary{border:1px solid #9dcbb2;background:#fff;color:#26332c}.ia-platform .template-layout{grid-template-columns:minmax(430px,42%) minmax(0,58%);gap:24px}.ia-platform .options-grid{grid-template-columns:1fr 1fr;gap:12px}.ia-platform .template-card{min-height:205px;border:1px solid var(--ia-line);border-radius:10px;background:#fff;overflow:hidden}.ia-platform .template-card.selected{border:2px solid var(--ia-green);background:#f3faf6}.ia-platform .template-preview{height:128px;background-size:cover;background-position:center}.ia-platform .template-preview-classic{background-image:url('/images/a90/style-ancient.jpg')}.ia-platform .template-preview-estate{background-image:url('/images/a90/style-classical.jpg')}.ia-platform .template-preview-permaculture{background-image:url('/images/a90/optimized/style-modern.webp')}.ia-platform .template-preview-heritage{background-image:url('/images/a90/optimized/style-futuristic.webp')}.ia-platform .template-preview-pane{min-height:610px;background:#f8faf9;border-color:var(--ia-line)}.ia-platform .template-preview-frame{height:540px;background:#f1f5f2}.ia-platform .template-preview-frame img{width:100%;height:100%;object-fit:contain}.ia-platform .option-description{display:block}.ia-platform .template-cta{display:none}.ia-custom-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ia-custom-left{display:grid;gap:14px}.ia-config-title{margin-bottom:16px;color:var(--ia-green-dark);font-size:11px;font-weight:700;letter-spacing:1.5px}.ia-config-group .form-group{padding:13px;border:1px solid #e0e7e3;background:#f8faf9}.ia-document-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #e6ece8}.ia-document-row b{color:#425047}.ia-live-review img{width:100%;height:330px;object-fit:contain;background:#f3f6f4}.ia-live-review h2{margin:18px 0 10px}.ia-summary>div,#ia-review-summary>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #e7ece9}.ia-summary span,#ia-review-summary span{color:var(--ia-muted)}.ia-review-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:24px}.ia-platform #preview{display:block}.ia-platform #preview .action-buttons{display:flex}.ia-platform #generate-pdf{flex:1;font-size:15px}.ia-platform #reset-form{background:#fff}.ia-immersive-grid{display:grid;grid-template-columns:minmax(360px,38%) minmax(0,62%);gap:24px;margin-top:28px}.ia-exp-list{display:grid;gap:9px}.ia-exp{position:relative;min-height:100px;padding:16px 118px 16px 16px;border:1px solid var(--ia-line);border-radius:9px;background:#fff;text-align:left;cursor:pointer}.ia-exp.selected{border:2px solid var(--ia-green);border-left-width:4px;background:#f3faf6}.ia-exp small{display:block;margin-top:4px;color:var(--ia-muted)}.ia-exp i{position:absolute;right:12px;top:16px;width:88px;height:64px;border:1px solid var(--ia-line);background:url('/images/a90/optimized/immersive-visual-atlas.webp') 0 center/500% auto no-repeat}.ia-exp-preview{overflow:hidden;border:1px solid var(--ia-line);border-radius:10px;background:#fff;box-shadow:0 7px 24px #203a2a08}.ia-exp-preview>div{height:420px;background:url('/images/a90/optimized/immersive-visual-atlas.webp') 0 center/500% auto no-repeat}.ia-exp-preview section{padding:24px 28px}.ia-exp-preview h2{margin:9px 0 5px;font-size:34px}.ia-exp-preview section>b{display:block;margin:14px 0;color:var(--ia-green-dark);letter-spacing:1px}.ia-exp-preview button{min-height:44px;padding:10px 16px;border:1px solid #a9cab7;border-radius:8px;background:#fff}.ia-coming{max-width:850px;padding:58px;border:1px solid #c9dfd2;background:#f7fbf8}.ia-coming h1{margin-top:8px}.ia-platform :focus-visible{outline:3px solid #8bd0ab;outline-offset:3px}.ia-platform .hidden{display:none!important}
@media(max-width:1100px){.ia-platform .container{grid-template-columns:210px minmax(0,1fr)}.ia-platform .main-content{padding-inline:25px}.ia-model-grid,.ia-platform .template-layout,.ia-custom-grid,.ia-review-grid,.ia-immersive-grid{grid-template-columns:1fr}.ia-opportunity{grid-template-columns:1fr 42%}.ia-platform .template-preview-pane{min-height:500px}}
@media(max-width:760px){.ia-platform .container{display:block}.ia-platform .sidebar{position:relative;height:auto}.ia-platform .main-content{padding-inline:18px}.ia-gateways{flex-direction:column;align-items:center}.ia-opportunity{grid-template-columns:1fr;padding:24px}.ia-opportunity img{height:180px}.ia-screen h1{font-size:34px}}
.ia-a90c .ia-certified-header{display:none}.ia-a90c .ia-screen-host{padding-top:36px}.ia-a90c .ia-screen.active{display:block}.ia-a90c .ia-certified-stage{margin:0 0 24px;padding:24px;border:1px solid var(--ia-line);background:#fff;box-shadow:0 7px 24px #203a2a08}.ia-a90c .ia-certified-stage.hidden{display:none!important}.ia-a90c #file-upload:not(.hidden){display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:18px}.ia-a90c #file-upload>.form-group:first-of-type{grid-row:1/span 2}.ia-a90c #model-upload{min-height:390px;display:flex;flex-direction:column;justify-content:center}.ia-a90c #template-selection .template-layout{display:grid}.ia-a90c #customization:not(.hidden){display:grid;grid-template-columns:1fr 1fr;gap:16px}.ia-a90c #customization>.section-header{display:none}.ia-a90c #choose-color{max-width:none}.ia-a90c #preview{position:relative}.ia-a90c #preview .ia-review-summary{margin-top:22px}.ia-a90c #ia-a90c-summary>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #e7ece9}.ia-a90c #ia-a90c-summary span{color:var(--ia-muted)}.ia-a90c .ia-compatibility-dom{display:none!important}.ia-a90c .ia-coming{max-width:850px;padding:58px;border:1px solid #c9dfd2;background:#f7fbf8}
.ia-a90c[data-ia-current="style"] #template-selection>#custom-text-group,.ia-a90c[data-ia-current="style"] #template-selection>#logo-group,.ia-a90c[data-ia-current="style"] #template-selection>#side-image-group,.ia-a90c[data-ia-current="style"] #template-selection>#qr-image-group{display:none!important}.ia-a90c[data-ia-current="customise"] #template-selection .template-layout{display:none!important}.ia-a90c[data-ia-current="customise"] #template-selection>.section-header{display:none}
@media(max-width:1100px){.ia-a90c #file-upload:not(.hidden),.ia-a90c #customization:not(.hidden){grid-template-columns:1fr}.ia-a90c #file-upload>.form-group:first-of-type{grid-row:auto}}
.ia-a90c .ia-nav{min-height:52px;margin:5px 0;padding:13px 14px;font-size:14px;font-weight:600}.ia-a90c .ia-nav:before{display:inline-grid;width:25px;margin-right:7px;color:var(--ia-green-dark);font-size:17px}.ia-a90c .ia-nav[data-ia-screen="home"]:before{content:"⌂"}.ia-a90c .ia-nav[data-ia-screen="opportunity"]:before{content:"◇"}.ia-a90c .ia-nav[data-ia-screen="model"]:before{content:"▱"}.ia-a90c .ia-nav[data-ia-screen="immersive"]:before{content:"◉"}.ia-a90c .ia-nav[data-ia-screen="projects"]:before{content:"□"}.ia-a90c .ia-nav[data-ia-screen="outputs"]:before{content:"↗"}.ia-a90c .ia-nav.active{box-shadow:inset 3px 0 var(--ia-green),0 5px 15px #18865012}.ia-a90c .ia-nav-group{margin-block:28px}.ia-a90c .ia-progress{gap:12px}.ia-a90c .ia-progress button{min-height:78px;padding:16px 18px;border:1px solid #d8e3dd;border-radius:12px;background:linear-gradient(145deg,#fff,#f2f7f4);font-size:12px;font-weight:750;line-height:1.5;box-shadow:0 3px 12px #183d2a08}.ia-a90c .ia-progress button.active{border:2px solid #239a60;background:linear-gradient(145deg,#dff7e9,#bfeacf);color:#105d38;box-shadow:0 9px 22px #16864f22}.ia-a90c .ia-progress button.completed{border-color:#91caaa;background:linear-gradient(145deg,#f1fbf5,#dcf3e5);color:#23794c}.ia-a90c .ia-progress button.completed:after{content:"  ✓"}.ia-stage-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 24px}.ia-stage-actions .ia-button{min-width:170px}.ia-stage-actions .ia-button:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.3)}.ia-a90c .file-upload-area{min-width:0;overflow:hidden}.ia-a90c .upload-text{display:-webkit-box;max-width:100%;overflow:hidden;overflow-wrap:anywhere;word-break:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.35;text-overflow:ellipsis}.ia-a90c #file-upload>.form-group:not(:first-of-type){min-width:0;padding:18px;border:1px solid #dce7e1;border-radius:12px;background:linear-gradient(145deg,#fff,#f5faf7)}.ia-a90c #file-upload>.form-group:not(:first-of-type) .file-upload-area{min-height:155px;padding:22px}.ia-a90c #template-selection .template-preview-pane{min-height:590px}.ia-a90c #template-selection .template-preview-frame{height:540px}.ia-a90c #template-preview-image{width:100%;height:100%;object-fit:contain}.ia-a90c[data-ia-current="customise"] #template-selection{display:grid;grid-template-columns:minmax(0,58%) minmax(340px,42%);gap:18px}.ia-a90c[data-ia-current="customise"] #template-selection>.form-group{min-width:0;padding:18px;border:1px solid #dfe8e3;border-radius:12px;background:#fbfdfc}.ia-a90c[data-ia-current="customise"] #custom-text{min-height:150px}.ia-a90c[data-ia-current="customise"] .file-upload-area{padding:18px;min-height:130px}.ia-a90c[data-ia-current="customise"] #choose-color{grid-column:1/-1}.ia-a90c #preview:not(.hidden){display:grid;grid-template-columns:minmax(0,58%) minmax(320px,42%);gap:22px;align-items:start}.ia-a90c #preview>.section-header{grid-column:1/-1}.ia-a90c #preview .action-buttons{grid-column:1;display:flex}.ia-a90c #preview #generate-pdf{min-height:60px;background:linear-gradient(135deg,#23ad6b,#168d53);font-size:16px;letter-spacing:.5px;text-transform:uppercase;box-shadow:0 12px 28px #1886502b}.ia-a90c #preview .ia-review-summary{grid-column:2;grid-row:2/span 8;margin-top:0;padding:28px;border-radius:12px}.ia-a90c #preview #generate-pdf{font-size:0}.ia-a90c #preview #generate-pdf:after{content:"GENERATE 3D DOCUMENT";font-size:16px}.ia-a90c .custom-text-counter.is-warning{color:#a16207}.ia-a90c .custom-text-counter.is-invalid,.ia-a90c .custom-text-message{color:#b91c1c}
@media(min-width:1700px){.ia-a90c #template-selection .template-preview-pane{min-height:680px}.ia-a90c #template-selection .template-preview-frame{height:630px}}
@media(max-width:1100px){.ia-a90c[data-ia-current="customise"] #template-selection,.ia-a90c #preview:not(.hidden){grid-template-columns:1fr}.ia-a90c #preview .ia-review-summary{grid-column:1;grid-row:auto}.ia-a90c #template-selection .template-preview-frame{height:500px}}
.ia-a90c .ia-nav{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;column-gap:11px}.ia-a90c .ia-nav:before{display:none!important}.ia-a90c .ia-nav-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ia-a90c .ia-nav span{min-width:0;text-align:left}.ia-a90c[data-ia-current="model"] #file-upload:not(.hidden){position:relative;display:flex;flex-direction:column;gap:14px;padding-right:calc(46% + 22px);min-height:650px}.ia-a90c[data-ia-current="model"] #file-upload>.form-group{width:100%;min-width:0;margin:0;padding:16px;border:1px solid #dce7e1;border-radius:12px;background:linear-gradient(145deg,#fff,#f6faf8)}.ia-a90c[data-ia-current="model"] #file-upload>.form-group:first-of-type{display:block}.ia-a90c[data-ia-current="model"] #model-upload{min-height:180px}.ia-a90c[data-ia-current="model"] #file-upload>.form-group:not(:first-of-type) .file-upload-area{min-height:130px}.ia-a90c[data-ia-current="model"] #model-analysis{display:block!important;position:absolute;top:24px;right:24px;bottom:24px;width:calc(46% - 24px);margin:0!important;padding:26px!important;overflow:auto;border:1px solid #b9d9c8!important;border-radius:14px!important;background:linear-gradient(155deg,#f8fcfa,#eaf7ef)!important;box-shadow:0 14px 34px #183d2a14}.ia-a90c[data-ia-current="model"] #model-analysis:before{content:"MODEL ANALYSIS";display:block;margin-bottom:18px;color:#176f45;font-size:12px;font-weight:800;letter-spacing:1.7px}.ia-a90c #analysis-grid>div{min-width:0;padding:12px;border-bottom:1px solid #d9e9e0}.ia-a90c #analysis-grid strong,.ia-a90c #analysis-message,.ia-a90c #analysis-class{max-width:100%;overflow:hidden;overflow-wrap:anywhere}.ia-a90c #template-selection .template-layout{align-items:stretch}.ia-a90c #template-selection .template-preview-pane{height:auto!important;min-height:100%}.ia-a90c #template-selection .template-preview-frame{height:100%!important;min-height:620px}.ia-a90c #ia-a90c-summary>div{display:grid;grid-template-columns:minmax(82px,32%) minmax(0,1fr);align-items:start}.ia-a90c #ia-a90c-summary b{display:-webkit-box;min-width:0;max-width:100%;overflow:hidden;overflow-wrap:anywhere;word-break:break-word;text-align:right;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ia-a90c #choose-color{padding:22px;border:1px solid #d7e7de;border-radius:14px;background:linear-gradient(145deg,#fff,#f3faf6)}.ia-a90c #choose-color .section-header{display:flex!important}.ia-a90c #choose-color .section-title{text-transform:none}.ia-a90c #choose-color .form-group{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ia-a90c #choose-color input[type="color"]{width:100%;height:56px;padding:4px;border:2px solid #b9d9c8;border-radius:10px;background:#fff}.ia-a90c #choose-color input[type="color"]:focus{border-color:var(--ia-green);box-shadow:0 0 0 3px #20a86620}.ia-a90c h1,.ia-a90c h2,.ia-a90c .section-title,.ia-a90c .option-title{letter-spacing:-.01em}.ia-a90c .ia-review-summary,.ia-a90c #preview,.ia-a90c #template-selection{min-width:0}
@media(max-width:1100px){.ia-a90c[data-ia-current="model"] #file-upload:not(.hidden){padding-right:24px;padding-bottom:390px}.ia-a90c[data-ia-current="model"] #model-analysis{top:auto;left:24px;right:24px;bottom:24px;width:auto;height:340px}.ia-a90c #template-selection .template-preview-frame{min-height:520px}}
.ia-a90c .template-card,.ia-a90c .template-card:hover,.ia-a90c .template-card:focus-within,.ia-a90c .template-card.selected{width:100%;height:348px;min-height:348px;max-height:348px;transform:none!important;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease}.ia-a90c .template-card:hover{border-color:#66b98a;background:#f6fbf8;box-shadow:0 10px 24px #183d2a12}.ia-a90c .template-card.selected{border-color:var(--ia-green);background:#edf9f2;box-shadow:0 10px 24px #16864f18}.ia-a90c .template-card .template-preview,.ia-a90c .template-card:hover .template-preview,.ia-a90c .template-card:focus-within .template-preview,.ia-a90c .template-card.selected .template-preview{width:100%;height:128px;min-height:128px;max-height:128px;transform:none!important;background-size:cover!important;transition:none!important}.ia-a90c #template-selection .template-layout{grid-template-rows:708px;height:708px;min-height:708px;max-height:708px}.ia-a90c #template-selection .options-grid{grid-auto-rows:348px;align-content:start}.ia-a90c #template-selection .template-preview-pane,.ia-a90c #template-selection .template-preview-pane:hover,.ia-a90c #template-selection .template-preview-pane:focus-within{height:708px!important;min-height:708px!important;max-height:708px!important;transform:none!important;overflow:hidden}.ia-a90c #template-selection .template-preview-frame,.ia-a90c #template-selection .template-preview-frame:hover{height:650px!important;min-height:650px!important;max-height:650px!important;transform:none!important}.ia-a90c #template-preview-image{transform:none!important;transition:opacity .12s ease!important;object-fit:contain!important}.ia-a90c .ia-nav[data-ia-screen="home"] .ia-nav-icon{color:#2878bd}.ia-a90c .ia-nav[data-ia-screen="opportunity"] .ia-nav-icon{color:#14977c}.ia-a90c .ia-nav[data-ia-screen="model"] .ia-nav-icon{color:#168eb5}.ia-a90c .ia-nav[data-ia-screen="immersive"] .ia-nav-icon{color:#7564bd}.ia-a90c .ia-nav[data-ia-screen="projects"] .ia-nav-icon{color:#b7792c}.ia-a90c .ia-nav[data-ia-screen="outputs"] .ia-nav-icon{color:#596fc0}.ia-a90c .ia-nav.active .ia-nav-icon{color:var(--ia-green-dark)}.ia-a90c .ia-nav span{color:#46524b}.ia-a90c .ia-nav.active span{color:#14251b}.ia-a90c #choose-color .form-group{display:block}.ia-a90c #choose-color .pdf-color-row{display:grid!important;grid-template-columns:repeat(3,minmax(100px,120px));align-items:end!important;gap:16px!important}.ia-a90c #choose-color .pdf-color-row>div:nth-child(2){display:contents!important}.ia-a90c #choose-color .gradient-preview,.ia-a90c #choose-color .pdf-color-row>div:nth-child(2)>div{position:relative;width:100%!important;height:88px!important;min-width:0;padding:28px 8px 8px;border:1px solid #b8d7c7!important;border-radius:11px!important;background-color:#fff;box-shadow:0 5px 14px #183d2a0e}.ia-a90c #choose-color .gradient-preview:before{content:"Gradient Preview";position:absolute;top:7px;left:8px;padding:2px 5px;border-radius:4px;background:#ffffffd9;color:#405249;font-size:10px;font-weight:700;letter-spacing:.2px}.ia-a90c #choose-color .pdf-color-row>div:nth-child(2)>div .form-label{height:20px;margin:0 0 4px!important;font-size:0!important}.ia-a90c #choose-color .pdf-color-row>div:nth-child(2)>div:first-child .form-label:after{content:"Top Colour";font-size:11px;font-weight:700;color:#405249}.ia-a90c #choose-color .pdf-color-row>div:nth-child(2)>div:last-child .form-label:after{content:"Bottom Colour";font-size:11px;font-weight:700;color:#405249}.ia-a90c #choose-color input[type="color"]{width:100%!important;height:47px!important;padding:3px!important;border:0!important;border-radius:7px!important}.ia-a90c #choose-color .gradient-preview{background-clip:padding-box}.ia-a90c #choose-color small{margin-top:12px!important}.ia-a90c #choose-color input[type="color"]:focus{outline:2px solid var(--ia-green);outline-offset:2px}
@media(max-width:1100px){.ia-a90c #template-selection .template-layout{height:auto;min-height:0;max-height:none;grid-template-rows:auto}.ia-a90c #template-selection .template-preview-pane{height:620px!important;min-height:620px!important;max-height:620px!important}.ia-a90c #template-selection .template-preview-frame{height:562px!important;min-height:562px!important;max-height:562px!important}.ia-a90c #choose-color .pdf-color-row{grid-template-columns:repeat(3,minmax(96px,1fr))}}
.ia-a90c[data-ia-current="customise"] #template-selection>#choose-color{display:none!important}.ia-a90c[data-ia-current="customise"] #template-selection>.form-group:first-of-type{grid-column:1/-1}.ia-a90c[data-ia-current="customise"] #template-selection>.form-group:first-of-type>.form-label{display:block;margin-bottom:14px;color:#263b30;font-size:15px;font-weight:750}.ia-a90c[data-ia-current="customise"] #template-selection>.form-group:first-of-type>#choose-color{display:block!important;margin:0;padding:22px;border:1px solid #d7e7de;border-radius:12px;background:linear-gradient(145deg,#fff,#f3faf6);box-shadow:none}.ia-a90c #choose-color .pdf-color-row{grid-template-columns:repeat(3,minmax(140px,1fr));align-items:stretch!important}.ia-a90c #choose-color .gradient-preview,.ia-a90c #choose-color .pdf-color-row>div:nth-child(2)>div{display:grid;height:112px!important;min-height:112px;padding:12px;border-radius:11px!important;overflow:visible}.ia-a90c #choose-color .gradient-preview{display:block;padding:36px 12px 12px}.ia-a90c #choose-color .gradient-preview:before{top:11px;left:12px}.ia-a90c #choose-color .pdf-color-row>div:nth-child(2)>div{grid-template-rows:20px minmax(0,1fr);gap:8px}.ia-a90c #choose-color .pdf-color-row>div:nth-child(2)>div .form-label{height:20px;margin:0!important}.ia-a90c #choose-color input[type="color"]{display:block;width:100%!important;height:60px!important;min-height:0;padding:4px!important}.ia-a90c #preview:not(.hidden){display:grid;grid-template-columns:1fr;gap:18px;align-items:stretch}.ia-a90c #preview>.section-header,.ia-a90c #preview>.form-group,.ia-a90c #preview>#job-progress,.ia-a90c #preview>#finalize-custom-text-warning,.ia-a90c #preview .action-buttons,.ia-a90c #preview .ia-review-summary{grid-column:1;width:100%;min-width:0}.ia-a90c #preview .action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:0}.ia-a90c #preview .action-buttons>.btn{width:100%;height:60px;min-height:60px;margin:0}.ia-a90c #preview #reset-form{border:1px solid #79b796;color:#224b35}.ia-a90c #preview .ia-review-summary{grid-row:auto;margin-top:4px;padding:24px 28px;border-radius:12px}.ia-a90c #preview #upload-progress-fill,.ia-a90c #preview #job-progress-fill{background:#20a866!important}.ia-a90c #preview #job-progress{margin:0;padding:20px;border:1px solid #dce7e1;border-radius:12px;background:#f8fbf9}.ia-a90c #ia-a90c-summary>div{grid-template-columns:minmax(120px,22%) minmax(0,1fr)}
@media(max-width:760px){.ia-a90c #choose-color .pdf-color-row{grid-template-columns:1fr}.ia-a90c #preview .action-buttons{grid-template-columns:1fr}.ia-a90c #preview .action-buttons>.btn{height:54px;min-height:54px}}

/* UI-F3 — LANDSTACK immersive-template primary CTA */
.ia-a90c #ia-exp-continue:not(:disabled) {
    position: relative;
    border: 1px solid #20a866;
    background: #f4fbf7;
    color: #137a49;
    font-weight: 700;
    cursor: pointer;
    transition:
        transform .18s ease,
        background-color .18s ease,
        border-color .18s ease,
        color .18s ease,
        box-shadow .18s ease;
}

.ia-a90c #ia-exp-continue:not(:disabled):hover {
    transform: translateY(-2px);
    border-color: #168b54;
    background: #20a866;
    color: #fff;
    box-shadow: 0 10px 22px rgba(32, 168, 102, .22);
}

.ia-a90c #ia-exp-continue:not(:disabled):active {
    transform: translateY(0);
    box-shadow: 0 4px 10px rgba(32, 168, 102, .18);
}

.ia-a90c #ia-exp-continue:not(:disabled):focus-visible {
    outline: 3px solid rgba(32, 168, 102, .22);
    outline-offset: 3px;
}

/* Give the existing arrow a small directional movement on hover. */
.ia-a90c #ia-exp-continue:not(:disabled):hover {
    padding-left: 18px;
    padding-right: 14px;
}


/* ==========================================================
   UI-F4 — FUTURISTIC INTERACTIVE SIDEBAR
   ========================================================== */

.ia-a90c .sidebar {
    width: auto;
    padding: 26px 18px 30px;
    background:
        radial-gradient(
            circle at 15% 4%,
            rgba(32,168,102,.085),
            transparent 26%
        ),
        linear-gradient(
            180deg,
            rgba(255,255,255,.98) 0%,
            rgba(249,253,251,.97) 55%,
            rgba(245,251,248,.98) 100%
        );
    border-right: 1px solid rgba(32,168,102,.13);
    box-shadow:
        8px 0 32px rgba(20,54,37,.055),
        inset -1px 0 0 rgba(255,255,255,.8);
}


/* ---------- BRAND ---------- */

.ia-a90c .ia-brand {
    min-height: 66px;
    display: flex;
    align-items: center;
    padding: 2px 10px 20px;
    margin-bottom: 18px;
    border-bottom: 1px solid rgba(32,168,102,.10);
}

.ia-a90c .ia-brand img {
    max-width: 176px;
    height: auto;
    filter: drop-shadow(0 5px 10px rgba(20,54,37,.06));
}


/* ---------- GROUPS ---------- */

.ia-a90c .ia-nav-group {
    position: relative;
    margin: 0 0 28px;
}

.ia-a90c .ia-nav-group.ia-flow {
    padding-top: 5px;
}


/* subtle workflow rail */

.ia-a90c .ia-nav-group.ia-flow::before {
    content: "";
    position: absolute;
    left: 16px;
    top: -22px;
    width: 1px;
    height: 20px;
    background: linear-gradient(
        to bottom,
        rgba(32,168,102,.08),
        rgba(32,168,102,.38)
    );
}

.ia-a90c .ia-nav-group.ia-flow::after {
    content: "";
    position: absolute;
    left: 13px;
    top: -5px;
    width: 6px;
    height: 6px;
    border-right: 1.5px solid rgba(32,168,102,.55);
    border-bottom: 1.5px solid rgba(32,168,102,.55);
    transform: rotate(45deg);
}


/* ---------- SECTION LABELS ---------- */

.ia-a90c .ia-nav-label {
    margin: 0 10px 9px;
    color: #8a9b91;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.65px;
    line-height: 1;
}


/* ---------- NAVIGATION CARDS ---------- */

.ia-a90c .ia-nav {
    position: relative;
    width: 100%;
    min-height: 52px;
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 7px;
    padding: 10px 12px;
    overflow: hidden;

    border: 1px solid transparent;
    border-radius: 12px;

    background: rgba(255,255,255,.38);
    color: #425148;

    font-size: 13px;
    font-weight: 650;
    text-align: left;

    cursor: pointer;

    transition:
        transform .18s ease,
        background-color .18s ease,
        border-color .18s ease,
        color .18s ease,
        box-shadow .18s ease;
}


/* subtle internal highlight */

.ia-a90c .ia-nav::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;

    background:
        linear-gradient(
            100deg,
            rgba(32,168,102,.10),
            transparent 55%
        );

    transition: opacity .18s ease;
}


/* ---------- ICON TILE ---------- */

.ia-a90c .ia-nav-icon {
    position: relative;
    z-index: 1;

    width: 30px;
    height: 30px;
    flex: 0 0 30px;

    padding: 7px;

    border: 1px solid rgba(78,111,94,.11);
    border-radius: 9px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.96),
            rgba(242,248,245,.88)
        );

    box-shadow:
        0 4px 10px rgba(22,61,40,.045);

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease,
        color .18s ease,
        box-shadow .18s ease;
}

.ia-a90c .ia-nav span {
    position: relative;
    z-index: 1;
    line-height: 1.18;
}


/* ---------- HOVER ---------- */

.ia-a90c .ia-nav:hover {
    transform: translateX(4px);

    border-color: rgba(32,168,102,.18);

    background: rgba(242,251,246,.92);

    color: #163b27;

    box-shadow:
        0 7px 18px rgba(22,82,49,.075);
}

.ia-a90c .ia-nav:hover::before {
    opacity: 1;
}

.ia-a90c .ia-nav:hover .ia-nav-icon {
    transform: scale(1.06);

    border-color: rgba(32,168,102,.28);

    background: #fff;

    color: #168b54;

    box-shadow:
        0 5px 14px rgba(32,168,102,.12);
}


/* ---------- ACTIVE ---------- */

.ia-a90c .ia-nav.active {
    transform: translateX(2px);

    border-color: rgba(32,168,102,.28);

    background:
        linear-gradient(
            100deg,
            rgba(229,248,238,.98),
            rgba(244,252,248,.92)
        );

    color: #123c27;

    font-weight: 760;

    box-shadow:
        0 8px 20px rgba(23,121,70,.10),
        inset 3px 0 0 #20a866;
}

.ia-a90c .ia-nav.active::before {
    opacity: 1;
}

.ia-a90c .ia-nav.active .ia-nav-icon {
    border-color: rgba(32,168,102,.32);

    background:
        linear-gradient(
            145deg,
            #e9f9f0,
            #ffffff
        );

    color: #168b54;

    box-shadow:
        0 5px 14px rgba(32,168,102,.13);
}


/* small active indicator */

.ia-a90c .ia-nav.active::after {
    content: "";
    position: absolute;
    right: 12px;

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #20a866;

    box-shadow:
        0 0 0 4px rgba(32,168,102,.10);
}


/* ---------- PRESS ---------- */

.ia-a90c .ia-nav:active {
    transform: translateX(2px) scale(.985);
}


/* ---------- KEYBOARD ---------- */

.ia-a90c .ia-nav:focus-visible {
    outline: 2px solid rgba(32,168,102,.55);
    outline-offset: 2px;
}


/* ---------- MAIN CONTENT GEOMETRY ---------- */
/* UI-F4C: preserve the certified grid-controlled application geometry. */

.ia-a90c .main-content {
    margin: 0;
}


/* ---------- SMALLER HEIGHT SCREENS ---------- */

@media (max-height: 760px) {
    .ia-a90c .ia-nav-group {
        margin-bottom: 20px;
    }

    .ia-a90c .ia-nav {
        min-height: 46px;
    }

    .ia-a90c .ia-brand {
        margin-bottom: 12px;
        padding-bottom: 14px;
    }
}


/* UI-F4A — vertical navigation rhythm without changing application width */

.ia-a90c .ia-nav-group {
    margin-bottom: 34px;
}

.ia-a90c .ia-nav {
    min-height: 56px;
    margin-bottom: 10px;
}

.ia-a90c .ia-nav-label {
    margin-bottom: 12px;
}



/* ==========================================================
   UI-F4D — SIDEBAR TYPOGRAPHY + VERTICAL RHYTHM
   Geometry intentionally untouched.
   ========================================================== */


/* ---------- LOGO INTEGRATION ---------- */

.ia-a90c .ia-brand {
    padding-top: 4px;
    padding-bottom: 22px;
    margin-bottom: 24px;

    /* remove the visual box around the logo area */
    background: transparent;
    border-bottom-color: rgba(32,168,102,.08);
}

.ia-a90c .ia-brand img {
    display: block;

    /* visually blend white logo artwork into white sidebar */
    mix-blend-mode: multiply;

    filter:
        saturate(1.04)
        contrast(1.02)
        drop-shadow(0 4px 9px rgba(20,54,37,.045));
}


/* ---------- MORE VERTICAL GROUP SEPARATION ---------- */

.ia-a90c .ia-nav-group {
    margin-top: 0;
    margin-bottom: 42px;
}

.ia-a90c .ia-nav-group.ia-flow {
    padding-top: 10px;
}


/* ---------- SECTION LABELS ---------- */

.ia-a90c .ia-nav-label {
    margin-bottom: 14px;

    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.8px;
}


/* ---------- LARGER NAVIGATION TYPOGRAPHY ---------- */

.ia-a90c .ia-nav {
    min-height: 60px;

    margin-top: 0;
    margin-bottom: 14px;

    padding-top: 13px;
    padding-bottom: 13px;

    font-size: 15px;
    font-weight: 680;
    line-height: 1.22;
}

.ia-a90c .ia-nav span {
    font-size: 15px;
    font-weight: 680;
    line-height: 1.22;
}


/* More separation between sibling actions */

.ia-a90c .ia-nav + .ia-nav {
    margin-top: 8px;
}


/* ---------- CLEANER INACTIVE STATE ---------- */

.ia-a90c .ia-nav:not(.active) {
    background: rgba(255,255,255,.18);
    box-shadow: none;
}


/* ---------- ACTIVE ITEM ---------- */

.ia-a90c .ia-nav.active {
    font-weight: 760;
}


/* ---------- FLOW RAIL REPOSITIONING ---------- */

.ia-a90c .ia-nav-group.ia-flow::before {
    top: -28px;
    height: 25px;
}

.ia-a90c .ia-nav-group.ia-flow::after {
    top: -8px;
}


/*
 * Do NOT add width, grid-template-columns, margin-left,
 * main-content padding or sidebar-width rules below this point.
 */



/* ==========================================================
   UI-F5A2 — MODEL ANALYSIS TECHNICAL SKIN
   COSMETIC ONLY — certified geometry untouched.
   ========================================================== */

.ia-a90c[data-ia-current="model"] #model-analysis {
    border-color: rgba(28,151,91,.34) !important;

    background-image:
        linear-gradient(rgba(32,168,102,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(32,168,102,.025) 1px, transparent 1px),
        linear-gradient(155deg,#f8fcfa,#eaf7ef) !important;

    background-size:
        24px 24px,
        24px 24px,
        auto !important;

    box-shadow:
        0 14px 34px rgba(24,61,42,.09),
        inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.ia-a90c[data-ia-current="model"] #model-analysis::before {
    color: #137848 !important;

    font-family:
        "SFMono-Regular",
        Consolas,
        "Liberation Mono",
        monospace;

    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 2.1px !important;
}

.ia-a90c #analysis-class {
    border-color: rgba(32,168,102,.25);

    background-color: rgba(255,255,255,.70);

    color: #315b45;

    font-family:
        "SFMono-Regular",
        Consolas,
        "Liberation Mono",
        monospace;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: .35px;
}

.ia-a90c #analysis-grid strong {
    color: #14271d;

    font-family:
        "SFMono-Regular",
        Consolas,
        "Liberation Mono",
        monospace;

    font-weight: 750;
    font-variant-numeric: tabular-nums;
}

.ia-a90c #analysis-grid span,
.ia-a90c #analysis-grid small {
    color: #71867a;
}

.ia-a90c #analysis-grid > div {
    border-bottom-color: rgba(42,126,79,.17);

    transition:
        background-color .16s ease,
        border-color .16s ease,
        box-shadow .16s ease;
}

.ia-a90c #analysis-grid > div:hover {
    border-bottom-color: rgba(32,168,102,.48);

    background-color: rgba(255,255,255,.42);

    box-shadow:
        inset 0 -1px 0 rgba(32,168,102,.12);
}


/*
 * UI-F5A2 deliberately contains NO:
 * position/inset
 * display/grid
 * width/height
 * margin/padding
 * transform
 */



/* ==========================================================
   UI-F5B — GRAPHITE + ICE BLUE MODEL ANALYSIS
   Colour treatment only. Geometry is immutable.
   ========================================================== */

/* Main instrument surface */
.ia-a90c[data-ia-current="model"] #model-analysis {
    border-color: #b8c7d1 !important;

    background-image:
        linear-gradient(rgba(45,143,184,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(45,143,184,.055) 1px, transparent 1px),
        linear-gradient(
            155deg,
            #f8fafb,
            #edf3f6
        ) !important;

    background-size:
        24px 24px,
        24px 24px,
        auto !important;

    box-shadow:
        0 14px 34px rgba(20,42,55,.10),
        inset 0 1px 0 rgba(255,255,255,.96) !important;
}


/* Technical system label */
.ia-a90c[data-ia-current="model"] #model-analysis::before {
    color: #267fa5 !important;
}


/* Main heading */
.ia-a90c #model-analysis h2,
.ia-a90c #model-analysis h3 {
    color: #17232b;
}


/* Supporting telemetry copy */
.ia-a90c #analysis-message {
    color: #667985;
}


/* Processing class:
   graphite/blue instrument badge,
   green reserved for healthy state semantics */
.ia-a90c #analysis-class {
    border-color: #b7cad4;

    background-color: rgba(255,255,255,.76);

    color: #405865;

    box-shadow:
        inset 3px 0 0 #2d8fb8;
}


/* Labels */
.ia-a90c #analysis-grid span,
.ia-a90c #analysis-grid small {
    color: #667985;
}


/* Numeric / telemetry values */
.ia-a90c #analysis-grid strong {
    color: #10202a;
}


/* Metric separators */
.ia-a90c #analysis-grid > div {
    border-bottom-color: #d3dee4;
}


/* Technical hover */
.ia-a90c #analysis-grid > div:hover {
    border-bottom-color: #6eabc4;

    background-color: rgba(255,255,255,.58);

    box-shadow:
        inset 0 -1px 0 rgba(45,143,184,.18);
}


/* Healthy/ready state remains iArchitect green */
.ia-a90c #analysis-class.ok,
.ia-a90c #analysis-class.ready,
.ia-a90c #analysis-class.success {
    color: #16794b;
    border-color: rgba(32,168,102,.30);
    box-shadow:
        inset 3px 0 0 #20a866;
}


/*
 * UI-F5B prohibition:
 * no position
 * no width/height
 * no display/grid
 * no margin/padding
 * no transform
 */



/* ==========================================================
   UI-F6A — iARCHITECT GRAPHITE + ICE BLUE PLATFORM THEME

   PLATFORM:
     Graphite   #17232B
     Slate      #667985
     Ice Blue   #2D8FB8
     Deep Blue  #247A9F
     Pale Blue  #EAF5F9
     Steel      #D5E0E6
     Cool White #F5F8FA

   SEMANTIC:
     Success / Ready / LANDSTACK remain green.

   GEOMETRY IS IMMUTABLE.
   ========================================================== */

.ia-a90c {
    --ia-platform-accent: #2d8fb8;
    --ia-platform-accent-dark: #247a9f;
    --ia-platform-accent-pale: #eaf5f9;
    --ia-platform-text: #17232b;
    --ia-platform-muted: #667985;
    --ia-platform-line: #d5e0e6;
    --ia-platform-surface: #f5f8fa;
}


/* ---------- PLATFORM TYPOGRAPHY ---------- */

.ia-a90c .ia-screen h1,
.ia-a90c .ia-screen h2,
.ia-a90c .section-title {
    color: var(--ia-platform-text);
}

.ia-a90c .ia-screen p {
    color: var(--ia-platform-muted);
}

.ia-a90c .ia-eyebrow {
    color: var(--ia-platform-accent-dark);
}


/* ---------- SIDEBAR CHROME ---------- */

.ia-a90c .sidebar {
    border-right-color: #dce5ea;

    background:
        radial-gradient(
            circle at 15% 4%,
            rgba(45,143,184,.07),
            transparent 26%
        ),
        linear-gradient(
            180deg,
            rgba(255,255,255,.99),
            rgba(247,250,252,.98)
        );
}

.ia-a90c .ia-brand {
    border-bottom-color: rgba(45,143,184,.10);
}

.ia-a90c .ia-nav-label {
    color: #7b8c96;
}


/* workflow rail */

.ia-a90c .ia-nav-group.ia-flow::before {
    background:
        linear-gradient(
            to bottom,
            rgba(45,143,184,.08),
            rgba(45,143,184,.38)
        );
}

.ia-a90c .ia-nav-group.ia-flow::after {
    border-right-color: rgba(45,143,184,.55);
    border-bottom-color: rgba(45,143,184,.55);
}


/* navigation interaction */

.ia-a90c .ia-nav:not(.active):hover {
    border-color: rgba(45,143,184,.20);
    background: rgba(234,245,249,.72);
    color: #17232b;

    box-shadow:
        0 7px 18px rgba(36,122,159,.08);
}

.ia-a90c .ia-nav:not(.active):hover::before {
    background:
        linear-gradient(
            100deg,
            rgba(45,143,184,.10),
            transparent 55%
        );
}

.ia-a90c .ia-nav.active {
    border-color: rgba(45,143,184,.30);

    background:
        linear-gradient(
            100deg,
            #eaf5f9,
            #f6fafc
        );

    color: #17232b;

    box-shadow:
        0 8px 20px rgba(36,122,159,.10),
        inset 3px 0 0 #2d8fb8;
}

.ia-a90c .ia-nav.active::after {
    background: #2d8fb8;

    box-shadow:
        0 0 0 4px rgba(45,143,184,.11);
}

.ia-a90c .ia-nav.active .ia-nav-icon {
    border-color: rgba(45,143,184,.30);
    color: #247a9f;

    background:
        linear-gradient(
            145deg,
            #edf7fa,
            #ffffff
        );

    box-shadow:
        0 5px 14px rgba(45,143,184,.13);
}


/* ---------- HOME ---------- */

.ia-a90c .ia-opportunity {
    border-color: #c3d7e1;

    background:
        linear-gradient(
            135deg,
            #f7fafc,
            #edf6fa
        );
}

.ia-a90c .ia-gateway {
    border-color: #6cabc4;
}

.ia-a90c .ia-gateway:hover {
    background-color: #f2f8fb;

    box-shadow:
        0 16px 38px rgba(36,122,159,.11);
}

.ia-a90c .ia-gateway em {
    color: #247a9f;
}


/* ---------- 3D DOCUMENT WORKFLOW ---------- */

.ia-a90c .ia-progress button.active {
    border-color: #2d8fb8;

    background:
        linear-gradient(
            145deg,
            #edf7fa,
            #d9eef6
        );

    color: #1f6f91;

    box-shadow:
        0 9px 22px rgba(45,143,184,.15);
}


/* Completed retains green semantic meaning */

.ia-a90c .ia-progress button.completed {
    border-color: #91caaa;

    background:
        linear-gradient(
            145deg,
            #f1fbf5,
            #dcf3e5
        );

    color: #23794c;
}


/* Upload / working surfaces */

.ia-a90c .file-upload-area {
    border-color: #75abc1;

    background: #f7fafc;
}

.ia-a90c #file-upload > .form-group:not(:first-of-type) {
    border-color: #d5e0e6;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f5f8fa
        );
}


/* ---------- PRIMARY PLATFORM BUTTONS ---------- */

.ia-a90c .ia-button.primary,
.ia-a90c .btn-primary {
    border-color: #2d8fb8;

    background:
        linear-gradient(
            135deg,
            #3298c2,
            #247a9f
        );

    color: #fff;

    box-shadow:
        0 8px 18px rgba(45,143,184,.17);
}

.ia-a90c .ia-button.primary:hover,
.ia-a90c .btn-primary:hover {
    border-color: #216f91;

    background:
        linear-gradient(
            135deg,
            #2d8fb8,
            #216f91
        );

    box-shadow:
        0 11px 24px rgba(45,143,184,.22);
}


/* Generate 3D Document is a platform action */

.ia-a90c #preview #generate-pdf {
    background:
        linear-gradient(
            135deg,
            #3298c2,
            #247a9f
        );

    box-shadow:
        0 12px 28px rgba(45,143,184,.20);
}


/* ---------- STYLE / CUSTOMISE ---------- */

.ia-a90c .template-card:hover {
    border-color: #74aec5;

    background: #f6fafc;

    box-shadow:
        0 10px 24px rgba(36,122,159,.09);
}

.ia-a90c .template-card.selected {
    border-color: #2d8fb8;

    background: #edf7fa;

    box-shadow:
        0 10px 24px rgba(45,143,184,.12);
}

.ia-a90c #choose-color {
    border-color: #d5e0e6;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f4f8fa
        );
}


/* ---------- FOCUS ---------- */

.ia-a90c :focus-visible {
    outline-color: #74b7d2;
}


/* ---------- MODEL ANALYSIS ---------- */
/* Retain the Graphite + Ice Blue technical subsystem. */

.ia-a90c[data-ia-current="model"] #model-analysis {
    border-color: #b8c7d1 !important;
}


/* ---------- IMMERSIVE TEMPLATES ---------- */

/*
 * Generic immersive selection uses platform blue.
 * LANDSTACK CTA itself deliberately remains green.
 */

.ia-a90c .ia-exp.selected {
    border-color: #2d8fb8;

    background: #edf7fa;
}


/* LANDSTACK identity / primary LANDSTACK action remains green */

.ia-a90c #ia-exp-continue:not(:disabled) {
    border-color: #20a866;
    color: #137a49;
    background: #f4fbf7;
}

.ia-a90c #ia-exp-continue:not(:disabled):hover {
    border-color: #168b54;
    background: #20a866;
    color: #fff;

    box-shadow:
        0 10px 22px rgba(32,168,102,.22);
}


/* ---------- SEMANTIC STATUS ---------- */

/* Healthy / success remains green */

.ia-a90c .ia-readiness b.ok,
.ia-a90c #analysis-class.ok,
.ia-a90c #analysis-class.ready,
.ia-a90c #analysis-class.success {
    color: #16794b;
}


/*
 * UI-F6A STRICT PROHIBITION:
 * No width
 * No height
 * No position/inset
 * No margin/padding
 * No grid/flex/display
 * No transform
 */



/* ==========================================================
   UI-F6B — STRONGER GRAPHITE + TECH BLUE

   Stronger platform identity without altering geometry.
   LANDSTACK + semantic success remain green.
   ========================================================== */

.ia-a90c {
    --ia-platform-accent: #167fa8;
    --ia-platform-accent-dark: #0b5f82;
    --ia-platform-accent-pale: #dceff6;
    --ia-platform-text: #14232c;
    --ia-platform-muted: #607681;
    --ia-platform-line: #c5d6df;
    --ia-platform-surface: #f1f6f8;
}


/* ---------- SIDEBAR ---------- */

.ia-a90c .sidebar {
    border-right-color: #cbdce4;

    background:
        radial-gradient(
            circle at 10% 5%,
            rgba(22,127,168,.13),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f4f9fb 60%,
            #edf5f8 100%
        );
}

.ia-a90c .ia-nav:not(.active):hover {
    border-color: rgba(22,127,168,.34);

    background: #e6f3f8;

    color: #102d3a;

    box-shadow:
        0 8px 20px rgba(11,95,130,.12);
}

.ia-a90c .ia-nav.active {
    border-color: rgba(22,127,168,.44);

    background:
        linear-gradient(
            100deg,
            #d8edf5,
            #eef7fa
        );

    color: #102d3a;

    box-shadow:
        0 9px 22px rgba(11,95,130,.14),
        inset 4px 0 0 #167fa8;
}

.ia-a90c .ia-nav.active::after {
    background: #167fa8;

    box-shadow:
        0 0 0 4px rgba(22,127,168,.14),
        0 0 12px rgba(22,127,168,.22);
}

.ia-a90c .ia-nav.active .ia-nav-icon {
    border-color: rgba(22,127,168,.38);
    color: #0b6f97;

    background:
        linear-gradient(
            145deg,
            #dff1f7,
            #ffffff
        );
}


/* ---------- WORKFLOW RAIL ---------- */

.ia-a90c .ia-nav-group.ia-flow::before {
    background:
        linear-gradient(
            to bottom,
            rgba(22,127,168,.12),
            rgba(22,127,168,.55)
        );
}

.ia-a90c .ia-nav-group.ia-flow::after {
    border-right-color: rgba(22,127,168,.72);
    border-bottom-color: rgba(22,127,168,.72);
}


/* ---------- HOME ---------- */

.ia-a90c .ia-opportunity {
    border-color: #9fc6d7;

    background:
        linear-gradient(
            135deg,
            #f5fafc,
            #e2f1f6
        );

    box-shadow:
        0 10px 30px rgba(11,95,130,.07);
}

.ia-a90c .ia-gateway {
    border-color: #3d98ba;
}

.ia-a90c .ia-gateway:hover {
    border-color: #167fa8;

    background-color: #eaf5f9;

    box-shadow:
        0 17px 40px rgba(11,95,130,.16);
}

.ia-a90c .ia-gateway em {
    color: #0b668b;
}


/* ---------- 3D DOCUMENT PROGRESS ---------- */

.ia-a90c .ia-progress button.active {
    border-color: #167fa8;

    background:
        linear-gradient(
            145deg,
            #dceff6,
            #c3e3ef
        );

    color: #095b7c;

    box-shadow:
        0 10px 24px rgba(22,127,168,.19);
}


/* completed remains GREEN */

.ia-a90c .ia-progress button.completed {
    border-color: #72bb91;

    background:
        linear-gradient(
            145deg,
            #eefaf3,
            #d7f0e1
        );

    color: #176f45;
}


/* ---------- UPLOAD SURFACES ---------- */

.ia-a90c .file-upload-area {
    border-color: #4d9fbe;

    background:
        linear-gradient(
            145deg,
            #fbfdfe,
            #edf6f9
        );
}


/* ---------- PRIMARY ACTIONS ---------- */

.ia-a90c .ia-button.primary,
.ia-a90c .btn-primary {
    border-color: #167fa8;

    background:
        linear-gradient(
            135deg,
            #1b91bd,
            #0b658a
        );

    color: #fff;

    box-shadow:
        0 9px 22px rgba(11,95,130,.22);
}

.ia-a90c .ia-button.primary:hover,
.ia-a90c .btn-primary:hover {
    border-color: #084e6b;

    background:
        linear-gradient(
            135deg,
            #167fa8,
            #084e6b
        );

    box-shadow:
        0 13px 28px rgba(11,95,130,.29);
}


/* ---------- GENERATE DOCUMENT ---------- */

.ia-a90c #preview #generate-pdf {
    background:
        linear-gradient(
            135deg,
            #1b91bd,
            #0b658a
        );

    box-shadow:
        0 13px 30px rgba(11,95,130,.24);
}


/* ---------- STYLE CARDS ---------- */

.ia-a90c .template-card:hover {
    border-color: #559fbc;

    background: #f0f8fb;

    box-shadow:
        0 11px 26px rgba(11,95,130,.12);
}

.ia-a90c .template-card.selected {
    border-color: #167fa8;

    background: #dff1f7;

    box-shadow:
        0 11px 27px rgba(11,95,130,.16);
}


/* ---------- CUSTOMISE ---------- */

.ia-a90c #choose-color {
    border-color: #bfd4de;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #edf5f8
        );
}


/* ---------- MODEL ANALYSIS ---------- */

.ia-a90c[data-ia-current="model"] #model-analysis {
    border-color: #91b8c9 !important;

    background-image:
        linear-gradient(rgba(22,127,168,.075) 1px, transparent 1px),
        linear-gradient(90deg, rgba(22,127,168,.075) 1px, transparent 1px),
        linear-gradient(
            155deg,
            #f7fafc,
            #e6f0f4
        ) !important;

    box-shadow:
        0 15px 36px rgba(11,70,95,.13),
        inset 0 1px 0 #fff !important;
}

.ia-a90c[data-ia-current="model"] #model-analysis::before {
    color: #0b668b !important;
}


/* ---------- IMMERSIVE ---------- */

.ia-a90c .ia-exp.selected {
    border-color: #167fa8;

    background: #dff1f7;

    box-shadow:
        0 8px 20px rgba(11,95,130,.11);
}


/* LANDSTACK remains GREEN */

.ia-a90c #ia-exp-continue:not(:disabled) {
    border-color: #20a866;
    background: #f4fbf7;
    color: #137a49;
}

.ia-a90c #ia-exp-continue:not(:disabled):hover {
    border-color: #168b54;
    background: #20a866;
    color: #fff;

    box-shadow:
        0 10px 22px rgba(32,168,102,.22);
}


/* ---------- FOCUS ---------- */

.ia-a90c :focus-visible {
    outline-color: #54a9c8;
}


/*
 * UI-F6B STRICT:
 * COLOUR / BORDER / SHADOW / BACKGROUND ONLY.
 * No geometry declarations.
 */



/* ==========================================================
   UI-F7A — TECHNICAL 3D ASSET ICONOGRAPHY
   OBJ/DXF = mesh
   MTL     = material
   IMG     = texture
   ========================================================== */

.ia-a90c .ia-asset-icon {
    position: relative;

    display: inline-grid;
    place-items: center;

    width: 62px;
    height: 62px;

    margin-bottom: 10px;

    border: 1px solid currentColor;
    border-radius: 14px;

    background: rgba(255,255,255,.78);

    box-shadow:
        0 7px 18px rgba(20,42,55,.08),
        inset 0 1px 0 rgba(255,255,255,.9);

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        background-color .18s ease;
}

.ia-a90c .ia-asset-icon svg {
    width: 38px;
    height: 38px;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.ia-a90c .ia-asset-icon span {
    position: absolute;

    right: -7px;
    bottom: -7px;

    min-width: 27px;

    padding: 3px 5px;

    border: 1px solid currentColor;
    border-radius: 5px;

    background: #fff;

    font-family:
        "SFMono-Regular",
        Consolas,
        "Liberation Mono",
        monospace;

    font-size: 9px;
    font-weight: 800;
    line-height: 1;

    letter-spacing: .5px;

    box-shadow:
        0 3px 8px rgba(20,42,55,.10);
}


/* 3D mesh */
.ia-a90c .ia-asset-icon-model {
    color: #167fa8;

    background:
        linear-gradient(
            145deg,
            #f7fcfe,
            #dff1f7
        );
}


/* Material definition */
.ia-a90c .ia-asset-icon-material {
    color: #7358b8;

    background:
        linear-gradient(
            145deg,
            #fbf9ff,
            #eee9fa
        );
}


/* Texture map */
.ia-a90c .ia-asset-icon-texture {
    color: #b86e22;

    background:
        linear-gradient(
            145deg,
            #fffaf3,
            #faecd9
        );
}


/* interaction */

.ia-a90c .file-upload-area:hover .ia-asset-icon {
    transform: translateY(-3px) scale(1.035);

    background-color: #fff;

    box-shadow:
        0 11px 24px rgba(20,42,55,.13),
        inset 0 1px 0 #fff;
}

.ia-a90c .file-upload-area:hover .ia-asset-icon-model {
    box-shadow:
        0 11px 25px rgba(22,127,168,.18),
        inset 0 1px 0 #fff;
}

.ia-a90c .file-upload-area:hover .ia-asset-icon-material {
    box-shadow:
        0 11px 25px rgba(115,88,184,.17),
        inset 0 1px 0 #fff;
}

.ia-a90c .file-upload-area:hover .ia-asset-icon-texture {
    box-shadow:
        0 11px 25px rgba(184,110,34,.17),
        inset 0 1px 0 #fff;
}



/* ==========================================================
   UI-F7B — MODEL ANALYSIS TELEMETRY STATUS
   Geometry of Model Analysis remains untouched.
   ========================================================== */

.ia-a90c #analysis-class {
    border: 1px solid #9fc2d1;

    border-radius: 999px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.94),
            rgba(224,241,247,.94)
        );

    color: #315d70;

    box-shadow:
        0 4px 12px rgba(11,95,130,.09);

    white-space: nowrap;

    text-transform: uppercase;
}


/* status indicator */

.ia-a90c #analysis-class::before {
    content: "";

    display: inline-block;

    width: 7px;
    height: 7px;

    margin-right: 7px;

    border-radius: 50%;

    background: #7d9ba8;

    box-shadow:
        0 0 0 3px rgba(125,155,168,.12);
}


/* waiting telemetry state */

.ia-a90c #analysis-class:not(.ok):not(.ready):not(.success) {
    color: #486a78;
}


/* healthy analysis state remains green */

.ia-a90c #analysis-class.ok::before,
.ia-a90c #analysis-class.ready::before,
.ia-a90c #analysis-class.success::before {
    background: #20a866;

    box-shadow:
        0 0 0 3px rgba(32,168,102,.12),
        0 0 8px rgba(32,168,102,.20);
}



/* UI-F7C — Model Analysis status badge internal spacing only */
.ia-a90c #analysis-class {
    padding: 7px 13px 7px 11px;
    line-height: 1.1;
}



/* ==========================================================
   UI-F7D — CENTERED TECHNICAL SIDEBAR SECTION HEADINGS
   Typography/alignment only. Application width untouched.
   ========================================================== */


/* OVERVIEW / DISCOVER / CREATE / MANAGE */

.ia-a90c .ia-nav-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    margin-left: 0;
    margin-right: 0;

    color: #247a9f;

    font-family:
        "SFMono-Regular",
        Consolas,
        "Liberation Mono",
        monospace;

    font-size: 10.5px;
    font-weight: 800;
    line-height: 1;

    letter-spacing: 2px;
    text-align: center;
    text-transform: uppercase;

    text-shadow:
        0 1px 0 #fff,
        0 0 12px rgba(22,127,168,.08);
}


/* technical divider lines */

.ia-a90c .ia-nav-label::before,
.ia-a90c .ia-nav-label::after {
    content: "";

    flex: 1 1 auto;

    max-width: 28px;
    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(22,127,168,.42)
        );
}

.ia-a90c .ia-nav-label::after {
    background:
        linear-gradient(
            90deg,
            rgba(22,127,168,.42),
            transparent
        );
}


/* ---------- CENTER WORKFLOW CONNECTORS ---------- */

.ia-a90c .ia-nav-group.ia-flow::before {
    left: 50%;

    background:
        linear-gradient(
            to bottom,
            rgba(22,127,168,.08),
            rgba(22,127,168,.55)
        );

    box-shadow:
        0 0 8px rgba(22,127,168,.10);
}


/* centered chevron */

.ia-a90c .ia-nav-group.ia-flow::after {
    left: 50%;

    border-right-color: rgba(22,127,168,.72);
    border-bottom-color: rgba(22,127,168,.72);

    filter:
        drop-shadow(0 2px 3px rgba(22,127,168,.15));
}


/*
 * Existing connector elements are 1px / 6px wide.
 * Offset them around the 50% centreline without changing
 * sidebar or application dimensions.
 */

.ia-a90c .ia-nav-group.ia-flow::before {
    margin-left: -0.5px;
}

.ia-a90c .ia-nav-group.ia-flow::after {
    margin-left: -4px;
}


/* slightly stronger hierarchy on hover within a section */

.ia-a90c .ia-nav-group:has(.ia-nav:hover) .ia-nav-label,
.ia-a90c .ia-nav-group:has(.ia-nav.active) .ia-nav-label {
    color: #0b668b;
}


/*
 * UI-F7D prohibition:
 * no sidebar width
 * no container grid changes
 * no main-content width/offset changes
 */



/* ==========================================================
   UI-F7E — DISTINCT TECHNICAL TOP TOOLBAR
   Colour treatment only. Geometry untouched.
   ========================================================== */

.ia-a90c .ia-topbar {
    border-bottom-color: #c6d7e0;

    background:
        linear-gradient(
            105deg,
            #f2f6f8 0%,
            #eaf2f6 55%,
            #edf5f8 100%
        );

    color: #607681;

    box-shadow:
        0 5px 18px rgba(18,61,80,.065),
        inset 0 -1px 0 rgba(255,255,255,.55);
}


/* breadcrumb emphasis */

.ia-a90c .ia-topbar b,
.ia-a90c .ia-topbar strong {
    color: #176f92;
}


/* account / IA indicator */

.ia-a90c .ia-avatar {
    border-color: #9fc5d5;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #dfeff5
        );

    color: #0b668b;

    box-shadow:
        0 4px 12px rgba(11,95,130,.09);
}


/*
 * UI-F7E deliberately contains no:
 * height / width
 * margin / padding
 * position
 * display / grid / flex
 * transform
 */



/* ==========================================================
   UI-F7F — FULL-WIDTH TOP TOOLBAR SURFACE

   Extends visual toolbar chrome across the complete workspace
   width while preserving existing breadcrumb/avatar geometry.
   ========================================================== */

.ia-a90c .ia-topbar {
    position: relative;

    background: transparent;

    box-shadow: none;

    isolation: isolate;
}

.ia-a90c .ia-topbar::before {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    left: -42px;
    right: -42px;

    z-index: -1;

    border-bottom: 1px solid #c6d7e0;

    background:
        linear-gradient(
            105deg,
            #f2f6f8 0%,
            #eaf2f6 55%,
            #edf5f8 100%
        );

    box-shadow:
        0 5px 18px rgba(18,61,80,.065),
        inset 0 -1px 0 rgba(255,255,255,.55);
}



/* ==========================================================
   UI-F8A — UNIFIED TECHNICAL PAGE HEADER SYSTEM
   Page-header presentation only.
   ========================================================== */

.ia-a90c .ia-page-header {
    position: relative;

    margin-bottom: 28px;

    padding-bottom: 18px;

    border-bottom: 1px solid #d8e4ea;
}


/* short technical accent */

.ia-a90c .ia-page-header::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: -1px;

    width: 72px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            #167fa8,
            #55aac8
        );

    box-shadow:
        0 0 10px rgba(22,127,168,.14);
}


/* category / location */

.ia-a90c .ia-page-header .ia-eyebrow {
    margin-bottom: 8px;

    color: #167fa8;

    font-family:
        "SFMono-Regular",
        Consolas,
        "Liberation Mono",
        monospace;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 1.9px;
}


/* primary page title */

.ia-a90c .ia-page-header h1 {
    max-width: none;

    margin: 0;

    color: #14232c;

    font-size: 34px;
    font-weight: 760;

    line-height: 1.08;

    letter-spacing: -1px;
}


/* optional page description */

.ia-a90c .ia-page-subtitle {
    max-width: 760px;

    margin: 9px 0 0 !important;

    color: #667985 !important;

    font-size: 14px;
    line-height: 1.5;
}


/* Home opportunity follows the page header naturally */

.ia-a90c[data-ia-current="home"] .ia-opportunity {
    margin-top: 0;
}


/* Immersive grid follows the page header naturally */

.ia-a90c[data-ia-current="immersive"] .ia-immersive-grid {
    margin-top: 0;
}



/* ==========================================================
   UI-F8C — CONTENT TOOLBAR SEPARATOR NORMALISATION
   Content section only. Sidebar deliberately untouched.
   ========================================================== */

.ia-a90c .ia-topbar::before {
    border-bottom: 1px solid #c6d7e0;

    box-shadow:
        0 5px 18px rgba(18,61,80,.065);
}


/*
 * One consistent 1px separator belongs to the toolbar surface.
 * No separator is extended into the sidebar.
 */



/* ==========================================================
   UI-F8D — SINGLE-PIXEL CONTENT TOOLBAR SEPARATOR

   ::before = toolbar surface only
   ::after  = separator only

   Sidebar deliberately untouched.
   ========================================================== */


/* Toolbar surface: absolutely no bottom-edge rendering. */

.ia-a90c .ia-topbar::before {
    border-bottom: 0 !important;
    box-shadow: none !important;
}


/* The topbar element itself must not contribute another line. */

.ia-a90c .ia-topbar {
    border-bottom: 0 !important;
    box-shadow: none !important;
}


/*
 * ONE separator authority.
 *
 * The topbar content itself already occupies the content width.
 * Extend exactly 42px into each main-content gutter so the line
 * covers the full workspace from sidebar boundary to right edge.
 */

.ia-a90c .ia-topbar::after {
    content: "";

    position: absolute;

    left: -42px;
    right: -42px;
    bottom: 0;

    height: 1px;

    background: #b9ced8;

    box-shadow: none;

    opacity: 1;

    pointer-events: none;
}


/*
 * No blur, border or secondary shadow is allowed on this edge.
 * The visible separator is exactly one solid CSS pixel.
 */



/* ==========================================================
   UI-F8E — LOGO / SIDEBAR VISUAL INTEGRATION
   Cosmetic only. Logo dimensions and layout remain untouched.
   ========================================================== */

.ia-a90c .ia-brand {
    background: transparent !important;
    box-shadow: none !important;
}


/*
 * Remove the visible rectangular raster background by blending
 * near-white pixels into the cool sidebar surface.
 */

.ia-a90c .ia-brand img {
    background: transparent !important;

    mix-blend-mode: multiply;

    filter:
        contrast(1.035)
        saturate(1.06)
        drop-shadow(0 3px 7px rgba(18,61,80,.035));

    -webkit-mask-image:
        linear-gradient(
            90deg,
            transparent 0,
            #000 5%,
            #000 95%,
            transparent 100%
        );

    mask-image:
        linear-gradient(
            90deg,
            transparent 0,
            #000 5%,
            #000 95%,
            transparent 100%
        );
}


/*
 * No width / height / margin / padding / positioning changes.
 */



/* ==========================================================
   UI-F8F — REFINED PAGE TITLE TYPOGRAPHY

   More architectural / technical character without introducing
   an external font dependency.

   Geometry intentionally untouched.
   ========================================================== */


/* Primary workspace title */

.ia-a90c .ia-page-header h1 {
    color: #12232d;

    font-family:
        Inter,
        "Segoe UI",
        Arial,
        sans-serif;

    font-size: 36px;
    font-weight: 650;

    line-height: 1.08;

    letter-spacing: -0.65px;

    text-rendering: geometricPrecision;

    -webkit-font-smoothing: antialiased;
}


/* Home signature word */

.ia-a90c .ia-page-header h1 .ia-title-accent {
    color: #167fa8;

    font-weight: 680;
}


/* Technical category line */

.ia-a90c .ia-page-header .ia-eyebrow {
    color: #0b668b;

    font-size: 9.5px;
    font-weight: 800;

    letter-spacing: 2.35px;
}


/* Supporting description */

.ia-a90c .ia-page-subtitle {
    color: #667985 !important;

    font-size: 14px;

    letter-spacing: .05px;
}


/* Slightly stronger technical header rule */

.ia-a90c .ia-page-header::after {
    background:
        linear-gradient(
            90deg,
            #167fa8 0%,
            #3d9abd 68%,
            #79bfd7 100%
        );
}


/*
 * UI-F8F PROHIBITION:
 * no width
 * no height
 * no margin
 * no padding
 * no position/inset
 * no grid/flex/display
 * no transform
 */



/* ==========================================================
   UI-F8G — PREMIUM GLOBAL PAGE TITLE SYSTEM

   One typography language across:
   Home
   3D Model / Style / Customise / Review
   Immersive Templates
   Opportunity Finder
   Projects
   Outputs

   Geometry untouched.
   ========================================================== */


/* ---------- PRIMARY TITLE ---------- */

.ia-a90c .ia-page-header .ia-page-title {
    color: #12232d;

    font-family:
        "Aptos Display",
        Inter,
        "Segoe UI",
        Arial,
        sans-serif;

    font-size: 38px;
    font-weight: 640;

    line-height: 1.04;

    letter-spacing: -0.9px;

    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
}


/* ---------- SIGNATURE ACCENT WORD ---------- */

.ia-a90c .ia-page-header .ia-page-title > span {
    color: #167fa8;

    font-weight: 670;

    text-shadow:
        0 1px 0 rgba(255,255,255,.65),
        0 0 18px rgba(22,127,168,.055);
}


/* ---------- TECHNICAL EYEBROW ---------- */

.ia-a90c .ia-page-header .ia-eyebrow {
    color: #0b668b;

    font-family:
        "SFMono-Regular",
        Consolas,
        "Liberation Mono",
        monospace;

    font-size: 9px;
    font-weight: 800;

    line-height: 1;

    letter-spacing: 2.6px;
}


/* ---------- SUBTITLE ---------- */

.ia-a90c .ia-page-header .ia-page-subtitle {
    color: #617985 !important;

    font-size: 14px;
    font-weight: 400;

    line-height: 1.5;

    letter-spacing: .08px;
}


/* ---------- HEADER RULE ---------- */

.ia-a90c .ia-page-header {
    border-bottom-color: #d2e0e7;
}

.ia-a90c .ia-page-header::after {
    background:
        linear-gradient(
            90deg,
            #0b668b 0%,
            #167fa8 52%,
            #62b4d1 100%
        );

    box-shadow:
        0 0 11px rgba(22,127,168,.16);
}


/* Remove the old F8F-specific class effect if encountered. */

.ia-a90c .ia-title-accent {
    color: inherit;
}


/*
 * UI-F8G STRICT:
 * no application width
 * no sidebar width
 * no main-content offset
 * no position changes
 * no grid/flex changes
 */



/* ==========================================================
   UI-F8H — BLUE COMPLETED WORKFLOW TABS

   Workflow navigation uses the platform Tech Blue family.
   Green remains reserved for semantic success / LANDSTACK.
   ========================================================== */

.ia-a90c .ia-progress button.completed {
    border-color: #79b6cd;

    background:
        linear-gradient(
            145deg,
            #edf7fa 0%,
            #dceff6 100%
        );

    color: #176f92;

    box-shadow:
        0 6px 17px rgba(22,127,168,.09);
}


/* Completed checkmark */

.ia-a90c .ia-progress button.completed::after {
    color: #167fa8;

    font-weight: 800;
}


/* Completed-stage hover */

.ia-a90c .ia-progress button.completed:hover {
    border-color: #4b9cba;

    background:
        linear-gradient(
            145deg,
            #e5f3f8,
            #cee8f1
        );

    color: #0b668b;

    box-shadow:
        0 8px 20px rgba(22,127,168,.13);
}


/*
 * Current/active stage remains the strongest blue.
 * Completed stages deliberately remain lighter.
 */


/* ============================================================
   iArchitect Main UI Design System — Consolidated Authority V2
   Generated from visually certified V1 authorities.
   Legacy structural CSS remains unchanged.
   ============================================================ */

.ia-a90c {
    --ia-ds-accent: #167fa8;
    --ia-ds-accent-dark: #0b5f82;
    --ia-ds-accent-pale: #eaf5f9;
    --ia-ds-green: #20a866;
    --ia-ds-green-dark: #167a49;
    --ia-ds-green-pale: #eef9f3;
    --ia-ds-text: #14232c;
    --ia-ds-muted: #607681;
    --ia-ds-line: #d5e0e6;
    --ia-ds-white: #fff;
    --ia-ds-surface: #f5f8fa;
    --ia-ds-surface-soft: #f8fafb;
    --ia-ds-space-1: 6px;
    --ia-ds-space-2: 10px;
    --ia-ds-space-3: 16px;
    --ia-ds-space-4: 24px;
    --ia-ds-space-5: 36px;
    --ia-ds-radius-sm: 8px;
    --ia-ds-radius-md: 12px;
    --ia-ds-radius-lg: 16px;
    --ia-ds-radius-pill: 999px;
    --ia-ds-shadow-card: 0 7px 24px rgba(18,61,80,.065);
    --ia-ds-shadow-hover: 0 11px 27px rgba(11,95,130,.16);
    --ia-ds-shadow-focus: 0 0 0 4px rgba(22,127,168,.14);
    --ia-ds-motion-fast: 160ms ease;
    --ia-ds-motion: 180ms ease;
    --ia-ds-title: 38px;
    --ia-ds-section: 24px;
    --ia-ds-card-title: 16px;
    --ia-ds-body: 14px;
    --ia-ds-small: 12px;
    --ia-ds-eyebrow: 10px;
}

.ia-a90c .ia-page-header .ia-page-title {
    color: var(--ia-ds-text);
    font-size: var(--ia-ds-title);
    line-height: 1.12;
    letter-spacing: -.035em;
    max-width: 1050px;
    margin: 0;
    font-weight: 700;
}

.ia-a90c .ia-page-header h1 {
    color: var(--ia-ds-text);
    font-size: var(--ia-ds-title);
    line-height: 1.12;
    letter-spacing: -.035em;
    max-width: 1050px;
    margin: 0;
    font-weight: 700;
}

.ia-a90c .ia-page-subtitle {
    color: var(--ia-ds-muted);
    font-size: var(--ia-ds-body);
    line-height: 1.65;
    max-width: 760px;
    margin: var(--ia-ds-space-2) 0 0;
    font-weight: 400;
    letter-spacing: 0;
}

.ia-a90c .ia-eyebrow {
    font-size: var(--ia-ds-eyebrow);
    font-weight: 750;
    letter-spacing: .14em;
}

.ia-a90c .ia-nav-label {
    font-size: var(--ia-ds-eyebrow);
    font-weight: 750;
    letter-spacing: .14em;
    margin: 0 12px 8px;
    color: var(--ia-ds-muted);
    line-height: 1.2;
}

.ia-a90c .ia-config-title {
    font-size: var(--ia-ds-eyebrow);
    font-weight: 800;
    letter-spacing: .14em;
    color: var(--ia-ds-text);
    line-height: 1.3;
    text-transform: uppercase;
}

.ia-a90c h2 {
    color: var(--ia-ds-text);
}

.ia-a90c .section-title {
    color: var(--ia-ds-text);
    font-size: var(--ia-ds-card-title);
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -.01em;
}

.ia-a90c p {
    color: var(--ia-ds-muted);
}

.ia-a90c small {
    color: var(--ia-ds-muted);
}

.ia-a90c .option-description {
    color: var(--ia-ds-muted);
    font-size: var(--ia-ds-body);
    line-height: 1.6;
}

.ia-a90c .ia-certified-stage {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-model-main {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-model-aside {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-config-group {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-live-review {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-review-summary {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-exp-preview {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-button {
    min-height: 44px;
    border-radius: var(--ia-ds-radius-sm);
    font-weight: 700;
    transition: background-color var(--ia-ds-motion-fast), border-color var(--ia-ds-motion-fast), color var(--ia-ds-motion-fast), box-shadow var(--ia-ds-motion-fast);
    padding: 10px 18px;
    font-size: var(--ia-ds-body);
    line-height: 1.25;
    cursor: pointer;
}

.ia-a90c .btn {
    min-height: 44px;
    border-radius: var(--ia-ds-radius-sm);
    font-weight: 700;
    transition: background-color var(--ia-ds-motion-fast), border-color var(--ia-ds-motion-fast), color var(--ia-ds-motion-fast), box-shadow var(--ia-ds-motion-fast);
    padding: 10px 18px;
    font-size: var(--ia-ds-body);
    line-height: 1.25;
    cursor: pointer;
}

.ia-a90c .ia-exp-preview button {
    min-height: 44px;
    border-radius: var(--ia-ds-radius-sm);
    font-weight: 700;
    transition: background-color var(--ia-ds-motion-fast), border-color var(--ia-ds-motion-fast), color var(--ia-ds-motion-fast), box-shadow var(--ia-ds-motion-fast);
    border-color: var(--ia-ds-line);
    background: var(--ia-ds-white);
    color: var(--ia-ds-text);
    padding: 10px 18px;
    font-size: var(--ia-ds-body);
    line-height: 1.25;
    cursor: pointer;
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-button.primary {
    border-color: var(--ia-ds-green);
    background: var(--ia-ds-green);
    color: var(--ia-ds-white);
    border: 1px solid var(--ia-ds-green);
}

.ia-a90c .btn-primary {
    border-color: var(--ia-ds-green);
    background: var(--ia-ds-green);
    color: var(--ia-ds-white);
    border: 1px solid var(--ia-ds-green);
}

.ia-a90c .ia-button.primary:hover {
    border-color: var(--ia-ds-green-dark);
    background: var(--ia-ds-green-dark);
}

.ia-a90c .btn-primary:hover {
    border-color: var(--ia-ds-green-dark);
    background: var(--ia-ds-green-dark);
}

.ia-a90c .ia-button.secondary {
    border-color: var(--ia-ds-line);
    background: var(--ia-ds-white);
    color: var(--ia-ds-text);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .btn-secondary {
    border-color: var(--ia-ds-line);
    background: var(--ia-ds-white);
    color: var(--ia-ds-text);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .ia-button:disabled {
    opacity: .45;
    cursor: not-allowed;
    box-shadow: none;
}

.ia-a90c .btn:disabled {
    opacity: .45;
    cursor: not-allowed;
    box-shadow: none;
}

.ia-a90c :where( button {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 2px;
    box-shadow: var(--ia-ds-shadow-focus);
}

a {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 2px;
    box-shadow: var(--ia-ds-shadow-focus);
}

input {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 2px;
    box-shadow: var(--ia-ds-shadow-focus);
}

textarea {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 2px;
    box-shadow: var(--ia-ds-shadow-focus);
}

select ):focus-visible {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 2px;
    box-shadow: var(--ia-ds-shadow-focus);
}

.ia-a90c .template-card {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
    border: 1px solid var(--ia-ds-line);
}

.ia-a90c .template-card:hover {
    border-color: rgba(22,127,168,.34);
    background: var(--ia-ds-surface-soft);
    box-shadow: var(--ia-ds-shadow-hover);
}

.ia-a90c .template-card.selected {
    border-color: var(--ia-ds-green);
    background: var(--ia-ds-green-pale);
    box-shadow: 0 0 0 3px rgba(32,168,102,.08), var(--ia-ds-shadow-card);
    border: 2px solid var(--ia-ds-green);
}

.ia-a90c .ia-exp {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    transition: background-color var(--ia-ds-motion), border-color var(--ia-ds-motion), box-shadow var(--ia-ds-motion);
    border: 1px solid var(--ia-ds-line);
    box-shadow: none;
}

.ia-a90c .ia-exp:hover {
    border-color: rgba(22,127,168,.34);
    background: var(--ia-ds-surface-soft);
    box-shadow: var(--ia-ds-shadow-card);
}

.ia-a90c .ia-exp.selected {
    border-color: var(--ia-ds-green);
    border-left-width: 4px;
    background: var(--ia-ds-green-pale);
    box-shadow: var(--ia-ds-shadow-card);
    border: 2px solid var(--ia-ds-green);
}

.ia-a90c .ia-gateway {
    transition: transform var(--ia-ds-motion), border-color var(--ia-ds-motion), box-shadow var(--ia-ds-motion);
}

.ia-a90c .ia-gateway:hover {
    transform: translateY(-2px);
    box-shadow: var(--ia-ds-shadow-hover);
}

.ia-a90c .file-upload-area {
    border-radius: var(--ia-ds-radius-md);
    transition: background-color var(--ia-ds-motion-fast), border-color var(--ia-ds-motion-fast), box-shadow var(--ia-ds-motion-fast);
    background: var(--ia-ds-surface-soft);
}

.ia-a90c #file-upload > .form-group:not(:first-of-type) {
    border-radius: var(--ia-ds-radius-md);
    border: 1px solid var(--ia-ds-line);
    background: var(--ia-ds-surface-soft);
}

.ia-a90c[data-ia-current="customise"] #template-selection > .form-group {
    border-radius: var(--ia-ds-radius-md);
    border: 1px solid var(--ia-ds-line);
    background: var(--ia-ds-surface-soft);
}

.ia-a90c .ia-status {
    border-radius: var(--ia-ds-radius-pill);
    font-size: var(--ia-ds-eyebrow);
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: .08em;
}

@media (prefers-reduced-motion: reduce) {
    .ia-a90c * {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
    
    .ia-a90c *::before {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
    
    .ia-a90c *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}

.ia-a90c .sidebar {
    border-right-color: var(--ia-ds-line);
    background: var(--ia-ds-white);
}

.ia-a90c .ia-brand {
    height: 64px;
    margin-bottom: 24px;
}

.ia-a90c .ia-brand img {
    width: 190px;
    height: auto;
    max-height: 58px;
    object-fit: contain;
    object-position: left center;
}

.ia-a90c .ia-nav-group {
    position: relative;
    margin: 28px 0;
}

.ia-a90c .ia-nav-group.ia-flow {
    margin-top: 40px;
}

.ia-a90c .ia-nav {
    display: grid;
    grid-template-columns: 22px minmax(0,1fr);
    align-items: center;
    column-gap: 11px;
    width: 100%;
    min-height: 52px;
    margin: 5px 0;
    padding: 13px 14px;
    border: 1px solid transparent;
    border-radius: var(--ia-ds-radius-sm);
    background: transparent;
    color: var(--ia-ds-muted);
    font-size: var(--ia-ds-body);
    font-weight: 650;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;
    transition: background-color var(--ia-ds-motion-fast), border-color var(--ia-ds-motion-fast), color var(--ia-ds-motion-fast), box-shadow var(--ia-ds-motion-fast);
}

.ia-a90c .ia-nav::before {
    display: none !important;
}

.ia-a90c .ia-nav-icon {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: color var(--ia-ds-motion-fast), transform var(--ia-ds-motion-fast);
}

.ia-a90c .ia-nav span {
    min-width: 0;
    color: inherit;
    text-align: left;
}

.ia-a90c .ia-nav:not(.active):hover {
    border-color: rgba(22,127,168,.13);
    background: var(--ia-ds-accent-pale);
    color: var(--ia-ds-accent-dark);
    box-shadow: none;
}

.ia-a90c .ia-nav:not(.active):hover .ia-nav-icon {
    transform: translateX(1px);
}

.ia-a90c .ia-nav.active {
    border-color: rgba(32,168,102,.20);
    background: var(--ia-ds-green-pale);
    color: var(--ia-ds-green-dark);
    box-shadow: inset 3px 0 0 var(--ia-ds-green), 0 5px 14px rgba(32,168,102,.08);
}

.ia-a90c .ia-nav.active span {
    color: var(--ia-ds-green-dark);
}

.ia-a90c .ia-nav.active .ia-nav-icon {
    color: var(--ia-ds-green-dark);
}

.ia-a90c .ia-nav:active {
    transform: none;
}

.ia-a90c .ia-nav:focus-visible {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 2px;
    box-shadow: var(--ia-ds-shadow-focus);
}

.ia-a90c .ia-nav:not(.active)[data-ia-screen="home"] .ia-nav-icon {
    color: #2878bd;
}

.ia-a90c .ia-nav:not(.active)[data-ia-screen="opportunity"] .ia-nav-icon {
    color: #14977c;
}

.ia-a90c .ia-nav:not(.active)[data-ia-screen="model"] .ia-nav-icon {
    color: #168eb5;
}

.ia-a90c .ia-nav:not(.active)[data-ia-screen="immersive"] .ia-nav-icon {
    color: #7564bd;
}

.ia-a90c .ia-nav:not(.active)[data-ia-screen="projects"] .ia-nav-icon {
    color: #b7792c;
}

.ia-a90c .ia-nav:not(.active)[data-ia-screen="outputs"] .ia-nav-icon {
    color: #596fc0;
}

.ia-a90c .ia-page-header {
    position: relative;
    margin: 0 0 var(--ia-ds-space-5);
    padding: 0 0 var(--ia-ds-space-4);
}

.ia-a90c .ia-page-header::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 48px;
    height: 2px;
    border-radius: var(--ia-ds-radius-pill);
    background: var(--ia-ds-green);
    opacity: .82;
}

.ia-a90c .ia-page-header .ia-eyebrow {
    display: block;
    margin: 0 0 var(--ia-ds-space-2);
    color: var(--ia-ds-green-dark);
    font-size: var(--ia-ds-eyebrow);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.ia-a90c .ia-page-header .ia-page-title > span {
    color: var(--ia-ds-green-dark);
}

.ia-a90c .ia-page-header h1 .ia-title-accent {
    color: var(--ia-ds-green-dark);
}

.ia-a90c .ia-page-header .ia-page-subtitle {
    max-width: 760px;
    margin: var(--ia-ds-space-2) 0 0;
    color: var(--ia-ds-muted);
    font-size: var(--ia-ds-body);
    font-weight: 400;
    line-height: 1.65;
    letter-spacing: 0;
}

.ia-a90c .ia-screen p {
    color: var(--ia-ds-muted);
    font-size: var(--ia-ds-body);
    line-height: 1.6;
}

@media (max-width: 760px) {
    .ia-a90c .ia-page-header {
        margin-bottom: var(--ia-ds-space-4);
        padding-bottom: var(--ia-ds-space-3);
    }
    
    .ia-a90c .ia-page-header .ia-page-title {
        font-size: 32px;
        letter-spacing: -.025em;
    }
    
    .ia-a90c .ia-page-header h1 {
        font-size: 32px;
        letter-spacing: -.025em;
    }
    
    .ia-a90c .ia-page-header .ia-page-subtitle {
        font-size: 14px;
    }
    
    .ia-a90c .ia-page-subtitle {
        font-size: 14px;
    }
}

.ia-a90c #preview #job-progress {
    border: 1px solid var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-surface-soft);
}

.ia-a90c .file-upload-area:hover {
    background: var(--ia-ds-white);
    border-color: rgba(32,168,102,.48);
    box-shadow: 0 0 0 3px rgba(32,168,102,.08);
}

.ia-a90c .ia-exp i {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-sm);
}

.ia-a90c .template-preview-pane {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-surface-soft);
}

.ia-a90c .template-preview-frame {
    border-radius: var(--ia-ds-radius-sm);
    background-color: var(--ia-ds-surface);
}

.ia-a90c .ia-live-review img {
    border-radius: var(--ia-ds-radius-sm);
    background: var(--ia-ds-surface);
}

.ia-a90c .ia-summary > div {
    border-bottom-color: var(--ia-ds-line);
}

.ia-a90c #ia-review-summary > div {
    border-bottom-color: var(--ia-ds-line);
}

.ia-a90c #ia-a90c-summary > div {
    border-bottom-color: var(--ia-ds-line);
}

.ia-a90c .ia-summary > div:last-child {
    border-bottom: 0;
}

.ia-a90c #ia-review-summary > div:last-child {
    border-bottom: 0;
}

.ia-a90c #ia-a90c-summary > div:last-child {
    border-bottom: 0;
}

.ia-a90c .ia-button.primary:hover:not(:disabled) {
    border-color: var(--ia-ds-green-dark);
    background: var(--ia-ds-green-dark);
    color: var(--ia-ds-white);
}

.ia-a90c .btn-primary:hover:not(:disabled) {
    border-color: var(--ia-ds-green-dark);
    background: var(--ia-ds-green-dark);
    color: var(--ia-ds-white);
}

.ia-a90c .ia-button.secondary:hover:not(:disabled) {
    border-color: rgba(22,127,168,.34);
    background: var(--ia-ds-surface-soft);
    color: var(--ia-ds-accent-dark);
}

.ia-a90c .btn-secondary:hover:not(:disabled) {
    border-color: rgba(22,127,168,.34);
    background: var(--ia-ds-surface-soft);
    color: var(--ia-ds-accent-dark);
}

.ia-a90c .ia-exp-preview button:hover:not(:disabled) {
    border-color: rgba(22,127,168,.34);
    background: var(--ia-ds-surface-soft);
    color: var(--ia-ds-accent-dark);
}

.ia-a90c button:disabled {
    opacity: .45;
    cursor: not-allowed;
    box-shadow: none;
}

.ia-a90c .form-label {
    color: var(--ia-ds-text);
    font-size: var(--ia-ds-small);
    font-weight: 700;
    line-height: 1.4;
}

.ia-a90c input:not([type="checkbox"]):not([type="radio"]):not([type="color"]) {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-sm);
    background-color: var(--ia-ds-white);
    color: var(--ia-ds-text);
    font-family: inherit;
    font-size: var(--ia-ds-body);
    transition: background-color var(--ia-ds-motion-fast), border-color var(--ia-ds-motion-fast), box-shadow var(--ia-ds-motion-fast);
}

.ia-a90c textarea {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-sm);
    background-color: var(--ia-ds-white);
    color: var(--ia-ds-text);
    font-family: inherit;
    font-size: var(--ia-ds-body);
    transition: background-color var(--ia-ds-motion-fast), border-color var(--ia-ds-motion-fast), box-shadow var(--ia-ds-motion-fast);
}

.ia-a90c select {
    border-color: var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-sm);
    background-color: var(--ia-ds-white);
    color: var(--ia-ds-text);
    font-family: inherit;
    font-size: var(--ia-ds-body);
    transition: background-color var(--ia-ds-motion-fast), border-color var(--ia-ds-motion-fast), box-shadow var(--ia-ds-motion-fast);
}

.ia-a90c input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):hover {
    border-color: rgba(22,127,168,.34);
}

.ia-a90c textarea:hover {
    border-color: rgba(22,127,168,.34);
}

.ia-a90c select:hover {
    border-color: rgba(22,127,168,.34);
}

.ia-a90c input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):focus {
    border-color: var(--ia-ds-accent);
    outline: none;
    box-shadow: var(--ia-ds-shadow-focus);
}

.ia-a90c textarea:focus {
    border-color: var(--ia-ds-accent);
    outline: none;
    box-shadow: var(--ia-ds-shadow-focus);
}

.ia-a90c select:focus {
    border-color: var(--ia-ds-accent);
    outline: none;
    box-shadow: var(--ia-ds-shadow-focus);
}

.ia-a90c button:focus-visible {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 2px;
}

.ia-a90c a:focus-visible {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 2px;
}

.ia-a90c input::placeholder {
    color: var(--ia-ds-muted);
    opacity: .72;
}

.ia-a90c textarea::placeholder {
    color: var(--ia-ds-muted);
    opacity: .72;
}

.ia-a90c .custom-text-counter {
    color: var(--ia-ds-muted);
    font-size: var(--ia-ds-small);
}

.ia-a90c .custom-text-counter.is-warning {
    color: #a16207;
}

.ia-a90c .custom-text-counter.is-invalid {
    color: #b91c1c;
}

.ia-a90c .custom-text-message {
    color: #b91c1c;
}

.ia-a90c #preview #generate-pdf {
    border-color: var(--ia-ds-green);
    color: var(--ia-ds-white);
}

/* ============================================================
   iArchitect Main UI — Home Dashboard V2
   Scope: Home screen only.
   ============================================================ */

.ia-a90c .ia-home-v2 {
    display: grid;
    gap: 34px;
    padding-bottom: 24px;
}

.ia-a90c .ia-home-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 16px;
}

.ia-a90c .ia-home-section-head h2 {
    margin: 5px 0 0;
    color: var(--ia-ds-text);
    font-size: 22px;
    line-height: 1.2;
    letter-spacing: -.02em;
}

.ia-a90c .ia-home-text-action {
    padding: 6px 0;
    border: 0;
    background: transparent;
    color: var(--ia-ds-green-dark);
    font: inherit;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
}

.ia-a90c .ia-home-text-action:hover {
    color: var(--ia-ds-accent-dark);
}

.ia-a90c .ia-home-text-action:focus-visible {
    border-radius: 4px;
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 3px;
}

/* Recent Projects */

.ia-a90c .ia-home-recent {
    padding: 22px 24px 24px;
    border: 1px solid var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
}

.ia-a90c .ia-home-empty {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: 18px;
    min-height: 104px;
    padding: 18px 20px;
    border: 1px dashed #cad9d1;
    border-radius: var(--ia-ds-radius-sm);
    background: var(--ia-ds-surface-soft);
}

.ia-a90c .ia-home-empty-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: var(--ia-ds-green-pale);
    color: var(--ia-ds-green-dark);
}

.ia-a90c .ia-home-empty-icon svg {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.ia-a90c .ia-home-empty h3 {
    margin: 0 0 4px;
    color: var(--ia-ds-text);
    font-size: 15px;
}

.ia-a90c .ia-home-empty p {
    margin: 0;
    font-size: 13px;
}

/* Quick Create */

.ia-a90c .ia-home-create-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
}

.ia-a90c .ia-home-create-card {
    display: grid;
    grid-template-columns: minmax(190px,38%) minmax(0,1fr);
    min-height: 220px;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    color: inherit;
    text-align: left;
    cursor: pointer;
    box-shadow: var(--ia-ds-shadow-card);
    transition:
        transform var(--ia-ds-motion),
        border-color var(--ia-ds-motion),
        box-shadow var(--ia-ds-motion);
}

.ia-a90c .ia-home-create-card:hover {
    transform: translateY(-2px);
    border-color: rgba(22,127,168,.32);
    box-shadow: var(--ia-ds-shadow-hover);
}

.ia-a90c .ia-home-create-card:focus-visible {
    outline: 2px solid var(--ia-ds-accent);
    outline-offset: 3px;
}

.ia-a90c .ia-home-create-visual {
    min-height: 220px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.ia-a90c .ia-home-create-document .ia-home-create-visual {
    background-image:
        linear-gradient(rgba(255,255,255,.08),rgba(255,255,255,.08)),
        url('/images/a90/optimized/home-3d-document.webp');
}

.ia-a90c .ia-home-create-immersive .ia-home-create-visual {
    background-image:
        linear-gradient(rgba(255,255,255,.08),rgba(255,255,255,.08)),
        url('/images/a90/optimized/home-immersive.webp');
}

.ia-a90c .ia-home-create-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 26px 28px;
}

.ia-a90c .ia-home-product-tag {
    color: var(--ia-ds-green-dark);
    font-size: 10px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .14em;
}

.ia-a90c .ia-home-create-copy h3 {
    margin: 8px 0 7px;
    color: var(--ia-ds-text);
    font-size: 21px;
    line-height: 1.2;
    letter-spacing: -.02em;
}

.ia-a90c .ia-home-create-copy p {
    margin: 0 0 18px;
    font-size: 13px;
    line-height: 1.55;
}

.ia-a90c .ia-home-create-copy strong {
    margin-top: auto;
    color: var(--ia-ds-green-dark);
    font-size: 13px;
}

/* Opportunity Finder */

.ia-a90c .ia-home-opportunity {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(300px,38%);
    min-height: 210px;
    overflow: hidden;
    border: 1px solid #c9dfd2;
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-green-pale);
}

.ia-a90c .ia-home-opportunity-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px 34px;
}

.ia-a90c .ia-home-opportunity-topline {
    display: flex;
    align-items: center;
    gap: 12px;
}

.ia-a90c .ia-home-opportunity h2 {
    margin: 10px 0 7px;
    color: var(--ia-ds-text);
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -.02em;
}

.ia-a90c .ia-home-opportunity p {
    max-width: 620px;
    margin: 0 0 16px;
    font-size: 13px;
    line-height: 1.6;
}

.ia-a90c .ia-home-opportunity-copy .ia-home-text-action {
    align-self: flex-start;
}

.ia-a90c .ia-home-opportunity-visual {
    min-height: 210px;
    background:
        linear-gradient(
            90deg,
            var(--ia-ds-green-pale) 0%,
            rgba(238,249,243,.08) 30%
        ),
        url('/images/a90/home-opportunity.jpg') center/cover no-repeat;
}

@media (max-width: 1050px) {
    .ia-a90c .ia-home-create-card {
        grid-template-columns: 1fr;
    }

    .ia-a90c .ia-home-create-visual {
        min-height: 160px;
    }
}

@media (max-width: 760px) {
    .ia-a90c .ia-home-v2 {
        gap: 26px;
    }

    .ia-a90c .ia-home-create-grid {
        grid-template-columns: 1fr;
    }

    .ia-a90c .ia-home-empty {
        grid-template-columns: auto minmax(0,1fr);
    }

    .ia-a90c .ia-home-empty > .ia-button {
        grid-column: 1 / -1;
        justify-self: stretch;
    }

    .ia-a90c .ia-home-opportunity {
        grid-template-columns: 1fr;
    }

    .ia-a90c .ia-home-opportunity-visual {
        min-height: 170px;
    }
}


/* ============================================================
   iArchitect Main UI — Projects + Outputs Library V1
   Scope: Projects and Outputs screens only.
   ============================================================ */

.ia-a90c .ia-library-v1 {
    display: grid;
    gap: 18px;
}

.ia-a90c .ia-library-toolbar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
}

.ia-a90c .ia-library-toolbar h2 {
    margin: 5px 0 0;
    color: var(--ia-ds-text);
    font-size: 22px;
    line-height: 1.2;
    letter-spacing: -.02em;
}

.ia-a90c .ia-library-count {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 11px;
    border: 1px solid var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-pill);
    background: var(--ia-ds-surface-soft);
    color: var(--ia-ds-muted);
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .12em;
}

.ia-a90c .ia-library-empty {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: 24px;
    min-height: 180px;
    padding: 30px 32px;
    border: 1px solid var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
}

.ia-a90c .ia-library-empty-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 14px;
    background: var(--ia-ds-green-pale);
    color: var(--ia-ds-green-dark);
}

.ia-a90c .ia-library-empty-icon svg {
    width: 29px;
    height: 29px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.55;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.ia-a90c .ia-library-output-icon {
    background: var(--ia-ds-accent-pale);
    color: var(--ia-ds-accent-dark);
}

.ia-a90c .ia-library-empty-copy {
    max-width: 610px;
}

.ia-a90c .ia-library-empty-copy h3 {
    margin: 0 0 7px;
    color: var(--ia-ds-text);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.015em;
}

.ia-a90c .ia-library-empty-copy p {
    margin: 0;
    color: var(--ia-ds-muted);
    font-size: 13px;
    line-height: 1.65;
}

.ia-a90c .ia-library-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 9px;
    min-width: 205px;
}

.ia-a90c .ia-library-actions .ia-button {
    width: 100%;
    white-space: nowrap;
}

.ia-a90c .ia-library-note {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 13px 16px;
    border: 1px solid #dce7e1;
    border-radius: var(--ia-ds-radius-sm);
    background: var(--ia-ds-surface-soft);
}

.ia-a90c .ia-library-note-mark {
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    border: 1px solid #bdd5c7;
    border-radius: 50%;
    color: var(--ia-ds-green-dark);
    font-size: 11px;
    font-weight: 800;
}

.ia-a90c .ia-library-note p {
    margin: 0;
    color: var(--ia-ds-muted);
    font-size: 12px;
    line-height: 1.5;
}

@media (max-width: 900px) {
    .ia-a90c .ia-library-empty {
        grid-template-columns: auto minmax(0,1fr);
    }

    .ia-a90c .ia-library-actions {
        grid-column: 1 / -1;
        flex-direction: row;
        min-width: 0;
    }
}

@media (max-width: 620px) {
    .ia-a90c .ia-library-toolbar {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .ia-a90c .ia-library-empty {
        grid-template-columns: 1fr;
        padding: 24px;
    }

    .ia-a90c .ia-library-actions {
        flex-direction: column;
    }
}


/* ============================================================
   iArchitect Main UI — Opportunity Finder V1
   Scope: Opportunity Finder preview screen only.
   ============================================================ */

.ia-a90c .ia-opportunity-v1 {
    display: grid;
    gap: 28px;
    padding-bottom: 24px;
}

.ia-a90c .ia-opportunity-hero {
    display: grid;
    grid-template-columns: minmax(0,1.2fr) minmax(330px,.8fr);
    min-height: 390px;
    overflow: hidden;
    border: 1px solid #c9dfd2;
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
}

.ia-a90c .ia-opportunity-hero-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 38px 42px;
}

.ia-a90c .ia-opportunity-topline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.ia-a90c .ia-opportunity-kicker {
    color: var(--ia-ds-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .14em;
}

.ia-a90c .ia-opportunity-hero h2 {
    max-width: 720px;
    margin: 0 0 14px;
    color: var(--ia-ds-text);
    font-size: clamp(26px,3vw,38px);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.ia-a90c .ia-opportunity-hero-copy > p {
    max-width: 690px;
    margin: 0;
    color: var(--ia-ds-muted);
    font-size: 14px;
    line-height: 1.7;
}

.ia-a90c .ia-opportunity-flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    align-items: center;
    gap: 13px;
    margin-top: 30px;
}

.ia-a90c .ia-opportunity-flow span {
    display: block;
    margin-bottom: 5px;
    color: var(--ia-ds-green-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
}

.ia-a90c .ia-opportunity-flow strong {
    display: block;
    margin-bottom: 4px;
    color: var(--ia-ds-text);
    font-size: 14px;
}

.ia-a90c .ia-opportunity-flow small {
    display: block;
    color: var(--ia-ds-muted);
    font-size: 11px;
    line-height: 1.45;
}

.ia-a90c .ia-opportunity-flow > i {
    color: #a9beb3;
    font-size: 18px;
    font-style: normal;
}

.ia-a90c .ia-opportunity-hero-visual {
    position: relative;
    min-height: 390px;
    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.18),
            rgba(255,255,255,0)
        ),
        url('/images/a90/home-opportunity.jpg') center/cover no-repeat;
}

.ia-a90c .ia-opportunity-score-preview {
    position: absolute;
    right: 28px;
    bottom: 28px;
    width: 126px;
    height: 126px;
    display: grid;
    place-content: center;
    text-align: center;
    border: 1px solid rgba(255,255,255,.75);
    border-radius: 50%;
    background: rgba(255,255,255,.90);
    box-shadow: 0 16px 36px rgba(20,35,44,.18);
    backdrop-filter: blur(7px);
}

.ia-a90c .ia-opportunity-score-preview span,
.ia-a90c .ia-opportunity-score-preview b {
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
}

.ia-a90c .ia-opportunity-score-preview span {
    color: var(--ia-ds-muted);
}

.ia-a90c .ia-opportunity-score-preview strong {
    color: var(--ia-ds-green-dark);
    font-size: 37px;
    line-height: .95;
}

.ia-a90c .ia-opportunity-score-preview small {
    color: var(--ia-ds-muted);
    font-size: 10px;
}

.ia-a90c .ia-opportunity-score-preview b {
    margin-top: 5px;
    color: var(--ia-ds-green-dark);
}


/* Opportunity Finder V1 — Category Grid */

.ia-a90c .ia-opportunity-section {
    display: grid;
    gap: 16px;
}

.ia-a90c .ia-opportunity-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
}

.ia-a90c .ia-opportunity-section-head h2,
.ia-a90c .ia-opportunity-preview h2 {
    margin: 5px 0 0;
    color: var(--ia-ds-text);
    font-size: 22px;
    line-height: 1.2;
    letter-spacing: -.02em;
}

.ia-a90c .ia-opportunity-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 14px;
}

.ia-a90c .ia-opportunity-card {
    min-height: 150px;
    padding: 21px 22px;
    border: 1px solid var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-sm);
    background: var(--ia-ds-white);
    box-shadow: var(--ia-ds-shadow-card);
}

.ia-a90c .ia-opportunity-card-icon {
    display: inline-grid;
    place-items: center;
    width: 30px;
    height: 30px;
    margin-bottom: 18px;
    border-radius: 8px;
    background: var(--ia-ds-green-pale);
    color: var(--ia-ds-green-dark);
    font-size: 9px;
    font-weight: 800;
}

.ia-a90c .ia-opportunity-card h3 {
    margin: 0 0 6px;
    color: var(--ia-ds-text);
    font-size: 15px;
}

.ia-a90c .ia-opportunity-card p {
    margin: 0;
    color: var(--ia-ds-muted);
    font-size: 12px;
    line-height: 1.55;
}


/* Opportunity Finder V1 — Output Preview + Notice */

.ia-a90c .ia-opportunity-preview {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(380px,.9fr);
    align-items: center;
    gap: 36px;
    padding: 28px 30px;
    border: 1px solid var(--ia-ds-line);
    border-radius: var(--ia-ds-radius-md);
    background: var(--ia-ds-surface-soft);
}

.ia-a90c .ia-opportunity-preview > div:first-child > p {
    max-width: 680px;
    margin: 10px 0 0;
    color: var(--ia-ds-muted);
    font-size: 13px;
    line-height: 1.65;
}

.ia-a90c .ia-opportunity-preview-items {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 8px;
}

.ia-a90c .ia-opportunity-preview-items span {
    position: relative;
    padding: 11px 12px 11px 29px;
    border: 1px solid #dce7e1;
    border-radius: 8px;
    background: var(--ia-ds-white);
    color: var(--ia-ds-text);
    font-size: 11px;
    font-weight: 650;
}

.ia-a90c .ia-opportunity-preview-items span::before {
    content: "✓";
    position: absolute;
    left: 11px;
    color: var(--ia-ds-green);
    font-weight: 800;
}

.ia-a90c .ia-opportunity-notice {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 15px 17px;
    border: 1px solid #dce7e1;
    border-radius: var(--ia-ds-radius-sm);
    background: var(--ia-ds-green-pale);
}

.ia-a90c .ia-opportunity-notice strong {
    display: block;
    margin-bottom: 3px;
    color: var(--ia-ds-text);
    font-size: 12px;
}

.ia-a90c .ia-opportunity-notice p {
    margin: 0;
    color: var(--ia-ds-muted);
    font-size: 12px;
    line-height: 1.5;
}

/* Responsive */

@media (max-width: 1050px) {
    .ia-a90c .ia-opportunity-hero {
        grid-template-columns: 1fr;
    }

    .ia-a90c .ia-opportunity-hero-visual {
        min-height: 260px;
    }

    .ia-a90c .ia-opportunity-preview {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .ia-a90c .ia-opportunity-hero-copy {
        padding: 28px 24px;
    }

    .ia-a90c .ia-opportunity-flow {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .ia-a90c .ia-opportunity-flow > i {
        display: none;
    }

    .ia-a90c .ia-opportunity-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .ia-a90c .ia-opportunity-section-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .ia-a90c .ia-opportunity-preview {
        padding: 24px;
    }
}

@media (max-width: 520px) {
    .ia-a90c .ia-opportunity-grid {
        grid-template-columns: 1fr;
    }

    .ia-a90c .ia-opportunity-preview-items {
        grid-template-columns: 1fr;
    }

    .ia-a90c .ia-opportunity-score-preview {
        right: 20px;
        bottom: 20px;
    }
}

