.gift-page { width: 100%; max-width: 1080px; min-width: 0; box-sizing: border-box; margin: 32px auto 64px; padding: 0 20px; color: var(--t-text); }
.gift-page .t-title { overflow-wrap: anywhere; }
.gift-layout > * { min-width: 0; }
.gift-page .t-section-head { margin-top: 24px; }
.gift-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 24px; margin-top: 28px; align-items: start; }
.gift-product, .gift-form, .gift-detail { padding: 24px; }
.gift-product > img { width: 100%; height: 200px; object-fit: contain; }
.gift-product p, .gift-hint { color: var(--t-text-muted); font-size: 13px; line-height: 1.6; }
.gift-form { display: flex; flex-direction: column; gap: 12px; }
.gift-form input:not([type=checkbox]), .gift-form select, .gift-form textarea { width: 100%; min-width: 0; box-sizing: border-box; padding: 12px; border: 1px solid var(--t-panel-border); background: var(--t-bg, #141416); color: var(--t-text); font: inherit; border-radius: 0; }
.gift-form textarea { resize: vertical; }
.gift-form :is(input, select, textarea, button):focus-visible, .gift-player:focus-visible { outline: 2px solid var(--t-red); outline-offset: 3px; }
.gift-checkbox { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; line-height: 1.5; }
.gift-checkbox input { accent-color: var(--t-red); margin-top: 3px; }
.gift-search-row { display: flex; gap: 8px; }
.gift-search-row input { flex: 1; }
.gift-players { display: grid; gap: 6px; }
.gift-player, .gift-recipient { display: flex; align-items: center; gap: 10px; padding: 10px; color: var(--t-text); text-align: left; border: 1px solid var(--t-panel-border); background: transparent; overflow-wrap: anywhere; }
.gift-player { cursor: pointer; width: 100%; font: inherit; }
.gift-player:hover { border-color: var(--t-red); }
.gift-player img, .gift-recipient img { width: 36px; height: 36px; object-fit: cover; }
.gift-quote { padding: 16px; border-left: 2px solid var(--t-red); background: rgba(255,255,255,.025); }
.gift-quote strong { font-size: 22px; }
.gift-quote p { margin: 8px 0 0; }
#gift-status { margin: 0; overflow-wrap: anywhere; }
.gift-form [hidden] { display: none; }
.gift-form button:disabled { opacity: .5; cursor: default; }
.gift-detail { margin-top: 24px; }
.gift-detail-image { width: 100%; max-width: 340px; height: 180px; object-fit: contain; }
.gift-product > img[src^="/media/"], .gift-detail-image[src^="/media/"], .gift-feed-card img[src^="/media/"] { filter: invert(.8); }
.gift-message { white-space: pre-wrap; overflow-wrap: anywhere; border-left: 2px solid var(--t-red); margin: 24px 0 0; padding: 12px 18px; }
.catalog-gifts { margin: 24px 0 32px; }
.gift-feed { display: flex; gap: 10px; overflow-x: auto; padding: 4px 0 10px; scrollbar-width: thin; }
.gift-feed-card { flex: 0 0 280px; display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 10px; padding: 12px; box-sizing: border-box; align-items: center; }
.gift-feed-card img { width: 64px; height: 60px; object-fit: contain; }
.gift-feed-card h3 { font-size: 12px; line-height: 1.4; margin: 0 0 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gift-feed-card p { font-size: 12px; margin: 0 0 4px; overflow-wrap: anywhere; }
.gift-feed-card time { color: var(--t-text-faint); font-size: 10px; }
.gift-feed-message { grid-column: 1 / -1; white-space: pre-wrap; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: var(--t-text-muted); }
.gift-entry { margin: 10px 0; display: inline-flex; }
@media (max-width: 680px) { .gift-layout { grid-template-columns: 1fr; gap: 16px; } .gift-product > img { height: 120px; } .gift-page { padding: 0 12px; } .gift-product, .gift-form, .gift-detail { padding: 16px; } .catalog-gifts .t-section-head > .t-hud { display: none; } .gift-feed-card { flex-basis: 250px; } }
