wip - refacts

main
Paul Schneider 9 years ago
parent 7cf2630424
commit 3efcfc2e5f
68 changed files with 577 additions and 9832 deletions

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{07B9A14B-2D22-4B97-A63C-12B77A7DBB4F}</ProjectGuid>
<OutputType>WinExe</OutputType>
<RootNamespace>CrossZicMoove.Desktop</RootNamespace>
<AssemblyName>CrossZicMoove.Desktop</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>full</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="Eto">
<HintPath>..\..\..\.config\NuGet\packages\Eto.Forms.2.2.0\lib\net45\Eto.dll</HintPath>
</Reference>
<Reference Include="Eto.Gtk2">
<HintPath>..\..\..\.config\NuGet\packages\Eto.Platform.Gtk.2.2.0\lib\net45\Eto.Gtk2.dll</HintPath>
</Reference>
<Reference Include="Eto.Gtk3">
<HintPath>..\..\..\.config\NuGet\packages\Eto.Platform.Gtk3.2.2.0\lib\net45\Eto.Gtk3.dll</HintPath>
</Reference>
<Reference Include="Eto.WinForms">
<HintPath>..\..\..\.config\NuGet\packages\Eto.Platform.Windows.2.2.0\lib\net45\Eto.WinForms.dll</HintPath>
</Reference>
<Reference Include="Eto.Wpf">
<HintPath>..\..\..\.config\NuGet\packages\Eto.Platform.Wpf.2.2.0\lib\net45\Eto.Wpf.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup>
<ProjectReference Include="..\CrossZicMoove\CrossZicMoove.csproj">
<Project>{3E5584DB-F061-4E7F-B78B-E1830D16E529}</Project>
<Name>CrossZicMoove</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
</Project>

@ -0,0 +1,15 @@
using System;
using Eto;
using Eto.Forms;
namespace CrossZicMoove.Desktop
{
public class Program
{
[STAThread]
public static void Main (string[] args)
{
new Application (Platform.Detect).Run (new MainForm ());
}
}
}

@ -0,0 +1,27 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle ("CrossZicMoove.Desktop")]
[assembly: AssemblyDescription ("")]
[assembly: AssemblyConfiguration ("")]
[assembly: AssemblyCompany ("")]
[assembly: AssemblyProduct ("")]
[assembly: AssemblyCopyright ("Paul Schneider")]
[assembly: AssemblyTrademark ("")]
[assembly: AssemblyCulture ("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion ("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Eto.Forms" version="2.2.0" targetFramework="net45" />
<package id="Eto.Platform.Gtk" version="2.2.0" targetFramework="net45" />
<package id="Eto.Platform.Gtk3" version="2.2.0" targetFramework="net45" />
<package id="Eto.Platform.Windows" version="2.2.0" targetFramework="net45" />
<package id="Eto.Platform.Wpf" version="2.2.0" targetFramework="net45" />
</packages>

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{3E5584DB-F061-4E7F-B78B-E1830D16E529}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>CrossZicMoove</RootNamespace>
<AssemblyName>CrossZicMoove</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>full</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="MainForm.xeto.cs">
<DependentUpon>MainForm.xeto</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="MainForm.xeto" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup>
<Reference Include="Eto">
<HintPath>..\..\..\.config\NuGet\packages\Eto.Forms.2.2.0\lib\net45\Eto.dll</HintPath>
</Reference>
<Reference Include="Portable.Xaml">
<HintPath>..\..\..\.config\NuGet\packages\Portable.Xaml.0.6.1\lib\portable-net45+win+wpa81+wp80+MonoAndroid10+xamarinios10+MonoTouch10\Portable.Xaml.dll</HintPath>
</Reference>
<Reference Include="Eto.Serialization.Xaml">
<HintPath>..\..\..\.config\NuGet\packages\Eto.Serialization.Xaml.2.2.0\lib\net45\Eto.Serialization.Xaml.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\YavscLib\YavscLib.csproj">
<Project>{67F9D3A8-F71E-4428-913F-C37AE82CDB24}</Project>
<Name>YavscLib</Name>
</ProjectReference>
</ItemGroup>
</Project>

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://schema.picoe.ca/eto.forms" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="My Eto Form" ClientSize="400, 350">
<StackLayout>
<Label>Some Content</Label>
</StackLayout>
<Form.Menu>
<MenuBar>
<ButtonMenuItem Text="F&amp;ile">
<ButtonMenuItem Text="Click Me!" Click="HandleClickMe" />
</ButtonMenuItem>
<MenuBar.ApplicationItems>
<ButtonMenuItem Text="Preferences.." Shortcut="{On Control+O, Mac=Application+Comma}" />
</MenuBar.ApplicationItems>
<MenuBar.QuitItem>
<ButtonMenuItem Text="Quit!" Shortcut="CommonModifier+Q" Click="HandleQuit" />
</MenuBar.QuitItem>
</MenuBar>
</Form.Menu>
<Form.ToolBar>
<ToolBar>
<ButtonToolItem Text="Click Me!" Click="HandleClickMe" />
</ToolBar>
</Form.ToolBar>
</Form>

@ -0,0 +1,27 @@
using System;
using System.Collections.Generic;
using Eto.Forms;
using Eto.Drawing;
using Eto.Serialization.Xaml;
namespace CrossZicMoove
{
public class MainForm : Form
{
public MainForm ()
{
XamlReader.Load (this);
}
protected void HandleClickMe (object sender, EventArgs e)
{
MessageBox.Show ("I was clicked!");
}
protected void HandleQuit (object sender, EventArgs e)
{
Application.Instance.Quit ();
}
}
}

@ -0,0 +1,27 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle ("CrossZicMoove")]
[assembly: AssemblyDescription ("")]
[assembly: AssemblyConfiguration ("")]
[assembly: AssemblyCompany ("")]
[assembly: AssemblyProduct ("")]
[assembly: AssemblyCopyright ("Paul Schneider")]
[assembly: AssemblyTrademark ("")]
[assembly: AssemblyCulture ("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion ("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Eto.Forms" version="2.2.0" targetFramework="net45" />
<package id="Eto.Serialization.Xaml" version="2.2.0" targetFramework="net45" />
<package id="Portable.Xaml" version="0.6.1" targetFramework="net45" />
</packages>

@ -0,0 +1,26 @@
using System;
using System.Threading.Tasks;
using Microsoft.AspNet.Mvc.ModelBinding;
namespace Yavsc
{
public class MyDecimalModelBinder : IModelBinder
{
public async Task<ModelBindingResult> BindModelAsync(ModelBindingContext bindingContext)
{
ValueProviderResult valueResult = bindingContext.ValueProvider
.GetValue(bindingContext.ModelName);
decimal actualValue ;
ModelStateEntry modelState = new ModelStateEntry();
try {
actualValue = Decimal.Parse(valueResult.FirstValue, System.Globalization.NumberStyles.AllowDecimalPoint);
return await ModelBindingResult.SuccessAsync(bindingContext.ModelName,actualValue);
}
catch (Exception ) {
}
return await ModelBindingResult.FailedAsync(bindingContext.ModelName);
}
}
}

@ -46,10 +46,10 @@ namespace Yavsc
} }
if (culture != null) { if (culture != null) {
#if DNX451 #if DNX451
System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo(culture); // System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo(culture);
System.Threading.Thread.CurrentThread.CurrentUICulture = new CultureInfo(culture); System.Threading.Thread.CurrentThread.CurrentUICulture = new CultureInfo(culture);
#else #else
CultureInfo.CurrentCulture = new CultureInfo(culture); // CultureInfo.CurrentCulture = new CultureInfo(culture);
CultureInfo.CurrentUICulture = new CultureInfo(culture); CultureInfo.CurrentUICulture = new CultureInfo(culture);
#endif #endif
} }

@ -1,15 +0,0 @@
using System.Collections.Generic;
namespace Yavsc.Interfaces
{
public interface IApplicationUser
{
IAccountBalance AccountBalance { get; set; }
IList<IContact> Book { get; set; }
IList<ICircle> Circles { get; set; }
string DedicatedGoogleCalendar { get; set; }
IList<IGoogleCloudMobileDeclaration> Devices { get; set; }
ILocation PostalAddress { get; set; }
IList<IBlog> Posts { get; set; }
}
}

@ -1,4 +1,6 @@
namespace Yavsc.Interfaces using YavscLib;
namespace Yavsc.Interfaces
{ {
public interface ICircleMember: IIdentified<long> public interface ICircleMember: IIdentified<long>
{ {

@ -1,11 +0,0 @@
namespace Yavsc.Interfaces
{
public interface IFormNode
{
T GetControl<T>();
bool IsUIControl { get; }
bool IsInputControl { get; }
}
}

@ -1,4 +1,6 @@
namespace Yavsc.Interfaces using YavscLib;
namespace Yavsc.Interfaces
{ {
public interface IGCMDeclaration public interface IGCMDeclaration
{ {

@ -1,9 +0,0 @@
namespace Yavsc.Interfaces
{
public interface IAccountBalance
{
long ContactCredits { get; set; }
decimal Credits { get; set; }
string UserId { get; set; }
}
}

@ -1,13 +0,0 @@
using System.Collections.Generic;
namespace Yavsc.Interfaces
{
public interface ICircle
{
long Id { get; set; }
IList<ICircleMember> Members { get; set; }
string Name { get; set; }
IApplicationUser Owner { get; set; }
string OwnerId { get; set; }
}
}

@ -2,7 +2,6 @@
{ {
public interface IContact public interface IContact
{ {
IApplicationUser Owner { get; set; }
string OwnerId { get; set; } string OwnerId { get; set; }
string UserId { get; set; } string UserId { get; set; }
} }

@ -1,28 +0,0 @@
//
// INominative.cs
//
// Author:
// Paul Schneider <paul@pschneider.fr>
//
// Copyright (c) 2015 GNU GPL
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
namespace Yavsc.Interfaces
{
public interface IPerformerSpecified {
string PerformerName { get; set; }
}
}

@ -35,6 +35,8 @@ namespace Yavsc.Models.Workflow
set; set;
get; get;
} }
[Display(Name="GiveAnExplicitReason")]
public string Reason { get; set; } public string Reason { get; set; }
public RdvQuery() public RdvQuery()

@ -91,7 +91,7 @@ namespace Yavsc
{ {
var supportedCultures = new[] var supportedCultures = new[]
{ {
new CultureInfo("fr") new CultureInfo("en")
}; };
var supportedUICultures = new[] var supportedUICultures = new[]
{ {
@ -126,7 +126,7 @@ namespace Yavsc
services.Add(ServiceDescriptor.Singleton(typeof(IOptions<SmtpSettings>), typeof(OptionsManager<SmtpSettings>))); services.Add(ServiceDescriptor.Singleton(typeof(IOptions<SmtpSettings>), typeof(OptionsManager<SmtpSettings>)));
services.Add(ServiceDescriptor.Singleton(typeof(IOptions<GoogleAuthSettings>), typeof(OptionsManager<GoogleAuthSettings>))); services.Add(ServiceDescriptor.Singleton(typeof(IOptions<GoogleAuthSettings>), typeof(OptionsManager<GoogleAuthSettings>)));
services.Add(ServiceDescriptor.Singleton(typeof(IOptions<CompanyInfoSettings>), typeof(OptionsManager<CompanyInfoSettings>))); services.Add(ServiceDescriptor.Singleton(typeof(IOptions<CompanyInfoSettings>), typeof(OptionsManager<CompanyInfoSettings>)));
services.Add(ServiceDescriptor.Singleton(typeof(IOptions<RequestLocalizationOptions>), typeof(OptionsManager<RequestLocalizationOptions>)));
// DataProtection // DataProtection
ConfigureProtectionServices(services); ConfigureProtectionServices(services);
@ -223,6 +223,7 @@ namespace Yavsc
{ {
options.ResourcesPath = "Resources"; options.ResourcesPath = "Resources";
}); });
} }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.

@ -1,15 +1,15 @@
@model Yavsc.Models.Haircut.BrusherProfile @model Yavsc.Models.Haircut.BrusherProfile
@{ @{
ViewData["Title"] = "Edit"; ViewData["Title"] = "Edition du profile coiffeu(se|r)";
} }
<h2>Edit</h2> <h1>@ViewData["Title"]</h1>
<form asp-action="Edit"> <form asp-action="Edit">
<div class="form-horizontal"> <div class="form-horizontal">
<h4>BrusherProfile</h4>
<hr /> <hr />
@Html.ValidationSummary()
<fieldset><legend>Disponibilité</legend> <fieldset><legend>Disponibilité</legend>
<div class="form-group"> <div class="form-group">
<label asp-for="StartOfTheDay" class="col-md-2 control-label"></label> <label asp-for="StartOfTheDay" class="col-md-2 control-label"></label>
@ -35,8 +35,10 @@
</fieldset> </fieldset>
<fieldset><legend>Grille tarifaire</legend> <fieldset><legend>Grille tarifaire</legend>
<h2>Divers</h2>
<div asp-validation-summary="ValidationSummary.ModelOnly" class="text-danger"></div> <div asp-validation-summary="ValidationSummary.ModelOnly" class="text-danger"></div>
<input type="hidden" asp-for="UserId" /> <input type="hidden" asp-for="UserId" />
<div class="form-group"> <div class="form-group">
<label asp-for="CarePrice" class="col-md-2 control-label"></label> <label asp-for="CarePrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
@ -45,19 +47,17 @@
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="HalfBalayagePrice" class="col-md-2 control-label"></label> <label asp-for="ShampooPrice" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="HalfBalayagePrice" class="form-control" />
<span asp-validation-for="HalfBalayagePrice" class="text-danger" />
</div>
</div>
<div class="form-group">
<label asp-for="HalfBrushingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="HalfBrushingPrice" class="form-control" /> <input asp-for="ShampooPrice" class="form-control" />
<span asp-validation-for="HalfBrushingPrice" class="text-danger" /> <span asp-validation-for="ShampooPrice" class="text-danger" />
</div> </div>
</div> </div>
<h2>Techniques</h2>
<h3>Couleurs</h3>
<h4>Simple</h4>
<div class="form-group"> <div class="form-group">
<label asp-for="HalfColorPrice" class="col-md-2 control-label"></label> <label asp-for="HalfColorPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
@ -66,19 +66,21 @@
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="HalfDefrisPrice" class="col-md-2 control-label"></label> <label asp-for="LongColorPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="HalfDefrisPrice" class="form-control" /> <input asp-for="LongColorPrice" class="form-control" />
<span asp-validation-for="HalfDefrisPrice" class="text-danger" /> <span asp-validation-for="LongColorPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="HalfMechPrice" class="col-md-2 control-label"></label> <label asp-for="ShortColorPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="HalfMechPrice" class="form-control" /> <input asp-for="ShortColorPrice" class="form-control" />
<span asp-validation-for="HalfMechPrice" class="text-danger" /> <span asp-validation-for="ShortColorPrice" class="text-danger" />
</div> </div>
</div> </div>
<h4>Multi-couleur</h4>
<div class="form-group"> <div class="form-group">
<label asp-for="HalfMultiColorPrice" class="col-md-2 control-label"></label> <label asp-for="HalfMultiColorPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
@ -86,102 +88,116 @@
<span asp-validation-for="HalfMultiColorPrice" class="text-danger" /> <span asp-validation-for="HalfMultiColorPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="HalfPermanentPrice" class="col-md-2 control-label"></label> <label asp-for="LongMultiColorPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="HalfPermanentPrice" class="form-control" /> <input asp-for="LongMultiColorPrice" class="form-control" />
<span asp-validation-for="HalfPermanentPrice" class="text-danger" /> <span asp-validation-for="LongMultiColorPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="KidCutPrice" class="col-md-2 control-label"></label> <label asp-for="ShortMultiColorPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="KidCutPrice" class="form-control" /> <input asp-for="ShortMultiColorPrice" class="form-control" />
<span asp-validation-for="KidCutPrice" class="text-danger" /> <span asp-validation-for="ShortMultiColorPrice" class="text-danger" />
</div> </div>
</div> </div>
<h3>Balayage</h3>
<div class="form-group"> <div class="form-group">
<label asp-for="LongBalayagePrice" class="col-md-2 control-label"></label> <label asp-for="HalfBalayagePrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="LongBalayagePrice" class="form-control" /> <input asp-for="HalfBalayagePrice" class="form-control" />
<span asp-validation-for="LongBalayagePrice" class="text-danger" /> <span asp-validation-for="HalfBalayagePrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="LongBrushingPrice" class="col-md-2 control-label"></label> <label asp-for="LongBalayagePrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="LongBrushingPrice" class="form-control" /> <input asp-for="LongBalayagePrice" class="form-control" />
<span asp-validation-for="LongBrushingPrice" class="text-danger" /> <span asp-validation-for="LongBalayagePrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="LongColorPrice" class="col-md-2 control-label"></label> <label asp-for="ShortBalayagePrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="LongColorPrice" class="form-control" /> <input asp-for="ShortBalayagePrice" class="form-control" />
<span asp-validation-for="LongColorPrice" class="text-danger" /> <span asp-validation-for="ShortBalayagePrice" class="text-danger" />
</div> </div>
</div> </div>
<h2>Coiffage</h2>
<h3>Brushing</h3>
<h4>Pour la femme</h4>
<div class="form-group"> <div class="form-group">
<label asp-for="LongDefrisPrice" class="col-md-2 control-label"></label> <label asp-for="HalfBrushingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="LongDefrisPrice" class="form-control" /> <input asp-for="HalfBrushingPrice" class="form-control" />
<span asp-validation-for="LongDefrisPrice" class="text-danger" /> <span asp-validation-for="HalfBrushingPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="LongMechPrice" class="col-md-2 control-label"></label> <label asp-for="LongBrushingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="LongMechPrice" class="form-control" /> <input asp-for="LongBrushingPrice" class="form-control" />
<span asp-validation-for="LongMechPrice" class="text-danger" /> <span asp-validation-for="LongBrushingPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="LongMultiColorPrice" class="col-md-2 control-label"></label> <label asp-for="ShortBrushingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="LongMultiColorPrice" class="form-control" /> <input asp-for="ShortBrushingPrice" class="form-control" />
<span asp-validation-for="LongMultiColorPrice" class="text-danger" /> <span asp-validation-for="ShortBrushingPrice" class="text-danger" />
</div> </div>
</div> </div>
<h4>Pour l'homme</h4>
<div class="form-group"> <div class="form-group">
<label asp-for="LongPermanentPrice" class="col-md-2 control-label"></label> <label asp-for="ManBrushPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="LongPermanentPrice" class="form-control" /> <input asp-for="ManBrushPrice" class="form-control" />
<span asp-validation-for="LongPermanentPrice" class="text-danger" /> <span asp-validation-for="ManBrushPrice" class="text-danger" />
</div> </div>
</div> </div>
<h3>Mise en plis</h3>
<div class="form-group"> <div class="form-group">
<label asp-for="ManCutPrice" class="col-md-2 control-label"></label> <label asp-for="LongFoldingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="ManCutPrice" class="form-control" /> <input asp-for="LongFoldingPrice" class="form-control" />
<span asp-validation-for="ManCutPrice" class="text-danger" /> <span asp-validation-for="LongFoldingPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="ShampooPrice" class="col-md-2 control-label"></label> <label asp-for="HalfFoldingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="ShampooPrice" class="form-control" /> <input asp-for="HalfFoldingPrice" class="form-control" />
<span asp-validation-for="ShampooPrice" class="text-danger" /> <span asp-validation-for="HalfFoldingPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="ShortBalayagePrice" class="col-md-2 control-label"></label> <label asp-for="ShortFoldingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="ShortBalayagePrice" class="form-control" /> <input asp-for="ShortFoldingPrice" class="form-control" />
<span asp-validation-for="ShortBalayagePrice" class="text-danger" /> <span asp-validation-for="ShortFoldingPrice" class="text-danger" />
</div> </div>
</div> </div>
<h3>Défrisage</h3>
<div class="form-group"> <div class="form-group">
<label asp-for="ShortBrushingPrice" class="col-md-2 control-label"></label> <label asp-for="HalfDefrisPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="ShortBrushingPrice" class="form-control" /> <input asp-for="HalfDefrisPrice" class="form-control" />
<span asp-validation-for="ShortBrushingPrice" class="text-danger" /> <span asp-validation-for="HalfDefrisPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="ShortColorPrice" class="col-md-2 control-label"></label> <label asp-for="LongDefrisPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="ShortColorPrice" class="form-control" /> <input asp-for="LongDefrisPrice" class="form-control" />
<span asp-validation-for="ShortColorPrice" class="text-danger" /> <span asp-validation-for="LongDefrisPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
@ -191,6 +207,23 @@
<span asp-validation-for="ShortDefrisPrice" class="text-danger" /> <span asp-validation-for="ShortDefrisPrice" class="text-danger" />
</div> </div>
</div> </div>
<h3>Mèches</h3>
<div class="form-group">
<label asp-for="HalfMechPrice" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="HalfMechPrice" class="form-control" />
<span asp-validation-for="HalfMechPrice" class="text-danger" />
</div>
</div>
<div class="form-group">
<label asp-for="LongMechPrice" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="LongMechPrice" class="form-control" />
<span asp-validation-for="LongMechPrice" class="text-danger" />
</div>
</div>
<div class="form-group"> <div class="form-group">
<label asp-for="ShortMechPrice" class="col-md-2 control-label"></label> <label asp-for="ShortMechPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
@ -198,11 +231,21 @@
<span asp-validation-for="ShortMechPrice" class="text-danger" /> <span asp-validation-for="ShortMechPrice" class="text-danger" />
</div> </div>
</div> </div>
<h3>Permanentes</h3>
<div class="form-group"> <div class="form-group">
<label asp-for="ShortMultiColorPrice" class="col-md-2 control-label"></label> <label asp-for="HalfPermanentPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="ShortMultiColorPrice" class="form-control" /> <input asp-for="HalfPermanentPrice" class="form-control" />
<span asp-validation-for="ShortMultiColorPrice" class="text-danger" /> <span asp-validation-for="HalfPermanentPrice" class="text-danger" />
</div>
</div>
<div class="form-group">
<label asp-for="LongPermanentPrice" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="LongPermanentPrice" class="form-control" />
<span asp-validation-for="LongPermanentPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
@ -212,6 +255,9 @@
<span asp-validation-for="ShortPermanentPrice" class="text-danger" /> <span asp-validation-for="ShortPermanentPrice" class="text-danger" />
</div> </div>
</div> </div>
<h2>Coupes</h2>
<h3>Femme</h3>
<div class="form-group"> <div class="form-group">
<label asp-for="WomenHalfCutPrice" class="col-md-2 control-label"></label> <label asp-for="WomenHalfCutPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
@ -233,34 +279,22 @@
<span asp-validation-for="WomenShortCutPrice" class="text-danger" /> <span asp-validation-for="WomenShortCutPrice" class="text-danger" />
</div> </div>
</div> </div>
<h3>Homme et enfant</h3>
<div class="form-group"> <div class="form-group">
<label asp-for="ManBrushPrice" class="col-md-2 control-label"></label> <label asp-for="KidCutPrice" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="ManBrushPrice" class="form-control" />
<span asp-validation-for="ManBrushPrice" class="text-danger" />
</div>
</div>
<div class="form-group">
<label asp-for="LongFoldingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="LongFoldingPrice" class="form-control" />
<span asp-validation-for="LongFoldingPrice" class="text-danger" />
</div>
</div>
<div class="form-group">
<label asp-for="HalfFoldingPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="HalfFoldingPrice" class="form-control" /> <input asp-for="KidCutPrice" class="form-control" />
<span asp-validation-for="HalfFoldingPrice" class="text-danger" /> <span asp-validation-for="KidCutPrice" class="text-danger" />
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label asp-for="ShortFoldingPrice" class="col-md-2 control-label"></label> <label asp-for="ManCutPrice" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">
<input asp-for="ShortFoldingPrice" class="form-control" /> <input asp-for="ManCutPrice" class="form-control" />
<span asp-validation-for="ShortFoldingPrice" class="text-danger" /> <span asp-validation-for="ManCutPrice" class="text-danger" />
</div> </div>
</div> </div>
<h2>Le forfait</h2>
<div class="form-group"> <div class="form-group">
<label asp-for="FlatFeeDiscount" class="col-md-2 control-label"></label> <label asp-for="FlatFeeDiscount" class="col-md-2 control-label"></label>
<div class="col-md-10"> <div class="col-md-10">

@ -169,8 +169,7 @@
</div> </div>
</div> </div>
<label asp-for="Reason" class="col-md-2 control-label">
<label for="Reason" class="col-md-2 control-label">
@SR["GiveAnExplicitReason"] @SR["GiveAnExplicitReason"]
</label> </label>
<div class="col-md-10"> <div class="col-md-10">

@ -114,6 +114,7 @@
gtarif=tarifs[1]; gtarif=tarifs[1];
} else gtarif=tarifs[2]; } else gtarif=tarifs[2];
} }
onTarif(tarifs[0]);
updateTarif(); updateTarif();
}); });

@ -1,27 +1,6 @@
@{ ViewBag.Title = "Chat"; } @{ ViewBag.Title = "Chat"; }
<h2>Chat </h2> <h2>Chat </h2>
<label><input type="checkbox" id="mute" />Muet</label> <label><input type="checkbox" id="mute" />Muet</label>
<style>
.discussion {
color: white;
font-family: monospace;
}
.notif {
color: #aaf;
font-family: monospace;
}
.pv {
color: yellow;
font-family: monospace;
font-style: bold;
}
#targets {
display:inline-block;
}
</style>
<div class="container"> <div class="container">
<input type="hidden" id="displayname" /> <input type="hidden" id="displayname" />
@ -38,13 +17,24 @@
</ul> </ul>
<div id="targets" > <div id="targets" >
<div id="sendmessagebox"> <div id="sendmessagebox">
<input type="text" id="message" class="form-control"/> <div class="col-md-10">
<div class="row">
<div class='col-sm-9'> <input type="text" id="message" class="form-control"/></div>
<div class='col-sm-3'>
<input type="button" id="sendmessage" value="@SR["Send"]" class="btn btn-default"/> <input type="button" id="sendmessage" value="@SR["Send"]" class="btn btn-default"/>
</div></div></div>
</div> </div>
@if (ViewBag.IsAuthenticated) { @if (ViewBag.IsAuthenticated) {
<div id="sendpvbox"> <div id="sendpvbox">
<div class="col-md-10">
<div class="row">
<div class='col-sm-9'>
<input type="text" id="pv" class="form-control" /> <input type="text" id="pv" class="form-control" />
<button type="submit" id="sendpv" class="btn btn-default">@SR["Send a private message"] @SR["to"] <div id="sendpvdest" /> </button> </div>
<div class='col-sm-3'>
<button type="submit" id="sendpv" class="btn btn-default">@SR["Send a private message"] @SR["to"]
<div id="sendpvdest" /> </button>
</div></div></div>
</div> </div>
} }
<input type="hidden" id="mySignalRConnectionIdHidden" value="" /> <input type="hidden" id="mySignalRConnectionIdHidden" value="" />
@ -110,7 +100,7 @@
chat.client.addMessage = function (name, message) { chat.client.addMessage = function (name, message) {
// Add the message to the page. // Add the message to the page.
$('#discussion').append('<li class="discussion"><strong>' + htmlEncode(name) $('#discussion').append('<li class="discussion"><strong>' + htmlEncode(name)
+ '</strong>: ' + htmlEncode(message) + '</li>'); + '</strong>: ' + htmlEncode(message) + '</li>')
}; };
chat.client.addPV = function (name, message) { chat.client.addPV = function (name, message) {
if (!$("#mute").prop('checked')) if (!$("#mute").prop('checked'))
@ -141,14 +131,14 @@
if (connected.length > 0) { if (connected.length > 0) {
var ids = connected.data("cxids"); var ids = connected.data("cxids");
ids.push(cxid); ids.push(cxid);
connected.data("cxids", ids); connected.data("cxids", ids)
} else { } else {
var li = $('<li class="user"><img src="/Avatars/' + username + '.xs.png"> ' + username + '</li>'); var li = $('<li class="user"><img src="/Avatars/' + username + '.xs.png"> ' + username + '</li>');
li.data("name", username); li.data("name", username);
li.data("cxids", [cxid]); li.data("cxids", [cxid]);
li.appendTo('#userlist'); li.appendTo('#userlist');
li.css('cursor', 'pointer'); li.css('cursor', 'pointer');
li.click(function () { setPrivate(this); }); li.click(function () { setPrivate(this); })
} }
}; };
chat.client.notify = function (tag, message, data) { chat.client.notify = function (tag, message, data) {
@ -158,16 +148,16 @@
if (tag === 'connected') { if (tag === 'connected') {
onUserConnected(message, data); onUserConnected(message, data);
$('#discussion').append('<li class="notif"><i>' + htmlEncode(tag) $('#discussion').append('<li class="notif"><i>' + htmlEncode(tag)
+ '</i> ' + htmlEncode(data) + '</li>'); + '</i> ' + htmlEncode(data) + '</li>')
} }
else if (tag === 'disconnected') { else if (tag === 'disconnected') {
onUserDisconnected(message, data); onUserDisconnected(message, data);
$('#discussion').append('<li class="notif"><i>' + htmlEncode(tag) $('#discussion').append('<li class="notif"><i>' + htmlEncode(tag)
+ '</i> ' + htmlEncode(data) + '</li>'); + '</i> ' + htmlEncode(data) + '</li>')
} }
else { else {
$('#discussion').append('<li class="notif"><i>' + htmlEncode(tag) $('#discussion').append('<li class="notif"><i>' + htmlEncode(tag)
+ '</i> ' + htmlEncode(message) + ' : ' + htmlEncode(data) + '</li>'); + '</i> ' + htmlEncode(message) + ' : ' + htmlEncode(data) + '</li>')
} }
} }
}; };
@ -195,7 +185,8 @@
$.connection.hub.start().done(function () { $.connection.hub.start().done(function () {
$('#sendmessage').click(function () { $('#sendmessage').click(function () {
// Call the Send method on the hub. // Call the Send method on the hub.
sendMessage().focus(); sendMessage();
$('#message').focus();
}); });
$("#message").keydown(function (event) { $("#message").keydown(function (event) {
if (event.which == 13) { if (event.which == 13) {
@ -214,7 +205,7 @@
}); });
getUsers(); getUsers();
}); }).fail(function (e) {console.log(e) });
$("#btnDebug").click(getUsers); $("#btnDebug").click(getUsers);
$.connection.hub.disconnected(function () { $.connection.hub.disconnected(function () {

@ -7,13 +7,17 @@
<title>@ViewData["Title"] - @SiteSettings.Value.Title</title> <title>@ViewData["Title"] - @SiteSettings.Value.Title</title>
<environment names="Development"> <environment names="Development">
<link rel="stylesheet" href="~/css/bootstrap.css" /> <link rel="stylesheet" href="~/css/main/bootstrap.css" />
<link rel="stylesheet" href="~/css/site.css" /> <link rel="stylesheet" href="~/css/main/site.css" />
<link rel="stylesheet" href="~/css/jquery-ui.css" /> <link rel="stylesheet" href="~/css/main/jquery-ui.css" />
<link rel="alternate stylesheet" title="Dark" href="~/css/dark/site.css" asp-append-version="true" />
<link rel="alternate stylesheet" title="Clear" href="~/css/clear/site.css" asp-append-version="true" />
</environment> </environment>
<environment names="Staging,Production,yavsc,yavscpre,zicmoove,lua"> <environment names="Staging,Production,yavsc,yavscpre,zicmoove,lua">
<link rel="stylesheet" href="~/css/site.min.css" asp-append-version="true" /> <link rel="stylesheet" href="~/csslib/site.min.css" asp-append-version="true" />
</environment> </environment>
<environment names="Development"> <environment names="Development">
<script src="~/js/jquery.js"></script> <script src="~/js/jquery.js"></script>
<script src="~/js/jquery-ui.js"></script> <script src="~/js/jquery-ui.js"></script>
@ -32,6 +36,10 @@
<script src="~/js/jquery-ui.js"></script> <script src="~/js/jquery-ui.js"></script>
<script src="~/js/site.js"></script> <script src="~/js/site.js"></script>
</environment> </environment>
<script src="~/js/jquery.signalR-2.2.1.js"></script> <script src="~/js/jquery.signalR-2.2.1.js"></script>
<style> <style>
nav { nav {

@ -49,8 +49,8 @@ gulp.task("min:css", function () {
gulp.task("min", ["min:js", "min:css"]); gulp.task("min", ["min:js", "min:css"]);
gulp.task('watch:web', shell.task(['ASPNET_ENV=Development dnx-watch web --configuration=Debug'])); gulp.task('watch', shell.task(['ASPNET_ENV=Development dnx-watch web --configuration=Debug']));
gulp.task('watch:lua', shell.task(['ASPNET_ENV=Lua dnx-watch luatest --configuration=Debug'])); gulp.task('watchlua', shell.task(['ASPNET_ENV=Lua dnx-watch luatest --configuration=Debug']));
gulp.task('build', shell.task(['dnu build --configuration=Debug'])); gulp.task('build', shell.task(['dnu build --configuration=Debug']));
gulp.task('publish', shell.task(['dnu publish'])); gulp.task('publish', shell.task(['dnu publish']));
@ -59,12 +59,12 @@ gulp.task("amincss", function () {
gulp.src([paths.css, "!" + paths.minCss, '!site.css']) gulp.src([paths.css, "!" + paths.minCss, '!site.css'])
.pipe(cssmin()) .pipe(cssmin())
.pipe(rename({suffix: '.min'})) .pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('wwwroot/css')); .pipe(gulp.dest('wwwroot/csslib'));
}); });
gulp.task("aminjs", function () { gulp.task("aminjs", function () {
return gulp.src([paths.js, "!" + paths.minJs, '!site.js']) return gulp.src([paths.js, "!" + paths.minJs, '!site.js'])
.pipe(uglify()) .pipe(uglify())
.pipe(rename({suffix: '.min'})) .pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('wwwroot/js')); .pipe(gulp.dest('wwwroot/jslib'));
}); });
gulp.task("default",['amincss','aminjs']); gulp.task("default",['amincss','aminjs']);

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -9,25 +9,26 @@ body {
color:#999; color:#999;
} }
h1,h2,h3,h4,h5,h6{color:#fff;} h1,h2,h3,h4,h5,h6{color:#fff;}
.smalltofhol { max-height: 3em; max-width: 3em; float:left; margin:.5em; }
.discussion {
color: white;
}
.notif {
color: #aaf;
}
.pv {
color: yellow;
font-style: bold;
}
.price { .price {
font-weight: bold;
font-size: x-large;
color: #fff; color: #fff;
border: solid white 1px; border: solid white 1px;
border-radius: 1em;
padding: .2em;
margin: .2em;
} }
.total { .total {
font-weight: bold;
font-size: xx-large;
color: #fff; color: #fff;
background-color: #1f1c58; background-color: #1f1c58;
border: solid white 1px; border-color: white ;
border-radius: 1em;
padding: .2em;
margin: .2em;
} }
.blog { .blog {
@ -35,40 +36,27 @@ h1,h2,h3,h4,h5,h6{color:#fff;}
} }
.blog a { .blog a {
color: #FF8; color: #FF8;
font-weight: 900;
} }
.blog a:active, .blog a:active,
.blog a:hover { .blog a:hover {
outline: 0;
color: #FAFA09; color: #FAFA09;
} }
tr.visiblepost {
max-height: 3em;
}
tr.hiddenpost { tr.hiddenpost {
background-color: #130414; background-color: #130414;
font-size: smaller;
max-height: 2em;
} }
a.bloglink { a.bloglink {
font-weight: bold;
text-shadow: 0px 0px 8px white; text-shadow: 0px 0px 8px white;
} }
a { a {
font-weight: 900;
color: #FF8; color: #FF8;
} }
a:active, a:active,
a:hover { a:hover {
outline: 0;
color: #FAFA09; color: #FAFA09;
} }
.panel{ .panel{
float: left;
padding:1em;
margin:1em;
color: white; color: white;
background-color: #421824; background-color: #421824;
} }
@ -83,7 +71,6 @@ select,
.jumbotron { .jumbotron {
background-color: #502020; background-color: #502020;
padding: .5em;
} }
/* Set widths on image and video, since otherwise they use their native resolution */ /* Set widths on image and video, since otherwise they use their native resolution */
@ -92,54 +79,18 @@ select,
/* Carousel */ /* Carousel */
.carousel-caption-s p { .carousel-caption-s p {
font-family: "jubilat";
font-weight: 600;
font-size: large;
line-height: 1.1;
text-decoration: overline;
text-decoration-line: overline;
text-shadow: 3px 3px 7px rgba(0, 0, 0, 0.8); text-shadow: 3px 3px 7px rgba(0, 0, 0, 0.8);
-webkit-text-shadow: inset 0 3px 5px rgb(0, 0, 0); -webkit-text-shadow: inset 0 3px 5px rgb(0, 0, 0);
color: black; color: black;
margin:0.5em;
padding:.5em;
animation: mymove 3s infinite;
background-color: rgba(256,256,256,.4); background-color: rgba(256,256,256,.4);
} }
.carousel-caption-s { .carousel-caption-s {
right: 3em;
top: 1em;
left: 3em;
z-index: 10;
padding-top: 20px;
padding-bottom: 20px;
text-align: center;
text-shadow: 0 4px 8px rgba(0, 0, 0, .6); text-shadow: 0 4px 8px rgba(0, 0, 0, .6);
height: 16em;
overflow: auto;
} }
.carousel-inner .item { .carousel-inner .item {
/* background-color: #301010; */ /* background-color: #301010; */
color: #FF8; color: #FF8;
margin-left:15%; /* la taille du carousel-control */
margin-right:15%; /* la taille du carousel-control */
}
.carousel-indicators {
position: absolute;
z-index: 15;
padding: 0;
text-align: center;
list-style: none;
top: .1em;
height: 1em;
}
main.container {
padding-right: 1em;
padding-left: 1em;
margin-left: 1em;
margin-right: 1em;
} }
@ -155,60 +106,31 @@ main.container {
50% {text-decoration-color: blue;} 50% {text-decoration-color: blue;}
to {text-decoration-color: red;} to {text-decoration-color: red;}
} }
ul.actiongroup li {
display:inline;
}
ul.actiongroup li a:hover { ul.actiongroup li a:hover {
background-color: rgba(128,128,128,.2); background-color: rgba(128,128,128,.2);
color: red; color: red;
} }
footer {
vertical-align: bottom;
padding: 1.5em;
}
.display-field { .display-field {
font-kerning: none;
display: inline-flex;
color: #FF8; color: #FF8;
background-color: #502020; background-color: #502020;
} }
.display-label { .display-label {
font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
font-stretch: condensed;
display: inline-flex;
color: #A0A0A0; color: #A0A0A0;
background-color: #210912; background-color: #210912;
} }
footer { footer {
color:rgb(128,128,128); color:rgb(128,128,128);
font-weight: bolder;
font-size: x-small;
} }
.meta { .meta {
color : #A0A0A0; color : #A0A0A0;
font-style: italic;
font-size: smaller;
} }
.activity {
font-family: fantasy
}
.blogtitle {
display: inline-block;
font-size: x-large;
}
.blogphoto {
float: left;
margin: 1em;
}

@ -1,388 +0,0 @@
/*
* The MIT License
* Copyright (c) 2012 Matias Meno <m@tias.me>
*/
@-webkit-keyframes passing-through {
0% {
opacity: 0;
-webkit-transform: translateY(40px);
-moz-transform: translateY(40px);
-ms-transform: translateY(40px);
-o-transform: translateY(40px);
transform: translateY(40px); }
30%, 70% {
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
-o-transform: translateY(0px);
transform: translateY(0px); }
100% {
opacity: 0;
-webkit-transform: translateY(-40px);
-moz-transform: translateY(-40px);
-ms-transform: translateY(-40px);
-o-transform: translateY(-40px);
transform: translateY(-40px); } }
@-moz-keyframes passing-through {
0% {
opacity: 0;
-webkit-transform: translateY(40px);
-moz-transform: translateY(40px);
-ms-transform: translateY(40px);
-o-transform: translateY(40px);
transform: translateY(40px); }
30%, 70% {
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
-o-transform: translateY(0px);
transform: translateY(0px); }
100% {
opacity: 0;
-webkit-transform: translateY(-40px);
-moz-transform: translateY(-40px);
-ms-transform: translateY(-40px);
-o-transform: translateY(-40px);
transform: translateY(-40px); } }
@keyframes passing-through {
0% {
opacity: 0;
-webkit-transform: translateY(40px);
-moz-transform: translateY(40px);
-ms-transform: translateY(40px);
-o-transform: translateY(40px);
transform: translateY(40px); }
30%, 70% {
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
-o-transform: translateY(0px);
transform: translateY(0px); }
100% {
opacity: 0;
-webkit-transform: translateY(-40px);
-moz-transform: translateY(-40px);
-ms-transform: translateY(-40px);
-o-transform: translateY(-40px);
transform: translateY(-40px); } }
@-webkit-keyframes slide-in {
0% {
opacity: 0;
-webkit-transform: translateY(40px);
-moz-transform: translateY(40px);
-ms-transform: translateY(40px);
-o-transform: translateY(40px);
transform: translateY(40px); }
30% {
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
-o-transform: translateY(0px);
transform: translateY(0px); } }
@-moz-keyframes slide-in {
0% {
opacity: 0;
-webkit-transform: translateY(40px);
-moz-transform: translateY(40px);
-ms-transform: translateY(40px);
-o-transform: translateY(40px);
transform: translateY(40px); }
30% {
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
-o-transform: translateY(0px);
transform: translateY(0px); } }
@keyframes slide-in {
0% {
opacity: 0;
-webkit-transform: translateY(40px);
-moz-transform: translateY(40px);
-ms-transform: translateY(40px);
-o-transform: translateY(40px);
transform: translateY(40px); }
30% {
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
-ms-transform: translateY(0px);
-o-transform: translateY(0px);
transform: translateY(0px); } }
@-webkit-keyframes pulse {
0% {
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1); }
10% {
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1); }
20% {
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1); } }
@-moz-keyframes pulse {
0% {
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1); }
10% {
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1); }
20% {
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1); } }
@keyframes pulse {
0% {
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1); }
10% {
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1); }
20% {
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1); } }
.dropzone, .dropzone * {
box-sizing: border-box; }
.dropzone {
min-height: 150px;
border: 2px solid rgba(0, 0, 0, 0.3);
background: white;
padding: 20px 20px; }
.dropzone.dz-clickable {
cursor: pointer; }
.dropzone.dz-clickable * {
cursor: default; }
.dropzone.dz-clickable .dz-message, .dropzone.dz-clickable .dz-message * {
cursor: pointer; }
.dropzone.dz-started .dz-message {
display: none; }
.dropzone.dz-drag-hover {
border-style: solid; }
.dropzone.dz-drag-hover .dz-message {
opacity: 0.5; }
.dropzone .dz-message {
text-align: center;
margin: 2em 0; }
.dropzone .dz-preview {
position: relative;
display: inline-block;
vertical-align: top;
margin: 16px;
min-height: 100px; }
.dropzone .dz-preview:hover {
z-index: 1000; }
.dropzone .dz-preview:hover .dz-details {
opacity: 1; }
.dropzone .dz-preview.dz-file-preview .dz-image {
border-radius: 20px;
background: #999;
background: linear-gradient(to bottom, #eee, #ddd); }
.dropzone .dz-preview.dz-file-preview .dz-details {
opacity: 1; }
.dropzone .dz-preview.dz-image-preview {
background: white; }
.dropzone .dz-preview.dz-image-preview .dz-details {
-webkit-transition: opacity 0.2s linear;
-moz-transition: opacity 0.2s linear;
-ms-transition: opacity 0.2s linear;
-o-transition: opacity 0.2s linear;
transition: opacity 0.2s linear; }
.dropzone .dz-preview .dz-remove {
font-size: 14px;
text-align: center;
display: block;
cursor: pointer;
border: none; }
.dropzone .dz-preview .dz-remove:hover {
text-decoration: underline; }
.dropzone .dz-preview:hover .dz-details {
opacity: 1; }
.dropzone .dz-preview .dz-details {
z-index: 20;
position: absolute;
top: 0;
left: 0;
opacity: 0;
font-size: 13px;
min-width: 100%;
max-width: 100%;
padding: 2em 1em;
text-align: center;
color: rgba(0, 0, 0, 0.9);
line-height: 150%; }
.dropzone .dz-preview .dz-details .dz-size {
margin-bottom: 1em;
font-size: 16px; }
.dropzone .dz-preview .dz-details .dz-filename {
white-space: nowrap; }
.dropzone .dz-preview .dz-details .dz-filename:hover span {
border: 1px solid rgba(200, 200, 200, 0.8);
background-color: rgba(255, 255, 255, 0.8); }
.dropzone .dz-preview .dz-details .dz-filename:not(:hover) {
overflow: hidden;
text-overflow: ellipsis; }
.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span {
border: 1px solid transparent; }
.dropzone .dz-preview .dz-details .dz-filename span, .dropzone .dz-preview .dz-details .dz-size span {
background-color: rgba(255, 255, 255, 0.4);
padding: 0 0.4em;
border-radius: 3px; }
.dropzone .dz-preview:hover .dz-image img {
-webkit-transform: scale(1.05, 1.05);
-moz-transform: scale(1.05, 1.05);
-ms-transform: scale(1.05, 1.05);
-o-transform: scale(1.05, 1.05);
transform: scale(1.05, 1.05);
-webkit-filter: blur(8px);
filter: blur(8px); }
.dropzone .dz-preview .dz-image {
border-radius: 20px;
overflow: hidden;
width: 120px;
height: 120px;
position: relative;
display: block;
z-index: 10; }
.dropzone .dz-preview .dz-image img {
display: block; }
.dropzone .dz-preview.dz-success .dz-success-mark {
-webkit-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
-moz-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
-ms-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
-o-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1); }
.dropzone .dz-preview.dz-error .dz-error-mark {
opacity: 1;
-webkit-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
-moz-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
-ms-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
-o-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1); }
.dropzone .dz-preview .dz-success-mark, .dropzone .dz-preview .dz-error-mark {
pointer-events: none;
opacity: 0;
z-index: 500;
position: absolute;
display: block;
top: 50%;
left: 50%;
margin-left: -27px;
margin-top: -27px; }
.dropzone .dz-preview .dz-success-mark svg, .dropzone .dz-preview .dz-error-mark svg {
display: block;
width: 54px;
height: 54px; }
.dropzone .dz-preview.dz-processing .dz-progress {
opacity: 1;
-webkit-transition: all 0.2s linear;
-moz-transition: all 0.2s linear;
-ms-transition: all 0.2s linear;
-o-transition: all 0.2s linear;
transition: all 0.2s linear; }
.dropzone .dz-preview.dz-complete .dz-progress {
opacity: 0;
-webkit-transition: opacity 0.4s ease-in;
-moz-transition: opacity 0.4s ease-in;
-ms-transition: opacity 0.4s ease-in;
-o-transition: opacity 0.4s ease-in;
transition: opacity 0.4s ease-in; }
.dropzone .dz-preview:not(.dz-processing) .dz-progress {
-webkit-animation: pulse 6s ease infinite;
-moz-animation: pulse 6s ease infinite;
-ms-animation: pulse 6s ease infinite;
-o-animation: pulse 6s ease infinite;
animation: pulse 6s ease infinite; }
.dropzone .dz-preview .dz-progress {
opacity: 1;
z-index: 1000;
pointer-events: none;
position: absolute;
height: 16px;
left: 50%;
top: 50%;
margin-top: -8px;
width: 80px;
margin-left: -40px;
background: rgba(255, 255, 255, 0.9);
-webkit-transform: scale(1);
border-radius: 8px;
overflow: hidden; }
.dropzone .dz-preview .dz-progress .dz-upload {
background: #333;
background: linear-gradient(to bottom, #666, #444);
position: absolute;
top: 0;
left: 0;
bottom: 0;
width: 0;
-webkit-transition: width 300ms ease-in-out;
-moz-transition: width 300ms ease-in-out;
-ms-transition: width 300ms ease-in-out;
-o-transition: width 300ms ease-in-out;
transition: width 300ms ease-in-out; }
.dropzone .dz-preview.dz-error .dz-error-message {
display: block; }
.dropzone .dz-preview.dz-error:hover .dz-error-message {
opacity: 1;
pointer-events: auto; }
.dropzone .dz-preview .dz-error-message {
pointer-events: none;
z-index: 1000;
position: absolute;
display: block;
display: none;
opacity: 0;
-webkit-transition: opacity 0.3s ease;
-moz-transition: opacity 0.3s ease;
-ms-transition: opacity 0.3s ease;
-o-transition: opacity 0.3s ease;
transition: opacity 0.3s ease;
border-radius: 8px;
font-size: 13px;
top: 130px;
left: -10px;
width: 140px;
background: #be2626;
background: linear-gradient(to bottom, #be2626, #a92222);
padding: 0.5em 1.2em;
color: white; }
.dropzone .dz-preview .dz-error-message:after {
content: '';
position: absolute;
top: -6px;
left: 64px;
width: 0;
height: 0;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 6px solid #be2626; }

File diff suppressed because it is too large Load Diff

@ -263,8 +263,8 @@ th {
@font-face { @font-face {
font-family: 'Glyphicons Halflings'; font-family: 'Glyphicons Halflings';
src: url('../fonts/glyphicons-halflings-regular.eot'); src: url('/fonts/glyphicons-halflings-regular.eot');
src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); src: url('/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('/fonts/glyphicons-halflings-regular.woff') format('woff'), url('/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
} }
.glyphicon { .glyphicon {
position: relative; position: relative;
@ -4210,7 +4210,6 @@ select[multiple].input-group-sm > .input-group-btn > .btn {
.navbar { .navbar {
position: relative; position: relative;
min-height: 50px; min-height: 50px;
margin-bottom: 20px;
border: 1px solid transparent; border: 1px solid transparent;
} }
@media (min-width: 768px) { @media (min-width: 768px) {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -2,19 +2,12 @@
/* Wrapping element */ /* Wrapping element */
/* Set some basic padding to keep content from hitting the edges */ /* Set some basic padding to keep content from hitting the edges */
body {
/* background-color: #04264f;
color:#000;*/
background-color: #080225;
color:#999;
}
h1,h2,h3,h4,h5,h6{color:#fff;}
.smalltofhol { max-height: 3em; max-width: 3em; float:left; margin:.5em; } .smalltofhol { max-height: 3em; max-width: 3em; float:left; margin:.5em; }
.price { .price {
font-weight: bold; font-weight: bold;
font-size: x-large; font-size: x-large;
color: #fff; border: solid black 2px;
border: solid white 1px;
border-radius: 1em; border-radius: 1em;
padding: .2em; padding: .2em;
margin: .2em; margin: .2em;
@ -22,9 +15,8 @@ h1,h2,h3,h4,h5,h6{color:#fff;}
.total { .total {
font-weight: bold; font-weight: bold;
font-size: xx-large; font-size: xx-large;
color: #fff; background-color: #f8f;
background-color: #1f1c58; border: solid black 3px;
border: solid white 1px;
border-radius: 1em; border-radius: 1em;
padding: .2em; padding: .2em;
margin: .2em; margin: .2em;
@ -34,55 +26,75 @@ h1,h2,h3,h4,h5,h6{color:#fff;}
padding: 1em; padding: 1em;
} }
.blog a { .blog a {
color: #FF8;
font-weight: 900; font-weight: 900;
} }
.blog a:active, .blog a:active,
.blog a:hover { .blog a:hover {
outline: 0; outline: 0;
color: #FAFA09;
} }
.discussion {
color: black;
}
.notif {
color: #555;
}
.pv {
color: #540;
font-style: bold;
}
.discussion {
font-family: monospace;
}
.notif {
color: #006;
font-family: monospace;
}
.pv {
color: #251;
font-family: monospace;
font-style: bold;
}
#targets {
display:block;
}
tr.visiblepost { tr.visiblepost {
max-height: 3em; max-height: 3em;
} }
tr.hiddenpost { tr.hiddenpost {
background-color: #130414; background-color: #888;
font-size: smaller; font-size: smaller;
max-height: 2em; max-height: 2em;
} }
a.bloglink { a.bloglink {
font-weight: bold; font-weight: bold;
text-shadow: 0px 0px 8px white; text-shadow: 0px 0px 8px black;
} }
a { a {
font-weight: 900; font-weight: 900;
color: #FF8;
} }
a:active, a:active,
a:hover { a:hover {
outline: 0; outline: 0;
color: #FAFA09;
} }
.panel{ .panel{
float: left; float: left;
padding:1em; padding:1em;
margin:1em; margin:1em;
color: white; color: black;
background-color: #421824;
} }
/* Set widths on the form inputs since otherwise they're 100% wide */ /* Set widths on the form inputs since otherwise they're 100% wide */
input, input,
select, select,
button, button,
textarea { textarea {
background-color: #999; background-color: #bbb;
color: #333; color: #000;
} }
.jumbotron { .jumbotron {
background-color: #502020;
padding: .5em; padding: .5em;
} }
/* Set widths on image and video, since otherwise they use their native resolution */ /* Set widths on image and video, since otherwise they use their native resolution */
@ -98,13 +110,13 @@ select,
line-height: 1.1; line-height: 1.1;
text-decoration: overline; text-decoration: overline;
text-decoration-line: overline; text-decoration-line: overline;
text-shadow: 3px 3px 7px rgba(0, 0, 0, 0.8); text-shadow: 3px 3px 7px rgb(0, 0, 0);
-webkit-text-shadow: inset 0 3px 5px rgb(0, 0, 0); -webkit-text-shadow: inset 0 3px 5px rgb(0, 0, 0);
color: black; color: black;
margin:0.5em; margin:0.5em;
padding:.5em; padding:.5em;
animation: mymove 3s infinite; animation: mymove 3s infinite;
background-color: rgba(256,256,256,.4); background-color: rgba(256,256,256,.6);
} }
.carousel-caption-s { .carousel-caption-s {
@ -121,7 +133,6 @@ select,
} }
.carousel-inner .item { .carousel-inner .item {
/* background-color: #301010; */ /* background-color: #301010; */
color: #FF8;
padding-left:15%; /* la taille du carousel-control */ padding-left:15%; /* la taille du carousel-control */
margin-right:15%; /* la taille du carousel-control */ margin-right:15%; /* la taille du carousel-control */
} }
@ -160,8 +171,8 @@ ul.actiongroup li {
} }
ul.actiongroup li a:hover { ul.actiongroup li a:hover {
background-color: rgba(128,128,128,.2); background-color: rgba(200,200,200,.6);
color: red; color: #400;
} }
footer { footer {
@ -172,15 +183,14 @@ footer {
.display-field { .display-field {
font-kerning: none; font-kerning: none;
display: inline-flex; display: inline-flex;
color: #FF8; color: #008;
background-color: #502020;
} }
.display-label { .display-label {
font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif; font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
font-stretch: condensed; font-stretch: condensed;
display: inline-flex; display: inline-flex;
color: #A0A0A0; color: #444;
background-color: #210912; background-color: #210912;
} }
@ -191,7 +201,7 @@ footer {
} }
.meta { .meta {
color : #A0A0A0; color : #444;
font-style: italic; font-style: italic;
font-size: smaller; font-size: smaller;
} }

File diff suppressed because one or more lines are too long

@ -1,912 +0,0 @@
/*! Quill Editor v0.20.1
* https://quilljs.com/
* Copyright (c) 2014, Jason Chen
* Copyright (c) 2013, salesforce.com
*/
.ql-image-tooltip {
padding: 10px;
width: 300px;
}
.ql-image-tooltip:after {
clear: both;
content: "";
display: table;
}
.ql-image-tooltip a {
border: 1px solid #000;
box-sizing: border-box;
display: inline-block;
padding: 5px;
text-align: center;
width: 50%;
}
.ql-image-tooltip img {
bottom: 0;
left: 0;
margin: auto;
max-height: 100%;
max-width: 100%;
position: absolute;
right: 0;
top: 0;
}
.ql-image-tooltip .input {
box-sizing: border-box;
width: 100%;
}
.ql-image-tooltip .preview {
margin: 10px 0px;
position: relative;
border: 1px dashed #000;
height: 200px;
}
.ql-image-tooltip .preview span {
display: inline-block;
position: absolute;
text-align: center;
top: 40%;
width: 100%;
}
.ql-link-tooltip {
padding: 5px 10px;
}
.ql-link-tooltip input.input {
width: 170px;
}
.ql-link-tooltip input.input,
.ql-link-tooltip a.done {
display: none;
}
.ql-link-tooltip a.change {
margin-right: 4px;
}
.ql-link-tooltip.editing input.input,
.ql-link-tooltip.editing a.done {
display: inline-block;
}
.ql-link-tooltip.editing a.url,
.ql-link-tooltip.editing a.change,
.ql-link-tooltip.editing a.remove {
display: none;
}
.ql-multi-cursor {
position: absolute;
left: 0;
top: 0;
z-index: 1000;
}
.ql-multi-cursor .cursor {
margin-left: -1px;
position: absolute;
}
.ql-multi-cursor .cursor-flag {
bottom: 100%;
position: absolute;
white-space: nowrap;
}
.ql-multi-cursor .cursor-name {
display: inline-block;
color: #fff;
padding: 2px 8px;
}
.ql-multi-cursor .cursor-caret {
height: 100%;
position: absolute;
width: 2px;
}
.ql-multi-cursor .cursor.hidden .cursor-flag {
display: none;
}
.ql-multi-cursor .cursor.top .cursor-flag {
bottom: auto;
top: 100%;
}
.ql-multi-cursor .cursor.right .cursor-flag {
right: -2px;
}
.ql-paste-manager {
left: -100000px;
position: absolute;
top: 50%;
}
.ql-toolbar {
box-sizing: border-box;
}
.ql-tooltip {
background-color: #fff;
border: 1px solid #000;
box-sizing: border-box;
position: absolute;
top: 0px;
white-space: nowrap;
z-index: 2000;
}
.ql-tooltip a {
cursor: pointer;
text-decoration: none;
}
.ql-container {
box-sizing: border-box;
cursor: text;
height: 100%;
margin: 0px;
overflow-x: hidden;
overflow-y: auto;
}
.ql-editor {
box-sizing: border-box;
min-height: 100%;
outline: none;
tab-size: 4;
white-space: pre-wrap;
}
.ql-editor div {
margin: 0;
padding: 0;
}
.ql-editor a {
text-decoration: underline;
}
.ql-editor b {
font-weight: bold;
}
.ql-editor i {
font-style: italic;
}
.ql-editor s {
text-decoration: line-through;
}
.ql-editor u {
text-decoration: underline;
}
.ql-editor a,
.ql-editor b,
.ql-editor i,
.ql-editor s,
.ql-editor u,
.ql-editor span {
background-color: inherit;
}
.ql-editor img {
max-width: 100%;
}
.ql-editor blockquote,
.ql-editor ol,
.ql-editor ul {
margin: 0 0 0 2em;
padding: 0;
}
.ql-editor ol {
list-style-type: decimal;
}
.ql-editor ul {
list-style-type: disc;
}
.ql-editor.ql-ie-9 br,
.ql-editor.ql-ie-10 br {
display: none;
}
.ql-snow .ql-image-tooltip a {
border: 1px solid #06c;
}
.ql-snow .ql-image-tooltip a.insert {
background-color: #06c;
color: #fff;
}
.ql-snow .ql-image-tooltip .preview {
border-color: #ccc;
color: #ccc;
}
.ql-snow .ql-link-tooltip a,
.ql-snow .ql-link-tooltip span {
line-height: 25px;
}
.ql-snow .ql-multi-cursor .cursor-name {
border-radius: 4px;
font-size: 11px;
font-family: Arial;
margin-left: -50%;
padding: 4px 10px;
}
.ql-snow .ql-multi-cursor .cursor-triangle {
border-left: 4px solid transparent;
border-right: 4px solid transparent;
height: 0px;
margin-left: -3px;
width: 0px;
}
.ql-snow .ql-multi-cursor .cursor.left .cursor-name {
margin-left: -8px;
}
.ql-snow .ql-multi-cursor .cursor.right .cursor-flag {
right: auto;
}
.ql-snow .ql-multi-cursor .cursor.right .cursor-name {
margin-left: -100%;
margin-right: -8px;
}
.ql-snow .ql-multi-cursor .cursor-triangle.bottom {
border-top: 4px solid transparent;
display: block;
margin-bottom: -1px;
}
.ql-snow .ql-multi-cursor .cursor-triangle.top {
border-bottom: 4px solid transparent;
display: none;
margin-top: -1px;
}
.ql-snow .ql-multi-cursor .cursor.top .cursor-triangle.bottom {
display: none;
}
.ql-snow .ql-multi-cursor .cursor.top .cursor-triangle.top {
display: block;
}
.ql-snow.ql-toolbar {
box-sizing: border-box;
padding: 8px;
user-select: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
border: outset grey 3px;
}
.ql-snow.ql-toolbar .ql-format-group {
display: inline-block;
margin-right: 15px;
vertical-align: middle;
}
.ql-snow.ql-toolbar .ql-format-separator {
box-sizing: border-box;
background-color: #ddd;
display: inline-block;
height: 14px;
margin-left: 4px;
margin-right: 4px;
vertical-align: middle;
width: 1px;
}
.ql-snow.ql-toolbar .ql-format-button {
box-sizing: border-box;
display: inline-block;
height: 24px;
line-height: 24px;
vertical-align: middle;
background-position: center center;
background-repeat: no-repeat;
background-size: 18px 18px;
box-sizing: border-box;
cursor: pointer;
text-align: center;
width: 24px;
}
.ql-snow.ql-toolbar .ql-picker {
box-sizing: border-box;
color: #444;
display: inline-block;
font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
font-size: 14px;
font-weight: 500;
position: relative;
}
.ql-snow.ql-toolbar .ql-picker .ql-picker-label {
box-sizing: border-box;
display: inline-block;
height: 24px;
line-height: 24px;
vertical-align: middle;
background-color: #fff;
background-position: right center;
background-repeat: no-repeat;
background-size: 18px 18px;
border: 1px solid transparent;
cursor: pointer;
position: relative;
width: 100%;
}
.ql-snow.ql-toolbar .ql-picker .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label:hover {
color: #06c;
}
.ql-snow.ql-toolbar .ql-picker .ql-picker-options {
background-color: #fff;
border: 1px solid transparent;
box-sizing: border-box;
display: none;
padding: 4px 8px;
position: absolute;
width: 100%;
}
.ql-snow.ql-toolbar .ql-picker .ql-picker-options .ql-picker-item {
background-position: center center;
background-repeat: no-repeat;
background-size: 18px 18px;
box-sizing: border-box;
cursor: pointer;
display: block;
padding-bottom: 5px;
padding-top: 5px;
}
.ql-snow.ql-toolbar .ql-picker .ql-picker-options .ql-picker-item.ql-selected,
.ql-snow.ql-toolbar .ql-picker .ql-picker-options .ql-picker-item:hover {
color: #06c;
}
.ql-snow.ql-toolbar .ql-picker.ql-expanded .ql-picker-label {
border-color: #ccc;
color: #ccc;
z-index: 2;
}
.ql-snow.ql-toolbar .ql-picker.ql-expanded .ql-picker-options {
border-color: #ccc;
box-shadow: rgba(0,0,0,0.2) 0 2px 8px;
display: block;
margin-top: -1px;
z-index: 1;
}
.ql-snow.ql-toolbar .ql-picker.ql-color-picker .ql-picker-label {
background-position: center center;
width: 28px;
}
.ql-snow.ql-toolbar .ql-picker.ql-color-picker .ql-picker-options {
padding: 5px;
width: 152px;
}
.ql-snow.ql-toolbar .ql-picker.ql-color-picker .ql-picker-options .ql-picker-item {
border: 1px solid transparent;
float: left;
height: 16px;
margin: 2px;
padding: 0px;
width: 16px;
}
.ql-snow.ql-toolbar .ql-picker.ql-color-picker .ql-picker-options .ql-picker-item.ql-primary-color {
margin-bottom: 8px;
}
.ql-snow.ql-toolbar .ql-picker.ql-color-picker .ql-picker-options .ql-picker-item.ql-selected,
.ql-snow.ql-toolbar .ql-picker.ql-color-picker .ql-picker-options .ql-picker-item:hover {
border-color: #000;
}
.ql-snow.ql-toolbar .ql-picker.ql-font {
width: 105px;
}
.ql-snow.ql-toolbar .ql-picker.ql-size {
width: 80px;
}
.ql-snow.ql-toolbar .ql-picker.ql-font .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker.ql-size .ql-picker-label {
padding-left: 8px;
padding-right: 8px;
}
.ql-snow.ql-toolbar .ql-picker.ql-align .ql-picker-label {
background-position: center center;
width: 28px;
}
.ql-snow.ql-toolbar .ql-picker.ql-align .ql-picker-item {
box-sizing: border-box;
display: inline-block;
height: 24px;
line-height: 24px;
vertical-align: middle;
padding: 0px;
width: 28px;
}
.ql-snow.ql-toolbar .ql-picker.ql-align .ql-picker-options {
padding: 4px 0px;
}
.ql-snow.ql-toolbar .ql-picker .ql-picker-label {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAKlBMVEUAAABJSUlAQEBERERFRUVERERERERERERERERFRUVEREREREREREREREQJcW6NAAAADXRSTlMAFRzExcbLzM/Q0dLbKbcyLwAAADVJREFUCNdjYCAeMKYJQFnSdzdCWbl3r0NZvnev4tFre/cKlNV79yaUpXP3EJTFtEqBBHcAAHyoDQk0vM/lAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-picker.ql-expanded .ql-picker-label {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAdElEQVR42mP4//8/VfBINGjVqlUMhw4dEj148OBpEAaxQWKkGgQz5BIQ/4fiSyAxkg2CuuQ/Gj5DjkFHsRh0jJwwwooHzCCQ145g8dpRcgw6j8WgCyQbtH//fhmgxttIhtwGiZETRjDDLoIwiA0UG820FGAA5b25+qRqGXcAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-picker.ql-active:not(.ql-expanded) .ql-picker-label,
.ql-snow.ql-toolbar:not(.ios) .ql-picker:not(.ql-expanded) .ql-picker-label:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAKlBMVEUAAAAAYc4AZMgAZcwAZs0AZs0AZs0AZ8wAZswAZs0AZswAZswAZswAZsx12LPhAAAADXRSTlMAFRzExcbLzM/Q0dLbKbcyLwAAADVJREFUCNdjYCAeMKYJQFnSdzdCWbl3r0NZvnev4tFre/cKlNV79yaUpXP3EJTFtEqBBHcAAHyoDQk0vM/lAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-bold,
.ql-snow.ql-toolbar .ql-picker.ql-bold .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=bold],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=bold] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAYFBMVEUAAACAgIBAQEA5OTlAQEBERERAQEBERERERERERERDQ0NERERERERERERDQ0NERERERERFRUVERERERERFRUVERERERERERERERERERERERERERERERERERERERERERESN6WzHAAAAH3RSTlMAAggJDA8cQEtTWHF/i4yTpau+xMXX3O7v8/f6+/z+qN9w2AAAAFZJREFUeNqlzMcSgCAMRVEsYO+9vv//S9FhNIYld5HFmSTCqQ66dazkRzA1lPSQGRZGIsDMKMxRW7+2yCIcyf/QUyUGSnc+dkaqoFumM32pf2BqY+HUBfQaCPgVIBc1AAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-bold.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-bold .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=bold].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=bold].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-bold:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-bold .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=bold]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=bold]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAYFBMVEUAAAAAgP8AYL8AccYAatUAZswAZMgAZMsAZswAZcsAZcsAZssAZssAZ80AZswAZs0AZswAZ8wAZswAZcwAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsxCU9XcAAAAH3RSTlMAAggJDA8cQEtTWHF/i4yTpau+xMXX3O7v8/f6+/z+qN9w2AAAAFZJREFUeNqlzMcSgCAMRVEsYO+9vv//S9FhNIYld5HFmSTCqQ66dazkRzA1lPSQGRZGIsDMKMxRW7+2yCIcyf/QUyUGSnc+dkaqoFumM32pf2BqY+HUBfQaCPgVIBc1AAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-italic,
.ql-snow.ql-toolbar .ql-picker.ql-italic .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=italic],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=italic] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAi0lEQVR42mMYvoARl4SLi0sNkGoAYmY0qf+MjIztu3fvrkYWZGLADZhB8pS4CN1lQUBqLRDvAQJXHMqIstEISp8BEZQYZAIi/v//f5ZSg0xBBCMj4ymyDQKGjxKQEgLiV8DweUS2QUBXGEOZp0EEJV4zgdJnKDLo379/JsS6iJHSFA0DTDhT9CiAAQBbWyIY/pd4rQAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-italic.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-italic .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=italic].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=italic].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-italic:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-italic .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=italic]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=italic]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAk0lEQVR42u3SsQ3CMBBA0X/2BozACMQswg4EMQMUdOyQVdggdpagZAc4ihjJjYmU66K8xpZsfdnSsVxCzTFdEW6AB0oKcqdrLhQcNaK+PLc79QfapLTDgz8cU9Tv8ibZQqIBgI8OxhexH29KPz90jltgA7zownN+6C0Nowhg+JqEvCZbSDSHNDJBLBNdctWJXv18Ad5dJL0jVfDhAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-underline,
.ql-snow.ql-toolbar .ql-picker.ql-underline .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=underline],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=underline] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAM1BMVEUAAABLS0tFRUVDQ0NERERDQ0NFRUVFRUVERERDQ0NERERFRUVERERERERERERERERERESvCHKbAAAAEHRSTlMAERpMbW6Bgry9xMXh5PP51ZZfkwAAAEdJREFUeNq9yEEKgDAMRNHERDWq6dz/tFLBQUC6KfRtPnzpsh/sC2AHrcRUo0iuDXONI7gMxVW9wIQWPFb5sMgMk5YTdMmvGw2DA8yS9di7AAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-underline.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-underline .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=underline].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=underline].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-underline:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-underline .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=underline]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=underline]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAM1BMVEUAAAAAadIAYs4AZc0AZcwAZswAZ84AZswAZs0AZ8wAZcwAZs0AZswAZswAZswAZswAZsycBlETAAAAEHRSTlMAERpMbW6Bgry9xMXh5PP51ZZfkwAAAEdJREFUeNq9yEEKgDAMRNHERDWq6dz/tFLBQUC6KfRtPnzpsh/sC2AHrcRUo0iuDXONI7gMxVW9wIQWPFb5sMgMk5YTdMmvGw2DA8yS9di7AAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-strike,
.ql-snow.ql-toolbar .ql-picker.ql-strike .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=strike],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=strike] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAn1BMVEUAAAAAAACAgIBAQEA7OztAQEBLS0tHR0dAQEBJSUlGRkZERERCQkJERERDQ0NERERERERDQ0NFRUVERERERERERERERERERERFRUVERERERERERERFRUVDQ0NFRUVERERFRUVFRUVERERFRUVFRUVFRUVERERFRUVFRUVERERERERERERERERERERERERERERERERERERERERERERERERfrjwTAAAANHRSTlMAAQIMDRAREhQVKCk6PEhLT1xkZWZ4e4CCg4SIiZucoaersLK2wcTFydLX2ODi5err8fX3BKZfrQAAAH5JREFUGBmlwOEWgTAYBuC3isgMxCYAmwRh++7/2qRzttP/HnQTZjdjilkALzhR4wBvQiaLk8WXOJwlHVHjYgxnSmbeR0swGEkpxWZ3vt7fL/w9P4/ist+KdZ7zYYiWiCnScFYiRq1HFo4mxaKIKdJw0ooaVQovkaW1pUzQyQ86Agx4yKmWPAAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-strike.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-strike .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=strike].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=strike].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-strike:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-strike .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=strike]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=strike]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAolBMVEUAAAAAAP8AgP8AatUAYsQAYM8AadIAY8YAZswAYc4AZswAZM0AZcoAZswAZ8oAZswAZMsAZ8oAZswAZcoAZ8sAZswAZssAZssAZs0AZswAZ8wAZs0AZ8wAZs0AZswAZ8wAZ8wAZs0AZ8wAZ8wAZs0AZs0AZs0AZcwAZs0AZcwAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsyiCU+yAAAANXRSTlMAAQIMDRAREhQVKCk6PEhLT1xkZWZ4e4CAgoOEiImbnKGnq7CytsHExcnS19jg4uXq6/H190B1i7AAAAB/SURBVBgZpcDhFoEwGAbgt4pIBmImAJsEYfvu/9ZU52yn/z3oxk/vWuczD453psYRzoR0GkaLHzFYSzqhwvgY1pT0vI8WbzASQvDt/nJ7fN6ovb7P/HrYrTdZxoY+WoJEkoK14iEqPTKwFMkkCBJJClZcUqOM4USiMKYQETr5A2SVDLpJv6ZtAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-link,
.ql-snow.ql-toolbar .ql-picker.ql-link .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=link],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=link] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAllBMVEUAAAD///9VVVVJSUk5OTlAQEBHR0dFRUVCQkJHR0dBQUFCQkJGRkZDQ0NGRkZFRUVCQkJDQ0NERERDQ0NERERFRUVERERFRUVDQ0NERERFRUVERERERERFRUVERERERERERERERERFRUVERERFRUVFRUVERERERERERERERERERERERERERERERERERERERERERERERETx5KUoAAAAMXRSTlMAAAYHCQwZGiMkJzIzOUJOYGNlfoCJl5ibnaCxtLa8xsfIycrQ1OHi5uvs7e/19vn8NGTYeAAAAJdJREFUeNqN0McOgkAARdGnFJWiKGBhEEFpSn3//3OGjMmQ6MK7PMuLxVe/CXDTPl5DJmk3cOTTmZE7MDQES11RyhBY5vQU9aOB2z3gWVFMsXywYx3t9Q9tXsyDjlOVLQlOyanOL1ibkqB7l5odM01QSJqK6GdXmGwUHVhowImJIr2iMI9sLUWwa5LtFjPCSjSJBUl//HoDlmQPy0DFuCkAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-link.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-link .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=link].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=link].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-link:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-link .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=link]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=link]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAmVBMVEUAAAD///8AVdUAbdsAccYAatUAZswAYs4AZswAY80AacsAZswAZM0AZ8kAZM0AZcsAZcoAZMsAZcoAZcoAZssAZs0AZs0AZ8wAZs0AZswAZs0AZswAZs0AZswAZs0AZs0AZs0AZ8wAZswAZcwAZs0AZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsy/jsjWAAAAMnRSTlMAAAYHCQwZGiMkJzIzOUJOYGNlfoCAiZeYm52gsbS2vMbHyMnK0NTh4ubr7O3v9fb5/BM/koAAAACXSURBVHjajdDbEoFQAIXhpROqiAjaSdGJSq33fzjTbDO7GS78l9/lj9lXvwnw0le8gEzSuufAhzshr2doCpaGopQhoOX0Fb0GE9fbnidFMYV2Z8c62hgfWj6Z7zqOVY4kuCXHuqBgbUmC4Z9rdsx0QSFpLGKQXWCxUbRloQNHJoqMisI6sLUVwalJtitMCHPRJDYk/fHrDdIHECSPJag6AAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-image,
.ql-snow.ql-toolbar .ql-picker.ql-image .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=image],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=image] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAElBMVEUAAABERERERERFRUVEREREREQbmEZBAAAABXRSTlMAeMTFxj7M9NAAAABBSURBVAjXY2DAD1RDQSAYyAqFABALLANmMRnAWMwODIIMUFnGUAEIS1A0NADMYgTqhLBY4SyEKXCTTcGMEAJuAgBa9RKl6Fva+wAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-image.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-image .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=image].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=image].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-image:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-image .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=image]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=image]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAElBMVEUAAAAAZswAZcwAZs0AZs0AZszYB6XUAAAABXRSTlMAeMTFxj7M9NAAAABBSURBVAjXY2DAD1RDQSAYyAqFABALLANmMRnAWMwODIIMUFnGUAEIS1A0NADMYgTqhLBY4SyEKXCTTcGMEAJuAgBa9RKl6Fva+wAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-list,
.ql-snow.ql-toolbar .ql-picker.ql-list .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=list],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=list] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAS1BMVEUAAABCQkJFRUVGRkZFRUVCQkJFRUVDQ0NFRUVFRUVFRUVERERERERERERERERFRUVERERERERERERERERERERERERERERERERERET32eciAAAAGHRSTlMAMjRCQ0lOfYKQlJmaocTFxuHi5OXm9falfyKhAAAATElEQVR42mMgFnCKYIpJMDDwSUABP1yIHyYkABYRlBAmwngucV50IXZGIXTjmQTZ0I0XIcp4DjEedCFWFlF041mZRdCN5xDjZiAdAACXwgbrzvG+ZgAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-list.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-list .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=list].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=list].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-list:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-list .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=list]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=list]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAS1BMVEUAAAAAZswAZ8kAZM0AZ8oAZcsAZcsAZswAZswAZ80AZs0AZs0AZ80AZ8wAZcwAZs0AZs0AZswAZswAZswAZswAZswAZswAZswAZswCB3gJAAAAGHRSTlMAMjRCQ0lOfYKQlJmaocTFxuHi5OXm9falfyKhAAAATElEQVR42mMgFnCKYIpJMDDwSUABP1yIHyYkABYRlBAmwngucV50IXZGIXTjmQTZ0I0XIcp4DjEedCFWFlF041mZRdCN5xDjZiAdAACXwgbrzvG+ZgAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-bullet,
.ql-snow.ql-toolbar .ql-picker.ql-bullet .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=bullet],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=bullet] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAABERERFRUVERERERETRGyWnAAAABHRSTlMAxMXG4b8ciAAAABxJREFUCNdjYMAPhBhdgMAJyFJmArGcGRgGXAcA/t0ImAOSO9kAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-bullet.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-bullet .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=bullet].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=bullet].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-bullet:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-bullet .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=bullet]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=bullet]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAAAAZcwAZs0AZs0AZsyEYJIjAAAABHRSTlMAxMXG4b8ciAAAABxJREFUCNdjYMAPhBhdgMAJyFJmArGcGRgGXAcA/t0ImAOSO9kAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-authorship,
.ql-snow.ql-toolbar .ql-picker.ql-authorship .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=authorship],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=authorship] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAARVBMVEUAAABFRUVFRUUAAAAAAABERERDQ0NEREQAAABERERERERERERERERERERFRUVERERERERERERERERERERERERERERERERVeSBUAAAAFnRSTlMAMDtOT1JfYmassMfN09Ta6vD4+fz9w8DTTwAAAExJREFUGBmVwEkSgCAMBMBRQUEU4zb/f6oFF5KbNLp4EQ8rkxnWQ76whBRYkYwwxo08ZijDzWJBs7La0ZysLjSJVUKXKSgOhQuKw08fJOYE1SddZQoAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-authorship.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-authorship .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=authorship].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=authorship].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-authorship:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-authorship .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=authorship]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=authorship]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAARVBMVEUAAAAAZcoAaMsAZc4AZ8sAZ8oAZswAZcsAZ80AZs0AZ8wAZ8wAZswAZswAZswAZs0AZswAZswAZswAZswAZswAZswAZszAoUIuAAAAFnRSTlMAMDtOT1JfYmassMfN09Ta6vD4+fz9w8DTTwAAAExJREFUGBmVwEkSgCAMBMBRQUEU4zb/f6oFF5KbNLp4EQ8rkxnWQ76whBRYkYwwxo08ZijDzWJBs7La0ZysLjSJVUKXKSgOhQuKw08fJOYE1SddZQoAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-color,
.ql-snow.ql-toolbar .ql-picker.ql-color .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=color],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=color] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAgVBMVEUAAAAAAACAgIBAQEBVVVVDQ0NGRkZGRkZFRUVERERDQ0NDQ0NDQ0NCQkIAAABFRUUAAABDQ0NEREREREREREQAAABDQ0NDQ0NERERFRUVERERERERERERDQ0NERERERERFRUVFRUVERERERERERERERERERERERERERERERERERERLPkdWAAAAKnRSTlMAAQIEBhMWISUtLkVMTU5OT1BTVlpmeX6OkJmdvL3GztTj5/Hy8/b3/f5utmv0AAAAX0lEQVR42pXIRQ6AQABDUdzd3bX3PyCWwAwr+Is2ecyvuKriXmQD5otKoKBFQz+sKkU5khQZKdK8yMoyiQTFOIseEbqLWv6mAPW+bAPvJmN0j/N7nfmTFRI5Jzk0fWwD4sYJPnqIyzwAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-color.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-color .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=color].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=color].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-color:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-color .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=color]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=color]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAgVBMVEUAAAAAAP8AgP8AgL8AVdUAa8kAaNEAZMkAZ8gAZswAZM0AZMsAZc0AZ8oAZcsAZc4AZ8sAZswAZcsAZc0AZswAZ80AZcoAZcoAZs0AZ80AZs0AZs0AZs0AZ8wAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsy3JBcuAAAAKnRSTlMAAQIEBhMWISUtLkVMTU5OT1BTVlpmeX6OkJmdvL3GztTj5/Hy8/b3/f5utmv0AAAAX0lEQVR42pXIRQ6AQABDUdzd3bX3PyCWwAwr+Is2ecyvuKriXmQB5otKoKBFQz+sKkU5khQZKdK8yMoyiQTFOIseEbqLWv6mAPW+bAPvJmN0j/N7nfmTHRI5Jzk0fWwD4foJPqgJbeoAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-background,
.ql-snow.ql-toolbar .ql-picker.ql-background .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=background],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=background] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAnFBMVEUAAAAAAACAgIBAQEAAAABVVVUAAAAAAAAAAABDQ0MAAABGRkZGRkYAAABFRUVERERDQ0MAAAAAAAAAAAAAAABDQ0MAAABDQ0MAAABCQkJFRUVDQ0NERERERERERERDQ0NDQ0NERERFRUVERERERERERERDQ0NERERERERFRUVFRUVERERERERERERERERERERERERERERERERERETMTXVbAAAAM3RSTlMAAQIEBgYHCBMTFBYhIyUtLjE2N0JFS0xNTU5QU1ZaeX6OkJmdvL3GztTj5/Hy8/b3/f5Qd6EEAAAAf0lEQVR42o2PRw6DQBRDHVJISCUhvTd69/3vhgT6MLPDmoX15KfRR++c6mdKgVIOTRFoeJ6hE+tCnjXRgUv+oc02jJNyrYk/vj/8jhRxnheLVZHNupn1Yp3nVIgzjhoUDlvxQR/AIOBtKbNjerUB+x7vhZjARPkLyslbYIe+qQDqMQxGJwkBGwAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-background.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-background .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=background].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=background].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-background:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-background .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=background]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=background]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAllBMVEUAAAAAAP8AgP8AgL8AVdUAbbYAYL8Aa8kAZswAaNEAZMkAZswAZ8gAZswAZM0AaMsAaNAAZswAZM0AZMsAZswAZc0AZ8oAZ80AZcsAZswAZcsAZc0AZswAZcoAZcoAZs0AZ80AZs0AZs0AZs0AZ8wAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsy8dW5vAAAAMXRSTlMAAQIEBgcIExQWISMlLS4xNjdCRUtMTU1OUFNWWnl+jpCZnby9xs7U4+fx8vP29/3+dqGBzgAAAH5JREFUeNqNj0cOg0AUQx1CgFQS0nujd9//ckigDzM7rFlYT34afYzOuX2WFCjl0BWBRhAYOnEu5EkTPfjkH9pswzSr15r44/vDr6mI87JarKrCHmbOi22ethDPTDoUT3vxwRDAJOJtKbNjfnUB957uhVjATPkLyslbYIexaQB/ngudkm14XQAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-left,
.ql-snow.ql-toolbar .ql-picker.ql-left .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=left],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=left] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAABERERFRUVERERERETRGyWnAAAABHRSTlMAxMXG4b8ciAAAAClJREFUCNdjYMAPRFxcnCAsFRcXZwYiAFCHC0STCpjlTJwOJwaYDoIaAKIACBBRNsu4AAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-left.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-left .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=left].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=left].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-left:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-left .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=left]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=left]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAAAAZcwAZs0AZs0AZsyEYJIjAAAABHRSTlMAxMXG4b8ciAAAAClJREFUCNdjYMAPRFxcnCAsFRcXZwYiAFCHC0STCpjlTJwOJwaYDoIaAKIACBBRNsu4AAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-right,
.ql-snow.ql-toolbar .ql-picker.ql-right .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=right],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=right] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAABERERFRUVERERERETRGyWnAAAABHRSTlMAxMXG4b8ciAAAAChJREFUCNdjYCAIRFxcnCAsFRcXZ2KUu0B0qIBZzgzEaXFigGkhpAMAmbwIEMJ9k/cAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-right.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-right .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=right].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=right].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-right:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-right .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=right]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=right]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAAAAZcwAZs0AZs0AZsyEYJIjAAAABHRSTlMAxMXG4b8ciAAAAChJREFUCNdjYCAIRFxcnCAsFRcXZ2KUu0B0qIBZzgzEaXFigGkhpAMAmbwIEMJ9k/cAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-center,
.ql-snow.ql-toolbar .ql-picker.ql-center .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=center],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=center] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAABERERFRUVERERERETRGyWnAAAABHRSTlMAxMXG4b8ciAAAAC1JREFUCNdjYCAAGF1cXBTALCYgy4CBIBBxAQEnIEsFzHJmIMYKiCVMYBYhSwCyqQhMfft6AQAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-center.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-center .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=center].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=center].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-center:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-center .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=center]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=center]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAAAAZcwAZs0AZs0AZsyEYJIjAAAABHRSTlMAxMXG4b8ciAAAAC1JREFUCNdjYCAAGF1cXBTALCYgy4CBIBBxAQEnIEsFzHJmIMYKiCVMYBYhSwCyqQhMfft6AQAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-justify,
.ql-snow.ql-toolbar .ql-picker.ql-justify .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=justify],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=justify] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAAD1BMVEUAAABERERFRUVERERERETRGyWnAAAABHRSTlMAxMXG4b8ciAAAABpJREFUCNdjYMAPRFxAwAnIUgGznBkYBlwHAJGzCjB/C3owAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-justify.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-justify .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=justify].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=justify].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-justify:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-justify .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=justify]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=justify]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAALklEQVR42mMYvoARzko9cwTIsyZR+zGGWcZgPUwIMUZGShwyGtijgT0a2EMMAADESwwWta/i5QAAAABJRU5ErkJggg==");
}
@media (-webkit-min-device-pixel-ratio: 2) {
.ql-snow.ql-toolbar .ql-picker .ql-picker-label {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAIVBMVEUAAABCQkJDQ0NDQ0NERERERERERERERERERERERERERERehmmoAAAACnRSTlMATVRbaeXo6fz+NPhZJgAAAF9JREFUKM9jYBjkQC0JXYS5a4UBmpDFqlXN6IpWrUJTprEKCJpQhLJAQsswhZaiCImDhAJp5kMxkPGJZLjLEiQ0GUWIZdaqVSsdUM33XLVqCpqVLLPQFTEwmAcP9qQAAFUgKabkwE6gAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-picker.ql-expanded .ql-picker-label {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAJFBMVEWqqqr////AwMDAwMDAwMDBwcHBwcHBwcHBwcHBwcHBwcHBwcEexLCPAAAAC3RSTlMAAE1UW2nl6On8/tZA57EAAABxSURBVHjazc4hFkBAGMTxL3AAp+AGniYiyaLnBETHoKkknbc7l7OrzW7zhP3HX5mRxCskEsknEaZoU6VDNbAyRRugSqICpoVotnT7dBFllnpefPuHUpjGD78aSztRfAK65cUOOIQpPnXrkFSDEFFB0APtK1HCkKpz1wAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-picker.ql-active:not(.ql-expanded) .ql-picker-label,
.ql-snow.ql-toolbar:not(.ios) .ql-picker:not(.ql-expanded) .ql-picker-label:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAIVBMVEUAAAAAZ8oAZMsAZc0AZswAZswAZswAZswAZswAZswAZswhMkyGAAAACnRSTlMATVRbaeXo6fz+NPhZJgAAAF9JREFUKM9jYBjkQC0JXYS5a4UBmpDFqlXN6IpWrUJTprEKCJpQhLJAQsswhZaiCImDhAJp5kMxkPGJZLjLEiQ0GUWIZdaqVSsdUM33XLVqCpqVLLPQFTEwmAcP9qQAAFUgKabkwE6gAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-bold,
.ql-snow.ql-toolbar .ql-picker.ql-bold .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=bold],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=bold] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAxlBMVEUAAABVVVUzMzNVVVVJSUlGRkZAQEBJSUlAQEBAQEBAQEBHR0dCQkJGRkZAQEBGRkZCQkJERERDQ0NDQ0NGRkZERERDQ0NFRUVCQkJFRUVERERDQ0NDQ0NFRUVDQ0NERERERERERERERERERERERERERERERERERERFRUVDQ0NERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERfjmwgAAAAQXRSTlMAAwUGBwsMDhAUGBkbHSAhIykuOUJERUpNUVZYXGRne3yAi4+SmqWmq67R1tfY2dve5ujp7/Dy8/T19vf4+fv8/mUg1b0AAACrSURBVDjL5dPFDgJBEEXRxt3d3d11gPv/P8WCEAgZuno/b1WLk1TqJaWUI1Jc8852Mqz5bdHHALDK2CF+ckgYIHp/0GtypxpHYKlFSqkycJeQD7hIKADMJFQHulrkSrYs2MflCnZZgzKvo7RJmZeSAWIf1V3nihSGAG19BUq1gKmEQsBZQkHAklATmOuQN5zvP4COQQWnmIxuFfERWOTsXmrztWg8qHqUU/IEzOhNFx6Ncl4AAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-bold.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-bold .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=bold].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=bold].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-bold:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-bold .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=bold]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=bold]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAxlBMVEUAAAAAVaoAZswAVdUAbdsAXdEAatUAbcgAYM8AZswAasoAZswAaNAAasoAaMcAZMkAZswAZM0AZM0AZ8kAZM0AZcsAZMsAZMsAZ8oAZc0AZc0AZcsAZ8oAZswAZssAZssAZcwAZssAZ80AZs0AZ8wAZ80AZswAZ8wAZ8wAZ8wAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsyeO+aMAAAAQXRSTlMAAwUGBwsMDhAUGBkbHSAhIykuOUJERUpNUVZYXGRne3yAi4+SmqWmq67R1tfY2dve5ujp7/Dy8/T19vf4+fv8/mUg1b0AAACrSURBVDjL5dPFDgJBEEXRxt3d3d11gPv/P8WCEAgZuno/b1WLk1TqJaWUI1Jc8852Mqz5bdHHALDK2CF+ckgYIHp/0GtypxpHYKlFSqkycJeQD7hIKADMJFQHulrkSrYs2MflCnZZgzKvo7RJmZeSAWIf1V3nihSGAG19BUq1gKmEQsBZQkHAklATmOuQN5zvP4COQQWnmIxuFfERWOTsXmrztWg8qHqUU/IEzOhNFx6Ncl4AAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-italic,
.ql-snow.ql-toolbar .ql-picker.ql-italic .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=italic],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=italic] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAjVBMVEUAAAAAAACAgIBAQEBVVVVAQEBAQEBCQkJCQkJFRUVDQ0NBQUFDQ0NDQ0NDQ0NFRUVERERERERERERDQ0NERERDQ0NERERERERERERFRUVFRUVERERFRUVERERERERDQ0NERERERERERERDQ0NFRUVEREREREREREREREREREREREREREREREREREREREQUqV1+AAAALnRSTlMAAQIEBggMGyMlKisuUFhZXmJmb3R9hIiKjZGTlKWprrG0uL3BxObt8PL19/j9SqrrawAAAIJJREFUOMvl0jUOQgEQRVHc3d1dzv6XRwch+WRq4NYnmVdMKvU35RZXz+7LQiJqe6uXiDrvqJuI8vM7ALd14fOwIabR+i1agUmfUA1QGedMgJrYRZPGGEVoh0ZgMmeUAlTBMbrWwiZCEwwitEc9MNkLigGq4RBda2MVoRn6X/jfv9YDjuYgGnCpSqcAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-italic.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-italic .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=italic].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=italic].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-italic:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-italic .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=italic]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=italic]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAjVBMVEUAAAAAAP8AgP8AgL8AVdUAYL8AatUAaNAAZswAZ8gAZ8gAZcoAZM0AZswAZcsAZMsAZMsAZcsAZ8sAZcoAZcoAZswAZs0AZ8wAZs0AZ8wAZswAZs0AZs0AZswAZ8wAZ8wAZs0AZswAZ8wAZ8wAZs0AZcwAZswAZswAZswAZswAZswAZswAZswAZswAZsyyI9XbAAAALnRSTlMAAQIEBggMGyMlKisuUFhZXmJmb3R9hIiKjZGTlKWprrG0uL3BxObt8PL19/j9SqrrawAAAIJJREFUOMvl0jUOQgEQRVHc3d1dzv6XRwch+WRq4NYnmVdMKvU35RZXz+7LQiJqe6uXiDrvqJuI8vM7ALd14fOwIabR+i1agUmfUA1QGedMgJrYRZPGGEVoh0ZgMmeUAlTBMbrWwiZCEwwitEc9MNkLigGq4RBda2MVoRn6X/jfv9YDjuYgGnCpSqcAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-underline,
.ql-snow.ql-toolbar .ql-picker.ql-underline .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=underline],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=underline] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAWlBMVEUAAAAAAAAzMzNAQEBGRkZERERERERCQkJERERDQ0NFRUVERERERERFRUVERERERERERERFRUVERERERERERERDQ0NFRUVERERERERERERERERERERERERERET15sOLAAAAHXRSTlMAAQUMLC04TU9UVYePkJKkxMXG2Nrf4+jz9/n6/qlZ0HQAAACUSURBVHja7Y3BDsIgEAW3UCmCFatQxLL//5uuiQ0py1EPxs5tHhMW/oMhxoF5TUSMzGuQqH2PfiO60yiLStIHi260qqKKNLDI0XouOpI6Fh1f/x9W6xOpYZHwNM/9u5lJvACGzvSQRiWlOiUkNDSwuMFCi87mkmTbQRvt18aXWwxhXFiW4IyAr3LBJtMmmtrRFT7ME0B0HEswIOSJAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-underline.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-underline .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=underline].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=underline].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-underline:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-underline .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=underline]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=underline]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAWlBMVEUAAAAAAP8AZswAatUAaMsAZswAZM0AZ8oAZMsAZMsAZswAZswAZs0AZ80AZ8wAZ8wAZcwAZs0AZs0AZswAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZszogqY1AAAAHXRSTlMAAQUMLC04TU9UVYePkJKkxMXG2Nrf4+jz9/n6/qlZ0HQAAACUSURBVHja7Y3BDsIgEAW3UCmCFatQxLL//5uuiQ0py1EPxs5tHhMW/oMhxoF5TUSMzGuQqH2PfiO60yiLStIHi260qqKKNLDI0XouOpI6Fh1f/x9W6xOpYZHwNM/9u5lJvACGzvSQRiWlOiUkNDSwuMFCi87mkmTbQRvt18aXWwxhXFiW4IyAr3LBJtMmmtrRFT7ME0B0HEswIOSJAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-strike,
.ql-snow.ql-toolbar .ql-picker.ql-strike .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=strike],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=strike] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAABLFBMVEUAAACAgIBVVVVAQEAzMzNVVVVAQEA5OTlNTU1JSUlERERHR0dDQ0NGRkZDQ0NAQEBCQkJAQEBGRkZAQEBGRkZERERBQUFERERGRkZCQkJGRkZERERFRUVERERDQ0NFRUVERERDQ0NFRUVCQkJDQ0NFRUVCQkJDQ0NERERDQ0NERERERERDQ0NFRUVERERERERERERERERFRUVERERDQ0NFRUVERERERERFRUVERERERERDQ0NDQ0NFRUVERERERERFRUVERERERERFRUVERERERERDQ0NERERFRUVERERERERERERFRUVERERERERERERERERFRUVERERERERERERFRUVERERERERERERERERERERERERERERERERERERERERERERERERERERERET5TTiyAAAAY3RSTlMAAgMEBQYICQoODxITFhcYGxwdICEtLzEzNjc4P0BFRkdISk1YWWBjaWtsdHZ3f4CHiImKjJGSk5SVl5ufo6Smp625uru8vb/BwsPExcbMzs/Q0dPi4+Tl6+zv8PL19vf4+/z2SQ4sAAABE0lEQVQ4y2NgGDmAV8c5PCkxxFGDE6cSDuOEZCiI0WXGroY/OBkJeHJhU8Pkm4wCXBixKFIHyUTqibJzS5lEgNhqWBT5AMWD+CFsHg8gxxuLoniguCyMIwLkxGFRBPKZDKEw8gMqCuAloEgb7HADMTZ8ijisjHTUlCSFOdgFxeVUNPXM7Z38QmJ9EApQxFFCyxeuxhtFPC7U39nBQl9LVV5CiAMpiFDEOYQlldR0jGwM8DmOVVDRLBpkpDIBr/KBXOBKKNSEgYpiMUQjgaLChBQ5A0W94AHO6wXkumEoUgY5NcpUUYCFRUDBNAqHw22T0YAdNp9bo6qxZMLqI4VAhJIgBZwelzZ0D4uLC3M3lB5B5QgAFQdgZ6NzzvYAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-strike.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-strike .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=strike].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=strike].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-strike:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-strike .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=strike]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=strike]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAABLFBMVEUAAAAAgP8AVaoAgL8AZswAVdUAYL8AccYAZswAbcgAZswAY8YAa8kAaNEAZMgAasoAaNAAZMgAasoAaMcAZMkAZswAZ8kAaMsAZM0AaMsAZswAZM0AZcoAZMsAZMsAZswAZc0AZ8oAZMsAZ8oAZcsAZMsAZcoAZMsAZswAZssAZssAZcoAZssAZcwAZssAZs0AZswAZ8wAZs0AZs0AZswAZswAZ8wAZs0AZs0AZ80AZ8wAZswAZ8wAZs0AZ8wAZ8wAZs0AZs0AZswAZ8wAZs0AZs0AZ8wAZcwAZs0AZ8wAZswAZcwAZs0AZs0AZ8wAZswAZswAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswL5dPDAAAAY3RSTlMAAgMEBQYICQoODxITFhcYGxwdICEtLzEzNjc4P0BFRkdISk1YWWBjaWtsdHZ3f4CHiImKjJGSk5SVl5ufo6Smp625uru8vb/BwsPExcbMzs/Q0dPi4+Tl6+zv8PL19vf4+/z2SQ4sAAABE0lEQVQ4y2NgGDmAV8c5PCkxxFGDE6cSDuOEZCiI0WXGroY/OBkJeHJhU8Pkm4wCXBixKFIHyUTqibJzS5lEgNhqWBT5AMWD+CFsHg8gxxuLoniguCyMIwLkxGFRBPKZDKEw8gMqCuAloEgb7HADMTZ8ijisjHTUlCSFOdgFxeVUNPXM7Z38QmJ9EApQxFFCyxeuxhtFPC7U39nBQl9LVV5CiAMpiFDEOYQlldR0jGwM8DmOVVDRLBpkpDIBr/KBXOBKKNSEgYpiMUQjgaLChBQ5A0W94AHO6wXkumEoUgY5NcpUUYCFRUDBNAqHw22T0YAdNp9bo6qxZMLqI4VAhJIgBZwelzZ0D4uLC3M3lB5B5QgAFQdgZ6NzzvYAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-link,
.ql-snow.ql-toolbar .ql-picker.ql-link .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=link],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=link] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAABDlBMVEUAAAD///8AAACAgIBVVVVAQEAzMzNVVVVAQEBNTU1HR0dAQEBJSUlGRkZDQ0NAQEBERERHR0dGRkZDQ0NBQUFGRkZERERCQkJGRkZFRUVCQkJFRUVERERDQ0NDQ0NCQkJFRUVDQ0NERERDQ0NFRUVDQ0NFRUVFRUVFRUVFRUVERERDQ0NFRUVERERFRUVERERERERDQ0NFRUVFRUVERERERERERERERERFRUVERERERERERERFRUVDQ0NERERERERFRUVERERERERERERERERERERERERERERERERERERERERFRUVERERERERERERERERERERERERERERERERERERERERERERERERERERERESFPz0UAAAAWXRSTlMAAAECAwQFBggKEhQVFhccHiQoKissLTIzNDpGR0hMTU5QUlRVW12BgoaHjI2PmJmam5ygpKWosbKztLW6vcDD0NLT2Nna3N7g4eLj5Ofo6err7u/w8vn7/A90CXkAAAFqSURBVDjLzdTHUgJREIXho8yo6JgFc0LFjAkVMZAFJYrCzP/+L+JCtJipS5U7Patbt79Vd1dr6BfRHyBJUiie6dSSiwrEh2aeAPAO7cEoUqWXdHgQirQAOh7A46gZzVQBzsfmSgAnRhR6AjiS5OQAd9aE4t9GmqoCCRPKAGe9zzhQDxlQBzpjknab9c2RD2DBgGrgzUlqQnfrHlg3oGug6Eh1oFsAEtvLVhAteUBuSjseP2lfzQf6dARQjY/s9SncY9uH7DQA7+ky/XkI+8YSfvRVC6k3AO4s34BHT90+1N2yYq8A+/5V0Wyi0ac2NJkD3KgfSaGF9QRQ9oCC5JSAiyCStA2k9jzISooCFQNaBlpWrJBdkTThQsOA7DYQ+3pbKeDWgHQFvDiSNJwEWDWheRfIOZKVBLiRCekYoBiZSAHkx83IfgDABXielhkpfAcAkJ/WICTrwAXgZlyDkRS9rDRu1wJL98/u0yeVYHcP1mwWWgAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-link.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-link .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=link].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=link].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-link:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-link .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=link]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=link]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAABDlBMVEUAAAD///8AAP8AgP8AVaoAgL8AZswAVdUAYL8AZswAY8YAZswAYc4AaNEAZMgAZMgAZswAY80AZswAZ8gAZcoAaMsAZswAZswAZM0AZ8kAZcoAZswAZc0AZ8oAZc0AZ8oAZcsAZswAZ8oAZMsAZswAZc0AZcsAZ84AZswAZ84AZswAZswAZ8wAZs0AZs0AZs0AZ80AZswAZ8wAZswAZ8wAZswAZs0AZs0AZs0AZ8wAZswAZ8wAZ8wAZ8wAZs0AZswAZs0AZswAZswAZswAZswAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsxCnEEHAAAAWXRSTlMAAAECAwQFBggKEhQVFhccHiQoKissLTIzNDpGR0hMTU5QUlRVW12BgoaHjI2PmJmam5ygpKWosbKztLW6vcDD0NLT2Nna3N7g4eLj5Ofo6err7u/w8vn7/A90CXkAAAFqSURBVDjLzdTHUgJREIXho8yo6JgFc0LFjAkVMZAFJYrCzP/+L+JCtJipS5U7Patbt79Vd1dr6BfRHyBJUiie6dSSiwrEh2aeAPAO7cEoUqWXdHgQirQAOh7A46gZzVQBzsfmSgAnRhR6AjiS5OQAd9aE4t9GmqoCCRPKAGe9zzhQDxlQBzpjknab9c2RD2DBgGrgzUlqQnfrHlg3oGug6Eh1oFsAEtvLVhAteUBuSjseP2lfzQf6dARQjY/s9SncY9uH7DQA7+ky/XkI+8YSfvRVC6k3AO4s34BHT90+1N2yYq8A+/5V0Wyi0ac2NJkD3KgfSaGF9QRQ9oCC5JSAiyCStA2k9jzISooCFQNaBlpWrJBdkTThQsOA7DYQ+3pbKeDWgHQFvDiSNJwEWDWheRfIOZKVBLiRCekYoBiZSAHkx83IfgDABXielhkpfAcAkJ/WICTrwAXgZlyDkRS9rDRu1wJL98/u0yeVYHcP1mwWWgAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-image,
.ql-snow.ql-toolbar .ql-picker.ql-image .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=image],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=image] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAFVBMVEUAAABCQkJEREREREREREREREREREQL6X1nAAAABnRSTlMATXjl6OmAFiJpAAAAZklEQVR42sXQsQ3AIAxEUeQZoKdyzwg0DALo9h8hiCYXo4R0/MbSK1ycO5EHlScVpj4Jj97p/vtJPi9U+kptXIlMIY2r1b4XIBpSoDJJFIyYtKohAWBIV8Ke9kv8X7WwtEmBKbkDXfWkWdehkaSCAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-image.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-image .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=image].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=image].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-image:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-image .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=image]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=image]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAFVBMVEUAAAAAZ8oAZswAZswAZswAZswAZsx4QzxlAAAABnRSTlMATXjl6OmAFiJpAAAAZklEQVR42sXQsQ3AIAxEUeQZoKdyzwg0DALo9h8hiCYXo4R0/MbSK1ycO5EHlScVpj4Jj97p/vtJPi9U+kptXIlMIY2r1b4XIBpSoDJJFIyYtKohAWBIV8Ke9kv8X7WwtEmBKbkDXfWkWdehkaSCAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-list,
.ql-snow.ql-toolbar .ql-picker.ql-list .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=list],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=list] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAw1BMVEUAAAAAAABVVVVAQEBERERAQEBJSUlGRkZHR0dFRUVCQkJERERAQEBGRkZDQ0NFRUVDQ0NCQkJGRkZDQ0NCQkJERERDQ0NFRUVERERFRUVERERDQ0NERERERERDQ0NFRUVERERERERERERERERERERERERERERFRUVERERERERERERFRUVERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERESFbZw4AAAAQHRSTlMAAQYIDxAVFhkaGx4gKCo0NTY3OU10fYKIiYqMj56fo6SmqKmvtLe6vr/ExcbLz9fh4uXm5+jp7O/w8vP3+vv9Z7IwDAAAAK1JREFUOMvV0scOglAQQFGwYO+oiIq9YldEFPX+/1e5cGEii2FFdNY3b/JORlF+dAqNrS1GQyDEW+9Id/gaRw9EgQacMNEhuO4caD7rlgDS/2yAVWTiia53HWeEaMLzwUKIdvt08n4TxLMptc1UEo/38YqCuGZzKknimxDi6jpa8Vjn6I4kcQNgLkSmVSvjizeeb9ITbzxXxxLETatSxRfEWwAzicC4uANN+at5AdptTQ0Ubk4LAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-list.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-list .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=list].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=list].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-list:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-list .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=list]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=list]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAw1BMVEUAAAAAAP8AVdUAYL8AZswAYM8AYc4AaNEAZswAYs4AaNAAZswAaMcAZswAZ8gAZ8kAZcoAaMsAZswAZ8kAZ8oAZcoAZswAZswAZ8wAZs0AZs0AZswAZs0AZs0AZ8wAZs0AZ8wAZ8wAZs0AZ8wAZswAZswAZs0AZ8wAZswAZcwAZcwAZs0AZs0AZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZszno9YmAAAAQHRSTlMAAQYIDxAVFhkaGx4gKCo0NTY3OU10fYKIiYqMj56fo6SmqKmvtLe6vr/ExcbLz9fh4uXm5+jp7O/w8vP3+vv9Z7IwDAAAAK1JREFUOMvV0scOglAQQFGwYO+oiIq9YldEFPX+/1e5cGEii2FFdNY3b/JORlF+dAqNrS1GQyDEW+9Id/gaRw9EgQacMNEhuO4caD7rlgDS/2yAVWTiia53HWeEaMLzwUKIdvt08n4TxLMptc1UEo/38YqCuGZzKknimxDi6jpa8Vjn6I4kcQNgLkSmVSvjizeeb9ITbzxXxxLETatSxRfEWwAzicC4uANN+at5AdptTQ0Ubk4LAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-bullet,
.ql-snow.ql-toolbar .ql-picker.ql-bullet .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=bullet],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=bullet] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAABCQkJEREREREREREREREQc4xmxAAAABXRSTlMATeXo6UtNtyIAAAAzSURBVCjPY2AYACBsyCAcCgOGYCHTYAZTuFAwRCgISSgILCSiyCACF1JkGBgw6voBcj0AFsUtDasGrUcAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-bullet.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-bullet .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=bullet].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=bullet].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-bullet:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-bullet .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=bullet]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=bullet]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAAAAZ8oAZswAZswAZswAZsxixJGvAAAABXRSTlMATeXo6UtNtyIAAAAzSURBVCjPY2AYACBsyCAcCgOGYCHTYAZTuFAwRCgISSgILCSiyCACF1JkGBgw6voBcj0AFsUtDasGrUcAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-authorship,
.ql-snow.ql-toolbar .ql-picker.ql-authorship .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=authorship],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=authorship] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAllBMVEUAAACAgIBAQEBCQkIAAABCQkJAQEBGRkZERERERERCQkJGRkZDQ0NDQ0NDQ0MAAAAAAAAAAABDQ0NFRUVERERFRUVERERFRUVERERFRUVERERERERERERERERERERERERERERFRUVEREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREQe3JVeAAAAMXRSTlMAAhgbHx8gIS0xMjM5VFdcXWZyd3yChImPkKy4yMrO0tPj5ebq7e7v8PLz9/j6/P3+mEwo9QAAAJxJREFUGBnVwNcOgjAYBeCj4l7FjeAGUZzn/V9O0kikSftf44c/0A+Tc9iFqHll7tKEJKAWQLKjtockpZZC8qL2hiSjlkESUYsgmVNbQtKhNoCgNrwz95w14NTe8Os2gUP9wJ8p7NYsebRg06NhAZsVDRFstjQksMlogs2Rhhg2o5glpxGqz1O+g/JQUL6TQkH5TmMUPOU7jD1U1AdG8S1kERvjygAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-authorship.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-authorship .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=authorship].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=authorship].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-authorship:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-authorship .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=authorship]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=authorship]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAllBMVEUAAAAAgP8AasoAaNAAY84AaMcAZMkAZswAaMsAZswAZM0AZ8kAZMsAZ8oAZ8oAZcsAZc4AZ80AZcwAZcwAZcwAZswAZs0AZs0AZs0AZ80AZs0AZ8wAZswAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsyCDIYeAAAAMXRSTlMAAhgbHyAhLTEyMzlUV1xdXWZyd3yChImPkKy4yMrO0tPj5ebq7e7v8PLz9/j6/P3+PxHOPAAAAJxJREFUGBnVwNcOgjAYBeCj1j0q7oEbRHGe9385SSORJu1/jR/+QGcdn9ctiNSVmYuCZEljCcmOxh6ShEYCyYvGG5KURgpJSCOEZEpjDkmTRheCSu/OzHNSg1djw6/bCB7VA3/GcFux4FGHS5uWGVwWtIRw2dISwyWlDS5HWiK49CMWnPooP6UDD62Q04GXRk4HXgPk1DDwGCiU1AcZWy1RmD8CRQAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-color,
.ql-snow.ql-toolbar .ql-picker.ql-color .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=color],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=color] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAz1BMVEUAAAAAAACAgIBVVVVAQEBVVVU5OTk7OztLS0tHR0dGRkZCQkIAAABERERDQ0NDQ0NDQ0NDQ0NGRkZERERERERCQkJFRUVERERFRUVEREQAAAAAAABDQ0NFRUVEREQAAABERERFRUVERERDQ0NDQ0NERERERERERERERERERERERERERERERERERERFRUVFRUVERERERERERERERERERERDQ0NERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERbYaT1AAAARHRSTlMAAQIDBAYJDRESFhsfIiYqNUFCREtNVVZZWlxdY2RlZm1zdXZ9hI6Tl6Sws7nExcnS09XY2d/g5ejp6+zt8PP09/n9/idH/qoAAADKSURBVBgZ1cDXUsJAAIXhg2KMGruxsGoUe8cWoij1f/9nYiZDGJjsLrfwaRHEWRZrhuAXWoH8zgBO5VVpADTktU9uVz5P5B7lsdUn19+U2x3w+gbcyilsA0cnwP+qXOpAWl1pAhdyqKZAXboGvpZkdwi0Q2m9CxzI7oUJz7LaYdJgWzYPTLmXxUaPKZ01ld0A7xXllr+BK5VlwLlGLoFPlWXQCjQSduBDZfFPM9bY8V+6p7kXmcTBRCqYxMmoYBKnmgqRSRxqkebUEKsKOlxMa6IbAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-color.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-color .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=color].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=color].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-color:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-color .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=color]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=color]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAA0lBMVEUAAAAAAP8AgP8AVaoAgL8AVdUAccYAYsQAadIAY8YAaNEAaNAAY84AacsAZckAZ8gAZcoAZswAZM0AZcsAZswAZ8oAZswAZc0AZMsAZswAZ8oAZcsAZc4AZMsAZswAZcoAZ80AZcwAZswAZssAZssAZswAZs0AZs0AZs0AZ8wAZ8wAZ8wAZ8wAZswAZcwAZs0AZcwAZswAZswAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswVaivDAAAARXRSTlMAAQIDBAYJDRESFhsfIiYqNUFCREtNVVZZWlxdXWNkZWZtc3V2fYSOk5eksLO5xMXJ0tPV2Nnf4OXo6evs7fDz9Pf5/f6Y2SWXAAAAy0lEQVQYGdXA11LCQACF4YNijBq7sbCWKPaOLURREPjf/5WYyRAGJrvLLXyaB3GWxZoi+IFWIL9TgBN5VRoADXntktuWzyO5B3ls9Mj11uV2C7y8AjdyCtvAwRHwtyyXOpBWl5rAuRyqKVCXroDPBdntA+1QWv0H9mT3zJgnWW0xrr8pm3sm3MlircuEzorKroG3inKLX8ClyjLgTEMXwIfKMmgFGgo78K6y+LsZa+TwN93RzItM4mAiFUziZFQwiVNNheg4cahFmlEDFzs7cwmPHM8AAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-background,
.ql-snow.ql-toolbar .ql-picker.ql-background .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=background],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=background] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAA4VBMVEUAAAAAAACAgIBVVVVAQEBVVVU5OTk7OztLS0tHR0dGRkZCQkJERERDQ0NDQ0NDQ0NDQ0NERERCQkJEREQAAAADAwMGBgZDQ0NEREQODg5ERERDQ0NFRUVERERERERERERDQ0MiIiJDQ0MmJiZEREQrKytEREREREQyMjIyMjJEREREREREREQ4ODhERERERERFRUVFRUVERERERERERERERERAQEBERERERERBQUFERERERERERERBQUFERERERERERERBQUFERERERERERERDQ0NERERERERDQ0NERERERESZD8GyAAAASnRSTlMAAQIDBAYJDRESFhsiJio1QURJS01QU1RWWVpjZGVtdXZ4fYCEiI6TnZ6ksLO3ucTFydLT193g4OLl5ebn6enq6+7w8vP39/n+/rihcb4AAADbSURBVHjazZPFDsMwEERdZkpTZmbmpszd//+grhpFSaS1e+khc1jbmrG1z7KZdSXLgvo79M9ziKCkKJIeoUPJA8AxKT6H5QGVE3dlmwJqKqaLwVdRIV1fDfVEdKGXGnoFBXQtDIwnWJp8uswd/XQWy8XD7aqD9srp2uJQ5NElVuiWGKvisLFz6Bpo3ryM+R84iXO6GoFBQ5ouAka9wyRdF0waUHSBpzl09xF0dTRmNnXu2OOiTNDtAKCg7W3jYk7QnQGObu0KvVeAJUFXU9aS/h5Sp0VFtui/s6w+XSJAbiVJ3G0AAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-background.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-background .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=background].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=background].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-background:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-background .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=background]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=background]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAA5FBMVEUAAAAAAP8AgP8AVaoAgL8AZswAVdUAYL8AccYAYsQAadIAY8YAaNEAasoAZswAYsQAaNAAacsAZckAadEAZ8gAZcoAZswAZswAZMkAZM0AZcsAZ8sAZswAaM0AZ8oAZ80AZswAZc0AZMsAZswAZMsAZswAZcoAZcwAZswAZssAZssAZswAZs0AZs0AZs0AZ8wAZ8wAZ8wAZ8wAZswAZcwAZs0AZcwAZswAZswAZs0AZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZswAZsxJPDLdAAAAS3RSTlMAAQIDBAUGCAkNERIWGBkaGyImJyo1N0FCQkRFS0xNTVVWWVpjZGVtc3V2fYSOk5eksLO5xMXJ0tPV2Nnf4OXo6evs7fDz9Pf5/f60OfwzAAABG0lEQVR42s2T6VKDQBCEGyUJoqgSjcYg8dZ43/EieCUa5/3fx661qMAu7O98P4bZnq5lZlkwvXS7k1hf1BTdZFEsFpvUMU15IU7TuKiYJu9d5MODZZ8WcCBk39ZVAKcvpG+ZrgNsimIdTtV0TeBGFNewdBWORTFesUx3QcP9A8N59XT+kPWdPYavOQQVXfVYTtz6gI8jvfUsdRNWe8ApHy8z5ftgm8WhDyx8M4nKumoBd5LjVkkaAdYkz+8qpQLqtK+kwKU5XRPLP1JgNF8y3RkLjw4Us69cnMDb0qdLqR9myjEXz2brNPG2NSKQqOGPRJ5gEr8NYoT/9yHE7mfShoarovYptDw7kiWLyZTbNZBa9saK33tDWZlPK39U3ELkzhssBgAAAABJRU5ErkJggg==");
}
.ql-snow.ql-toolbar .ql-format-button.ql-left,
.ql-snow.ql-toolbar .ql-picker.ql-left .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=left],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=left] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAABCQkJEREREREREREREREQc4xmxAAAABXRSTlMATeXo6UtNtyIAAABCSURBVCjPY2AYACAcCgaGSEKmEKFgTKEgJCERiJAiw0ACqOuR/WCKLBSMKRSE7PqB9YMwuttRnBqMKRSEGvYD6HYAD8opyeJDvUUAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-left.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-left .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=left].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=left].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-left:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-left .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=left]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=left]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAAAAZ8oAZswAZswAZswAZsxixJGvAAAABXRSTlMATeXo6UtNtyIAAABCSURBVCjPY2AYACAcCgaGSEKmEKFgTKEgJCERiJAiw0ACqOuR/WCKLBSMKRSE7PqB9YMwuttRnBqMKRSEGvYD6HYAD8opyeJDvUUAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-right,
.ql-snow.ql-toolbar .ql-picker.ql-right .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=right],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=right] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAABCQkJEREREREREREREREQc4xmxAAAABXRSTlMATeXo6UtNtyIAAABCSURBVCjPY2AYMCAcCgaGSEKmEKFgTKEgJCERiJDiwLob2fWmyELBmEJByO4eWNejuN8QNZCRw94U3fUo7h8Q1wMAuRspyVIXC2UAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-right.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-right .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=right].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=right].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-right:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-right .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=right]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=right]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAAAAZ8oAZswAZswAZswAZsxixJGvAAAABXRSTlMATeXo6UtNtyIAAABCSURBVCjPY2AYMCAcCgaGSEKmEKFgTKEgJCERiJDiwLob2fWmyELBmEJByO4eWNejuN8QNZCRw94U3fUo7h8Q1wMAuRspyVIXC2UAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-center,
.ql-snow.ql-toolbar .ql-picker.ql-center .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=center],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=center] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAABCQkJEREREREREREREREQc4xmxAAAABXRSTlMATeXo6UtNtyIAAABCSURBVCjPY2AYGCAcCgaGSEKmEKFgTKEgJCERiJAiw4ABqNORPWCKLBSMKRSE7PQB9oAwuuNR3BqMKRSEGvID53gA5GspyQ9EElMAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-center.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-center .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=center].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=center].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-center:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-center .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=center]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=center]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAAAAZ8oAZswAZswAZswAZsxixJGvAAAABXRSTlMATeXo6UtNtyIAAABCSURBVCjPY2AYGCAcCgaGSEKmEKFgTKEgJCERiJAiw4ABqNORPWCKLBSMKRSE7PQB9oAwuuNR3BqMKRSEGvID53gA5GspyQ9EElMAAAAASUVORK5CYII=");
}
.ql-snow.ql-toolbar .ql-format-button.ql-justify,
.ql-snow.ql-toolbar .ql-picker.ql-justify .ql-picker-label,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=justify],
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=justify] {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAABCQkJEREREREREREREREQc4xmxAAAABXRSTlMATeXo6UtNtyIAAAAoSURBVCjPY2AYACAcigQMwUKmyELBmEJBYCERZCFFhoEBo64fINcDAAcQNGkJNhVcAAAAAElFTkSuQmCC");
}
.ql-snow.ql-toolbar .ql-format-button.ql-justify.ql-active,
.ql-snow.ql-toolbar .ql-picker.ql-justify .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-label[data-value=justify].ql-active,
.ql-snow.ql-toolbar .ql-picker .ql-picker-item[data-value=justify].ql-selected,
.ql-snow.ql-toolbar:not(.ios) .ql-format-button.ql-justify:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker.ql-justify .ql-picker-label:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-label[data-value=justify]:hover,
.ql-snow.ql-toolbar:not(.ios) .ql-picker .ql-picker-item[data-value=justify]:hover {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkBAMAAAATLoWrAAAAElBMVEUAAAAAZ8oAZswAZswAZswAZsxixJGvAAAABXRSTlMATeXo6UtNtyIAAAAoSURBVCjPY2AYACAcigQMwUKmyELBmEJBYCERZCFFhoEBo64fINcDAAcQNGkJNhVcAAAAAElFTkSuQmCC");
}
}
.ql-snow .ql-tooltip {
border: 1px solid #ccc;
box-shadow: 0px 0px 5px #ddd;
color: #222;
}
.ql-snow .ql-tooltip a {
color: #06c;
}
.ql-snow .ql-tooltip .input {
border: 1px solid #ccc;
margin: 0px;
padding: 5px;
}
.ql-snow a {
color: #06c;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -0,0 +1 @@
var markdownize=function(r){if(!r)return"";var n=r.split("\n").map($.trim).filter(function(r){return""!=r}).join("\n");return toMarkdown(n)},converter=new showdown.Converter,htmlize=function(r){return converter.makeHtml(r)},updateMD=function(r,n){if(!n)return jQuery("#"+r).val("");var e=markdownize(n);jQuery("#"+r).val()!==e&&jQuery("#"+r).val(e)};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -0,0 +1 @@
var allowCircleToBlog=function(o){var c=$(this).prop("checked"),e=$(this).data("circle-id"),n=$(this).data("target-id"),l={CircleId:e,BlogPostId:n},i="/api/blogacl";c||(i+="/"+e),console.log(l),$.ajax({url:i,type:c?"POST":"DELETE",data:JSON.stringify(l),contentType:"application/json;charset=utf-8",success:function(o){console.log("POSTed")},error:function(){console.log("POSTed")}}),o.preventDefault()};$(document).ready(function(){$("input.Blogcirle[type=checkbox]").on("change",allowCircleToBlog)});var notifClick=function(o){$.get("/api/dimiss/click/"+o).done(function(o){console.log("second success"),console.log(o)}).fail(function(){console.log("error")}).always(function(){console.log("finished")})};

File diff suppressed because one or more lines are too long

@ -1,15 +1,9 @@
using System.Collections.Generic; namespace YavscLib
namespace YavscLib
{ {
public interface IApplicationUser public interface IApplicationUser
{ {
IAccountBalance AccountBalance { get; set; } IAccountBalance AccountBalance { get; set; }
IList<IContact> Book { get; set; }
IList<ICircle> Circles { get; set; }
string DedicatedGoogleCalendar { get; set; } string DedicatedGoogleCalendar { get; set; }
IList<IGoogleCloudMobileDeclaration> Devices { get; set; }
ILocation PostalAddress { get; set; } ILocation PostalAddress { get; set; }
IList<IBlog> Posts { get; set; }
} }
} }

@ -1,13 +0,0 @@
using System.Collections.Generic;
namespace YavscLib
{
public interface ICircle
{
long Id { get; set; }
IList<ICircleMember> Members { get; set; }
string Name { get; set; }
IApplicationUser Owner { get; set; }
string OwnerId { get; set; }
}
}

@ -1,9 +0,0 @@
namespace YavscLib
{
public interface ICircleMember
{
ICircle Circle { get; set; }
long Id { get; set; }
IApplicationUser Member { get; set; }
}
}

@ -0,0 +1,9 @@
namespace Yavsc.Interfaces
{
public interface ICircle
{
long Id { get; set; }
string Name { get; set; }
string OwnerId { get; set; }
}
}

@ -43,6 +43,7 @@
<DebugType>pdbonly</DebugType> <DebugType>pdbonly</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'ZicMoove|AnyCPU'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'ZicMoove|AnyCPU'">
@ -52,6 +53,7 @@
<DebugType>pdbonly</DebugType> <DebugType>pdbonly</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Yavsc|AnyCPU'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Yavsc|AnyCPU'">
@ -61,6 +63,7 @@
<DebugType>pdbonly</DebugType> <DebugType>pdbonly</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'WinDev|AnyCPU'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'WinDev|AnyCPU'">
@ -70,6 +73,7 @@
<DebugType>full</DebugType> <DebugType>full</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>

@ -45,6 +45,7 @@
<DebugType>pdbonly</DebugType> <DebugType>pdbonly</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'ZicMoove|AnyCPU'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'ZicMoove|AnyCPU'">
@ -54,6 +55,7 @@
<DebugType>pdbonly</DebugType> <DebugType>pdbonly</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Yavsc|AnyCPU'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Yavsc|AnyCPU'">
@ -63,6 +65,7 @@
<DebugType>pdbonly</DebugType> <DebugType>pdbonly</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'WinDev|AnyCPU'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'WinDev|AnyCPU'">
@ -72,6 +75,7 @@
<DebugType>full</DebugType> <DebugType>full</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>0</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>

@ -6,8 +6,8 @@ var gulp = require("gulp"),
concat = require("gulp-concat"), concat = require("gulp-concat"),
cssmin = require("gulp-cssmin"), cssmin = require("gulp-cssmin"),
uglify = require("gulp-uglify"), uglify = require("gulp-uglify"),
shell = require("gulp-shell"); shell = require("gulp-shell"),
rename = require('gulp-rename');
var webroot = "./wwwroot/"; var webroot = "./wwwroot/";
var paths = { var paths = {
@ -40,14 +40,20 @@ gulp.task("min:js", function () {
}); });
gulp.task("min:css", function () { gulp.task("min:css", function () {
return gulp.src([paths.css, "!" + paths.minCss]) return gulp.src([paths.css, "!" + paths.minCss], {
base: "."
})
.pipe(concat(paths.concatCssDest)) .pipe(concat(paths.concatCssDest))
.pipe(cssmin()) .pipe(cssmin())
.pipe(gulp.dest(".")); .pipe(gulp.dest("."));
}); });
gulp.task("min", ["min:js", "min:css"]); gulp.task("mindefault", function () {
gulp.src('src/**/*.css')
.pipe(cssmin())
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('../dist'));
});
gulp.task('build', shell.task(['dnu build --configuration=Debug'])) gulp.task('build', shell.task(['dnu build --configuration=Debug']))
gulp.task('publish', shell.task(['dnu publish -o ../build'])) gulp.task('publish', shell.task(['dnu publish -o ../build']))

Loading…