/*
This file is part of Telegram Desktop,
the official desktop application for the Telegram messaging service.

For license and copyright information please follow this link:
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
using "ui/basic.style";

using "boxes/boxes.style";
using "ui/layers/layers.style";
using "ui/widgets/widgets.style";
using "ui/menu_icons.style";
using "ui/effects/premium.style";

GroupCallUserpics {
	size: pixels;
	shift: pixels;
	stroke: pixels;
	align: align;
}

TabbedSearch {
	outer: color;
	bg: color;
	bgActive: color;
	fg: color;
	fgActive: color;
	fadeLeft: icon;
	fadeRight: icon;
	field: InputField;
	search: IconButton;
	back: IconButton;
	cancel: CrossButton;
	defaultFieldWidth: pixels;
	groupWidth: pixels;
	groupSkip: pixels;
	height: pixels;
}

ComposeIcons {
	settings: icon;

	recent: icon;
	recentActive: icon;
	people: icon;
	peopleActive: icon;
	nature: icon;
	natureActive: icon;
	food: icon;
	foodActive: icon;
	activity: icon;
	activityActive: icon;
	travel: icon;
	travelActive: icon;
	objects: icon;
	objectsActive: icon;
	symbols: icon;
	symbolsActive: icon;

	menuFave: icon;
	menuUnfave: icon;
	menuStickerSet: icon;
	menuRecentRemove: icon;
	menuGifAdd: icon;
	menuGifRemove: icon;
	menuMute: icon;
	menuSchedule: icon;
	menuWhenOnline: icon;
	menuSpoiler: icon;
	menuSpoilerOff: icon;

	stripBubble: icon;
	stripPremiumLocked: icon;
	stripExpandPanel: icon;
	stripExpandDropdown: icon;
}

EmojiSuggestions {
	dropdown: InnerDropdown;
	bg: color;
	overBg: color;
	textFg: color;
	fadeLeft: icon;
	fadeRight: icon;
}

EmojiPan {
	margin: margins;
	padding: margins;
	showAnimation: PanelAnimation;
	desiredSize: pixels;
	verticalSizeSub: pixels;
	header: pixels;
	headerLeft: pixels;
	headerLockLeft: pixels;
	headerLockedLeft: pixels;
	headerTop: pixels;
	footer: pixels;
	iconSkip: pixels;
	iconWidth: pixels;
	iconArea: pixels;
	bg: color;
	headerFg: color;
	trendingHeaderFg: color;
	trendingSubheaderFg: color;
	trendingUnreadFg: color;
	overBg: color;
	pathBg: color;
	pathFg: color;
	textFg: color;
	categoriesBg: color;
	categoriesBgOver: color;
	fadeLeft: icon;
	fadeRight: icon;
	menu: PopupMenu;
	expandedSeparator: MenuSeparator;
	tabs: SettingsSlider;
	search: TabbedSearch;
	searchMargin: margins;
	colorAll: IconButton;
	colorAllLabel: FlatLabel;
	removeSet: IconButton;
	boxLabel: FlatLabel;
	icons: ComposeIcons;
	autocompleteBottomSkip: pixels;
}

MessageBar {
	title: TextStyle;
	titleFg: color;
	text: TextStyle;
	textFg: color;
	textPalette: TextPalette;
	duration: int;
}

EmojiButton {
	inner: IconButton;
	bg: color;
	lineFg: color;
	lineFgOver: color;
}

SendButton {
	inner: IconButton;
	record: icon;
	recordOver: icon;
	sendDisabledFg: color;
}

RecordBarLock {
	ripple: RippleAnimation;
	originTop: icon;
	originBottom: icon;
	originBody: icon;
	shadowTop: icon;
	shadowBottom: icon;
	shadowBody: icon;
	arrow: icon;
	fg: color;
}

RecordBar {
	radius: pixels;
	bg: color;
	durationFg: color;
	cancel: color;
	cancelActive: color;
	cancelRipple: RippleAnimation;
	lock: RecordBarLock;
	remove: IconButton;
}

ComposeFiles {
	check: Check;
	checkbox: Checkbox;
	menu: IconButton;
	caption: InputField;
	emoji: EmojiButton;
	confirmBg: color;
	buttonFile: IconButton;
	buttonFileEdit: icon;
	buttonFileDelete: icon;
	iconBg: color;
	iconPlay: icon;
	iconImage: icon;
	iconDocument: icon;
	nameFg: color;
	statusFg: color;
}

ComposeControls {
	bg: color;
	radius: pixels;

	field: InputField;
	send: SendButton;
	attach: IconButton;
	emoji: EmojiButton;
	like: IconButton;
	liked: icon;
	suggestions: EmojiSuggestions;
	tabbed: EmojiPan;
	tabbedHeightMin: pixels;
	tabbedHeightMax: pixels;
	record: RecordBar;
	files: ComposeFiles;
	premium: PremiumLimits;
	boxField: InputField;
}

ReportBox {
	button: SettingsButton;
	label: FlatLabel;
	field: InputField;
	spam: icon;
	fake: icon;
	violence: icon;
	children: icon;
	pornography: icon;
	copyright: icon;
	drugs: icon;
	personal: icon;
	other: icon;
}

WhoRead {
	userpics: GroupCallUserpics;
	photoLeft: pixels;
	photoSize: pixels;
	photoSkip: pixels;
	nameLeft: pixels;
	iconPosition: point;
	itemPadding: margins;
}

defaultWhoRead: WhoRead {
	userpics: GroupCallUserpics {
		size: 22px;
		shift: 8px;
		stroke: 4px;
		align: align(right);
	}
	photoLeft: 13px;
	photoSize: 30px;
	photoSkip: 5px;
	nameLeft: 57px;
	iconPosition: point(15px, 7px);
	itemPadding: margins(44px, 9px, 17px, 7px);
}

switchPmButton: RoundButton(defaultBoxButton) {
	width: 320px;
	height: 34px;
	textTop: 7px;
}
stickersRestrictedLabel: FlatLabel(defaultFlatLabel) {
	minWidth: 200px;
	align: align(center);
	textFg: noContactsColor;
}

stickersTrendingHeader: 56px;
stickersTrendingSkip: 4px;

stickersTrendingHeaderFont: semiboldFont;
stickersTrendingHeaderFg: windowFg;
stickersTrendingHeaderTop: 11px;
stickersTrendingSubheaderFont: normalFont;
stickersTrendingSubheaderFg: windowSubTextFg;
stickersTrendingSubheaderTop: 31px;

emojiPanButtonRight: 7px;
emojiPanButtonTop: 8px;
emojiPanButton: RoundButton(defaultActiveButton) {
	width: -24px;
	height: 23px;
	textTop: 2px;
}
emojiPanExpand: RoundButton(defaultActiveButton) {
	font: font(12px bold);
	width: -8px;
	height: 19px;
	textTop: 1px;
}

stickersTrendingAddTop: 14px;
stickersTrendingAdd: RoundButton(defaultActiveButton) {
	width: -16px;
	height: 26px;
	textTop: 4px;
}
stickersTrendingInstalled: RoundButton(stickersTrendingAdd) {
	textFg: activeButtonBg;
	textFgOver: activeButtonBgOver;
	textBg: lightButtonBgOver;
	textBgOver: lightButtonBgOver;
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: activeButtonSecondaryFg;
	}
}
stickersRemove: IconButton(defaultIconButton) {
	width: 40px;
	height: 40px;

	icon: icon {{ "info/info_media_delete", menuIconFg }};
	iconOver: icon {{ "info/info_media_delete", menuIconFgOver }};

	rippleAreaSize: 40px;
	rippleAreaPosition: point(0px, 0px);
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: windowBgOver;
	}
}
stickersUndoRemove: RoundButton(defaultLightButton) {
	width: -16px;
	height: 26px;
	textTop: 4px;
}
stickersRemoveSkip: 4px;
stickersReorderIcon: icon {{ "stickers_reorder", menuIconFg }};
stickersReorderSkip: 18px;

stickersTabs: defaultTabsSlider;

stickersRowItem: PeerListItem(defaultPeerListItem) {
	height: 52px;
	photoSize: 32px;
	photoPosition: point(18px, 10px);
	namePosition: point(66px, 7px);
	statusPosition: point(66px, 26px);
	button: OutlineButton(defaultPeerListButton) {
		textBg: contactsBg;
		textBgOver: contactsBgOver;
		ripple: defaultRippleAnimation;
	}
	statusFg: contactsStatusFg;
	statusFgOver: contactsStatusFgOver;
	statusFgActive: contactsStatusFgOnline;
}

stickerEmojiSkip: 5px;

stickersFeaturedBadgeFont: font(12px bold);
stickersFeaturedBadgeSize: 15px;
stickersFeaturedBadgeTextTop: -1px;
stickersFeaturedBadgePadding: 4px;
stickersFeaturedBadgeSkip: 4px;
stickersFeaturedBadgeTop: 9px;
stickersFeaturedUnreadBg: msgFileInBg;
stickersFeaturedUnreadSize: 5px;
stickersFeaturedUnreadSkip: 5px;
stickersFeaturedUnreadTop: 7px;

stickersMaxHeight: 320px;
stickersPadding: margins(19px, 13px, 19px, 13px);
stickersSize: size(64px, 64px);
emojiSetPadding: margins(12px, 0px, 12px, 0px);
emojiSetMaxHeight: 197px;
emojiSetSize: size(42px, 39px);
stickersScroll: ScrollArea(boxScroll) {
	deltat: 19px;
	deltab: 9px;
}
stickersRowDisabledOpacity: 0.4;
stickersRowDuration: 200;

emojiStatusDefault: icon {{ "emoji/stickers_premium", emojiIconFg }};

filtersRemove: IconButton(stickersRemove) {
	ripple: defaultRippleAnimation;
}

emojiPanMargins: margins(10px, 10px, 10px, 10px);

emojiTabs: defaultTabsSlider;

emojiCategoryIconTop: 6px;
emojiPanAnimation: PanelAnimation(defaultPanelAnimation) {
	fadeBg: emojiPanBg;
	shadow: boxRoundShadow;
}
emojiPanWidth: 345px;
emojiPanMinHeight: 278px;
emojiPanMaxHeight: 640px;
emojiPanHeightRatio: 0.75;
emojiPanShowDuration: 200;
emojiPanDuration: 200;
emojiPanHover: windowBgOver;
emojiPanSlideDuration: 200;
emojiPanArea: size(34px, 32px);
emojiPanRadius: 8px;

defaultTabbedSearchCancel: CrossButton {
	width: 33px;
	height: 33px;

	cross: CrossAnimation {
		size: 27px;
		skip: 8px;
		stroke: 1.;
		minScale: 0.3;
	}
	crossFg: menuIconFg;
	crossFgOver: menuIconFg;
	crossPosition: point(1px, 3px);

	duration: 150;
	loadingPeriod: 1000;
	ripple: emptyRippleAnimation;
}
defaultTabbedSearchField: InputField(defaultMultiSelectSearchField) {
	textMargins: margins(2px, 7px, 2px, 0px);
}
defaultTabbedSearchButton: IconButton(defaultIconButton) {
	width: 33px;
	height: 33px;
	icon: icon{{ "emoji/emoji_search_input", emojiIconFg }};
	iconOver: icon{{ "emoji/emoji_search_input", emojiIconFg }};
	iconPosition: point(7px, -1px);
	ripple: emptyRippleAnimation;
}
defaultTabbedSearchBack: IconButton(defaultIconButton) {
	width: 33px;
	height: 33px;
	icon: icon{{ "emoji/emoji_back", menuIconFg }};
	iconOver: icon{{ "emoji/emoji_back", menuIconFg }};
	iconPosition: point(7px, -1px);
	ripple: emptyRippleAnimation;
}
defaultTabbedSearch: TabbedSearch {
	outer: emojiPanBg;
	bg: emojiPanHover;
	bgActive: windowBgRipple;
	fg: emojiIconFg;
	fgActive: emojiSubIconFgActive;
	fadeLeft: icon {{ "fade_horizontal-flip_horizontal", emojiPanHover }};
	fadeRight: icon {{ "fade_horizontal", emojiPanHover }};
	field: defaultTabbedSearchField;
	search: defaultTabbedSearchButton;
	back: defaultTabbedSearchBack;
	cancel: defaultTabbedSearchCancel;
	defaultFieldWidth: 103px;
	groupWidth: 30px;
	groupSkip: 2px;
	height: 33px;
}

inlineResultsMinHeight: 278px;
inlineResultsMaxHeight: 640px;

emojiPanHeaderFont: semiboldFont;
emojiPanRemoveSkip: 10px;
emojiPanRemoveTop: 10px;
emojiPanColorAllSkip: 9px;

emojiColorsPadding: 5px;
emojiColorsSep: 1px;
emojiColorsSepColor: shadowFg;

emojiIconSelectSkip: 3px;
emojiPremiumRequired: icon{{ "emoji/premium_lock", windowSubTextFg }};

hashtagClose: IconButton {
	width: 30px;
	height: 30px;

	icon: smallCloseIcon;
	iconOver: smallCloseIconOver;
	iconPosition: point(10px, 10px);

	rippleAreaPosition: point(5px, 5px);
	rippleAreaSize: 20px;
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: windowBgOver;
	}
}

stickerPanWidthMin: 64px;
stickerPanSize: size(stickerPanWidthMin, stickerPanWidthMin);
stickerPanPadding: 11px;
stickerPanDeleteIconBg: icon {{ "emoji/emoji_delete_bg", stickerPanDeleteBg }};
stickerPanDeleteIconFg: icon {{ "emoji/emoji_delete", stickerPanDeleteFg }};
stickerPanDeleteOpacityBg: 0.3;
stickerPanDeleteOpacityBgOver: 0.5;
stickerPanDeleteOpacityFg: 0.8;
stickerPanDeleteOpacityFgOver: 1.;
stickerPanRemoveSet: IconButton(hashtagClose) {
	width: 20px;
	height: 20px;
	iconPosition: point(-1px, -1px);
	rippleAreaPosition: point(0px, 0px);
}
stickerIconMove: 400;
stickerPreviewDuration: 150;
stickerPreviewMin: 0.1;

emojiPanColorAll: IconButton(stickerPanRemoveSet) {
	width: 24px;
	height: 24px;
	rippleAreaSize: 24px;
	icon: icon {{ "emoji/emoji_skin", smallCloseIconFg }};
	iconOver: icon {{ "emoji/emoji_skin", smallCloseIconFgOver }};
}
emojiPanColorAllLabel: FlatLabel(defaultFlatLabel) {
	textFg: windowSubTextFg;
	align: align(top);
	minWidth: 40px;
	style: TextStyle(defaultTextStyle) {
		font: font(12px);
		linkFont: font(12px);
		linkFontOver: font(12px);
	}
}
emojiPanColorAllPadding: margins(10px, 6px, 10px, -1px);

stickerGroupCategorySize: 28px;
stickerGroupCategoryAbout: defaultTextStyle;
stickerGroupCategoryAddMargin: margins(0px, 10px, 0px, 5px);
stickerGroupCategoryAdd: stickersTrendingAdd;

stickersToast: Toast(defaultToast) {
	minWidth: 340px;
	maxWidth: 340px;
	padding: margins(16px, 13px, 16px, 12px);
}

stickersEmpty: icon {{ "stickers_empty", windowSubTextFg }};
emojiEmpty: icon {{ "emoji_empty", windowSubTextFg }};

editMediaButtonSize: 32px;

editMediaButtonIconFile: icon {{ "send_media/send_media_replace", menuIconFg }};
editMediaButton: IconButton(defaultIconButton) {
	width: editMediaButtonSize;
	height: editMediaButtonSize;

	icon: editMediaButtonIconFile;

	rippleAreaSize: editMediaButtonSize;
	ripple: defaultRippleAnimation;
}

sendBoxAlbumGroupEditInternalSkip: 8px;
sendBoxAlbumGroupSkipRight: 5px;
sendBoxAlbumGroupSkipTop: 5px;
sendBoxAlbumGroupRadius: 4px;
sendBoxAlbumGroupSize: size(62px, 25px);
sendBoxAlbumGroupSizeVertical: size(30px, 50px);
sendBoxAlbumSmallGroupSize: size(30px, 25px);

sendBoxFileGroupSkipTop: 2px;
sendBoxFileGroupSkipRight: 5px;
sendBoxFileGroupEditInternalSkip: -1px;

sendBoxAlbumGroupButtonFile: IconButton(editMediaButton) {
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: windowBgRipple;
	}
}
sendBoxAlbumGroupEditButtonIconFile: editMediaButtonIconFile;
sendBoxAlbumGroupDeleteButtonIconFile: icon {{ "send_media/send_media_delete", menuIconFg }};

sendBoxAlbumButtonMediaEdit: icon {{ "send_media/send_media_replace", roundedFg }};
sendBoxAlbumGroupButtonMediaEdit: icon {{ "send_media/send_media_replace", roundedFg, point(4px, 1px) }};
sendBoxAlbumGroupButtonMediaDelete: icon {{ "send_media/send_media_delete", roundedFg }};

defaultComposeIcons: ComposeIcons {
	settings: icon {{ "emoji/emoji_settings", emojiIconFg }};

	recent: icon {{ "emoji/emoji_recent", emojiIconFg }};
	recentActive: icon {{ "emoji/emoji_recent", emojiSubIconFgActive }};
	people: icon {{ "emoji/emoji_smile", emojiIconFg }};
	peopleActive: icon {{ "emoji/emoji_smile", emojiSubIconFgActive }};
	nature: icon {{ "emoji/emoji_nature", emojiIconFg }};
	natureActive: icon {{ "emoji/emoji_nature", emojiSubIconFgActive }};
	food: icon {{ "emoji/emoji_food", emojiIconFg }};
	foodActive: icon {{ "emoji/emoji_food", emojiSubIconFgActive }};
	activity: icon {{ "emoji/emoji_activities", emojiIconFg }};
	activityActive: icon {{ "emoji/emoji_activities", emojiSubIconFgActive }};
	travel: icon {{ "emoji/emoji_travel", emojiIconFg }};
	travelActive: icon {{ "emoji/emoji_travel", emojiSubIconFgActive }};
	objects: icon {{ "emoji/emoji_objects", emojiIconFg }};
	objectsActive: icon {{ "emoji/emoji_objects", emojiSubIconFgActive }};
	symbols: icon {{ "emoji/emoji_love", emojiIconFg }};
	symbolsActive: icon {{ "emoji/emoji_love", emojiSubIconFgActive }};

	menuFave: menuIconFave;
	menuUnfave: menuIconUnfave;
	menuStickerSet: menuIconStickers;
	menuRecentRemove: menuIconDelete;
	menuGifAdd: menuIconGif;
	menuGifRemove: menuIconDelete;
	menuMute: menuIconMute;
	menuSchedule: menuIconSchedule;
	menuWhenOnline: menuIconWhenOnline;
	menuSpoiler: menuIconSpoiler;
	menuSpoilerOff: menuIconSpoilerOff;

	stripBubble: icon{
		{ "chat/reactions_bubble_shadow", windowShadowFg },
		{ "chat/reactions_bubble", windowBg },
	};
	stripPremiumLocked: icon{
		{ "chat/reactions_premium_bg", historyPeerArchiveUserpicBg },
		{ "chat/reactions_premium_star", historyPeerUserpicFg },
	};
	stripExpandPanel: icon{
		{ "chat/reactions_round_big", windowBgRipple },
		{ "chat/reactions_expand_panel", windowSubTextFg },
	};
	stripExpandDropdown: icon{
		{ "chat/reactions_round_small", windowBgRipple },
		{ "chat/reactions_expand_panel", windowSubTextFg },
	};
}
defaultEmojiPan: EmojiPan {
	margin: margins(7px, 0px, 7px, 0px);
	padding: margins(7px, 0px, 4px, 7px);
	showAnimation: emojiPanAnimation;
	desiredSize: 37px;
	verticalSizeSub: 1px;
	header: 33px;
	headerLeft: 14px;
	headerLockLeft: 7px;
	headerLockedLeft: 26px;
	headerTop: 10px;
	footer: 36px;
	iconSkip: 3px;
	iconWidth: 30px;
	iconArea: 28px;
	bg: emojiPanBg;
	headerFg: emojiPanHeaderFg;
	trendingHeaderFg: stickersTrendingHeaderFg;
	trendingSubheaderFg: stickersTrendingSubheaderFg;
	trendingUnreadFg: stickersFeaturedUnreadBg;
	overBg: emojiPanHover;
	pathBg: windowBgRipple;
	pathFg: windowBgOver;
	textFg: windowFg;
	categoriesBg: emojiPanCategories;
	categoriesBgOver: windowBgRipple;
	fadeLeft: icon {{ "fade_horizontal-flip_horizontal", emojiPanCategories }};
	fadeRight: icon {{ "fade_horizontal", emojiPanCategories }};
	menu: popupMenuWithIcons;
	expandedSeparator: MenuSeparator(defaultMenuSeparator) {
		padding: margins(0px, 4px, 0px, 4px);
		width: 6px;
	}
	tabs: emojiTabs;
	search: defaultTabbedSearch;
	searchMargin: margins(1px, 11px, 2px, 5px);
	colorAll: emojiPanColorAll;
	colorAllLabel: emojiPanColorAllLabel;
	removeSet: stickerPanRemoveSet;
	boxLabel: boxLabel;
	icons: defaultComposeIcons;
	autocompleteBottomSkip: 0px;
}
statusEmojiPan: EmojiPan(defaultEmojiPan) {
	categoriesBg: windowBg;
	categoriesBgOver: windowBgOver;
	fadeLeft: icon {{ "fade_horizontal-flip_horizontal", windowBg }};
	fadeRight: icon {{ "fade_horizontal", windowBg }};
}

inlineBotsScroll: ScrollArea(defaultSolidScroll) {
	deltat: stickerPanPadding;
	deltab: stickerPanPadding;
}

gifsPadding: margins(9px, 5px, 3px, 9px);

emojiSuggestionsDropdown: InnerDropdown(defaultInnerDropdown) {
	scrollMargin: margins(0px, emojiColorsPadding, 0px, emojiColorsPadding);
	scrollPadding: margins(0px, 0px, 0px, 0px);
}
emojiSuggestionSize: 40px;
emojiSuggestionsScrolledWidth: 240px;
emojiSuggestionsPadding: margins(emojiColorsPadding, 0px, emojiColorsPadding, 0px);
emojiSuggestionsFadeAfter: 20px;

defaultEmojiSuggestions: EmojiSuggestions {
	dropdown: emojiSuggestionsDropdown;
	bg: menuBg;
	overBg: emojiPanHover;
	textFg: windowFg;
	fadeLeft: icon {{ "fade_horizontal-flip_horizontal", boxBg }};
	fadeRight: icon {{ "fade_horizontal", boxBg }};
}

mentionHeight: 40px;
mentionPadding: margins(8px, 5px, 8px, 5px);
mentionTop: 11px;
mentionFont: linkFont;
mentionNameFg: windowFg;
mentionNameFgOver: windowFgOver;
mentionPhotoSize: 33px;
mentionBg: windowBg;
mentionBgOver: windowBgOver;
mentionFg: windowSubTextFg;
mentionFgOver: windowSubTextFgOver;
mentionFgActive: windowActiveTextFg;
mentionFgOverActive: windowActiveTextFg;

autocompleteSearchPadding: margins(16px, 5px, 16px, 5px);
autocompleteRowPadding: margins(16px, 5px, 16px, 5px);
autocompleteRowTitle: semiboldTextStyle;
autocompleteRowKeys: defaultTextStyle;
autocompleteRowAnswer: defaultTextStyle;

manageEmojiPreview: 22px;
manageEmojiPreviewWidth: 48px;
manageEmojiPreviewHeight: 48px;
manageEmojiPreviewPadding: margins(22px, 9px, 19px, 9px);
manageEmojiMarginRight: 21px;
manageEmojiNameTop: 3px;
manageEmojiStatusTop: 25px;

inlineRadialSize: 44px;
inlineFileSize: 44px;

stickersPremiumLock: icon{{ "emoji/premium_lock", premiumButtonFg }};

reactStripExtend: margins(21px, 49px, 39px, 0px);
reactStripHeight: 40px;
reactStripSize: 32px;
reactStripMinWidth: 60px;
reactStripImage: 26px;
reactStripSkip: 7px;
reactStripBubbleRight: 20px;
userpicBuilderEmojiPan: EmojiPan(statusEmojiPan) {
	margin: margins(reactStripSkip, 0px, reactStripSkip, 0px);
	padding: margins(reactStripSkip, 0px, reactStripSkip, reactStripSkip);
	desiredSize: reactStripSize;
	verticalSizeSub: 0px;
	overBg: transparent;
	search: TabbedSearch(defaultTabbedSearch) {
		defaultFieldWidth: 88px;
	}
}
reactPanelEmojiPan: EmojiPan(userpicBuilderEmojiPan) {
	searchMargin: margins(1px, 10px, 2px, 6px);
}
emojiScroll: ScrollArea(defaultSolidScroll) {
	deltat: 3px;
	deltab: 3px;
	round: -1px;
	width: 7px;
	deltax: 2px;
	hiding: 0;
}
reactPanelScroll: ScrollArea(emojiScroll) {
	deltab: 7px;
}

choosePeerGroupIcon: icon {{ "info/edit/create_group", lightButtonFg }};
choosePeerChannelIcon: icon {{ "info/edit/create_channel", lightButtonFg }};
choosePeerCreateIconLeft: 25px;

historyRequestsUserpics: GroupCallUserpics {
	size: 22px;
	shift: 8px;
	stroke: 4px;
	align: align(left);
}
historyRequestsHeight: 33px;

historySlowmodeCounterMargins: margins(0px, 0px, 10px, 0px);

historyComposeAreaPalette: TextPalette(defaultTextPalette) {
	linkFg: historyComposeAreaFgService;
}

defaultMessageBar: MessageBar {
	title: semiboldTextStyle;
	titleFg: windowActiveTextFg;
	text: defaultTextStyle;
	textFg: historyComposeAreaFg;
	textPalette: historyComposeAreaPalette;
	duration: 160;
}

historyComposeButton: FlatButton {
	color: windowActiveTextFg;
	overColor: windowActiveTextFg;

	bgColor: historyComposeButtonBg;
	overBgColor: historyComposeButtonBgOver;

	width: -32px;
	height: 46px;

	textTop: 14px;

	font: semiboldFont;
	overFont: semiboldFont;

	ripple: RippleAnimation(defaultRippleAnimation) {
		color: historyComposeButtonBgRipple;
	}
}
historyUnblock: FlatButton(historyComposeButton) {
	color: attentionButtonFg;
	overColor: attentionButtonFgOver;
}
historyContactStatusButton: FlatButton(historyComposeButton) {
	height: 49px;
	textTop: 16px;
	overBgColor: historyComposeButtonBg;
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: historyComposeButtonBgOver;
	}
}
historyContactStatusBlock: FlatButton(historyContactStatusButton) {
	color: attentionButtonFg;
	overColor: attentionButtonFg;
}
historyContactStatusLabel: FlatLabel(defaultFlatLabel) {
	minWidth: 240px;
}
historyEmojiStatusInfoLabel: FlatLabel(historyContactStatusLabel) {
	align: align(top);
	textFg: windowSubTextFg;
}
historyContactStatusMinSkip: 16px;

historyReplySkip: 51px;
historyReplyNameFg: windowActiveTextFg;
historyReplyHeight: 49px;
historyReplyIconPosition: point(5px, 5px);
historyReplyIcon: icon {{ "chat/input_reply", historyReplyIconFg }};
historyForwardIcon: icon {{ "chat/input_forward", historyReplyIconFg }};
historyEditIcon: icon {{ "chat/input_edit", historyReplyIconFg }};
historyReplyCancel: IconButton {
	width: 49px;
	height: 49px;

	icon: historyReplyCancelIcon;
	iconOver: historyReplyCancelIconOver;
	iconPosition: point(-1px, -1px);

	rippleAreaPosition: point(4px, 4px);
	rippleAreaSize: 40px;
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: windowBgOver;
	}
}
historyPinnedShowAll: IconButton(historyReplyCancel) {
	icon: icon {{ "pinned_show_all", historyReplyCancelFg }};
	iconOver: icon {{ "pinned_show_all", historyReplyCancelFgOver }};
}
historyPinnedBotButton: RoundButton(defaultActiveButton) {
	width: -34px;
	height: 30px;
	textTop: 6px;
	padding: margins(2px, 10px, 10px, 9px);
}
historyPinnedBotButtonMaxWidth: 150px;

historyToDownPosition: point(12px, 10px);
historyToDownAbove: icon {{ "history_down_arrow", historyToDownFg }};
historyToDownAboveOver: icon {{ "history_down_arrow", historyToDownFgOver }};
historyToDownPaddingTop: 10px;
historyToDownBelow: icon {
	{ "history_down_shadow", historyToDownShadow },
	{ "history_down_circle", historyToDownBg },
};
historyToDownBelowOver: icon {
	{ "history_down_shadow", historyToDownShadow },
	{ "history_down_circle", historyToDownBgOver },
};
historyToDown: TwoIconButton {
	width: 52px;
	height: 62px;

	iconBelow: historyToDownBelow;
	iconBelowOver: historyToDownBelowOver;
	iconAbove: historyToDownAbove;
	iconAboveOver: historyToDownAboveOver;
	iconPosition: point(0px, historyToDownPaddingTop);

	rippleAreaPosition: point(5px, 15px);
	rippleAreaSize: 42px;
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: historyToDownBgRipple;
	}
}
historyToDownBadgeFont: semiboldFont;
historyToDownBadgeSize: 22px;

historyToDownShownAfter: 480px;
historyToDownDuration: 150;

dialogsToUpAbove: icon {{ "history_down_arrow-flip_vertical", historyToDownFg, point(0px, 1px) }};
dialogsToUpAboveOver: icon {{ "history_down_arrow-flip_vertical", historyToDownFgOver, point(0px, 1px) }};

dialogsToUp: TwoIconButton(historyToDown) {
	iconAbove: dialogsToUpAbove;
	iconAboveOver: dialogsToUpAboveOver;
}

historyUnreadMentions: TwoIconButton(historyToDown) {
	iconAbove: icon {{ "history_unread_mention", historyToDownFg }};
	iconAboveOver: icon {{ "history_unread_mention", historyToDownFgOver }};
}
historyUnreadReactions: TwoIconButton(historyToDown) {
	iconAbove: icon {{ "history_unread_reaction", historyToDownFg }};
	iconAboveOver: icon {{ "history_unread_reaction", historyToDownFgOver }};
}
historyUnreadThingsSkip: 4px;

historyComposeField: InputField(defaultInputField) {
	font: normalFont;
	textMargins: margins(0px, 0px, 0px, 0px);
	textAlign: align(left);
	textFg: historyComposeAreaFg;
	textBg: historyComposeAreaBg;
	heightMin: 36px;
	heightMax: 72px;
	placeholderFg: placeholderFg;
	placeholderFgActive: placeholderFgActive;
	placeholderFgError: placeholderFgActive;
	placeholderMargins: margins(7px, 5px, 7px, 5px);
	placeholderAlign: align(topleft);
	placeholderScale: 0.;
	placeholderFont: normalFont;
	placeholderShift: -50px;
	border: 0px;
	borderActive: 0px;
	duration: 100;
}
historyComposeFieldMaxHeight: 224px;
// historyMinHeight: 56px;

historyAttach: IconButton(defaultIconButton) {
	width: 44px;
	height: 46px;

	icon: icon {{ "chat/input_attach", historyComposeIconFg }};
	iconOver: icon {{ "chat/input_attach", historyComposeIconFgOver }};

	rippleAreaPosition: point(2px, 3px);
	rippleAreaSize: 40px;
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: windowBgOver;
	}
}

historyMessagesTTL: IconButtonWithText {
	iconButton: IconButton(historyAttach) {
		icon: icon {{ "chat/input_autodelete", historyComposeIconFg }};
		iconOver: icon {{ "chat/input_autodelete", historyComposeIconFgOver }};
	}
	textFg: historyComposeIconFg;
	textFgOver: historyComposeIconFgOver;
	textPadding: margins(21px, 20px, 3px, 7px);
	textAlign: align(left);

	font: font(10px semibold);
}
historyReplaceMedia: IconButton(historyAttach) {
	icon: icon {{ "chat/input_replace", windowBgActive }};
	iconOver: icon {{ "chat/input_replace", windowBgActive }};
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: lightButtonBgOver;
	}
}

historyAttachEmojiActive: icon {{ "chat/input_smile_face", windowBgActive }};
historyEmojiCircle: size(20px, 20px);
historyEmojiCircleLine: 1.5;
historyEmojiCircleFg: historyComposeIconFg;
historyEmojiCircleFgOver: historyComposeIconFgOver;
historyBotKeyboardShow: IconButton(historyAttach) {
	icon: icon {{ "chat/input_bot_keyboard", historyComposeIconFg }};
	iconOver: icon {{ "chat/input_bot_keyboard", historyComposeIconFgOver }};
}
historyBotKeyboardHide: IconButton(historyAttach) {
	icon: icon {{ "chat/input_bot_keyboard_hide", historyComposeIconFg }};
	iconOver: icon {{ "chat/input_bot_keyboard_hide", historyComposeIconFgOver }};
}
historyBotCommandStart: IconButton(historyAttach) {
	icon: icon {{ "chat/input_bot_command", historyComposeIconFg }};
	iconOver: icon {{ "chat/input_bot_command", historyComposeIconFgOver }};
}
historyScheduledToggle: IconButton(historyAttach) {
	icon: icon {
		{ "chat/input_scheduled", historyComposeIconFg },
		{ "chat/input_scheduled_dot", attentionButtonFg }
	};
	iconOver: icon {
		{ "chat/input_scheduled", historyComposeIconFgOver },
		{ "chat/input_scheduled_dot", attentionButtonFg }
	};
}

historyAttachEmojiInner: IconButton(historyAttach) {
	icon: icon {{ "chat/input_smile_face", historyComposeIconFg }};
	iconOver: icon {{ "chat/input_smile_face", historyComposeIconFgOver }};
}
historyAttachEmoji: EmojiButton {
	inner: historyAttachEmojiInner;
	bg: historyComposeAreaBg;
	lineFg: historyEmojiCircleFg;
	lineFgOver: historyEmojiCircleFgOver;
}
boxAttachEmoji: EmojiButton(historyAttachEmoji) {
	inner: IconButton(historyAttachEmojiInner) {
		width: 30px;
		height: 30px;
		rippleAreaSize: 0px;
	}
}
boxAttachEmojiTop: 20px;

historySendIcon: icon {{ "chat/input_send", historySendIconFg }};
historySendIconOver: icon {{ "chat/input_send", historySendIconFgOver }};
historySendIconPosition: point(10px, 11px);
historySendSize: size(44px, 46px);
historyScheduleIcon: icon {{ "chat/input_schedule", historyComposeAreaBg }};
historyScheduleIconPosition: point(7px, 8px);
historyEditSaveIcon: icon {{ "chat/input_save", historySendIconFg }};
historyEditSaveIconOver: icon {{ "chat/input_save", historySendIconFgOver }};

historyEditMediaBg: videoPlayIconBg;
historyEditMedia: icon{{ "chat/input_draw", videoPlayIconFg }};
historyMessagesTTLPickerHeight: 200px;
historyMessagesTTLPickerItemHeight: 40px;
historyMessagesTTLLabel: FlatLabel(defaultFlatLabel) {
	minWidth: 200px;
	align: align(topleft);
	textFg: windowSubTextFg;
}

historyRecordVoiceFg: historyComposeIconFg;
historyRecordVoiceFgOver: historyComposeIconFgOver;
historyRecordVoiceFgInactive: attentionButtonFg;
historyRecordVoiceFgActive: windowBgActive;
historyRecordVoiceFgActiveIcon: windowFgActive;
historyRecordVoiceShowDuration: 120;
historyRecordVoiceDuration: 120;
historyRecordVoice: icon {{ "chat/input_record", historyRecordVoiceFg }};
historyRecordVoiceOver: icon {{ "chat/input_record", historyRecordVoiceFgOver }};
historyRecordVoiceActive: icon {{ "chat/input_record_filled", historyRecordVoiceFgActiveIcon }};
historyRecordSendIconPosition: point(2px, 0px);
historyRecordVoiceRippleBgActive: lightButtonBgOver;
historyRecordSignalRadius: 5px;
historyRecordCancel: windowSubTextFg;
historyRecordCancelActive: windowActiveTextFg;
historyRecordFont: font(13px);
historyRecordDurationSkip: 12px;
historyRecordDurationFg: historyComposeAreaFg;

historyRecordMainBlobMinRadius: 23px;
historyRecordMainBlobMaxRadius: 37px;
historyRecordMinorBlobMinRadius: 40px;
historyRecordMinorBlobMaxRadius: 47px;
historyRecordMajorBlobMinRadius: 43px;
historyRecordMajorBlobMaxRadius: 50px;

historyRecordTextStyle: TextStyle(defaultTextStyle) {
	font: historyRecordFont;
}

historyRecordTextWidthForWrap: 210px;
historyRecordTextLeft: 15px;
historyRecordTextRight: 25px;

historyRecordLockShowDuration: historyToDownDuration;
historyRecordLockSize: size(75px, 133px);

historyRecordLockIconSize: size(14px, 17px);
historyRecordLockIconBottomHeight: 9px;
historyRecordLockIconLineHeight: 2px;
historyRecordLockIconLineSkip: 3px;
historyRecordLockIconLineWidth: 2px;
historyRecordLockIconArcHeight: 4px;
historyRecordStopIconWidth: 12px;

historyRecordLockTopShadow: icon {{ "voice_lock/record_lock_top_shadow", historyToDownShadow }};
historyRecordLockTop: icon {{ "voice_lock/record_lock_top", historyToDownBg }};
historyRecordLockBottomShadow: icon {{ "voice_lock/record_lock_bottom_shadow", historyToDownShadow }};
historyRecordLockBottom: icon {{ "voice_lock/record_lock_bottom", historyToDownBg }};
historyRecordLockBodyShadow: icon {{ "voice_lock/record_lock_body_shadow", historyToDownShadow }};
historyRecordLockBody: icon {{ "voice_lock/record_lock_body", historyToDownBg }};
historyRecordLockMargin: margins(4px, 4px, 4px, 4px);
historyRecordLockArrow: icon {{ "voice_lock/voice_arrow", historyToDownFg }};
historyRecordLockRippleMargin: margins(6px, 6px, 6px, 6px);

historyRecordDelete: IconButton(historyAttach) {
	icon: icon {{ "info/info_media_delete", historyComposeIconFg }};
	iconOver: icon {{ "info/info_media_delete", historyComposeIconFgOver }};
	iconPosition: point(10px, 11px);
}
historyRecordWaveformRightSkip: 10px;
historyRecordWaveformBgMargins: margins(5px, 7px, 5px, 7px);

historyRecordWaveformBar: 3px;

historyRecordLockPosition: point(1px, 35px);

historyRecordCancelButtonWidth: 100px;
historyRecordCancelButtonFg: lightButtonFg;

historySilentToggle: IconButton(historyBotKeyboardShow) {
	icon: icon {{ "chat/input_silent", historyComposeIconFg }};
	iconOver: icon {{ "chat/input_silent", historyComposeIconFgOver }};
}
historySilentToggleOn: icon {{ "chat/input_silent_on", historyComposeIconFg }};
historySilentToggleOnOver: icon {{ "chat/input_silent_on", historyComposeIconFgOver }};

defaultRecordBarLock: RecordBarLock {
	ripple: defaultRippleAnimation;
	originTop: historyRecordLockTop;
	originBottom: historyRecordLockBottom;
	originBody: historyRecordLockBody;
	shadowTop: historyRecordLockTopShadow;
	shadowBottom: historyRecordLockBottomShadow;
	shadowBody: historyRecordLockBodyShadow;
	arrow: historyRecordLockArrow;
	fg: historyToDownFg;
}
defaultRecordBar: RecordBar {
	bg: historyComposeAreaBg;
	durationFg: historyRecordDurationFg;
	cancel: historyRecordCancel;
	cancelActive: historyRecordCancelActive;
	cancelRipple: RippleAnimation(defaultRippleAnimation) {
		color: lightButtonBgRipple;
	}
	lock: defaultRecordBarLock;
	remove: historyRecordDelete;
}

historySend: SendButton {
	inner: IconButton(historyAttach) {
		icon: historySendIcon;
		iconOver: historySendIconOver;
	}
	record: historyRecordVoice;
	recordOver: historyRecordVoiceOver;
	sendDisabledFg: historyComposeIconFg;
}

defaultComposeFilesMenu: IconButton(defaultIconButton) {
	width: 48px;
	height: 54px;

	icon: icon {{ "title_menu_dots", boxTitleCloseFg }};
	iconOver: icon {{ "title_menu_dots", boxTitleCloseFgOver }};
	iconPosition: point(18px, -1px);

	rippleAreaPosition: point(1px, 6px);
	rippleAreaSize: 42px;
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: windowBgOver;
	}
}
defaultComposeFilesField: InputField(defaultInputField) {
	textMargins: margins(1px, 26px, 31px, 4px);
	heightMax: 158px;
}
defaultComposeFiles: ComposeFiles {
	check: defaultCheck;
	checkbox: defaultBoxCheckbox;
	menu: defaultComposeFilesMenu;
	caption: defaultComposeFilesField;
	emoji: boxAttachEmoji;
	confirmBg: windowBgOver;
	buttonFile: sendBoxAlbumGroupButtonFile;
	buttonFileEdit: sendBoxAlbumGroupEditButtonIconFile;
	buttonFileDelete: sendBoxAlbumGroupDeleteButtonIconFile;
	iconBg: msgFileInBg;
	iconPlay: icon {{ "history_file_play", historyFileInIconFg }};
	iconImage: icon {{ "history_file_image", historyFileInIconFg }};
	iconDocument: icon {{ "history_file_document", historyFileInIconFg }};
	nameFg: historyFileNameInFg;
	statusFg: mediaInFg;
}
defaultComposeControls: ComposeControls {
	bg: historyComposeAreaBg;
	radius: 0px;

	field: historyComposeField;
	send: historySend;
	attach: historyAttach;
	emoji: historyAttachEmoji;
	suggestions: defaultEmojiSuggestions;
	tabbed: defaultEmojiPan;
	tabbedHeightMin: emojiPanMinHeight;
	tabbedHeightMax: emojiPanMaxHeight;
	record: defaultRecordBar;
	files: defaultComposeFiles;
	premium: defaultPremiumLimits;
	boxField: defaultInputField;
}

moreChatsBarHeight: 48px;
moreChatsBarTextPosition: point(12px, 4px);
moreChatsBarStatusPosition: point(12px, 24px);
moreChatsBarClose: IconButton(defaultIconButton) {
	width: 48px;
	height: 48px;

	icon: boxTitleCloseIcon;
	iconOver: boxTitleCloseIconOver;
	iconPosition: point(12px, -1px);

	rippleAreaPosition: point(0px, 4px);
	rippleAreaSize: 40px;
	ripple: RippleAnimation(defaultRippleAnimation) {
		color: windowBgOver;
	}
}

reportReasonTopSkip: 8px;
reportReasonButton: SettingsButton(defaultSettingsButton) {
	style: boxTextStyle;
	padding: margins(62px, 7px, 8px, 7px);
	iconLeft: 22px;
}

defaultReportBox: ReportBox {
	button: reportReasonButton;
	label: boxLabel;
	field: newGroupDescription;
	spam: menuIconDelete;
	fake: menuIconFake;
	violence: menuIconViolence;
	children: menuIconBlock;
	pornography: menuIconPorn;
	copyright: menuIconCopyright;
	drugs: menuIconDrugs;
	personal: menuIconPersonal;
	other: menuIconReport;
}
