/*! Stilo Fincan · Graphite / chrome bundle builder. No global header, dock or body overrides. */
.mkb-builder,.mkb-entry,.mkb-sheet,.mkb-contents,.mkb-builder *,.mkb-entry *,.mkb-sheet *,.mkb-contents *{box-sizing:border-box}
.mkb-builder,.mkb-entry,.mkb-sheet{--mkb-ink:#24262a;--mkb-muted:#777c84;--mkb-line:#e5e6e8;--mkb-soft:#f5f5f3;--mkb-swatch:#b5b2ae;color:var(--mkb-ink);font-family:inherit;-webkit-tap-highlight-color:transparent}
.mkb-builder{width:100%;max-width:1080px;min-width:0;margin:0 auto;padding:0 0 28px;text-align:left}
.mkb-builder :is(h1,h2,h3,p),.mkb-entry :is(h2,p),.mkb-sheet :is(h2,p){margin:0}
.mkb-builder :is(button,input,select),.mkb-entry a,.mkb-sheet button{font-family:inherit;touch-action:manipulation}
.mkb-builder :is(button,input,select),.mkb-sheet button{font-size:inherit}
.mkb-builder button,.mkb-entry a,.mkb-sheet button{cursor:pointer}
.mkb-builder button:disabled,.mkb-sheet button:disabled{cursor:default}
.mkb-builder svg,.mkb-entry svg,.mkb-sheet svg{display:block;width:20px;height:20px;flex:0 0 auto}
.mkb-builder :is(button,a,input,select,summary):focus-visible,.mkb-entry a:focus-visible,.mkb-sheet button:focus-visible{outline:2px solid #8f7ea2;outline-offset:3px}
.mkb-builder [hidden]{display:none!important}
.mkb-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}

/* A short editorial plate, with the same metal edge as the existing Moka dock. */
.mkb-heading{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 12px;align-items:center;overflow:hidden;margin:0 0 14px;padding:22px 20px 0;border:1px solid #4a4c51;border-radius:24px;background:radial-gradient(ellipse at 89% 0,#55575d3d,transparent 58%),linear-gradient(135deg,#303238,#17191d 70%);box-shadow:inset 0 1px 0 #ffffff24,0 7px 19px #1b1d230c;color:#fff}
.mkb-heading::before{position:absolute;z-index:-1;top:-70px;right:-85px;width:240px;height:240px;border:1px solid #ffffff0b;border-radius:50%;content:""}
.mkb-heading::after{position:absolute;z-index:-1;top:-45px;right:-60px;width:190px;height:190px;border:1px solid #ffffff0c;border-radius:50%;content:""}
.mkb-eyebrow{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:650;line-height:1.4;letter-spacing:.09em}
.mkb-eyebrow svg{width:13px;height:13px}
.mkb-heading .mkb-eyebrow{color:#c1c3ca}
.mkb-heading h1{margin:12px 0 8px;color:#fff;font-size:clamp(26px,7vw,34px);font-weight:650;line-height:1.04;letter-spacing:-1.25px}
.mkb-heading h1 span{color:#c6b4d0}
.mkb-heading p{color:#b8bbc2;font-size:11px;line-height:1.45}
.mkb-price{align-self:center;min-width:86px;padding:0 0 0 12px;border-left:1px solid #ffffff27;text-align:right}
.mkb-price>span{display:block;color:#bfc2ca;font-size:8px;font-weight:600;line-height:1.55;letter-spacing:.12em}
.mkb-price strong{display:block;margin-top:8px;white-space:nowrap;color:#fff;font-size:23px;font-weight:650;line-height:1.1;letter-spacing:-.75px;font-variant-numeric:tabular-nums}
.mkb-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;grid-column:1/-1;margin:0 -20px;padding:12px 15px;list-style:none;border-top:1px solid #ffffff16;background:#1214183d}
.mkb-steps li{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;color:#858a94;font-size:9px;line-height:15px;white-space:nowrap}
.mkb-steps b{display:grid;place-items:center;width:17px;height:17px;border:1px solid #ffffff25;border-radius:50%;font-size:8px;font-weight:600}
.mkb-steps b svg{width:10px;height:10px}
.mkb-steps [aria-current]{color:#fff}
.mkb-steps [aria-current] b{border-color:#e5e5e9;background:linear-gradient(#f6f6f8,#cdced5);box-shadow:0 1px 5px #0002;color:#27292e}

/* Six touchable slots fit a 320px phone without sideways page scrolling. */
.mkb-selection{padding:13px 13px 0;border:1px solid var(--mkb-line);border-radius:20px;background:#fff;box-shadow:0 2px 8px #21232903}
.mkb-selection-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.mkb-selection h2{color:var(--mkb-ink);font-size:15px;font-weight:650;line-height:1.3;letter-spacing:-.4px}
.mkb-count{display:inline-flex;align-items:baseline;gap:3px;padding:4px 9px;border:1px solid #e7e7e9;border-radius:30px;background:#f8f8f7;color:#7b7e85;font-size:10px;font-weight:500;line-height:17px;white-space:nowrap;font-variant-numeric:tabular-nums}
.mkb-count b{color:#25272d;font-size:13px;font-weight:700}
.mkb-progress{display:block;appearance:none;width:100%;height:3px;overflow:hidden;margin:0 0 12px;border:0;border-radius:4px;background:#f0f0f0;color:#76717c}
.mkb-progress::-webkit-progress-bar{border-radius:4px;background:#f0f0f0}
.mkb-progress::-webkit-progress-value{border-radius:4px;background:linear-gradient(90deg,#373940,#a5a2b0);transition:width 220ms ease}
.mkb-progress::-moz-progress-bar{border-radius:4px;background:linear-gradient(90deg,#373940,#a5a2b0)}
.mkb-slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;min-width:0}
.mkb-slot{position:relative;display:grid;place-items:center;isolation:isolate;aspect-ratio:.77;min-width:0;min-height:60px;overflow:hidden;margin:0;padding:4px;border:1px solid #e4e4e7;border-radius:12px;background:#f8f8f7;color:#b6b6bd}
.mkb-slot.is-empty{border-style:dashed}
.mkb-slot.is-empty>svg{width:24px;height:24px;opacity:.65}
.mkb-slot.is-filled{border-color:#d2d0d7;background:#fff;box-shadow:inset 0 0 0 1px #fff,0 2px 5px #33334008}
.mkb-slot .mkb-photo{width:100%;height:100%;min-width:0;object-fit:contain;object-position:center}
.mkb-slot-no{position:absolute;z-index:2;top:4px;left:4px;display:grid;place-items:center;width:14px;height:14px;border:1px solid #e7e7e9;border-radius:50%;background:#fff;color:#888b93;font-size:8px;font-weight:600;line-height:1}
.mkb-slot-edit{position:absolute;right:3px;bottom:3px;display:grid;place-items:center;width:18px;height:18px;border:1px solid #e0e0e4;border-radius:50%;background:#fffffff0;color:#5e6068}
.mkb-slot-edit svg{width:10px;height:10px}
.mkb-slot[data-latest=true]{animation:mkb-arrive 240ms ease-out both}
.mkb-tray-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px}
.mkb-tray-bottom>span{display:flex;align-items:center;gap:5px;color:#696e76;font-size:10px;line-height:1.4}
.mkb-tray-bottom>span svg{width:13px;height:13px}
.mkb-tray-bottom>small{color:#90939a;font-size:9px;line-height:1.3}
.mkb-text-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 4px;border:0;background:transparent;color:#64676f;font-size:10px!important;font-weight:600;line-height:1.3;text-decoration:underline;text-underline-offset:3px}
.mkb-edit-note{margin:0 -13px!important;padding:10px 13px;border-top:1px solid #e7e5eb;border-radius:0 0 19px 19px;background:#f6f4f9;color:#72677e;font-size:11px;line-height:1.5}

.mkb-picker{min-width:0;margin-top:25px}
.mkb-picker-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-bottom:14px}
.mkb-picker-heading small,.mkb-review-heading small{display:block;margin-bottom:5px;color:#8b8e96;font-size:8px;font-weight:650;line-height:1.4;letter-spacing:.12em}
.mkb-picker-heading h2{color:var(--mkb-ink);font-size:23px;font-weight:650;line-height:1.15;letter-spacing:-.8px}
.mkb-picker-heading>span{padding-bottom:2px;color:#8b8e95;font-size:10px;white-space:nowrap}
.mkb-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}
.mkb-search{display:flex;align-items:center;gap:9px;grid-column:1/-1;min-width:0;min-height:48px;padding:0 13px;border:1px solid #e3e3e6;border-radius:14px;background:#f7f7f6;color:#787c85;box-shadow:inset 0 1px 2px #00000002}
.mkb-search>svg{width:18px;height:18px}
.mkb-search input{appearance:none;flex:1;width:0;min-width:0;max-width:100%;height:46px;padding:0;border:0;outline-offset:0!important;border-radius:0;background:transparent;color:#35383e;font-size:16px;line-height:1.3;box-shadow:none}
.mkb-search input::placeholder{color:#8f939a;font-size:12px}
.mkb-search input::-webkit-search-cancel-button{-webkit-appearance:none}
.mkb-search>button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;margin-right:-10px;padding:0;border:0;border-radius:10px;background:transparent;color:#7a7d84}
.mkb-search>button svg{width:16px;height:16px}
.mkb-filter{display:block;min-width:0;padding:10px 11px 0;border:1px solid #e5e5e8;border-radius:14px;background:#fff}
.mkb-filter>span:first-child{display:flex;align-items:center;gap:5px;color:#8c9097;font-size:9px;line-height:1.2}
.mkb-filter>span:first-child svg{width:12px;height:12px}
.mkb-filter-select{position:relative;display:block;min-width:0}
.mkb-filter select{appearance:none;display:block;width:100%;max-width:100%;min-width:0;min-height:44px;padding:0 20px 0 0;border:0;border-radius:0;background:transparent;color:#43464e;font-size:12px;font-weight:600;line-height:1.4;text-overflow:ellipsis;box-shadow:none}
.mkb-filter-select>svg{position:absolute;top:15px;right:0;width:13px;height:13px;color:#979ba3;pointer-events:none}
.mkb-results{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:2px 0}
.mkb-results p{color:#737880;font-size:10px;line-height:1.4}
.mkb-results>small{color:#969aa0;font-size:9px;line-height:1.4;text-align:right}
.mkb-photo-note{margin:0 0 15px;border:1px solid #ebe9ee;border-radius:12px;background:#faf9fb;color:#7c7584;font-size:10px;line-height:1.5}
.mkb-photo-note summary{display:flex;align-items:center;gap:6px;min-height:44px;padding:8px 11px;list-style:none;cursor:pointer}
.mkb-photo-note summary::-webkit-details-marker{display:none}
.mkb-photo-note summary>svg{width:14px;height:14px;color:#9e93a8}
.mkb-photo-note summary::after{width:6px;height:6px;margin-left:auto;border-right:1px solid #98909f;border-bottom:1px solid #98909f;content:"";transform:rotate(45deg)}
.mkb-photo-note[open] summary::after{transform:rotate(225deg)}
.mkb-photo-note p{padding:0 12px 12px;font-size:11px;line-height:1.55}

/* Real product photographs always use contain; the product is never cropped. */
.mkb-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;min-width:0}
.mkb-option{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #e5e6e8;border-radius:21px;background:#fff;box-shadow:0 4px 12px #15171a04,0 1px 2px #15171a03}
.mkb-option[data-selected=true]{border-color:#d2cbdc}
.mkb-option-media{position:relative;display:grid;place-items:center;isolation:isolate;aspect-ratio:1;min-width:0;overflow:hidden;margin:5px 5px 0;border-radius:16px;background:#f5f4f1}
.mkb-option-media>.mkb-photo,.mkb-option-media>img,.mkb-option-media .mix-branded-cover{position:static!important;display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;margin:0!important;padding:8px;object-fit:contain!important;object-position:center!important;transform:none!important;clip-path:none!important}
.mkb-option-media:has(.cup-cutout)>:not(.mkb-picked-badge){max-width:100%;max-height:100%}
.mkb-photo-placeholder{display:grid;place-items:center;align-self:stretch;width:100%;height:100%;color:#bcbdc3}
.mkb-photo-placeholder svg{width:38px;height:38px}
.mkb-picked-badge{position:absolute;z-index:2;top:7px;left:7px;display:inline-flex;align-items:center;gap:3px;padding:4px 6px;border:1px solid #ded9e6;border-radius:30px;background:#fffffff2;color:#75647e;font-size:8px;font-weight:650;line-height:13px}
.mkb-picked-badge svg{width:10px;height:10px}
.mkb-option-body{display:flex;flex:1;flex-direction:column;min-width:0;padding:11px 10px 10px}
.mkb-brand{display:block;overflow:hidden;color:#90939a;font-size:8px;font-weight:600;line-height:12px;letter-spacing:.09em;white-space:nowrap;text-overflow:ellipsis}
.mkb-option h3{display:-webkit-box;min-height:38px;overflow:hidden;margin:4px 0 10px;color:#2b2e33;font-size:15px;font-weight:650;line-height:19px;letter-spacing:-.4px;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}
.mkb-variant{display:block;min-width:0;margin-top:auto}
.mkb-variant>span:first-child{display:block;margin-bottom:5px;color:#989ba2;font-size:8px;line-height:12px}
.mkb-select-shell{position:relative;display:flex;align-items:center;min-width:0;border:1px solid #e5e5e8;border-radius:11px;background:#fafafa}
.mkb-select-shell>i,.mkb-sheet-colour>i,.mkb-review-list p>i{display:inline-block;flex:0 0 10px;width:10px;height:10px;border:1px solid #00000016;border-radius:50%;background:var(--mkb-swatch);box-shadow:inset 1px 1px 1px #ffffff65}
.mkb-select-shell>i{position:absolute;left:9px;pointer-events:none}
.mkb-select-shell select{appearance:none;width:100%;max-width:100%;min-width:0;min-height:44px;padding:0 23px 0 25px;border:0;border-radius:11px;background:transparent;color:#595d66;font-size:10px;font-weight:500;line-height:1.4;text-overflow:ellipsis;box-shadow:none}
.mkb-select-shell>svg{position:absolute;right:8px;width:11px;height:11px;color:#92969e;pointer-events:none}
.mkb-availability{display:block;min-height:30px;padding:9px 0;color:#95989f;font-size:8px;line-height:12px}
.mkb-add{position:relative;display:flex;align-items:center;justify-content:space-between;gap:5px;width:100%;min-width:0;min-height:44px;padding:5px 5px 5px 10px;border:1px solid #282a30;border-radius:13px;background:linear-gradient(165deg,#3a3d44,#17191e);box-shadow:inset 0 1px 0 #ffffff22,0 3px 7px #1e202314;color:#fff;text-align:left;transition:transform 150ms ease,box-shadow 150ms ease}
.mkb-add>span{min-width:0;font-size:10px;font-weight:600;line-height:13px;letter-spacing:-.12px}
.mkb-add>i{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border:1px solid #fff9;border-radius:50%;background:linear-gradient(#f6f6f8,#d5d5dd);box-shadow:0 2px 4px #0004;color:#34363c}
.mkb-add>i svg{width:15px;height:15px}
.mkb-add:active:not(:disabled){transform:translateY(1px)}
.mkb-add:disabled{border-color:#e0dce5;background:#f2f0f5;box-shadow:inset 0 1px 0 #fff;color:#95899f}
.mkb-add:disabled>i{border-color:#ded9e5;background:#e9e5ef;box-shadow:none;color:#9f93aa}
.mkb-more,.mkb-back{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:1px solid #e1e2e5;border-radius:14px;background:#fff;color:#52565f;font-size:12px!important;font-weight:600;line-height:1.4;text-decoration:none}
.mkb-more{width:100%;margin-top:18px}
.mkb-more svg,.mkb-back svg{width:16px;height:16px}

/* A review, not a purchase: only the existing server-confirmed cart callback runs. */
.mkb-review{margin-top:24px;padding:18px 14px 14px;border:1px solid #e4e3e8;border-radius:22px;background:#fff;box-shadow:0 5px 18px #30313c04}
.mkb-review-heading{display:flex;align-items:center;gap:10px;margin-bottom:15px}
.mkb-review-tick{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid #d8d3df;border-radius:50%;background:linear-gradient(#faf9fc,#eeeaf3);box-shadow:inset 0 1px 0 #fff;color:#80718d}
.mkb-review-tick svg{width:18px;height:18px}
.mkb-review-heading small{margin-bottom:3px;font-size:8px}
.mkb-review h2{color:#32343b;font-size:21px;font-weight:650;line-height:1.2;letter-spacing:-.65px}
.mkb-review-list{border-top:1px solid #eeedf0}
.mkb-review-list>article{display:grid;grid-template-columns:63px minmax(0,1fr) 44px;gap:9px;align-items:center;padding:12px 0;border-bottom:1px solid #eeedf0}
.mkb-review-photo{display:grid;place-items:center;aspect-ratio:1;overflow:hidden;border:1px solid #eeecef;border-radius:13px;background:#f7f6f3}
.mkb-review-photo img{display:block;width:100%;height:100%;padding:3px;object-fit:contain}
.mkb-review-list h3{color:#454851;font-size:12px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}
.mkb-review-list p{display:flex;align-items:center;gap:5px;margin:4px 0;color:#86818e;font-size:10px;line-height:1.4;overflow-wrap:anywhere}
.mkb-review-list p>i{flex-basis:8px;width:8px;height:8px}
.mkb-review-list small{display:block;color:#9698a0;font-size:9px;line-height:1.3}
.mkb-icon-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #e9e8ed;border-radius:50%;background:#faf9fc;color:#96909d}
.mkb-icon-button svg{width:16px;height:16px}
.mkb-review-total{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding:16px 13px;border:1px solid #44464e;border-radius:15px;background:linear-gradient(150deg,#34363c,#1c1e23);box-shadow:inset 0 1px 0 #ffffff1a;color:#fff}
.mkb-review-total b{display:block;font-size:12px;font-weight:600;line-height:1.4}
.mkb-review-total small{display:block;margin-top:3px;color:#b3b5bd;font-size:9px;line-height:1.4}
.mkb-review-total strong{font-size:23px;font-weight:650;letter-spacing:-.8px;white-space:nowrap}
.mkb-reference{margin:12px 0!important;color:#91939b;font-size:10px;line-height:1.6}
.mkb-stock-note{margin:0 0 12px;color:#85818c;font-size:10px;line-height:1.5}
.mkb-stock-note summary{display:flex;align-items:center;min-height:44px;cursor:pointer}
.mkb-stock-note p{padding-bottom:8px}
.mkb-review>.mkb-back{width:100%;margin-top:12px}
.mkb-button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:50px;padding:10px 12px 10px 17px;border:1px solid #34363c;border-radius:15px;background:linear-gradient(150deg,#373a41,#14161a);box-shadow:inset 0 1px 0 #ffffff28,0 4px 11px #22252c14;color:#fff;font-size:12px!important;font-weight:600;line-height:1.4;text-decoration:none;text-align:left}
.mkb-button>svg{width:26px;height:26px;padding:5px;border:1px solid #e0e0e8;border-radius:50%;background:#ededf2;color:#363940}
.mkb-button:disabled{opacity:.55}
.mkb-button[aria-busy=true]>svg{border:2px solid #ffffff30;border-top-color:#fff;background:transparent;animation:mkb-turn 800ms linear infinite;color:transparent}
.mkb-error{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:13px;border:1px solid #e8d9df;border-radius:14px;background:#fffafb;color:#9a6177}
.mkb-error>svg{width:17px;height:17px;margin-top:1px}
.mkb-error p{font-size:12px;line-height:1.5}
.mkb-empty{display:flex;align-items:center;flex-direction:column;gap:14px;margin-top:20px;padding:28px 20px;border:1px solid #e5e4e9;border-radius:20px;background:#faf9fb;text-align:center}
.mkb-empty>svg{width:38px;height:38px;color:#ada4b8}
.mkb-empty h2,.mkb-empty h3{color:#55525c;font-size:18px;line-height:1.3;letter-spacing:-.5px}
.mkb-empty p{color:#92909a;font-size:12px;line-height:1.5}
.mkb-empty>.mkb-back{width:100%;padding:0 12px}
.mkb-empty-results{margin-top:0}
.mkb-loading{margin-top:24px}
.mkb-loading>p{margin-bottom:13px;color:#85818d;font-size:12px}
.mkb-loading>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mkb-loading span{display:block;aspect-ratio:.66;border:1px solid #eeeeef;border-radius:21px;background:linear-gradient(100deg,#f4f4f3 25%,#fafafa 45%,#f4f4f3 65%);background-size:200% 100%;animation:mkb-skeleton 1600ms ease-in-out infinite}

/* Native modal: large touch targets, Escape/back dismissal and inert background. */
.mkb-sheet{position:fixed;inset:auto 0 max(12px,env(safe-area-inset-bottom));width:min(500px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;margin:0 auto;padding:7px 18px 18px;border:1px solid #d6d4dd;border-radius:27px;background:#fff;box-shadow:0 30px 100px #0003}
.mkb-sheet:not([open]){display:none}
.mkb-sheet::backdrop{background:#16151d80;backdrop-filter:blur(5px)}
.mkb-sheet-handle{width:32px;height:4px;margin:2px auto 7px;border-radius:4px;background:#d5d3dc}
.mkb-sheet>header{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#8d8795}
.mkb-sheet-photo{display:grid;place-items:center;width:100%;height:clamp(140px,28dvh,270px);overflow:hidden;margin:10px 0 16px;border:1px solid #eae8ec;border-radius:20px;background:#f7f6f3}
.mkb-sheet-photo img{width:100%;height:100%;max-height:100%;padding:10px;object-fit:contain}
.mkb-sheet h2{color:#38363e;font-size:22px;font-weight:650;line-height:1.2;letter-spacing:-.7px;overflow-wrap:anywhere}
.mkb-sheet-colour{display:flex;align-items:center;gap:7px;margin:8px 0!important;color:#8f829c;font-size:13px;line-height:1.5}
.mkb-sheet-quantity{color:#71717c;font-size:11px;line-height:1.5}

/* Entry card replaces bundleEntry() only, never the global top bar. */
.mkb-entry{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:0;max-width:1080px;overflow:hidden;margin:0 auto 18px;padding:19px 18px 0;border:1px solid #4a4c54;border-radius:23px;background:radial-gradient(ellipse at 95% 0,#55535d57,transparent 60%),linear-gradient(145deg,#303239,#17191e);box-shadow:inset 0 1px 0 #ffffff25,0 7px 18px #1719210b;color:#fff}
.mkb-entry-copy{position:relative;z-index:2;grid-column:1/-1;pointer-events:none}
.mkb-entry .mkb-eyebrow{color:#bfc1cc;font-size:8px;letter-spacing:.07em}
.mkb-entry h2{margin:12px 0 8px;color:#fff;font-size:27px;font-weight:650;line-height:1.05;letter-spacing:-1px}
.mkb-entry-copy>p{max-width:55%;color:#b8bac3;font-size:10px;line-height:1.5}
.mkb-entry-art{position:absolute;z-index:1;top:63px;right:-10px;width:44%;max-width:245px;transform:rotate(-8deg)}
.mkb-entry-art>.mkb-cup-art{display:block;width:100%;height:auto;filter:drop-shadow(0 4px 5px #0002)}
.mkb-entry-link{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;grid-column:1/-1;width:100%;min-width:0;min-height:64px;margin-top:19px;padding:9px 0;border:0;border-top:1px solid #ffffff24;border-radius:0;background:transparent;color:#fff;font-family:inherit;text-decoration:none;text-align:left;cursor:pointer}
.mkb-entry-link>span{flex:0 0 auto}
.mkb-entry-link small{display:block;color:#a8acb7;font-size:7px;font-weight:500;line-height:1.4;letter-spacing:.1em}
.mkb-entry-link strong{display:block;margin-top:3px;font-size:24px;font-weight:650;line-height:1.2;letter-spacing:-.7px}
.mkb-entry-link>b{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 7px 0 12px;border:1px solid #ffffff38;border-radius:30px;background:linear-gradient(#ffffff0f,#ffffff03);box-shadow:inset 0 1px 0 #ffffff15;font-size:11px;font-weight:600;line-height:1.3;transition:background 160ms ease}
.mkb-entry-link>b>svg{width:27px;height:27px;padding:6px;border-radius:50%;background:linear-gradient(#fcfcfd,#cfd0d7);box-shadow:0 1px 4px #0003;color:#363840}
.mkb-entry-note{display:block;grid-column:1/-1;margin:0 -18px;padding:9px 18px;border-top:1px solid #ffffff0d;background:#10121744;color:#8f94a0;font-size:8px;line-height:1.4}
.mkb-contents{font-family:inherit;color:#5e616a;font-size:12px;line-height:1.5}
.mkb-contents>summary{min-height:44px;padding:10px 0;color:#50535d;font-weight:600;cursor:pointer}
.mkb-contents ul{margin:0;padding:0;list-style:none}
.mkb-contents li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #ecebef}
.mkb-contents small{display:block;margin-top:3px;color:#99949f;font-size:10px}
.mkb-contents b{flex:0 0 auto;font-size:10px;font-weight:600}

@media(hover:hover){.mkb-add:not(:disabled):hover{box-shadow:inset 0 1px 0 #ffffff35,0 5px 12px #1d202727}.mkb-slot.is-filled:hover{border-color:#aaa1b9;background:#faf9fc}.mkb-entry-link:hover>b{background:#ffffff16}.mkb-more:hover,.mkb-back:hover{border-color:#c6c0d0;background:#faf9fc}}
@media(min-width:600px){.mkb-heading{padding:27px 28px 0;gap:24px}.mkb-heading h1{font-size:40px}.mkb-heading p{font-size:13px}.mkb-heading .mkb-eyebrow{font-size:10px}.mkb-price{padding-left:24px}.mkb-price strong{font-size:32px}.mkb-price>span{font-size:10px}.mkb-steps{margin:0 -28px;padding:14px 28px}.mkb-steps li{font-size:11px;gap:8px}.mkb-selection{padding:17px 18px 0}.mkb-selection h2{font-size:18px}.mkb-slots{gap:10px}.mkb-slot{max-height:105px;aspect-ratio:1.05}.mkb-slot-no{width:18px;height:18px;font-size:9px}.mkb-slot-edit{width:22px;height:22px}.mkb-slot-edit svg{width:12px;height:12px}.mkb-tray-bottom>span,.mkb-tray-bottom>small{font-size:11px}.mkb-picker{margin-top:30px}.mkb-picker-heading h2{font-size:27px}.mkb-filters{grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr))}.mkb-search{grid-column:auto}.mkb-filter{padding-top:6px}.mkb-filter select{min-height:37px}.mkb-filter-select>svg{top:12px}.mkb-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.mkb-option-body{padding:14px}.mkb-option h3{font-size:18px;line-height:22px;min-height:44px}.mkb-select-shell select{font-size:12px}.mkb-brand{font-size:9px}.mkb-add>span{font-size:12px}.mkb-availability{font-size:10px;min-height:36px}.mkb-entry{padding:26px 27px 0}.mkb-entry h2{font-size:36px}.mkb-entry-copy>p{font-size:12px}.mkb-entry-art{top:35px;right:20px;width:40%;max-width:290px}.mkb-entry-link{margin-top:23px}.mkb-entry-note{margin:0 -27px;padding:10px 27px;font-size:9px}.mkb-entry .mkb-eyebrow{font-size:10px}.mkb-entry-link>b{font-size:13px}.mkb-entry-link strong{font-size:29px}.mkb-review{padding:22px}.mkb-review-list>article{grid-template-columns:72px minmax(0,1fr) 44px;gap:14px}.mkb-review-list h3{font-size:14px}}
@media(min-width:900px){.mkb-options{grid-template-columns:repeat(4,minmax(0,1fr))}.mkb-heading h1{font-size:43px}.mkb-heading{padding-top:30px}.mkb-price{margin-right:16px}.mkb-slots{gap:13px}.mkb-slot{max-height:120px;aspect-ratio:1.4}.mkb-review{max-width:680px;margin-right:auto;margin-left:auto}.mkb-entry-art{right:75px;width:300px;max-width:none}.mkb-entry-copy>p{max-width:60%}}
@media(max-width:359px){.mkb-heading{padding:19px 15px 0;gap:17px 8px;border-radius:21px}.mkb-heading h1{font-size:26px;letter-spacing:-1px}.mkb-heading .mkb-eyebrow{font-size:7px;gap:4px;letter-spacing:.04em}.mkb-heading p{font-size:9px}.mkb-price{min-width:77px;padding-left:8px}.mkb-price strong{font-size:20px}.mkb-price>span{font-size:7px}.mkb-steps{margin:0 -15px;padding:11px 8px}.mkb-steps li{font-size:8px;gap:4px}.mkb-selection{padding:11px 10px 0}.mkb-slots{gap:4px}.mkb-slot{border-radius:10px;min-height:57px}.mkb-tray-bottom>span{font-size:9px}.mkb-tray-bottom>small{font-size:8px}.mkb-picker-heading h2{font-size:21px}.mkb-picker-heading>span{font-size:9px}.mkb-options{gap:10px 8px}.mkb-option{border-radius:17px}.mkb-option-media{margin:4px 4px 0;border-radius:13px}.mkb-option-body{padding:9px 8px}.mkb-option h3{font-size:14px;line-height:18px;min-height:36px}.mkb-add{padding-left:8px;border-radius:11px}.mkb-add>span{font-size:9px}.mkb-add>i{flex-basis:24px;width:24px;height:24px}.mkb-select-shell select{font-size:9px}.mkb-results p{font-size:9px}.mkb-results>small{font-size:8px}.mkb-picked-badge{font-size:7px;padding:3px 5px}.mkb-entry{padding:17px 15px 0;border-radius:20px}.mkb-entry h2{font-size:24px}.mkb-entry .mkb-eyebrow{font-size:7px}.mkb-entry-copy>p{font-size:9px}.mkb-entry-art{top:60px;right:-10px;width:44%}.mkb-entry-link>b{gap:6px;padding-left:10px;font-size:10px}.mkb-entry-link strong{font-size:21px}.mkb-entry-note{margin:0 -15px;padding:8px 15px;font-size:7px}.mkb-review-list>article{grid-template-columns:53px minmax(0,1fr) 44px;gap:7px}.mkb-review-list h3{font-size:11px}.mkb-review-total strong{font-size:21px}.mkb-sheet{padding-right:15px;padding-left:15px}}
@media(prefers-reduced-motion:reduce){.mkb-builder *,.mkb-entry *,.mkb-sheet *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.mkb-button[aria-busy=true]>svg{border-color:#b9b7c2;color:#b9b7c2}}
@media(forced-colors:active){.mkb-heading,.mkb-entry,.mkb-review-total{border:1px solid CanvasText;background:Canvas;color:CanvasText}.mkb-heading h1,.mkb-entry h2,.mkb-price strong{color:CanvasText}.mkb-add,.mkb-button{border:1px solid ButtonText;background:ButtonFace;color:ButtonText}.mkb-slot.is-filled{outline:1px solid Highlight}.mkb-slot[data-latest=true]{animation:none}.mkb-add:disabled{color:GrayText}.mkb-heading::before,.mkb-heading::after{display:none}}
@keyframes mkb-arrive{from{transform:translateY(3px) scale(.96);opacity:.7}to{transform:none;opacity:1}}
@keyframes mkb-turn{to{transform:rotate(360deg)}}
@keyframes mkb-skeleton{0%{background-position:110% 0}100%{background-position:-100% 0}}

/* StiloFincan integration: win over legacy bundle/theme rules inside bundle surfaces only. */
.store-shell .mkb-builder,.store-shell .mkb-entry,.store-shell .mkb-sheet{font-family:inherit;text-transform:none;letter-spacing:normal;max-width:100%}
.store-shell .mkb-builder{overflow-x:clip;padding-bottom:calc(var(--shop-dock-space,190px) + 12px)}
.store-shell .mkb-builder :is(button,input,select){margin:0;text-transform:none;min-width:0}
.store-shell .mkb-builder button:not(.mkb-add):not(.mkb-button):not(.mkb-more):not(.mkb-back):not(.mkb-icon-button):not(.mkb-slot){box-shadow:none}
.store-shell .mkb-builder :is(.mkb-add,.mkb-button,.mkb-more,.mkb-back,.mkb-icon-button,.mkb-slot,.mkb-text-button,.mkb-search>button){min-height:44px}
.store-shell .mkb-builder :is(input,select,button,.mkb-picker h2,.mkb-review){scroll-margin-top:120px;scroll-margin-bottom:calc(var(--shop-dock-space,190px) + 16px + var(--checkout-keyboard-inset,0px))}
.store-shell .mkb-builder .mkb-slot{min-height:60px}
.store-shell .mkb-builder .mkb-option-media{contain:layout paint}
.store-shell .mkb-entry a.mkb-entry-link,.store-shell .mkb-entry button.mkb-entry-link{color:#fff;background:transparent;border-radius:0;min-height:64px}
.store-shell .mkb-entry{margin-top:12px}
.mkb-contents{margin:12px 0}
.mkb-sheet{z-index:2147483000;max-height:calc(100dvh - 32px - env(safe-area-inset-top))}
.mkb-sheet-photo .mkb-photo{width:100%;height:100%;object-fit:contain}
.mkb-review-photo .mkb-photo{width:100%;height:100%;padding:3px;object-fit:contain}
.mkb-slot .mkb-photo{display:block}
.mkb-option-media .mkb-note-cover{display:none}
/* The illustration occupies its own column: no tilted or cropped cups. */
.store-shell .mkb-entry{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:12px}
.store-shell .mkb-entry-copy{grid-column:1;grid-row:1;min-width:0}
.store-shell .mkb-entry-copy>p{max-width:none}
.store-shell .mkb-entry .mkb-eyebrow{font-size:clamp(6px,1.7vw,9px);letter-spacing:.04em;line-height:1.5}
.store-shell .mkb-entry-art{position:relative;grid-column:2;grid-row:1;align-self:center;justify-self:end;inset:auto;width:100%;max-width:250px;transform:none}
/* Keep the browsing area between the header and action/nav stack. Its own
   scrollport clips content before the dock, instead of letting fixed controls
   obscure filters, cards or the review. The legal footer scrolls with it. */
html body:has(.store-shell[data-route=bundle]){height:100dvh;overflow:hidden;padding-bottom:0!important}
html body .store-shell[data-route=bundle]{display:flex;flex-direction:column;height:calc(100dvh - var(--checkout-keyboard-inset,0px));min-height:0!important;padding-bottom:0!important;overflow:hidden}
html body .store-shell[data-route=bundle]>.store-content{flex:1 1 0;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scroll-padding-block:16px}
html body .store-shell[data-route=bundle]>:not(.store-content){flex-shrink:0}
html body .store-shell[data-route=bundle]>.shop-dock{position:relative!important;inset:auto!important;flex:0 0 auto;width:100%!important;align-self:stretch;isolation:isolate}
html body .store-shell[data-route=bundle] .mkb-builder{padding-bottom:24px}
html body .store-shell[data-route=bundle] .mkb-builder :is(input,select,button,.mkb-picker h2,.mkb-review){scroll-margin-block:16px}
