1435 lines
		
	
	
	
		
			41 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			1435 lines
		
	
	
	
		
			41 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
/*
 | 
						|
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 "ui/widgets/widgets.style";
 | 
						|
using "ui/layers/layers.style";
 | 
						|
using "ui/chat/chat.style"; // GroupCallUserpics
 | 
						|
using "info/info.style"; // ShortInfoCover
 | 
						|
using "window/window.style";
 | 
						|
using "settings/settings.style"; // defaultSubsectionTitle
 | 
						|
 | 
						|
CallSignalBars {
 | 
						|
	width: pixels;
 | 
						|
	radius: pixels;
 | 
						|
	skip: pixels;
 | 
						|
	min: pixels;
 | 
						|
	max: pixels;
 | 
						|
	color: color;
 | 
						|
	inactiveOpacity: double;
 | 
						|
}
 | 
						|
 | 
						|
callWidthMin: 300px;
 | 
						|
callHeightMin: 440px;
 | 
						|
callWidth: 720px;
 | 
						|
callHeight: 540px;
 | 
						|
 | 
						|
callBottomControlsHeight: 87px;
 | 
						|
 | 
						|
CallBodyLayout {
 | 
						|
	height: pixels;
 | 
						|
	photoTop: pixels;
 | 
						|
	photoSize: pixels;
 | 
						|
	nameTop: pixels;
 | 
						|
	statusTop: pixels;
 | 
						|
	muteStroke: pixels;
 | 
						|
	muteSize: pixels;
 | 
						|
	mutePosition: point;
 | 
						|
}
 | 
						|
 | 
						|
callBodyLayout: CallBodyLayout {
 | 
						|
	height: 284px;
 | 
						|
	photoTop: 21px;
 | 
						|
	photoSize: 160px;
 | 
						|
	nameTop: 221px;
 | 
						|
	statusTop: 254px;
 | 
						|
	muteStroke: 3px;
 | 
						|
	muteSize: 36px;
 | 
						|
	mutePosition: point(142px, 135px);
 | 
						|
}
 | 
						|
callBodyWithPreview: CallBodyLayout {
 | 
						|
	height: 185px;
 | 
						|
	photoTop: 21px;
 | 
						|
	photoSize: 100px;
 | 
						|
	nameTop: 132px;
 | 
						|
	statusTop: 163px;
 | 
						|
	muteStroke: 3px;
 | 
						|
	muteSize: 0px;
 | 
						|
	mutePosition: point(90px, 84px);
 | 
						|
}
 | 
						|
callMutedPeerIcon: icon {{ "calls/calls_mute_userpic", callIconFg }};
 | 
						|
 | 
						|
callOutgoingPreviewMin: size(360px, 120px);
 | 
						|
callOutgoingPreview: size(540px, 180px); // default, for height == callHeight.
 | 
						|
callOutgoingPreviewMax: size(1620px, 540px);
 | 
						|
callOutgoingDefaultSize: size(160px, 110px);
 | 
						|
 | 
						|
callInnerPadding: 12px;
 | 
						|
 | 
						|
callFingerprintPadding: margins(10px, 4px, 8px, 5px);
 | 
						|
callFingerprintSkip: 4px;
 | 
						|
callFingerprintSignalBarsSkip: 2px;
 | 
						|
callSignalBarsPadding: margins(8px, 9px, 11px, 5px);
 | 
						|
 | 
						|
callFingerprintTop: 8px;
 | 
						|
callFingerprintBottom: -16px;
 | 
						|
 | 
						|
callTooltipMutedIcon: icon{{ "calls/calls_mute_tooltip", videoPlayIconFg }};
 | 
						|
callTooltipMutedIconPosition: point(10px, 5px);
 | 
						|
callTooltipPadding: margins(41px, 7px, 15px, 8px);
 | 
						|
 | 
						|
callButton: IconButton {
 | 
						|
	width: 68px;
 | 
						|
	height: 79px;
 | 
						|
 | 
						|
	iconPosition: point(-1px, 16px);
 | 
						|
 | 
						|
	rippleAreaPosition: point(12px, 12px);
 | 
						|
	rippleAreaSize: 44px;
 | 
						|
	ripple: defaultRippleAnimation;
 | 
						|
}
 | 
						|
callButtonLabel: FlatLabel(defaultFlatLabel) {
 | 
						|
	textFg: callNameFg;
 | 
						|
	style: TextStyle(defaultTextStyle) {
 | 
						|
		font: font(11px);
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
callAnswer: CallButton {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/call_answer", callIconFg }};
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callAnswerRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
	bg: callAnswerBg;
 | 
						|
	bgSize: 44px;
 | 
						|
	bgPosition: point(12px, 12px);
 | 
						|
	angle: 135.;
 | 
						|
	outerRadius: 12px;
 | 
						|
	outerBg: callAnswerBgOuter;
 | 
						|
	label: callButtonLabel;
 | 
						|
}
 | 
						|
callStartVideo: CallButton(callAnswer) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/call_camera_active", callIconFg }};
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callAnswerRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 | 
						|
callHangup: CallButton(callAnswer) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/call_discard", callIconFg }};
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callHangupRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
	bg: callHangupBg;
 | 
						|
	outerBg: callHangupBg;
 | 
						|
	label: callButtonLabel;
 | 
						|
}
 | 
						|
callCancel: CallButton(callAnswer) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/call_cancel", callIconFgActive }};
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callIconActiveRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
	bg: callIconBgActive;
 | 
						|
	outerBg: callIconBgActive;
 | 
						|
	label: callButtonLabel;
 | 
						|
}
 | 
						|
callMicrophoneMute: CallButton(callAnswer) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/call_record_active", callIconFg }};
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callMuteRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
	bg: callIconBg;
 | 
						|
	outerBg: callMuteRipple;
 | 
						|
	label: callButtonLabel;
 | 
						|
}
 | 
						|
callMicrophoneUnmute: CallButton(callMicrophoneMute) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/call_record_muted", callIconFgActive }};
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callIconActiveRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
	bg: callIconBgActive;
 | 
						|
}
 | 
						|
callCameraMute: CallButton(callMicrophoneMute) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/call_camera_active", callIconFg }};
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callMuteRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 | 
						|
callCameraUnmute: CallButton(callMicrophoneUnmute) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/call_camera_muted", callIconFgActive }};
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callIconActiveRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 | 
						|
callScreencastOn: CallButton(callMicrophoneMute) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/calls_present", callIconFg }};
 | 
						|
		iconPosition: point(-1px, 22px);
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callMuteRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 | 
						|
callScreencastOff: CallButton(callMicrophoneUnmute) {
 | 
						|
	button: IconButton(callButton) {
 | 
						|
		icon: icon {{ "calls/calls_present", callIconFgActive }};
 | 
						|
		iconPosition: point(-1px, 22px);
 | 
						|
		ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
			color: callIconActiveRipple;
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 | 
						|
callBottomShadowSize: 124px;
 | 
						|
 | 
						|
CallMuteButton {
 | 
						|
	active: CallButton;
 | 
						|
	muted: CallButton;
 | 
						|
	labelAdditional: pixels;
 | 
						|
	sublabel: FlatLabel;
 | 
						|
	labelsSkip: pixels;
 | 
						|
	sublabelSkip: pixels;
 | 
						|
	lottieSize: size;
 | 
						|
	lottieTop: pixels;
 | 
						|
}
 | 
						|
 | 
						|
callMuteButtonLabel: FlatLabel(defaultFlatLabel) {
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
	style: TextStyle(defaultTextStyle) {
 | 
						|
		font: font(14px);
 | 
						|
	}
 | 
						|
}
 | 
						|
callMuteButtonActiveInner: IconButton {
 | 
						|
	width: 112px;
 | 
						|
	height: 138px;
 | 
						|
}
 | 
						|
callMuteButtonSmallActiveInner: IconButton {
 | 
						|
	width: 68px;
 | 
						|
	height: 68px;
 | 
						|
}
 | 
						|
callMuteButtonActive: CallButton {
 | 
						|
	button: callMuteButtonActiveInner;
 | 
						|
	bg: groupCallLive1;
 | 
						|
	bgSize: 77px;
 | 
						|
	bgPosition: point(18px, 18px);
 | 
						|
	outerRadius: 18px;
 | 
						|
	outerBg: callAnswerBgOuter;
 | 
						|
	label: callMuteButtonLabel;
 | 
						|
}
 | 
						|
callMuteButton: CallMuteButton {
 | 
						|
	active: callMuteButtonActive;
 | 
						|
	muted: CallButton(callMuteButtonActive) {
 | 
						|
		bg: groupCallMuted1;
 | 
						|
		label: callMuteButtonLabel;
 | 
						|
	}
 | 
						|
	labelAdditional: 5px;
 | 
						|
	sublabel: FlatLabel(defaultFlatLabel) {
 | 
						|
		textFg: groupCallMemberNotJoinedStatus;
 | 
						|
	}
 | 
						|
	labelsSkip: 8px;
 | 
						|
	sublabelSkip: 14px;
 | 
						|
	lottieSize: size(54px, 54px);
 | 
						|
	lottieTop: 31px;
 | 
						|
}
 | 
						|
callMuteButtonSmallActive: CallButton(callMuteButtonActive) {
 | 
						|
	button: callMuteButtonSmallActiveInner;
 | 
						|
	bgSize: 42px;
 | 
						|
	bgPosition: point(13px, 13px);
 | 
						|
	outerRadius: 13px;
 | 
						|
	label: callButtonLabel;
 | 
						|
}
 | 
						|
callMuteButtonSmall: CallMuteButton(callMuteButton) {
 | 
						|
	active: callMuteButtonSmallActive;
 | 
						|
	muted: CallButton(callMuteButtonSmallActive) {
 | 
						|
		bg: groupCallMuted1;
 | 
						|
		label: callButtonLabel;
 | 
						|
	}
 | 
						|
	labelsSkip: 0px;
 | 
						|
	sublabelSkip: 0px;
 | 
						|
	lottieSize: size(36px, 36px);
 | 
						|
	lottieTop: 17px;
 | 
						|
}
 | 
						|
 | 
						|
callMuteMinorBlobMinRadius: 64px;
 | 
						|
callMuteMinorBlobMaxRadius: 74px;
 | 
						|
callMuteMajorBlobMinRadius: 67px;
 | 
						|
callMuteMajorBlobMaxRadius: 77px;
 | 
						|
callMuteBlobRadiusForDiameter: 100px;
 | 
						|
 | 
						|
callMuteToFullScreen: icon {{ "player/player_fullscreen", groupCallIconFg }};
 | 
						|
callMuteFromFullScreen: icon {{ "player/player_minimize", groupCallIconFg }};
 | 
						|
 | 
						|
callConnectingRadial: InfiniteRadialAnimation(defaultInfiniteRadialAnimation) {
 | 
						|
	color: lightButtonFg;
 | 
						|
	thickness: 4px;
 | 
						|
}
 | 
						|
 | 
						|
callName: FlatLabel(defaultFlatLabel) {
 | 
						|
	minWidth: 260px;
 | 
						|
	maxHeight: 30px;
 | 
						|
	textFg: callNameFg;
 | 
						|
	align: align(top);
 | 
						|
	style: TextStyle(defaultTextStyle) {
 | 
						|
		font: font(21px semibold);
 | 
						|
	}
 | 
						|
}
 | 
						|
callStatus: FlatLabel(defaultFlatLabel) {
 | 
						|
	minWidth: 260px;
 | 
						|
	maxHeight: 60px;
 | 
						|
	textFg: callStatusFg;
 | 
						|
	align: align(top);
 | 
						|
	style: TextStyle(defaultTextStyle) {
 | 
						|
		font: font(14px);
 | 
						|
	}
 | 
						|
}
 | 
						|
callRemoteAudioMute: FlatLabel(callStatus) {
 | 
						|
	minWidth: 0px;
 | 
						|
	textFg: videoPlayIconFg;
 | 
						|
	style: TextStyle(defaultTextStyle) {
 | 
						|
		font: font(12px);
 | 
						|
	}
 | 
						|
}
 | 
						|
callRemoteAudioMuteSkip: 12px;
 | 
						|
 | 
						|
callBarHeight: 38px;
 | 
						|
callBarMuteToggle: IconButton {
 | 
						|
	width: 41px;
 | 
						|
	height: 38px;
 | 
						|
 | 
						|
	icon: icon {{ "calls/call_record_active", callBarFg }};
 | 
						|
	iconPosition: point(3px, 2px);
 | 
						|
 | 
						|
	ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
		color: callBarMuteRipple;
 | 
						|
	}
 | 
						|
	rippleAreaPosition: point(5px, 3px);
 | 
						|
	rippleAreaSize: 32px;
 | 
						|
}
 | 
						|
callBarRightSkip: 12px;
 | 
						|
callBarSkip: 10px;
 | 
						|
callBarHangup: IconButton(callBarMuteToggle) {
 | 
						|
	icon: icon {{ "calls/call_discard", callBarFg }};
 | 
						|
	iconPosition: point(3px, 1px);
 | 
						|
}
 | 
						|
callBarLabel: LabelSimple(defaultLabelSimple) {
 | 
						|
	font: semiboldFont;
 | 
						|
	textFg: callBarFg;
 | 
						|
}
 | 
						|
callBarInfoLabel: FlatLabel(defaultFlatLabel) {
 | 
						|
	maxHeight: 28px;
 | 
						|
	align: align(top);
 | 
						|
	textFg: callBarFg;
 | 
						|
	style: TextStyle(defaultTextStyle) {
 | 
						|
		font: semiboldFont;
 | 
						|
	}
 | 
						|
}
 | 
						|
callBarLabelTop: 10px;
 | 
						|
 | 
						|
callArrowPosition: point(-2px, 1px);
 | 
						|
callArrowIn: icon {{ "calls/call_arrow_in", callArrowFg }};
 | 
						|
callArrowOut: icon {{ "calls/call_arrow_out", callArrowFg }};
 | 
						|
callArrowMissed: icon {{ "calls/call_arrow_in", callArrowMissedFg }};
 | 
						|
callArrowSkip: 4px;
 | 
						|
callReDial: IconButton {
 | 
						|
	width: 40px;
 | 
						|
	height: 56px;
 | 
						|
 | 
						|
	icon: icon {{ "calls/call_answer", menuIconFg }};
 | 
						|
	iconOver: icon {{ "calls/call_answer", menuIconFgOver }};
 | 
						|
	iconPosition: point(-1px, -1px);
 | 
						|
 | 
						|
	ripple: defaultRippleAnimation;
 | 
						|
	rippleAreaPosition: point(0px, 8px);
 | 
						|
	rippleAreaSize: 40px;
 | 
						|
}
 | 
						|
 | 
						|
callCameraReDial: IconButton(callReDial) {
 | 
						|
	icon: icon {{ "calls/call_camera_active", menuIconFg }};
 | 
						|
	iconOver: icon {{ "calls/call_camera_active", menuIconFgOver }};
 | 
						|
}
 | 
						|
callGroupCall: IconButton(callCameraReDial) {
 | 
						|
	icon: icon {{ "top_bar_group_call", menuIconFg }};
 | 
						|
	iconOver: icon {{ "top_bar_group_call", menuIconFgOver }};
 | 
						|
}
 | 
						|
 | 
						|
callRatingPadding: margins(24px, 12px, 24px, 0px);
 | 
						|
callRatingStar: IconButton {
 | 
						|
	width: 36px;
 | 
						|
	height: 36px;
 | 
						|
 | 
						|
	icon: icon {{ "calls/call_rating", windowSubTextFg }};
 | 
						|
	iconPosition: point(-1px, -1px);
 | 
						|
 | 
						|
	ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
		color: windowBgOver;
 | 
						|
	}
 | 
						|
	rippleAreaPosition: point(0px, 0px);
 | 
						|
	rippleAreaSize: 36px;
 | 
						|
}
 | 
						|
callRatingStarFilled: icon {{ "calls/call_rating_filled", lightButtonFg }};
 | 
						|
callRatingStarTop: 4px;
 | 
						|
callRatingComment: InputField(defaultInputField) {
 | 
						|
	textMargins: margins(1px, 26px, 1px, 4px);
 | 
						|
	heightMax: 135px;
 | 
						|
}
 | 
						|
callRatingCommentTop: 8px;
 | 
						|
 | 
						|
callDebugPadding: margins(24px, 0px, 24px, 0px);
 | 
						|
callDebugLabel: FlatLabel(defaultFlatLabel) {
 | 
						|
	margin: callDebugPadding;
 | 
						|
}
 | 
						|
callPanelDuration: 150;
 | 
						|
 | 
						|
callPanelSignalBars: CallSignalBars {
 | 
						|
	width: 2px;
 | 
						|
	radius: 1px;
 | 
						|
	skip: 2px;
 | 
						|
	min: 4px;
 | 
						|
	max: 10px;
 | 
						|
	color: callNameFg;
 | 
						|
	inactiveOpacity: 0.5;
 | 
						|
}
 | 
						|
callBarSignalBars: CallSignalBars(callPanelSignalBars) {
 | 
						|
	width: 3px;
 | 
						|
	skip: 1px;
 | 
						|
	min: 3px;
 | 
						|
	max: 12px;
 | 
						|
	color: callBarFg;
 | 
						|
}
 | 
						|
 | 
						|
callTitleButton: windowTitleButton;
 | 
						|
callTitleMinimizeIcon: icon {
 | 
						|
	{ "title_shadow_minimize", windowShadowFg },
 | 
						|
	{ "title_button_minimize", callNameFg },
 | 
						|
};
 | 
						|
callTitleMinimizeIconOver: icon {
 | 
						|
	{ windowTitleButtonSize, callBgButton },
 | 
						|
	{ windowTitleButtonSize, callMuteRipple },
 | 
						|
	{ "title_shadow_minimize", windowShadowFg },
 | 
						|
	{ "title_button_minimize", callNameFg },
 | 
						|
};
 | 
						|
callTitleMaximizeIcon: icon {
 | 
						|
	{ "title_shadow_maximize", windowShadowFg },
 | 
						|
	{ "title_button_maximize", callNameFg },
 | 
						|
};
 | 
						|
callTitleMaximizeIconOver: icon {
 | 
						|
	{ windowTitleButtonSize, callBgButton },
 | 
						|
	{ windowTitleButtonSize, callMuteRipple },
 | 
						|
	{ "title_shadow_maximize", windowShadowFg },
 | 
						|
	{ "title_button_maximize", callNameFg },
 | 
						|
};
 | 
						|
callTitleRestoreIcon: icon {
 | 
						|
	{ "title_shadow_restore", windowShadowFg },
 | 
						|
	{ "title_button_restore", callNameFg },
 | 
						|
};
 | 
						|
callTitleRestoreIconOver: icon {
 | 
						|
	{ windowTitleButtonSize, callBgButton },
 | 
						|
	{ windowTitleButtonSize, callMuteRipple },
 | 
						|
	{ "title_shadow_restore", windowShadowFg },
 | 
						|
	{ "title_button_restore", callNameFg },
 | 
						|
};
 | 
						|
callTitleCloseIcon: icon {
 | 
						|
	{ "title_shadow_close", windowShadowFg },
 | 
						|
	{ "title_button_close", callNameFg },
 | 
						|
};
 | 
						|
callTitleCloseIconOver: icon {
 | 
						|
	{ windowTitleButtonSize, titleButtonCloseBgOver },
 | 
						|
	{ "title_shadow_close", windowShadowFg },
 | 
						|
	{ "title_button_close", titleButtonCloseFgOver },
 | 
						|
};
 | 
						|
callTitle: WindowTitle(defaultWindowTitle) {
 | 
						|
	height: 0px;
 | 
						|
	bg: callBgOpaque;
 | 
						|
	bgActive: callBgOpaque;
 | 
						|
	fg: transparent;
 | 
						|
	fgActive: transparent;
 | 
						|
	minimize: IconButton(callTitleButton) {
 | 
						|
		icon: callTitleMinimizeIcon;
 | 
						|
		iconOver: callTitleMinimizeIconOver;
 | 
						|
	}
 | 
						|
	minimizeIconActive: callTitleMinimizeIcon;
 | 
						|
	minimizeIconActiveOver: callTitleMinimizeIconOver;
 | 
						|
	maximize: IconButton(callTitleButton) {
 | 
						|
		icon: callTitleMaximizeIcon;
 | 
						|
		iconOver: callTitleMaximizeIconOver;
 | 
						|
	}
 | 
						|
	maximizeIconActive: callTitleMaximizeIcon;
 | 
						|
	maximizeIconActiveOver: callTitleMaximizeIconOver;
 | 
						|
	restoreIcon: callTitleRestoreIcon;
 | 
						|
	restoreIconOver: callTitleRestoreIconOver;
 | 
						|
	restoreIconActive: callTitleRestoreIcon;
 | 
						|
	restoreIconActiveOver: callTitleRestoreIconOver;
 | 
						|
	close: IconButton(callTitleButton) {
 | 
						|
		icon: callTitleCloseIcon;
 | 
						|
		iconOver: callTitleCloseIconOver;
 | 
						|
	}
 | 
						|
	closeIconActive: callTitleCloseIcon;
 | 
						|
	closeIconActiveOver: callTitleCloseIconOver;
 | 
						|
}
 | 
						|
callTitleShadowRight: icon {{ "calls/calls_shadow_controls", windowShadowFg }};
 | 
						|
callTitleShadowLeft: icon {{ "calls/calls_shadow_controls-flip_horizontal", windowShadowFg }};
 | 
						|
 | 
						|
callErrorToast: Toast(defaultToast) {
 | 
						|
	minWidth: 240px;
 | 
						|
}
 | 
						|
 | 
						|
groupCallWidth: 380px;
 | 
						|
groupCallHeight: 580px;
 | 
						|
groupCallWidthRtmp: 720px;
 | 
						|
groupCallWidthRtmpMin: 240px;
 | 
						|
groupCallHeightRtmp: 580px;
 | 
						|
groupCallHeightRtmpMin: 160px;
 | 
						|
 | 
						|
groupCallRipple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
	color: groupCallMembersBgRipple;
 | 
						|
}
 | 
						|
 | 
						|
groupCallMenu: Menu(defaultMenu) {
 | 
						|
	itemBg: groupCallMenuBg;
 | 
						|
	itemBgOver: groupCallMenuBgOver;
 | 
						|
	itemFg: groupCallMembersFg;
 | 
						|
	itemFgOver: groupCallMembersFg;
 | 
						|
	itemFgDisabled: groupCallMemberNotJoinedStatus;
 | 
						|
	itemFgShortcut: groupCallMemberNotJoinedStatus;
 | 
						|
	itemFgShortcutOver: groupCallMemberNotJoinedStatus;
 | 
						|
	itemFgShortcutDisabled: groupCallMemberNotJoinedStatus;
 | 
						|
 | 
						|
	separator: MenuSeparator(defaultMenuSeparator) {
 | 
						|
		padding: margins(0px, 4px, 0px, 4px);
 | 
						|
		fg: groupCallMenuBgOver;
 | 
						|
	}
 | 
						|
	arrow: icon {{ "menu/submenu_arrow", groupCallMemberNotJoinedStatus }};
 | 
						|
 | 
						|
	ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
		color: groupCallMenuBgRipple;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallFinishMenu: Menu(groupCallMenu) {
 | 
						|
	itemFg: groupCallMemberMutedIcon;
 | 
						|
	itemFgOver: groupCallMemberMutedIcon;
 | 
						|
}
 | 
						|
groupCallMenuShadow: Shadow(defaultEmptyShadow) {
 | 
						|
	fallback: groupCallMenuBg;
 | 
						|
}
 | 
						|
groupCallPanelAnimation: PanelAnimation(defaultPanelAnimation) {
 | 
						|
	fadeBg: groupCallMenuBg;
 | 
						|
	shadow: groupCallMenuShadow;
 | 
						|
}
 | 
						|
groupCallPopupMenu: PopupMenu(defaultPopupMenu) {
 | 
						|
	shadow: groupCallMenuShadow;
 | 
						|
	menu: groupCallMenu;
 | 
						|
	animation: groupCallPanelAnimation;
 | 
						|
}
 | 
						|
groupCallPopupMenuWithVolume: PopupMenu(groupCallPopupMenu) {
 | 
						|
	scrollPadding: margins(0px, 3px, 0px, 8px);
 | 
						|
	menu: Menu(groupCallMenu) {
 | 
						|
		widthMin: 210px;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallPopupVolumeMenu: Menu(groupCallMenu) {
 | 
						|
	widthMin: 210px;
 | 
						|
	itemBgOver: groupCallMenuBg;
 | 
						|
}
 | 
						|
groupCallMenuCoverSize: 240px;
 | 
						|
groupCallPopupCoverMenu: Menu(groupCallMenu) {
 | 
						|
	widthMin: groupCallMenuCoverSize;
 | 
						|
	widthMax: groupCallMenuCoverSize;
 | 
						|
	itemBgOver: groupCallMenuBg;
 | 
						|
}
 | 
						|
groupCallPopupMenuWithCover: PopupMenu(groupCallPopupMenu) {
 | 
						|
	scrollPadding: margins(0px, 0px, 0px, 8px);
 | 
						|
	menu: Menu(groupCallMenu) {
 | 
						|
		widthMin: groupCallMenuCoverSize;
 | 
						|
		widthMax: groupCallMenuCoverSize;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallMenuCover: ShortInfoCover(shortInfoCover) {
 | 
						|
	radius: roundRadiusSmall;
 | 
						|
	size: groupCallMenuCoverSize;
 | 
						|
	namePosition: point(17px, 28px);
 | 
						|
	statusPosition: point(17px, 8px);
 | 
						|
}
 | 
						|
groupCallMenuAbout: FlatLabel(defaultFlatLabel) {
 | 
						|
	textFg: groupCallMemberNotJoinedStatus;
 | 
						|
	palette: TextPalette(defaultTextPalette) {
 | 
						|
		linkFg: groupCallActiveFg;
 | 
						|
	}
 | 
						|
	minWidth: 200px;
 | 
						|
	maxHeight: 92px;
 | 
						|
}
 | 
						|
 | 
						|
groupCallRecordingTimerPadding: margins(0px, 4px, 0px, 4px);
 | 
						|
groupCallRecordingTimerFont: font(12px);
 | 
						|
 | 
						|
groupCallInnerDropdown: InnerDropdown(defaultInnerDropdown) {
 | 
						|
	shadow: groupCallMenuShadow;
 | 
						|
	animation: groupCallPanelAnimation;
 | 
						|
	bg: groupCallMenuBg;
 | 
						|
	scroll: defaultSolidScroll;
 | 
						|
	scrollPadding: margins(0px, 4px, 0px, 4px);
 | 
						|
}
 | 
						|
groupCallDropdownMenu: DropdownMenu(defaultDropdownMenu) {
 | 
						|
	wrap: groupCallInnerDropdown;
 | 
						|
	menu: groupCallMenu;
 | 
						|
}
 | 
						|
groupCallMembersListCheck: RoundCheckbox(defaultPeerListCheck) {
 | 
						|
	border: groupCallMembersBg;
 | 
						|
	bgActive: groupCallActiveFg;
 | 
						|
	check: icon {{ "default_checkbox_check", groupCallMembersFg, point(3px, 6px) }};
 | 
						|
}
 | 
						|
groupCallMembersListCheckbox: RoundImageCheckbox(defaultPeerListCheckbox) {
 | 
						|
	selectFg: groupCallActiveFg;
 | 
						|
	check: groupCallMembersListCheck;
 | 
						|
}
 | 
						|
groupCallMembersListItem: PeerListItem(defaultPeerListItem) {
 | 
						|
	button: OutlineButton(defaultPeerListButton) {
 | 
						|
		textBg: groupCallMembersBg;
 | 
						|
		textBgOver: groupCallMembersBgOver;
 | 
						|
 | 
						|
		textFg: groupCallMemberInactiveStatus;
 | 
						|
		textFgOver: groupCallMemberInactiveStatus;
 | 
						|
 | 
						|
		font: normalFont;
 | 
						|
		padding: margins(11px, 5px, 11px, 5px);
 | 
						|
 | 
						|
		ripple: groupCallRipple;
 | 
						|
	}
 | 
						|
	disabledCheckFg: groupCallMemberNotJoinedStatus;
 | 
						|
	checkbox: groupCallMembersListCheckbox;
 | 
						|
	height: 52px;
 | 
						|
	photoPosition: point(12px, 6px);
 | 
						|
	namePosition: point(63px, 7px);
 | 
						|
	statusPosition: point(63px, 26px);
 | 
						|
	photoSize: 40px;
 | 
						|
	nameFg: groupCallMembersFg;
 | 
						|
	nameFgChecked: groupCallMembersFg;
 | 
						|
	statusFg: groupCallMemberInactiveStatus;
 | 
						|
	statusFgOver: groupCallMemberInactiveStatus;
 | 
						|
	statusFgActive: groupCallMemberActiveStatus;
 | 
						|
}
 | 
						|
groupCallNarrowMembersListItem: PeerListItem(groupCallMembersListItem) {
 | 
						|
	statusFg: groupCallMemberNotJoinedStatus;
 | 
						|
	statusFgOver: groupCallMemberNotJoinedStatus;
 | 
						|
	statusFgActive: groupCallMemberActiveStatus;
 | 
						|
}
 | 
						|
groupCallMembersList: PeerList(defaultPeerList) {
 | 
						|
	bg: groupCallMembersBg;
 | 
						|
	about: FlatLabel(defaultPeerListAbout) {
 | 
						|
		textFg: groupCallMemberNotJoinedStatus;
 | 
						|
	}
 | 
						|
	item: groupCallMembersListItem;
 | 
						|
}
 | 
						|
groupCallInviteDividerPadding: margins(17px, 7px, 17px, 7px);
 | 
						|
groupCallInviteMembersListItem: PeerListItem(groupCallMembersListItem) {
 | 
						|
	statusFg: groupCallMemberNotJoinedStatus;
 | 
						|
	statusFgOver: groupCallMemberNotJoinedStatus;
 | 
						|
	statusFgActive: groupCallMemberInactiveStatus;
 | 
						|
}
 | 
						|
groupCallInviteMembersList: PeerList(groupCallMembersList) {
 | 
						|
	padding: margins(0px, 10px, 0px, 10px);
 | 
						|
	item: groupCallInviteMembersListItem;
 | 
						|
}
 | 
						|
groupCallJoinAsList: PeerList(groupCallInviteMembersList) {
 | 
						|
	item: PeerListItem(groupCallInviteMembersListItem) {
 | 
						|
		height: 56px;
 | 
						|
		checkbox: RoundImageCheckbox(groupCallMembersListCheckbox) {
 | 
						|
			check: RoundCheckbox(groupCallMembersListCheck) {
 | 
						|
				size: 0px;
 | 
						|
			}
 | 
						|
			imageRadius: 19px;
 | 
						|
			imageSmallRadius: 15px;
 | 
						|
			selectFg: groupCallMemberInactiveStatus;
 | 
						|
		}
 | 
						|
		photoSize: 38px;
 | 
						|
		photoPosition: point(24px, 9px);
 | 
						|
		namePosition: point(73px, 9px);
 | 
						|
		statusPosition: point(73px, 28px);
 | 
						|
	}
 | 
						|
}
 | 
						|
peerListJoinAsList: PeerList(peerListBox) {
 | 
						|
	item: PeerListItem(peerListBoxItem) {
 | 
						|
		height: 56px;
 | 
						|
		checkbox: RoundImageCheckbox(defaultPeerListCheckbox) {
 | 
						|
			check: RoundCheckbox(defaultRoundCheckbox) {
 | 
						|
				size: 0px;
 | 
						|
			}
 | 
						|
			imageRadius: 19px;
 | 
						|
			imageSmallRadius: 15px;
 | 
						|
		}
 | 
						|
		photoSize: 38px;
 | 
						|
		photoPosition: point(24px, 9px);
 | 
						|
		namePosition: point(73px, 9px);
 | 
						|
		statusPosition: point(73px, 28px);
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallMultiSelect: MultiSelect(defaultMultiSelect) {
 | 
						|
	bg: groupCallMembersBg;
 | 
						|
	item: MultiSelectItem(defaultMultiSelectItem) {
 | 
						|
		textBg: groupCallMembersBgRipple;
 | 
						|
		textFg: groupCallMembersFg;
 | 
						|
		textActiveBg: groupCallActiveFg;
 | 
						|
		textActiveFg: groupCallMembersFg;
 | 
						|
		deleteFg: groupCallMembersFg;
 | 
						|
	}
 | 
						|
	field: InputField(defaultMultiSelectSearchField) {
 | 
						|
		textFg: groupCallMembersFg;
 | 
						|
		placeholderFg: groupCallMemberNotJoinedStatus;
 | 
						|
		placeholderFgActive: groupCallMemberNotJoinedStatus;
 | 
						|
		placeholderFgError: groupCallMemberNotJoinedStatus;
 | 
						|
		menu: groupCallPopupMenu;
 | 
						|
	}
 | 
						|
	fieldIcon: icon {{ "box_search", groupCallMemberNotJoinedStatus, point(10px, 9px) }};
 | 
						|
	fieldCancel: CrossButton(defaultMultiSelectSearchCancel) {
 | 
						|
		crossFg: groupCallMemberNotJoinedStatus;
 | 
						|
		crossFgOver: groupCallMemberNotJoinedStatus;
 | 
						|
		ripple: groupCallRipple;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallField: InputField(defaultInputField) {
 | 
						|
	textMargins: margins(2px, 7px, 2px, 0px);
 | 
						|
 | 
						|
	textBg: transparent;
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
 | 
						|
	placeholderFg: groupCallMemberNotJoinedStatus;
 | 
						|
	placeholderFgActive: groupCallMemberNotJoinedStatus;
 | 
						|
	placeholderFgError: groupCallMemberNotJoinedStatus;
 | 
						|
	placeholderMargins: margins(0px, 0px, 0px, 0px);
 | 
						|
	placeholderScale: 0.;
 | 
						|
	placeholderFont: normalFont;
 | 
						|
	heightMin: 32px;
 | 
						|
 | 
						|
	borderFg: inputBorderFg;
 | 
						|
	borderFgActive: groupCallMemberInactiveStatus;
 | 
						|
	borderFgError: activeLineFgError;
 | 
						|
 | 
						|
	menu: groupCallPopupMenu;
 | 
						|
}
 | 
						|
groupCallShareBoxComment: InputField(groupCallField) {
 | 
						|
	textMargins: margins(8px, 8px, 8px, 6px);
 | 
						|
	heightMin: 36px;
 | 
						|
	heightMax: 72px;
 | 
						|
	placeholderMargins: margins(2px, 0px, 2px, 0px);
 | 
						|
	border: 0px;
 | 
						|
	borderActive: 0px;
 | 
						|
}
 | 
						|
groupCallShareBoxList: PeerList(groupCallMembersList) {
 | 
						|
	item: PeerListItem(groupCallMembersListItem) {
 | 
						|
		nameStyle: TextStyle(defaultTextStyle) {
 | 
						|
			font: font(11px);
 | 
						|
		}
 | 
						|
		checkbox: RoundImageCheckbox(groupCallMembersListCheckbox) {
 | 
						|
			imageRadius: 28px;
 | 
						|
			imageSmallRadius: 24px;
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
groupCallMembersTop: 51px;
 | 
						|
groupCallTitleTop: 8px;
 | 
						|
groupCallSubtitleTop: 26px;
 | 
						|
groupCallWideVideoTop: 24px;
 | 
						|
 | 
						|
groupCallAddMember: SettingsButton(defaultSettingsButton) {
 | 
						|
	textFg: groupCallMemberNotJoinedStatus;
 | 
						|
	textFgOver: groupCallMemberNotJoinedStatus;
 | 
						|
	textBg: groupCallMembersBg;
 | 
						|
	textBgOver: groupCallMembersBgOver;
 | 
						|
 | 
						|
	style: semiboldTextStyle;
 | 
						|
 | 
						|
	height: 22px;
 | 
						|
	padding: margins(63px, 17px, 22px, 11px);
 | 
						|
	iconLeft: 16px;
 | 
						|
 | 
						|
	ripple: groupCallRipple;
 | 
						|
}
 | 
						|
groupCallAddMemberIcon: icon {{ "info/info_add_member", groupCallMemberInactiveIcon, point(0px, 3px) }};
 | 
						|
groupCallSubtitleLabel: FlatLabel(defaultFlatLabel) {
 | 
						|
	maxHeight: 18px;
 | 
						|
	textFg: groupCallMemberNotJoinedStatus;
 | 
						|
}
 | 
						|
groupCallTitleLabel: FlatLabel(groupCallSubtitleLabel) {
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
	style: TextStyle(defaultTextStyle) {
 | 
						|
		font: font(semibold 14px);
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallTitleSeparator: 4px;
 | 
						|
groupCallVideoLimitLabel: FlatLabel(defaultFlatLabel) {
 | 
						|
	align: align(top);
 | 
						|
	textFg: groupCallMemberNotJoinedStatus;
 | 
						|
	style: semiboldTextStyle;
 | 
						|
	minWidth: 96px;
 | 
						|
}
 | 
						|
groupCallMembersWidthMax: 480px;
 | 
						|
groupCallRecordingMark: 6px;
 | 
						|
groupCallRecordingMarkSkip: 4px;
 | 
						|
groupCallRecordingMarkTop: 8px;
 | 
						|
 | 
						|
groupCallMenuTogglePosition: point(13px, 8px);
 | 
						|
groupCallMenuToggle: IconButton {
 | 
						|
	width: 36px;
 | 
						|
	height: 36px;
 | 
						|
 | 
						|
	icon: icon {{ "info/edit/dotsmini", groupCallMemberInactiveIcon }};
 | 
						|
	iconOver: icon {{ "info/edit/dotsmini", groupCallMemberInactiveIcon }};
 | 
						|
	iconPosition: point(2px, 2px);
 | 
						|
 | 
						|
	rippleAreaPosition: point(3px, 3px);
 | 
						|
	rippleAreaSize: 30px;
 | 
						|
	ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
		color: groupCallMembersBg;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallJoinAsToggle: UserpicButton(defaultUserpicButton) {
 | 
						|
	size: size(36px, 36px);
 | 
						|
	photoSize: 30px;
 | 
						|
	photoPosition: point(3px, 3px);
 | 
						|
}
 | 
						|
groupCallMenuPosition: point(-1px, 29px);
 | 
						|
groupCallWideMenuPosition: point(-2px, 28px);
 | 
						|
 | 
						|
groupCallActiveButton: IconButton {
 | 
						|
	width: 36px;
 | 
						|
	height: 52px;
 | 
						|
 | 
						|
	icon: icon {{ "calls/group_calls_unmuted", groupCallMemberInactiveIcon }};
 | 
						|
	iconOver: icon {{ "calls/group_calls_unmuted", groupCallMemberInactiveIcon }};
 | 
						|
	iconPosition: point(-1px, -1px);
 | 
						|
 | 
						|
	ripple: groupCallRipple;
 | 
						|
	rippleAreaPosition: point(0px, 8px);
 | 
						|
	rippleAreaSize: 36px;
 | 
						|
}
 | 
						|
groupCallMemberButtonSkip: 10px;
 | 
						|
 | 
						|
groupCallMemberInactiveCrossLine: CrossLineAnimation {
 | 
						|
	fg: groupCallMemberInactiveIcon;
 | 
						|
	icon: icon {{ "calls/group_calls_unmuted", groupCallMemberInactiveIcon }};
 | 
						|
	startPosition: point(5px, 2px);
 | 
						|
	endPosition: point(20px, 17px);
 | 
						|
	stroke: 2px;
 | 
						|
}
 | 
						|
groupCallMemberColoredCrossLine: CrossLineAnimation(groupCallMemberInactiveCrossLine) {
 | 
						|
	fg: groupCallMemberMutedIcon;
 | 
						|
	icon: icon {{ "calls/group_calls_unmuted", groupCallMemberActiveIcon }};
 | 
						|
}
 | 
						|
groupCallMemberInvited: icon {{ "calls/group_calls_invited", groupCallMemberInactiveIcon }};
 | 
						|
groupCallMemberInvitedPosition: point(2px, 12px);
 | 
						|
groupCallMemberRaisedHand: icon {{ "calls/group_calls_raised_hand", groupCallMemberInactiveStatus }};
 | 
						|
 | 
						|
groupCallSettingsInner: IconButton(callButton) {
 | 
						|
	iconPosition: point(-1px, 22px);
 | 
						|
	icon: icon {{ "calls/calls_settings", groupCallIconFg }};
 | 
						|
	ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
		color: callMuteRipple;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallShareInner: IconButton(groupCallSettingsInner) {
 | 
						|
	icon: icon {{ "calls/group_calls_share", groupCallIconFg }};
 | 
						|
}
 | 
						|
groupCallVideoInner: IconButton(groupCallSettingsInner) {
 | 
						|
	icon: icon {{ "calls/call_camera_muted", groupCallIconFg }};
 | 
						|
	iconPosition: point(-1px, 16px);
 | 
						|
}
 | 
						|
groupCallHangupInner: IconButton(callButton) {
 | 
						|
	icon: icon {{ "calls/call_discard", groupCallIconFg }};
 | 
						|
	ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
		color: groupCallLeaveBgRipple;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallSettings: CallButton(callMicrophoneMute) {
 | 
						|
	button: groupCallSettingsInner;
 | 
						|
}
 | 
						|
groupCallShare: CallButton(groupCallSettings) {
 | 
						|
	button: groupCallShareInner;
 | 
						|
}
 | 
						|
groupCallVideo: CallButton(groupCallSettings) {
 | 
						|
	button: groupCallVideoInner;
 | 
						|
}
 | 
						|
groupCallVideoInnerActive: IconButton(groupCallVideoInner) {
 | 
						|
	icon: icon {{ "calls/call_camera_active", groupCallIconFg }};
 | 
						|
}
 | 
						|
groupCallVideoActive: CallButton(groupCallVideo) {
 | 
						|
	button: groupCallVideoInnerActive;
 | 
						|
}
 | 
						|
groupCallHangup: CallButton(callHangup) {
 | 
						|
	button: groupCallHangupInner;
 | 
						|
	bg: groupCallLeaveBg;
 | 
						|
	outerBg: groupCallLeaveBg;
 | 
						|
	label: callButtonLabel;
 | 
						|
}
 | 
						|
groupCallSettingsSmall: CallButton(groupCallSettings) {
 | 
						|
	button: IconButton(groupCallSettingsInner) {
 | 
						|
		width: 60px;
 | 
						|
		height: 68px;
 | 
						|
		rippleAreaPosition: point(8px, 12px);
 | 
						|
	}
 | 
						|
	bgPosition: point(8px, 12px);
 | 
						|
}
 | 
						|
groupCallHangupSmall: CallButton(groupCallHangup) {
 | 
						|
	button: IconButton(groupCallHangupInner) {
 | 
						|
		width: 60px;
 | 
						|
		height: 68px;
 | 
						|
		rippleAreaPosition: point(8px, 12px);
 | 
						|
	}
 | 
						|
	bgPosition: point(8px, 12px);
 | 
						|
}
 | 
						|
groupCallVideoSmall: CallButton(groupCallSettingsSmall) {
 | 
						|
	button: IconButton(groupCallVideoInner) {
 | 
						|
		width: 60px;
 | 
						|
		height: 68px;
 | 
						|
		rippleAreaPosition: point(8px, 12px);
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallVideoActiveSmall: CallButton(groupCallVideoSmall) {
 | 
						|
	button: IconButton(groupCallVideoInnerActive) {
 | 
						|
		width: 60px;
 | 
						|
		height: 68px;
 | 
						|
		rippleAreaPosition: point(8px, 12px);
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallScreenShareSmall: CallButton(groupCallSettingsSmall) {
 | 
						|
	button: IconButton(groupCallSettingsInner) {
 | 
						|
		icon: icon {{ "calls/calls_present", groupCallIconFg }};
 | 
						|
		width: 60px;
 | 
						|
		height: 68px;
 | 
						|
		rippleAreaPosition: point(8px, 12px);
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallMenuToggleSmall: CallButton(groupCallSettingsSmall) {
 | 
						|
	button: IconButton(groupCallSettingsInner) {
 | 
						|
		icon: icon {{ "calls/calls_more", groupCallIconFg }};
 | 
						|
		width: 60px;
 | 
						|
		height: 68px;
 | 
						|
		rippleAreaPosition: point(8px, 12px);
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallButtonSkip: 40px;
 | 
						|
groupCallButtonSkipSmall: 5px;
 | 
						|
groupCallButtonBottomSkip: 113px;
 | 
						|
groupCallButtonBottomSkipWide: 108px;
 | 
						|
groupCallControlsBackMargin: margins(10px, 0px, 10px, 0px);
 | 
						|
groupCallControlsBackRadius: 12px;
 | 
						|
groupCallMuteBottomSkip: 116px;
 | 
						|
 | 
						|
groupCallMembersMargin: margins(16px, 16px, 16px, 60px);
 | 
						|
groupCallMembersTopSkip: 6px;
 | 
						|
groupCallMembersBottomSkip: 80px;
 | 
						|
groupCallMembersShadowHeight: 160px;
 | 
						|
groupCallMembersFadeSkip: 10px;
 | 
						|
groupCallMembersFadeHeight: 100px;
 | 
						|
 | 
						|
groupCallTopBarUserpics: GroupCallUserpics {
 | 
						|
	size: 28px;
 | 
						|
	shift: 8px;
 | 
						|
	stroke: 2px;
 | 
						|
	align: align(left);
 | 
						|
}
 | 
						|
groupCallTopBarJoin: RoundButton(defaultActiveButton) {
 | 
						|
	width: -26px;
 | 
						|
	height: 26px;
 | 
						|
	textTop: 4px;
 | 
						|
}
 | 
						|
groupCallTopBarOpen: RoundButton(groupCallTopBarJoin) {
 | 
						|
	ripple: universalRippleAnimation;
 | 
						|
}
 | 
						|
groupCallBoxButton: RoundButton(defaultBoxButton) {
 | 
						|
	textFg: groupCallActiveFg;
 | 
						|
	textFgOver: groupCallActiveFg;
 | 
						|
	numbersTextFg: groupCallActiveFg;
 | 
						|
	numbersTextFgOver: groupCallActiveFg;
 | 
						|
	textBg: groupCallMembersBg;
 | 
						|
	textBgOver: groupCallMembersBgOver;
 | 
						|
 | 
						|
	ripple: groupCallRipple;
 | 
						|
}
 | 
						|
groupCallBox: Box(defaultBox) {
 | 
						|
	button: groupCallBoxButton;
 | 
						|
	margin: margins(0px, 56px, 0px, 10px);
 | 
						|
	bg: groupCallMembersBg;
 | 
						|
	title: FlatLabel(boxTitle) {
 | 
						|
		textFg: groupCallMembersFg;
 | 
						|
	}
 | 
						|
	titleAdditionalFg: groupCallMemberNotJoinedStatus;
 | 
						|
}
 | 
						|
groupCallLayerBox: Box(groupCallBox) {
 | 
						|
	buttonPadding: margins(8px, 8px, 8px, 8px);
 | 
						|
}
 | 
						|
groupCallLevelMeter: LevelMeter(defaultLevelMeter) {
 | 
						|
	height: 18px;
 | 
						|
	lineWidth: 3px;
 | 
						|
	lineSpacing: 5px;
 | 
						|
	lineCount: 44;
 | 
						|
	activeFg: groupCallActiveFg;
 | 
						|
	inactiveFg: groupCallMembersBgRipple;
 | 
						|
}
 | 
						|
groupCallCheckboxIcon: icon {{ "default_checkbox_check", groupCallMembersFg, point(4px, 7px) }};
 | 
						|
groupCallCheck: Check(defaultCheck) {
 | 
						|
	untoggledFg: groupCallMemberNotJoinedStatus;
 | 
						|
	toggledFg: groupCallActiveFg;
 | 
						|
	icon: groupCallCheckboxIcon;
 | 
						|
}
 | 
						|
groupCallRadio: Radio(defaultRadio) {
 | 
						|
	untoggledFg: groupCallMemberNotJoinedStatus;
 | 
						|
	toggledFg: groupCallActiveFg;
 | 
						|
}
 | 
						|
groupCallCheckbox: Checkbox(defaultBoxCheckbox) {
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
	textFgActive: groupCallMembersFg;
 | 
						|
	rippleBg: groupCallMembersBgRipple;
 | 
						|
	rippleBgActive: groupCallMembersBgRipple;
 | 
						|
}
 | 
						|
 | 
						|
groupCallSettingsToggle: Toggle(defaultToggle) {
 | 
						|
	toggledBg: groupCallMembersBg;
 | 
						|
	toggledFg: groupCallActiveFg;
 | 
						|
	untoggledBg: groupCallMembersBg;
 | 
						|
	untoggledFg: groupCallMemberNotJoinedStatus;
 | 
						|
}
 | 
						|
groupCallSettingsButton: SettingsButton(defaultSettingsButton) {
 | 
						|
	padding: margins(24px, 10px, 24px, 8px);
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
	textFgOver: groupCallMembersFg;
 | 
						|
	textBg: groupCallMembersBg;
 | 
						|
	textBgOver: groupCallMembersBgOver;
 | 
						|
	rightLabel: FlatLabel(defaultSettingsRightLabel) {
 | 
						|
		textFg: groupCallActiveFg;
 | 
						|
	}
 | 
						|
	toggle: groupCallSettingsToggle;
 | 
						|
	toggleOver: groupCallSettingsToggle;
 | 
						|
	ripple: groupCallRipple;
 | 
						|
}
 | 
						|
groupCallSettingsAttentionButton: SettingsButton(groupCallSettingsButton) {
 | 
						|
	textFg: attentionButtonFg;
 | 
						|
	textFgOver: attentionButtonFgOver;
 | 
						|
}
 | 
						|
groupCallBoxLabel: FlatLabel(boxLabel) {
 | 
						|
	minWidth: 200px;
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
}
 | 
						|
groupCallJoinAsLabel: FlatLabel(defaultFlatLabel) {
 | 
						|
	minWidth: 272px;
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
}
 | 
						|
groupCallJoinAsWidth: 330px;
 | 
						|
groupCallJoinAsTextTop: 4px;
 | 
						|
groupCallJoinAsNameTop: 23px;
 | 
						|
groupCallJoinAsPadding: margins(12px, 8px, 12px, 7px);
 | 
						|
groupCallJoinAsPhotoSize: 30px;
 | 
						|
 | 
						|
groupCallRowBlobMinRadius: 27px;
 | 
						|
groupCallRowBlobMaxRadius: 29px;
 | 
						|
 | 
						|
groupCallDelayLabel: LabelSimple(defaultLabelSimple) {
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
	font: boxTextFont;
 | 
						|
}
 | 
						|
groupCallDelayLabelMargin: margins(22px, 10px, 20px, 5px);
 | 
						|
groupCallDelaySlider: MediaSlider(defaultContinuousSlider) {
 | 
						|
	seekSize: size(15px, 15px);
 | 
						|
	activeFg: groupCallActiveFg;
 | 
						|
	inactiveFg: groupCallMemberNotJoinedStatus;
 | 
						|
	activeFgOver: groupCallActiveFg;
 | 
						|
	inactiveFgOver: groupCallMemberNotJoinedStatus;
 | 
						|
	activeFgDisabled: groupCallActiveFg;
 | 
						|
	inactiveFgDisabled: groupCallMemberNotJoinedStatus;
 | 
						|
	receivedTillFg: groupCallMemberNotJoinedStatus;
 | 
						|
}
 | 
						|
groupCallDelayMargin: margins(22px, 5px, 20px, 10px);
 | 
						|
 | 
						|
groupCallTitleButton: IconButton {
 | 
						|
	width: windowTitleButtonWidth;
 | 
						|
	height: windowTitleHeight;
 | 
						|
	iconPosition: point(0px, 0px);
 | 
						|
}
 | 
						|
groupCallTitleMinimizeIcon: icon {
 | 
						|
	{ "title_button_minimize", groupCallMemberNotJoinedStatus },
 | 
						|
};
 | 
						|
groupCallTitleMinimizeIconOver: icon {
 | 
						|
	{ windowTitleButtonSize, groupCallMembersBgOver },
 | 
						|
	{ "title_button_minimize", groupCallMembersFg },
 | 
						|
};
 | 
						|
groupCallTitleMaximizeIcon: icon {
 | 
						|
	{ "title_button_maximize", groupCallMemberNotJoinedStatus },
 | 
						|
};
 | 
						|
groupCallTitleMaximizeIconOver: icon {
 | 
						|
	{ windowTitleButtonSize, groupCallMembersBgOver },
 | 
						|
	{ "title_button_maximize", groupCallMembersFg },
 | 
						|
};
 | 
						|
groupCallTitleRestoreIcon: icon {
 | 
						|
	{ "title_button_restore", groupCallMemberNotJoinedStatus },
 | 
						|
};
 | 
						|
groupCallTitleRestoreIconOver: icon {
 | 
						|
	{ windowTitleButtonSize, groupCallMembersBgOver },
 | 
						|
	{ "title_button_restore", groupCallMembersFg },
 | 
						|
};
 | 
						|
groupCallTitleCloseIcon: icon {
 | 
						|
	{ "title_button_close", groupCallMemberNotJoinedStatus },
 | 
						|
};
 | 
						|
groupCallTitleCloseIconOver: icon {
 | 
						|
	{ windowTitleButtonSize, titleButtonCloseBgOver },
 | 
						|
	{ "title_button_close", titleButtonCloseFgOver },
 | 
						|
};
 | 
						|
groupCallTitle: WindowTitle(defaultWindowTitle) {
 | 
						|
	height: 0px;
 | 
						|
	bg: groupCallBg;
 | 
						|
	bgActive: groupCallBg;
 | 
						|
	fg: transparent;
 | 
						|
	fgActive: transparent;
 | 
						|
	minimize: IconButton(groupCallTitleButton) {
 | 
						|
		icon: groupCallTitleMinimizeIcon;
 | 
						|
		iconOver: groupCallTitleMinimizeIconOver;
 | 
						|
	}
 | 
						|
	minimizeIconActive: groupCallTitleMinimizeIcon;
 | 
						|
	minimizeIconActiveOver: groupCallTitleMinimizeIconOver;
 | 
						|
	maximize: IconButton(groupCallTitleButton) {
 | 
						|
		icon: groupCallTitleMaximizeIcon;
 | 
						|
		iconOver: groupCallTitleMaximizeIconOver;
 | 
						|
	}
 | 
						|
	maximizeIconActive: groupCallTitleMaximizeIcon;
 | 
						|
	maximizeIconActiveOver: groupCallTitleMaximizeIconOver;
 | 
						|
	restoreIcon: groupCallTitleRestoreIcon;
 | 
						|
	restoreIconOver: groupCallTitleRestoreIconOver;
 | 
						|
	restoreIconActive: groupCallTitleRestoreIcon;
 | 
						|
	restoreIconActiveOver: groupCallTitleRestoreIconOver;
 | 
						|
	close: IconButton(groupCallTitleButton) {
 | 
						|
		icon: groupCallTitleCloseIcon;
 | 
						|
		iconOver: groupCallTitleCloseIconOver;
 | 
						|
	}
 | 
						|
	closeIconActive: groupCallTitleCloseIcon;
 | 
						|
	closeIconActiveOver: groupCallTitleCloseIconOver;
 | 
						|
}
 | 
						|
groupCallPinOnTop: IconButton(groupCallTitleButton) {
 | 
						|
	icon: icon{{ "calls/navbar_pin", groupCallMemberNotJoinedStatus }};
 | 
						|
	iconOver: icon{{ "calls/navbar_pin", groupCallMembersFg }};
 | 
						|
	iconPosition: point(0px, 2px);
 | 
						|
}
 | 
						|
groupCallPinnedOnTop: icon{{ "calls/navbar_pin_filled", groupCallMembersFg }};
 | 
						|
 | 
						|
groupCallMajorBlobMaxRadius: 4px;
 | 
						|
 | 
						|
groupCallMinorBlobIdleRadius: 3px;
 | 
						|
groupCallMinorBlobMaxRadius: 12px;
 | 
						|
 | 
						|
groupCallMuteCrossLine: CrossLineAnimation {
 | 
						|
	fg: groupCallIconFg;
 | 
						|
	icon: icon {{ "calls/volume/speaker", groupCallIconFg }};
 | 
						|
	startPosition: point(2px, 5px);
 | 
						|
	endPosition: point(16px, 19px);
 | 
						|
	stroke: 2px;
 | 
						|
}
 | 
						|
 | 
						|
groupCallMenuSpeakerArcsSkip: 1px;
 | 
						|
groupCallMenuVolumePadding: margins(17px, 6px, 17px, 5px);
 | 
						|
groupCallMenuVolumeMargin: margins(55px, 0px, 15px, 0px);
 | 
						|
groupCallMenuVolumeSlider: MediaSlider(defaultContinuousSlider) {
 | 
						|
	activeFg: groupCallMembersFg;
 | 
						|
	inactiveFg: groupCallMembersBgOver;
 | 
						|
	activeFgOver: groupCallMembersFg;
 | 
						|
	inactiveFgOver: groupCallMembersBgOver;
 | 
						|
	activeFgDisabled: groupCallMembersBgOver;
 | 
						|
	receivedTillFg: groupCallMembersBgOver;
 | 
						|
	width: 7px;
 | 
						|
	seekSize: size(7px, 7px);
 | 
						|
}
 | 
						|
 | 
						|
groupCallSpeakerArcsAnimation: ArcsAnimation {
 | 
						|
	fg: groupCallIconFg;
 | 
						|
	stroke: 2px;
 | 
						|
	space: 4px;
 | 
						|
	duration: 200;
 | 
						|
	deltaAngle: 60;
 | 
						|
	deltaHeight: 6px;
 | 
						|
	deltaWidth: 7px;
 | 
						|
	startHeight: 3px;
 | 
						|
	startWidth: 0px;
 | 
						|
}
 | 
						|
 | 
						|
groupCallStatusSpeakerIcon: icon {{ "calls/volume/speaker_small", groupCallIconFg }};
 | 
						|
groupCallStatusSpeakerArcsSkip: 3px;
 | 
						|
groupCallStatusSpeakerArcsAnimation: ArcsAnimation(groupCallSpeakerArcsAnimation) {
 | 
						|
	deltaAngle: 68;
 | 
						|
	space: 3px;
 | 
						|
	deltaHeight: 5px;
 | 
						|
	deltaWidth: 4px;
 | 
						|
	startHeight: 1px;
 | 
						|
}
 | 
						|
 | 
						|
groupCallShareMutedMargin: margins(16px, 16px, 16px, 8px);
 | 
						|
 | 
						|
callTopBarMuteCrossLine: CrossLineAnimation {
 | 
						|
	fg: callBarFg;
 | 
						|
	icon: icon {{ "calls/call_record_active", callBarFg }};
 | 
						|
	startPosition: point(11px, 8px);
 | 
						|
	endPosition: point(26px, 23px);
 | 
						|
	stroke: 2px;
 | 
						|
}
 | 
						|
 | 
						|
groupCallStartsIn: FlatLabel(defaultFlatLabel) {
 | 
						|
	style: TextStyle(defaultTextStyle) {
 | 
						|
		font: font(20px semibold);
 | 
						|
	}
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
}
 | 
						|
groupCallScheduledBodyHeight: 200px;
 | 
						|
groupCallStartsWhen: groupCallStartsIn;
 | 
						|
groupCallStartsInTop: 10px;
 | 
						|
groupCallStartsWhenTop: 160px;
 | 
						|
groupCallCountdownFont: font(64px semibold);
 | 
						|
groupCallCountdownTop: 52px;
 | 
						|
 | 
						|
desktopCaptureMargins: margins(12px, 8px, 12px, 6px);
 | 
						|
desktopCaptureSourceSize: size(235px, 165px);
 | 
						|
desktopCaptureSourceSkips: size(2px, 10px);
 | 
						|
desktopCaptureSourceTitle: WindowTitle(groupCallTitle) {
 | 
						|
	bg: groupCallMembersBgOver;
 | 
						|
	bgActive: groupCallMembersBgOver;
 | 
						|
	height: windowTitleHeight;
 | 
						|
}
 | 
						|
desktopCapturePadding: margins(7px, 7px, 7px, 33px);
 | 
						|
desktopCaptureLabelBottom: 7px;
 | 
						|
desktopCaptureLabel: FlatLabel(defaultFlatLabel) {
 | 
						|
	minWidth: 200px;
 | 
						|
	maxHeight: 20px;
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
	style: semiboldTextStyle;
 | 
						|
}
 | 
						|
desktopCaptureCancel: RoundButton(defaultBoxButton) {
 | 
						|
	textFg: groupCallActiveFg;
 | 
						|
	textFgOver: groupCallActiveFg;
 | 
						|
	numbersTextFg: groupCallActiveFg;
 | 
						|
	numbersTextFgOver: groupCallActiveFg;
 | 
						|
	textBg: groupCallMembersBg;
 | 
						|
	textBgOver: groupCallMembersBgOver;
 | 
						|
 | 
						|
	ripple: groupCallRipple;
 | 
						|
}
 | 
						|
desktopCaptureFinish: RoundButton(desktopCaptureCancel) {
 | 
						|
	textFg: groupCallMemberMutedIcon;
 | 
						|
	textFgOver: groupCallMemberMutedIcon;
 | 
						|
}
 | 
						|
desktopCaptureSubmit: RoundButton(desktopCaptureCancel) {
 | 
						|
	textFg: groupCallIconFg;
 | 
						|
	textFgOver: groupCallIconFg;
 | 
						|
	numbersTextFg: groupCallIconFg;
 | 
						|
	numbersTextFgOver: groupCallIconFg;
 | 
						|
	textBg: groupCallMuted1;
 | 
						|
	textBgOver: groupCallMuted1;
 | 
						|
 | 
						|
	ripple: universalRippleAnimation;
 | 
						|
}
 | 
						|
desktopCaptureWithAudio: Checkbox(defaultCheckbox) {
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
	textFgActive: groupCallMembersFg;
 | 
						|
	rippleBg: groupCallMembersBgRipple;
 | 
						|
	rippleBgActive: groupCallMembersBgRipple;
 | 
						|
	style: semiboldTextStyle;
 | 
						|
}
 | 
						|
 | 
						|
groupCallNarrowSkip: 9px;
 | 
						|
groupCallNarrowMembersWidth: 204px;
 | 
						|
groupCallNarrowVideoHeight: 120px;
 | 
						|
groupCallWideModeWidthMin: 600px;
 | 
						|
groupCallWideModeSize: size(960px, 580px);
 | 
						|
groupCallNarrowInactiveCrossLine: CrossLineAnimation {
 | 
						|
	fg: groupCallMemberNotJoinedStatus;
 | 
						|
	icon: icon {{ "calls/video_mini_mute", groupCallMemberNotJoinedStatus }};
 | 
						|
	startPosition: point(3px, 0px);
 | 
						|
	endPosition: point(13px, 12px);
 | 
						|
	stroke: 3px;
 | 
						|
	strokeDenominator: 2;
 | 
						|
}
 | 
						|
groupCallNarrowColoredCrossLine: CrossLineAnimation(groupCallNarrowInactiveCrossLine) {
 | 
						|
	fg: groupCallMemberNotJoinedStatus;
 | 
						|
	icon: icon {{ "calls/video_mini_mute", groupCallMemberActiveStatus }};
 | 
						|
}
 | 
						|
groupCallNarrowRaisedHand: icon {{ "calls/video_mini_speak", groupCallMemberInactiveStatus }};
 | 
						|
groupCallNarrowCameraIcon: icon {{ "calls/video_mini_video", groupCallMemberNotJoinedStatus }};
 | 
						|
groupCallNarrowScreenIcon: icon {{ "calls/video_mini_screencast", groupCallMemberNotJoinedStatus }};
 | 
						|
groupCallNarrowInvitedIcon: icon {{ "calls/video_mini_invited", groupCallMemberNotJoinedStatus }};
 | 
						|
groupCallNarrowIconPosition: point(-4px, 2px);
 | 
						|
groupCallNarrowIconSkip: 15px;
 | 
						|
groupCallOutline: 2px;
 | 
						|
groupCallVideoCrossLine: CrossLineAnimation(groupCallMemberColoredCrossLine) {
 | 
						|
	fg: groupCallVideoTextFg;
 | 
						|
	icon: icon {{ "calls/video_over_mute", groupCallVideoTextFg }};
 | 
						|
}
 | 
						|
 | 
						|
GroupCallVideoTile {
 | 
						|
	shadowHeight: pixels;
 | 
						|
	namePosition: point;
 | 
						|
	pin: CrossLineAnimation;
 | 
						|
	pinPosition: point;
 | 
						|
	pinPadding: margins;
 | 
						|
	pinTextPosition: point;
 | 
						|
	back: icon;
 | 
						|
	iconPosition: point;
 | 
						|
}
 | 
						|
 | 
						|
groupCallVideoTile: GroupCallVideoTile {
 | 
						|
	shadowHeight: 40px;
 | 
						|
	namePosition: point(15px, 8px);
 | 
						|
	pin: CrossLineAnimation {
 | 
						|
		fg: groupCallVideoTextFg;
 | 
						|
		icon: icon {{ "calls/video_over_pin", groupCallVideoTextFg }};
 | 
						|
		startPosition: point(7px, 4px);
 | 
						|
		endPosition: point(17px, 14px);
 | 
						|
		stroke: 3px;
 | 
						|
		strokeDenominator: 2;
 | 
						|
	}
 | 
						|
	pinPosition: point(18px, 18px);
 | 
						|
	pinPadding: margins(6px, 2px, 12px, 1px);
 | 
						|
	pinTextPosition: point(1px, 3px);
 | 
						|
	back: icon {{ "calls/video_back", groupCallVideoTextFg }};
 | 
						|
	iconPosition: point(10px, 5px);
 | 
						|
}
 | 
						|
 | 
						|
groupCallVideoSmallSkip: 4px;
 | 
						|
groupCallVideoLargeSkip: 6px;
 | 
						|
groupCallVideoPlaceholderHeight: 212px;
 | 
						|
groupCallVideoPlaceholderIconTop: 50px;
 | 
						|
groupCallVideoPlaceholderTextTop: 120px;
 | 
						|
 | 
						|
groupCallTooltip: Tooltip(defaultTooltip) {
 | 
						|
	textBg: groupCallMembersBg;
 | 
						|
	textFg: groupCallMembersFg;
 | 
						|
	textBorder: groupCallMembersBgOver;
 | 
						|
}
 | 
						|
groupCallNiceTooltip: ImportantTooltip(defaultImportantTooltip) {
 | 
						|
	bg: importantTooltipBg;
 | 
						|
	padding: margins(10px, 3px, 10px, 5px);
 | 
						|
	radius: 4px;
 | 
						|
	arrow: 4px;
 | 
						|
}
 | 
						|
groupCallNiceTooltipLabel: defaultImportantTooltipLabel;
 | 
						|
groupCallStickedTooltip: ImportantTooltip(groupCallNiceTooltip) {
 | 
						|
	padding: margins(10px, 1px, 6px, 3px);
 | 
						|
}
 | 
						|
groupCallStickedTooltipClose: IconButton(defaultIconButton) {
 | 
						|
	width: 20px;
 | 
						|
	height: 20px;
 | 
						|
	iconPosition: point(4px, 3px);
 | 
						|
	icon: icon {{ "calls/video_tooltip", importantTooltipFg }};
 | 
						|
	iconOver: icon {{ "calls/video_tooltip", importantTooltipFg }};
 | 
						|
	ripple: emptyRippleAnimation;
 | 
						|
}
 | 
						|
groupCallNiceTooltipTop: 4px;
 | 
						|
groupCallPaused: icon {{ "calls/video_large_paused", groupCallVideoTextFg }};
 | 
						|
 | 
						|
groupCallRecordingSubLabel: FlatLabel(boxDividerLabel) {
 | 
						|
	margin: margins(0px, 0px, 0px, 0px);
 | 
						|
	textFg: groupCallMemberNotJoinedStatus;
 | 
						|
	align: align(top);
 | 
						|
}
 | 
						|
groupCallRecordingInfoMargins: margins(0px, 22px, 0px, 22px);
 | 
						|
groupCallRecordingSubLabelMargins: margins(8px, 22px, 8px, 22px);
 | 
						|
groupCallRecordingAudioSkip: 23px;
 | 
						|
groupCallRecordingSelectWidth: 2px;
 | 
						|
groupCallRecordingInfoHeight: 204px;
 | 
						|
 | 
						|
groupCallRtmpCopyButton: RoundButton(defaultActiveButton) {
 | 
						|
	height: 32px;
 | 
						|
	width: -26px;
 | 
						|
 | 
						|
	textTop: 7px;
 | 
						|
}
 | 
						|
groupCallRtmpCopyButtonTopSkip: 12px;
 | 
						|
groupCallRtmpCopyButtonBottomSkip: 15px;
 | 
						|
 | 
						|
groupCallRtmpShowButton: IconButton(defaultIconButton) {
 | 
						|
	width: 32px;
 | 
						|
	height: 32px;
 | 
						|
 | 
						|
	icon: icon {{ "menu/show_in_chat", menuIconFg }};
 | 
						|
	iconOver: icon {{ "menu/show_in_chat", menuIconFgOver }};
 | 
						|
	iconPosition: point(4px, 4px);
 | 
						|
 | 
						|
	rippleAreaPosition: point(0px, 0px);
 | 
						|
	rippleAreaSize: 32px;
 | 
						|
	ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
		color: windowBgOver;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallSettingsRtmpShowButton: IconButton(groupCallRtmpShowButton) {
 | 
						|
	ripple: groupCallRipple;
 | 
						|
}
 | 
						|
groupCallSubsectionTitle: FlatLabel(defaultSubsectionTitle) {
 | 
						|
	textFg: groupCallActiveFg;
 | 
						|
}
 | 
						|
groupCallAttentionBoxButton: RoundButton(groupCallBoxButton) {
 | 
						|
	textFg: attentionButtonFg;
 | 
						|
	textFgOver: attentionButtonFgOver;
 | 
						|
}
 | 
						|
 | 
						|
groupCallRtmpUrlSkip: 1px;
 | 
						|
groupCallRtmpKeySubsectionTitleSkip: 8px;
 | 
						|
groupCallRtmpSubsectionTitleAddPadding: margins(0px, -1px, 0px, -4px);
 | 
						|
groupCallRtmpShowButtonPosition: point(21px, -5px);
 | 
						|
groupCallDividerBg: groupCallMembersBgRipple;
 | 
						|
 | 
						|
groupCallScheduleDateField: InputField(groupCallField) {
 | 
						|
	textMargins: margins(2px, 0px, 2px, 0px);
 | 
						|
	placeholderScale: 0.;
 | 
						|
	heightMin: 30px;
 | 
						|
	textAlign: align(top);
 | 
						|
	font: font(14px);
 | 
						|
}
 | 
						|
groupCallScheduleTimeField: InputField(groupCallScheduleDateField) {
 | 
						|
	textBg: groupCallMembersBg;
 | 
						|
	border: 0px;
 | 
						|
	borderActive: 0px;
 | 
						|
	heightMin: 28px;
 | 
						|
	placeholderFont: font(14px);
 | 
						|
}
 | 
						|
 | 
						|
//
 | 
						|
groupCallCalendarPreviousDisabled: icon {{ "calendar_down-flip_vertical", groupCallMemberNotJoinedStatus }};
 | 
						|
groupCallCalendarNextDisabled: icon {{ "calendar_down", groupCallMemberNotJoinedStatus }};
 | 
						|
groupCallCalendarPrevious: IconButton(calendarPrevious) {
 | 
						|
	icon: icon {{ "calendar_down-flip_vertical", groupCallMembersFg }};
 | 
						|
	ripple: RippleAnimation(defaultRippleAnimation) {
 | 
						|
		color: groupCallMembersBgRipple;
 | 
						|
	}
 | 
						|
}
 | 
						|
groupCallCalendarNext: IconButton(groupCallCalendarPrevious) {
 | 
						|
	icon: icon {{ "calendar_down", groupCallMembersFg }};
 | 
						|
}
 | 
						|
groupCallCalendarColors: CalendarColors {
 | 
						|
	dayTextColor: groupCallMembersFg;
 | 
						|
	dayTextGrayedOutColor: groupCallMemberNotJoinedStatus;
 | 
						|
 | 
						|
	iconButtonNext: groupCallCalendarNext;
 | 
						|
	iconButtonNextDisabled: groupCallCalendarNextDisabled;
 | 
						|
	iconButtonPrevious: groupCallCalendarPrevious;
 | 
						|
	iconButtonPreviousDisabled: groupCallCalendarPreviousDisabled;
 | 
						|
 | 
						|
	iconButtonRippleColorDisabled: groupCallMembersBgRipple;
 | 
						|
 | 
						|
	rippleColor: groupCallMembersBgRipple;
 | 
						|
	rippleColorHighlighted: groupCallMembersBgRipple;
 | 
						|
	rippleGrayedOutColor: groupCallMembersBgRipple;
 | 
						|
 | 
						|
	titleTextColor: groupCallMembersFg;
 | 
						|
}
 | 
						|
//
 |