##// END OF EJS Templates
added validation of username alphanumeric+dash only
marcink -
r743:c9fa3f53 beta
parent child Browse files
Show More
@@ -1,449 +1,459
1 1 """ this is forms validation classes
2 2 http://formencode.org/module-formencode.validators.html
3 3 for list off all availible validators
4 4
5 5 we can create our own validators
6 6
7 7 The table below outlines the options which can be used in a schema in addition to the validators themselves
8 8 pre_validators [] These validators will be applied before the schema
9 9 chained_validators [] These validators will be applied after the schema
10 10 allow_extra_fields False If True, then it is not an error when keys that aren't associated with a validator are present
11 11 filter_extra_fields False If True, then keys that aren't associated with a validator are removed
12 12 if_key_missing NoDefault If this is given, then any keys that aren't available but are expected will be replaced with this value (and then validated). This does not override a present .if_missing attribute on validators. NoDefault is a special FormEncode class to mean that no default values has been specified and therefore missing keys shouldn't take a default value.
13 13 ignore_key_missing False If True, then missing keys will be missing in the result, if the validator doesn't have .if_missing on it already
14 14
15 15
16 16 <name> = formencode.validators.<name of validator>
17 17 <name> must equal form name
18 18 list=[1,2,3,4,5]
19 19 for SELECT use formencode.All(OneOf(list), Int())
20 20
21 21 """
22 22 from formencode import All
23 23 from formencode.validators import UnicodeString, OneOf, Int, Number, Regex, \
24 24 Email, Bool, StringBoolean
25 25 from pylons import session
26 26 from pylons.i18n.translation import _
27 27 from rhodecode.lib.auth import authfunc, get_crypt_password
28 28 from rhodecode.lib.exceptions import LdapImportError
29 29 from rhodecode.model import meta
30 30 from rhodecode.model.user import UserModel
31 31 from rhodecode.model.repo import RepoModel
32 32 from rhodecode.model.db import User
33 33 from webhelpers.pylonslib.secure_form import authentication_token
34 34 from rhodecode import BACKENDS
35 35 import formencode
36 36 import logging
37 37 import os
38 import re
38 39 import rhodecode.lib.helpers as h
39 40
40 41 log = logging.getLogger(__name__)
41 42
42 43 #this is needed to translate the messages using _() in validators
43 44 class State_obj(object):
44 45 _ = staticmethod(_)
45 46
46 47 #===============================================================================
47 48 # VALIDATORS
48 49 #===============================================================================
49 50 class ValidAuthToken(formencode.validators.FancyValidator):
50 51 messages = {'invalid_token':_('Token mismatch')}
51 52
52 53 def validate_python(self, value, state):
53 54
54 55 if value != authentication_token():
55 56 raise formencode.Invalid(self.message('invalid_token', state,
56 57 search_number=value), value, state)
57 58
58 59 def ValidUsername(edit, old_data):
59 60 class _ValidUsername(formencode.validators.FancyValidator):
60 61
61 62 def validate_python(self, value, state):
62 63 if value in ['default', 'new_user']:
63 64 raise formencode.Invalid(_('Invalid username'), value, state)
64 65 #check if user is unique
65 66 old_un = None
66 67 if edit:
67 68 old_un = UserModel().get(old_data.get('user_id')).username
68 69
69 70 if old_un != value or not edit:
70 71 if UserModel().get_by_username(value, cache=False,
71 72 case_insensitive=True):
72 73 raise formencode.Invalid(_('This username already exists') ,
73 74 value, state)
74 75
76
77 if re.match(r'^[a-zA-Z0-9]{1}[a-zA-Z0-9\-]+$', value) is None:
78 raise formencode.Invalid(_('Username may only contain '
79 'alphanumeric characters '
80 'or dashes and cannot begin with a dash'),
81 value, state)
82
83
84
75 85 return _ValidUsername
76 86
77 87 class ValidPassword(formencode.validators.FancyValidator):
78 88
79 89 def to_python(self, value, state):
80 90
81 91 if value:
82 92
83 93 if value.get('password'):
84 94 try:
85 95 value['password'] = get_crypt_password(value['password'])
86 96 except UnicodeEncodeError:
87 97 e_dict = {'password':_('Invalid characters in password')}
88 98 raise formencode.Invalid('', value, state, error_dict=e_dict)
89 99
90 100 if value.get('password_confirmation'):
91 101 try:
92 102 value['password_confirmation'] = \
93 103 get_crypt_password(value['password_confirmation'])
94 104 except UnicodeEncodeError:
95 105 e_dict = {'password_confirmation':_('Invalid characters in password')}
96 106 raise formencode.Invalid('', value, state, error_dict=e_dict)
97 107
98 108 if value.get('new_password'):
99 109 try:
100 110 value['new_password'] = \
101 111 get_crypt_password(value['new_password'])
102 112 except UnicodeEncodeError:
103 113 e_dict = {'new_password':_('Invalid characters in password')}
104 114 raise formencode.Invalid('', value, state, error_dict=e_dict)
105 115
106 116 return value
107 117
108 118 class ValidPasswordsMatch(formencode.validators.FancyValidator):
109 119
110 120 def validate_python(self, value, state):
111 121
112 122 if value['password'] != value['password_confirmation']:
113 123 e_dict = {'password_confirmation':
114 124 _('Password do not match')}
115 125 raise formencode.Invalid('', value, state, error_dict=e_dict)
116 126
117 127 class ValidAuth(formencode.validators.FancyValidator):
118 128 messages = {
119 129 'invalid_password':_('invalid password'),
120 130 'invalid_login':_('invalid user name'),
121 131 'disabled_account':_('Your account is disabled')
122 132
123 133 }
124 134 #error mapping
125 135 e_dict = {'username':messages['invalid_login'],
126 136 'password':messages['invalid_password']}
127 137 e_dict_disable = {'username':messages['disabled_account']}
128 138
129 139 def validate_python(self, value, state):
130 140 password = value['password']
131 141 username = value['username']
132 142 user = UserModel().get_by_username(username)
133 143
134 144 if authfunc(None, username, password):
135 145 return value
136 146 else:
137 147 if user and user.active is False:
138 148 log.warning('user %s is disabled', username)
139 149 raise formencode.Invalid(self.message('disabled_account',
140 150 state=State_obj),
141 151 value, state,
142 152 error_dict=self.e_dict_disable)
143 153 else:
144 154 log.warning('user %s not authenticated', username)
145 155 raise formencode.Invalid(self.message('invalid_password',
146 156 state=State_obj), value, state,
147 157 error_dict=self.e_dict)
148 158
149 159 class ValidRepoUser(formencode.validators.FancyValidator):
150 160
151 161 def to_python(self, value, state):
152 162 sa = meta.Session()
153 163 try:
154 164 self.user_db = sa.query(User)\
155 165 .filter(User.active == True)\
156 166 .filter(User.username == value).one()
157 167 except Exception:
158 168 raise formencode.Invalid(_('This username is not valid'),
159 169 value, state)
160 170 finally:
161 171 meta.Session.remove()
162 172
163 173 return self.user_db.user_id
164 174
165 175 def ValidRepoName(edit, old_data):
166 176 class _ValidRepoName(formencode.validators.FancyValidator):
167 177
168 178 def to_python(self, value, state):
169 179 slug = h.repo_name_slug(value)
170 180 if slug in ['_admin']:
171 181 raise formencode.Invalid(_('This repository name is disallowed'),
172 182 value, state)
173 183 if old_data.get('repo_name') != value or not edit:
174 184 if RepoModel().get_by_repo_name(slug, cache=False):
175 185 raise formencode.Invalid(_('This repository already exists') ,
176 186 value, state)
177 187 return slug
178 188
179 189
180 190 return _ValidRepoName
181 191
182 192 def ValidForkType(old_data):
183 193 class _ValidForkType(formencode.validators.FancyValidator):
184 194
185 195 def to_python(self, value, state):
186 196 if old_data['repo_type'] != value:
187 197 raise formencode.Invalid(_('Fork have to be the same type as original'),
188 198 value, state)
189 199 return value
190 200 return _ValidForkType
191 201
192 202 class ValidPerms(formencode.validators.FancyValidator):
193 203 messages = {'perm_new_user_name':_('This username is not valid')}
194 204
195 205 def to_python(self, value, state):
196 206 perms_update = []
197 207 perms_new = []
198 208 #build a list of permission to update and new permission to create
199 209 for k, v in value.items():
200 210 if k.startswith('perm_'):
201 211 if k.startswith('perm_new_user'):
202 212 new_perm = value.get('perm_new_user', False)
203 213 new_user = value.get('perm_new_user_name', False)
204 214 if new_user and new_perm:
205 215 if (new_user, new_perm) not in perms_new:
206 216 perms_new.append((new_user, new_perm))
207 217 else:
208 218 usr = k[5:]
209 219 if usr == 'default':
210 220 if value['private']:
211 221 #set none for default when updating to private repo
212 222 v = 'repository.none'
213 223 perms_update.append((usr, v))
214 224 value['perms_updates'] = perms_update
215 225 value['perms_new'] = perms_new
216 226 sa = meta.Session
217 227 for k, v in perms_new:
218 228 try:
219 229 self.user_db = sa.query(User)\
220 230 .filter(User.active == True)\
221 231 .filter(User.username == k).one()
222 232 except Exception:
223 233 msg = self.message('perm_new_user_name',
224 234 state=State_obj)
225 235 raise formencode.Invalid(msg, value, state,
226 236 error_dict={'perm_new_user_name':msg})
227 237 return value
228 238
229 239 class ValidSettings(formencode.validators.FancyValidator):
230 240
231 241 def to_python(self, value, state):
232 242 #settings form can't edit user
233 243 if value.has_key('user'):
234 244 del['value']['user']
235 245
236 246 return value
237 247
238 248 class ValidPath(formencode.validators.FancyValidator):
239 249 def to_python(self, value, state):
240 250
241 251 if not os.path.isdir(value):
242 252 msg = _('This is not a valid path')
243 253 raise formencode.Invalid(msg, value, state,
244 254 error_dict={'paths_root_path':msg})
245 255 return value
246 256
247 257 def UniqSystemEmail(old_data):
248 258 class _UniqSystemEmail(formencode.validators.FancyValidator):
249 259 def to_python(self, value, state):
250 260 value = value.lower()
251 261 #TODO:write test for MixedCase scenarios
252 262 if old_data.get('email') != value:
253 263 sa = meta.Session()
254 264 try:
255 265 user = sa.query(User).filter(User.email == value).scalar()
256 266 if user:
257 267 raise formencode.Invalid(_("That e-mail address is already taken") ,
258 268 value, state)
259 269 finally:
260 270 meta.Session.remove()
261 271
262 272 return value
263 273
264 274 return _UniqSystemEmail
265 275
266 276 class ValidSystemEmail(formencode.validators.FancyValidator):
267 277 def to_python(self, value, state):
268 278 value = value.lower()
269 279 sa = meta.Session
270 280 try:
271 281 user = sa.query(User).filter(User.email == value).scalar()
272 282 if user is None:
273 283 raise formencode.Invalid(_("That e-mail address doesn't exist.") ,
274 284 value, state)
275 285 finally:
276 286 meta.Session.remove()
277 287
278 288 return value
279 289
280 290 class LdapLibValidator(formencode.validators.FancyValidator):
281 291
282 292 def to_python(self, value, state):
283 293
284 294 try:
285 295 import ldap
286 296 except ImportError:
287 297 raise LdapImportError
288 298 return value
289 299
290 300 #===============================================================================
291 301 # FORMS
292 302 #===============================================================================
293 303 class LoginForm(formencode.Schema):
294 304 allow_extra_fields = True
295 305 filter_extra_fields = True
296 306 username = UnicodeString(
297 307 strip=True,
298 308 min=1,
299 309 not_empty=True,
300 310 messages={
301 311 'empty':_('Please enter a login'),
302 312 'tooShort':_('Enter a value %(min)i characters long or more')}
303 313 )
304 314
305 315 password = UnicodeString(
306 316 strip=True,
307 317 min=6,
308 318 not_empty=True,
309 319 messages={
310 320 'empty':_('Please enter a password'),
311 321 'tooShort':_('Enter %(min)i characters or more')}
312 322 )
313 323
314 324
315 325 #chained validators have access to all data
316 326 chained_validators = [ValidAuth]
317 327
318 328 def UserForm(edit=False, old_data={}):
319 329 class _UserForm(formencode.Schema):
320 330 allow_extra_fields = True
321 331 filter_extra_fields = True
322 332 username = All(UnicodeString(strip=True, min=1, not_empty=True),
323 333 ValidUsername(edit, old_data))
324 334 if edit:
325 335 new_password = All(UnicodeString(strip=True, min=6, not_empty=False))
326 336 admin = StringBoolean(if_missing=False)
327 337 else:
328 338 password = All(UnicodeString(strip=True, min=6, not_empty=True))
329 339 active = StringBoolean(if_missing=False)
330 340 name = UnicodeString(strip=True, min=1, not_empty=True)
331 341 lastname = UnicodeString(strip=True, min=1, not_empty=True)
332 342 email = All(Email(not_empty=True), UniqSystemEmail(old_data))
333 343
334 344 chained_validators = [ValidPassword]
335 345
336 346 return _UserForm
337 347
338 348 def RegisterForm(edit=False, old_data={}):
339 349 class _RegisterForm(formencode.Schema):
340 350 allow_extra_fields = True
341 351 filter_extra_fields = True
342 352 username = All(ValidUsername(edit, old_data),
343 353 UnicodeString(strip=True, min=1, not_empty=True))
344 354 password = All(UnicodeString(strip=True, min=6, not_empty=True))
345 355 password_confirmation = All(UnicodeString(strip=True, min=6, not_empty=True))
346 356 active = StringBoolean(if_missing=False)
347 357 name = UnicodeString(strip=True, min=1, not_empty=True)
348 358 lastname = UnicodeString(strip=True, min=1, not_empty=True)
349 359 email = All(Email(not_empty=True), UniqSystemEmail(old_data))
350 360
351 361 chained_validators = [ValidPasswordsMatch, ValidPassword]
352 362
353 363 return _RegisterForm
354 364
355 365 def PasswordResetForm():
356 366 class _PasswordResetForm(formencode.Schema):
357 367 allow_extra_fields = True
358 368 filter_extra_fields = True
359 369 email = All(ValidSystemEmail(), Email(not_empty=True))
360 370 return _PasswordResetForm
361 371
362 372 def RepoForm(edit=False, old_data={}, supported_backends=BACKENDS.keys()):
363 373 class _RepoForm(formencode.Schema):
364 374 allow_extra_fields = True
365 375 filter_extra_fields = False
366 376 repo_name = All(UnicodeString(strip=True, min=1, not_empty=True),
367 377 ValidRepoName(edit, old_data))
368 378 description = UnicodeString(strip=True, min=1, not_empty=True)
369 379 private = StringBoolean(if_missing=False)
370 380 repo_type = OneOf(supported_backends)
371 381 if edit:
372 382 user = All(Int(not_empty=True), ValidRepoUser)
373 383
374 384 chained_validators = [ValidPerms]
375 385 return _RepoForm
376 386
377 387 def RepoForkForm(edit=False, old_data={}, supported_backends=BACKENDS.keys()):
378 388 class _RepoForkForm(formencode.Schema):
379 389 allow_extra_fields = True
380 390 filter_extra_fields = False
381 391 fork_name = All(UnicodeString(strip=True, min=1, not_empty=True),
382 392 ValidRepoName(edit, old_data))
383 393 description = UnicodeString(strip=True, min=1, not_empty=True)
384 394 private = StringBoolean(if_missing=False)
385 395 repo_type = All(ValidForkType(old_data), OneOf(supported_backends))
386 396 return _RepoForkForm
387 397
388 398 def RepoSettingsForm(edit=False, old_data={}):
389 399 class _RepoForm(formencode.Schema):
390 400 allow_extra_fields = True
391 401 filter_extra_fields = False
392 402 repo_name = All(UnicodeString(strip=True, min=1, not_empty=True),
393 403 ValidRepoName(edit, old_data))
394 404 description = UnicodeString(strip=True, min=1, not_empty=True)
395 405 private = StringBoolean(if_missing=False)
396 406
397 407 chained_validators = [ValidPerms, ValidSettings]
398 408 return _RepoForm
399 409
400 410
401 411 def ApplicationSettingsForm():
402 412 class _ApplicationSettingsForm(formencode.Schema):
403 413 allow_extra_fields = True
404 414 filter_extra_fields = False
405 415 rhodecode_title = UnicodeString(strip=True, min=1, not_empty=True)
406 416 rhodecode_realm = UnicodeString(strip=True, min=1, not_empty=True)
407 417
408 418 return _ApplicationSettingsForm
409 419
410 420 def ApplicationUiSettingsForm():
411 421 class _ApplicationUiSettingsForm(formencode.Schema):
412 422 allow_extra_fields = True
413 423 filter_extra_fields = False
414 424 web_push_ssl = OneOf(['true', 'false'], if_missing='false')
415 425 paths_root_path = All(ValidPath(), UnicodeString(strip=True, min=1, not_empty=True))
416 426 hooks_changegroup_update = OneOf(['True', 'False'], if_missing=False)
417 427 hooks_changegroup_repo_size = OneOf(['True', 'False'], if_missing=False)
418 428 hooks_pretxnchangegroup_push_logger = OneOf(['True', 'False'], if_missing=False)
419 429 hooks_preoutgoing_pull_logger = OneOf(['True', 'False'], if_missing=False)
420 430
421 431 return _ApplicationUiSettingsForm
422 432
423 433 def DefaultPermissionsForm(perms_choices, register_choices, create_choices):
424 434 class _DefaultPermissionsForm(formencode.Schema):
425 435 allow_extra_fields = True
426 436 filter_extra_fields = True
427 437 overwrite_default = StringBoolean(if_missing=False)
428 438 anonymous = OneOf(['True', 'False'], if_missing=False)
429 439 default_perm = OneOf(perms_choices)
430 440 default_register = OneOf(register_choices)
431 441 default_create = OneOf(create_choices)
432 442
433 443 return _DefaultPermissionsForm
434 444
435 445
436 446 def LdapSettingsForm():
437 447 class _LdapSettingsForm(formencode.Schema):
438 448 allow_extra_fields = True
439 449 filter_extra_fields = True
440 450 pre_validators = [LdapLibValidator]
441 451 ldap_active = StringBoolean(if_missing=False)
442 452 ldap_host = UnicodeString(strip=True,)
443 453 ldap_port = Number(strip=True,)
444 454 ldap_ldaps = StringBoolean(if_missing=False)
445 455 ldap_dn_user = UnicodeString(strip=True,)
446 456 ldap_dn_pass = UnicodeString(strip=True,)
447 457 ldap_base_dn = UnicodeString(strip=True,)
448 458
449 459 return _LdapSettingsForm
@@ -1,2366 +1,2367
1 1 html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td {
2 2 border:0;
3 3 outline:0;
4 4 font-size:100%;
5 5 vertical-align:baseline;
6 6 background:transparent;
7 7 margin:0;
8 8 padding:0;
9 9 }
10 10
11 11 body {
12 12 line-height:1;
13 13 height:100%;
14 14 background:url("../images/background.png") repeat scroll 0 0 #B0B0B0;
15 15 font-family:Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif;
16 16 font-size:12px;
17 17 color:#000;
18 18 margin:0;
19 19 padding:0;
20 20 }
21 21
22 22 ol,ul {
23 23 list-style:none;
24 24 }
25 25
26 26 blockquote,q {
27 27 quotes:none;
28 28 }
29 29
30 30 blockquote:before,blockquote:after,q:before,q:after {
31 31 content:none;
32 32 }
33 33
34 34 :focus {
35 35 outline:0;
36 36 }
37 37
38 38 del {
39 39 text-decoration:line-through;
40 40 }
41 41
42 42 table {
43 43 border-collapse:collapse;
44 44 border-spacing:0;
45 45 }
46 46
47 47 html {
48 48 height:100%;
49 49 }
50 50
51 51 a {
52 52 color:#003367;
53 53 text-decoration:none;
54 54 cursor:pointer;
55 55 font-weight:700;
56 56 }
57 57
58 58 a:hover {
59 59 color:#316293;
60 60 text-decoration:underline;
61 61 }
62 62
63 63 h1,h2,h3,h4,h5,h6 {
64 64 color:#292929;
65 65 font-weight:700;
66 66 }
67 67
68 68 h1 {
69 69 font-size:22px;
70 70 }
71 71
72 72 h2 {
73 73 font-size:20px;
74 74 }
75 75
76 76 h3 {
77 77 font-size:18px;
78 78 }
79 79
80 80 h4 {
81 81 font-size:16px;
82 82 }
83 83
84 84 h5 {
85 85 font-size:14px;
86 86 }
87 87
88 88 h6 {
89 89 font-size:11px;
90 90 }
91 91
92 92 ul.circle {
93 93 list-style-type:circle;
94 94 }
95 95
96 96 ul.disc {
97 97 list-style-type:disc;
98 98 }
99 99
100 100 ul.square {
101 101 list-style-type:square;
102 102 }
103 103
104 104 ol.lower-roman {
105 105 list-style-type:lower-roman;
106 106 }
107 107
108 108 ol.upper-roman {
109 109 list-style-type:upper-roman;
110 110 }
111 111
112 112 ol.lower-alpha {
113 113 list-style-type:lower-alpha;
114 114 }
115 115
116 116 ol.upper-alpha {
117 117 list-style-type:upper-alpha;
118 118 }
119 119
120 120 ol.decimal {
121 121 list-style-type:decimal;
122 122 }
123 123
124 124 div.color {
125 125 clear:both;
126 126 overflow:hidden;
127 127 position:absolute;
128 128 background:#FFF;
129 129 margin:7px 0 0 60px;
130 130 padding:1px 1px 1px 0;
131 131 }
132 132
133 133 div.color a {
134 134 width:15px;
135 135 height:15px;
136 136 display:block;
137 137 float:left;
138 138 margin:0 0 0 1px;
139 139 padding:0;
140 140 }
141 141
142 142 div.options {
143 143 clear:both;
144 144 overflow:hidden;
145 145 position:absolute;
146 146 background:#FFF;
147 147 margin:7px 0 0 162px;
148 148 padding:0;
149 149 }
150 150
151 151 div.options a {
152 152 height:1%;
153 153 display:block;
154 154 text-decoration:none;
155 155 margin:0;
156 156 padding:3px 8px;
157 157 }
158 158
159 159 .top-left-rounded-corner {
160 160 -webkit-border-top-left-radius: 8px;
161 161 -khtml-border-radius-topleft: 8px;
162 162 -moz-border-radius-topleft: 8px;
163 163 border-top-left-radius: 8px;
164 164 }
165 165
166 166 .top-right-rounded-corner {
167 167 -webkit-border-top-right-radius: 8px;
168 168 -khtml-border-radius-topright: 8px;
169 169 -moz-border-radius-topright: 8px;
170 170 border-top-right-radius: 8px;
171 171 }
172 172
173 173 .bottom-left-rounded-corner {
174 174 -webkit-border-bottom-left-radius: 8px;
175 175 -khtml-border-radius-bottomleft: 8px;
176 176 -moz-border-radius-bottomleft: 8px;
177 177 border-bottom-left-radius: 8px;
178 178 }
179 179
180 180 .bottom-right-rounded-corner {
181 181 -webkit-border-bottom-right-radius: 8px;
182 182 -khtml-border-radius-bottomright: 8px;
183 183 -moz-border-radius-bottomright: 8px;
184 184 border-bottom-right-radius: 8px;
185 185 }
186 186
187 187
188 188 #header {
189 189 margin:0;
190 190 padding:0 30px;
191 191 }
192 192
193 193 #header ul#logged-user li {
194 194 list-style:none;
195 195 float:left;
196 196 border-left:1px solid #bbb;
197 197 border-right:1px solid #a5a5a5;
198 198 margin:-2px 0 0;
199 199 padding:10px 12px;
200 200 }
201 201
202 202 #header ul#logged-user li.first {
203 203 border-left:none;
204 204 margin:-6px;
205 205 }
206 206
207 207 #header ul#logged-user li.first div.account {
208 208 padding-top:4px;
209 209 float:left;
210 210 }
211 211
212 212 #header ul#logged-user li.last {
213 213 border-right:none;
214 214 }
215 215
216 216 #header ul#logged-user li a {
217 217 color:#4e4e4e;
218 218 font-weight:700;
219 219 text-decoration:none;
220 220 }
221 221
222 222 #header ul#logged-user li a:hover {
223 223 color:#376ea6;
224 224 text-decoration:underline;
225 225 }
226 226
227 227 #header ul#logged-user li.highlight a {
228 228 color:#fff;
229 229 }
230 230
231 231 #header ul#logged-user li.highlight a:hover {
232 232 color:#376ea6;
233 233 }
234 234
235 235 #header #header-inner {
236 236 height:40px;
237 237 clear:both;
238 238 position:relative;
239 239 background:#003367 url("../images/header_inner.png") repeat-x;
240 240 border-bottom:2px solid #fff;
241 241 margin:0;
242 242 padding:0;
243 243 }
244 244
245 245 #header #header-inner #home a {
246 246 height:40px;
247 247 width:46px;
248 248 display:block;
249 249 background:url("../images/button_home.png");
250 250 background-position:0 0;
251 251 margin:0;
252 252 padding:0;
253 253 }
254 254
255 255 #header #header-inner #home a:hover {
256 256 background-position:0 -40px;
257 257 }
258 258
259 259 #header #header-inner #logo h1 {
260 260 color:#FFF;
261 261 font-size:18px;
262 262 margin:10px 0 0 13px;
263 263 padding:0;
264 264 }
265 265
266 266 #header #header-inner #logo a {
267 267 color:#fff;
268 268 text-decoration:none;
269 269 }
270 270
271 271 #header #header-inner #logo a:hover {
272 272 color:#bfe3ff;
273 273 }
274 274
275 275 #header #header-inner #quick,#header #header-inner #quick ul {
276 276 position:relative;
277 277 float:right;
278 278 list-style-type:none;
279 279 list-style-position:outside;
280 280 margin:10px 5px 0 0;
281 281 padding:0;
282 282 }
283 283
284 284 #header #header-inner #quick li {
285 285 position:relative;
286 286 float:left;
287 287 margin:0 5px 0 0;
288 288 padding:0;
289 289 }
290 290
291 291 #header #header-inner #quick li a {
292 292 top:0;
293 293 left:0;
294 294 height:1%;
295 295 display:block;
296 296 clear:both;
297 297 overflow:hidden;
298 298 color:#FFF;
299 299 font-weight:700;
300 300 text-decoration:none;
301 301 background:#369 url("../../images/quick_l.png") no-repeat top left;
302 302 padding:0;
303 303 }
304 304
305 305 #header #header-inner #quick li span {
306 306 top:0;
307 307 right:0;
308 308 height:1%;
309 309 display:block;
310 310 float:left;
311 311 background:url("../../images/quick_r.png") no-repeat top right;
312 312 border-left:1px solid #3f6f9f;
313 313 margin:0;
314 314 padding:10px 12px 8px 10px;
315 315 }
316 316
317 317 #header #header-inner #quick li span.normal {
318 318 border:none;
319 319 padding:10px 12px 8px;
320 320 }
321 321
322 322 #header #header-inner #quick li span.icon {
323 323 top:0;
324 324 left:0;
325 325 border-left:none;
326 326 background:url("../../images/quick_l.png") no-repeat top left;
327 327 border-right:1px solid #2e5c89;
328 328 padding:8px 8px 4px;
329 329 }
330 330
331 331 #header #header-inner #quick li a:hover {
332 332 background:#4e4e4e url("../../images/quick_l_selected.png") no-repeat top left;
333 333 }
334 334
335 335 #header #header-inner #quick li a:hover span {
336 336 border-left:1px solid #545454;
337 337 background:url("../../images/quick_r_selected.png") no-repeat top right;
338 338 }
339 339
340 340 #header #header-inner #quick li a:hover span.icon {
341 341 border-left:none;
342 342 border-right:1px solid #464646;
343 343 background:url("../../images/quick_l_selected.png") no-repeat top left;
344 344 }
345 345
346 346 #header #header-inner #quick ul {
347 347 top:29px;
348 348 right:0;
349 349 min-width:200px;
350 350 display:none;
351 351 position:absolute;
352 352 background:#FFF;
353 353 border:1px solid #666;
354 354 border-top:1px solid #003367;
355 355 z-index:100;
356 356 margin:0;
357 357 padding:0;
358 358 }
359 359
360 360 #header #header-inner #quick ul.repo_switcher {
361 361 max-height:275px;
362 362 overflow-x:hidden;
363 363 overflow-y:auto;
364 364 }
365 365
366 366 #header #header-inner #quick .repo_switcher_type{
367 367 position:absolute;
368 368 left:0;
369 369 top:9px;
370 370
371 371 }
372 372 #header #header-inner #quick li ul li {
373 373 border-bottom:1px solid #ddd;
374 374 }
375 375
376 376 #header #header-inner #quick li ul li a {
377 377 width:182px;
378 378 height:auto;
379 379 display:block;
380 380 float:left;
381 381 background:#FFF;
382 382 color:#003367;
383 383 font-weight:400;
384 384 margin:0;
385 385 padding:7px 9px;
386 386 }
387 387
388 388 #header #header-inner #quick li ul li a:hover {
389 389 color:#000;
390 390 background:#FFF;
391 391 }
392 392
393 393 #header #header-inner #quick ul ul {
394 394 top:auto;
395 395 }
396 396
397 397 #header #header-inner #quick li ul ul {
398 398 right:200px;
399 399 max-height:275px;
400 400 overflow:auto;
401 401 overflow-x:hidden;
402 402 white-space:normal;
403 403 }
404 404
405 405 #header #header-inner #quick li ul li a.journal,#header #header-inner #quick li ul li a.journal:hover {
406 406 background:url("../images/icons/book.png") no-repeat scroll 4px 9px #FFF;
407 407 width:167px;
408 408 margin:0;
409 409 padding:12px 9px 7px 24px;
410 410 }
411 411
412 412 #header #header-inner #quick li ul li a.private_repo,#header #header-inner #quick li ul li a.private_repo:hover {
413 413 background:url("../images/icons/lock.png") no-repeat scroll 4px 9px #FFF;
414 414 min-width:167px;
415 415 margin:0;
416 416 padding:12px 9px 7px 24px;
417 417 }
418 418
419 419 #header #header-inner #quick li ul li a.public_repo,#header #header-inner #quick li ul li a.public_repo:hover {
420 420 background:url("../images/icons/lock_open.png") no-repeat scroll 4px 9px #FFF;
421 421 min-width:167px;
422 422 margin:0;
423 423 padding:12px 9px 7px 24px;
424 424 }
425 425
426 426 #header #header-inner #quick li ul li a.hg,#header #header-inner #quick li ul li a.hg:hover {
427 427 background:url("../images/icons/hgicon.png") no-repeat scroll 4px 9px #FFF;
428 428 min-width:167px;
429 429 margin:0 0 0 14px;
430 430 padding:12px 9px 7px 24px;
431 431 }
432 432
433 433 #header #header-inner #quick li ul li a.git,#header #header-inner #quick li ul li a.git:hover {
434 434 background:url("../images/icons/giticon.png") no-repeat scroll 4px 9px #FFF;
435 435 min-width:167px;
436 436 margin:0 0 0 14px;
437 437 padding:12px 9px 7px 24px;
438 438 }
439 439
440 440 #header #header-inner #quick li ul li a.repos,#header #header-inner #quick li ul li a.repos:hover {
441 441 background:url("../images/icons/database_edit.png") no-repeat scroll 4px 9px #FFF;
442 442 width:167px;
443 443 margin:0;
444 444 padding:12px 9px 7px 24px;
445 445 }
446 446
447 447 #header #header-inner #quick li ul li a.users,#header #header-inner #quick li ul li a.users:hover {
448 448 background:#FFF url("../images/icons/user_edit.png") no-repeat 4px 9px;
449 449 width:167px;
450 450 margin:0;
451 451 padding:12px 9px 7px 24px;
452 452 }
453 453
454 454 #header #header-inner #quick li ul li a.settings,#header #header-inner #quick li ul li a.settings:hover {
455 455 background:#FFF url("../images/icons/cog.png") no-repeat 4px 9px;
456 456 width:167px;
457 457 margin:0;
458 458 padding:12px 9px 7px 24px;
459 459 }
460 460
461 461 #header #header-inner #quick li ul li a.permissions,#header #header-inner #quick li ul li a.permissions:hover {
462 462 background:#FFF url("../images/icons/key.png") no-repeat 4px 9px;
463 463 width:167px;
464 464 margin:0;
465 465 padding:12px 9px 7px 24px;
466 466 }
467 467
468 468 #header #header-inner #quick li ul li a.fork,#header #header-inner #quick li ul li a.fork:hover {
469 469 background:#FFF url("../images/icons/arrow_divide.png") no-repeat 4px 9px;
470 470 width:167px;
471 471 margin:0;
472 472 padding:12px 9px 7px 24px;
473 473 }
474 474
475 475 #header #header-inner #quick li ul li a.search,#header #header-inner #quick li ul li a.search:hover {
476 476 background:#FFF url("../images/icons/search_16.png") no-repeat 4px 9px;
477 477 width:167px;
478 478 margin:0;
479 479 padding:12px 9px 7px 24px;
480 480 }
481 481
482 482 #header #header-inner #quick li ul li a.delete,#header #header-inner #quick li ul li a.delete:hover {
483 483 background:#FFF url("../images/icons/delete.png") no-repeat 4px 9px;
484 484 width:167px;
485 485 margin:0;
486 486 padding:12px 9px 7px 24px;
487 487 }
488 488
489 489 #header #header-inner #quick li ul li a.branches,#header #header-inner #quick li ul li a.branches:hover {
490 490 background:#FFF url("../images/icons/arrow_branch.png") no-repeat 4px 9px;
491 491 width:167px;
492 492 margin:0;
493 493 padding:12px 9px 7px 24px;
494 494 }
495 495
496 496 #header #header-inner #quick li ul li a.tags,#header #header-inner #quick li ul li a.tags:hover {
497 497 background:#FFF url("../images/icons/tag_blue.png") no-repeat 4px 9px;
498 498 width:167px;
499 499 margin:0;
500 500 padding:12px 9px 7px 24px;
501 501 }
502 502
503 503 #header #header-inner #quick li ul li a.admin,#header #header-inner #quick li ul li a.admin:hover {
504 504 background:#FFF url("../images/icons/cog_edit.png") no-repeat 4px 9px;
505 505 width:167px;
506 506 margin:0;
507 507 padding:12px 9px 7px 24px;
508 508 }
509 509
510 510 #content #left {
511 511 left:0;
512 512 width:280px;
513 513 position:absolute;
514 514 }
515 515
516 516 #content #right {
517 517 margin:0 60px 10px 290px;
518 518 }
519 519
520 520 #content div.box {
521 521 clear:both;
522 522 overflow:hidden;
523 523 background:#fff;
524 524 margin:0 0 10px;
525 525 padding:0 0 10px;
526 526 }
527 527
528 528 #content div.box-left {
529 529 width:49%;
530 530 clear:none;
531 531 float:left;
532 532 margin:0 0 10px;
533 533 }
534 534
535 535 #content div.box-right {
536 536 width:49%;
537 537 clear:none;
538 538 float:right;
539 539 margin:0 0 10px;
540 540 }
541 541
542 542 #content div.box div.title {
543 543 clear:both;
544 544 overflow:hidden;
545 545 background:#369 url("../images/header_inner.png") repeat-x;
546 546 margin:0 0 20px;
547 547 padding:0;
548 548 }
549 549
550 550 #content div.box div.title h5 {
551 551 float:left;
552 552 border:none;
553 553 color:#fff;
554 554 text-transform:uppercase;
555 555 margin:0;
556 556 padding:11px 0 11px 10px;
557 557 }
558 558
559 559 #content div.box div.title ul.links li {
560 560 list-style:none;
561 561 float:left;
562 562 margin:0;
563 563 padding:0;
564 564 }
565 565
566 566 #content div.box div.title ul.links li a {
567 567 height:1%;
568 568 display:block;
569 569 float:left;
570 570 border-left:1px solid #316293;
571 571 color:#fff;
572 572 font-size:11px;
573 573 font-weight:700;
574 574 text-decoration:none;
575 575 margin:0;
576 576 padding:13px 16px 12px;
577 577 }
578 578
579 579 #content div.box h1,#content div.box h2,#content div.box h3,#content div.box h4,#content div.box h5,#content div.box h6 {
580 580 clear:both;
581 581 overflow:hidden;
582 582 border-bottom:1px solid #DDD;
583 583 margin:10px 20px;
584 584 padding:0 0 15px;
585 585 }
586 586
587 587 #content div.box p {
588 588 color:#5f5f5f;
589 589 font-size:12px;
590 590 line-height:150%;
591 591 margin:0 24px 10px;
592 592 padding:0;
593 593 }
594 594
595 595 #content div.box blockquote {
596 596 border-left:4px solid #DDD;
597 597 color:#5f5f5f;
598 598 font-size:11px;
599 599 line-height:150%;
600 600 margin:0 34px;
601 601 padding:0 0 0 14px;
602 602 }
603 603
604 604 #content div.box blockquote p {
605 605 margin:10px 0;
606 606 padding:0;
607 607 }
608 608
609 609 #content div.box dl {
610 610 margin:10px 24px;
611 611 }
612 612
613 613 #content div.box dt {
614 614 font-size:12px;
615 615 margin:0;
616 616 }
617 617
618 618 #content div.box dd {
619 619 font-size:12px;
620 620 margin:0;
621 621 padding:8px 0 8px 15px;
622 622 }
623 623
624 624 #content div.box li {
625 625 font-size:12px;
626 626 padding:4px 0;
627 627 }
628 628
629 629 #content div.box ul.disc,#content div.box ul.circle {
630 630 margin:10px 24px 10px 38px;
631 631 }
632 632
633 633 #content div.box ul.square {
634 634 margin:10px 24px 10px 40px;
635 635 }
636 636
637 637 #content div.box img.left {
638 638 border:none;
639 639 float:left;
640 640 margin:10px 10px 10px 0;
641 641 }
642 642
643 643 #content div.box img.right {
644 644 border:none;
645 645 float:right;
646 646 margin:10px 0 10px 10px;
647 647 }
648 648
649 649 #content div.box div.messages {
650 650 clear:both;
651 651 overflow:hidden;
652 652 margin:0 20px;
653 653 padding:0;
654 654 }
655 655
656 656 #content div.box div.message {
657 657 clear:both;
658 658 overflow:hidden;
659 659 margin:0;
660 660 padding:10px 0;
661 661 }
662 662
663 663 #content div.box div.message a {
664 664 font-weight:400 !important;
665 665 }
666 666
667 667 #content div.box div.message div.image {
668 668 float:left;
669 669 margin:9px 0 0 5px;
670 670 padding:6px;
671 671 }
672 672
673 673 #content div.box div.message div.image img {
674 674 vertical-align:middle;
675 675 margin:0;
676 676 }
677 677
678 678 #content div.box div.message div.text {
679 679 float:left;
680 680 margin:0;
681 681 padding:9px 6px;
682 682 }
683 683
684 684 #content div.box div.message div.dismiss a {
685 685 height:16px;
686 686 width:16px;
687 687 display:block;
688 688 background:url("../images/icons/cross.png") no-repeat;
689 689 margin:15px 14px 0 0;
690 690 padding:0;
691 691 }
692 692
693 693 #content div.box div.message div.text h1,#content div.box div.message div.text h2,#content div.box div.message div.text h3,#content div.box div.message div.text h4,#content div.box div.message div.text h5,#content div.box div.message div.text h6 {
694 694 border:none;
695 695 margin:0;
696 696 padding:0;
697 697 }
698 698
699 699 #content div.box div.message div.text span {
700 700 height:1%;
701 701 display:block;
702 702 margin:0;
703 703 padding:5px 0 0;
704 704 }
705 705
706 706 #content div.box div.message-error {
707 707 height:1%;
708 708 clear:both;
709 709 overflow:hidden;
710 710 background:#FBE3E4;
711 711 border:1px solid #FBC2C4;
712 712 color:#860006;
713 713 }
714 714
715 715 #content div.box div.message-error h6 {
716 716 color:#860006;
717 717 }
718 718
719 719 #content div.box div.message-warning {
720 720 height:1%;
721 721 clear:both;
722 722 overflow:hidden;
723 723 background:#FFF6BF;
724 724 border:1px solid #FFD324;
725 725 color:#5f5200;
726 726 }
727 727
728 728 #content div.box div.message-warning h6 {
729 729 color:#5f5200;
730 730 }
731 731
732 732 #content div.box div.message-notice {
733 733 height:1%;
734 734 clear:both;
735 735 overflow:hidden;
736 736 background:#8FBDE0;
737 737 border:1px solid #6BACDE;
738 738 color:#003863;
739 739 }
740 740
741 741 #content div.box div.message-notice h6 {
742 742 color:#003863;
743 743 }
744 744
745 745 #content div.box div.message-success {
746 746 height:1%;
747 747 clear:both;
748 748 overflow:hidden;
749 749 background:#E6EFC2;
750 750 border:1px solid #C6D880;
751 751 color:#4e6100;
752 752 }
753 753
754 754 #content div.box div.message-success h6 {
755 755 color:#4e6100;
756 756 }
757 757
758 758 #content div.box div.form div.fields div.field {
759 759 height:1%;
760 760 border-bottom:1px solid #DDD;
761 761 clear:both;
762 762 margin:0;
763 763 padding:10px 0;
764 764 }
765 765
766 766 #content div.box div.form div.fields div.field-first {
767 767 padding:0 0 10px;
768 768 }
769 769
770 770 #content div.box div.form div.fields div.field-noborder {
771 771 border-bottom:0 !important;
772 772 }
773 773
774 774 #content div.box div.form div.fields div.field span.error-message {
775 775 height:1%;
776 776 display:inline-block;
777 777 color:red;
778 778 margin:8px 0 0 4px;
779 779 padding:0;
780 780 }
781 781
782 782 #content div.box div.form div.fields div.field span.success {
783 783 height:1%;
784 784 display:block;
785 785 color:#316309;
786 786 margin:8px 0 0;
787 787 padding:0;
788 788 }
789 789
790 790 #content div.box div.form div.fields div.field div.label {
791 791 left:80px;
792 792 width:auto;
793 793 position:absolute;
794 794 margin:0;
795 795 padding:8px 0 0 5px;
796 796 }
797 797
798 798 #content div.box-left div.form div.fields div.field div.label,#content div.box-right div.form div.fields div.field div.label {
799 799 clear:both;
800 800 overflow:hidden;
801 801 left:0;
802 802 width:auto;
803 803 position:relative;
804 804 margin:0;
805 805 padding:0 0 8px;
806 806 }
807 807
808 808 #content div.box div.form div.fields div.field div.label-select {
809 809 padding:5px 0 0 5px;
810 810 }
811 811
812 812 #content div.box-left div.form div.fields div.field div.label-select,#content div.box-right div.form div.fields div.field div.label-select {
813 813 padding:0 0 8px;
814 814 }
815 815
816 816 #content div.box-left div.form div.fields div.field div.label-textarea,#content div.box-right div.form div.fields div.field div.label-textarea {
817 817 padding:0 0 8px !important;
818 818 }
819 819
820 820 #content div.box div.form div.fields div.field div.label label {
821 821 color:#393939;
822 822 font-weight:700;
823 823 }
824 824
825 825 #content div.box div.form div.fields div.field div.input {
826 826 margin:0 0 0 200px;
827 827 }
828 828 #content div.box-left div.form div.fields div.field div.input,#content div.box-right div.form div.fields div.field div.input {
829 829 margin:0 0 0 0px;
830 830 }
831 831
832 832 #content div.box div.form div.fields div.field div.input input {
833 833 background:#FFF;
834 834 border-top:1px solid #b3b3b3;
835 835 border-left:1px solid #b3b3b3;
836 836 border-right:1px solid #eaeaea;
837 837 border-bottom:1px solid #eaeaea;
838 838 color:#000;
839 839 font-family:Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif;
840 840 font-size:11px;
841 841 margin:0;
842 842 padding:7px 7px 6px;
843 843 }
844 844
845 845
846 846
847 847 #content div.box div.form div.fields div.field div.input input.small {
848 848 width:30%;
849 849 }
850 850
851 851 #content div.box div.form div.fields div.field div.input input.medium {
852 852 width:55%;
853 853 }
854 854
855 855 #content div.box div.form div.fields div.field div.input input.large {
856 856 width:85%;
857 857 }
858 858
859 859 #content div.box div.form div.fields div.field div.input input.date {
860 860 width:177px;
861 861 }
862 862
863 863 #content div.box div.form div.fields div.field div.input input.button {
864 864 background:#D4D0C8;
865 865 border-top:1px solid #FFF;
866 866 border-left:1px solid #FFF;
867 867 border-right:1px solid #404040;
868 868 border-bottom:1px solid #404040;
869 869 color:#000;
870 870 margin:0;
871 871 padding:4px 8px;
872 872 }
873 873
874 874 #content div.box div.form div.fields div.field div.input a.ui-input-file {
875 875 width:28px;
876 876 height:28px;
877 877 display:inline;
878 878 position:absolute;
879 879 overflow:hidden;
880 880 cursor:pointer;
881 881 background:#e5e3e3 url("../images/button_browse.png") no-repeat;
882 882 border:none;
883 883 text-decoration:none;
884 884 margin:0 0 0 6px;
885 885 padding:0;
886 886 }
887 887
888 888 #content div.box div.form div.fields div.field div.textarea {
889 889 border-top:1px solid #b3b3b3;
890 890 border-left:1px solid #b3b3b3;
891 891 border-right:1px solid #eaeaea;
892 892 border-bottom:1px solid #eaeaea;
893 893 margin:0 0 0 200px;
894 894 padding:10px;
895 895 }
896 896
897 897 #content div.box div.form div.fields div.field div.textarea-editor {
898 898 border:1px solid #ddd;
899 899 padding:0;
900 900 }
901 901
902 902 #content div.box div.form div.fields div.field div.textarea textarea {
903 903 width:100%;
904 904 height:220px;
905 905 overflow:hidden;
906 906 background:#FFF;
907 907 color:#000;
908 908 font-family:Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif;
909 909 font-size:11px;
910 910 outline:none;
911 911 border-width:0;
912 912 margin:0;
913 913 padding:0;
914 914 }
915 915
916 916 #content div.box-left div.form div.fields div.field div.textarea textarea,#content div.box-right div.form div.fields div.field div.textarea textarea {
917 917 width:100%;
918 918 height:100px;
919 919 }
920 920
921 921 #content div.box div.form div.fields div.field div.textarea table {
922 922 width:100%;
923 923 border:none;
924 924 margin:0;
925 925 padding:0;
926 926 }
927 927
928 928 #content div.box div.form div.fields div.field div.textarea table td {
929 929 background:#DDD;
930 930 border:none;
931 931 padding:0;
932 932 }
933 933
934 934 #content div.box div.form div.fields div.field div.textarea table td table {
935 935 width:auto;
936 936 border:none;
937 937 margin:0;
938 938 padding:0;
939 939 }
940 940
941 941 #content div.box div.form div.fields div.field div.textarea table td table td {
942 942 font-family:Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif;
943 943 font-size:11px;
944 944 padding:5px 5px 5px 0;
945 945 }
946 946
947 947 #content div.box div.form div.fields div.field div.textarea table td table td a.mceButtonActive {
948 948 background:#b1b1b1;
949 949 }
950 950
951 951 #content div.box div.form div.fields div.field div.select a.ui-selectmenu {
952 952 color:#565656;
953 953 text-decoration:none;
954 954 }
955 955
956 956 #content div.box div.form div.fields div.field input[type=text]:focus,#content div.box div.form div.fields div.field input[type=password]:focus,#content div.box div.form div.fields div.field input[type=file]:focus,#content div.box div.form div.fields div.field textarea:focus,#content div.box div.form div.fields div.field select:focus {
957 957 background:#f6f6f6;
958 958 border-color:#666;
959 959 }
960 960
961 961 div.form div.fields div.field div.button {
962 962 margin:0;
963 963 padding:0 0 0 8px;
964 964 }
965 965
966 966 div.form div.fields div.field div.highlight .ui-state-default {
967 967 background:#4e85bb url("../images/button_highlight.png") repeat-x;
968 968 border-top:1px solid #5c91a4;
969 969 border-left:1px solid #2a6f89;
970 970 border-right:1px solid #2b7089;
971 971 border-bottom:1px solid #1a6480;
972 972 color:#FFF;
973 973 margin:0;
974 974 padding:6px 12px;
975 975 }
976 976
977 977 div.form div.fields div.field div.highlight .ui-state-hover {
978 978 background:#46a0c1 url("../images/button_highlight_selected.png") repeat-x;
979 979 border-top:1px solid #78acbf;
980 980 border-left:1px solid #34819e;
981 981 border-right:1px solid #35829f;
982 982 border-bottom:1px solid #257897;
983 983 color:#FFF;
984 984 margin:0;
985 985 padding:6px 12px;
986 986 }
987 987
988 988 #content div.box div.form div.fields div.buttons div.highlight input.ui-state-default {
989 989 background:#4e85bb url("../../images/button_highlight.png") repeat-x;
990 990 border-top:1px solid #5c91a4;
991 991 border-left:1px solid #2a6f89;
992 992 border-right:1px solid #2b7089;
993 993 border-bottom:1px solid #1a6480;
994 994 color:#fff;
995 995 margin:0;
996 996 padding:6px 12px;
997 997 }
998 998
999 999 #content div.box div.form div.fields div.buttons div.highlight input.ui-state-hover {
1000 1000 background:#46a0c1 url("../../images/button_highlight_selected.png") repeat-x;
1001 1001 border-top:1px solid #78acbf;
1002 1002 border-left:1px solid #34819e;
1003 1003 border-right:1px solid #35829f;
1004 1004 border-bottom:1px solid #257897;
1005 1005 color:#fff;
1006 1006 margin:0;
1007 1007 padding:6px 12px;
1008 1008 }
1009 1009
1010 1010 #content div.box table {
1011 1011 width:100%;
1012 1012 border-collapse:collapse;
1013 1013 margin:0;
1014 1014 padding:0;
1015 1015 }
1016 1016
1017 1017 #content div.box table th {
1018 1018 background:#eee;
1019 1019 border-bottom:1px solid #ddd;
1020 1020 padding:5px 0px 5px 5px;
1021 1021 }
1022 1022
1023 1023 #content div.box table th.left {
1024 1024 text-align:left;
1025 1025 }
1026 1026
1027 1027 #content div.box table th.right {
1028 1028 text-align:right;
1029 1029 }
1030 1030
1031 1031 #content div.box table th.center {
1032 1032 text-align:center;
1033 1033 }
1034 1034
1035 1035 #content div.box table th.selected {
1036 1036 vertical-align:middle;
1037 1037 padding:0;
1038 1038 }
1039 1039
1040 1040 #content div.box table td {
1041 1041 background:#fff;
1042 1042 border-bottom:1px solid #cdcdcd;
1043 1043 vertical-align:middle;
1044 1044 padding:5px;
1045 1045 }
1046 1046
1047 1047 #content div.box table tr.selected td {
1048 1048 background:#FFC;
1049 1049 }
1050 1050
1051 1051 #content div.box table td.selected {
1052 1052 width:3%;
1053 1053 text-align:center;
1054 1054 vertical-align:middle;
1055 1055 padding:0;
1056 1056 }
1057 1057
1058 1058 #content div.box table td.action {
1059 1059 width:45%;
1060 1060 text-align:left;
1061 1061 }
1062 1062
1063 1063 #content div.box table td.date {
1064 1064 width:33%;
1065 1065 text-align:center;
1066 1066 }
1067 1067
1068 1068 #content div.box div.action {
1069 1069 float:right;
1070 1070 background:#FFF;
1071 1071 text-align:right;
1072 1072 margin:10px 0 0;
1073 1073 padding:0;
1074 1074 }
1075 1075
1076 1076 #content div.box div.action select {
1077 1077 font-family:Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif;
1078 1078 font-size:11px;
1079 1079 margin:0;
1080 1080 }
1081 1081
1082 1082 #content div.box div.action .ui-selectmenu {
1083 1083 margin:0;
1084 1084 padding:0;
1085 1085 }
1086 1086
1087 1087 #content div.box div.pagination {
1088 1088 height:1%;
1089 1089 clear:both;
1090 1090 overflow:hidden;
1091 1091 margin:10px 0 0;
1092 1092 padding:0;
1093 1093 }
1094 1094
1095 1095 #content div.box div.pagination ul.pager {
1096 1096 float:right;
1097 1097 text-align:right;
1098 1098 margin:0;
1099 1099 padding:0;
1100 1100 }
1101 1101
1102 1102 #content div.box div.pagination ul.pager li {
1103 1103 height:1%;
1104 1104 float:left;
1105 1105 list-style:none;
1106 1106 background:#ebebeb url("../images/pager.png") repeat-x;
1107 1107 border-top:1px solid #dedede;
1108 1108 border-left:1px solid #cfcfcf;
1109 1109 border-right:1px solid #c4c4c4;
1110 1110 border-bottom:1px solid #c4c4c4;
1111 1111 color:#4A4A4A;
1112 1112 font-weight:700;
1113 1113 margin:0 0 0 4px;
1114 1114 padding:0;
1115 1115 }
1116 1116
1117 1117 #content div.box div.pagination ul.pager li.separator {
1118 1118 padding:6px;
1119 1119 }
1120 1120
1121 1121 #content div.box div.pagination ul.pager li.current {
1122 1122 background:#b4b4b4 url("../images/pager_selected.png") repeat-x;
1123 1123 border-top:1px solid #ccc;
1124 1124 border-left:1px solid #bebebe;
1125 1125 border-right:1px solid #b1b1b1;
1126 1126 border-bottom:1px solid #afafaf;
1127 1127 color:#515151;
1128 1128 padding:6px;
1129 1129 }
1130 1130
1131 1131 #content div.box div.pagination ul.pager li a {
1132 1132 height:1%;
1133 1133 display:block;
1134 1134 float:left;
1135 1135 color:#515151;
1136 1136 text-decoration:none;
1137 1137 margin:0;
1138 1138 padding:6px;
1139 1139 }
1140 1140
1141 1141 #content div.box div.pagination ul.pager li a:hover,#content div.box div.pagination ul.pager li a:active {
1142 1142 background:#b4b4b4 url("../images/pager_selected.png") repeat-x;
1143 1143 border-top:1px solid #ccc;
1144 1144 border-left:1px solid #bebebe;
1145 1145 border-right:1px solid #b1b1b1;
1146 1146 border-bottom:1px solid #afafaf;
1147 1147 margin:-1px;
1148 1148 }
1149 1149
1150 1150 #content div.box div.pagination-wh {
1151 1151 height:1%;
1152 1152 clear:both;
1153 1153 overflow:hidden;
1154 1154 text-align:right;
1155 1155 margin:10px 0 0;
1156 1156 padding:0;
1157 1157 }
1158 1158
1159 1159 #content div.box div.pagination-right {
1160 1160 float:right;
1161 1161 }
1162 1162
1163 1163 #content div.box div.pagination-wh a,#content div.box div.pagination-wh span.pager_dotdot {
1164 1164 height:1%;
1165 1165 float:left;
1166 1166 background:#ebebeb url("../images/pager.png") repeat-x;
1167 1167 border-top:1px solid #dedede;
1168 1168 border-left:1px solid #cfcfcf;
1169 1169 border-right:1px solid #c4c4c4;
1170 1170 border-bottom:1px solid #c4c4c4;
1171 1171 color:#4A4A4A;
1172 1172 font-weight:700;
1173 1173 margin:0 0 0 4px;
1174 1174 padding:6px;
1175 1175 }
1176 1176
1177 1177 #content div.box div.pagination-wh span.pager_curpage {
1178 1178 height:1%;
1179 1179 float:left;
1180 1180 background:#b4b4b4 url("../images/pager_selected.png") repeat-x;
1181 1181 border-top:1px solid #ccc;
1182 1182 border-left:1px solid #bebebe;
1183 1183 border-right:1px solid #b1b1b1;
1184 1184 border-bottom:1px solid #afafaf;
1185 1185 color:#515151;
1186 1186 font-weight:700;
1187 1187 margin:0 0 0 4px;
1188 1188 padding:6px;
1189 1189 }
1190 1190
1191 1191 #content div.box div.pagination-wh a:hover,#content div.box div.pagination-wh a:active {
1192 1192 background:#b4b4b4 url("../images/pager_selected.png") repeat-x;
1193 1193 border-top:1px solid #ccc;
1194 1194 border-left:1px solid #bebebe;
1195 1195 border-right:1px solid #b1b1b1;
1196 1196 border-bottom:1px solid #afafaf;
1197 1197 text-decoration:none;
1198 1198 }
1199 1199
1200 1200 #content div.box div.traffic div.legend {
1201 1201 clear:both;
1202 1202 overflow:hidden;
1203 1203 border-bottom:1px solid #ddd;
1204 1204 margin:0 0 10px;
1205 1205 padding:0 0 10px;
1206 1206 }
1207 1207
1208 1208 #content div.box div.traffic div.legend h6 {
1209 1209 float:left;
1210 1210 border:none;
1211 1211 margin:0;
1212 1212 padding:0;
1213 1213 }
1214 1214
1215 1215 #content div.box div.traffic div.legend li {
1216 1216 list-style:none;
1217 1217 float:left;
1218 1218 font-size:11px;
1219 1219 margin:0;
1220 1220 padding:0 8px 0 4px;
1221 1221 }
1222 1222
1223 1223 #content div.box div.traffic div.legend li.visits {
1224 1224 border-left:12px solid #edc240;
1225 1225 }
1226 1226
1227 1227 #content div.box div.traffic div.legend li.pageviews {
1228 1228 border-left:12px solid #afd8f8;
1229 1229 }
1230 1230
1231 1231 #content div.box div.traffic table {
1232 1232 width:auto;
1233 1233 }
1234 1234
1235 1235 #content div.box div.traffic table td {
1236 1236 background:transparent;
1237 1237 border:none;
1238 1238 padding:2px 3px 3px;
1239 1239 }
1240 1240
1241 1241 #content div.box div.traffic table td.legendLabel {
1242 1242 padding:0 3px 2px;
1243 1243 }
1244 1244
1245 1245 #footer {
1246 1246 clear:both;
1247 1247 overflow:hidden;
1248 1248 text-align:right;
1249 1249 margin:0;
1250 1250 padding:0 30px 4px;
1251 1251 margin:-10px 0 0;
1252 1252 }
1253 1253
1254 1254 #footer div#footer-inner {
1255 1255 background:url("../images/header_inner.png") repeat-x scroll 0 0 #003367;
1256 1256 border-top:2px solid #FFFFFF;
1257 1257 }
1258 1258
1259 1259 #footer div#footer-inner p {
1260 1260 padding:15px 25px 15px 0;
1261 1261 color:#FFF;
1262 1262 font-weight:700;
1263 1263 }
1264 1264 #footer div#footer-inner .footer-link {
1265 1265 float:left;
1266 1266 padding-left:10px;
1267 1267 }
1268 1268 #footer div#footer-inner .footer-link a {
1269 1269 color:#FFF;
1270 1270 }
1271 1271
1272 1272 #login div.title {
1273 1273 width:420px;
1274 1274 clear:both;
1275 1275 overflow:hidden;
1276 1276 position:relative;
1277 1277 background:#003367 url("../../images/header_inner.png") repeat-x;
1278 1278 margin:0 auto;
1279 1279 padding:0;
1280 1280 }
1281 1281
1282 1282 #login div.inner {
1283 1283 width:380px;
1284 1284 background:#FFF url("../images/login.png") no-repeat top left;
1285 1285 border-top:none;
1286 1286 border-bottom:none;
1287 1287 margin:0 auto;
1288 1288 padding:20px;
1289 1289 }
1290 1290
1291 1291 #login div.form div.fields div.field div.label {
1292 1292 width:173px;
1293 1293 float:left;
1294 1294 text-align:right;
1295 1295 margin:2px 10px 0 0;
1296 1296 padding:5px 0 0 5px;
1297 1297 }
1298 1298
1299 1299 #login div.form div.fields div.field div.input input {
1300 1300 width:176px;
1301 1301 background:#FFF;
1302 1302 border-top:1px solid #b3b3b3;
1303 1303 border-left:1px solid #b3b3b3;
1304 1304 border-right:1px solid #eaeaea;
1305 1305 border-bottom:1px solid #eaeaea;
1306 1306 color:#000;
1307 1307 font-family:Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif;
1308 1308 font-size:11px;
1309 1309 margin:0;
1310 1310 padding:7px 7px 6px;
1311 1311 }
1312 1312
1313 1313 #login div.form div.fields div.buttons {
1314 1314 clear:both;
1315 1315 overflow:hidden;
1316 1316 border-top:1px solid #DDD;
1317 1317 text-align:right;
1318 1318 margin:0;
1319 1319 padding:10px 0 0;
1320 1320 }
1321 1321
1322 1322 #login div.form div.links {
1323 1323 clear:both;
1324 1324 overflow:hidden;
1325 1325 margin:10px 0 0;
1326 1326 padding:0 0 2px;
1327 1327 }
1328 1328
1329 1329 #register div.title {
1330 1330 clear:both;
1331 1331 overflow:hidden;
1332 1332 position:relative;
1333 1333 background:#003367 url("../images/header_inner.png") repeat-x;
1334 1334 margin:0 auto;
1335 1335 padding:0;
1336 1336 }
1337 1337
1338 1338 #register div.inner {
1339 1339 background:#FFF;
1340 1340 border-top:none;
1341 1341 border-bottom:none;
1342 1342 margin:0 auto;
1343 1343 padding:20px;
1344 1344 }
1345 1345
1346 1346 #register div.form div.fields div.field div.label {
1347 1347 width:135px;
1348 1348 float:left;
1349 1349 text-align:right;
1350 1350 margin:2px 10px 0 0;
1351 1351 padding:5px 0 0 5px;
1352 1352 }
1353 1353
1354 1354 #register div.form div.fields div.field div.input input {
1355 1355 width:300px;
1356 1356 background:#FFF;
1357 1357 border-top:1px solid #b3b3b3;
1358 1358 border-left:1px solid #b3b3b3;
1359 1359 border-right:1px solid #eaeaea;
1360 1360 border-bottom:1px solid #eaeaea;
1361 1361 color:#000;
1362 1362 font-family:Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif;
1363 1363 font-size:11px;
1364 1364 margin:0;
1365 1365 padding:7px 7px 6px;
1366 1366 }
1367 1367
1368 1368 #register div.form div.fields div.buttons {
1369 1369 clear:both;
1370 1370 overflow:hidden;
1371 1371 border-top:1px solid #DDD;
1372 1372 text-align:left;
1373 1373 margin:0;
1374 1374 padding:10px 0 0 114px;
1375 1375 }
1376 1376
1377 1377 #register div.form div.fields div.buttons div.highlight input.ui-state-default {
1378 1378 background:url("../images/button_highlight.png") repeat-x scroll 0 0 #4E85BB;
1379 1379 color:#FFF;
1380 1380 border-color:#5C91A4 #2B7089 #1A6480 #2A6F89;
1381 1381 border-style:solid;
1382 1382 border-width:1px;
1383 1383 }
1384 1384
1385 1385 #register div.form div.activation_msg {
1386 1386 padding-top:4px;
1387 1387 padding-bottom:4px;
1388 1388 }
1389 1389
1390 1390 .trending_language_tbl,.trending_language_tbl td {
1391 1391 border:0 !important;
1392 1392 margin:0 !important;
1393 1393 padding:0 !important;
1394 1394 }
1395 1395
1396 1396 .trending_language {
1397 1397 background-color:#003367;
1398 1398 color:#FFF;
1399 1399 display:block;
1400 1400 min-width:20px;
1401 1401 text-decoration:none;
1402 1402 height:12px;
1403 1403 margin-bottom:4px;
1404 1404 margin-left:5px;
1405 1405 white-space:pre;
1406 1406 padding:3px;
1407 1407 }
1408 1408
1409 1409 h3.files_location {
1410 1410 font-size:1.8em;
1411 1411 font-weight:700;
1412 1412 border-bottom:none !important;
1413 1413 margin:10px 0 !important;
1414 1414 }
1415 1415
1416 1416 #files_data dl dt {
1417 1417 float:left;
1418 1418 width:115px;
1419 1419 margin:0 !important;
1420 1420 padding:5px;
1421 1421 }
1422 1422
1423 1423 #files_data dl dd {
1424 1424 margin:0 !important;
1425 1425 padding:5px !important;
1426 1426 }
1427 1427
1428 1428 #changeset_content {
1429 1429 border:1px solid #CCC;
1430 1430 padding:5px;
1431 1431 }
1432 1432
1433 1433 #changeset_content .container {
1434 1434 min-height:120px;
1435 1435 font-size:1.2em;
1436 1436 overflow:hidden;
1437 1437 }
1438 1438
1439 1439 #changeset_content .container .right {
1440 1440 float:right;
1441 1441 width:25%;
1442 1442 text-align:right;
1443 1443 }
1444 1444
1445 1445 #changeset_content .container .left .message {
1446 1446 font-style:italic;
1447 1447 color:#556CB5;
1448 1448 white-space:pre-wrap;
1449 1449 }
1450 1450
1451 1451 .cs_files .cs_added {
1452 1452 background:url("../images/icons/page_white_add.png") no-repeat scroll 3px;
1453 1453 height:16px;
1454 1454 padding-left:20px;
1455 1455 margin-top:7px;
1456 1456 text-align:left;
1457 1457 }
1458 1458
1459 1459 .cs_files .cs_changed {
1460 1460 background:url("../images/icons/page_white_edit.png") no-repeat scroll 3px;
1461 1461 height:16px;
1462 1462 padding-left:20px;
1463 1463 margin-top:7px;
1464 1464 text-align:left;
1465 1465 }
1466 1466
1467 1467 .cs_files .cs_removed {
1468 1468 background:url("../images/icons/page_white_delete.png") no-repeat scroll 3px;
1469 1469 height:16px;
1470 1470 padding-left:20px;
1471 1471 margin-top:7px;
1472 1472 text-align:left;
1473 1473 }
1474 1474
1475 1475 #graph {
1476 1476 overflow:hidden;
1477 1477 }
1478 1478
1479 1479 #graph_nodes {
1480 1480 width:160px;
1481 1481 float:left;
1482 1482 margin-left:-50px;
1483 1483 margin-top:5px;
1484 1484 }
1485 1485
1486 1486 #graph_content {
1487 1487 width:800px;
1488 1488 float:left;
1489 1489 }
1490 1490
1491 1491 #graph_content .container_header {
1492 1492 border:1px solid #CCC;
1493 1493 padding:10px;
1494 1494 }
1495 1495
1496 1496 #graph_content .container {
1497 1497 border-bottom:1px solid #CCC;
1498 1498 border-left:1px solid #CCC;
1499 1499 border-right:1px solid #CCC;
1500 1500 min-height:80px;
1501 1501 overflow:hidden;
1502 1502 font-size:1.2em;
1503 1503 }
1504 1504
1505 1505 #graph_content .container .right {
1506 1506 float:right;
1507 1507 width:28%;
1508 1508 text-align:right;
1509 1509 padding-bottom:5px;
1510 1510 }
1511 1511
1512 1512 #graph_content .container .left .date {
1513 1513 font-weight:700;
1514 1514 padding-bottom:5px;
1515 1515 }
1516 1516
1517 1517 #graph_content .container .left .message {
1518 1518 font-size:100%;
1519 1519 padding-top:3px;
1520 1520 white-space:pre-wrap;
1521 1521 }
1522 1522
1523 1523 .right div {
1524 1524 clear:both;
1525 1525 }
1526 1526
1527 1527 .right .changes .added,.changed,.removed {
1528 1528 border:1px solid #DDD;
1529 1529 display:block;
1530 1530 float:right;
1531 1531 text-align:center;
1532 1532 min-width:15px;
1533 1533 }
1534 1534
1535 1535 .right .changes .added {
1536 1536 background:#BFB;
1537 1537 }
1538 1538
1539 1539 .right .changes .changed {
1540 1540 background:#FD8;
1541 1541 }
1542 1542
1543 1543 .right .changes .removed {
1544 1544 background:#F88;
1545 1545 }
1546 1546
1547 1547 .right .merge {
1548 1548 vertical-align:top;
1549 1549 font-size:0.75em;
1550 1550 font-weight:700;
1551 1551 }
1552 1552
1553 1553 .right .parent {
1554 1554 font-size:90%;
1555 1555 font-family:monospace;
1556 1556 }
1557 1557
1558 1558 .right .logtags .branchtag {
1559 1559 background:#FFF url("../images/icons/arrow_branch.png") no-repeat right 6px;
1560 1560 display:block;
1561 1561 font-size:0.8em;
1562 1562 padding:11px 16px 0 0;
1563 1563 }
1564 1564
1565 1565 .right .logtags .tagtag {
1566 1566 background:#FFF url("../images/icons/tag_blue.png") no-repeat right 6px;
1567 1567 display:block;
1568 1568 font-size:0.8em;
1569 1569 padding:11px 16px 0 0;
1570 1570 }
1571 1571
1572 1572 div.browserblock {
1573 1573 overflow:hidden;
1574 1574 border:1px solid #ccc;
1575 1575 background:#f8f8f8;
1576 1576 font-size:100%;
1577 1577 line-height:125%;
1578 1578 padding:0;
1579 1579 }
1580 1580
1581 1581 div.browserblock .browser-header {
1582 1582 border-bottom:1px solid #CCC;
1583 1583 background:#FFF;
1584 1584 color:blue;
1585 1585 padding:10px 0;
1586 1586 }
1587 1587
1588 1588 div.browserblock .browser-header span {
1589 1589 margin-left:25px;
1590 1590 font-weight:700;
1591 1591 }
1592 1592
1593 1593 div.browserblock .browser-body {
1594 1594 background:#EEE;
1595 1595 }
1596 1596
1597 1597 table.code-browser {
1598 1598 border-collapse:collapse;
1599 1599 width:100%;
1600 1600 }
1601 1601
1602 1602 table.code-browser tr {
1603 1603 margin:3px;
1604 1604 }
1605 1605
1606 1606 table.code-browser thead th {
1607 1607 background-color:#EEE;
1608 1608 height:20px;
1609 1609 font-size:1.1em;
1610 1610 font-weight:700;
1611 1611 text-align:left;
1612 1612 padding-left:10px;
1613 1613 }
1614 1614
1615 1615 table.code-browser tbody td {
1616 1616 padding-left:10px;
1617 1617 height:20px;
1618 1618 }
1619 1619
1620 1620 table.code-browser .browser-file {
1621 1621 background:url("../images/icons/document_16.png") no-repeat scroll 3px;
1622 1622 height:16px;
1623 1623 padding-left:20px;
1624 1624 text-align:left;
1625 1625 }
1626 1626
1627 1627 table.code-browser .browser-dir {
1628 1628 background:url("../images/icons/folder_16.png") no-repeat scroll 3px;
1629 1629 height:16px;
1630 1630 padding-left:20px;
1631 1631 text-align:left;
1632 1632 }
1633 1633
1634 1634 .box .search {
1635 1635 clear:both;
1636 1636 overflow:hidden;
1637 1637 margin:0;
1638 1638 padding:0 20px 10px;
1639 1639 }
1640 1640
1641 1641 .box .search div.search_path {
1642 1642 background:none repeat scroll 0 0 #EEE;
1643 1643 border:1px solid #CCC;
1644 1644 color:blue;
1645 1645 margin-bottom:10px;
1646 1646 padding:10px 0;
1647 1647 }
1648 1648
1649 1649 .box .search div.search_path div.link {
1650 1650 font-weight:700;
1651 1651 margin-left:25px;
1652 1652 }
1653 1653
1654 1654 .box .search div.search_path div.link a {
1655 1655 color:#003367;
1656 1656 cursor:pointer;
1657 1657 text-decoration:none;
1658 1658 }
1659 1659
1660 1660 #path_unlock {
1661 1661 color:red;
1662 1662 font-size:1.2em;
1663 1663 padding-left:4px;
1664 1664 }
1665 1665
1666 1666 .info_box * {
1667 1667 background:url("../../images/pager.png") repeat-x scroll 0 0 #EBEBEB;
1668 1668 color:#4A4A4A;
1669 1669 font-weight:700;
1670 1670 height:1%;
1671 1671 display:inline;
1672 1672 border-color:#DEDEDE #C4C4C4 #C4C4C4 #CFCFCF;
1673 1673 border-style:solid;
1674 1674 border-width:1px;
1675 1675 padding:4px 6px;
1676 1676 }
1677 1677
1678 1678 .info_box span {
1679 1679 margin-left:3px;
1680 1680 margin-right:3px;
1681 1681 }
1682 1682
1683 1683 .info_box input#at_rev {
1684 1684 text-align:center;
1685 1685 padding:5px 3px 3px 2px;
1686 1686 }
1687 1687
1688 1688 .info_box input#view {
1689 1689 text-align:center;
1690 1690 padding:4px 3px 2px 2px;
1691 1691 }
1692 1692
1693 1693 .yui-overlay,.yui-panel-container {
1694 1694 visibility:hidden;
1695 1695 position:absolute;
1696 1696 z-index:2;
1697 1697 }
1698 1698
1699 1699 .yui-tt {
1700 1700 visibility:hidden;
1701 1701 position:absolute;
1702 1702 color:#666;
1703 1703 background-color:#FFF;
1704 1704 font-family:arial, helvetica, verdana, sans-serif;
1705 1705 border:2px solid #003367;
1706 1706 font:100% sans-serif;
1707 1707 width:auto;
1708 1708 opacity:1px;
1709 1709 padding:8px;
1710 1710 white-space: pre;
1711 1711 }
1712 1712
1713 1713 .ac {
1714 1714 vertical-align:top;
1715 1715 }
1716 1716
1717 1717 .ac .yui-ac {
1718 1718 position:relative;
1719 1719 font-family:arial;
1720 1720 font-size:100%;
1721 1721 }
1722 1722
1723 1723 .ac .perm_ac {
1724 1724 width:15em;
1725 1725 }
1726 1726
1727 1727 .ac .yui-ac-input {
1728 1728 width:100%;
1729 1729 }
1730 1730
1731 1731 .ac .yui-ac-container {
1732 1732 position:absolute;
1733 1733 top:1.6em;
1734 1734 width:100%;
1735 1735 }
1736 1736
1737 1737 .ac .yui-ac-content {
1738 1738 position:absolute;
1739 1739 width:100%;
1740 1740 border:1px solid gray;
1741 1741 background:#fff;
1742 1742 overflow:hidden;
1743 1743 z-index:9050;
1744 1744 }
1745 1745
1746 1746 .ac .yui-ac-shadow {
1747 1747 position:absolute;
1748 1748 width:100%;
1749 1749 background:#000;
1750 1750 -moz-opacity:0.1px;
1751 1751 opacity:.10;
1752 1752 filter:alpha(opacity = 10);
1753 1753 z-index:9049;
1754 1754 margin:.3em;
1755 1755 }
1756 1756
1757 1757 .ac .yui-ac-content ul {
1758 1758 width:100%;
1759 1759 margin:0;
1760 1760 padding:0;
1761 1761 }
1762 1762
1763 1763 .ac .yui-ac-content li {
1764 1764 cursor:default;
1765 1765 white-space:nowrap;
1766 1766 margin:0;
1767 1767 padding:2px 5px;
1768 1768 }
1769 1769
1770 1770 .ac .yui-ac-content li.yui-ac-prehighlight {
1771 1771 background:#B3D4FF;
1772 1772 }
1773 1773
1774 1774 .ac .yui-ac-content li.yui-ac-highlight {
1775 1775 background:#556CB5;
1776 1776 color:#FFF;
1777 1777 }
1778 1778
1779 1779 .follow{
1780 1780 background:url("../images/icons/heart_add.png") no-repeat scroll 3px;
1781 1781 height: 16px;
1782 1782 width: 20px;
1783 1783 cursor: pointer;
1784 1784 display: block;
1785 1785 float: right;
1786 1786 margin-top: 2px;
1787 1787 }
1788 1788
1789 1789 .following{
1790 1790 background:url("../images/icons/heart_delete.png") no-repeat scroll 3px;
1791 1791 height: 16px;
1792 1792 width: 20px;
1793 1793 cursor: pointer;
1794 1794 display: block;
1795 1795 float: right;
1796 1796 margin-top: 2px;
1797 1797 }
1798 1798
1799 1799 .currently_following{
1800 1800
1801 1801 padding-left: 10px;
1802 1802 padding-bottom:5px;
1803 1803
1804 1804 }
1805 1805
1806 1806
1807 1807
1808 1808 .add_icon {
1809 1809 background:url("../images/icons/add.png") no-repeat scroll 3px;
1810 1810 height:16px;
1811 1811 padding-left:20px;
1812 1812 padding-top:1px;
1813 1813 text-align:left;
1814 1814 }
1815 1815
1816 1816 .edit_icon {
1817 1817 background:url("../images/icons/folder_edit.png") no-repeat scroll 3px;
1818 1818 height:16px;
1819 1819 padding-left:20px;
1820 1820 padding-top:1px;
1821 1821 text-align:left;
1822 1822 }
1823 1823
1824 1824 .delete_icon {
1825 1825 background:url("../images/icons/delete.png") no-repeat scroll 3px;
1826 1826 height:16px;
1827 1827 padding-left:20px;
1828 1828 padding-top:1px;
1829 1829 text-align:left;
1830 1830 }
1831 1831
1832 1832 .refresh_icon {
1833 1833 background:url("../images/icons/arrow_refresh.png") no-repeat scroll 3px;
1834 1834 height:16px;
1835 1835 padding-left:20px;
1836 1836 padding-top:1px;
1837 1837 text-align:left;
1838 1838 }
1839 1839
1840 1840 .rss_icon {
1841 1841 background:url("../images/icons/rss_16.png") no-repeat scroll 3px;
1842 1842 height:16px;
1843 1843 padding-left:20px;
1844 1844 padding-top:1px;
1845 1845 text-align:left;
1846 1846 }
1847 1847
1848 1848 .atom_icon {
1849 1849 background:url("../images/icons/atom.png") no-repeat scroll 3px;
1850 1850 height:16px;
1851 1851 padding-left:20px;
1852 1852 padding-top:1px;
1853 1853 text-align:left;
1854 1854 }
1855 1855
1856 1856 .archive_icon {
1857 1857 background:url("../images/icons/compress.png") no-repeat scroll 3px;
1858 1858 height:16px;
1859 1859 padding-left:20px;
1860 1860 text-align:left;
1861 1861 padding-top:1px;
1862 1862 }
1863 1863
1864 1864 .action_button {
1865 1865 border:0;
1866 1866 display:block;
1867 1867 }
1868 1868
1869 1869 .action_button:hover {
1870 1870 border:0;
1871 1871 text-decoration:underline;
1872 1872 cursor:pointer;
1873 1873 }
1874 1874
1875 1875 #switch_repos {
1876 1876 position:absolute;
1877 1877 height:25px;
1878 1878 z-index:1;
1879 1879 }
1880 1880
1881 1881 #switch_repos select {
1882 1882 min-width:150px;
1883 1883 max-height:250px;
1884 1884 z-index:1;
1885 1885 }
1886 1886
1887 1887 .breadcrumbs {
1888 1888 border:medium none;
1889 1889 color:#FFF;
1890 1890 float:left;
1891 1891 text-transform:uppercase;
1892 1892 font-weight:700;
1893 1893 font-size:14px;
1894 1894 margin:0;
1895 1895 padding:11px 0 11px 10px;
1896 1896 }
1897 1897
1898 1898 .breadcrumbs a {
1899 1899 color:#FFF;
1900 1900 }
1901 1901
1902 1902 .flash_msg ul {
1903 1903 margin:0;
1904 1904 padding:0 0 10px;
1905 1905 }
1906 1906
1907 1907 .error_msg {
1908 1908 background-color:#FFCFCF;
1909 1909 background-image:url("../../images/icons/error_msg.png");
1910 1910 border:1px solid #FF9595;
1911 1911 color:#C30;
1912 1912 }
1913 1913
1914 1914 .warning_msg {
1915 1915 background-color:#FFFBCC;
1916 1916 background-image:url("../../images/icons/warning_msg.png");
1917 1917 border:1px solid #FFF35E;
1918 1918 color:#C69E00;
1919 1919 }
1920 1920
1921 1921 .success_msg {
1922 1922 background-color:#D5FFCF;
1923 1923 background-image:url("../../images/icons/success_msg.png");
1924 1924 border:1px solid #97FF88;
1925 1925 color:#090;
1926 1926 }
1927 1927
1928 1928 .notice_msg {
1929 1929 background-color:#DCE3FF;
1930 1930 background-image:url("../../images/icons/notice_msg.png");
1931 1931 border:1px solid #93A8FF;
1932 1932 color:#556CB5;
1933 1933 }
1934 1934
1935 1935 .success_msg,.error_msg,.notice_msg,.warning_msg {
1936 1936 background-position:10px center;
1937 1937 background-repeat:no-repeat;
1938 1938 font-size:12px;
1939 1939 font-weight:700;
1940 1940 min-height:14px;
1941 1941 line-height:14px;
1942 1942 margin-bottom:0;
1943 1943 margin-top:0;
1944 1944 display:block;
1945 1945 overflow:auto;
1946 1946 padding:6px 10px 6px 40px;
1947 1947 }
1948 1948
1949 1949 #msg_close {
1950 1950 background:transparent url("../../icons/cross_grey_small.png") no-repeat scroll 0 0;
1951 1951 cursor:pointer;
1952 1952 height:16px;
1953 1953 position:absolute;
1954 1954 right:5px;
1955 1955 top:5px;
1956 1956 width:16px;
1957 1957 }
1958 1958
1959 1959 div#legend_container table,div#legend_choices table {
1960 1960 width:auto !important;
1961 1961 }
1962 1962
1963 1963 table#permissions_manage {
1964 1964 width:0 !important;
1965 1965 }
1966 1966
1967 1967 table#permissions_manage span.private_repo_msg {
1968 1968 font-size:0.8em;
1969 1969 opacity:0.6px;
1970 1970 }
1971 1971
1972 1972 table#permissions_manage td.private_repo_msg {
1973 1973 font-size:0.8em;
1974 1974 }
1975 1975
1976 1976 table#permissions_manage tr#add_perm_input td {
1977 1977 vertical-align:middle;
1978 1978 }
1979 1979
1980 1980 div.gravatar {
1981 1981 background-color:#FFF;
1982 1982 border:1px solid #D0D0D0;
1983 1983 float:left;
1984 1984 margin-right:0.7em;
1985 1985 padding:2px 2px 0;
1986 1986 }
1987 1987
1988 1988 #header,#content,#footer {
1989 1989 min-width:1024px;
1990 1990 }
1991 1991
1992 1992 #content {
1993 1993 min-height:100%;
1994 1994 clear:both;
1995 1995 overflow:hidden;
1996 1996 padding:14px 30px;
1997 1997 }
1998 1998
1999 1999 #content div.box div.title div.search {
2000 2000 background:url("../../images/title_link.png") no-repeat top left;
2001 2001 border-left:1px solid #316293;
2002 2002 }
2003 2003
2004 2004 #content div.box div.title div.search div.input input {
2005 2005 border:1px solid #316293;
2006 2006 }
2007 2007
2008 2008 #content div.box div.title div.search div.button input.ui-state-default {
2009 2009 background:#4e85bb url("../../images/button_highlight.png") repeat-x;
2010 2010 border:1px solid #316293;
2011 2011 border-left:none;
2012 2012 color:#FFF;
2013 2013 }
2014 2014
2015 2015 #content div.box div.title div.search div.button input.ui-state-hover {
2016 2016 background:#46a0c1 url("../../images/button_highlight_selected.png") repeat-x;
2017 2017 border:1px solid #316293;
2018 2018 border-left:none;
2019 2019 color:#FFF;
2020 2020 }
2021 2021
2022 2022 #content div.box div.form div.fields div.field div.highlight .ui-state-default {
2023 2023 background:#4e85bb url("../../images/button_highlight.png") repeat-x;
2024 2024 border-top:1px solid #5c91a4;
2025 2025 border-left:1px solid #2a6f89;
2026 2026 border-right:1px solid #2b7089;
2027 2027 border-bottom:1px solid #1a6480;
2028 2028 color:#fff;
2029 2029 }
2030 2030
2031 2031 #content div.box div.form div.fields div.field div.highlight .ui-state-hover {
2032 2032 background:#46a0c1 url("../../images/button_highlight_selected.png") repeat-x;
2033 2033 border-top:1px solid #78acbf;
2034 2034 border-left:1px solid #34819e;
2035 2035 border-right:1px solid #35829f;
2036 2036 border-bottom:1px solid #257897;
2037 2037 color:#fff;
2038 2038 }
2039 2039
2040 2040 ins,div.options a:hover {
2041 2041 text-decoration:none;
2042 2042 }
2043 2043
2044 2044 img,#header #header-inner #quick li a:hover span.normal,#header #header-inner #quick li ul li.last,#content div.box div.form div.fields div.field div.textarea table td table td a,#clone_url {
2045 2045 border:none;
2046 2046 }
2047 2047
2048 2048 img.icon,.right .merge img {
2049 2049 vertical-align:bottom;
2050 2050 }
2051 2051
2052 2052 #header ul#logged-user,#content div.box div.title ul.links,#content div.box div.message div.dismiss,#content div.box div.traffic div.legend ul {
2053 2053 float:right;
2054 2054 margin:0;
2055 2055 padding:0;
2056 2056 }
2057 2057
2058 2058 #header #header-inner #home,#header #header-inner #logo,#content div.box ul.left,#content div.box ol.left,#content div.box div.pagination-left,div#commit_history,div#legend_data,div#legend_container,div#legend_choices {
2059 2059 float:left;
2060 2060 }
2061 2061
2062 2062 #header #header-inner #quick li:hover ul ul,#header #header-inner #quick li:hover ul ul ul,#header #header-inner #quick li:hover ul ul ul ul,#content #left #menu ul.closed,#content #left #menu li ul.collapsed,.yui-tt-shadow {
2063 2063 display:none;
2064 2064 }
2065 2065
2066 2066 #header #header-inner #quick li:hover ul,#header #header-inner #quick li li:hover ul,#header #header-inner #quick li li li:hover ul,#header #header-inner #quick li li li li:hover ul,#content #left #menu ul.opened,#content #left #menu li ul.expanded {
2067 2067 display:block;
2068 2068 }
2069 2069
2070 2070 #content div.box div.title ul.links li a:hover,#content div.box div.title ul.links li.ui-tabs-selected a {
2071 2071 color:#bfe3ff;
2072 2072 }
2073 2073
2074 2074 #content div.box ol.lower-roman,#content div.box ol.upper-roman,#content div.box ol.lower-alpha,#content div.box ol.upper-alpha,#content div.box ol.decimal {
2075 2075 margin:10px 24px 10px 44px;
2076 2076 }
2077 2077
2078 2078 #content div.box div.form,#content div.box div.table,#content div.box div.traffic {
2079 2079 clear:both;
2080 2080 overflow:hidden;
2081 2081 margin:0;
2082 2082 padding:0 20px 10px;
2083 2083 }
2084 2084
2085 2085 #content div.box div.form div.fields,#login div.form,#login div.form div.fields,#register div.form,#register div.form div.fields {
2086 2086 clear:both;
2087 2087 overflow:hidden;
2088 2088 margin:0;
2089 2089 padding:0;
2090 2090 }
2091 2091
2092 2092 #content div.box div.form div.fields div.field div.label span,#login div.form div.fields div.field div.label span,#register div.form div.fields div.field div.label span {
2093 2093 height:1%;
2094 2094 display:block;
2095 2095 color:#363636;
2096 2096 margin:0;
2097 2097 padding:2px 0 0;
2098 2098 }
2099 2099
2100 2100 #content div.box div.form div.fields div.field div.input input.error,#login div.form div.fields div.field div.input input.error,#register div.form div.fields div.field div.input input.error {
2101 2101 background:#FBE3E4;
2102 2102 border-top:1px solid #e1b2b3;
2103 2103 border-left:1px solid #e1b2b3;
2104 2104 border-right:1px solid #FBC2C4;
2105 2105 border-bottom:1px solid #FBC2C4;
2106 2106 }
2107 2107
2108 2108 #content div.box div.form div.fields div.field div.input input.success,#login div.form div.fields div.field div.input input.success,#register div.form div.fields div.field div.input input.success {
2109 2109 background:#E6EFC2;
2110 2110 border-top:1px solid #cebb98;
2111 2111 border-left:1px solid #cebb98;
2112 2112 border-right:1px solid #c6d880;
2113 2113 border-bottom:1px solid #c6d880;
2114 2114 }
2115 2115
2116 2116 #content div.box-left div.form div.fields div.field div.textarea,#content div.box-right div.form div.fields div.field div.textarea,#content div.box div.form div.fields div.field div.select select,#content div.box table th.selected input,#content div.box table td.selected input {
2117 2117 margin:0;
2118 2118 }
2119 2119
2120 2120 #content div.box-left div.form div.fields div.field div.select,#content div.box-left div.form div.fields div.field div.checkboxes,#content div.box-left div.form div.fields div.field div.radios,#content div.box-right div.form div.fields div.field div.select,#content div.box-right div.form div.fields div.field div.checkboxes,#content div.box-right div.form div.fields div.field div.radios{
2121 2121 margin:0 0 0 0px !important;
2122 2122 padding:0;
2123 2123 }
2124 2124
2125 2125 #content div.box div.form div.fields div.field div.select,#content div.box div.form div.fields div.field div.checkboxes,#content div.box div.form div.fields div.field div.radios {
2126 2126 margin:0 0 0 200px;
2127 2127 padding:0;
2128 2128 }
2129 2129
2130 2130
2131 2131 #content div.box div.form div.fields div.field div.select a:hover,#content div.box div.form div.fields div.field div.select a.ui-selectmenu:hover,#content div.box div.action a:hover {
2132 2132 color:#000;
2133 2133 text-decoration:none;
2134 2134 }
2135 2135
2136 2136 #content div.box div.form div.fields div.field div.select a.ui-selectmenu-focus,#content div.box div.action a.ui-selectmenu-focus {
2137 2137 border:1px solid #666;
2138 2138 }
2139 2139
2140 2140 #content div.box div.form div.fields div.field div.checkboxes div.checkbox,#content div.box div.form div.fields div.field div.radios div.radio {
2141 2141 clear:both;
2142 2142 overflow:hidden;
2143 2143 margin:0;
2144 2144 padding:8px 0 2px;
2145 2145 }
2146 2146
2147 2147 #content div.box div.form div.fields div.field div.checkboxes div.checkbox input,#content div.box div.form div.fields div.field div.radios div.radio input {
2148 2148 float:left;
2149 2149 margin:0;
2150 2150 }
2151 2151
2152 2152 #content div.box div.form div.fields div.field div.checkboxes div.checkbox label,#content div.box div.form div.fields div.field div.radios div.radio label {
2153 2153 height:1%;
2154 2154 display:block;
2155 2155 float:left;
2156 2156 margin:2px 0 0 4px;
2157 2157 }
2158 2158
2159 2159 div.form div.fields div.field div.button input,#content div.box div.form div.fields div.buttons input,div.form div.fields div.buttons input,#content div.box div.action div.button input {
2160 2160 color:#000;
2161 2161 font-family:Lucida Grande, Verdana, Lucida Sans Regular, Lucida Sans Unicode, Arial, sans-serif;
2162 2162 font-size:11px;
2163 2163 font-weight:700;
2164 2164 margin:0;
2165 2165 }
2166 2166
2167 2167 div.form div.fields div.field div.button .ui-state-default,#content div.box div.form div.fields div.buttons input.ui-state-default {
2168 2168 background:#e5e3e3 url("../images/button.png") repeat-x;
2169 2169 border-top:1px solid #DDD;
2170 2170 border-left:1px solid #c6c6c6;
2171 2171 border-right:1px solid #DDD;
2172 2172 border-bottom:1px solid #c6c6c6;
2173 2173 color:#515151;
2174 2174 outline:none;
2175 2175 margin:0;
2176 2176 padding:6px 12px;
2177 2177 }
2178 2178
2179 2179 div.form div.fields div.field div.button .ui-state-hover,#content div.box div.form div.fields div.buttons input.ui-state-hover {
2180 2180 background:#b4b4b4 url("../images/button_selected.png") repeat-x;
2181 2181 border-top:1px solid #ccc;
2182 2182 border-left:1px solid #bebebe;
2183 2183 border-right:1px solid #b1b1b1;
2184 2184 border-bottom:1px solid #afafaf;
2185 2185 color:#515151;
2186 2186 outline:none;
2187 2187 margin:0;
2188 2188 padding:6px 12px;
2189 2189 }
2190 2190
2191 2191 div.form div.fields div.field div.highlight,#content div.box div.form div.fields div.buttons div.highlight {
2192 2192 display:inline;
2193 2193 }
2194 2194
2195 2195 #content div.box div.form div.fields div.buttons,div.form div.fields div.buttons {
2196 2196 margin:10px 0 0 200px;
2197 2197 padding:0;
2198 2198 }
2199 2199
2200 2200 #content div.box-left div.form div.fields div.buttons,#content div.box-right div.form div.fields div.buttons,div.box-left div.form div.fields div.buttons,div.box-right div.form div.fields div.buttons {
2201 2201 margin:10px 0 0;
2202 2202 }
2203 2203
2204 2204 #content div.box table td.user,#content div.box table td.address {
2205 2205 width:10%;
2206 2206 text-align:center;
2207 2207 }
2208 2208
2209 2209 #content div.box div.action div.button,#login div.form div.fields div.field div.input div.link,#register div.form div.fields div.field div.input div.link {
2210 2210 text-align:right;
2211 2211 margin:6px 0 0;
2212 2212 padding:0;
2213 2213 }
2214 2214
2215 2215 #content div.box div.action div.button input.ui-state-default,#login div.form div.fields div.buttons input.ui-state-default,#register div.form div.fields div.buttons input.ui-state-default {
2216 2216 background:#e5e3e3 url("../images/button.png") repeat-x;
2217 2217 border-top:1px solid #DDD;
2218 2218 border-left:1px solid #c6c6c6;
2219 2219 border-right:1px solid #DDD;
2220 2220 border-bottom:1px solid #c6c6c6;
2221 2221 color:#515151;
2222 2222 margin:0;
2223 2223 padding:6px 12px;
2224 2224 }
2225 2225
2226 2226 #content div.box div.action div.button input.ui-state-hover,#login div.form div.fields div.buttons input.ui-state-hover,#register div.form div.fields div.buttons input.ui-state-hover {
2227 2227 background:#b4b4b4 url("../images/button_selected.png") repeat-x;
2228 2228 border-top:1px solid #ccc;
2229 2229 border-left:1px solid #bebebe;
2230 2230 border-right:1px solid #b1b1b1;
2231 2231 border-bottom:1px solid #afafaf;
2232 2232 color:#515151;
2233 2233 margin:0;
2234 2234 padding:6px 12px;
2235 2235 }
2236 2236
2237 2237 #content div.box div.pagination div.results,#content div.box div.pagination-wh div.results {
2238 2238 text-align:left;
2239 2239 float:left;
2240 2240 margin:0;
2241 2241 padding:0;
2242 2242 }
2243 2243
2244 2244 #content div.box div.pagination div.results span,#content div.box div.pagination-wh div.results span {
2245 2245 height:1%;
2246 2246 display:block;
2247 2247 float:left;
2248 2248 background:#ebebeb url("../images/pager.png") repeat-x;
2249 2249 border-top:1px solid #dedede;
2250 2250 border-left:1px solid #cfcfcf;
2251 2251 border-right:1px solid #c4c4c4;
2252 2252 border-bottom:1px solid #c4c4c4;
2253 2253 color:#4A4A4A;
2254 2254 font-weight:700;
2255 2255 margin:0;
2256 2256 padding:6px 8px;
2257 2257 }
2258 2258
2259 2259 #content div.box div.pagination ul.pager li.disabled,#content div.box div.pagination-wh a.disabled {
2260 2260 color:#B4B4B4;
2261 2261 padding:6px;
2262 2262 }
2263 2263
2264 2264 #login,#register {
2265 2265 width:520px;
2266 2266 margin:10% auto 0;
2267 2267 padding:0;
2268 2268 }
2269 2269
2270 2270 #login div.color,#register div.color {
2271 2271 clear:both;
2272 2272 overflow:hidden;
2273 2273 background:#FFF;
2274 2274 margin:10px auto 0;
2275 2275 padding:3px 3px 3px 0;
2276 2276 }
2277 2277
2278 2278 #login div.color a,#register div.color a {
2279 2279 width:20px;
2280 2280 height:20px;
2281 2281 display:block;
2282 2282 float:left;
2283 2283 margin:0 0 0 3px;
2284 2284 padding:0;
2285 2285 }
2286 2286
2287 2287 #login div.title h5,#register div.title h5 {
2288 2288 color:#fff;
2289 2289 margin:10px;
2290 2290 padding:0;
2291 2291 }
2292 2292
2293 2293 #login div.form div.fields div.field,#register div.form div.fields div.field {
2294 2294 clear:both;
2295 2295 overflow:hidden;
2296 2296 margin:0;
2297 2297 padding:0 0 10px;
2298 2298 }
2299 2299
2300 2300 #login div.form div.fields div.field span.error-message,#register div.form div.fields div.field span.error-message {
2301 2301 height:1%;
2302 2302 display:block;
2303 2303 color:red;
2304 2304 margin:8px 0 0;
2305 2305 padding:0;
2306 width: 320px;
2306 2307 }
2307 2308
2308 2309 #login div.form div.fields div.field div.label label,#register div.form div.fields div.field div.label label {
2309 2310 color:#000;
2310 2311 font-weight:700;
2311 2312 }
2312 2313
2313 2314 #login div.form div.fields div.field div.input,#register div.form div.fields div.field div.input {
2314 2315 float:left;
2315 2316 margin:0;
2316 2317 padding:0;
2317 2318 }
2318 2319
2319 2320 #login div.form div.fields div.field div.checkbox,#register div.form div.fields div.field div.checkbox {
2320 2321 margin:0 0 0 184px;
2321 2322 padding:0;
2322 2323 }
2323 2324
2324 2325 #login div.form div.fields div.field div.checkbox label,#register div.form div.fields div.field div.checkbox label {
2325 2326 color:#565656;
2326 2327 font-weight:700;
2327 2328 }
2328 2329
2329 2330 #login div.form div.fields div.buttons input,#register div.form div.fields div.buttons input {
2330 2331 color:#000;
2331 2332 font-size:1em;
2332 2333 font-weight:700;
2333 2334 font-family:Verdana, Helvetica, Sans-Serif;
2334 2335 margin:0;
2335 2336 }
2336 2337
2337 2338 #changeset_content .container .wrapper,#graph_content .container .wrapper {
2338 2339 width:600px;
2339 2340 }
2340 2341
2341 2342 #changeset_content .container .left,#graph_content .container .left {
2342 2343 float:left;
2343 2344 width:70%;
2344 2345 padding-left:5px;
2345 2346 }
2346 2347
2347 2348 #changeset_content .container .left .date,.ac .match {
2348 2349 font-weight:700;
2349 2350 padding-top: 5px;
2350 2351 padding-bottom:5px;
2351 2352 }
2352 2353
2353 2354 div#legend_container table td,div#legend_choices table td {
2354 2355 border:none !important;
2355 2356 height:20px !important;
2356 2357 padding:0 !important;
2357 2358 }
2358 2359
2359 2360 #q_filter{
2360 2361 border:0 none;
2361 2362 color:#AAAAAA;
2362 2363 margin-bottom:-4px;
2363 2364 margin-top:-4px;
2364 2365 padding-left:3px;
2365 2366 }
2366 2367
General Comments 0
You need to be logged in to leave comments. Login now