@charset "UTF-8";
:root{--ink:#25213d;--muted:#77748e;--purple:#39245d;--purple-2:#6f48ae;--pink:#f36bb6;--pink-light:#ffe0f0;--cyan:#9ee6e7;--yellow:#ffd576;--cream:#fffaf4;--paper:#fff;--line:#eee6f4;--green:#28765d;--red:#b33a58;--shadow:0 16px 44px rgba(54,34,86,.09);--shadow-lg:0 26px 65px rgba(49,31,79,.14);--radius:24px;--font:ui-rounded,"Trebuchet MS",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffdfb;color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #8b73da;outline-offset:3px}::selection{background:#ffd1eb;color:#39245d}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.top-strip{background:var(--purple);color:#fff;padding:8px 16px;text-align:center;font-size:11px;letter-spacing:.065em;text-transform:uppercase}.top-strip span{color:var(--yellow);margin:0 8px}.site-header{position:sticky;z-index:30;top:0;background:rgba(255,253,251,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(234,224,242,.8)}.header-inner{width:min(1240px,calc(100% - 48px));margin:auto;min-height:88px;display:flex;align-items:center;gap:28px}.brand-lockup{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto}.brand-logo{width:57px;height:57px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(55,34,80,.11))}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font-size:20px;letter-spacing:.06em;font-weight:950;color:var(--purple)}.brand-copy small{margin-top:6px;font-size:9px;letter-spacing:.22em;font-weight:850;color:var(--muted)}.brand-copy b{color:var(--pink);font-size:12px;margin-left:3px}.main-nav{margin-left:auto;display:flex;align-items:center;gap:27px}.main-nav a{font-size:12px;font-weight:780;white-space:nowrap;color:#666078;transition:color .2s}.main-nav a:hover,.main-nav a.active{color:var(--purple)}.main-nav a.active{position:relative}.main-nav a.active:after{content:"";height:3px;position:absolute;bottom:-12px;left:0;right:0;border-radius:9px;background:linear-gradient(90deg,var(--pink),#a47be5)}.nav-spark{color:var(--pink)}.header-actions{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:750}.icon-link{display:flex;align-items:center;gap:4px;font-size:18px}.cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;background:var(--pink-light);color:var(--purple);border-radius:50%;font-size:10px}.account-link{white-space:nowrap;color:#625b75}.admin-chip{font-size:10px;color:#fff;background:var(--purple);border-radius:10px;padding:7px 10px}.menu-toggle{display:none;border:0;background:#f5eafa;color:var(--purple);width:40px;height:40px;border-radius:13px;font-size:19px}.main-content{overflow:hidden}.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:48px;padding:0 20px;border:1px solid transparent;border-radius:14px;font-size:12px;font-weight:850;letter-spacing:.01em;transition:transform .2s,box-shadow .2s,background .2s;cursor:pointer}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(57,36,93,.12)}.btn:disabled{opacity:.52;cursor:not-allowed;transform:none;box-shadow:none}.btn.primary{background:linear-gradient(105deg,#4e2e7d,#7d51b9);color:#fff;box-shadow:0 9px 19px rgba(71,43,111,.17)}.btn.primary:hover{background:linear-gradient(105deg,#39215c,#6f48aa)}.btn.outline{border-color:#d9c9e7;background:rgba(255,255,255,.76);color:var(--purple)}.btn.ghost{border-color:#e7dced;background:#fff;color:var(--ink)}.btn.light{background:#fff;color:var(--purple)}.btn.dark{background:var(--purple);color:#fff}.btn.full{width:100%}.btn.small-btn{min-height:38px;padding:0 13px;font-size:11px}.notice{padding:14px 17px;border-radius:14px;margin:18px auto;max-width:1240px;font-size:13px}.notice.success{color:#1a684d;background:#e2f7ed;border:1px solid #bce9d6}.notice.error{color:#8e2844;background:#fff0f3;border:1px solid #ffd1dc}.notice.info{color:#574181;background:#f3edff;border:1px solid #dfd0fa}.muted{color:var(--muted)}.tiny{font-size:11px}.eyebrow{margin:0 0 11px;font-size:10px;font-weight:950;letter-spacing:.2em;color:var(--purple-2);text-transform:uppercase}.hero{max-width:1440px;min-height:590px;margin:auto;position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;padding:65px max(36px,calc((100vw - 1200px)/2)) 64px;gap:24px;background:radial-gradient(ellipse at 83% 28%,rgba(159,227,233,.57),transparent 31%),radial-gradient(ellipse at 70% 83%,rgba(255,202,227,.5),transparent 36%),linear-gradient(118deg,#fffaf6 0%,#fff7fb 48%,#faf7ff 100%)}.hero-copy{position:relative;z-index:2;max-width:570px}.eyebrow-dot{display:inline-block;width:7px;height:7px;background:var(--pink);border-radius:50%;margin-right:8px;box-shadow:0 0 0 5px #ffe0f0}.hero h1,.page-hero h1,.page-title-block h1,.auth-side h1,.success-order h1{font-size:clamp(42px,5.2vw,70px);line-height:1.06;letter-spacing:-.055em;font-weight:950;margin:0;color:#292143}.hero h1 em,.page-hero h1 em,.page-title-block h1 em,.auth-side h1 em,.success-order h1 em,.detail-copy h1 em,.builder-banner h2 em,.account-welcome h2 em{font-style:normal;color:#8c5ac6;position:relative}.hero h1 em:after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:1px;height:15px;transform:rotate(-1.5deg);border-radius:50%;background:#ffcee7}.hero-lede{font-size:15px;line-height:1.8;color:#716b83;max-width:455px;margin:23px 0 27px}.hero-actions{display:flex;flex-wrap:wrap;gap:11px}.hero-proof{display:flex;gap:20px;flex-wrap:wrap;margin-top:31px;color:#706983;font-size:10px;font-weight:750}.hero-proof span::first-letter{color:var(--pink)}.hero-art{min-height:445px;display:grid;place-items:center;position:relative}.hero-logo{width:min(340px,68%);position:relative;z-index:2;filter:drop-shadow(0 22px 25px rgba(64,36,97,.2));transform:rotate(3deg)}.orbit{position:absolute;width:360px;height:360px;max-width:93%;border:1px dashed rgba(128,84,165,.38);border-radius:50%}.orbit-one{transform:rotate(-19deg) scaleX(1.17)}.orbit-two{width:430px;height:260px;border-color:rgba(238,107,177,.5);transform:rotate(34deg)}.hero-caption{position:absolute;z-index:3;bottom:24px;right:1%;display:flex;align-items:center;gap:12px;padding:13px 20px;border:1px solid #fff;background:rgba(255,255,255,.89);box-shadow:var(--shadow);border-radius:18px;transform:rotate(-3deg)}.caption-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#ffe3ef;color:#9f4f89;font-size:23px}.hero-caption strong,.hero-caption small{display:block}.hero-caption strong{font-size:12px}.hero-caption small{margin-top:3px;font-size:9px;color:var(--muted)}.floating-sticker{position:absolute;z-index:3;display:grid;place-items:center;box-shadow:0 10px 20px #7c5ba626}.sticker-star{right:9%;top:18%;width:55px;height:55px;background:var(--yellow);border:4px solid #fff;border-radius:19px;color:#8d56b2;font-size:30px;transform:rotate(13deg)}.sticker-heart{bottom:22%;left:9%;width:48px;height:48px;background:#ffb8d9;border:4px solid #fff;border-radius:16px;color:#fff;font-size:24px;transform:rotate(-13deg)}.hero-deco{position:absolute;color:#b7e8e8;font-size:42px}.deco-a{top:42px;left:47%}.deco-b{bottom:32px;right:49%;color:#ff9ecf}.trust-row{width:min(1140px,calc(100% - 52px));margin:-1px auto 0;padding:25px 28px;background:#fff;border:1px solid #f1e8f5;border-radius:19px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative;z-index:2;box-shadow:0 12px 35px rgba(49,31,79,.04)}.trust-row>div{display:flex;align-items:center;gap:13px}.trust-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:14px;color:#8353aa;background:#f7e8fa;font-size:21px}.trust-row>div:nth-child(2) .trust-icon{background:#ffe7f2;color:#d8559e}.trust-row>div:nth-child(3) .trust-icon{background:#dff7f5;color:#287f87}.trust-row>div:nth-child(4) .trust-icon{background:#fff3d8;color:#b87f28}.trust-row p{margin:0}.trust-row strong,.trust-row small{display:block}.trust-row strong{font-size:12px}.trust-row small{font-size:10px;color:var(--muted);margin-top:2px}.section-block{width:min(1160px,calc(100% - 52px));margin:91px auto}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:29px}.section-heading h2,.shop-toolbar h2{font-size:clamp(26px,3vw,37px);letter-spacing:-.04em;line-height:1.1;margin:0;color:var(--ink)}.section-heading>div>p:not(.eyebrow),.shop-toolbar p{color:var(--muted);font-size:12px;margin:11px 0 0}.heading-star{color:var(--pink);font-size:.75em}.text-link{font-size:11px;color:var(--purple);font-weight:850;white-space:nowrap;border-bottom:1px solid #c7aedf;padding-bottom:5px}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.category-tile{position:relative;min-height:235px;padding:25px;border-radius:22px;overflow:hidden;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column;align-items:flex-start}.category-tile:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.tile-pink{background:linear-gradient(135deg,#ffe1ee,#fff1f7)}.tile-blue{background:linear-gradient(135deg,#dff8f7,#efffff)}.tile-yellow{background:linear-gradient(135deg,#fff0c6,#fffae8)}.category-emoji{align-self:flex-end;margin-bottom:5px;font-size:56px;filter:drop-shadow(0 7px 6px #6f485c16)}.tile-kicker{font-size:9px;letter-spacing:.17em;font-weight:900;color:#8b659f;margin-top:-12px}.category-tile strong{font-size:24px;letter-spacing:-.035em;margin:7px 0}.category-tile small{font-size:11px;color:#70677f}.category-tile small b{color:var(--purple);padding-left:5px}.featured-section{margin-top:100px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.product-card{overflow:hidden;background:#fff;border:1px solid #f0e8f3;border-radius:20px;transition:transform .22s,box-shadow .22s}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.product-photo{display:block;position:relative;background:linear-gradient(135deg,#fff0f6,#edfafa);overflow:hidden;aspect-ratio:1/1}.product-image{width:100%;height:100%;object-fit:cover}.product-photo .product-image{transition:transform .4s}.product-card:hover .product-photo .product-image{transform:scale(1.04)}.product-tag{position:absolute;top:12px;left:12px;border-radius:9px;padding:6px 9px;background:rgba(255,255,255,.91);font-size:9px;color:#765292;font-weight:850}.product-info{padding:16px 17px 17px}.product-overline{margin:0 0 5px;font-size:8px;color:#a29aad;font-weight:900;letter-spacing:.15em}.product-info h3{font-size:14px;line-height:1.3;margin:0 0 7px}.product-desc{font-size:10px;color:#888299;line-height:1.55;min-height:32px;margin:0}.product-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid #f0e9f4}.product-bottom strong{font-size:15px;color:var(--purple)}.round-arrow{display:grid;place-items:center;width:29px;height:29px;background:#f6eafa;color:var(--purple);border-radius:50%;font-size:14px;font-weight:900}.builder-banner{position:relative;width:min(1160px,calc(100% - 52px));margin:98px auto 88px;min-height:345px;border-radius:28px;overflow:hidden;background:linear-gradient(112deg,#e4faf7 0%,#e9e6ff 48%,#ffe0ef 100%);display:flex;align-items:center;padding:55px 8%;}.builder-banner:after{content:"";position:absolute;right:-110px;top:-170px;width:520px;height:520px;border:1px solid #fff9;border-radius:50%;box-shadow:0 0 0 35px #ffffff25,0 0 0 70px #ffffff1d}.builder-banner-copy{max-width:490px;position:relative;z-index:2}.builder-banner h2{font-size:clamp(32px,4.5vw,50px);line-height:1.04;letter-spacing:-.05em;margin:0}.builder-banner-copy>p:not(.eyebrow){max-width:430px;font-size:12px;color:#6c6880;line-height:1.8;margin:16px 0 22px}.banner-blob{position:absolute;right:13%;top:50%;transform:translateY(-50%) rotate(-8deg);display:grid;place-items:center;width:210px;height:210px;border-radius:48% 52% 38% 62%;background:rgba(255,255,255,.7);font-size:108px;box-shadow:inset 0 0 0 12px #fff8,0 20px 35px #8e6ab022}.banner-decoration span{position:absolute;z-index:1;font-size:27px;color:#fff}.banner-decoration span:nth-child(1){top:33px;right:33%}.banner-decoration span:nth-child(2){bottom:29px;right:23%;color:#d95da3}.banner-decoration span:nth-child(3){top:60%;right:5%;color:#8e6ac4}.banner-decoration span:nth-child(4){top:38px;right:8%;color:#65b8bc}.mini-newsletter{width:min(1160px,calc(100% - 52px));margin:0 auto 92px;display:flex;align-items:center;gap:21px;padding:26px 30px;border:1px solid #f0e4f3;border-radius:22px;background:#fff}.newsletter-icon{display:grid;place-items:center;width:55px;height:55px;border-radius:17px;color:#b85092;background:#ffe1ef;font-size:25px;flex:0 0 auto}.mini-newsletter>div:nth-child(2){flex:1}.mini-newsletter h2{font-size:21px;margin:0;letter-spacing:-.035em}.mini-newsletter p:not(.eyebrow){font-size:11px;color:var(--muted);margin:4px 0 0}.footer-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:52px max(28px,calc((100vw - 1160px)/2));background:linear-gradient(100deg,#f3e7ff,#ffe8f3 52%,#e3f8f7);position:relative}.footer-cta h2{font-size:clamp(28px,3.8vw,42px);line-height:1.1;letter-spacing:-.045em;margin:0}.footer-cta h2 span{color:#dc5ca7}.footer-cta p:not(.eyebrow){color:#756b86;font-size:12px;margin:10px 0 0}.site-footer{background:#24183f;color:#fff;padding:42px max(28px,calc((100vw - 1160px)/2)) 22px;display:grid;grid-template-columns:1fr 1.3fr auto;gap:25px;align-items:center}.footer-brand{display:flex;align-items:center;gap:12px}.footer-logo{width:60px;height:60px;object-fit:contain}.footer-brand strong{font-size:13px;letter-spacing:.07em}.footer-brand p{font-size:10px;color:#d3c5e7;margin:4px 0 0}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.footer-links a,.footer-social{font-size:10px;color:#e1d7ec}.footer-links a:hover,.footer-social a:hover{color:#ffc7e4}.footer-social{display:flex;gap:14px;white-space:nowrap}.copyright{grid-column:1/-1;margin:10px 0 0;padding-top:17px;border-top:1px solid #ffffff26;font-size:9px;color:#b9adce;text-align:center}
/* General inner pages */
.page-hero{width:100%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;padding:55px max(28px,calc((100vw - 1160px)/2));min-height:310px;background:linear-gradient(110deg,#fff1f7,#f2f4ff 52%,#e2faf6)}.page-hero h1{font-size:clamp(38px,5vw,58px)}.page-hero>div:first-child>p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:480px;line-height:1.8}.page-hero-art{font-size:125px;color:#f9b9d9;margin-right:7%;transform:rotate(-12deg);text-shadow:5px 9px 0 #c8f0ef}.page-hero-art span{font-size:47px;color:#8f75cf;position:absolute;top:5px;left:0}.shop-block{margin-top:57px}.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.shop-toolbar h2{font-size:27px}.count-pill{font-size:10px;display:inline-grid;place-items:center;min-width:25px;height:25px;border-radius:10px;background:#f5e5fa;color:var(--purple);vertical-align:middle;padding:0 7px}.search-form{display:flex;align-items:center;border:1px solid #e8ddec;border-radius:13px;background:#fff;overflow:hidden;min-width:260px}.search-form input{width:100%;border:0;outline:0;padding:12px 13px;font-size:11px;background:transparent}.search-form button{border:0;background:transparent;color:var(--purple);font-size:22px;padding:0 14px}.empty-state{width:min(620px,calc(100% - 36px));margin:65px auto;text-align:center;padding:44px 25px;background:#fff;border:1px solid var(--line);border-radius:25px;box-shadow:var(--shadow)}.empty-state>div{font-size:48px;color:#c47ebc}.empty-state h1,.empty-state h2{margin:9px 0;font-size:25px}.empty-state p{color:var(--muted);font-size:12px;margin:0 0 23px}.inline-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.breadcrumbs{width:min(1160px,calc(100% - 52px));margin:25px auto;color:#9991a9;font-size:10px}.breadcrumbs a{color:var(--purple)}.product-detail{width:min(1100px,calc(100% - 52px));margin:18px auto 95px;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.detail-photo{position:relative;aspect-ratio:1/1;background:linear-gradient(135deg,#fff1f8,#e3f8f6);border-radius:28px;padding:14px;box-shadow:var(--shadow)}.detail-image{width:100%;height:100%;object-fit:contain;border-radius:20px}.photo-note{position:absolute;left:27px;bottom:27px;padding:10px 13px;background:#fff;box-shadow:var(--shadow);border-radius:11px;font-size:10px;color:#8b5da9}.detail-copy h1{font-size:clamp(34px,4vw,48px);line-height:1.05;letter-spacing:-.04em;margin:0}.detail-price{font-size:28px;font-weight:900;color:var(--purple);margin:17px 0 8px}.detail-description{font-size:13px;color:var(--muted);line-height:1.8;white-space:normal}.detail-pills{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 28px}.detail-pills span{border-radius:9px;padding:7px 10px;background:#f7edf9;color:#8355a5;font-size:10px;font-weight:750}.add-product-form>label{display:block;font-size:11px;font-weight:800;margin-bottom:9px}.qty-row{display:flex;gap:10px}.qty-row input{width:78px;border:1px solid #e4d7eb;border-radius:12px;padding:10px;text-align:center}.qty-row .btn{flex:1}.back-link{display:inline-block;margin-top:20px;font-size:11px;font-weight:800;color:#7b63a4}.page-title-block{text-align:center;padding:64px 20px 39px;background:radial-gradient(ellipse at 50% 0%,#ffe4f1,transparent 62%)}.page-title-block h1{font-size:clamp(37px,4.5vw,54px)}.page-title-block>p:not(.eyebrow){font-size:12px;color:var(--muted);margin:14px auto 0;max-width:540px}.cart-layout{width:min(1110px,calc(100% - 52px));margin:30px auto 95px;display:grid;grid-template-columns:1.4fr .8fr;gap:38px;align-items:start}.cart-items{background:#fff;border:1px solid var(--line);border-radius:20px;padding:9px 22px}.cart-row{display:flex;align-items:flex-start;gap:17px;padding:20px 0;border-bottom:1px solid #f1eaf3}.cart-row:last-of-type{border-bottom:0}.cart-thumb{width:100px;height:100px;flex:0 0 auto;border-radius:15px;overflow:hidden;background:#f8eafa}.cart-thumb .product-image{object-fit:cover}.custom-thumb{display:grid;place-items:center;background:linear-gradient(135deg,#dcf8f6,#ffe2f1);font-size:37px}.cart-row-copy{flex:1;min-width:0}.cart-row-copy h3{font-size:14px;margin:3px 0 5px}.cart-row-copy>.muted{font-size:10px;margin:0}.cart-config{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.cart-config span{border-radius:6px;padding:4px 6px;background:#f6edf9;font-size:9px;color:#745691}.cart-row-price{font-size:14px;white-space:nowrap}.remove-link{border:0;background:transparent;padding:0;color:#af6685;font-size:10px;font-weight:800;margin-top:8px}.error-text{font-size:10px;color:var(--red)}.cart-summary{position:sticky;top:112px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:27px;box-shadow:0 8px 27px rgba(56,36,85,.04)}.cart-summary h2{margin:0 0 22px;font-size:24px;letter-spacing:-.04em}.summary-line{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:13px 0;color:#716a80;font-size:11px}.summary-line b{color:var(--ink)}.summary-total{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px dashed #e4d8eb;margin-top:19px;padding-top:19px}.summary-total span{font-size:12px;font-weight:800}.summary-total strong{font-size:21px;color:var(--purple)}.summary-small{font-size:9px;line-height:1.65;color:#928ba0;margin:14px 0}.secure-note{font-size:9px;line-height:1.6;color:#7a6a94;margin-top:16px;padding:10px;background:#f8f1fb;border-radius:10px}.builder-page-hero{min-height:330px;background:radial-gradient(ellipse at 82% 10%,#ffdeee,transparent 30%),linear-gradient(115deg,#e9fbf9,#f0e8ff 50%,#fff4df)}.builder-steps{display:flex;gap:20px;flex-wrap:wrap;margin-top:25px}.builder-steps span{font-size:10px;color:#6d6681;font-weight:800}.builder-steps b{display:inline-grid;place-items:center;width:25px;height:25px;background:#fff;border-radius:50%;color:var(--purple);margin-right:6px;box-shadow:0 3px 7px #6d4c9917}.builder-hero-illustration{width:240px;height:220px;border-radius:38% 62% 52% 48%;position:relative;margin-right:8%;background:rgba(255,255,255,.64);transform:rotate(5deg);border:9px solid #fff8;box-shadow:0 22px 44px #8666b123}.rope-loop{position:absolute;left:67px;top:35px;width:93px;height:111px;border:18px solid #6f47a4;border-right-color:#ee71be;border-bottom-color:#57bfc5;border-radius:48% 52% 43% 57%;transform:rotate(18deg)}.rope-charm,.rope-heart{position:absolute;z-index:2;display:grid;place-items:center;width:48px;height:48px;border:5px solid #fff;border-radius:15px;box-shadow:0 6px 14px #6c4c8b33}.rope-charm{top:20px;right:23px;background:#ffd778;color:#9954aa;font-size:30px;transform:rotate(10deg)}.rope-heart{bottom:31px;left:24px;background:#ffacd6;color:#fff;font-size:25px;transform:rotate(-14deg)}.rope-bit{position:absolute;bottom:38px;right:35px;width:28px;height:54px;border-radius:14px;background:repeating-linear-gradient(180deg,#fff 0 6px,#4f376c 6px 11px);transform:rotate(35deg);border:3px solid #fff}.rope-caption{position:absolute;right:21px;bottom:16px;font-size:9px;font-weight:900;color:#9478af;transform:rotate(-5deg)}.builder-workspace{width:min(1200px,calc(100% - 44px));margin:45px auto 100px}.builder-form{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.builder-main{min-width:0}.builder-section{background:#fff;border:1px solid #eee5f3;border-radius:22px;padding:25px;margin-bottom:20px}.builder-section-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:21px}.step-number{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:14px;color:var(--purple);background:linear-gradient(135deg,#ffe0f0,#e8e3ff);font-size:13px;font-weight:950}.builder-section-title .eyebrow{margin-bottom:5px}.builder-section-title h2{font-size:21px;letter-spacing:-.035em;margin:0;line-height:1.2}.builder-section-title p:not(.eyebrow){font-size:10px;color:var(--muted);margin:6px 0 0}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.choice-card{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #eee5f3;border-radius:15px;background:#fff;cursor:pointer;position:relative;min-width:0;transition:border .2s,background .2s,box-shadow .2s}.choice-card:has(input:checked){border-color:#a982d5;background:#fcf7ff;box-shadow:0 0 0 3px #e7d9f6}.choice-image{width:73px;height:73px;flex:0 0 auto;object-fit:cover;border-radius:11px;background:#f4edf8}.choice-details{display:flex;min-width:0;flex-direction:column;gap:3px;padding-right:17px}.choice-details strong{font-size:11px;line-height:1.3}.choice-details small{font-size:9px;line-height:1.4;color:var(--muted)}.choice-details b{font-size:10px;color:var(--purple);margin-top:4px}.choice-radio,.choice-check{position:absolute;right:12px;top:13px;accent-color:#7651a9;width:16px;height:16px}.color-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.color-choice{display:flex;flex-direction:column;align-items:stretch;padding:9px}.color-choice .choice-image{width:100%;height:105px}.color-choice .choice-details{padding-right:23px}.optional-tag{display:inline-block;vertical-align:middle;padding:4px 6px;background:#f5f0fa;color:#8d82a2;font-size:8px;border-radius:7px;letter-spacing:0;margin-left:5px}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.option-pick{display:flex;gap:12px;padding:11px;border:1px solid #eee6f2;border-radius:15px;background:#fff;min-width:0}.option-thumb{width:70px;height:70px;flex:0 0 auto;object-fit:cover;border-radius:11px;background:#f6edf9}.option-pick-info{min-width:0;flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.option-pick-info>strong{font-size:10px;line-height:1.4}.option-pick-info>small{font-size:9px;color:var(--purple);font-weight:850}.qty-label{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;margin-top:auto;font-size:9px;color:var(--muted)}.option-qty{width:53px;border:1px solid #e7d9ed;border-radius:8px;padding:5px;text-align:center;font-size:11px;color:var(--ink)}.design-summary{position:sticky;top:112px;border-radius:22px;border:1px solid #e7d9f0;background:#fff;padding:24px;box-shadow:0 12px 36px #55327d12}.summary-top{text-align:center}.summary-spark{display:grid;place-items:center;width:42px;height:42px;background:#ffe3f1;color:#b9599c;border-radius:14px;font-size:25px;margin:0 auto 15px}.summary-top .eyebrow{margin-bottom:4px}.summary-top h2{margin:0;font-size:25px;letter-spacing:-.04em}.summary-top>p:last-child{font-size:10px;color:var(--muted);margin:5px 0 0}.summary-preview{margin:22px 0 15px;padding:20px;border-radius:17px;background:linear-gradient(135deg,#f3e9ff,#e2fbf7);text-align:center}.preview-cord{height:77px;position:relative;display:flex;justify-content:center;align-items:center;gap:8px}.preview-cord span{display:block;width:20px;height:72px;background:repeating-linear-gradient(180deg,#8151ba 0 9px,#ffd1ea 9px 16px,#54b8bf 16px 22px);border:3px solid #fff;border-radius:12px;box-shadow:0 4px 8px #4d377b20;transform:rotate(22deg)}.preview-cord span:nth-child(2){transform:rotate(-15deg);background:repeating-linear-gradient(180deg,#ff8fc3 0 9px,#fff 9px 16px,#8255b8 16px 22px)}.preview-cord span:nth-child(3){transform:rotate(5deg)}.preview-cord i,.preview-cord b{font-style:normal;position:absolute;display:grid;place-items:center;width:24px;height:24px;border:3px solid #fff;border-radius:9px;font-size:12px}.preview-cord i{background:#ffd46e;color:#8d4e9e;top:3px;right:62px}.preview-cord b{background:#ffb5d9;color:#fff;bottom:0;left:61px}.summary-preview p{font-size:9px;color:#77698e;margin:13px 0 0;font-weight:800}.builder-selection-summary{min-height:49px;font-size:10px;color:#847b93}.builder-selection-summary p{margin:5px 0}.builder-selection-summary ul{list-style:none;padding:0;margin:6px 0}.builder-selection-summary li{display:flex;justify-content:space-between;gap:10px;margin:6px 0;border-bottom:1px dashed #f0e7f4;padding-bottom:5px}.builder-selection-summary li span:last-child{white-space:nowrap;font-weight:850;color:var(--ink)}.design-summary .summary-total{margin-top:13px}.design-summary .summary-total strong{font-size:24px}.design-summary .btn{margin-top:9px}.secure-note{font-size:9px;line-height:1.6;color:#7a6a94;margin-top:16px;padding:10px;background:#f8f1fb;border-radius:10px}.design-summary .secure-note{text-align:center}.form-grid{display:grid;gap:14px}.form-grid label,.checkout-form>label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800;color:#4f4862}.form-grid label small,.checkout-form label small{font-size:9px;font-weight:500;color:var(--muted)}.form-grid input:not([type=checkbox]):not([type=file]),.form-grid textarea,.form-grid select,.checkout-form input,.checkout-form textarea,.auth-card input,.settings-form input,.settings-form textarea,.settings-form select{width:100%;border:1px solid #e5d9ec;border-radius:11px;background:#fff;padding:12px 13px;color:var(--ink);outline:none;font-size:12px;min-width:0}.form-grid textarea,.checkout-form textarea{resize:vertical}.form-grid input:focus,.form-grid textarea:focus,.checkout-form input:focus,.checkout-form textarea:focus{border-color:#9a76c3;box-shadow:0 0 0 3px #f2e8fa}.form-grid input[disabled]{background:#f8f4f9;color:#82768f}.consent-check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:9px!important;font-size:10px!important;font-weight:500!important;line-height:1.5}.consent-check input{width:16px!important;height:16px;flex:0 0 auto;accent-color:#7549aa;margin-top:1px}.consent-check a{color:var(--purple);font-weight:850;text-decoration:underline}.auth-layout{width:min(1040px,calc(100% - 48px));margin:55px auto 95px;display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:stretch}.auth-side{position:relative;overflow:hidden;border-radius:25px;padding:50px 40px;background:linear-gradient(145deg,#d8f7f3,#eae3ff 56%,#ffe2f1);display:flex;flex-direction:column;justify-content:center;min-height:530px}.auth-side:after{content:"";position:absolute;right:-100px;bottom:-130px;width:340px;height:340px;border-radius:50%;border:1px solid #ffffffbb;box-shadow:0 0 0 25px #fff4,0 0 0 55px #fff3}.auth-side h1{font-size:clamp(38px,4.5vw,54px);position:relative;z-index:1}.auth-side>p:not(.eyebrow){position:relative;z-index:1;max-width:330px;color:#716981;font-size:12px;line-height:1.8}.auth-sticker{position:absolute;right:38px;top:37px;display:grid;place-items:center;width:58px;height:58px;border:5px solid #fff;border-radius:18px;background:#ffb9dc;color:#fff;font-size:31px;transform:rotate(12deg)}.auth-side-note{font-size:10px;font-weight:850;color:#79549c;margin-top:40px}.auth-card{background:#fff;border:1px solid var(--line);border-radius:25px;padding:39px 37px;box-shadow:var(--shadow)}.auth-card h2{font-size:27px;letter-spacing:-.04em;margin:0}.auth-card>p:not(.eyebrow){font-size:11px;color:var(--muted);margin:9px 0 23px}.auth-switch{font-size:11px!important;text-align:center;margin:20px 0 0!important}.auth-switch a{font-weight:850;color:var(--purple)}.auth-security{margin-top:20px;padding:11px;background:#f7f1fa;border-radius:11px;text-align:center;font-size:9px;color:#77678d}.account-layout{width:min(1120px,calc(100% - 52px));margin:24px auto 95px;display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:start}.account-main{display:grid;gap:22px}.panel-card{padding:25px;background:#fff;border:1px solid var(--line);border-radius:20px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:21px}.panel-heading .eyebrow{margin-bottom:4px}.panel-heading h2,.panel-heading h3{margin:0;font-size:21px;letter-spacing:-.03em}.panel-heading h3{font-size:16px}.panel-icon{display:grid;place-items:center;width:39px;height:39px;flex:0 0 auto;border-radius:13px;background:#f7e5f8;color:#a35fae;font-size:22px}.account-side{display:grid;gap:18px}.account-welcome{position:relative;overflow:hidden;padding:26px;border-radius:21px;background:linear-gradient(145deg,#e1f8f5,#eae0ff 60%,#ffe2f1)}.account-welcome-icon{font-size:29px}.account-welcome .eyebrow{margin:12px 0 6px}.account-welcome h2{font-size:31px;letter-spacing:-.045em;line-height:1.12;margin:0 0 22px}.account-welcome .btn{min-height:40px;font-size:10px}.recent-orders .panel-heading{align-items:center}.recent-orders .panel-heading .text-link{font-size:9px}.recent-order{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid #f2eaf5}.recent-order>div{display:flex;flex-direction:column;gap:4px}.recent-order strong{font-size:11px}.recent-order small{font-size:9px;color:var(--muted)}.recent-order>div:last-child{align-items:flex-end}.recent-order b{font-size:12px}.status-pill{display:inline-block;width:max-content;max-width:100%;border-radius:7px;padding:4px 7px;background:#f1eafa;color:#6e4f9c;font-size:8px;font-weight:850}.logout-form{margin:0}.orders-list{width:min(920px,calc(100% - 48px));margin:20px auto 90px}.order-card{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:21px 24px;margin-bottom:13px;background:#fff;border:1px solid var(--line);border-radius:18px}.order-main{display:flex;flex-direction:column;gap:7px}.order-id{font-size:13px;font-weight:950;color:var(--purple)}.order-main small{font-size:10px;color:var(--muted)}.order-value{text-align:right}.order-value>strong{font-size:18px;color:var(--purple)}details summary{cursor:pointer;color:#8060a2;font-weight:850;font-size:10px;margin-top:10px}details ul{font-size:10px;text-align:left;padding-left:18px}.checkout-layout{width:min(1050px,calc(100% - 48px));margin:26px auto 95px;display:grid;grid-template-columns:1.05fr .95fr;gap:25px;align-items:start}.checkout-form h2{font-size:23px;margin:0 0 19px}.checkout-form{display:grid;gap:16px}.checkout-form label{display:flex;flex-direction:column;gap:7px}.checkout-note{border-radius:11px;background:#f8f1fb;color:#726483;padding:12px;font-size:10px;line-height:1.7}.checkout-item{display:flex;justify-content:space-between;gap:13px;padding:13px 0;border-bottom:1px solid #f1eaf5;font-size:11px}.checkout-item>div{display:flex;flex-direction:column;gap:5px}.checkout-item strong{font-size:11px}.checkout-item small{font-size:9px;color:var(--muted);line-height:1.6}.checkout-item>b{white-space:nowrap;color:var(--purple)}.checkout-summary{position:static}.success-order{width:min(650px,calc(100% - 36px));margin:62px auto 95px;text-align:center}.success-orbit{margin:0 auto 22px;width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#d7faf2,#edddff);display:grid;place-items:center;font-size:38px;color:#4f8a7a;border:8px solid #fff;box-shadow:0 12px 30px #69508021}.success-order h1{font-size:clamp(35px,4.5vw,51px)}.success-order>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.8;max-width:500px;margin:16px auto 25px}.order-ticket{max-width:370px;margin:25px auto;padding:25px;border-radius:20px;border:1px dashed #cbb5de;background:#fff}.order-ticket>span{display:block;font-size:9px;letter-spacing:.16em;color:var(--muted);font-weight:850}.order-ticket>strong{display:block;font-size:25px;color:var(--purple);letter-spacing:.05em;margin:7px 0 21px}.order-ticket>div{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid #eee5f4;font-size:11px}.order-ticket>div b{font-size:17px;color:var(--purple)}.order-ticket>small{display:block;color:var(--muted);font-size:9px;margin-top:12px}.whatsapp-btn{background:#24865a;color:#fff}.success-order>.btn{margin:5px}.legal-page{width:min(800px,calc(100% - 40px));margin:45px auto 95px}.legal-page>h1{font-size:clamp(34px,4vw,49px);letter-spacing:-.05em;line-height:1.1;margin:0 0 15px}.legal-page h2{font-size:18px;margin:27px 0 6px}.legal-page p{font-size:12px;line-height:1.9;color:#625a75}.legal-updated{font-size:10px!important;color:#9990a5!important}.legal-callout{background:#fff4d9;border:1px solid #f7e1a8;color:#7f6728;border-radius:13px;padding:15px 18px;font-size:11px;line-height:1.7;margin:23px 0}.legal-contact{background:#f8f1fb;border-radius:12px;padding:15px}
/* Admin */
.admin-body{background:#f9f7fc;min-height:100vh}.admin-topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - 1400px)/2))}.admin-topbar .brand-logo{width:46px;height:46px}.admin-topbar .brand-copy strong{font-size:16px}.admin-topbar .brand-copy small{font-size:8px}.admin-topbar>div{display:flex;gap:22px;align-items:center}.admin-top-link{font-size:11px;color:var(--purple);font-weight:850}.admin-top-user{font-size:10px;color:#69617d}.admin-top-user:first-letter{color:#40a17b}.admin-shell{width:min(1440px,100%);margin:0 auto;display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 118px)}.admin-sidebar{padding:32px 18px;border-right:1px solid #ece5f2;background:#fff;display:flex;flex-direction:column;gap:20px}.admin-sidebar .eyebrow{padding:0 10px;font-size:8px}.admin-sidebar nav{display:grid;gap:5px}.admin-sidebar nav a{display:block;padding:13px 12px;border-radius:12px;font-size:11px;color:#726881;font-weight:800;transition:background .2s,color .2s}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{color:var(--purple);background:#f4eafa}.admin-side-note{background:linear-gradient(135deg,#f8e8f5,#e7f8f6);border-radius:14px;padding:15px;font-size:10px;color:#77678e;line-height:1.7;margin-top:auto}.logout-admin{background:transparent;border:1px solid #e9ddec;color:#927a9b;padding:10px;border-radius:10px;font-size:10px;font-weight:850;width:100%}.admin-content{padding:33px;min-width:0}.admin-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.admin-page-heading h1{font-size:clamp(29px,3.5vw,39px);letter-spacing:-.05em;margin:0;line-height:1.1}.admin-page-heading h1 em{font-style:normal;color:#9f5bad}.admin-page-heading>div>p:not(.eyebrow){font-size:11px;color:var(--muted);margin:8px 0 0}.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:25px}.admin-stats article{position:relative;overflow:hidden;padding:21px;background:#fff;border:1px solid #eee6f3;border-radius:17px;min-height:132px}.admin-stats article>span{display:block;font-size:10px;color:var(--muted);font-weight:750}.admin-stats article>strong{display:block;font-size:27px;letter-spacing:-.04em;margin:12px 0 4px;color:var(--purple)}.admin-stats article>small{font-size:9px;color:#9990a6}.admin-stats article>i{position:absolute;right:16px;bottom:14px;display:grid;place-items:center;width:37px;height:37px;border-radius:13px;background:#f8e5f3;color:#ab5eac;font-size:19px;font-style:normal}.admin-stats article:nth-child(2)>i{background:#e0f8f6;color:#47999c}.admin-stats article:nth-child(3)>i{background:#fff1cf;color:#b8862f}.admin-stats article:nth-child(4)>i{background:#ebe4ff;color:#8262bf}.admin-panel{background:#fff;border:1px solid #eee6f3;border-radius:19px;padding:23px;margin-bottom:20px;min-width:0}.admin-panel-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:21px}.admin-panel-header .eyebrow{font-size:8px;margin-bottom:4px}.admin-panel-header h2{font-size:19px;margin:0;letter-spacing:-.035em}.admin-panel-header .count-pill{margin-left:5px}.table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;font-size:10px;white-space:nowrap}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:#968ca5;font-size:8px;padding:12px 13px;background:#fcf9fd}.admin-table td{padding:15px 13px;border-top:1px solid #f1eaf5;color:#625a73}.admin-table td strong{color:var(--purple)}.table-action{font-size:10px;color:#7d55a8;font-weight:850;white-space:nowrap}.admin-tip{display:flex;gap:14px;background:#fff6de;border:1px solid #f5e7b9;border-radius:15px;padding:18px;margin-top:19px;color:#78662b}.admin-tip>span{font-size:24px}.admin-tip strong{display:block;font-size:11px}.admin-tip p{font-size:10px;line-height:1.7;margin:5px 0 0}.admin-tip code{font-size:10px;background:#fff1bd;padding:2px 4px;border-radius:4px}.admin-two-col{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:18px;align-items:start}.admin-edit-panel{position:sticky;top:20px}.admin-form{gap:12px}.admin-form label{font-size:10px}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-form input:not([type=checkbox]):not([type=file]),.admin-form textarea,.admin-form select{padding:10px;font-size:11px}.upload-label input[type=file]{border:1px dashed #d6c3e2;border-radius:10px;padding:10px;background:#fcf9fd;font-size:10px}.check-row{display:flex;flex-direction:column;gap:9px}.check-row label,.inline-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;font-weight:750!important}.check-row input,.inline-check input{accent-color:#7a4ea7}.current-image{display:flex;align-items:center;gap:12px;font-size:9px;color:var(--muted)}.current-img{width:63px;height:63px;border-radius:10px;object-fit:cover}.admin-list-panel{min-width:0}.admin-product-list,.admin-option-list{display:grid;gap:0}.admin-product-row,.admin-option-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #f2ebf5;min-width:0}.admin-product-img,.admin-option-img{width:66px;height:66px;border-radius:12px;overflow:hidden;flex:0 0 auto;background:#f7ebfb}.admin-product-img .product-image,.admin-option-img .product-image{width:100%;height:100%;object-fit:cover}.admin-product-copy,.admin-option-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.admin-product-copy>strong,.admin-option-copy>strong{font-size:11px;overflow-wrap:anywhere}.admin-product-copy>span,.admin-option-copy>b{font-size:10px;color:var(--purple);font-weight:850}.admin-product-copy>small,.admin-option-copy>small{font-size:9px;color:var(--muted);line-height:1.45}.admin-product-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-end;flex:0 0 auto}.mini-danger{border:0;background:transparent;color:#b8576f;font-size:9px;font-weight:800;padding:0}.text-live{color:#2b8d69!important;font-size:9px}.text-off{color:#ad6376!important;font-size:9px}.option-admin-tabs,.order-filter-row{display:flex;gap:7px;overflow:auto;padding:4px 0 13px;margin-bottom:17px}.option-admin-tabs a,.order-filter-row a{padding:9px 12px;background:#fff;border:1px solid #ece3f2;border-radius:10px;color:#776984;font-size:10px;font-weight:800;white-space:nowrap}.option-admin-tabs a.active,.order-filter-row a.active{background:var(--purple);border-color:var(--purple);color:#fff}.option-type-label{font-size:8px!important;letter-spacing:.1em;text-transform:uppercase;color:#9c72ba!important}.empty-admin{text-align:center;padding:25px;color:var(--muted);font-size:11px}.empty-admin span{font-size:32px;color:#c99fcf}.admin-order-card{background:#fff;border:1px solid #eee6f3;border-radius:18px;margin-bottom:16px;overflow:hidden}.admin-order-head{display:flex;justify-content:space-between;gap:20px;padding:22px 24px;background:linear-gradient(100deg,#fff,#fff8fd)}.admin-order-head h3{font-size:16px;margin:6px 0 3px}.admin-order-head p,.admin-order-head small{font-size:10px;color:var(--muted);margin:4px 0}.admin-order-total{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.admin-order-total>span:first-child{font-size:8px;letter-spacing:.12em;color:#a49ab1;font-weight:900}.admin-order-total>strong{font-size:21px;color:var(--purple)}.admin-order-details{padding:20px 24px;border-top:1px solid #f1e9f4;font-size:10px}.admin-order-details>strong{font-size:10px;color:#746488}.admin-order-details p{line-height:1.65;color:#726983;margin:5px 0 15px}.admin-order-details ul{padding-left:18px;color:#6e657e;line-height:1.7}.admin-order-details li{margin:5px 0}.order-status-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;padding:16px 24px;border-top:1px solid #f1e9f4;background:#fdfaff}.order-status-form label{display:flex;flex-direction:column;gap:5px;color:#7e728f;font-size:9px;font-weight:800;min-width:180px}.order-status-form select{border:1px solid #e3d7eb;border-radius:9px;padding:9px;background:#fff;font-size:10px;color:var(--ink)}.settings-panel{max-width:760px}.settings-form{max-width:570px;gap:17px}.settings-form input,.settings-form textarea{font-size:11px}.settings-form label{font-size:10px}.security-tip{max-width:760px;background:#eaf8f5;border-color:#cfeee7;color:#377a71}.security-tip code{background:#d8f4ec}.admin-footer{padding:18px;text-align:center;color:#968ba7;font-size:9px;background:#fff;border-top:1px solid #eee6f3}.admin-footer span{color:var(--pink)}.install-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at top left,#ffe0f0,transparent 40%),radial-gradient(ellipse at bottom right,#d9faf6,transparent 40%),#f8f2fb;padding:25px}.install-card{width:min(500px,100%);border:1px solid #eee1f1;background:#fff;border-radius:25px;padding:32px;box-shadow:var(--shadow-lg)}.install-logo{width:100px;height:100px;object-fit:contain;margin:0 auto 10px}.install-card>h1{font-size:31px;text-align:center;margin:0 0 17px;letter-spacing:-.04em}.install-card>.eyebrow{text-align:center}.install-card>p{font-size:11px;line-height:1.7;color:var(--muted)}.install-card code{font-size:10px;background:#f5edf8;padding:2px 5px;border-radius:5px}.install-card .full{margin-top:10px}.install-card .notice{margin:8px 0 17px}.install-card .form-grid{margin-top:17px}
@media(max-width:1050px){.header-inner{gap:18px}.main-nav{gap:17px}.main-nav a{font-size:11px}.account-link{display:none}.hero{padding-left:35px;padding-right:35px}.hero-logo{width:min(300px,70%)}.trust-row{padding:22px;gap:14px}.trust-row>div{gap:8px}.trust-row strong{font-size:11px}.trust-row small{font-size:9px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.builder-form{grid-template-columns:minmax(0,1fr) 290px;gap:18px}.builder-section{padding:21px}.choice-image{width:62px;height:62px}.design-summary{padding:20px}.admin-content{padding:25px}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.header-inner{width:calc(100% - 30px);min-height:74px;gap:12px;flex-wrap:wrap}.brand-logo{width:47px;height:47px}.brand-copy strong{font-size:17px}.menu-toggle{display:block;margin-left:auto;order:2}.header-actions{order:3;margin-left:2px}.main-nav{display:none;order:4;width:100%;margin:0;padding:5px 0 16px;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{padding:12px;border-bottom:1px solid #f1e9f4}.main-nav a.active:after{display:none}.main-nav a.active{background:#f9effa;border-radius:10px}.site-header:has(.main-nav.open) .header-inner{padding-top:12px}.hero{grid-template-columns:1fr;min-height:auto;padding:57px 29px 47px;gap:10px}.hero-copy{max-width:none}.hero h1{font-size:clamp(43px,8vw,65px)}.hero-lede{font-size:13px;max-width:490px}.hero-art{min-height:320px;margin-top:4px}.hero-logo{width:min(265px,55%)}.orbit-one{width:280px;height:280px}.orbit-two{width:340px;height:205px}.hero-caption{bottom:5px;right:2%}.deco-a{left:auto;right:9%;top:32px}.deco-b{bottom:8px;right:auto;left:10%}.trust-row{width:calc(100% - 30px);grid-template-columns:repeat(2,1fr);margin-top:13px;padding:17px;gap:18px}.section-block{width:calc(100% - 34px);margin:66px auto}.section-heading{align-items:flex-start;flex-direction:column;gap:13px}.category-grid{grid-template-columns:1fr;gap:13px}.category-tile{min-height:190px}.category-emoji{font-size:50px}.category-tile strong{font-size:21px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-info{padding:12px}.product-info h3{font-size:12px}.product-desc{font-size:9px}.product-bottom strong{font-size:13px}.builder-banner{width:calc(100% - 34px);margin:67px auto;padding:37px 28px;min-height:330px}.banner-blob{right:7%;top:28%;width:132px;height:132px;font-size:62px}.builder-banner-copy{max-width:70%}.builder-banner h2{font-size:36px}.builder-banner-copy>p:not(.eyebrow){font-size:11px}.mini-newsletter{width:calc(100% - 34px);margin-bottom:65px;flex-wrap:wrap;padding:22px;gap:13px}.mini-newsletter>div:nth-child(2){width:calc(100% - 70px);flex:auto}.mini-newsletter>.btn{width:100%}.footer-cta{padding:34px 24px;flex-direction:column;align-items:flex-start}.site-footer{padding:32px 23px 20px;grid-template-columns:1fr;gap:20px}.footer-links{gap:13px}.copyright{grid-column:auto}.page-hero{padding:42px 24px;min-height:265px}.page-hero-art{font-size:90px;margin-right:0}.page-hero h1{font-size:43px}.shop-block{margin-top:38px}.shop-toolbar{align-items:flex-start;flex-direction:column}.search-form{width:100%;min-width:0}.product-detail{grid-template-columns:1fr;gap:27px;margin-bottom:65px}.detail-photo{max-height:500px}.detail-copy h1{font-size:39px}.cart-layout,.checkout-layout{grid-template-columns:1fr;gap:18px}.cart-summary{position:static}.cart-items{padding:8px 15px}.cart-thumb{width:78px;height:78px}.cart-row{gap:12px}.cart-row-price{font-size:12px}.builder-page-hero{align-items:flex-start}.builder-hero-illustration{position:absolute;right:-36px;bottom:-35px;width:170px;height:160px;opacity:.56}.builder-steps{gap:9px}.builder-steps span{font-size:9px}.builder-steps b{width:22px;height:22px}.builder-workspace{width:calc(100% - 28px);margin:25px auto 65px}.builder-form{grid-template-columns:1fr;gap:17px}.design-summary{position:static;order:-1;display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:18px}.summary-top{text-align:left}.summary-spark{margin:0 0 8px;width:33px;height:33px}.summary-top h2{font-size:20px}.summary-preview{grid-row:span 2;margin:0;padding:14px 6px}.builder-selection-summary{grid-column:1/-1;grid-row:auto}.design-summary .summary-total{grid-column:1/-1;margin-top:0}.design-summary .summary-small,.design-summary .btn,.design-summary .secure-note{grid-column:1/-1}.builder-section{padding:17px;margin-bottom:14px}.builder-section-title{gap:10px}.builder-section-title h2{font-size:18px}.step-number{width:35px;height:35px}.choice-grid{gap:8px}.choice-card{gap:8px;padding:8px}.choice-image{width:54px;height:54px}.choice-details strong{font-size:10px}.choice-details small{font-size:8px}.choice-details b{font-size:9px}.choice-radio,.choice-check{right:7px;top:8px;width:14px;height:14px}.color-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.color-choice .choice-image{height:77px}.color-choice .choice-details{padding-right:16px}.option-grid{grid-template-columns:1fr}.option-pick{padding:9px}.option-thumb{width:62px;height:62px}.auth-layout{grid-template-columns:1fr;width:calc(100% - 30px);margin:30px auto 65px;gap:15px}.auth-side{min-height:auto;padding:32px 28px}.auth-side h1{font-size:38px}.auth-side>p:not(.eyebrow){max-width:340px}.auth-side-note{margin-top:14px}.auth-sticker{right:20px;top:20px;width:44px;height:44px;font-size:23px;border-width:3px}.auth-card{padding:27px 23px}.account-layout{grid-template-columns:1fr;width:calc(100% - 30px);margin-bottom:65px}.account-side{order:-1}.account-welcome{padding:21px}.account-welcome h2{font-size:27px}.checkout-form{padding:21px}.legal-page{margin:28px auto 65px}.page-title-block{padding:45px 17px 30px}.admin-shell{grid-template-columns:1fr}.admin-topbar{padding:0 15px}.admin-topbar>div{gap:10px}.admin-top-user{display:none}.admin-sidebar{padding:12px 14px;border-right:0;border-bottom:1px solid var(--line);gap:9px}.admin-sidebar .eyebrow,.admin-side-note,.logout-admin{display:none}.admin-sidebar nav{display:flex;overflow:auto;gap:6px}.admin-sidebar nav a{white-space:nowrap;padding:10px;font-size:10px}.admin-content{padding:18px 14px}.admin-page-heading{align-items:flex-start;flex-direction:column;gap:13px}.admin-page-heading .btn{align-self:stretch}.admin-stats{gap:9px}.admin-stats article{padding:15px;min-height:114px}.admin-stats article>strong{font-size:21px}.admin-stats article>i{width:29px;height:29px;font-size:15px}.admin-two-col{grid-template-columns:1fr}.admin-edit-panel{position:static}.admin-panel{padding:17px}.admin-order-head{padding:17px;gap:10px}.admin-order-details{padding:17px}.order-status-form{padding:15px}.order-status-form label{flex:1}.admin-footer{padding:14px}}
@media(max-width:430px){.top-strip{font-size:9px}.header-actions{gap:11px}.icon-link{font-size:16px}.hero{padding-left:21px;padding-right:21px}.hero h1{font-size:42px}.hero-proof{gap:9px 14px;font-size:9px}.hero-art{min-height:275px}.hero-caption{padding:10px 13px;right:0}.hero-caption strong{font-size:10px}.hero-caption small{font-size:8px}.trust-row{padding:14px 11px;gap:14px 9px}.trust-icon{width:35px;height:35px;font-size:18px;border-radius:11px}.trust-row strong{font-size:10px}.trust-row small{font-size:8px}.section-heading h2{font-size:28px}.category-tile{padding:21px;min-height:180px}.product-grid{gap:9px}.product-info{padding:10px}.product-tag{left:7px;top:7px;font-size:8px;padding:5px 7px}.product-info h3{font-size:11px}.product-desc{min-height:42px}.product-bottom{margin-top:12px;padding-top:10px}.product-bottom strong{font-size:12px}.round-arrow{width:25px;height:25px}.builder-banner{padding:30px 20px}.builder-banner-copy{max-width:78%}.builder-banner h2{font-size:30px}.banner-blob{right:-5px;top:27%;width:100px;height:100px;font-size:49px}.page-hero{padding:34px 19px;min-height:240px}.page-hero h1{font-size:35px}.page-hero-art{font-size:70px}.shop-toolbar h2{font-size:24px}.detail-copy h1{font-size:34px}.cart-row{gap:9px}.cart-thumb{width:63px;height:63px}.cart-row-copy h3{font-size:12px}.cart-config span{font-size:8px}.cart-row-price{font-size:11px}.cart-summary{padding:21px}.builder-section-title h2{font-size:16px}.choice-card{display:flex;gap:6px;padding:6px}.choice-image{width:45px;height:45px}.choice-details{gap:2px}.choice-details strong{font-size:9px}.choice-details small{font-size:7px}.choice-details b{font-size:8px}.color-choice .choice-image{height:65px}.option-thumb{width:55px;height:55px}.design-summary{padding:14px}.summary-top h2{font-size:18px}.summary-preview{padding:10px 3px}.summary-preview p{font-size:8px}.auth-card{padding:23px 17px}.order-card{padding:17px;gap:10px}.order-main .status-pill{font-size:7px}.order-value>strong{font-size:15px}.form-two{grid-template-columns:1fr}.admin-topbar{height:65px}.admin-topbar .brand-logo{width:39px;height:39px}.admin-topbar .brand-copy strong{font-size:14px}.admin-top-link{font-size:9px}.admin-stats article>span{font-size:9px}.admin-stats article>strong{font-size:19px}.admin-stats article>small{font-size:8px}.admin-stats article>i{right:9px;bottom:9px}.admin-product-img,.admin-option-img{width:50px;height:50px}.admin-product-row,.admin-option-row{gap:8px}.admin-product-actions{gap:7px}.admin-product-copy>strong,.admin-option-copy>strong{font-size:10px}.admin-order-head h3{font-size:13px}.admin-order-head p{overflow-wrap:anywhere}.admin-order-total>strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Vista previa en vivo del constructor de paracord */
.live-summary-preview{position:relative;overflow:hidden;padding:14px 12px 12px;border:1px solid #f0dff5;border-radius:20px;background:linear-gradient(145deg,#fcf6ff 0%,#fff7fb 48%,#effcfb 100%)}
.preview-live-head{display:flex;align-items:center;justify-content:center;gap:7px;color:#8d68a6;font-size:8px;font-weight:900;letter-spacing:.16em;margin:0 0 11px}
.preview-live-dot{width:7px;height:7px;border-radius:50%;background:#58c7b9;box-shadow:0 0 0 4px rgba(88,199,185,.14)}
.preview-stage{position:relative;isolation:isolate;min-height:148px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(220,196,237,.65);border-radius:17px;background:radial-gradient(ellipse at 15% 18%,rgba(255,255,255,.98),transparent 37%),radial-gradient(ellipse at 85% 85%,rgba(202,247,241,.84),transparent 43%),linear-gradient(125deg,#f2e9ff 0%,#fff0f8 54%,#e9fbf7 100%);box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(110,77,151,.07)}
.preview-stage:before,.preview-stage:after{content:"";position:absolute;z-index:-1;border-radius:50%;pointer-events:none}
.preview-stage:before{width:104px;height:104px;left:-49px;top:-51px;border:1px solid rgba(187,141,223,.22);box-shadow:0 0 0 10px rgba(255,255,255,.17),0 0 0 21px rgba(187,141,223,.08)}
.preview-stage:after{width:72px;height:72px;right:-35px;bottom:-34px;background:rgba(255,255,255,.37)}
.preview-stage-sticker{position:absolute;top:9px;right:12px;display:grid;place-items:center;width:23px;height:23px;border-radius:8px;background:#ffe27c;color:#875ac3;font-size:13px;transform:rotate(10deg);box-shadow:0 3px 8px rgba(123,83,154,.12)}
.preview-cord-line{position:absolute;z-index:1;left:7%;right:7%;top:53%;height:13px;border:1px solid rgba(78,49,99,.18);border-radius:999px;transform:translateY(-50%) rotate(-3deg);background-color:#a987cf;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.25) 0 3px,rgba(255,255,255,0) 3px 8px);box-shadow:0 4px 7px rgba(70,46,97,.16),inset 0 2px 2px rgba(255,255,255,.46),inset 0 -2px 2px rgba(63,43,83,.15);transition:background-color .22s ease,background-image .22s ease}
.preview-cord-line:before,.preview-cord-line:after{content:"";position:absolute;top:2px;bottom:2px;width:3px;border-radius:50%;background:rgba(255,255,255,.55)}
.preview-cord-line:before{left:8px}.preview-cord-line:after{right:8px}
.preview-cord-line.is-braided{height:16px;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.53) 0 3px,rgba(72,44,83,.10) 3px 6px,transparent 6px 10px),linear-gradient(90deg,rgba(255,255,255,.18),rgba(0,0,0,.08))}
.preview-cord-line.is-rainbow{background-image:linear-gradient(90deg,#ef6ba9 0%,#f3c94f 20%,#5bc8b9 40%,#5ba5ea 60%,#ad7bea 80%,#ef6ba9 100%),repeating-linear-gradient(135deg,rgba(255,255,255,.23) 0 3px,transparent 3px 8px)}
.preview-hardware{position:absolute;z-index:3;top:53%;width:19px;height:19px;border:4px solid #c2c8d2;border-radius:50%;background:linear-gradient(135deg,#fff,#9da7b9);box-shadow:0 2px 4px rgba(46,36,64,.18);transform:translateY(-50%)}
.preview-hardware-left{left:5%;transform:translateY(-50%) rotate(-20deg)}.preview-hardware-right{right:5%;width:17px;height:17px;border-width:3px}
.preview-parts{position:absolute;z-index:2;left:13%;right:13%;top:53%;display:flex;align-items:center;justify-content:center;gap:clamp(1px,.7vw,7px);transform:translateY(-50%);min-width:0}
.preview-part{position:relative;display:grid;place-items:center;flex:1 1 0;min-width:0;max-width:46px;height:62px;padding:2px;border-radius:13px;background:rgba(255,255,255,.78);border:1px solid rgba(223,204,238,.9);box-shadow:0 4px 10px rgba(83,57,113,.13);backdrop-filter:blur(3px);transform:translateY(-7px);transition:transform .2s ease,box-shadow .2s ease}
.preview-part:nth-child(even){transform:translateY(6px) rotate(2deg)}.preview-part:nth-child(odd){transform:translateY(-6px) rotate(-2deg)}
.preview-part img{display:block;width:100%;height:100%;object-fit:contain;border-radius:9px;mix-blend-mode:multiply}
.preview-part--bit{max-width:32px;height:43px;border-radius:50%;padding:3px;background:rgba(255,255,255,.94)}.preview-part--bit img{border-radius:50%}
.preview-part-emoji{display:grid;place-items:center;width:100%;height:100%;font-size:clamp(17px,2.6vw,27px);line-height:1}
.preview-part--bit .preview-part-emoji{font-size:clamp(12px,2vw,19px)}
.preview-more{flex:0 0 auto;display:grid;place-items:center;width:27px;height:27px;border:2px solid #fff;border-radius:50%;background:#8e5ec0;color:#fff;font-size:10px;font-weight:900;box-shadow:0 3px 9px rgba(79,50,110,.2)}
.preview-placeholder-bead{z-index:2;display:grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border-radius:10px;background:linear-gradient(145deg,#fff,#f8d6ef);border:1px solid rgba(207,172,229,.85);box-shadow:0 3px 7px rgba(85,57,117,.13);color:#9161bb;font-size:14px}
.preview-placeholder-bead-2{background:linear-gradient(145deg,#fff4b8,#ffe2a8);color:#b87a20;transform:translateY(-10px) rotate(5deg)}.preview-placeholder-bead-3{background:linear-gradient(145deg,#dffff9,#c8e9ff);color:#438f9d;transform:translateY(7px)}
.preview-caption{margin:11px 2px 0!important;color:#6e5b81!important;text-align:center;font-size:9px!important;line-height:1.55!important;min-height:27px}
.preview-selected-options{margin-top:7px;padding:7px 9px;border-radius:9px;background:rgba(255,255,255,.7);border:1px solid rgba(228,212,239,.78);color:#88749b;font-size:8px;line-height:1.5;text-align:center;overflow-wrap:anywhere}
@media(max-width:800px){.live-summary-preview{padding:10px 8px}.preview-live-head{font-size:7px;letter-spacing:.1em;margin-bottom:7px}.preview-stage{min-height:128px;border-radius:13px}.preview-cord-line{height:10px}.preview-cord-line.is-braided{height:13px}.preview-hardware{width:15px;height:15px;border-width:3px}.preview-hardware-right{width:14px;height:14px}.preview-parts{left:15%;right:15%;gap:2px}.preview-part{height:46px;padding:2px;border-radius:9px}.preview-part--bit{height:32px;max-width:25px}.preview-more{width:21px;height:21px;font-size:8px}.preview-placeholder-bead{width:20px;height:20px;font-size:11px}.preview-caption{font-size:8px!important;min-height:25px}.preview-selected-options{font-size:7px;padding:6px 5px}}
@media(max-width:430px){.preview-stage{min-height:114px}.preview-parts{left:14%;right:14%}.preview-part{height:40px}.preview-part--bit{height:28px;max-width:21px}.preview-part-emoji{font-size:15px}.preview-more{width:18px;height:18px;font-size:7px}.preview-selected-options{font-size:6.5px}}
/* Prioridad sobre el estilo general .summary-preview p */
.summary-preview .preview-caption{margin:11px 2px 0!important;color:#6e5b81!important;text-align:center;font-size:9px!important;line-height:1.55!important;min-height:27px;font-weight:600!important}
@media(max-width:800px){.summary-preview .preview-caption{font-size:8px!important;min-height:25px;margin-top:8px!important}}

/* Vista previa en forma de lazo real + piezas reordenables por mouse/táctil */
.preview-stage--custom-rope {
  position: relative;
  width: 100%;
  min-height: 218px;
  aspect-ratio: 620 / 360;
  height: auto;
  overflow: hidden;
  isolation: isolate;
  border: 1px solid rgba(220,196,237,.72);
  border-radius: 19px;
  background:
    radial-gradient(ellipse at 22% 20%,rgba(255,255,255,.98),transparent 36%),
    radial-gradient(ellipse at 78% 78%,rgba(206,249,244,.8),transparent 38%),
    linear-gradient(135deg,#f8f0ff 0%,#fff3fa 48%,#eefbf9 100%);
  box-shadow: inset 0 1px 0 #fff, 0 9px 20px rgba(110,77,151,.08);
}
.preview-stage--custom-rope:before,
.preview-stage--custom-rope:after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  border-radius: 50%;
}
.preview-stage--custom-rope:before {
  width: 128px; height: 128px; left: -62px; top: -69px;
  border: 1px solid rgba(187,141,223,.2);
  box-shadow: 0 0 0 11px rgba(255,255,255,.2), 0 0 0 22px rgba(187,141,223,.08);
}
.preview-stage--custom-rope:after {
  width: 76px; height: 76px; right: -35px; bottom: -38px;
  background: rgba(255,255,255,.36);
}
.preview-rope-svg { position:absolute; inset:0; z-index:1; width:100%; height:100%; overflow:visible; pointer-events:none; }
.preview-rope-shadow { fill:none; stroke:rgba(69,45,83,.17); stroke-width:34; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 6px 4px rgba(54,34,75,.18)); }
.preview-rope-strand { fill:none; stroke-linecap:round; stroke-linejoin:round; }
.preview-rope-strand--back { stroke:var(--cord-deep,#744a91); stroke-width:27; opacity:.82; filter:drop-shadow(0 3px 2px rgba(54,34,75,.17)); }
.preview-rope-strand--front { stroke:var(--cord-color,#b68bd2); stroke-width:21; opacity:1; }
.preview-rope-highlight { fill:none; stroke:url(#rope-sheen); stroke-width:5; stroke-linecap:round; opacity:.85; }
.preview-rope-path { fill:none; stroke:var(--cord-color,#b68bd2); stroke-width:19; stroke-linecap:round; stroke-linejoin:round; opacity:.98; pointer-events:none; }
.preview-rope-ring circle { fill:none; stroke:#d6d7df; stroke-width:9; filter:drop-shadow(0 3px 2px rgba(43,35,61,.18)); }
.preview-rope-ring circle + circle { stroke:#fff; stroke-width:3; }
.preview-rope-knot { fill:none; stroke:var(--cord-color,#b68bd2); stroke-width:11; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 2px 1px rgba(45,30,63,.19)); }
.preview-rope-knot path + path { stroke:rgba(255,255,255,.55); stroke-width:3; }
.preview-rope-ends rect { fill:var(--cord-color,#b68bd2); stroke:var(--cord-deep,#744a91); stroke-width:2; filter:drop-shadow(0 2px 1px rgba(45,30,63,.16)); }
.preview-stage--custom-rope.is-braided .preview-rope-strand--front { stroke-width:24; stroke-dasharray:8 3; }
.preview-stage--custom-rope.is-rainbow .preview-rope-strand--front,
.preview-stage--custom-rope.is-rainbow .preview-rope-path { stroke:url(#rope-rainbow); }
.preview-stage--custom-rope .preview-parts { position:absolute; inset:0; z-index:4; display:block; min-width:0; transform:none; left:0; right:0; top:0; bottom:0; pointer-events:none; }
.preview-stage--custom-rope .preview-part {
  position:absolute; display:grid; place-items:center; z-index:2; flex:none; min-width:0; max-width:none;
  padding:2px; border:0; border-radius:10px; background:transparent; box-shadow:none; backdrop-filter:none;
  transform:translate(-50%,-50%) rotate(var(--part-tilt,0deg)); transform-origin:center; cursor:grab; pointer-events:auto;
  touch-action:none; user-select:none; -webkit-user-select:none; -webkit-tap-highlight-color:transparent;
  transition:filter .12s ease, opacity .12s ease;
}
.preview-stage--custom-rope .preview-part:hover,
.preview-stage--custom-rope .preview-part:focus-visible { z-index:8; filter:drop-shadow(0 5px 4px rgba(55,35,79,.25)); outline:2px solid rgba(174,112,220,.8); outline-offset:1px; }
.preview-stage--custom-rope .preview-part.is-dragging { z-index:20!important; cursor:grabbing; filter:drop-shadow(0 9px 7px rgba(48,30,73,.32)); transition:none; }
.preview-stage--custom-rope .preview-part img { display:block; width:100%; height:100%; object-fit:contain; border-radius:6px; mix-blend-mode:multiply; filter:drop-shadow(0 3px 2px rgba(43,33,60,.13)); pointer-events:none; }
.preview-stage--custom-rope .preview-part--bit { width:var(--piece-size,38px); height:var(--piece-size,38px); max-width:none; padding:2px; border-radius:50%; }
.preview-stage--custom-rope .preview-part--bit img { border-radius:50%; }
.preview-stage--custom-rope .preview-part-emoji { display:grid; place-items:center; width:100%; height:100%; font-size:clamp(16px,3vw,27px); line-height:1; filter:drop-shadow(0 2px 1px rgba(42,30,58,.13)); }
.preview-stage--custom-rope .preview-letter-face {
  display:grid; place-items:center; width:100%; height:100%; min-width:24px; min-height:27px; box-sizing:border-box;
  padding:0 3px; border-radius:7px; color:#fb54a6; background:linear-gradient(145deg,#fff 0%,#ffe3f2 53%,#f4b9dc 100%);
  border:2px solid #fff; outline:1px solid rgba(180,71,144,.36); font-size:clamp(17px,3vw,25px); line-height:1; font-weight:1000;
  text-shadow:0 1px 0 #fff, 1px 2px 0 #b66eaa; box-shadow:0 3px 0 #d28abf,0 5px 8px rgba(55,35,79,.18); pointer-events:none;
}
.preview-letter-font--bubble .preview-letter-face { color:#ec3f9e; background:linear-gradient(145deg,#fff 0%,#ffc9e6 50%,#f28ec8 100%); border-radius:12px; border-width:3px; outline:2px solid #f7b2da; text-shadow:0 1px 0 white, 1px 2px 0 #ba4d91; box-shadow:0 3px 0 #b94391,0 5px 8px rgba(55,35,79,.2); transform:scale(1.03); }
.preview-letter-font--block .preview-letter-face { color:#ffb12d; background:linear-gradient(145deg,#fff3a2,#ffda42); border-radius:4px; outline:2px solid #f38e2f; border-color:#fff; text-shadow:1px 2px 0 #ba602e; box-shadow:0 3px 0 #d78323,0 5px 8px rgba(55,35,79,.18); }
.preview-letter-font--serif .preview-letter-face { color:#7a4eb2; background:linear-gradient(145deg,#fff,#ece0ff); border-radius:5px; text-shadow:0 1px 0 #fff,1px 2px 0 #a18acb; box-shadow:0 3px 0 #9d7cc2,0 5px 8px rgba(55,35,79,.17); }
.preview-letter-font--script .preview-letter-face { color:#f1489f; background:linear-gradient(145deg,#fff,#ffe6f4); border-radius:50% 45% 40% 45%; font-style:italic; text-shadow:0 1px 0 #fff,1px 2px 0 #bb78ad; }
.preview-letter-font--mono .preview-letter-face { color:#248f92; background:linear-gradient(145deg,#fff,#d7fbf6); border-radius:4px; text-shadow:0 1px 0 #fff,1px 2px 0 #71bebb; box-shadow:0 3px 0 #4aaea8,0 5px 8px rgba(55,35,79,.18); }
.preview-stage--custom-rope .preview-stage-sticker { z-index:9; top:8px; right:9px; }
.preview-stage--custom-rope .preview-part:focus { outline:none; }
.preview-stage--custom-rope .preview-part:focus-visible { outline:2px solid #a875d0; outline-offset:1px; }
.letter-custom-section .letter-controls { display:grid; grid-template-columns:1.2fr 1fr; gap:13px; margin-top:14px; }
.letter-custom-section .letter-controls label { display:grid; gap:6px; color:#3f3156; font-size:12px; font-weight:800; }
.letter-custom-section .letter-controls label small { color:#8b7a9d; font-size:10px; font-weight:500; line-height:1.45; }
.letter-custom-section .letter-controls input,
.letter-custom-section .letter-controls select { width:100%; min-height:45px; border:1px solid #e6d8ef; border-radius:12px; background:#fff; color:#302342; padding:10px 12px; font:inherit; font-weight:600; outline-offset:2px; }
.letter-custom-section .letter-controls input:focus,
.letter-custom-section .letter-controls select:focus { border-color:#bb71d1; box-shadow:0 0 0 3px rgba(187,113,209,.12); }
.letter-price-note { margin:10px 0 0; color:#7c678e; font-size:11px; }
.letter-preview-sample { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:12px; }
.font-sample { display:inline-grid; place-items:center; min-width:43px; height:30px; padding:0 6px; border-radius:8px; color:#ee4ba4; background:#fff0f8; border:1px solid #f1cde5; box-shadow:0 2px 0 #dfacd1; font-weight:900; font-size:15px; }
.font-sample--bubble { border-radius:12px; background:#ffdaf0; color:#df2b94; font-weight:1000; text-shadow:1px 1px 0 #fff; }
.font-sample--block { border-radius:4px; background:#fff0a6; color:#e78621; font-family:Impact,Haettenschweiler,sans-serif; }
.font-sample--script { color:#8754bf; font-family:'Brush Script MT',cursive; font-style:italic; }
@media(max-width:800px) {
  .preview-stage--custom-rope { min-height:190px; border-radius:14px; }
  .preview-stage--custom-rope .preview-part { padding:1px; }
  .preview-stage--custom-rope .preview-letter-face { min-width:20px; min-height:23px; font-size:17px; border-width:1px; }
  .letter-custom-section .letter-controls { grid-template-columns:1fr; gap:10px; }
}
@media(max-width:430px) {
  .preview-stage--custom-rope { min-height:178px; }
  .preview-stage--custom-rope .preview-part-emoji { font-size:18px; }
  .letter-custom-section .letter-controls input,
  .letter-custom-section .letter-controls select { min-height:43px; }
}
.cart-config-order { margin: 8px 0 0; color:#786588; font-size:11px; line-height:1.55; overflow-wrap:anywhere; }
.cart-config-order strong { color:#48325f; }

/* CHISPITAS 3D · actualización pastel/chunky del diseñador de paracord */
.builder-page-hero {
  background:
    radial-gradient(ellipse at 82% 18%, rgba(255,255,255,.82), transparent 27%),
    radial-gradient(ellipse at 11% 95%, rgba(255,223,242,.76), transparent 34%),
    linear-gradient(118deg, #e9fcfb 0%, #f5eaff 48%, #fff0f7 76%, #fff6df 100%);
}
.builder-page-hero h1 { letter-spacing:-.055em; font-weight:1000; text-shadow:0 2px 0 rgba(255,255,255,.7); }
.builder-page-hero h1 em { color:#a35bd2; font-style:normal; }
.builder-page-hero .builder-steps span { border:1px solid #ecd8f6; background:#fffdfd; border-radius:999px; padding:7px 12px 7px 7px; box-shadow:0 3px 0 #ead7f2; }
.builder-workspace { gap:22px; }
.builder-section { border:2px solid #f0def6; border-radius:25px; background:linear-gradient(145deg,#fff 0%,#fffafd 70%,#f5fffe 100%); box-shadow:0 7px 0 rgba(226,198,239,.45),0 14px 28px rgba(109,72,145,.045); }
.builder-section-title .step-number { border-radius:15px; background:linear-gradient(145deg,#ffd9ee,#e4d6ff); box-shadow:0 4px 0 #e6c4ed; font-weight:1000; }
.builder-section-title h2 { letter-spacing:-.035em; font-weight:1000; }
.choice-card { border:2px solid #efdef6; border-radius:20px; background:linear-gradient(145deg,#fff,#fff7fc); box-shadow:0 4px 0 rgba(237,216,246,.72); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.choice-card:hover { transform:translateY(-2px) rotate(-.25deg); border-color:#d6b2ee; box-shadow:0 6px 0 #e6c8f0,0 12px 20px rgba(129,78,157,.08); }
.choice-card:has(.choice-radio:checked) { border-color:#d16db8; background:linear-gradient(145deg,#fff4fb,#f4f0ff); box-shadow:0 4px 0 #e3b4dc,0 0 0 3px rgba(219,135,201,.13); }
.choice-details strong { font-weight:1000; letter-spacing:-.025em; }
.choice-radio { accent-color:#c452ae; }
.color-choice { min-height:102px; align-items:center; }
.color-choice .choice-image { width:69px; height:69px; min-width:69px; border:3px solid white; border-radius:18px; object-fit:cover; background:#fff; box-shadow:0 3px 0 #ead8f4,0 4px 9px rgba(80,48,106,.08); }
.color-choice .choice-details { gap:5px; }
.option-pick { border:2px solid #f0ddf5; border-radius:20px; background:linear-gradient(140deg,#fff,#fff8fc); box-shadow:0 4px 0 rgba(232,208,242,.65); transition:transform .18s ease,border-color .18s ease; }
.option-pick:hover { transform:translateY(-2px); border-color:#d8b4eb; }
.option-thumb { border:3px solid #fff; border-radius:16px; box-shadow:0 3px 0 #e6d3f0; }
.letter-custom-section .letter-controls input,.letter-custom-section .letter-controls select { border-width:2px; border-radius:16px; box-shadow:0 3px 0 #efdef6; }
.design-summary { border:2px solid #efdef6; border-radius:27px; box-shadow:0 7px 0 rgba(226,198,239,.5),0 18px 35px rgba(109,72,145,.07); }
.summary-spark { border-radius:16px; background:linear-gradient(145deg,#ffd9ee,#e0e0ff); box-shadow:0 4px 0 #e3c9f1; }

/* La cuerda se dibuja como dos ramales gruesos paralelos, unidos a argolla y nudo. */
.preview-stage--custom-rope {
  min-height:250px;
  aspect-ratio:620 / 360;
  border:3px solid rgba(255,255,255,.96);
  border-radius:25px;
  background:
    radial-gradient(ellipse at 72% 19%,rgba(255,255,255,.96),transparent 31%),
    radial-gradient(ellipse at 17% 83%,rgba(255,225,243,.92),transparent 35%),
    linear-gradient(137deg,#effcfb 0%,#f8efff 48%,#fff1f8 77%,#fff6e6 100%);
  box-shadow:inset 0 1px 0 #fff,0 7px 0 #e7d5f2,0 14px 25px rgba(99,62,128,.1);
}
.preview-rope-shadow { fill:none; stroke:rgba(70,39,88,.25); stroke-width:34; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 5px 4px rgba(54,34,75,.18)); }
.preview-rope-strand { fill:none; stroke-linecap:round; stroke-linejoin:round; }
.preview-rope-strand--back { stroke:var(--cord-deep,#744a91); stroke-width:27; opacity:.96; filter:drop-shadow(0 3px 2px rgba(54,34,75,.14)); }
.preview-rope-strand--front { stroke:var(--cord-color,#ef92c7); stroke-width:21; opacity:1; }
.preview-rope-highlight { fill:none; stroke:url(#rope-sheen); stroke-width:4.5; stroke-linecap:round; opacity:.96; pointer-events:none; }
.preview-rope-texture { fill:none; stroke:url(#rope-sheen); stroke-width:12; stroke-linecap:round; stroke-dasharray:1.5 8; opacity:.48; pointer-events:none; }
.preview-rope-path { fill:none; stroke:transparent!important; stroke-width:0!important; opacity:0!important; pointer-events:none; }
.preview-rope-ring circle { fill:none; stroke:url(#rope-metal); stroke-width:9; filter:drop-shadow(0 4px 3px rgba(43,35,61,.24)); }
.preview-rope-ring circle + circle { stroke:#fff; stroke-width:3; }
.preview-rope-knot { fill:none; stroke:var(--cord-color,#ef92c7); stroke-width:12; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 3px 2px rgba(45,30,63,.2)); }
.preview-rope-knot path + path { stroke:var(--cord-light, #ffd3ea); stroke-width:3; }
.preview-rope-ends rect { fill:var(--cord-color,#ef92c7); stroke:var(--cord-deep,#b64d87); stroke-width:2; filter:drop-shadow(0 3px 2px rgba(45,30,63,.18)); }
.preview-stage--custom-rope.is-braided .preview-rope-strand--front { stroke-width:23; stroke-dasharray:7 2.5; }
.preview-stage--custom-rope.is-flat .preview-rope-strand--back { stroke-width:32; }
.preview-stage--custom-rope.is-flat .preview-rope-strand--front { stroke-width:25; }
.preview-stage--custom-rope.is-thin .preview-rope-strand--back { stroke-width:21; }
.preview-stage--custom-rope.is-thin .preview-rope-strand--front { stroke-width:15; }
.preview-stage--custom-rope.is-rainbow .preview-rope-strand--front { stroke:url(#rope-rainbow); }
.preview-stage--custom-rope .preview-part--letter { min-width:24px; }
.preview-stage--custom-rope .preview-letter-face { border-radius:8px; border-width:2px; font-weight:1000; text-shadow:1px 2px 0 rgba(187,91,152,.35),0 1px 0 #fff; box-shadow:0 3px 0 #d28abf,0 7px 9px rgba(55,35,79,.2); }
.preview-stage--custom-rope .preview-part:active { cursor:grabbing; }
.preview-caption { font-weight:800; color:#79628e; }
.preview-selected-options { border:1px dashed #dfc5ef; border-radius:13px; background:#fffafd; padding:10px 12px; }
@media(max-width:800px) {
  .builder-section { border-radius:20px; }
  .color-choice .choice-image { width:57px; height:57px; min-width:57px; border-radius:15px; }
  .preview-stage--custom-rope { min-height:212px; border-radius:20px; }
}
@media(max-width:430px) {
  .preview-stage--custom-rope { min-height:188px; border-radius:16px; }
  .color-choice .choice-image { width:50px; height:50px; min-width:50px; }
}


/* CHISPITAS 3D · dos ramales separados, vista legible y argolla opcional */
.preview-stage--custom-rope { min-height: 256px; overflow:hidden; }
.preview-stage--custom-rope .preview-rope-svg { width:100%; height:100%; inset:0; overflow:visible; }
.preview-stage--custom-rope .preview-rope-shadow { fill:none; stroke:rgba(59,38,76,.22); stroke-width:34; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 4px 3px rgba(55,35,73,.16)); }
.preview-stage--custom-rope .preview-rope-strand { fill:none; stroke-linecap:round; stroke-linejoin:round; }
.preview-stage--custom-rope .preview-rope-strand--back { stroke:var(--cord-deep,#b64d87); stroke-width:27; opacity:.98; }
.preview-stage--custom-rope .preview-rope-strand--front { stroke:var(--cord-color,#ef92c7); stroke-width:20; }
.preview-stage--custom-rope .preview-rope-highlight { fill:none; stroke:url(#rope-sheen); stroke-width:4; stroke-linecap:round; opacity:.92; }
.preview-stage--custom-rope .preview-rope-texture { fill:none; stroke:url(#rope-sheen); stroke-width:11; stroke-linecap:round; stroke-dasharray:1.3 7; opacity:.5; }
.preview-stage--custom-rope .preview-rope-path { fill:none; stroke:transparent!important; stroke-width:0!important; opacity:0!important; pointer-events:none; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-shadow { fill:none; stroke:rgba(52,37,66,.22); stroke-width:18; stroke-linecap:round; stroke-linejoin:round; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-body { fill:none; stroke:var(--ring-color,#ef92c7); stroke-width:12; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 3px 2px rgba(51,33,71,.22)); }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-gate { fill:none; stroke:var(--ring-color,#ef92c7); stroke-width:13; stroke-linecap:round; stroke-linejoin:round; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-highlight { fill:none; stroke:rgba(255,255,255,.82); stroke-width:3.2; stroke-linecap:round; }
.preview-stage--custom-rope .preview-rope-knot { fill:none; stroke:var(--cord-color,#ef92c7); stroke-width:12; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 2px 2px rgba(45,30,63,.21)); }
.preview-stage--custom-rope .preview-rope-knot path+path { stroke:var(--cord-light,#ffd3ea); stroke-width:3; }
.preview-stage--custom-rope .preview-rope-ends rect { fill:var(--cord-color,#ef92c7); stroke:var(--cord-deep,#b64d87); stroke-width:2; filter:drop-shadow(0 3px 2px rgba(45,30,63,.17)); }
.preview-stage--custom-rope.is-braided .preview-rope-strand--front { stroke-dasharray:6 2.3; stroke-width:21; }
.preview-stage--custom-rope.is-flat .preview-rope-strand--back { stroke-width:31; }
.preview-stage--custom-rope.is-flat .preview-rope-strand--front { stroke-width:24; }
.preview-stage--custom-rope.is-thin .preview-rope-strand--back { stroke-width:21; }
.preview-stage--custom-rope.is-thin .preview-rope-strand--front { stroke-width:15; }
.preview-stage--custom-rope.is-rainbow .preview-rope-strand--front { stroke:url(#rope-rainbow); }
.preview-stage--custom-rope .preview-parts { position:absolute; inset:0; z-index:4; display:block; min-width:0; transform:none; left:0; right:0; top:0; bottom:0; pointer-events:none; }
.preview-stage--custom-rope .preview-part { position:absolute; display:grid; place-items:center; z-index:2; flex:none; min-width:0; max-width:none; padding:1px; border:0; border-radius:7px; background:transparent; box-shadow:none; backdrop-filter:none; transform:translate(-50%,-50%) rotate(var(--part-tilt,0deg)); transform-origin:center; cursor:grab; pointer-events:auto; touch-action:none; user-select:none; -webkit-user-select:none; -webkit-tap-highlight-color:transparent; transition:filter .12s ease,opacity .12s ease; }
.preview-stage--custom-rope .preview-part:hover,.preview-stage--custom-rope .preview-part:focus-visible { z-index:8; filter:drop-shadow(0 5px 4px rgba(55,35,79,.25)); outline:2px solid rgba(174,112,220,.8); outline-offset:1px; }
.preview-stage--custom-rope .preview-part.is-dragging { z-index:20!important; cursor:grabbing; filter:drop-shadow(0 9px 7px rgba(48,30,73,.32)); transition:none; }
.preview-stage--custom-rope .preview-part img { display:block; width:100%; height:100%; object-fit:contain; border-radius:7px; mix-blend-mode:multiply; filter:drop-shadow(0 3px 2px rgba(43,33,60,.13)); pointer-events:none; }
.preview-stage--custom-rope .preview-part--bit { padding:1px; border-radius:50%; }
.preview-stage--custom-rope .preview-part--bit img { border-radius:50%; }
.preview-stage--custom-rope .preview-part-emoji { display:grid; place-items:center; width:100%; height:100%; font-size:clamp(16px,3vw,27px); line-height:1; filter:drop-shadow(0 2px 1px rgba(42,30,58,.13)); }
.preview-stage--custom-rope .preview-letter-face { display:grid; place-items:center; box-sizing:border-box; width:100%; height:100%; min-width:0; min-height:0; padding:0 1px; border-radius:7px; color:var(--letter-face,#ff79bd); background:linear-gradient(145deg,var(--letter-highlight,#fff1a9) 0%,var(--letter-face,#ff79bd) 37%,var(--letter-face,#ff79bd) 70%,#fff 100%); border:2px solid #fff; outline:1.8px solid var(--letter-edge,#b92478); font-size:clamp(17px,3.3vw,31px); line-height:1; font-weight:1000; -webkit-text-stroke:.2px var(--letter-edge,#b92478); text-shadow:1px 2px 0 var(--letter-edge,#b92478),0 1px 0 white; box-shadow:0 3px 0 var(--letter-edge,#b92478),0 5px 7px rgba(55,35,79,.2); pointer-events:none; overflow:visible; }
.preview-letter-font--bubble .preview-letter-face { border-radius:10px; border-width:2.5px; transform:scale(1.04); }
.preview-letter-font--block .preview-letter-face { border-radius:3px; font-weight:1000; }
.preview-letter-font--serif .preview-letter-face { font-family:Georgia,serif!important; }
.preview-letter-font--script .preview-letter-face { font-style:italic; }
.preview-letter-font--mono .preview-letter-face { font-family:'Courier New',monospace!important; }
.ring-choice-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr)); gap:10px; margin-top:12px; }
.ring-choice-card { min-height:88px; border:1px solid #ead8f3; border-radius:17px; background:linear-gradient(135deg,#fffafd,#f9f0ff 58%,#f0fcfb); box-shadow:0 4px 0 #eadcf4,0 8px 16px rgba(114,75,140,.06); }
.ring-choice-card .choice-image { width:68px; height:68px; min-width:68px; object-fit:contain; border-radius:13px; }
.ring-choice-card .choice-details strong { font-weight:1000; }
.ring-choice-card:has(input:checked) { border-color:#d965b4; box-shadow:0 0 0 3px rgba(217,101,180,.12),0 4px 0 #eac7e3; }
.ring-none-art { display:grid; place-items:center; width:55px; min-width:55px; height:55px; border-radius:15px; color:#9a7cb1; background:linear-gradient(145deg,#f5eaff,#e8fbfa); font-size:31px; font-weight:900; }
.ring-empty-note { grid-column:1/-1; font-size:12px; }
@media(max-width:800px) { .preview-stage--custom-rope { min-height:235px; border-radius:19px; } .preview-stage--custom-rope .preview-part { padding:1px; } .preview-stage--custom-rope .preview-letter-face { font-size:clamp(16px,4vw,25px); border-width:1.5px; } .ring-choice-card .choice-image { width:55px; height:55px; min-width:55px; } }
@media(max-width:430px) { .preview-stage--custom-rope { min-height:220px; } .preview-stage--custom-rope .preview-letter-face { font-size:clamp(15px,4.5vw,22px); } .ring-choice-grid { grid-template-columns:1fr; } }


/* ============================================================
   CHISPITAS 3D · PASTEL CHUNKY V3 — visual refresh global
   ============================================================ */
:root {
  --ink:#302048; --muted:#82718f; --purple:#6e3fa0; --purple-2:#965bc8;
  --pink:#f45bac; --pink-light:#ffe0f1; --cyan:#91e4ed; --yellow:#ffda70;
  --cream:#fffaf2; --paper:#fff; --line:#eadcf3;
  --shadow:0 12px 0 rgba(227,198,239,.52),0 22px 40px rgba(95,52,132,.10);
  --shadow-lg:0 15px 0 rgba(224,196,238,.55),0 32px 64px rgba(95,52,132,.16);
  --radius:28px;
  --font:ui-rounded,"Arial Rounded MT Bold","Trebuchet MS",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body { background:linear-gradient(180deg,#fffafd 0%,#fffefb 50%,#fff8fd 100%); color:#302048; }
.top-strip { background:linear-gradient(90deg,#7948aa 0%,#a04fb2 52%,#df5ba8 100%); color:#fff; font-weight:900; letter-spacing:.09em; }
.site-header { background:rgba(255,251,255,.94); border-bottom:2px solid #f5e4f6; box-shadow:0 5px 0 rgba(246,221,244,.28); }
.brand-logo { filter:drop-shadow(0 5px 0 #f5d9ed) drop-shadow(0 8px 12px rgba(103,57,134,.18)); }
.brand-copy strong { color:#61358d; font-weight:1000; text-shadow:1px 1px #f7d8ef; }
.main-nav a { font-weight:900; }
.main-nav a.active:after { height:5px; background:linear-gradient(90deg,#ff78c4,#ad81ef,#83dfdf); box-shadow:0 2px 0 #efc6e9; }
.cart-count { border:2px solid #fff; box-shadow:0 3px 0 #f4c7e8; }
.btn { min-height:50px; border-radius:18px; border:2px solid rgba(255,255,255,.85); font-weight:1000; letter-spacing:.015em; box-shadow:0 5px 0 rgba(112,70,150,.13); }
.btn.primary { background:linear-gradient(135deg,#9e5ecb 0%,#e65aa9 100%); color:#fff; border-color:#fff; box-shadow:0 5px 0 #cfa3dc,0 11px 22px rgba(175,74,159,.20); text-shadow:0 1px 0 rgba(73,28,96,.15); }
.btn.primary:hover { background:linear-gradient(135deg,#8750b6,#e14d9f); box-shadow:0 7px 0 #cfa3dc,0 15px 25px rgba(175,74,159,.24); }
.btn.outline,.btn.ghost { border:2px solid #e8cfee; background:#fffaff; color:#69428e; box-shadow:0 5px 0 #f0dff3; }
.hero { background:radial-gradient(ellipse at 78% 20%,rgba(180,239,240,.75),transparent 31%),radial-gradient(ellipse at 22% 91%,rgba(255,183,220,.56),transparent 34%),radial-gradient(ellipse at 86% 86%,rgba(255,222,131,.4),transparent 26%),linear-gradient(120deg,#fff8f4 0%,#fff1f9 45%,#f7f1ff 100%); }
.hero h1,.page-hero h1,.page-title-block h1,.auth-side h1,.success-order h1 { font-weight:1000; letter-spacing:-.065em; text-shadow:0 2px 0 white,1px 3px 0 rgba(227,190,235,.65); }
.hero h1 em,.page-hero h1 em,.page-title-block h1 em,.auth-side h1 em,.success-order h1 em,.detail-copy h1 em,.builder-banner h2 em,.account-welcome h2 em { color:#a453d2; text-shadow:0 2px white,1px 3px #f5cde9; }
.trust-row { border:2px solid #f3dff4; border-radius:28px; box-shadow:0 7px 0 #f2dff3,0 15px 35px rgba(98,51,132,.06); }
.trust-icon { border-radius:17px; box-shadow:0 4px 0 rgba(199,156,220,.25); }
.category-tile { border:2px solid rgba(255,255,255,.95); border-radius:30px; box-shadow:0 7px 0 rgba(227,194,239,.66); }
.tile-pink { background:linear-gradient(145deg,#ffe0f1,#fff1f8 67%,#ffe7fb); }
.tile-blue { background:linear-gradient(145deg,#d8f8f7,#efffff 68%,#e6f0ff); }
.tile-yellow { background:linear-gradient(145deg,#fff0bc,#fff9e6 70%,#ffecf5); }
.category-tile strong { font-weight:1000; color:#51306e; text-shadow:0 2px #fff; }
.product-card { border:2px solid #f4e0f4; border-radius:26px; box-shadow:0 5px 0 #f4e2f4; }
.product-card:hover { box-shadow:0 8px 0 #eccde9,0 18px 30px rgba(92,56,122,.12); }
.product-tag,.detail-pills span,.count-pill { border:2px solid white; box-shadow:0 3px 0 rgba(205,155,225,.22); font-weight:1000; }
.builder-banner { border:3px solid white; border-radius:35px; box-shadow:0 8px 0 #e9cce9,0 21px 50px rgba(102,58,138,.11); background:radial-gradient(ellipse at 86% 22%,rgba(255,255,255,.78),transparent 24%),linear-gradient(125deg,#ffe0f1 0%,#ece4ff 50%,#daf8f4 100%); }
.footer-cta { border-top:5px solid #efc9e9; background:linear-gradient(125deg,#7c48a8,#a451b5 54%,#df5aa7); }
.site-footer { background:#fbf4ff; border-top:2px solid #eddef6; }
.page-hero { border-bottom:5px solid #fff; background:linear-gradient(120deg,#ffe2f2 0%,#eae1ff 45%,#def8f5 77%,#fff0c6 100%); }
.builder-page-hero { min-height:360px; padding-top:56px; padding-bottom:56px; background:radial-gradient(circle at 86% 23%,rgba(255,255,255,.92),transparent 21%),radial-gradient(circle at 11% 85%,rgba(255,205,230,.8),transparent 26%),linear-gradient(118deg,#ddf8f6 0%,#f4e5ff 38%,#ffe2f1 72%,#fff1c8 100%); border-bottom:7px solid #fff; }
.builder-page-hero h1 { font-size:clamp(42px,5.3vw,68px); color:#34204b; text-shadow:0 3px 0 #fff,0 6px 0 #e9c9ef; }
.builder-page-hero h1 em { color:#a452d1; }
.builder-page-hero .builder-steps span { color:#62417e; font-weight:1000; border:2px solid #fff; border-radius:999px; padding:8px 13px 8px 8px; background:rgba(255,255,255,.78); box-shadow:0 5px 0 #e7c9ee; }
.builder-page-hero .builder-steps b { background:#ffe1f1; border:2px solid white; box-shadow:0 3px 0 #eac6e9; }
.builder-hero-illustration { border:10px solid rgba(255,255,255,.94); box-shadow:0 8px 0 rgba(214,176,232,.58),0 26px 46px rgba(89,52,122,.16); background:linear-gradient(145deg,#fff6fb,#e6f9f8); }
.builder-workspace { width:min(1320px,calc(100% - 40px)); margin:42px auto 105px; }
.builder-form { grid-template-columns:minmax(0,1fr) minmax(360px,430px); gap:26px; }
.builder-section { padding:28px; margin-bottom:23px; border:3px solid white; border-radius:30px; background:linear-gradient(145deg,#fff 0%,#fff8fd 55%,#f3fffd 100%); box-shadow:0 7px 0 #ead0f0,0 17px 35px rgba(112,64,144,.07); }
.builder-section:nth-child(2) { background:linear-gradient(145deg,#fff 0%,#f6f2ff 100%); }
.builder-section:nth-child(3) { background:linear-gradient(145deg,#fff 0%,#fff0f7 100%); }
.builder-section:nth-child(4) { background:linear-gradient(145deg,#fff 0%,#edfbfa 100%); }
.builder-section:nth-child(5) { background:linear-gradient(145deg,#fff 0%,#fff8df 100%); }
.builder-section-title { gap:16px; margin-bottom:24px; }
.builder-section-title .step-number { width:47px;height:47px;border-radius:17px; border:3px solid white; color:#654184; background:linear-gradient(145deg,#ffd8ed,#e2d6ff 62%,#cff5f0); box-shadow:0 5px 0 #e8c9ee; font-size:15px; }
.builder-section-title h2 { font-size:clamp(20px,2vw,25px); font-weight:1000; color:#3d2455; text-shadow:0 1px 0 white; }
.builder-section-title p:not(.eyebrow) { font-size:12px; }
.choice-card { gap:13px; padding:12px; border:3px solid #f1dff5; border-radius:23px; background:linear-gradient(145deg,#fff,#fff5fb); box-shadow:0 5px 0 #ead7f2; }
.choice-card:hover { transform:translateY(-3px) rotate(-.2deg); border-color:#d9b2ec; box-shadow:0 8px 0 #e3c3ee,0 14px 23px rgba(129,78,157,.11); }
.choice-card:has(input:checked) { border-color:#ec72bb; background:linear-gradient(145deg,#fff0f8,#f1eaff 70%,#e8fbf8); box-shadow:0 5px 0 #e5b0dd,0 0 0 4px rgba(231,128,196,.15); }
.choice-details strong { font-size:12px; font-weight:1000; color:#42275d; letter-spacing:-.025em; }
.choice-details small { font-size:10px; }
.choice-details b { font-size:11px; font-weight:1000; color:#9a4aab; }
.choice-radio,.choice-check { accent-color:#e34fa7; width:18px;height:18px; }
.color-grid { grid-template-columns:repeat(auto-fit,minmax(135px,1fr)); }
.color-choice { border-radius:22px; padding:9px; }
.color-choice .choice-image { height:100px; border:3px solid white; border-radius:17px; box-shadow:0 4px 0 #ead6f1,0 8px 14px rgba(80,48,106,.1); object-fit:contain; }
.color-choice .choice-details { padding:3px 23px 5px 5px; }
.option-grid { gap:13px; }
.option-pick { border:3px solid white; border-radius:24px; background:linear-gradient(145deg,#fff,#fff5fb 75%,#f0fffc); box-shadow:0 5px 0 #ead7f1; padding:13px; }
.option-pick:hover { transform:translateY(-3px) rotate(-.2deg); border-color:#f1c8e9; box-shadow:0 8px 0 #e5c4ec; }
.option-thumb { width:78px;height:78px; border:3px solid #fff; border-radius:19px; box-shadow:0 4px 0 #edd7ef; background:#fff7fd; }
.option-pick-info>strong { font-size:12px; font-weight:1000; color:#482961; }
.option-pick-info>small { font-size:10px; }
.qty-label { font-size:10px;font-weight:850; }
.option-qty { border:2px solid #ecd6f1; border-radius:12px; min-height:32px; text-align:center; font-weight:1000; }
.letter-custom-section .letter-controls label { font-weight:1000; color:#52306d; }
.letter-custom-section .letter-controls input,.letter-custom-section .letter-controls select { min-height:49px; border:2px solid #ecd8f4; border-radius:16px; background:#fff; box-shadow:inset 0 2px 0 #fff; font-weight:800; }
.font-sample { border:2px solid white; border-radius:13px; box-shadow:0 4px 0 #e3bddf; }
.font-sample--bubble { border-radius:17px; text-shadow:1px 2px 0 white,-1px -1px 0 #f8b5dd; }
.design-summary { position:sticky; top:115px; padding:23px; border:3px solid white; border-radius:33px; background:linear-gradient(145deg,#fff 0%,#fff4fb 45%,#effdfa 100%); box-shadow:0 8px 0 #e7c9ed,0 23px 45px rgba(100,60,134,.11); }
.summary-top h2 { font-size:30px; font-weight:1000; letter-spacing:-.045em; color:#46265e; text-shadow:0 2px white; }
.summary-spark { width:52px;height:52px; border:3px solid white; border-radius:19px; background:linear-gradient(145deg,#ffdbef,#e6dbff); box-shadow:0 5px 0 #ead0ee; color:#9e4fc4; }
.live-summary-preview { border:3px solid white; border-radius:27px; background:linear-gradient(145deg,#f5edff 0%,#fff0f8 50%,#e5fbf7 100%); box-shadow:0 6px 0 #ead0f0; padding:15px; }
.preview-live-head { font-size:9px; font-weight:1000; color:#82549b; letter-spacing:.14em; }
.preview-stage--custom-rope { min-height:300px; aspect-ratio:620/360; border:4px solid white; border-radius:27px; background:radial-gradient(circle at 15% 10%,#fff 0%,transparent 42%),radial-gradient(circle at 88% 85%,rgba(195,247,240,.84),transparent 35%),linear-gradient(130deg,#f5e9ff 0%,#fff0f8 52%,#fff5df 100%); box-shadow:inset 0 0 0 2px #f3dff7,0 7px 0 #e6c8eb,0 12px 22px rgba(96,52,136,.10); }
.preview-stage--custom-rope:before { width:145px;height:145px;left:-72px;top:-77px;border:2px solid rgba(199,153,224,.23);box-shadow:0 0 0 12px rgba(255,255,255,.30),0 0 0 27px rgba(203,165,231,.09); }
.preview-stage--custom-rope:after { width:90px;height:90px;right:-46px;bottom:-47px;background:rgba(255,255,255,.45); }
.preview-rope-shadow { stroke:rgba(83,52,106,.22); stroke-width:36; filter:drop-shadow(0 7px 4px rgba(81,45,110,.2)); }
.preview-rope-strand--back { opacity:.96; stroke-width:29; }
.preview-rope-strand--front { stroke-width:22; }
.preview-rope-highlight { stroke-width:4.3; opacity:.96; }
.preview-rope-texture { stroke-width:11;stroke-dasharray:1.8 7.5; opacity:.58; }
.preview-rope-knot { stroke-width:15; filter:drop-shadow(0 4px 3px rgba(80,45,101,.25)); }
.preview-rope-knot path+path { stroke:var(--cord-light,#ffd3ea); stroke-width:4; }
.preview-rope-ends rect { stroke-width:2.5; }
.preview-stage--custom-rope .preview-ring-shadow { stroke:rgba(60,42,79,.40)!important; stroke-width:18!important; }
.preview-stage--custom-rope .preview-ring-body { stroke:var(--ring-color,#37b9ed)!important; stroke-width:13!important; }
.preview-stage--custom-rope .preview-ring-gate { stroke:var(--ring-color,#37b9ed)!important; stroke-width:14!important; }
.preview-stage--custom-rope .preview-ring-highlight { stroke:rgba(255,255,255,.9)!important; stroke-width:3.5!important; }
.preview-stage--custom-rope .preview-ring-button { fill:var(--ring-color,#37b9ed); stroke:rgba(61,43,82,.43); stroke-width:1.8; }
.preview-stage--custom-rope .preview-part { filter:drop-shadow(0 3px 2px rgba(70,42,93,.12)); }
.preview-stage--custom-rope .preview-part img { object-fit:contain; filter:drop-shadow(0 3px 2px rgba(43,33,60,.17)); }
.preview-stage--custom-rope .preview-letter-face { min-width:22px; border-radius:10px; border:2px solid #fff; outline:2px solid var(--letter-edge,#b92478); font-weight:1000; letter-spacing:-.04em; box-shadow:0 4px 0 var(--letter-edge,#b92478),0 8px 11px rgba(55,35,79,.20); text-shadow:1px 2px 0 var(--letter-edge,#b92478),0 1px 0 #fff; }
.preview-caption { font-size:10px!important; font-weight:900!important; color:#76518e!important; }
.preview-selected-options { border:2px dashed #e6c8ef; border-radius:17px; background:rgba(255,255,255,.82); color:#735188; font-size:9px; font-weight:800; }
.builder-selection-summary { background:#fffaff; border:2px solid #f0def6; border-radius:19px; padding:12px; }
.builder-selection-summary li { font-size:10px; font-weight:800; }
.summary-total { border-top:2px dashed #dfc3e9; }
.summary-total strong { font-size:25px; color:#a24db6; font-weight:1000; }
.secure-note { border:2px solid white; border-radius:16px; background:linear-gradient(135deg,#e3f8f4,#fff1f7); color:#705483; font-size:10px; font-weight:800; }
.ring-choice-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ring-choice-card { min-height:108px; padding:10px; border:3px solid white; border-radius:23px; background:linear-gradient(145deg,#fff 0%,#fff3fa 65%,#f1fffc 100%); box-shadow:0 5px 0 #ead4f1,0 9px 16px rgba(114,75,140,.07); }
.ring-choice-card .choice-image { width:76px;height:76px;min-width:76px;object-fit:contain;background:#fff;border:2px solid #fff;border-radius:18px;box-shadow:0 4px 0 #ead5f0; }
.ring-choice-card .choice-details strong { font-size:11px;font-weight:1000; }
.ring-choice-card:has(input:checked) { border-color:#ec63b4; background:linear-gradient(135deg,#fff0f8,#eee6ff 66%,#e9fbf7); box-shadow:0 5px 0 #e8b6df,0 0 0 4px rgba(226,103,184,.13); }
.ring-none-art { border:3px solid white; box-shadow:0 4px 0 #e7d2ed; }
.cart-items,.cart-summary,.auth-card,.account-panel,.order-card,.admin-panel { border-radius:25px; border:2px solid #f0dff5; box-shadow:0 5px 0 rgba(234,211,241,.68); }
.form-grid input,.form-grid textarea,.form-grid select,.checkout-form input,.checkout-form textarea,.checkout-form select { border:2px solid #ead7f1; border-radius:15px; }
.admin-topbar { background:linear-gradient(90deg,#fff 0%,#fff4fb 58%,#eefcf9 100%); border-bottom:2px solid #efdaf3; }
.admin-sidebar { background:linear-gradient(180deg,#fff7fc,#f6f0ff); }
.admin-sidebar nav a.active { background:linear-gradient(90deg,#ffe2f1,#eee4ff); box-shadow:0 4px 0 #e5c7ef; }
.admin-stats article { border-radius:22px; border:2px solid #fff; box-shadow:0 5px 0 #ead4f0; }
.admin-panel-header h2,.admin-page-heading h1 { font-weight:1000; letter-spacing:-.04em; }

@media (max-width: 1100px) {
  .builder-form { grid-template-columns:minmax(0,1fr) minmax(330px,380px); gap:18px; }
  .design-summary { padding:18px; }
  .preview-stage--custom-rope { min-height:280px; }
}
@media (max-width: 900px) {
  .builder-form { grid-template-columns:minmax(0,1fr) minmax(0,330px); }
  .builder-section { padding:20px; }
  .preview-stage--custom-rope { min-height:245px; }
  .ring-choice-grid { grid-template-columns:1fr; }
}
@media (max-width: 800px) {
  .hero { border-bottom:6px solid white; }
  .builder-page-hero { padding:42px 23px; }
  .builder-form { grid-template-columns:1fr; }
  .design-summary { position:static; order:-1; }
  .preview-stage--custom-rope { min-height:300px; }
  .ring-choice-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ring-choice-card .choice-image { width:62px;height:62px;min-width:62px; }
}
@media (max-width: 520px) {
  .top-strip { font-size:8px; }
  .builder-workspace { width:calc(100% - 22px); margin-top:20px; }
  .builder-section { padding:15px; border-radius:23px; margin-bottom:17px; }
  .builder-section-title .step-number { width:38px;height:38px; border-radius:14px; }
  .builder-section-title h2 { font-size:18px; }
  .choice-grid,.option-grid { grid-template-columns:1fr; }
  .color-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .color-choice .choice-image { height:82px; }
  .ring-choice-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .ring-choice-card { min-height:100px; flex-direction:column; align-items:stretch; gap:3px; padding:9px; }
  .ring-choice-card .choice-image,.ring-none-art { width:58px;height:58px;min-width:58px;align-self:center; }
  .ring-choice-card .choice-details { padding:4px 18px 3px 2px; }
  .ring-choice-card .choice-details strong { font-size:10px; }
  .ring-choice-card .choice-details small { font-size:8px; }
  .ring-choice-card .choice-details b { font-size:9px; }
  .preview-stage--custom-rope { min-height:245px; border-radius:21px; }
  .preview-stage--custom-rope .preview-letter-face { font-size:clamp(15px,4.4vw,24px); }
  .design-summary { padding:14px; border-radius:25px; }
  .live-summary-preview { padding:10px; }
}

/* Biblioteca PNG: administración de piezas y tipografías por imagen. */
.mf-upload-panel { background: linear-gradient(135deg,#fff8fc 0%,#f8f3ff 52%,#f0fffc 100%); border: 2px solid #f0d8f3; border-radius: 28px; box-shadow: 0 16px 35px rgba(143,91,170,.10); }
.mf-upload-form { max-width: 760px; }
.mf-import-form { padding: 4px 2px 0; }
.mf-import-form input[type=file] { background: #fff; border: 2px dashed #d7b4e5; border-radius: 18px; padding: 14px; }
.mf-import-form select,.mf-import-form input,.mf-import-form textarea { border-radius: 16px; border: 1.5px solid #e7d3ee; background: rgba(255,255,255,.94); }
.mf-import-form .btn { border-radius: 999px; font-weight: 900; box-shadow: 0 5px 0 #dba3ce,0 10px 22px rgba(207,103,174,.15); }
.preview-part--letter-png { background: transparent!important; border: 0!important; box-shadow: none!important; padding: 0!important; overflow: visible; }
.preview-part--letter-png img { border-radius: 0!important; mix-blend-mode: normal!important; filter: drop-shadow(0 3px 2px rgba(61,40,70,.18))!important; }
.admin-option-row .admin-option-img img[src$=".svg"] { object-fit: contain; padding: 6px; background: linear-gradient(135deg,#fff5fc,#f4fbff); border-radius: 16px; }
.imported-letter-note{padding:12px 15px;border-radius:16px;background:#f4fff9;border:1.5px solid #c8f0de;color:#3b7767;font-weight:700;font-size:.88rem}


/* Legado visual: los controles de carga actuales usan PNG. */
.mf-family-fields { grid-column: 1 / -1; padding: 16px 18px; border: 2px solid #f0d1ed; border-radius: 20px; background: linear-gradient(135deg, #fff2fa 0%, #f2efff 58%, #edfffb 100%); }
.mf-family-fields[hidden] { display: none !important; }
.mf-family-fields label { display: grid; gap: 8px; font-weight: 800; color: #39274e; }
.mf-family-fields input { width: 100%; border: 2px solid #dfc0e9; border-radius: 14px; padding: 12px 14px; background: #fff; }
.mf-family-fields small { color: #756386; font-weight: 500; line-height: 1.5; }
.mf-registered-form { display: block; }
.mf-bulk-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin: 8px 0 18px; padding: 12px 14px; border:2px solid #eeddf3; border-radius:18px; background: #fff7fd; }
.mf-select-all, .mf-row-select { display:flex; align-items:center; gap:9px; font-weight:800; color:#624278; }
.mf-select-all input, .mf-row-select input { width:19px; height:19px; accent-color:#d94fa8; cursor:pointer; }
.mf-row-select { flex:0 0 28px; justify-content:center; align-self:center; }
.admin-option-row:has(.mf-row-select) { gap: 13px; }
.mf-bulk-toolbar .mini-danger { border:0; border-radius:999px; background:#ffe5ef; color:#a2265d; font-weight:900; padding:10px 17px; cursor:pointer; }
.mf-bulk-toolbar .mini-danger:hover { background:#ffd4e5; }

/* Preview de cuerda: argolla integrada y nudo barril realista. */
.preview-stage--custom-rope .preview-ring-connector-shadow { fill:none; stroke:rgba(70,43,85,.28); stroke-width:18; stroke-linecap:round; filter:drop-shadow(0 3px 2px rgba(58,38,76,.18)); }
.preview-stage--custom-rope .preview-ring-connector { fill:none; stroke:var(--cord-color,#ef92c7); stroke-width:12; stroke-linecap:round; stroke-linejoin:round; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-shadow { stroke:rgba(57,38,68,.38)!important; stroke-width:17!important; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-body { stroke:var(--ring-color,#37b9ed)!important; stroke-width:12.5!important; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-gate { stroke:var(--ring-color,#37b9ed)!important; stroke-width:13!important; }
.preview-stage--custom-rope .preview-ring-highlight { stroke:rgba(255,255,255,.94)!important; stroke-width:3.5!important; }
.preview-stage--custom-rope .preview-rope-knot { stroke-width:13.5; filter:drop-shadow(0 4px 3px rgba(80,45,101,.27)); }
.preview-stage--custom-rope .preview-rope-knot path+path { stroke:var(--cord-light,#ffd3ea); stroke-width:3.3; }
.preview-stage--custom-rope .preview-letter-face { min-width:27px; min-height:31px; padding:2px 5px; font-size:18px; border-radius:10px; border:2px solid #fff; outline:2px solid var(--letter-edge,#b92478); font-weight:1000; box-shadow:0 4px 0 var(--letter-edge,#b92478),0 8px 11px rgba(55,35,79,.20); }


/* V4: cordón de referencia con textura fotográfica, doble ramal, nudo barril y argolla superpuesta. */
.preview-stage--custom-rope { aspect-ratio: 3 / 2 !important; min-height: 292px !important; }
.preview-stage--custom-rope .preview-rope-photo {
 position:absolute; inset:0; z-index:1; width:100%; height:100%; object-fit:contain; object-position:center;
 pointer-events:none; user-select:none; -webkit-user-drag:none; opacity:.98; filter:hue-rotate(var(--rope-hue-rotate,0deg)) saturate(1.05) contrast(1.02);
}
.preview-stage--custom-rope .preview-rope-svg { z-index:3; }
.preview-stage--custom-rope .preview-rope-shadow,
.preview-stage--custom-rope .preview-rope-strand,
.preview-stage--custom-rope .preview-rope-highlight,
.preview-stage--custom-rope .preview-rope-texture,
.preview-stage--custom-rope .preview-rope-knot,
.preview-stage--custom-rope .preview-rope-ends { opacity:0 !important; }
.preview-stage--custom-rope .preview-rope-path { opacity:0!important; stroke:transparent!important; stroke-width:0!important; }
.preview-stage--custom-rope .preview-rope-ring { filter:drop-shadow(0 3px 2px rgba(58,35,73,.22)); }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-shadow { fill:none; stroke:rgba(47,34,58,.42)!important; stroke-width:17!important; stroke-linecap:round; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-body { fill:none; stroke:var(--ring-color,#37b9ed)!important; stroke-width:11.5!important; stroke-linecap:round; stroke-linejoin:round; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-gate { fill:none; stroke:var(--ring-color,#37b9ed)!important; stroke-width:12!important; stroke-linecap:round; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-highlight { fill:none; stroke:rgba(255,255,255,.95)!important; stroke-width:3!important; }
.preview-stage--custom-rope .preview-rope-ring .preview-ring-button { fill:var(--ring-color,#37b9ed); stroke:rgba(42,30,53,.28); stroke-width:1.5; }
.preview-stage--custom-rope .preview-parts { z-index:5!important; }
.preview-stage--custom-rope .preview-part--letter-png img,
.preview-stage--custom-rope .preview-part img { object-fit:contain; }
@media(max-width:800px){.preview-stage--custom-rope{min-height:252px!important;}}
@media(max-width:430px){.preview-stage--custom-rope{min-height:218px!important;}}

/* Selección múltiple de productos/opciones desde el panel de administración. */
.bulk-action-form{display:none!important}
.bulk-action-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 16px;padding:13px 15px;border:2px solid #eedcf3;border-radius:18px;background:linear-gradient(135deg,#fff8fd,#f4f0ff)}
.bulk-action-toolbar label{display:flex;align-items:center;gap:9px;font-weight:900;color:#67447c}
.bulk-action-toolbar input[type=checkbox],.bulk-select-box input{width:19px;height:19px;accent-color:#d94fa8;cursor:pointer}
.bulk-action-toolbar span{font-size:12px;color:#877691}
.bulk-select-box{flex:0 0 28px;display:flex;align-items:center;justify-content:center;align-self:center}
.admin-product-row:has(.bulk-select-box),.admin-option-row:has(.bulk-select-box){gap:12px}
.bulk-action-footer{display:flex;justify-content:flex-end;padding-top:15px;margin-top:10px;border-top:1px solid #eedcf3}
.bulk-action-footer .mini-danger{border:0;border-radius:999px;background:#ffe4ef;color:#9f245d;font-weight:1000;padding:12px 18px;cursor:pointer;box-shadow:0 4px 0 #f2bfd9}
.bulk-action-footer .mini-danger:hover{transform:translateY(-1px);background:#ffd3e6}
.mf-map-letter-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:8px;margin-top:10px;padding:9px;border-radius:13px;background:#fff4fb;border:1px solid #efcee6}
.mf-map-letter-form label{display:grid;gap:4px;font-size:11px;font-weight:900;color:#744c8a}
.mf-map-letter-form select{min-width:70px;border:1px solid #e2c8ec;background:white;border-radius:9px;padding:6px;font-weight:900}
.mf-map-letter-form .mini-save{border:0;border-radius:10px;padding:8px 10px;background:#a8ecdc;color:#245e54;font-weight:900;cursor:pointer}
@media(max-width:640px){.mf-map-letter-form{grid-template-columns:1fr}.bulk-action-toolbar span{width:100%}}


/* CHISPITAS V5 — fotografía real como única cuerda; el SVG se usa solo para guías invisibles, argolla y tapones. */
.builder-page-hero--live .builder-hero-illustration--photo {display:flex;align-items:center;justify-content:center;min-height:240px;background:linear-gradient(145deg,#fff0f8,#f1eaff 58%,#e8fbf7);border:4px solid #fff;border-radius:38px;box-shadow:0 8px 0 #e6c8eb,0 20px 40px rgba(96,52,136,.12);overflow:hidden;}
.builder-page-hero--live .builder-hero-illustration--photo img {display:block;width:min(100%,300px);height:290px;object-fit:contain;filter:drop-shadow(0 8px 8px rgba(95,48,95,.10));}
.base-price-pill {display:inline-flex;flex-direction:column;gap:3px;margin-top:18px;padding:13px 18px;border:3px solid white;border-radius:22px;background:linear-gradient(135deg,#fff0f8,#eee5ff 60%,#e3fbf6);box-shadow:0 5px 0 #e4c6eb;color:#6c4385;}
.base-price-pill span {font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;}
.base-price-pill strong {font-size:30px;font-weight:1000;line-height:1;color:#b63f91;}
.base-price-pill small {font-size:10px;font-weight:800;}
.preview-stage--custom-rope {position:relative!important;width:100%;max-width:380px;min-height:0!important;height:auto!important;aspect-ratio:2/3!important;margin:0 auto;border:4px solid white!important;border-radius:30px!important;overflow:hidden;background:radial-gradient(circle at 20% 8%,#fff 0%,transparent 35%),linear-gradient(145deg,#fff7fc,#f0eaff 56%,#e8fbf7)!important;box-shadow:inset 0 0 0 2px #f3dff7,0 7px 0 #e6c8eb,0 12px 22px rgba(96,52,136,.10)!important;}
.preview-stage--custom-rope:before,.preview-stage--custom-rope:after {pointer-events:none;}
.preview-stage--custom-rope .preview-rope-photo {position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;z-index:2!important;opacity:1!important;mix-blend-mode:normal!important;}
.preview-stage--custom-rope .preview-rope-svg {position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:4!important;overflow:visible!important;pointer-events:none!important;}
.preview-stage--custom-rope .preview-rope-path {fill:none!important;stroke:transparent!important;stroke-width:0!important;opacity:0!important;pointer-events:none!important;}
.preview-stage--custom-rope .preview-rope-ring {filter:drop-shadow(0 3px 3px rgba(40,25,45,.3));}
.preview-stage--custom-rope .preview-rope-ring .preview-ring-shadow {fill:none!important;stroke:rgba(50,30,55,.5)!important;stroke-width:24!important;stroke-linecap:round;}
.preview-stage--custom-rope .preview-rope-ring .preview-ring-body {fill:none!important;stroke:url(#ring-metal)!important;stroke-width:20!important;stroke-linecap:round;stroke-linejoin:round;}
.preview-stage--custom-rope .preview-rope-ring .preview-ring-gate {fill:none!important;stroke:var(--ring-color,#37b9ed)!important;stroke-width:20!important;stroke-linecap:round;}
.preview-stage--custom-rope .preview-rope-ring .preview-ring-highlight {fill:none!important;stroke:rgba(255,255,255,.96)!important;stroke-width:5!important;stroke-linecap:round;}
.preview-stage--custom-rope .preview-rope-ends rect {fill:url(#endcap-gradient)!important;stroke:rgba(255,255,255,.85)!important;stroke-width:4!important;filter:drop-shadow(0 4px 3px rgba(63,35,68,.24));}
.preview-stage--custom-rope .preview-parts {position:absolute!important;inset:0!important;z-index:5!important;pointer-events:none!important;}
.preview-stage--custom-rope .preview-part {pointer-events:auto!important;touch-action:none!important;}
.preview-stage--custom-rope .preview-part img {object-fit:contain!important;background:transparent!important;}
.preview-stage--custom-rope .preview-part--photo img {mix-blend-mode:multiply!important;}
.preview-stage--custom-rope .preview-part--letter-png img {mix-blend-mode:normal!important;}
.preview-stage--custom-rope .preview-part--letter-png {background:transparent!important;}
.shipping-selector,.shipping-fieldset {display:grid;gap:10px;margin:18px 0;padding:14px;border:2px solid #f0def6;border-radius:20px;background:linear-gradient(145deg,#fff,#fff5fb);}
.shipping-fieldset {min-width:0;}
.shipping-fieldset legend,.shipping-selector>.eyebrow {font-size:10px;font-weight:1000;letter-spacing:.12em;color:#8a559c;padding:0 5px;}
.shipping-option {display:flex;align-items:center;gap:10px;padding:12px;border:2px solid #f1e0f5;border-radius:16px;background:white;cursor:pointer;}
.shipping-option:has(input:checked) {border-color:#e96db7;background:linear-gradient(135deg,#fff1f8,#f2ebff);box-shadow:0 3px 0 #e9c8eb;}
.shipping-option input {accent-color:#e34fa7;flex:0 0 auto;}
.shipping-option span {display:flex;flex:1;flex-direction:column;gap:3px;}
.shipping-option strong {font-size:12px;color:#49295e;}
.shipping-option small {font-size:10px;color:#8d729b;}
.shipping-option>b {font-size:12px;color:#a94c9f;white-space:nowrap;}
.sinpe-payment-card {display:flex;gap:13px;align-items:flex-start;padding:16px;margin:14px 0;border:3px solid white;border-radius:23px;background:linear-gradient(135deg,#e5faf4,#f2ebff 60%,#fff0f8);box-shadow:0 5px 0 #e5cfee;color:#57376d;}
.sinpe-icon {display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:15px;background:#fff;color:#b14392;font-size:22px;font-weight:1000;box-shadow:0 3px 0 #ead0ee;}
.sinpe-payment-card strong {display:block;font-size:14px;font-weight:1000;}
.sinpe-payment-card p {margin:5px 0;font-size:11px;line-height:1.5;}
.sinpe-payment-card b {display:block;font-size:18px;color:#b13e91;letter-spacing:.04em;}
.sinpe-payment-card small {display:block;margin-top:5px;font-size:10px;}
.success-sinpe {max-width:460px;margin:18px auto;text-align:left;}
@media(max-width:800px){.preview-stage--custom-rope{max-width:340px!important;aspect-ratio:2/3!important;min-height:0!important}.builder-page-hero--live .builder-hero-illustration--photo img{height:230px}.base-price-pill strong{font-size:27px}}
@media(max-width:430px){.preview-stage--custom-rope{max-width:300px!important}.shipping-option{padding:10px}}

.preview-stage--custom-rope .preview-ring-layer {position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:3!important;overflow:visible!important;pointer-events:none!important;}
.preview-stage--custom-rope .preview-ring-layer .preview-rope-ring {filter:drop-shadow(0 3px 3px rgba(40,25,45,.32));}
.preview-stage--custom-rope .preview-ring-layer .preview-ring-shadow {fill:none!important;stroke:rgba(50,30,55,.52)!important;stroke-width:26!important;stroke-linecap:round;}
.preview-stage--custom-rope .preview-ring-layer .preview-ring-body {fill:none!important;stroke:url(#ring-metal)!important;stroke-width:20!important;stroke-linecap:round;stroke-linejoin:round;}
.preview-stage--custom-rope .preview-ring-layer .preview-ring-gate {fill:none!important;stroke:var(--ring-color,#37b9ed)!important;stroke-width:20!important;stroke-linecap:round;}
.preview-stage--custom-rope .preview-ring-layer .preview-ring-highlight {fill:none!important;stroke:rgba(255,255,255,.96)!important;stroke-width:5!important;stroke-linecap:round;}

.preview-stage--custom-rope #preview-rope-ring {display:none;}
.preview-stage--custom-rope.has-ring #preview-rope-ring {display:block;}


/* V6: clearer account entry, accessible steppers, animated trash action, and responsive refinements */
.account-link--login{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:2px solid #e8d5f1;border-radius:14px;background:linear-gradient(135deg,#fff,#fff0f8);color:#623d82!important;font-weight:950!important;box-shadow:0 3px 0 #efdff4}
.account-create-link{font-size:11px;font-weight:950;color:#fff;background:linear-gradient(110deg,#ec6ab4,#9a69d1);padding:10px 13px;border-radius:13px;white-space:nowrap;box-shadow:0 4px 0 #e4c3e7}
.account-create-link:hover,.account-link--login:hover{transform:translateY(-1px)}
.builder-account-prompt{width:min(1120px,calc(100% - 40px));margin:20px auto 0;padding:16px 20px;display:flex;align-items:center;gap:15px;border:2px solid #f0dff6;border-radius:22px;background:linear-gradient(110deg,#fff1f8,#f3efff 58%,#eafbf7);box-shadow:0 5px 0 #ead4f1}
.builder-account-prompt-icon{display:grid;place-items:center;flex:0 0 45px;height:45px;border-radius:15px;background:#fff;color:#d94f9c;font-size:27px;box-shadow:0 3px 0 #f4d0e8}
.builder-account-prompt>div:nth-child(2){flex:1;min-width:0}.builder-account-prompt strong{display:block;font-size:14px;font-weight:1000;color:#49305f}.builder-account-prompt p{margin:3px 0 0;font-size:11px;color:#766786}.builder-account-actions{display:flex;gap:8px;flex-wrap:wrap}
.quantity-stepper,.cart-quantity-stepper{display:inline-flex;align-items:center;gap:8px;padding:5px;border:2px solid #ecd8f3;border-radius:16px;background:#fff;box-shadow:0 3px 0 #f1e2f5}
.quantity-stepper input{width:42px;min-width:42px;border:0!important;box-shadow:none!important;text-align:center;font-weight:1000;background:transparent!important;padding:0!important;appearance:textfield;-moz-appearance:textfield}
.quantity-stepper input::-webkit-outer-spin-button,.quantity-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qty-step{display:inline-grid;place-items:center;width:34px;height:34px;min-width:34px;border:0;border-radius:11px;background:#f8eafa;color:#6e458b;font-size:20px;font-weight:1000;line-height:1;transition:transform .18s,background .18s,box-shadow .18s;box-shadow:0 3px 0 #e6c9ee}
.qty-step:hover:not(:disabled){transform:translateY(-2px) scale(1.04);background:#ffe1f0;box-shadow:0 5px 0 #e6c9ee}.qty-step:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 0 #e6c9ee}.qty-step:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}
.cart-row-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.cart-quantity-stepper{gap:9px;padding:3px}.cart-quantity-stepper output{min-width:18px;text-align:center;font-weight:1000;font-size:13px;color:#49305f}.cart-quantity-stepper .qty-step{width:30px;height:30px;min-width:30px;font-size:18px}
.cart-remove-form{margin:0}.trash-remove{display:inline-flex;align-items:center;gap:6px;border:1px solid #f2c9dc!important;border-radius:12px!important;background:#fff4f8!important;color:#a63770!important;padding:7px 10px!important;font-size:10px!important;font-weight:950!important;transition:transform .18s,background .18s,box-shadow .18s!important}.trash-icon{display:inline-block;font-size:17px;transform-origin:50% 15%;transition:transform .22s cubic-bezier(.2,.8,.2,1)}.trash-remove:hover .trash-icon{animation:trash-wiggle .48s ease-in-out;transform:rotate(-12deg) translateY(-1px)}.trash-remove:hover{background:#ffe2ee!important;box-shadow:0 4px 0 #f0cade!important;transform:translateY(-1px)}@keyframes trash-wiggle{0%,100%{transform:rotate(0)}25%{transform:rotate(-15deg)}55%{transform:rotate(13deg)}75%{transform:rotate(-7deg)}}
.preview-stage--custom-rope .preview-part--letter-png{overflow:visible!important}.preview-stage--custom-rope .preview-part--letter-png img{display:block!important;opacity:1!important;visibility:visible!important;width:100%!important;height:100%!important;object-fit:contain!important;mix-blend-mode:normal!important;background:transparent!important;filter:drop-shadow(0 3px 3px rgba(45,28,58,.25))!important}
.preview-letter-glyph{position:absolute;right:-3px;bottom:-5px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 3px;border:1px solid #fff;border-radius:6px;background:#fff0f8;color:#653d80;font-size:10px;font-weight:1000;line-height:1;box-shadow:0 2px 0 #e7c7e9;pointer-events:none}
@media(max-width:900px){.header-inner{width:calc(100% - 28px);gap:15px}.main-nav{gap:15px}.header-actions{gap:8px}.account-create-link{padding:9px 10px;font-size:10px}}
@media(max-width:800px){.builder-account-prompt{width:calc(100% - 26px);align-items:flex-start;flex-wrap:wrap;padding:14px}.builder-account-prompt>div:nth-child(2){flex-basis:calc(100% - 65px)}.builder-account-actions{width:100%;padding-left:60px}.quantity-stepper,.cart-quantity-stepper{gap:6px}.cart-row-actions{gap:7px}.cart-row{align-items:flex-start}.cart-row-price{align-self:center}}
@media(max-width:600px){.header-inner{width:calc(100% - 22px);min-height:70px;gap:8px}.brand-logo{width:43px;height:43px}.brand-copy strong{font-size:15px}.brand-copy small{font-size:7px;letter-spacing:.16em}.menu-toggle{display:block;margin-left:auto;flex:0 0 38px}.main-nav{display:none;position:absolute;left:10px;right:10px;top:calc(100% + 6px);margin:0;padding:14px;border:1px solid #f0dff6;border-radius:18px;background:#fffdfd;box-shadow:0 12px 30px rgba(49,31,79,.13);align-items:stretch;gap:0;flex-direction:column}.main-nav.open{display:flex}.main-nav a{padding:12px 10px;border-radius:10px;font-size:13px}.main-nav a.active:after{display:none}.header-actions{margin-left:0;gap:6px}.account-link--login{min-height:32px;padding:0 8px;font-size:10px}.account-create-link{display:none}.icon-link{font-size:16px}.cart-count{min-width:17px;height:17px;font-size:9px}.qty-row{align-items:stretch;flex-wrap:wrap}.qty-row .quantity-stepper{justify-content:center}.qty-row>.btn{width:100%}.cart-row{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;padding:13px}.cart-thumb{width:58px;height:58px}.cart-row-copy{min-width:0}.cart-row-price{grid-column:2;justify-self:start;font-size:14px}.cart-row-actions{align-items:center}.trash-label{display:none}.trash-remove{padding:5px 8px!important}.cart-quantity-stepper .qty-step{width:29px;height:29px;min-width:29px}.cart-layout{grid-template-columns:minmax(0,1fr)!important}.cart-summary{position:static!important}.builder-workspace{width:calc(100% - 20px)!important}.builder-form{grid-template-columns:minmax(0,1fr)!important}.design-summary{position:static!important}.preview-stage--custom-rope{width:100%;max-width:100%!important;min-height:clamp(260px,78vw,420px)!important;aspect-ratio:2/3!important}.preview-stage--custom-rope .preview-part{max-width:none!important}.preview-stage--custom-rope .preview-part--letter-png img{object-fit:contain!important}.auth-layout{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}.auth-side{min-height:180px!important;padding:24px!important}.auth-side h1{font-size:34px!important}.auth-card{width:100%;padding:22px 16px!important}.product-detail{grid-template-columns:minmax(0,1fr)!important}.detail-photo{max-height:420px}.section-block,.page-title-block{width:calc(100% - 28px)!important}}
@media(max-width:380px){.header-actions .account-link--login{font-size:9px;padding:0 6px}.brand-copy strong{font-size:13px}.header-inner{gap:5px}.icon-link{font-size:14px}.preview-stage--custom-rope{min-height:235px!important}.builder-account-actions{padding-left:0}.cart-row-actions{gap:5px}}
@media(prefers-reduced-motion:reduce){.trash-icon,.trash-remove,.qty-step{animation:none!important;transition:none!important}}
.main-nav .nav-account-entry,.main-nav .nav-register-entry{display:none}
@media(max-width:600px){.main-nav .nav-account-entry,.main-nav .nav-register-entry{display:block}.main-nav .nav-register-entry{background:linear-gradient(110deg,#ec6ab4,#9a69d1);color:#fff!important;font-weight:950;padding-left:14px;margin-top:5px}.main-nav .nav-account-entry{background:#f8eefb;color:#653d80!important;font-weight:950}}

/* V7 — accessible plus/minus controls for charm and bit quantities */
.qty-control-block {display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:9px;}
.builder-quantity-stepper {display:inline-flex;align-items:center;justify-content:space-between;gap:5px;min-height:40px;padding:4px;border:2px solid #eed9f3;border-radius:16px;background:linear-gradient(145deg,#fff,#fff7fd);box-shadow:0 3px 0 #f0dfef;}
.builder-quantity-stepper .qty-step {display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;padding:0;border:0;border-radius:11px;background:linear-gradient(135deg,#f5c5e7,#d7c7ff);color:#4b2c60;font-size:21px;font-weight:900;line-height:1;cursor:pointer;box-shadow:0 2px 0 #d6b6e6;}
.builder-quantity-stepper .qty-step:hover:not(:disabled) {transform:translateY(-1px);filter:saturate(1.1);}
.builder-quantity-stepper .qty-step:disabled {opacity:.38;cursor:not-allowed;box-shadow:none;}
.builder-quantity-stepper input.option-qty {width:38px;min-width:38px;max-width:38px;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;text-align:center;font-weight:1000;color:#4b2c60;appearance:textfield;-moz-appearance:textfield;}
.builder-quantity-stepper input.option-qty::-webkit-outer-spin-button,.builder-quantity-stepper input.option-qty::-webkit-inner-spin-button {-webkit-appearance:none;margin:0;}
.option-pick-info .qty-label {display:block;font-size:11px;font-weight:800;color:#80638d;}

/* The chosen ring should sit on the top loop, right above the barrel knot. */
.preview-stage--custom-rope .preview-ring-layer {transform:none!important;}
.preview-stage--custom-rope .preview-ring-layer .preview-rope-ring {transform-origin:512px 95px;}
.preview-stage--custom-rope .preview-ring-layer .preview-ring-shadow {stroke-width:18!important;}
.preview-stage--custom-rope .preview-ring-layer .preview-ring-body {stroke-width:14!important;}
.preview-stage--custom-rope .preview-ring-layer .preview-ring-gate {stroke-width:14!important;}
.preview-stage--custom-rope .preview-ring-layer .preview-ring-highlight {stroke-width:3.5!important;}


/* CHISPITAS V8.1 — align photographic rope, SVG coordinates and draggable pieces on every breakpoint. */
#paracord-preview.preview-stage--custom-rope {
  position:relative!important; display:block!important; box-sizing:border-box!important;
  width:min(100%,340px)!important; max-width:340px!important; min-width:0!important;
  height:auto!important; min-height:0!important; aspect-ratio:2 / 3!important;
  padding:0!important; margin:0 auto!important; overflow:hidden!important;
  border:4px solid #fff!important; border-radius:28px!important;
  background:linear-gradient(145deg,#fff8fd 0%,#f2eaff 56%,#e5fbf6 100%)!important;
  box-shadow:inset 0 0 0 2px #f3dff7,0 7px 0 #e6c8eb,0 12px 22px rgba(96,52,136,.10)!important;
}
#paracord-preview.preview-stage--custom-rope::before,
#paracord-preview.preview-stage--custom-rope::after {pointer-events:none;z-index:0;}
#paracord-preview .preview-rope-photo {
  position:absolute!important; inset:0!important; display:block!important;
  width:100%!important; height:100%!important; object-fit:fill!important; object-position:center!important;
  z-index:2!important; opacity:1!important; mix-blend-mode:normal!important;
  filter:var(--rope-photo-filter,none); pointer-events:none!important;
}
#paracord-preview .preview-rope-svg,
#paracord-preview .preview-ring-layer {
  position:absolute!important; inset:0!important; width:100%!important; height:100%!important;
  overflow:hidden!important; pointer-events:none!important;
}
#paracord-preview .preview-rope-svg {z-index:3!important;}
#paracord-preview .preview-ring-layer {z-index:4!important;}
#paracord-preview .preview-parts {
  position:absolute!important; inset:0!important; z-index:6!important; display:block!important;
  width:100%!important; height:100%!important; transform:none!important; pointer-events:none!important;
}
#paracord-preview .preview-part {pointer-events:auto!important; max-width:none!important; touch-action:none!important;}
#paracord-preview .preview-part img,
#paracord-preview .preview-part--photo img,
#paracord-preview .preview-part--letter-png img {
  display:block!important; max-width:100%!important; max-height:100%!important;
  object-fit:contain!important; background:transparent!important; mix-blend-mode:normal!important;
}
#paracord-preview .preview-part--letter-png img {filter:drop-shadow(0 2px 2px rgba(51,32,65,.18))!important;}
/* Ring is a colored snap-ring sitting around the photo loop immediately above the barrel knot. */
#paracord-preview .preview-ring-layer .preview-rope-ring {transform:none!important;filter:drop-shadow(0 2px 2px rgba(38,26,49,.25))!important;}
#paracord-preview .preview-ring-layer .preview-ring-shadow {stroke:rgba(49,35,59,.38)!important;stroke-width:28!important;}
#paracord-preview .preview-ring-layer .preview-ring-body {stroke-width:22!important;}
#paracord-preview .preview-ring-layer .preview-ring-gate {stroke-width:22!important;}
#paracord-preview .preview-ring-layer .preview-ring-highlight {stroke-width:5!important;}
@media(max-width:800px) {
  #paracord-preview.preview-stage--custom-rope {width:min(100%,320px)!important;max-width:320px!important;min-height:0!important;aspect-ratio:2/3!important;border-radius:24px!important;}
  .preview-stage--custom-rope .preview-part--letter-png img {object-fit:contain!important;}
}
@media(max-width:480px) {
  #paracord-preview.preview-stage--custom-rope {width:min(100%,290px)!important;max-width:290px!important;min-height:0!important;aspect-ratio:2/3!important;}
}

/* Advanced analytics: compact cards, readable tables and phone-first layout. */
.analytics-range {display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;}
.analytics-range a {display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border:2px solid #eadbf2;border-radius:999px;background:#fff;color:#76538b;font-size:12px;font-weight:950;}
.analytics-range a.active {border-color:#d96ab5;background:linear-gradient(135deg,#ffe7f4,#eee7ff);color:#57316d;box-shadow:0 3px 0 #ebc8e9;}
.analytics-kpis {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 22px;}
.analytics-kpi {position:relative;min-width:0;padding:17px;border:2px solid #f0e1f5;border-radius:20px;background:linear-gradient(145deg,#fff,#fff7fc 54%,#f3f0ff);box-shadow:0 4px 0 #efdef3;}
.analytics-kpi span {display:block;color:#856c94;font-size:11px;font-weight:900;}
.analytics-kpi strong {display:block;margin:7px 0 4px;color:#55306e;font-size:clamp(22px,3vw,32px);font-weight:1000;line-height:1.12;overflow-wrap:anywhere;}
.analytics-kpi small {color:#9683a1;font-size:10px;}
.analytics-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;margin:15px 0;}
.analytics-card {min-width:0;padding:17px;border:2px solid #f0e1f5;border-radius:22px;background:#fff;box-shadow:0 4px 0 #f4e9f6;}
.analytics-card h2 {margin:0 0 5px;font-size:17px;color:#57366f;}
.analytics-card>p {margin:0 0 14px;color:#8d7898;font-size:11px;line-height:1.55;}
.analytics-table {width:100%;border-collapse:collapse;font-size:12px;}
.analytics-table th,.analytics-table td {padding:9px 6px;text-align:left;border-bottom:1px solid #f2e8f4;vertical-align:top;overflow-wrap:anywhere;}
.analytics-table th {color:#8a7197;font-size:10px;text-transform:uppercase;letter-spacing:.06em;}
.analytics-table td:last-child,.analytics-table th:last-child {text-align:right;font-variant-numeric:tabular-nums;}
.analytics-empty {padding:16px;border:1px dashed #e8d7ef;border-radius:15px;color:#927e9b;font-size:12px;background:#fffbfe;}
.analytics-bars {display:grid;gap:9px;}
.analytics-bar-row {display:grid;grid-template-columns:minmax(64px,110px) minmax(0,1fr) 40px;gap:8px;align-items:center;font-size:11px;}
.analytics-bar-label {color:#6d557b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.analytics-bar-track {height:10px;border-radius:999px;background:#f4eaf7;overflow:hidden;}
.analytics-bar-fill {height:100%;min-width:2px;border-radius:999px;background:linear-gradient(90deg,#e96cb8,#9a80dc,#8cdcd3);}
.analytics-bar-value {text-align:right;color:#6e4c82;font-weight:950;font-variant-numeric:tabular-nums;}
.analytics-privacy-note {padding:14px;border-radius:16px;background:linear-gradient(135deg,#f0fbf8,#f8effb);color:#5f4a71;font-size:11px;line-height:1.65;border:1px solid #e4d9f1;}
.analytics-heading-actions {display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
@media(max-width:950px){.analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.analytics-grid{grid-template-columns:minmax(0,1fr);}.analytics-card{padding:13px;border-radius:17px;}.analytics-kpi{padding:13px;border-radius:16px;}.analytics-bar-row{grid-template-columns:82px minmax(0,1fr) 34px;gap:6px}.analytics-table{font-size:11px}.analytics-table th,.analytics-table td{padding:8px 4px}}


/* CHISPITAS V8.2 — el preview usa el mismo lienzo 2:3 que la fotografía de cuerda. */
#paracord-preview.preview-stage--custom-rope {
  width:min(100%,340px)!important; max-width:340px!important;
  aspect-ratio:2/3!important; height:auto!important; min-height:0!important;
}
#paracord-preview .preview-rope-photo {
  object-fit:fill!important;
  filter:var(--rope-photo-filter,none)!important;
}
#paracord-preview .preview-ring-photo {
  position:absolute!important; z-index:5!important;
  left:38.8%!important; top:1.1%!important;
  width:22.4%!important; height:14.7%!important;
  object-fit:contain!important; object-position:center!important;
  border:0!important; border-radius:0!important;
  background:transparent!important; mix-blend-mode:multiply!important;
  filter:drop-shadow(0 2px 2px rgba(42,26,48,.25))!important;
  pointer-events:none!important; user-select:none!important;
}
#paracord-preview .preview-ring-photo[hidden] {display:none!important;}
#paracord-preview.has-ring-photo #preview-rope-ring {display:none!important;}
#paracord-preview:not(.has-ring-photo) #preview-rope-ring {display:block;}
#paracord-preview .preview-rope-ends {opacity:1!important;}
#paracord-preview .preview-rope-ends rect {opacity:.96!important;}
@media(max-width:600px) {
  .builder-page-hero--live {
    display:flex!important; flex-direction:column!important; align-items:stretch!important;
    justify-content:flex-start!important; gap:20px!important;
    padding:32px 18px 28px!important; min-height:0!important;
  }
  .builder-page-hero--live>div:first-child {width:100%!important; max-width:none!important; position:relative!important; z-index:2!important;}
  .builder-page-hero--live h1 {font-size:clamp(34px,9vw,48px)!important; line-height:1.04!important;}
  .builder-page-hero--live .builder-hero-illustration--photo {
    position:relative!important; inset:auto!important; right:auto!important; bottom:auto!important;
    width:min(100%,300px)!important; height:auto!important; min-height:0!important;
    margin:0 auto!important; opacity:1!important; transform:none!important;
  }
  .builder-page-hero--live .builder-hero-illustration--photo img {
    width:100%!important; height:auto!important; max-height:330px!important; object-fit:contain!important;
  }
  .builder-form .design-summary {
    display:block!important; width:100%!important; min-width:0!important;
    padding:16px!important; order:-1!important;
  }
  .design-summary .summary-preview {display:block!important; grid-row:auto!important; padding:12px!important; margin:12px 0!important;}
  #paracord-preview.preview-stage--custom-rope {width:min(100%,290px)!important; max-width:290px!important; aspect-ratio:2/3!important; min-height:0!important;}
  .builder-selection-summary,.design-summary .summary-total,.design-summary .summary-small,.design-summary .btn,.design-summary .secure-note {grid-column:auto!important;}
  .analytics-kpis {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .analytics-grid {grid-template-columns:minmax(0,1fr)!important;}
}
@media(min-width:601px) and (max-width:900px) {
  .builder-page-hero--live {gap:20px!important; padding-left:28px!important; padding-right:28px!important;}
  .builder-page-hero--live .builder-hero-illustration--photo {width:min(32vw,290px)!important; min-height:0!important; margin-right:0!important;}
  .builder-page-hero--live .builder-hero-illustration--photo img {height:auto!important; max-height:300px!important;}
  #paracord-preview.preview-stage--custom-rope {width:min(100%,320px)!important; max-width:320px!important;}
  .analytics-kpis {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}


/* CHISPITAS V8.3 — tienda con búsqueda rápida y preview alineado con la fotografía. */
.shop-toolbar {align-items:center;gap:22px;}
.shop-search-tools {display:flex;flex-direction:column;align-items:stretch;gap:6px;width:min(100%,420px);flex:0 1 420px;}
.shop-search-form {display:flex;align-items:center;width:100%;min-height:52px;padding:5px 6px 5px 17px;border:2px solid #eadcf2;border-radius:17px;background:linear-gradient(135deg,#fff,#fff7fc 58%,#f0fcfa);box-shadow:0 4px 0 #f1e4f4,0 8px 18px rgba(99,65,129,.06);}
.shop-search-form:focus-within {border-color:#d96ab5;box-shadow:0 0 0 4px rgba(217,106,181,.12),0 4px 0 #f1e4f4;}
.shop-search-form input {flex:1;min-width:0;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;padding:10px 8px 10px 0!important;color:#4c355d;font-size:13px!important;}
.shop-search-form input::placeholder {color:#a08da9;}
.shop-search-form button {display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border:0;border-radius:13px;background:linear-gradient(135deg,#5a367f,#a35fc3);color:#fff;font-size:27px;line-height:1;box-shadow:0 3px 0 #e9d2f0;}
.shop-search-clear {align-self:flex-end;color:#9e4691;font-size:10px;font-weight:850;text-decoration:underline;text-underline-offset:3px;}
.shop-search-clear[hidden],.shop-live-empty[hidden],.product-card[hidden] {display:none!important;}
.shop-live-empty {margin:24px 0;}
.endcap-match-swatch {display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border-radius:14px;background:linear-gradient(145deg,#ffe2f0,#f0e9ff 58%,#dffaf5);font-size:28px;box-shadow:0 3px 0 #e8d4ef;}
.endcap-match-card:has(input:checked) {border-color:#d965b4;box-shadow:0 0 0 3px rgba(217,101,180,.12),0 4px 0 #eac7e3;}
.endcap-choice .choice-details {padding-right:14px;}
#paracord-preview .preview-ring-photo {left:38.8%!important;top:-1%!important;width:22.4%!important;height:15%!important;z-index:7!important;object-fit:contain!important;mix-blend-mode:normal!important;filter:drop-shadow(0 2px 3px rgba(27,20,34,.42))!important;}
#paracord-preview .preview-ring-layer {z-index:4!important;}
#paracord-preview .preview-rope-svg {z-index:3!important;}
#paracord-preview .preview-parts {z-index:6!important;}
#paracord-preview.has-ring-photo #preview-rope-ring {display:none!important;}
#paracord-preview .preview-ring-photo[hidden] {display:none!important;}
#paracord-preview .preview-part {transform:translate(-50%,-50%) rotate(var(--part-tilt,0deg))!important;}
@media(max-width:800px) {
 .shop-toolbar {align-items:stretch!important;}
 .shop-search-tools {width:100%;max-width:none;flex-basis:auto;}
 .shop-search-form {min-height:48px;}
 .shop-search-form input {font-size:12px!important;}
 #paracord-preview .preview-ring-photo {top:-1%!important;width:23.5%!important;height:15.8%!important;left:38.25%!important;}
}
@media(max-width:430px) {
 .shop-search-form {padding-left:12px;}
 .shop-search-form button {width:36px;height:36px;flex-basis:36px;}
 #paracord-preview .preview-ring-photo {top:-.8%!important;width:24%!important;height:16%!important;left:38%!important;}
}


/* CHISPITAS V8.4 — piezas proporcionadas a los ramales y argolla realmente ensartada. */
#paracord-preview .preview-ring-photo {
  left:39%!important; top:.2%!important; width:22%!important; height:14.5%!important;
  z-index:1!important; object-fit:contain!important; object-position:center!important;
  mix-blend-mode:normal!important; filter:drop-shadow(0 1px 2px rgba(30,20,35,.35))!important;
}
#paracord-preview .preview-ring-layer {z-index:1!important;}
#paracord-preview .preview-rope-photo {z-index:2!important;}
#paracord-preview .preview-rope-svg {z-index:3!important;}
#paracord-preview .preview-rope-ends {opacity:1!important;}
#paracord-preview .preview-cap-left,
#paracord-preview .preview-cap-right {
  stroke:var(--endcap-dark,#b64d87)!important; stroke-width:4!important;
  filter:drop-shadow(0 2px 2px rgba(30,20,35,.20))!important;
}
#paracord-preview .preview-cap-left {x:272px!important;y:1408px!important;width:136px!important;height:54px!important;rx:27px!important;}
#paracord-preview .preview-cap-right {x:616px!important;y:1408px!important;width:136px!important;height:54px!important;rx:27px!important;}
#paracord-preview .preview-part {border:0!important;background:transparent!important;box-shadow:none!important;}
#paracord-preview .preview-part--letter {min-width:0!important;max-width:36px!important;}
#paracord-preview .preview-part--letter .preview-letter-face {min-width:0!important;min-height:0!important;padding:0!important;border-radius:6px!important;font-size:clamp(14px,4.1vw,20px)!important;}
#paracord-preview .preview-part--letter-png img {object-fit:contain!important;max-width:100%!important;max-height:100%!important;filter:drop-shadow(0 2px 2px rgba(31,22,40,.23))!important;}
#paracord-preview .preview-part--bit {width:var(--piece-size,25px)!important;height:var(--piece-size,25px)!important;padding:1px!important;}
#paracord-preview .preview-part--charm {max-width:32px!important;}
#paracord-preview .preview-part--photo img {object-fit:contain!important;}
@media(max-width:480px){
  #paracord-preview .preview-ring-photo {left:38.7%!important;top:.4%!important;width:22.6%!important;height:14.7%!important;}
  #paracord-preview .preview-cap-left {x:272px!important;y:1408px!important;width:136px!important;height:54px!important;rx:27px!important;}
  #paracord-preview .preview-cap-right {x:616px!important;y:1408px!important;width:136px!important;height:54px!important;rx:27px!important;}
  #paracord-preview .preview-part--letter {max-width:32px!important;}
}


/* CHISPITAS V8.5 — hardware with alpha, fitted end-caps, rope-only swatches and global search. */
.site-header-search-row{width:100%;display:flex;justify-content:center;padding:0 18px 12px;margin-top:-2px;}
.site-header-search{display:flex;align-items:center;width:min(100%,480px);min-height:42px;padding:4px 5px 4px 15px;border:1.5px solid #eadcf2;border-radius:15px;background:linear-gradient(135deg,#fff,#fff7fc 58%,#f0fcfa);box-shadow:0 3px 0 #f1e4f4,0 7px 16px rgba(99,65,129,.055);}
.site-header-search:focus-within{border-color:#d96ab5;box-shadow:0 0 0 3px rgba(217,106,181,.11),0 3px 0 #f1e4f4;}
.site-header-search input{flex:1;min-width:0;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;padding:8px 8px 8px 0!important;color:#4c355d;font-size:13px!important;}
.site-header-search input::placeholder{color:#a08da9;}
.site-header-search button{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:0;border-radius:11px;background:linear-gradient(135deg,#5a367f,#a35fc3);color:#fff;font-size:25px;line-height:1;box-shadow:0 3px 0 #e9d2f0;}
.site-header-search button:hover{filter:brightness(1.06);}
@media(max-width:600px){.site-header-search-row{padding:0 13px 10px;margin-top:-1px}.site-header-search{width:100%;min-height:40px;border-radius:13px}.site-header-search input{font-size:12px!important}.site-header-search button{width:32px;height:32px;flex-basis:32px}}

/* The transparent ring sits over the top loop; only its colored hardware, never its old JPG background, is shown. */
#paracord-preview .preview-ring-photo{left:43.5%!important;top:.25%!important;width:19%!important;height:12.8%!important;z-index:4!important;object-fit:contain!important;object-position:center!important;display:block!important;background:transparent!important;border:0!important;border-radius:0!important;mix-blend-mode:normal!important;opacity:1!important;filter:drop-shadow(0 2px 2px rgba(28,20,35,.42))!important;pointer-events:none!important;}
#paracord-preview .preview-ring-photo[hidden]{display:none!important;}
#paracord-preview .preview-rope-photo{z-index:2!important;}
#paracord-preview .preview-rope-svg{z-index:3!important;}
#paracord-preview .preview-parts{z-index:6!important;}
#paracord-preview.has-ring-photo #preview-rope-ring{display:none!important;}
#paracord-preview:not(.has-ring-photo) #preview-rope-ring{display:block;}

/* End-cap overlays match the length and thickness of the photographed cord tips, covering the old pink ends fully. */
#paracord-preview .preview-rope-ends{opacity:1!important;}
#paracord-preview .preview-rope-ends rect{fill:url(#endcap-gradient)!important;stroke:rgba(255,255,255,.70)!important;stroke-width:3!important;opacity:1!important;filter:drop-shadow(0 2px 2px rgba(30,20,35,.30))!important;}
#paracord-preview .preview-cap-left{ x:272px!important;y:1408px!important;width:136px!important;height:54px!important;rx:27px!important;}
#paracord-preview .preview-cap-right{ x:616px!important;y:1408px!important;width:136px!important;height:54px!important;rx:27px!important;}
@media(max-width:480px){#paracord-preview .preview-ring-photo{left:43.5%!important;top:.25%!important;width:19%!important;height:12.8%!important;}#paracord-preview .preview-cap-left{width:136px!important;height:54px!important;}#paracord-preview .preview-cap-right{width:136px!important;height:54px!important;}}


/* CHISPITAS V8.6 — argolla completa ensartada y tapones fotográficos con color independiente. */
#paracord-preview .preview-ring-layer {z-index:1!important;}
#paracord-preview .preview-ring-photo {
  left:35%!important; top:-1.5%!important; width:30%!important; height:20%!important;
  z-index:3!important; display:block!important; object-fit:contain!important; object-position:center!important;
  padding:0!important; border:0!important; border-radius:0!important; background:transparent!important;
  mix-blend-mode:normal!important; opacity:1!important;
  filter:drop-shadow(0 2px 2px rgba(24,16,30,.38))!important;
  pointer-events:none!important; user-select:none!important;
}
#paracord-preview .preview-rope-photo {
  z-index:2!important; object-fit:fill!important; object-position:center!important;
  filter:var(--rope-photo-filter,none)!important;
}
#paracord-preview .preview-rope-front-photo {
  display:none!important; position:absolute!important; inset:0!important; width:100%!important; height:100%!important;
  object-fit:fill!important; object-position:center!important; z-index:4!important;
  pointer-events:none!important; user-select:none!important;
  filter:var(--rope-photo-filter,none)!important;
}
#paracord-preview.has-ring .preview-rope-front-photo {display:block!important;}
#paracord-preview .preview-endcap-photo {
  position:absolute!important; inset:0!important; width:100%!important; height:100%!important;
  object-fit:fill!important; object-position:center!important; z-index:5!important;
  pointer-events:none!important; user-select:none!important;
  filter:var(--endcap-photo-filter,var(--rope-photo-filter,none)) drop-shadow(0 1px 1px rgba(40,25,45,.22))!important;
}
#paracord-preview .preview-rope-ends {display:none!important;opacity:0!important;}
#paracord-preview .preview-cap-left,#paracord-preview .preview-cap-right {display:none!important;}
#paracord-preview .preview-rope-svg {z-index:6!important;}
#paracord-preview .preview-parts {z-index:7!important;}
#paracord-preview.has-ring-photo #preview-rope-ring {display:none!important;}
#paracord-preview .preview-ring-photo[hidden] {display:none!important;}
@media(max-width:480px) {
  #paracord-preview .preview-ring-photo {left:35%!important;top:-1.5%!important;width:30%!important;height:20%!important;}
}


/* V9.2 · Biblioteca PNG por categoría/familia de letras y recibo SINPE */
.png-library-shortcuts{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 18px}.png-library-shortcuts a{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid #f0d9ed;border-radius:999px;background:#fff;color:#594168;text-decoration:none;font-weight:800;font-size:12px}.png-library-shortcuts a.active{background:#291b43;color:#fff;border-color:#291b43}.png-library-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:18px;align-items:start}.png-upload-panel .admin-panel-header{align-items:flex-start}.png-dropzone{display:grid!important;justify-items:center;gap:7px;padding:22px 14px;border:1px dashed #d7a9df;border-radius:18px;background:linear-gradient(135deg,#fff8fd,#f4faff);text-align:center}.png-dropzone>span{font-size:30px}.png-dropzone small{color:#766b81;font-size:11px}.png-dropzone input{max-width:100%;font-size:12px}.png-glyph-help{font-size:12px;color:#746681;line-height:1.6;margin:2px 0 0}.png-glyph-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.png-glyph-tile{display:flex;min-width:0;align-items:center;gap:5px;flex-direction:column;padding:8px 4px;border:1px solid #f0deef;border-radius:12px;background:#fffafd;text-align:center}.png-glyph-char{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f3e4ff;color:#5e4387;font-size:17px;font-weight:900}.png-glyph-status{min-height:24px;font-size:8px;line-height:1.2;color:#87728f}.png-glyph-tile input{width:100%;font-size:8px;min-width:0}.png-glyph-tile input::file-selector-button{display:block;width:100%;margin:0 0 3px;padding:4px;border:0;border-radius:6px;background:#efe1fa;color:#4b2c67;font-size:9px}.png-glyph-tile small{font-size:8px;color:#6f5d7c;overflow-wrap:anywhere}.png-glyph-tile.has-file{border-color:#6ac5a0;background:#effdf6;box-shadow:0 0 0 1px #c8f2df inset}.png-library-inventory,.png-font-families{margin-top:18px}.png-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.png-library-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #f0deef;background:#fff;border-radius:15px;box-shadow:0 4px 14px rgba(44,28,72,.05)}.png-library-image{height:120px;display:grid;place-items:center;padding:12px;background:linear-gradient(145deg,#f9f1ff,#f2fcfa)}.png-library-image img{width:100%;height:100%;object-fit:contain}.png-library-card-copy{display:flex;flex-direction:column;gap:5px;padding:11px;flex:1}.png-library-card-copy strong{font-size:12px;line-height:1.4;overflow-wrap:anywhere}.png-library-card-copy small{font-size:10px;color:#81738b}.png-library-card-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:0 11px 11px}.png-family-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.png-family-list a{display:flex;flex-direction:column;gap:5px;padding:13px;border:1px solid #ead8f0;border-radius:13px;background:#fff;text-decoration:none;color:#423153;min-width:0}.png-family-list a strong{overflow-wrap:anywhere}.png-family-list a span,.png-family-list a small{font-size:11px;color:#796b84}.png-family-list a small{line-height:1.5;overflow-wrap:anywhere}.checkout-section-head{display:flex;gap:12px;align-items:center;margin:14px 0 5px}.checkout-section-head>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:#f4e1fb;color:#9b3184;font-size:13px;font-weight:900}.checkout-section-head .eyebrow{margin:0;font-size:9px}.checkout-section-head h2{margin:3px 0 0;font-size:19px}.checkout-form>label{margin-top:10px}.order-receipt-panel{padding:20px;border:1px solid #f0d5ee;border-radius:22px;background:linear-gradient(145deg,#fffaff,#f5fbff);margin:16px 0;box-shadow:0 8px 22px rgba(44,26,61,.05)}.receipt-panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.receipt-panel-heading h2{font-size:20px;margin:4px 0}.receipt-panel-heading p:not(.eyebrow){font-size:12px;color:#796c85;margin:0}.receipt-status{padding:6px 9px;border-radius:999px;background:#e4f9ef;color:#23784f;white-space:nowrap;font-size:9px;font-weight:900}.receipt-image-preview{min-height:220px;display:grid;place-items:center;border:1px dashed #e6cae8;border-radius:15px;background:#fff;padding:10px;overflow:hidden}.receipt-image-preview img{display:block;width:100%;height:auto;max-width:600px;border-radius:9px}.receipt-image-placeholder{font-size:12px;color:#84758f;text-align:center}.receipt-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}.receipt-actions .btn{flex:1}.sinpe-number-large{display:block;margin:7px 0;font-size:21px;letter-spacing:.06em;color:#31204d}.sinpe-steps{padding-left:19px;margin:10px 0 0;display:grid;gap:7px;font-size:12px;line-height:1.5}.success-order .order-receipt-panel{width:100%;text-align:left}.success-order .receipt-panel-heading h2{font-size:20px}.success-order .receipt-actions .btn{justify-content:center}
@media(max-width:1000px){.png-library-layout{grid-template-columns:minmax(0,1fr)}.png-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.png-family-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.png-library-shortcuts{gap:6px}.png-library-shortcuts a{padding:8px 10px;font-size:10px}.png-glyph-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.png-glyph-tile{padding:7px 3px}.png-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.png-library-image{height:96px}.png-family-list{grid-template-columns:minmax(0,1fr)}.order-receipt-panel{padding:13px;border-radius:16px}.receipt-panel-heading{flex-direction:column}.receipt-status{align-self:flex-start}.receipt-actions{flex-direction:column}.receipt-actions .btn{width:100%}.sinpe-number-large{font-size:18px}.checkout-section-head h2{font-size:17px}}

/* V9.1 · Avisos de tipografía PNG y superficies de importación */
.letter-family-warning{margin:10px 0;padding:11px 14px;border:1px solid #f1b4c8;border-radius:12px;background:#fff0f5;color:#a12255;font-size:12px;line-height:1.5;font-weight:750}.letter-family-warning[hidden]{display:none!important}

/* V9.3 smart PNG importer: crop screenshot, remove connected background and review segmented objects. */
.smart-png-importer{margin:0 0 24px;border:1px solid #e7d9f0;background:linear-gradient(145deg,#fff 0%,#fffafe 58%,#f8fbff 100%);box-shadow:0 14px 34px rgba(57,36,93,.055)}
.smart-png-importer .admin-panel-header{align-items:flex-start}
.smart-png-importer .admin-panel-header h2{font-size:clamp(21px,2vw,28px);letter-spacing:-.035em}
.smart-png-workflow{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:13px 15px;margin:0 0 22px;border-radius:14px;background:#f7f0ff;color:#5b407f;font-size:10px;font-weight:850}
.smart-png-workflow span{display:flex;align-items:center;flex:1}
.smart-png-workflow i{font-style:normal;color:#bd74a4;font-size:18px}
.smart-png-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 17px;margin-bottom:18px}
.smart-png-settings label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:800;color:#45365d;min-width:0}
.smart-png-settings input,.smart-png-settings select{width:100%;min-height:43px;border:1px solid #e4d9eb;border-radius:12px;padding:10px 12px;background:#fff;color:#30233f;outline-offset:2px}
.smart-png-settings input[type=file]{min-height:auto;padding:9px;background:#fffafd;font-size:11px}
.smart-png-settings small{font-size:10px;line-height:1.5;font-weight:550;color:#82758f}
.smart-description-label,.smart-source-label{grid-column:1/-1}
.smart-png-tips{border:1px solid #f1d7e7;border-radius:13px;background:#fff6fb;padding:13px 15px;color:#6b516b;font-size:11px;line-height:1.65;margin:0 0 19px}
.smart-png-tips strong{color:#7e3674}
.smart-source-workspace{padding:15px;border-radius:15px;border:1px solid #e9e0f1;background:#fff}
.smart-source-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:12px;font-size:11px;font-weight:800;color:#514064}
.smart-source-toolbar>div{display:flex;flex-wrap:wrap;gap:8px}
.smart-source-toolbar .btn{min-height:34px;font-size:10px}
#smart-pick-bg.active{background:#ffe4f2;border-color:#e5a5cd;color:#8b3474}
.smart-canvas-scroller{max-height:70vh;overflow:auto;border-radius:12px;background-color:#f8f5fa;background-image:linear-gradient(45deg,#eee8f2 25%,transparent 25%),linear-gradient(-45deg,#eee8f2 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eee8f2 75%),linear-gradient(-45deg,transparent 75%,#eee8f2 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}
#smart-source-canvas{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain;touch-action:none;cursor:crosshair}
.smart-source-controls{display:grid;grid-template-columns:minmax(220px,1fr) 1.4fr auto;align-items:center;gap:14px;margin-top:13px;font-size:10px;color:#6d637b}
.smart-source-controls label{display:grid;grid-template-columns:1fr auto;gap:5px 8px;font-weight:800}
.smart-source-controls label input{grid-column:1/-1;width:100%;accent-color:#a450b4}
.smart-source-controls label strong{color:#985090}
.smart-source-controls .btn{min-height:40px;padding:0 14px}
.smart-results{margin-top:23px}
.smart-results-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.smart-results-heading h3{margin:0 0 5px;font-size:21px;letter-spacing:-.03em;color:#30213f}
.smart-results-heading p{margin:0;font-size:11px;color:#82758f;line-height:1.6}
.smart-results-heading .btn{flex:0 0 auto}
.smart-pieces-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.smart-piece-card{position:relative;display:flex;flex-direction:column;min-width:0;gap:9px;border:1px solid #e9ddec;border-radius:15px;background:#fff;padding:10px;box-shadow:0 4px 14px rgba(57,36,93,.035)}
.smart-piece-card.is-excluded{opacity:.48;background:#f7f4f8}
.smart-piece-include{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:850;color:#6f467e}
.smart-piece-include input{accent-color:#8d4bb0;width:15px;height:15px;margin:0}
.smart-piece-preview{width:100%;aspect-ratio:1;object-fit:contain;border-radius:10px;background-color:#fff;background-image:linear-gradient(45deg,#f0edf3 25%,transparent 25%),linear-gradient(-45deg,#f0edf3 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f0edf3 75%),linear-gradient(-45deg,transparent 75%,#f0edf3 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}
.smart-piece-details{display:flex;flex-direction:column;gap:3px;min-width:0}
.smart-piece-details>strong{font-size:12px;color:#392848}
.smart-piece-details>small{font-size:9px;color:#93869b;line-height:1.45}
.smart-piece-field{display:flex;flex-direction:column;gap:5px;margin-top:3px;font-size:10px;font-weight:800;color:#66506f}
.smart-piece-field select,.smart-piece-field input{width:100%;min-width:0;min-height:36px;padding:7px 8px;border:1px solid #e5d9e9;border-radius:9px;color:#352242;background:#fff;font-size:11px}
.smart-piece-remove{border:1px solid #f0d3df;background:#fff8fb;color:#ad426a;border-radius:9px;padding:8px 7px;font-size:9px;font-weight:850;margin-top:auto}
.smart-save-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:17px;padding:16px;border-radius:13px;background:#f4effc;border:1px solid #e8dff3}
.smart-save-footer p{font-size:10px;line-height:1.6;color:#756580;margin:0;max-width:650px}
.smart-save-footer .btn{flex:0 0 auto}
.smart-import-status{margin-top:12px;font-size:11px;line-height:1.6;color:#776982;white-space:pre-wrap}
.smart-import-status.is-success{padding:11px 13px;border-radius:11px;border:1px solid #bce9d6;background:#e9fbf3;color:#1a684d}
.smart-import-status.is-error{padding:11px 13px;border-radius:11px;border:1px solid #ffd1dc;background:#fff0f3;color:#8e2844}
.smart-import-status:empty{display:none}
.smart-png-importer [hidden]{display:none!important}
@media(max-width:920px){.smart-pieces-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.smart-source-controls{grid-template-columns:1fr 1.3fr}.smart-source-controls .btn{grid-column:1/-1;width:100%}}
@media(max-width:620px){.smart-png-workflow{flex-wrap:wrap;justify-content:flex-start}.smart-png-workflow span{flex:0 0 calc(50% - 18px)}.smart-png-workflow i:nth-of-type(2){display:none}.smart-png-settings{grid-template-columns:1fr}.smart-description-label,.smart-source-label{grid-column:auto}.smart-source-toolbar{align-items:flex-start;flex-direction:column}.smart-source-controls{grid-template-columns:1fr}.smart-source-controls .btn{grid-column:auto;width:100%}.smart-pieces-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.smart-piece-card{padding:8px}.smart-save-footer{align-items:stretch;flex-direction:column;gap:12px}.smart-save-footer .btn{width:100%}.smart-results-heading{align-items:flex-start}.smart-results-heading h3{font-size:18px}.smart-results-heading .btn{padding:0 9px}}


/* V9.4 · Categorías dinámicas, catálogo multiproducto y terminaciones de tapón */
.nav-category-menu{position:relative;display:flex;align-items:center}
.nav-category-trigger{display:inline-flex;align-items:center;gap:5px;text-decoration:none;color:var(--ink,#3f3150);font-size:12px;font-weight:800;padding:9px 7px}
.nav-category-dropdown{position:absolute;z-index:80;top:100%;left:0;min-width:225px;max-width:min(300px,85vw);padding:8px;border:1px solid #eed8ee;border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 14px 36px rgba(39,20,55,.16);display:none;max-height:65vh;overflow:auto}
.nav-category-menu:hover .nav-category-dropdown,.nav-category-menu:focus-within .nav-category-dropdown{display:grid;gap:3px}
.nav-category-dropdown a{display:flex;align-items:center;gap:8px;padding:10px 11px;border-radius:10px;color:#493658;text-decoration:none;font-size:12px;font-weight:750}
.nav-category-dropdown a:hover,.nav-category-dropdown a:focus{background:#f8eafa;color:#8e347f}
.shop-category-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.shop-category-chips a{display:inline-flex;align-items:center;gap:6px;padding:9px 13px;border:1px solid #ead6ed;border-radius:999px;background:#fff;color:#59436a;text-decoration:none;font-size:12px;font-weight:800}
.shop-category-chips a.active{background:#2b1d43;color:#fff;border-color:#2b1d43}
.active-category-description{font-size:13px;color:#74647f;margin:0 0 18px}
.active-category-description a{color:#9c3d91;font-weight:800}
.category-admin-list{display:grid;gap:9px}.category-admin-row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #eeddf0;border-radius:15px;background:#fff;min-width:0}.category-admin-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:13px;background:linear-gradient(145deg,#fbe6f7,#e9f9f6);font-size:24px}.category-admin-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.category-admin-copy strong{font-size:13px;overflow-wrap:anywhere}.category-admin-copy span,.category-admin-copy small{font-size:10px;color:#82728d}.category-admin-row .admin-product-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.categories-admin-layout{align-items:start}.current-image .current-img{max-width:110px;max-height:100px;object-fit:contain}.product-attachment-link{display:inline-flex;align-items:center;gap:8px;margin:12px 0;padding:10px 14px;border:1px solid #e6d1ee;border-radius:12px;background:#fff8fe;color:#7d3986;font-size:12px;font-weight:800;text-decoration:none;overflow-wrap:anywhere}
@media(max-width:900px){.nav-category-menu{display:block}.nav-category-trigger{padding:12px 0}.nav-category-dropdown{position:static;display:grid;max-width:none;max-height:240px;box-shadow:none;border-radius:12px;margin:0 0 8px}.nav-category-menu:hover .nav-category-dropdown{display:grid}}
@media(max-width:560px){.category-admin-row{align-items:flex-start;flex-wrap:wrap}.category-admin-row .admin-product-actions{width:100%;padding-left:58px}.shop-category-chips{gap:6px}.shop-category-chips a{font-size:11px;padding:8px 10px}}
/* The photographed endcaps intentionally bleed past the black cord tips so no dark rim remains visible. */
#paracord-preview .preview-endcap-photo{transform:scale(1.07)!important;transform-origin:50% 92%!important;filter:var(--endcap-photo-filter,var(--rope-photo-filter,none)) drop-shadow(0 1px 1px rgba(40,25,45,.18))!important}


/* Chispitas V9.5 — product photo gallery, functional category dropdown and floating admin actions */
.main-nav .nav-category-trigger{appearance:none;border:0;background:transparent;font:inherit;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;padding:9px 7px;color:#666078;font-size:12px;font-weight:780;cursor:pointer}
.main-nav .nav-category-trigger:hover,.main-nav .nav-category-trigger[aria-expanded="true"]{color:var(--purple)}
.nav-category-menu.is-open .nav-category-trigger span{transform:rotate(180deg)}
.nav-category-trigger span{display:inline-block;transition:transform .16s ease}
.nav-category-menu:not(.is-open) .nav-category-dropdown{display:none!important}.nav-category-menu.is-open .nav-category-dropdown{display:grid!important;gap:3px}
@media(max-width:900px){.nav-category-menu{display:block}.main-nav .nav-category-trigger{width:100%;justify-content:space-between;padding:12px 10px;border-bottom:1px solid #f1e9f4;border-radius:10px;font-size:13px}.nav-category-menu:not(.is-open) .nav-category-dropdown{display:none!important;position:static;max-width:none;max-height:240px;box-shadow:none;border-radius:12px;margin:0 0 8px}.nav-category-menu.is-open .nav-category-dropdown{display:grid!important;position:static;max-width:none;max-height:240px;box-shadow:none;border-radius:12px;margin:4px 0 8px}.nav-category-menu:hover .nav-category-dropdown{display:none!important}.nav-category-menu.is-open:hover .nav-category-dropdown{display:grid!important}.nav-category-dropdown a{padding:10px 11px}}
.product-detail{align-items:start}
.detail-photo{max-height:none;overflow:visible;display:flex;flex-direction:column;gap:12px}
.detail-gallery-main{position:relative;min-height:300px;max-height:650px;display:grid;place-items:center;overflow:hidden;border:1px solid #f0e6f4;border-radius:26px;background:radial-gradient(circle at 12% 5%,rgba(245,225,255,.75),transparent 38%),linear-gradient(145deg,#fff8ff,#eefaf8);padding:12px}
.detail-gallery-main .detail-image{width:100%;height:clamp(300px,46vw,590px);max-height:590px;object-fit:contain;border-radius:17px;transition:opacity .15s ease}
.detail-gallery-main .photo-note{position:absolute;left:17px;bottom:17px}
.product-gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:3px 3px 8px;scrollbar-width:thin}
.product-gallery-thumb{flex:0 0 75px;width:75px;height:75px;padding:4px;border:2px solid #eadbef;border-radius:14px;background:#fff;cursor:pointer;overflow:hidden;transition:border-color .15s,transform .15s}
.product-gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:9px}
.product-gallery-thumb:hover{transform:translateY(-2px)}
.product-gallery-thumb.active{border-color:#bf62bd;box-shadow:0 3px 0 #e8c9ed}
.product-gallery-admin{display:grid;gap:10px;padding:12px;border:1px solid #eddfef;border-radius:14px;background:#fffaff}
.product-gallery-admin>strong{font-size:10px;color:#6c517c}
.product-gallery-admin-grid,.gallery-upload-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.product-gallery-admin-item,.gallery-upload-preview-item{min-width:0;display:grid;gap:5px;border:1px solid #eee3f2;background:white;border-radius:11px;padding:6px;font-size:9px;color:#76657e}
.product-gallery-admin-item img,.gallery-upload-preview-item img{width:100%;height:82px;object-fit:contain;background:#f9f5fb;border-radius:7px}
.product-gallery-admin-item span{display:flex;align-items:center;gap:5px;font-size:8px;line-height:1.3}
.product-gallery-admin-item input{accent-color:#b84e9b}
.gallery-upload-preview-item small{font-size:8px;word-break:break-word;line-height:1.25}
.admin-floating-actions{position:fixed;z-index:100;left:calc(244px + max(0px,(100vw - 1440px)/2));right:max(14px,calc((100vw - 1440px)/2 + 14px));bottom:calc(12px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 15px;border:1px solid #e8d3ef;border-radius:17px;background:rgba(255,255,255,.97);box-shadow:0 12px 35px rgba(54,27,76,.2);backdrop-filter:blur(14px)}
.admin-floating-copy{display:grid;gap:2px;min-width:0}.admin-floating-copy strong{font-size:12px;color:#3c2855}.admin-floating-copy small{font-size:9px;color:#897996}
.admin-floating-actions .btn.danger{min-height:41px;padding:0 17px;background:#b9376c;color:white;border:0;border-radius:12px;font-size:11px;font-weight:850;white-space:nowrap}
.admin-floating-actions .btn.danger:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}
.admin-tab-products .admin-content{padding-bottom:115px}
.admin-tab-products .admin-product-actions{gap:7px}
.admin-tab-products .delete-product-action{font-weight:950}
.admin-tab-products .admin-list-panel{padding-bottom:30px}
@media(max-width:800px){.admin-floating-actions{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));padding:10px 12px;gap:8px;border-radius:15px}.admin-floating-copy strong{font-size:11px}.admin-floating-copy small{font-size:8px}.admin-floating-actions .btn.danger{min-height:40px;padding:0 12px;font-size:10px}.admin-tab-products .admin-content{padding-bottom:110px}}
@media(max-width:440px){.product-gallery-thumb{flex-basis:62px;width:62px;height:62px}.detail-gallery-main{min-height:260px;padding:8px}.detail-gallery-main .detail-image{height:clamp(260px,86vw,420px)}.product-gallery-admin-grid,.gallery-upload-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-floating-copy small{display:none}.admin-floating-actions .btn.danger{font-size:9px;padding:0 10px}}


/* V10.0 — Categorías y búsqueda de charms en el configurador */
.charm-browser-tools{display:grid;grid-template-columns:minmax(180px,.85fr) minmax(220px,1.15fr) auto;align-items:end;gap:13px;margin:0 0 18px;padding:16px;border:1px solid #ead8f1;border-radius:18px;background:linear-gradient(135deg,#fff8fd,#f1fffc)}
.charm-browser-tools label{display:flex;flex-direction:column;gap:7px;color:#583d6d;font-size:12px;font-weight:800}
.charm-browser-tools input,.charm-browser-tools select{width:100%;min-height:44px;border:1px solid #e3d0ed;border-radius:12px;background:#fff;color:#38224d;padding:10px 12px;font:inherit;outline-offset:2px}
.charm-filter-count{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 12px;border-radius:999px;background:#eadcf6;color:#57356c;font-size:11px;font-weight:900;white-space:nowrap}
.charm-option-card[hidden]{display:none!important}
.charm-category-tag{display:inline-flex!important;align-self:flex-start;width:max-content;max-width:100%;padding:3px 7px;border-radius:999px;background:#f4e8fb;color:#7b4b93!important;font-size:10px!important;font-weight:800}
.charm-filter-empty{padding:18px;border:1px dashed #d8bce7;border-radius:15px;text-align:center}
#smart-charm-category-wrap[hidden],#png-charm-category-wrap[hidden],#option-charm-category-wrap[hidden]{display:none!important}
@media(max-width:650px){.charm-browser-tools{grid-template-columns:1fr;gap:10px;padding:12px}.charm-filter-count{justify-self:start}.charm-browser-tools input,.charm-browser-tools select{min-height:46px}.charm-option-grid{grid-template-columns:1fr}}


/* V10.2 · Quitar etiquetas duplicadas, Editor Mágico de trenzas y argolla ensartada. */
.preview-letter-glyph{display:none!important}
#paracord-preview .preview-rope-photo{z-index:2!important;filter:var(--rope-photo-filter,none)!important}
#paracord-preview .preview-rope-pattern-layer{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  display:block!important;z-index:3!important;pointer-events:none!important;user-select:none!important;
  background-position:center!important;background-repeat:repeat!important;
  background-size:var(--rope-pattern-size,135px) var(--rope-pattern-size,135px)!important;
  opacity:.54!important;mix-blend-mode:overlay!important;
  -webkit-mask-image:url("paracord-rope-mask-v102.png?v=10.2")!important;
  mask-image:url("paracord-rope-mask-v102.png?v=10.2")!important;
  -webkit-mask-size:100% 100%!important;mask-size:100% 100%!important;
  -webkit-mask-position:center!important;mask-position:center!important;
  -webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important;
}
#paracord-preview .preview-rope-pattern-layer[hidden]{display:none!important}
#paracord-preview .preview-rope-pattern-layer[data-mode="tint"]{filter:grayscale(1) contrast(1.42) brightness(1.02)!important;mix-blend-mode:overlay!important;opacity:.63!important}
#paracord-preview .preview-rope-pattern-layer[data-mode="preserve"]{filter:saturate(1.2) contrast(1.08)!important;mix-blend-mode:soft-light!important;opacity:.58!important}
#paracord-preview .preview-ring-photo{
  z-index:4!important;left:35%!important;top:-1.5%!important;width:30%!important;height:20%!important;
  object-fit:contain!important;object-position:center!important;mix-blend-mode:normal!important;
  filter:drop-shadow(0 2px 2px rgba(24,16,30,.4))!important;
}
#paracord-preview .preview-rope-front-photo{z-index:5!important;display:none!important;filter:var(--rope-photo-filter,none)!important}
#paracord-preview.has-ring .preview-rope-front-photo{display:block!important}
#paracord-preview .preview-endcap-photo{z-index:6!important}
#paracord-preview .preview-rope-svg{z-index:1!important}
#paracord-preview .preview-ring-layer{z-index:4!important}
#paracord-preview .preview-parts{z-index:7!important}
@media(max-width:480px){
  #paracord-preview .preview-ring-photo{left:35%!important;top:-1.2%!important;width:30%!important;height:19.5%!important}
}

/* Magic rope-pattern editor — phone-first admin UI. */
.cord-pattern-editor-panel{margin:18px 0;border-color:#e8d4ef;background:linear-gradient(145deg,#fff,#fff8fd 55%,#f2fcfb)}
.cord-pattern-workflow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:2px 0 17px;padding:12px;border-radius:14px;background:#f7effb;color:#75518a;font-size:10px;font-weight:900}
.cord-pattern-workflow i{font-style:normal;color:#c16eb5}
.cord-pattern-form{display:grid;gap:13px}
.cord-pattern-form input[type=text],.cord-pattern-form input[type=number],.cord-pattern-form select{width:100%;min-width:0}
.cord-pattern-upload{display:grid!important;gap:7px;padding:15px;border:1.5px dashed #d7a9df;border-radius:15px;background:#fff;text-align:left}
.cord-pattern-upload input{width:100%;font-size:12px}
.cord-pattern-upload small,.cord-pattern-form small{font-size:10px;line-height:1.55;color:#806d8b}
.cord-pattern-preview-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,220px);gap:15px;align-items:center;padding:14px;border:1px solid #ead9f0;border-radius:16px;background:#fff}
.cord-pattern-preview-wrap p{font-size:11px;line-height:1.55;color:#766681}
.cord-pattern-preview-wrap .eyebrow{font-size:9px;font-weight:950;letter-spacing:.12em;color:#ac54a2}
#cord-pattern-preview{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:12px;border:1px solid #e8d9ed;background-color:#faf6fc;background-image:linear-gradient(45deg,#ece5f1 25%,transparent 25%),linear-gradient(-45deg,#ece5f1 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#ece5f1 75%),linear-gradient(-45deg,transparent 75%,#ece5f1 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}
.cord-pattern-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.cord-pattern-actions .muted{font-size:11px;line-height:1.5}
.cord-pattern-saved{margin-top:22px;padding-top:17px;border-top:1px solid #f0e2f4}
.cord-pattern-saved .admin-panel-header{margin-bottom:12px}
.cord-pattern-saved h3{margin:0;font-size:16px;color:#56396b}
.cord-pattern-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cord-pattern-card{min-width:0;overflow:hidden;border:1px solid #ead9f0;border-radius:15px;background:#fff;box-shadow:0 3px 0 #f3e8f4}
.cord-pattern-swatch{display:grid;place-items:center;aspect-ratio:1;padding:10px;background-color:#f8f2fb;background-image:linear-gradient(45deg,#e9e0ef 25%,transparent 25%),linear-gradient(-45deg,#e9e0ef 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e9e0ef 75%),linear-gradient(-45deg,transparent 75%,#e9e0ef 75%);background-size:14px 14px;background-position:0 0,0 7px,7px -7px,-7px 0}
.cord-pattern-image{width:100%;height:100%;object-fit:contain;border-radius:9px}
.cord-pattern-copy{display:grid;gap:7px;padding:12px}
.cord-pattern-copy strong{font-size:12px;color:#503661;overflow-wrap:anywhere}
.cord-pattern-copy small,.cord-pattern-copy p{font-size:10px;line-height:1.5;color:#80718b;margin:0}
.cord-pattern-copy form{margin:0}
.cord-pattern-copy .mini-danger{width:100%;min-height:34px}
@media(max-width:800px){.cord-pattern-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.cord-pattern-preview-wrap{grid-template-columns:minmax(0,1fr)}#cord-pattern-preview{width:min(100%,240px);justify-self:center}.cord-pattern-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cord-pattern-workflow{font-size:9px}.cord-pattern-actions .btn{width:100%}}
