/* Artboard V2 — scoped exclusively to the Artboard AI tool. */
.abv2{--ab-cyan:#00e5ff;--ab-blue:#0066ff;--ab-green:#00ff6a;--ab-ink:#040d1c;--ab-border:#158ddd;color:#eafaff;display:grid;gap:18px;padding:20px;max-width:1620px;margin:auto;min-height:calc(100dvh - 134px);isolation:isolate;background:radial-gradient(ellipse at 45% 8%,#006bd024,transparent 48%),linear-gradient(135deg,#020b19,#05182d 42%,#020817);border:1px solid #1479bb;border-radius:22px;box-shadow:inset 0 0 80px #0171ce17,0 30px 80px #0009;font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.abv2 *, .abv2 *::before,.abv2 *::after{box-sizing:border-box}
.abv2-top{display:grid;gap:16px}
.abv2-health{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#020e20e9;border:1px solid #188ace;border-radius:16px;box-shadow:inset 0 1px #64eaff42,0 0 18px #009bff30;overflow:hidden}
.abv2-health>span{display:flex;align-items:center;gap:8px;justify-content:center;padding:12px 6px;font-size:12px;border-right:1px solid #13446d;white-space:nowrap}.abv2-health>span:last-child{border:none}.abv2-health b{font-size:11px;color:#b9dcff}.abv2-health i{flex:none;width:9px;height:9px;border-radius:50%;background:#60819a;box-shadow:0 0 9px #5274a1}.abv2-health i.ok{background:#00ee83;box-shadow:0 0 13px #00ff6a}.abv2-health i.bad{background:#ff3b4d;box-shadow:0 0 10px #ff3b4d}.abv2-health i.unknown{background:#35a7ed;box-shadow:0 0 12px #0cf}
.abv2-header{display:flex;align-items:center;gap:16px;padding:8px 12px 16px;border-bottom:1px solid #0e6b9c;background:radial-gradient(ellipse at 50% 100%,#008cff28,transparent 68%)}.abv2-header img{width:64px;height:64px;filter:drop-shadow(0 0 12px #08caff7a)}.abv2-header h1{margin:0;font-size:clamp(25px,3vw,40px);letter-spacing:-.03em;text-shadow:0 0 23px #00cfff55}.abv2-header p{color:#a9d2e9;font-size:13px;letter-spacing:.04em;margin:3px 0 0}.abv2-step-label{margin-left:auto;color:#65e6ff;font-size:12px;border:1px solid #1595c8;padding:9px 12px;border-radius:13px;max-width:32%;overflow-wrap:anywhere}
.abv2-card{background:linear-gradient(155deg,#062242e5,#031025f5 70%);border:1px solid #0d90d4;border-radius:19px;padding:14px;box-shadow:inset 0 1px #a2fbff27,inset 0 0 25px #0089ff13,0 0 20px #007df325;min-width:0}
.abv2-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #0c4d75;padding-bottom:12px;margin-bottom:12px}.abv2-card h2{font-size:clamp(15px,1.6vw,23px);margin:0;line-height:1.2}.abv2-card header>span,.abv2-card header>small{font-size:12px;color:#62dfff}
.abv2-btn{font-family:inherit;font-size:14px;font-weight:700;line-height:1.2;border:1px solid #0879b0;background:linear-gradient(180deg,#123a66,#04172b);color:#f4ffff;border-radius:15px;padding:13px 19px;min-height:46px;cursor:pointer;text-shadow:0 0 10px #00aaff5e;box-shadow:inset 0 1px #9ad5ff80,0 0 15px #047eee35;transition:filter .15s,transform .15s,box-shadow .15s}.abv2-btn:hover:not(:disabled){filter:brightness(1.18);transform:translateY(-1px);box-shadow:0 0 27px #00bbff66}.abv2-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}.abv2-btn.primary{background:linear-gradient(110deg,#008cff,#0b55fa 55%,#00d9f3);border-color:#00e5ff;box-shadow:inset 0 1px #fff9,0 0 24px #00aaff72}.abv2-btn.active{border-color:#00e5ff;box-shadow:inset 0 0 14px #00e5ff5f,0 0 23px #00e5ff5f}.abv2-btn.danger{border-color:#ff3b4d;background:linear-gradient(145deg,#45132c,#190918);box-shadow:0 0 14px #ff29515e}.abv2-btn.amber{border-color:#ffb347;background:#3d250b;color:#ffdeb0}.abv2-btn:disabled{cursor:not-allowed;opacity:.4;box-shadow:none}
.abv2-input-shell{width:min(100%,1050px);margin:0 auto;display:grid;gap:17px;align-content:start;padding:10px 0 35px;position:relative}.abv2-input-shell:after{content:"";position:absolute;left:18%;right:18%;bottom:0;height:15px;border:2px solid #02bfff;border-radius:50%;box-shadow:0 0 32px 10px #0077ef57,0 0 75px #12ccfa;pointer-events:none;opacity:.7}.abv2-modes{display:flex;align-items:center;gap:15px;padding:11px 16px;background:#071b34;border-radius:15px;border:1px solid #126baa}.abv2-modes>b{min-width:155px}.abv2-modes>div{flex:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.abv2-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:240px;border:2px dashed #00c8e6;border-radius:20px;background:radial-gradient(ellipse at bottom,#0063c033,transparent 60%),linear-gradient(#04152c,#021021);gap:7px;cursor:pointer;transition:background .2s}.abv2-drop:hover,.abv2-drop.over{background:linear-gradient(#073557,#04172b);border-color:#fff}.abv2-upload-icon{font-size:56px;color:#2fe4ff;text-shadow:0 0 25px #00e5ff}.abv2-drop strong{font-size:clamp(17px,2vw,24px)}.abv2-drop small{color:#9fcfe6}.abv2-drop p{margin:8px 0 0;font-size:11px;color:#69d8f0;letter-spacing:.15em}.abv2-drop input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.abv2-file{display:flex;align-items:center;gap:13px;border:1px solid #148bcd;border-radius:15px;background:#071d36;padding:10px 14px;box-shadow:inset 0 0 15px #00e5ff14}.abv2-file img{width:58px;height:58px;object-fit:contain;border-radius:9px;background:#000}.abv2-file div{display:flex;flex-direction:column;gap:6px;min-width:0}.abv2-file strong{overflow-wrap:anywhere}.abv2-file small{color:#b5d1e4}.abv2-file>span{margin-left:auto;color:#2ff3ce;font-size:12px;white-space:nowrap}.abv2-commands{display:grid;grid-template-columns:1fr 1.55fr;gap:14px;padding:10px 5%}
.abv2-process-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(280px,1fr);gap:18px;align-items:start}.abv2-primary{display:grid;gap:16px;min-width:0}.abv2-preview{min-height:470px}.abv2-visual{height:clamp(320px,52vh,570px);min-height:300px;display:grid;place-items:center;position:relative;overflow:hidden;border-radius:16px;background:radial-gradient(ellipse at 50% 60%,#0878d44c,transparent 68%),linear-gradient(#03162c,#030d1a);border:1px solid #065c99}.abv2-visual img{position:relative;z-index:2;width:95%;height:94%;object-fit:contain;filter:drop-shadow(0 0 18px #08cafa66)}.abv2-visual:before,.abv2-art-canvas:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#00e5ff0e 1px,transparent 1px),linear-gradient(90deg,#00e5ff0e 1px,transparent 1px);background-size:29px 29px;z-index:1}.abv2-visual:after{content:"";position:absolute;bottom:3%;height:45px;width:64%;border:3px solid #00cfff;border-radius:50%;box-shadow:0 0 22px #00aaff,0 0 45px #027bff;pointer-events:none}.abv2-corners{z-index:3;position:absolute;inset:10%;border:2px solid #00dfff2f;border-image:linear-gradient(130deg,#00e5ff,transparent 30%,transparent 70%,#00e5ff) 1;pointer-events:none}.abv2-beam{display:none;position:absolute;z-index:5;top:5%;left:5%;right:5%;height:3px;background:#34ffff;box-shadow:0 0 18px 5px #00e5ff,0 0 46px 10px #009cff88;pointer-events:none}.abv2-scan.active .abv2-beam,.abv2-art-canvas .abv2-beam{display:block;animation:abv2-sweep 3.2s ease-in-out infinite alternate}@keyframes abv2-sweep{0%{top:6%}100%{top:90%}}.abv2-preview-foot{display:flex;justify-content:space-between;gap:7px;font-size:12px;color:#31efbf;padding-top:12px}.abv2-empty{color:#9cbfd2;max-width:250px;text-align:center}
.abv2-nav{display:flex;gap:12px;justify-content:space-between}.abv2-nav>.abv2-btn{flex:1}.abv2-log{min-height:470px;display:flex;flex-direction:column;max-height:720px}.abv2-current{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:12px;background:#03152b;border-radius:12px;border:1px solid #09588b}.abv2-current>b{color:#00edff}.abv2-current>.abv2-progress{grid-column:1/-1}.abv2-progress{height:9px;border:1px solid #119fff;background:#001025;border-radius:99px;overflow:hidden}.abv2-progress>span{display:block;height:100%;background:linear-gradient(90deg,#00ffe3,#009aff);border-radius:inherit;box-shadow:0 0 12px #00e5ff}.abv2-progress.indeterminate>span{animation:abv2-indet 1.8s ease-in-out infinite}@keyframes abv2-indet{0%{transform:translateX(-150%)}100%{transform:translateX(480%)}}.abv2-log ol{list-style:none;margin:12px 0;max-height:460px;min-height:190px;overflow:auto;padding:0;flex:1}.abv2-log li{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border-bottom:1px solid #135078;padding:12px 5px;font-size:12px}.abv2-log li:before{content:"●";color:#00ffe3;grid-row:1;grid-column:1;font-size:9px}.abv2-log li>span{grid-row:1;grid-column:1;margin-left:16px;overflow-wrap:anywhere}.abv2-log li small{color:#79d6f8;white-space:nowrap}.abv2-log-footer{border-top:1px solid #15547e;padding:12px 0 0;display:flex;justify-content:space-between;color:#83bdce;font-size:11px}
.abv2-select-summary{color:#9fe7ed;font-size:13px}.abv2-art-grid-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(290px,.95fr);gap:15px;align-items:start}.abv2-art-grid-layout.single{grid-template-columns:minmax(0,1.9fr) minmax(290px,.95fr)}.abv2-artwork{min-height:520px;display:flex;flex-direction:column}.abv2-artwork.selected{border-color:#00ffc4;box-shadow:0 0 28px #00debc36,inset 0 0 16px #00bfbd23}.abv2-art-canvas{position:relative;flex:1;min-height:330px;display:grid;place-items:center;overflow:hidden;border-radius:16px;background:radial-gradient(ellipse at center,#0b3062,transparent 70%),#020d1b;border:1px solid #0e669c}.abv2-art-canvas img{position:relative;width:96%;height:94%;object-fit:contain;z-index:2}.abv2-art-canvas p{position:relative;z-index:2;text-align:center;color:#99c3dd;padding:16px}.abv2-art-canvas .abv2-art-grid{position:absolute;inset:5%;border:1px dashed #00e5ff36;z-index:3;pointer-events:none}.abv2-select{display:flex;align-items:center;gap:12px;padding:14px 4px;font-size:13px;color:#d4feff;cursor:pointer}.abv2-select input{width:18px;height:18px;accent-color:#00edec}.abv2-artwork>.abv2-btn{margin:12px 0}.abv2-source-note{font-size:10px;color:#98becf}.abv2-side-note{padding:12px 3px;color:#98c1da;font-size:11px}.abv2-select-actions{display:flex;justify-content:flex-end;gap:14px}.abv2-select-actions .abv2-btn.primary{min-width:300px}.abv2-art-canvas.vector-overlay:after{content:"";position:absolute;inset:5%;z-index:3;pointer-events:none;border:1px solid #00e5ff33;background-image:linear-gradient(35deg,transparent 49.6%,#00e5ff40 50%,transparent 50.4%);background-size:70px 65px;opacity:.6}.abv2-art-canvas.validation-overlay:after{content:"⌖";position:absolute;inset:0;display:grid;place-items:center;z-index:3;font-size:80px;color:#00ffa544;pointer-events:none}
.abv2-export-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(235px,.85fr) minmax(230px,.85fr);gap:15px;align-items:start}.abv2-export-preview,.abv2-export-settings,.abv2-package{min-height:440px}.abv2-export-arts{display:flex;gap:12px;min-height:360px}.abv2-export-arts>div{flex:1;min-width:0;display:flex;flex-direction:column;text-align:center;gap:10px;border-radius:12px;border:1px solid #117bb4;background:#041a36;padding:10px}.abv2-export-arts strong{color:#65eaff}.abv2-export-arts img{max-width:100%;max-height:320px;height:300px;object-fit:contain}.abv2-format-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.abv2-format{border:1px solid #1972b2;background:#061a31;padding:17px 4px;border-radius:11px;color:white;font-weight:700;cursor:pointer}.abv2-format.selected{border-color:#00ffe3;box-shadow:inset 0 0 14px #00e5ff55}.abv2-facts{display:grid;gap:10px;margin-top:24px}.abv2-facts>span{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #0a5778;font-size:12px;padding-bottom:10px}.abv2-package p{font-size:12px;color:#9ebdd2}.abv2-package .output-list{list-style:none;padding:0;display:grid;gap:7px}.abv2-package .output-list li button{width:100%;text-align:left;border:1px solid #159fce;padding:10px;color:#d8ffff;background:#071b32;border-radius:9px}.abv2-package .abv2-btn{width:100%;margin-top:12px}.abv2-export-bottom{display:flex;gap:12px;justify-content:space-between}.abv2-export-bottom .abv2-btn.primary{margin-left:auto}
@media(max-width:1250px){.abv2-art-grid-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.abv2-art-grid-layout>.abv2-log{grid-column:1/-1;min-height:290px}.abv2-art-grid-layout.single>.abv2-log{grid-column:auto}.abv2-art-grid-layout.single{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr)}.abv2-export-grid{grid-template-columns:1fr 1fr}.abv2-export-grid>.abv2-export-preview{grid-column:1/-1}}
@media(max-width:900px){.abv2{padding:12px;gap:12px}.abv2-health{grid-template-columns:repeat(2,1fr)}.abv2-health>span:nth-child(2){border-right:0}.abv2-health>span:nth-child(-n+2){border-bottom:1px solid #13446d}.abv2-process-grid,.abv2-art-grid-layout,.abv2-art-grid-layout.single{grid-template-columns:1fr}.abv2-art-grid-layout>.abv2-log,.abv2-art-grid-layout.single>.abv2-log{grid-column:auto}.abv2-visual{height:400px}.abv2-artwork{min-height:450px}.abv2-log{min-height:300px}.abv2-export-grid{grid-template-columns:1fr}.abv2-export-grid>.abv2-export-preview{grid-column:auto}}
@media(max-width:590px){.abv2{padding:8px;border-radius:12px}.abv2-health>span{font-size:10px;gap:5px}.abv2-health b{font-size:10px}.abv2-header{gap:9px}.abv2-header img{width:41px;height:41px}.abv2-header h1{font-size:24px}.abv2-header p{font-size:10px}.abv2-step-label{display:none}.abv2-modes{display:block}.abv2-modes>div{margin-top:8px}.abv2-btn{padding:12px 8px;font-size:12px}.abv2-commands{grid-template-columns:1fr}.abv2-drop{min-height:215px}.abv2-nav{flex-wrap:wrap}.abv2-nav .abv2-btn{min-width:40%}.abv2-select-actions{flex-direction:column}.abv2-select-actions .abv2-btn.primary{min-width:auto}.abv2-export-bottom{flex-wrap:wrap}.abv2-export-bottom>.abv2-btn{flex:1;min-width:42%}.abv2-visual{height:330px}.abv2-export-arts{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.abv2 .abv2-beam,.abv2 .abv2-progress.indeterminate>span{animation:none!important}.abv2 .abv2-btn{transition:none!important}}
.abv2-visible-gate{margin:14px 0 4px;background:linear-gradient(135deg,#082340,#03162c);border:1px solid #1596bb;padding:16px;border-radius:14px}.abv2-visible-gate strong{display:block;font-size:14px}.abv2-visible-gate p{font-size:12px;color:#a4c9d7;margin:6px 0 10px}.abv2-visible-gate>div{display:flex;gap:18px;margin-bottom:14px}.abv2-visible-gate label{display:flex;align-items:center;gap:7px;cursor:pointer}.abv2-visible-gate input{accent-color:#00e5ff;width:18px;height:18px}.abv2-visible-gate .abv2-btn{width:100%}

/* ARTBOARD VISUAL-ASSET RESTORATION — purely decorative UI, never production output */
.abv2:has(.abv2-input-shell){position:relative;overflow:hidden;background-image:
 radial-gradient(ellipse 66% 36% at 50% 12%,#006bff4a,transparent 81%),
 url("assets/artboard-v2/energy-waves.svg"),
 linear-gradient(140deg,#010716,#04132a 45%,#010614);
 background-size:100% 100%,120% 66%,100% 100%;
 background-position:center,center 3%,center;
 background-repeat:no-repeat}
.abv2:has(.abv2-input-shell)::after{content:"";pointer-events:none;position:absolute;left:13%;right:13%;bottom:-30px;height:156px;z-index:0;
 background:url("assets/artboard-v2/holo-platform.svg") center bottom/contain no-repeat;filter:drop-shadow(0 0 20px #007dff80);opacity:.94}
.abv2:has(.abv2-input-shell)>.abv2-top,
.abv2:has(.abv2-input-shell)>.abv2-input-shell{position:relative;z-index:1}
.abv2:has(.abv2-input-shell) .abv2-header{justify-content:center;text-align:center;border-bottom:0;padding:21px 12px 18px;background:radial-gradient(ellipse at center,#00aeff26,transparent 65%)}
.abv2:has(.abv2-input-shell) .abv2-header img{width:76px;height:76px;filter:drop-shadow(0 0 21px #00bfff)}
.abv2:has(.abv2-input-shell) .abv2-header h1{font-size:clamp(27px,3.3vw,50px);font-style:italic;letter-spacing:-.045em}
.abv2:has(.abv2-input-shell) .abv2-header p{font-size:11px;letter-spacing:.25em}
.abv2:has(.abv2-input-shell) .abv2-step-label{display:none}
.abv2-input-shell{width:min(100%,830px);padding:8px 0 82px;margin:0 auto 14px;isolation:isolate;z-index:2}
.abv2-input-shell::before,.abv2-input-shell::after{content:"";position:absolute;top:86px;width:clamp(165px,17vw,256px);height:clamp(260px,34vw,410px);background-repeat:no-repeat;background-size:contain;background-position:top center;pointer-events:none;z-index:-1;opacity:1;filter:drop-shadow(0 0 23px #00bfff75) drop-shadow(0 18px 20px #0009)}
.abv2-input-shell::before{background-image:url("assets/artboard-v2/jersey-front.svg");right:calc(100% - 38px);transform:rotate(-6deg)}
.abv2-input-shell::after{background-image:url("assets/artboard-v2/jersey-back.svg");left:calc(100% - 38px);transform:rotate(6deg)}
.abv2-input-shell .abv2-modes,.abv2-input-shell .abv2-drop,.abv2-input-shell .abv2-file,.abv2-input-shell .abv2-commands{position:relative;z-index:1}
.abv2-input-shell .abv2-modes{backdrop-filter:blur(12px);background:linear-gradient(160deg,#072343ef,#010d20ee);box-shadow:inset 0 1px #c8ffff35,0 0 26px #006eff47;border-color:#1989c6;border-radius:18px}
.abv2-input-shell .abv2-drop{min-height:260px;border-radius:23px;background:
 url("assets/artboard-v2/energy-waves.svg") center bottom/110% 85% no-repeat,
 radial-gradient(ellipse at 50% 75%,#0266ee46,transparent 68%),
 linear-gradient(170deg,#041c36f5,#020a1bf8);
 box-shadow:inset 0 0 45px #00bfff18,0 0 25px #0098ff3d}
.abv2-input-shell .abv2-drop:hover,.abv2-input-shell .abv2-drop.over{background:
 url("assets/artboard-v2/energy-waves.svg") center bottom/110% 85% no-repeat,
 radial-gradient(ellipse at 50% 70%,#008eff66,transparent 68%),
 linear-gradient(170deg,#092b4b,#020d20)}
.abv2-input-shell .abv2-upload-icon{line-height:1.1;filter:drop-shadow(0 0 12px #00e5ff)}
.abv2-input-shell .abv2-file{background:linear-gradient(120deg,#082a49f5,#031020f7);backdrop-filter:blur(10px);box-shadow:inset 0 1px #66dfff68,0 0 16px #026dff3f}
.abv2-input-shell .abv2-commands .abv2-btn{min-height:60px;font-size:clamp(14px,1.4vw,20px);border-radius:22px}
.abv2-visual{background:
 url("assets/artboard-v2/scan-hud.svg") center/100% 100% no-repeat,
 url("assets/artboard-v2/energy-waves.svg") center bottom/120% 65% no-repeat,
 radial-gradient(ellipse at 50% 54%,#057de960,transparent 65%),#020c1c}
.abv2-art-canvas{background:
 url("assets/artboard-v2/scan-hud.svg") center/100% 100% no-repeat,
 url("assets/artboard-v2/holo-platform.svg") center bottom/90% auto no-repeat,
 radial-gradient(ellipse at 50% 40%,#085bb950,transparent 70%),#020c1c}
.abv2-art-canvas.validation-overlay{background-color:#031926}
.abv2-export-arts>div{background:
 url("assets/artboard-v2/holo-platform.svg") center bottom/100% auto no-repeat,
 radial-gradient(ellipse at 50% 48%,#0058cc42,transparent 70%),#041a36}
.abv2-art-canvas img,.abv2-visual img{filter:drop-shadow(0 0 16px #00d5ff40)}
.abv2-card{box-shadow:inset 0 1px #c0ffff30,inset 0 0 26px #008fff19,0 0 24px #007dff2d}
@media (max-width:1340px){.abv2-input-shell{width:min(100%,730px)}.abv2-input-shell::before,.abv2-input-shell::after{opacity:.85;width:180px}.abv2-input-shell::before{right:calc(100% - 18px)}.abv2-input-shell::after{left:calc(100% - 18px)}}
@media (max-width:1120px){.abv2-input-shell{width:min(100%,780px)}.abv2-input-shell::before,.abv2-input-shell::after{opacity:.19;width:170px;top:125px;filter:drop-shadow(0 0 10px #009dff75)}.abv2-input-shell::before{right:calc(100% - 75px)}.abv2-input-shell::after{left:calc(100% - 75px)}}
@media (max-width:820px){.abv2-input-shell::before,.abv2-input-shell::after{display:none}.abv2-input-shell{padding-bottom:65px}.abv2:has(.abv2-input-shell)::after{left:4%;right:4%;bottom:-30px;height:120px}.abv2:has(.abv2-input-shell) .abv2-header img{width:54px;height:54px}}
@media (prefers-reduced-motion:reduce){.abv2:has(.abv2-input-shell)::after{filter:none}}
