/* Gift composition only: keep the existing inbox, journeys and shop intact. */
dialog:has(#gift-compose){width:min(580px,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}
#gift-compose{min-width:0}
#gift-compose .gift-compose-intro{margin:0 0 12px;color:#798574;font-size:13px;line-height:1.55}
#gift-compose .form-field{margin-top:10px;font-size:12px;gap:6px}
#gift-compose .gift-search{display:flex;flex-wrap:nowrap;align-items:center;gap:8px}
#gift-compose .gift-search input{flex:1 1 0;width:100%;min-height:36px;min-width:0;padding:9px 11px;font-size:16px}
#gift-compose .button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-height:36px;height:auto;min-width:0;flex:0 0 auto;padding:8px 13px;font-size:13px;line-height:1.3;border-radius:11px;white-space:normal}
#gift-compose .button .icon{width:16px;height:16px}
#gift-compose #gift-search-results{margin-top:8px;gap:6px;max-height:110px;overflow:auto}
#gift-compose #gift-recipient{margin:10px 0 14px;padding:8px 11px;font-size:13px;overflow-wrap:anywhere}
#gift-compose .gift-picker{min-width:0;margin:0;padding:0;border:0}
#gift-compose .gift-picker legend{padding:0;font-size:13px;font-weight:600;color:#597152;margin-bottom:9px}
#gift-compose .gift-picker-search{display:flex;align-items:center;gap:7px;border:1px solid #e1e8dc;border-radius:10px;padding:0 9px;margin-bottom:8px;background:#fcfdf9}
#gift-compose .gift-picker-search>.icon{width:15px;height:15px;color:#8a9a80}
#gift-compose .gift-picker-search input{min-height:36px;min-width:0;width:100%;border:0;background:none;padding:8px 0;font:inherit;font-size:16px;color:#41634c}
#gift-compose .gift-picker-scroll{max-height:244px;max-height:min(244px,32dvh);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#bdceb4 #f5f7ef;padding:3px 5px 3px 3px;border-radius:12px;background:#f7f8f0}
#gift-compose .gift-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:7px}
#gift-compose .gift-picker-item{position:relative;min-width:0;cursor:pointer}
#gift-compose .gift-picker-item>input{min-height:0;position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%);margin:0}
#gift-compose .gift-picker-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;height:100%;min-height:122px;padding:9px 6px 8px;border:1px solid #e2e8da;border-radius:12px;background:#fffdf7;text-align:center;color:#57704e}
#gift-compose .gift-picker-art{display:grid;place-items:center;height:52px;width:58px;flex:none;margin-bottom:5px}
#gift-compose .gift-picker-art>.item-art{width:52px;height:52px;object-fit:contain}
#gift-compose .gift-picker-art>.icon{width:30px;height:30px;color:#93a277}
#gift-compose .gift-picker-tile strong{font-size:12px;font-weight:500;line-height:1.25;overflow-wrap:anywhere}
#gift-compose .gift-picker-tile small{margin-top:auto;padding-top:4px;font-size:10px;color:#89917c}
#gift-compose .gift-picker-check{position:absolute;right:5px;top:5px;display:none;place-items:center;width:18px;height:18px;border-radius:50%;background:#719269;color:white}
#gift-compose .gift-picker-check .icon{width:12px;height:12px}
#gift-compose .gift-picker-item>input:checked+.gift-picker-tile{border-color:#90ad7f;background:#edf4e5;box-shadow:inset 0 0 0 1px #90ad7f}
#gift-compose .gift-picker-item>input:checked+.gift-picker-tile .gift-picker-check{display:grid}
#gift-compose .gift-picker-item>input:focus-visible+.gift-picker-tile{outline:2px solid #638a55;outline-offset:1px}
#gift-compose .gift-picker-item>input:disabled+.gift-picker-tile{opacity:.55}
#gift-compose .gift-picker-empty{padding:24px 12px;text-align:center;font-size:13px;color:#8a937f}
#gift-compose [hidden]{display:none!important}
#gift-compose .gift-picker-selection{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:14px}
#gift-compose .gift-picker-selected{min-width:0;display:flex;flex-direction:column;gap:3px}
#gift-compose .gift-picker-selected small{font-size:11px;color:#8b947f}
#gift-compose .gift-picker-selected strong{font-family:Outfit,sans-serif;font-size:17px;font-weight:500;line-height:1.2;color:#4a6949;overflow-wrap:anywhere}
#gift-compose .gift-picker-selected>span{font-size:11px;color:#8b947f}
#gift-compose .gift-quantity-label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#7e8b74}
#gift-compose .gift-quantity-control{display:flex;align-items:stretch;overflow:hidden;height:46px;border:1px solid #cfddc5;border-radius:11px;background:#fbfdf7}
#gift-compose .gift-quantity-control input{width:58px;min-width:0;margin:0;padding:7px 4px;border:0;border-radius:0;background:none;color:#416247;text-align:center;font:500 16px Outfit,sans-serif;appearance:textfield;-moz-appearance:textfield}
#gift-compose .gift-quantity-control input::-webkit-inner-spin-button,#gift-compose .gift-quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
#gift-compose .gift-quantity-arrows{display:grid;grid-template-rows:1fr 1fr;width:30px;border-left:1px solid #dfe8d7}
#gift-compose .gift-quantity-arrows button{display:grid;place-items:center;min-width:0;min-height:0;margin:0;padding:0;border:0;background:#f0f5e8;color:#6e8b5f;cursor:pointer;touch-action:manipulation}
#gift-compose .gift-quantity-arrows button+button{border-top:1px solid #dfe8d7}
#gift-compose .gift-quantity-arrows .icon{width:12px;height:12px;transform:rotate(-90deg);pointer-events:none}
#gift-compose .gift-quantity-arrows button+button .icon{transform:rotate(90deg)}
#gift-compose .gift-quantity-arrows button:disabled{opacity:.35;cursor:default}
#gift-compose .gift-quantity-help{display:block;margin-top:6px;text-align:right;font-size:10px;color:#8b947f}
#gift-compose .form-error{font-size:12px;padding-top:8px}
#gift-compose .form-error:empty{padding:0}
#gift-compose .modal-footer{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;margin-top:14px;flex-wrap:wrap}
#gift-compose .modal-footer>.button{flex:0 0 auto;width:auto;min-height:36px}
#gift-compose .gift-send-status{font-size:12px;margin:8px 0}
#gift-compose .gift-last-item-note{margin-top:10px;font-size:11px;color:#929783;line-height:1.4}
#gift-compose .gift-picker-scroll:focus-visible,#gift-compose .gift-quantity-control:focus-within,#gift-compose .gift-picker-search:focus-within{outline:2px solid #86a375;outline-offset:2px}
#gift-compose .gift-quantity-control input:focus,#gift-compose .gift-picker-search input:focus{outline:none;box-shadow:none}
#gift-sent-view .gift-prize-actions .button{min-height:36px;width:auto;flex:0 0 auto;padding:8px 13px;font-size:13px}
@media(max-width:400px){#gift-compose .gift-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#gift-compose .gift-picker-tile{min-height:116px;padding-inline:4px}#gift-compose .gift-picker-tile strong{font-size:11px}#gift-compose .gift-picker-art,#gift-compose .gift-picker-art>.item-art{width:46px;height:46px}}
@media(hover:hover){#gift-compose .gift-picker-item:hover .gift-picker-tile{border-color:#abc19a}#gift-compose .gift-quantity-arrows button:not(:disabled):hover{background:#dfead4}}
