From 21bebe77feb9265b06d65e1e941cf7c73c4d90c1 Mon Sep 17 00:00:00 2001 From: Mark Otto Date: Mon, 30 Jan 2012 20:50:51 -0800 Subject: [PATCH] refactor buttons.less --- docs/assets/bootstrap.zip | Bin 52285 -> 52308 bytes docs/assets/css/bootstrap.css | 172 +++++++++--------- docs/assets/css/docs.css | 2 +- docs/index.html | 263 ++++++++++++++-------------- docs/templates/pages/index.mustache | 263 ++++++++++++++-------------- less/buttons.less | 229 +++++++++++++----------- 6 files changed, 470 insertions(+), 459 deletions(-) diff --git a/docs/assets/bootstrap.zip b/docs/assets/bootstrap.zip index fed424c466b0989ec97b311e8d524ccd83a357f5..930c0193771388436ce2fdf0d88dea3bec6f7bf6 100644 GIT binary patch delta 25229 zcmZ^qV{j&4_@-xK+s4G2*tTukHs2%@+qR82b~3ST+qQRp|NXFATeV%)U3K(y_uW-} zo^#iAy3#-w(m>%9q(Q-8e*AaHmBhmllcG9P$fN%|T|Hob`~-Xc`Qrx|+P}vCyIW#_ zJzl&GG&S1)zw3WPp#DYV6Y#psA0&v+r2+gG_`ebVPvA>m>%@Jwgq`Ov^iDUKl}-9` z$%utQy#2J*)wcEUm2?JfLVBYiN5OEFaBHa~s*1{W)X!~9d6aYs|DuX9H+`4nb+Vu7 z;RB?o&_wYb&rg6Zm@SBJwdKoVTcGm|Ury+KT=DGz|03WxR`%7w;txmE-p+Nb={m-w z?oH}^jQO{D8;x8l31UrYr$ykC0vLeDocl@q5XuVgZl?M8-Tj(?knlL&KW%xkze7q$ zckA<5|Lftn=W{vN+)@3m2Q&3y@l~ z5A23@TRru4YlGct_-h5Fl~Zx2GJz(B)G5kIatSzY=i7o*6un{bV{UsZXf_G_=&4Oz^5@XYYKw|~ z_wDM?1ABd2bCSE(yl>zev0l1*bvN_!`a&{UZoZO2Z*3^y;hk`ERb_{GsM@+_0H?9U z$OZ6^Bp_6|ul^ptVqRLPDilm74sFwEaqm0y!q7Z^Q@W#XL(C``;}~+UgI6mr%cHzh zxcNyp0``+81U|AV!xSCYt_rt7n)uxxleoO)G5r=}YJRUw3S(4T&3a3mmO@SQ@K(?S zzX7pfn8_Z|cl}Jsv(Sg44wnsxhS|A0jtanaJkDs)&ovw7GPkiG-%S48FKSU&!@H`W}2@2n@0e37PzFn1^Qm$*J&>NqGVV3 z*Q!@}6R)8{yr;+9=DW(PohRD^5hlOJ;pzwPDII{oPlG7YeX zW^=M5vLrg3P#j_8wtS?-{P$RkrJf3A^;O42)@|*!8RI~dAtOoS>ne{@(V`Rd$yD)> zeAD(bfW4~>4|8?z*PMxZL(0tocY{T@#(V{n=@>18n=9#1oYe<$5Pq#VYvQ82nlcU6 z@2xlD0&!LXLm3wl_oY|yVW>^>VIaT==i(87w)h@M3JIX889eXElWv9mT1nCz9N^{F z#afqb8wT}p{4#)_wxB}|Zf`^E)(Rt>9a_B-ubGj5l`+2>j8))snkjqutyAmH9rFv# zc)Q&_cZ=dg2J&~ z(w{Yrn{yN4lUbCE4H#x>a3^GDOC&4}N^wnW4Jl@7AS)W_np6hH@E(vhHWO9o2Ba{8 z1UsZ4ll2f$B8=x8Ta23Js(FCGbr+q{^54K=5j3H=v>%$nal!B?48#&fe`t{y%Hb0R zkW4K96oqY~{|sEwT_=(rxEg}c+%18%O=I0-Cs}i!XPgi*ZLX~`MF^?Q5ULlEk|0W@ zwk&Yb(vT2?Z|+7UhrQs5P#UF}2m-jGcxhTMpFt9dhLJLeFrV;YUna(R%*Z#$e(T*wol!Z#c=XCpnv-~35&M{#A03|th1H9@PWYPOzh5MJC4Ww(6sG~$S=Xkxa zCVXrPT|K?b-YOKJ8;GvnFi!7e>o7&YG42BiW07XpSu2xFWo=qh>@ASuS58w>)=fPS zE2a`mXE_s6i(K<_pCKGdJwd`BiBoGJcY~ z@mi5ot|VKn=TmR$dRHGUCko_OV@asg9y%pR%QD+v2l4>iQ`1|Td89Ub@1WS&tOi&F zdUou<-btD3u}$49#sHt$TMTv#w#vB#8#)-`#y4XnRNBocnAwc{dfJN_&32>B>kx<^ z(T(Z6g;@t$b`%i$hiwZLR^LYoDo)G+*O^}~)$1Ve(zm$93X~!l8CWWsR zShWg`sRMuyVBS%xM-A8jWx?`q4_r?JnnHUw8Ch(^io_(zn@9fr-%^2qkX^$5TH>V- zpK5B$?6gX#c!M>DkPV_lF?J3M9p?e+)_^BAY|d?P7qM*vBbjnp^1+Kzb$-kFa9@(fQBF)-@QtnwPDlUW1J^KcisGxzVu?7mZ3KF zT>#tD>QCZWfs(1OfvSfniiQ^fSs+NgbBj?AuCi{%8lzEH zs2`mo`4gXJn@RE>-$d};4_2pS%WeL>_Ozd#-d1f7bGT{X?jgaRoyI(c-H;pXalhKH zRb}zl2=Pm)kxvbA-=5O0=F6KNt$t9f0XF^CKyxfvxg`;?0ECpb zUmk{DiJJL9Za0|d6Q=h2fZ0iRtyrZupe@6g(WbmnQF2eQxf1X@#nJUmm6dm+C^w}+~fPvTKbj` z8x+gIC^Cu1WPFBSbJJY~qZ%ADe5cY(MvO1kPQNDOM5v&c4nfWlz+=M6pOqMidw+s# zx?-7olDO>8X+h{3cwr>FZ*U zbH%k;HE|x1L$qP7|1A5x;`OBBdl9S=4g1?Bp=RJ)mmMgvl>fn^9L@g3h_qBnuklg> z^|MU@lum7I28qDqh1G$Q>h{aAQ_a@124?AmI(Yd9TdJL|5L(~qRiZf53=N=r4$(9R z^DXVKlV&>X>~Tl76f06kxfgwWUDDp~TT5SN4+*AosaZX?zUKhiSsqlycOaKOrU8ED z2~OD0I)W1wF-Wg645G5K5G!YvKNlnKTy^pFiN3 zt!`2%?4E*+ln%e^4)JP|PNM*j&l&@nF!NJt8$qhwl1j6%gK?~IY~35!jgt>Co27aB zIf1(TKVQ{k77ynptFArzFJ&hGO7TZD>kqpNHtKAH-x`f_8$_o_&bMF5RZ%T*VWR49 z@x_TL`XLvTY~x+FVSYHzuS$-uYRMQRSr&SSsMT?)PsxbY^3F%y&*?FQIxAMM#%n4U zNk>jxx!XOAl1=b4b-a6lnQu@9m8D71`9mWK`XjOpzzD7ooeCxD!{Gs*L8^MRS!|C3 z7OH|=Fa=zUF!4{+>*}EBkn)2gX96!W`S=BcP%w#iVvy`hXTKijz@wazeDN1D)gU_=8dcX9)Cn2w5fPT5zUo`%O~K zg`9YeULzMUpeZ74+Az#9op$-$K-XJYr zq1{{QrV8rt?AfwwrumjQHSAoqDY`M9*Cel@)!W$xb04`&wtwO6ks%Rn4h_|^TmO10Ib1ne9tn?Mzg=G zMnCVuP37li(RJ45EMwaIb8!ct??Cvviq3Kw+C$VBV-*2i3pm6b%b{D6d~yxr%fnz_ z?Vd=a-ktwF;gh7DvQ8sB(dc&#hdPid?UL8}VCQZCz|1L=Zys$)--R^CGS!+!Dx1?W&J%KAT*i8`+!B0XW*?YSf%L(>m$lJzZ2@%3$hsh z92p6R^INo^-k?d6os6O*Cx(Z7@3uSSKh+YnD&Bc&Tq-YosIFFb_{?ROFia%-c>rfj z{+m}6^ZJc={+UKKvE;$Bj{($`*}PUl!N?et)1QuTa)TOm$SJr~;lErJi2C zbg>7^ys?dbwBGBuva}k|W^9W+7UKH4FpSaU6ZAp+xa!ol;@Al7hKacpT!im_Bbzcc zNnKvNo?|=IWFBebYJwacVt38y*_EQkg7tFXinMvLw@1dZGZ^WU@uu!eF4(m#V{!P}C(?DC0A2m#oLM6#FB)L<_(`|Hm&ssq zBBN+n^|Zx>V@7{fwzb5=98ifPIq$u5Rhy=_ZDB~{2L}P#x!3*N0oC8>wgX10hbgI?3j01Z zT2mgPMe$y9>^+K7+Mdz~Mz9K5TA}xhkuE`z)e_3vz>KDM;{%c$AkXrONITCxp=gLR z3VBX(efS*3C46GiFUQP|ZGEX;Tj>UMSSjBzmb$4rNhPU&29c9Mym|{*fkc)1((Ak# znC@RxPEg<|krLr`lXDWLMenAMB^e2%U7w$Mp{W}|EP_Ulim&EX?rPi=VfGlY)6Lu}v-E?2a{+ukRio(1XIb8|!(@_tM@UxKsY``2y?K5;dmRtq%IGi)BF0s? zs;wl5zn@e&!fX08+e;xz0>7*XnR_e!iRdv;4L^m$8r5%U!^lmofK&`ytP)a<(zk}{ zrhs9aAd?WOp{UO#Cxgb@JtR3*lkUax1$HQNeJ^;pa$6+1+jzR5bYHeIOQ=p=Rc~|U zVk@MQ_7SeKQj`kKl_CI6z8TUIePx95)%N$MLiM~!Y3Gye3^o3r@yb||-^+O+f*!*c zyDCvL^sOAM=?IiqKvT4{ycpyHG*Mj28^ERU?xA`)mI`I2`II?w@jy>-Z6h4P;ojEt z&W^HGh!_FZt<>gDAJJnbA3P45XVnqPO9=C79zq0{eNAWiv@V4rCL>&$rZzuMS@|uU z6JjPEk|4OxcH3@bGqGhK`)QgA>tHKV(w+c8rwD}`#sOD~HP%-l!h`?<_LFpWC*UV$ zevvaWh@lGT&I2D@$^NdTd!fRIgMWtiep6M%uFgizcB<-lb`$W-XQW%Ptw%rTu3h_> z{B@dRjaILpfCXpj0XJA(dZ8butYKkaJ0b9lCc$CY?!b%^8CNCjmFa$d8|QDRhuK@n(3BL{}RK1~R0z zo=jf()T_VGa@~JZU;p^KDS_-^4dcZgH$^0WCJ+}c{;kuO7Hjwvt3i#Zy#}~VDH=wz z9CcqSI-T`|Oe>%V^(-&?iWkHdpJNOx?flbw7MuGx2R`jFYIvLo!#SO2)j}HPoG38d z5Bas(vgvgW3i&5(qf|@mp!ub8Z09}Cn+Kh}qn&Sv$j5WQIK;Psb4%bCw@6Qxg#+hx zR8)(Epq9Xa&3R<7^$9g8d?a9JFS?~lZhbvI`j}@!*G)hk(bC)^R<2{U`lVhWQjCw? zCBUS9Etbt7;X-5@RdvbzR#CUG#ktD+f&nG=tE4r$CFHr2xZV7%=rDT&QGJ+r(E$MHYDcJwf!t7cncN9WHabtji7$Pt0?x_Vi|)R=76nl!kl@yQJkP z)J_3+$?t+K&)Ae7wt3XuQP6Wi#Rx5_6;?_JNwhF>VQOrvnc^D-E^Xqkl62Hl$EoP< zY|9*X^*=XIcjlWR>l|RvAM|(Xg<(u(Dn`qQpq0cF96)NS02Xriy$>;^TW5c^&tAd2 zy&?H!{(%%)-v@lpYW_N^G#UkL8`voX0JFMvL<>nVB*r4r{$QjU$%HvBBBx7S-tp)x zP757LvPjtL&_N%U_)*@!1HO9zyJVlb{8g;q)@{~j(p~n)x`6x*(}qvf>nrK?k1uQ0 zhh=v`$FXRWQ84K*ewf>9o@RRs+VhRrr4v>W%rMK2Pjt9HGsLR(VeuDmL(G3&JWviX ziKTetf8rN&=USD(Knnc~!q2L%iub~`d>*e4V%pXGp_To|W0wtqoxam;nlfwLB*}|< z=$FGLw=QKmCIY~266SnA;wItLf<(&Gb+?Vz2y;9@MfM{% zcU11ZSP;BeSMH*HHisG3^cHcKc^VE1N%}d%wuYi3nhpR^u&x>yNpUNnBC;AU9f_uU zFhP62QAcmbw-sP-)gWF{?kw^GFL3a|i1z}1P}v)IgX_P8fIcK{ye6=8HIa5aA*;X| zswuyb)-;y^qXI@Qb!3>ahe_^4KRF{=A~7e%aR6>T;z!jmaT_uZ)vsn38IC9kT$img zrP!6%zyL@@jJ>FI-=am-Mky*s;2%$fyqO0!9n6yN^mt|pA0Zz*^Flz&KxxwYP449 zvy+M(6q}mM^-pmmzG$#%3M;KOZdv~Y{~G#84h<-!)&2J%tKdjz$*nXM?BVYcOFDae z2%qE|m?-X=6=YWlp^AI-g6}<=-8#Xe_8J>hxI(4y)3aR2;T=*081Abw7|a42hJEx> z9fwxfB_*xW?|tC8=A(S8GAVA@))~GlN0FwTxwMz0w-gc`MP)_0id~Xx;=rSXC&zy; z3+Rq(99N>VOy!A6aD!g^)(v$;`A(s5HxkTCfRMFM4*8{9f&klYLp%W)=d4f`IYl1c zfECsj<8mz^(Xy`Eo=tl^?vYAs{6riL6vdHExsQKAJTsKw!6ew{u+eS+bq!7hfPh;!JW*0jvh!>d z>(?g^@nS-p>zMcLz`D}4>H6nzF#2%bMeoPsV*qEFi5oL)n;I`SXXz#oqHoRp5w|cmxXMAJ~+7W z^yxS0G`}i*54?iwPe7xiN^eF@P4gK@bep;S`@SudjLO_NPa%laGBoUF_}B96XU=*J zGbYm=QD4fUd~0S^f#-|GE#6R`{ZGhCdQq$o4yxY3q(A*5z+Wt?S&1>5SVSI0@#3C? zD3c_*-QrEs0C+G~IN3io>Ggw>4nPrhvP#FI5}%M;ARYmOG~nAqGlqcS3OMnvjK?6Y zpV%rEJ%Cpf%&i$tF0D* zU9`1}>sxOl0N(3=ZoNZN!{Alz$Y3B2?WuQuClg_GMRz+#uiit6*yD6-U(WHFf}FDF zc+n-Yi>EaO$b=7y?T>6#gNu1t&x-TFWysxzKD9K-%`9-Ta@$DIL2mg~uT9uVU}=$v zdo6CY4JG=V%qMr+9T}Z=rTx5Rp`XR5y|U~D_g$1c%s=|Dq+rM5f@&#DQVHYQwdQk2 ztl_Yo-LxBY;GrG#5MRpbzn+fU#Rkt%W*bQ&&x_&#xHlzHbYA-2yN=Q~o-^MZuwDkH zM|D6xI0?2>mM1s+z0i^4=PZ%qHU!9e9yb7Afh!j&Z22{Mn;g#S^Bx=;AXKT8(WHb9 zZVpF2Y3Z)(Bot-cOyygBG6Q5mkE(qh;94NBZoK!h@z>>;Ni7{lU9m{XHP}TT?VcJY z=c*|H+?CJ%0t2mndw?qmI7G?cFFp=;xRWGnQz>R2{IQ?|Y4`U-V&0$Gz~>mzK;eZ; z@A-(a=d+aJ^Nc*`KiT_3UJ8+fvek&i&jad<3=1+X{3+($;t( z)3=HQWm6cvgAxxP-sMkpN7d}>w;-4A+brAwdtRxF4%=E28n^=f_g`++*Ls(A=S9|X zj5TZj%+*k(Mf5eo&dFvS`3_%XNJ%nD6AW^rD4y-V?RwBjs>G#pzaM6$Jn)UF3!{o24k1z+! z9L$oPOY()d6!EW8^=?CR2-ZGdah_g+#EcEV`o|Gjh6yfPWAYI^!tbgydOA=lC+VO` zXbg~3jK&-tRpY`x(a@*k-w4Zz_Vd}DgC(P|~ zn)3u_C;KY%mE`IdByR4O%CjvLvA|Mhm1uO_cE*mP8s6%xnAFh@eq*-+f1LP3&&M!D z{E+s`9Hhac+L2TFijJi46ne3Oi}ls!va?}<%mWfh2vu-N5~0fZg$ogblGYvLKme~f z1#j2{?d@lkuy}!o30v{i4ahuzF-E8?kF(6H>^>WVskd(l=*T)%KUFOGfy0b98qCYp zrAAInJJk%NGgWU^7Kxe@75w~uBZ;mr!!Y+)XpiQJ@E@%eEy_%K$MUQU(kfKM<$`Ts zj)R*0Lhy2I4anXYq#_-rQ6&89fbUSC(7e|BaODX^Iq=fJ)r%Zu#nJ<0#*2g#iywPM zb9=4aa{c9S8yHlyUcmBQ4;~MQ)$H$n>?%LUjaB|I_A=h6*7@=8s|>HbxHcPi!Iz2aYa#j(db^^wf2_`a(_iK zg>Hrx_l@A|4o;gq@5TdOP&Y!!L@)Vh%eM~rcoJAs-*5hB!W!|_NU`cbj3iw1eZhqK zL)tQnsnV-BuisZ+j@M?C!Kc{R57Q$B-cw&^jovmJ_lE+|8LL^T!$H27{iQplI z?_Y})miuMj!+N9LA>`n_QeEb3WallWqbf$*i0xFb~ zUTKCAPCz;^f(3K!6IH#|ItEM8tax%ZJkTN-)ygY(>@>;^t`29p%7n#x3q_4U&oZ^# z>g>bu?x&q+-4qIrLVPUQNIHWW&*D}z(8E!Ng;;@uE+(~nAjcRUgG32dd-8^UZ2Zd@ z)dLYk7QGd&VOu;LpD`;bEGw!*+_kCw@1V#sLT@_Tg3f1Glo}0blVkQ| z>Dw2Pq$}{?f^O_gGB-0ieGaadHehwumP8M@sb+ggUD7y+_WBt-5#Hi;13OA8Z`iEI zj~JEt8&fp+o1E&Ptkg1m@MYVCZY@21HSOeN7g5Xn03t8)Ao5Fa6q&BCK8iEEX%ASx zG2W~%jlpe!h)ypjzo+>o1;HwT4Q*zXRX*+%^z-!PZ$*`B*e{^OP0OBEXE$tnP{&TJ zY`Us@U$7(yO##)j#Ea{|hGM`K)hi)t#yFZ>NV^WbBTjUuLoicxfkjldaN7}1Ng#8X zJ*F39S7gG%Jk9v4wje3Fc1Pf!@TNi zYZo?ozUGgZzZuT!F-E$~;#pZ;`D7Pk3-P@H8XV#X)>7cYc_q*2*HLwp;Jine!Lct^ z$VoW)!--LFw#dZ<@9&!`qC!b_#o&!9xH)hr(}d==?{_9fedtJ4NVkyFocCQ3i$B~c zM7msl+t_8j(@jIm1M`48Y~7^Ct2utNk;s*&K>Bv$KRG6R&++6yqjm=}6k)rV*qxyLf^rBr$#2R5RH^BvsY0&UscC z0Z#q7dyZ?4g{kW030gmyP@0{eq9+XiVu6$2tS%Ie1{A&ejp7aMs<8RwCZ%V~%MzP= zWJVF(k~9&Qw|m6Pkub8=kwkN7n%&kl!*q@O>Py+&mYt{3qGNwI?(~y54|$R6Q8{@L z&N)7`^^B1nHOLm%_v&JdC$U3a(cWZR8PG$M{RTwte!n53_S8QA<(;G-v2+UnnAKU!DAPzp5-f+nrPaL=$#0bsGehn7wn(!a z!6dAj?hJ){-h(%$0cPtJ{DQv%Yy)4M=n$e|u|NshVGl+291B4I&6vGIGTmz>Y$IjI z8$=#GZ_I}8@bC~YwIN$hhbxaYcpQ(&WRJ(Zcjrlo1W^Ig9ww?E!08_VrXIc!@0jrQ zZrt|NV=jTG4WG!9N_)k%STVf-+*)g4y1r}9tO0D&uK8ktDcRfZs#;7bZKg8gZ1cql z^#0-=F!Yjq)EpQzVUnzKXLUzVCrjbG5m#H!p*R}Ugcc-o!!Z3f@yM3<#GTRYdx*p+wEPq!xeW;W#HNRv?MFEqC37SwW^5#?KbrF_qIFBaZsiq zgyt39aEVq&ERoO<<@VTPR~Pj4{xJ;qIq=3Oe>-=-a;o8FO1}<}y|~WDORXDq7Y)>ko z80at4nNdrjsdG?5&Q$2N&~9hbUPn`P^Pk4+fH4W|sB80(W{%mMZ8d_FE7Q_KlCU)j zK)S~WZbj1a0k8qiz!LVTXiEw=yvOiN3{x_4f&Ham%gJ!bS%e`YxwaZjE zD-&NQSbAu;Svj=0{TYZqqaiL46%eS)S+quK`9k>R3=LJ5XW~sT4Kf6#2m($D>n@*s zM{$NwGTh>pj_kBl3gUs@^C`qN+oMOJRfTgO#{|L-t@r@SEmijR)^Bv&ts1hyo^H!S zTOV)3*F9T%)dYhr2gjYEDxk_f(pE<;*R_4TJ6g8-%$LceH< zE)8Jpu-otbmdg-~?dyr#u4MH2dn`EGz`!-@2m2xQk1`AjtT5TOQ==?9&8 zVszV7IM=>m5jPI240U)sBNo>`-><@FPk-3zu{LK9}f5e=5%t{`1-fT>tyIZ)=@a?q-XM9+4 z{l2ORB7|D89avDq^8`_PjxYSq%iJH{+wUHY85H#ZXRRtqZylatJ8V^iN z6#hH=s)!u{5RsVkV680Ym2hS&=e4il%yk+q)C2uoob}MiPT(|$$^$njmF`p+opmsj zzo{_8Y)|6K#IdYC@ECF9o&>h$9N%_JfJ?9PP_o+UP5mIIRS)g#Q);YHRA|yL*%k`0 zNUQ3%Wz;MZ-;+nOlvE6FEbvN{h&7oco7v7sHPlX*d{Zc293%(Nh^83*Vq5! z{e@ehC_C;B!W|WBM9A zmnzQdM{lZi+2>Vr&eB^(|HVLtmK^Q@HS1E1y3N>TYANutv}s+zzK`jc;j@ca#`AurXi&sZFQ!EbE?gf z>WQT<{~VeU4@pJY+lVt+Wx&Tj>qPnEe^OqHh}2>&<<0{`iwJe&i}B`>RL-w)yl>N( z?+NOA&!vHdo;!G}*c#d9b&F78WCZz}Q#Z_`;4q?|Rl8C`=GcMU-+j^%R)Oj&_8B|> z45o~o;r#8OcOleH+Qp0=GDKli9zuh8Gk496)YZ@Ni!W2R?+dGc>u)E={IAnsczm~BJAle;q2jH41^@R=|q?4_j*cjILpw>$}HpG}@ z+O%Az;G@_HAoA`3)-8DSJaMV<{*N53$O3NMFFX~zx<;LAYZSLDEJOj~1;m!9Nl^;1 z#2^my`0Z;@At9pklnMSPFtf40=R^h$86&y(OGtGoG*7=^3OkU%!=bg}_V^@~jb|Hh z$QiGZtVY$~i{)J%RZKi?H~q3ru~GD{kZ-xhNnAW}=W2ohI|5vNzyHYTnO*a(YE+mrmVC zQQ~m*{I%fqgd_mD(ZyV-HPqxGKoQ<)Uud9#y2`gWTYXe1sI>YGRQ#@}r6`%5QC4o* zGz6n1AQ`sR{jIcfF)pt<3%ttF_29qP8XGniLa6M>4hUKhz^ji{et{&|HA*-lwifYrR|?c$jAWr|LkG7 z^wo{sX9J#i`vw0NjGKtMTns&|9YUDe!`r#=UGe2Y#2kUZ1d_G5l4!@!%1;lZefzyq zsm6L9F6O1XxE!%1z zAac?10-%7_+K}y70Zg`I^ZPF9>aK;vrH_69sK|;_h6GHZW8!9@aU>otKQO)O2Ya zNBLU_rw8@*M~l>Z@&-x_KCOxvAqb^YJl1tHr8jM+nszkUu^R5%MlvoMjeSsAIKPSc z#y9b?_yT%0+ZZCLugh%D5wj9I!FAXo5+%HlCS49V6Hc{$$CLvSOvYILqxj$aoG?FP z)H^fAN|bDs?$)CdYH|l>n1>*6$2z^wJ_;E#o>uFt`0VsPyUMmO@kn3H9qIIB+piOQ zSWVSr=~qwxRxBlXbHJdIr#Wzl(xecXc-;Gv_z^U(Ua9|s-Ck8pF9s1YPco&T`xmWR zypg1ej}z_k69Df79J1>9;1e*EIAom-C4NemS!#nh)^TyFRr66ifQEng{`~l!bF(>V z^?a1=(4ffU?a?BQsG=aFX)Y^n2@C@5=do_GF1@`5e-1O-hC2&B6qDEj(h-}JG5FnkL_BT+iU92vzNlNE$V1YvE z-vpA)B6M2n2nyz@{;GpBA&@H9dZh;Ovcv);(;*J$U?$WgYzBoRJX7-42{h9wZb&F`GR0vd|q>jI=5x--X+NErGz?2-Bz7@ zLYUUXtwS3={i?sJI3@oYW=^A+v;T<66=dg41I#1H;g?6hsBw4O~Y;X#H&(ymm5=GXPQXkC7BX`U#DnDzw?0%s1X4OP^TXWqC( z)h5$I;aoZb-6LtE1E{^PO1_BTmZ}K!$9}xHAka@#h>S;+vBQ~M-$^yBxjNO@SPSM2 z15iIu^mAbbdy&ww7=rnDL=uI0IDaMf`#4EZga#WPQC`?i$_UuxLU9*RwLbRJb!5=3 z#Z(g;)!+_P!4G0lpTXJ_%x^pfIFz>*(i(0xi-R1+up3F;yo+}yhJ2csrd1QR2=DNmv? zGEx##ID3xHIOilQs_vvFJ1_p{OD#v#QD4vB8~feZvewmCEmbE1m6U>)5C5ZynY7>F z<3y3|v!wT3c%Wnu$I#jIo&w zP5#JI^+aReiuB;-KiU>T!u!yT+luj<35SP|z}=95H5talOEk^(nv%|(`|d2B4CM|e z>8Fk*F7S%@u+N&-u6~?YfM+eN#w47e&i*Jv30H8L&=??``ofKyyUBCIj6XP0;FCRa zZW&=~(sFB(ZtFIw6cqQT@~k}WlF|M9L;2_wqCA{!yKTh9a`a0oyepfS##7Yib~EAh z#FOP|y8lnGGIya&R3XD0W;0R8zTJ#_Gb_%NiRbN=h?F$iT?`UtKxZ1GnG2rAe#T0B zd&$oR3||{fk)fj`M$-6@AGIpYbkt4Ul}{X#vTK-3CD4`eX~Cktoe^YBYZXsa9XRJ0 zzm4-pr0Yx4#^{Xi(gf*ZN$raNj-7m^J&!Y~f(w`Vcn6oiI7-Y#Qev%))l8dY4mcs( zt%qv8j}~wT z?d-&Y7i#?2+oSPaCvxK^7XgfC-3&Bpk8(=m%Bv|u5(}0UaaWbr9m``gSQg@6afgqI zEOPJF9&r|a!;1ufr5(JVQXEhv7Tytv`YYf^Ahan36=Er(v{5LDhWui&WP@jI8)IbgF!tk8QVeb}8| zvQ%f@?WTWidy}VFPU&;l*&xEZS-Q5C{T*zfzM9A>01AUPTKVNNY>PB9Z3?F5gz(h+ymC4VDu8!0=g5Gn1$?-k54Mr1~Hed3Br zW&iyMyqGuH0uD_`SFCb`p?`R~%p$Ak({Y{TQG-7wiz{RCyY0ABXoO1=^?{*41`HUu z<}we10gezr-ezd@GQpH&h+L6Q5Xw@?1Hj4a9FR_8Mrq0E83T&{^d{i2-qpdOYH&ii zm|J0>E~oXb2@2#k(9x2M6!xXYP>GxJeb*YfZ~GR-aLy7>D@Et_RpF<4Bh%rJSnF@@7FYDjQ$=Q~(QHKGm8 zA2l8G@{iSwG!b8g_i5IxqdI-}>5yK2`Y=2424=yjB@VSwO$|~ZnoZPYFHx9dN?Ba# z0~SFu;hM#_?Ruznve;?VSY$V6jAcz;#c;rS_iZ|I%p>%*|Dj_`T(ZrhYy8b~uD}>xW9fhQ!ISB-HzC&W(y?q_+ozt2>~y$UuUhy= z&!eZp@&Z*#>}?E@c-oI57p=NoQY2#m4B3*gzq74l7*)~i8tAvxd3Zw{$Uc5=#itZS ziY9o8uQ9EgjaPdYmHWu2B=$W=vw~(2*k<%CS&Tow|7I`lIQQ(`msS37qst^Qx2|~B zR6QEvnwtvUXmRRVE2doOoWk0t$0MSeb?hmqdtMuFv_U=Ctx6&A)(H%53Ah)l*#|dMps92f+Ig;s z(?8UZu0_l4R%n%{K+oZ`zq6DBp0$KMvZrxG*il%^c*KX}`fF^T=X!HIHS8-qVammm zmZ&t83E+Nd>z(XVd9KkTT7?-?r(I6HiZltyo4RQ`#59Qh`U#2Vn0w@&l8Z^mRzG=o zI{})5pZ(goj-2$^DK6)*W8u%moyDY#|IdfPBaH!OAyqR=7b67orCUb#c3I1fnk1 zcU9fLin^6{9G`Cgp!gvGH0Rbm|0`);)$R2xS`;^If-%c>RbIM-R9y=(>Q} zF}uPt64HLE!*&FKSVX2JgfSO;-6kOO8T@Z!j_;bvOA)YZ1^v~EXN?=O_A zirlERdb6%e?WNKq`}GYu-neqOryuGlHTgfGS9L>rP*nE-x=(u?F@{VP6)V%`KIm~> z#}~$iKN3sKa!;iIdJPp94O)wZ+{-5wA&s9^%(|yFVvmP+QhoN%4@tQ1IerPxGI%Ke ztFNyNh@;!KY@DDWXmEFz;1+_r1$TG1AcX~YhXiPx;Gqd_fdrQj+}*u_;4tvL_hxeM zotZz?KTfS$d+pO*r_QO>`^;K3|IQsR{B8*Swi73!hUUd%tyJag{$Uy{Kc8Y{Kw}uM z?wf${sIh&$51wWUNkG~o_%IAyyeng)hXdGNZMK8(xUwZ)h($W2(35t`+JELF?##sI zD~I_!(Iblo$A=n)0LLd!L`SmreV|7N?bKLt1?`j^#i4NXB{rogc|};`ODqW!#afg1 zoW39o*;UlmrZriC^7w7I@MZ-}oo`lBQ|lI0DnEG?zp>wEh=vA6Qz#|P$B3XgYoU|nyCdN10lrWnTy4RC+G zom~6^{(+RsTLvE(k5eHXCP z;9){S_E$)91g^ToqleN+cf<{c9~c1r6#Pb;r+>N$kWV)nD745mh-5X5bp?8QytP(k zVZ#XciMmj6qlL79!du1=ci}57nT*UEU9C4Oun6;+*?#3_uhg-&)1my*7indHAW8uR zGQfc&u~2VtzXMW;d9baGw(~A&)Cs?labrRYo#-4}+XI#;(H7D$%G6rfoz(%WCh4b7 zL(%Mv-@};?P+7v*jby$U7h&I(ZO@QF><;BsEJ3u93#hx+8$o>KB6vc-SGJ3EA+&ex z4EpP0C{$7}y+*VBQeW8^pM+?H>$9@#_^0wC)}$z)4Oh;c1u0h6ZE3+qxhzdjUeFU4 z`kTtFop7vS>%7|i@JE(a>KdrT^5PbTjahBT#H9E}v@Fm#NbS?!<&2RARY68PsrR%o zWa!6ZhaeCmt7TyYw@&O~nZdUW#z`jod?fgOCQMt6Oq5!!58I)w`-{^#NXwgJyeW@{ zg{c~TUZ#ul427c$%QKt(XRE2gN}q(vGPk@5&k-%d7up1Gp#j(98fzfMn2Nh05B!eM z3uD>OPFO*OQjx-EuAq=G{;R##$*dz|H*ix(6o2PBZAjGNZWg*$$7CZB^x}#W5!`z) z)Nl=Wcotg=y-lQe>mMA~saG;1M}*A*@MYf+F^b8OFaT)$!@kE7dS z<9-$VoMjT3ok@fCc?6lAMMLYAQ9#=?-S4f856crGBxUefKcKtu6Iap(#L97&!%BpF{?R=BI5kko#Z%V5-jRfc#}Onpt6ya{c}`IObNimB4mRJ$Vz?#MypNl{idsc*mnFG^-FAQv~ zcKqM;4E<&_XE}f~c?@-!#5i6?-fp=|?Nv$Row7b+I|_zNf)7T`v_=dU1kG1{X}UwK zr?RcFU(0Q$g$m!1u9xnMiYRi>5suLICL1kq-2LNlUr5!%K6I*8Hx#V@l~O@uG0|(b zTKhSr&@9I6k2m9;nj=nLF+~Gd-9bx6LMTu@I==>=@zV)XCn|>H9dWG%s(5?K!xC~b# zgp94T;1TfgI>!uA%S&)Ee2LpH*@79mwwNw3WEwujb zJOnkc`d1M~UZirtjXUz$g?k>JEt6pj@lsd6`Qko%)FUM}bN=AE-gMayma|_DI+a*f zem@Q8T+cZANrbb^ksAGEMZyoRNY3k_NjY5r-rTQC!lf8AAy2gT6K$8pQZV5)l!Bgp zQXL9ZCQ9`(MG54+!eYCcKGK1I-55b&?$tx$4+mFS{$WCB&}^Ta_gU zb2Z`?fl-4H?aZr8GC{N)QS(}s%!q+qf3afc^{MMGAncj5}EC>|70^Tu}!APmh!`0gL+5~_{ zB|V?9Cq!_04Jy6AUQ(Dh=lSMiB@nQe)iWQ{Jw04#gK380OF4uZZj$~-^AGr#Rm+K~ zr_KP+4WcmB?>Ada=V&{dv-i1J0MqD`3#rav!(n87Tb?X!Mfmmgk##n^>q94QgOb`h zcQ*XJ=&Ay|Hw0I|2QUdc-yiF~NCfsN-p?qzb}Bb+Q$B`|4kQ~dPxR($h_>dy2XCbu z^FY>gJafmVME#AJua5VpkGjlX`)8tbP~pgwMZFXckB*lOoh+te5B|M*W~UCkiQHb- zdoZ&_%l&lob%^)z0(it^TLIixE@njs4AhPG`~~+>*4yO{0Vr!*-LMg$0Z2aZy@*oB zNU~UEzV5(Xdpv2hTeUO&4UhW5B5E%Xe*Tb*T{R4&Kf;GwVB6wPQ0DpUJEN?eyyyg? zT-OV;fqwr1>CJq5-cF4C8}HVal$q zH%YBGHd^+(TIp|-Y9^>Si-9~n0aJc5Rf_Rk2Ex&jtJ)t&1o?CC4bF^6b&}p_suLuu zof;x(VJ{p@RPN&Ao|)zvluu3V2b}II#!Jf0lSZe+U&jJXl|N?tc}ikw0rVGe;=;?qP$ z{R8>bn&K%v`$gTDpfPfE1^p1BZ<=5G#w@#Pc4@tMe}rHAHMETDwh(!R<}rO?aC@&x zY%;QBKr`>$itizm!wKMQ=I(~$*I--Nq-E1Ty_JZ(2dx^zToGB7I~(J#eiP=Ik<~Zs zX{h3RkxhEXGh;PbdiO)r>2zsJq(v!lTtsnXT$V~U(vB9!zlsbZQlfKvkv zen(_5O;*S;_1ogecmkkZxxLzkTHfN)TOo_ULsJ&DX06&*AP2Cjl1P!nUqbU4d6c0n7-?o z62rQ-=!XTtv`L|{;g*wnCMkF#QGFtbc_xYZFOt_!B%IGAs?Q|Jlbj0gjk052$!lkG z*CkBYXe()!X{pdCqfwltNGD_f;pNt(u&SGbx+sp>hhEq8{E7`N>})gP-W`Va+XWlv z7zFL~$Kk~X2`$>RaMFAiAw z>pjF^(-dD8(@={K%j+vj8xQ`q`lsG*B|E>$;(VMnjxlzT#eaZ|0Z669Eu3G{ zNL)Hd_9xjHc2O~Z=d-UK2G^Wf!{@1&E9i|wv$_;)DOMVQo%uDds$K`q%i95;Y;_*> zJDixe2AZ|Dpm?Zp_1T3G&_G4K`(P~~Jok}G#Pkgz!YO+YCA9j|IW@#)dI^b)mbOaC z{TR$fF-%E(<>_W}N0ngl0fOa_9+w;vd)%5v*4k)(cFgcLShuK=UYj_fdGmU){lx3G zYw<9;rFl`D%>A}&{t#8UfFzrZQyLS7m&$ybSxBODILbFFP@>Zk2$TGd7aU+Ioh61y z$gB1}2JLm(mIaRC0*msSR9{vq?+xsaKjATn%H`q8A-%a0q!CT}G?bPyitXU_UNX&_ zj>;8Y%NULER+(51*%l%}X_Qqgd*b`{nd@4w(zrj#D++q8rMW-O7~1JM`kB|JhM)@Y zV*5BR+gag4{U`ii10L3sSjjDpi(2gwJMHe6$9=B?J$s~A+c1CrUX_4}D^E=hob=|o zwbUG|dvfn3IJ1SOdZv@Z9;-c+)v^CJ%sk2Da_2GC!|}O!D+0|oz`nK`FgU&D2VWFt z^N#MYy$_aJ+Yq^&5(%DRd`Ei=YeT4<(;QHoy{ zv8w6O@JYlkv}m$L^V9ydKDS`NSJ2ri3-fPnNI}-_pz6f8Qt?ZAxvzhCi*DY6oifZz zp;h(}mT~Uw+A`J#5oQtP!+ObgmY0g=UoMl(M@}pwQ2`{UENA*2K7=lj?>m3|MaYZ^ zgI$IRz#Ie+SDfB0l_ zM0mBxq+W1a-AJ*BeaI*95q@!5|IU3FZu;)T>p-Kj3I{{K!vj7+I_E5bC2X95x8fiV z?DUpM2;enrjb_o@YR}}IqQ_4S#;1&hhf;1NP#ftYs%*3w2S&n}b4n37J(lK-v-c1* zKxxpM0TC~)QF^4K;~LJ64RFKYQG?EB$^DGwoSAKb`D}@=={Q0o#&zlxQs}eayipfI zyA`=AP`TfZxoV=+HHGoKubhhYLgMhUimP3Y1qk~k9U9a)QKe>objiNJvHsnq9`p5~ z098WFJkh2Z<(9J$g}^?EEQVg%z*Ke07*Nf8&%gH`?BAgLK50R2XK$+ycQZ;7D#KHP z#>9+v&y^Na#j1W5j+m)Q`GQcLbCs0{ z1qhxi9(UK%xKIZ(3nWs~f>OE^^8;($&ylms)RrUJwhs!M+m!K_y?fAq9%bv@_km3m*qIHhp2V|%`!sHpX=jj_%e6!C_S58Qq6gAI*gxmn&DQ~z8+e^$(RwZ=@>GUrv#J-60)32!H`XXF% zJ^m>j$YaW4PGVk!sj!O%=D%ZP-X7I5jvccz1=LJEjg$r}`lriF@dgy|5LXmja^aq0IGErw`D`iheq%qR9EZ#|P6qlVkXT8R&Z#B<9fMk(hme)bKFGqO9EVZ{~v+r)hw!r7qJCPWws<7hV?Yo6+56Ihi+T5JWPC9B%J z)A!hY)5=rb)YpNnmpq=pqUQ~9Qvvt-D=o7<=mpw?b82)v*mU5VzCvqtKqemyw<1|g z>0r5$_39eIUQoNQU*SbPWHLa3NhSV45op01mOiI;!zVJ&B^lgX-mrqZa)x$tn z9iZfn7!i%Qbuvo+G|90IPuwe5o{7X4tgKHOI$jdTmx1KULaX>9`Zjp$W=&#&nD$*} z2MW2-60ReH??VL6FJ02gh+~DxxnR^b=$)0}x9|ychOlN`b^?V8hhr1;mDIZDk$mY0 zT)n0kYwuJx^wWV00cC38zSr`{tGcTl*hw-gvvw%4v9yDiz&QhV#^H2Fr|^FJzR)Y z!Dsrm)_IHPzZMq7Lw@^$A75>syUPy1w%Nd)^^)!4=d5ycCY^`9Re%PcYhi@Ly1r_6 zKj%VJKO$pgZ0NxgbgbY^ldkjNSa{DCVQYt3Q1pE)?xUkL&RQ7qwJSe0IXSc+d3#lW zWtK{KyAld4CsrY)#V=qbOR12vo^Z%U1Q5#b>by(^@^Uu)TQGivozi0}N zARfX)_us5%sP&uHkDn)+bIXxn>D%hXZNq|Wc8tc@Grw`^`ME&YhW3Jhj5^oagH!T{~Sc zJ6Pwl%_d7Oo6r}OEFuMvJo$>wpYD$uH6LJG`kelBzaUUyB?M_S&|8SzfqOdcyZinG%s5^Z_Gj*1%A zOKCI66{rJCu;gh72B^M>4sv*O{Wy2r_DYVa4>Jtu|>8 zzztI3p_z;w*;GaBK3^d*$Z%c6ftyr6n?8i^~(XGrgo|X{B2k@~)$} zQw!JXG`mBCyRy3SjG`2V8fro>igB$1q~Kd{w>C;;Km3Z6rPJ3H5pdDCq*a{=02?3f z`>f%>Q0(t7^rTiBuI;yqYL1ubS|08P-W|Cm?OIVw&}0L2{xGgli4ydbf@`oRe9Ysvf@qz0B+^ zLtcb8yB|N(|ByE*BQ&$bi|rcKUvWV4Pu8-SZ|O!1+(4wjClqTvj9cVp4@|JXuwW!L z=vdw5KQx+4fe$>`8+ko>J=>7FX^2+)R&|Q@;zzOe!5Pm|U;0O~ae|OT_7hrjmV&|7 z#Ve;%Zv_xVw*)KZr@_L;C7=9mFKvx9xeUIja$3PFDmITBHNm@)U3=Pg1McClOi8Kx zhCgzhED-pn(i}8rEQLHdh&aJEcFS!ICH1@dzP?Y7Rd9shA@w>uXSVu9&o;{A+Wn_R zu+u>{t=Kn6+mWg6l?QcMF(DJARlSD{Oy$uga$!FVDH|yl^Dfd0Zwm#hWIuKGNba)E zN3fX@>!AP^p(_za=11$&K*1YqqpcC_YgZl*JrmGfK%ermg|Jm0Y82z|V93bHmu~tE zN1w5UWA@{20t7VQ3j-g&x_oY1iKN`ye0~l4UJ72KL*ZqtjS+M!mtTk}q~WEt4r3iB zCC4E@tuGpLSXwrzV`L;}sx&~1CGs1npWAow6b9Fu9Oq)byj!bG1X!CtgZ`r8PsZ`ag)0}4LO4;;IG5c7 zQmla@2{q#5-yHfhK#6=W`O}1!ZRK~KKQCH3hHCv~(lK(wmDSZ&{87vmp_Xjc+DUyMaAhj%U ze2s0fV#L>8;YSs)cUd;%cRs@*0RF@#2KWPk<;zZ6hE<f4`9N3M(x94U zO-_b|8>A{EnWiKBpohAM1r2u&F6EaRZ1o8dYxxm62p+o;Wnb-MTGco5fpTLI7Pgdk z4X?+h^}fCl6ibbIo@E5yTQ)SzzRz1)FA@mwl2XUze~Yw| zL1(}9m8_(Nc#lp`G>y(9_ZG3ryF7D$-0P9-U!35{BZfkl&mQot|{DitT& zS@QqW_E$N42*h#-`ME8~iRS-TD*u11=E?m|5}5y1`5r>#?ELci8nJ=G|Is!Z==x8a zVj?xw|HGU9w}9l7ME3uPaXfL299FqFxuKRD^EvjvwcXU#;XHHK^b)?g5`QlHZ|daa z?&j`l;>@P0fdGPg4))(l^sC6jz>>oK&n5v$eT39k;_vx3de;3k^PMbdSnMBFBy_x zKN0>D?Z5FoDFe0pm&0zn$|BgOscWX)`hi#KQmrQT_{qr{y#7b#i+@ zCdFUK|FaLmf94{_>F+GsI9UBhCZCm&JuBn<(A{hJ@<}`v2*mu~ywCZl37SYY8sPr- zZ2W@>EutG0J<4SAK|-o4aqYyv!?gXs_t-y-EL6i>zsNx# zswNQV^}l2%H#uRD0`;%FJS!tteo`i8?au;!`r6N`fIuYwg6XPFP8@ulyi$w&+#7%W Pn3Bnc2oRfkpY{JQJW9l4 delta 25440 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
    y|&0d>|3+6w7{ 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 diff --git a/docs/assets/css/bootstrap.css b/docs/assets/css/bootstrap.css index 8045e561d8..c377d6f976 100644 --- a/docs/assets/css/bootstrap.css +++ b/docs/assets/css/bootstrap.css @@ -1653,6 +1653,92 @@ table .span12 { filter: alpha(opacity=40); cursor: pointer; } +.btn { + display: inline-block; + padding: 4px 10px 4px; + font-size: 13px; + line-height: 18px; + color: #333333; + text-align: center; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + background-color: #fafafa; + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6)); + background-image: -webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: -moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6); + background-image: -ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: -o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0); + border: 1px solid #ccc; + border-bottom-color: #bbb; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + cursor: pointer; + *margin-left: .3em; +} +.btn:first-child { + *margin-left: 0; +} +.btn:hover { + color: #333333; + text-decoration: none; + background-color: #e6e6e6; + background-position: 0 -15px; + -webkit-transition: background-position 0.1s linear; + -moz-transition: background-position 0.1s linear; + -ms-transition: background-position 0.1s linear; + -o-transition: background-position 0.1s linear; + transition: background-position 0.1s linear; +} +.btn:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn.active, .btn:active { + background-image: none; + -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + background-color: #e6e6e6; + background-color: #d9d9d9 \9; + color: rgba(0, 0, 0, 0.5); + outline: 0; +} +.btn.disabled, .btn[disabled] { + cursor: default; + background-image: none; + background-color: #e6e6e6; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.btn.large { + padding: 9px 14px; + font-size: 15px; + line-height: normal; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; +} +.btn.large .icon { + margin-top: 1px; +} +.btn.small { + padding: 5px 9px; + font-size: 11px; + line-height: 16px; +} +.btn.small .icon { + margin-top: -1px; +} .btn.primary, .btn.primary:hover, .btn.warning, @@ -1793,92 +1879,6 @@ table .span12 { .btn.info:active, .btn.info.active { background-color: #24748c \9; } -.btn { - display: inline-block; - padding: 4px 10px 4px; - font-size: 13px; - line-height: 18px; - color: #333333; - text-align: center; - text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); - background-color: #fafafa; - background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6)); - background-image: -webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: -moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6); - background-image: -ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: -o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6); - background-repeat: no-repeat; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0); - border: 1px solid #ccc; - border-bottom-color: #bbb; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - cursor: pointer; - *margin-left: .3em; -} -.btn:first-child { - *margin-left: 0; -} -.btn:hover { - color: #333333; - text-decoration: none; - background-color: #e6e6e6; - background-position: 0 -15px; - -webkit-transition: background-position 0.1s linear; - -moz-transition: background-position 0.1s linear; - -ms-transition: background-position 0.1s linear; - -o-transition: background-position 0.1s linear; - transition: background-position 0.1s linear; -} -.btn:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} -.btn.active, .btn:active { - background-image: none; - -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); - -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); - background-color: #e6e6e6; - background-color: #d9d9d9 \9; - color: rgba(0, 0, 0, 0.5); - outline: 0; -} -.btn.disabled, .btn[disabled] { - cursor: default; - background-image: none; - background-color: #e6e6e6; - opacity: 0.65; - filter: alpha(opacity=65); - -webkit-box-shadow: none; - -moz-box-shadow: none; - box-shadow: none; -} -.btn.large { - padding: 9px 14px; - font-size: 15px; - line-height: normal; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - border-radius: 5px; -} -.btn.large .icon { - margin-top: 1px; -} -.btn.small { - padding: 5px 9px; - font-size: 11px; - line-height: 16px; -} -.btn.small .icon { - margin-top: -1px; -} button.btn, input[type="submit"].btn { *padding-top: 2px; *padding-bottom: 2px; diff --git a/docs/assets/css/docs.css b/docs/assets/css/docs.css index acbcc69412..026872a345 100644 --- a/docs/assets/css/docs.css +++ b/docs/assets/css/docs.css @@ -73,7 +73,7 @@ hr.soften { line-height: 36px; color: #333; } -.jumbotron .btn-large { +.jumbotron .btn { font-size: 20px; font-weight: normal; padding: 14px 24px; diff --git a/docs/index.html b/docs/index.html index a8fd8e31bd..66cc0ee48b 100644 --- a/docs/index.html +++ b/docs/index.html @@ -74,145 +74,142 @@
    -
    + +
    + - -
    -
    -

    Bootstrap, from Twitter

    -

    Simple and flexible HTML, CSS, and Javascript for popular user interface components and interactions.

    -

    - View project on GitHub - Download Bootstrap -

    -
    + +
    - -
    +
    -
    +
    +

    Designed for everyone, everywhere.

    + +
    +
    + +

    Built for and by nerds

    +

    Like you, we love building awesome products on the web. We love it so much, we decided to help people just like us do it easier, better, and faster. Bootstrap is built for you.

    +
    +
    + +

    For all skill levels

    +

    Bootstrap is designed to help people of all skill level—designer or developer, huge nerd or early beginner. Use it as a complete kit or use to start something more complex.

    +
    +
    + +

    Cross-everything

    +

    Originally built with only modern browsers in mind, Bootstrap has evolved to include support for all major browsers (even IE7!) and, with Bootstrap 2, tablets and smartphones, too.

    +
    +
    +
    +
    + +

    12-column grid

    +

    Grid systems aren't everything, but having a durable and flexible one at the core of your work can make development much simpler. Use our built-in grid classes or roll your own.

    +
    +
    + +

    Responsive design

    +

    With Bootstrap 2, we've gone fully responsive. Our components are scaled according to a range of resolutions and devices to provide a consistent experience, no matter what.

    +
    +
    + +

    Styleguide docs

    +

    Unlike other front-end toolkits, Bootstrap was designed first and foremost as a styleguide to document not only our features, but best practices and living, coded examples.

    +
    +
    +
    +
    + +

    Growing library

    +

    Despite being only 10kb (gzipped), Bootstrap is one of the most complete front-end toolkits out there with dozens of fully functional components ready to be put to use.

    +
    +
    + +

    Custom jQuery plugins

    +

    What good is an awesome design component without easy-to-use, proper, and extensible interactions? With Bootstrap, you get custom-built jQuery plugins to bring your projects to life.

    +
    +
    + +

    Built on LESS

    +

    Where vanilla CSS falters, LESS excels. Variables, nesting, operations, and mixins in LESS makes coding CSS faster and more efficient with minimal overhead.

    +
    +
    +
    +
    + +

    HTML5

    +

    Built to support new HTML5 elements and syntax.

    +
    +
    + +

    CSS3

    +

    Progressively enhanced components for ultimate style.

    +
    +
    + +

    Open-source

    +

    Built for and maintained by the community via GitHub.

    +
    +
    + +

    Made at Twitter

    +

    Brought to you by an experienced engineer and designer.

    +
    +
    -
    -

    Designed for everyone, everywhere.

    - -
    -
    - -

    Built for and by nerds

    -

    Like you, we love building awesome products on the web. We love it so much, we decided to help people just like us do it easier, better, and faster. Bootstrap is built for you.

    -
    -
    - -

    For all skill levels

    -

    Bootstrap is designed to help people of all skill level—designer or developer, huge nerd or early beginner. Use it as a complete kit or use to start something more complex.

    -
    -
    - -

    Cross-everything

    -

    Originally built with only modern browsers in mind, Bootstrap has evolved to include support for all major browsers (even IE7!) and, with Bootstrap 2, tablets and smartphones, too.

    -
    -
    -
    -
    - -

    12-column grid

    -

    Grid systems aren't everything, but having a durable and flexible one at the core of your work can make development much simpler. Use our built-in grid classes or roll your own.

    -
    -
    - -

    Responsive design

    -

    With Bootstrap 2, we've gone fully responsive. Our components are scaled according to a range of resolutions and devices to provide a consistent experience, no matter what.

    -
    -
    - -

    Styleguide docs

    -

    Unlike other front-end toolkits, Bootstrap was designed first and foremost as a styleguide to document not only our features, but best practices and living, coded examples.

    -
    -
    -
    -
    - -

    Growing library

    -

    Despite being only 10kb (gzipped), Bootstrap is one of the most complete front-end toolkits out there with dozens of fully functional components ready to be put to use.

    -
    -
    - -

    Custom jQuery plugins

    -

    What good is an awesome design component without easy-to-use, proper, and extensible interactions? With Bootstrap, you get custom-built jQuery plugins to bring your projects to life.

    -
    -
    - -

    Built on LESS

    -

    Where vanilla CSS falters, LESS excels. Variables, nesting, operations, and mixins in LESS makes coding CSS faster and more efficient with minimal overhead.

    -
    -
    -
    -
    - -

    HTML5

    -

    Built to support new HTML5 elements and syntax.

    -
    -
    - -

    CSS3

    -

    Progressively enhanced components for ultimate style.

    -
    -
    - -

    Open-source

    -

    Built for and maintained by the community via GitHub.

    -
    -
    - -

    Made at Twitter

    -

    Brought to you by an experienced engineer and designer.

    -
    -
    +
    -
    +

    Built with Bootstrap.

    + + -

    Built with Bootstrap.

    - - - -
    -
    +
    diff --git a/docs/templates/pages/index.mustache b/docs/templates/pages/index.mustache index d49f95f9b8..5ef0c680a8 100644 --- a/docs/templates/pages/index.mustache +++ b/docs/templates/pages/index.mustache @@ -1,139 +1,136 @@ -
    + +
    +
    +

    {{_i}}Bootstrap, from Twitter{{/i}}

    +

    Simple and flexible HTML, CSS, and Javascript for popular user interface components and interactions.

    +

    + {{_i}}View project on GitHub{{/i}} + {{_i}}Download Bootstrap{{/i}} +

    +
    - -
    -
    -

    {{_i}}Bootstrap, from Twitter{{/i}}

    -

    Simple and flexible HTML, CSS, and Javascript for popular user interface components and interactions.

    -

    - {{_i}}View project on GitHub{{/i}} - {{_i}}Download Bootstrap{{/i}} -

    -
    + +
    - -
    +
    -
    +
    +

    {{_i}}Designed for everyone, everywhere.{{/i}}

    + +
    +
    + +

    {{_i}}Built for and by nerds{{/i}}

    +

    {{_i}}Like you, we love building awesome products on the web. We love it so much, we decided to help people just like us do it easier, better, and faster. Bootstrap is built for you.{{/i}}

    +
    +
    + +

    {{_i}}For all skill levels{{/i}}

    +

    {{_i}}Bootstrap is designed to help people of all skill level—designer or developer, huge nerd or early beginner. Use it as a complete kit or use to start something more complex.{{/i}}

    +
    +
    + +

    {{_i}}Cross-everything{{/i}}

    +

    {{_i}}Originally built with only modern browsers in mind, Bootstrap has evolved to include support for all major browsers (even IE7!) and, with Bootstrap 2, tablets and smartphones, too.{{/i}}

    +
    +
    +
    +
    + +

    {{_i}}12-column grid{{/i}}

    +

    {{_i}}Grid systems aren't everything, but having a durable and flexible one at the core of your work can make development much simpler. Use our built-in grid classes or roll your own.{{/i}}

    +
    +
    + +

    {{_i}}Responsive design{{/i}}

    +

    {{_i}}With Bootstrap 2, we've gone fully responsive. Our components are scaled according to a range of resolutions and devices to provide a consistent experience, no matter what.{{/i}}

    +
    +
    + +

    {{_i}}Styleguide docs{{/i}}

    +

    {{_i}}Unlike other front-end toolkits, Bootstrap was designed first and foremost as a styleguide to document not only our features, but best practices and living, coded examples.{{/i}}

    +
    +
    +
    +
    + +

    {{_i}}Growing library{{/i}}

    +

    {{_i}}Despite being only 10kb (gzipped), Bootstrap is one of the most complete front-end toolkits out there with dozens of fully functional components ready to be put to use.{{/i}}

    +
    +
    + +

    {{_i}}Custom jQuery plugins{{/i}}

    +

    {{_i}}What good is an awesome design component without easy-to-use, proper, and extensible interactions? With Bootstrap, you get custom-built jQuery plugins to bring your projects to life.{{/i}}

    +
    +
    + +

    {{_i}}Built on LESS{{/i}}

    +

    {{_i}}Where vanilla CSS falters, LESS excels. Variables, nesting, operations, and mixins in LESS makes coding CSS faster and more efficient with minimal overhead.{{/i}}

    +
    +
    +
    +
    + +

    HTML5

    +

    {{_i}}Built to support new HTML5 elements and syntax.{{/i}}

    +
    +
    + +

    CSS3

    +

    {{_i}}Progressively enhanced components for ultimate style.{{/i}}

    +
    +
    + +

    {{_i}}Open-source{{/i}}

    +

    {{_i}}Built for and maintained by the community via GitHub.{{/i}}

    +
    +
    + +

    {{_i}}Made at Twitter{{/i}}

    +

    {{_i}}Brought to you by an experienced engineer and designer.{{/i}}

    +
    +
    -
    -

    {{_i}}Designed for everyone, everywhere.{{/i}}

    - -
    -
    - -

    {{_i}}Built for and by nerds{{/i}}

    -

    {{_i}}Like you, we love building awesome products on the web. We love it so much, we decided to help people just like us do it easier, better, and faster. Bootstrap is built for you.{{/i}}

    -
    -
    - -

    {{_i}}For all skill levels{{/i}}

    -

    {{_i}}Bootstrap is designed to help people of all skill level—designer or developer, huge nerd or early beginner. Use it as a complete kit or use to start something more complex.{{/i}}

    -
    -
    - -

    {{_i}}Cross-everything{{/i}}

    -

    {{_i}}Originally built with only modern browsers in mind, Bootstrap has evolved to include support for all major browsers (even IE7!) and, with Bootstrap 2, tablets and smartphones, too.{{/i}}

    -
    -
    -
    -
    - -

    {{_i}}12-column grid{{/i}}

    -

    {{_i}}Grid systems aren't everything, but having a durable and flexible one at the core of your work can make development much simpler. Use our built-in grid classes or roll your own.{{/i}}

    -
    -
    - -

    {{_i}}Responsive design{{/i}}

    -

    {{_i}}With Bootstrap 2, we've gone fully responsive. Our components are scaled according to a range of resolutions and devices to provide a consistent experience, no matter what.{{/i}}

    -
    -
    - -

    {{_i}}Styleguide docs{{/i}}

    -

    {{_i}}Unlike other front-end toolkits, Bootstrap was designed first and foremost as a styleguide to document not only our features, but best practices and living, coded examples.{{/i}}

    -
    -
    -
    -
    - -

    {{_i}}Growing library{{/i}}

    -

    {{_i}}Despite being only 10kb (gzipped), Bootstrap is one of the most complete front-end toolkits out there with dozens of fully functional components ready to be put to use.{{/i}}

    -
    -
    - -

    {{_i}}Custom jQuery plugins{{/i}}

    -

    {{_i}}What good is an awesome design component without easy-to-use, proper, and extensible interactions? With Bootstrap, you get custom-built jQuery plugins to bring your projects to life.{{/i}}

    -
    -
    - -

    {{_i}}Built on LESS{{/i}}

    -

    {{_i}}Where vanilla CSS falters, LESS excels. Variables, nesting, operations, and mixins in LESS makes coding CSS faster and more efficient with minimal overhead.{{/i}}

    -
    -
    -
    -
    - -

    HTML5

    -

    {{_i}}Built to support new HTML5 elements and syntax.{{/i}}

    -
    -
    - -

    CSS3

    -

    {{_i}}Progressively enhanced components for ultimate style.{{/i}}

    -
    -
    - -

    {{_i}}Open-source{{/i}}

    -

    {{_i}}Built for and maintained by the community via GitHub.{{/i}}

    -
    -
    - -

    {{_i}}Made at Twitter{{/i}}

    -

    {{_i}}Brought to you by an experienced engineer and designer.{{/i}}

    -
    -
    +
    -
    +

    {{_i}}Built with Bootstrap.{{/i}}

    + + -

    {{_i}}Built with Bootstrap.{{/i}}

    - - - -
    -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/less/buttons.less b/less/buttons.less index 2bc457f652..ce725cd4b0 100644 --- a/less/buttons.less +++ b/less/buttons.less @@ -2,57 +2,11 @@ // ------------- -// Colors -// ------ - -.btn { - // Set text color - &.primary, - &.primary:hover, - &.warning, - &.warning:hover, - &.danger, - &.danger:hover, - &.success, - &.success:hover, - &.info, - &.info:hover { - text-shadow: 0 -1px 0 rgba(0,0,0,.25); - color: @white - } - &.primary.active, - &.warning.active, - &.danger.active, - &.success.active, - &.info.active { - color: rgba(255,255,255,.75); - } - &.primary { - .buttonBackground(@primaryButtonBackground, spin(@primaryButtonBackground, 20)); - } - // Warning appears are orange - &.warning { - .buttonBackground(lighten(@orange, 15%), @orange); - } - // Danger and error appear as red - &.danger { - .buttonBackground(#ee5f5b, #bd362f); - } - // Success appears as green - &.success { - .buttonBackground(#62c462, #51a351); - } - // Info appears as a neutral blue - &.info { - .buttonBackground(#5bc0de, #2f96b4); - } -} - // Base styles -// ----------- +// -------------------------------------------------- +// Core .btn { - // Button Base display: inline-block; padding: 4px 10px 4px; font-size: @baseFontSize; @@ -68,70 +22,133 @@ .box-shadow(@shadow); cursor: pointer; + // Give IE7 some love .ie7-restore-left-whitespace(); - - &:hover { - color: @grayDark; - text-decoration: none; - background-color: darken(@white, 10%); - background-position: 0 -15px; - - // transition is only when going to hover, otherwise the background - // behind the gradient (there for IE<=9 fallback) gets mismatched - .transition(background-position .1s linear); - } - - // Focus state for keyboard and accessibility - &:focus { - .tab-focus(); - } - - // Active and Disabled states - &.active, - &:active { - background-image: none; - @shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05); - .box-shadow(@shadow); - background-color: darken(@white, 10%); - background-color: darken(@white, 15%) e("\9"); - color: rgba(0,0,0,.5); - outline: 0; - } - &.disabled, - &[disabled] { - cursor: default; - background-image: none; - background-color: darken(@white, 10%); - .opacity(65); - .box-shadow(none); - } - - // Button Sizes - &.large { - padding: 9px 14px; - font-size: @baseFontSize + 2px; - line-height: normal; - .border-radius(5px); - } - &.large .icon { - margin-top: 1px; - } - &.small { - padding: 5px 9px; - font-size: @baseFontSize - 2px; - line-height: @baseLineHeight - 2px; - } - &.small .icon { - margin-top: -1px; - } } -// Help Firefox not be a jerk about adding extra padding to buttons +// Hover state +.btn:hover { + color: @grayDark; + text-decoration: none; + background-color: darken(@white, 10%); + background-position: 0 -15px; + + // transition is only when going to hover, otherwise the background + // behind the gradient (there for IE<=9 fallback) gets mismatched + .transition(background-position .1s linear); +} + +// Focus state for keyboard and accessibility +.btn:focus { + .tab-focus(); +} + +// Active state +.btn.active, +.btn:active { + background-image: none; + @shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05); + .box-shadow(@shadow); + background-color: darken(@white, 10%); + background-color: darken(@white, 15%) e("\9"); + color: rgba(0,0,0,.5); + outline: 0; +} + +// Disabled state +.btn.disabled, +.btn[disabled] { + cursor: default; + background-image: none; + background-color: darken(@white, 10%); + .opacity(65); + .box-shadow(none); +} + + +// Button Sizes +// -------------------------------------------------- + +// Large +.btn.large { + padding: 9px 14px; + font-size: @baseFontSize + 2px; + line-height: normal; + .border-radius(5px); +} +.btn.large .icon { + margin-top: 1px; +} + +// Small +.btn.small { + padding: 5px 9px; + font-size: @baseFontSize - 2px; + line-height: @baseLineHeight - 2px; +} +.btn.small .icon { + margin-top: -1px; +} + + +// Alternate buttons +// -------------------------------------------------- + +// Set text color +// ------------------------- +.btn.primary, +.btn.primary:hover, +.btn.warning, +.btn.warning:hover, +.btn.danger, +.btn.danger:hover, +.btn.success, +.btn.success:hover, +.btn.info, +.btn.info:hover { + text-shadow: 0 -1px 0 rgba(0,0,0,.25); + color: @white +} +// Provide *some* extra contrast for those who can get it +.btn.primary.active, +.btn.warning.active, +.btn.danger.active, +.btn.success.active, +.btn.info.active { + color: rgba(255,255,255,.75); +} + +// Set the backgrounds +// ------------------------- +.btn.primary { + .buttonBackground(@primaryButtonBackground, spin(@primaryButtonBackground, 20)); +} +// Warning appears are orange +.btn.warning { + .buttonBackground(lighten(@orange, 15%), @orange); +} +// Danger and error appear as red +.btn.danger { + .buttonBackground(#ee5f5b, #bd362f); +} +// Success appears as green +.btn.success { + .buttonBackground(#62c462, #51a351); +} +// Info appears as a neutral blue +.btn.info { + .buttonBackground(#5bc0de, #2f96b4); +} + + +// Cross-browser Jank +// -------------------------------------------------- + button.btn, input[type="submit"].btn { &::-moz-focus-inner { - padding: 0; - border: 0; + padding: 0; + border: 0; } // IE7 has some default padding on button controls