zammad.scss 164 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714
  1. $supergood-color: hsl(145,51%,45%);
  2. $good-color: hsl(62,45%,46%);
  3. $ok-color: hsl(41,100%,49%);
  4. $bad-color: hsl(30,93%,50%);
  5. $superbad-color: hsl(19,90%,51%);
  6. $task-state-closed-color: $supergood-color;
  7. $task-state-pending-color: hsl(206,7%,28%);
  8. $task-state-open-color: $ok-color;
  9. $task-state-escalating-color: $superbad-color;
  10. $minWidth: 1024px;
  11. $sidebarWidth: 280px;
  12. $navigationWidth: 260px;
  13. $highlight-color: hsl(205,90%,60%);
  14. @mixin desktop {
  15. @media screen and (min-width: 1260px) {
  16. @content;
  17. }
  18. }
  19. @mixin small-desktop {
  20. @media screen and (max-width: 1260px) {
  21. @content;
  22. }
  23. }
  24. @mixin tablet {
  25. @media screen and (min-width: 768px) {
  26. @content;
  27. }
  28. }
  29. @mixin phone {
  30. @media screen and (max-width: 767px) {
  31. @content;
  32. }
  33. }
  34. /* sets LTR and RTL within the same style call */
  35. @mixin bidi-style($prop, $value, $inverse-prop, $default-value) {
  36. #{$prop}: $value;
  37. html[dir=rtl] & {
  38. #{$inverse-prop}: $value;
  39. #{$prop}: $default-value;
  40. }
  41. }
  42. /* adds a property only in RTL */
  43. @mixin rtl($prop, $value) {
  44. html[dir=rtl] & {
  45. #{$prop}: $value;
  46. }
  47. }
  48. /* adds a property only in LTR */
  49. @mixin ltr($prop, $value) {
  50. html[dir=ltr] & {
  51. #{$prop}: $value;
  52. }
  53. }
  54. %clickable {
  55. cursor: pointer;
  56. user-select: none;
  57. touch-action: manipulation;
  58. }
  59. html {
  60. height: 100%;
  61. }
  62. body {
  63. font-family: "Fira Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  64. line-height: 1.45;
  65. font-weight: normal;
  66. background: hsl(210,14%,97%);
  67. height: 100%;
  68. color: hsl(60,1%,34%);
  69. word-wrap: break-word;
  70. overflow-wrap: break-word;
  71. display: flex;
  72. flex-direction: column;
  73. }
  74. /* prevent clickable <use xlink:href="#icon-abc"></use> */
  75. use {
  76. pointer-events: none;
  77. }
  78. p {
  79. margin: 12px 0;
  80. &.subtle {
  81. color: hsl(60,1%,74%);
  82. }
  83. &.description {
  84. color: hsl(190,2%,74%);
  85. }
  86. }
  87. h3 + .description {
  88. margin-top: 0;
  89. }
  90. strong {
  91. font-weight: 500;
  92. }
  93. .text-muted {
  94. color: hsl(60,1%,74%);
  95. }
  96. .text-small {
  97. font-size: 12px;
  98. }
  99. .u-highlight {
  100. color: #0F94D6;
  101. }
  102. .u-dontfold {
  103. flex-shrink: 0;
  104. }
  105. .u-invisible {
  106. opacity: 0;
  107. pointer-events: none;
  108. position: absolute !important;
  109. }
  110. [data-dir="ltr"] {
  111. direction: ltr;
  112. }
  113. [data-dir="rtl"] {
  114. direction: rtl;
  115. }
  116. a {
  117. outline: none !important;
  118. @extend .u-highlight;
  119. &.is-disabled,
  120. &[disabled] {
  121. pointer-events: none;
  122. cursor: not-allowed;
  123. opacity: .33;
  124. }
  125. }
  126. a.create {
  127. color: hsl(145,51%,45%);
  128. text-decoration: underline;
  129. }
  130. small {
  131. color: hsl(198,4%,56%);
  132. font-size: 12px;
  133. }
  134. blockquote {
  135. font-size: inherit;
  136. }
  137. ol, ul {
  138. padding-inline-start: 20px;
  139. }
  140. #app {
  141. display: flex;
  142. flex: 1;
  143. min-width: $minWidth;
  144. overflow: auto;
  145. }
  146. .u-unclickable {
  147. pointer-events: none;
  148. }
  149. .u-clickable {
  150. @extend %clickable;
  151. }
  152. .u-unselectable {
  153. pointer-events: none;
  154. user-select: none;
  155. }
  156. .u-no-userselect {
  157. user-select: none;
  158. }
  159. .u-textTruncate {
  160. white-space: nowrap;
  161. overflow: hidden;
  162. text-overflow: ellipsis;
  163. }
  164. .u-positionOrigin {
  165. position: relative;
  166. }
  167. .u-inlineBlock {
  168. display: inline-block;
  169. }
  170. .u-notAllowed {
  171. cursor: not-allowed;
  172. }
  173. .zIndex-1,
  174. .zIndex-2,
  175. .zIndex-3,
  176. .zIndex-4,
  177. .zIndex-5,
  178. .zIndex-6,
  179. .zIndex-7,
  180. .zIndex-8,
  181. .zIndex-9,
  182. .zIndex-10 {
  183. position: relative;
  184. }
  185. .zIndex-1 {
  186. z-index: 100;
  187. }
  188. .zIndex-2 {
  189. z-index: 200;
  190. }
  191. .zIndex-3 {
  192. z-index: 300;
  193. }
  194. .zIndex-4 {
  195. z-index: 400;
  196. }
  197. .zIndex-5 {
  198. z-index: 500;
  199. }
  200. .zIndex-6 {
  201. z-index: 600;
  202. }
  203. .zIndex-7 {
  204. z-index: 700;
  205. }
  206. .zIndex-8 {
  207. z-index: 800;
  208. }
  209. .zIndex-9 {
  210. z-index: 900;
  211. }
  212. .zIndex-10 {
  213. z-index: 1000;
  214. }
  215. .clickCatcher {
  216. top: 0;
  217. left: 0;
  218. width: 100%;
  219. height: 100%;
  220. position: absolute;
  221. cursor: default;
  222. }
  223. .debug .clickCatcher {
  224. background: hsla(0,100%,50%,.13);
  225. }
  226. .debug .clickCatcher + .clickCatcher {
  227. background: hsla(50,100%,50%,.13);
  228. }
  229. .clearfix:after {
  230. visibility: hidden;
  231. display: block;
  232. font-size: 0;
  233. content: " ";
  234. clear: both;
  235. height: 0;
  236. }
  237. .clearfix { display: inline-block; }
  238. /* start commented backslash hack \*/
  239. * html .clearfix { height: 1%; }
  240. .clearfix { display: block; }
  241. /* close commented backslash hack */
  242. [contenteditable] {
  243. display: block;
  244. outline-style: none;
  245. border-radius: 3px;
  246. /* needed to make empty tags editable, otherwise no focus can be set */
  247. min-height: 10px;
  248. min-width: 20px;
  249. }
  250. [contenteditable]:hover,
  251. [contenteditable]:focus {
  252. background: hsl(210,17%,98%);
  253. }
  254. [contenteditable]:focus {
  255. text-overflow: clip !important;
  256. }
  257. [contenteditable].invalid {
  258. background: #F92;
  259. }
  260. [contenteditable] > .placeholder {
  261. color: #999;
  262. }
  263. [contenteditable] p {
  264. margin: 0;
  265. }
  266. /* fix for placeholder */
  267. .Medium-placeholder {
  268. position: relative;
  269. }
  270. .close,
  271. .close:hover {
  272. float: none;
  273. opacity: 1;
  274. }
  275. #app > nav {
  276. position: relative;
  277. z-index: 1;
  278. }
  279. pre {
  280. display: block;
  281. padding: 9.5px;
  282. margin: 0 0 20px;
  283. font-size: 13px;
  284. line-height: 1.42857143;
  285. color: #333;
  286. word-break: break-all;
  287. word-wrap: break-word;
  288. background: white;
  289. border: 1px solid hsl(0,0%,90%);
  290. border-radius: 3px;
  291. }
  292. pre code {
  293. padding: 0;
  294. font-size: inherit;
  295. color: inherit;
  296. white-space: pre-wrap;
  297. background-color: transparent;
  298. border-radius: 0;
  299. }
  300. .hljs,
  301. code {
  302. background: none;
  303. padding: 2px 4px;
  304. font-size: 0.88em;
  305. }
  306. code:not(.hljs) {
  307. border: 1px solid rgba(0,0,0,.2);
  308. border-radius: 3px;
  309. white-space: nowrap;
  310. }
  311. pre code.hljs {
  312. font-size: 1em;
  313. }
  314. .textarea::placeholder,
  315. .form-control::placeholder,
  316. .token-input::placeholder,
  317. .u-placeholder {
  318. color: hsl(0,0%,80%);
  319. }
  320. .btn {
  321. display: inline-block;
  322. font-size: 14px;
  323. padding: 10px 24px 9px;
  324. color: hsl(0,0%,33%);
  325. background: white;
  326. border: 1px solid rgba(0,0,0,.1);
  327. outline: none !important;
  328. border-radius: 4px;
  329. text-align: center;
  330. white-space: nowrap;
  331. vertical-align: middle;
  332. @extend %clickable;
  333. .icon {
  334. vertical-align: middle;
  335. margin-top: -3px;
  336. fill: currentColor;
  337. }
  338. &--icon--last .icon {
  339. @include bidi-style(margin-left, 5px, margin-right, 0); // so far only used in ticket_zoom secondaryAction dropup
  340. }
  341. &:focus {
  342. box-shadow: 0 0 0 3px hsl(201,62%,90%);
  343. }
  344. &--small {
  345. padding-top: 5px;
  346. padding-bottom: 4px;
  347. }
  348. &--slim {
  349. padding-left: 12px;
  350. padding-right: 12px;
  351. }
  352. &--fullWidth {
  353. width: 100%;
  354. text-align: center;
  355. justify-content: center;
  356. }
  357. &--table {
  358. padding: 4px 9px;
  359. border: none;
  360. margin: 5px 6px 0;
  361. vertical-align: baseline; /* calendar_subscriptions.jst.eco */
  362. .icon {
  363. vertical-align: middle;
  364. @include bidi-style(margin-right, 5px, margin-left, 0);
  365. &:only-child {
  366. @include bidi-style(margin-right, 5px, margin-left, 0);
  367. }
  368. }
  369. .btn-label {
  370. margin-left: 0;
  371. }
  372. &.btn--text {
  373. padding: 4px 9px;
  374. margin: 5px 6px 0;
  375. }
  376. }
  377. &.is-disabled,
  378. &[disabled],
  379. &:disabled {
  380. pointer-events: none;
  381. cursor: not-allowed;
  382. opacity: .33;
  383. }
  384. &:active {
  385. box-shadow: none;
  386. background: hsl(0,0%,98%);
  387. }
  388. &--action {
  389. text-transform: uppercase;
  390. color: hsl(0,0%,60%);
  391. font-size: 12px;
  392. letter-spacing: 0.05em;
  393. height: 31px;
  394. padding: 0 11px !important;
  395. display: inline-flex;
  396. align-items: center;
  397. .icon {
  398. margin: -2px 5px 0 -2px;
  399. }
  400. .icon:only-child {
  401. margin: 0;
  402. }
  403. &.btn--slim {
  404. padding-left: 7px !important;
  405. padding-right: 7px !important;
  406. .btn-label {
  407. @include bidi-style(margin-left, 0, margin-right, 0);
  408. }
  409. &.btn--small {
  410. padding-left: 5px !important;
  411. padding-right: 5px !important;
  412. }
  413. }
  414. &.btn--small {
  415. height: 27px;
  416. font-size: 11px;
  417. padding-left: 8px;
  418. padding-right: 8px;
  419. }
  420. }
  421. // used in .recipientList-controls and in breadcrumbs
  422. &--onDark {
  423. background: hsla(200,100%,97%,0.15);
  424. border-color: hsl(250,7%,16%);
  425. color: white;
  426. .icon {
  427. opacity: 1;
  428. }
  429. }
  430. &--primary {
  431. color: white;
  432. background: hsl(203,65%,55%);
  433. &:active {
  434. background: hsl(203,65%,45%);
  435. }
  436. .icon {
  437. fill: white;
  438. opacity: 1;
  439. }
  440. }
  441. &--secondary {
  442. color: hsl(202,68%,54%);
  443. }
  444. &--positive,
  445. &--create,
  446. &--success {
  447. color: white;
  448. background: hsl(145,51%,45%);
  449. &:active {
  450. background: hsl(145,51%,35%);
  451. }
  452. &.btn--secondary {
  453. background: white;
  454. color: hsl(145,51%,45%);
  455. &:active {
  456. background: hsl(0,0%,98%);
  457. }
  458. }
  459. &.btn--text {
  460. color: $supergood-color;
  461. }
  462. }
  463. &--danger {
  464. color: white;
  465. background: hsl(0,65%,55%);
  466. &:active {
  467. background: hsl(0,65%,45%);
  468. }
  469. &.btn--secondary {
  470. background: white;
  471. color: hsl(0,65%,55%);
  472. &:active {
  473. background: hsl(0,0%,98%);
  474. }
  475. }
  476. }
  477. &--text {
  478. font-size: inherit;
  479. margin: -10px;
  480. padding: 10px;
  481. color: hsl(203,65%,55%);
  482. border: none;
  483. background: none;
  484. vertical-align: baseline;
  485. text-align: start;
  486. .icon {
  487. opacity: 1;
  488. }
  489. &:active {
  490. color: hsl(203,65%,40%);
  491. background: none;
  492. }
  493. &.btn--secondary {
  494. color: hsl(0,0%,68%);
  495. text-decoration: underline;
  496. &:active {
  497. color: hsl(0,0%,53%);
  498. }
  499. }
  500. &.btn--positive {
  501. color: hsl(145,51%,45%);
  502. &:active {
  503. color: hsl(145,51%,30%);
  504. background: none;
  505. }
  506. }
  507. &.btn--danger {
  508. color: hsl(0,65%,55%);
  509. &:active {
  510. color: hsl(0,65%,40%);
  511. background: none;
  512. }
  513. }
  514. &.btn--subtle {
  515. text-decoration: underline;
  516. color: hsl(0,0%,85%);
  517. &:active {
  518. color: hsl(0,0%,75%);
  519. }
  520. }
  521. &.space-left {
  522. @include bidi-style(margin-left, 0, margin-right, -10px);
  523. }
  524. &.space-right {
  525. @include bidi-style(margin-right, 0, margin-left, -10px);
  526. }
  527. }
  528. &--large {
  529. &.btn--text {
  530. margin: 0;
  531. }
  532. }
  533. &--quad {
  534. padding: 10px 12px 9px;
  535. .icon {
  536. margin-top: -1px;
  537. }
  538. }
  539. &--split--first {
  540. @include bidi-style(border-radius, 3px 0 0 3px, border-radius, 0 3px 3px 0);
  541. }
  542. &--split,
  543. &--split--last {
  544. border-radius: 0;
  545. @include bidi-style(border-left-width, 0, border-right-width, 1px);
  546. @include ltr(margin-left, 0 !important);
  547. @include rtl(margin-right, 0 !important);
  548. }
  549. &--split--last {
  550. @include bidi-style(border-radius, 0 3px 3px 0, border-radius, 3px 0 0 3px);
  551. }
  552. &--dropdown {
  553. position: relative;
  554. select {
  555. opacity: 0;
  556. width: 100%;
  557. height: 100%;
  558. left: 0;
  559. top: 0;
  560. position: absolute;
  561. @extend %clickable;
  562. }
  563. }
  564. }
  565. .btn + .btn,
  566. .btn + .buttonDropdown,
  567. .buttonDropdown + .buttonDropdown {
  568. @include bidi-style(margin-left, 10px, margin-right, 0);
  569. }
  570. .btn + .btn.align-right {
  571. @include bidi-style(margin-left, auto, margin-right, 0);
  572. }
  573. .btn.align-right ~ .btn {
  574. @include bidi-style(margin-left, 15px, margin-right, 0);
  575. }
  576. .vertical > .btn:not(.hidden) + .btn {
  577. @include bidi-style(margin-left, 0, margin-right, 0);
  578. margin-top: 10px;
  579. }
  580. .btn--download .icon-download {
  581. margin-right: 6px;
  582. @include rtl(margin-right, -10px);
  583. margin-top: 4px;
  584. margin-left: -10px;
  585. @include rtl(margin-left, 6px);
  586. vertical-align: top;
  587. fill: white;
  588. }
  589. .btn-label {
  590. @include bidi-style(margin-left, 7px, margin-right, 0);
  591. }
  592. .visibility-change {
  593. /*
  594. Interactive Visibility Change Classes:
  595. <div class="visibility-change">
  596. <svg class="icon-marker" data-visible="active"><use xlink:href="#icon-marker" /></svg>
  597. </div>
  598. Important: HTML Order active > hover > normal
  599. */
  600. [data-visible=active],
  601. [data-visible=hover] {
  602. display: none;
  603. }
  604. &.is-active [data-visible=active] {
  605. display: block;
  606. & ~ [data-visible=normal] {
  607. display: none
  608. }
  609. }
  610. &:hover [data-visible=hover] {
  611. display: block;
  612. & ~ [data-visible=normal] {
  613. display: none
  614. }
  615. }
  616. }
  617. .btn-group {
  618. display: inline-flex;
  619. flex-wrap: wrap;
  620. &--full {
  621. display: flex;
  622. }
  623. & + .btn-group {
  624. margin-top: 10px;
  625. padding-top: 10px;
  626. border-top: 1px solid hsl(240,2%,92%);
  627. }
  628. .btn {
  629. &:not(:first-child) {
  630. border-top-left-radius: 0;
  631. border-bottom-left-radius: 0;
  632. }
  633. &:not(:last-child) {
  634. border-top-right-radius: 0;
  635. border-bottom-right-radius: 0;
  636. border-right-width: 0;
  637. }
  638. + .btn {
  639. @include bidi-style(margin-left, 0, margin-right, 10px);
  640. }
  641. }
  642. .btn--text {
  643. padding: 6px 10px 5px; /* reporting main.eco */
  644. display: inline-block;
  645. border-radius: 3px;
  646. &.is-selected {
  647. background: hsl(203,65%,55%);
  648. color: white;
  649. }
  650. }
  651. }
  652. .buttonDropdown {
  653. display: flex;
  654. align-items: center;
  655. position: relative;
  656. user-select: none;
  657. .dropdown-menu {
  658. margin-bottom: 0;
  659. }
  660. &.is-open .dropdown-menu {
  661. display: block;
  662. }
  663. .btn--text {
  664. padding-left: 13px;
  665. padding-right: 13px;
  666. }
  667. }
  668. .status-fields {
  669. display: flex;
  670. }
  671. .status-field {
  672. color: hsl(0,0%,60%);
  673. border: 1px solid hsl(0,0%,90%);
  674. display: flex;
  675. height: 34px;
  676. align-items: center;
  677. line-height: 35px;
  678. &.is-clickable {
  679. background: hsl(203,65%,55%);
  680. color: white;
  681. border-color: hsl(203,65%,45%);
  682. box-shadow: 1px 0 hsl(203,65%,45%);
  683. position: relative;
  684. @extend %clickable;
  685. }
  686. &.is-blinking {
  687. animation: pulsate 667ms ease-in-out infinite alternate;
  688. }
  689. &:not(:last-child):not(:only-child) {
  690. @include bidi-style(border-right-width, 0, border-left-width, 1px);
  691. }
  692. &:first-child {
  693. border-radius: 5px 0 0 5px;
  694. @include rtl(border-radius, 0 5px 5px 0);
  695. }
  696. &:last-child {
  697. border-radius: 0 5px 5px 0;
  698. @include rtl(border-radius, 5px 0 0 5px);
  699. }
  700. &:only-child {
  701. border-radius: 5px;
  702. }
  703. .badge {
  704. @include bidi-style(margin, 0 5px 0 10px, margin, 0 10px 0 5px);
  705. background: hsla(210,50%,10%,.24);
  706. }
  707. .status-badge {
  708. width: 32px;
  709. display: inline-flex;
  710. align-items: center;
  711. justify-content: center;
  712. align-self: stretch;
  713. }
  714. }
  715. .status-badge {
  716. display: inline-block;
  717. }
  718. .info-badge {
  719. fill: currentColor;
  720. padding: 3px 6px 1px;
  721. line-height: 12px;
  722. opacity: 0.5;
  723. position: relative;
  724. /*
  725. border in its own layer to make it more
  726. translucend but still depend on the currentColor
  727. */
  728. &:after {
  729. content: "";
  730. position: absolute;
  731. width: 100%;
  732. height: 100%;
  733. left: 0;
  734. top: 0;
  735. border: 1px solid currentColor;
  736. opacity: 0.5;
  737. border-radius: 100%;
  738. }
  739. }
  740. @keyframes pulsate {
  741. to { filter: brightness(1.2); }
  742. }
  743. .badge {
  744. display: inline-block;
  745. min-width: 18px;
  746. padding: 3px 5px;
  747. font-size: 12px;
  748. font-weight: 500;
  749. line-height: 1;
  750. color: #fff;
  751. text-align: center;
  752. white-space: nowrap;
  753. vertical-align: top;
  754. border-radius: 9px;
  755. background: hsl(198,18%,86%);
  756. @include bidi-style(margin-right, 3px, margin-left, 0);
  757. flex-shrink: 0;
  758. &:empty {
  759. display: none;
  760. }
  761. &.badge--big {
  762. min-width: 22px;
  763. font-size: 14px;
  764. border-radius: 11px;
  765. padding: 5px 7px 3px;
  766. }
  767. &.badge--text {
  768. min-width: 0;
  769. padding: 0;
  770. margin-right: 0;
  771. @include bidi-style(margin-right, 0, margin-left, 0);
  772. font-size: inherit;
  773. font-weight: inherit;
  774. text-align: inherit;
  775. line-height: inherit;
  776. color: #d0d2d3;
  777. background: none;
  778. border-radius: 0;
  779. vertical-align: baseline;
  780. }
  781. }
  782. .key-value {
  783. td:first-child {
  784. @include bidi-style(padding-right, 10px, padding-left, 0);
  785. color: #999;
  786. }
  787. }
  788. table {
  789. table-layout: fixed;
  790. }
  791. .table {
  792. display: table;
  793. small {
  794. color: inherit;
  795. }
  796. }
  797. .table--light {
  798. color: hsl(198,4%,56%);
  799. }
  800. .table-fluid {
  801. table-layout: auto;
  802. }
  803. .table .table-row {
  804. display: table-row;
  805. }
  806. .table--placeholder {
  807. th {
  808. text-align: center;
  809. }
  810. td {
  811. height: 40px;
  812. }
  813. }
  814. .table th:not(.noTruncate) .table-column-title,
  815. .table td:not(.noTruncate) {
  816. @extend .u-textTruncate;
  817. }
  818. .table > thead > tr > th {
  819. padding: 12px 9px 10px;
  820. border-bottom: none;
  821. border-top: 1px solid #ececec;
  822. background: #f0f1f2;
  823. color: #444a4f;
  824. font-weight: normal;
  825. font-size: 12px;
  826. text-transform: uppercase;
  827. letter-spacing: 0.05em;
  828. position: relative;
  829. user-select: none;
  830. }
  831. .table-column-head {
  832. display: flex;
  833. @extend %clickable;
  834. }
  835. .table-column-sortIcon {
  836. @include bidi-style(margin-left, auto, margin-right, 0);
  837. }
  838. th.align-right {
  839. .table-column-title {
  840. @include bidi-style(margin-left, auto, margin-right, 0);
  841. }
  842. .table-column-sortIcon {
  843. @include bidi-style(margin-left, 0, margin-right, 0);
  844. }
  845. }
  846. .table > tbody > tr > td {
  847. padding: 10px 10px 8px;
  848. border-color: hsl(0,0%,95%);
  849. }
  850. .table-hover > tbody > tr:hover > td,
  851. .table-hover > tbody > tr.is-hover > td {
  852. background: white;
  853. }
  854. .table-hover > tbody > tr:hover > th {
  855. background: rgba(0,8,14,.015);
  856. }
  857. .table-col-resize {
  858. position: absolute;
  859. @include bidi-style(right, 0, left, auto);
  860. top: 0;
  861. height: 100%;
  862. cursor: col-resize;
  863. padding: 10px;
  864. @include bidi-style(margin-right, -10px, margin-left, 0);
  865. z-index: 1;
  866. &:after {
  867. content: "";
  868. display: block;
  869. width: 1px;
  870. height: 100%;
  871. background: hsl(210,7%,85%);
  872. }
  873. }
  874. .table > thead:first-child > tr:first-child > th.no-padding,
  875. .table > thead > tr > th.no-padding,
  876. .table > tbody > tr > td.no-padding {
  877. padding: 0;
  878. }
  879. .table tr.is-inactive, .table tr td span.is-inactive {
  880. color: #bbb;
  881. text-decoration: line-through;
  882. a {
  883. color: inherit;
  884. }
  885. }
  886. .table tr.is-grayed-out {
  887. color: hsl(120,1%,77%);
  888. .icon {
  889. opacity: 0.33;
  890. }
  891. }
  892. .table .icon {
  893. vertical-align: middle;
  894. }
  895. .table .icon-draggable {
  896. fill: hsl(240,1%,77%);
  897. }
  898. .table-checkbox,
  899. .table-radio {
  900. padding: 0 !important;
  901. }
  902. .table .table-sort-arrow {
  903. opacity: 1;
  904. fill: hsl(206,7%,33%);
  905. width: 8px;
  906. height: 8px;
  907. @include bidi-style(margin-left, 3px, margin-right, 0);
  908. margin-top: -2px;
  909. vertical-align: middle;
  910. }
  911. .checkbox-list {
  912. list-style: none;
  913. margin-bottom: 15px;
  914. padding: 3px 12px;
  915. font-size: 14px;
  916. line-height: 25px;
  917. color: hsl(60,1%,34%);
  918. background: white;
  919. border: 1px solid hsl(0, 0%, 90%);
  920. border-radius: 3px;
  921. }
  922. .checkbox-replacement,
  923. .radio-replacement {
  924. padding: 0;
  925. margin: 0;
  926. @extend .u-clickable;
  927. display: flex;
  928. align-items: center;
  929. justify-content: center;
  930. position: relative;
  931. .icon-checked {
  932. color: black;
  933. }
  934. .icon-unchecked {
  935. color: hsl(60,1%,61%);
  936. }
  937. .icon-indeterminate {
  938. display: none;
  939. color: hsl(60,1%,61%);
  940. }
  941. &.is-disabled {
  942. cursor: default;
  943. }
  944. &.checkbox-replacement--fullscreen,
  945. &.radio-replacement--fullscreen {
  946. position: absolute;
  947. left: 0;
  948. top: 0;
  949. width: 100%;
  950. height: 100%;
  951. }
  952. &.checkbox-replacement--inline,
  953. &.radio-replacement--inline {
  954. display: inline-flex;
  955. @include bidi-style(margin-right, 3px, margin-left, 0);
  956. }
  957. input {
  958. pointer-events: none;
  959. position: absolute;
  960. opacity: 0;
  961. &:disabled ~ .icon {
  962. opacity: 0.33;
  963. fill: none;
  964. cursor: default;
  965. }
  966. &:not(:checked) ~ .icon-checked,
  967. &:checked ~ .icon-unchecked {
  968. display: none;
  969. }
  970. &:focus:not(.is-active) ~ .icon-checked,
  971. &:focus:not(.is-active) ~ .icon-unchecked {
  972. box-shadow: 0 0 0 2px hsl(201,62%,90%);
  973. color: hsl(200,71%,59%);
  974. }
  975. }
  976. + .label-text {
  977. @include bidi-style(margin-left, 0, margin-right, 3px);
  978. }
  979. }
  980. .checkbox-replacement {
  981. &:indeterminate {
  982. ~ .icon-checked,
  983. ~ .icon-unchecked {
  984. display: none;
  985. }
  986. ~ .icon-indeterminate {
  987. display: block;
  988. }
  989. }
  990. }
  991. .radio-replacement {
  992. input:focus ~ .icon-checked,
  993. input:focus ~ .icon-unchecked {
  994. border-radius: 100%;
  995. }
  996. }
  997. .table .checkbox-replacement,
  998. .table .radio-replacement {
  999. height: 40px;
  1000. width: 40px;
  1001. }
  1002. .table-overview tbody .icon-checkbox,
  1003. .table-overview tbody .icon-radio,
  1004. .table-overview tbody .icon-checkbox-checked,
  1005. .table-overview tbody .icon-radio-checked {
  1006. fill: transparent;
  1007. }
  1008. .table .table-cell {
  1009. vertical-align: top;
  1010. display: table-cell;
  1011. border-bottom: 1px solid #eeeeee;
  1012. }
  1013. .hero-two {
  1014. width: 100%;
  1015. }
  1016. .hero-two .hero-left {
  1017. width: 50%;
  1018. float: left;
  1019. }
  1020. .hero-two .hero-right {
  1021. width: 50%;
  1022. float: right;
  1023. }
  1024. #task {
  1025. position: fixed;
  1026. display: table;
  1027. width: 100%;
  1028. min-width: 1000px;
  1029. top: 46px;
  1030. display: none;
  1031. }
  1032. #task > .taskbar {
  1033. display: table-row;
  1034. z-index: 1040;
  1035. }
  1036. #task > .taskbar > div {
  1037. padding: 0 4px 4px 4px;
  1038. display: table-cell;
  1039. }
  1040. #task .task {
  1041. @extend .u-textTruncate;
  1042. max-width: 120px;
  1043. display: inline-block;
  1044. }
  1045. #task .task > a,
  1046. #task .task > a:hover {
  1047. color: #ffffff;
  1048. text-decoration: none;
  1049. }
  1050. #task .btn-default .task > a,
  1051. #task .btn-default .task > a:hover {
  1052. color: #333333;
  1053. }
  1054. #task .taskbar .btn-small {
  1055. padding: 3px 8px 4px;
  1056. margin-top: 2px;
  1057. font-size: 11px;
  1058. font-weight: 300;
  1059. }
  1060. #task .taskbar .btn-default {
  1061. background-color: #c3c3c3;
  1062. border-color: #c3c3c3;
  1063. }
  1064. #task [data-type="close"] {
  1065. @include bidi-style(margin-left, 5px, margin-right, 0);
  1066. font-size: 13px;
  1067. top: 1px;
  1068. }
  1069. #task .taskbar-items {
  1070. }
  1071. #task .taskbar-new {
  1072. text-align: end;
  1073. padding-right: 12px;
  1074. }
  1075. .max-size-scroll {
  1076. max-height: 240px;
  1077. overflow-y: scroll;
  1078. }
  1079. /*
  1080. #content > *:not(.active) {
  1081. display: none !important;
  1082. }
  1083. */
  1084. h1, h2, h3, h4, h5, h6 {
  1085. font-weight: normal;
  1086. color: hsl(202,8%,28%);
  1087. }
  1088. h1 {
  1089. font-size: 24px;
  1090. line-height: 30px;
  1091. }
  1092. h2,
  1093. h2.popover-title {
  1094. font-size: 20px;
  1095. line-height: 25px;
  1096. }
  1097. h3 {
  1098. font-size: 16px;
  1099. margin: 20px 0 8px;
  1100. color: hsl(207,7%,29%);
  1101. font-weight: normal;
  1102. .subtitle {
  1103. display: inline;
  1104. font-size: 12px;
  1105. text-transform: none;
  1106. color: hsl(0,0%,60%);
  1107. letter-spacing: initial;
  1108. }
  1109. }
  1110. h4 {
  1111. font-size: 13px;
  1112. text-transform: uppercase;
  1113. }
  1114. h5 {
  1115. font-size: 13px;
  1116. font-weight: bold;
  1117. }
  1118. label,
  1119. .checkbox.form-group label,
  1120. .label {
  1121. text-transform: uppercase;
  1122. color: hsl(198,19%,72%);
  1123. display: block;
  1124. font-size: 13px;
  1125. font-weight: normal;
  1126. letter-spacing: 0.05em;
  1127. margin-bottom: 4px;
  1128. text-align: start;
  1129. padding: 0;
  1130. /* user-select: none; disabled because of chrome51 https://github.com/martini/zammad/issues/183 */
  1131. }
  1132. /* circumventing the label:not(.inline-label) selector because it's too strong */
  1133. .inline-label,
  1134. .label-success,
  1135. .label-warning,
  1136. .label-danger,
  1137. .fileUpload label {
  1138. font-size: inherit;
  1139. font-weight: inherit;
  1140. text-align: inherit;
  1141. color: inherit;
  1142. letter-spacing: 0;
  1143. margin: 0;
  1144. text-transform: none;
  1145. display: inline;
  1146. }
  1147. table {
  1148. .inline-label,
  1149. .label-success,
  1150. .label-warning,
  1151. .label-danger {
  1152. white-space: nowrap; /* for labels in tables that might get crushed view: calendar_subscriptions */
  1153. }
  1154. }
  1155. .inline-label {
  1156. color: hsl(206,7%,28%);
  1157. }
  1158. .label-text {
  1159. @include bidi-style(margin-left, 3px, margin-right, 0);
  1160. @extend %clickable;
  1161. }
  1162. .label-success,
  1163. .label-warning,
  1164. .label-danger {
  1165. background: none;
  1166. }
  1167. .label-success {
  1168. color: $supergood-color;
  1169. }
  1170. .label-warning {
  1171. color: $ok-color;
  1172. }
  1173. .label-danger {
  1174. color: $superbad-color;
  1175. }
  1176. .label-subtle {
  1177. color: hsl(0,0%,80%);
  1178. }
  1179. fieldset {
  1180. margin: 0 -4px;
  1181. @extend .clearfix;
  1182. h2 {
  1183. margin-left: 4px;
  1184. margin-right: 4px;
  1185. }
  1186. }
  1187. /*
  1188. Firefox Specific Hack
  1189. to fix the overflow of column select with long names
  1190. https://stackoverflow.com/questions/17408815/fieldset-resizes-wrong-appears-to-have-unremovable-min-width-min-content/17863685#17863685
  1191. */
  1192. @-moz-document url-prefix() {
  1193. fieldset { display: table-cell; }
  1194. }
  1195. fieldset > .form-group {
  1196. padding: 0 4px;
  1197. }
  1198. .form-group {
  1199. margin-bottom: 16px;
  1200. &.form-group--inactive {
  1201. opacity: 0.5;
  1202. }
  1203. }
  1204. .date.form-group .controls {
  1205. position: relative;
  1206. }
  1207. .form-group + .form-group {
  1208. margin-top: 0;
  1209. }
  1210. .merge-group {
  1211. display: flex;
  1212. align-items: stretch;
  1213. &.merge-group--inactive {
  1214. }
  1215. &.merge-group--header {
  1216. h2 {
  1217. margin-bottom: 0;
  1218. }
  1219. label {
  1220. display: inline;
  1221. }
  1222. .merge-source,
  1223. .merge-target {
  1224. border-bottom: 1px solid #eee;
  1225. }
  1226. }
  1227. .merge-target,
  1228. .merge-source {
  1229. flex: 1;
  1230. width: 33%;
  1231. display: flex;
  1232. flex-direction: column;
  1233. justify-content: flex-end;
  1234. }
  1235. .merge-source,
  1236. .merge-target {
  1237. padding-bottom: 3px;
  1238. border-left: 1px solid #eee;
  1239. border-right: 1px solid #eee;
  1240. padding: 7px 13px;
  1241. }
  1242. &:first-of-type {
  1243. margin-top: 6px;
  1244. .merge-source,
  1245. .merge-target {
  1246. border-top: 1px solid #eee;
  1247. border-radius: 3px 3px 0 0;
  1248. }
  1249. }
  1250. &:last-of-type {
  1251. margin-bottom: 6px;
  1252. .merge-source,
  1253. .merge-target {
  1254. border-bottom: 1px solid #eee;
  1255. border-radius: 0 0 3px 3px;
  1256. }
  1257. }
  1258. .merge-value {
  1259. margin-bottom: 3px;
  1260. }
  1261. .form-group {
  1262. padding: 0;
  1263. }
  1264. .form-control {
  1265. margin: 0 !important;
  1266. }
  1267. &.merge-group--multi {
  1268. .merge-value + .merge-value {
  1269. margin-top: 12px;
  1270. }
  1271. }
  1272. }
  1273. .merge-controls {
  1274. flex: 1;
  1275. align-self: flex-end;
  1276. }
  1277. .merge-control {
  1278. margin-bottom: 5px;
  1279. height: 31px;
  1280. text-align: center;
  1281. display: flex;
  1282. flex: 1;
  1283. justify-content: space-between;
  1284. align-items: center;
  1285. align-self: flex-end;
  1286. }
  1287. .merge-control-input {
  1288. flex: 1;
  1289. }
  1290. .merge-arrow {
  1291. margin: 0 12px;
  1292. display: flex;
  1293. align-items: center;
  1294. justify-content: center;
  1295. .line-arrow {
  1296. fill: #e6e6e6;
  1297. }
  1298. }
  1299. .formGroup-label {
  1300. padding: 0 2px;
  1301. margin-bottom: 5px;
  1302. position: relative;
  1303. display: flex;
  1304. align-items: center;
  1305. label {
  1306. margin: 0;
  1307. }
  1308. .bookmark.icon {
  1309. margin-bottom: -1px;
  1310. }
  1311. .formGroup-metaControl {
  1312. @extend .u-clickable;
  1313. padding: 6px 4px;
  1314. margin: -6px 0 -6px auto;
  1315. font-size: 20px;
  1316. line-height: 1;
  1317. color: hsl(198, 19%, 72%);
  1318. }
  1319. }
  1320. .formGroup-bookmark {
  1321. @extend .u-clickable;
  1322. display: flex;
  1323. align-items: center;
  1324. flex-direction: row-reverse;
  1325. width: 30px;
  1326. height: 30px;
  1327. position: absolute;
  1328. right: 0;
  1329. top: -10px;
  1330. }
  1331. .form-group .controls .richtext {
  1332. position: relative;
  1333. height: auto;
  1334. }
  1335. .form-group .help-message {
  1336. cursor: help;
  1337. opacity: 0.2;
  1338. top: -2px;
  1339. position: relative;
  1340. @include bidi-style(margin-left, auto, margin-right, 0);
  1341. .icon-help {
  1342. display: block;
  1343. }
  1344. }
  1345. .form-group:not(.formGroup--halfSize) {
  1346. clear: left;
  1347. }
  1348. .form-group.formGroup--halfSize {
  1349. width: 50%;
  1350. float: left;
  1351. .form-control {
  1352. min-width: initial;
  1353. }
  1354. }
  1355. .formGroup--standalone .form-control {
  1356. margin-bottom: 0;
  1357. }
  1358. .controls--select {
  1359. position: relative;
  1360. }
  1361. .controls--datetime {
  1362. position: relative;
  1363. display: flex;
  1364. }
  1365. .controls--date {
  1366. position: relative;
  1367. }
  1368. .controls-label {
  1369. margin: 11px 10px 0;
  1370. flex-shrink: 0;
  1371. }
  1372. /* do not show safari auto fill icon - see issue #962 */
  1373. input::-webkit-contacts-auto-fill-button {
  1374. visibility: hidden;
  1375. display: none !important;
  1376. pointer-events: none;
  1377. position: absolute;
  1378. right: 0;
  1379. }
  1380. input[type="radio"],
  1381. input[type="checkbox"] {
  1382. margin: 0;
  1383. }
  1384. input[type=text],
  1385. input[type=password],
  1386. input[type=email],
  1387. input[type=date],
  1388. input[type=url],
  1389. textarea,
  1390. .form-control,
  1391. .checkbox.form-group .checkbox {
  1392. display: block;
  1393. padding: 7px 12px;
  1394. width: 100%;
  1395. height: 41px;
  1396. font-size: 14px;
  1397. font-weight: normal;
  1398. line-height: 25px;
  1399. color: #555;
  1400. background: white;
  1401. border: 1px solid hsl(0, 0%, 90%);
  1402. border-radius: 3px;
  1403. transition: none;
  1404. box-shadow: none;
  1405. outline: none;
  1406. appearance: none;
  1407. &.form-control--small {
  1408. padding: 5px 8px 4px;
  1409. height: 31px;
  1410. line-height: 20px;
  1411. &.form-control--multiline {
  1412. min-height: 31px;
  1413. }
  1414. }
  1415. &.form-control--inline {
  1416. display: inline-block;
  1417. width: auto;
  1418. }
  1419. &.form-control--multiline {
  1420. height: auto;
  1421. min-height: 41px;
  1422. }
  1423. &:focus,
  1424. &.focus {
  1425. border-color: hsl(200,71%,59%);
  1426. box-shadow: 0 0 0 3px hsl(201,62%,90%);
  1427. }
  1428. &.is-disabled, // .is-disabled should not be used - legacy support
  1429. &[disabled],
  1430. &[readonly] {
  1431. background: hsl(210,17%,93%);
  1432. border-color: hsl(210,10%,85%);
  1433. &:focus,
  1434. &.focus {
  1435. border-color: hsl(200,71%,59%);
  1436. }
  1437. }
  1438. &.is-disabled, // .is-disabled should not be used
  1439. &[disabled] {
  1440. cursor: not-allowed;
  1441. opacity: 1;
  1442. }
  1443. }
  1444. input[type=url] {
  1445. min-width: 400px;
  1446. }
  1447. .user-select.form-control {
  1448. padding-right: 35px;
  1449. min-width: 300px;
  1450. }
  1451. input[type=time] {
  1452. width: auto;
  1453. padding-left: 6px;
  1454. padding-right: 6px;
  1455. }
  1456. input.timeframe,
  1457. input.time {
  1458. box-sizing: content-box;
  1459. padding: 0 6px;
  1460. line-height: 42px;
  1461. flex-shrink: 0;
  1462. &.form-control--small {
  1463. line-height: 31px;
  1464. }
  1465. }
  1466. input.timeframe {
  1467. width: 5.5ch;
  1468. }
  1469. input.time {
  1470. width: 4.5ch;
  1471. }
  1472. input.time.time--12 {
  1473. width: 7.5ch;
  1474. }
  1475. .tokenfield.focus {
  1476. border-color: hsl(200,71%,59%);
  1477. box-shadow: 0 0 0 3px hsl(201,62%,90%);
  1478. }
  1479. .richtext.form-control {
  1480. padding-bottom: 28px;
  1481. }
  1482. .richtext.form-control [contenteditable] {
  1483. height: auto;
  1484. min-height: 82px;
  1485. background: none;
  1486. }
  1487. .richtext.form-control .attachments.attachments--list:not(:empty) {
  1488. border-top: 1px solid rgba(0,0,0,.04);
  1489. white-space: normal;
  1490. margin: 0 -12px -28px;
  1491. padding: 25px 20px 21px 72px;
  1492. position: relative;
  1493. line-height: 1;
  1494. }
  1495. textarea.form-control {
  1496. height: 118px;
  1497. }
  1498. select.form-control:not([multiple]) {
  1499. @include bidi-style(padding-right, 34px, padding-left, 12px);
  1500. word-wrap: normal;
  1501. }
  1502. .form-control.is-hidden {
  1503. display: none;
  1504. }
  1505. .form-control.form-control--borderless {
  1506. border: none;
  1507. padding: 0;
  1508. line-height: inherit;
  1509. height: auto;
  1510. &:focus {
  1511. box-shadow: none;
  1512. }
  1513. }
  1514. .select.form-group,
  1515. .user_autocompletion.form-group {
  1516. .form-control {
  1517. padding-right: 21px;
  1518. }
  1519. }
  1520. .form-control + .icon-arrow-down,
  1521. .dropdown-arrow {
  1522. position: absolute;
  1523. @include bidi-style(right, 12px, left, auto);
  1524. top: 50%;
  1525. margin-top: -3px;
  1526. fill: black;
  1527. opacity: 0.39;
  1528. width: 13px;
  1529. height: 7px;
  1530. @extend .u-unclickable;
  1531. }
  1532. select::-ms-expand {
  1533. display: none;
  1534. }
  1535. .has-error .form-control,
  1536. .has-error .form-control:focus,
  1537. .has-error .form-control.focus {
  1538. box-shadow: none;
  1539. border-color: red !important;
  1540. }
  1541. input.has-error {
  1542. box-shadow: none;
  1543. border-color: red !important;
  1544. }
  1545. .help-inline:not(:empty) {
  1546. color: red;
  1547. padding: 2px;
  1548. font-size: 13px;
  1549. }
  1550. /* use on input[type=radio] */
  1551. .primary-email-switch {
  1552. display: none;
  1553. & + label {
  1554. font-size: 11px;
  1555. color: #DBDBDB;
  1556. margin: 0;
  1557. @extend %clickable;
  1558. }
  1559. &:checked + label {
  1560. color: $highlight-color;
  1561. }
  1562. }
  1563. .primary-email-switch-label {
  1564. text-overflow: ellipsis;
  1565. overflow: hidden;
  1566. white-space: nowrap;
  1567. }
  1568. .primary-email-switch + label {
  1569. align-self: stretch;
  1570. padding: 0 5px;
  1571. display: flex;
  1572. align-items: center;
  1573. }
  1574. .controls--button {
  1575. display: flex;
  1576. input,
  1577. .form-control {
  1578. flex: 1;
  1579. @include bidi-style(border-right-width, 0, border-left-width, 1px);
  1580. @include bidi-style(border-top-right-radius, 0, border-top-left-radius, 3px);
  1581. @include bidi-style(border-bottom-right-radius, 0, border-bottom-left-radius, 3px);
  1582. &:focus + .controls-button {
  1583. .controls-button-inner {
  1584. border-color: hsl(200,71%,59%);
  1585. }
  1586. /*
  1587. fake the form-control outline
  1588. */
  1589. &:before {
  1590. content: "";
  1591. position: absolute;
  1592. left: 0;
  1593. @include rtl(left, -3px);
  1594. top: -3px;
  1595. right: -3px;
  1596. @include rtl(right, 0);
  1597. bottom: -3px;
  1598. background: hsl(201,62%,90%);
  1599. @include bidi-style(border-radius, 0 7px 7px 0, border-radius, 7px 0 0 7px);
  1600. }
  1601. }
  1602. }
  1603. }
  1604. .controls-button {
  1605. position: relative;
  1606. display: flex;
  1607. &.is-active .icon {
  1608. fill: $highlight-color;
  1609. }
  1610. }
  1611. .controls-button-inner {
  1612. display: flex;
  1613. justify-content: center;
  1614. align-items: center;
  1615. padding: 0 10px;
  1616. background: white;
  1617. position: relative;
  1618. border: 1px solid hsl(0, 0%, 90%);
  1619. @include bidi-style(border-radius, 0 3px 3px 0, border-radius, 3px 0 0 3px);
  1620. }
  1621. .searchfield {
  1622. position: relative;
  1623. margin-bottom: 20px;
  1624. .icon {
  1625. @include bidi-style(left, 15px, right, auto);
  1626. top: 12px;
  1627. width: 17px;
  1628. height: 17px;
  1629. position: absolute;
  1630. fill: hsl(60,1%,61%);
  1631. }
  1632. input[type=search] {
  1633. appearance: textfield;
  1634. border-radius: 19px;
  1635. padding: 0 17px 0 42px;
  1636. @include rtl(padding, 0 42px 0 17px);
  1637. will-change: transform;
  1638. &.is-empty + .empty-search {
  1639. visibility: hidden;
  1640. }
  1641. }
  1642. input[type="search"]::-webkit-search-cancel-button,
  1643. input[type="search"]::-webkit-search-decoration {
  1644. -webkit-appearance: none;
  1645. }
  1646. .empty-search {
  1647. height: 41px;
  1648. width: 50px;
  1649. visibility: visible;
  1650. .icon {
  1651. position: static;
  1652. opacity: 0.5;
  1653. }
  1654. }
  1655. }
  1656. .content {
  1657. overflow: auto;
  1658. position: relative;
  1659. background-color: #f8f9fa;
  1660. }
  1661. .content.fit {
  1662. padding: 10px;
  1663. background: #2c2d36;
  1664. z-index: 501;
  1665. }
  1666. .fullscreenMessage {
  1667. padding: 22px;
  1668. display: flex;
  1669. align-items: center;
  1670. justify-content: center;
  1671. flex: 1;
  1672. svg,
  1673. .icon {
  1674. @include bidi-style(margin-right, 14px, margin-left, 0);
  1675. }
  1676. h2 {
  1677. margin: 0;
  1678. }
  1679. }
  1680. .selected-clue {
  1681. @extend .zIndex-7;
  1682. pointer-events: none;
  1683. }
  1684. .modal--clue {
  1685. display: flex;
  1686. align-items: center;
  1687. justify-content: center;
  1688. @extend .zIndex-5;
  1689. .modal-backdrop {
  1690. bottom: 0;
  1691. width: 200%;
  1692. height: 200%;
  1693. left: -100%;
  1694. top: -100%;
  1695. background: radial-gradient(hsla(202,68%,54%,0.1), hsla(202,68%,54%,.9));
  1696. }
  1697. .modal-spacer {
  1698. position: absolute;
  1699. opacity: 0;
  1700. padding: 18px;
  1701. }
  1702. .modal-arrow {
  1703. background: inherit;
  1704. width: 20px;
  1705. height: 20px;
  1706. position: absolute;
  1707. margin: -10px 0 53px -10px;
  1708. left: 0;
  1709. top: 50%;
  1710. transform: rotate(45deg);
  1711. }
  1712. .modal-spacer[data-position="above"] .modal-arrow {
  1713. left: 50%;
  1714. top: 100%;
  1715. background: hsl(210,5%,97%);
  1716. }
  1717. .modal-spacer[data-position="below"] .modal-arrow {
  1718. left: 50%;
  1719. top: 0;
  1720. }
  1721. .modal-spacer[data-position="left"] .modal-arrow {
  1722. left: 100%;
  1723. top: 50%;
  1724. }
  1725. .modal-content {
  1726. border: none;
  1727. width: 300px;
  1728. box-shadow:
  1729. 0 8px 17px 0 rgba(0, 0, 0, 0.1),
  1730. 0 6px 20px 0 rgba(0, 0, 0, 0.05);
  1731. }
  1732. .modal-controls {
  1733. background: hsl(210,5%,97%);
  1734. margin: 23px 0 0;
  1735. padding: 10px;
  1736. display: flex;
  1737. align-items: center;
  1738. justify-content: space-between;
  1739. }
  1740. .modal-control {
  1741. padding-left: 14px;
  1742. padding-right: 14px;
  1743. .btn.is-disabled {
  1744. opacity: 1;
  1745. color: hsl(240,5%,83%);
  1746. }
  1747. }
  1748. .modal-header {
  1749. padding-bottom: 7px;
  1750. font-size: 18px;
  1751. }
  1752. .modal-body {
  1753. max-width: 340px;
  1754. }
  1755. }
  1756. kbd {
  1757. background: hsl(200,8%,90%);
  1758. border-radius: 3px;
  1759. border: 1px solid hsl(240,7%,77%);
  1760. box-shadow: 0 1px rgba(0,0,0,.08);
  1761. color: hsl(240,7%,37%);
  1762. display: inline-block;
  1763. font-size: 12px;
  1764. margin: 0 1px;
  1765. padding: 0 4px;
  1766. vertical-align: top;
  1767. }
  1768. .form-stacked .checkbox label {
  1769. color: inherit;
  1770. font-size: 13px;
  1771. text-transform: inherit;
  1772. vertical-align: baseline;
  1773. letter-spacing: inherit;
  1774. }
  1775. .pagination {
  1776. margin: 0 0 0 19px;
  1777. @includ rtl(margin, 0 19px 0 0);
  1778. display: flex;
  1779. }
  1780. .pagination > li > a,
  1781. .pagination > li > span {
  1782. padding: 0;
  1783. width: 31px;
  1784. height: 31px;
  1785. border-color: #e5e5e5;
  1786. @include bidi-style(margin-left, -1px, margin-right, 0);
  1787. }
  1788. .pagination > li:first-child > a,
  1789. .pagination > li:first-child > span {
  1790. @include bidi-style(border-top-left-radius, 4px, border-top-right-radius, 0);
  1791. @include bidi-style(border-bottom-left-radius, 4px, border-bottom-right-radius, 0);
  1792. }
  1793. .pagination > li:last-child > a,
  1794. .pagination > li:last-child > span {
  1795. @include bidi-style(border-top-right-radius, 4px, border-top-left-radius, 0);
  1796. @include bidi-style(border-bottom-right-radius, 4px, border-bottom-left-radius, 0);
  1797. }
  1798. .pagination > .active > a,
  1799. .pagination > .active > span,
  1800. .pagination > .active > a:hover,
  1801. .pagination > .active > span:hover,
  1802. .pagination > .active > a:focus,
  1803. .pagination > .active > span:focus {
  1804. background: #0F94D6;
  1805. border-color: #0F94D6;
  1806. }
  1807. .pagination-counter {
  1808. margin: 0 0 0 19px;
  1809. @include rtl(margin, 0 19px 0 0);
  1810. line-height: 33px;
  1811. color: #9c9c9b;
  1812. }
  1813. .pagination-items-range {
  1814. color: #706f6f;
  1815. }
  1816. .page-header {
  1817. margin: 0 0 15px;
  1818. padding: 0;
  1819. display: flex;
  1820. align-items: center;
  1821. flex-wrap: wrap;
  1822. }
  1823. .page-header--center {
  1824. justify-content: center;
  1825. }
  1826. .page-header-title {
  1827. display: flex;
  1828. align-items: center;
  1829. .zammad-switch {
  1830. @include bidi-style(margin-right, 9px, margin-left, 0);
  1831. }
  1832. h1,
  1833. h2 {
  1834. margin-top: 9px;
  1835. margin-bottom: 7px;
  1836. }
  1837. }
  1838. .page-header-center {
  1839. justify-self: center;
  1840. @include bidi-style(padding-left, 9px, padding-right, 0);
  1841. margin: 0 auto;
  1842. & + .page-header-meta {
  1843. @include bidi-style(margin-left, 0, margin-right, auto);
  1844. flex: none;
  1845. }
  1846. }
  1847. .page-header-meta {
  1848. @include bidi-style(margin-left, auto, margin-right, 0);
  1849. @include bidi-style(padding-left, 20px, padding-right, 0);
  1850. display: flex;
  1851. justify-content: flex-end;
  1852. flex: 1;
  1853. min-width: 0; /* firefox flexbug */
  1854. .btn {
  1855. overflow: hidden;
  1856. text-overflow: ellipsis;
  1857. white-space: nowrap;
  1858. }
  1859. .btn + .btn {
  1860. @include bidi-style(margin-left, 9px, margin-right, 0);
  1861. }
  1862. }
  1863. .page-content {
  1864. .formGroup-label label,
  1865. .label {
  1866. color: hsl(197,18%,70%);
  1867. }
  1868. .help-text,
  1869. .help-block {
  1870. color: hsl(198,19%,72%);
  1871. }
  1872. .content-controls-align-right {
  1873. display: flex;
  1874. justify-content: flex-end;
  1875. }
  1876. }
  1877. .page-description p {
  1878. color: initial;
  1879. }
  1880. .page-body--two-column {
  1881. display: flex;
  1882. }
  1883. .page-aside {
  1884. @include bidi-style(padding-right, 20px, padding-left, 0);
  1885. @include bidi-style(border-right, 1px solid hsl(0,0%,90%), border-left, none);
  1886. @include bidi-style(margin-right, 20px, margin-left, 0);
  1887. width: 240px;
  1888. flex-shrink: 0;
  1889. flex-grow: 0;
  1890. }
  1891. .page-main {
  1892. flex: 1;
  1893. }
  1894. .page-loading {
  1895. min-height: 500px;
  1896. display: flex;
  1897. align-items: center;
  1898. justify-content: center;
  1899. }
  1900. .page-loading-label {
  1901. @include bidi-style(margin-left, 10px, margin-right, 0);
  1902. margin-top: 1px;
  1903. }
  1904. .dropdown-menu .count {
  1905. padding-top: 1px;
  1906. @include bidi-style(margin-left, 10px, margin-right, 0);
  1907. }
  1908. .help-block {
  1909. margin: 0;
  1910. color: #bcbcbc;
  1911. font-size: 13px;
  1912. &.help-block--center {
  1913. text-align: center;
  1914. }
  1915. }
  1916. .help-block:not(:empty) {
  1917. margin: 8px 2px 0;
  1918. }
  1919. /* replace music icon with attachment */
  1920. .icon-attachment {
  1921. background-position: -24px 0;
  1922. }
  1923. /*
  1924. * hero-unit (used on getstarted, login, signup)
  1925. */
  1926. .hero-unit {
  1927. width: 500px;
  1928. margin: 10px 0;
  1929. padding: 23px 25px;
  1930. border: 1px solid #e5f0f5;
  1931. color: inherit;
  1932. background-color: white;
  1933. border-radius: 6px;
  1934. box-shadow:
  1935. 0 8px 17px 0 rgba(0, 0, 0, 0.2),
  1936. 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  1937. label {
  1938. color: hsl(0,0%,60%);
  1939. }
  1940. .inline-label {
  1941. font-size: inherit;
  1942. }
  1943. }
  1944. .hero-unit h1,
  1945. .hero-unit h2 {
  1946. margin-top: 0;
  1947. }
  1948. .getstarted,
  1949. .reset_password,
  1950. .signup,
  1951. .darkBackground,
  1952. .login {
  1953. padding: 10px;
  1954. background: hsl(234,10%,19%);
  1955. }
  1956. .content.getstarted {
  1957. padding: 0;
  1958. .main {
  1959. padding: 20px 10px;
  1960. }
  1961. }
  1962. .login {
  1963. padding: 24px 24px 97px;
  1964. color: hsl(212,8%,40%);
  1965. a {
  1966. color: hsl(229,2%,51%);
  1967. }
  1968. &.login--fancy {
  1969. color: hsla(0,0%,100%,.7);
  1970. background:
  1971. radial-gradient(circle at 49.06% 50.5%, #a36f71, transparent 74%),
  1972. radial-gradient(circle at 6.95% 9.56%, #745479, transparent 100%),
  1973. radial-gradient(circle at 2.58% 98.57%, #392e3e, transparent 51%),
  1974. radial-gradient(circle at 82.11% 97.15%, #5c404e, transparent 100%),
  1975. radial-gradient(circle at 50% 50%, #8b6b76, #8b6b76 100%);
  1976. a {
  1977. color: white;
  1978. }
  1979. .hero-unit {
  1980. box-shadow:
  1981. 0 8px 17px 0 rgba(0, 0, 0, 0.1),
  1982. 0 6px 20px 0 rgba(0, 0, 0, 0.09);
  1983. }
  1984. }
  1985. .btn:not(.btn--text) {
  1986. min-width: calc(33.33% - 6px); // auth provider width
  1987. }
  1988. }
  1989. .login .hero-unit {
  1990. width: 430px;
  1991. margin: 0 0 28px;
  1992. }
  1993. .login .company-logo {
  1994. max-height: 100px;
  1995. max-width: 200px;
  1996. margin: 20px auto 42px;
  1997. display: block;
  1998. }
  1999. .login p {
  2000. margin: 0 auto 22px;
  2001. max-width: 400px;
  2002. text-align: center;
  2003. }
  2004. .login hr {
  2005. margin: 0 auto 22px;
  2006. border-top-color: hsl(240,5%,27%);
  2007. width: 100%;
  2008. max-width: 400px;
  2009. }
  2010. .login p a {
  2011. text-decoration: underline;
  2012. }
  2013. .poweredBy {
  2014. display: flex;
  2015. align-items: center;
  2016. justify-content: center;
  2017. color: hsl(233,7%,26%);
  2018. margin: auto 0 34px -16px;
  2019. @include rtl(margin, auto -16px 34px 0);
  2020. cursor: default;
  2021. position: absolute;
  2022. bottom: 0;
  2023. left: 0;
  2024. right: 0;
  2025. .icon-logo {
  2026. @include bidi-style(margin-right, 8px, margin-left, 0);
  2027. margin-top: -11px;
  2028. }
  2029. .logotype {
  2030. @include bidi-style(margin-left, 7px, margin-left, 0);
  2031. margin-top: -3px;
  2032. fill: hsl(225,9%,27%);
  2033. }
  2034. }
  2035. .fullscreen {
  2036. @extend .fit;
  2037. display: table;
  2038. width: 100%;
  2039. height: 100%;
  2040. min-height: 100vh;
  2041. }
  2042. .fullscreen p {
  2043. color: hsl(212,8%,40%);
  2044. }
  2045. .fullscreen-center {
  2046. display: table-cell;
  2047. vertical-align: middle;
  2048. text-align: center;
  2049. }
  2050. .fullscreen-body {
  2051. text-align: start;
  2052. display: inline-block;
  2053. }
  2054. ol.tabs {
  2055. list-style: decimal inside;
  2056. }
  2057. ol.tabs li {
  2058. display: list-item;
  2059. }
  2060. .tabs {
  2061. display: flex;
  2062. padding: 0;
  2063. margin-bottom: 20px;
  2064. color: #b8b8b8;
  2065. border: 1px solid rgba(0,8,14,.08);
  2066. border-radius: 3px;
  2067. background: white;
  2068. }
  2069. .tabs-condensed .tab {
  2070. padding-left: 5px;
  2071. padding-right: 5px;
  2072. }
  2073. .progress-tabs .tab {
  2074. cursor: default;
  2075. }
  2076. .tab {
  2077. color: inherit;
  2078. height: 35px;
  2079. padding: 8px 20px;
  2080. text-align: center;
  2081. border-right: 1px solid rgba(0,8,14,.08);
  2082. flex: 1 1 auto;
  2083. @extend .u-clickable;
  2084. white-space: nowrap;
  2085. &.active {
  2086. color: white;
  2087. background: #444a4f;
  2088. box-shadow: none;
  2089. .tab-badge {
  2090. color: hsl(204,3%,65%);
  2091. }
  2092. }
  2093. }
  2094. .tab-dropdown {
  2095. position: relative;
  2096. display: flex;
  2097. align-items: center;
  2098. justify-content: center;
  2099. .arrow {
  2100. @include bidi-style(margin-left, 10px, margin-right, 0);
  2101. opacity: 0.75;
  2102. }
  2103. .icon {
  2104. fill: hsl(0,0%,70%);
  2105. }
  2106. &.active {
  2107. background: white;
  2108. .icon {
  2109. fill: #444a4f;
  2110. opacity: 1;
  2111. }
  2112. }
  2113. }
  2114. .tab:first-child {
  2115. border-radius: 3px 0 0 3px;
  2116. @include rtl(border-radius, 0 3px 3px 0);
  2117. @include bidi-style(border-right-width, 1px, border-right-width, 0);
  2118. }
  2119. .tab:last-child:not(:only-child) {
  2120. border-radius: 0 3px 3px 0;
  2121. @include bidi-style(border-right-width, 0, border-right-width, 1px);
  2122. @include rtl(border-radius, 3px 0 0 3px);
  2123. }
  2124. .tab:only-child {
  2125. border-radius: 3px;
  2126. @include bidi-style(border-right-width, 0, border-right-width, 1px);
  2127. }
  2128. .tab-badge {
  2129. @include bidi-style(margin-left, 3px, margin-right, 0);
  2130. font-size: 0.95em;
  2131. }
  2132. .tabs.tabs--inline {
  2133. display: inline-flex;
  2134. margin-left: 0;
  2135. margin-right: 0;
  2136. .tab {
  2137. flex: none;
  2138. }
  2139. }
  2140. .tabs--big {
  2141. margin: 28px auto;
  2142. font-size: 14px;
  2143. border-radius: 8px;
  2144. .tab {
  2145. height: auto;
  2146. padding: 10px 23px 9px;
  2147. &:first-child {
  2148. border-radius: 8px 0 0 8px;
  2149. @include rtl(border-radius, 0 8px 8px 0);
  2150. }
  2151. &:last-child {
  2152. border-radius: 0 8px 8px 0;
  2153. @include rtl(border-radius, 8px 0 0 8px);
  2154. }
  2155. &:only-child {
  2156. border-radius: 8px;
  2157. }
  2158. }
  2159. .tab-dropdown {
  2160. padding-left: 18px;
  2161. padding-right: 15px;
  2162. @include rtl(padding-left, 15px);
  2163. @include rtl(padding-right, 18px);
  2164. }
  2165. }
  2166. .dashboard .tabs--big {
  2167. width: 50%;
  2168. }
  2169. .separator {
  2170. margin: 20px 0;
  2171. position: relative;
  2172. text-align: center;
  2173. }
  2174. .separator:before {
  2175. content: "";
  2176. position: absolute;
  2177. width: 100%;
  2178. height: 1px;
  2179. top: 50%;
  2180. left: 0;
  2181. background: #e6e6e6;
  2182. }
  2183. .separator-text {
  2184. padding: 0 10px;
  2185. color: #999;
  2186. font-size: 12px;
  2187. letter-spacing: 0.05em;
  2188. text-transform: uppercase;
  2189. background: white;
  2190. display: inline-block;
  2191. position: relative;
  2192. }
  2193. .auth-providers {
  2194. display: flex;
  2195. flex-wrap: wrap;
  2196. justify-content: space-between;
  2197. margin-bottom: -10px;
  2198. }
  2199. .auth-provider {
  2200. height: 40px;
  2201. padding: 0 10px 0 7px;
  2202. margin-bottom: 10px;
  2203. color: white !important;
  2204. line-height: 23px;
  2205. border-radius: 4px;
  2206. display: flex;
  2207. align-items: center;
  2208. text-decoration: none;
  2209. width: calc(33.33% - 6px);
  2210. &.auth-provider--wide {
  2211. padding-right: 25px;
  2212. }
  2213. &.auth-provider--facebook {
  2214. background: #4f699c;
  2215. }
  2216. &.auth-provider--google {
  2217. background: hsl(0,0%,93%);
  2218. color: hsl(0,0%,46%) !important;
  2219. }
  2220. &.auth-provider--twitter {
  2221. background: #2daee1;
  2222. }
  2223. &.auth-provider--email {
  2224. background: #ffd22e;
  2225. }
  2226. &.auth-provider--linkedin {
  2227. background: #006087;
  2228. }
  2229. &.auth-provider--github {
  2230. background: hsl(0,0%,27%);
  2231. }
  2232. &.auth-provider--gitlab {
  2233. background: hsl(10,78%,53%);
  2234. }
  2235. &.auth-provider--oauth2 {
  2236. background: hsl(0,0%,15%);
  2237. }
  2238. &.auth-provider--office365 {
  2239. background: hsl(15,100%,47%);
  2240. }
  2241. &.auth-provider--weibo {
  2242. background: hsl(0,0%,27%);
  2243. }
  2244. .provider-name {
  2245. flex: 1;
  2246. }
  2247. .provider-icon {
  2248. width: 29px;
  2249. height: 24px;
  2250. @include bidi-style(margin-right, 10px, margin-left, 0);
  2251. }
  2252. }
  2253. /*
  2254. global icon definitions
  2255. =======================
  2256. */
  2257. .icon-arrow-down,
  2258. .icon-arrow-up,
  2259. .icon-arrow-left,
  2260. .icon-arrow-right {
  2261. fill: black;
  2262. opacity: 0.39;
  2263. }
  2264. .icon-arrow-left,
  2265. .icon-arrow-right {
  2266. &.arrow--x2 {
  2267. width: 14px;
  2268. height: 26px;
  2269. }
  2270. }
  2271. .arrow--disabled {
  2272. opacity: 0.23;
  2273. }
  2274. .icon-checkmark {
  2275. fill: $supergood-color;
  2276. }
  2277. .icon-error {
  2278. fill: $superbad-color;
  2279. }
  2280. .loading.icon {
  2281. display: inline-block;
  2282. width: 30px;
  2283. height: 30px;
  2284. background: hsl(145,51%,45%);
  2285. animation: rotateplane 1.2s infinite ease-in-out;
  2286. }
  2287. .small.loading.icon {
  2288. width: 20px;
  2289. height: 20px;
  2290. }
  2291. .tiny.loading.icon {
  2292. width: 12px;
  2293. height: 12px;
  2294. }
  2295. .loading.icon.muted {
  2296. background: hsl(195,20%,96%);
  2297. }
  2298. @keyframes rotateplane {
  2299. 0% {
  2300. transform: perspective(120px) rotateX(0deg) rotateY(0deg);
  2301. } 50% {
  2302. transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
  2303. } 100% {
  2304. transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  2305. }
  2306. }
  2307. .icon-spinner-medium {
  2308. animation: spinIcon .9s steps(12) infinite;
  2309. }
  2310. .icon-spinner-small {
  2311. animation: spinIcon .9s steps(8) infinite;
  2312. }
  2313. @keyframes spinIcon {
  2314. to {
  2315. transform: rotate(-1turn);
  2316. }
  2317. }
  2318. .color-swatch {
  2319. padding: 2px;
  2320. margin: -2px 0 -4px;
  2321. @extend %clickable;
  2322. /* :after technique for bigger click area */
  2323. &:after {
  2324. content: "";
  2325. display: inline-block;
  2326. height: 11px;
  2327. width: 11px;
  2328. border-radius: 100%;
  2329. background: currentColor;
  2330. }
  2331. }
  2332. .icon-status {
  2333. fill: $ok-color;
  2334. &.inline {
  2335. margin-top: -3px;
  2336. vertical-align: middle;
  2337. }
  2338. &.inactive {
  2339. fill: hsl(198,18%,86%);
  2340. }
  2341. &.ok {
  2342. fill: $supergood-color;
  2343. }
  2344. &.error {
  2345. fill: $superbad-color;
  2346. }
  2347. &.neutral {
  2348. fill: $ok-color;
  2349. }
  2350. }
  2351. .icon-status-modified-inner-circle {
  2352. position: absolute;
  2353. left: 50%;
  2354. top: 0;
  2355. will-change: opacity;
  2356. transform: translate3d(-50%,0,0);
  2357. animation: fade 1.8s ease-in-out infinite;
  2358. }
  2359. @keyframes fade {
  2360. 54% { opacity: 1 }
  2361. 90% { opacity: 0 }
  2362. to { opacity: 1 }
  2363. }
  2364. .icon-checkbox,
  2365. .icon-checkbox-checked,
  2366. .icon-checkbox-indeterminate {
  2367. fill: white;
  2368. }
  2369. /*
  2370. * removed margin of forms to not break the layout with submit buttons within <form></form> area e. g. for modal dialogs
  2371. */
  2372. form {
  2373. margin: 0;
  2374. &.form--flexibleWidth .controls {
  2375. display: table;
  2376. }
  2377. &.form--grid {
  2378. display: flex;
  2379. flex-wrap: wrap;
  2380. width: calc(100% + 20px);
  2381. margin-left: -10px;
  2382. margin-right: -10px;
  2383. .form-group {
  2384. display: block;
  2385. padding: 0 10px;
  2386. width: 100%;
  2387. $sizes: "1/2", "1/3", "2/3", "1/4", "2/4", "3/4", "1/5", "2/5", "3/5", "4/5";
  2388. @each $size in $sizes {
  2389. &[data-width="#{$size}"] {
  2390. width: calc(#{$size} * 100%);
  2391. }
  2392. }
  2393. }
  2394. }
  2395. }
  2396. .form-controls {
  2397. @extend .clearfix;
  2398. display: flex;
  2399. align-items: center;
  2400. margin-top: 10px;
  2401. .btn + .btn:not(.align-right) {
  2402. @include bidi-style(margin-left, 20px, margin-right, 10px);
  2403. }
  2404. }
  2405. form a.standalone {
  2406. line-height: 40px;
  2407. margin: 0 5px;
  2408. }
  2409. form a.standalone.align-right {
  2410. @include bidi-style(margin-left, auto, margin-right, 0);
  2411. }
  2412. footer {
  2413. clear: both;
  2414. padding-top: 10px;
  2415. padding-left: 10px;
  2416. padding-right: 22px;
  2417. @include rtl(padding-left, 22px);
  2418. @include rtl(padding-right, 10px);
  2419. }
  2420. .can-move {
  2421. cursor: move;
  2422. }
  2423. .can-move-placeholder {
  2424. border: 1px dashed #DDD;
  2425. background: #EEE;
  2426. margin-top: 5px;
  2427. margin-bottom: 5px;
  2428. }
  2429. .customer_info {
  2430. }
  2431. .customer_info ul.nav > li {
  2432. width: 50%;
  2433. }
  2434. .customer_info ul.nav > li > a {
  2435. @extend .u-textTruncate;
  2436. }
  2437. .customer_info .thumbnail {
  2438. position: absolute;
  2439. right: 20px;
  2440. }
  2441. .customer_info textarea {
  2442. @include bidi-style(padding-left, 10px, padding-right, 0);
  2443. width: 100%;
  2444. border-color: #eee;
  2445. }
  2446. .overviews {
  2447. .sidebar {
  2448. @include small-desktop {
  2449. display: none;
  2450. }
  2451. }
  2452. .table > tbody > tr > td {
  2453. user-select: none;
  2454. }
  2455. }
  2456. .overview-header {
  2457. position: relative;
  2458. margin: 20px 0 32px;
  2459. height: 41px;
  2460. display: none;
  2461. align-items: center;
  2462. .tabsHolder {
  2463. flex: 1;
  2464. @include bidi-style(margin-right, 20px, margin-left, 0);
  2465. min-width: 0; /* Firefox bug fix */
  2466. }
  2467. .tabs {
  2468. margin: 0;
  2469. position: relative;
  2470. }
  2471. .tabs-clone {
  2472. right: 0;
  2473. }
  2474. .dropdown {
  2475. min-width: 0;
  2476. width: 336px;
  2477. }
  2478. @include small-desktop {
  2479. display: flex;
  2480. }
  2481. }
  2482. .tableOverview-edit {
  2483. @extend .u-clickable, .u-highlight;
  2484. }
  2485. .bulkAction {
  2486. position: fixed;
  2487. bottom: 0;
  2488. left: $sidebarWidth + $navigationWidth;
  2489. right: 0;
  2490. min-width: $minWidth - $sidebarWidth - $navigationWidth;
  2491. background: white;
  2492. z-index: 1;
  2493. box-shadow:
  2494. 0 -1px rgba(0,0,0,.05),
  2495. 0 -2px rgba(0,0,0,.03),
  2496. 0 -3px rgba(0,0,0,.01);
  2497. @include small-desktop {
  2498. left: $navigationWidth;
  2499. min-width: $minWidth - $sidebarWidth;
  2500. }
  2501. }
  2502. .bulkAction-firstStep {
  2503. display: flex;
  2504. align-items: center;
  2505. }
  2506. .bulkAction-firstStep .has-error {
  2507. border-color: red !important;
  2508. border: 1px solid;
  2509. }
  2510. .bulkAction-secondStep {
  2511. display: flex;
  2512. flex-direction: column;
  2513. }
  2514. .bulkAction .btn {
  2515. margin: 0 16px;
  2516. }
  2517. .bulkAction .btn--text {
  2518. @include bidi-style(margin-right, 0, margin-left, 16px);
  2519. }
  2520. .bulkAction-controls {
  2521. margin-top: 10px;
  2522. @include bidi-style(margin-left, auto, margin-right, 0);
  2523. }
  2524. .panel {
  2525. box-shadow: none;
  2526. color: hsl(60,1%,34%);
  2527. }
  2528. .panel-default > .panel-heading {
  2529. padding-bottom: 8px;
  2530. font-weight: normal;
  2531. text-transform: uppercase;
  2532. font-size: 12px;
  2533. line-height: 17px;
  2534. letter-spacing: 0.05em;
  2535. background: hsl(197, 20%, 93%);
  2536. background: hsl(197,20%,93%);
  2537. border-color: hsl(198,18%,86%);
  2538. }
  2539. .panel-title {
  2540. font-size: inherit;
  2541. }
  2542. .panel-group .panel-heading {
  2543. display: block;
  2544. }
  2545. .panel-body ul {
  2546. list-style: none;
  2547. padding: 0;
  2548. margin: 0;
  2549. }
  2550. .well {
  2551. background: white;
  2552. border: 1px solid hsl(240,3%,92%);
  2553. border-radius: 3px;
  2554. padding: 10px;
  2555. }
  2556. .well-muted {
  2557. background-color: whiteSmoke;
  2558. border: 1px solid #eee;
  2559. border: 1px solid rgba(0, 0, 0, 0.05);
  2560. border-radius: 4px;
  2561. box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  2562. }
  2563. .merged, .merge:hover {
  2564. text-decoration: line-through;
  2565. }
  2566. .translation {
  2567. border: 1px dotted #F92;
  2568. border-radius: 3px;
  2569. cursor: text;
  2570. }
  2571. .translation:hover {
  2572. }
  2573. .translation[contenteditable="true"] {
  2574. display: inline;
  2575. }
  2576. .translation[contenteditable="true"]:hover,
  2577. .translation[contenteditable="true"]:focus {
  2578. background: none;
  2579. }
  2580. .translation .icon-edit {
  2581. display: none;
  2582. }
  2583. .translation:hover .icon-edit {
  2584. display: inline-block;
  2585. }
  2586. .translationOverview .btn + .btn {
  2587. margin: -10px;
  2588. }
  2589. .sub_attribute .control-label {
  2590. width: 60px;
  2591. }
  2592. .sub_attribute .controls {
  2593. @include bidi-style(margin-left, 80px, margin-right, 0);
  2594. }
  2595. .splash {
  2596. position: absolute;
  2597. left: 0;
  2598. top: 0;
  2599. width: 100%;
  2600. height: 100%;
  2601. background: hsl(210,0%,98%);
  2602. display: flex;
  2603. align-items: center;
  2604. justify-content: center;
  2605. font-size: 16px;
  2606. color: hsl(0,0%,45%);
  2607. .icon {
  2608. @include bidi-style(margin-right, 10px, margin-left, 0);
  2609. filter: grayscale(90%);
  2610. }
  2611. }
  2612. .navigation {
  2613. width: $navigationWidth;
  2614. background: hsl(232,10%,16%);
  2615. position: relative;
  2616. }
  2617. .navigation:empty {
  2618. display: none !important;
  2619. }
  2620. .menu {
  2621. padding: 0;
  2622. margin: 0;
  2623. list-style: none;
  2624. flex-shrink: 0;
  2625. }
  2626. .menu .badge {
  2627. background: $ok-color;
  2628. color: hsl(233,10%,16%);
  2629. @include bidi-style(margin-right, 8px, margin-left, 0);
  2630. }
  2631. .menu .zammad-switch {
  2632. height: 22px;
  2633. }
  2634. .menu .dropdown-menu {
  2635. left: 10px;
  2636. right: 15px;
  2637. min-width: 0;
  2638. }
  2639. .menu-item {
  2640. padding: 0 15px;
  2641. height: 48px;
  2642. color: rgba(240, 250, 255, .25);
  2643. border-bottom: 1px solid rgba(240, 250, 255, .05);
  2644. text-decoration: none;
  2645. display: flex;
  2646. align-items: center;
  2647. @extend %clickable;
  2648. &:hover {
  2649. background: hsl(230,10%,13%);
  2650. border-bottom-color: rgba(240, 250, 255, .08);
  2651. }
  2652. &.is-active,
  2653. &.is-hovered {
  2654. background: none;
  2655. color: white;
  2656. }
  2657. &.is-active .menu-item-icon,
  2658. &.is-active .dropdown-icon,
  2659. &.is-hovered .menu-item-icon {
  2660. fill: currentColor;
  2661. }
  2662. &.is-active,
  2663. &.is-hovered {
  2664. background: hsl(202,68%,54%);
  2665. }
  2666. &.is-active .zammad-switch {
  2667. input:not(:checked) + label { // switch background
  2668. background: hsl(202,68%,43%);
  2669. }
  2670. label:after {
  2671. background: white;
  2672. }
  2673. }
  2674. .dropdown-icon {
  2675. fill: currentColor;
  2676. }
  2677. }
  2678. .menu-item-icon {
  2679. @include bidi-style(margin-right, 15px, margin-left, 0);
  2680. width: 24px;
  2681. height: 24px;
  2682. fill: hsl(206,7%,37%);
  2683. }
  2684. .menu-item-name {
  2685. flex: 1;
  2686. margin-top: 2px;
  2687. }
  2688. .tasks {
  2689. background: #2c2d36;
  2690. flex: 1;
  2691. overflow: auto;
  2692. }
  2693. .tasks.tasks--standalone {
  2694. background: none;
  2695. margin: 8px 0 0;
  2696. padding: 0;
  2697. overflow: visible;
  2698. }
  2699. .tasks--standalone .task {
  2700. padding: 0;
  2701. margin-bottom: 9px;
  2702. display: flex;
  2703. }
  2704. .tasks--standalone .task-text {
  2705. flex: 1;
  2706. min-width: 0; /* Firefox wrong content-calculation with word-wrap workaround */
  2707. }
  2708. .tasks--standalone .name {
  2709. @extend .u-highlight, .u-textTruncate;
  2710. display: block;
  2711. }
  2712. .tasks--standalone .time {
  2713. color: hsl(198,19%,72%);
  2714. }
  2715. .tasks--standalone .icon-task-state {
  2716. @include bidi-style(margin-right, 4px, margin-left, 0);
  2717. }
  2718. .nav-tab {
  2719. @include bidi-style(padding, 10px 15px 9px 0, padding, 10px 0 9px 15px);
  2720. position: relative;
  2721. color: #808080;
  2722. display: flex;
  2723. align-items: center;
  2724. @extend .u-clickable;
  2725. }
  2726. .tasks-navigation .nav-tab {
  2727. height: 40px;
  2728. border-bottom: 1px solid #33363e;
  2729. }
  2730. .tasks-navigation .nav-tab:not(.is-active):hover {
  2731. background: #26272e;
  2732. }
  2733. .navigation .nav-tab-name {
  2734. text-align: start;
  2735. }
  2736. .tasks-navigation .nav-tab-icon .error {
  2737. transform: scale(0.85);
  2738. }
  2739. .nav-tab:hover {
  2740. color: #808080;
  2741. text-decoration: none;
  2742. }
  2743. .nav-tab.is-active,
  2744. .nav-tab.nav-tab--search:hover,
  2745. .nav-tab.nav-tab--search.is-hover {
  2746. background: #389ed9;
  2747. color: white;
  2748. .nav-tab-icon .icon {
  2749. fill: white;
  2750. }
  2751. }
  2752. .nav-tab.ui-sortable-helper {
  2753. border-bottom-color: transparent;
  2754. }
  2755. .nav-tab.nav-tab--search {
  2756. height: 30px;
  2757. padding-top: 9px;
  2758. }
  2759. .nav-tab-icon {
  2760. margin-top: -3px;
  2761. display: flex;
  2762. align-items: center;
  2763. justify-content: center;
  2764. position: relative;
  2765. width: 30px;
  2766. }
  2767. .nav-tab-icon .icon {
  2768. max-width: 18px;
  2769. max-height: 18px;
  2770. fill: #808080;
  2771. }
  2772. .nav-tab-icon .icon-diagonal-cross {
  2773. fill: #F35910;
  2774. width: 12px;
  2775. height: 12px;
  2776. }
  2777. .nav-tab-icon .icon.icon-loading {
  2778. animation: rotateplane 1.2s infinite ease-in-out;
  2779. fill: $supergood-color;
  2780. /*
  2781. Safari font rendering bugfix while animating
  2782. http://stackoverflow.com/questions/9733011/safari-changing-font-weights-when-unrelated-animations-are-running
  2783. */
  2784. @extend .zIndex-5; // stay beneath .global-search-menu
  2785. position: relative;
  2786. }
  2787. .nav-tab-close {
  2788. position: absolute;
  2789. @include bidi-style(right, 0, left, auto);
  2790. top: 0;
  2791. height: 100%;
  2792. @include bidi-style(padding-right, 16px, padding-left, 0);
  2793. visibility: hidden;
  2794. @extend .u-clickable;
  2795. display: flex;
  2796. align-items: center;
  2797. }
  2798. .nav-tab:hover .nav-tab-close {
  2799. visibility: visible;
  2800. }
  2801. .nav-tab-close-inner {
  2802. width: 19px;
  2803. height: 19px;
  2804. background-color: #2c2d36;
  2805. border-radius: 100%;
  2806. display: flex;
  2807. align-items: center;
  2808. justify-content: center;
  2809. }
  2810. .nav-tab-close:hover .nav-tab-close-inner {
  2811. background-color: #972e29;
  2812. }
  2813. .nav-tab-close svg {
  2814. width: 9px;
  2815. height: 9px;
  2816. fill: white;
  2817. opacity: 0.3;
  2818. }
  2819. .nav-tab-close:hover svg {
  2820. opacity: 1;
  2821. }
  2822. .icon-task-state {
  2823. margin-top: 1px;
  2824. display: block;
  2825. }
  2826. .nav-tab-icon .icon-task-state {
  2827. margin: 0;
  2828. }
  2829. .nav-tab.task-state-open.is-active {
  2830. background-color: $task-state-open-color;
  2831. }
  2832. .task-state-open-color {
  2833. color: $task-state-open-color;
  2834. }
  2835. .icon-task-state.open {
  2836. fill: $task-state-open-color;
  2837. }
  2838. .nav-tab.task-state-closed.is-active {
  2839. background-color: $task-state-closed-color;
  2840. }
  2841. .task-state-closed-color {
  2842. color: $task-state-closed-color;
  2843. }
  2844. .icon-task-state.closed {
  2845. fill: $task-state-closed-color;
  2846. }
  2847. .nav-tab.task-state-escalating.is-active {
  2848. background-color: $task-state-escalating-color;
  2849. }
  2850. .task-state-escalating-color {
  2851. color: $task-state-escalating-color;
  2852. }
  2853. .icon-task-state.escalating {
  2854. fill: $task-state-escalating-color;
  2855. }
  2856. // pending: stays blue
  2857. // .nav-tab.task-state-pending.is-active {
  2858. // background-color: $task-state-pending-color;
  2859. // }
  2860. .task-state-pending-color {
  2861. color: $task-state-pending-color;
  2862. }
  2863. .icon-task-state.pending {
  2864. fill: $task-state-pending-color;
  2865. }
  2866. .state-badge {
  2867. display: flex;
  2868. align-items: center;
  2869. .icon-task-state {
  2870. margin-right: 2px;
  2871. margin-top: 0;
  2872. display: inline;
  2873. vertical-align: middle;
  2874. }
  2875. }
  2876. .search {
  2877. padding: 11px 5px 4px 10px;
  2878. @include rtl(padding, 11px 10px 4px 0px);
  2879. border-bottom: 1px solid rgba(240,250,255,.05);
  2880. flex-shrink: 0;
  2881. display: flex;
  2882. align-items: flex-start;
  2883. background-color: inherit;
  2884. }
  2885. .search-holder {
  2886. flex: 1;
  2887. border-radius: 15px;
  2888. position: relative;
  2889. transition: margin-right 120ms;
  2890. will-change: margin-right;
  2891. }
  2892. .empty-search {
  2893. position: absolute;
  2894. @include bidi-style(right, 0, left, auto);
  2895. top: 0;
  2896. height: 30px;
  2897. width: 40px;
  2898. z-index: 1;
  2899. visibility: hidden;
  2900. display: flex;
  2901. align-items: center;
  2902. justify-content: center;
  2903. @extend %clickable;
  2904. }
  2905. .search .empty-search .icon-diagonal-cross {
  2906. fill: white;
  2907. opacity: 0.5;
  2908. }
  2909. .filled.search .empty-search {
  2910. visibility: visible;
  2911. }
  2912. .search input[type=search] {
  2913. width: 100%;
  2914. padding: 5px 33px 5px 33px;
  2915. height: 30px;
  2916. color: #ECECEC;
  2917. background: #31373b;
  2918. line-height: 20px;
  2919. outline: none;
  2920. border: none;
  2921. border-radius: 15px;
  2922. position: relative;
  2923. z-index: 1;
  2924. appearance: textfield;
  2925. }
  2926. input[type=search]::-webkit-search-cancel-button,
  2927. input[type=search]::-webkit-search-decoration {
  2928. -webkit-appearance: none;
  2929. }
  2930. .search .search-loader {
  2931. position: absolute;
  2932. top: 8px;
  2933. left: 10px;
  2934. z-index: 2;
  2935. opacity: 0;
  2936. transition: 0s;
  2937. transition: .1s 0s;
  2938. .icon {
  2939. fill: white;
  2940. opacity: 0.5;
  2941. }
  2942. }
  2943. .search.loading .search-loader {
  2944. opacity: 1;
  2945. transition: .2s .5s;
  2946. }
  2947. .search .icon-magnifier {
  2948. position: absolute;
  2949. top: 8px;
  2950. left: 10px;
  2951. @include bidi-style(left, 10px, right, auto);
  2952. z-index: 2;
  2953. opacity: .5;
  2954. fill: white;
  2955. transition: 0s;
  2956. transition: .1s 0s;
  2957. }
  2958. .search.loading .icon-magnifier {
  2959. opacity: 0;
  2960. transition: .2s .5s;
  2961. }
  2962. .search.focused .search-holder {
  2963. transition: margin-right 240ms;
  2964. @include bidi-style(margin-right, -59px, margin-left, 0);
  2965. }
  2966. .search.focused .logo {
  2967. opacity: 0;
  2968. z-index: -1;
  2969. }
  2970. .search .logo {
  2971. position: relative;
  2972. @extend .u-clickable, .zIndex-3;
  2973. margin: -4px 10px 0 12px;
  2974. transition: 240ms;
  2975. }
  2976. .search .logo .icon-logo {
  2977. position: relative;
  2978. }
  2979. .search .logo .activity-counter {
  2980. min-width: 21px;
  2981. position: absolute;
  2982. right: -3px;
  2983. bottom: 2px;
  2984. padding: 0 4px;
  2985. font-size: 12px;
  2986. font-weight: 300;
  2987. line-height: 16px;
  2988. text-align: center;
  2989. color: white;
  2990. text-shadow: 0 1px 1px rgba(0,0,0,.21);
  2991. background: hsl(360,71%,60%);
  2992. border-radius: 10px;
  2993. border: 2px solid hsl(233,10%,16%);
  2994. }
  2995. .search .logo .activity-counter:empty {
  2996. display: none;
  2997. }
  2998. .global-search-menu {
  2999. @extend .zIndex-7;
  3000. background: #26272e;
  3001. position: absolute;
  3002. left: 0;
  3003. right: 0;
  3004. bottom: 0;
  3005. top: 53px;
  3006. display: none;
  3007. overflow: auto;
  3008. .divider {
  3009. height: 1px;
  3010. background: #2f3238;
  3011. margin: 14px 0 17px;
  3012. }
  3013. }
  3014. .search.open .global-search-menu {
  3015. display: block;
  3016. }
  3017. .global-search-detail-link {
  3018. padding: 9px 15px 8px 0;
  3019. margin-bottom: 7px;
  3020. height: auto !important;
  3021. .no-match & {
  3022. display: none;
  3023. }
  3024. .nav-tab-icon {
  3025. width: 18px;
  3026. margin-left: 10px;
  3027. margin-right: 10px;
  3028. .icon {
  3029. width: 18px;
  3030. height: 14px;
  3031. }
  3032. }
  3033. .nav-tab-name {
  3034. .icon {
  3035. fill: currentColor;
  3036. margin: -2px 0 0 3px;
  3037. vertical-align: middle;
  3038. }
  3039. }
  3040. }
  3041. .global-search-result {
  3042. margin: 0;
  3043. padding: 0;
  3044. list-style: none;
  3045. }
  3046. .global-search-detail-no-result {
  3047. margin: 0 10px;
  3048. .icon {
  3049. width: 30px;
  3050. height: 29px;
  3051. }
  3052. }
  3053. .user-menu {
  3054. padding: 0;
  3055. margin: 0;
  3056. list-style: none;
  3057. position: relative;
  3058. flex-shrink: 0;
  3059. display: flex;
  3060. }
  3061. .user-menu > li {
  3062. flex: 1;
  3063. background: #26272e;
  3064. }
  3065. .user-menu .list-button {
  3066. height: 60px;
  3067. position: relative;
  3068. text-decoration: none;
  3069. @extend .u-clickable;
  3070. display: flex;
  3071. align-items: center;
  3072. justify-content: center;
  3073. }
  3074. .user-menu .list-button *:not(.dropdown-nose):not(.icon-crown) {
  3075. position: relative;
  3076. }
  3077. .user-menu > li:hover .list-button:before,
  3078. .user-menu > li.is-active .list-button:before,
  3079. .user-menu > li.is-hovered .list-button:before {
  3080. content: '';
  3081. position: absolute;
  3082. top: 4px;
  3083. right: 4px;
  3084. bottom: 4px;
  3085. left: 4px;
  3086. background: white;
  3087. }
  3088. .user-menu > li.is-active .list-button:before {
  3089. background: $highlight-color;
  3090. }
  3091. .user-menu li.add:hover .list-button:before,
  3092. .user-menu li.add.is-active .list-button:before,
  3093. .user-menu li.add.is-hovered .list-button:before {
  3094. background: #38ae6a;
  3095. }
  3096. .user-menu-icon {
  3097. width: 20px;
  3098. height: 20px;
  3099. fill: hsl(0,0%,30%);
  3100. }
  3101. .user-menu-icon.icon-plus {
  3102. fill: hsl(145,51%,45%);
  3103. }
  3104. .user-menu > li:hover .user-menu-icon {
  3105. fill: hsl(232,10%,16%);
  3106. }
  3107. .user-menu > li.is-active .user-menu-icon {
  3108. fill: white;
  3109. }
  3110. .user-menu > li.add:hover .user-menu-icon.icon-plus,
  3111. .user-menu > li.add.is-hovered .user-menu-icon.icon-plus,
  3112. .user-menu > li.add.is-active .user-menu-icon.icon-plus {
  3113. fill: white;
  3114. }
  3115. .user-menu > li:not(:last-child) {
  3116. border-right: 1px solid #2c2d36;
  3117. }
  3118. .dropdown-nose {
  3119. position: absolute;
  3120. border: 7px solid transparent;
  3121. border-bottom: none;
  3122. border-top: 7px solid white;
  3123. left: 50%;
  3124. margin-left: -7px;
  3125. top: -6px;
  3126. display: none;
  3127. }
  3128. li.add .dropdown-nose {
  3129. border-top-color: #38af6e;
  3130. }
  3131. .open.dropdown .dropdown-nose,
  3132. .open.dropup .dropdown-nose {
  3133. display: block;
  3134. }
  3135. .user-menu .dropdown-menu {
  3136. padding: 0;
  3137. border-radius: 0;
  3138. margin-bottom: 5px;
  3139. min-width: 0;
  3140. left: 10px;
  3141. right: 15px;
  3142. width: auto;
  3143. }
  3144. .user-menu li.add .dropdown-menu {
  3145. background-color: #38af6e;
  3146. }
  3147. .user-menu li.add .dropdown-menu li > a {
  3148. color: white;
  3149. }
  3150. .user-menu li.add .dropdown-menu .divider {
  3151. background: #4cb77c;
  3152. }
  3153. .user-menu .dropdown-menu .divider {
  3154. margin: 0;
  3155. }
  3156. .user-menu .dropdown-menu > li > a {
  3157. display: flex;
  3158. }
  3159. .avatar {
  3160. width: 40px;
  3161. height: 40px;
  3162. background-size: cover;
  3163. background-position: center;
  3164. background-color: rgba(0,0,0,.05);
  3165. border-radius: 100%;
  3166. display: inline-block;
  3167. vertical-align: bottom;
  3168. position: relative;
  3169. flex-shrink: 0;
  3170. &.size-30 {
  3171. width: 30px;
  3172. height: 30px;
  3173. }
  3174. .icon-crown {
  3175. position: absolute;
  3176. width: 28px;
  3177. left: 50%;
  3178. margin-left: -14px;
  3179. top: -15px;
  3180. fill: hsl(47,100%,59%);
  3181. }
  3182. &-status {
  3183. position: absolute;
  3184. right: -4px;
  3185. bottom: -4px;
  3186. border-radius: 999px;
  3187. background: hsl(234,10%,19%);
  3188. fill: white;
  3189. width: 21px;
  3190. height: 21px;
  3191. display: flex;
  3192. align-items: center;
  3193. justify-content: center;
  3194. }
  3195. &.size-50 {
  3196. width: 50px;
  3197. height: 50px;
  3198. .icon-crown {
  3199. width: 36px;
  3200. margin-left: -18px;
  3201. top: -15px;
  3202. }
  3203. }
  3204. &.size-80 {
  3205. width: 82px;
  3206. height: 82px;
  3207. .icon-crown {
  3208. width: 64px;
  3209. margin-left: -32px;
  3210. top: -16px;
  3211. }
  3212. }
  3213. &--idle {
  3214. filter: grayscale(100%);
  3215. opacity: 0.5;
  3216. }
  3217. &--inactive {
  3218. filter: grayscale(100%);
  3219. opacity: 0.2;
  3220. }
  3221. &--vacation {
  3222. filter: grayscale(70%);
  3223. opacity: 1;
  3224. }
  3225. &--unique {
  3226. background-image: image_url("/assets/images/avatar-bg.png");
  3227. background-size: 300px 226px;
  3228. color: white;
  3229. line-height: 40px;
  3230. text-align: center;
  3231. font-size: 13px;
  3232. letter-spacing: 0.05em;
  3233. text-transform: uppercase;
  3234. text-shadow: 0 1px rgba(0,0,0,.2);
  3235. cursor: default;
  3236. &.size-30 {
  3237. font-size: 10px;
  3238. line-height: 32px;
  3239. background-size: 225px 170px;
  3240. }
  3241. &.size-50 {
  3242. font-size: 16px;
  3243. line-height: 52px;
  3244. background-size: 375px 283px;
  3245. }
  3246. &.size-80 {
  3247. font-size: 26px;
  3248. line-height: 84px;
  3249. background-size: 600px 452px;
  3250. }
  3251. }
  3252. &--organization {
  3253. display: flex;
  3254. align-items: center;
  3255. justify-content: center;
  3256. .icon-organization {
  3257. fill: currentColor;
  3258. }
  3259. &.size-80 {
  3260. .icon-organization {
  3261. width: 32px;
  3262. height: 32px;
  3263. }
  3264. }
  3265. }
  3266. &--group {
  3267. overflow: hidden;
  3268. .icon {
  3269. fill: white;
  3270. position: absolute;
  3271. left: 50%;
  3272. transform: translateX(-50%);
  3273. width: 44px;
  3274. height: 44px;
  3275. bottom: -8px;
  3276. }
  3277. &.size-30 .icon {
  3278. width: 33px;
  3279. height: 33px;
  3280. bottom: -6px;
  3281. }
  3282. &.size-50 .icon {
  3283. width: 55px;
  3284. height: 55px;
  3285. bottom: -10px;
  3286. }
  3287. &.size-80 .icon {
  3288. width: 88px;
  3289. height: 88px;
  3290. bottom: -15px;
  3291. }
  3292. &-color-0 {
  3293. background: hsl(192,100%,38%);
  3294. }
  3295. &-color-1 {
  3296. background: hsl(148,100%,38%);
  3297. }
  3298. &-color-2 {
  3299. background: hsl(57,100%,37%);
  3300. }
  3301. }
  3302. .icon-logo {
  3303. width: 100%;
  3304. height: 100%;
  3305. }
  3306. }
  3307. .sidebar {
  3308. position: relative;
  3309. width: 280px;
  3310. padding: 20px;
  3311. color: hsl(60,1%,34%);
  3312. background: white;
  3313. @include bidi-style(border-right, 1px solid #e6e6e6, border-left, none);
  3314. overflow: auto;
  3315. @include small-desktop {
  3316. &.optional {
  3317. display: none;
  3318. }
  3319. }
  3320. h2 {
  3321. margin-top: 0;
  3322. }
  3323. h3 {
  3324. margin: 0;
  3325. color: rgba(0,8,14,.73);
  3326. font-weight: normal;
  3327. font-size: 16px;
  3328. text-transform: initial;
  3329. letter-spacing: 0;
  3330. }
  3331. }
  3332. .sidebar-block {
  3333. margin: 20px 0;
  3334. &:first-child {
  3335. margin-top: 0;
  3336. }
  3337. }
  3338. .sidebar-block [contenteditable=true] {
  3339. white-space: normal; // do no u-textTruncate, we want to edit it inline
  3340. }
  3341. .main + .sidebar {
  3342. border-right: none;
  3343. border-left: 1px solid #e6e6e6;
  3344. }
  3345. .NavBarAdmin.sidebar,
  3346. .NavBarProfile.sidebar, {
  3347. width: $sidebarWidth;
  3348. h2 {
  3349. margin: 21px 0 12px;
  3350. }
  3351. h2:first-child {
  3352. margin-top: 0;
  3353. }
  3354. }
  3355. .nav-stacked > li + li {
  3356. margin-top: 0;
  3357. }
  3358. .nav-pills > li > a,
  3359. .nav-pills > li > a:focus,
  3360. .nav-pills > li > a:active {
  3361. color: #0f94d6;
  3362. border-radius: 0;
  3363. background: transparent; /* a:focus, a:active with bg: transparent fixes gray focus bg in IE 10 */
  3364. display: flex;
  3365. @extend .u-textTruncate;
  3366. }
  3367. .nav-pills.nav-stacked > li > a,
  3368. .nav-pills.nav-stacked > li > a:focus,
  3369. .nav-pills.nav-stacked > li > a:active {
  3370. padding: 0;
  3371. height: 40px;
  3372. line-height: 39px;
  3373. border-top: 1px solid #f2f2f3;
  3374. }
  3375. .nav-pills > li:hover > a {
  3376. background: #f2f2f3;
  3377. }
  3378. .nav-pills.nav-stacked > li:hover > a,
  3379. .nav-pills.nav-stacked > li:hover + li:not(.active) > a {
  3380. border-color: transparent;
  3381. }
  3382. .nav-pills > li.active > a,
  3383. .nav-pills > li.active > a:hover,
  3384. .nav-pills > li.active > a:focus {
  3385. color: white;
  3386. background: #2c2d36;
  3387. border-color: initial;
  3388. }
  3389. .nav-pills.nav-stacked > li:hover > a,
  3390. .nav-pills.nav-stacked > li.active > a,
  3391. .nav-pills.nav-stacked > li.active > a:hover,
  3392. .nav-pills.nav-stacked > li.active > a:focus {
  3393. padding-left: 10px;
  3394. padding-right: 10px;
  3395. margin-left: -10px;
  3396. margin-right: -10px;
  3397. }
  3398. .sidebar:not(.NavBarAdmin) .nav-pills > li:first-child > a {
  3399. border-top: none;
  3400. }
  3401. .nav-pills > li > a > .icon {
  3402. fill: currentColor;
  3403. flex-shrink: 0;
  3404. align-self: center;
  3405. margin-top: -2px;
  3406. &:first-child {
  3407. @include bidi-style(margin-right, 5px, margin-right, 0);
  3408. }
  3409. }
  3410. .nav-pills > li > a > .badge {
  3411. margin-left: auto;
  3412. margin-right: 5px;
  3413. @include bidi-style(padding-left, 10px, padding-right, 0);
  3414. @include rtl(margin-left, 5px);
  3415. @include rtl(margin-right, auto);
  3416. }
  3417. a.list-group-item.active > .badge,
  3418. .nav-pills > .active > a > .badge {
  3419. color: #96969b;
  3420. background: none;
  3421. }
  3422. .main {
  3423. padding: 10px 20px;
  3424. overflow: auto;
  3425. position: relative;
  3426. &--large-padding {
  3427. padding: 30px 40px;
  3428. }
  3429. }
  3430. .main--tabs,
  3431. .main.no-padding {
  3432. padding: 0;
  3433. }
  3434. .tooltip {
  3435. font-family: inherit;
  3436. }
  3437. .tooltip-inner {
  3438. max-width: 400px;
  3439. }
  3440. .popover {
  3441. @extend .zIndex-7;
  3442. position: absolute;
  3443. font-family: inherit;
  3444. width: 372px;
  3445. max-width: 9999px;
  3446. border-radius: 0;
  3447. border: none;
  3448. color: hsl(206,7%,28%);
  3449. box-shadow: 0 1px 14px rgba(0,8,14,.25);
  3450. @include rtl(text-align, right);
  3451. }
  3452. .popover-body {
  3453. overflow: auto;
  3454. }
  3455. .popover-title {
  3456. border: none;
  3457. background: none;
  3458. padding: 21px 17px 4px;
  3459. }
  3460. .popover-content {
  3461. padding: 0 17px;
  3462. margin-bottom: 21px;
  3463. }
  3464. .popover.right {
  3465. margin-left: 4px;
  3466. }
  3467. .popover.right > .arrow {
  3468. border-right: none;
  3469. left: -9px;
  3470. }
  3471. .popover.top {
  3472. margin-bottom: 9px;
  3473. }
  3474. .popover.top > .arrow {
  3475. border-top: none;
  3476. bottom: -9px;
  3477. }
  3478. .popover.left {
  3479. margin-right: 9px;
  3480. margin-left: 0;
  3481. }
  3482. .popover.left > .arrow {
  3483. border-left: none;
  3484. right: -9px;
  3485. }
  3486. .popover.bottom {
  3487. margin-top: 9px;
  3488. }
  3489. .popover.bottom > .arrow {
  3490. border-bottom: none;
  3491. top: -9px;
  3492. }
  3493. .popover > .arrow:after {
  3494. border-width: 8px;
  3495. }
  3496. .popover .priority.icon:after {
  3497. background: white;
  3498. }
  3499. .popover .person .organization {
  3500. color: #a1a4a7;
  3501. }
  3502. .popover .user-organization {
  3503. @extend .u-textTruncate;
  3504. margin-bottom: 8px;
  3505. margin-top: -4px;
  3506. }
  3507. .popover-block {
  3508. @extend .sidebar-block;
  3509. margin: 10px 0;
  3510. }
  3511. .popover hr {
  3512. margin: 8px 0;
  3513. }
  3514. .popover .person .organization:before { content: '('; }
  3515. .popover .person .organization:after { content: ')'; }
  3516. .popover label {
  3517. font-size: 13px;
  3518. color: #a9bcc4;
  3519. font-weight: 300;
  3520. text-transform: uppercase;
  3521. letter-spacing: 0.05em;
  3522. }
  3523. .popover .two-columns,
  3524. .popover .three-columns {
  3525. margin-top: -8px;
  3526. }
  3527. .popover .column label {
  3528. margin: 8px 0 1px;
  3529. }
  3530. .popover .column {
  3531. margin-top: 8px;
  3532. }
  3533. .popover--notifications {
  3534. padding: 0;
  3535. left: $navigationWidth;
  3536. @include rtl(right, $navigationWidth);
  3537. margin: 8px 2px;
  3538. max-height: calc(100% - 16px);
  3539. width: auto;
  3540. max-width: 400px;
  3541. min-width: 350px;
  3542. flex-direction: column;
  3543. &.is-visible {
  3544. display: flex;
  3545. }
  3546. &.is-empty .popover-notificationsHeader {
  3547. box-shadow: none;
  3548. }
  3549. .arrow {
  3550. top: 23px !important;
  3551. left: -11px;
  3552. @include rtl(left, 408px);
  3553. @include rtl(transform, rotate(180deg));
  3554. }
  3555. .popover-content {
  3556. padding-left: 0;
  3557. padding-right: 0;
  3558. margin-bottom: 0;
  3559. overflow-y: auto;
  3560. }
  3561. .popover-notificationsHeader {
  3562. box-shadow:
  3563. 0 1px hsla(240,4%,95%,.5),
  3564. 0 2px hsla(240,4%,95%,.2);
  3565. padding-bottom: 14px;
  3566. flex-shrink: 0;
  3567. .btn {
  3568. padding-top: 3px;
  3569. padding-bottom: 5px;
  3570. }
  3571. }
  3572. .activity-placeholder {
  3573. margin-bottom: 21px;
  3574. }
  3575. }
  3576. .popover-notificationsHeader {
  3577. padding-bottom: 8px;
  3578. margin: 21px 17px 0;
  3579. .popover-title {
  3580. @extend h1;
  3581. padding: 0;
  3582. line-height: 1;
  3583. }
  3584. .btn {
  3585. margin-top: 3px;
  3586. }
  3587. }
  3588. .popover-notificationsCounter {
  3589. color: #e25253;
  3590. @include bidi-style(padding-left, 3px, padding-right, 0);
  3591. }
  3592. .user-popover,
  3593. .ticket-popover,
  3594. .organization-popover {
  3595. @extend .u-clickable;
  3596. }
  3597. .stat-icon {
  3598. position: relative;
  3599. }
  3600. .mood-icon {
  3601. width: 60px;
  3602. height: 59px;
  3603. }
  3604. .stopwatch-icon {
  3605. position: absolute;
  3606. left: 0;
  3607. top: 0;
  3608. width: 100%;
  3609. height: 100%;
  3610. }
  3611. .stat-stopwatch {
  3612. width: 77px;
  3613. height: 83px;
  3614. position: relative;
  3615. }
  3616. .stat-channel-icon {
  3617. width: 16px;
  3618. height: 16px;
  3619. fill: hsl(198,18%,72%);
  3620. }
  3621. .total-tickets {
  3622. height: 83px;
  3623. width: 48px;
  3624. @include bidi-style(margin-right, 4px, margin-left, 0);
  3625. margin-bottom: -9px;
  3626. }
  3627. .one-ticket {
  3628. width: 48px;
  3629. height: 10px;
  3630. margin-top: -7px;
  3631. margin-bottom: 2px;
  3632. }
  3633. .stat-tickets {
  3634. height: 100px;
  3635. }
  3636. .in-process-icon {
  3637. width: 64px;
  3638. height: 64px;
  3639. }
  3640. .reopening-icon {
  3641. width: 68px;
  3642. height: 47px;
  3643. }
  3644. .supergood-color { fill: $supergood-color;}
  3645. .good-color { fill: $good-color; }
  3646. .ok-color { fill: $ok-color; }
  3647. .bad-color { fill: $bad-color; }
  3648. .superbad-color { fill: $superbad-color; }
  3649. .stat-widgets {
  3650. margin: -7px -7px 20px;
  3651. }
  3652. .stat-widget {
  3653. height: 200px;
  3654. padding: 13px;
  3655. text-align: center;
  3656. line-height: 20px;
  3657. }
  3658. .dashboard .stat-widget {
  3659. margin: 7px;
  3660. background: white;
  3661. border: 1px solid #e5f0f5;
  3662. border-radius: 1px;
  3663. box-shadow: 0 1px rgba(0,8,14,.02);
  3664. }
  3665. .stat-title {
  3666. font-size: 13px;
  3667. margin: 2px 0 8px;
  3668. color: #444a4f;
  3669. text-transform: uppercase;
  3670. font-weight: normal;
  3671. }
  3672. .stat-widget .stat-label {
  3673. color: #444a4f;
  3674. @extend .u-textTruncate;
  3675. }
  3676. .stat-widget .stat-detail {
  3677. color: #b4b7b9;
  3678. @extend .u-textTruncate;
  3679. }
  3680. .channel-distribution.stat-widget {
  3681. color: #a1a4a7;
  3682. }
  3683. .stat-graphic {
  3684. flex: 1;
  3685. display: flex;
  3686. justify-content: center;
  3687. align-items: center;
  3688. user-select: none;
  3689. }
  3690. .time.stat-widget .stat-amount {
  3691. margin-top: 12px;
  3692. text-align: center;
  3693. font-size: 30px;
  3694. color: white;
  3695. text-shadow: 0 2px rgba(0,8,14,.2);
  3696. position: relative;
  3697. cursor: default;
  3698. }
  3699. .time.stat-widget .stat-dial {
  3700. position: absolute;
  3701. top: 21px;
  3702. left: 14px;
  3703. }
  3704. .stats-row {
  3705. padding: 8px 0 7px;
  3706. margin-bottom: -7px;
  3707. border-radius: 3px;
  3708. display: flex;
  3709. flex-direction: column;
  3710. align-items: center;
  3711. }
  3712. .stats-row:hover {
  3713. background: rgba(0,8,14,.03);
  3714. }
  3715. .stats-row .stat-bars {
  3716. height: 73px;
  3717. margin: 16px 0 15px;
  3718. padding: 2px 12px;
  3719. width: 100%;
  3720. background: linear-gradient(to top, #f2f2f3, #f2f2f3 1px, transparent 1px);
  3721. background-position: center bottom;
  3722. background-size: 100% 12px;
  3723. display: flex;
  3724. align-items: flex-end;
  3725. }
  3726. .stat-bars .stat-bar {
  3727. border-radius: 5px;
  3728. width: 10px;
  3729. color: #a9bcc4;
  3730. background: #a9bcc4;
  3731. }
  3732. .stat-widget .secondary {
  3733. opacity: .38;
  3734. color: #a9bcc4;
  3735. background: #a9bcc4;
  3736. }
  3737. .stat-legend {
  3738. margin-top: 30px;
  3739. @include bidi-style(margin-left, auto, margin-right, 0);
  3740. display: flex;
  3741. }
  3742. .stat-legendEntry {
  3743. font-size: 11px;
  3744. line-height: 1;
  3745. @include bidi-style(margin-left, 20px, margin-right, 0);
  3746. background: none !important;
  3747. }
  3748. .stat-circle {
  3749. margin-bottom: -1px;
  3750. @include bidi-style(margin-right, 3px, margin-left, 0);
  3751. width: 10px;
  3752. height: 10px;
  3753. border-radius: 100%;
  3754. display: inline-block;
  3755. }
  3756. .frequency.stat-widget {
  3757. .stat-bars {
  3758. margin-top: 0;
  3759. }
  3760. .stats-row {
  3761. margin-bottom: 0;
  3762. }
  3763. .stat-label {
  3764. color: #a1a4a7;
  3765. }
  3766. .primary {
  3767. color: hsl(145,51%,45%);
  3768. background: hsl(145,51%,45%);
  3769. }
  3770. }
  3771. .activity.sidebar {
  3772. width: 370px;
  3773. padding: 0;
  3774. border-left: 1px solid #e8e8e8;
  3775. }
  3776. .activity h2 {
  3777. margin-left: 19px;
  3778. margin-bottom: 15px;
  3779. margin-right: 26px;
  3780. @include rtl(margin-right, 19px);
  3781. @include rtl(margin-left, 26px);
  3782. }
  3783. .activity-entries {
  3784. margin: 0 -17px;
  3785. }
  3786. .activity-placeholder {
  3787. @extend .u-textTruncate;
  3788. padding: 0 17px;
  3789. }
  3790. .activity-entry {
  3791. display: flex;
  3792. padding: 0 17px;
  3793. &.is-inactive {
  3794. opacity: 0.5;
  3795. }
  3796. &.is-hover {
  3797. background-color: #f8f9fa;
  3798. }
  3799. &.activity-entry--removeable {
  3800. @include bidi-style(padding-right, 0, margin-left, 17px);
  3801. }
  3802. &:not(:hover) .activity-remove {
  3803. opacity: 0;
  3804. }
  3805. &:not(:last-child) .activity-body:after {
  3806. content: "";
  3807. position: absolute;
  3808. bottom: 0;
  3809. right: 0;
  3810. left: 0;
  3811. border-bottom: 1px solid #f2f2f3;
  3812. }
  3813. &.activity-entry--removeable:not(:last-child) .activity-body:after {
  3814. right: 17px;
  3815. @include bidi-style(right, 17px, left, 0);
  3816. }
  3817. }
  3818. .activity-avatar {
  3819. padding: 16px 2px 0;
  3820. @include bidi-style(margin-right, 10px, margin-left, 0);
  3821. flex-shrink: 0;
  3822. }
  3823. .activity-body {
  3824. padding: 16px 0 16px 2px;
  3825. @include rtl(padding, 16px 2px 16px 0);
  3826. position: relative;
  3827. display: flex;
  3828. flex: 1;
  3829. min-width: 0; /* Firefox wrong content-calculation with word-wrap workaround */
  3830. }
  3831. .activity-message {
  3832. color: #444a4f;
  3833. flex: 1;
  3834. min-width: 0; /* Firefox wrong content-calculation with word-wrap workaround */
  3835. &:hover .activity-text {
  3836. text-decoration: underline;
  3837. }
  3838. }
  3839. .activity-time {
  3840. margin-top: 2px;
  3841. color: #a1a4a7;
  3842. display: block;
  3843. }
  3844. .activity-remove {
  3845. display: flex;
  3846. align-items: center;
  3847. justify-content: center;
  3848. @extend %clickable;
  3849. padding-left: 10px;
  3850. padding-right: 27px;
  3851. @include rtl(padding-left, 27px);
  3852. @include rtl(padding-right, 10px);
  3853. .activity-remove-icon-holder {
  3854. width: 19px;
  3855. height: 19px;
  3856. border-radius: 100%;
  3857. display: flex;
  3858. align-items: center;
  3859. justify-content: center;
  3860. background: hsl(0,0%,80%);
  3861. }
  3862. .icon {
  3863. fill: white;
  3864. width: 9px;
  3865. height: 9px;
  3866. }
  3867. &:hover {
  3868. .activity-remove-icon-holder {
  3869. background: #972e29;
  3870. }
  3871. .icon {
  3872. opacity: 1;
  3873. }
  3874. }
  3875. }
  3876. .form-inline {
  3877. display: flex;
  3878. }
  3879. .form-inline .input-group-addon,
  3880. .form-inline .form-control:not(textarea) {
  3881. background: white;
  3882. border: none;
  3883. line-height: 1;
  3884. }
  3885. .form-inline .form-group {
  3886. overflow: hidden;
  3887. position: relative;
  3888. height: 60px;
  3889. flex: 1 1 auto;
  3890. &.datetime {
  3891. min-width: 140px;
  3892. overflow: visible; // datepicker popup needs to be visible
  3893. }
  3894. }
  3895. .form-group.is-changed {
  3896. position: relative;
  3897. }
  3898. .form-group.is-changed:before {
  3899. content: "";
  3900. position: absolute;
  3901. top: 23px;
  3902. left: -12px;
  3903. bottom: 0;
  3904. width: 3px;
  3905. background: repeating-linear-gradient(45deg, hsl(193,18%,90%), hsl(193,18%,90%) 5px, transparent 5px, transparent 9px) repeat center;
  3906. background-size: 11px 11px;
  3907. }
  3908. .form-inline .form-group.is-changed:before {
  3909. width: 100%;
  3910. height: 3px;
  3911. top: 0;
  3912. left: 0;
  3913. bottom: auto;
  3914. }
  3915. .form-group.is-changed label {
  3916. color: hsl(198,19%,72%);
  3917. position: relative;
  3918. }
  3919. .form-group.is-changed label:before {
  3920. position: absolute;
  3921. content: '';
  3922. left: -10px;
  3923. width: 5px;
  3924. height: 5px;
  3925. top: 50%;
  3926. margin-top: -3px;
  3927. border-radius: 100%;
  3928. background: hsl(198,19%,72%);
  3929. }
  3930. .form-inline .form-group .btn {
  3931. margin: 10px;
  3932. }
  3933. .form-inline .form-group:not(:last-child),
  3934. .form-inline.form-inline--enclosed .form-group {
  3935. border-right: 1px solid #f0f0f0;
  3936. }
  3937. .form-inline .input-group-addon {
  3938. width: auto;
  3939. padding: 0;
  3940. margin: 10px 18px 0;
  3941. font-size: 13px;
  3942. letter-spacing: 0.05em;
  3943. color: #ccc;
  3944. display: inline-block;
  3945. position: relative;
  3946. }
  3947. .form-inline .form-control:not(textarea) {
  3948. width: 100%;
  3949. height: 100%;
  3950. left: 0;
  3951. top: 0;
  3952. position: absolute;
  3953. padding: 28px 5px 12px 20px;
  3954. float: none;
  3955. display: block;
  3956. border-radius: 0;
  3957. background: none;
  3958. }
  3959. .form-inline {
  3960. .controls--datetime,
  3961. .controls--date,
  3962. .controls--select {
  3963. position: static;
  3964. }
  3965. .controls--datetime {
  3966. position: absolute;
  3967. bottom: 12px;
  3968. left: 0;
  3969. padding: 0 5px 0 20px;
  3970. width: 100%;
  3971. .controls-label {
  3972. display: none;
  3973. }
  3974. .form-control {
  3975. width: 70px;
  3976. line-height: inherit;
  3977. position: static;
  3978. padding: 0;
  3979. height: auto;
  3980. &.time {
  3981. margin-left: 5px;
  3982. width: 38px;
  3983. }
  3984. }
  3985. }
  3986. }
  3987. .bulkAction-secondStep .form-group {
  3988. min-width: 140px;
  3989. }
  3990. .bulkAction-secondStep .form-inline .textarea.form-group {
  3991. padding: 5px 10px;
  3992. height: auto;
  3993. }
  3994. .bulkAction-secondStep .form-inline .textarea.form-group .input-group-addon {
  3995. margin-left: 8px;
  3996. margin-right: 8px;
  3997. margin-bottom: 5px;
  3998. }
  3999. .bulkAction-secondStep .form-inline textarea.form-control {
  4000. display: block;
  4001. width: 100%;
  4002. resize: vertical;
  4003. }
  4004. .bulkAction-secondStep .form-inline .expanding-wrapper {
  4005. margin: 0 6px;
  4006. }
  4007. .bulkAction-secondStep .form-inline textarea.form-control:not(:focus) {
  4008. border-color: #f0f0f0;
  4009. }
  4010. .ticketZoom {
  4011. background: #f8f9fa;
  4012. }
  4013. .ticketZoom-controls {
  4014. display: flex;
  4015. justify-content: flex-end;
  4016. align-items: center;
  4017. padding: 28px 0 0 0;
  4018. @include bidi-style(margin-right, -40px, margin-left, 0);
  4019. }
  4020. .icon-marker {
  4021. fill: hsl(0,0%,61%);
  4022. width: 17px;
  4023. height: 19px;
  4024. }
  4025. .ticketZoom .ticketZoom-header {
  4026. margin-top: 6px;
  4027. padding: 0;
  4028. }
  4029. .ticketZoom .ticket-article {
  4030. margin-top: 55px;
  4031. }
  4032. .ticketZoom > .overview-navigator {
  4033. margin-top: 32px;
  4034. @include bidi-style(padding-left, 20px, padding-right, 0);
  4035. }
  4036. .ticket-article,
  4037. .article-new {
  4038. max-width: 1080px;
  4039. margin: 0 auto;
  4040. padding: 0 21px;
  4041. }
  4042. .ticket-title {
  4043. max-width: 1080px;
  4044. padding: 0 81px;
  4045. }
  4046. .ticket-title-update {
  4047. @extend h1;
  4048. white-space: normal;
  4049. margin-top: 15px;
  4050. margin-bottom: 8px;
  4051. padding: 0 7px;
  4052. text-align: center;
  4053. .ticketZoom-header & {
  4054. &:hover,
  4055. &:focus {
  4056. background: hsl(210,17%,93%);
  4057. }
  4058. }
  4059. }
  4060. .task-subline {
  4061. text-align: center;
  4062. display: block;
  4063. }
  4064. .ticket-article-item {
  4065. padding-bottom: 33px;
  4066. position: relative;
  4067. z-index: 1; // fixed chrome 49 + flex issue, not shown article
  4068. .avatar {
  4069. position: absolute;
  4070. right: 0;
  4071. top: 5px;
  4072. }
  4073. &.agent .avatar {
  4074. right: auto;
  4075. left: 0;
  4076. }
  4077. }
  4078. /*
  4079. clip the article-meta to not stand out on the other side
  4080. of the textBubble if the text bubble is small
  4081. */
  4082. .article-meta-clip {
  4083. overflow: hidden;
  4084. position: relative;
  4085. height: 100%;
  4086. margin: 0 55px;
  4087. }
  4088. .article-content {
  4089. color: hsl(60,1%,34%);
  4090. position: relative;
  4091. z-index: 1;
  4092. padding: 0 55px;
  4093. }
  4094. .article-content-meta {
  4095. position: absolute;
  4096. width: 100%;
  4097. }
  4098. .article-meta {
  4099. background: #2c2d36;
  4100. color: white;
  4101. padding: 21px 25px 11px;
  4102. margin: 0 12px;
  4103. }
  4104. .article-meta.bottom {
  4105. padding-top: 17px;
  4106. padding-bottom: 8px;
  4107. }
  4108. .article-meta-row {
  4109. margin-bottom: 5px;
  4110. }
  4111. .article-meta-key {
  4112. width: 20%;
  4113. text-transform: uppercase;
  4114. }
  4115. .article-meta-value {
  4116. @include bidi-style(margin-left, 8px, margin-right, 0);
  4117. }
  4118. .article-meta-icon {
  4119. fill: white;
  4120. vertical-align: top;
  4121. margin: 2px 3px 0 0;
  4122. @include rtl(margin, 2px 0 0 3px);
  4123. }
  4124. .article-meta .text-muted {
  4125. color: #96969b;
  4126. }
  4127. .internal-border {
  4128. padding: 5px;
  4129. border-radius: 8px;
  4130. margin: -5px;
  4131. }
  4132. .is-internal .internal-border {
  4133. background: repeating-linear-gradient(45deg, hsl(18,79%,89%), hsl(18,79%,89%) 5px, hsl(210,17%,98%) 5px, hsl(210,17%,98%) 6px);
  4134. background-size: 8px 8px;
  4135. }
  4136. .is-internal .bubble-arrow {
  4137. display: none;
  4138. }
  4139. .textBubble {
  4140. padding: 10px 20px;
  4141. background: white;
  4142. border-radius: 2px;
  4143. border: 1px solid hsl(240,4%,95%);
  4144. box-shadow: 0 0 1px rgba(0,0,0,.06) inset;
  4145. position: relative;
  4146. /* email css reset */
  4147. p {
  4148. margin: 0;
  4149. }
  4150. }
  4151. .ticket-article-item.state--folde-out .textBubble {
  4152. border-color: hsl(0,0%,90%);
  4153. }
  4154. .textBubble-content {
  4155. overflow: hidden;
  4156. position: relative;
  4157. }
  4158. .textBubble-footer {
  4159. display: flex;
  4160. justify-content: space-between;
  4161. align-items: center;
  4162. margin: 0 -12px -28px;
  4163. padding: 6px 12px;
  4164. border-radius: 0 0 4px 4px;
  4165. }
  4166. .textBubble-control {
  4167. display: flex;
  4168. }
  4169. .textBubble-letterCount:not(.label-danger):not(.label-warning) {
  4170. color: hsl(0,0%,80%);
  4171. }
  4172. .textBubble-overflowContainer {
  4173. position: absolute;
  4174. bottom: 0;
  4175. left: 0;
  4176. right: 0;
  4177. background: white;
  4178. &.is-open {
  4179. &:before {
  4180. opacity: 0;
  4181. }
  4182. }
  4183. .btn {
  4184. padding-top: 17px;
  4185. padding-bottom: 17px;
  4186. font-size: 10px;
  4187. }
  4188. &:before {
  4189. content: "";
  4190. position: absolute;
  4191. left: 0;
  4192. right: 0;
  4193. top: -30px;
  4194. height: 30px;
  4195. background: linear-gradient(rgba(255,255,255,0), white);
  4196. transition: opacity 300ms;
  4197. }
  4198. }
  4199. .customer .textBubble-overflowContainer {
  4200. background: #e5f0f5;
  4201. &:before {
  4202. background: linear-gradient(hsla(199,44%,93%,0), hsl(199,44%,93%));
  4203. }
  4204. }
  4205. .customer.ticket-article-item .textBubble {
  4206. background: #e5f0f5;
  4207. border-color: hsl(199,38%,92%);
  4208. box-shadow: none;
  4209. }
  4210. .customer .richtext-content blockquote {
  4211. border-left: 5px solid #dfdfdf;
  4212. }
  4213. .customer.ticket-article-item.state--folde-out .textBubble {
  4214. border-color: hsl(199,44%,85%);
  4215. }
  4216. .bubble-arrow {
  4217. position: absolute;
  4218. width: 7px;
  4219. height: 9px;
  4220. left: -6px;
  4221. top: 15px;
  4222. overflow: hidden;
  4223. }
  4224. .bubble-arrow:after {
  4225. content: "";
  4226. position: absolute;
  4227. top: -1px;
  4228. left: 2px;
  4229. width: 11px;
  4230. height: 11px;
  4231. background: white;
  4232. border: 1px solid hsl(240,4%,95%);
  4233. box-shadow: 0 0 1px rgba(0,0,0,.06) inset;
  4234. transform: rotate(-45deg);
  4235. }
  4236. .customer.ticket-article-item .bubble-arrow {
  4237. left: auto;
  4238. right: -6px;
  4239. }
  4240. .customer.ticket-article-item .bubble-arrow:after {
  4241. background: #e5f0f5;
  4242. left: auto;
  4243. right: 2px;
  4244. border-color: hsl(199,38%,92%);
  4245. box-shadow: none;
  4246. }
  4247. .attachments.attachments--list:not(:empty) {
  4248. border-top: 1px solid rgba(0,0,0,.04);
  4249. white-space: normal;
  4250. margin: 10px -20px 0;
  4251. padding: 26px 20px 7px 72px;
  4252. position: relative;
  4253. }
  4254. .attachments.attachments--list .attachments-title {
  4255. font-size: 13px;
  4256. color: hsl(60,1%,34%);
  4257. font-weight: 500;
  4258. padding: 0 7px;
  4259. }
  4260. .attachments .icon-paperclip {
  4261. position: absolute;
  4262. left: 33px;
  4263. top: 27px;
  4264. fill: hsl(240,1%,84%);
  4265. }
  4266. .attachments-block {
  4267. margin-bottom: 12px;
  4268. &:last-child {
  4269. margin-bottom: 0;
  4270. }
  4271. &-headline {
  4272. font-size: 13px;
  4273. color: hsl(60,1%,34%);
  4274. font-weight: 500;
  4275. text-transform: uppercase;
  4276. margin: 0 7px;
  4277. }
  4278. }
  4279. .ticket-article-item .task-subline {
  4280. margin-top: 12px;
  4281. }
  4282. .article-action {
  4283. padding-top: 5px;
  4284. margin-top: 5px;
  4285. color: hsl(198,4%,56%);
  4286. font-size: 12px;
  4287. text-align: center;
  4288. @extend .u-clickable;
  4289. }
  4290. .article-action:hover {
  4291. color: black;
  4292. text-decoration: none;
  4293. }
  4294. .article-action-icon {
  4295. @include bidi-style(margin-right, 5px, margin-left, 0);
  4296. vertical-align: top;
  4297. width: 17px;
  4298. height: 17px;
  4299. fill: currentColor;
  4300. }
  4301. .article-action-name {
  4302. @media screen and (max-width: 1080px) {
  4303. display: none;
  4304. }
  4305. @media screen and (max-width: 1358px) {
  4306. .main:not(.is-closed) & {
  4307. display: none;
  4308. }
  4309. }
  4310. }
  4311. .article-add {
  4312. position: relative;
  4313. z-index: 1; // fixed chrome 49 + flex issue, not shown article
  4314. }
  4315. .article-new {
  4316. margin-top: auto;
  4317. margin-bottom: 36px;
  4318. }
  4319. .dropArea {
  4320. background: white;
  4321. border: 5px solid;
  4322. color: hsl(202,66%,55%);
  4323. font-size: 20px;
  4324. margin: 5px;
  4325. display: none;
  4326. @extend .fit;
  4327. }
  4328. .is-dropTarget .dropArea {
  4329. display: block;
  4330. }
  4331. .dropArea-inner {
  4332. @extend .fit;
  4333. display: flex;
  4334. align-items: center;
  4335. justify-content: center;
  4336. }
  4337. .shortcut .dropdown-menu > .is-active > a {
  4338. background: none;
  4339. }
  4340. .shortcut .dropdown-menu {
  4341. overflow: auto;
  4342. position: absolute;
  4343. max-width: 100%;
  4344. }
  4345. .editControls {
  4346. position: absolute;
  4347. left: 0;
  4348. top: 5px;
  4349. }
  4350. .article-add[data-type=email] .editControls {
  4351. top: 159px;
  4352. }
  4353. .editControls-item {
  4354. position: absolute;
  4355. top: 43px;
  4356. @extend .u-clickable, .zIndex-4;
  4357. &.is-hidden {
  4358. display: none;
  4359. }
  4360. }
  4361. .editControls-item:nth-child(3) {
  4362. top: 79px;
  4363. }
  4364. .editControls-item:nth-child(4) {
  4365. top: 115px;
  4366. }
  4367. .editControls-item:not(:last-child) {
  4368. border-bottom: 1px solid #e6e6e6;
  4369. }
  4370. .editControls-iconHolder {
  4371. width: 38px;
  4372. height: 35px;
  4373. display: flex;
  4374. align-items: center;
  4375. justify-content: center;
  4376. }
  4377. .editControls-icon .icon {
  4378. fill: hsl(210,2%,78%);
  4379. }
  4380. .pop-selector {
  4381. position: absolute;
  4382. top: 0;
  4383. left: 0;
  4384. display: flex;
  4385. align-items: center;
  4386. justify-content: center;
  4387. border-radius: 4px;
  4388. box-shadow: 0 1px 7px rgba(0,8,14,.13);
  4389. &.is-hidden {
  4390. display: none;
  4391. }
  4392. }
  4393. .pop-selectable {
  4394. width: 35px;
  4395. height: 35px;
  4396. display: flex;
  4397. align-items: center;
  4398. justify-content: center;
  4399. @extend .u-clickable;
  4400. background: hsl(240,9%,19%);
  4401. }
  4402. .pop-selectable:hover {
  4403. background: white;
  4404. }
  4405. .pop-selectable:first-child {
  4406. @include bidi-style(border-radius, 4px 0 0 4px, border-radius, 0 4px 4px 0);
  4407. }
  4408. .pop-selectable:last-child {
  4409. @include bidi-style(border-radius, 0 4px 4px 0, border-radius, 4px 0 0 4px);
  4410. }
  4411. .pop-selectable:only-child {
  4412. border-radius: 4px;
  4413. }
  4414. .pop-selectable-icon {
  4415. fill: hsl(231,3%,40%);
  4416. }
  4417. .pop-selectable:hover .pop-selectable-icon {
  4418. fill: hsl(240,9%,19%);
  4419. }
  4420. .article-add .icon-internal {
  4421. fill: hsl(18,87%,65%);
  4422. }
  4423. .article-add.is-public .icon-internal,
  4424. .article-add.is-internal .icon-public {
  4425. display: none;
  4426. }
  4427. .article-new .recipient-picker {
  4428. height: 36px;
  4429. position: relative;
  4430. transition: 300ms;
  4431. }
  4432. .article-new .recipient-picker.is-open {
  4433. opacity: 1;
  4434. }
  4435. .recipient-picker .icon {
  4436. margin-top: -2px;
  4437. }
  4438. .recipient-count {
  4439. @include bidi-style(margin-left, 3px, margin-right, 0);
  4440. margin-top: 1px;
  4441. line-height: 1;
  4442. }
  4443. .recipient-list {
  4444. position: absolute;
  4445. background: hsl(234,10%,19%);
  4446. left: 48px;
  4447. color: white;
  4448. }
  4449. .recipient-picker.is-open .recipient-list {
  4450. display: block;
  4451. }
  4452. .list-arrow {
  4453. position: absolute;
  4454. top: 210px;
  4455. left: -6px;
  4456. margin-top: -6px;
  4457. border-right: 6px solid #2c2d36;
  4458. border-top: 6px solid transparent;
  4459. border-bottom: 6px solid transparent;
  4460. }
  4461. .list-head {
  4462. height: 38px;
  4463. line-height: 38px;
  4464. padding: 1px 19px 0;
  4465. text-transform: uppercase;
  4466. }
  4467. .list-head div {
  4468. position: relative;
  4469. left: -20px;
  4470. }
  4471. .list-entry {
  4472. width: 340px;
  4473. height: 60px;
  4474. padding: 0 16px;
  4475. border-top: 1px solid hsl(240,6%,27%);
  4476. }
  4477. .list-entry-name {
  4478. @include bidi-style(margin-left, 18px, margin-right, 0);
  4479. }
  4480. .list-entry-type {
  4481. font-size: 12px;
  4482. }
  4483. .list-entry-type div {
  4484. padding: 3px 7px;
  4485. border: 1px solid hsl(234,10%,10%);
  4486. color: hsl(0,0%,40%);
  4487. background: hsl(234,10%,14%);
  4488. }
  4489. .list-entry-type .active {
  4490. color: white;
  4491. background: inherit;
  4492. box-shadow: 0 1px rgba(255,255,255,.03) inset;
  4493. }
  4494. .list-entry-type div:not(:last-child) {
  4495. border-right: none;
  4496. }
  4497. .list-entry-type div:first-child {
  4498. border-radius: 3px 0 0 3px;
  4499. @include rtl(border-radius, 0 3px 3px 0);
  4500. }
  4501. .list-entry-type div:last-child {
  4502. border-left: none;
  4503. border-radius: 0 3px 3px 0;
  4504. @include rtl(border-radius, 3px 0 0 3px);
  4505. }
  4506. .recipient-list input {
  4507. padding-top: 2px;
  4508. background: hsl(232,10%,16%);
  4509. color: white;
  4510. border: none;
  4511. outline: none;
  4512. }
  4513. .recipient-list input[type=submit] {
  4514. height: 0;
  4515. width: 0;
  4516. padding: 0;
  4517. position: absolute;
  4518. visibility: hidden;
  4519. }
  4520. .recipient-list input::placeholder {
  4521. color: #666;
  4522. }
  4523. .article-new .textBubble {
  4524. border-color: #b3b3b3;
  4525. border-radius: 5px;
  4526. padding-left: 12px;
  4527. padding-right: 12px;
  4528. cursor: text;
  4529. }
  4530. .articleNewEdit-body {
  4531. width: 100%;
  4532. position: relative;
  4533. min-height: 20px;
  4534. vertical-align: bottom;
  4535. border: none;
  4536. outline: none;
  4537. resize: none;
  4538. height: auto;
  4539. }
  4540. .article-new .bubble-arrow:after {
  4541. border-color: #b3b3b3;
  4542. box-shadow: none;
  4543. }
  4544. .article-attachment {
  4545. position: absolute;
  4546. bottom: -4px;
  4547. left: 10px;
  4548. right: 10px;
  4549. height: 42px;
  4550. padding: 10px 0;
  4551. color: #b3b3b3;
  4552. overflow: hidden;
  4553. @extend .u-unclickable, .u-textTruncate;
  4554. }
  4555. .attachments:not(:empty) {
  4556. padding: 9px 5px;
  4557. border-top: 1px solid hsl(0,0%,93%);
  4558. margin: 6px -12px 30px;
  4559. }
  4560. .attachment.attachment--row {
  4561. font-size: 13px;
  4562. padding: 1px 10px 1px 7px;
  4563. @include rtl(padding, 1px 7px 1px 10px);
  4564. cursor: default;
  4565. position: relative;
  4566. display: flex;
  4567. }
  4568. .attachment.attachment--preview {
  4569. display: block;
  4570. font-size: 13px;
  4571. padding: 9px 4px 9px 43px;
  4572. position: relative;
  4573. min-height: 42px;
  4574. color: inherit;
  4575. align-items: center;
  4576. border-bottom: 1px solid hsl(0,0%,96%);
  4577. &:last-child {
  4578. border-bottom: none;
  4579. }
  4580. }
  4581. .attachment-icon {
  4582. position: absolute;
  4583. left: 0;
  4584. top: 9px;
  4585. width: 38px;
  4586. text-align: center;
  4587. svg {
  4588. vertical-align: bottom;
  4589. }
  4590. img {
  4591. width: 30px;
  4592. height: 30px;
  4593. object-fit: cover;
  4594. }
  4595. }
  4596. .attachment--preview .attachment-name {
  4597. min-width: 0;
  4598. display: block;
  4599. @extend .u-highlight;
  4600. word-break: break-all;
  4601. }
  4602. .attachment--preview .attachment-size {
  4603. white-space: nowrap;
  4604. font-size: 11px;
  4605. color: hsl(200,8%,77%);
  4606. }
  4607. .attachment--preview .attachment-delete {
  4608. color: hsl(198,19%,72%);
  4609. text-decoration: underline;
  4610. display: none;
  4611. white-space: nowrap;
  4612. @include bidi-style(margin-left, auto, margin-right, 0);
  4613. @extend %clickable;
  4614. }
  4615. .attachment:hover .attachment--preview .attachment-delete {
  4616. padding: 0 10px 0 30px;
  4617. float: right;
  4618. display: block;
  4619. position: absolute;
  4620. right: 0;
  4621. background: linear-gradient(to right, hsla(200,20%,97%,0), hsla(200,20%,97%,1) 20px);
  4622. }
  4623. .attachment--preview .attachment-delete .icon {
  4624. fill: hsl(198,18%,72%);
  4625. width: 9px;
  4626. height: 9px;
  4627. @include bidi-style(margin-right, 5px, margin-left, 0);
  4628. }
  4629. .attachment--row .attachment-name {
  4630. @include bidi-style(margin-right, 5px, margin-left, 0);
  4631. min-width: 0;
  4632. @extend .u-highlight;
  4633. }
  4634. .attachment--row .attachment-size {
  4635. white-space: nowrap;
  4636. float: right;
  4637. @include bidi-style(margin-right, 10px, margin-left, 0);
  4638. }
  4639. .attachment--row .attachment-delete {
  4640. color: hsl(198,19%,72%);
  4641. text-decoration: underline;
  4642. display: none;
  4643. white-space: nowrap;
  4644. @include bidi-style(margin-left, auto, margin-right, 0);
  4645. @extend %clickable;
  4646. }
  4647. .attachment:hover.attachment--row .attachment-delete {
  4648. padding: 0 10px 0 30px;
  4649. float: right;
  4650. display: block;
  4651. position: absolute;
  4652. right: 0;
  4653. background: linear-gradient(to right, hsla(200,20%,97%,0), hsla(200,20%,97%,1) 20px);
  4654. }
  4655. .attachment--row .attachment-delete .icon {
  4656. fill: hsl(198,18%,72%);
  4657. width: 9px;
  4658. height: 9px;
  4659. @include bidi-style(margin-right, 5px, margin-left, 0);
  4660. }
  4661. .attachmentPlaceholder-inputHolder {
  4662. position: relative;
  4663. display: inline-block;
  4664. overflow: hidden;
  4665. vertical-align: bottom;
  4666. pointer-events: auto;
  4667. @extend .u-highlight;
  4668. }
  4669. .attachmentUpload {
  4670. color: hsl(198,19%,72%);
  4671. }
  4672. .attachmentUpload-cancel {
  4673. @extend .u-clickable;
  4674. @include bidi-style(margin-left, auto, margin-right, 0);
  4675. text-decoration: underline;
  4676. }
  4677. .attachmentUpload .icon {
  4678. fill: hsl(198,18%,72%);
  4679. width: 9px;
  4680. height: 9px;
  4681. @include bidi-style(margin-right, 5px, margin-left, 0);
  4682. }
  4683. .attachmentUpload-progressBar {
  4684. position: absolute;
  4685. height: 4px;
  4686. background: hsl(202,66%,55%);
  4687. left: 0;
  4688. bottom: 0;
  4689. }
  4690. .tabsSidebar-tabsSpacer {
  4691. @include bidi-style(padding-right, 62px !important, padding-left, 0);
  4692. /*
  4693. force div to show scrollbars
  4694. because we offset the sidebar tabs when the os shows scrollbars
  4695. */
  4696. overflow-x: hidden;
  4697. overflow-y: scroll;
  4698. }
  4699. .tabsSidebar-sidebarSpacer {
  4700. @include bidi-style(margin-right, $sidebarWidth, margin-left, 0);
  4701. transition: margin-right 500ms;
  4702. @include rtl(transition, margin-left 500ms);
  4703. }
  4704. .tabsSidebar-sidebarSpacer.is-closed {
  4705. margin-right: 0;
  4706. @include rtl(margin-left, 0);
  4707. }
  4708. .tabsSidebar-holder {
  4709. overflow: hidden;
  4710. position: relative;
  4711. flex: 1;
  4712. display: flex;
  4713. flex-direction: column;
  4714. }
  4715. .tabsSidebar .sidebar {
  4716. width: $sidebarWidth;
  4717. border-left: 1px solid #e6e6e6;
  4718. padding: 0;
  4719. }
  4720. .tabsSidebar .sidebar > hr {
  4721. margin: 20px;
  4722. }
  4723. .tabsSidebar .sidebar-header {
  4724. display: flex;
  4725. align-content: stretch;
  4726. position: relative;
  4727. margin: 0 20px;
  4728. + hr {
  4729. margin-top: 0;
  4730. }
  4731. }
  4732. .sidebar-header-headline {
  4733. padding: 33px 8px 17px 25px;
  4734. @include rtl(padding, 33px 25px 17px 8px);
  4735. margin: 0 0 0 -20px;
  4736. @include rtl(margin, 0 -20px 0 0);
  4737. line-height: 1;
  4738. @extend .u-clickable, .u-textTruncate;
  4739. }
  4740. .sidebar-header-actions {
  4741. flex: 1;
  4742. @include bidi-style(margin-right, 5px, margin-left, 0);
  4743. display: flex;
  4744. align-items: center;
  4745. .dropdown {
  4746. flex: 1;
  4747. position: static;
  4748. }
  4749. .dropdown-toggle {
  4750. padding-top: 38px;
  4751. padding-bottom: 24px;
  4752. }
  4753. }
  4754. .tabsSidebar-close {
  4755. padding: 27px 35px 12px 0;
  4756. margin: 0 -20px 0 0;
  4757. @extend .u-clickable;
  4758. display: flex;
  4759. align-items: center;
  4760. justify-content: center;
  4761. .icon {
  4762. fill: black;
  4763. }
  4764. }
  4765. .tabsSidebar .sidebar-content {
  4766. padding: 0 20px 20px;
  4767. }
  4768. .sidebar.bottom-form-shadow {
  4769. box-shadow:
  4770. 0 -1px rgba(0,0,0,.005) inset,
  4771. 0 -2px rgba(0,0,0,.005) inset,
  4772. 0 -3px rgba(0,0,0,.005) inset,
  4773. 0 -4px rgba(0,0,0,.005) inset;
  4774. }
  4775. .tabsSidebar {
  4776. position: absolute;
  4777. @include bidi-style(right, 0, left, auto);
  4778. top: 0;
  4779. bottom: 0;
  4780. transition: 500ms;
  4781. &.tabsSidebar--attributeBarSpacer {
  4782. bottom: 60px;
  4783. }
  4784. }
  4785. .tabsSidebar.is-closed {
  4786. transform: translateX($sidebarWidth);
  4787. @include rtl(transform, translateX(-$sidebarWidth));
  4788. }
  4789. .tabsSidebar-tabs {
  4790. display: flex;
  4791. flex-direction: column;
  4792. justify-content: center;
  4793. position: absolute;
  4794. @include bidi-style(left, -55px, right, auto);
  4795. top: 0;
  4796. bottom: 0;
  4797. pointer-events: none;
  4798. }
  4799. .test {
  4800. position: absolute;
  4801. width: 100%;
  4802. }
  4803. .tabsSidebar-tab {
  4804. width: 56px;
  4805. height: 60px;
  4806. background: hsl(197,20%,93%);
  4807. position: relative;
  4808. border-top: 1px solid hsl(202,12%,87%);
  4809. @extend .u-clickable;
  4810. pointer-events: auto;
  4811. display: flex;
  4812. align-items: center;
  4813. justify-content: center;
  4814. }
  4815. .tabsSidebar-tab.is-changed:before {
  4816. position: absolute;
  4817. content: '';
  4818. left: -3px;
  4819. width: 6px;
  4820. height: 6px;
  4821. top: 50%;
  4822. margin-top: -3px;
  4823. border-radius: 100%;
  4824. background: hsl(198,19%,72%);
  4825. box-shadow: 0 0 0 2px hsl(210,17%,98%);
  4826. }
  4827. .tabsSidebar-tab:first-child {
  4828. @include bidi-style(border-top-left-radius, 8px, border-top-right-radius, 0);
  4829. border-top: none;
  4830. }
  4831. .tabsSidebar-tab:last-child {
  4832. @include bidi-style(border-bottom-left-radius, 8px, border-bottom-right-radius, 0);
  4833. }
  4834. .tabsSidebar-tab .icon {
  4835. width: 24px;
  4836. height: 24px;
  4837. fill: hsl(197,19%,78%);
  4838. }
  4839. .tabsSidebar-tab.active {
  4840. .tabsSidebar-tab-count {
  4841. background: hsl(206,7%,37%);
  4842. &:after {
  4843. border-right-color: hsl(206,7%,37%);
  4844. }
  4845. &.tabsSidebar-tab-count--info {
  4846. background: hsl(203,65%,55%);
  4847. opacity: 1;
  4848. &:after {
  4849. border-right-color: hsl(203,65%,55%);
  4850. }
  4851. }
  4852. &.tabsSidebar-tab-count--success {
  4853. background: hsl(145,51%,45%);
  4854. opacity: 1;
  4855. &:after {
  4856. border-right-color: hsl(145,51%,45%);
  4857. }
  4858. }
  4859. &.tabsSidebar-tab-count--warning {
  4860. background: hsl(45,98%,63%);
  4861. opacity: 1;
  4862. &:after {
  4863. border-right-color: hsl(45,98%,63%);
  4864. }
  4865. }
  4866. &.tabsSidebar-tab-count--danger {
  4867. background: hsl(11,85%,48%);
  4868. opacity: 1;
  4869. &:after {
  4870. border-right-color: hsl(11,85%,48%);
  4871. }
  4872. }
  4873. }
  4874. .icon {
  4875. fill: hsl(206,7%,37%);
  4876. }
  4877. }
  4878. .tabsSidebar-tab-count {
  4879. position: absolute;
  4880. left: 9px;
  4881. top: 5px;
  4882. background: hsl(197,19%,78%);
  4883. width: 16px;
  4884. height: 13px;
  4885. text-align: center;
  4886. border-radius: 2px;
  4887. font-size: 9px;
  4888. line-height: 14px;
  4889. color: hsl(197,20%,93%);
  4890. [data-tab="organization"] & {
  4891. left: 7px;
  4892. + .icon {
  4893. margin-left: 3px;
  4894. }
  4895. }
  4896. + .icon {
  4897. margin-top: 6px;
  4898. }
  4899. &:after {
  4900. content: "";
  4901. position: absolute;
  4902. top: 100%;
  4903. right: 20%;
  4904. border-bottom: 3px solid transparent;
  4905. border-right: 5px solid hsl(197,19%,78%);
  4906. }
  4907. &.tabsSidebar-tab-count--info {
  4908. background: hsl(203,65%,55%);
  4909. opacity: .5;
  4910. &:after {
  4911. border-right-color: hsl(203,65%,55%);
  4912. }
  4913. }
  4914. &.tabsSidebar-tab-count--success {
  4915. background: hsl(145,51%,45%);
  4916. opacity: .5;
  4917. &:after {
  4918. border-right-color: hsl(145,51%,45%);
  4919. }
  4920. }
  4921. &.tabsSidebar-tab-count--warning {
  4922. background: hsl(45,98%,63%);
  4923. opacity: .5;
  4924. &:after {
  4925. border-right-color: hsl(45,98%,63%);
  4926. }
  4927. }
  4928. &.tabsSidebar-tab-count--danger {
  4929. background: hsl(11,85%,48%);
  4930. opacity: .5;
  4931. &:after {
  4932. border-right-color: hsl(11,85%,48%);
  4933. }
  4934. }
  4935. }
  4936. .sidebar .text-muted {
  4937. color: hsl(198,22%,82%);
  4938. }
  4939. .alert {
  4940. padding: 10px 15px 8px;
  4941. border-radius: 3px;
  4942. color: white;
  4943. border: none;
  4944. .icon {
  4945. margin-right: 10px;
  4946. fill: currentColor;
  4947. }
  4948. &.alert--info {
  4949. background: hsl(203,65%,55%);
  4950. }
  4951. &.alert--success {
  4952. background: hsl(145,51%,45%);
  4953. }
  4954. &.alert--warning {
  4955. color: hsl(45,98%,17%);
  4956. background: hsl(45,98%,63%);
  4957. }
  4958. &.alert--danger {
  4959. background: hsl(11,85%,48%);
  4960. }
  4961. }
  4962. .tags,
  4963. .links {
  4964. margin: 20px 0;
  4965. }
  4966. .tags {
  4967. margin-top: 10px;
  4968. }
  4969. .userNotifications label + .btn {
  4970. margin-top: 1px;
  4971. }
  4972. .list {
  4973. padding: 0;
  4974. margin-bottom: 5px;
  4975. }
  4976. .list-title {
  4977. margin-top: 7px;
  4978. margin-bottom: 4px;
  4979. text-transform: uppercase;
  4980. color: hsl(198,19%,84%);
  4981. display: block;
  4982. font-size: 12px;
  4983. font-weight: normal;
  4984. letter-spacing: 0.05em;
  4985. }
  4986. .list-item {
  4987. display: flex;
  4988. align-items: center;
  4989. color: hsl(206,7%,28%);
  4990. border-bottom: 1px solid hsl(240,4%,95%);
  4991. }
  4992. .list-item-name {
  4993. flex: 1;
  4994. padding: 4px 1px;
  4995. }
  4996. .list-item-delete {
  4997. padding: 0 10px;
  4998. @include bidi-style(margin-right, -3px, margin-left, 0);
  4999. display: flex;
  5000. align-items: center;
  5001. justify-content: center;
  5002. align-self: stretch;
  5003. @extend .u-clickable;
  5004. .icon {
  5005. width: 9px;
  5006. height: 9px;
  5007. fill: hsl(0,0%,82%);
  5008. }
  5009. }
  5010. .list-item-delete:hover .icon {
  5011. fill: hsl(1,77%,47%);
  5012. }
  5013. .ticket-id {
  5014. color: white;
  5015. background: hsl(198,19%,72%);
  5016. font-size: 11px;
  5017. border-radius: 7px;
  5018. padding: 0 5px;
  5019. @include bidi-style(margin-right, 2px, margin-left, 0);
  5020. }
  5021. .attributeBar {
  5022. height: 60px;
  5023. background: white;
  5024. transition: margin 250ms;
  5025. flex-shrink: 0;
  5026. padding: 10px;
  5027. display: flex;
  5028. justify-content: flex-end;
  5029. &.is-closed {
  5030. margin-bottom: -60px;
  5031. }
  5032. &--border {
  5033. border-top: 1px solid hsl(0,0%,94%);
  5034. }
  5035. }
  5036. .newTicket {
  5037. padding: 14px 34px;
  5038. }
  5039. .newTicket .sidebar {
  5040. width: 290px;
  5041. }
  5042. .newTicket .form-control {
  5043. border-color: hsl(0,0%,90%);
  5044. &:focus,
  5045. &.focus {
  5046. border-color: hsl(200,71%,59%);
  5047. }
  5048. }
  5049. .newTicket .article-form-top {
  5050. margin-top: 15px;
  5051. }
  5052. .newTicket--chatTicket {
  5053. flex: 1;
  5054. display: flex;
  5055. padding: 0;
  5056. height: 100%;
  5057. & > .icon {
  5058. position: absolute;
  5059. top: 50%;
  5060. transform: translateY(-50%) translateX(-50%);
  5061. }
  5062. & > .box {
  5063. width: calc(50% - 47px);
  5064. margin: 34px;
  5065. }
  5066. .chatHistory {
  5067. display: flex;
  5068. flex-direction: column;
  5069. }
  5070. .boxFade {
  5071. width: 94px;
  5072. top: 34px;
  5073. height: 100%;
  5074. position: absolute;
  5075. @include bidi-style(margin-left, -34px, margin-right, 0);
  5076. z-index: 1;
  5077. }
  5078. }
  5079. .box {
  5080. background: white;
  5081. margin: 20px 0;
  5082. border: 1px solid #e6e6e6;
  5083. padding: 20px 24px;
  5084. }
  5085. .box.box--newTicket {
  5086. max-width: 1080px;
  5087. margin-left: auto;
  5088. margin-right: auto;
  5089. }
  5090. .box .page-header {
  5091. text-align: center;
  5092. margin-bottom: 12px;
  5093. }
  5094. .box--paper {
  5095. background-image: linear-gradient(transparent 30px, hsl(0,0%,93%) 31px);
  5096. background-size: 100% 31px;
  5097. line-height: 31px;
  5098. padding-top: 31px;
  5099. padding-bottom: 31px;
  5100. h1, h2, h3 {
  5101. margin: 0;
  5102. line-height: inherit;
  5103. }
  5104. h3:not(:first-child) {
  5105. margin-top: 31px;
  5106. }
  5107. }
  5108. .box h1 {
  5109. margin-top: 10px;
  5110. margin-bottom: 12px;
  5111. color: hsl(60,1%,34%);
  5112. flex: 1;
  5113. }
  5114. .box h2 {
  5115. margin-top: 12px;
  5116. }
  5117. .box .two-columns {
  5118. margin-left: -4px;
  5119. margin-right: -4px;
  5120. }
  5121. .box .two-columns .column {
  5122. margin-left: 4px;
  5123. margin-right: 4px;
  5124. width: calc(50% - 8px);
  5125. }
  5126. .box-controls {
  5127. margin-top: 20px;
  5128. display: flex;
  5129. align-items: center;
  5130. }
  5131. .box--yellow {
  5132. background: hsl(47,100%,93%);
  5133. border-color: hsl(47,100%,75%);
  5134. color: hsl(47,20%,67%);
  5135. h1, h2 {
  5136. color: hsl(47,3%,28%);
  5137. }
  5138. }
  5139. .box-progress {
  5140. display: flex;
  5141. align-items: center;
  5142. justify-content: center;
  5143. }
  5144. .box-progress-title {
  5145. color: hsl(47,3%,28%);
  5146. }
  5147. .box-progress-body {
  5148. flex: 1;
  5149. @include bidi-style(margin-left, 24px, margin-right, 0);
  5150. display: flex;
  5151. align-items: center;
  5152. justify-content: center;
  5153. progress {
  5154. width: 100%;
  5155. }
  5156. }
  5157. .horizontal > .box {
  5158. margin-top: 4px;
  5159. margin-bottom: 4px;
  5160. & + .box {
  5161. border-left-width: 0;
  5162. }
  5163. }
  5164. .formset-inset {
  5165. margin: 34px -24px 24px;
  5166. padding: 19px 24px 24px;
  5167. background: hsl(197,20%,93%);
  5168. border-top: 1px solid hsl(0,0%,90%);
  5169. border-bottom: 1px solid hsl(0,0%,90%);
  5170. }
  5171. .type-tabs .tab {
  5172. height: 40px;
  5173. line-height: 42px;
  5174. padding: 0 12px 0 12px;
  5175. list-style: none;
  5176. }
  5177. .type-tabs .tab-icon {
  5178. width: 16px;
  5179. height: 16px;
  5180. fill: #ccc;
  5181. vertical-align: top;
  5182. @include bidi-style(margin-right, 9px, margin-left, 0);
  5183. margin-top: 11px;
  5184. transform: scale(1.2);
  5185. }
  5186. .type-tabs .tab.active .tab-icon {
  5187. fill: white;
  5188. }
  5189. .token {
  5190. padding: 0 0 0 10px;
  5191. margin: 0 5px 6px 0;
  5192. height: 26px;
  5193. color: white;
  5194. border-radius: 3px;
  5195. background: hsl(198,19%,72%);
  5196. border: none;
  5197. float: none;
  5198. display: inline-flex;
  5199. align-items: center;
  5200. cursor: default;
  5201. max-width: 100%;
  5202. &.active {
  5203. background: $highlight-color;
  5204. .close,
  5205. .token-close {
  5206. opacity: .5;
  5207. }
  5208. }
  5209. }
  5210. /*
  5211. selector needs to be stronger than .token-input
  5212. in order to override input[type=text]
  5213. */
  5214. .tokenfield .token-input {
  5215. vertical-align: top;
  5216. padding: 0 10px 7px 5px;
  5217. margin: 0;
  5218. min-width: 60px;
  5219. height: 32px;
  5220. display: inline-block;
  5221. border: none;
  5222. box-shadow: none;
  5223. outline: none;
  5224. flex: 1;
  5225. &:focus {
  5226. box-shadow: none;
  5227. }
  5228. }
  5229. .tokenfield .token ~ .token-input {
  5230. padding: 0 5px 7px 0;
  5231. }
  5232. .token-label {
  5233. padding: 0;
  5234. white-space: nowrap;
  5235. overflow: hidden;
  5236. text-overflow: ellipsis;
  5237. }
  5238. .tokenfield.form-control {
  5239. padding: 7px 7px 0;
  5240. height: auto;
  5241. display: flex;
  5242. flex-wrap: wrap;
  5243. }
  5244. .token .close,
  5245. .token-close {
  5246. margin: 0;
  5247. padding: 0 9px 0 6px;
  5248. font-family: inherit;
  5249. font-weight: 100;
  5250. font-size: 28px;
  5251. line-height: 1;
  5252. color: white;
  5253. text-shadow: none;
  5254. opacity: .3;
  5255. outline: none;
  5256. height: auto;
  5257. @extend %clickable;
  5258. }
  5259. .token .close:hover,
  5260. .token-close:hover {
  5261. opacity: .5;
  5262. }
  5263. /* allow/show autocomplete in modal dialog */
  5264. .ui-autocomplete.ui-widget-content {
  5265. @extend .zIndex-9;
  5266. position: absolute;
  5267. }
  5268. .ui-menu {
  5269. background: hsl(240,9%,19%);
  5270. border: none;
  5271. color: white;
  5272. font-family: inherit;
  5273. font-size: inherit;
  5274. .ui-menu-item {
  5275. padding: 9px 15px;
  5276. list-style-image: none;
  5277. &:not(:first-child) {
  5278. box-shadow: 0 1px rgba(255,255,255,.13) inset;
  5279. }
  5280. &.ui-state-focus {
  5281. margin: 0;
  5282. border: none;
  5283. background: hsl(205,90%,60%);
  5284. color: inherit;
  5285. + li {
  5286. box-shadow: none;
  5287. }
  5288. }
  5289. }
  5290. }
  5291. .drox {
  5292. color: hsl(60,1%,74%);
  5293. }
  5294. .drox .drox-header {
  5295. padding-bottom: 2px;
  5296. margin-bottom: 16px;
  5297. border-bottom: 1px solid hsl(240,4%,95%);
  5298. }
  5299. .drox a.create {
  5300. margin-top: 2px;
  5301. display: inline-block;
  5302. }
  5303. .drox .form-group {
  5304. margin-bottom: 22px;
  5305. }
  5306. .drox .drox-body p:first-child {
  5307. margin-top: 20px;
  5308. }
  5309. .newTicket .templates {
  5310. border-bottom: 1px solid hsl(240,4%,95%);
  5311. padding-bottom: 14px;
  5312. }
  5313. .templates-manage fieldset {
  5314. margin: 0;
  5315. }
  5316. .template-attributes {
  5317. margin: 17px 0 19px;
  5318. }
  5319. .template-attribute {
  5320. height: 24px;
  5321. line-height: 25px;
  5322. @include bidi-style(padding-left, 10px, padding-right, 0);
  5323. margin-bottom: 2px;
  5324. font-size: 13px;
  5325. color: hsl(198,11%,59%);
  5326. background: hsl(197,20%,93%);
  5327. border: 1px solid hsl(0,0%,90%);
  5328. border-radius: 3px;
  5329. }
  5330. .template-attribute .key {
  5331. text-transform: uppercase;
  5332. @include bidi-style(margin-right, 3px, margin-left, 0);
  5333. }
  5334. .template-attribute .value {
  5335. @include bidi-style(margin-left, 3px, margin-right, 0);
  5336. }
  5337. .template-attribute .delete {
  5338. padding: 0 7px;
  5339. margin-top: 4px;
  5340. line-height: 19px;
  5341. font-size: 28px;
  5342. font-weight: 300;
  5343. opacity: .4;
  5344. }
  5345. .customer-name {
  5346. color: hsl(60,1%,34%);
  5347. }
  5348. .customer-email {
  5349. margin-top: 5px;
  5350. margin-bottom: 20px;
  5351. display: block;
  5352. }
  5353. .table.user-list {
  5354. tr:hover .switchView {
  5355. visibility: visible;
  5356. }
  5357. td .list {
  5358. margin-top: -4px;
  5359. }
  5360. .switchView {
  5361. visibility: hidden;
  5362. display: block;
  5363. text-overflow: ellipsis;
  5364. overflow: hidden;
  5365. }
  5366. // lame hardcoded width of this "View from users' perspective" button td
  5367. // i can't find another way to do it. It's not flexible. It sucks
  5368. .actionCell {
  5369. width: 250px;
  5370. }
  5371. }
  5372. .switchBackToUser {
  5373. display: flex;
  5374. align-items: center;
  5375. background: hsl(200,87%,45%);
  5376. color: #fff;
  5377. height: 45px;
  5378. padding: 0 17px;
  5379. /*top: -45px !important;*/
  5380. border-bottom: 5px solid hsl(205,90%,60%);
  5381. }
  5382. .switchBackToUser-icon {
  5383. width: 19px;
  5384. height: 18px;
  5385. }
  5386. .switchBackToUser-text {
  5387. @include bidi-style(margin-left, 10px, margin-right, 0);
  5388. }
  5389. .switchBackToUser-close {
  5390. width: 40px;
  5391. height: 40px;
  5392. @include bidi-style(margin-right, -10px, margin-left, 0);
  5393. display: flex;
  5394. align-items: center;
  5395. justify-content: center;
  5396. svg {
  5397. fill: white;
  5398. }
  5399. }
  5400. .modal {
  5401. position: fixed;
  5402. @extend .zIndex-9;
  5403. }
  5404. .modal-dialog {
  5405. width: auto;
  5406. max-width: 660px;
  5407. margin-top: 35px;
  5408. margin-bottom: 35px;
  5409. &.wizard {
  5410. margin: 35px auto;
  5411. }
  5412. }
  5413. .modal--veryLarge .modal-dialog {
  5414. max-width: 990px;
  5415. }
  5416. .modal--large .modal-dialog {
  5417. max-width: 740px;
  5418. }
  5419. .modal--small .modal-dialog {
  5420. max-width: 440px;
  5421. }
  5422. .modal-dialog.wizard {
  5423. max-width: 460px;
  5424. }
  5425. .modal-backdrop {
  5426. position: fixed;
  5427. }
  5428. .modal-content {
  5429. border-radius: 0;
  5430. border: 1px solid hsl(0,0%,90%);
  5431. box-shadow: none;
  5432. color: hsl(60,1%,34%);
  5433. }
  5434. .modal-header {
  5435. padding: 30px 23px 23px;
  5436. border: none;
  5437. }
  5438. .modal-header h1 {
  5439. text-align: center;
  5440. }
  5441. .modal-close {
  5442. padding: 23px;
  5443. position: absolute;
  5444. right: 0;
  5445. @include rtl(right, auto);
  5446. @include rtl(left, 0);
  5447. top: 0;
  5448. @extend .u-clickable;
  5449. }
  5450. .modal-close .icon-diagonal-cross {
  5451. opacity: 0.18;
  5452. }
  5453. .modal-body {
  5454. padding: 0 23px;
  5455. h2:first-child {
  5456. margin-top: 0;
  5457. }
  5458. p:first-child,
  5459. .alert.hidden:first-child + p {
  5460. margin-top: 0;
  5461. }
  5462. .table > thead > tr > th {
  5463. background: hsl(197,20%,93%);
  5464. }
  5465. }
  5466. .modal-footer {
  5467. padding: 23px 23px 20px;
  5468. border: none;
  5469. display: flex;
  5470. @include rtl(text-align, left);
  5471. }
  5472. .modal-leftFooter,
  5473. .modal-centerFooter,
  5474. .modal-rightFooter {
  5475. display: flex;
  5476. align-items: center; /* because of btn--text btn--subtle being thinner than the rest */
  5477. flex: 1;
  5478. }
  5479. .modal.modal--local {
  5480. display: block;
  5481. padding: 0 40px;
  5482. .modal-backdrop {
  5483. background: hsla(210,17%,93%,.55);
  5484. opacity: 1;
  5485. }
  5486. .modal-dialog {
  5487. box-shadow: 0 0 40px hsla(210,17%,40%,.34);
  5488. }
  5489. }
  5490. .caret {
  5491. position: absolute;
  5492. top: 50%;
  5493. margin-top: -3px;
  5494. right: 10px;
  5495. }
  5496. .dropdown-backdrop {
  5497. position: fixed;
  5498. @extend .zIndex-5; // has to be behind dropdown-menu
  5499. }
  5500. .dropdown-menu {
  5501. @extend .zIndex-6; // has to be behind modal windows and beneath notifications (popover)
  5502. position: absolute;
  5503. margin: 0;
  5504. padding: 0;
  5505. min-width: 100%;
  5506. color: white;
  5507. text-transform: initial;
  5508. letter-spacing: 0;
  5509. background: hsl(234,10%,19%);
  5510. border-radius: 0;
  5511. border: none;
  5512. box-shadow: none;
  5513. overflow: hidden;
  5514. @include rtl(text-align, right);
  5515. overscroll-behavior: contain;
  5516. }
  5517. .dropdown-menu kbd {
  5518. background: none;
  5519. color: inherit;
  5520. padding: 2px 5px;
  5521. @include bidi-style(margin-left, 7px, margin-right, 0);
  5522. line-height: 1;
  5523. vertical-align: baseline;
  5524. opacity: 0.5;
  5525. }
  5526. .dropdown-toggle {
  5527. display: flex;
  5528. align-items: center;
  5529. @extend .u-clickable;
  5530. }
  5531. .dropdown-icon {
  5532. width: 16px;
  5533. height: 16px;
  5534. opacity: 0.39;
  5535. }
  5536. .dropdown-menu.dropdown-menu--light {
  5537. background: white;
  5538. color: hsl(198,19%,72%);
  5539. }
  5540. .dropdown-menu.dropdown-menu--light > li {
  5541. color: hsl(202,70%,49%);
  5542. &.dropdown-header {
  5543. color: hsl(198,19%,72%);
  5544. }
  5545. }
  5546. .dropdown-menu.dropdown-menu--light > li > a:hover {
  5547. color: #2594d4;
  5548. background: rgba(0,0,0,.05);
  5549. }
  5550. .dropdown-menu.dropdown-menu--light li:hover {
  5551. background: none;
  5552. }
  5553. .dropdown-menu.dropdown-menu--light li.is-active {
  5554. color: white;
  5555. }
  5556. .dropdown ul {
  5557. margin: 0;
  5558. padding: 0;
  5559. }
  5560. .dropdown li,
  5561. .dropup li {
  5562. height: 39px;
  5563. line-height: 39px;
  5564. padding: 0 15px;
  5565. @extend %clickable;
  5566. white-space: nowrap;
  5567. &:focus {
  5568. outline: none;
  5569. }
  5570. }
  5571. .dropdown li:not(:first-child) {
  5572. box-shadow: 0 1px rgba(255,255,255,.13) inset;
  5573. }
  5574. .dropdown li:hover,
  5575. .dropdown li.is-active {
  5576. background: hsl(205,90%,60%);
  5577. + li {
  5578. box-shadow: none;
  5579. }
  5580. }
  5581. .dropdown-menu > li.danger:hover,
  5582. .dropdown-menu > li.danger.is-active {
  5583. background: hsl(0,65%,55%);
  5584. }
  5585. .dropdown-menu > li.create:hover,
  5586. .dropdown-menu > li.create.is-active {
  5587. background: hsl(145,51%,45%);
  5588. }
  5589. .dropdown-menu > li > a {
  5590. color: inherit;
  5591. padding: 0 15px;
  5592. margin: 0 -15px;
  5593. line-height: inherit;
  5594. }
  5595. .dropdown-menu > li > a:hover {
  5596. color: inherit;
  5597. background: none;
  5598. }
  5599. .dropdown-menu > li > a span {
  5600. display: block;
  5601. }
  5602. .dropdown-menu .badge {
  5603. @include bidi-style(padding-left, 10px, padding-right, 0);
  5604. }
  5605. .dropdown.dropdown--actions {
  5606. li {
  5607. line-height: initial;
  5608. height: auto;
  5609. padding: 11px 15px;
  5610. display: flex;
  5611. align-items: center;
  5612. word-break: break-all;
  5613. }
  5614. .dropdown-iconSpacer,
  5615. .dropdown-selectedSpacer {
  5616. display: flex;
  5617. align-items: center;
  5618. }
  5619. .dropdown-iconSpacer {
  5620. width: 25px;
  5621. }
  5622. .dropdown-selectedSpacer {
  5623. width: 34px;
  5624. @include bidi-style(margin-left, auto, margin-right, 0);
  5625. justify-content: flex-end;
  5626. opacity: 0;
  5627. .icon {
  5628. fill: white;
  5629. }
  5630. &.is-selected {
  5631. opacity: 1;
  5632. }
  5633. }
  5634. a {
  5635. @extend .u-clickable;
  5636. display: flex;
  5637. flex: 1;
  5638. padding: 0 18px;
  5639. }
  5640. .icon {
  5641. fill: currentColor;
  5642. }
  5643. }
  5644. .dropdown.dropdown--wide {
  5645. li {
  5646. padding-top: 12px;
  5647. padding-bottom: 12px;
  5648. }
  5649. }
  5650. li.dropdown-header {
  5651. line-height: 34px;
  5652. height: 30px;
  5653. }
  5654. .dropdown-menu--has-submenu {
  5655. overflow: hidden;
  5656. background: none;
  5657. ul {
  5658. background: hsl(234,10%,19%);
  5659. }
  5660. }
  5661. .dropdown-submenu {
  5662. position: absolute;
  5663. top: 0;
  5664. left: 0;
  5665. width: 100%;
  5666. }
  5667. .dropdown.dropdown--actions .dropdown-controls {
  5668. @extend .u-clickable;
  5669. display: flex;
  5670. &:not(:hover):not(.is-active) {
  5671. background: hsl(206,7%,28%);
  5672. }
  5673. .icon {
  5674. fill: white;
  5675. @include bidi-style(margin-right, 10px, margin-left, 0);
  5676. flex-shrink: 0;
  5677. }
  5678. }
  5679. .dropdown-title {
  5680. flex-shrink: 1;
  5681. overflow: hidden;
  5682. text-overflow: ellipsis;
  5683. white-space: nowrap;
  5684. }
  5685. .dropdown-detail {
  5686. opacity: 0.5;
  5687. }
  5688. .recipientList,
  5689. .recipientList-organizationMembers {
  5690. list-style: none;
  5691. padding: 0;
  5692. }
  5693. .recipientList-entry {
  5694. display: flex;
  5695. align-items: center;
  5696. @extend .u-clickable;
  5697. }
  5698. .recipientList-entry .recipientList-iconSpacer {
  5699. width: 20px;
  5700. @include bidi-style(margin-left, -5px, margin-right, 0);
  5701. display: flex;
  5702. align-items: center;
  5703. justify-content: center;
  5704. flex-shrink: 0;
  5705. }
  5706. .recipientList-icon {
  5707. width: 16px;
  5708. height: 16px;
  5709. fill: white;
  5710. opacity: 0.2;
  5711. }
  5712. .recipientList--new,
  5713. .recipientList-entry:hover,
  5714. .recipientList-entry.is-active {
  5715. .recipientList-icon {
  5716. opacity: 1;
  5717. }
  5718. }
  5719. .recipientList-name {
  5720. color: white;
  5721. @include bidi-style(margin-left, 10px, margin-right, 0);
  5722. flex: 1;
  5723. @extend .u-textTruncate;
  5724. }
  5725. .recipientList-status {
  5726. opacity: 0.5;
  5727. margin: 0 10px;
  5728. flex-shrink: 1;
  5729. &:last-child {
  5730. margin-right: 0;
  5731. }
  5732. }
  5733. .recipientList-arrow {
  5734. fill: white;
  5735. opacity: 0.39;
  5736. }
  5737. .recipientList-entry:hover .recipientList-arrow {
  5738. opacity: 1;
  5739. }
  5740. .recipientList-detail {
  5741. opacity: 0.5;
  5742. }
  5743. .recipientList-icon.plus {
  5744. @include bidi-style(margin-left, 13px, margin-right, 0);
  5745. }
  5746. .recipientList--new {
  5747. background: hsl(145,51%,45%);
  5748. }
  5749. .dropdown .recipientList--new:hover {
  5750. background: hsl(147,52%,43%);
  5751. }
  5752. .recipientList-controls,
  5753. .recipientList-controls:hover {
  5754. @extend .u-clickable;
  5755. padding: 0 10px !important;
  5756. background: hsl(206,7%,28%);
  5757. & + li {
  5758. box-shadow: 0 1px rgba(255,255,255,.13) inset;
  5759. }
  5760. }
  5761. .recipientList-organizationMembers {
  5762. position: absolute;
  5763. top: 0;
  5764. left: 0;
  5765. right: 0;
  5766. }
  5767. .userInfo-avatar {
  5768. float: right;
  5769. @include rtl(float, left);
  5770. position: relative;
  5771. }
  5772. .organizationInfo-avatar {
  5773. @extend .userInfo-avatar;
  5774. @include bidi-style(padding, 18px 0 0 18px, padding, 18px 18px 0 0);
  5775. }
  5776. .userList {
  5777. list-style: none;
  5778. padding: 0;
  5779. .userList-entry {
  5780. margin: 10px 0;
  5781. display: flex;
  5782. align-items: center;
  5783. &:last-child {
  5784. margin-bottom: 0;
  5785. }
  5786. }
  5787. .userList-name {
  5788. @extend .u-textTruncate;
  5789. @include bidi-style(margin-left, 7px, margin-right, 0);
  5790. }
  5791. }
  5792. .checkbox.form-group .checkbox {
  5793. margin-top: 0;
  5794. margin-bottom: 15px;
  5795. height: auto;
  5796. padding-top: 3px;
  5797. padding-bottom: 3px;
  5798. background: hsl(210,17%,98%);
  5799. }
  5800. .checkbox.form-group label {
  5801. padding: 0 2px;
  5802. cursor: default;
  5803. }
  5804. .checkbox,
  5805. .radio {
  5806. &.form-group .controls label {
  5807. padding: 2px 0;
  5808. font: inherit;
  5809. font-size: 13px;
  5810. margin-bottom: 0;
  5811. color: inherit;
  5812. text-transform: inherit;
  5813. letter-spacing: 0;
  5814. @extend .u-clickable;
  5815. }
  5816. }
  5817. .userSearch-label {
  5818. margin-top: 11px;
  5819. @include bidi-style(margin-right, 10px, margin-left, 0);
  5820. }
  5821. .userSearch .tab:not(.active) {
  5822. background: white;
  5823. }
  5824. .userSearch {
  5825. margin: 0 0 20px;
  5826. }
  5827. .userSearch .tabs {
  5828. margin: 0;
  5829. }
  5830. .nav {
  5831. list-style: none;
  5832. padding: 0;
  5833. margin: 0;
  5834. }
  5835. .nav a {
  5836. padding: 10px 15px;
  5837. display: block;
  5838. }
  5839. .nav-tabs {
  5840. display: flex;
  5841. margin: 10px -20px 20px;
  5842. padding: 0 20px 0 21px; /* margin-left: -1px */
  5843. @include rtl(padding, 0 21px 0 20px);
  5844. position: relative;
  5845. }
  5846. .nav-tabs li {
  5847. margin: 0;
  5848. color: hsl(0,0%,70%);
  5849. border: 1px solid hsl(0,0%,90%);
  5850. margin-left: -1px;
  5851. background: white;
  5852. position: relative;
  5853. &:first-child {
  5854. border-radius: 7px 0 0 7px;
  5855. @include rtl(border-radius, 0 7px 7px 0);
  5856. }
  5857. &:last-child {
  5858. border-radius: 0 7px 7px 0;
  5859. @include rtl(border-radius, 7px 0 0 7px);
  5860. }
  5861. &:only-child {
  5862. border-radius: 7px;
  5863. }
  5864. &.active {
  5865. color: white;
  5866. background: hsl(206,7%,28%);
  5867. }
  5868. a {
  5869. padding: 10px 24px 8px;
  5870. color: inherit;
  5871. color: inherit;
  5872. }
  5873. }
  5874. .tab-content {
  5875. h2:first-child {
  5876. margin-top: 0;
  5877. }
  5878. }
  5879. .settings-entry {
  5880. margin-bottom: 42px;
  5881. max-width: 700px;
  5882. }
  5883. .setting-controls {
  5884. margin-top: 14px;
  5885. display: flex;
  5886. justify-content: flex-end;
  5887. }
  5888. .form-item .form-group {
  5889. margin-bottom: 0;
  5890. }
  5891. .form-item .form-group + .form-group {
  5892. margin-top: 15px;
  5893. }
  5894. .form-item + .btn {
  5895. @include bidi-style(margin-left, 23px, margin-right, 0);
  5896. }
  5897. .scrollPageHeader {
  5898. @extend .zIndex-5;
  5899. display: flex;
  5900. align-items: center;
  5901. background: white;
  5902. border-bottom: 1px solid hsl(0,0%,78%);
  5903. height: 64px;
  5904. top: 0;
  5905. left: 0;
  5906. right: 0;
  5907. padding: 0 22px;
  5908. position: absolute;
  5909. transform: translateY(-64px);
  5910. }
  5911. .scrollPageHeader small {
  5912. color: hsl(198,19%,72%);
  5913. }
  5914. .scrollPageHeader .ticket-title {
  5915. max-width: initial;
  5916. padding: 0;
  5917. min-width: 0;
  5918. flex: 1;
  5919. }
  5920. .scrollPageHeader h1 {
  5921. font-size: 19px;
  5922. margin: 0 15px;
  5923. @extend .u-textTruncate;
  5924. }
  5925. .wizard {
  5926. margin: auto; // makes sure that the wizard is scrollable
  5927. }
  5928. .wizard-logo {
  5929. fill: white;
  5930. @include bidi-style(margin-left, -25px, margin-right, 0);
  5931. margin-bottom: 5px;
  5932. }
  5933. .wizard-slide {
  5934. @extend .hero-unit;
  5935. display: flex;
  5936. flex-direction: column;
  5937. width: 400px;
  5938. padding-bottom: 18px;
  5939. margin-bottom: 20px;
  5940. &.wizard-slide--large {
  5941. width: 460px;
  5942. }
  5943. }
  5944. .wizard h2 {
  5945. text-align: center;
  5946. border-bottom: 1px solid rgba(0,0,0,.13);
  5947. padding-bottom: 8px;
  5948. margin-bottom: 16px;
  5949. & + p {
  5950. margin-top: 0;
  5951. }
  5952. }
  5953. .wizard-body {
  5954. flex: 1;
  5955. padding-bottom: 15px;
  5956. .form-control {
  5957. min-width: 0;
  5958. }
  5959. }
  5960. .wizard-controls {
  5961. display: flex;
  5962. margin-top: 15px;
  5963. height: 39px;
  5964. }
  5965. .wizard-buttonList {
  5966. margin-top: 15px;
  5967. min-width: 200px;
  5968. }
  5969. p + .wizard-buttonList,
  5970. label + .wizard-buttonList {
  5971. margin-top: 5px;
  5972. }
  5973. .wizard-loadingText {
  5974. text-align: center;
  5975. margin: 0;
  5976. }
  5977. .wizard-loadingText .loading {
  5978. vertical-align: middle;
  5979. @include bidi-style(margin-right, 10px, margin-left, 0);
  5980. }
  5981. .wizard-aside {
  5982. padding-top: 15px;
  5983. text-align: center;
  5984. border-top: 1px solid rgba(0,0,0,.13);
  5985. }
  5986. .setup.wizard .wizard-body {
  5987. min-height: 140px;
  5988. & > p:first-child {
  5989. margin-top: 0;
  5990. }
  5991. }
  5992. .setup.wizard .logo-preview, .branding .logo-preview {
  5993. display: block;
  5994. height: 0;
  5995. max-width: 200px;
  5996. max-height: 100px;
  5997. &[src=""] {
  5998. visibility: hidden;
  5999. }
  6000. + .logo-preview-placeholder {
  6001. height: 100px;
  6002. color: hsl(0,0%,60%);
  6003. background: hsl(0,0%,95%);
  6004. margin-bottom: 10px;
  6005. display: flex;
  6006. align-items: center;
  6007. justify-content: center;
  6008. }
  6009. }
  6010. .setup.wizard .logo-preview:not([src=""]) {
  6011. margin: 0 auto 15px;
  6012. height: auto;
  6013. + .logo-preview-placeholder {
  6014. display: none;
  6015. }
  6016. }
  6017. .setup.wizard .base-outbound-settings {
  6018. margin-top: 15px;
  6019. }
  6020. .branding .logo-preview:not([src=""]) {
  6021. margin: 20px auto 12px;
  6022. height: auto;
  6023. + .logo-preview-placeholder {
  6024. display: none;
  6025. }
  6026. }
  6027. .branding.login {
  6028. padding: 24px 24px 0px;
  6029. }
  6030. .import.wizard .wizard-slide {
  6031. min-height: 300px;
  6032. }
  6033. .import-source {
  6034. border-radius: 5px;
  6035. border: 1px solid rgba(0,0,0,.13);
  6036. height: 50px;
  6037. margin: 5px 0;
  6038. @extend .u-clickable;
  6039. }
  6040. .input-feedback {
  6041. position: absolute;
  6042. @include bidi-style(padding-left, 10px, padding-right, 0);
  6043. right: 1px;
  6044. top: 1px;
  6045. bottom: 1px;
  6046. width: 52px;
  6047. border-radius: 0 5px 5px 0;
  6048. background: linear-gradient(to right, rgba(255,255,255,0), white 33%);
  6049. }
  6050. .input-feedback .icon {
  6051. display: none;
  6052. }
  6053. .input-feedback[data-state=loading] .loading.icon,
  6054. .input-feedback[data-state=error] .icon-error,
  6055. .input-feedback[data-state=success] .icon-checkmark {
  6056. display: block;
  6057. }
  6058. .progressTable {
  6059. width: 100%;
  6060. margin: 0 auto;
  6061. }
  6062. .progressTable td {
  6063. padding: 8px;
  6064. overflow: auto;
  6065. width: 33%;
  6066. }
  6067. .progressTable tr:not(:last-child) {
  6068. border-bottom: 1px solid #eee;
  6069. }
  6070. .progressTable td:first-child {
  6071. text-align: end;
  6072. }
  6073. .progressTable progress {
  6074. width: 100%;
  6075. min-width: 60px;
  6076. display: block;
  6077. }
  6078. .progressTable .icon-checkmark {
  6079. @include bidi-style(margin-left, 10px, margin-right, 0);
  6080. opacity: 0;
  6081. }
  6082. .progressTable tr.is-done .icon-checkmark {
  6083. opacity: 1;
  6084. }
  6085. .channelList {
  6086. flex: 1;
  6087. display: flex;
  6088. flex-direction: column;
  6089. background: white;
  6090. border-radius: 2px;
  6091. margin: 5px 0 20px;
  6092. }
  6093. .channelList,
  6094. .channelList-controls,
  6095. .channelList-controlEntry {
  6096. border: 1px solid hsl(251,6%,90%);
  6097. }
  6098. .channelList-entry {
  6099. display: flex;
  6100. cursor: default;
  6101. padding: 5px 8px;
  6102. &:not(:last-child) {
  6103. border-bottom: 1px solid hsl(251,6%,90%);
  6104. }
  6105. }
  6106. .channelList-label {
  6107. margin: 0 10px;
  6108. flex: 1;
  6109. & > * {
  6110. @extend .u-textTruncate;
  6111. }
  6112. }
  6113. .channelList-status {
  6114. font-size: 12px;
  6115. color: #999;
  6116. }
  6117. .channelList-placeholder {
  6118. display: flex;
  6119. align-items: center;
  6120. justify-content: center;
  6121. flex: 1;
  6122. color: #999;
  6123. }
  6124. .channelList-controls {
  6125. margin-top: auto;
  6126. display: flex;
  6127. background: hsl(251,6%,92%);
  6128. border-left: none;
  6129. border-right: none;
  6130. border-bottom: none;
  6131. }
  6132. .channelList-controlEntry {
  6133. display: flex;
  6134. justify-content: center;
  6135. width: 26px;
  6136. height: 26px;
  6137. border-left: none;
  6138. border-top: none;
  6139. border-bottom: none;
  6140. position: relative;
  6141. [data-toggle=dropdown] {
  6142. position: relative;
  6143. }
  6144. .icon {
  6145. opacity: 0.8;
  6146. }
  6147. }
  6148. .avatar-gallery {
  6149. display: flex;
  6150. flex-wrap: wrap;
  6151. }
  6152. .avatar-holder {
  6153. display: inline-block;
  6154. position: relative;
  6155. margin: 0 32px 32px 0;
  6156. border-radius: 100%;
  6157. box-shadow: 0 0 0 4px white;
  6158. .avatar {
  6159. @extend .u-clickable;
  6160. &.is-active {
  6161. box-shadow: 0 0 0 4px hsl(200,71%,59%);
  6162. }
  6163. }
  6164. }
  6165. .avatar--new {
  6166. background: hsl(145,51%,45%);
  6167. @extend .u-clickable;
  6168. }
  6169. .avatar-holder .avatar-delete {
  6170. position: absolute;
  6171. right: -15px;
  6172. top: -15px;
  6173. width: 40px;
  6174. height: 40px;
  6175. pointer-events: none;
  6176. visibility: hidden;
  6177. background: white;
  6178. display: flex;
  6179. align-items: center;
  6180. justify-content: center;
  6181. border-radius: 100%;
  6182. box-shadow: 0 1px 5px rgba(0,0,0,.05);
  6183. @extend .u-clickable;
  6184. svg {
  6185. opacity: 0.5;
  6186. fill: hsl(234,10%,19%);
  6187. }
  6188. &:hover svg {
  6189. opacity: 1;
  6190. }
  6191. }
  6192. .avatar-holder:hover .avatar-delete {
  6193. visibility: visible;
  6194. pointer-events: auto;
  6195. }
  6196. .camera video {
  6197. position: absolute;
  6198. visibility: hidden;
  6199. pointer-events: none;
  6200. }
  6201. .camera-preview {
  6202. display: block;
  6203. margin: 0 auto;
  6204. }
  6205. .camera-flash {
  6206. @extend .fit;
  6207. background: white;
  6208. opacity: 0;
  6209. @extend .u-unclickable;
  6210. }
  6211. .camera-flash.is-active {
  6212. animation: flash 500ms ease;
  6213. }
  6214. @keyframes flash { 0% { opacity: 0 } 50% { opacity: 1 } 100% { opacity: 0 } }
  6215. .fileUpload {
  6216. position: relative;
  6217. overflow: hidden;
  6218. }
  6219. .fileUpload input {
  6220. position: absolute;
  6221. right: 0;
  6222. top: 0;
  6223. font-size: 118px;
  6224. margin: 0;
  6225. padding: 0;
  6226. @extend %clickable;
  6227. opacity: 0;
  6228. &:focus + label {
  6229. text-decoration: underline;
  6230. }
  6231. }
  6232. .imagePreview img {
  6233. max-width: 100%;
  6234. max-height: 100%;
  6235. }
  6236. .imageCropper p {
  6237. margin: 0;
  6238. }
  6239. .imageCropper-holder {
  6240. height: 340px;
  6241. margin: 15px 0;
  6242. }
  6243. .imageCropper-image {
  6244. max-width: 100%;
  6245. max-height: 100%;
  6246. opacity: 0;
  6247. }
  6248. .imageCropper-preview {
  6249. width: 40px;
  6250. height: 40px;
  6251. border-radius: 100%;
  6252. overflow: hidden;
  6253. margin: 0 10px;
  6254. background: hsl(210,17%,98%);
  6255. }
  6256. .cropper-container {
  6257. /* prevent cropper.js's centering – we center via flex */
  6258. left: 0 !important;
  6259. }
  6260. .profile {
  6261. padding: 60px;
  6262. overflow: auto;
  6263. flex: 1;
  6264. h1 {
  6265. margin: 18px 0 0;
  6266. }
  6267. .tabs {
  6268. margin-top: 2px;
  6269. margin-bottom: 25px;
  6270. }
  6271. }
  6272. .profile-window {
  6273. color: hsl(60,1%,34%);
  6274. background: white;
  6275. max-width: 660px;
  6276. margin: 0 auto;
  6277. border: 1px solid #e6e6e6;
  6278. }
  6279. .profile-section {
  6280. padding: 20px 50px;
  6281. &.profile-memberSection {
  6282. margin-bottom: 10px;
  6283. }
  6284. }
  6285. .profile-section:not(:last-child) {
  6286. border-bottom: 1px solid #f2f2f2;
  6287. }
  6288. .profile-action {
  6289. @include bidi-style(margin-right, -20px, margin-left, 0);
  6290. .dropdown-toggle {
  6291. margin-top: -20px;
  6292. @include bidi-style(margin-right, -30px, margin-left, 0);
  6293. margin-bottom: 8px;
  6294. padding: 26px 40px 2px;
  6295. }
  6296. label {
  6297. margin: 0 8px;
  6298. padding: 0;
  6299. cursor: inherit;
  6300. }
  6301. }
  6302. .profile-subtitle {
  6303. font-size: 16px;
  6304. @extend .u-highlight;
  6305. }
  6306. .profile-details {
  6307. @include bidi-style(margin-left, -50px, margin-right, 0);
  6308. }
  6309. .profile-ticketsPlaceholder {
  6310. flex: 1;
  6311. margin: 8px 0 22px;
  6312. color: hsl(209,28%,74%);
  6313. .stat-icon {
  6314. margin-bottom: 10px;
  6315. }
  6316. }
  6317. .profile-detailsEntry {
  6318. margin: 8px 0;
  6319. @include bidi-style(padding-left, 50px, padding-right, 0);
  6320. width: 50%;
  6321. }
  6322. .profile-detailsEntry label {
  6323. padding: 0;
  6324. margin-bottom: 2px;
  6325. display: block;
  6326. }
  6327. .profile-organizationMember {
  6328. @extend .profile-detailsEntry;
  6329. display: flex;
  6330. align-items: center;
  6331. .avatar {
  6332. @include bidi-style(margin-right, 10px, margin-left, 0);
  6333. }
  6334. }
  6335. .profile-ticketLists {
  6336. display: flex;
  6337. margin: 0 -25px;
  6338. }
  6339. .profile-ticketList {
  6340. display: flex;
  6341. flex-direction: column;
  6342. flex: 1 1 50%;
  6343. padding: 0 25px;
  6344. min-width: 0; /* Firefox wrong content-calculation with word-wrap workaround */
  6345. .tasks {
  6346. margin-bottom: 10px;
  6347. display: flex;
  6348. flex-basis: auto;
  6349. flex-direction: column;
  6350. }
  6351. }
  6352. .profile .frequency.stat-widget {
  6353. height: 230px;
  6354. .stat-bars {
  6355. height: 100px;
  6356. }
  6357. }
  6358. .profile-organizationIcon {
  6359. display: flex;
  6360. align-items: center;
  6361. justify-content: center;
  6362. width: 80px;
  6363. height: 80px;
  6364. background: hsl(0,0%,87%);
  6365. border-radius: 100%;
  6366. opacity: 0.4;
  6367. svg {
  6368. width: 32px;
  6369. height: 32px;
  6370. }
  6371. }
  6372. .highlighter {
  6373. display: flex;
  6374. }
  6375. [data-highlightcolor=Yellow]::selection { background: #f7e7b2; }
  6376. .highlight-Yellow { background: #f7e7b2; }
  6377. [data-highlightcolor=Green]::selection { background: #bce7b6; }
  6378. .highlight-Green { background: #bce7b6; }
  6379. [data-highlightcolor=Blue]::selection { background: #b3ddf9; }
  6380. .highlight-Blue { background: #b3ddf9; }
  6381. [data-highlightcolor=Pink]::selection { background: #fea9c5; }
  6382. .highlight-Pink { background: #fea9c5; }
  6383. [data-highlightcolor=Purple]::selection { background: #eac5ee; }
  6384. .highlight-Purple { background: #eac5ee; }
  6385. .translationOverview {
  6386. tbody > tr > td {
  6387. padding: 20px 0 0 10px;
  6388. }
  6389. .translationOverview-itemContainer {
  6390. padding: 10px 0 10px 10px;
  6391. }
  6392. .translationOverview-source {
  6393. width: 25%;
  6394. }
  6395. .translationOverview-target {
  6396. width: 35%;
  6397. }
  6398. .translationOverview-initial {
  6399. width: 25%;
  6400. }
  6401. .translationOverview-item {
  6402. width: 100%;
  6403. }
  6404. }
  6405. .overview-navigator {
  6406. display: flex;
  6407. }
  6408. .overview-navigator .pagination {
  6409. margin: 0 0 0 10px;
  6410. @include rtl(margin, 0 10px 0 0);
  6411. }
  6412. .empty-space {
  6413. padding: 50px;
  6414. svg {
  6415. width: 200px;
  6416. height: auto;
  6417. }
  6418. .empty-space-tagline {
  6419. color: hsl(198, 19%, 72%);
  6420. margin-top: 15px;
  6421. font-size: 18px;
  6422. }
  6423. }
  6424. .horizontal-filters {
  6425. margin-bottom: 20px;
  6426. }
  6427. .horizontal-filter {
  6428. display: flex;
  6429. align-items: center;
  6430. background: hsl(197,20%,93%);
  6431. padding: 7px;
  6432. border: 1px solid hsl(198,19%,86%);
  6433. &:first-child {
  6434. border-radius: 4px 4px 0 0;
  6435. @include rtl(border-radius, 0 0 4px 4px);
  6436. }
  6437. &:last-child {
  6438. border-radius: 0 0 4px 4px;
  6439. @include rtl(border-radius, 4px 4px 0 0);
  6440. }
  6441. &:only-child {
  6442. border-radius: 4px;
  6443. }
  6444. & + .horizontal-filter {
  6445. border-top: none;
  6446. }
  6447. .controls,
  6448. input {
  6449. @include bidi-style(margin-right, 5px, margin-left, 0);
  6450. }
  6451. .controls-label {
  6452. margin-left: 0;
  6453. margin-right: 5px;
  6454. @include rtl(margin-left, 5px);
  6455. @include rtl(margin-right, 0);
  6456. }
  6457. select,
  6458. input {
  6459. border-color: hsl(198,19%,86%);
  6460. }
  6461. input[type=text] {
  6462. width: auto;
  6463. }
  6464. }
  6465. .horizontal-filter-body {
  6466. display: flex;
  6467. align-items: center;
  6468. flex: 1;
  6469. }
  6470. .horizontal-filter-value {
  6471. flex-shrink: 0;
  6472. // lower the min-width of url input fields (normally 400px) so that it fits in
  6473. input[type=url] {
  6474. min-width: 200px;
  6475. }
  6476. }
  6477. .output-input {
  6478. margin: 0 0 14px;
  6479. output {
  6480. margin: 0;
  6481. border-radius: 3px 3px 0 0;
  6482. border: 1px solid hsl(200,71%,59%);
  6483. border-bottom: none;
  6484. display: block;
  6485. }
  6486. input {
  6487. flex: 1;
  6488. border-top-left-radius: 0;
  6489. border-top-right-radius: 0;
  6490. border-top: none;
  6491. &:focus {
  6492. border-color: hsl(0,0%,90%);
  6493. box-shadow: none;
  6494. }
  6495. }
  6496. }
  6497. output {
  6498. border-bottom: 1px solid hsl(200,71%,59%);
  6499. margin: 14px 0 0;
  6500. display: inline-block;
  6501. padding: 10px 12px 8px;
  6502. background: hsl(201,62%,93%);
  6503. &[disabled] {
  6504. border-color: hsl(358,53%,56%);
  6505. background: hsl(358,53%,76%);
  6506. }
  6507. }
  6508. .zammad-switch {
  6509. overflow: hidden;
  6510. width: 50px;
  6511. height: 30px;
  6512. border-radius: 15px;
  6513. &.zammad-switch--small {
  6514. width: 40px;
  6515. height: 24px;
  6516. border-radius: 12px;
  6517. }
  6518. &.zammad-switch--dark {
  6519. label {
  6520. background: hsl(234,10%,5%);
  6521. }
  6522. label:before {
  6523. background: hsl(233,10%,10%);
  6524. }
  6525. label:after {
  6526. background: hsl(234,10%,19%);
  6527. }
  6528. }
  6529. &.zammad-switch--green input:checked + label {
  6530. background: $supergood-color;
  6531. }
  6532. }
  6533. .zammad-switch label {
  6534. margin: 0;
  6535. position: relative;
  6536. width: 100%;
  6537. height: 100%;
  6538. border-radius: inherit;
  6539. outline: none;
  6540. background: white;
  6541. box-shadow: 0 0 0 1px rgba(0,0,0,.1) inset;
  6542. transition: background 200ms;
  6543. @extend %clickable;
  6544. &:after {
  6545. content: "";
  6546. position: absolute;
  6547. transition: transform 200ms;
  6548. width: calc(60% - 2px);
  6549. height: calc(100% - 2px);
  6550. border-radius: inherit;
  6551. left: 1px;
  6552. top: 1px;
  6553. box-shadow:
  6554. 0 0 0 1px rgba(0,0,0,.05),
  6555. 0 1px 3px rgba(0,0,0,.2);
  6556. background: white;
  6557. @include rtl(transform, translateX(70%));
  6558. }
  6559. }
  6560. .zammad-switch input {
  6561. display: none;
  6562. &[disabled] + label {
  6563. cursor: not-allowed;
  6564. background: hsl(210,17%,93%);
  6565. border-color: hsl(210,10%,85%);
  6566. }
  6567. &[disabled] + label:after {
  6568. background: hsl(210,17%,97%);
  6569. }
  6570. &:focus + label {
  6571. transition: none;
  6572. background: hsl(200,71%,59%);
  6573. box-shadow: 0 0 0 3px hsl(201,62%,90%);
  6574. }
  6575. &:checked + label {
  6576. background: hsl(200,71%,59%);
  6577. }
  6578. &:checked + label:after {
  6579. transform: translateX(70%);
  6580. @include rtl(transform, none);
  6581. }
  6582. }
  6583. .controls .zammad-switch {
  6584. margin-top: 10px;
  6585. }
  6586. .horizontal-filter-text {
  6587. @include bidi-style(margin-right, 5px, margin-left, 0);
  6588. }
  6589. .filter-controls {
  6590. display: flex;
  6591. align-items: center;
  6592. }
  6593. .filter-control {
  6594. display: flex;
  6595. align-items: center;
  6596. justify-content: center;
  6597. width: 30px;
  6598. height: 30px;
  6599. box-shadow: 0 0 0 1px hsl(198,19%,86%) inset;
  6600. border-radius: 100%;
  6601. background: white;
  6602. @extend %clickable;
  6603. &:hover:not(.is-disabled) {
  6604. border-color: hsl(198,19%,83%);
  6605. .icon {
  6606. fill: black;
  6607. }
  6608. }
  6609. &.is-disabled {
  6610. cursor: not-allowed;
  6611. opacity: 0.5;
  6612. }
  6613. &:not(:last-child) {
  6614. @include bidi-style(margin-right, 7px, margin-left, 0);
  6615. }
  6616. .icon {
  6617. fill: hsl(0,0%,61%);
  6618. }
  6619. }
  6620. .filter-preview {
  6621. margin: 20px 0;
  6622. }
  6623. .day-name {
  6624. text-align: center;
  6625. margin-bottom: 0;
  6626. color: inherit;
  6627. white-space: nowrap;
  6628. }
  6629. .form-group.day-time {
  6630. padding: 10px 5px 6px;
  6631. margin: 0;
  6632. label {
  6633. text-align: center;
  6634. }
  6635. .form-control {
  6636. margin-left: auto;
  6637. margin-right: auto;
  6638. margin-bottom: 8px;
  6639. }
  6640. }
  6641. .settings-row {
  6642. margin-bottom: 10px;
  6643. }
  6644. .settings-list {
  6645. border-collapse: separate;
  6646. color: hsl(60,1%,34%);
  6647. background: white;
  6648. table-layout: auto;
  6649. margin-bottom: 20px;
  6650. word-break: break-all;
  6651. word-wrap: break-word;
  6652. &.is-invalid {
  6653. border-radius: 3px;
  6654. box-shadow:
  6655. 0 0 0 2px white,
  6656. 0 0 0 4px hsl(0,90%,70%);
  6657. }
  6658. &.settings-list--fixed {
  6659. table-layout: fixed;
  6660. }
  6661. &.settings-list--stretch {
  6662. width: 100%;
  6663. }
  6664. &:not(:last-child) {
  6665. margin-bottom: 34px;
  6666. }
  6667. &.settings-list--toggleRow {
  6668. tr:not(.is-active) td > *:not(.dont-grey-out) {
  6669. opacity: 0.33;
  6670. }
  6671. }
  6672. &.settings-list--toggleColumn {
  6673. td:not(.is-active) * {
  6674. opacity: 0.33;
  6675. }
  6676. }
  6677. &.settings-list--placeholder {
  6678. th {
  6679. text-align: center;
  6680. border-bottom: 1px solid hsl(198, 18%, 86%);
  6681. border-radius: 4px;
  6682. }
  6683. td {
  6684. height: 40px;
  6685. }
  6686. }
  6687. th, td {
  6688. vertical-align: top;
  6689. padding: 10px;
  6690. border: 1px solid hsl(198,18%,86%);
  6691. }
  6692. th {
  6693. font-weight: normal;
  6694. text-transform: uppercase;
  6695. font-size: 12px;
  6696. line-height: 17px;
  6697. letter-spacing: 0.05em;
  6698. background: hsl(197,20%,93%);
  6699. border-bottom: none;
  6700. word-break: normal;
  6701. }
  6702. td.empty-cell {
  6703. border-top: none;
  6704. }
  6705. .settings-list-separator {
  6706. @include bidi-style(border-left-width, 3px, border-right-width, 1px);
  6707. }
  6708. .text-muted {
  6709. text-transform: none;
  6710. font-size: 10px;
  6711. letter-spacing: 0;
  6712. color: hsl(198,18%,72%);
  6713. }
  6714. .inline-label {
  6715. color: inherit;
  6716. }
  6717. .btn--table {
  6718. padding-top: 0;
  6719. padding-bottom: 0;
  6720. }
  6721. th:not(:last-child),
  6722. td:not(:last-child) {
  6723. @include bidi-style(border-right-width, 0, border-left-width, 1px);
  6724. }
  6725. tr:not(:last-child) td,
  6726. & > tbody:not(:last-child) tr td {
  6727. border-bottom: none;
  6728. }
  6729. tr.is-inactive td {
  6730. color: hsl(199,19%,80%);
  6731. text-decoration: line-through;
  6732. }
  6733. & > thead > tr > th:first-child {
  6734. @include bidi-style(border-top-left-radius, 4px, border-top-right-radius, 0);
  6735. }
  6736. & > thead > tr > th:last-child {
  6737. @include bidi-style(border-top-right-radius, 4px, border-top-left-radius, 0);
  6738. }
  6739. & > tbody:last-child > tr:last-child > td:first-child,
  6740. & > tfoot:last-child > tr:last-child > td:first-child {
  6741. @include bidi-style(border-bottom-left-radius, 4px, border-bottom-right-radius, 0);
  6742. }
  6743. & > tbody:last-child > tr:last-child > td:last-child,
  6744. & > tfoot:last-child > tr:last-child > td:last-child {
  6745. @include bidi-style(border-bottom-right-radius, 4px, border-bottom-left-radius, 0);
  6746. }
  6747. p {
  6748. margin: 0;
  6749. }
  6750. .settings-list-action-cell {
  6751. @extend .u-clickable;
  6752. text-align: center;
  6753. color: hsl(198,19%,72%);
  6754. background: hsl(197,22%,96%);
  6755. line-height: 1;
  6756. padding-top: 11px;
  6757. padding-bottom: 9px;
  6758. &:hover {
  6759. color: hsl(60,1%,34%);
  6760. }
  6761. .icon {
  6762. fill: currentColor;
  6763. vertical-align: top;
  6764. margin-top: -2px;
  6765. }
  6766. }
  6767. .settings-list-controls {
  6768. padding: 0;
  6769. & > div {
  6770. display: flex;
  6771. min-height: 40px;
  6772. }
  6773. .settings-list-control {
  6774. display: flex;
  6775. align-items: center;
  6776. justify-content: center;
  6777. padding: 0 10px;
  6778. }
  6779. }
  6780. .settings-list-control-cell {
  6781. padding: 5px;
  6782. & ~ .settings-list-row-control {
  6783. padding-bottom: 7px;
  6784. }
  6785. }
  6786. }
  6787. .select-boxes {
  6788. display: flex;
  6789. align-items: flex-start;
  6790. }
  6791. .select-box {
  6792. display: flex;
  6793. flex-wrap: wrap;
  6794. margin: 0 14px;
  6795. background: white;
  6796. color: hsl(60,1%,34%);
  6797. @include bidi-style(border-right, 1px solid hsl(198,18%,86%), border-left, none);
  6798. border-bottom: 1px solid hsl(198,18%,86%);
  6799. border-radius: 3px 3px 0 0;
  6800. &.select-box--vertical .select-value {
  6801. flex-basis: 100%;
  6802. }
  6803. &.select-box--four .select-value {
  6804. flex-basis: 25%;
  6805. }
  6806. &.select-box--six .select-value {
  6807. flex-basis: calc(100%/6);
  6808. }
  6809. .select-box-header {
  6810. @extend label;
  6811. margin: 0;
  6812. color: inherit;
  6813. display: flex;
  6814. align-items: center;
  6815. padding: 8px 10px;
  6816. flex-basis: 100%;
  6817. white-space: nowrap;
  6818. background: hsl(197, 20%, 93%);
  6819. @include bidi-style(border-left, 1px solid hsl(198,18%,86%), border-right, none);
  6820. border-top: 1px solid hsl(198,18%,86%);
  6821. border-radius: 3px 3px 0 0;
  6822. }
  6823. .select-value {
  6824. display: flex;
  6825. align-items: center;
  6826. justify-content: center;
  6827. min-height: 34px;
  6828. background-clip: content-box;
  6829. box-shadow:
  6830. 1px 0 hsl(198,18%,86%) inset,
  6831. 0 1px hsl(198,18%,86%) inset;
  6832. @extend %clickable;
  6833. &.is-selected {
  6834. background-color: $highlight-color;
  6835. box-shadow: none;
  6836. color: white;
  6837. }
  6838. }
  6839. &:first-child {
  6840. @include bidi-style(margin-left, 0, margin-left, 14px);
  6841. }
  6842. &:last-child {
  6843. @include bidi-style(margin-right, 0, margin-left, 14px);
  6844. }
  6845. }
  6846. .searchableSelect {
  6847. position: relative;
  6848. .form-control {
  6849. padding-right: 37px;
  6850. @include bidi-style(padding-right, 37px, padding-left, 12px);
  6851. }
  6852. .searchableSelect-main {
  6853. position: relative;
  6854. line-height: 19px;
  6855. &.form-control--small ~ .searchableSelect-autocomplete {
  6856. top: 7px;
  6857. left: 9px;
  6858. }
  6859. }
  6860. .searchableSelect-shadow {
  6861. position: absolute;
  6862. left: -9999px;
  6863. }
  6864. .dropdown-menu {
  6865. margin-top: -3px;
  6866. max-width: 100%;
  6867. }
  6868. &-option-text {
  6869. flex: 1 1 0%;
  6870. text-overflow: ellipsis;
  6871. overflow: hidden;
  6872. white-space: nowrap;
  6873. display: block;
  6874. & + .icon {
  6875. @include bidi-style(margin-left, 10px, margin-right, 0);
  6876. }
  6877. }
  6878. &.dropdown li {
  6879. &:hover:not(.is-active) {
  6880. background: none;
  6881. }
  6882. &.is-hidden {
  6883. display: none;
  6884. }
  6885. }
  6886. li:not(.is-active):hover + li {
  6887. box-shadow: 0 1px rgba(255,255,255,.13) inset;
  6888. }
  6889. .searchableSelect-autocomplete {
  6890. position: absolute;
  6891. left: 13px;
  6892. top: 11px;
  6893. right: 37px;
  6894. white-space: nowrap;
  6895. overflow: hidden;
  6896. display: flex;
  6897. pointer-events: none;
  6898. white-space: pre;
  6899. line-height: 19px;
  6900. }
  6901. .searchableSelect-autocomplete-invisible {
  6902. color: transparent;
  6903. }
  6904. .searchableSelect-autocomplete-visible {
  6905. color: hsl(0,0%,33%);
  6906. background: hsl(201,61%,90%);
  6907. }
  6908. .loading.icon {
  6909. position: absolute;
  6910. right: 11px;
  6911. top: 11px;
  6912. display: none;
  6913. }
  6914. &.is-loading {
  6915. .loading.icon {
  6916. display: block;
  6917. }
  6918. .icon-arrow-down {
  6919. display: none;
  6920. }
  6921. }
  6922. }
  6923. .action {
  6924. background: white;
  6925. border: 1px solid hsl(199,44%,93%);
  6926. color: hsl(206,7%,28%);
  6927. box-shadow: 0 2px hsl(210,7%,94%);
  6928. display: flex;
  6929. flex-wrap: wrap;
  6930. padding: 10px;
  6931. margin-bottom: 17px;
  6932. &.is-inactive {
  6933. background: none;
  6934. box-shadow: none;
  6935. position: relative;
  6936. top: 2px;
  6937. border-color: hsl(199,44%,94%);
  6938. & > *:not(.action-controls) {
  6939. opacity: 0.33;
  6940. }
  6941. }
  6942. .action-flow {
  6943. display: flex;
  6944. flex-wrap: wrap;
  6945. &.action-flow--noWrap {
  6946. flex-wrap: nowrap;
  6947. }
  6948. &.action-flow--row {
  6949. flex-basis: 100%;
  6950. }
  6951. }
  6952. .action-separator {
  6953. width: 1px;
  6954. background: hsl(0,0%,97%);
  6955. margin: 0 10px;
  6956. }
  6957. .table {
  6958. margin-left: -9px;
  6959. margin-right: -9px;
  6960. }
  6961. h2 {
  6962. margin-bottom: 0;
  6963. .action-form-status .icon {
  6964. margin-top: 0;
  6965. }
  6966. }
  6967. .action-block,
  6968. .action-controls,
  6969. .action-row {
  6970. padding: 10px;
  6971. h2:first-child,
  6972. h3:first-child {
  6973. margin-top: 0;
  6974. }
  6975. }
  6976. .action-block {
  6977. &.action-block--flex {
  6978. flex: 1;
  6979. }
  6980. }
  6981. .action-row {
  6982. flex-basis: 100%;
  6983. }
  6984. h3 {
  6985. color: hsl(0,0%,60%);
  6986. margin-top: 0;
  6987. }
  6988. .action-label {
  6989. background: hsl(197,20%,93%);
  6990. border: 1px solid hsl(197,20%,88%);
  6991. align-self: flex-start;
  6992. padding: 5px 10px;
  6993. margin: -4px -25px -5px auto;
  6994. @include rtl(margin, -4px auto -5px -25px);
  6995. color: hsl(197,16%,65%);
  6996. cursor: default;
  6997. }
  6998. .action-flow-icon {
  6999. width: 15px;
  7000. height: 24px;
  7001. margin-top: 16px; /* compensate for h3 height */
  7002. margin-left: 20px;
  7003. margin-right: 20px;
  7004. fill: hsl(198,17%,89%);
  7005. }
  7006. .action-controls {
  7007. display: flex;
  7008. @include bidi-style(margin-left, auto, margin-right, 0);
  7009. align-self: flex-end;
  7010. .btn {
  7011. align-self: center;
  7012. }
  7013. }
  7014. }
  7015. /*
  7016. datepicker resets some css it potentially inherits when its rendered inside a table
  7017. */
  7018. .datepicker {
  7019. background: hsl(234,10%,19%);
  7020. color: white;
  7021. padding: 0 14px 11px;
  7022. position: absolute;
  7023. min-width: 0;
  7024. cursor: default;
  7025. &.datepicker-rtl {
  7026. left: auto;
  7027. right: 0;
  7028. }
  7029. .datepicker-switch {
  7030. padding: 12px 0;
  7031. font-weight: bold;
  7032. font-size: 15px;
  7033. text-align: center;
  7034. letter-spacing: 0;
  7035. line-height: 1.5;
  7036. text-transform: none;
  7037. @extend %clickable;
  7038. &:hover {
  7039. background: hsl(240,10%,14%);
  7040. }
  7041. }
  7042. th {
  7043. background: none;
  7044. }
  7045. th, td {
  7046. border: none;
  7047. }
  7048. .next,
  7049. .prev {
  7050. padding: 12px 9px 0;
  7051. vertical-align: top;
  7052. text-align: center;
  7053. @extend %clickable;
  7054. .icon {
  7055. margin-top: 4px;
  7056. fill: white;
  7057. opacity: 1;
  7058. }
  7059. &:hover {
  7060. background: hsl(240,10%,14%);
  7061. }
  7062. }
  7063. .dow {
  7064. text-transform: uppercase;
  7065. font-size: 12px;
  7066. padding: 5px 5px 0;
  7067. text-align: center;
  7068. }
  7069. .day {
  7070. width: 27px;
  7071. height: 26px;
  7072. border-radius: 14px;
  7073. padding: 1px 0 0 !important;
  7074. }
  7075. .month,
  7076. .year {
  7077. float: left;
  7078. width: 23%;
  7079. margin: 1%;
  7080. padding: 5px 0;
  7081. }
  7082. .day, .month, .year {
  7083. text-align: center;
  7084. font-size: 15px;
  7085. &:not(.disabled) {
  7086. @extend %clickable;
  7087. }
  7088. &.disabled,
  7089. &.old,
  7090. &.new {
  7091. color: hsl(0,0%,33%);
  7092. }
  7093. &.today {
  7094. background: hsl(240,10%,4%);
  7095. }
  7096. &.focused {
  7097. box-shadow: 0 0 0 1px hsl(207,82%,64%) inset;
  7098. }
  7099. &.active {
  7100. color: white;
  7101. background: hsl(207,82%,64%);
  7102. }
  7103. }
  7104. .today {
  7105. text-align: center;
  7106. padding: 2px 0 0;
  7107. @extend %clickable;
  7108. &.hidden {
  7109. display: none;
  7110. }
  7111. }
  7112. }
  7113. #notify {
  7114. position: absolute;
  7115. top: 10px;
  7116. left: 0;
  7117. right: 0;
  7118. @extend .zIndex-10;
  7119. pointer-events: none;
  7120. .noty_bar {
  7121. max-width: 500px;
  7122. text-align: center;
  7123. margin: 0 auto 10px;
  7124. .noty_message {
  7125. pointer-events: auto;
  7126. display: inline-block;
  7127. background: rgba(0,0,0,.75);
  7128. padding: 10px 15px 8px;
  7129. border-radius: 3px;
  7130. color: white;
  7131. }
  7132. .icon {
  7133. vertical-align: middle;
  7134. margin-top: -3px;
  7135. @include bidi-style(margin-right, 5px, margin-left, 0);
  7136. }
  7137. a {
  7138. color: inherit;
  7139. text-decoration: none;
  7140. }
  7141. }
  7142. }
  7143. .animated {
  7144. animation-duration: 300ms;
  7145. animation-fill-mode: both;
  7146. }
  7147. .fadeInDown {
  7148. animation-name: fadeInDown;
  7149. }
  7150. @keyframes fadeInDown {
  7151. from {
  7152. opacity: 0;
  7153. transform: translate3d(0, -50%, 0);
  7154. }
  7155. to {
  7156. opacity: 1;
  7157. transform: none;
  7158. }
  7159. }
  7160. .fadeOutDown {
  7161. animation-name: fadeOutDown;
  7162. }
  7163. @keyframes fadeOutDown {
  7164. from {
  7165. opacity: 1;
  7166. }
  7167. to {
  7168. opacity: 0;
  7169. transform: translate3d(0, 50%, 0);
  7170. }
  7171. }
  7172. .loading-placeholder {
  7173. display: flex;
  7174. align-items: center;
  7175. justify-content: center;
  7176. height: 133px;
  7177. .loading-text {
  7178. @include bidi-style(margin-left, 10px, margin-right, 0);
  7179. }
  7180. }
  7181. .chat {
  7182. background: white;
  7183. flex: 1;
  7184. display: flex;
  7185. flex-direction: column;
  7186. padding: 0 14px;
  7187. .page-header {
  7188. margin: 15px 6px 5px;
  7189. }
  7190. }
  7191. .chat-workspace {
  7192. display: flex;
  7193. flex-wrap: wrap;
  7194. padding: 0 0 10px;
  7195. margin: 0 -4px;
  7196. flex: 1;
  7197. }
  7198. .chat-window {
  7199. flex: 0 1 0;
  7200. overflow: hidden;
  7201. display: flex;
  7202. flex-direction: column;
  7203. color: hsl(0,0%,33%);
  7204. transition: all 500ms;
  7205. transform: scale(0);
  7206. &.is-open {
  7207. flex: 1 0 25%;
  7208. transform: scale(1);
  7209. padding: 10px;
  7210. }
  7211. &.is-offline {
  7212. .chat-controls {
  7213. opacity: 0.5;
  7214. }
  7215. }
  7216. }
  7217. .chat-header {
  7218. background: hsl(210,8%,95%);
  7219. border: 1px solid hsl(0,0%,91%);
  7220. border-radius: 3px 3px 0 0;
  7221. height: 43px;
  7222. line-height: 13px;
  7223. flex-shrink: 0;
  7224. display: flex;
  7225. justify-content: space-between;
  7226. align-items: center;
  7227. }
  7228. .chat-name {
  7229. margin: 0 2px;
  7230. overflow: hidden;
  7231. text-overflow: ellipsis;
  7232. white-space: nowrap;
  7233. .status-badge {
  7234. @include bidi-style(margin-left, 2px, margin-right, 0);
  7235. vertical-align: middle;
  7236. height: 100%;
  7237. }
  7238. }
  7239. .chat-status {
  7240. @include bidi-style(margin-left, 10px, margin-right, 0);
  7241. &[data-status='online'] .icon {
  7242. fill: $supergood-color;
  7243. }
  7244. &[data-status='offline'] .icon {
  7245. fill: $superbad-color;
  7246. }
  7247. .icon-status-modified-inner-circle,
  7248. .icon-status-modified-outer-circle {
  7249. display: none;
  7250. }
  7251. &.is-modified {
  7252. .icon-status {
  7253. display: none;
  7254. }
  7255. .icon-status-modified-inner-circle,
  7256. .icon-status-modified-outer-circle {
  7257. display: block;
  7258. }
  7259. }
  7260. }
  7261. .chat-status-holder {
  7262. position: relative;
  7263. }
  7264. .chat-disconnect,
  7265. .chat-close {
  7266. @extend %clickable;
  7267. padding: 10px;
  7268. .btn {
  7269. min-width: 80px;
  7270. justify-content: center;
  7271. }
  7272. }
  7273. .chat-disconnect.is-hidden,
  7274. .chat-close.is-hidden {
  7275. display: none;
  7276. }
  7277. .chat-scroll-hint {
  7278. background: hsl(210,8%,98%);
  7279. display: flex;
  7280. align-items: center;
  7281. border: 1px solid hsl(0,0%,91%);
  7282. border-top: none;
  7283. padding: 7px 10px 6px;
  7284. color: hsl(0,0%,60%);
  7285. @extend %clickable;
  7286. &.is-hidden {
  7287. display: none;
  7288. }
  7289. .icon {
  7290. fill: hsl(210,5%,78%);
  7291. @include bidi-style(margin-right, 8px, margin-left, 0);
  7292. }
  7293. }
  7294. .chat-body-holder {
  7295. flex: 1;
  7296. background: hsl(210,17%,98%);
  7297. font-size: 13px;
  7298. line-height: 18px;
  7299. overflow: auto;
  7300. @include bidi-style(border-right, 1px solid hsl(0,0%,91%), border-left, none);
  7301. border-left: 1px solid hsl(0,0%,91%);
  7302. position: relative;
  7303. }
  7304. .chat-body-holder--standalone {
  7305. border-top: 1px solid hsl(0,0%,91%);
  7306. border-bottom: 1px solid hsl(0,0%,91%);
  7307. }
  7308. .chat-body {
  7309. padding: 10px;
  7310. display: flex;
  7311. flex-direction: column;
  7312. align-items: flex-start;
  7313. position: absolute;
  7314. width: 100%;
  7315. top: 0;
  7316. left: 0;
  7317. }
  7318. .chat-timestamp,
  7319. .chat-notice-message {
  7320. font-size: 12px;
  7321. color: hsl(10,5%,78%);
  7322. margin-bottom: 4px;
  7323. align-self: center;
  7324. }
  7325. .chat-timestamp-label {
  7326. font-weight: 500;
  7327. }
  7328. .chat-message {
  7329. max-width: 90%;
  7330. background: white;
  7331. padding: 6px 12px;
  7332. border-radius: 16px;
  7333. margin-bottom: 4px;
  7334. }
  7335. .chat-message--customer.chat-message--new {
  7336. font-weight: bold;
  7337. }
  7338. .chat-message--agent {
  7339. @include bidi-style(margin-left, auto, margin-right, 0);
  7340. background: hsl(199,44%,93%);
  7341. align-self: flex-end;
  7342. }
  7343. .chat-message--agent + .chat-message--customer,
  7344. .chat-message--customer + .chat-message--agent {
  7345. margin-top: 10px;
  7346. }
  7347. .chat-status-message {
  7348. align-self: center;
  7349. background: hsl(197,18%,92%);
  7350. padding: 6px 12px;
  7351. margin: 4px 0 10px;
  7352. border-radius: 3px;
  7353. }
  7354. .chat-loader {
  7355. @include bidi-style(margin-right, -4px, margin-left, 0);
  7356. .icon {
  7357. width: 12px;
  7358. height: 12px;
  7359. fill: hsl(0,0%,90%);
  7360. @include bidi-style(margin-left, -4px, margin-right, 0);
  7361. vertical-align: middle;
  7362. animation: ease-in-out load-fade 600ms infinite alternate;
  7363. }
  7364. .icon + .icon {
  7365. animation-delay: .13s;
  7366. }
  7367. .icon + .icon + .icon {
  7368. animation-delay: .26s;
  7369. }
  7370. }
  7371. @keyframes load-fade {
  7372. from { opacity: .5; transform: scale(0.6); }
  7373. 67% { opacity: 1; transform: scale(1); }
  7374. }
  7375. .chat-footer {
  7376. border-top: 1px solid hsl(0,0%,93%);
  7377. padding: 10px 10px 0;
  7378. display: flex;
  7379. justify-content: center;
  7380. align-self: stretch;
  7381. margin: 0 -10px;
  7382. }
  7383. .chat-controls {
  7384. display: flex;
  7385. align-items: flex-start;
  7386. padding: 10px;
  7387. border: 1px solid hsl(0,0%,91%);
  7388. border-radius: 0 0 3px 3px;
  7389. flex-shrink: 0;
  7390. }
  7391. .chat-input {
  7392. @include bidi-style(margin-right, 10px, margin-left, 0);
  7393. flex-grow: 1;
  7394. position: relative;
  7395. .form-control {
  7396. overflow: auto;
  7397. max-height: 50vh;
  7398. }
  7399. }
  7400. .browser {
  7401. margin: 0 0 20px;
  7402. border: 1px solid hsl(0,0%,90%);
  7403. border-radius: 5px;
  7404. position: relative;
  7405. transition: 500ms;
  7406. width: 100%;
  7407. }
  7408. .browser-body {
  7409. position: relative;
  7410. overflow: hidden;
  7411. height: 450px;
  7412. width: 100%;
  7413. .browser-website {
  7414. position: relative;
  7415. height: 100%;
  7416. transform-origin: left top;
  7417. overflow: hidden;
  7418. &.is-picking {
  7419. cursor: image_url("/assets/images/eyedropper.gif") 0 15, auto;
  7420. }
  7421. }
  7422. img {
  7423. vertical-align: bottom;
  7424. }
  7425. }
  7426. .browser-head {
  7427. display: flex;
  7428. padding: 10px;
  7429. border-bottom: 1px solid hsl(0,0%,90%);
  7430. .browser-input {
  7431. position: relative;
  7432. flex: 1;
  7433. @include bidi-style(margin-right, 10px, margin-left, 0);
  7434. input {
  7435. min-width: 0;
  7436. @include bidi-style(padding-right, 40px, padding-left, 12px);
  7437. &.is-loading + .loading.icon {
  7438. display: block;
  7439. }
  7440. }
  7441. .loading.icon {
  7442. position: absolute;
  7443. @include bidi-style(right, 11px, left, auto);
  7444. top: 10px;
  7445. display: none;
  7446. }
  7447. }
  7448. .help-block {
  7449. margin-bottom: -3px;
  7450. }
  7451. .browser-control {
  7452. width: 39px;
  7453. display: flex;
  7454. align-items: center;
  7455. justify-content: center;
  7456. fill: hsl(202,8%,28%);
  7457. @extend %clickable;
  7458. }
  7459. }
  7460. .chat-demo {
  7461. .zammad-chat {
  7462. position: absolute;
  7463. transform-origin: right bottom;
  7464. transition: 500ms;
  7465. user-select: none;
  7466. will-change: transform;
  7467. &.is-fullscreen {
  7468. right: 0;
  7469. width: 100%;
  7470. height: 100%;
  7471. border-radius: 0 !important;
  7472. .zammad-chat-header {
  7473. border-radius: 0 !important;
  7474. box-shadow:
  7475. 0 -1px rgba(0,0,0,.1),
  7476. 0 -1px rgba(0,0,0,.1) inset,
  7477. 0 1px 1px rgba(0,0,0,.13);
  7478. }
  7479. .zammad-chat-controls {
  7480. border-radius: 0 0 5px 5px;
  7481. }
  7482. }
  7483. &.no-transition {
  7484. transition: none;
  7485. }
  7486. .zammad-chat-welcome {
  7487. display: block !important;
  7488. }
  7489. .zammad-chat-header-icon-open {
  7490. display: inline !important;
  7491. }
  7492. .zammad-chat-agent-status,
  7493. .zammad-chat-header-icon-close,
  7494. .zammad-chat-agent {
  7495. display: none !important;
  7496. }
  7497. &.is-open {
  7498. .zammad-chat-agent {
  7499. display: block !important;
  7500. }
  7501. .zammad-chat-header-icon-close,
  7502. .zammad-chat-agent-status {
  7503. display: inline-block !important;
  7504. }
  7505. .zammad-chat-welcome,
  7506. .zammad-chat-header-icon-open {
  7507. display: none !important;
  7508. }
  7509. }
  7510. &.is-fullscreen {
  7511. height: 100%;
  7512. .zammad-chat-controls {
  7513. border-radius: 0 0 5px 5px;
  7514. }
  7515. }
  7516. }
  7517. .zammad-chat-header {
  7518. pointer-events: auto;
  7519. }
  7520. .chat-demo-animationHolder {
  7521. position: absolute;
  7522. bottom: 0;
  7523. left: 0;
  7524. width: 100%;
  7525. height: 100%;
  7526. animation: slide-up 500ms;
  7527. pointer-events: none;
  7528. }
  7529. }
  7530. @keyframes slide-up {
  7531. from { transform: translateY(100%); }
  7532. }
  7533. .select-tabs {
  7534. display: flex;
  7535. border: 1px solid hsla(206,100%,3%,0.08);
  7536. border-radius: 3px;
  7537. .tab {
  7538. height: 39px;
  7539. padding-top: 11px;
  7540. &.is-selected {
  7541. background: linear-gradient(hsla(202,50%,20%,0.1), hsla(202,50%,20%,.03));
  7542. }
  7543. }
  7544. }
  7545. .todo {
  7546. position: relative;
  7547. display: block;
  7548. .icon {
  7549. fill: hsl(0,0%,80%);
  7550. vertical-align: middle;
  7551. margin: -2px 3px 0 0;
  7552. }
  7553. &.is-done .icon {
  7554. fill: $supergood-color;
  7555. }
  7556. }
  7557. .columnSelect {
  7558. height: 234px;
  7559. display: flex;
  7560. padding: 0;
  7561. line-height: 22px;
  7562. .columnSelect-shadow {
  7563. display: none;
  7564. }
  7565. .columnSelect-column--selected {
  7566. flex: 1 1 66%;
  7567. overflow: auto;
  7568. padding: 7px;
  7569. }
  7570. .columnSelect-column--sidebar {
  7571. flex-basis: 33%;
  7572. flex-shrink: 1;
  7573. border-left: 1px solid hsl(198,4%,90%);
  7574. background: hsl(198,4%,96%);
  7575. display: flex;
  7576. flex-direction: column;
  7577. min-width: 0;
  7578. .columnSelect-option:hover {
  7579. background: hsl(198,4%,91%);
  7580. }
  7581. }
  7582. .columnSelect-pool {
  7583. flex: 1 1 auto;
  7584. overflow: auto;
  7585. padding: 7px;
  7586. }
  7587. .columnSelect-option {
  7588. @extend %clickable;
  7589. padding: 0 5px;
  7590. border-radius: 1px;
  7591. overflow: hidden;
  7592. white-space: nowrap;
  7593. text-overflow: ellipsis;
  7594. &:hover {
  7595. background: hsl(198,4%,96%);
  7596. }
  7597. }
  7598. .is-hidden,
  7599. .is-filtered {
  7600. display: none;
  7601. }
  7602. }
  7603. .columnSelect-search {
  7604. position: relative;
  7605. .icon {
  7606. fill: hsl(198,4%,85%);
  7607. }
  7608. .icon-magnifier {
  7609. left: 7px;
  7610. top: 5px;
  7611. position: absolute;
  7612. }
  7613. .columnSelect-search-clear {
  7614. position: absolute;
  7615. right: 0;
  7616. top: 0;
  7617. padding: 5px 7px;
  7618. @extend %clickable;
  7619. line-height: 1;
  7620. }
  7621. input {
  7622. width: 100%;
  7623. padding: 2px 30px 1px;
  7624. border: none;
  7625. outline: none;
  7626. border-bottom: 1px solid hsl(198,4%,90%);
  7627. background: none;
  7628. }
  7629. }
  7630. .pulsate-animation {
  7631. animation: pulsate 667ms ease-in-out infinite alternate;
  7632. }
  7633. .richtext-content {
  7634. &[contenteditable] {
  7635. &,
  7636. &:hover,
  7637. &:focus {
  7638. background: none;
  7639. }
  7640. }
  7641. table,
  7642. pre,
  7643. blockquote {
  7644. margin-bottom: 16px;
  7645. }
  7646. & > p,
  7647. & > table,
  7648. & > pre,
  7649. & > blockquote {
  7650. &:first-child {
  7651. margin-top: 6px;
  7652. }
  7653. &:last-child {
  7654. margin-bottom: 6px;
  7655. }
  7656. }
  7657. table {
  7658. table-layout: auto;
  7659. display: block;
  7660. width: 100%;
  7661. overflow: auto;
  7662. word-break: break-all;
  7663. col {
  7664. width: auto;
  7665. }
  7666. }
  7667. blockquote {
  7668. padding: 8px 12px;
  7669. border-left: 5px solid #eee;
  7670. }
  7671. code {
  7672. border: none;
  7673. background: hsl(0,0%,97%);
  7674. white-space: pre-wrap;
  7675. }
  7676. pre {
  7677. padding: 12px 15px;
  7678. font-size: 13px;
  7679. line-height: 1.45;
  7680. background: hsl(0,0%,97%);
  7681. white-space: pre-wrap;
  7682. border-radius: 3px;
  7683. border: none;
  7684. overflow: auto;
  7685. }
  7686. hr {
  7687. margin-top: 6px;
  7688. margin-bottom: 6px;
  7689. border: 0;
  7690. border-top: 1px solid #dfdfdf;
  7691. }
  7692. }
  7693. .detail-search-header {
  7694. margin: 20px 0 32px;
  7695. }
  7696. .batch-overlay {
  7697. @extend .fit, .zIndex-1;
  7698. color: white;
  7699. text-transform: uppercase;
  7700. text-align: center;
  7701. letter-spacing: 0.07em;
  7702. font-size: 0.95em;
  7703. line-height: 1.3;
  7704. display: none;
  7705. will-change: display;
  7706. cursor: grabbing;
  7707. overflow: hidden;
  7708. user-select: none;
  7709. &.is-visible {
  7710. display: block;
  7711. }
  7712. &-backdrop {
  7713. @extend .fit;
  7714. background: hsla(231,20%,8%,.8);
  7715. opacity: 0;
  7716. will-change: opacity;
  7717. }
  7718. &-circle {
  7719. margin: 35px auto;
  7720. background: hsl(207,7%,29%);
  7721. border-radius: 100%;
  7722. border: 4px solid white;
  7723. width: 140px;
  7724. height: 140px;
  7725. padding: 20px 0;
  7726. display: flex;
  7727. flex-direction: column;
  7728. justify-content: space-around;
  7729. align-items: center;
  7730. position: absolute;
  7731. left: 0;
  7732. right: 0;
  7733. will-change: transform, opacity;
  7734. visibility: hidden;
  7735. &--top {
  7736. top: 0;
  7737. }
  7738. &--bottom {
  7739. bottom: 0;
  7740. }
  7741. .icon {
  7742. fill: currentColor;
  7743. opacity: 1;
  7744. }
  7745. &-label {
  7746. width: 50%;
  7747. margin: 10px 0;
  7748. }
  7749. }
  7750. &-cancel {
  7751. background: hsla(0,0%,100%,.21);
  7752. background-clip: padding-box;
  7753. border: 2px dashed hsla(0,0%,100%,.3);
  7754. border-radius: 8px;
  7755. padding: 28px;
  7756. margin: auto 200px;
  7757. position: absolute;
  7758. left: 0;
  7759. right: 0;
  7760. max-height: 100px;
  7761. visibility: hidden;
  7762. will-change: opacity;
  7763. display: flex;
  7764. justify-content: center;
  7765. align-items: center;
  7766. }
  7767. &-box {
  7768. background: hsl(232,9%,17%);
  7769. width: 100%;
  7770. position: absolute;
  7771. visibility: hidden;
  7772. will-change: opacity, transition;
  7773. &-inner {
  7774. margin: 37px 25px;
  7775. display: flex;
  7776. flex-wrap: wrap;
  7777. justify-content: center;
  7778. overflow: hidden;
  7779. }
  7780. }
  7781. &-assign {
  7782. padding-bottom: 50px;
  7783. bottom: -50px; // extra space for bounce animation
  7784. .batch-overlay-box-inner {
  7785. max-height: 310px;
  7786. @media screen and (min-height: 1000px) {
  7787. max-height: 465px;
  7788. }
  7789. }
  7790. &-group {
  7791. box-shadow: 0 0 35px hsla(0,0%,0%,.5);
  7792. .batch-overlay-box-inner {
  7793. margin-top: 42px;
  7794. margin-bottom: 10px;
  7795. }
  7796. &-name {
  7797. position: absolute;
  7798. left: 0;
  7799. right: 0;
  7800. top: 0;
  7801. padding: 11px 13px 8px;
  7802. line-height: 1;
  7803. position: absolute;
  7804. background: hsl(233,10%,15%);
  7805. }
  7806. }
  7807. &-entry {
  7808. padding: 13px;
  7809. width: 116px;
  7810. height: 155px;
  7811. &.is-hovered {
  7812. .avatar {
  7813. border-color: $highlight-color;
  7814. transform: scale(1.05);
  7815. }
  7816. }
  7817. .avatar {
  7818. border: 4px solid hsl(231,5%,30%);
  7819. margin-bottom: 10px;
  7820. box-sizing: content-box;
  7821. transition: transform 120ms;
  7822. cursor: inherit;
  7823. z-index: 1;
  7824. }
  7825. &-name {
  7826. max-height: 34px;
  7827. overflow: hidden;
  7828. display: -webkit-box;
  7829. -webkit-box-orient: vertical;
  7830. -webkit-line-clamp: 2;
  7831. overflow: hidden;
  7832. word-break: break-word;
  7833. }
  7834. &-detail {
  7835. color: gray;
  7836. }
  7837. }
  7838. }
  7839. &-macro {
  7840. padding-top: 50px;
  7841. top: -50px; // extra space for bounce animation
  7842. .batch-overlay-box-inner {
  7843. max-height: 146px;
  7844. margin: 24px 12px;
  7845. @media screen and (min-height: 800px) {
  7846. max-height: 292px;
  7847. }
  7848. }
  7849. &-entry {
  7850. margin: 13px;
  7851. border: 4px solid hsl(231,5%,30%);
  7852. background: hsl(233,9%,24%);
  7853. border-radius: 100%;
  7854. height: 120px;
  7855. width: 120px;
  7856. padding: 13px 13px 10px;
  7857. display: flex;
  7858. align-items: center;
  7859. justify-content: center;
  7860. font-size: 0.9em;
  7861. &.is-hovered {
  7862. border-color: $highlight-color;
  7863. transform: scale(1.05);
  7864. }
  7865. }
  7866. }
  7867. }
  7868. .batch-dragger {
  7869. position: absolute;
  7870. left: 0;
  7871. top: 0;
  7872. pointer-events: none;
  7873. width: 250px;
  7874. height: 40px;
  7875. will-change: transform;
  7876. &-item {
  7877. position: absolute;
  7878. left: 0;
  7879. width: 100%;
  7880. background: hsl(200,100%,91%);
  7881. border-radius: 4px;
  7882. display: flex;
  7883. align-items: center;
  7884. padding: 11px 0 9px 11px;
  7885. box-shadow: 0 0 10px hsla(0,0%,0%,.28);
  7886. will-change: transform;
  7887. a {
  7888. color: inherit;
  7889. }
  7890. td {
  7891. display: block;
  7892. padding: 0 12px;
  7893. white-space: nowrap;
  7894. text-overflow: ellipsis;
  7895. overflow: hidden;
  7896. flex-shrink: 0;
  7897. &:nth-child(3) {
  7898. flex-shrink: 1;
  7899. }
  7900. &:nth-child(n+4) {
  7901. display: none;
  7902. }
  7903. }
  7904. }
  7905. &-counter {
  7906. position: absolute;
  7907. right: -8px;
  7908. bottom: -8px;
  7909. width: 25px;
  7910. height: 25px;
  7911. border-radius: 99px;
  7912. z-index: 1;
  7913. color: white;
  7914. background: $highlight-color;
  7915. display: flex;
  7916. align-items: center;
  7917. justify-content: center;
  7918. box-shadow: 0 0 10px hsla(0,0%,0%,.28);
  7919. will-change: transform;
  7920. &:empty {
  7921. display: none;
  7922. }
  7923. }
  7924. }
  7925. /*
  7926. ----------------
  7927. layout classes
  7928. ----------------
  7929. */
  7930. .horizontal,
  7931. .vertical,
  7932. .centered {
  7933. display: flex;
  7934. }
  7935. .horizontal.hide,
  7936. .vertical.hide,
  7937. .centered.hide {
  7938. display: none;
  7939. }
  7940. .horizontal {
  7941. flex-direction: row;
  7942. }
  7943. .horizontal.reverse {
  7944. flex-direction: row-reverse;
  7945. }
  7946. .vertical {
  7947. flex-direction: column;
  7948. }
  7949. .vertical.reverse {
  7950. flex-direction: column-reverse;
  7951. }
  7952. .vertical.stretch > *,
  7953. .horizontal.stretch > * {
  7954. flex: 1;
  7955. }
  7956. .relative {
  7957. position: relative;
  7958. }
  7959. .fit {
  7960. position: absolute;
  7961. top: 0;
  7962. left: 0;
  7963. bottom: 0;
  7964. right: 0;
  7965. }
  7966. body.fit {
  7967. margin: 0;
  7968. }
  7969. .scrollable {
  7970. overflow: auto;
  7971. }
  7972. .flex {
  7973. flex: 1;
  7974. }
  7975. /*
  7976. Firefox minimum content bugfix
  7977. https://github.com/philipwalton/flexbugs#1-minimum-content-sizing-of-flex-items-not-honored
  7978. "By default, flex items won’t shrink below their minimum
  7979. content size (the length of the longest word or fixed-size element).
  7980. To change this, set the min-width or min-height property."
  7981. */
  7982. .flex-shrink-horizontal {
  7983. min-width: 0;
  7984. }
  7985. .flex-full {
  7986. flex: 1 1 100%;
  7987. }
  7988. .flex-auto {
  7989. flex: 1 1 auto;
  7990. }
  7991. .flex-shrink {
  7992. flex: 0 1 auto;
  7993. }
  7994. .flex-none {
  7995. flex: none;
  7996. }
  7997. .flex-1 {
  7998. flex: 1;
  7999. }
  8000. .flex-2 {
  8001. flex: 2;
  8002. }
  8003. .flex-3 {
  8004. flex: 3;
  8005. }
  8006. .justify-start {
  8007. justify-content: flex-start;
  8008. }
  8009. .justified {
  8010. justify-content: center;
  8011. }
  8012. .justify-end {
  8013. justify-content: flex-end;
  8014. }
  8015. .justify-between {
  8016. justify-content: space-between;
  8017. }
  8018. .start {
  8019. align-items: flex-start;
  8020. }
  8021. .center {
  8022. align-items: center;
  8023. }
  8024. .baseline {
  8025. align-items: baseline;
  8026. }
  8027. .centered {
  8028. align-items: center;
  8029. justify-content: center;
  8030. }
  8031. .end {
  8032. align-items: flex-end;
  8033. }
  8034. .self-start {
  8035. align-self: start;
  8036. }
  8037. .self-end {
  8038. align-self: end;
  8039. }
  8040. .span-width {
  8041. flex-basis: 100%;
  8042. }
  8043. .two-columns,
  8044. .three-columns,
  8045. .wrap {
  8046. flex-wrap: wrap;
  8047. }
  8048. .two-columns > .column {
  8049. width: 50%;
  8050. }
  8051. .three-columns > .column {
  8052. width: 33.33%;
  8053. }
  8054. .align-left {
  8055. @include bidi-style(margin-right, auto, margin-left, 0);
  8056. }
  8057. .align-right {
  8058. @include bidi-style(margin-left, auto, margin-right, 0);
  8059. }
  8060. .space-left {
  8061. @include bidi-style(margin-left, 10px, margin-right, 0);
  8062. }
  8063. .space-right {
  8064. @include bidi-style(margin-right, 10px, margin-left, 0);
  8065. }
  8066. .align-center {
  8067. margin-left: auto;
  8068. margin-right: auto;
  8069. }
  8070. .half-spacer {
  8071. width: 5px;
  8072. height: 5px;
  8073. }
  8074. .spacer {
  8075. width: 10px;
  8076. height: 10px;
  8077. }
  8078. .double-spacer {
  8079. width: 20px;
  8080. height: 20px;
  8081. }
  8082. .flex-spacer {
  8083. flex: 1;
  8084. }
  8085. span.is-disabled {
  8086. cursor: not-allowed;
  8087. opacity: 0.5;
  8088. }