:root{--bg: #0c0d0f;--bg-2: #121316;--panel: #16181c;--panel-2: #1c1f24;--line: #2a2e35;--line-soft: #21242a;--text: #ece9e3;--muted: #9a9690;--faint: #6b6862;--accent: #c8a263;--accent-2: #e3c891;--accent-dim:#5e4f31;--danger: #d9614c;--ok: #6fbf8b;--radius: 14px;--radius-sm: 9px;--shadow: 0 18px 50px -22px rgba(0,0,0,.8);--font-ui: "Inter", system-ui, -apple-system, sans-serif;--font-disp: "Fraunces", Georgia, "Times New Roman", serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-ui);color:var(--text);background:radial-gradient(1200px 600px at 80% -10%,#1a1c20 0%,transparent 55%),radial-gradient(900px 500px at -10% 110%,#15171b 0%,transparent 50%),var(--bg);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit}.btn{display:inline-flex;align-items:center;gap:.5rem;justify-content:center;padding:.62rem 1.1rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:.9rem;font-weight:500;cursor:pointer;transition:.18s ease;white-space:nowrap}.btn:hover{border-color:var(--accent-dim);background:#23262c}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg,var(--accent-2),var(--accent));color:#1a1408;border-color:transparent;font-weight:600}.btn-primary:hover{filter:brightness(1.06);background:linear-gradient(180deg,var(--accent-2),var(--accent))}.btn-ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn-ghost:hover{color:var(--text);background:var(--panel-2)}.btn-danger{color:var(--danger);border-color:transparent;background:transparent}.btn-danger:hover{background:#d9614c1f;border-color:#d9614c66}.btn-sm{padding:.4rem .7rem;font-size:.8rem}.field{display:flex;flex-direction:column;gap:.4rem}.field label{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.input,.select,.textarea{width:100%;padding:.68rem .8rem;background:var(--bg-2);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:.92rem;font-family:inherit;transition:.15s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #c8a26321}.textarea{resize:vertical;min-height:90px}.hint{font-size:.76rem;color:var(--faint)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:2rem}.login-card{width:100%;max-width:400px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:2.6rem 2.4rem;box-shadow:var(--shadow)}.brand{text-align:center;margin-bottom:2rem}.brand .mark{font-family:var(--font-disp);font-size:2.2rem;letter-spacing:.18em;font-weight:600;background:linear-gradient(180deg,var(--accent-2),var(--accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.brand .sub{color:var(--faint);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;margin-top:.5rem}.shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#101114,#0d0e10);border-right:1px solid var(--line-soft);padding:1.6rem 1.1rem;display:flex;flex-direction:column;gap:1.4rem;position:sticky;top:0;height:100vh;overflow-y:auto;overscroll-behavior:contain}.sidebar .logo{font-family:var(--font-disp);font-size:1.5rem;letter-spacing:.16em;padding:.2rem .6rem}.sidebar .logo span{color:var(--accent)}.nav{display:flex;flex-direction:column;gap:.2rem}.nav a{padding:.65rem .8rem;border-radius:var(--radius-sm);color:var(--muted);font-size:.92rem;display:flex;align-items:center;gap:.65rem;transition:.15s}.nav a:hover{color:var(--text);background:var(--panel-2)}.nav a.active{color:var(--text);background:var(--panel-2);box-shadow:inset 2px 0 0 var(--accent)}.sidebar .spacer{flex:1}.userbox{font-size:.82rem;color:var(--muted);padding:.8rem;border-top:1px solid var(--line-soft)}.userbox .email{color:var(--text);word-break:break-all}.main{padding:2.2rem 2.6rem;max-width:1180px;width:100%}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.8rem;flex-wrap:wrap}.page-head h1{font-family:var(--font-disp);font-weight:600;font-size:2rem;margin:0;letter-spacing:.01em}.page-head p{margin:.3rem 0 0;color:var(--muted);font-size:.9rem}.toolbar{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center;margin-bottom:1.4rem}.search{flex:1;min-width:220px;position:relative}.search .input{padding-left:2.3rem}.search svg{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);opacity:.5}.chips{display:flex;gap:.4rem;flex-wrap:wrap}.chip{padding:.42rem .8rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:.8rem;cursor:pointer;transition:.15s;text-transform:capitalize}.chip:hover{color:var(--text);border-color:var(--accent-dim)}.chip.active{background:var(--accent);color:#1a1408;border-color:transparent;font-weight:600}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.1rem}.card{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:.2s;display:flex;flex-direction:column}.card:hover{border-color:var(--accent-dim);transform:translateY(-3px);box-shadow:var(--shadow)}.card .thumb{aspect-ratio:4/3;background:var(--bg-2) center/cover no-repeat;position:relative;display:grid;place-items:center;color:var(--faint)}.card .thumb .ph{font-family:var(--font-disp);font-size:2.4rem;opacity:.3}.card .body{padding:.9rem 1rem 1.1rem;display:flex;flex-direction:column;gap:.35rem}.card .cat{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.card .name{font-size:1rem;font-weight:500;line-height:1.25}.card .meta{display:flex;align-items:center;justify-content:space-between;margin-top:.3rem}.card .price{font-family:var(--font-disp);font-size:1.25rem}.card .sku{font-size:.72rem;color:var(--faint)}.badge{position:absolute;top:.6rem;left:.6rem;padding:.2rem .55rem;border-radius:6px;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.badge.draft{background:#0000008c;color:var(--accent-2);border:1px solid var(--accent-dim)}.badge.feat{background:#c8a263e6;color:#1a1408;right:.6rem;left:auto;font-weight:600}.imgcount{position:absolute;bottom:.6rem;right:.6rem;font-size:.7rem;background:#0000008c;padding:.15rem .45rem;border-radius:6px;color:var(--text)}.form-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1.6rem;align-items:start}.panel{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);padding:1.5rem}.panel h3{font-family:var(--font-disp);font-weight:600;margin:0 0 1.1rem;font-size:1.2rem}.row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stack>*+*{margin-top:1rem}.switch{display:flex;align-items:center;gap:.6rem;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.9rem}.switch input{width:0;height:0;opacity:0;position:absolute}.switch .track{width:40px;height:22px;border-radius:999px;background:var(--line);position:relative;transition:.2s;flex:none}.switch .track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--muted);transition:.2s}.switch input:checked+.track{background:var(--accent)}.switch input:checked+.track:after{transform:translate(18px);background:#1a1408}.dropzone{border:1.5px dashed var(--line);border-radius:var(--radius);padding:2rem 1rem;text-align:center;color:var(--muted);cursor:pointer;transition:.18s;background:var(--bg-2)}.dropzone:hover,.dropzone.drag{border-color:var(--accent);background:#c8a2630f;color:var(--text)}.dropzone .big{font-family:var(--font-disp);font-size:1.1rem;color:var(--text);margin-bottom:.3rem}.img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.7rem;margin-top:1.1rem}.img-tile{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--line);background:var(--bg-2) center/cover no-repeat;cursor:grab;touch-action:none}.img-tile.dragging{opacity:.4}.img-tile.primary{outline:2px solid var(--accent);outline-offset:-2px}.img-tile .ops{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.7));opacity:0;transition:.15s;display:flex;flex-direction:column;justify-content:space-between;padding:.35rem}.img-tile:hover .ops{opacity:1}.img-tile .ops .top{display:flex;justify-content:flex-end;gap:.25rem}.img-tile .ops button{border:none;background:#0009;color:#fff;width:26px;height:26px;border-radius:6px;cursor:pointer;font-size:.8rem;display:grid;place-items:center}.img-tile .ops button:hover{background:var(--accent);color:#1a1408}.img-tile .pin{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2);align-self:flex-start}.img-tile .primary-tag{position:absolute;top:.35rem;left:.35rem;background:var(--accent);color:#1a1408;font-size:.62rem;padding:.12rem .4rem;border-radius:5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.empty{text-align:center;padding:4rem 1rem;color:var(--muted);border:1px dashed var(--line);border-radius:var(--radius)}.empty .big{font-family:var(--font-disp);font-size:1.4rem;color:var(--text);margin-bottom:.5rem}.spin{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:sp .7s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}.center-load{display:grid;place-items:center;min-height:60vh}.err{color:var(--danger);font-size:.85rem}.uploading{margin-top:.8rem;font-size:.85rem;color:var(--accent-2);display:flex;align-items:center;gap:.6rem}.toasts{position:fixed;bottom:1.4rem;right:1.4rem;display:flex;flex-direction:column;gap:.6rem;z-index:100}.toast{padding:.8rem 1.1rem;border-radius:var(--radius-sm);background:var(--panel-2);border:1px solid var(--line);box-shadow:var(--shadow);font-size:.88rem;min-width:220px;animation:slidein .25s ease}.toast.ok{border-left:3px solid var(--ok)}.toast.err{border-left:3px solid var(--danger)}@keyframes slidein{0%{transform:translate(20px);opacity:0}}.back-link{color:var(--muted);font-size:.85rem;display:inline-flex;align-items:center;gap:.4rem;margin-bottom:1rem}.back-link:hover{color:var(--accent)}.section-h{font-family:var(--font-disp);font-weight:600;font-size:1.4rem;margin:2.4rem 0 1.1rem}.add-form{margin-bottom:1.6rem}.cell-input{width:100%;max-width:80px;padding:.3rem .4rem;background:var(--bg-2);color:var(--text);border:1px solid var(--line);border-radius:6px;font-size:.82rem;font-family:inherit;text-align:right}.cell-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #c8a26321}.cell-input.internal{margin-top:.25rem;opacity:.85}.select-sm{padding:.3rem .5rem;font-size:.8rem;width:auto}.cenik-wrap{overflow-x:auto;border:1px solid var(--line-soft);border-radius:var(--radius)}.cenik{width:100%;border-collapse:collapse;font-size:.86rem}.cenik th{text-align:right;padding:.8rem .7rem;color:var(--muted);font-weight:500;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line);white-space:nowrap}.cenik th.mat-col,.cenik td.mat-col{text-align:left;position:sticky;left:0;background:var(--panel);z-index:1;min-width:220px}.cenik tbody tr:hover td,.cenik tbody tr:hover td.mat-col{background:var(--panel-2)}.cenik td{padding:.55rem .7rem;border-bottom:1px solid var(--line-soft);text-align:right}.mat-name{display:block;font-weight:500}.mat-type{display:block;font-size:.72rem;color:var(--faint);text-transform:capitalize;margin-top:.15rem}.mat-type.porcelan{color:var(--accent)}.price-cell{cursor:pointer;transition:.12s}.price-cell:hover{background:#c8a26314!important}.price-cell.editing{cursor:default}.price-cell .pp{font-variant-numeric:tabular-nums}.price-cell .ip{display:flex;flex-direction:column;gap:.1rem;font-size:.72rem;margin-top:.2rem}.price-cell .ip .m{color:var(--accent-2)}.price-cell .ip .c{color:var(--faint)}.legend-row th{padding:.3rem .7rem}.leg{font-size:.68rem;padding:0 .3rem}.leg.pp{color:var(--text)}.leg.m{color:var(--accent-2)}.leg.c{color:var(--faint)}.rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.rules-tbl{width:100%;border-collapse:collapse;font-size:.88rem}.rules-tbl th{text-align:left;color:var(--muted);font-weight:500;padding:.4rem .3rem;font-size:.76rem;text-transform:uppercase}.rules-tbl td{padding:.4rem .3rem;border-top:1px solid var(--line-soft)}.rules-tbl td:last-child{width:110px}.data-tbl{width:100%;border-collapse:collapse;font-size:.88rem}.data-tbl th{text-align:left;color:var(--muted);font-weight:500;padding:.7rem .6rem;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line)}.data-tbl td{padding:.7rem .6rem;border-bottom:1px solid var(--line-soft)}.data-tbl tbody tr:hover{background:var(--panel-2)}.data-tbl .r,.data-tbl th.r{text-align:right}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.82rem;color:var(--accent-2)}.muted-cell{color:var(--faint);text-align:center;padding:1.2rem!important}.list{display:flex;flex-direction:column;gap:.7rem}.list-row{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden}.lr-main{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;cursor:pointer}.lr-main:hover{background:var(--panel-2)}.lr-title{font-size:1rem;font-weight:500;display:flex;align-items:center;gap:.6rem}.lr-sub{font-size:.82rem;color:var(--muted);margin-top:.25rem}.lr-actions{display:flex;gap:.5rem}.lr-detail{padding:1.2rem;border-top:1px solid var(--line-soft);background:var(--bg-2)}.lr-detail .ro{font-size:.88rem;color:var(--text);padding:.4rem 0}.counts{display:flex;gap:.4rem;flex-wrap:wrap}.pill{font-size:.7rem;padding:.2rem .55rem;border-radius:999px;letter-spacing:.03em;text-transform:lowercase}.pill.pending{background:#e3c89129;color:var(--accent-2)}.pill.approved,.pill.available{background:#6fbf8b29;color:var(--ok)}.pill.blocked,.pill.sold{background:#d9614c29;color:var(--danger)}.pill.reserved{background:#c8a2632e;color:var(--accent)}.pill[class*=st-]{background:var(--panel-2);color:var(--muted);border:1px solid var(--line)}.pill.st-confirmed,.pill.st-ready{color:var(--accent-2)}.pill.st-delivered{color:var(--ok)}.pill.st-cancelled{color:var(--danger)}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.6rem}.stat{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);padding:1.2rem 1.4rem}.stat span{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.stat b{display:block;font-family:var(--font-disp);font-size:1.7rem;margin-top:.4rem}.stat.accent b{color:var(--accent)}.totals{margin-top:1.2rem;border-top:1px solid var(--line);padding-top:1rem}.totals>div{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.9rem;color:var(--muted)}.totals>div b{color:var(--text);font-variant-numeric:tabular-nums}.totals .grand{font-size:1.1rem;margin-top:.4rem}.totals .grand b{font-family:var(--font-disp);color:var(--accent-2)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:grid;place-items:center;z-index:200;padding:2rem;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem;width:100%;max-width:640px;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow)}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.modal-head h3{font-family:var(--font-disp);font-weight:600;margin:0;font-size:1.3rem}@media(max-width:880px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;align-items:center;flex-wrap:wrap}.sidebar .spacer{display:none}.main{padding:1.4rem}.form-grid,.rules-grid{grid-template-columns:1fr}}.btn-lg{padding:.85rem 1.6rem;font-size:.98rem}.btn-block{width:100%}.btn-outline{background:transparent;border-color:var(--line);color:var(--text)}.btn-outline:hover{border-color:var(--accent);background:#c8a26312}.pub{min-height:100vh;display:flex;flex-direction:column}.pub-main{flex:1}.pub-header{position:sticky;top:0;z-index:50;background:#0c0d0fd1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-soft)}.pub-header-in{max-width:1200px;margin:0 auto;padding:.9rem 1.6rem;display:flex;align-items:center;gap:1.6rem}.pub-logo{font-family:var(--font-disp);font-size:1.5rem;letter-spacing:.16em;font-weight:600}.pub-logo span{color:var(--accent)}.pub-nav{display:flex;gap:1.4rem;margin-left:1rem}.pub-link{color:var(--muted);font-size:.92rem;transition:.15s;position:relative}.pub-link:hover,.pub-link.active{color:var(--text)}.pub-link.active:after{content:"";position:absolute;left:0;right:0;bottom:-.4rem;height:2px;background:var(--accent)}.pub-actions{margin-left:auto;display:flex;align-items:center;gap:1.1rem}.lang-switch{display:flex;gap:.1rem;border:1px solid var(--line);border-radius:999px;padding:.15rem}.lang{background:transparent;border:none;color:var(--faint);font-size:.74rem;font-weight:600;letter-spacing:.05em;padding:.25rem .55rem;border-radius:999px;cursor:pointer;transition:.15s}.lang:hover{color:var(--text)}.lang.active{background:var(--accent);color:#1a1408}.cart-btn{position:relative;color:var(--text);display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:10px;transition:.15s}.cart-btn:hover{border-color:var(--accent);color:var(--accent-2)}.cart-badge{position:absolute;top:-7px;right:-7px;background:var(--accent);color:#1a1408;font-size:.68rem;font-weight:700;min-width:18px;height:18px;border-radius:999px;display:grid;place-items:center;padding:0 .3rem}.hero{position:relative;overflow:hidden;padding:6rem 1.6rem 5rem;text-align:center}.hero-in{max-width:820px;margin:0 auto;position:relative;z-index:1}.hero-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(700px 380px at 50% -5%,rgba(200,162,99,.16),transparent 60%),radial-gradient(500px 300px at 80% 120%,rgba(227,200,145,.08),transparent 55%);pointer-events:none}.hero-kicker{font-size:.8rem;letter-spacing:.26em;text-transform:uppercase;color:var(--accent)}.hero-title{font-family:var(--font-disp);font-weight:600;font-size:clamp(2.4rem,6vw,4rem);line-height:1.05;margin:1.1rem 0 1.2rem;background:linear-gradient(180deg,var(--text),#b9b3a8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-sub{font-size:1.1rem;color:var(--muted);line-height:1.6;max-width:660px;margin:0 auto 2rem}.hero-cta{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap}.section{max-width:1200px;margin:0 auto;padding:3.4rem 1.6rem}.section-title{font-family:var(--font-disp);font-weight:600;font-size:2rem;text-align:center;margin:0 0 .6rem}.section-lead{color:var(--muted);text-align:center;max-width:640px;margin:0 auto 2.4rem;line-height:1.6}.page-title{font-family:var(--font-disp);font-weight:600;font-size:2.4rem;margin:0 0 .4rem}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem}.feature{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);padding:1.8rem}.feature-mark{font-family:var(--font-disp);font-size:1.8rem;color:var(--accent);margin-bottom:.8rem}.feature h3{font-family:var(--font-disp);font-weight:600;font-size:1.2rem;margin:0 0 .5rem}.feature p{color:var(--muted);line-height:1.55;margin:0;font-size:.92rem}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.1rem}.cat-card{text-align:left;background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:.2s;padding:0;color:inherit}.cat-card:hover{border-color:var(--accent-dim);transform:translateY(-3px);box-shadow:var(--shadow)}.cat-thumb{aspect-ratio:3/2;background:var(--bg-2) center/cover no-repeat;display:grid;place-items:center}.cat-ph,.prod-ph{font-family:var(--font-disp);font-size:2.6rem;color:var(--faint);opacity:.35}.prod-ph.big{font-size:3.4rem;display:flex;flex-direction:column;align-items:center;gap:.4rem}.prod-ph.big em{font-size:.8rem;font-style:normal;letter-spacing:.1em;text-transform:uppercase}.cat-body{padding:.9rem 1rem;display:flex;align-items:center;justify-content:space-between}.cat-name{font-weight:500}.cat-count{font-size:.8rem;color:var(--faint);background:var(--panel-2);border-radius:999px;padding:.1rem .55rem}.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.2rem}.prod-card{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden;transition:.2s;display:flex;flex-direction:column;color:inherit}.prod-card:hover{border-color:var(--accent-dim);transform:translateY(-3px);box-shadow:var(--shadow)}.prod-thumb{aspect-ratio:4/3;background:var(--bg-2) center/cover no-repeat;position:relative;display:grid;place-items:center}.prod-badge{position:absolute;top:.6rem;left:.6rem;background:#0009;color:var(--accent-2);border:1px solid var(--accent-dim);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;padding:.2rem .55rem;border-radius:6px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.prod-badge.sale{left:auto;right:.6rem;background:var(--accent);color:#1a1408;border-color:transparent;font-weight:700}.prod-badge.inline{position:static;display:inline-block;margin:.3rem 0}.prod-body{padding:.9rem 1rem 1.1rem;display:flex;flex-direction:column;gap:.3rem}.prod-cat{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.prod-name{font-size:1rem;font-weight:500;line-height:1.3}.prod-price{font-family:var(--font-disp);font-size:1.3rem;margin-top:.2rem}.prod-price small{font-family:var(--font-ui);font-size:.68rem;color:var(--faint);letter-spacing:.04em}.pub-chips{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-bottom:2.2rem}.pub-chip{padding:.5rem 1rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:.85rem;cursor:pointer;transition:.15s}.pub-chip:hover{color:var(--text);border-color:var(--accent-dim)}.pub-chip.active{background:var(--accent);color:#1a1408;border-color:transparent;font-weight:600}.pub-empty{text-align:center;padding:3rem 1rem;color:var(--muted)}.shop-head{text-align:center;margin-bottom:1.6rem}.product-page .back{display:inline-block;margin-bottom:1.4rem}.product-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:2.6rem;align-items:start}.gallery-main{aspect-ratio:1;background:var(--bg-2) center/cover no-repeat;border:1px solid var(--line-soft);border-radius:var(--radius);display:grid;place-items:center}.gallery-thumbs{display:flex;gap:.6rem;margin-top:.8rem;flex-wrap:wrap}.gthumb{width:70px;height:70px;border-radius:var(--radius-sm);background:var(--bg-2) center/cover no-repeat;border:1px solid var(--line);cursor:pointer;transition:.15s}.gthumb.active{outline:2px solid var(--accent);outline-offset:-2px}.product-info h1{font-family:var(--font-disp);font-weight:600;font-size:2rem;margin:.4rem 0 1rem;line-height:1.15}.product-price{display:flex;align-items:baseline;gap:.7rem;margin-bottom:1.4rem}.product-price .now{font-family:var(--font-disp);font-size:2rem;color:var(--accent-2)}.product-price .was{text-decoration:line-through;color:var(--faint);font-size:1.1rem}.product-price small{color:var(--faint);font-size:.75rem}.product-short{font-size:1.05rem;color:var(--text);line-height:1.6;margin-bottom:1rem}.product-desc{color:var(--muted);line-height:1.7;margin-bottom:1.6rem;white-space:pre-line}.inquiry-hint{background:var(--panel);border:1px solid var(--line-soft);border-left:3px solid var(--accent);border-radius:var(--radius-sm);padding:.9rem 1.1rem;color:var(--muted);font-size:.9rem;line-height:1.5;margin-bottom:1.2rem}.cart-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;align-items:start}.cart-items{display:flex;flex-direction:column;gap:.8rem}.cart-row{display:grid;grid-template-columns:80px 1fr auto auto auto;gap:1rem;align-items:center;background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);padding:.8rem 1rem}.cart-img{width:80px;height:80px;border-radius:var(--radius-sm);background:var(--bg-2) center/cover no-repeat;display:grid;place-items:center}.cart-img .prod-ph{font-size:1.6rem}.cart-name{font-weight:500;display:block}.cart-unit{font-size:.82rem;color:var(--muted);margin-top:.25rem}.cart-unit small{color:var(--faint)}.cart-qty{display:flex;align-items:center;gap:.2rem}.cart-qty button{width:28px;height:28px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:7px;cursor:pointer;font-size:1rem}.cart-qty button:hover{border-color:var(--accent)}.cart-qty input{width:42px;text-align:center;background:var(--bg-2);border:1px solid var(--line);color:var(--text);border-radius:7px;padding:.35rem 0;font-family:inherit}.cart-line{font-family:var(--font-disp);font-size:1.05rem;min-width:90px;text-align:right}.cart-remove{background:transparent;border:none;color:var(--faint);cursor:pointer;font-size:1rem;padding:.3rem}.cart-remove:hover{color:var(--danger)}.cart-summary{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius);padding:1.6rem;position:sticky;top:90px}.sum-line{display:flex;justify-content:space-between;padding:.35rem 0;color:var(--muted);font-size:.92rem}.sum-line b{color:var(--text);font-variant-numeric:tabular-nums}.sum-line.grand{border-top:1px solid var(--line);margin-top:.5rem;padding-top:.8rem;font-size:1.1rem}.sum-line.grand b{font-family:var(--font-disp);color:var(--accent-2)}.cart-inquiry-note{background:#c8a26314;border:1px solid var(--accent-dim);border-radius:var(--radius-sm);padding:.8rem 1rem;font-size:.85rem;color:var(--accent-2);line-height:1.5;margin-bottom:1.2rem}.checkout-h{font-family:var(--font-disp);font-weight:600;font-size:1.2rem;margin:1.6rem 0 1rem;padding-top:1.2rem;border-top:1px solid var(--line-soft)}.pub-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem}.pub-field label{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.center-link{display:block;text-align:center;margin-top:1rem}.cart-done{text-align:center;padding:4rem 1rem;max-width:520px;margin:0 auto}.cart-done-mark{width:64px;height:64px;border-radius:50%;background:#6fbf8b26;color:var(--ok);display:grid;place-items:center;font-size:1.8rem;margin:0 auto 1.4rem;border:1px solid rgba(111,191,139,.4)}.cart-done h1{font-family:var(--font-disp);font-weight:600;font-size:1.7rem;margin:0 0 1rem}.order-no{color:var(--muted);margin-bottom:1.8rem}.order-no b{color:var(--accent-2);font-family:ui-monospace,monospace}.b2b-cta{background:linear-gradient(180deg,#131418,#0e0f12);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:4rem 1.6rem;margin-top:2rem}.b2b-in{max-width:720px;margin:0 auto;text-align:center}.b2b-in h2{font-family:var(--font-disp);font-weight:600;font-size:1.9rem;margin:0 0 .8rem}.b2b-in p{color:var(--muted);line-height:1.6;margin:0 0 1.8rem}.pub-footer{border-top:1px solid var(--line-soft);margin-top:auto}.pub-footer-in{max-width:1200px;margin:0 auto;padding:2.6rem 1.6rem;display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}.pf-logo{font-family:var(--font-disp);font-size:1.3rem;letter-spacing:.16em}.pf-logo span{color:var(--accent)}.pf-brand p{color:var(--faint);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin:.5rem 0 0}.pf-partners-label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}.pf-logos{display:flex;gap:1.6rem;margin-top:.7rem}.pf-partner{color:var(--muted);font-size:.9rem;opacity:.55;transition:.2s}.pf-partner:hover{opacity:1}.pf-bottom{border-top:1px solid var(--line-soft);padding:1.1rem 1.6rem;text-align:center;color:var(--faint);font-size:.8rem}@media(max-width:820px){.product-grid,.cart-layout{grid-template-columns:1fr}.pub-nav{display:none}.cart-summary{position:static}.cart-row{grid-template-columns:60px 1fr auto;grid-template-areas:"img info info" "img qty line" "img qty rem"}}.portal-tag{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent-dim);padding:.2rem .55rem;border-radius:999px;margin-left:-.6rem}.portal-company{font-size:.85rem;color:var(--muted);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-auth{min-height:100vh;display:grid;place-items:center;padding:2.5rem 1.5rem}.portal-auth.wide .portal-auth-card{max-width:560px}.portal-auth-card{width:100%;max-width:420px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:2.4rem;box-shadow:var(--shadow)}.portal-auth-card .brand{display:block;text-align:center;margin-bottom:1.6rem}.portal-auth-card h1{font-family:var(--font-disp);font-weight:600;font-size:1.6rem;text-align:center;margin:0 0 1.4rem}.portal-intro{color:var(--muted);font-size:.9rem;line-height:1.55;text-align:center;margin:-.6rem 0 1.4rem}.portal-auth-foot{text-align:center;margin-top:1.4rem;color:var(--muted);font-size:.88rem}.cfg-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:1.6rem;align-items:start}.cfg-form{display:flex;flex-direction:column;gap:1rem}.cfg-switches{display:flex;gap:1.4rem;flex-wrap:wrap;padding:.4rem 0}.cfg-live{display:flex;align-items:center;gap:1rem;margin-top:.6rem;padding-top:1.2rem;border-top:1px solid var(--line-soft)}.cfg-live-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.cfg-live-price{font-family:var(--font-disp);font-size:1.9rem;color:var(--accent-2);margin-right:auto}.cfg-cart{position:sticky;top:90px}.cfg-cart h3{font-family:var(--font-disp);font-weight:600;margin:0 0 1rem}.cfg-lines{display:flex;flex-direction:column;gap:.6rem}.cfg-line{display:grid;grid-template-columns:1fr auto auto;gap:.8rem;align-items:center;padding:.7rem .2rem;border-bottom:1px solid var(--line-soft)}.cfg-line-name{font-weight:500;font-size:.92rem}.cfg-line-meta{font-size:.78rem;color:var(--muted);margin-top:.2rem}.cfg-line-price{font-family:var(--font-disp);font-size:1.05rem}.cfg-cart .sum-line.grand{margin-top:.6rem}.cfg-cart .btn-block{margin-top:1.1rem}.order-attach{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line-soft)}.order-attach h4{margin:0 0 .6rem;font-size:.95rem}.order-attach-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.order-attach-list a{color:var(--accent-2, #e3c891);text-decoration:none;font-size:.9rem}.order-attach-list a:hover{text-decoration:underline}.cfg-side{display:flex;flex-direction:column;gap:1.6rem}.cfg-measure h3{font-family:var(--font-disp);font-weight:600;margin:0 0 .9rem;font-size:1.1rem}.cfg-measure .row{gap:.9rem}.cfg-measure-area{margin-top:.5rem;font-size:.95rem;color:var(--accent-2)}.cfg-measure-area b{font-family:var(--font-disp)}.cfg-attach{margin-top:1.4rem;padding-top:1.3rem;border-top:1px solid var(--line-soft)}.cfg-attach .hint{margin:0 0 .8rem}.cfg-attach-list{list-style:none;margin:0 0 .8rem;padding:0;display:flex;flex-direction:column;gap:.45rem}.cfg-attach-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;background:var(--panel-2);border:1px solid var(--line-soft);border-radius:10px;padding:.5rem .75rem}.cfg-attach-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;color:var(--accent-2);text-decoration:none}.cfg-attach-name:hover{text-decoration:underline}.cfg-attach-btn{display:flex;align-items:center;justify-content:center;cursor:pointer;padding:.7rem 1rem;border:1px dashed var(--accent-dim);border-radius:12px;color:var(--accent-2);font-weight:600;font-size:.92rem;transition:border-color .15s ease,background .15s ease}.cfg-attach-btn:hover{border-color:var(--accent);background:#c8a2630f}.cfg-attach-types{display:block;margin-top:.55rem;text-align:center}.cfg-attach-actions{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.modal.cfg-proposal{max-width:760px;width:95%}.cfg-prop-note{border-radius:10px;padding:.6rem .8rem;font-size:.88rem;margin-bottom:1rem}.cfg-prop-note.warn{background:#c878281f;border:1px solid rgba(200,120,40,.4);color:#e6b87a}.cfg-prop-note.ok{background:#78b4781a;border:1px solid rgba(120,180,120,.35);color:#a7d3a7}.cfg-prop-table{overflow-x:auto}.cfg-prop-table table{width:100%;border-collapse:collapse;min-width:560px}.cfg-prop-table th{text-align:left;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:.3rem .35rem;font-weight:600}.cfg-prop-table td{padding:.25rem .35rem}.cfg-prop-table .input{padding:.45rem .55rem}.cfg-prop-table td:nth-child(1) .input,.cfg-prop-table td:nth-child(2) .input,.cfg-prop-table td:nth-child(4) .input{max-width:92px}.cfg-prop-actions{display:flex;align-items:center;gap:.6rem;margin-top:1.2rem}.cfg-prop-confirm{margin-left:auto;display:flex;gap:.6rem}@media(max-width:600px){.cfg-prop-actions{flex-direction:column;align-items:stretch}.cfg-prop-confirm{margin-left:0}}@media(max-width:820px){.cfg-layout{grid-template-columns:1fr}.cfg-cart{position:static}.portal-tag{display:none}}.mat-img-btn{display:inline-block;margin-top:.35rem;padding:.15rem .45rem;font-size:.72rem;background:transparent;border:1px solid var(--line, #2a2a2a);border-radius:6px;color:var(--muted, #999);cursor:pointer;transition:.15s}.mat-img-btn:hover{border-color:var(--accent);color:var(--text)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:grid;place-items:center;z-index:100;padding:1.5rem}.modal-card{background:var(--panel, #161616);border:1px solid var(--line, #2a2a2a);border-radius:12px;width:100%;max-width:720px;max-height:88vh;overflow-y:auto;padding:1.4rem 1.6rem}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.modal-head h2{margin:0;font-size:1.2rem}.modal-close{background:transparent;border:none;color:var(--muted, #999);font-size:1.1rem;cursor:pointer}.modal-close:hover{color:var(--text)}.mat-cover-row{display:flex;gap:1rem;align-items:center}.mat-cover-thumb{width:140px;height:140px;border-radius:10px;background-size:cover;background-position:center;background-color:#0e0e0e;border:1px solid var(--line, #2a2a2a);display:grid;place-items:center;cursor:pointer;flex:none}.mat-cover-ops{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.mat-images .img-grid{margin-top:.8rem}.cfg-media{margin-bottom:1.1rem}.cfg-media-main{width:100%;aspect-ratio:4 / 3;border-radius:10px;background-size:cover;background-position:center;background-color:#0e0e0e;border:1px solid var(--line, #2a2a2a)}.cfg-media-thumbs{display:flex;gap:.4rem;margin-top:.5rem;flex-wrap:wrap}.cfg-media-thumb{width:54px;height:54px;border-radius:6px;background-size:cover;background-position:center;background-color:#0e0e0e;border:1px solid var(--line, #2a2a2a);cursor:pointer;padding:0;flex:none}.cfg-media-thumb.active{outline:2px solid var(--accent);outline-offset:-2px}.hero-img{background-size:cover;background-position:center}.hero-img .hero-sub{color:#d8d4cc}.eyebrow{display:inline-block;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:.7rem}.section-sub-title{font-family:var(--font-disp);font-weight:600;font-size:1.5rem;text-align:center;margin:0 0 1.6rem}.section.split{display:grid;grid-template-columns:1fr 1fr;gap:2.8rem;align-items:center}.section.split .section-title,.section.split .section-lead{text-align:left;margin-left:0}.split-text{max-width:560px}.split-media{width:100%;aspect-ratio:4 / 3;border-radius:14px;background-size:cover;background-position:center;background-color:var(--panel);border:1px solid var(--line);box-shadow:0 18px 50px #0006}.split-media.tall{aspect-ratio:3 / 4}.section.split.reverse .split-media{order:-1}.steps{display:flex;flex-direction:column;gap:1.1rem;margin-top:1.6rem}.step{display:flex;gap:1rem;align-items:flex-start}.step-no{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-disp);font-weight:600;color:var(--accent);border:1px solid var(--accent-dim);background:var(--panel)}.step h4{margin:.1rem 0 .25rem;font-size:1rem}.step p{color:var(--muted);font-size:.9rem;line-height:1.55;margin:0}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.media-grid.porc{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.media-tile{width:100%;aspect-ratio:4 / 3;border-radius:12px;background-size:cover;background-position:center;background-color:var(--panel);border:1px solid var(--line);padding:0;cursor:default;transition:transform .18s,box-shadow .18s,border-color .18s}.media-tile.lift{cursor:pointer}.media-tile.lift:hover{transform:translateY(-4px);border-color:var(--accent-dim);box-shadow:0 16px 40px #00000073}.pub-chips.center{justify-content:center}.section-lead.narrow{max-width:720px}.mat-format{text-align:center;color:var(--accent);font-size:.85rem;letter-spacing:.05em;margin:-1.4rem 0 1.8rem}.mat-b2b{margin-top:3rem;padding:1.8rem;border:1px solid var(--line);border-radius:14px;background:var(--panel);display:flex;align-items:center;justify-content:space-between;gap:1.2rem;flex-wrap:wrap}.mat-b2b p{margin:0;color:var(--muted)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e0;z-index:200;display:grid;place-items:center;padding:2rem;cursor:zoom-out}.lightbox img{max-width:96vw;max-height:92vh;border-radius:8px;box-shadow:0 20px 70px #0009}.lightbox-close{position:fixed;top:1.2rem;right:1.4rem;background:#00000080;border:1px solid var(--line);color:#fff;width:40px;height:40px;border-radius:50%;font-size:1.1rem;cursor:pointer}@media(max-width:820px){.section.split{grid-template-columns:1fr;gap:1.6rem}.section.split.reverse .split-media{order:0}.split-media,.split-media.tall{aspect-ratio:16 / 10}.hero.hero-img{padding:4.5rem 1.2rem 3.5rem}}.b2b-invite{margin-top:1.6rem;padding:1.1rem 1.3rem;border:1px solid var(--line);border-radius:12px;background:var(--panel);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.b2b-invite.wide{margin-top:2.6rem}.b2b-invite strong{font-family:var(--font-disp);font-size:1.05rem}.b2b-invite p{margin:.25rem 0 0;color:var(--muted);font-size:.88rem;max-width:520px}.field-hint{display:block;margin-top:.35rem;color:var(--muted);font-size:.78rem;line-height:1.45}.money-breakdown{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line-soft)}.mb-head{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:.7rem}.mb-head h4{margin:0;font-size:.98rem}.mb-internal{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-2);border:1px solid var(--accent-dim);border-radius:6px;padding:.1rem .4rem;margin-left:.5rem}.mb-rows{display:flex;flex-direction:column;gap:.35rem}.mb-row{display:flex;justify-content:space-between;align-items:baseline;padding:.35rem .1rem;border-bottom:1px dashed var(--line-soft);font-size:.92rem}.mb-row em{color:var(--muted);font-style:normal;font-size:.82rem}.mb-row.muted{color:var(--muted)}.mb-row.grega{margin-top:.3rem;border:1px solid var(--accent-dim);border-radius:10px;background:#c8a2631a;padding:.6rem .7rem;font-weight:600}.mb-row.grega b{font-family:var(--font-disp);font-size:1.25rem;color:var(--accent-2)}.commission-cfg{margin:1.2rem 0}.commission-cfg .row{gap:1rem;align-items:flex-end}.modal.work-order{max-width:720px;width:95%}.wo-sheet{background:#fff;color:#16181c;border-radius:10px;padding:1.6rem 1.8rem}.wo-title h2{font-family:var(--font-disp);font-size:1.15rem;margin:0 0 .6rem;color:#16181c}.wo-meta{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;font-size:.86rem;color:#444;margin-bottom:1rem;padding-bottom:.8rem;border-bottom:2px solid #16181c}.wo-table{width:100%;border-collapse:collapse;font-size:.9rem}.wo-table th{text-align:left;border-bottom:1px solid #999;padding:.45rem .4rem;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:#555}.wo-table td{padding:.5rem .4rem;border-bottom:1px solid #e3e3e3;color:#16181c}.wo-table .r,.wo-totals .grand b{text-align:right}.wo-totals{margin-top:1rem;margin-left:auto;max-width:280px}.wo-totals>div{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.9rem;color:#16181c}.wo-totals .grand{border-top:2px solid #16181c;margin-top:.3rem;padding-top:.5rem;font-weight:700;font-size:1.05rem}.wo-note{margin-top:1rem;font-size:.85rem;color:#444;font-style:italic}@media print{body *{visibility:hidden!important}.work-order,.work-order *{visibility:visible!important}.modal-bg{position:static;background:#fff}.modal.work-order{position:absolute;left:0;top:0;max-width:100%;width:100%;box-shadow:none;background:#fff;padding:0}.no-print{display:none!important}}.chip-count{opacity:.55;font-size:.82em;margin-left:.15rem}.ref-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.9rem;margin-top:1.4rem}.ref-tile{position:relative;aspect-ratio:4/3;border:0;padding:0;border-radius:var(--radius-sm);overflow:hidden;cursor:zoom-in;background:var(--bg-2)}.ref-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.ref-tile:hover img{transform:scale(1.06)}.ref-cap{position:absolute;left:0;right:0;bottom:0;padding:1.5rem .7rem .55rem;font-size:.78rem;line-height:1.3;text-align:left;color:#fff;background:linear-gradient(transparent,#000c);opacity:0;transition:opacity .25s ease;pointer-events:none}.ref-tile:hover .ref-cap{opacity:1}.ref-figure{max-width:92vw;max-height:90vh;margin:0;display:flex;flex-direction:column;align-items:center;cursor:default}.ref-figure img{max-width:92vw;max-height:80vh;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px -20px #000000e6}.ref-figcap{margin-top:.9rem;text-align:center;color:var(--text);max-width:640px;padding:0 1rem}.ref-figcap strong{display:block;font-family:var(--font-disp);font-size:1.12rem}.ref-figcap span{display:block;color:var(--muted);font-size:.9rem;margin-top:.3rem}@media(max-width:560px){.ref-grid{grid-template-columns:repeat(2,1fr);gap:.55rem}.ref-cap{opacity:1;font-size:.68rem;padding:1rem .5rem .4rem}}.cfg-meas-table{overflow-x:auto}.cfg-meas-table table{width:100%;border-collapse:collapse;min-width:440px}.cfg-meas-table th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.25rem .3rem;font-weight:600}.cfg-meas-table th.r{text-align:right}.cfg-meas-table td{padding:.2rem .3rem}.cfg-meas-table td.r{text-align:right;font-size:.9rem}.cfg-meas-table .input{padding:.45rem .5rem;max-width:90px}.cfg-meas-actions{display:flex;align-items:center;gap:.8rem;margin-top:1rem;flex-wrap:wrap}.cfg-meas-right{margin-left:auto;display:flex;align-items:center;gap:.9rem}.cfg-meas-right .cfg-live-price{font-size:1.4rem}.piece-svg{display:block}.piece-svg polygon{fill:#c8a2631f;stroke:var(--accent, #c8a263);stroke-width:1.5}.piece-svg text{fill:var(--muted, #9a9690);font-size:8px;font-family:var(--font-ui)}.pd-cell{width:84px}.cfg-meas-table td .input{min-width:64px}.pro-render{margin-top:1.4rem;padding-top:1.3rem;border-top:1px solid var(--line-soft)}.pro-render-head{display:flex;align-items:center;gap:.55rem;margin-bottom:.25rem}.pro-render-head h3{margin:0;font-family:var(--font-disp);font-size:1.12rem}.pro-badge{font-size:.6rem;font-weight:700;letter-spacing:.09em;padding:.14rem .45rem;border-radius:999px;background:var(--accent);color:#1a1408}.pro-render .hint{margin:.2rem 0 .85rem}.pro-body{display:flex;flex-direction:column;gap:.7rem}.pro-drop{display:flex;align-items:center;justify-content:center;min-height:128px;border:1.5px dashed var(--line);border-radius:var(--radius-sm);cursor:pointer;overflow:hidden;background:#ffffff04;transition:border-color .15s,background .15s}.pro-drop:hover{border-color:var(--accent);background:#c8a2630d}.pro-drop.has{border-style:solid;min-height:0}.pro-drop-cta{color:var(--muted);font-size:.85rem;padding:1.4rem;text-align:center}.pro-sketch{width:100%;max-height:240px;object-fit:contain;display:block}.pro-opts{display:flex;gap:.7rem}.pro-opts label{flex:1;display:flex;flex-direction:column;gap:.25rem;font-size:.73rem;color:var(--muted)}.pro-wait{color:var(--accent)}.pro-err{margin-top:.6rem}.pro-result{display:flex;flex-direction:column;gap:.9rem}.pro-compare{display:flex;align-items:center;gap:.6rem}.pro-compare figure{flex:1;margin:0;text-align:center;min-width:0}.pro-compare img{width:100%;border-radius:var(--radius-sm);border:1px solid var(--line-soft);display:block}.pro-compare figcaption{font-size:.67rem;color:var(--faint);margin-top:.3rem}.pro-compare .pro-out img{border:1px solid var(--accent);box-shadow:var(--shadow)}.pro-arrow{color:var(--accent);font-size:1.3rem;flex:0 0 auto}.pro-actions{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:560px){.pro-compare{flex-direction:column}.pro-arrow{transform:rotate(90deg)}.pro-opts{flex-direction:column}}.piece-cards{display:flex;flex-direction:column;gap:.8rem}.piece-card{border:1px solid var(--line-soft);border-radius:var(--radius-sm);padding:.8rem;background:#ffffff04}.piece-card.filled{border-color:var(--line)}.piece-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.55rem}.piece-no{font-weight:600;font-size:.82rem;color:var(--muted)}.piece-price{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:600;color:var(--accent)}.piece-body{display:flex;gap:.9rem;align-items:flex-start}.piece-draw{flex:0 0 auto;width:184px;max-width:46%;text-align:center}.piece-svg2{width:100%;height:auto;touch-action:manipulation;-webkit-user-select:none;user-select:none}.piece-face{fill:#ffffff0a;cursor:pointer;transition:fill .12s}.piece-face:hover{fill:#c8a26314}.piece-face.on{fill:#46b46e29}.edge-g{cursor:pointer}.edge-line{stroke:var(--line);stroke-width:3;transition:stroke .12s,stroke-width .12s}.edge-g:hover .edge-line{stroke:var(--accent)}.edge-line.on{stroke:var(--ok);stroke-width:5}.edge-x{fill:var(--ok);font-size:15px;font-weight:700;pointer-events:none}.piece-svg2 .dim{fill:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.piece-polish-hint{font-size:.68rem;color:var(--faint);margin:.3rem 0 0;line-height:1.3}.piece-polish-hint:first-letter{text-transform:none}.piece-fields{flex:1 1 auto;display:flex;flex-direction:column;gap:.5rem;min-width:0}.pf{display:flex;flex-direction:column;gap:.2rem;font-size:.72rem;color:var(--muted)}.pf-row{display:flex;gap:.7rem;align-items:flex-end}.pf-sm{max-width:90px}.pf-check{display:flex;align-items:center;gap:.35rem;font-size:.76rem;color:var(--text);cursor:pointer;white-space:nowrap}.piece-note{font-size:.85rem}.piece-help{margin-top:.2rem}@media(max-width:560px){.piece-body{flex-direction:column}.piece-draw{width:100%;max-width:220px;margin:0 auto}}
