@font-face{font-family:GiftIOSNumber;src:url("gift-ios-number-v4.ttf") format("truetype");font-style:normal;font-weight:600;font-display:block;}
.card-settings{padding:12px 0;border-bottom:1px solid var(--hairline);}
.card-settings summary{cursor:pointer;font-weight:700;padding:6px;}
.card-settings label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:12px;}
.card-settings input[type="checkbox"]{width:18px;height:18px;accent-color:var(--bar);}
.card-settings select{padding:6px 12px;border-radius:10px;background:var(--surface);color:var(--ink);max-width:56%;}
.card-settings input[type="range"]{width:110px;accent-color:var(--bar);}
.card-settings output{min-width:36px;font-size:11px;}
.card-settings button{margin-top:12px;font-size:12px;color:var(--ink-dim);}
.card-settings-note{font-size:11px;color:var(--ink-dim);line-height:1.5;margin:10px 0;}
/* Scope native gift presentation to the existing portfolio; catalogue is unchanged. */
html[data-card-columns] #s-profile #gifts{grid-template-columns:repeat(var(--card-columns),minmax(0,1fr));row-gap:var(--card-row-gap);}
html[data-card-columns] #s-profile #gifts .portfolio-gift{position:relative;display:flex;flex-direction:column;aspect-ratio:1;min-height:0;min-width:0;width:100%;padding:0;border:0;border-radius:16px;overflow:hidden;background:var(--surface);box-shadow:none;isolation:isolate;}
html[data-card-columns] #s-profile #gifts .gift-visual{position:relative;display:block;flex:1 1 auto;width:100%;min-height:0;overflow:hidden;}
html[data-card-columns] #s-profile #gifts .gift-visual>.bg{position:absolute;inset:0;background:var(--gift-backdrop,var(--surface))!important;}
html[data-card-columns] #s-profile #gifts .gift-visual>.bg::after{display:none!important;}
html[data-card-columns] #s-profile #gifts .gift-visual>.glyph{position:absolute;inset:18% 8% 6%;width:auto;height:auto;max-width:none;transform:none;display:grid;place-items:center;filter:none;z-index:1;font-size:24px;}
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="android"] .gift-visual>.glyph,
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="ios"] .gift-visual>.glyph{inset:13%;}
html[data-card-columns] #s-profile #gifts .gift-visual>.glyph>:is(img,canvas,svg){display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;transform:none;}
.gift-pattern,#gift-pattern.nft-pattern{position:absolute;inset:0;overflow:hidden;pointer-events:none;opacity:1!important;}
.gift-pattern span,html body #gift-pattern.nft-pattern span{position:absolute;display:block;transform:translate(-50%,-50%);background:var(--symbol-color);mask:var(--symbol-image) center/contain no-repeat;-webkit-mask:var(--symbol-image) center/contain no-repeat;mask-mode:alpha;pointer-events:none;}
html[data-card-columns] #s-profile #gifts .card-number{position:absolute;z-index:2;top:5px;right:5px;max-width:calc(100% - 10px);min-height:0;padding:2px 4px;border:0;border-radius:5px;background:#0005;color:#fff;font-size:clamp(8px,2.5vw,11px);font-weight:600;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;}
html[data-card-columns] #s-profile #gifts .portfolio-gift:is([data-gift-style="android"],[data-gift-style="ios"]) .card-number{top:calc(var(--gift-side,116px) * -.01724);right:calc(var(--gift-side,116px) * -.02009);width:calc(var(--gift-side,116px) * .41379);height:calc(var(--gift-side,116px) * .41379);max-width:none;padding:0;border-radius:3px;background:var(--surface);clip-path:polygon(0 0,40% 0,100% 60%,100% 100%);display:grid;place-items:center;transform:none;overflow:visible;font-size:clamp(8px,calc(var(--gift-side,116px) * .086207),15px);color:white;text-shadow:0 1px 2px #0003;}
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="ios"] .card-number{font-size:clamp(8px,calc(var(--gift-side,116px) * .077586),15px);}
html[data-card-columns] #s-profile #gifts .portfolio-gift:is([data-gift-style="android"],[data-gift-style="ios"]) .card-number{font-size:calc(var(--gift-side,116px) * var(--serial-font-factor));clip-path:none;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='white' d='M46.83 24.5 L23.5 1.17 C22.75 .42 21.73 0 20.68 0 C19.62 0 2.73 .05 1.55 .05 C.36 .05 -.23 1.49 .6 2.32 L45.72 47.44 C46.56 48.28 48 47.68 48 46.5 C48 45.31 48 28.38 48 27.32 C48 26.26 47.5 25.24 46.83 24.5 Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='white' d='M46.83 24.5 L23.5 1.17 C22.75 .42 21.73 0 20.68 0 C19.62 0 2.73 .05 1.55 .05 C.36 .05 -.23 1.49 .6 2.32 L45.72 47.44 C46.56 48.28 48 47.68 48 46.5 C48 45.31 48 28.38 48 27.32 C48 26.26 47.5 25.24 46.83 24.5 Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;}
/* Text is rotated independently; the native ribbon itself stays on the corner. */
html[data-card-columns] #s-profile #gifts .portfolio-gift:is([data-gift-style="android"],[data-gift-style="ios"]) .card-number{color:transparent;text-shadow:none;}
html[data-card-columns] #s-profile #gifts .portfolio-gift:is([data-gift-style="android"],[data-gift-style="ios"]) .card-number::after{content:attr(data-serial);position:absolute;top:calc(var(--gift-side,116px) * var(--serial-label-y));left:calc(var(--gift-side,116px) * var(--serial-label-x));width:max-content;color:white;transform:translate(-50%,-50%) rotate(45deg);text-shadow:0 1px 2px #0003;}
/* iOS has a different source canvas and ribbon; Android geometry stays intact. */
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="ios"]{border-radius:calc(var(--gift-side,116px) * .112069);overflow:visible;}
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="ios"] .gift-visual{border-radius:inherit;overflow:visible;}
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="ios"] .gift-visual>:is(.bg,.gift-pattern){border-radius:inherit;}
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="ios"] .gift-financial-footer{border-radius:0 0 16px 16px;}
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="ios"] .gift-visual>.glyph{inset:auto;left:50%;top:50%;width:calc(var(--gift-side,116px) * .758621);height:calc(var(--gift-side,116px) * .758621);transform:translate(-50%,-50%);}
html[data-card-columns] #s-profile #gifts .portfolio-gift[data-gift-style="ios"] .card-number{top:calc(var(--gift-side,116px) * -.017241);right:calc(var(--gift-side,116px) * -.017241);width:calc(var(--gift-side,116px) * .5);height:calc(var(--gift-side,116px) * .5);border-radius:0;font-family:GiftIOSNumber,monospace;font-weight:600;font-kerning:none;font-synthesis:none;font-variant-numeric:normal;line-height:1;mask:var(--ios-ribbon-mask) center/100% 100% no-repeat;-webkit-mask:var(--ios-ribbon-mask) center/100% 100% no-repeat;}
html[data-card-columns] #s-profile #gifts .gift-financial-footer{position:relative;flex:0 0 28px;display:flex;align-items:center;justify-content:space-between;gap:3px;padding:0 6px;width:100%;box-sizing:border-box;background:var(--surface);color:var(--ink);font-size:clamp(9px,2.7vw,12px);line-height:1.2;overflow:hidden;z-index:0;}
html[data-card-columns] #s-profile #gifts .gift-price{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650;}
html[data-card-columns] #s-profile #gifts .gift-change{flex:none;font-size:.85em;font-variant-numeric:tabular-nums;}
#gifts .gift-change.up{color:var(--up);}
#gifts .gift-change.down{color:#cf566a;}
#gifts .portfolio-gift [hidden]{display:none!important;}
html body #s-profile .portfolio-controls{display:flex;flex-wrap:wrap;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:10px;}
#s-profile .portfolio-view-modes{display:flex;gap:3px;padding:3px;margin:0;border-radius:12px;background:var(--surface);flex:none;}
#s-profile .portfolio-view-modes button{min-height:38px;padding:0 10px;border-radius:9px;font-size:12px;color:var(--ink-dim);}
#s-profile .portfolio-view-modes button[aria-pressed="true"]{background:var(--bar);color:var(--deep);font-weight:700;}
html body #s-profile .portfolio-controls .price-modes{order:3;width:100%;justify-content:flex-start;margin:0;}
.portfolio-sort-menu{position:relative;min-width:0;}
.portfolio-sort-menu summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--hairline);border-radius:22px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:700;cursor:pointer;}
.portfolio-sort-menu summary::-webkit-details-marker{display:none;}
.portfolio-sort-menu summary::after{content:'⌄';font-size:20px;line-height:1;}
.portfolio-sort-options{position:absolute;z-index:15;top:calc(100% + 8px);left:0;right:0;padding:6px;border:1px solid var(--hairline);border-radius:18px;background:var(--surface);box-shadow:0 8px 24px #0003;}
.portfolio-sort-options button{display:block;width:100%;min-height:42px;padding:10px 12px;border-radius:12px;text-align:left;color:var(--ink);background:transparent;font-size:13px;}
.portfolio-sort-options button[aria-pressed="true"]{background:var(--bar);color:var(--deep);font-weight:800;}
.portfolio-sort-options button:focus-visible,.portfolio-sort-menu summary:focus-visible,#gifts .portfolio-gift:focus-visible{outline:2px solid var(--bar);outline-offset:2px;}
